.ej-floating-header {
    position: fixed;
    inset: 0 0 auto;
    z-index: 50;
    padding: max(12px, env(safe-area-inset-top)) clamp(12px, 2vw, 24px) 0;
    pointer-events: none;
}
.ej-nav-island {
    max-width: 1280px;
    min-height: 72px;
    margin-inline: auto;
    padding: 10px 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    border: 1px solid rgba(245, 242, 234, .14);
    border-radius: 28px;
    background: rgba(22, 21, 15, .94);
    box-shadow: 0 12px 36px rgba(0, 0, 0, .24);
    pointer-events: auto;
}
@supports (backdrop-filter: blur(16px)) {
    .ej-nav-island, .ej-mobile-appbar {
        background: rgba(22, 21, 15, .88);
        backdrop-filter: blur(16px);
        -webkit-backdrop-filter: blur(16px);
    }
}
.ej-logo-wrap, .ej-header-actions, .ej-desktop-nav { display: flex; align-items: center; }
.ej-logo-wrap { flex: none; min-height: 44px; }
.ej-logo-img { width: 116px; height: auto; display: block; }
.ej-desktop-nav { gap: 4px; position: relative; isolation: isolate; }
.ej-nav-link {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    padding: 8px 12px;
    border-radius: 999px;
    color: var(--ej-stone);
    font-size: 14px;
    white-space: nowrap;
}
.ej-nav-link:hover, .ej-nav-link.active { color: var(--ej-cream); background: rgba(245, 242, 234, .09); }
.ej-nav-link.active { font-weight: 700; }
.ej-header-actions { flex: none; gap: 12px; }
.ej-language-switch {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    border: 1px solid rgba(245, 242, 234, .2);
    border-radius: 999px;
    font-size: 14px;
    white-space: nowrap;
}
.ej-language-switch:hover { color: var(--ej-cream); border-color: var(--ej-cream); }
.ej-nav-cta {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 10px 20px;
    border-radius: 999px;
    background: var(--ej-orange);
    color: var(--ej-ink);
    font-size: 14px;
    font-weight: 700;
    white-space: nowrap;
}
.ej-nav-cta span { font-size: 8px; }
.ej-nav-cta:hover { background: var(--ej-cream); color: var(--ej-ink); }
.ej-mobile-appbar { display: none; }
@media (max-width: 1023px) {
    .ej-desktop-nav { display: none; }
    .ej-nav-island { min-height: 64px; padding: 8px 16px; gap: 12px; border-radius: 22px; }
    .ej-logo-img { width: 110px; }
    .ej-mobile-appbar {
        display: flex;
        position: fixed;
        inset-inline: max(10px, env(safe-area-inset-left)) max(10px, env(safe-area-inset-right));
        bottom: max(10px, env(safe-area-inset-bottom));
        z-index: 50;
        max-width: 560px;
        margin-inline: auto;
        padding: 6px 4px;
        border: 1px solid rgba(245, 242, 234, .18);
        border-radius: 24px;
        background: rgba(22, 21, 15, .96);
        box-shadow: 0 8px 28px rgba(0, 0, 0, .3);
    }
    .ej-appbar-item {
        flex: 1 1 0;
        min-width: 0;
        min-height: 54px;
        padding: 5px 2px;
        display: flex;
        align-items: center;
        justify-content: center;
        flex-direction: column;
        gap: 4px;
        border-radius: 16px;
        color: var(--ej-stone);
        font-size: 11px;
        white-space: nowrap;
    }
    .ej-appbar-item.active { color: var(--ej-cream); background: rgba(245, 242, 234, .07); }
    .ej-appbar-item.active svg, .ej-appbar-cta svg { color: var(--ej-orange); }
}

.ej-nav-island { transition: min-height .3s ease, padding .3s ease, box-shadow .3s ease, border-color .3s ease; }
.ej-header-scrolled .ej-nav-island { border-color: rgba(245,242,234,.2); box-shadow: 0 8px 28px rgba(0,0,0,.3); }
.ej-nav-indicator { position: absolute; top: 0; left: 0; z-index: -1; border: 1px solid rgba(229,83,30,.22); border-radius: 14px; background: rgba(245,242,234,.07); pointer-events: none; opacity: 0; transition: transform .42s cubic-bezier(.22,1,.36,1), width .42s cubic-bezier(.22,1,.36,1), height .3s ease, opacity .2s ease; }
.ej-nav-indicator[data-ready] { opacity: 1; }
.ej-mobile-appbar { isolation: isolate; }
.ej-nav-link, .ej-appbar-item { position: relative; transition: color .22s ease, transform .22s ease; }
.ej-nav-link.active, .ej-appbar-item.active { background: transparent; }
.ej-appbar-item[data-current="false"] { color: var(--ej-stone); }
.ej-appbar-item[data-current="false"] svg { color: inherit; }
.ej-appbar-item[data-current="true"] { color: var(--ej-cream); }
.ej-appbar-item[data-current="true"] svg { color: var(--ej-orange-text); }
.ej-nav-link:active, .ej-appbar-item:active, .ej-language-switch:active { transform: scale(.96); }
@media (max-width: 540px) {
    .ej-floating-header { padding-inline: 14px; }
    .ej-nav-island { min-height: 62px; border-radius: 20px; padding: 8px 14px; }
    .ej-language-switch { font-size: 13px; padding-inline: 12px; gap: 7px; }
    .ej-mobile-appbar { inset-inline: max(12px, env(safe-area-inset-left)) max(12px, env(safe-area-inset-right)); padding: 5px; border-radius: 22px; }
    .ej-appbar-item { min-height: 55px; gap: 5px; font-size: 11px; }
    .ej-appbar-item svg { width: 21px; height: 21px; }
}
@media (max-width: 540px) {
    .ej-header-actions .ej-nav-cta { display: none; }
}
