/* Dusk: passionfroot.me-inspired. Soft retro serif (Fraunces in place of their licensed New Kansas), Nunito Sans,
   Caveat for handwriting; deep ink #190922, orange #EB6928, purple #B26BF5, magenta #B036A4, cream #FBF8F2. */
:root{--bg:#FBF8F2;--bg2:#F3EDE2;--ink:#190922;--muted:#6E6275;--card:#fff;--line:#ECE3D6;--accent:#EB6928;--accent2:#B26BF5;--on-accent:#fff;
  --hero-ink:#FFF6EC;--font-h:'Fraunces',Georgia,serif;--font-b:'Nunito Sans',system-ui,sans-serif;--font-hand:'Caveat',cursive;--r:26px;
  --sh:0 1px 2px rgba(25,9,34,.05),0 18px 40px -12px rgba(25,9,34,.18)}
h1,h2,h3{font-weight:500;font-variation-settings:"SOFT" 100,"WONK" 1;letter-spacing:-.025em}
h1{font-weight:400}
.logo-word{font-family:var(--font-h);font-weight:600;font-variation-settings:"SOFT" 100}
.eyebrow{color:#B036A4}
.hero-dusk{min-height:min(100vh,920px);display:flex;flex-direction:column;justify-content:center;padding:150px 0 220px;background:#1b0b2b}
.hero-bg{position:absolute;inset:auto;left:-5%;top:-5%;width:110%;height:110%;max-width:none;object-fit:cover;object-position:50% 70%;
  transform:translate3d(calc(var(--mx,0) * -16px),calc(var(--my,0) * -10px + var(--sy,0) * .22px),0) scale(1.05);will-change:transform}
.hero-dusk .flow{color:#FFC7A0}
.hero-dusk .fl-draw{stroke:#FFE6CC}
.floats{transform:translate3d(calc(var(--mx,0) * 14px),calc(var(--my,0) * 10px),0)}
.page-join .hero-bg{transform:none}
.hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,6,32,.82) 0%,rgba(30,10,48,.45) 42%,rgba(40,12,50,.05) 70%,rgba(251,248,242,0) 88%,#FBF8F2 100%)}
.stars i{position:absolute;left:var(--x);top:var(--y);width:var(--s);height:var(--s);border-radius:50%;background:#fff;opacity:.7;animation:tw 3.5s ease-in-out infinite;animation-delay:var(--t)}
@keyframes tw{50%{opacity:.15}}
.hero-dusk .hero-copy{position:relative;z-index:3;text-align:center;display:flex;flex-direction:column;align-items:center}
.hero-dusk h1{max-width:900px;text-shadow:0 2px 30px rgba(20,6,30,.35)}
.hero-dusk h1 em{display:block;font-style:italic;color:#FFB59A}
.hero-dusk h1 em .w{background:linear-gradient(92deg,#FFB27A,#FF8FB1 60%,#D7B0FF);-webkit-background-clip:text;background-clip:text;color:transparent;padding-right:.04em}
.hero-dusk .sub{margin:0 auto}
.hero-dusk .cta-row{justify-content:center}
.hero-dusk .eyebrow-pill{background:rgba(255,255,255,.1);color:#FFE9D6;box-shadow:inset 0 0 0 1px rgba(255,255,255,.22);backdrop-filter:blur(8px)}
.hand{font:600 24px/1 var(--font-hand);color:#FFC9A6;margin:18px 0 0;transform:rotate(-2deg)}
.hero-dusk .flight{color:#FFE2C4;z-index:2}
.hero-dusk .fl-lbl{fill:#FFE2C4}
.floats{position:absolute;left:0;right:0;bottom:70px;z-index:3;height:0}
.fcard{position:absolute;background:rgba(255,255,255,.92);color:var(--ink);border-radius:20px;padding:14px 16px;box-shadow:0 24px 60px -20px rgba(25,9,34,.55),inset 0 0 0 1px rgba(255,255,255,.8);backdrop-filter:blur(14px);width:232px}
.ready .fcard{animation:wordIn 1.1s var(--ease) forwards,bob 6s ease-in-out infinite 2s;animation-delay:calc(450ms + var(--e) * 140ms),2.2s}
.fcard-a{left:max(20px,calc(50% - 560px));bottom:0;rotate:-4deg}
.fcard-b{right:max(20px,calc(50% - 560px));bottom:20px;rotate:3.5deg}
@keyframes bob{50%{translate:0 -10px}}
.fc-k{font:700 11px var(--font-b);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.fc-route{font:600 18px/1.2 var(--font-h);margin:4px 0}
.fc-price b{font:600 26px/1 var(--font-h)}.fc-price s{color:var(--muted);font-size:13px}
.fc-chip{display:inline-block;margin-top:8px;background:linear-gradient(90deg,#EB6928,#B036A4);color:#fff;border-radius:999px;padding:4px 10px;font:800 11.5px var(--font-b)}
.spark{width:100%;height:auto;margin:6px 0}
.sp-line{fill:none;stroke:var(--ink);stroke-width:2.6;stroke-dasharray:1;stroke-dashoffset:1;animation:draw 2.6s .8s var(--ease) forwards;stroke-linecap:round}
.sp-th{stroke:#EB6928;stroke-dasharray:4 5;stroke-width:1.5}
.sp-dot{fill:#EB6928;opacity:0;animation:fade .4s 3s forwards}
.fc-row{display:flex;justify-content:space-between;font-size:12.5px;color:var(--muted)}.fc-row b{color:#EB6928}
/* sections */
.sec-fares{padding-top:40px}
.deal:nth-child(6n+1){--c1:#2A1240;--c2:#B036A4}.deal:nth-child(6n+2){--c1:#3A1A55;--c2:#EB6928}.deal:nth-child(6n+3){--c1:#1E1036;--c2:#B26BF5}
.deal:nth-child(6n+4){--c1:#4A1838;--c2:#EE5968}.deal:nth-child(6n+5){--c1:#24123E;--c2:#2C91AF}.deal:nth-child(6n+6){--c1:#3B1430;--c2:#FF9147}
.deal{background:linear-gradient(170deg,var(--c1),var(--c2) 130%)}
.sec-how{background:var(--bg2)}
.step{border-radius:28px}
.step-n{font-style:italic;font-weight:400;background:linear-gradient(90deg,#EB6928,#B036A4);-webkit-background-clip:text;background-clip:text;color:transparent}
.sec-rule{background:linear-gradient(180deg,var(--bg),#F6EFFF)}
.rc-pill{fill:#190922}
.sec-reviews h2,.sec-close h2{font-style:italic}
.plan-hi{border:0;background:linear-gradient(var(--card),var(--card)) padding-box,linear-gradient(120deg,#EB6928,#B036A4,#B26BF5) border-box;border:2px solid transparent}
.plan-tag{background:linear-gradient(90deg,#EB6928,#B036A4)}
.btn{background:linear-gradient(95deg,#EB6928,#E2496E)}
.btn-light{background:#fff}
.btn.btn-glass{background:rgba(255,255,255,.14);box-shadow:inset 0 0 0 1px rgba(255,255,255,.35);color:#fff}
.btn-ghost{background:transparent}
.sec-close{background:radial-gradient(900px 400px at 50% 120%,#F3B58E,transparent 70%),linear-gradient(180deg,#2A1240,#1A0A28);color:#FFF6EC}
.sec-close .lede{color:#E8D6E6}
.foot{background:var(--bg)}
/* join */
.page-join{background:#1b0b2b}
.page-join .hero-bg{animation:none;object-position:50% 80%}
.page-join .hero-shade{background:linear-gradient(180deg,rgba(18,6,32,.75),rgba(40,12,50,.35) 60%,rgba(40,12,50,.55))}
.page-join .jcard,.page-join .join-side,.page-join .consent{backdrop-filter:blur(14px)}
.page-join .jcard,.page-join .join-side{background:rgba(255,255,255,.94)}
.page-join .consent{background:rgba(255,255,255,.9);border-radius:22px;padding:14px 18px}
.side-anim{color:#B036A4}
.hero-dusk .flight-band{bottom:26px;height:150px}
@media (max-width:900px){.floats{display:none}.hero-dusk{padding:130px 0 190px;min-height:auto}}
