:root{--navy:#082b45;--paper:#f7f6f2;--ink:#173042;--muted:#62717b;--line:#d7e1e3;--orange:#f15b2a;--teal:#087f6a}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--paper)}body{background:var(--paper);color:var(--ink);margin:0;font-family:Arial,Noto Sans,PingFang SC,Microsoft YaHei,sans-serif}a{color:inherit;text-decoration:none}.hero-ink{color:#fff;background:radial-gradient(circle at 83% 5%, #145473 0, transparent 25rem), linear-gradient(145deg, var(--navy), #0b3653 65%, #0a304b);overflow:hidden}.site-header,.hero,.search-stage,.route-section,.principles-section,.site-footer{width:min(1180px,100% - 3rem);margin:0 auto}.site-header{border-bottom:1px solid #ffffff26;justify-content:space-between;align-items:center;min-height:76px;display:flex}.brand{letter-spacing:-.03em;align-items:center;gap:.55rem;font-size:1.05rem;font-weight:760;display:inline-flex}.brand-mark{border:1px solid #fff9;border-radius:50%;place-items:center;width:1.65rem;height:1.65rem;font-family:Georgia,serif;font-size:.9rem;display:inline-grid}.brand-muted{color:#9ec1ce;font-weight:500}nav{color:#d7e8ed;align-items:center;gap:1.5rem;font-size:.9rem;display:flex}nav a:hover{color:#fff}.nav-coming{color:#81aab9;cursor:default}.hero{grid-template-columns:minmax(0,1fr) 310px;gap:3rem;padding:5.2rem 0 3.1rem;display:grid;position:relative}.hub-hero-ink{padding-bottom:1px}.hub-hero{width:min(1180px,100% - 3rem);margin:0 auto;padding:1.4rem 0 3.1rem}.breadcrumbs{color:#a8c4cc;gap:.6rem;margin-bottom:3rem;font-size:.78rem;display:flex}.breadcrumbs a{color:#d7e8ed;text-underline-offset:.18rem;text-decoration:underline}.hero-copy{z-index:1;max-width:690px}.eyebrow{color:#aee3d8;letter-spacing:.13em;text-transform:uppercase;align-items:center;gap:.55rem;margin:0 0 1rem;font-size:.72rem;font-weight:800;display:flex}.eyebrow.ink{color:var(--teal)}.signal-dot{background:currentColor;border-radius:50%;width:.48rem;height:.48rem;box-shadow:0 0 0 .3rem #aee3d81f}h1,h2,p{margin-top:0}h1{color:#fff;letter-spacing:-.065em;max-width:720px;margin-bottom:1.35rem;font-family:Georgia,Noto Serif SC,serif;font-size:clamp(3rem,6vw,5.9rem);font-weight:500;line-height:.96}.hero-summary{color:#d7e8ed;max-width:610px;margin-bottom:1.55rem;font-size:clamp(1rem,1.5vw,1.16rem);line-height:1.65}.trust-line{color:#aee3d8;align-items:center;gap:.5rem;font-size:.82rem;font-weight:700;display:inline-flex}.trust-line span{color:var(--orange)}.hero-route-art{color:#77b2c3;opacity:.85;align-self:end;min-height:160px;position:relative}.hero-route-art svg{stroke-width:1.5px;width:100%;overflow:visible}.route-node{border:2px solid #d2f2e9;border-radius:50%;width:.7rem;height:.7rem;position:absolute;box-shadow:0 0 0 .4rem #d2f2e91a}.node-one{bottom:14%;left:1%}.node-two{top:9%;right:5%}.search-stage{z-index:2;margin-bottom:2.2rem;position:relative}.search-shell{color:var(--ink);background:#fff;border:1px solid #ffffff5e;border-radius:16px;padding:1.25rem;box-shadow:0 25px 65px #001e3052}.custom-flight-search button,.custom-flight-search input{font:inherit}.search-form-topline{justify-content:space-between;align-items:center;gap:1rem;padding:.15rem .2rem 1rem;display:flex}.search-status{color:var(--teal);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:.55rem;font-size:.71rem;font-weight:800;display:inline-flex}.search-status .signal-dot{width:.43rem;height:.43rem}.flight-only-badge{border:1px solid var(--line);color:var(--muted);letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:.35rem .6rem;font-size:.68rem;font-weight:800}.trip-tabs{background:#edf1f3;border-radius:.75rem;grid-template-columns:repeat(3,1fr);gap:.2rem;margin-bottom:1rem;padding:.25rem;display:inline-grid}.trip-tabs button{min-width:128px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:.58rem;padding:.7rem 1rem;font-weight:800}.trip-tabs button[aria-selected=true]{background:var(--navy);color:#fff;box-shadow:0 3px 10px #082b452e}.flight-route-grid{grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr) minmax(155px,.62fr) minmax(155px,.62fr);align-items:end;gap:.65rem;display:grid}.flight-field{color:#465b69;letter-spacing:.07em;text-transform:uppercase;gap:.4rem;min-width:0;font-size:.69rem;font-weight:800;display:grid;position:relative}.flight-field>input{width:100%;min-height:58px;color:var(--ink);letter-spacing:normal;text-transform:none;background:#f9fafb;border:1px solid #cfdadd;border-radius:.65rem;outline:none;padding:.8rem .95rem;font-size:.95rem;font-weight:650;transition:border-color .15s,box-shadow .15s,background .15s}.flight-field>input:focus{border-color:var(--teal);background:#fff;box-shadow:0 0 0 3px #087f6a1f}.flight-field>input::placeholder{color:#9ca9b1;font-weight:500}.date-field>input{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.airport-results{z-index:20;border:1px solid var(--line);letter-spacing:normal;text-transform:none;background:#fff;border-radius:.7rem;min-width:270px;position:absolute;top:calc(100% + .35rem);left:0;right:0;overflow:hidden;box-shadow:0 16px 35px #082b452e}.airport-results button{width:100%;color:var(--ink);text-align:left;cursor:pointer;background:#fff;border:0;border-bottom:1px solid #edf1f2;justify-content:space-between;align-items:center;gap:1rem;padding:.72rem .8rem;display:flex}.airport-results button:last-child{border-bottom:0}.airport-results button:hover{background:#f2f8f6}.airport-results button span{gap:.15rem;display:grid}.airport-results button strong{font-size:.86rem}.airport-results button small{color:var(--muted);font-size:.72rem;font-weight:500}.airport-results button b{color:var(--teal);font-size:.75rem}.airport-message{color:var(--muted);padding:.85rem;font-size:.78rem;font-weight:600}.swap-airports{border:1px solid var(--line);width:42px;height:42px;color:var(--teal);cursor:pointer;background:#fff;border-radius:50%;margin-bottom:.5rem;font-size:1.1rem}.swap-airports:hover{border-color:var(--teal);background:#f2f8f6}.search-actions{grid-template-columns:minmax(0,1fr) minmax(210px,.34fr);align-items:end;gap:.65rem;margin-top:.8rem;display:grid}.passenger-control{gap:.4rem;display:grid;position:relative}.control-label{color:#465b69;letter-spacing:.07em;text-transform:uppercase;font-size:.69rem;font-weight:800}.passenger-trigger{min-height:58px;color:var(--ink);text-align:left;cursor:pointer;background:#f9fafb;border:1px solid #cfdadd;border-radius:.65rem;justify-content:space-between;align-items:center;gap:1rem;padding:.8rem .95rem;font-weight:650;display:flex}.passenger-trigger:hover,.passenger-trigger[aria-expanded=true]{border-color:var(--teal);background:#fff}.passenger-trigger b{color:var(--teal)}.passenger-popover{z-index:25;border:1px solid var(--line);background:#fff;border-radius:.8rem;width:min(430px,100%);padding:1rem;position:absolute;top:calc(100% + .45rem);left:0;box-shadow:0 18px 40px #082b4533}.passenger-row{justify-content:space-between;align-items:center;gap:1rem;padding:.65rem 0;display:flex}.passenger-row>span{gap:.2rem;display:grid}.passenger-row strong{font-size:.88rem}.passenger-row small{color:var(--muted);font-size:.72rem}.passenger-row>div{align-items:center;gap:.65rem;display:flex}.passenger-row button{width:32px;height:32px;color:var(--teal);cursor:pointer;background:#fff;border:1px solid #bed0d4;border-radius:50%;font-size:1.15rem}.passenger-row button:disabled{opacity:.32;cursor:default}.passenger-row b{text-align:center;min-width:1rem}.cabin-options{border:0;border-top:1px solid var(--line);gap:1.25rem;margin:.65rem 0 0;padding:.9rem 0;display:flex}.cabin-options legend{float:left;width:100%;color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.7rem;font-size:.7rem;font-weight:800}.cabin-options label{align-items:center;gap:.4rem;font-size:.84rem;font-weight:700;display:inline-flex}.cabin-options input{accent-color:var(--orange)}.passenger-done{background:var(--navy);color:#fff;cursor:pointer;border:0;border-radius:.5rem;width:100%;padding:.65rem;font-weight:800}.flight-search-submit{background:var(--orange);color:#fff;cursor:pointer;border:0;border-radius:.65rem;justify-content:center;align-items:center;gap:.65rem;min-height:58px;padding:.85rem 1.2rem;font-weight:800;display:flex;box-shadow:0 7px 16px #f15b2a38}.flight-search-submit:hover{background:#d94a1b}.flight-search-submit span{font-size:1.1rem}.flight-search-error{color:#a83b1d;margin:.75rem 0 0;font-size:.8rem;font-weight:700}.search-provider-note{color:var(--muted);margin:.85rem .1rem 0;font-size:.72rem;line-height:1.45}.multi-city-list{gap:.75rem;display:grid}.multi-city-leg{border:1px solid var(--line);background:#fbfcfc;border-radius:.75rem;grid-template-columns:70px minmax(0,1fr) minmax(0,1fr) minmax(160px,.55fr) 34px;align-items:end;gap:.65rem;padding:.85rem;display:grid;position:relative}.leg-number{color:var(--teal);text-transform:uppercase;align-self:center;font-size:.72rem;font-weight:800}.remove-leg{width:32px;height:32px;color:var(--orange);cursor:pointer;background:#fff;border:1px solid #edc7ba;border-radius:50%;margin-bottom:.75rem;font-size:1.1rem}.add-leg{color:var(--teal);cursor:pointer;background:#f2f8f6;border:1px solid #b9d8d1;border-radius:.55rem;justify-self:start;padding:.65rem .85rem;font-weight:800}.route-section{padding-top:5.2rem;padding-bottom:6rem}.section-heading{max-width:645px}h2{letter-spacing:-.045em;margin-bottom:1rem;font-family:Georgia,Noto Serif SC,serif;font-size:clamp(2rem,3vw,3.15rem);font-weight:500;line-height:1.04}.section-heading>p:last-child{color:var(--muted);line-height:1.6}.route-list{border-top:1px solid var(--line);margin-top:2.2rem}.route-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(260px,1fr) minmax(160px,.65fr) auto;align-items:center;gap:1.5rem;padding:1.3rem .2rem;display:grid}.route-row>div{font-size:1.05rem}.route-row strong{font-weight:700}.route-arrow{color:var(--orange);padding:0 .7rem}.route-row p{color:var(--muted);margin:0;font-size:.9rem}.route-row a{color:var(--teal);font-size:.86rem;font-weight:800}.route-row a:hover{color:var(--orange)}.hub-route-section{padding-top:5.2rem}.hub-note{color:var(--muted);margin:1.6rem 0 0;font-size:.86rem}.hub-note a{color:var(--teal);font-weight:800}.principles-section{border-top:1px solid var(--line);padding:5.8rem 0}.principles-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;display:grid}.principles-grid>div{border-top:3px solid var(--navy);padding:1.2rem 1.2rem 1.2rem 0}.principles-grid span{color:var(--orange);font-family:Georgia,serif;font-size:1.25rem}.principles-grid h2{margin:.55rem 0 .65rem;font-size:1.7rem}.principles-grid p{color:var(--muted);margin:0;font-size:.94rem;line-height:1.6}.site-footer{border-top:1px solid var(--line);color:var(--ink);justify-content:space-between;align-items:flex-end;gap:2rem;padding:2rem 0 3rem;display:flex}.site-footer .brand-mark{border-color:var(--ink);vertical-align:middle;margin-right:.45rem}.site-footer p{max-width:560px;color:var(--muted);margin:.85rem 0 0;font-size:.76rem;line-height:1.55}.locale-links{gap:.85rem;display:flex}.locale-links a{color:var(--teal);font-size:.82rem;font-weight:800}.locale-links a[aria-current=page]{color:var(--ink);text-underline-offset:.25rem;text-decoration:underline}.not-found{width:min(640px,100% - 3rem);margin:14vh auto}.not-found p:not(.eyebrow){color:var(--muted);line-height:1.6}.not-found a{background:var(--orange);color:#fff;border-radius:.45rem;padding:.8rem 1rem;font-weight:800;display:inline-block}@media (max-width:980px){.flight-route-grid{grid-template-columns:minmax(0,1fr) 40px minmax(0,1fr)}.flight-route-grid .date-field{grid-column:span 1}.flight-route-grid .date-field:first-of-type{grid-column:1/2}.flight-route-grid .date-field:last-child{grid-column:3/4}.multi-city-leg{grid-template-columns:58px minmax(0,1fr) minmax(0,1fr)}.multi-city-leg .date-field{grid-column:2/3}.remove-leg{grid-area:2/3;justify-self:end}}@media (max-width:740px){.site-header,.hero,.search-stage,.route-section,.principles-section,.site-footer,.hub-hero{width:min(100% - 2rem,1180px)}.site-header{min-height:66px}nav{gap:.8rem;font-size:.76rem}.nav-coming{display:none}.hero{grid-template-columns:1fr;gap:1rem;padding:4.2rem 0 2.5rem}.hub-hero{padding:1.1rem 0 2.5rem}.breadcrumbs{margin-bottom:2.2rem}.hero-route-art{height:94px;min-height:94px}.hero-route-art svg{position:absolute;bottom:0}h1{font-size:clamp(3.1rem,15vw,4.45rem)}.hero-summary{font-size:1rem}.search-stage{margin-bottom:1.5rem}.search-shell{border-radius:12px;padding:.75rem}.search-form-topline{padding-bottom:.75rem}.flight-only-badge{display:none}.trip-tabs{width:100%;display:grid}.trip-tabs button{min-width:0;padding:.7rem .45rem;font-size:.78rem}.flight-route-grid{grid-template-columns:1fr 38px 1fr;gap:.5rem}.flight-route-grid .date-field{grid-column:span 1}.flight-route-grid .date-field:first-of-type{grid-column:1/2}.flight-field>input,.passenger-trigger{min-height:54px;padding:.72rem;font-size:.86rem}.airport-results{min-width:min(300px,100vw - 3.5rem)}.search-actions{grid-template-columns:1fr}.flight-search-submit{min-height:54px}.passenger-popover{width:auto;position:fixed;inset:auto 1rem 1rem}.multi-city-leg{grid-template-columns:1fr 1fr;padding:.7rem}.leg-number{grid-column:1/-1}.multi-city-leg .date-field{grid-column:1/2}.remove-leg{grid-area:3/2}.route-section{padding-top:4rem;padding-bottom:4rem}.route-row{grid-template-columns:1fr auto;gap:.45rem}.route-row p{grid-area:2/1/auto/-1}.route-row a{grid-area:1/2}.principles-section{padding:4rem 0}.principles-grid{grid-template-columns:1fr;gap:1.6rem}.site-footer{display:block}.locale-links{margin-top:1.2rem}}@media (max-width:520px){.flight-route-grid{grid-template-columns:1fr}.swap-airports{justify-self:center;margin:-.1rem 0;transform:rotate(90deg)}.flight-route-grid .date-field,.flight-route-grid .date-field:first-of-type,.flight-route-grid .date-field:last-child{grid-column:1}.multi-city-leg{grid-template-columns:1fr}.multi-city-leg .date-field,.remove-leg{grid-column:1}.remove-leg{grid-row:auto;justify-self:end;margin:-.15rem 0 0}}
