/* ===========================
   HEADER
=========================== */

.site-header{

    position:fixed;

    top:0;

    left:0;

    width:100%;

    background:#fff;

    border-bottom:1px solid var(--border);

    z-index:999;

}

.navbar{

    height:80px;

    display:flex;

    align-items:center;

    justify-content:space-between;

}

.logo{
    display:flex;
    flex-direction:column;
    justify-content:center;
    height:80px;
}


.logo-title{

    font-family: var(--heading);

    font-size: 34px;

    font-weight: 700;

    color: var(--secondary);

    line-height: 1.1;
    
    letter-spacing: -0.5px;


}

.logo-title .highlight{

    color: var(--primary);

}

.logo-tagline{

    margin-top:6px;

    font-size:13px;

    color:#777;

}

.nav-menu ul{

    display:flex;

    align-items:center;

    gap:40px;

}

.nav-menu a{

    color:var(--secondary);

    font-size:16px;

    font-weight:500;

    letter-spacing:0.3px;

    position:relative;

    transition:var(--transition);

    padding:30px 0;


}

.nav-menu a:hover{

    color:var(--primary);

}

.nav-menu a.active{

    color:var(--primary);

}

.nav-menu a::after{

    content:"";

    position:absolute;

    left:0;

    bottom:-8px;

    width:0;

    height:2px;

    background:var(--primary);

    transition:.3s;

}

.nav-menu a:hover::after{

    width:100%;

}

.header-right{

    display:flex;

    align-items:center;

    gap:15px;

}

.search-btn,

.menu-btn{

    border:none;

    background:none;

    cursor:pointer;

    font-size:22px;

}

.menu-btn{

    display:none;

}

.mobile-menu{

    position:fixed;

    top:0;

    right:-100%;

    width:340px;

    height:100vh;

    background:#fff;

    box-shadow:-10px 0 30px rgba(0,0,0,.15);

    transition:.4s ease;

    z-index:9999;

    padding:30px 20px;

}

.mobile-menu.active{

    right:0;

}

.close-menu{

     background:#fff;

    border:2px solid #222;

    position:absolute;

    top:25px;

    right:25px;

    width:45px;

    height:45px;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:26px;

    cursor:pointer;

    transition:var(--transition);

}

.close-menu:hover{

background:var(--primary);

    border-color:var(--primary);

    color:#fff;

    transform:rotate(90deg);
}

.mobile-menu ul{

    display:flex;

    flex-direction:column;

    margin:50px 0 0;

    padding:0;

    gap:8px;

}


   .mobile-menu a{

     position:relative;

    transition:all .3s ease;

}


.mobile-menu a:hover{

    color:var(--primary);

    transform:translateX(8px);

}

.mobile-menu{

    display:flex;

    flex-direction:column;


}
.mobile-social{

    margin-top:40px;

    padding-top:20px;

    border-top:1px solid #e5e7eb;

}

.mobile-social h4{

    font-size:12px;

    text-transform:uppercase;

    letter-spacing:2px;

    color:#999;

    margin-bottom:20px;

}

.social-icons{

    display:flex;

        align-items:center;


    gap:14px;

}

.social-icons a{

    width:48px;

    aspect-ratio:1;

    display:grid;

    place-items:center;

    border:1px solid #ddd;

    border-radius:50%;

    color:var(--secondary);

    text-decoration:none;

    transition:all .35s ease;


    transition:all .3s ease;

}
.social-icons a:hover{

    transform:translateY(-4px) scale(1.05);

}

.social-icons a i{

    font-size:20px;

    line-height:1;

    transition:inherit;

     display:block;

}
.social-icons a:hover{

    background:var(--primary);

    border-color:var(--primary);

    color:#fff;

    transform:translateY(-3px);

}


