/* Shared header: CONTACT stays outside the collapsible navigation. */
#voidrouter-header {
    position: relative;
    z-index: 50;
    width: 100%;
    min-width: 0;
    align-items: center;
    gap: 24px;
    background: #fff;
}
#voidrouter-header .header-logo { min-width: 0; }
#voidrouter-header .header-logo img { max-width: 100%; object-fit: contain; }
#voidrouter-header .header-actions {
    display: flex;
    align-items: center;
    gap: 30px;
}
#voidrouter-header .header-list ul { align-items: center; }
#voidrouter-header .header-list a { white-space: nowrap; }
#voidrouter-header .header-contact {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    padding: 10px 20px;
    border-radius: 999px;
    background: #bc1b21;
    color: #fff;
    font: 600 16px/1.5 'Dosis', sans-serif;
    text-decoration: none;
    transition: background .2s;
}
#voidrouter-header .header-contact:hover { background: #94252b; }
#voidrouter-header .header-menu-toggle { display: none; }
#voidrouter-header a:focus-visible,
#voidrouter-header button:focus-visible { outline: 2px solid #bc1b21; outline-offset: 4px; }
@media (max-width: 900px) {
    #voidrouter-header { padding: 14px 20px; gap: 12px; }
    #voidrouter-header .header-logo { flex: 0 1 auto; }
    #voidrouter-header .header-logo img { height: 56px; width: auto; max-width: 100%; }
    #voidrouter-header .header-actions { gap: 12px; flex-shrink: 0; }
    #voidrouter-header .header-contact { padding: 10px 16px; font-size: 14px; }
    #voidrouter-header .header-menu-toggle:not([hidden]) {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 5px;
        box-sizing: border-box;
        width: 42px;
        height: 42px;
        border: 1px solid #e6e8ec;
        border-radius: 10px;
        background: #fff;
        cursor: pointer;
        padding: 0;
        flex-shrink: 0;
    }
    #voidrouter-header .header-menu-toggle span {
        display: block;
        width: 18px;
        height: 2px;
        background: #11151b;
        transition: transform .2s, opacity .2s;
    }
    #voidrouter-header.menu-open .header-menu-toggle span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
    #voidrouter-header.menu-open .header-menu-toggle span:nth-child(2) { opacity: 0; }
    #voidrouter-header.menu-open .header-menu-toggle span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
    #voidrouter-header .header-list {
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        background: #fff;
        border-bottom: 1px solid #e6e8ec;
        box-shadow: 0 16px 30px -16px rgba(0,0,0,.18);
        max-height: 70vh;
        max-height: 70dvh;
        overflow-y: auto;
    }
    #voidrouter-header.menu-ready .header-list { display: none; }
    #voidrouter-header.menu-ready.menu-open .header-list { display: block; }
    #voidrouter-header .header-list ul { flex-direction: column; align-items: stretch; gap: 0; padding: 6px 0; }
    #voidrouter-header .header-list li { display: block; width: 100%; }
    #voidrouter-header .header-list li a { display: block; padding: 14px 20px; }
    #voidrouter-header .header-list a::before,
    #voidrouter-header .header-list a::after { display: none; }
    /* Keep links usable when JavaScript is unavailable. */
    #voidrouter-header:not(.menu-ready) { flex-wrap: wrap; }
    #voidrouter-header:not(.menu-ready) .header-actions { flex-wrap: wrap; width: 100%; }
    #voidrouter-header:not(.menu-ready) .header-list { position: static; width: 100%; box-shadow: none; }
}
@media (prefers-reduced-motion: reduce) {
    #voidrouter-header .header-menu-toggle span,
    #voidrouter-header .header-contact { transition: none; }
}
