/* New Horizon public experience. Logical properties keep the same composition in RTL. */
:root { --nh-ink:#1e2858; --nh-soft:#59627d; --nh-gold:#f5af22; --nh-line:#e3e6ee; --nh-ease:cubic-bezier(.22,.7,.2,1); --header-h:76px; }
.nh-icon { width:22px; height:22px; flex-shrink:0; }
[dir="rtl"] .nh-arrow { transform:scaleX(-1); }
.nh-header { background:#fff; border-bottom:1px solid #eceef3; color:var(--nh-ink); }
.nh-header::after { content:""; position:absolute; bottom:-1px; inset-inline:0; height:2px; background:var(--nh-gold); transform:scaleX(var(--page-progress,0)); transform-origin:left; }
[dir="rtl"] .nh-header::after { transform-origin:right; }
.nh-header-inner { display:flex; align-items:center; justify-content:space-between; gap:24px; min-height:76px; }
.nh-header.is-solid { box-shadow:0 4px 24px #1e28580a; }
.nh-logo { display:block; flex-shrink:0; }
.nh-logo img { width:156px; height:auto; }
.nh-desktop-nav, .nh-desktop-actions, .nh-header-actions { display:flex; align-items:center; gap:18px; }
.nh-desktop-nav>a, .nav-trigger { padding:12px 0; font-size:13px; font-weight:600; white-space:nowrap; }
.nav-trigger { display:flex; align-items:center; gap:6px; }
.nh-nav-panel { position:absolute; top:100%; background:white; border:1px solid var(--nh-line); border-radius:16px; box-shadow:0 12px 48px #1e28581a; min-width:225px; padding:8px; margin:0; z-index:80; visibility:hidden; opacity:0; }
/* Override the legacy transparent-header dropdown skin. */
.nh-header[data-site-header] .nh-nav-panel { background:#fff; border-color:var(--nh-line); box-shadow:0 12px 48px #1e28581a; }
/* Once enhanced, the JS state owns visibility, including Escape and click-to-close. */
.nh-header[data-nh-nav-ready] .nav-dropdown:not(.nav-open) .nh-nav-panel { visibility:hidden; opacity:0; pointer-events:none; }
.nh-header[data-nh-nav-ready] .nav-dropdown.nav-open .nh-nav-panel { visibility:visible; opacity:1; pointer-events:auto; }
.nh-nav-panel a { display:block; border-radius:9px; padding:10px 14px; font-size:14px; }
.nh-nav-panel a:hover { background:#f5f6fa; }
.nh-desktop-actions { gap:18px; }
.nh-language, .nh-login { font-size:13px; font-weight:600; padding-block:12px; }
.nh-language { padding-inline-end:18px; border-inline-end:1px solid var(--nh-line); }
.nh-header-apply { background:var(--nh-ink); color:white; font-size:12px; font-weight:700; padding:13px 18px; border-radius:9px; white-space:nowrap; transition:background .2s, transform .2s var(--nh-ease); }
.nh-header-apply:hover { background:#354174; transform:translateY(-1px); }
.nh-header-actions { gap:10px; }
.nh-menu-toggle { display:none; width:44px; height:44px; border-radius:10px; align-items:center; justify-content:center; }
.nh-contact { position:relative; }
.nh-contact>summary { display:grid; place-items:center; width:44px; height:44px; border:1px solid var(--nh-line); border-radius:50%; cursor:pointer; background:white; }
.nh-contact[open]>summary, .nh-contact>summary:hover { background:#f6f7fa; border-color:#aeb6dd; }
.nh-contact-panel { position:absolute; inset-inline-end:0; top:calc(100% + 18px); min-width:260px; padding:14px; background:white; border:1px solid var(--nh-line); box-shadow:0 18px 60px #1e285820; border-radius:16px; }
.nh-contact-panel p { font-size:13px; font-weight:700; padding:8px; }
.nh-contact-panel a { display:flex; justify-content:space-between; align-items:center; padding:12px 8px; font-size:14px; border-radius:8px; }
.nh-contact-panel a:hover { background:#f5f6fa; }
.nh-contact-panel span { font-size:12px; }
.nh-mobile-menu { border-top:1px solid var(--nh-line); max-height:calc(100dvh - 64px); overflow-y:auto; overscroll-behavior:contain; }
.nh-mobile-menu [data-nav-links] { display:block; }
.nh-nojs-nav { display:none; padding:12px 20px; }
.nh-header:has(.nh-nojs-nav) .nh-menu-toggle { display:none; }
.nh-home { background:white; color:var(--nh-ink); overflow:clip; }
.nh-hero { position:relative; isolation:isolate; padding-block:calc(var(--header-h) + 62px) 56px; background:linear-gradient(125deg,#fbf9f3 0%,#f9f8f5 48%,#edf1f8 100%); }
.nh-hero::after { content:""; position:absolute; inline-size:420px; block-size:420px; inset-inline-end:-80px; top:80px; border-radius:50%; background:#e6ebf7; filter:blur(90px); opacity:.8; z-index:-1; }
.nh-hero-grid { position:absolute; inset:0; background-image:linear-gradient(#1e285804 1px,transparent 1px),linear-gradient(90deg,#1e285804 1px,transparent 1px); background-size:70px 70px; mask-image:linear-gradient(90deg,transparent,black); z-index:-1; }
.nh-hero-layout { display:grid; grid-template-columns:minmax(0,1.02fr) minmax(0,1fr); gap:52px; align-items:center; }
.nh-eyebrow { display:flex; align-items:center; gap:10px; color:#8a5910; font-size:11px; letter-spacing:.12em; text-transform:uppercase; font-weight:700; line-height:1.5; }
.nh-eyebrow>span { inline-size:6px; block-size:6px; border-radius:50%; background:var(--nh-gold); box-shadow:0 0 0 5px #f5af2217; }
.nh-hero h1 { font-size:clamp(42px,4.5vw,66px); letter-spacing:-.055em; line-height:1.12; font-weight:700; margin-block:26px 24px; }
.nh-title-line { display:block; overflow:hidden; padding-block-end:.06em; }
.nh-title-line>span { display:block; }
.nh-title-accent { color:#946210; }
.nh-hero-lead { color:var(--nh-soft); font-size:16px; line-height:1.85; max-inline-size:460px; }
.nh-hero-actions { display:flex; gap:14px; align-items:center; flex-wrap:wrap; margin-block-start:32px; }
.nh-button { display:inline-flex; align-items:center; justify-content:center; gap:12px; min-height:52px; padding:14px 21px; font-size:13px; font-weight:700; border-radius:10px; transition:transform .25s var(--nh-ease),box-shadow .25s var(--nh-ease),background .25s; }
.nh-button .nh-icon { width:18px; height:18px; transition:translate .25s var(--nh-ease); }
.nh-button-primary { background:var(--nh-gold); color:#172045; box-shadow:0 4px 14px #f5af2226; }
.nh-button-primary:hover { background:#f8bd43; box-shadow:0 8px 24px #f5af2238; transform:translateY(-2px); }
.nh-button-quiet { padding-inline:0; color:var(--nh-ink); }
.nh-button-light { color:white; border:1px solid #ffffff3b; }
.nh-button:hover .nh-arrow, .nh-text-link:hover .nh-arrow { translate:calc(3px * var(--dir)) 0; }
.nh-hero-note { display:flex; align-items:flex-start; gap:7px; color:var(--nh-soft); font-size:11px; margin-block-start:23px; line-height:1.7; }
.nh-hero-note .nh-icon { inline-size:16px; block-size:16px; margin-block-start:1px; color:#6f805d; }
.nh-preview-scene { position:relative; scroll-margin-top:calc(var(--header-h) + 20px); }
.nh-preview { position:relative; background:#fff; border:1px solid #fff; border-radius:18px; padding:23px; line-height:1.45; box-shadow:0 24px 70px #1e28581a,0 4px 14px #1e285807; z-index:1; }
.nh-preview-heading { display:flex; align-items:center; gap:12px; }
.nh-preview-mark { display:grid; place-items:center; background:var(--nh-ink); color:var(--nh-gold); border-radius:10px; inline-size:40px; block-size:40px; }
.nh-preview-label { color:var(--nh-soft); font-size:9px; letter-spacing:.06em; }
.nh-preview-heading h2 { font-size:15px; font-weight:700; letter-spacing:-.02em; margin-block-start:3px; }
.nh-preview-dots { color:#a7aec2; margin-inline-start:auto; letter-spacing:2px; }
.nh-demo-disclaimer { background:#fcf6e9; color:#7c5312; font-size:9px; padding:7px 10px; border-radius:6px; margin-block:14px 16px; line-height:1.5; }
.nh-preview-tabs { display:flex; border-bottom:1px solid var(--nh-line); gap:22px; margin-block-end:16px; }
.nh-preview-tabs button { display:flex; align-items:center; gap:7px; padding:0 3px 10px; color:var(--nh-soft); font-size:12px; border-bottom:2px solid transparent; min-height:36px; }
.nh-preview-tabs button .nh-icon { width:17px; height:17px; }
.nh-preview-tabs button[aria-selected="true"] { color:var(--nh-ink); font-weight:700; border-bottom-color:var(--nh-gold); }
.nh-preview [role="tabpanel"] { min-block-size:354px; outline-offset:4px; }
.nh-demo-route { display:grid; grid-template-columns:1fr auto 1fr; gap:15px; align-items:center; border:1px solid var(--nh-line); border-radius:9px; padding:10px 13px; }
.nh-demo-route>div>span { display:block; font-size:9px; color:var(--nh-soft); }
.nh-demo-route strong { display:flex; align-items:center; gap:8px; font-size:13px; font-weight:700; }
.nh-demo-route b { font-size:10px; color:#878fa6; font-weight:500; }
.nh-demo-route>.nh-icon { color:#9199ae; width:18px; height:18px; }
.nh-demo-results { display:flex; justify-content:space-between; gap:8px; margin-block:13px 9px; font-size:9px; }
.nh-demo-results p { font-weight:700; }
.nh-demo-results span { color:var(--nh-soft); }
.nh-fare-row { display:flex; align-items:center; gap:10px; position:relative; border:1px solid var(--nh-line); border-radius:8px; padding:9px 11px; margin-block:7px; transition:background .2s; }
.nh-fare-row-selected { border-color:#cbd4eb; background:#f6f8fc; }
.nh-fare-row:hover { background:#f6f8fc; }
.nh-gds-icon { width:29px; height:29px; display:grid; place-items:center; border-radius:6px; background:#edf1f8; color:#344575; font-size:12px; font-weight:700; }
.nh-gds-icon-s { background:#fbeded; color:#a65555; }
.nh-gds-icon-g { background:#eef5f0; color:#457351; }
.nh-fare-row>div { display:grid; gap:2px; }
.nh-fare-row>div strong { font-size:11px; }
.nh-fare-row>div span { font-size:9px; color:var(--nh-soft); }
.nh-fare-price { margin-inline-start:auto; font-size:15px; padding-inline-end:20px; }
.nh-fare-price small { font-size:8px; color:var(--nh-soft); font-weight:500; }
.nh-selected-check { position:absolute; inset-inline-end:10px; color:#597658; }
.nh-selected-check .nh-icon { width:14px; height:14px; }
.nh-margin-demo { margin-block-start:14px; padding:12px 14px; border:1px solid #ece5d7; background:#fdfaf3; border-radius:10px; }
.nh-margin-demo label { display:flex; justify-content:space-between; font-size:10px; font-weight:700; }
.nh-currency { font-size:8px; color:#7b715f; }
.nh-margin-demo input[type="range"] { display:block; width:100%; height:22px; margin:4px 0; accent-color:#9b6710; cursor:ew-resize; }
.nh-margin-values { display:flex; align-items:center; justify-content:space-between; gap:8px; }
.nh-margin-values>div { display:grid; gap:1px; }
.nh-margin-values>div>span { color:#686d7a; font-size:9px; }
.nh-margin-values strong, .nh-margin-values output { font-weight:700; font-size:20px; line-height:1.2; }
.nh-margin-total { color:#916212; }
.nh-margin-values>span { font-size:14px; color:#9c9ca6; }
.nh-margin-demo>p { margin-block-start:8px; font-size:8px; color:#777262; line-height:1.5; }
.nh-preview-caption { display:flex; align-items:center; justify-content:center; gap:7px; font-size:11px; color:var(--nh-soft); margin-block-start:16px; position:relative; z-index:1; }
.nh-preview-caption .nh-icon { width:15px; height:15px; }
.nh-orbit { position:absolute; width:115%; aspect-ratio:1; border:1px solid #1e28580c; border-radius:50%; top:50%; left:50%; translate:-50% -50%; }
.nh-orbit::before { content:""; position:absolute; inset:28px; border:1px dashed #1e28580a; border-radius:50%; }
.nh-orbit span { position:absolute; width:7px; height:7px; background:var(--nh-gold); border-radius:50%; top:50%; left:-4px; box-shadow:0 0 0 7px #f5af2215; }
.nh-orbit span+span { top:13%; left:85%; width:5px; height:5px; background:#5d71a3; box-shadow:0 0 0 6px #5d71a30c; }
.nh-hotel-illustration { position:relative; height:175px; overflow:hidden; border-radius:10px; background:linear-gradient(#e7eef9,#f5ebd9); }
.nh-hotel-sun { position:absolute; top:25px; right:45px; width:48px; height:48px; border-radius:50%; background:#f5c461; }
.nh-hotel-building { position:absolute; bottom:0; left:55px; width:180px; height:140px; border-radius:35px 35px 0 0; background:#e3cfad; box-shadow:inset -18px 0 #d2bb94; display:grid; grid-template-columns:repeat(3,1fr); gap:13px; padding:27px; }
.nh-hotel-building i { border-radius:20px 20px 0 0; background:#728297; }
.nh-hotel-pool { position:absolute; width:160px; height:40px; border-radius:50%; background:#73acbd; bottom:-8px; right:0; border:8px solid #f5e8d0; }
.nh-hotel-destination { font-size:10px; color:var(--nh-soft); margin-block:18px 7px; }
.nh-hotel-heading { display:flex; justify-content:space-between; gap:8px; }
.nh-hotel-heading h3 { font-size:17px; font-weight:700; }
.nh-hotel-heading p { font-size:11px; color:var(--nh-soft); margin-block-start:4px; }
.nh-hotel-heading>strong { font-size:18px; }
.nh-hotel-heading small { display:block; color:var(--nh-soft); font-size:9px; font-weight:500; }
.nh-hotel-disclaimer { font-size:9px; color:#7c5312; margin-block:15px; }
.nh-nojs-preview { font-size:11px; padding-block-start:10px; }
html:has(.nh-nojs-preview) .nh-preview-tabs { display:none; }
.nh-carriers { padding-block:30px 38px; border-bottom:1px solid #eff0f4; background:white; }
.nh-carriers-label { font-size:10px; font-weight:600; color:var(--nh-soft); text-align:center; margin-block-end:23px; }
.nh-carriers .marquee-logo { height:28px; max-width:120px; opacity:.72; }
.nh-carriers .marquee-track { animation-duration:75s; animation-play-state:paused; }
.nh-carriers.nh-motion-running .marquee-track { animation-play-state:running; }
.nh-carriers:hover .marquee-track, .nh-carriers:focus-within .marquee-track { animation-play-state:paused; }
.nh-section { padding-block:78px; }
.nh-section-heading { display:flex; justify-content:space-between; align-items:flex-end; gap:36px; margin-block-end:32px; }
.nh-section h2, .nh-library h1 { font-size:clamp(28px,3.1vw,42px); font-weight:700; line-height:1.2; letter-spacing:-.045em; max-width:600px; }
.nh-section-heading .nh-eyebrow, .nh-proof .nh-eyebrow, .nh-faq-section .nh-eyebrow { margin-block-end:14px; }
.nh-section-heading>p { font-size:13px; line-height:1.8; color:var(--nh-soft); max-width:365px; }
.nh-bento { display:grid; grid-template-columns:1.65fr 1fr 1fr; gap:18px; }
.nh-feature { position:relative; padding:29px; border:1px solid var(--nh-line); border-radius:18px; overflow:hidden; background:#f7f8fb; min-width:0; }
.nh-feature-icon { display:grid; place-items:center; width:43px; height:43px; background:white; border:1px solid #e8eaf1; border-radius:11px; margin-block-end:22px; }
.nh-feature h3 { font-size:21px; font-weight:700; line-height:1.35; letter-spacing:-.02em; }
.nh-feature p { font-size:12px; line-height:1.8; color:var(--nh-soft); margin-block-start:12px; }
.nh-feature-reach { background:#1e2858; color:#fff; min-height:352px; }
.nh-feature-reach .nh-feature-icon { color:var(--nh-gold); background:#ffffff0d; border-color:#ffffff24; }
.nh-feature-reach p { color:#c8cde3; position:relative; z-index:1; max-width:310px; }
.nh-reach-metric { display:flex; align-items:center; gap:15px; position:relative; z-index:1; margin-block-start:40px; }
.nh-reach-metric strong { font-size:51px; font-weight:600; letter-spacing:-.045em; line-height:1; }
.nh-reach-metric strong span { color:var(--nh-gold); }
.nh-reach-metric>span { font-size:11px; max-width:130px; color:#c8cde3; line-height:1.6; }
.nh-world-routes { position:absolute; inset-inline:0; bottom:0; opacity:.65; }
.nh-world-grid { stroke:#ffffff13; stroke-width:1; }
.nh-route-line { stroke:#f5af22; stroke-width:1.4; stroke-dasharray:5 5; }
.nh-route-secondary { stroke:#9aa8d6; opacity:.4; }
.nh-hub { fill:#f5af22; stroke:#1e2858; stroke-width:2; }
.nh-route-plane { fill:white; offset-path:path("M65 126Q190-50 350 60T485 100"); offset-distance:40%; animation:nh-flight 9s linear infinite; animation-play-state:paused; }
.nh-motion-running .nh-route-plane { animation-play-state:running; }
.nh-feature-margin { background:#faf5e9; border-color:#ede6d8; }
.nh-feature-margin .nh-feature-icon { color:#976410; border-color:#ede6d8; }
.nh-margin-art { display:flex; align-items:flex-end; justify-content:center; gap:10px; height:94px; margin-block-start:24px; border-bottom:1px solid #d9d0ba; }
.nh-margin-art i { display:block; width:26px; border-radius:6px 6px 0 0; background:#e4c580; height:25%; transition:height .6s var(--nh-ease); }
.nh-margin-art i:nth-child(2) { height:43%; }.nh-margin-art i:nth-child(3) { height:63%; }.nh-margin-art i:nth-child(4) { height:82%; background:#ba8425; }
.nh-margin-art span { color:#9b722f; font-size:24px; align-self:center; margin-inline-start:8px; }
.nh-feature-margin:hover i:first-child { height:38%; }.nh-feature-margin:hover i:nth-child(2) { height:57%; }.nh-feature-margin:hover i:nth-child(3) { height:79%; }.nh-feature-margin:hover i:nth-child(4) { height:98%; }
.nh-operation-art { display:flex; gap:15px; margin-block:44px 20px; }
.nh-operation-art span { width:20px; height:20px; background:#e7ebf4; border:5px solid #fff; box-shadow:0 0 0 1px #cdd5e7; border-radius:50%; position:relative; transition:background .3s; }
.nh-operation-art span+span::before { content:""; position:absolute; width:15px; height:1px; background:#cdd5e7; inset-inline-end:calc(100% + 5px); top:50%; }
.nh-operation-art span:last-child { background:#f5af22; }
.nh-feature-operations:hover .nh-operation-art span { background:#7085b7; }
.nh-feature .nh-operations-note { font-size:9px; margin-block-start:0; }
.nh-services { background:#f7f8fb; }
.nh-service-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.nh-service-card { display:grid; grid-template-columns:130px 1fr; gap:24px; align-items:center; padding:26px; background:#fff; border:1px solid var(--nh-line); border-radius:16px; transition:transform .35s var(--nh-ease), box-shadow .35s var(--nh-ease), border-color .3s; }
.nh-service-card:hover { transform:translateY(-4px); box-shadow:0 15px 40px #1e28580d; border-color:#c4cde2; }
.nh-service-card h3 { font-size:25px; font-weight:700; }
.nh-service-card p { font-size:12px; line-height:1.8; color:var(--nh-soft); margin-block:9px 15px; }
.nh-text-link { display:inline-flex; gap:10px; align-items:center; font-size:12px; font-weight:700; color:#80560e; min-height:32px; }
.nh-text-link .nh-icon { width:17px; height:17px; transition:translate .25s var(--nh-ease); }
.nh-service-visual { display:grid; place-items:center; position:relative; height:144px; border-radius:12px; background:#edf1f8; overflow:hidden; }
.nh-service-visual>.nh-icon { width:43px; height:43px; color:#6679a9; z-index:1; transition:transform .6s var(--nh-ease); }
.nh-service-visual span { position:absolute; width:135px; height:135px; border:1px solid #ccd6ea; border-radius:50%; inset-inline-start:25px; top:55px; }
.nh-service-visual span::before, .nh-service-visual span::after { content:""; position:absolute; border:1px solid #ccd6ea; inset:15px; border-radius:50%; }
.nh-service-visual span::after { inset:30px; }
.nh-service-visual-hotels { background:#f8f0df; }
.nh-service-visual-hotels>.nh-icon { color:#a68343; }.nh-service-visual-hotels span, .nh-service-visual-hotels span::before, .nh-service-visual-hotels span::after { border-color:#e9daba; border-radius:30px; }
.nh-service-card:hover .nh-service-visual-flights>.nh-icon { transform:translate(8px,-8px); }
.nh-service-card:hover .nh-service-visual-hotels>.nh-icon { transform:translateY(-4px); }
.nh-steps { display:grid; grid-template-columns:repeat(3,1fr); gap:42px; counter-reset:step; }
.nh-steps li { position:relative; }
.nh-step-number { display:block; font-size:44px; line-height:1; color:#c7cddb; font-weight:500; letter-spacing:-.05em; padding-block-end:20px; border-bottom:1px solid var(--nh-line); transition:color .3s; }
.nh-steps li:hover .nh-step-number { color:#9b6b18; }
.nh-steps h3 { margin-block:20px 9px; font-size:17px; font-weight:700; line-height:1.4; }
.nh-steps p { font-size:12px; color:var(--nh-soft); line-height:1.9; }
.nh-proof { background:#f7f5ee; }
.nh-proof-layout { display:grid; grid-template-columns:1fr .9fr; gap:80px; align-items:center; }
.nh-proof-lead { color:var(--nh-soft); font-size:13px; line-height:1.9; margin-block:20px 26px; max-width:460px; }
.nh-proof-links { display:grid; gap:12px; }
.nh-proof-links a { display:flex; align-items:center; gap:16px; background:#fff; border:1px solid #e8e4d8; padding:24px; border-radius:12px; transition:transform .3s var(--nh-ease), border-color .3s; }
.nh-proof-links a>span { font-size:13px; font-weight:600; flex:1; }
.nh-proof-links a>.nh-icon:first-child { color:#9b722f; }
.nh-proof-links a:hover { transform:translateX(calc(4px * var(--dir))); border-color:#ceb684; }
.nh-testimonials { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.nh-testimonials blockquote { font-size:15px; line-height:1.8; }.nh-testimonials figcaption { margin-block-start:22px; font-size:12px; font-weight:700; }
.nh-faq-layout { display:grid; grid-template-columns:.75fr 1fr; gap:90px; align-items:start; }
.nh-faq-layout>div:first-child>p:not(.nh-eyebrow) { font-size:13px; color:var(--nh-soft); margin-block:18px; }
.nh-faq, .nh-faq-group h2 { scroll-margin-top:calc(var(--header-h) + 24px); }
#faq, #insight { scroll-margin-top:calc(var(--header-h) + 16px); }
.nh-faq { border-bottom:1px solid var(--nh-line); }
.nh-faq summary { display:flex; align-items:center; justify-content:space-between; gap:24px; padding-block:22px; cursor:pointer; font-size:14px; font-weight:600; line-height:1.65; }
.nh-faq:first-child summary { padding-block-start:8px; }
.nh-faq-plus { display:block; position:relative; flex-shrink:0; width:20px; height:20px; }
.nh-faq-plus::before, .nh-faq-plus::after { content:""; position:absolute; background:#97712c; width:12px; height:1px; top:50%; left:4px; transition:transform .25s var(--nh-ease); }
.nh-faq-plus::after { transform:rotate(90deg); }.nh-faq[open] .nh-faq-plus::after { transform:rotate(0deg); }
.nh-faq-answer { padding-block:0 22px; font-size:13px; line-height:1.9; color:var(--nh-soft); }
.nh-faq-answer .nh-text-link { margin-block-start:12px; }
@supports (interpolate-size:allow-keywords) { .nh-faq { interpolate-size:allow-keywords; } .nh-faq::details-content { height:0; overflow:clip; content-visibility:hidden; transition:height .3s var(--nh-ease),content-visibility .3s allow-discrete; } .nh-faq[open]::details-content { height:auto; content-visibility:visible; } }
.nh-insights { background:#f7f8fb; }
.nh-insight-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:23px; }
.nh-insight-card { background:white; border:1px solid var(--nh-line); border-radius:15px; overflow:hidden; transition:transform .3s var(--nh-ease), box-shadow .3s var(--nh-ease); }
.nh-insight-card:hover { transform:translateY(-4px); box-shadow:0 12px 30px #1e28580d; }
.nh-insight-card>a { display:flex; flex-direction:column; height:100%; }
.nh-insight-art { display:grid; place-items:center; position:relative; overflow:hidden; height:150px; background:#e8edf6; }
.nh-insight-art>.nh-icon { width:48px; height:48px; color:#7d8db4; position:relative; z-index:1; transition:transform .6s var(--nh-ease); }
.nh-insight-art span { position:absolute; width:180px; height:180px; border:1px solid #c9d3e7; border-radius:50%; }
.nh-insight-art span::after { content:""; position:absolute; inset:18px; border:1px dashed #c9d3e7; border-radius:50%; }
.nh-insight-art-2 { background:#f5eddb; }.nh-insight-art-2>.nh-icon { color:#b39560; }.nh-insight-art-2 span, .nh-insight-art-2 span::after { border-color:#e0d3b5; }
.nh-insight-art-3 { background:#eaf2ee; }.nh-insight-art-3>.nh-icon { color:#7b9a8b; }.nh-insight-art-3 span, .nh-insight-art-3 span::after { border-color:#cbded3; }
.nh-insight-card:hover .nh-insight-art>.nh-icon { transform:scale(1.09) rotate(-4deg); }
.nh-insight-copy { padding:24px; display:flex; flex-direction:column; flex:1; }
.nh-insight-copy time { color:var(--nh-soft); font-size:9px; letter-spacing:.05em; }
.nh-insight-copy h3 { font-size:18px; font-weight:700; line-height:1.45; margin-block:12px 8px; }
.nh-insight-copy p { font-size:12px; line-height:1.8; color:var(--nh-soft); flex:1; }
.nh-insight-copy .nh-text-link { margin-block-start:14px; }
.nh-final-cta { padding-block:56px 70px; }
.nh-cta-inner { position:relative; isolation:isolate; overflow:hidden; background:#1e2858; color:white; border-radius:22px; padding:62px; text-align:center; }
.nh-cta-inner .nh-eyebrow { color:#f7c668; justify-content:center; margin-block-end:18px; }
.nh-cta-inner h2 { margin-inline:auto; max-width:690px; }
.nh-cta-inner>p:not(.nh-eyebrow) { color:#c8cde3; font-size:13px; margin-block-start:18px; }
.nh-cta-inner .nh-hero-actions { justify-content:center; margin-block-start:28px; }
.nh-cta-orbit { position:absolute; z-index:-1; width:660px; height:660px; border:1px solid #ffffff0a; border-radius:50%; top:50%; left:50%; translate:-50% -50%; }
.nh-cta-orbit::before, .nh-cta-orbit::after { content:""; position:absolute; border:1px solid #ffffff0a; inset:35px; border-radius:50%; }.nh-cta-orbit::after { inset:70px; }
.nh-footer { background:#172044; color:#d6daea; padding-block:50px 26px; }
.nh-footer-top { display:grid; grid-template-columns:1fr 1fr; align-items:start; gap:80px; padding-block-end:32px; border-bottom:1px solid #ffffff15; }
.nh-footer-brand>div { display:flex; align-items:center; gap:12px; }.nh-footer-brand strong { color:white; font-size:19px; }
.nh-footer-brand>p { font-size:12px; line-height:1.8; max-width:365px; margin-block:14px; }
.nh-footer-systems { display:flex; gap:16px; flex-wrap:wrap; font-size:10px; color:#c5cce4; }
.nh-footer-contact { display:flex; flex-direction:column; align-items:flex-start; gap:10px; justify-self:end; min-width:245px; }
.nh-footer-contact h2 { font-size:12px; font-weight:700; color:white; margin-block-end:5px; }.nh-footer-contact a { font-size:12px; min-height:24px; }.nh-footer-contact span { display:inline-block; margin-inline-start:6px; }
.nh-footer-links { display:grid; grid-template-columns:repeat(4,1fr); gap:35px; padding-block:32px; }
.nh-footer-links button { font-size:12px; font-weight:700; color:white; width:100%; text-align:start; }.nh-footer-links button>span { display:none; }
.nh-footer-links ul { margin-block-start:12px; }.nh-footer-links li { margin-block:7px; }.nh-footer-links a { font-size:11px; display:inline-block; min-height:24px; }
.nh-footer a:hover { color:white; text-decoration:underline; text-underline-offset:4px; }
.nh-footer-bottom { display:flex; justify-content:space-between; flex-wrap:wrap; gap:12px; border-top:1px solid #ffffff15; padding-block-start:20px; font-size:10px; }
.nh-library { padding-block:calc(var(--header-h) + 58px) 80px; color:var(--nh-ink); }.nh-library h1 { margin-block:20px; }.nh-library-lead { max-width:680px; color:var(--nh-soft); font-size:15px; line-height:1.8; margin-block-end:42px; }
.nh-faq-group { margin-block:45px; max-width:800px; }.nh-faq-group h2 { font-size:23px; font-weight:700; margin-block-end:18px; }
.nh-reveal-pending { opacity:0; transform:translateY(18px); }
[data-nh-reveal] { transition:opacity .65s var(--nh-ease), transform .65s var(--nh-ease); }
.nh-revealed { opacity:1; }
.nh-bento>[data-nh-reveal]:nth-child(2), .nh-steps>[data-nh-reveal]:nth-child(2), .nh-insight-grid>[data-nh-reveal]:nth-child(2) { transition-delay:60ms; }
.nh-bento>[data-nh-reveal]:nth-child(3), .nh-steps>[data-nh-reveal]:nth-child(3), .nh-insight-grid>[data-nh-reveal]:nth-child(3) { transition-delay:120ms; }
[dir="rtl"] .nh-hero h1 { font-size:clamp(46px,4.6vw,72px); line-height:1.24; letter-spacing:0; }
[dir="rtl"] .nh-section h2, [dir="rtl"] .nh-library h1 { letter-spacing:0; line-height:1.4; }
[dir="rtl"] .nh-eyebrow { letter-spacing:0; font-size:13px; }
[dir="rtl"] .nh-hero-lead { font-size:18px; line-height:1.8; }
[dir="rtl"] .nh-feature p, [dir="rtl"] .nh-steps p, [dir="rtl"] .nh-service-card p, [dir="rtl"] .nh-insight-copy p { font-size:14px; }
[dir="rtl"] .nh-feature h3 { letter-spacing:0; }
[dir="rtl"] .nh-demo-disclaimer { font-size:11px; }
[dir="rtl"] .nh-faq summary { font-size:16px; }[dir="rtl"] .nh-faq-answer { font-size:15px; }
@media (prefers-reduced-motion:no-preference) {
    .nh-title-line>span { animation:nh-title-enter .8s var(--nh-ease) both; animation-delay:.08s; }
    .nh-title-line+ .nh-title-line>span { animation-delay:.2s; }
    .nh-hero-enter { animation:nh-enter .75s var(--nh-ease) both; }
    .nh-enter-1 { animation-delay:.04s; }.nh-enter-2 { animation-delay:.26s; }.nh-enter-3 { animation-delay:.34s; }.nh-enter-4 { animation-delay:.42s; }
    .nh-preview { animation:nh-preview-enter .9s var(--nh-ease) both; animation-delay:.2s; }
    .nh-preview-caption { animation:nh-enter .8s var(--nh-ease) both; animation-delay:.5s; }
    .nh-orbit { animation:nh-orbit 48s linear infinite; animation-play-state:paused; }.nh-motion-running>.nh-orbit { animation-play-state:running; }
    .nh-contact[open] .nh-contact-panel { animation:nh-enter .2s var(--nh-ease); }
}
@keyframes nh-title-enter { from {transform:translateY(105%);opacity:.4;} to {transform:translateY(0);opacity:1;} }
@keyframes nh-enter { from {transform:translateY(12px);opacity:0;} to {transform:translateY(0);opacity:1;} }
@keyframes nh-preview-enter { from {transform:translateY(18px) rotate(1deg);opacity:0;} to {transform:translateY(0) rotate(0);opacity:1;} }
@keyframes nh-orbit { to {rotate:360deg;} }
@keyframes nh-flight { 0% {offset-distance:0%;opacity:0;} 8% {opacity:1;} 92% {opacity:1;} 100% {offset-distance:100%;opacity:0;} }
@media (min-width:1100px) { .nh-desktop-nav .nav-dropdown:hover .nh-nav-panel, .nh-desktop-nav .nav-dropdown:focus-within .nh-nav-panel { visibility:visible; opacity:1; } body.nav-menu-open { overflow:visible; } }
@media (max-width:1099px) {
    .nh-desktop-nav, .nh-desktop-actions { display:none; }.nh-menu-toggle { display:flex; }.nh-nojs-nav { display:block; }
    .nh-header-inner { min-height:64px; }.nh-logo img { width:142px; }body.nav-menu-open { overflow:hidden; }
    .nh-hero { padding-block:calc(var(--header-h) + 42px) 42px; }.nh-hero-layout { gap:30px; }.nh-hero h1 { font-size:45px; }
    .nh-bento { grid-template-columns:1.3fr 1fr; }.nh-feature-reach { grid-row:span 2; }.nh-feature-operations, .nh-feature-margin { padding:23px; }.nh-feature h3 { font-size:19px; }.nh-margin-art { height:65px; margin-block-start:18px; }.nh-operation-art { margin-block-start:25px; }
    .nh-service-card { grid-template-columns:95px 1fr; padding:20px; gap:18px; }.nh-service-visual { height:135px; }.nh-faq-layout { gap:45px; }.nh-proof-layout { gap:45px; }
}
@media (max-width:767px) {
    .nh-hero-layout { grid-template-columns:1fr; gap:38px; }.nh-hero-copy { max-width:540px; }.nh-hero h1 { font-size:clamp(37px,7.4vw,54px); margin-block:20px; }.nh-hero-lead { font-size:15px; max-width:520px; }
    .nh-hero-actions { margin-block-start:24px; gap:14px; }.nh-hero-note { margin-block-start:16px; }.nh-preview-scene { max-width:540px; width:100%; margin-inline:auto; }
    .nh-section { padding-block:54px; }.nh-section-heading { display:block; margin-block-end:26px; }.nh-section-heading>p { max-width:520px; margin-block-start:16px; }.nh-section-heading>.nh-text-link { margin-block-start:16px; }
    .nh-bento { grid-template-columns:1fr 1fr; }.nh-feature-reach { grid-column:span 2; grid-row:auto; min-height:340px; }.nh-feature-reach p { max-width:430px; }.nh-world-routes { inset-inline-start:25%; }
    .nh-feature-margin, .nh-feature-operations { padding:23px; }.nh-feature h3 { font-size:20px; }
    .nh-service-grid { grid-template-columns:1fr; }.nh-service-card { grid-template-columns:120px 1fr; padding:23px; }
    .nh-steps { gap:25px; }.nh-step-number { font-size:38px; }.nh-steps h3 { font-size:15px; }
    .nh-proof-layout, .nh-faq-layout { grid-template-columns:1fr; gap:32px; }.nh-faq-layout h2 { max-width:440px; }.nh-proof-links a { padding:20px; }
    .nh-insight-grid { grid-template-columns:1fr; gap:16px; }.nh-insight-card>a { display:grid; grid-template-columns:130px 1fr; }.nh-insight-art { height:100%; min-height:160px; }.nh-insight-copy { padding:20px; }.nh-insight-copy h3 { font-size:17px; }.nh-insight-copy p { display:none; }.nh-insight-copy .nh-text-link { margin-block-start:8px; }
    .nh-cta-inner { padding:44px 26px; }.nh-final-cta { padding-block:40px 50px; }.nh-testimonials { grid-template-columns:1fr; }
    [dir="rtl"] .nh-hero h1 { font-size:clamp(44px,9vw,62px); }[dir="rtl"] .nh-hero-lead { font-size:17px; }
}
@media (max-width:639px) {
    .nh-header-inner { gap:12px; }.nh-header-actions { gap:5px; }.nh-contact-panel { min-width:245px; inset-inline-end:-48px; }.nh-logo img { width:136px; }
    .nh-hero { padding-block:calc(var(--header-h) + 32px) 32px; }.nh-eyebrow { font-size:10px; }.nh-hero-grid { opacity:.7; }
    .nh-button { min-height:48px; font-size:12px; padding:12px 16px; gap:9px; }.nh-button-quiet { padding-inline:0; }
    .nh-preview { padding:17px; border-radius:15px; }.nh-preview-heading h2 { font-size:13px; }.nh-demo-disclaimer { font-size:9px; }.nh-preview-heading { gap:9px; }.nh-preview-mark { width:35px; height:35px; }.nh-preview [role="tabpanel"] { min-block-size:350px; }.nh-demo-results { font-size:8px; }
    .nh-preview-caption { font-size:10px; }.nh-orbit { width:110%; }.nh-margin-demo { padding:11px; }.nh-margin-values>div>span { font-size:8px; }.nh-margin-demo>p { font-size:8px; }
    .nh-carriers { padding-block:24px 30px; }.nh-carriers .marquee-logo { height:24px; }.nh-carriers .marquee-set { gap:24px; }
    .nh-section h2 { font-size:29px; }.nh-bento { grid-template-columns:1fr; }.nh-feature-reach { grid-column:auto; min-height:330px; }.nh-feature-margin, .nh-feature-operations { min-height:270px; }.nh-world-routes { inset-inline-start:0; }.nh-feature { padding:25px; }.nh-feature-icon { margin-block-end:19px; }.nh-margin-art { height:76px; max-width:240px; }.nh-operation-art { margin-block:28px 18px; }
    .nh-service-card { grid-template-columns:83px 1fr; padding:18px; gap:18px; }.nh-service-visual { height:133px; }.nh-service-visual>.nh-icon { width:34px; height:34px; }.nh-service-card h3 { font-size:22px; }
    .nh-steps { grid-template-columns:1fr; gap:27px; }.nh-steps li { padding-inline-start:63px; min-height:100px; }.nh-step-number { position:absolute; inset-inline-start:0; top:0; padding:0; border:0; font-size:35px; }.nh-steps h3 { margin-block:0 8px; font-size:17px; }.nh-steps p { font-size:13px; }
    .nh-insight-card>a { grid-template-columns:95px 1fr; }.nh-insight-art>.nh-icon { width:35px; height:35px; }.nh-insight-copy { padding:18px; }
    .nh-footer { padding-block:34px 24px; }.nh-footer-top { grid-template-columns:1fr; gap:24px; padding-block-end:26px; }.nh-footer-contact { justify-self:start; min-width:0; }.nh-footer-brand strong { font-size:18px; }.nh-footer-links { grid-template-columns:1fr; gap:0; padding-block:15px; }.nh-footer-links section { border-bottom:1px solid #ffffff15; }.nh-footer-links section:last-child { border-bottom:none; }.nh-footer-links button { display:flex; align-items:center; justify-content:space-between; min-height:48px; }.nh-footer-links button>span { display:block; font-size:18px; color:#8e9ac0; }.nh-footer-links button[aria-expanded="true"]>span { rotate:45deg; }.nh-footer-links button:disabled>span { display:none; }.nh-footer-links ul { margin-block:0 14px; }.nh-footer-links a { min-height:30px; font-size:12px; }.nh-footer-bottom { font-size:9px; }
    .nh-library { padding-block:calc(var(--header-h) + 36px) 50px; }.nh-library h1 { font-size:30px; }
    [dir="rtl"] .nh-demo-disclaimer { font-size:10px; }[dir="rtl"] .nh-preview-heading h2 { font-size:15px; }
}
@media (prefers-reduced-motion:reduce) {
    .nh-reveal-pending { opacity:1; transform:none; }
    .nh-home *, .nh-header *, .nh-footer * { animation:none!important; transition:none!important; }
    .nh-route-plane { offset-distance:40%; opacity:1; }.nh-carriers .marquee { overflow:visible; mask-image:none; }.nh-carriers .marquee-track { width:100%; }.nh-carriers .marquee-set { width:100%; display:grid; grid-template-columns:repeat(auto-fit,minmax(100px,1fr)); gap:25px; padding-inline:16px; }.nh-carriers .marquee-set[aria-hidden="true"] { display:none; }.nh-carriers .marquee-item { padding:0; }
    .nh-button:hover, .nh-header-apply:hover, .nh-service-card:hover, .nh-insight-card:hover, .nh-proof-links a:hover { transform:none; }
}
@media print { .nh-header, .nh-footer, .nh-hero-actions, .nh-preview-tabs { display:none; }.nh-hero { padding-block:20px; }.nh-reveal-pending { opacity:1; transform:none; }.nh-home * { animation:none!important; } }
