.site{

    min-height:100vh;

}

.site-header{

    position:sticky;

    top:0;

    z-index:9999;

    background:rgba(255,255,255,.96);

    backdrop-filter:blur(12px);

    -webkit-backdrop-filter:blur(12px);

    border-bottom:1px solid #eef2f7;

    transition:all .3s ease;

}

.header-inner{

    height:82px;

    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:30px;

}

.site-logo{

    flex-shrink:0;

}

.site-logo img{

    max-height:56px;

    width:auto;

}

.primary-navigation{

    flex:1;

    display:flex;

    justify-content:center;

}

.primary-menu{

    display:flex;

    align-items:center;

    gap:34px;

}

.primary-menu li{

    list-style:none;

}

.primary-menu a{

    position:relative;

    display:block;

    padding:8px 0;

    font-size:15px;

    font-weight:600;

    color:#111827;

    transition:.3s;

}

.primary-menu a:hover,

.primary-menu .current-menu-item>a,

.primary-menu .current_page_item>a{

    color:#4F46E5;

}

.primary-menu a::after{

    content:"";

    position:absolute;

    left:0;

    bottom:-6px;

    width:0;

    height:2px;

    background:#4F46E5;

    transition:.3s;

}

.primary-menu a:hover::after,

.primary-menu .current-menu-item>a::after,

.primary-menu .current_page_item>a::after{

    width:100%;

}

.header-actions{

    display:flex;

    align-items:center;

    gap:15px;

}

.header-btn{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    height:44px;

    padding:0 22px;

    background:#4F46E5;

    color:#fff;

    border-radius:10px;

    font-size:14px;

    font-weight:600;

    transition:.3s;

}

.header-btn:hover{

    background:#312E81;

    transform:translateY(-2px);

}

.mobile-menu-toggle{

    display:none;

    width:44px;

    height:44px;

    border:none;

    background:#f3f4f6;

    border-radius:10px;

    cursor:pointer;

    font-size:22px;

}

.site-footer{

    padding:50px 0;

    border-top:1px solid var(--border);

    background:#fff;

}

@media(max-width:992px){

    .primary-navigation{

        display:none;

    }

    .header-btn{

        display:none;

    }

    .mobile-menu-toggle{

        display:flex;

        align-items:center;

        justify-content:center;

    }

    .header-inner{

        height:72px;

    }

    .site-logo img{

        max-height:48px;

    }

}