html {
    scroll-behavior: smooth;
}
body {
    margin: 0;
    background-color: rgb(230, 226, 223);
    font-family: "Poppins", sans-serif;
    font-size: 1.2em;
    color: rgb(63, 71, 38);
}
section {
    margin-top: 0;
    border-left: 1em solid transparent;
    border-right: 1em solid transparent;
    font-size: 1.2em;
    font-weight: 300;
}
section > p {
    text-align: center;
}
.section-title {
    color:  rgb(136, 143, 112);
    font-weight: 300;
    text-transform: uppercase;
    text-align: center;
    margin-bottom: 0;
}
.section-title, .about {
    scroll-margin-top: 1em; /* Navbar height */
}
#top {
    scroll-margin-top: 3em; /* Not sure why, but we need more than navbar height here */
}


.hero {
    border: none;
    display: grid;
    align-items: center;
    justify-content: center;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 260px;
    overflow-x: hidden;
}

.hero .green-backdrop {
    grid-area: 1 / 1 / 1 / 3;
    width: 100%;
    height: 100%;
}

.hero .illustration {
    grid-area: 1 / 1;
    height: 100%;
    justify-self: center;
}

.hero .titlebox {
    grid-area: 1 / 2;
 }

.valeriia-hero-1 {
    grid-area: 1 / 1;
    transform: translateY(+65%);
    align-self: end;
    margin-left: 4px;
}

.valeriia-hero-1::after {
    background-image: url('../img/valeriia-hero1.webp');
}
.valeriia-hero-2::after {
    background-image: url('../img/valeriia-hero2.webp');
}

.hero .hero-text {
    grid-area: 2/1/2/3;
    border: 16px solid transparent;
    border-left: 275px solid transparent;
    min-height: 135px;
}

.hero .follow-on {
    grid-area: 1 / 2;
    padding: 8px;
    padding-left: 16px;
    justify-self: end;
    align-self: flex-start;
}

.hero .contact-me {
    grid-area: 1 / 2;
    justify-self: end;
    align-self: flex-end;
}

@media all and (width > 1000px) {
    section {
        max-width: 1000px;
        margin-left: auto;
        margin-right: auto;
    }
}

.about {
    display: flex;
    align-items: center;
    margin: 1em;
    margin-top: 2em;
    gap: 1em;
}
.about .hero-circle {
    flex-shrink: 0;
    width: 300px;
}
footer .contacts {
    list-style-type: none;
    padding: 0;
    line-height: 2em;
}
footer .contacts .media {
    display: inline-block;
    width: 1.5em;
    aspect-ratio: 1;
    background-size: contain;
    margin-right: 0.5em;
    transform: translate(0, 30%);
}
footer {
    color: rgb(249, 245, 240);
    padding: 1em;
    background-color: rgb(136, 143, 112);
}
footer .copyright {
    margin-top: 1em;
    font-weight: 300;
    font-size: 0.8em;
}
footer a {
    color: rgb(249, 245, 240);
    text-decoration: underline;
}

@media all and (width < 750px) {
    .hero {
        grid-template-columns: 100%;
    }
    .hero .titlebox {
        grid-area: 2 / 1;
        width: 100%;
        border-bottom: 0;
    }
    .hero .follow-on {
        grid-area: 3 / 1;
    }
    .hero .contact-me {
        grid-area: 3 / 1;
        justify-self: start
    }
    .valeriia-hero-1 {
        transform: translate(-15%, 5%);
        width: 160px;
    }
    .hero .green-backdrop {
        grid-row: 1 / 4
    }
    .hero .hero-text {
        grid-row: 4;
        border: 16px solid transparent;
    }
    .about {
        flex-direction: column;
    }
}

@media all and (width < 900px) {
    .hero .titlebox {
        font-size: 0.8em;
    }
}

@media all and (width < 550px) {
    .hero .follow-on .label {
        display: none;
    }
    .hero .follow-on {
        grid-area: 4 / 1;
        align-self: start;
        gap: 0.5em;
        justify-self: center;
    }
    .hero .hero-text {
        margin-top: 1.5em;
    }
}
