.fh{
  --plum:#210B18; --wine:#44142D; --rose:#F2A7B8; --blush:#F8D9DF; --mauve:#B56A86; --champ:#E6C79F;
  --ivory:#FCF5F3; --ink:#2A1020; --ink-soft:#6E4A5B; --line-d:rgba(248,217,223,.16); --line-l:rgba(42,16,32,.12);
  --display:'Bodoni Moda','Didot','Times New Roman',serif;
  --body:'Jost','Helvetica Neue',Arial,sans-serif;
  color-scheme:dark;
}
.fh *,.fh *::before,.fh *::after{box-sizing:border-box}
.fh{background:var(--plum);color:var(--blush);font-family:var(--body);font-weight:300;font-size:17px;line-height:1.6;overflow-x:hidden}
.fh a{color:inherit}
.fh .in{max-width:1180px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.fh .eyebrow{font-size:12px;letter-spacing:.28em;text-transform:uppercase;color:var(--champ);font-weight:500;display:flex;align-items:center;gap:14px}
.fh .eyebrow::before{content:"";width:38px;height:1px;background:currentColor}
.fh h1,.fh h2,.fh h3{font-family:var(--display);font-weight:400;margin:0;text-wrap:balance}
.fh em{font-style:italic}
.fh .grad{background:linear-gradient(100deg,var(--rose),var(--champ) 60%,var(--rose));-webkit-background-clip:text;background-clip:text;color:transparent}
.fh .lb{position:fixed;left:0;right:0;height:0;background:#000;z-index:60;pointer-events:none}
.fh .lb.t{top:0}
.fh .lb.b{bottom:0}
.fh .grain{position:absolute;inset:0;z-index:55;pointer-events:none;opacity:.05;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}
.fh .fh-head{position:absolute;top:0;left:0;right:0;z-index:50;background:linear-gradient(to bottom,rgba(33,11,24,.85),rgba(33,11,24,0));backdrop-filter:blur(6px)}
.fh .fh-head .in{display:flex;align-items:center;gap:28px;padding-block:16px}
.fh .logo{font-family:var(--display);font-style:italic;font-size:28px;letter-spacing:.01em;text-decoration:none;margin-right:auto}
.fh .logo i{color:var(--rose)}
.fh .fh-nav{display:flex;gap:26px;font-size:14px;letter-spacing:.06em}
.fh .fh-nav a{text-decoration:none;opacity:.85}
.fh .fh-nav a:hover{opacity:1;color:var(--champ)}
.fh .btn{display:inline-flex;align-items:center;gap:10px;border-radius:999px;padding:14px 26px;font:500 14px/1 var(--body);letter-spacing:.08em;text-transform:uppercase;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:transform .25s,background .25s,color .25s}
.fh .btn.solid{background:linear-gradient(100deg,var(--rose),var(--champ));color:var(--plum)}
.fh .btn.solid:hover{transform:translateY(-2px)}
.fh .btn.line{border-color:var(--line-d);color:var(--blush)}
.fh .btn.line:hover{border-color:var(--rose);color:var(--rose)}
.fh .btn.dark{background:var(--plum);color:var(--blush)}
.fh .btn:focus-visible{outline:2px solid var(--champ);outline-offset:3px}
.fh .fh-head .btn{padding:11px 20px;font-size:12px}
@media(max-width:760px){.fh .fh-nav{display:none}}
.fh .hero{position:relative;overflow:hidden;padding-block:150px 110px;background:
  radial-gradient(900px 600px at var(--mx,70%) var(--my,30%),rgba(242,167,184,.18),transparent 60%),var(--plum)}
.fh .orb{position:absolute;border-radius:50%;filter:blur(70px);pointer-events:none}
.fh .orb.a{width:560px;height:560px;right:-120px;top:-60px;background:radial-gradient(circle,rgba(242,167,184,.55),transparent 65%)}
.fh .orb.b{width:460px;height:460px;left:-160px;bottom:-120px;background:radial-gradient(circle,rgba(181,106,134,.55),transparent 65%)}
.fh .orb.c{width:300px;height:300px;left:42%;top:30%;background:radial-gradient(circle,rgba(230,199,159,.28),transparent 65%)}
.fh .hero .in{position:relative;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:56px;align-items:center}
@media(max-width:900px){.fh .hero .in{grid-template-columns:minmax(0,1fr)}
.fh .hero{padding-block:130px 80px}}
.fh .hero h1{font-size:clamp(46px,8vw,104px);line-height:.98;letter-spacing:-.02em;margin:22px 0 26px}
.fh .ln{display:block;overflow:hidden;padding-bottom:.08em}
.fh .ln span{display:block}
.fh .hero p.lead{max-width:46ch;font-size:19px;color:rgba(248,217,223,.82);margin:0 0 34px}
.fh .cta{display:flex;gap:14px;flex-wrap:wrap}
.fh .proof{display:flex;gap:26px;flex-wrap:wrap;margin-top:44px;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:rgba(248,217,223,.62)}
.fh .proof span{display:flex;align-items:center;gap:10px}
.fh .proof span::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--champ)}
.fh .stage{position:relative;min-height:460px}
.fh .ring{position:absolute;inset:6% 4%;border-radius:50%;background:conic-gradient(from 90deg,transparent,rgba(242,167,184,.5),transparent 40%,rgba(230,199,159,.45),transparent 80%);-webkit-mask:radial-gradient(circle,transparent 62%,#000 63%,#000 64%,transparent 65%);mask:radial-gradient(circle,transparent 62%,#000 63%,#000 64%,transparent 65%)}
@media(prefers-reduced-motion:no-preference){.fh .ring{animation:fh-spin 24s linear infinite}}
@keyframes fh-spin{to{transform:rotate(360deg)}}
.fh .fc{position:absolute;background:linear-gradient(160deg,rgba(255,255,255,.16),rgba(255,255,255,.05));border:1px solid rgba(255,255,255,.22);border-radius:22px;padding:22px 24px;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 30px 60px -20px rgba(0,0,0,.55)}
.fh .fc.main{left:6%;right:6%;top:14%}
.fh .fc.main h3{font-size:26px;font-style:italic;margin-bottom:12px}
.fh .fc ul{list-style:none;margin:0 0 16px;padding:0;font-size:15px}
.fh .fc li{display:flex;justify-content:space-between;gap:14px;padding:7px 0;border-bottom:1px solid var(--line-d)}
.fh .fc li b{font-weight:500;color:var(--champ)}
.fh .save{display:flex;align-items:baseline;gap:12px}
.fh .save .n{font-family:var(--display);font-size:64px;line-height:1;font-style:italic;color:var(--rose)}
.fh .save small{font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:rgba(248,217,223,.7)}
.fh .fc.chip{padding:12px 18px;border-radius:999px;font-size:13px;letter-spacing:.1em;text-transform:uppercase}
.fh .fc.c1{right:0;top:2%}
.fh .fc.c2{left:0;bottom:-6%}
.fh .fc.main{padding-bottom:26px}
.fh .stage{min-height:520px}
.fh .tag{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--champ);margin-bottom:6px}
.fh .marq{border-block:1px solid var(--line-d);background:var(--wine);overflow:hidden;white-space:nowrap}
.fh .marq div{display:inline-flex;gap:0;padding-block:18px;animation:fh-mq 38s linear infinite}
.fh .marq span{font-family:var(--display);font-style:italic;font-size:30px;padding-inline:26px;display:inline-flex;align-items:center;gap:52px}
.fh .marq span::after{content:"✦";font-style:normal;font-size:14px;color:var(--champ)}
@keyframes fh-mq{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.fh .marq div{animation:none}}
.fh .band{padding-block:120px}
@media(max-width:760px){.fh .band{padding-block:80px}}
.fh .light{background:var(--ivory);color:var(--ink)}
.fh .light .eyebrow{color:var(--mauve)}
.fh .sec-h{font-size:clamp(36px,5.2vw,68px);line-height:1.04;letter-spacing:-.015em;margin:18px 0 18px;max-width:18ch}
.fh .sec-p{max-width:52ch;color:inherit;opacity:.8;margin:0}
.fh .steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px;margin-top:64px}
@media(max-width:860px){.fh .steps{grid-template-columns:minmax(0,1fr)}}
.fh .step{border-top:1px solid var(--line-d);padding-top:26px}
.fh .step .num{font-family:var(--display);font-style:italic;font-size:76px;line-height:1;color:var(--rose)}
.fh .step h3{font-size:28px;margin:10px 0 10px}
.fh .step p{margin:0;opacity:.78}
.fh .pk{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:70px;align-items:center}
@media(max-width:900px){.fh .pk{grid-template-columns:minmax(0,1fr);gap:44px}}
.fh .ticket{background:#fff;border-radius:26px;padding:34px;box-shadow:0 40px 80px -30px rgba(68,20,45,.35);position:relative}
.fh .ticket::before,.fh .ticket::after{content:"";position:absolute;top:58%;width:28px;height:28px;border-radius:50%;background:var(--ivory)}
.fh .ticket::before{left:-14px}
.fh .ticket::after{right:-14px}
.fh .ticket h3{font-size:32px;font-style:italic;margin-bottom:4px}
.fh .ticket .sub{color:var(--ink-soft);font-size:14px;margin:0 0 20px}
.fh .ticket li{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px dashed var(--line-l);list-style:none}
.fh .ticket ul{margin:0;padding:0}
.fh .ticket li span:last-child{color:var(--ink-soft)}
.fh .total{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-top:26px;flex-wrap:wrap}
.fh .total s{color:var(--ink-soft);font-size:18px}
.fh .total .p{font-family:var(--display);font-size:52px;line-height:1;color:var(--wine);font-style:italic}
.fh .badge{display:inline-block;background:var(--blush);color:var(--wine);border-radius:999px;padding:6px 14px;font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:500}
.fh .note{font-size:12px;color:var(--ink-soft);margin-top:16px}
.fh .duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;margin-top:60px}
@media(max-width:900px){.fh .duo{grid-template-columns:minmax(0,1fr)}}
.fh .pan{border-radius:30px;padding:44px;position:relative;overflow:hidden;min-width:0}
.fh .pan.e{background:linear-gradient(160deg,var(--wine),#2D0E1F);border:1px solid var(--line-d)}
.fh .pan.s{background:linear-gradient(160deg,var(--blush),#F1BBC8);color:var(--ink)}
.fh .pan h3{font-size:clamp(30px,3.6vw,44px);line-height:1.08;margin:14px 0 20px;font-style:italic}
.fh .pan ul{list-style:none;margin:0 0 30px;padding:0;display:grid;gap:14px}
.fh .pan li{display:flex;gap:14px;align-items:flex-start}
.fh .pan li::before{content:"";flex:0 0 8px;height:8px;margin-top:10px;border-radius:50%;background:var(--champ)}
.fh .pan.s li::before{background:var(--wine)}
.fh .pan .eyebrow{font-size:11px}
.fh .pan.s .eyebrow{color:var(--wine)}
.fh .final{text-align:center;background:radial-gradient(800px 420px at 50% 0%,rgba(242,167,184,.25),transparent 70%),var(--plum);padding-block:130px}
.fh .final h2{font-size:clamp(42px,7vw,96px);line-height:1;margin:0 auto 26px;max-width:15ch}
.fh .final p{max-width:48ch;margin:0 auto 38px;opacity:.82}
.fh .final .cta{justify-content:center}
.fh .fh-foot{border-top:1px solid var(--line-d);padding-block:30px;font-size:13px;color:rgba(248,217,223,.6)}
.fh .fh-foot .in{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
.fh{position:relative;display:block;width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);overflow-x:clip;text-align:left}
.fh a{text-decoration:none}
.fh h1,.fh h2,.fh h3{color:inherit;padding:0;text-transform:none;line-height:inherit}
.fh p{padding-bottom:0}
.fh ul{list-style:none}
.fh .btn{color:inherit}
.fh .btn.solid{color:var(--plum)}
.fh .btn.dark{color:var(--blush)}
