@font-face{font-family:"Figtree";src:url("fonts/Figtree-Variable.ttf") format("truetype");font-style:normal;font-weight:300 900;font-display:swap}

:root{
  --font-sans:"Figtree",ui-sans-serif,system-ui,sans-serif;
  --void:#03050c;
  --space:#070b14;
  --panel:#0d121c;
  --panel-2:#121926;
  --ink:#e9eef5;
  --ink-2:#c2ccd8;
  --muted:#7d8a9a;
  --line:rgba(233,238,245,.1);
  --line-strong:rgba(233,238,245,.18);
  --star:#f2f6fb;
  --accent:#b7c7d8;
  --accent-soft:rgba(183,199,216,.12);
  --good:#7dba9a;
  --warn:#d4a27f;
  --red:#d46a63;
  --radius:2px;
  --shell:min(1080px,calc(100% - 48px));
  --header-h:64px;
  font-synthesis:none;
  color-scheme:dark;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;font-family:var(--font-sans);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
body{
  margin:0;
  min-height:100vh;
  background:var(--void);
  color:var(--ink);
  font-family:var(--font-sans);
  font-size:16px;
  line-height:1.55;
  font-variation-settings:"wght" 420;
  position:relative;
}
body:before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-2;
  pointer-events:none;
  background:
    radial-gradient(1200px 700px at 50% -10%,rgba(90,120,170,.14),transparent 60%),
    radial-gradient(800px 500px at 90% 20%,rgba(60,80,120,.08),transparent 55%),
    linear-gradient(180deg,var(--void) 0%,var(--space) 45%,#050810 100%);
}
#starfield{
  position:fixed;
  inset:0;
  width:100%;
  height:100%;
  z-index:-1;
  pointer-events:none;
  opacity:.85;
}
body,button,input,select,textarea{font:inherit;font-family:var(--font-sans);letter-spacing:inherit;color:inherit}
a{color:inherit;text-decoration:none}
button,a,input,select,textarea{outline-offset:3px}
img{max-width:100%;display:block}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{text-wrap:balance;font-variation-settings:"wght" 560;letter-spacing:-.03em;font-weight:560}
p{text-wrap:pretty}
.shell{width:var(--shell);margin-inline:auto}

.skip-link{position:fixed;top:8px;left:8px;z-index:200;background:var(--panel);padding:10px 14px;border:1px solid var(--line-strong);border-radius:var(--radius);transform:translateY(-150%)}
.skip-link:focus{transform:none}
.demo-bar{padding:8px 20px;text-align:center;background:rgba(183,199,216,.1);border-bottom:1px solid var(--line);color:var(--ink-2);font-size:12px;font-variation-settings:"wght" 500}
.demo-bar span{text-transform:uppercase;letter-spacing:.12em;font-variation-settings:"wght" 680;color:var(--star)}

.site-header{
  position:sticky;top:0;z-index:20;
  background:rgba(3,5,12,.72);
  border-bottom:1px solid var(--line);
  backdrop-filter:blur(14px) saturate(1.1);
}
.header-inner{height:var(--header-h);display:flex;align-items:center;gap:36px}
.brand{display:inline-flex;align-items:center;gap:10px;font-size:17px;letter-spacing:.02em;font-variation-settings:"wght" 620}
.brand-mark{
  width:22px;height:22px;display:grid;place-items:center;
  border:1px solid var(--line-strong);
  color:var(--star);
  font-size:11px;font-variation-settings:"wght" 700;
  border-radius:50%;
}
.main-nav{display:flex;align-items:center;gap:24px;margin-right:auto}
.main-nav a,.account-link{font-size:13px;font-variation-settings:"wght" 500;color:var(--muted)}
.main-nav a:hover,.account-link:hover{color:var(--star)}
.header-actions{display:flex;align-items:center;gap:14px}
.inline-form{display:inline}

.button{
  border:1px solid var(--line-strong);
  background:var(--star);
  color:var(--void);
  border-radius:var(--radius);
  min-height:46px;
  padding:0 18px;
  display:inline-flex;align-items:center;justify-content:center;gap:12px;
  font-variation-settings:"wght" 650;
  letter-spacing:-.01em;
  cursor:pointer;
  transition:background .2s,border-color .2s,color .2s,opacity .2s;
}
.button:hover{background:#fff;border-color:#fff}
.button-small{min-height:36px;padding:0 12px;font-size:13px}
.button-block{width:100%}
.button-light,.button-secondary{
  background:transparent;
  color:var(--ink);
  border-color:var(--line-strong);
}
.button-light:hover,.button-secondary:hover{border-color:var(--accent);color:var(--star);background:var(--accent-soft)}
.icon-button{
  width:36px;height:36px;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:transparent;
  color:var(--ink-2);
  display:grid;place-items:center;
  cursor:pointer;
}
.icon-button:hover{border-color:var(--line-strong);color:var(--star)}

.eyebrow{
  display:block;
  margin:0 0 12px;
  font-size:11px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--muted);
  font-variation-settings:"wght" 560;
}
.eyebrow span{display:none}
.eyebrow.light{color:var(--accent)}

.hero{
  position:relative;
  min-height:calc(100svh - var(--header-h));
  min-height:calc(100vh - var(--header-h));
  display:flex;
  align-items:flex-end;
  overflow:hidden;
  padding:0 0 56px;
}
.hero-content{position:relative;z-index:2;width:100%;padding-top:96px}
.hero-brand{
  margin:0 0 20px;
  font-size:clamp(48px,8vw,92px);
  line-height:.9;
  letter-spacing:-.04em;
  font-variation-settings:"wght" 520;
  color:var(--star);
  opacity:0;
  animation:rise .9s .08s ease forwards;
}
.hero h1{
  max-width:640px;
  font-size:clamp(26px,3.4vw,40px);
  line-height:1.12;
  letter-spacing:-.03em;
  font-variation-settings:"wght" 480;
  margin:0 0 14px;
  color:var(--ink-2);
  opacity:0;
  animation:rise .9s .2s ease forwards;
}
.hero h1 em,.page-hero h1 em{font-style:normal;color:var(--star)}
.hero-lead{
  max-width:460px;
  color:var(--muted);
  font-size:16px;
  margin:0 0 32px;
  opacity:0;
  animation:rise .9s .32s ease forwards;
}
.hero .flight-search{opacity:0;animation:rise .95s .44s ease forwards}

@keyframes rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}

.flight-search{
  position:relative;
  display:grid;
  grid-template-columns:1.15fr 28px 1.15fr .9fr .9fr .72fr .8fr auto;
  align-items:end;
  gap:0;
  background:rgba(13,18,28,.78);
  border:1px solid var(--line-strong);
  padding:8px;
  border-radius:var(--radius);
  backdrop-filter:blur(10px);
}
.flight-search .field{min-width:0;padding:6px 12px;border-right:1px solid var(--line)}
.flight-search label{
  display:block;
  color:var(--muted);
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.1em;
  font-variation-settings:"wght" 620;
}
.flight-search label span{font-weight:500;text-transform:none;letter-spacing:0;opacity:.7}
.flight-search input,.flight-search select{
  width:100%;
  border:0;
  background:transparent;
  color:var(--star);
  font-variation-settings:"wght" 560;
  height:34px;
  padding:0;
  min-width:0;
  letter-spacing:-.015em;
  color-scheme:dark;
}
.flight-search select{
  appearance:none;
  background-image:linear-gradient(45deg,transparent 50%,#8a97a8 50%),linear-gradient(135deg,#8a97a8 50%,transparent 50%);
  background-position:calc(100% - 11px) 14px,calc(100% - 6px) 14px;
  background-size:5px 5px,5px 5px;
  background-repeat:no-repeat;
  padding-right:18px;
}
.swap-button{
  align-self:center;z-index:2;
  border:1px solid var(--line);
  background:var(--panel);
  color:var(--accent);
  width:28px;height:28px;
  border-radius:50%;
  cursor:pointer;
  margin-inline:-1px;
}
.swap-button:hover{border-color:var(--accent);color:var(--star)}
.search-button{height:50px;min-height:50px;margin-left:8px;border-radius:var(--radius);padding-inline:18px}

.section{padding-top:88px;padding-bottom:88px}
.section-heading{
  display:flex;align-items:end;justify-content:space-between;gap:24px;
  margin-bottom:28px;padding-bottom:16px;
  border-bottom:1px solid var(--line);
}
.section-heading.compact{margin-bottom:24px}
.section-heading h2,.method-copy h2,.trust-title,.content-card h2,.pricing-copy h2,.editorial h2{
  font-size:clamp(28px,3.6vw,42px);
  line-height:1.08;
  letter-spacing:-.03em;
  font-variation-settings:"wght" 500;
  margin-bottom:0;
}
.text-link{font-size:13px;font-variation-settings:"wght" 600;color:var(--accent);border-bottom:1px solid transparent;padding-bottom:2px}
.text-link:hover{border-bottom-color:currentColor;color:var(--star)}
.text-link span{margin-left:8px}

.destination-list{display:grid;border-top:1px solid var(--line)}
.destination-row{
  display:grid;
  grid-template-columns:48px minmax(0,1.4fr) minmax(0,1fr) auto;
  gap:18px;align-items:center;
  padding:18px 4px;
  border-bottom:1px solid var(--line);
  transition:background .2s,padding-left .25s;
}
.destination-row:hover{background:rgba(233,238,245,.03);padding-left:10px}
.destination-row.is-featured{
  background:rgba(233,238,245,.04);
  border-bottom-color:var(--line-strong);
  padding-inline:16px;margin-inline:-4px;
}
.destination-row.is-featured:hover{background:rgba(233,238,245,.06);padding-left:20px}
.destination-index{font-size:12px;font-variation-settings:"wght" 600;color:var(--muted);font-variant-numeric:tabular-nums}
.destination-cities{display:flex;align-items:baseline;gap:10px;min-width:0;flex-wrap:wrap}
.destination-from{color:var(--muted);font-size:14px}
.destination-arrow{color:var(--accent);font-size:14px}
.destination-cities strong{font-size:20px;font-variation-settings:"wght" 600;letter-spacing:-.02em}
.destination-meta{font-size:13px;color:var(--muted)}
.destination-price{text-align:right;white-space:nowrap}
.destination-price small{display:block;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.destination-price strong{font-size:22px;font-variation-settings:"wght" 640;letter-spacing:-.03em}

.method-section{border-block:1px solid var(--line);background:rgba(13,18,28,.45)}
.method-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:64px;align-items:center}
.method-copy p{color:var(--muted);max-width:500px;font-size:16px;margin:16px 0 28px}
.score-explainer{
  display:grid;grid-template-columns:120px 1fr;gap:28px;align-items:center;
  padding:24px 0 24px 24px;
  border-left:1px solid var(--line-strong);
}
.score-ring{
  width:120px;height:120px;border-radius:50%;
  display:grid;place-content:center;text-align:center;
  border:1px solid var(--line-strong);
  box-shadow:inset 0 0 0 10px rgba(233,238,245,.03);
}
.score-ring strong{font-size:40px;line-height:1;font-variation-settings:"wght" 620;letter-spacing:-.04em}
.score-ring span{color:var(--muted);font-size:12px}
.score-lines{display:grid;gap:12px}
.score-lines div{display:flex;justify-content:space-between;gap:15px;padding-bottom:10px;border-bottom:1px solid var(--line);font-size:13px}
.score-lines span{color:var(--muted)}

.trust-title{max-width:520px;margin-bottom:36px}
.trust-lines{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line)}
.trust-lines article{padding:28px 28px 8px 0;border-right:1px solid var(--line)}
.trust-lines article:last-child{border-right:0;padding-right:0}
.trust-lines h3{font-size:17px;margin:0 0 10px;font-variation-settings:"wght" 600}
.trust-lines p{font-size:14px;color:var(--muted);margin:0;max-width:280px}

.site-footer{border-top:1px solid var(--line);padding:56px 0;background:rgba(3,5,12,.6)}
.footer-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:48px}
.footer-grid>div{display:flex;flex-direction:column;gap:10px}
.brand-footer{margin-bottom:8px}
.footer-grid p,.footer-grid a,.footer-grid span{font-size:13px;color:var(--muted)}
.footer-grid strong{font-size:11px;text-transform:uppercase;letter-spacing:.12em;margin-bottom:6px;color:var(--ink-2);font-variation-settings:"wght" 600}
.footer-grid a:hover{color:var(--star)}

.toast{
  position:fixed;right:20px;top:90px;z-index:100;max-width:400px;
  padding:14px 18px;border-radius:var(--radius);
  border:1px solid var(--line-strong);
  background:var(--panel);
  color:var(--ink);
  animation:rise .25s ease;
}
.toast-success{border-color:rgba(125,186,154,.4)}.toast-error{border-color:rgba(212,106,99,.45)}

.compact-hero,.route-hero,.page-hero,.account-hero{
  position:relative;
  background:transparent;
  color:var(--ink);
  overflow:hidden;
  border-bottom:1px solid var(--line);
}
.compact-hero{padding:48px 0}
.compact-hero h1,.route-title h1,.page-hero h1,.account-hero h1,.auth-copy h1,.auth-form h2,.confirmation-card h1,.error-section h1,.support-grid>div>h2,.support-form h2,.legal-copy h2{
  font-variation-settings:"wght" 500;
  font-weight:500;
}
.compact-hero h1{font-size:clamp(28px,3.8vw,40px);letter-spacing:-.03em;margin-bottom:28px}
.compact-hero .flight-search{grid-template-columns:1.1fr 28px 1.1fr .82fr .82fr .65fr .7fr auto}

.search-workspace{display:grid;grid-template-columns:220px 1fr;gap:40px;padding-top:48px;padding-bottom:80px}
.filters{border-right:1px solid var(--line);padding-right:24px}
.filters-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}
.filters-header h2{font-size:17px;margin:0}
.filters-header button{border:0;background:transparent;color:var(--accent);font-size:12px;cursor:pointer}
.filter-control{display:block;margin-bottom:24px}
.filter-control>span{display:flex;justify-content:space-between;font-size:12px;font-variation-settings:"wght" 620;margin-bottom:12px}
.filter-control output{color:var(--accent)}
input[type=range]{width:100%;accent-color:var(--accent)}
.filters fieldset{border:0;border-top:1px solid var(--line);padding:20px 0;margin:0}
.filters legend{padding-top:18px;font-size:11px;font-variation-settings:"wght" 680;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}
.check,.radio{display:flex;gap:9px;align-items:center;font-size:13px;color:var(--ink-2);margin:12px 0}
.check input,.radio input{accent-color:var(--accent)}
.fee-note{display:flex;gap:11px;border:1px solid var(--line);background:var(--accent-soft);border-radius:var(--radius);padding:14px}
.fee-note>span{flex:0 0 22px;width:22px;height:22px;display:grid;place-items:center;border-radius:50%;border:1px solid var(--line-strong);color:var(--star);font-size:11px;font-variation-settings:"wght" 700}
.fee-note p{font-size:12px;color:var(--ink-2);margin:0}
.fee-note strong{display:block;color:var(--star)}
.results-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:18px}
.results-heading p{margin:0;color:var(--accent);font-size:11px;font-variation-settings:"wght" 680;text-transform:uppercase;letter-spacing:.12em}
.results-heading h2{font-size:24px;letter-spacing:-.03em;margin:5px 0 0}
.results-heading>span{font-size:12px;color:var(--muted)}
.search-status{min-height:0}
.loading-panel{padding:22px;border:1px solid var(--line);border-radius:var(--radius);background:rgba(13,18,28,.6)}
.loading-top{display:flex;justify-content:space-between;margin-bottom:18px}
.loading-top strong{font-size:14px}
.loading-top span{font-size:11px;color:var(--accent)}
.loading-line{height:6px;border-radius:2px;background:linear-gradient(90deg,#121926 25%,#1c2636 37%,#121926 63%);background-size:400% 100%;animation:shimmer 1.4s infinite;margin:12px 0}
.loading-line.short{width:55%}
@keyframes shimmer{0%{background-position:100% 0}100%{background-position:0 0}}

.offer-list{display:grid;gap:8px}
.offer-card{
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:rgba(13,18,28,.55);
  padding:16px;
  display:grid;
  grid-template-columns:46px minmax(96px,.72fr) minmax(220px,1.35fr) minmax(145px,.9fr) 56px 110px;
  gap:14px;align-items:center;
  transition:border-color .2s,background .2s;
}
.offer-card:hover{border-color:var(--line-strong);background:rgba(18,25,38,.75)}
.offer-card>.carrier-badge{grid-column:1;grid-row:1}
.offer-card>.offer-carrier{grid-column:2;grid-row:1}
.offer-card>.offer-flight{grid-column:3;grid-row:1}
.offer-card>.offer-tags{grid-column:4;grid-row:1}
.offer-card>.sky-score{grid-column:5;grid-row:1}
.offer-card>.offer-buy{grid-column:6;grid-row:1}
.carrier-badge{width:40px;height:40px;border-radius:var(--radius);background:var(--carrier,var(--panel-2));color:#fff;display:grid;place-items:center;font-size:11px;font-variation-settings:"wght" 720;letter-spacing:.04em}
.offer-carrier strong,.offer-time strong{display:block;font-size:14px}
.offer-carrier small,.offer-time small{color:var(--muted);font-size:11px}
.offer-flight{display:flex;align-items:center;gap:12px}
.offer-time{text-align:center;min-width:44px}
.flight-line{flex:1;text-align:center}
.flight-line i{display:block;position:relative;border-top:1px solid rgba(183,199,216,.35)}
.flight-line i:before,.flight-line i:after{content:"";position:absolute;top:-3px;width:5px;height:5px;background:var(--accent);border-radius:50%}
.flight-line i:before{left:0}.flight-line i:after{right:0}
.flight-line small{font-size:10px;color:var(--muted)}
.offer-tags{display:flex;flex-wrap:wrap;gap:6px}
.tag{padding:3px 7px;background:rgba(233,238,245,.05);border:1px solid var(--line);border-radius:2px;font-size:10px;font-variation-settings:"wght" 560;color:var(--ink-2)}
.tag-good{background:rgba(125,186,154,.1);border-color:rgba(125,186,154,.28);color:var(--good)}
.tag-warn{background:rgba(212,162,127,.1);border-color:rgba(212,162,127,.28);color:var(--warn)}
.offer-buy{text-align:right}
.offer-buy small{display:block;color:var(--muted);font-size:10px}
.offer-buy strong{font-size:22px;letter-spacing:-.03em;font-variation-settings:"wght" 640}
.offer-buy a,.offer-buy button{margin-top:7px;min-height:36px;padding-inline:12px;font-size:12px}
.sky-score{width:54px;text-align:center}
.sky-score strong{display:block;font-size:20px;color:var(--accent)}
.sky-score small{font-size:9px;color:var(--muted);text-transform:uppercase}
.empty-state{text-align:center;padding:60px 24px;border:1px solid var(--line);border-radius:var(--radius);background:rgba(13,18,28,.4)}
.empty-state h3{font-size:22px}
.empty-state p{color:var(--muted)}

.route-hero{padding:36px 0 44px}
.breadcrumbs{display:flex;gap:9px;color:var(--muted);font-size:12px;margin-bottom:32px}
.breadcrumbs a:hover{color:var(--star)}
.route-title{display:flex;justify-content:space-between;align-items:end;margin-bottom:28px}
.route-title h1{font-size:clamp(36px,5vw,58px);letter-spacing:-.03em;line-height:1;margin:0}
.route-title h1 span{color:var(--accent)}
.route-title p{color:var(--muted);margin:12px 0 0}
.route-price{text-align:right}
.route-price small,.route-price span{display:block;color:var(--muted);font-size:11px}
.route-price strong{display:block;font-size:34px;color:var(--star);line-height:1.1;font-variation-settings:"wght" 620}
.route-hero .flight-search{grid-template-columns:1.1fr 28px 1.1fr .82fr .82fr .65fr .7fr auto}
.route-content{display:grid;grid-template-columns:1fr 280px;gap:32px}
.route-main{display:grid;gap:18px}
.content-card{padding:28px;border:1px solid var(--line);border-radius:var(--radius);background:rgba(13,18,28,.5)}
.content-card h2{font-size:28px;margin-bottom:22px}
.card-heading{display:flex;justify-content:space-between;align-items:start}
.data-label{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);border:1px solid var(--line);padding:6px 9px;border-radius:2px}
.month-chart{height:220px;display:grid;grid-template-columns:repeat(12,1fr);align-items:end;gap:8px;padding-top:22px}
.month-bar{height:100%;display:flex;flex-direction:column;justify-content:end;text-align:center;gap:5px}
.month-bar>span{display:block;background:rgba(183,199,216,.18);border-radius:2px 2px 0 0;min-height:18px;transition:.2s}
.month-bar:hover>span{background:rgba(183,199,216,.4)}
.month-bar b{font-size:9px}.month-bar small{font-size:9px;color:var(--muted);text-transform:uppercase}
.fact-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.fact-grid>div{padding:22px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.fact-grid small{display:block;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:10px}
.fact-grid strong{display:block;font-size:22px;margin:6px 0}
.fact-grid p{margin:0;color:var(--muted);font-size:12px}
.faq-card details{border-top:1px solid var(--line)}
.faq-card summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;padding:16px 0;font-variation-settings:"wght" 580;font-size:14px}
.faq-card summary::-webkit-details-marker{display:none}
.faq-card details p{color:var(--muted);font-size:13px;padding:0 25px 16px 0}
.faq-card details[open] summary span{transform:rotate(45deg)}
.route-aside{position:relative}
.sticky-card{position:sticky;top:24px;padding:24px;background:rgba(13,18,28,.75);border:1px solid var(--line-strong);border-radius:var(--radius)}
.sticky-card .mini-score{width:36px;height:36px;display:grid;place-items:center;border-radius:var(--radius);border:1px solid var(--line-strong);color:var(--star);font-variation-settings:"wght" 720}
.sticky-card h3{font-size:22px;line-height:1.15;margin:40px 0 12px;font-variation-settings:"wght" 520}
.sticky-card p{color:var(--muted);font-size:13px;margin-bottom:22px}
.related-section{border-top:1px solid var(--line);background:rgba(13,18,28,.35)}
.related-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--line)}
.related-grid a{background:transparent;padding:20px 16px 20px 0;border-bottom:1px solid var(--line);border-right:1px solid var(--line)}
.related-grid a:nth-child(4n){border-right:0}
.related-grid span,.related-grid small{display:block;color:var(--muted);font-size:11px}
.related-grid strong{display:block;font-size:18px;margin:6px 0}

.page-hero{padding:72px 0}
.page-hero.small{padding:56px 0}
.page-hero h1{font-size:clamp(38px,5.5vw,64px);letter-spacing:-.035em;line-height:1;margin-bottom:18px}
.page-hero p{max-width:540px;color:var(--muted);font-size:16px;margin:0}
.hub-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid var(--line)}
.hub-route{display:grid;grid-template-columns:100px 1fr auto 24px;gap:18px;align-items:center;border:0;border-bottom:1px solid var(--line);border-right:1px solid var(--line);border-radius:0;padding:18px 16px;transition:background .2s}
.hub-route:hover{background:rgba(233,238,245,.03);transform:none;box-shadow:none}
.iata-pair{display:flex;align-items:center;gap:7px}
.iata-pair b{font-size:11px}
.iata-pair i{width:18px;border-top:1px solid var(--accent)}
.hub-route h2{font-size:16px;margin:0}
.hub-route p{font-size:12px;color:var(--muted);margin:3px 0 0}
.hub-route>strong{font-size:18px}
.hub-route .arrow{color:var(--accent)}

.auth-section{min-height:calc(100vh - var(--header-h));display:grid;grid-template-columns:1fr 1fr}
.auth-panel{background:rgba(13,18,28,.55);color:var(--ink);padding:48px max(48px,7vw);display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;border-right:1px solid var(--line)}
.auth-copy{margin-block:64px}
.auth-copy h1{font-size:clamp(36px,4.5vw,56px);line-height:.98;letter-spacing:-.03em}
.auth-copy p{max-width:440px;color:var(--muted)}
.auth-benefits{display:flex;flex-wrap:wrap;gap:14px;color:var(--muted);font-size:12px}
.auth-form-wrap{display:grid;place-items:center;padding:56px;background:transparent}
.auth-form{width:min(420px,100%)}
.form-kicker{text-transform:uppercase;color:var(--accent);font-size:11px;font-variation-settings:"wght" 680;letter-spacing:.12em}
.auth-form h2{font-size:32px;letter-spacing:-.025em;margin-bottom:28px}
.auth-form label,.support-form label,.checkout-form label{display:block;font-size:12px;font-variation-settings:"wght" 600;color:var(--ink-2);margin-bottom:16px}
.auth-form input,.support-form input,.support-form textarea,.checkout-form input,.checkout-form select,.stripe-element{
  width:100%;margin-top:6px;
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:12px;
  background:rgba(13,18,28,.7);
  color:var(--ink);
  min-height:48px;font-size:15px;
  transition:border-color .18s,box-shadow .18s;
  color-scheme:dark;
}
.auth-form input:focus,.support-form input:focus,.support-form textarea:focus,.checkout-form input:focus,.checkout-form select:focus,.stripe-element:focus-within{
  border-color:var(--accent);
  box-shadow:0 0 0 3px var(--accent-soft);
  outline:none;
}
.auth-form input::placeholder,.support-form input::placeholder,.support-form textarea::placeholder,.checkout-form input::placeholder{color:#667485}
.auth-switch{text-align:center;color:var(--muted);font-size:13px;margin-top:18px}
.auth-switch a{color:var(--accent);font-variation-settings:"wght" 650}

.account-hero{padding:56px 0}
.account-hero>.shell{display:flex;justify-content:space-between;align-items:end}
.account-hero h1{font-size:44px;letter-spacing:-.03em;margin-bottom:8px}
.account-hero p{color:var(--muted);margin:0}
.account-grid{display:grid;grid-template-columns:1fr 320px;gap:36px}
.empty-card{text-align:center;padding:56px;border:1px solid var(--line);border-radius:var(--radius);background:rgba(13,18,28,.4)}
.empty-card>span{font-size:28px;color:var(--accent)}
.empty-card h3{font-size:24px;margin:12px 0}
.empty-card p{color:var(--muted)}
.order-list{display:grid;gap:8px}
.order-card{display:grid;grid-template-columns:115px 120px 1fr auto 42px;align-items:center;gap:18px;padding:18px;border:1px solid var(--line);border-radius:var(--radius);background:rgba(13,18,28,.5)}
.order-status{font-size:10px;text-transform:uppercase;font-variation-settings:"wght" 680}
.order-status i{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--accent);margin-right:5px}
.status-confirmed i{background:var(--good)}
.status-failed i,.status-payment_failed i{background:var(--red)}
.order-route{display:flex;align-items:center;gap:7px;font-variation-settings:"wght" 680}
.order-route i{flex:1;border-top:1px solid var(--accent)}
.order-card p{margin:3px 0 0;color:var(--muted);font-size:11px}
.order-price{text-align:right}
.order-price small{display:block;color:var(--muted);font-size:10px}
.profile-card{border:1px solid var(--line);border-radius:var(--radius);padding:22px;background:rgba(13,18,28,.5)}
.profile-card .card-heading h2{font-size:22px}
.profile-card .card-heading small{color:var(--muted);font-size:11px}
.avatar{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line-strong);color:var(--star);font-variation-settings:"wght" 720}
.profile-card dl{margin:22px 0}
.profile-card dl>div{display:flex;justify-content:space-between;gap:15px;border-top:1px solid var(--line);padding:10px 0}
.profile-card dt{color:var(--muted);font-size:11px}
.profile-card dd{font-size:12px;font-variation-settings:"wght" 650;margin:0;text-align:right}
.profile-note{font-size:11px;color:var(--muted);border:1px solid var(--line);padding:12px;border-radius:var(--radius)}
.support-mini{display:flex;gap:14px;margin-top:14px;padding:18px;border:1px solid var(--line);background:rgba(13,18,28,.6);border-radius:var(--radius)}
.support-mini>span{flex:0 0 30px;height:30px;display:grid;place-items:center;border:1px solid var(--line-strong);border-radius:50%;font-variation-settings:"wght" 720}
.support-mini p{color:var(--muted);font-size:11px;margin:4px 0}
.support-mini a{font-size:11px;color:var(--accent)}

.checkout-header{border-bottom:1px solid var(--line);padding:18px 0;background:rgba(3,5,12,.7);backdrop-filter:blur(12px)}
.checkout-header>.shell{display:flex;justify-content:space-between;align-items:center}
.checkout-header a{font-size:13px;font-variation-settings:"wght" 650}
.checkout-steps{display:flex;align-items:center;gap:12px}
.checkout-steps span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
.checkout-steps span.active{color:var(--star);font-variation-settings:"wght" 720}
.checkout-steps i{width:24px;border-top:1px solid var(--line)}
.checkout-grid{display:grid;grid-template-columns:1fr 360px;gap:48px;align-items:start}
.checkout-block{border-bottom:1px solid var(--line);padding-bottom:32px;margin-bottom:32px}
.block-title{display:flex;gap:14px;margin-bottom:24px}
.block-title>span{width:30px;height:30px;border-radius:var(--radius);border:1px solid var(--line-strong);color:var(--accent);display:grid;place-items:center;font-size:11px;font-variation-settings:"wght" 720}
.block-title h1,.block-title h2{font-size:24px;letter-spacing:-.03em;margin:0}
.block-title p{font-size:12px;color:var(--muted);margin:3px 0}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
.payment-errors{color:var(--red);font-size:12px;margin-top:8px}
.demo-payment{display:flex;gap:12px;border:1px solid rgba(125,186,154,.3);background:rgba(125,186,154,.08);padding:16px;border-radius:var(--radius);color:var(--good)}
.demo-payment>span{font-variation-settings:"wght" 720}
.demo-payment p{font-size:12px;margin:2px 0}
.consent{display:flex!important;align-items:start;gap:9px;margin-top:20px!important}
.consent input{width:auto!important;margin:3px 0 0!important;min-height:auto!important}
.consent a{color:var(--accent)}
.checkout-submit{min-height:54px;justify-content:space-between}
.secure-note{text-align:center;color:var(--muted);font-size:11px}
.summary-card{border:1px solid var(--line);border-radius:var(--radius);padding:22px;background:rgba(13,18,28,.55)}
.summary-top{display:flex;align-items:center;gap:11px}
.summary-top>div small{display:block;color:var(--muted);font-size:10px}
.summary-top>div strong{font-size:13px}
.score-pill{margin-left:auto;border:1px solid var(--line-strong);color:var(--accent);font-size:10px;font-variation-settings:"wght" 720;padding:5px 8px;border-radius:2px}
.summary-route{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;margin:28px 0}
.summary-route>div strong,.summary-route>div span{display:block;text-align:center}
.summary-route>div strong{font-size:22px}
.summary-route>div span{font-size:11px;color:var(--muted);font-variation-settings:"wght" 650}
.summary-line{text-align:center}
.summary-line i{display:block;border-top:1px solid var(--accent);position:relative}
.summary-line i:after{content:"";position:absolute;right:0;top:-3px;width:5px;height:5px;background:var(--accent);border-radius:50%}
.summary-line small,.summary-line span{display:block;font-size:9px;color:var(--muted)}
.summary-features{display:flex;flex-wrap:wrap;gap:6px}
.summary-features span{border:1px solid var(--line);padding:4px 7px;border-radius:2px;font-size:10px;color:var(--ink-2)}
.price-breakdown{margin-top:22px;padding-top:16px;border-top:1px solid var(--line)}
.price-breakdown>div{display:flex;justify-content:space-between;font-size:12px;margin:8px 0}
.price-breakdown .total{border-top:1px solid var(--line);padding-top:14px;margin-top:14px;align-items:center}
.price-breakdown .total strong{font-size:22px;font-variation-settings:"wght" 640}
.summary-assurance{display:flex;gap:12px;border:1px solid var(--line);border-radius:var(--radius);padding:12px;margin-top:12px}
.summary-assurance p{font-size:11px;margin:0;color:var(--muted)}
.summary-assurance strong{display:block;color:var(--ink)}

.confirmation-section{min-height:75vh;display:grid;place-items:center;padding:72px 20px}
.confirmation-card{width:min(720px,100%);text-align:center;background:rgba(13,18,28,.6);border-radius:var(--radius);padding:44px;border:1px solid var(--line)}
.success-mark{width:52px;height:52px;margin:0 auto 22px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(125,186,154,.4);color:var(--good);font-size:22px;font-variation-settings:"wght" 720}
.confirmation-card h1{font-size:40px;letter-spacing:-.03em;margin-bottom:12px}
.confirmation-lead{color:var(--muted);max-width:500px;margin:0 auto 28px}
.ticket{text-align:left;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
.ticket-top{display:grid;grid-template-columns:50px 1fr 1fr;gap:14px;align-items:center;padding:16px;background:rgba(3,5,12,.55)}
.ticket-top small{display:block;color:var(--muted);font-size:9px}
.ticket-top strong{font-size:13px}
.ticket-route{display:grid;grid-template-columns:1fr auto 1fr;text-align:center;gap:20px;padding:22px}
.ticket-route small,.ticket-route span{display:block;color:var(--muted);font-size:10px}
.ticket-route strong{font-size:24px}
.ticket-route i{align-self:center;color:var(--accent)}
.confirmation-actions{display:flex;justify-content:center;gap:10px;margin-top:24px}

.pricing-grid{display:grid;grid-template-columns:320px 1fr;gap:64px;align-items:start}
.fee-card{background:rgba(13,18,28,.65);border:1px solid var(--line-strong);border-radius:var(--radius);padding:32px}
.fee-card>small,.fee-card>span{display:block;color:var(--muted)}
.fee-card>strong{display:block;font-size:60px;letter-spacing:-.05em;margin:4px 0;font-variation-settings:"wght" 600}
.fee-card ul{list-style:none;padding:22px 0;margin:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.fee-card li{font-size:13px;margin:12px 0;color:var(--ink-2)}
.fee-card li:before{content:"—";color:var(--accent);margin-right:9px}
.pricing-copy>p{color:var(--muted);font-size:16px}
.price-example{border:1px solid var(--line);padding:22px;border-radius:var(--radius);margin:24px 0;background:rgba(13,18,28,.4)}
.price-example div{display:flex;justify-content:space-between;padding:8px 0}
.price-example div:last-child{border-top:1px solid var(--line);margin-top:8px;padding-top:14px}
.price-example strong{font-size:22px}
.pricing-copy h3{font-size:20px;margin-top:28px}

.editorial-lead{display:grid;grid-template-columns:48px 1fr 1fr;gap:28px;padding-bottom:56px;border-bottom:1px solid var(--line)}
.editorial-lead>span,.editorial article>span{font-size:12px;color:var(--accent);font-variation-settings:"wght" 700}
.editorial-lead p{color:var(--muted);font-size:16px}
.editorial-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;margin-top:40px}
.editorial article h3{font-size:20px;line-height:1.25;margin-top:36px}
.editorial article p{color:var(--muted);font-size:14px}
.legal-copy{max-width:760px}
.legal-copy h2{font-size:26px;letter-spacing:-.025em;margin-top:40px}
.legal-copy p{color:var(--ink-2)}
.legal-copy a{color:var(--accent);font-variation-settings:"wght" 650}

.support-grid{display:grid;grid-template-columns:1fr 400px;gap:64px}
.support-grid>div>h2,.support-form h2{font-size:26px;letter-spacing:-.025em}
.support-topics{display:grid;gap:0}
.support-topics article{border-top:1px solid var(--line);display:grid;grid-template-columns:40px 160px 1fr;gap:18px;padding:20px 0}
.support-topics article>span{color:var(--accent);font-size:11px;font-variation-settings:"wght" 720}
.support-topics h3{font-size:16px;margin:0}
.support-topics p{font-size:13px;color:var(--muted);margin:0}
.support-form{border:1px solid var(--line);padding:28px;border-radius:var(--radius);background:rgba(13,18,28,.45)}
.support-form textarea{resize:vertical;min-height:120px}

.error-section{min-height:70vh;width:var(--shell);margin:auto;display:grid;grid-template-columns:.7fr 1fr;gap:40px;align-items:center}
.error-code{font-size:clamp(110px,16vw,200px);letter-spacing:-.06em;color:rgba(183,199,216,.18);line-height:.85;font-variation-settings:"wght" 420}
.error-section h1{font-size:40px;letter-spacing:-.03em}
.error-section p{color:var(--muted);margin-bottom:28px}

.reveal{opacity:0;transform:translateY(12px);transition:opacity .7s ease,transform .7s ease}
.reveal.is-in{opacity:1;transform:none}

@media(max-width:1100px){
  .flight-search,.compact-hero .flight-search,.route-hero .flight-search{grid-template-columns:1fr 28px 1fr 1fr 1fr}
  .flight-search .field-compact{grid-row:2;margin-top:8px}
  .search-button{grid-row:2;grid-column:4/6}
  .method-grid{gap:40px}
  .score-explainer{grid-template-columns:1fr}
  .score-ring{margin:auto}
  .offer-card{grid-template-columns:46px minmax(96px,.72fr) minmax(210px,1.35fr) 112px;gap:12px}
  .offer-card>.offer-tags{grid-column:2/4;grid-row:2}
  .offer-card>.offer-buy{grid-column:4;grid-row:1/3}
  .offer-card>.sky-score{display:none}
  .checkout-grid{gap:32px}
  .footer-grid{gap:28px}
  .destination-row{grid-template-columns:40px 1fr auto}
  .destination-meta{display:none}
}
@media(max-width:800px){
  :root{--shell:min(100% - 28px,1080px)}
  .main-nav{display:none}
  .header-inner{gap:14px}
  .header-actions{margin-left:auto}
  .account-link{display:none}
  .hero{min-height:auto;padding-bottom:32px}
  .hero-content{padding-top:72px}
  .hero-brand{font-size:52px}
  .hero h1{font-size:26px}
  .flight-search,.compact-hero .flight-search,.route-hero .flight-search{grid-template-columns:1fr 36px 1fr}
  .flight-search .field{border-right:0;border-bottom:1px solid var(--line)}
  .flight-search .field-compact{grid-row:auto;margin:0}
  .search-button{grid-row:auto;grid-column:1/-1;margin:10px 0 0}
  .destination-row{grid-template-columns:36px 1fr;gap:10px}
  .destination-price{grid-column:2;text-align:left}
  .method-grid,.trust-lines,.route-content,.account-grid,.checkout-grid,.pricing-grid,.support-grid{grid-template-columns:1fr}
  .trust-lines article{border-right:0;border-bottom:1px solid var(--line);padding:22px 0}
  .score-explainer{grid-template-columns:120px 1fr;padding-left:18px}
  .search-workspace{grid-template-columns:1fr}
  .filters{border-right:0;border-bottom:1px solid var(--line);padding:0 0 18px}
  .filters fieldset{display:flex;flex-wrap:wrap;gap:12px}
  .offer-card{grid-template-columns:46px minmax(0,1fr) 118px}
  .offer-card>.offer-flight{grid-column:1/3;grid-row:2}
  .offer-card>.offer-tags{grid-column:1/3;grid-row:3}
  .offer-card>.offer-buy{grid-column:3;grid-row:1/4}
  .route-title{align-items:start;flex-direction:column;gap:18px}
  .route-price{text-align:left}
  .route-aside{grid-row:1}
  .sticky-card{position:static}
  .related-grid{grid-template-columns:1fr 1fr}
  .hub-grid{grid-template-columns:1fr}
  .hub-route{border-right:0}
  .auth-section{grid-template-columns:1fr}
  .auth-panel{padding:32px 24px;min-height:260px;border-right:0;border-bottom:1px solid var(--line)}
  .auth-copy{margin-block:40px}
  .auth-form-wrap{padding:48px 24px}
  .account-hero>.shell{align-items:start;gap:18px}
  .editorial-lead{grid-template-columns:36px 1fr}
  .editorial-lead p{grid-column:2}
  .editorial-columns{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr 1fr}
  .footer-grid>div:first-child{grid-column:1/-1}
  .support-topics article{grid-template-columns:32px 1fr}
  .support-topics p{grid-column:2}
  .error-section{grid-template-columns:1fr;gap:0;padding-block:48px}
  .error-code{font-size:110px}
}
@media(max-width:520px){
  .demo-bar{font-size:11px}
  .site-header .button-small{display:none}
  .header-inner{height:56px}
  :root{--header-h:56px}
  .hero-content{padding-top:56px}
  .hero-brand{font-size:44px}
  .hero h1{font-size:22px}
  .hero-lead{font-size:15px}
  .flight-search,.compact-hero .flight-search,.route-hero .flight-search{display:grid;grid-template-columns:1fr 36px 1fr}
  .flight-search .field{grid-column:1/-1}
  .flight-search>.field:nth-of-type(1){grid-column:1/2;grid-row:1}
  .flight-search>.field:nth-of-type(2){grid-column:3/4;grid-row:1}
  .flight-search>.field:nth-of-type(3){grid-column:1/2;grid-row:2}
  .flight-search>.field:nth-of-type(4){grid-column:3/4;grid-row:2}
  .flight-search>.field:nth-of-type(5){grid-column:1/2;grid-row:3}
  .flight-search>.field:nth-of-type(6){grid-column:3/4;grid-row:3}
  .flight-search .swap-button{grid-column:2;grid-row:1}
  .flight-search .search-button{grid-column:1/-1;grid-row:4}
  .flight-search input,.flight-search select{font-size:14px}
  .section{padding-block:56px}
  .section-heading{align-items:start;flex-direction:column}
  .score-explainer{grid-template-columns:1fr}
  .offer-card{grid-template-columns:46px minmax(0,1fr);gap:12px}
  .offer-card>.offer-buy{grid-column:1/-1;grid-row:4;display:flex;align-items:center;justify-content:space-between;text-align:left}
  .offer-card>.offer-tags{grid-column:1/-1}
  .route-title h1{font-size:36px}
  .month-chart{overflow-x:auto;grid-template-columns:repeat(12,45px)}
  .fact-grid{grid-template-columns:1fr}
  .related-grid{grid-template-columns:1fr}
  .account-hero>.shell{display:block}
  .account-hero .button{margin-top:22px}
  .order-card{grid-template-columns:1fr 1fr}
  .order-status{grid-column:1/-1}
  .order-price{text-align:left}
  .order-card>.icon-button{grid-column:2;grid-row:3}
  .checkout-steps{display:none}
  .form-grid{grid-template-columns:1fr}
  .confirmation-card{padding:28px 18px}
  .confirmation-card h1{font-size:32px}
  .ticket-top{grid-template-columns:45px 1fr}
  .ticket-top>div:last-child{grid-column:2}
  .confirmation-actions{flex-direction:column}
  .fee-card>strong{font-size:48px}
  .pricing-grid{gap:32px}
  .footer-grid{grid-template-columns:1fr}
  .footer-grid>div:first-child{grid-column:auto}
  .auth-copy h1{font-size:34px}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .hero-brand,.hero h1,.hero-lead,.hero .flight-search,.button,.destination-row,.offer-card,.reveal,#starfield{animation:none!important;transition:none!important;opacity:1;transform:none}
}
