/* Shared decorative journeys. Every animation waits for the motion-zone observer. */
.nh-travel-atmosphere { --travel-ink:#546e96; --travel-gold:#c39a54; position:absolute; inset:0; z-index:-1; overflow:hidden; pointer-events:none; user-select:none; }
.nh-travel-glow { position:absolute; inset:0; background:radial-gradient(ellipse at 78% 65%,#dbe8f580,transparent 57%),radial-gradient(ellipse at 89% 5%,#f4ddae40,transparent 48%); }
.nh-travel-horizon { position:absolute; width:120%; height:100%; inset-inline-start:13%; top:61%; border:1px solid #a7b7ce38; border-radius:50%; rotate:-13deg; box-shadow:0 -18px 0 0 #b4c5de0b,0 -46px 0 0 #b4c5de08; }
.nh-travel-cloud { position:absolute; width:310px; height:94px; border-radius:50%; background:radial-gradient(ellipse at 30% 56%,#fff9,transparent 67%),radial-gradient(ellipse at 69% 52%,#fff8,transparent 62%); }
.nh-travel-cloud-one { inset-inline-end:4%; top:14%; }
.nh-travel-cloud-two { inset-inline-end:34%; bottom:5%; width:230px; opacity:.7; }
.nh-travel-map { position:absolute; width:min(900px,100%); height:100%; inset-inline-end:-2%; top:0; overflow:visible; }
.nh-travel-routes { stroke:var(--travel-ink); stroke-width:1; opacity:.24; }
.nh-travel-routes path:nth-child(2) { stroke:var(--travel-gold); stroke-dasharray:3 8; opacity:.85; }
.nh-travel-routes path:nth-child(3) { opacity:.5; }
.nh-travel-airports { fill:var(--travel-gold); opacity:.5; }
.nh-travel-flight { transform-box:view-box; transform-origin:0 0; opacity:.66; }
.nh-travel-flight-one { transform:translate(390px,139px) rotate(-19deg); }
.nh-travel-flight-two { transform:translate(570px,221px) rotate(12deg); color:var(--travel-gold); }
.nh-travel-flight-three { transform:translate(270px,297px) rotate(-17deg); opacity:.38; }
.nh-travel-plane { fill:currentColor; color:var(--travel-ink); stroke:#fff9; stroke-width:.7; }
.nh-travel-flight-two .nh-travel-plane { color:var(--travel-gold); }
.nh-travel-plane-detail { stroke:#fff; stroke-width:1.4; stroke-linecap:round; opacity:.85; }
.nh-travel-wake { stroke:var(--travel-ink); stroke-width:1; stroke-linecap:round; opacity:.3; }
.nh-page-hero { isolation:isolate; }
/* Copy stays in its existing column; the extra scene occupies the outer edge. */
.nh-page-hero>.nh-travel-atmosphere { z-index:1; inset-inline-start:71%; opacity:.9; }
.nh-page-hero .nh-travel-map { width:650px; max-width:none; inset-inline-end:-110px; }
.nh-page-hero .nh-travel-glow { opacity:.55; }
.nh-page-hero .hero-backdrop { opacity:.5; }
.nh-page-hero .nh-travel-horizon { top:53%; width:180%; inset-inline-start:0; }
.nh-hero>.nh-travel-atmosphere { opacity:.56; mask-image:linear-gradient(180deg,#0009,transparent 82%); }
.nh-cta-inner>.nh-travel-atmosphere { --travel-ink:#b2c6dd; --travel-gold:#e6c58b; z-index:0; opacity:.32; mask-image:linear-gradient(90deg,#000,transparent 36%,transparent 64%,#000); }
.nh-cta-inner>.nh-travel-atmosphere .nh-travel-glow,.nh-cta-inner>.nh-travel-atmosphere .nh-travel-cloud { display:none; }
.nh-cta-inner>.nh-travel-atmosphere~:not(.nh-cta-orbit) { position:relative; z-index:1; }
[dir="rtl"] .nh-travel-map { scale:-1 1; }
[dir="rtl"] .nh-travel-horizon { rotate:13deg; }
/* Clear keyboard feedback and a little depth on existing travel actions. */
.nh-header :is(.nav-trigger,.nh-nav-card):focus-visible,.nh-page-shell :is(.nh-text-link,.nh-commercial-text-link,.nh-resource-result):focus-visible { outline:2px solid #a87c31; outline-offset:4px; }
.nh-faq>summary:focus-visible { outline:2px solid #a87c31; outline-offset:4px; border-radius:5px; }
@media (prefers-reduced-motion:no-preference) {
    .nh-travel-cloud { animation:nh-travel-cloud-drift 32s ease-in-out infinite alternate paused; }
    .nh-travel-cloud-two { animation-duration:43s; animation-delay:-14s; }
    .nh-motion-running .nh-travel-cloud { animation-play-state:running; }
    .nh-commercial-explorer .nh-commercial-route-soft,.nh-commercial-explorer .nh-commercial-orbit:not(.nh-commercial-orbit-inner) { animation:nh-travel-route-flow 20s linear infinite paused; }
    .nh-commercial-explorer .nh-commercial-scene::before { animation:nh-travel-scene-glow 11s ease-in-out infinite alternate paused; }
    .nh-commercial-explorer[data-commercial-animate] .nh-commercial-route-soft,.nh-commercial-explorer[data-commercial-animate] .nh-commercial-orbit:not(.nh-commercial-orbit-inner),.nh-commercial-explorer[data-commercial-animate] .nh-commercial-scene::before { animation-play-state:running; }
    .nh-faq[open]>.nh-faq-answer { animation:nh-travel-answer-enter .24s ease-out; }
}
@supports (offset-path:path("M0 0L1 1")) {
    .nh-travel-flight { transform:none; offset-position:0 0; offset-anchor:0 0; offset-rotate:auto; }
    .nh-travel-flight-one { offset-path:path("M48 280C180 282 290 66 746 72"); offset-distance:51%; }
    .nh-travel-flight-two { offset-path:path("M72 94C286 22 402 282 762 238"); offset-distance:73%; }
    .nh-travel-flight-three { offset-path:path("M132 330C354 336 525 138 780 162"); offset-distance:26%; }
    @media (prefers-reduced-motion:no-preference) {
        .nh-travel-flight { animation:nh-travel-flight 30s linear infinite paused; }
        .nh-travel-flight-one { animation-delay:-15s; }
        .nh-travel-flight-two { animation-duration:38s; animation-delay:-27s; }
        .nh-travel-flight-three { animation-duration:44s; animation-delay:-11s; }
        .nh-motion-running .nh-travel-flight { animation-play-state:running; }
    }
}
@keyframes nh-travel-flight { 0% { offset-distance:0%; opacity:0; } 8%,89% { opacity:.66; } 100% { offset-distance:100%; opacity:0; } }
@keyframes nh-travel-cloud-drift { from { transform:translateX(-12px); } to { transform:translateX(24px); } }
@keyframes nh-travel-route-flow { to { stroke-dashoffset:-143; } }
@keyframes nh-travel-scene-glow { from { opacity:.16; transform:scale(.95); } to { opacity:.29; transform:scale(1.05); } }
@keyframes nh-travel-answer-enter { from { opacity:.4; } to { opacity:1; } }
@media (max-width:1099px) {
    .nh-page-shell .nh-page-hero { padding-block-end:64px; }
    .nh-page-hero>.nh-travel-atmosphere { inset-inline:0; top:auto; height:90px; opacity:.68; }
    .nh-page-hero .nh-travel-map { width:800px; height:360px; inset-inline-end:-45px; top:-105px; }
    .nh-page-hero .nh-travel-horizon { top:60%; }
    .nh-page-hero .nh-travel-cloud-one { top:2%; }
}
@media (max-width:639px) {
    .nh-page-hero .nh-travel-map { width:650px; height:293px; inset-inline-end:-120px; top:-87px; }
    .nh-page-hero>.nh-travel-atmosphere { height:76px; }
    .nh-page-shell .nh-page-hero { padding-block-end:48px; }
    .nh-travel-cloud { width:220px; }
}
@media (prefers-reduced-motion:reduce) {
    .nh-travel-atmosphere * { animation:none!important; }
}
@media print { .nh-travel-atmosphere { display:none; }.nh-page-shell .nh-page-hero { padding-block-end:0; } }
