:root{color-scheme:dark;--ink:#edf4fb;--muted:#a9bacb;--soft:#8195aa;--paper:#0c1420;--card:#141f2c;--card-raised:#1c2a39;--surface-input:#101a27;--line:#304153;--line-soft:#243445;--accent:#83d5f4;--accent-dark:#b4e8fa;--accent-button:#19b4a5;--accent-button-hover:#2bc6b8;--accent-button-active:#149c91;--accent-button-text:#062c2b;--accent-pale:#17384a;--counter-hover:#28536b;--focus-ring:rgba(131,213,244,.42);--headline-accent:#46d6c6;--gold:#e2b875;--gold-pale:#3a3021;--documented-ink:#e6c58f;--note-bg:#2b2419;--note-border:#5a482e;--note-ink:#d0b98d;--note-strong:#f0d29d;--shadow:0 20px 55px rgba(0,0,0,.24);font-family:'DM Sans',sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
html[data-theme="light"]{color-scheme:light;--ink:#10273b;--muted:#526678;--soft:#586d7f;--paper:#f8fafc;--card:#fff;--card-raised:#eef4f7;--surface-input:#f8fafc;--line:#c6d3dc;--line-soft:#dce5eb;--accent:#08776e;--accent-dark:#075950;--accent-button:#087d75;--accent-button-hover:#06675f;--accent-button-active:#05564f;--accent-button-text:#fff;--accent-pale:#e2f4f1;--counter-hover:#d4ece8;--focus-ring:rgba(8,125,117,.35);--headline-accent:#087d75;--gold:#865916;--gold-pale:#fff0d7;--documented-ink:#604514;--note-bg:#fff8e7;--note-border:#dfc995;--note-ink:#65502d;--note-strong:#4a3a1e;--shadow:0 20px 55px rgba(16,39,59,.07)}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);min-width:320px}
button,input,select{font:inherit}
button,select,a{-webkit-tap-highlight-color:transparent}
a{color:inherit}
.skip-link{position:absolute;top:-5rem;left:1rem;z-index:10;padding:.75rem 1rem;background:var(--ink);color:#fff;border-radius:.6rem}
.skip-link:focus{top:1rem}
.site-header{height:76px;padding:0 max(5vw,24px);display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);background:var(--paper)}
.brand{display:flex;align-items:center;min-width:0;min-height:44px;text-decoration:none;direction:ltr;flex-shrink:1}
.brand-logo{display:block;width:clamp(174px,20vw,245px);height:auto;max-width:100%;object-fit:contain}
.brand-logo-light{display:none}
html[data-theme="light"] .brand-logo-dark{display:none}
html[data-theme="light"] .brand-logo-light{display:block}
.theme-toggle{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border:1px solid var(--line);border-radius:9px;background:var(--card-raised);color:var(--accent);cursor:pointer}
.theme-toggle:hover{background:var(--accent-pale)}
.brand:focus-visible,.theme-toggle:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.header-note{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted)}
.header-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}
.language-toggle{min-height:44px;padding:0 12px;border:1px solid var(--line);border-radius:9px;background:var(--card-raised);color:var(--accent);font-size:12px;font-weight:700;cursor:pointer}
.language-toggle:hover{background:var(--accent-pale)}
.status-dot{width:7px;height:7px;border-radius:50%;background:#63bde8}
.prototype-label{padding:4px 8px;border:1px solid var(--line);border-radius:99px;background:var(--card-raised);color:var(--muted);font-size:10px;font-weight:700;letter-spacing:.4px;text-transform:uppercase}
main{width:min(1280px,calc(100% - 48px));margin:0 auto}
.intro{padding:54px 0 30px}
.eyebrow{margin:0 0 11px;color:var(--accent);font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{font-family:Manrope,sans-serif;letter-spacing:-1.25px}
h1{margin:0;font-size:clamp(36px,5vw,54px);line-height:1.08;font-weight:700}
h1 span{color:var(--headline-accent)}
.intro-copy{max-width:590px;margin:15px 0 0;color:var(--muted);font-size:15px;line-height:1.65}
.search-panel{padding:24px;background:var(--card);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow)}
.route-fields{display:grid;grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr) auto;align-items:end;gap:10px}
.field,.document-field{display:grid;gap:8px;min-width:0}
.field-label,.document-field>span,.travellers legend,.sort-control label{font-size:11px;font-weight:700;color:var(--muted)}
.input-wrap{display:flex;align-items:center;gap:10px;height:54px;padding:0 14px;border:1px solid var(--line);border-radius:11px;background:var(--surface-input);color:var(--accent)}
.input-wrap>span{font-size:18px}
.input-wrap input{width:100%;border:0;outline:0;background:transparent;color:var(--ink);font:600 16px Manrope,sans-serif}
.location-picker{position:relative}
.location-picker input{min-width:0}
.location-toggle{flex:none;min-width:44px;min-height:44px;border:0;background:transparent;color:var(--accent);font-size:20px;cursor:pointer}
.location-options{position:absolute;inset-inline:0;top:100%;margin-top:6px;z-index:20;max-height:min(320px,45vh);overflow-y:auto;border:1px solid var(--line);border-radius:11px;background:var(--surface-input);padding:6px;box-shadow:0 8px 24px var(--line)}
.location-option{display:flex;align-items:center;width:100%;min-height:44px;padding:8px 10px;border:0;border-radius:6px;background:transparent;color:var(--ink);font:inherit;text-align:start;cursor:pointer}
.location-option:hover,.location-option[aria-selected="true"]{background:var(--accent-pale);outline:1px solid var(--accent)}
.location-empty{padding:8px;color:var(--muted);margin:0}
.input-wrap:focus-within,.document-field select:focus,.sort-control select:focus,.flight-fields input:focus,.flight-fields select:focus{outline:3px solid var(--focus-ring);outline-offset:1px;border-color:var(--accent)}
.swap-button{height:44px;width:44px;margin-bottom:5px;border:1px solid var(--line);border-radius:50%;background:var(--card-raised);color:var(--accent);font-size:19px;cursor:pointer}
.swap-button:hover{background:var(--accent-pale)}
.search-button{height:54px;padding:0 19px;border:0;border-radius:11px;background:var(--accent-button);color:var(--accent-button-text);font-size:13px;font-weight:700;white-space:nowrap;cursor:pointer;transition:background .2s,transform .2s}
.search-button:hover{background:var(--accent-button-hover);transform:translateY(-1px)}
.search-button:active,.compare-bar button:active{background:var(--accent-button-active)}
.search-button:focus-visible,.compare-bar button:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}
.search-button span{padding-right:5px;font-size:19px;vertical-align:-2px}
.preference-row{margin-top:21px;padding-top:18px;border-top:1px solid var(--line-soft)}
.travellers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 12px;margin:0;padding:0;border:0;min-width:0}
.travellers legend{grid-column:1/-1;margin-bottom:2px}
.counter{min-height:52px;display:flex;align-items:center;justify-content:space-between;gap:7px;padding:3px 7px 3px 10px;border:1px solid var(--line);border-radius:9px;background:var(--surface-input)}
.counter>span:first-child{margin-right:2px;color:var(--muted);font-size:11px;white-space:nowrap}
.counter-controls{display:flex;align-items:center;gap:4px;direction:ltr}
.counter button{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border:0;border-radius:7px;background:var(--accent-pale);color:var(--accent);font-size:18px;cursor:pointer}
.counter button:hover{background:var(--counter-hover)}
.counter output{min-width:12px;text-align:center;font-size:12px;font-weight:700}
.document-field select,.sort-control select{height:44px;padding:0 30px 0 11px;border:1px solid var(--line);border-radius:9px;background-color:var(--surface-input);color:var(--ink);font-size:11px;outline:0}
.document-field[hidden]{display:none}
.sample-note{display:flex;align-items:flex-start;gap:9px;margin-top:16px;padding:11px 13px;border:1px solid var(--note-border);border-radius:10px;background:var(--note-bg);color:var(--note-ink)}
.sample-note>span{font-size:14px}
.sample-note p{margin:0;font-size:11px;line-height:1.55}
.sample-note strong{color:var(--note-strong)}
.prototype-message{margin:12px 0 0;padding:10px 12px;border-radius:9px;background:var(--accent-pale);color:var(--accent);font-size:11px;line-height:1.5}
.prototype-message[hidden]{display:none}
.route-demo-notice{margin:13px 0 0;padding:11px 13px;border:1px solid var(--line);border-radius:10px;background:var(--accent-pale);color:var(--accent);font-size:11px;line-height:1.55}
.route-demo-notice[hidden]{display:none}
.route-mode{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}
.route-mode button{min-height:44px;padding:0 14px;border:1px solid var(--line);border-radius:9px;background:var(--surface-input);color:var(--muted);font-size:11px;font-weight:700;cursor:pointer}
.route-mode button[aria-pressed="true"]{border-color:#3d718c;background:var(--accent-pale);color:var(--accent)}
.empty-results{margin-top:12px;padding:20px;border:1px dashed var(--line);border-radius:12px;background:var(--card);color:var(--muted);font-size:12px;line-height:1.6}
.empty-results[hidden]{display:none}
.verified-status{background:var(--accent-pale);color:var(--accent)}
.documented-status{background:var(--gold-pale);color:var(--documented-ink)}
.verification-meta{display:grid;gap:4px;margin-top:9px;color:var(--soft);font-size:10px}
.verification-meta a{color:var(--accent);text-underline-offset:2px}
.verification-sources{display:grid;gap:4px;margin:3px 0 0;padding-inline-start:18px}
.results{padding:44px 0 54px}
.results-heading{display:flex;align-items:end;justify-content:space-between;gap:20px}
.results-heading h2{margin:0;font-size:30px;line-height:1.2}
.results-heading h2 span{color:var(--soft);font-size:23px}
.results-heading>div>p:last-child{margin:8px 0 0;color:var(--muted);font-size:12px}
.sort-control{display:grid;gap:7px;min-width:180px}
.sort-control select{height:44px;font-size:12px}
.results-toolbar{display:flex;justify-content:space-between;align-items:center;margin:26px 0 12px;padding-bottom:10px;border-bottom:1px solid var(--line);color:var(--muted);font-size:11px}
.results-toolbar strong{color:var(--ink)}
.sort-explanation{color:var(--soft)}
.journey-list{display:grid;gap:13px}
.journey-card{padding:18px 20px 16px;border:1px solid var(--line);border-radius:15px;background:var(--card);box-shadow:0 4px 18px rgba(0,0,0,.12);transition:box-shadow .2s,border-color .2s,transform .2s}
.journey-card:hover{transform:translateY(-1px);box-shadow:0 12px 28px rgba(0,0,0,.24)}
.journey-travel-tip{margin:9px 0;padding:10px 12px;border-inline-start:3px solid var(--accent);background:var(--accent-pale);border-radius:7px;color:var(--text);font-size:12px;line-height:1.6}
.journey-card.recommended{border-color:#3d718c}
.journey-card.needs-check{border-color:#665337}
.card-topline{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:13px}
.card-badges{display:flex;align-items:center;flex-wrap:wrap;gap:7px}
.route-badge,.journey-kind{display:inline-flex;align-items:center;min-height:23px;padding:4px 9px;border-radius:99px;font-size:9px;font-weight:700;letter-spacing:.25px}
.route-badge{background:var(--gold-pale);color:#e6c58f;text-transform:uppercase}
.journey-kind{background:var(--accent-pale);color:var(--accent)}
.journey-kind.mixed{background:#253447;color:#a8c9eb}
.compare-choice{display:flex;align-items:center;gap:8px;min-height:44px;color:var(--muted);font-size:10px;font-weight:600;white-space:nowrap;cursor:pointer}
.compare-input{width:15px;height:15px;margin:0;accent-color:var(--accent)}
.journey-main{display:flex;align-items:center;justify-content:space-between;gap:18px}
.journey-title{margin:0;font-size:18px;line-height:1.3}
.airline-identity{display:inline-flex;align-items:center;gap:9px;min-width:0;color:var(--ink);font-size:13px;font-weight:750}
.airline-name{min-width:0;overflow-wrap:anywhere}
.airline-logo{display:grid;place-items:center;flex:0 0 48px;width:48px;height:38px;padding:4px;border:1px solid var(--line-soft);border-radius:8px;background:#fff}
.airline-logo-image{display:block;max-width:100%;max-height:100%;object-fit:contain}
.airline-logo-fallback{display:grid;place-items:center;width:100%;height:100%;border-radius:5px;background:var(--accent-pale);color:var(--accent);font-size:10px;font-weight:800;letter-spacing:.3px}
.airline-logo-fallback[hidden]{display:none}
.journey-title{margin:8px 0 0;font-size:17px;line-height:1.4}
.journey-kiwi-action{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 12px;margin-top:12px;padding-top:10px;border-top:1px solid var(--line-soft)}
.availability-note{grid-column:1/-1;margin:0;color:var(--muted);font-size:10px;line-height:1.5}
.journey-kiwi-button{justify-self:start;min-height:44px;border:0;background:var(--accent-button);color:var(--accent-button-text);cursor:pointer}
.kiwi-passenger-note{margin:0;color:var(--soft);font-size:9px;line-height:1.4;text-align:end}
.compact-operator{margin:5px 0 0;color:var(--ink);font-size:12px;font-weight:700}
.compact-limitation{margin:5px 0;color:var(--muted);font-size:10px;line-height:1.45}
.verified-card .journey-details h4{margin-top:14px}
.route-timeline{position:relative;display:grid;align-items:start;gap:0;margin:16px 0 0;padding:0;list-style:none}
.timeline-stop{display:grid;justify-items:center;align-content:start;gap:7px;min-width:0;padding:0 4px;text-align:center}
.stop-marker{z-index:1;display:grid;place-items:center;width:23px;height:23px;border:1px solid #426b83;border-radius:50%;background:var(--card-raised);color:var(--accent);font-size:11px;font-weight:800}
.stop-arrival .stop-marker,.stop-final .stop-marker{border-color:#3d718c;background:var(--accent-pale)}
.stop-border .stop-marker,.stop-connectionUnknown .stop-marker{border-color:#665337;background:var(--gold-pale);color:#e6c58f}
.stop-content{display:grid;justify-items:center;gap:2px;min-width:0}
.stop-role{color:var(--soft);font-size:9px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}
.stop-name{overflow-wrap:anywhere;font:700 12px Manrope,sans-serif;line-height:1.35}
.stop-description{color:var(--muted);font-size:10px;line-height:1.4;overflow-wrap:anywhere}
.stop-code{font-size:9px;font-weight:700}
.timeline-segment{position:relative;display:grid;justify-items:center;align-content:start;gap:6px;min-width:0;padding:0 4px;color:var(--muted);text-align:center}
.timeline-segment::before{position:absolute;top:11px;right:0;left:0;border-top:1px solid var(--line);content:""}
.timeline-segment.leg-possible::before,.timeline-segment.leg-excluded::before{border-top-style:dashed;border-color:#9d8050}
.leg-icon{z-index:1;display:grid;place-items:center;width:23px;height:21px;border:1px solid #426b83;border-radius:7px;background:var(--card);color:var(--accent);font-size:12px}
.leg-ground .leg-icon{border-color:#53647a;background:#202c38;color:#b3c9e3}
.leg-excluded .leg-icon{border-style:dashed;border-color:#665337;background:var(--gold-pale);color:#e6c58f}
.leg-copy{display:grid;gap:3px;min-width:0;max-width:100%}
.leg-copy strong{font-size:10px;line-height:1.35;overflow-wrap:anywhere}
.leg-copy small{color:var(--muted);font-size:9px;line-height:1.45}
.journey-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0 0;padding-top:11px;border-top:1px solid var(--line-soft)}
.journey-stat{display:grid;align-content:start;gap:4px;min-width:0}
.journey-stat dt{color:var(--soft);font-size:8px;font-weight:700;letter-spacing:.3px;text-transform:uppercase}
.journey-stat dd{margin:0;font-size:10px;font-weight:650;line-height:1.4;overflow-wrap:anywhere}
.journey-stat.stat-duration dd{color:var(--gold)}
.service-evidence{margin:12px 0 0;padding:12px 14px;border:1px solid var(--line);border-radius:9px;color:var(--muted);line-height:1.55}
.service-evidence strong{color:var(--ink)}
.details-toggle{display:flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:9px 10px;border:1px solid var(--line);border-radius:8px;background:var(--card-raised);color:var(--ink);font-size:10px;font-weight:700;white-space:nowrap;cursor:pointer}
.details-toggle:hover,.details-toggle[aria-expanded=true]{border-color:#3d718c;background:var(--accent-pale);color:var(--accent)}
.details-toggle span{font-size:15px;transition:transform .2s}
.details-toggle[aria-expanded=true] span{transform:rotate(180deg)}
.route-summary{display:flex;align-items:flex-start;gap:10px;margin-top:9px;padding-top:8px;border-top:1px solid var(--line-soft)}
.summary-icon{display:grid;place-items:center;flex:0 0 24px;height:24px;border-radius:8px;background:var(--accent-pale);color:var(--accent);font-size:13px}
.warning-icon{background:var(--gold-pale);color:#e6c58f;font-weight:800}
.route-summary p{margin:0;color:var(--muted);font-size:11px;line-height:1.55}
.route-summary strong{color:var(--ink);font-size:12px}
.route-summary a{display:inline-block;margin-inline-start:5px;color:var(--accent);font-weight:700;text-underline-offset:2px}
.route-summary a:hover{color:var(--accent-dark)}
.eligibility{color:#e6c58f;font-weight:700}
.journey-details{margin:14px 0 1px;padding:14px 0 0;border-top:1px dashed var(--line)}
.journey-details[hidden]{display:none}
.journey-detail-section{margin-top:8px;border:1px solid var(--line);border-radius:9px;background:var(--card-raised)}
.journey-detail-section summary{display:flex;align-items:center;min-height:44px;padding:10px 12px;color:var(--ink);font-size:11px;font-weight:700;cursor:pointer}
.journey-detail-content{padding:0 12px 12px;color:var(--muted);font-size:11px;line-height:1.55}
.journey-detail-content p{margin:7px 0}
.journey-detail-content .journey-stats{margin-top:8px}
.journey-detail-content .journey-stats h4{margin:0 0 8px;color:var(--ink);font:700 11px Manrope,sans-serif}
.arrival-airport-note{font-weight:700;color:var(--ink)}
.journey-details .verification-sources{display:grid;gap:7px;margin:8px 0;padding-inline-start:18px}
.journey-details .verification-sources li{padding-inline-start:2px}
.leg-details{display:grid;gap:7px;margin:0;padding:0;list-style:none}
.leg-detail{display:grid;grid-template-columns:23px minmax(0,1fr);align-items:start;gap:9px;color:var(--muted);font-size:10px;line-height:1.5}
.leg-detail .leg-icon{margin-top:1px}
.leg-detail-copy{min-width:0}
.details-footnote{margin:9px 0 0;color:var(--soft);font-size:9px;line-height:1.5}
.compare-bar{position:sticky;bottom:14px;display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:17px;padding:11px 13px 11px 16px;border:1px solid #3d718c;border-radius:12px;background:#172f40;color:var(--ink);box-shadow:0 14px 30px rgba(0,0,0,.35);font-size:11px}
.compare-bar[hidden],.compare-panel[hidden]{display:none}
.compare-bar button{min-height:44px;padding:9px 13px;border:0;border-radius:8px;background:var(--accent-button);color:var(--accent-button-text);font-size:10px;font-weight:700;cursor:pointer}
.compare-bar button:hover:not(:disabled){background:var(--accent-button-hover)}
.compare-bar button:disabled{opacity:.55;cursor:not-allowed}
.compare-panel{margin-top:15px;padding:20px;border:1px solid var(--line);border-radius:14px;background:var(--card)}
.compare-panel-heading{display:flex;align-items:center;justify-content:space-between}
.compare-panel-heading h3{margin:0;font-size:20px}
.text-button{min-height:44px;padding:0 8px;border:0;background:transparent;color:var(--accent);font-size:11px;font-weight:700;cursor:pointer}
.comparison-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px}
.comparison-item{padding:13px;border:1px solid var(--line);border-radius:10px;background:var(--card-raised)}
.comparison-item h4{margin:0 0 10px;font:700 12px Manrope,sans-serif}
.comparison-item dl{display:grid;grid-template-columns:1fr auto;gap:7px;margin:0;font-size:10px}
.comparison-item dt{color:var(--muted)}.comparison-item dd{margin:0;font-weight:700}
.source-note{display:flex;gap:8px;margin:23px 0 0;color:var(--muted);font-size:10px;line-height:1.55}
.source-note span{color:var(--accent)}
.site-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px max(5vw,24px);border-top:1px solid var(--line);color:var(--muted);font-size:10px}
.site-footer>span:first-child{color:var(--ink);font-weight:700}
.footer-links{display:flex;align-items:center;gap:16px}
.site-footer a{color:var(--accent);font-weight:700;text-decoration:none}
.site-footer a:hover{text-decoration:underline}
button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}
@media(max-width:800px){
  .header-note{display:none}
  main{width:min(100% - 32px,680px)}
  .intro{padding-top:40px}
  .route-fields{grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr)}
  .search-button{grid-column:1/-1;width:100%}
  .travellers{grid-template-columns:repeat(3,minmax(0,1fr))}
  .journey-main{align-items:flex-start;gap:10px}
  .journey-title{font-size:16px}
  .details-toggle{flex:0 0 auto}
  .route-timeline{grid-template-columns:minmax(0,1fr)!important;gap:0}
  .timeline-stop{grid-template-columns:24px minmax(0,1fr);justify-items:start;gap:0 11px;padding:0;text-align:start}
  .stop-content{justify-items:start;padding-bottom:4px}
  .timeline-segment{grid-template-columns:24px minmax(0,1fr);justify-items:start;gap:0 11px;padding:0 0 8px;text-align:start}
  .timeline-segment::before{top:-7px;right:auto;bottom:0;left:11px;border-top:0;border-left:1px solid var(--line)}
  .timeline-segment.leg-possible::before,.timeline-segment.leg-excluded::before{border-left-style:dashed;border-top:0}
  .timeline-segment .leg-icon{grid-column:1;grid-row:1}
  .timeline-segment .leg-copy{grid-column:2;grid-row:1}
}
@media(max-width:520px){
  .site-header{height:62px;padding:0 16px}
  .brand{font-size:15px}
  .header-note{font-size:10px}
  main{width:calc(100% - 28px)}
  .intro{padding:34px 0 21px}
  h1{font-size:37px}
  .intro-copy{font-size:13px}
  .search-panel{padding:15px;border-radius:15px}
  .route-fields{grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr);gap:6px}
  .input-wrap{height:49px;padding:0 9px;gap:6px}
  .input-wrap input{font-size:13px}
  .swap-button{width:44px;height:44px;margin-bottom:3px}
  .search-button{height:48px}
  .travellers{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .counter{min-width:0;min-height:52px;gap:4px;padding:3px 5px}
  .counter>span:first-child{font-size:10px}
  .counter button{flex-basis:44px;width:44px;height:44px}
  .counter output{min-width:18px}
  .bags-counter{grid-column:1/-1;width:100%}
  .results{padding:34px 0}
  .results-heading{align-items:flex-start;flex-direction:column}
  .results-heading h2{font-size:26px}
  .sort-control{width:100%}
  .results-toolbar{align-items:flex-start;flex-direction:column;gap:5px}
  .route-mode{display:grid;grid-template-columns:1fr 1fr}
  .route-mode button{padding:7px 10px}
  .journey-card{padding:14px 13px 12px;border-radius:13px}
  .card-topline{align-items:flex-start;flex-wrap:wrap;gap:8px}
  .card-topline .airline-identity{flex:1 1 calc(100% - 90px)}
  .card-topline .card-badges{order:3;flex:1 1 auto}
  .card-topline .compare-choice{order:2}
  .airline-logo{flex-basis:42px;width:42px;height:34px}
  .journey-main{align-items:flex-start;flex-direction:column;gap:9px}
  .details-toggle{justify-content:center;width:100%}
  .journey-kiwi-action{grid-template-columns:1fr}
  .journey-kiwi-button{width:100%;justify-content:center}
  .kiwi-passenger-note{text-align:start}
  .journey-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 8px}
  .journey-stat dd{font-size:10px}
  .journey-details{margin-inline:0}
  .comparison-grid{grid-template-columns:1fr}
  .site-footer{align-items:flex-start;flex-direction:column;gap:8px;padding:18px 16px}
  .footer-links{flex-wrap:wrap;gap:14px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}

html[dir="rtl"]{font-family:Tahoma,Arial,sans-serif}
html[dir="rtl"] body{font-family:Tahoma,Arial,sans-serif}
html[dir="rtl"] h1,html[dir="rtl"] h2,html[dir="rtl"] h3,html[dir="rtl"] h4,html[dir="rtl"] .input-wrap input{font-family:Tahoma,Arial,sans-serif;letter-spacing:0}
html[dir="rtl"] .stop-code{direction:ltr;unicode-bidi:isolate}
html[dir="rtl"] .journey-title{line-height:1.5}
html[dir="rtl"] .search-button span{padding-right:0;padding-left:5px}
html[dir="rtl"] .sort-control select,html[dir="rtl"] .document-field select{padding:0 11px 0 30px}

.flight-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:12px;margin-top:16px}
.flight-fields input,.flight-fields select{min-height:44px;width:100%;min-width:0;padding:8px;border:1px solid var(--line);border-radius:8px;background:var(--surface-input);color:inherit;font:inherit;color-scheme:dark}
html[data-theme="light"] .flight-fields input,html[data-theme="light"] .flight-fields select{color-scheme:light}
html[data-theme="light"] .compare-bar{background:var(--accent-pale)}
html[data-theme="light"] .stop-marker,html[data-theme="light"] .leg-icon{border-color:var(--line)}
.flight-search-panel{border-top:1px solid var(--line);margin-top:18px;padding-top:15px}
.flight-search-panel h3{font-size:14px;margin:0 0 10px}
.flight-search-panel p{font-size:12px;line-height:1.6;color:var(--muted);margin:8px 0}
.flight-search-link{display:inline-flex;align-items:center;min-height:44px;padding:8px 16px;border:1px solid currentColor;border-radius:8px;color:var(--accent);font-weight:700;text-decoration:none}
.flight-search-link.journey-kiwi-button{color:var(--accent-button-text)}
@media(max-width:520px){.flight-fields{grid-template-columns:1fr}.flight-search-link{width:100%;justify-content:center}}

.flight-fields [hidden],.flight-search-panel [hidden]{display:none}
.ground-advisory[hidden]{display:none}

.ground-section{margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}
.ground-section h4{margin:0;font-size:12px;color:var(--gold);line-height:1.6}
.ground-section .leg-copy strong{font-size:11px}.ground-section .leg-copy small{font-size:11px}
.ground-section .stop-name{font-size:13px}.ground-timeline .timeline-stop:last-child .stop-marker{border-color:var(--gold);color:var(--gold)}
.ground-timeline .timeline-stop:has(.leg-excluded)::before{border-inline-start-style:dashed}
.ground-connection-note,.ground-pickup,.ground-advisory p,.ground-service-details p,.ground-evidence p,.journey-details>p{font-size:12px;line-height:1.6;color:var(--muted)}
.ground-service-details{margin-block:14px}.ground-service-details p{margin-block:7px}
.ground-evidence summary{min-height:44px;padding-block:12px;color:var(--accent);cursor:pointer;font-size:12px}
.ground-only-card{margin-top:14px}.ground-only-card>h3{font-size:14px;line-height:1.6}
.ground-advisory{padding:16px;margin-top:16px;border:1px solid var(--line);border-radius:12px;font-size:12px}
.ground-advisory a{display:inline-flex;align-items:center;min-height:44px;margin-inline:10px;color:var(--accent)}
.verification-meta a{display:inline-flex;align-items:center;min-height:44px;overflow-wrap:anywhere}
.journey-card,.comparison-item{min-width:0;overflow-wrap:anywhere}.comparison-item dl{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}

@media(max-width:520px){.counter:not(.bags-counter){flex-direction:column;justify-content:center;padding-block:7px;gap:5px}}

.ground-timeline .stop-code{justify-self:start;width:max-content}

/* Phase 1.5a: a compact disclosure using the existing card palette. */
.travel-documents{margin-block:18px;border:1px solid var(--line);border-radius:14px;background:var(--card);min-width:0}
.travel-documents[hidden],.documents-controls [hidden],.documents-notice[hidden]{display:none}
.travel-documents summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px;padding:14px 18px;cursor:pointer;border-inline-start:3px solid #19B4A5;border-radius:14px;color:var(--ink)}
.travel-documents summary::after{content:'+';color:var(--accent);font-size:22px}
.travel-documents details[open]>summary::after{content:'−'}
.travel-documents summary h2{font-size:17px;letter-spacing:0;margin:0;flex:1}
#documents-context-preview{font-size:12px;color:var(--muted);unicode-bidi:isolate}
.documents-body{padding:0 18px 18px;font-size:13px;line-height:1.7}
.documents-body>p{color:var(--muted);margin-block:12px}
.documents-controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:14px}
.documents-controls .document-field{width:100%}
.documents-controls select{width:100%;min-width:0;min-height:44px;padding:10px;background:var(--surface-input);color:var(--ink);border:1px solid var(--line);border-radius:8px}
.documents-context{display:grid;grid-template-columns:minmax(120px,1fr) minmax(0,3fr);gap:8px 16px;margin-block:18px;padding-block:14px;border-block:1px solid var(--line)}
.documents-context dt{color:var(--muted)}.documents-context dd{margin:0;overflow-wrap:anywhere}
.documents-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.document-card{padding:14px;background:var(--card-raised);border:1px solid var(--line-soft);border-radius:10px;min-width:0;overflow-wrap:anywhere}
.document-card h3{margin:0 0 5px;font-size:14px;letter-spacing:0}.document-card p{margin:8px 0 0;color:var(--muted)}
.document-edit-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin-top:12px;padding:8px 12px;border:1px solid var(--line);border-radius:8px;background:var(--accent-pale);color:var(--ink);font:inherit;font-weight:600;cursor:pointer}
.document-edit-button:hover{border-color:var(--accent);color:var(--accent)}
.document-status{display:block;font-size:11px;color:var(--gold)}
.document-evidence{margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}
.document-evidence a{display:inline-flex;align-items:center;min-height:44px;color:var(--accent);overflow-wrap:anywhere}
.documents-stages{margin-block:18px;min-width:0}
.document-stage-list{display:grid;gap:8px;padding-inline-start:24px}
.document-stage{border:1px solid var(--line);border-radius:10px;min-width:0;overflow-wrap:anywhere}
.document-stage-summary{min-height:44px;padding:10px 12px;cursor:pointer}
.document-stage-body{padding:0 12px 12px}
.document-stage-body p{color:var(--muted);margin-block:8px}
.document-stage-evidence{border-block-start:1px solid var(--line);margin-block-start:12px;padding-block-start:8px;min-width:0}
.document-stage-evidence summary{min-height:44px;display:flex;align-items:center;cursor:pointer;font-weight:600}
.document-stage-evidence a{display:inline-flex;align-items:center;min-height:44px;color:var(--accent);overflow-wrap:anywhere}
@media(max-width:520px){.documents-body{padding-inline:14px}.travel-documents summary{padding-inline:14px;flex-wrap:wrap}.documents-cards{grid-template-columns:1fr}.documents-context{grid-template-columns:1fr;gap:2px}.documents-context dd{margin-bottom:9px}}

.family-picker{margin-block:1.2rem;border-block:1px solid var(--line);padding-block:1rem}.family-picker>summary,.traveler-profile>summary,.traveler-extra>summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:.5rem;font-weight:600}.traveler-profiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:.75rem}.traveler-profile{border:1px solid var(--line);border-radius:12px;padding:.75rem;min-width:0;align-self:start}.traveler-fields{display:grid;gap:.75rem}.traveler-fields select{width:100%;min-height:44px}.traveler-fields button{min-height:44px;padding:.6rem;border:1px solid var(--line);border-radius:8px;background:var(--accent-pale);color:var(--ink);cursor:pointer}.citizenship-options{border:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.3rem}.citizenship-options label{display:flex;align-items:center;gap:.4rem;min-height:44px}.citizenship-options input{width:20px;height:20px}.traveler-extra .document-field{margin-block:.5rem}.family-picker p{color:var(--muted)}

.travel-checklist{margin-block:14px 18px;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--card)}
.checklist-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.checklist-heading h2{margin:0;font-size:18px}
.checklist-heading button,.checklist-detail-link{min-height:44px;padding:8px 12px;border:1px solid var(--line);border-radius:8px;background:var(--card-raised);color:var(--accent);font:inherit;cursor:pointer}
.travel-checklist progress{width:100%;height:8px;accent-color:var(--accent)}
.checklist-journey{color:var(--ink);overflow-wrap:anywhere}
.checklist-warning{color:var(--gold);font-size:12px;line-height:1.5}
.checklist-meta,.checklist-source{color:var(--muted);font-size:12px;line-height:1.5;margin:4px 0;overflow-wrap:anywhere}
.checklist-category{border-top:1px solid var(--line);margin-top:10px}
.checklist-category>summary{min-height:44px;padding:12px 0;cursor:pointer;font-weight:700}
.checklist-tasks{list-style:none;margin:0;padding:0}
.checklist-task{padding:10px 0;border-top:1px solid var(--line-soft);break-inside:avoid}
.checklist-task-label{display:flex;align-items:center;gap:10px;min-height:44px;cursor:pointer;line-height:1.5;overflow-wrap:anywhere}
.checklist-task-label input{width:22px;height:22px;flex-shrink:0;accent-color:var(--accent)}
.checklist-detail-link{font-size:12px;margin-top:4px}
.checklist-date{white-space:nowrap}
.checklist-print-warning,#checklist-print{display:none}
.travel-checklist :focus-visible{outline:3px solid var(--accent);outline-offset:3px}
@media print{
  @page{size:A4;margin:16mm}
  body>*:not(#checklist-print){display:none!important}
  html,body{background:white!important;color:black!important}
  #checklist-print{display:block;color:black;font-size:11pt;line-height:1.5}
  #checklist-print .travel-checklist{padding:0;border:0;background:white;margin:0}
  #checklist-print button,#checklist-print progress{display:none!important}
  #checklist-print .checklist-print-warning{display:block}
  #checklist-print p,#checklist-print a{color:black}
  #checklist-print .checklist-category{border-color:#999}
  #checklist-print summary,#checklist-print h1,#checklist-print h2{break-after:avoid}
  #checklist-print .checklist-task{border-color:#ddd;padding:5px 0}
  #checklist-print .checklist-task-label{min-height:0}
  #checklist-print .checklist-source a::after{content:' (' attr(href) ')';font-size:9pt;overflow-wrap:anywhere}
  #checklist-print .checklist-print-state{white-space:nowrap}
}
/* Sections share the same DOM and existing theme tokens. */
[hidden]{display:none!important}
:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.skip-link{color:var(--paper)}
.primary-navigation{display:flex;align-items:center;gap:8px}
.primary-navigation a,.navigation-toggle,.documents-action a,.information-categories a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 12px;border:1px solid var(--line);border-radius:9px;background:var(--card);color:var(--ink);text-decoration:none;font-size:13px}
.primary-navigation a[aria-current="page"]{color:var(--accent);border-color:var(--accent);background:var(--accent-pale)}
.navigation-toggle{display:none;cursor:pointer}
.site-header{height:auto;min-height:76px;flex-wrap:wrap;padding-block:12px}
.header-note{display:none}
.intro{padding-block:30px 22px}.intro h1{font-size:clamp(30px,4vw,42px)}
.section-intro{padding-block:30px 16px}.section-intro h1{font-size:clamp(28px,4vw,40px)}
.section-intro p{color:var(--muted);line-height:1.65;margin-top:12px;max-width:740px}
.record-explanation>summary,.flight-explanation>summary,.information-evidence>summary{min-height:44px;display:flex;align-items:center;color:var(--accent);cursor:pointer;line-height:1.6}
.record-explanation{margin-top:8px;font-size:12px}
.documents-action{margin-block:12px}.documents-action a{color:var(--accent);font-weight:600}
.compact-limitation,.compact-operator,.compact-gateway{font-size:13px;line-height:1.65;color:var(--muted);margin-block:8px}
.compact-limitation{color:var(--gold)}
.information-categories{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}
.information-categories a[aria-current="page"]{border-color:var(--accent);background:var(--accent-pale);color:var(--accent);font-weight:700}
.information-category{margin-block:24px;scroll-margin-block-start:16px}
.information-category h2{font-size:24px;letter-spacing:0}
.information-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.information-card{padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--card);min-width:0;overflow-wrap:anywhere}
.information-card h3{font-size:17px;letter-spacing:0;line-height:1.6}
.information-card p{font-size:13px;line-height:1.7;color:var(--muted)}
.information-card a{display:inline-flex;align-items:center;min-height:44px;color:var(--accent);line-height:1.6}
.information-evidence{border-block-start:1px solid var(--line);margin-top:10px;font-size:13px}
.information-evidence summary::before{content:'+';margin-inline-end:8px}.information-evidence[open]>summary::before{content:'−'}
@media(max-width:1100px){.site-header{padding-inline:24px}.primary-navigation{order:3;width:100%;justify-content:center}}
@media(max-width:600px){.site-header{position:relative;padding-inline:16px;gap:8px}.brand-logo{width:155px}.header-actions{gap:6px}.language-toggle{padding-inline:8px}.navigation-toggle{display:inline-flex;padding-inline:8px}.primary-navigation{display:none;justify-content:stretch;gap:6px}.primary-navigation[data-open="true"]{display:grid;grid-template-columns:1fr}.primary-navigation a{justify-content:flex-start}.section-intro{padding-top:24px}.information-grid{grid-template-columns:1fr}.documents-action a{width:100%;text-align:center}.information-card{padding:14px}}

.comparison-note{grid-column:1/-1;margin:0;color:var(--muted);font-size:12px;line-height:1.6}
.connection-evidence{border-inline-start:2px solid var(--accent);padding-inline-start:12px;margin-block:14px}

/* The map and compact controls share the existing planner and evidence model. */
.planner-layout{display:grid;grid-template-columns:minmax(0,.42fr) minmax(0,.58fr);align-items:stretch;gap:16px 24px;padding-top:18px}
.planner-layout .intro{position:relative;min-height:430px;isolation:isolate;padding:20px 0 0;overflow:hidden}
.planner-layout .intro h1{max-width:500px;font-size:clamp(36px,3.65vw,52px);line-height:1.12;letter-spacing:-1.5px;text-wrap:pretty}
html[dir="rtl"] .planner-layout .intro h1{font-size:clamp(34px,3.1vw,46px);line-height:1.4;letter-spacing:0}
.planner-layout .intro-copy{max-width:440px;font-size:18px;line-height:1.5}
.hero-photograph{position:absolute;inset:170px -10px 0;z-index:-1;margin:0;overflow:hidden;pointer-events:none}
.hero-photograph img{width:100%;height:100%;object-fit:cover;object-position:55% 68%;filter:saturate(.85) sepia(.12);mask-image:linear-gradient(to bottom,transparent,#000 40%,#000 94%,transparent)}
.hero-photograph::after{content:'';position:absolute;inset:0;background:linear-gradient(to bottom,var(--paper),transparent 70%);pointer-events:none}
.hero-photograph figcaption{position:absolute;inset-inline-start:20px;bottom:8px;z-index:1;font-size:9px;line-height:1.5;color:#fff;background:#071722c9;border-radius:4px;padding:3px 5px;pointer-events:auto}
.planner-layout .intro .eyebrow{color:var(--gold)}
.planner-layout .search-panel{grid-column:1/-1;padding:16px 20px;border-radius:16px;box-shadow:0 8px 30px rgba(0,0,0,.1)}
.planner-layout #journey-form{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(300px,.8fr);gap:0 16px}
.planner-layout .direction-control{grid-column:1/-1;grid-row:1}
.planner-layout .route-fields{grid-column:1/-1;grid-row:2}
.planner-layout .planner-options{grid-column:1/-1;grid-row:3}
.planner-layout .planner-options[open]~.planner-extras{grid-column:1/-1}
.planner-extras{grid-column:1/-1}
.planner-extras>summary{min-height:44px;display:flex;align-items:center;color:var(--muted);font-size:11px;cursor:pointer}
.planner-extras>summary::after{content:'⌄';margin-inline-start:8px;color:var(--accent)}
.gateway-section{min-width:0;margin-block:0 28px}
.gateway-heading{margin:0;font-size:22px;color:var(--ink)}
.gateway-airport{margin:4px 0;color:var(--muted);font-size:13px}
.gateway-advice{margin-block:8px 12px;font-size:13px;color:var(--muted);line-height:1.6}
.gateway-advice p{margin:4px 0}
.gateway-section .journey-card{margin-block:12px}
.journey-map-panel{position:relative;min-width:0;width:100%;justify-self:center;margin:0;padding:10px;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--surface-input)}
.map-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.map-heading .eyebrow{margin:0;font-size:17px;letter-spacing:-.3px;text-transform:none;color:var(--ink)}
.map-canvas{position:relative}
.map-flight-strip{margin:8px 0;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--ink);font-size:12px;font-weight:600;line-height:1.6;overflow-wrap:anywhere}
.map-flight-strip bdi{white-space:nowrap}
.map-controls{position:absolute;inset-inline-end:8px;top:8px;z-index:1;display:flex;justify-content:flex-end;gap:3px;min-height:0}
.map-controls button{min-height:44px;padding:6px 10px;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--headline-accent);font:inherit;font-size:11px;cursor:pointer}
.map-controls[hidden]{display:none}
.map-controls button[aria-pressed="true"]{border-color:var(--accent);background:var(--accent-pale)}
#map-selection-note{max-width:220px;padding:4px 7px;border-radius:5px;background:var(--gold-pale);color:var(--documented-ink);font-size:10px;text-align:end;line-height:1.5}
#journey-map{display:block;width:100%;height:330px;overflow:hidden;direction:ltr;border-radius:8px;background:#082433}
.map-terrain{filter:saturate(.65) brightness(.64)}
.map-terrain-tint{fill:#042838;opacity:.27;pointer-events:none}
.map-boundaries .map-country{fill:none;stroke:#a8b8b9;stroke-width:.6;opacity:.35}
.map-boundaries .map-syria{fill:none;stroke:#c6d3cb;stroke-width:.9;opacity:.65}
html[data-theme="light"] .map-terrain{filter:saturate(.65) brightness(1.12)}
html[data-theme="light"] .map-terrain-tint{opacity:.07}
.map-country{fill:var(--card-raised);stroke:var(--line-soft);stroke-width:.5;stroke-linejoin:round}
.map-syria{fill:var(--gold-pale);stroke:var(--gold);stroke-width:1.2}
.map-segment{fill:none;stroke:var(--headline-accent);stroke-width:2.4;stroke-linecap:round}
.map-segment-possible{stroke-dasharray:6 6;stroke:var(--gold)}
.map-segment-ground{stroke:var(--headline-accent);stroke-dasharray:2 4;stroke-width:3}
.map-segment-approximate{stroke:var(--gold);stroke-dasharray:10 5 2 5;stroke-width:2}
.map-direction{fill:none;stroke:var(--headline-accent);stroke-width:2;stroke-linecap:round}
.map-direction-tip{fill:var(--headline-accent)}
.map-gap-link{fill:none;stroke:var(--gold);stroke-width:1.7;stroke-dasharray:3 8;opacity:1}
.map-marker{cursor:pointer;outline:none}
.map-marker-target{fill:transparent;stroke:transparent;stroke-width:2}
.map-marker-dot{fill:#28cfbb;stroke:#e4fbf8;stroke-width:1.4}
.map-marker-connectionPossible .map-marker-dot{fill:var(--gold)}
.map-marker-final .map-marker-dot{fill:var(--gold)}
.map-marker:focus-visible .map-marker-target,.map-marker[aria-pressed="true"] .map-marker-target{fill:var(--accent-pale);stroke:var(--accent)}
.map-place-label{font:600 12px 'DM Sans',Arial,sans-serif;fill:#f4f8fb}
.map-label-surface{fill:#071d2b;fill-opacity:.94;stroke:#799ca36b;stroke-width:.6;pointer-events:none}
.journey-map-panel figcaption{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0 12px;align-items:center}
.map-route-summary,.map-marker-detail,.map-coordinate-note{grid-column:1/-1}
.map-route-summary{margin:6px 0 3px;color:var(--ink);font-size:11px;line-height:1.6;overflow-wrap:anywhere}
.map-route-summary bdi{white-space:nowrap}
.map-marker-detail{margin:6px 0;padding:7px 10px;border-inline-start:2px solid var(--accent);background:var(--accent-pale);color:var(--ink);font-size:11px;line-height:1.5}
.map-legend{display:flex;flex-wrap:wrap;gap:4px 12px;color:var(--muted);font-size:10px;line-height:1.5}
.map-legend>span[hidden]{display:none}
.map-legend>span{display:inline-flex;align-items:center;gap:5px}
.map-key{width:18px;border-top:2px solid var(--headline-accent)}
.map-key-dashed{border-color:var(--gold);border-top-style:dashed}
.map-key-ground{border-top-style:dotted}
.map-key-gap{display:inline-block;margin-inline-end:6px;border-color:var(--gold);border-top-style:dashed;vertical-align:middle}
.map-coordinate-note{margin:6px 0;color:var(--gold);font-size:9px;line-height:1.5}
#map-gap-note{grid-column:1}
.map-attribution{margin:3px 0 0;color:var(--soft);font-size:9px;line-height:1.5;text-align:end}
.map-attribution a{text-underline-offset:2px}
.map-change .map-links{animation:map-arrive .25s ease-out}
@keyframes map-arrive{from{opacity:.15}to{opacity:1}}
.planner-options{margin-top:12px;border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft)}
.planner-options>summary{display:flex;flex-wrap:wrap;align-items:center;gap:5px 20px;min-height:48px;padding:7px 0;cursor:pointer;font-size:12px;list-style:none}
.planner-options>summary::after{content:'+';margin-inline-start:auto;color:var(--accent);font-size:18px}
.planner-options[open]>summary::after{content:'−'}
#planner-options-label{font-weight:700;color:var(--ink)}
#planner-options-summary{color:var(--muted);font-size:11px}
.planner-options-body{padding-bottom:14px}
.planner-options .flight-fields{margin-top:4px;grid-template-columns:repeat(3,minmax(0,1fr))}
.planner-options .preference-row{margin-top:12px;padding-top:12px}
.planner-layout .flight-search-panel{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:2px 14px;border:0;margin-top:10px;padding:0}
.planner-layout #flight-search-title{display:none}
.planner-layout .flight-search-link{grid-column:1;grid-row:1/3;font-size:11px;min-height:44px;padding:7px 12px;white-space:nowrap}
.planner-layout #flight-passenger-note{margin:0;font-size:9px;line-height:1.45}
.planner-layout .flight-explanation{grid-column:3;grid-row:1/3;font-size:10px}
.planner-layout .flight-explanation>summary{min-height:44px;font-size:10px}
.planner-layout .flight-explanation[open]{grid-column:1/-1;grid-row:auto}
.planner-layout #flight-search-status{grid-column:1/-1}
.planner-layout .record-explanation{margin-top:4px;font-size:10px}
.planner-layout .record-explanation>summary{min-height:32px}
.planner-layout .record-explanation .sample-note{margin-top:4px}
.results{padding-top:28px}
.results-toolbar{margin-top:16px}
@media(min-width:801px){
  .results{display:grid;grid-template-columns:1fr auto;gap:10px 16px}
  .results>*{grid-column:1/-1}
  .results .route-mode{grid-column:1;margin:0}
  .results .documents-action{grid-column:2;grid-row:2;margin:0}
  .results .results-toolbar{margin:0 0 2px;padding-bottom:8px}
  .results-heading h2{font-size:27px}
}
.map-select{min-height:44px;padding:6px 10px;border:1px solid var(--line);border-radius:8px;background:transparent;color:var(--muted);font-size:10px;font-weight:700;cursor:pointer;white-space:nowrap}
.map-select[aria-pressed="true"]{color:var(--headline-accent);border-color:var(--headline-accent);background:var(--accent-pale)}
.mapped-journey{border-color:var(--headline-accent);box-shadow:inset 3px 0 var(--headline-accent)}
html[dir="rtl"] .mapped-journey{box-shadow:inset -3px 0 var(--headline-accent)}
html[dir="rtl"] .map-place-label{font-family:Tahoma,Arial,sans-serif}
@media(min-width:1101px){.site-header{min-height:68px;padding-block:8px}.primary-navigation a{border-color:transparent;background:transparent;font-size:12px}.primary-navigation a[aria-current="page"]{border-color:transparent;background:var(--accent-pale)}}
@media(max-width:800px){
  .planner-layout{display:flex;flex-direction:column;align-items:stretch;gap:18px;padding-top:20px}
  .planner-layout .intro{order:1;padding:0}
  .planner-layout .intro{min-height:0}
  .hero-photograph{display:none}
  .planner-layout #journey-form{display:block}
  .planner-layout .intro h1{font-size:36px;line-height:1.15}
  .planner-layout .intro-copy{max-width:480px;margin-top:10px;font-size:13px}
  .planner-layout .search-panel{order:2}
  .journey-map-panel{order:3;align-self:center;padding-top:0}
  #journey-map{height:260px}
  .map-legend{font-size:9px}
  .map-route-summary{font-size:11px}
  .map-attribution{font-size:9px}
  .journey-map-panel figcaption{grid-template-columns:1fr}
  .map-coordinate-note{font-size:10px}
  .planner-layout .flight-search-panel{grid-template-columns:auto minmax(0,1fr)}
  .planner-layout .flight-explanation{grid-row:auto;grid-column:1/-1}
  .planner-layout .flight-explanation>summary{min-height:32px}
  .planner-layout .flight-search-link{grid-row:1}
}
@media(max-width:520px){
  .planner-layout{gap:16px;padding-top:20px}
  .planner-layout .intro h1{font-size:32px;letter-spacing:-1px}
  html[dir="rtl"] .planner-layout .intro h1{font-size:32px;line-height:1.4}
  .planner-layout .intro-copy{font-size:12px}
  .planner-layout .search-panel{padding:12px}
  .planner-layout .route-fields{grid-template-columns:minmax(0,1fr) 44px;gap:9px 7px}
  .planner-layout #origin-picker{grid-column:1;grid-row:1}
  .planner-layout #destination-picker{grid-column:1;grid-row:2}
  .planner-layout .swap-button{grid-column:2;grid-row:1/3;align-self:center;margin:0}
  .planner-layout .search-button{grid-column:1/-1}
  .planner-layout .input-wrap{padding-inline:9px 2px;height:46px}
  .planner-layout .input-wrap input{font-size:13px}
  .planner-options>summary{gap:3px 10px}
  #planner-options-label{font-size:11px}
  #planner-options-summary{width:calc(100% - 22px);font-size:10px;line-height:1.6}
  .planner-options>summary::after{position:absolute;inset-inline-end:0;top:11px}
  .planner-options>summary{position:relative;padding-inline-end:20px}
  .planner-options .flight-fields{grid-template-columns:1fr}
  .planner-options .counter{min-height:52px}
  .planner-layout .flight-search-panel{display:block}
  .planner-layout #flight-passenger-note{margin-top:7px;font-size:10px}
  #map-selection-note{max-width:150px;font-size:9px}
  #journey-map{height:260px}
  .map-place-label{font-size:12px}
  .map-legend{gap:4px 10px;font-size:9px}
  .map-heading .eyebrow{font-size:9px}
  .map-route-summary{font-size:10px}
  .card-topline .map-select{order:4;min-height:44px}
  .card-topline .compare-choice{margin-inline-start:auto}
  .results{padding-top:24px}
}
@media(prefers-reduced-motion:reduce){.map-change .map-links{animation:none}}
@media print{html{color-scheme:light}.journey-map-panel{display:none}.planner-layout{display:block}}

.journey-time{margin-block:1rem;padding:1rem;border:1px solid var(--line);border-radius:12px;overflow-wrap:anywhere}
.journey-time p{margin-block:.5rem;font-size:.85rem}
.journey-time-details summary{min-height:44px;display:list-item;align-content:center;cursor:pointer}
.journey-time-segments{padding-inline-start:1.25rem;font-size:.9rem;line-height:1.8}

.direction-control{display:flex;align-items:center;gap:12px;margin-block-end:16px;font-size:14px;font-weight:600;flex-wrap:wrap}
.location-country{padding:10px 14px;color:var(--muted);font-size:12px;font-weight:700;background:var(--card-raised)}

.airport-country{margin-block:24px}
.airport-country>h3{font-size:20px;color:var(--accent)}
.airport-directory h4{font-size:17px;line-height:1.6;margin-block:0 12px}
.airport-search{display:block;width:100%;max-width:600px;min-height:44px;margin-block:8px 12px;padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:var(--surface-input);color:var(--ink)}
.airport-search::placeholder{color:var(--muted)}

.information-category>.information-grid{margin-block:16px 28px}
.information-category h4{font-size:17px;line-height:1.6;margin-block:0 12px}
.ground-guide-list{padding-inline-start:22px;line-height:1.8}
.ground-guide-list li{margin-block:8px}
.ground-guide-feature{margin-block:24px}

.border-country{margin-block:24px 32px}
.border-country>h3{font-size:20px;color:var(--accent)}
.border-authorities{padding-inline-start:20px;margin-block:12px 20px}
.border-authorities a{display:inline-flex;align-items:center;min-height:44px;overflow-wrap:anywhere}
.border-country .information-card h4{font-size:17px;line-height:1.7}

.airline-directory-heading{display:flex;align-items:center;gap:12px;margin-block:0 8px}
.airline-directory-links{display:flex;flex-wrap:wrap;gap:4px 16px}
.airline-directory-card .airline-logo{flex-shrink:0}

.airline-directory-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.airline-directory-note{max-width:960px;font-size:14px;line-height:1.6;color:var(--muted)}
.airline-directory-card p{margin-block:6px}
@media(max-width:600px){.airline-directory-controls{grid-template-columns:1fr;gap:0}}

.airline-logo-dark{background:#10273b}
