.header-surface {
    min-height: 88px;
    padding: .75rem .9rem .75rem .8rem;
}

.site-brand {
    gap: .9rem;
}

.theme-logo-wrap {
    width: 62px;
    height: 62px;
    flex-basis: 62px;
}

.brand-copy {
    gap: .06rem;
}

.brand-overline {
    margin: 0 !important;
    color: var(--hunter-silver) !important;
    font-size: .66rem !important;
    font-weight: 850;
    letter-spacing: .14em;
}

.brand-copy strong {
    color: var(--white);
    font-size: 1.32rem;
    font-weight: 950;
    line-height: 1;
    letter-spacing: -.045em;
    text-transform: uppercase;
}

.primary-nav {
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
}

.primary-nav ul {
    gap: .22rem;
}

.primary-nav a {
    padding: .68rem .62rem;
    border-radius: .35rem;
    font-size: .84rem;
    font-weight: 850;
    letter-spacing: .015em;
}

.primary-nav a:hover {
    background: transparent;
    color: var(--hunter-yellow);
}

.primary-nav .current-menu-item > a,
.primary-nav .current-menu-ancestor > a {
    background: transparent;
    color: var(--white);
}

.primary-nav .current-menu-item > a::after,
.primary-nav .current-menu-ancestor > a::after {
    right: .62rem;
    bottom: .3rem;
    left: .62rem;
    height: 3px;
    border-radius: 0;
    background: linear-gradient(90deg, var(--hunter-red) 0 24%, var(--hunter-yellow) 24% 72%, var(--hunter-silver) 72%);
    box-shadow: none;
}

.header-cta {
    padding: .78rem 1.05rem;
    font-size: .84rem;
    font-weight: 900;
}

.site-header.is-scrolled .header-surface {
    min-height: 72px;
}

.site-header.is-scrolled .theme-logo-wrap {
    width: 52px;
    height: 52px;
    flex-basis: 52px;
}

@media (max-width: 1120px) {
    .brand-copy strong {
        font-size: 1.12rem;
    }

    .primary-nav a {
        padding-inline: .5rem;
        font-size: .78rem;
    }
}

@media (max-width: 900px) {
    .header-surface {
        min-height: 78px;
    }

    .primary-nav a {
        padding: .8rem .9rem;
        font-size: 1rem;
    }

    .primary-nav {
        padding: .75rem;
        border: 1px solid rgba(244,255,0,.16);
        border-radius: 1.2rem;
        background: rgba(8,17,32,.98);
    }

    .primary-nav .current-menu-item > a,
    .primary-nav .current-menu-ancestor > a {
        background: rgba(244,255,0,.08);
        color: var(--hunter-yellow);
    }
}

@media (max-width: 520px) {
    .header-surface {
        padding: .58rem .65rem;
    }

    .theme-logo-wrap {
        width: 52px;
        height: 52px;
        flex-basis: 52px;
    }

    .brand-copy strong {
        font-size: 1rem;
    }

    .brand-overline {
        font-size: .51rem !important;
        letter-spacing: .1em;
    }
}

@media (max-width: 390px) {
    .brand-overline {
        display: none;
    }

    .brand-copy strong {
        max-width: 8ch;
        font-size: .92rem;
        line-height: .9;
    }
}

/* Refined desktop composition: compact wordmark, one-line navigation, one clear CTA. */
@media (min-width: 901px) {
    .header-surface {
        min-height: 82px;
        padding: .62rem .75rem;
        gap: .8rem;
    }

    .header-surface::after {
        display: none;
    }

    .site-brand {
        flex: 0 0 242px;
        gap: .72rem;
    }

    .theme-logo-wrap {
        width: 54px;
        height: 54px;
        flex-basis: 54px;
    }

    .brand-overline {
        font-size: .56rem !important;
        letter-spacing: .13em;
    }

    .brand-copy strong {
        font-size: 1.22rem;
        font-weight: 950;
        letter-spacing: -.055em;
        white-space: nowrap;
    }

    .primary-nav {
        min-width: 0;
        flex: 1 1 auto;
    }

    .primary-nav ul {
        justify-content: center;
        gap: .08rem;
    }

    .primary-nav li {
        flex: 0 0 auto;
    }

    .primary-nav a {
        padding: .66rem .58rem;
        font-size: .92rem;
        font-weight: 950;
        line-height: .95;
        letter-spacing: -.035em;
        white-space: nowrap;
    }

    .primary-nav a[href*="/mitglied-werden/"] {
        display: none;
    }

    .primary-nav .current-menu-item > a::after,
    .primary-nav .current-menu-ancestor > a::after {
        right: .52rem;
        bottom: .18rem;
        left: .52rem;
        height: 2px;
    }

    .header-cta {
        padding: .74rem .94rem;
        gap: .45rem;
        font-size: .84rem;
        font-weight: 950;
        letter-spacing: -.025em;
    }

    .header-cta-dot {
        width: .36rem;
        height: .36rem;
    }

    .site-header.is-scrolled .header-surface {
        min-height: 66px;
    }

    .site-header.is-scrolled .theme-logo-wrap {
        width: 48px;
        height: 48px;
        flex-basis: 48px;
    }
}

@media (min-width: 901px) and (max-width: 1080px) {
    .site-brand {
        flex-basis: 205px;
    }

    .brand-copy strong {
        font-size: 1.08rem;
    }

    .primary-nav a {
        padding-inline: .44rem;
        font-size: .82rem;
    }

    .header-cta-label {
        display: none;
    }

    .header-cta-short {
        display: inline;
    }
}

/* Graphic navigation language inspired by reflective jacket segments. */
@media (min-width: 901px) {
    .primary-nav ul {
        gap: .12rem;
    }

    .primary-nav a {
        position: relative;
        z-index: 1;
        padding: .72rem .78rem;
        overflow: hidden;
        clip-path: polygon(8px 0, 100% 0, calc(100% - 8px) 100%, 0 100%);
        border-radius: 0;
        font-size: .88rem;
        letter-spacing: -.025em;
        transition: color .2s ease, transform .2s ease, background .2s ease;
    }

    .primary-nav a::before {
        content: "";
        position: absolute;
        z-index: -1;
        inset: 0;
        background: linear-gradient(105deg, rgba(209,40,56,.18), rgba(203,211,218,.1));
        transform: translateX(-105%);
        transition: transform .22s ease;
    }

    .primary-nav a:hover {
        color: var(--white);
        transform: translateY(-2px);
    }

    .primary-nav a:hover::before {
        transform: translateX(0);
    }

    .primary-nav .current-menu-item > a,
    .primary-nav .current-menu-ancestor > a {
        border: 1px solid rgba(234,255,0,.24);
        background: linear-gradient(105deg, rgba(234,255,0,.2), rgba(203,211,218,.1));
        color: var(--yellow-soft);
        box-shadow: inset 0 -3px 0 var(--hunter-red);
    }

    .primary-nav .current-menu-item > a::before,
    .primary-nav .current-menu-ancestor > a::before,
    .primary-nav .current-menu-item > a::after,
    .primary-nav .current-menu-ancestor > a::after {
        display: none;
    }
}

@media (min-width: 901px) and (max-width: 1080px) {
    .primary-nav a {
        padding-inline: .62rem;
        font-size: .8rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .primary-nav a,
    .primary-nav a::before {
        transition: none;
    }
}
