*, *::before, *::after{
    box-sizing: border-box;
}

ul{
    display: flex;
    list-style: none;
}

a{
    text-decoration: none;
}

h1{
    font-size: clamp(2.4rem, 3vw, 5rem);
    font-weight: 400;
}

p{
    font-size: 1.2rem;
    line-height: 1.6rem;
    color: hsl(233, 8%, 62%);
}

/* request btn */

.request-btn{
    position: relative;
    padding: 1rem 2.8rem;
    border-radius: 50px;
    background: linear-gradient(hsl(136, 64%, 51%), hsl(192, 69%, 51%));
    color: white;
    font-weight: 600;
}

.layout-btn{
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    border-radius: 50px;
}

.layout-btn:hover{
    background: rgb(255, 255, 255, 0.2);
}

.toggle-menu, .mobile-nav{
    display: none;
}

body{
    display: flex;
    flex-direction: column;
    align-items: center;
    font-family: Public Sans;
    margin: 0;
    padding: 0;
}

header{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    font-size: 1.1rem;
    z-index: 3;
    background: hsl(0, 100%, 100%);
}

.header-content{
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: clamp(50rem, 70vw, 100rem);

}

header ul {
    margin: 0;
    padding: 0;
}

header ul li{
    border-bottom: 4px solid transparent;
    margin: 0 1.5rem;
    padding: 1.8rem 0;
}

header ul li a{
    color: hsl(233, 8%, 62%);
    padding: 1.8rem 0;
}

.desktop-nav ul li a:hover{
    color: black;
    border-bottom: 4px solid hsl(136, 64%, 51%);
}


/* MAIN */

main{
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    overflow-x: hidden;
    overflow-y: visible;
}

section{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
}

.hero-content{
    position: relative;
    display: flex;
    align-items: center;
    width: clamp(50rem, 70vw, 100rem);
    overflow: hidden;
}

.hero{
    position: relative;
    height: 40rem;
    background: hsl(0, 0%, 98%);
    overflow: hidden;
}

.intro-img{
    position: absolute;
    right: -5%;
    top: -7%;
    z-index: 1;
}

.bg-intro{
    position: absolute;
    z-index: 0;
    right: -5%;
    transform: translateX(30%);
}

.intro-text{
    width: clamp(4rem, 27vw, 60rem);
    padding: 1rem;
}

.intro-text h1{
    margin: 0;
}

.intro-text p{
    margin: 2.5rem 0;
}

/* About section */

.about{
    background: hsl(220, 16%, 96%);
}

.about-content{
    display: flex;
    flex-direction: column;
    margin: 5rem 0;
    width: clamp(50rem, 70vw, 100rem);
}

.section-desc{
    display: flex;
    flex-direction: column;
}

.section-p{
    width: 43rem;
}

.features{
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 5rem 0;
}

.feature-card{
    display: flex;
    flex-direction: column;
    align-items: start;
    width: 100%;
    margin-right: 3rem;
}

.feature-card img{
    width: auto;
    height: 6rem;
}

.feature-card h2{
    margin: 2rem 0;
    font-weight: 400;
}

/* Article section */

.articles{
    background: hsl(0, 0%, 98%);
}

.articles-content{
    width: clamp(50rem, 70vw, 100rem);
    margin: 5rem 0;
}

.article-cards{
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.article-card{
    display: flex;
    flex-direction: column;
    align-items: start;
    border-radius: 4px;
    margin-right: 1rem;
    width: clamp(17rem, 20vw, 20rem);
    height: 29rem;
    background: hsl(0, 100%, 100%);


}

.article-card img{
    border-radius: 4px 4px 0 0;
    width: clamp(17rem, 20vw, 20rem);
    height: 16rem;
    aspect-ratio: 2 / 4;
    object-fit: cover;
}

.article-card-text{
    padding: 0.5rem 0.7rem;
    height: 50%;
}

.article-card-text h3{
    margin: 0.5rem 0;
    font-size: 1.1rem;
}

.article-card-text p{
    margin: 0;
    line-height: 1.1rem;
    font-size: 1rem;
}

footer{
    width: 100%;
    display: flex;
    justify-content: center;
    background: hsl(233, 26%, 24%);
}

.footer-content{
    padding: 1rem;
    width: clamp(50rem, 70vw, 100rem);
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.footer-socials{
    display: flex;
    flex-direction: column;
    height: 7rem;
    width: 12rem;
    justify-content: space-between;
}

.social-icons{
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.social-icons img{
    width: 1.5rem;
    height: auto;
}

.footer-content ul{
    flex-direction: column;
    color: white;
}

.footer-content ul li{
    margin: 0.8rem 0;
}

.footer-content ul li:hover{
    color: hsl(136, 64%, 51%);
}

.copyright{
    display: flex;
    flex-direction: column;
    align-items: end;
    justify-content: space-between;
    height: 7rem;
}

.copyright p{
    font-size: 1rem;
    margin: 0;
}

@media (max-width: 1400px) {

    h1{
        font-size: clamp(2.2rem, 4vw, 3rem);
    }

    .header-content{
        padding: 2rem 1.5rem;
    }

    header .request-btn, .desktop-nav{
        display: none;
    }

    .toggle-menu, .mobile-nav{
        display: block;
    }

    .menu-layout{
        display: none;
        position: fixed;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        background: hsl(233, 26%, 24%, 0.3);
        z-index: 2;
    }
    
    .mobile-menu{
        position: fixed;
        display: none;
        left: 2rem;
        right: 2rem;
        top: 8rem;
        z-index: 9999;
        border-radius: 10px;
        background: hsl(0, 100%, 100%);
    }

    .screen-fix{
        overflow: hidden;
    }

    .mobile-nav{
        display: flex;
        align-items: center;
        justify-content: center;
        z-index: 3;
    }

    .mobile-nav ul{
        flex-direction: column;
        align-items: center;
    }

    .mobile-nav ul li{
        padding: 0.6rem 0;
        font-size: 1.4rem;
    }

    .mobile-nav ul li a{
        color: black;
    }

    .active{
        display: block;
    }

    /* MAIN */

    main {
        background: hsl(0, 0%, 98%);
    }

    .hero{
        position: static;
        overflow: visible;
        width: (40rem, 90vw, 60rem);
        height: auto;
    }

    .hero-content{
        justify-content: center;
        padding: 0;
        text-align: center;
    }

    .intro-img, .bg-intro{
        width: 100%;
        right: 0;
        top: 0;
        transform: translate(0);
    }

    .intro-img{
        position: relative;
        top: -7rem;
    }

    .intro-text{
        width: clamp(20rem, 90vw, 30rem);
        margin: 1rem 0;
    }

    .intro-text h1{
        font-size: clamp(2.2rem, 4vw, 3rem);
    }

    .intro-text p{
        font-size: clamp(1rem, 3vw, 1.2rem);
    }

    /* features section */

    .about-content{
        align-items: center;
        text-align: center;
    }

    .section-desc{
        align-items: center;
        width: clamp(20rem, 90vw, 30rem);
    }

    .section-p{
        width: clamp(15rem, 50vw, 40rem);
    }

    .features{
        flex-direction: column;
    }

    .feature-card{
        align-items: center;
        text-align: center;
        width: clamp(20rem, 90vw, 30rem);
        margin: 0;
    }

    /* Articles */

    .articles-content{
        align-items: center;
        justify-content: center;
    }

    .articles-content h1{
        text-align: center;
    }
    
    .article-cards{
        flex-direction: column;
        align-items: center;
    }
    
    .article-card{
        margin: 1rem 0;
        width: clamp(18rem, 20vw, 20rem);
    }

    .article-card img{
         width: clamp(18rem, 20vw, 20rem);
    }

    /* footer */

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

    .footer-socials{
        margin: 1rem 0;
    }

    .footer-content ul{
        padding: 0;
        align-items: center;
        margin: 0;
    }

    .copyright{
        margin: 1rem 0;
        align-items: center;
        text-align: center;
    }

}