/* Sticky top bar — warm GIS accent (orbit + scan), not isolines */

header.site-header {
    isolation: isolate;
    border-bottom-color: transparent;
}

/* Dashed orbit arc + moving satellite dot */
header.site-header::before {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 0;
    background-image:
        radial-gradient(circle, rgba(248, 210, 140, 0.95) 0%, rgba(232, 176, 96, 0.45) 35%, transparent 70%),
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 80' preserveAspectRatio='none'%3E%3Cpath d='M-40 58 Q600 4 1240 50' fill='none' stroke='rgba(232,176,96,0.22)' stroke-width='1.2' stroke-dasharray='5 14'/%3E%3Ccircle cx='600' cy='4' r='2' fill='rgba(232,176,96,0.12)'/%3E%3C/svg%3E");
    background-size: 11px 11px, 100% 72%;
    background-repeat: no-repeat;
    background-position: 12% 74%, 50% 0;
    animation: header-orbit 18s ease-in-out infinite;
}

/* Cartographic scale ticks + warm baseline */
header.site-header::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 3px;
    pointer-events: none;
    z-index: 0;
    background:
        linear-gradient(90deg, transparent 0%, rgba(232, 176, 96, 0.55) 50%, transparent 100%),
        repeating-linear-gradient(
            90deg,
            rgba(232, 176, 96, 0.28) 0,
            rgba(232, 176, 96, 0.28) 1px,
            transparent 1px,
            transparent 14px
        );
    mask-image: linear-gradient(90deg, transparent 2%, #000 12%, #000 88%, transparent 98%);
    opacity: 0.85;
}

@keyframes header-orbit {
    0% {
        background-position: 4% 76%, 50% 0;
        opacity: 0.35;
    }
    12% {
        opacity: 0.9;
    }
    50% {
        background-position: 50% 20%, 50% 0;
        opacity: 1;
    }
    88% {
        opacity: 0.9;
    }
    100% {
        background-position: 96% 58%, 50% 0;
        opacity: 0.35;
    }
}

@media (prefers-reduced-motion: reduce) {
    header.site-header::before {
        animation: none;
        background-position: 50% 38%, 50% 0;
        opacity: 0.65;
    }
}

/* Mobile: plain header, no orbit / scale strip */
@media (max-width: 768px) {
    header.site-header {
        isolation: auto;
        border-bottom-color: rgba(255, 255, 255, 0.08);
    }

    header.site-header::before,
    header.site-header::after {
        content: none;
        display: none;
    }
}
