:root{--ink:#10141f;--muted:#566070;--line:#d9e0e8;--paper:#f7f4ee;--surface:#fffdfa;--surface-strong:#fff;--teal:#00777a;--teal-dark:#006d70;--coral:#e05d3f;--lime:#b6d35e;--gold:#d6a23f;--shadow:0 18px 40px #1318211f;--radius:8px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--paper);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,select{font:inherit}.site-shell{min-height:100vh}.topbar{z-index:20;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffdfaeb;border-bottom:1px solid #10141f14;position:sticky;top:0}.topbar-inner{justify-content:space-between;align-items:center;gap:20px;width:min(1180px,100% - 32px);min-height:68px;margin:0 auto;display:flex}.brand{letter-spacing:0;align-items:center;gap:10px;font-weight:800;display:inline-flex}.brand-mark{border-radius:var(--radius);color:#fff;background:var(--ink);place-items:center;width:36px;height:36px;display:grid}.nav-links{color:var(--muted);align-items:center;gap:18px;font-size:.94rem;font-weight:650;display:flex}.nav-links a:hover{color:var(--ink)}.shell-section{width:min(1180px,100% - 32px);margin:0 auto}.hero{grid-template-columns:minmax(0,1fr) minmax(360px,.78fr);align-items:stretch;gap:28px;padding:44px 0 30px;display:grid}.hero-copy{flex-direction:column;justify-content:center;min-height:510px;display:flex}.eyebrow{color:var(--teal-dark);letter-spacing:.08em;text-transform:uppercase;margin:0 0 14px;font-size:.78rem;font-weight:800}.hero h1,.route-hero h1{letter-spacing:0;max-width:780px;margin:0;font-size:clamp(2.7rem,5.6vw,5.8rem);line-height:.98}.hero p,.route-hero p{max-width:680px;color:var(--muted);margin:22px 0 0;font-size:clamp(1.04rem,1.5vw,1.25rem);line-height:1.62}.hero-media{border-radius:var(--radius);min-height:510px;box-shadow:var(--shadow);background:#dfe9ea;position:relative;overflow:hidden}.hero-media img,.route-media img{object-fit:cover;width:100%;height:100%}.media-caption{border-radius:var(--radius);color:#fff;background:#10141fd1;align-items:center;gap:8px;max-width:calc(100% - 32px);padding:9px 11px;font-size:.84rem;font-weight:700;display:inline-flex;position:absolute;bottom:16px;right:16px}.home-search{grid-column:1/-1}.home-search .search-panel{margin-top:0}.search-panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-strong);margin-top:32px;padding:16px;box-shadow:0 16px 36px #1b1f2814}.tpwl-widget-panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-strong);margin-top:32px;padding:10px;position:relative;box-shadow:0 16px 36px #1b1f2814}.tpwl-widget-brand{z-index:2;max-width:calc(100% - 168px);color:var(--ink);pointer-events:none;align-items:center;gap:8px;font-weight:800;display:inline-flex;position:absolute;top:18px;left:18px;overflow:hidden}.tpwl-widget-mark{border-radius:var(--radius);color:#fff;background:var(--ink);flex:none;place-items:center;width:32px;height:32px;display:grid}.tpwl-widget-name,.tpwl-widget-route{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tpwl-widget-route{border:1px solid var(--line);color:var(--teal-dark);background:#e8f6f5;border-radius:999px;padding:5px 8px;font-size:.76rem;font-weight:850}.tpwl-widget-panel+.route-grid{margin-top:18px}.tpwl-widget-panel #tpwl-search{min-height:82px}.tpwl-widget-fallback{color:var(--muted);justify-content:flex-end;align-items:center;gap:12px;padding:8px 10px 4px;font-size:.88rem;display:flex}.tpwl-widget-fallback a{color:var(--teal-dark);text-underline-offset:3px;font-weight:800;text-decoration:underline}.search-panel+.route-grid{margin-top:18px}.search-grid{grid-template-columns:repeat(2,minmax(0,1fr)) 168px;gap:12px;display:grid}.flight-search-grid{grid-template-columns:repeat(2,minmax(150px,1fr)) repeat(4,minmax(112px,.72fr)) 236px;align-items:end;gap:12px;display:grid}.field{gap:7px;display:grid}.field label{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.76rem;font-weight:800}.field select,.field input{border:1px solid var(--line);border-radius:var(--radius);width:100%;min-width:0;height:48px;color:var(--ink);background:#fff;padding:0 12px}.field select:focus,.field input:focus{border-color:var(--teal);outline:3px solid #008c8f2e}.button{border-radius:var(--radius);color:#fff;background:var(--ink);cursor:pointer;border:0;justify-content:center;align-items:center;gap:8px;height:48px;padding:0 16px;font-weight:800;display:inline-flex}.button:hover{background:#000}.button:disabled{cursor:not-allowed;opacity:.55}.button.secondary{color:var(--ink);border:1px solid var(--line);background:var(--surface-strong)}.button.secondary:hover{background:#f0eee8}.button.icon-only{width:48px;padding:0}.search-actions{gap:8px;display:flex}.button.teal{background:var(--teal)}.button.teal:hover{background:var(--teal-dark)}.section-header{justify-content:space-between;align-items:end;gap:24px;margin:34px 0 16px;display:flex}.section-header h2,.content-band h2{letter-spacing:0;margin:0;font-size:clamp(1.6rem,3vw,2.4rem);line-height:1.05}.section-header p,.content-band p{max-width:620px;color:var(--muted);margin:8px 0 0;line-height:1.55}.route-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.hub-section{margin:42px 0 0}.hub-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.hub-link-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-strong);gap:10px;min-height:150px;padding:16px;transition:transform .16s,box-shadow .16s;display:grid;position:relative}.hub-link-card:hover{transform:translateY(-2px);box-shadow:0 14px 28px #10141f1a}.hub-link-card strong{font-size:1.05rem}.hub-link-card p{color:var(--muted);margin:0;line-height:1.48}.hub-link-card svg{color:var(--teal-dark);position:absolute;bottom:14px;right:14px}.route-card,.module-card,.metric-card,.deal-row,.airport-row{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-strong)}.route-card{transition:transform .16s,box-shadow .16s;overflow:hidden}.route-card:hover{transform:translateY(-2px);box-shadow:0 14px 28px #10141f1f}.route-card-map{aspect-ratio:16/9;background:#dbe8ed;border-bottom:1px solid #10141f14;width:100%;position:relative;overflow:hidden}.route-card-map-svg{width:100%;height:100%;display:block}.route-card-map-fallback-layer{opacity:.72;filter:drop-shadow(0 6px 12px #49586312)}.route-card-map-land{fill:#ffffffc7;stroke:#9ca9b257;stroke-linejoin:round;stroke-width:1.1px}.route-card-map-tile-layer{opacity:1}.route-card-map-wash{fill:#ffffff14}.route-card-map-label{fill:#4c586166;letter-spacing:.05em;font-size:14px;font-weight:850}.route-card-map-label.city{fill:#1d2e3c94;letter-spacing:0;font-size:14px;font-weight:900}.route-card-map-arc-shadow,.route-card-map-arc,.route-card-map-arc-highlight{fill:none;stroke-linecap:round}.route-card-map-arc-shadow{stroke:#006fee33;stroke-width:20px;filter:blur(1.5px)}.route-card-map-arc{stroke:#087bff;stroke-width:5.5px;filter:drop-shadow(0 0 7px #0077ff7a)}.route-card-map-arc-highlight{stroke:#ffffffd1;stroke-width:1.8px}.route-card-map-marker circle:first-child{fill:#fff;stroke:#087bff;stroke-width:4.6px}.route-card-map-marker circle:last-child{fill:#087bff}.route-card-map-plane{filter:drop-shadow(0 8px 12px #004fb857)}.route-card-map-plane path{fill:#fff;stroke:#087bff;stroke-linejoin:round;stroke-width:5px}.route-card-map-city-tag{opacity:.96}.route-card-map-city-tag rect{fill:#fffffff5;stroke:#c4d0d880;filter:drop-shadow(0 8px 16px #24394821)}.route-card-map-city-tag text{fill:#171b22;font-size:14px;font-weight:900}.route-card-map-city-tag .route-card-map-city-code{fill:#667580;font-size:10px;font-weight:850}.route-card-map-badge rect{fill:#ffffffed;stroke:#c4d0d87a;filter:drop-shadow(0 10px 20px #253a4a24)}.route-card-map-kicker{fill:#5e6b74;font-size:14px;font-weight:800}.route-card-map-title{fill:#171b22;letter-spacing:0;font-size:30px;font-weight:950}.route-card-map-title-blue{fill:#087bff}.route-card-map-badge.city-title .route-card-map-kicker{font-size:13px}.route-card img{aspect-ratio:16/9;object-fit:cover;background:#d8e6e7;width:100%}.route-card-body{gap:12px;padding:16px;display:grid}.route-title{justify-content:space-between;align-items:center;gap:12px;display:flex}.route-title h3{margin:0;font-size:1.04rem;line-height:1.25}.iata-chip,.quality-chip,.tracking-chip{white-space:nowrap;border-radius:999px;align-items:center;gap:6px;width:fit-content;font-size:.76rem;font-weight:800;display:inline-flex}.iata-chip{color:var(--teal-dark);background:#008c8f1a;padding:6px 8px}.quality-chip{color:#4e5e00;background:#b6d35e61;padding:7px 9px}.tracking-chip{color:#7d2c1e;background:#e05d3f21;padding:6px 8px}.tracking-chip.success{color:#3f5200;background:#b6d35e61}.route-card p,.module-card p,.metric-card p,.deal-row p,.airport-row p{color:var(--muted);margin:0;line-height:1.48}.price-line{color:var(--muted);justify-content:space-between;align-items:baseline;gap:10px;font-size:.9rem;display:flex}.price-line strong{color:var(--ink);text-align:right;font-size:1rem}.route-card-price-note{color:var(--muted);font-size:.78rem;line-height:1.35}.content-band{border-top:1px solid #10141f1a;border-bottom:1px solid #10141f1a;margin:42px 0;padding:34px 0}.module-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:18px;display:grid}.trip-stack-intelligence{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:18px;display:grid}.trip-stack-priority-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-strong);align-content:space-between;gap:14px;min-height:312px;padding:16px;display:grid}.trip-stack-priority-topline,.trip-stack-card-footer,.stack-score{align-items:center;gap:8px;display:flex}.trip-stack-priority-topline{justify-content:space-between}.stack-rank,.stack-score,.stack-brand{font-size:.78rem;font-weight:900}.stack-rank{color:var(--muted)}.trip-stack-priority-card h3{margin:0 0 8px;font-size:1.02rem;line-height:1.15}.trip-stack-priority-card p{color:var(--muted);margin:0;line-height:1.46}.stack-evidence-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.stack-evidence-list li{color:#49545d;padding-left:14px;font-size:.86rem;line-height:1.35;position:relative}.stack-evidence-list li:before{background:var(--teal);content:"";border-radius:999px;width:5px;height:5px;position:absolute;top:.58em;left:0}.trip-stack-card-footer{border-top:1px solid #10141f14;flex-wrap:wrap;justify-content:space-between;padding-top:12px}.stack-score{color:var(--teal-dark)}.stack-brand{color:var(--muted)}.trip-stack-card-footer .button{width:100%;height:40px;padding:0 12px}.route-decision-section{margin:12px auto 34px}.route-decision-panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-strong);grid-template-columns:minmax(280px,.68fr) minmax(420px,1fr);align-items:stretch;gap:18px;padding:18px;display:grid;box-shadow:0 18px 36px #10141f14}.route-decision-copy{align-content:start;gap:12px;display:grid}.route-decision-copy h2{margin:0;font-size:clamp(1.45rem,2.4vw,2.05rem);line-height:1.08}.route-decision-copy p{color:var(--muted);margin:0;line-height:1.52}.route-decision-actions{flex-wrap:wrap;gap:10px;margin-top:4px;display:flex}.route-decision-signals{border-radius:var(--radius);background:#10141f14;border:1px solid #10141f14;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.route-decision-signal{background:#fbfaf6;grid-template-columns:30px minmax(0,1fr);gap:10px;min-width:0;padding:14px;display:grid}.route-decision-signal svg{color:var(--teal-dark);margin-top:2px}.route-decision-signal div{gap:4px;min-width:0;display:grid}.route-decision-signal span{color:var(--muted);font-size:.78rem;font-weight:850}.route-decision-signal strong{overflow-wrap:anywhere;font-size:1.05rem;line-height:1.22}.route-decision-signal p{color:var(--muted);margin:0;font-size:.88rem;line-height:1.42}.signal-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.signal-list li{color:var(--ink);grid-template-columns:24px minmax(0,1fr);align-items:start;gap:10px;line-height:1.5;display:grid}.signal-list svg{color:var(--teal-dark);margin-top:2px}.signal-list.hold svg{color:var(--coral)}.fare-watch-section{margin:26px auto 34px}.fare-watch-grid{grid-template-columns:minmax(0,1.25fr) repeat(3,minmax(0,1fr));gap:14px;display:grid}.fare-watch-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-strong);align-content:start;gap:9px;min-height:178px;padding:18px;display:grid}.fare-watch-card svg{color:var(--teal-dark)}.fare-watch-card span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.76rem;font-weight:900}.fare-watch-card strong{letter-spacing:0;font-size:clamp(1.35rem,2.6vw,2.05rem);line-height:1}.fare-watch-card p{color:var(--muted);margin:0;line-height:1.5}.fare-watch-card.lead{background:linear-gradient(135deg,#fff 0%,#eef8f7 100%);border-color:#008c8f52}.fare-watch-card.action .button{align-self:end;width:fit-content;margin-top:auto}.fare-watch-evidence{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px;display:grid}.fare-watch-evidence-item{border-radius:var(--radius);background:#fbfaf6;border:1px solid #10141f14;grid-template-columns:30px minmax(0,1fr);gap:10px;min-width:0;padding:14px;display:grid}.fare-watch-evidence-item svg{color:var(--teal-dark);margin-top:2px}.fare-watch-evidence-item div{gap:5px;min-width:0;display:grid}.fare-watch-evidence-item span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.73rem;font-weight:900}.fare-watch-evidence-item strong{overflow-wrap:anywhere;font-size:1rem;line-height:1.25}.fare-watch-evidence-item p{color:var(--muted);margin:0;font-size:.88rem;line-height:1.45}.route-watch-form{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-strong);grid-template-columns:minmax(220px,.9fr) minmax(220px,1fr) auto;align-items:end;gap:12px;margin-top:18px;padding:16px;display:grid}.route-watch-form-header{align-items:center;gap:11px;display:flex}.route-watch-form-header div{gap:2px;display:grid}.route-watch-form-header strong{font-size:1rem}.route-watch-form-header span:last-child{color:var(--muted);font-size:.9rem}.route-watch-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:10px;display:grid}.route-watch-field{gap:6px;display:grid}.route-watch-field span{color:var(--muted);text-transform:uppercase;font-size:.8rem;font-weight:800}.route-watch-form input,.route-watch-form select{border:1px solid var(--line);border-radius:var(--radius);width:100%;min-width:0;min-height:42px;color:var(--ink);background:var(--surface);padding:0 10px}.route-watch-email{min-width:0}.route-watch-details{color:var(--muted);grid-column:1/-1;font-size:.9rem}.route-watch-details summary{cursor:pointer;width:fit-content;color:var(--teal-dark);font-weight:850}.route-watch-consent{color:var(--muted);align-items:flex-start;gap:8px;font-size:.9rem;line-height:1.4;display:flex}.route-watch-consent input{width:16px;min-width:16px;height:16px;min-height:16px;margin-top:2px}.route-watch-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;display:flex}.route-watch-actions .button{flex:none}.route-watch-message{color:var(--muted);font-size:.9rem;font-weight:700}.route-watch-message.success{color:var(--teal-dark)}.route-watch-message.error{color:var(--coral)}.flexible-date-section{margin-top:18px}.flexible-date-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.flexible-date-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-strong);align-content:start;gap:8px;min-height:180px;padding:18px;display:grid}.flexible-date-card svg{color:var(--teal-dark)}.flexible-date-card span{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.78rem;font-weight:800}.flexible-date-card strong{font-size:1.2rem}.flexible-date-card p{color:var(--muted);margin:0;line-height:1.52}.partner-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.module-card{gap:12px;padding:16px;display:grid}.partner-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-strong);align-content:space-between;gap:18px;min-height:230px;padding:16px;display:grid}.partner-card h3{margin:12px 0 8px;font-size:1.08rem}.partner-card p{color:var(--muted);margin:0;line-height:1.5}.partner-card-signals{flex-wrap:wrap;gap:7px;margin-top:12px;display:flex}.partner-card-signals span{color:#254044;background:#008c8f1f;border-radius:999px;align-items:center;max-width:100%;min-height:28px;padding:5px 8px;font-size:.75rem;font-weight:850;line-height:1.15;display:inline-flex}.partner-card-footer{border-top:1px solid #10141f14;justify-content:space-between;align-items:center;gap:12px;padding-top:12px;display:flex}.partner-card-footer .button{width:auto;height:40px;padding:0 12px}.esim-signal-section{margin:18px auto 36px}.esim-signal-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-strong);grid-template-columns:minmax(0,.92fr) minmax(320px,.62fr);align-items:stretch;gap:18px;padding:18px;display:grid;box-shadow:0 18px 36px #10141f14}.esim-signal-copy{align-content:start;gap:12px;display:grid}.esim-signal-copy h2{max-width:760px;margin:0;font-size:clamp(1.5rem,3vw,2.4rem);line-height:1.05}.esim-signal-copy p{max-width:720px;color:var(--muted);margin:0;line-height:1.55}.esim-signal-copy .button{width:fit-content;margin-top:6px}.esim-plan-panel{border-radius:var(--radius);background:#f4f8f7;align-content:start;gap:14px;min-width:0;padding:16px;display:grid}.esim-feature-plan{gap:5px;display:grid}.esim-feature-plan span,.esim-plan-row span{color:var(--muted);font-size:.84rem;font-weight:700}.esim-feature-plan strong{font-size:1.7rem;line-height:1}.esim-feature-plan p{color:var(--muted);margin:0;line-height:1.45}.esim-plan-list{gap:8px;display:grid}.esim-plan-row{border-top:1px solid #10141f14;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 0;display:grid}.esim-plan-row div{gap:3px;min-width:0;display:grid}.esim-plan-row strong,.esim-plan-row span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.esim-plan-row b{font-size:1rem}.destination-stack-section{margin:18px auto 34px}.destination-stack-panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-strong);grid-template-columns:minmax(0,.72fr) minmax(360px,1fr);align-items:start;gap:18px;padding:18px;display:grid;box-shadow:0 18px 36px #10141f14}.destination-stack-copy{align-content:start;gap:12px;display:grid}.destination-stack-copy h2{margin:0;font-size:clamp(1.45rem,2.4vw,2.05rem);line-height:1.08}.destination-stack-copy p,.destination-stack-copy small{color:var(--muted);margin:0;line-height:1.52}.destination-stack-copy small{font-size:.86rem;font-weight:750}.destination-stack-signals{border-radius:var(--radius);background:#10141f14;border:1px solid #10141f14;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.destination-signal-row{background:#fbfaf6;grid-template-columns:30px minmax(0,1fr);gap:10px;min-width:0;padding:14px;display:grid}.destination-signal-row svg{color:var(--teal-dark);margin-top:2px}.destination-signal-row div{gap:4px;min-width:0;display:grid}.destination-signal-row span{color:var(--muted);font-size:.78rem;font-weight:850}.destination-signal-row strong{overflow-wrap:anywhere;font-size:1.05rem;line-height:1.22}.destination-signal-row p{color:var(--muted);margin:0;font-size:.88rem;line-height:1.42}.destination-stack-sequence{border-radius:var(--radius);background:#10141f14;border:1px solid #10141f14;grid-column:1/-1;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;margin:0;padding:0;list-style:none;display:grid;overflow:hidden}.destination-stack-sequence li{background:#fffdfa;grid-template-columns:30px minmax(0,1fr);gap:10px;min-width:0;padding:14px;display:grid}.destination-step-rank{color:#fff;background:var(--teal);border-radius:999px;place-items:center;width:30px;height:30px;font-size:.84rem;font-weight:900;display:grid}.destination-stack-sequence div{gap:5px;min-width:0;display:grid}.destination-stack-sequence strong{font-size:.98rem;line-height:1.18}.destination-stack-sequence p,.destination-stack-sequence small{color:var(--muted);margin:0;line-height:1.42}.destination-stack-sequence p{font-size:.86rem}.destination-stack-sequence small{font-size:.75rem;font-weight:800}.destination-stack-actions{flex-wrap:wrap;grid-column:1/-1;gap:10px;padding-top:2px;display:flex}.module-icon{border-radius:var(--radius);width:38px;height:38px;color:var(--ink);background:#d6a23f2e;place-items:center;display:grid}.module-card h3,.metric-card h3,.airport-row h3{margin:0;font-size:1rem}.program-list{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.program-list li{border-radius:var(--radius);color:var(--muted);background:#f2efe8;padding:6px 8px;font-size:.78rem;font-weight:750}.route-hero{grid-template-columns:minmax(0,1fr) minmax(360px,.74fr);align-items:stretch;gap:28px;padding:34px 0 28px;display:grid}.route-hero-copy{flex-direction:column;justify-content:center;min-height:430px;display:flex}.route-actions{flex-wrap:wrap;gap:10px;margin-top:26px;display:flex}.route-media{border-radius:var(--radius);min-height:430px;box-shadow:var(--shadow);background:#dce7e8;position:relative;overflow:hidden}.route-map-media{background:#dbe8ed}.route-hero-map{position:absolute;inset:0}.route-hero-map .route-card-map{border-bottom:0;height:100%}.route-hero-map .route-card-map-wash{fill:#ffffff0a}.route-map-caption{color:var(--ink);background:#ffffffdb;box-shadow:0 8px 18px #233e521f}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:16px auto 30px;display:grid}.metric-card{gap:8px;padding:16px;display:grid}.metric-card strong{font-size:1.45rem;line-height:1}.two-column{grid-template-columns:minmax(0,1fr) minmax(310px,.58fr);align-items:start;gap:18px;display:grid}.deal-list,.airport-list,.faq-list,.gate-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.deal-row,.airport-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:15px;display:grid}.deal-row strong{font-size:1.2rem}.airport-row{grid-template-columns:52px minmax(0,1fr)}.gate-row,.related-route{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-strong)}.gate-row{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:14px;padding:14px;display:grid}.gate-row strong{margin-bottom:5px;display:block}.gate-score{border-radius:999px;justify-content:center;align-items:center;min-width:58px;padding:7px 9px;font-size:.78rem;font-weight:900;display:inline-flex}.gate-score.pass{color:#3f5200;background:#b6d35e61}.gate-score.hold{color:#7d2c1e;background:#e05d3f21}.related-route{gap:10px;padding:16px;transition:transform .16s,box-shadow .16s;display:grid}.related-route:hover{transform:translateY(-2px);box-shadow:0 14px 28px #10141f1a}.related-route strong{font-size:1.05rem}.related-route p{color:var(--muted);margin:0;line-height:1.48}.airport-code{border-radius:var(--radius);color:#fff;background:var(--teal);place-items:center;width:52px;height:52px;font-weight:900;display:grid}.airport-code:hover{background:var(--teal-dark)}.stack-section{margin:36px auto}.flight-map-section{margin-top:12px}.flight-map-card{border-radius:var(--radius);background:#dbe8ed;border:1px solid #c4d0d8;overflow:hidden;box-shadow:0 24px 52px #17263421}.flight-map-svg{aspect-ratio:16/9;width:100%;display:block}.flight-map-tile-layer{opacity:1}.flight-map-tile-wash{fill:#ffffff24}.flight-map-land-layer{opacity:.7;filter:drop-shadow(0 6px 12px #49586312)}.flight-map-land{fill:#fffc;stroke:#9ca9b257;stroke-linejoin:round;stroke-width:1.05px}.flight-map-place-label{fill:#4a576242;letter-spacing:.05em;font-size:11px;font-weight:850}.flight-map-place-label.city{fill:#1d2e3c61;letter-spacing:0;text-transform:none;font-size:10px;font-weight:800}.flight-map-place-label.water{fill:#235d843d;letter-spacing:.11em;font-size:13px;font-style:italic;font-weight:850}.flight-map-arc-shadow,.flight-map-arc-halo,.flight-map-arc,.flight-map-arc-highlight{fill:none;stroke-linecap:round}.flight-map-arc-shadow{stroke:#006fee3d;stroke-width:24px;filter:blur(2.5px)}.flight-map-arc-halo{stroke:#007aff57;stroke-width:13px}.flight-map-arc{stroke:#087bff;stroke-dasharray:1;stroke-dashoffset:1px;stroke-width:6.6px;filter:drop-shadow(0 0 9px #0077ff94);animation:3.6s ease-in-out .3s forwards flightMapDraw}.flight-map-arc-highlight{stroke:#ffffffdb;stroke-dasharray:1;stroke-dashoffset:1px;stroke-width:2.1px;animation:3.6s ease-in-out .36s forwards flightMapDraw}.flight-map-marker circle:first-child{fill:#fff;stroke:#087bff;stroke-width:4.8px;transform-box:fill-box;transform-origin:50%;animation:1.2s ease-in-out 1s both flightMapPulse}.flight-map-marker circle:last-child{fill:#087bff}.flight-map-marker.destination circle:first-child{animation-delay:5.5s}.flight-map-plane{opacity:1;filter:drop-shadow(0 10px 14px #0050b461)}.flight-map-plane path{fill:#fff;stroke:#087bff;stroke-linejoin:round;stroke-width:5.8px}.flight-map-title-card rect,.flight-map-city-tag rect{fill:#ffffffed;stroke:#c4d0d880;filter:drop-shadow(0 12px 24px #263a4a26)}.flight-map-title-kicker{fill:#5b6872;font-size:13px;font-weight:800}.flight-map-title-main{fill:#171b22;letter-spacing:0;font-weight:950}.flight-map-title-blue{fill:#087bff}.flight-map-title-rule{stroke:#087bff;stroke-linecap:round;stroke-width:4px}.flight-map-title-distance{fill:#26323c;font-size:14px;font-weight:850}.flight-map-city-tag{opacity:0;animation:.7s 1s forwards flightMapLabelIn}.flight-map-city-tag.destination{animation-delay:5.5s}.flight-map-city-tag text{fill:#171b22;font-size:12.5px;font-weight:900}.flight-map-city-tag-code{fill:#687780;font-size:9.3px;font-weight:850}.flight-map-footer{fill:#10141f94;opacity:0;font-size:17px;font-weight:850;animation:.7s 7s forwards flightMapFooterIn}.flight-map-attribution{fill:#10141f6b;font-size:10px;font-weight:800}@keyframes flightMapDraw{to{stroke-dashoffset:0}}@keyframes flightMapLabelIn{0%{opacity:0}to{opacity:1}}@keyframes flightMapPulse{0%{transform:scale(1)}50%{transform:scale(1.18)}to{transform:scale(1)}}@keyframes flightMapPlaneShow{0%,to{opacity:1}}@keyframes flightMapFooterIn{to{opacity:1}}.stack-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.faq-list details{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-strong);padding:16px}.faq-list summary{cursor:pointer;font-weight:800}.faq-list p{color:var(--muted);margin:12px 0 0;line-height:1.55}.footer{color:var(--muted);border-top:1px solid #10141f1a;margin-top:42px;padding:32px 0}.footer-inner{justify-content:space-between;align-items:center;gap:18px;width:min(1180px,100% - 32px);margin:0 auto;font-size:.9rem;display:flex}.footer-links{gap:14px;display:flex}.not-found{text-align:center;place-items:center;min-height:62vh;display:grid}.ops-main{padding-bottom:20px}.ops-hero{grid-template-columns:minmax(0,1fr) minmax(280px,.36fr);align-items:end;gap:18px;padding:34px 0 20px;display:grid}.ops-hero h1{margin:0;font-size:clamp(2.2rem,5vw,4.7rem);line-height:.98}.ops-hero p{max-width:720px;color:var(--muted);margin:16px 0 0;font-size:1.07rem;line-height:1.58}.ops-window,.ops-metric-card,.ops-table-wrap{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-strong)}.ops-window{gap:8px;padding:16px;display:grid}.ops-window span,.ops-metric-card span,.ops-window small,.ops-metric-card small,.ops-muted,.ops-signal{color:var(--muted)}.ops-window span,.ops-metric-card span{letter-spacing:.06em;text-transform:uppercase;font-size:.78rem;font-weight:850}.ops-window strong{font-size:1.08rem}.ops-metric-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;display:grid}.ops-metric-card{gap:8px;padding:16px;display:grid}.ops-metric-card svg{color:var(--teal-dark)}.ops-metric-card strong{font-size:1.85rem;line-height:1}.ops-board{margin-top:18px}.ops-readiness-grid,.ops-status-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:14px;display:grid}.ops-status-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-strong);gap:10px;min-width:0;padding:16px;display:grid}.ops-status-card>span:not(.ops-action){color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.78rem;font-weight:850}.ops-status-card strong{font-size:1.08rem;line-height:1.32}.ops-status-card p,.ops-status-card small{color:var(--muted);margin:0;line-height:1.48}.ops-status-card code{color:#254044;background:#f2efe8;border-radius:5px;padding:2px 5px}.ops-detail-hero{gap:12px;padding:30px 0 18px;display:grid}.ops-detail-hero .button{width:fit-content}.ops-detail-hero h1{max-width:900px;margin:0;font-size:clamp(2.1rem,4.8vw,4.5rem);line-height:1}.ops-detail-hero p:not(.eyebrow){max-width:820px;color:var(--muted);margin:0;font-size:1.05rem;line-height:1.55}.ops-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:18px;display:grid}.ops-detail-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-strong);min-width:0;padding:16px}.ops-evidence-list,.ops-check-list,.ops-link-stack{gap:10px;display:grid}.ops-evidence-row{border-top:1px solid #10141f14;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px;padding-top:10px;display:grid}.ops-evidence-row:first-child{border-top:0;padding-top:0}.ops-evidence-row p,.ops-check-list{color:var(--muted);margin:0;line-height:1.5}.ops-check-list{padding-left:18px}.ops-link-stack .button{justify-content:space-between;width:100%}.ops-url-strong{overflow-wrap:anywhere;font-size:1.02rem!important;line-height:1.2!important}.ops-table-wrap{overflow-x:auto}.ops-table{border-collapse:collapse;width:100%;min-width:1400px}.affiliate-capability-table{min-width:1560px}.seo-feedback-table{min-width:1320px}.publishing-action-table{min-width:1760px}.pipeline-health-table{min-width:1680px}.search-console-table{min-width:1180px}.attribution-gap-table{min-width:1280px}.route-attribution-table{min-width:1120px}.trip-stack-category-table{min-width:1420px}.trip-stack-table{min-width:1540px}.expansion-table{min-width:1720px}.route-attribution-wrap{margin-top:14px}.ops-table th,.ops-table td{text-align:left;vertical-align:middle;border-bottom:1px solid #10141f14;padding:14px 16px}.ops-table th{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.74rem;font-weight:900}.ops-table tbody tr:last-child td{border-bottom:0}.ops-table td:first-child{min-width:220px}.affiliate-capability-table td:first-child{min-width:210px}.affiliate-capability-table th:nth-child(6),.affiliate-capability-table td:nth-child(6){min-width:300px}.affiliate-capability-table th:nth-child(7),.affiliate-capability-table td:nth-child(7){min-width:320px}.trip-stack-table th:nth-child(5),.trip-stack-table td:nth-child(5),.trip-stack-category-table th:nth-child(6),.trip-stack-category-table td:nth-child(6){min-width:340px}.expansion-table th:nth-child(5),.expansion-table td:nth-child(5),.expansion-table th:nth-child(6),.expansion-table td:nth-child(6),.expansion-table th:nth-child(7),.expansion-table td:nth-child(7),.expansion-table th:nth-child(8),.expansion-table td:nth-child(8){min-width:260px}.attribution-gap-table th:nth-child(5),.attribution-gap-table td:nth-child(5),.route-attribution-table th:nth-child(5),.route-attribution-table td:nth-child(5){min-width:320px}.publishing-action-table th:nth-child(6),.publishing-action-table td:nth-child(6),.publishing-action-table th:nth-child(8),.publishing-action-table td:nth-child(8),.pipeline-health-table th:nth-child(7),.pipeline-health-table td:nth-child(7),.pipeline-health-table th:nth-child(8),.pipeline-health-table td:nth-child(8){min-width:330px}.ops-path{color:#254044;white-space:nowrap;background:#008c8f1a;border-radius:6px;padding:5px 7px;font-size:.78rem;display:inline-block}.ops-table td:first-child strong,.ops-table td:first-child span,.publishing-table td:nth-child(6) .ops-muted,.publishing-table td:nth-child(7) .ops-muted,.trip-stack-category-table td:nth-child(3) .ops-muted,.trip-stack-category-table td:nth-child(4) strong,.trip-stack-category-table td:nth-child(4) span,.trip-stack-table td:nth-child(2) strong,.trip-stack-table td:nth-child(2) span,.trip-stack-table td:nth-child(6) strong,.trip-stack-table td:nth-child(6) span{display:block}.ops-table td:first-child span,.publishing-table td:nth-child(6) .ops-muted,.publishing-table td:nth-child(7) .ops-muted,.trip-stack-category-table td:nth-child(3) .ops-muted,.trip-stack-category-table td:nth-child(4) span,.trip-stack-table td:nth-child(2) span,.trip-stack-table td:nth-child(6) span{color:var(--muted);margin-top:4px;font-size:.86rem;font-weight:750}.publishing-table td:nth-child(7) .ops-action{margin-top:7px}.ops-action,.ops-score,.ops-signal,.ops-open-link{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.ops-action{color:#254044;background:#008c8f1f;border-radius:999px;padding:6px 9px;font-size:.78rem;font-weight:900}.ops-action.success{color:#3f5200;background:#b6d35e61}.ops-action.attention{color:#785200;background:#d6a23f38}.ops-action.hold{color:#7d2c1e;background:#e05d3f21}.ops-score{color:var(--ink);font-weight:900}.ops-score svg,.ops-signal svg{color:var(--teal-dark)}.ops-open-link{border:1px solid var(--line);border-radius:var(--radius);width:44px;height:40px;color:var(--ink);background:#fff;justify-content:center}.ops-open-link:hover{background:#f0eee8}.ops-link-pair{gap:8px;display:inline-flex}.ops-empty-state{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-strong);gap:8px;padding:18px;display:grid}.ops-empty-state p{color:var(--muted);margin:0;line-height:1.5}.ops-empty-state code{background:#f2efe8;border-radius:5px;padding:2px 5px}.airport-friction-section{padding:34px 0}.airport-friction-empty,.airport-friction-hero,.airport-friction-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-strong);box-shadow:0 12px 28px #10141f12}.airport-friction-empty{justify-content:space-between;align-items:center;gap:18px;padding:24px;display:flex}.airport-friction-empty h2,.airport-friction-empty p{margin:0}.airport-friction-empty p{color:var(--muted);margin-top:8px;line-height:1.55}.airport-friction-hero{grid-template-columns:minmax(0,1fr) 156px auto;align-items:center;gap:18px;padding:20px;display:grid}.airport-friction-hero h3,.airport-friction-card h3{margin:10px 0 0;font-size:1.2rem;line-height:1.25}.airport-friction-hero p,.airport-friction-card p{color:var(--muted);margin:8px 0 0;line-height:1.5}.airport-friction-score{border-radius:var(--radius);color:var(--teal-dark);text-align:center;background:#e8f6f5;border:1px solid #008c8f2e;justify-items:center;gap:3px;padding:14px;display:grid}.airport-friction-score strong{color:var(--ink);font-size:2rem;line-height:1}.airport-friction-score span{text-transform:uppercase;font-size:.77rem;font-weight:900}.airport-friction-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:16px;display:grid}.airport-friction-card{grid-template-rows:auto auto auto 1fr auto auto;min-height:330px;padding:18px;display:grid}.airport-friction-card-top,.airport-friction-card-footer,.airport-friction-airports span{align-items:center;display:flex}.airport-friction-card-top{justify-content:space-between;gap:10px}.airport-friction-level,.airport-friction-score-mini{white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;font-size:.75rem;font-weight:900;display:inline-flex}.airport-friction-level{color:#254044;background:#008c8f1f;padding:6px 9px}.airport-friction-level.low{color:#3f5200;background:#b6d35e61}.airport-friction-level.moderate{color:#785200;background:#d6a23f38}.airport-friction-level.high{color:#7d2c1e;background:#e05d3f21}.airport-friction-score-mini{width:34px;height:30px;color:var(--ink);background:#f2efe8}.airport-friction-airports{gap:8px;margin-top:14px;display:grid}.airport-friction-airports span{min-width:0;color:var(--muted);gap:7px;font-size:.86rem;font-weight:750}.airport-friction-card .stack-evidence-list{margin-top:14px}.airport-friction-card-footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:12px;margin-top:16px;padding-top:14px;font-size:.86rem;font-weight:850}.airport-friction-card-footer span,.airport-friction-card-footer a{align-items:center;gap:6px;display:inline-flex}.airport-friction-card-footer a{color:var(--teal-dark)}@media (max-width:980px){.hero,.route-hero,.esim-signal-card,.destination-stack-panel,.route-decision-panel,.two-column,.route-watch-form,.ops-detail-grid,.ops-readiness-grid,.ops-status-grid,.ops-hero{grid-template-columns:1fr}.hero-copy,.route-hero-copy,.hero-media,.route-media{min-height:unset}.hero-media,.route-media{aspect-ratio:16/10}.route-grid,.hub-grid,.stack-grid,.module-grid,.partner-grid,.trip-stack-intelligence,.destination-stack-sequence,.route-watch-grid,.metric-grid,.flexible-date-grid,.fare-watch-grid,.fare-watch-evidence,.ops-metric-grid,.airport-friction-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.airport-friction-hero{grid-template-columns:1fr}.flight-search-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:720px){.topbar-inner,.section-header,.footer-inner{flex-direction:column;align-items:flex-start}.nav-links{width:100%;padding-bottom:4px;overflow-x:auto}.hero,.route-hero{padding-top:26px}.search-grid,.flight-search-grid,.route-grid,.hub-grid,.module-grid,.partner-grid,.trip-stack-intelligence,.destination-stack-signals,.destination-stack-sequence,.route-decision-signals,.metric-grid,.stack-grid,.route-watch-grid,.flexible-date-grid,.fare-watch-grid,.fare-watch-evidence,.ops-metric-grid,.airport-friction-grid{grid-template-columns:1fr}.airport-friction-empty{flex-direction:column;align-items:flex-start}.route-watch-actions{justify-content:flex-start}.deal-row{grid-template-columns:1fr}.button,.ops-detail-hero .button,.esim-signal-copy .button{width:100%}.esim-plan-panel{padding:14px}.tpwl-widget-brand{max-width:calc(100% - 138px);top:16px;left:16px}.tpwl-widget-route{display:none}.tpwl-widget-fallback{flex-direction:column;align-items:flex-start}.button.icon-only{width:48px;min-width:48px}.search-actions{align-items:stretch}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:.01ms!important}.flight-map-arc,.flight-map-arc-highlight{stroke-dashoffset:0}.flight-map-city-tag,.flight-map-footer{opacity:1}.flight-map-plane,.route-card-map-plane{display:none}}
