
@import url('https://fonts.googleapis.com/css2?family=Nunito:ital,wght@0,200..1000;1,200..1000&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400..900&display=swap');


.body {
    font-family: "Nunito", sans-serif;

}

h1, h2, h3, h4 {
    font-weight: 200;
}

.html {
    scroll-behavior: smooth;
}

.scroll-section {
    position: relative;
}

.scroll-anchor {
    position: absolute;
    pointer-events: none;
    opacity: 0;
    top: -94px;
}



.heading-lg {
    font-family: "Cinzel", serif; 
    font-weight: 200;
    font-size: 2rem;
    line-height: 1.2em;
    letter-spacing: 3px;
    color: #000000;
    margin-top: 44px;
    margin-bottom: 22px;
}

.text-section {
font-family: "Nunito";
font-size: 1rem;
font-weight: 300;
color: #000000;
padding-bottom: 30px;
}

.top-bar {
    z-index: 10;
    background-color: #ffffff;
    color: #000000;
    padding: 24px 0;
    position: fixed;
    top: 0;
    width: 100%;

    a{
        text-decoration: none;
        color: #000000;
    }
} 
.top-bar-content {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.work-item {
    position: relative;
}

.work-item:hover .img-overlay {
    opacity: 1;
}

.work-container-image {
    width:100%;
    height: auto;
}

.lightbox-image-hidden {
    display: none;
}

.img-overlay {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, 0.7);
    color: white;
    font-family: "Nunito";
    font-size: 1.5rem;
    font-weight: 300;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
    opacity: 0;
    transition: opacity 150ms ease-in-out;
}

.content-container {
    max-width: 1440px;
    padding-left: 30px;
    padding-right: 30px;
    margin-left: auto;
    margin-right: auto;
}

.logo-container {
padding-right: auto;
}

.menu-items {
    display: none;
    gap: 40px;
    align-items: center;
    font-weight: 700;
    font-family: "Nunito";
    font-size: 1rem;
}

.front-page-hero {
    padding-top: 140px;
    padding-bottom: 140px;
    position: relative;

    .hero-image {
        position: absolute;
        object-fit: cover;
        width: 100%;
        height: 100%;
        top: 0;
        z-index: -1;
    }
}

.hero-logo {
    display: block; 
    margin-left: auto;
    margin-right: auto;
}   


.about-me {
    font-family: "Nunito";
    font-weight: 200;
    letter-spacing: 5px;
    font-size: 1.75rem;
    color: #7A7772;
    display: flex;
    justify-content: space-between; 
} 

.text-section {
    display: flex;
    gap: 120px;

    .text-section-title-container {
        display: flex;
        justify-content: start;
        align-items: center;
        flex: 1;
    }

    .text-section-title {
        position: relative;
        padding: 42px 56px;
        font-family: "Nunito";
        font-weight: 200;
        letter-spacing: 5px;
        font-size: 1.75rem;
        color: #000000;
    }
        
        .about-me-illustration-1 {
            position: absolute;
            left: 0;
            top: 0;
            color:#000000;
        }

        .about-me-illustration-2 {
            position: absolute;
            right: 0;
            bottom: 0;
            color:#000000;
        }
    }

    .text-section-content {
        flex: 2;
    }

.work-content-container {
    background-color:#080808;
    padding-bottom: 60px;
}

    .work-title {
        font-family: "Nunito";
        font-weight: 200;
        letter-spacing: 5px;
        font-size: 1.75rem;
        color: #ffffff;
        padding-top: 40px;
 }

    .work-content-container-items {
        display: grid;
  	    grid-template-columns: 1fr 1fr 1fr;
        grid-column-gap: 24px;
        grid-row-gap: 24px;
        padding-top: 16px;
}
.footer-container { 
    position: relative;
    background-color: #D5AA63;
    height: 800px;
}

.footer-content {
    display: flex;
    gap: 80px;
    justify-content: center;
}

.footer-text-section {
    display: flex;
    justify-content: start;
}

.footer-text-section-container{
    padding-top: 62px;
    flex: 1;
    display: flex;
    justify-content: start;
    align-items: start;
}

    .contact-illustration-1 {
        position: absolute;
        left: 0;
        top: 0;
        color:#000000;
    }
    .contact-illustration-2 {
        position: absolute;
        right: 0;
        bottom: 0;
        color:#000000;
    }

.footer-text-section-title-container {
    font-family: "Nunito";
    font-weight: 200;
    color:#000000
}

.text-section-title-container {
    display: flex;
    justify-content: start;
    align-items: center;
    flex: 2;
}
.footer-text-section-title {
    position: relative;
    padding: 42px 56px;
    font-family: "Nunito";
    font-weight: 200;
    letter-spacing: 5px;
    font-size: 1.75rem;
    color: #000000;

}
.footer-heading {
    font-family: "Cinzel";
    font-weight: 200;
    font-size: 2rem;
    text-decoration: none;
    color:#000000;
    padding-top: 62px;
    flex: 2;
}
.contact-text-section {
    flex: 2;
    font-family: "Nunito";
    font-weight: 300;
    font-size: 1rem;
    color:#000000
}
.footer-logo-big {
    position: absolute;
    bottom: 0;
    width: 100%;
    left: 0;
    max-width: 1440px;
}

.back-to-top {
    position: absolute;
    width: 56px;
    height: 56px;
    bottom: 200px;
    right: 24px;
}

button.mobile-menu-toggle {
    border:none; 
    background-color: #ffffff;
}

@media screen and (max-width: 800px){

    .work-content-container-items {
        display: flex;
        flex-direction: column;
        
    }

    .text-section {
        flex-direction: column;
        gap: 30px;
        padding-top: 40px;
    }

    .footer-content {
        flex-direction: column;
        justify-content: start;
    }

        .footer-text-section-container {
        padding-top: 40px;
        display: flex;
        justify-content: start;
        flex: 1;
        }

        .footer-text-section-title {
            justify-content: start;
        }

        .footer-heading {
            padding-top: 0%;
        }

}

@media screen and (min-width: 640px){
    .mobile-menu-toggle {
        display:none;
    }

    .menu-items {
        display: flex;

        a{
            text-decoration: none;
            color: #000000;
        }
       
    }

    .mobile-menu-container {
        position:fixed;
        top:0;
        left:0;
        width: 100%;
        min-height: 100vh;
        padding-top: 42px;
        max-width: none;
        border: none;
        text-align: center;
    }

    top-bar.menu-main-nav-container {
        display:none;
    }
    .mobile-menu-toggle.active {
        background-color: white; 
    }

    body.mob-menu-open {
        overflow: hidden;
    }

}

.mobile-menu-container {
    position: relative;
    width: 100%;
    height: 100%;
    max-width: none;
    border: none;
    max-height: none;
}
.close-mobile-menu {
    background-color: #ffffff;
    border:none;
    font-family: "Nunito";
    font-size: 1.2rem;
    font-weight: 500;
}

.mob-menu-items {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;


    a{
        text-decoration: none;
        color: #000000;
        font-family: "Nunito";
        font-size: 1.2rem;
        font-weight: 500;
        padding: 10px;
    } 
}