/* ==========================================================
   HEADER.CSS
   ========================================================== */

.site-header{
    position:sticky;
    top:0;
    z-index:1000;
    background:#ffffff;
    border-bottom:1px solid var(--color-border);
    box-shadow:0 2px 12px rgba(0,0,0,.04);
}

.header-container{
    display:flex;
    align-items:center;
    justify-content:space-between;
    min-height:80px;
    gap:32px;
}

/* ==========================================================
   Логотип
   ========================================================== */

.logo{
    flex-shrink:0;
}

.logo a{
    display:inline-block;
    font-size:1.5rem;
    font-weight:700;
    color:var(--color-primary);
    text-decoration:none;
    transition:color var(--transition);
}

.logo a:hover{
    color:var(--color-secondary);
}

/* ==========================================================
   Главное меню
   ========================================================== */

.main-menu{
    display:flex;
    align-items:center;
    gap:32px;
    margin-left:auto;
}

.main-menu a{
    color:var(--color-secondary);
    font-weight:500;
    text-decoration:none;
    transition:color var(--transition);
}

.main-menu a:hover{
    color:var(--color-primary);
}

.main-menu a.menu-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:46px;
    padding:0 24px;
    border-radius:var(--radius-md);
    background:var(--gradient-primary);
    color:#ffffff;
    font-weight:600;
    transition:
        transform var(--transition),
        box-shadow var(--transition);
}

.main-menu a.menu-button:hover{
    color:#ffffff;
    transform:translateY(-2px);
    box-shadow:var(--shadow-md);
}

/* ==========================================================
   Кнопка мобильного меню
   ========================================================== */

.menu-toggle{
    display:none;
    width:46px;
    height:46px;
    padding:0;
    border:none;
    background:transparent;
    cursor:pointer;
    flex-direction:column;
    justify-content:center;
    gap:6px;
}

.menu-toggle span{
    display:block;
    width:26px;
    height:3px;
    margin:0 auto;
    border-radius:2px;
    background:var(--color-secondary);
    transition:.3s;
}

/* ==========================================================
   Мобильная версия
   ========================================================== */

@media (max-width:768px){

    .header-container{
        min-height:72px;
    }

    .menu-toggle{
        display:flex;
    }

    .main-menu{
        display:none;
        position:absolute;
        top:100%;
        left:0;
        right:0;
        flex-direction:column;
        align-items:stretch;
        gap:0;
        background:#ffffff;
        border-top:1px solid var(--color-border);
        box-shadow:0 10px 25px rgba(0,0,0,.08);
        padding:16px;
    }

    .main-menu.is-open{
        display:flex;
    }

    .main-menu a{
        padding:14px 0;
        border-bottom:1px solid var(--color-border);
    }

    .main-menu a:last-child{
        border-bottom:none;
    }

    .main-menu a.menu-button{
        width:100%;
        margin-top:12px;
        border-bottom:none;
    }

}

/* ==========================================================
   Анимация бургер-кнопки
   ========================================================== */

.menu-toggle.is-active span:nth-child(1){
    transform:translateY(9px) rotate(45deg);
}

.menu-toggle.is-active span:nth-child(2){
    opacity:0;
}

.menu-toggle.is-active span:nth-child(3){
    transform:translateY(-9px) rotate(-45deg);
}

/* ==========================================================
   Шапка при прокрутке
   ========================================================== */

.site-header.scrolled{
    box-shadow:0 6px 20px rgba(0,0,0,.08);
}
