/* =========================================================
   TASOTFILT — HEADER
========================================================= */


/* =========================================================
   HEADER
========================================================= */

.site-header {

    position: sticky;

    top: 0;

    z-index: 1000;

    width: 100%;

    background:
        rgba(6, 19, 33, .92);

    backdrop-filter: blur(18px);

    -webkit-backdrop-filter: blur(18px);

    border-bottom:
        1px solid
        rgba(255, 255, 255, .07);
}


/* =========================================================
   HEADER INNER
========================================================= */

.site-header-inner {

    width: min(
        var(--container),
        calc(100% - 32px)
    );

    min-height: 82px;

    margin: 0 auto;

    display: flex;

    align-items: center;

    gap: 24px;
}


/* =========================================================
   BRAND
========================================================= */

.site-brand {

    display: flex;

    align-items: center;

    flex: 0 0 auto;

    text-decoration: none;
}


.site-logo {

    display: block;

    width: auto;

    height: 54px;

    max-width: 170px;

    object-fit: contain;
}


/* =========================================================
   MAIN NAVIGATION
========================================================= */

.nav-links {

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 2px;

    flex: 1;

    min-width: 0;
}


.nav-links a {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    min-height: 38px;

    padding:
        0 10px;

    color:
        var(--muted);

    background:
        transparent;

    border:
        1px solid transparent;

    border-radius:
        999px;

    font-size: 12px;

    font-weight: 500;

    letter-spacing: .01em;

    white-space: nowrap;

    text-decoration: none;

    transition:
        color .2s ease,
        background .2s ease,
        border-color .2s ease;
}


.nav-links a:hover {

    color:
        var(--text);

    background:
        rgba(255,255,255,.045);
}


.nav-links a.active {

    color:
        #ffffff;

    background:
        rgba(7,87,154,.24);

    border-color:
        rgba(11,130,198,.20);
}


/* =========================================================
   HEADER RIGHT
========================================================= */

.header-right {

    display: flex;

    align-items: center;

    gap: 12px;

    flex: 0 0 auto;
}


/* =========================================================
   CONTACT
========================================================= */

.header-contact-btn {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    min-height: 40px;

    padding:
        0 15px;

    color:
        #ffffff;

    background:
        linear-gradient(
            135deg,
            var(--brand-blue),
            var(--brand-blue-light)
        );

    border:
        1px solid
        rgba(11,130,198,.25);

    border-radius:
        999px;

    font-size: 12px;

    font-weight: 700;

    white-space: nowrap;

    text-decoration: none;

    box-shadow:
        0 8px 24px
        rgba(11,130,198,.14);

    transition:
        transform .2s ease,
        box-shadow .2s ease;
}


.header-contact-btn:hover {

    transform:
        translateY(-1px);

    box-shadow:
        0 12px 30px
        rgba(11,130,198,.22);
}


/* =========================================================
   LANGUAGE SWITCHER
========================================================= */

.language-switcher {

    display: inline-flex;

    align-items: center;

    gap: 4px;

    white-space: nowrap;
}


.language-link {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    min-width: 28px;

    height: 30px;

    color:
        var(--muted);

    background:
        transparent;

    border:
        1px solid transparent;

    border-radius:
        6px;

    font-size: 10px;

    font-weight: 700;

    letter-spacing: .07em;

    text-decoration: none;

    transition:
        color .2s ease,
        background .2s ease,
        border-color .2s ease;
}


.language-link:hover {

    color:
        var(--text);

    background:
        rgba(255,255,255,.045);
}


.language-link.active {

    color:
        var(--brand-blue-light);

    background:
        rgba(11,130,198,.08);

    border-color:
        rgba(11,130,198,.12);
}


.language-divider {

    color:
        rgba(255,255,255,.18);

    font-size: 10px;

    user-select: none;
}


/* =========================================================
   HEADER AURA
========================================================= */

.header-aura {

    position: absolute;

    left: 50%;

    bottom: -1px;

    width: 0;

    height: 0;

    opacity: 0;

    pointer-events: none;

    transition:
        opacity .4s ease;
}


.header-aura.active {

    opacity: 1;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1100px) {

    .site-header-inner {

        gap: 14px;

    }


    .site-logo {

        height: 48px;

        max-width: 145px;

    }


    .nav-links {

        gap: 0;

    }


    .nav-links a {

        padding:
            0 7px;

        font-size: 11px;

    }


    .header-right {

        gap: 6px;

    }


    .header-contact-btn {

        padding:
            0 12px;

        font-size: 11px;

    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 760px) {

    .site-header-inner {

        width:
            calc(100% - 20px);

        min-height: 104px;

        padding:
            8px 0;

        display: grid;

        grid-template-columns:
            auto 1fr;

        grid-template-rows:
            48px 40px;

        gap:
            4px 12px;
    }


    .site-brand {

        grid-column: 1;

        grid-row: 1;

    }


    .site-logo {

        height: 42px;

        max-width: 120px;

    }


    .header-right {

        grid-column: 2;

        grid-row: 1;

        justify-content: flex-end;

    }


    .nav-links {

        grid-column: 1 / -1;

        grid-row: 2;

        width: 100%;

        justify-content: flex-start;

        overflow-x: auto;

        overflow-y: hidden;

        flex-wrap: nowrap;

        gap: 2px;

        padding:
            0 0 3px;

        scrollbar-width: none;

        -webkit-overflow-scrolling: touch;
    }


    .nav-links::-webkit-scrollbar {

        display: none;
    }


    .nav-links a {

        flex:
            0 0 auto;

        min-height: 34px;

        padding:
            0 9px;

        font-size: 11px;

    }


    .header-contact-btn {

        min-height: 34px;

        padding:
            0 12px;

        font-size: 11px;

    }


    .language-link {

        min-width: 25px;

        height: 28px;

        font-size: 10px;

    }

}


/* =========================================================
   VERY SMALL MOBILE
========================================================= */

@media (max-width: 420px) {

    .site-header-inner {

        gap:
            4px 8px;

    }


    .site-logo {

        height: 38px;

        max-width: 110px;

    }


    .header-contact-btn {

        padding:
            0 10px;

    }


    .nav-links a {

        padding:
            0 8px;

        font-size: 10px;

    }

}