:root {
  font-family: Inter, sans-serif;
  font-feature-settings: 'liga' 1, 'calt' 1; /* fix for Chrome */
  /* Set default colors for site in light mode */
  --color-bg: #eee;
  --color-text: #223;
  --color-primary: green;
}

@supports (font-variation-settings: normal) {
  :root { font-family: InterVariable, sans-serif; }
}

/* Set default colors for site in dark mode */
@media (prefers-color-scheme: dark){
    :root{
        --color-bg: hsl(0, 0%, 20%);
        --color-text :hsl(0, 0%, 75%);
        --color-primary: hsl(300, 20%, 50%);
    }
}
[data-theme="light"]{
  --color-bg: #eee;
  --color-text: #223;
  --color-primary: green;
  --color-link: rgb(18, 88, 154);
}
[data-theme="dark"]{
        --color-bg: hsl(300, 0%, 10%);
        --color-text :hsl(0, 0%, 75%);
        --color-primary: hsl(300, 20%, 50%);
        --color-link: hsl(51, 80%, 45%);
}

*{
    /* border: solid red 1px; */
    box-sizing: border-box;
    padding: 0;
    margin: 0;
}
p{
    font-size: 1.1rem;
}
body{
    /*Make body stretch to fill the viewport*/
    /*Create flexbox to centre items in viewport*/
    background-color: var(--color-bg);
    color: var(--color-text);
}
.site-wrapper{
    display: flex;
    flex-wrap: wrap;
    width: min(1280px, 90vw);
    min-height: 100vh;
    margin: auto;
    gap: 2rem;
}

main{
    padding-top:3rem;
    padding-bottom: 3rem;
}
header{
    padding-top:6rem;
    flex-grow: 1;
    top:0;
    display: flex;
    max-height: 100vh;
    flex-direction: column;
    justify-content: space-between;
    background-color: var(--color-bg);
}
main{
    flex: 1 0 auto;
    width: min(56ch, 100%);
}
section{
    margin-bottom: 2.411rem;
}
a{
    color: var(--color-link);
    text-decoration: none;
    :hover{
        filter: brightness(1.2);
    }
}
.project{
    margin-bottom: 2rem;
    display: flex;
    flex-flow: row-reverse;
    flex-wrap: wrap;
    align-items: center;
    gap: 2rem;
}
.project .feature{
    display: flex;
    flex-flow: nowrap;
    flex:1 0 15ch;
    padding: 10px;
    border-radius: 0.5rem;
}
.project img{
    max-width: 100%;
    aspect-ratio: 2/2;
    object-fit: contain;
}
.project .description{
    flex: 4 0 30ch;
}
h1{
    font-size: 2.411rem;
}
h2{
    font-size: 1.953rem;
    margin-bottom: 0.5rem;
    text-transform: capitalize;
}
h3{
    font-size: 1.5rem;
    
}
h4{
    font-size: 1.25rem;
    font-weight: 500;
}
p{
    line-height: 1.625rem;
}
footer{
    width: min(1280px, 90vw);
    margin: auto;
}
.footer button{
    font-weight: 700;
    background: none;
    color: inherit;
    border: none;
    font-size: 1.2rem;
    transition: transform 10s;
}

#icons{
    padding-top: 2rem;
    display: flex;
    gap: 10px;
}
.invert{
    filter: invert() brightness(80%);
}
.icon{
    color: #fff;
    height: 2rem;
    aspect-ratio: 1/1;
}
@media (min-width: 1030px) {
    header.header{
        position: sticky;
        padding-bottom: 6rem;}
        main{
            padding-top:6rem;
        }
}