body {
    background-color: rgb(255, 255, 255);
    margin: 0;
    padding: 0;
    overflow-x: hidden;
    font-family: 'Poppins', sans-serif;
}

/* --- HERO SECTION --- */
.hero {
    background-color: rgb(219, 146, 146);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: 50% 50%;

    width: 100vw;
    aspect-ratio: 16/9;

    animation: imageslider 20s ease infinite; 
    /*
    -webkit-mask-image: linear-gradient(to bottom, black 98%, transparent 100%);
    mask-image: linear-gradient(to bottom, black 98%, transparent 100%);
    */
}

/* Nav Bar */
.nav {
    position: relative;
    padding: 1em 10vw;
    display: flex;
    height: 70px;
    align-items: center;
    justify-content: space-between;
    z-index: 999;
}

.logo {
    height: clamp(2rem, 7vw, 3rem);
}
.burger-wrapper {
    margin-right: 1rem;
}
.burger {
    height: clamp(2rem, 7vw, 3rem);
}

/* Hero Title */
.hero-title {
    margin-top: 6vw;
    padding-left: 10.5vw;
    color: white;
    font-family: 'Poppins', sans-serif;
    width: min(1900px, 40vw);
    text-shadow: 2px 2px 5px rgba(0,0,0,0.6);
}

.hero-eyebow {
    display: inline-block;
    font-size: clamp(0.9rem, 0.9vw, 3rem);
    text-shadow: 2px 2px 5px rgba(0,0,0,0.6);
    animation: headerfadein 2s ease forwards;
    opacity: 0;
}

.hero-heading {
    margin-block-start: 1rem;
    font-size: clamp(1.5rem, 4vw, 6.8rem);
    text-shadow: 2px 2px 5px rgba(0,0,0,0.6);
    animation: headerfadein 2s ease forwards;
    opacity: 0;
}

.hero-subtitle {
    font-size: clamp(1.5rem, 1.6vw, 4.5rem);
    margin-block-end: 2.5rem;
    text-shadow: 2px 2px 5px rgba(0,0,0,0.6);
    animation: headerfadein 2s ease forwards;
    animation-delay: 0.7s;
    opacity: 0;
}

.getintouchwrapper {
    padding-bottom: 10vw;
    animation: headerfadein 2s ease forwards;
    animation-delay: 1.5s;
    opacity: 0;
}

.getintouch {
    font-family: 'Poppins', sans-serif;
    font-style: normal;
    font-weight: 600;
    font-size: clamp(1.2rem, 1vw, 3rem);
    text-decoration-line: underline;
    color: #FFD723;
    cursor: pointer;
}

.getintouch i {
  font-family: "Font Awesome 7 Free"; /* FA 6 font family */
  font-weight: 900; /* Needed for solid icons */
  margin-right: 0.5em; /* spacing between icon and text */
}

/* CLIENTS */
.clients-wrapper {
    position: absolute;
    display: flex;
    top: 0;
    left: 10%;
    transform: translateY(-40%);
    height: 13vw;
    width: 90%;
    
    align-items: center;
    justify-content: flex-start;
    background-color: rgb(255, 255, 255);
    box-shadow: 50px 50px 100px #00000025;
    z-index: 1;
}

.clients {
    display: flex;
    align-items: center;
    justify-content: space-around;
    gap: 4vw;
    margin: 4vw;
}

.clients img {
    height: 9vw;
    object-fit: contain;
    filter: grayscale(100%) opacity(0.5);
}

/* --- WHAT WE DO SECTION --- */
.what-we-do-section{
    position: relative;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    height: 100vh;
    width: 100%;
    background-color: white;
}

.what-we-do__wrapper {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
    font-family: "Poppins";
    width: 77vw;
    height: 55vw;
    font-size: clamp(1.1rem, 1.7vw, 3rem);
}

.what-we-do__text {
    width: 37vw;
    margin-bottom: 2vw;
    margin-top: 15vw;
}

.what-we-do__eyebow {
    font-size: max(0.8rem, 1.2vw);
    color: #4D533CE5;
}

.what-we-do__heading {
    font-size: max(1.5rem, 2.8vw);
    color: #4D533C;
}

.what-we-do__subtitle {
    font-size: clamp(1.1rem, 1.2vw, 3.5rem);
    margin-block-end: 6vw;
    color: #21384299;
}

.what-we-do__more-about-us {
    font-size: max(0.8rem, 1.2vw); 
    text-decoration-line: underline;
    color: #cccfcc
}

.what-we-do__quote-wrapper {
    width: 33vw;
    box-shadow: 0px 100px 100px #00000025;
    padding-top: 15vw;
}

.what-we-do__quote {
    padding: 0 3vw;
    height: 87%;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    gap: 4vw;
}

.what-we-do__quote-text {
    font-size: clamp(1.1rem, 1.7vw, 5rem);
    font-style: italic;
    color: #4D533C;
}

.what-we-do__quote-founder {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 1.5vw;
    padding-bottom: 3vw;
}

.what-we-do__quote-founder img {
    border-radius: 8.3vw;
    height: clamp(3rem, 8.3vw, 15rem);
}

.what-we-do__quote-founder-name {
    font-size: max(1rem, 1.5vw);
    margin-block-start: 0;
    margin-block-end: 0;
    color: #4D533C;
}

.what-we-do__quote-founder-title {
    font-size: max(0.8rem, 1.2vw);
    margin-block-start: 0;
}

/* --- BURGER MENU --- */
.burger-menu {
    display: flex;
    position: fixed;
    top: 0;
    left: 100vw;
    width: 100vw;
    height: 100vh;
    height: 100dvh;
    background-color: #303030ee;
    color: #ffd723ee;
    z-index: 998;
}

.burger-menu__list {
    list-style: none;
    padding: 0;
    margin: 0;
    margin-top: 90px;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    font-weight: 900;
    text-shadow: 2px 5px 5px rgba(0,0,0,0.3);
    font-size: clamp(0.9rem, 6vh, 10dvh);
    font-size: clamp(0.9rem, 6dvh, 10dvh);
    gap: 3vh;
    gap: 3dvh;
}

.burger-menu__slidein {
    animation: slidein 0.5s ease forwards;
}

.burger-menu__slideout {
    animation: slideout 0.5s ease forwards;
}

.disable-scroll {
    overflow: hidden;
}

.burger-dektop__links {
    display: none;
}

/* Media */
@media (max-width:1024px) {
    .hero-title {
        width: 80vw;
        margin-top: 1vw;
    }
    .what-we-do__heading {
        margin-block-start: 1%;
        margin-block-end: 3%;
    }

    .what-we-do__wrapper  {
        flex-direction: column;
        justify-content: flex-start;
        align-items: stretch;
        width: 100%;
        height: auto;
        padding-top: 0;
    }
    .what-we-do__text {
        width: auto;
        margin-bottom: 2vw;
        padding: 6vw 4vw;
    }
    .what-we-do__quote-founder {
        padding-bottom: 0;
    }
    .what-we-do__quote-wrapper {
        width: auto;
        justify-self: stretch;
        padding-bottom: 1rem;
        padding-top: 0;
        box-shadow: 10px 30px 40px rgba(0,0,0,0.13);
    }
    .what-we-do__quote {
        padding: 6vw 4vw;
    }
    .what-we-do__quote-text {
        margin-block-end: 1%;
    }
    .clients-wrapper {
        box-shadow: 20px 20px 20px #00000013;
    }
}

@media (max-width:650px) {
    .hero {
        aspect-ratio: 1/1;
    }
    .nav {
        padding: 0rem 3vw;
    }
    .hero-title {
        width: 80vw;
        margin-top: 1vw;
        padding-left: 4vw;
    }
    .what-we-do-section{
        position: static;
        flex-direction: column;
        align-items: center;
        justify-content: flex-start;
    }
    .what-we-do__text {
        margin-top: 0;
    }
    .clients-wrapper {
        position: relative;
        transform: none;
        width: 90%;
        left: 0;
        top: auto;
        height: auto;
        margin: 0 auto;
        display: block;
        z-index: auto;
        box-shadow: 0px 10px 30px rgba(0,0,0,0.1);
    }
    .clients {
        flex-wrap: wrap;
    }
    .clients img {
        height: 15vw;
    }
}

@media (orientation: landscape) and (min-width:1024px) {
    .burger-wrapper {
        display: flex;
        flex-direction: row;
        align-items: center;
        gap: max(2rem, 3vw);
    }

    .burger-dektop__links {
        display: flex;
        flex-direction: row;
        align-items: center;
        gap: max(0.5rem, 1.5vw);
        font-size: min(1.15vw, 1.5rem);
        font-weight: 600;
        transition: opacity 0.4s ease;
        opacity: 0;
    }

    .burger-dektop__links--hidden {
        opacity: 0;
        pointer-events: none;
    }

    .burger-dektop__links--visible {
        opacity: 1;
    }

    .burger-dektop__links a {
        color: white;
        text-decoration: none;
    }
}

/* Animations */

/* 
    Smooth transition between background images seems to not work FireFox :( 
    Works in Chrome and Edge tho
*/
@keyframes imageslider {
    0% {
        background-image: url('assets/background1.webp');
    }
    40% {
        background-image: url('assets/background1.webp');
    }
    50% {
        background-image: url('assets/background2.webp');
    }
    90% {
        background-image: url('assets/background2.webp');
    }
    100% {
        background-image: url('assets/background1.webp');
    }
}

@keyframes slidein {
    from {left: 100vw; }
    to {left: 0; }
}

@keyframes slideout {
    from {left: 0; }
    to {left: 100vw; }
}


@keyframes headerfadein {
    from {opacity: 0; transform: translate(-1vw, 0px);}
    to {opacity: 1; transform: translate(0, 0px);}
}