:root{
  color-scheme:dark;
  --void:#070504; --void-2:#0d0807; --void-3:#15100c;
  --aurum:#d4af37; --aurum-soft:#e6c870;
  --ember:#f97316; --ember-deep:#c2410c;
  --flame-yellow:#fbbf24; --flame-bright:#fde68a; --coal:#3a1f0e;
  --glass-white:rgba(255,244,220,.04); --glass-white-2:rgba(255,244,220,.06);
  --glass-border:rgba(251,191,36,.14); --glass-border-strong:rgba(251,191,36,.28);
  --ink-1:#fef9ec; --ink-2:rgba(254,249,236,.74); --ink-3:rgba(254,249,236,.48); --ink-4:rgba(254,249,236,.28);
  --shadow-ember:0 12px 36px -12px rgba(249,115,22,.55), 0 0 0 1px rgba(251,191,36,.18) inset;
  --shadow-glass:0 22px 48px -24px rgba(0,0,0,.7), 0 1px 0 rgba(255,244,220,.05) inset;
  --radius-sm:10px; --radius:16px; --radius-lg:20px; --radius-xl:28px;
  --serif:'Cormorant Garamond',serif; --sans:'DM Sans',system-ui,sans-serif; --mono:'JetBrains Mono',monospace;
  --maxw:1120px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  font-family:var(--sans); font-size:16px; line-height:1.6; letter-spacing:-.005em;
  color:var(--ink-1); background:var(--void); -webkit-font-smoothing:antialiased; overflow-x:hidden;
}
.bg-photo{position:fixed; inset:0; z-index:0; pointer-events:none;
  background:url('/affiliate/_shared/img/bonfire-1.jpeg') center/cover no-repeat;
  opacity:.26; filter:saturate(1.1) contrast(.95);}
.bg-photo::after{content:""; position:absolute; inset:0;
  background:radial-gradient(ellipse 80% 100% at 50% 100%, rgba(8,6,4,0) 0%, rgba(8,6,4,.45) 100%), linear-gradient(180deg, rgba(8,6,4,.62) 0%, rgba(8,6,4,.30) 48%, rgba(8,6,4,.66) 100%);}
.void-glow{position:fixed; inset:0; z-index:0; pointer-events:none;
  background:radial-gradient(ellipse 90% 60% at 50% 14%, rgba(251,191,36,.09) 0%, transparent 60%), radial-gradient(ellipse 70% 80% at 16% 100%, rgba(249,115,22,.08) 0%, transparent 55%), radial-gradient(ellipse 80% 80% at 92% 110%, rgba(194,65,12,.06) 0%, transparent 50%);}
.bonfire-base{position:fixed; left:50%; bottom:-380px; transform:translateX(-50%);
  width:1100px; height:740px; z-index:0; pointer-events:none; filter:blur(8px);
  background:radial-gradient(ellipse 50% 50% at 50% 50%, rgba(251,191,36,.16) 0%, rgba(249,115,22,.11) 35%, transparent 70%);
  animation:breathe 7s ease-in-out infinite;}
@keyframes breathe{0%,100%{opacity:.7; transform:translateX(-50%) scale(1)}50%{opacity:1; transform:translateX(-50%) scale(1.06)}}
#embers{position:fixed; inset:0; z-index:1; pointer-events:none}
.aura-pulse{position:fixed; left:50%; bottom:-130px; transform:translateX(-50%); width:240px; height:240px; z-index:0; pointer-events:none}
.aura-pulse .ring{position:absolute; inset:0; margin:auto; border-radius:50%; border:1px solid rgba(251,191,36,.18); animation:ring 5.5s ease-out infinite; opacity:0}
.aura-pulse .r2{animation-delay:1.7s} .aura-pulse .r3{animation-delay:3.3s}
@keyframes ring{0%{width:60px;height:60px;opacity:.7}100%{width:560px;height:560px;opacity:0}}
.wrap{position:relative; z-index:2}
.container{max-width:var(--maxw); margin:0 auto; padding:0 26px}
.eyebrow{font-family:var(--mono); font-size:11px; font-weight:500; letter-spacing:.22em; text-transform:uppercase; color:var(--aurum); display:inline-block; margin-bottom:20px}
.display{font-family:var(--serif); font-weight:500; line-height:1.08; letter-spacing:-.01em; color:var(--ink-1)}
.display em{font-style:italic; font-weight:500;
  background:linear-gradient(135deg, var(--flame-bright), var(--flame-yellow) 50%, var(--ember));
  -webkit-background-clip:text; background-clip:text; color:transparent; text-shadow:0 0 28px rgba(251,191,36,.2)}
.lead{font-size:18px; color:var(--ink-2); line-height:1.68}
.serif-italic{font-family:var(--serif); font-style:italic; font-weight:500}

.section{padding:104px 0; position:relative}
.section-head{max-width:680px; margin:0 auto 56px; text-align:center}
.section-head .display{font-size:clamp(30px,4.8vw,46px); margin-bottom:18px}
.section-head .lead{max-width:600px; margin:0 auto}
.center{text-align:center}
.btn{display:inline-flex; align-items:center; gap:9px; font-family:var(--sans); font-weight:600; border-radius:999px;
  border:1px solid transparent; cursor:pointer; text-decoration:none; transition:transform .15s, box-shadow .2s, background .2s; font-size:15px; padding:14px 28px}
.btn-primary{background:linear-gradient(135deg, var(--flame-yellow), var(--ember)); color:#1a0d04; box-shadow:var(--shadow-ember)}
.btn-primary:hover{transform:translateY(-2px); box-shadow:0 20px 48px -14px rgba(249,115,22,.7), 0 0 0 1px rgba(251,191,36,.32) inset}
.btn-ghost{background:var(--glass-white); color:var(--ink-1); border-color:var(--glass-border)}
.btn-ghost:hover{background:var(--glass-white-2); border-color:var(--glass-border-strong)}
.btn-lg{padding:17px 38px; font-size:16px}
.card{position:relative; background:var(--glass-white); border:1px solid var(--glass-border); border-radius:var(--radius-lg);
  padding:28px; backdrop-filter:blur(24px); -webkit-backdrop-filter:blur(24px); box-shadow:var(--shadow-glass);
  transition:transform .3s, border-color .3s, background .3s}
.card:hover{transform:translateY(-4px); border-color:var(--glass-border-strong); background:var(--glass-white-2)}
.reveal{opacity:0; transform:translateY(26px); transition:opacity .8s ease, transform .8s ease}
.reveal.in{opacity:1; transform:none}
.hero{min-height:96vh; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; padding:130px 26px 80px}
.brandmark{display:inline-flex; align-items:center; gap:11px; margin-bottom:18px}
.brandmark img{width:32px; height:32px}
.brandmark span{font-family:var(--mono); font-weight:500; letter-spacing:.2em; font-size:13px; color:var(--ink-2)}
.brandmark b{color:var(--flame-yellow); font-weight:500}
.hero .badge{font-family:var(--mono); font-size:11px; font-weight:500; letter-spacing:.18em; text-transform:uppercase; color:var(--flame-yellow);
  border:1px solid var(--glass-border); border-radius:999px; padding:8px 18px; background:rgba(251,191,36,.06); margin-bottom:34px; display:inline-block}
.hero h1{font-size:clamp(38px,5.2vw,66px); margin-bottom:26px; max-width:940px; text-wrap:balance}
.hero .lead{font-size:20px; max-width:600px; margin:0 auto 38px}
.hero-cta2{display:inline-block; margin-top:18px; font-family:var(--mono); font-size:12px; font-weight:500; letter-spacing:.14em; text-transform:uppercase; color:var(--ink-3); text-decoration:none; border-bottom:1px solid rgba(251,191,36,.28); padding-bottom:4px; transition:color .3s ease, border-color .3s ease}
.hero-cta2:hover{color:var(--flame-yellow); border-color:var(--flame-yellow)}
.hero-proof{margin-top:30px; font-family:var(--mono); font-size:12.5px; color:var(--ink-3); letter-spacing:.06em}
.scroll-cue{margin-top:54px; color:var(--ink-4); font-size:20px; animation:bob 2.4s ease-in-out infinite}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(8px)}}
.philo{padding:110px 26px 96px; text-align:center; position:relative; scroll-margin-top:8px}
.philo .candle{font-size:40px; margin-bottom:28px; filter:drop-shadow(0 0 26px rgba(251,191,36,.65))}
.philo h2{font-family:var(--serif); font-size:clamp(32px,5.6vw,56px); font-weight:500; line-height:1.16; margin-bottom:20px; color:var(--ink-1)}
.philo h2 .dim{color:var(--ink-4)}
.philo h2 em{font-style:italic; background:linear-gradient(135deg,var(--flame-bright),var(--flame-yellow) 55%,var(--ember)); -webkit-background-clip:text; background-clip:text; color:transparent}
.philo p{font-family:var(--serif); font-style:italic; font-size:20px; color:var(--ink-2); max-width:540px; margin:0 auto}
.story-row{display:grid; grid-template-columns:1fr 1.12fr; gap:54px; align-items:center; margin-bottom:118px}
.story-row:last-child{margin-bottom:0}
.story-row.reverse .story-text{order:2}
.story-text .eyebrow{margin-bottom:16px}
.story-text h3{font-family:var(--serif); font-weight:500; font-size:clamp(26px,3.6vw,38px); line-height:1.14; margin-bottom:16px; color:var(--ink-1)}
.story-text h3 em{font-style:italic; background:linear-gradient(135deg,var(--flame-bright),var(--flame-yellow) 55%,var(--ember)); -webkit-background-clip:text; background-clip:text; color:transparent}
.story-text p{color:var(--ink-2); font-size:16.5px; line-height:1.68; margin-bottom:18px}
.story-stat{display:inline-flex; align-items:baseline; gap:9px; font-family:var(--mono); font-size:12px; letter-spacing:.06em; color:var(--ink-3); border:1px solid var(--glass-border); border-radius:999px; padding:8px 15px; background:var(--glass-white)}
.story-stat b{font-size:17px; color:var(--flame-yellow); font-weight:600; letter-spacing:0}
.story-media{display:flex; justify-content:center; align-items:center}
.phone{position:relative; width:304px; max-width:80vw; aspect-ratio:800/1733; border-radius:46px; padding:10px;
  background:linear-gradient(165deg,#2a1c12,#0d0807 60%); border:1px solid var(--glass-border-strong);
  box-shadow:0 54px 120px -30px rgba(0,0,0,.88), 0 0 84px -26px rgba(249,115,22,.34), inset 0 1px 0 rgba(255,244,220,.10)}
.phone::before{content:""; position:absolute; inset:-16% -24%; z-index:-1; border-radius:64px; filter:blur(42px);
  background:radial-gradient(ellipse at center, rgba(249,115,22,.30), rgba(251,191,36,.12) 45%, transparent 70%)}
.phone .screen{position:relative; width:100%; height:100%; border-radius:38px; overflow:hidden; background:#0a0705}
.phone .screen img{width:100%; display:block}
.phone .notch{position:absolute; top:3px; left:50%; transform:translateX(-50%); width:44px; height:5px; border-radius:6px; background:rgba(255,244,220,.16); z-index:4}
.story-media .phone{display:none}
.deskframe{position:relative; width:100%; max-width:560px; border-radius:13px; overflow:hidden; border:1px solid var(--glass-border-strong); background:var(--void-2); box-shadow:0 50px 110px -34px rgba(0,0,0,.85), 0 0 70px -26px rgba(249,115,22,.28)}
.deskframe::before{content:""; position:absolute; inset:-16% -12%; z-index:-1; border-radius:50px; filter:blur(42px); background:radial-gradient(ellipse at center, rgba(249,115,22,.26), rgba(251,191,36,.10) 45%, transparent 70%)}
.deskframe .bar{display:flex; gap:6px; align-items:center; padding:10px 14px; background:rgba(18,11,7,.96); border-bottom:1px solid var(--glass-border)}
.deskframe .bar i{width:10px; height:10px; border-radius:50%; background:rgba(255,255,255,.16)}
.deskframe img{width:100%; display:block}
@media(max-width:760px){.story-media .deskframe{display:none} .story-media .phone{display:flex}}
.book-wrap{display:flex; justify-content:center; perspective:1500px; margin:8px 0 12px}
.book{position:relative; width:284px; max-width:70vw; transform:rotateY(-21deg) rotateX(3deg); transition:transform .5s}
.book:hover{transform:rotateY(-11deg)}
.book img{width:100%; display:block; border-radius:5px 9px 9px 5px; box-shadow:0 40px 80px -22px rgba(0,0,0,.82), -16px 8px 40px -18px rgba(0,0,0,.6)}
.book::before{content:""; position:absolute; top:0; left:0; width:13px; height:100%; background:linear-gradient(90deg, rgba(0,0,0,.5), rgba(255,255,255,.05)); border-radius:5px 0 0 5px; z-index:2}
.book::after{content:""; position:absolute; inset:-22% -34%; z-index:-1; filter:blur(44px); background:radial-gradient(ellipse at center, rgba(249,115,22,.22), rgba(251,191,36,.08) 50%, transparent 68%)}
.share-row{display:grid; grid-template-columns:0.82fr 1fr; gap:56px; align-items:center; max-width:980px; margin:0 auto}
.share-book{display:flex; justify-content:center; perspective:1600px}
.share-text .lead{margin-bottom:28px}
.share-feats{display:flex; flex-direction:column; gap:20px}
.sf{display:flex; gap:15px; align-items:flex-start}
.sf .sfi{font-size:23px; flex:0 0 auto; margin-top:1px; filter:drop-shadow(0 0 12px rgba(251,191,36,.4))}
.sf b{font-family:var(--serif); font-style:italic; font-weight:600; font-size:21px; color:var(--ink-1); display:block; margin-bottom:3px}
.sf p{color:var(--ink-2); font-size:15px; line-height:1.55}
.cnote2{font-size:13.5px; color:var(--ink-3); font-style:italic; max-width:430px; margin:8px auto 0; line-height:1.5}
@media(max-width:760px){.share-row{grid-template-columns:1fr; gap:36px} .share-book{order:-1}}
.csale{font-size:14.5px; color:var(--ink-2); line-height:1.6; max-width:460px; margin:6px auto 0}
.csale b{color:var(--flame-yellow); font-weight:600}
.calc .cres{font-size:clamp(28px,5vw,44px)}
.grid-3{display:grid; grid-template-columns:repeat(3,1fr); gap:20px}
.grid-2{display:grid; grid-template-columns:repeat(2,1fr); gap:20px}
.feature .ico,.persona .ico{font-size:30px; margin-bottom:14px}
.feature h3,.persona h3{font-family:var(--serif); font-weight:600; font-size:23px; margin-bottom:9px; color:var(--ink-1)}
.feature p,.persona p{color:var(--ink-2); font-size:15px}
.doors{display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-bottom:48px}
.door{position:relative; text-align:center}
.door.feat{border-color:var(--glass-border-strong)}
.door .dbadge{position:absolute; top:-11px; left:50%; transform:translateX(-50%); background:linear-gradient(135deg,var(--flame-yellow),var(--ember)); color:#1a0d04; font-family:var(--mono); font-weight:600; font-size:9.5px; letter-spacing:.14em; text-transform:uppercase; padding:5px 13px; border-radius:999px; white-space:nowrap}
.door .dico{font-size:28px; margin-bottom:13px}
.door h3{font-family:var(--serif); font-weight:600; font-style:italic; font-size:22px; margin-bottom:9px; color:var(--flame-bright)}
.door p{color:var(--ink-2); font-size:14.5px; line-height:1.6}
.waterfall{display:flex; align-items:center; justify-content:center; gap:12px; flex-wrap:wrap; margin:0 auto 26px; max-width:780px}
.wf{padding:18px 22px; border-radius:var(--radius); border:1px solid var(--glass-border); background:var(--glass-white); text-align:center; min-width:132px; backdrop-filter:blur(24px)}
.wf .wl{font-family:var(--mono); font-size:10px; letter-spacing:.14em; text-transform:uppercase; color:var(--ink-3); margin-bottom:7px}
.wf .wv{font-family:var(--mono); font-weight:600; font-size:21px; color:var(--ink-1)}
.wf.neg .wv{color:var(--ember)}
.wf.net{border-color:var(--glass-border-strong); background:rgba(251,191,36,.07); box-shadow:0 0 30px -6px rgba(251,191,36,.3)}
.wf.net .wv{color:var(--flame-yellow)}
.wf-arrow{color:var(--ink-4); font-size:16px}
.econ-note{text-align:center; color:var(--ink-3); font-family:var(--serif); font-style:italic; font-size:17px; max-width:620px; margin:0 auto; line-height:1.5}
.econ-note b{color:var(--ink-1); font-style:normal; font-family:var(--sans); font-weight:600; font-size:15px}
.calc{max-width:600px; margin:0 auto; padding:42px 36px; text-align:center}
.calc .clbl{font-family:var(--mono); font-size:11px; letter-spacing:.14em; text-transform:uppercase; color:var(--ink-3)}
.calc input[type=range]{-webkit-appearance:none; appearance:none; width:100%; height:6px; border-radius:999px; margin:22px 0 8px; border:1px solid var(--glass-border); outline:none;
  background:linear-gradient(90deg, var(--ember) 0%, var(--flame-yellow) var(--val,30%), var(--glass-white) var(--val,30%), var(--glass-white) 100%)}
.calc input[type=range]::-webkit-slider-thumb{-webkit-appearance:none; width:24px; height:24px; border-radius:50%; cursor:pointer;
  background:linear-gradient(135deg,var(--flame-bright),var(--flame-yellow),var(--ember)); box-shadow:0 4px 12px -2px rgba(249,115,22,.7), 0 0 0 2px rgba(254,249,236,.2) inset}
.calc input[type=range]::-moz-range-thumb{width:24px; height:24px; border:none; border-radius:50%; background:var(--flame-yellow); cursor:pointer}
.calc .cqty{font-family:var(--serif); font-style:italic; font-size:19px; color:var(--ink-2); margin-bottom:20px}
.calc .cqty b{font-family:var(--mono); font-style:normal; color:var(--flame-yellow); font-size:22px}
.calc .cres{font-family:var(--mono); font-weight:600; font-size:clamp(40px,7vw,58px); color:var(--flame-yellow); line-height:1; margin:4px 0 6px; text-shadow:0 0 36px rgba(251,191,36,.3)}
.calc .creslbl{font-family:var(--mono); font-size:11px; letter-spacing:.14em; text-transform:uppercase; color:var(--ink-3); margin-bottom:24px}
.cchips{display:flex; gap:8px; justify-content:center; flex-wrap:wrap; margin-bottom:18px}
.cchip{font-family:var(--mono); font-size:11.5px; color:var(--ink-3); border:1px solid var(--glass-border); border-radius:999px; padding:7px 13px; background:var(--glass-white)}
.cchip b{color:var(--ink-1); font-weight:600}
.cnote{font-size:13px; color:var(--ink-3); font-family:var(--serif); font-style:italic; max-width:480px; margin:0 auto; line-height:1.5}
.ranks{display:grid; grid-template-columns:repeat(4,1fr); gap:20px}
.rank{text-align:center; padding:30px 18px}
.rank svg{width:72px; height:72px; margin:0 auto 16px; display:block}
.rank .rn{font-family:var(--serif); font-weight:600; font-style:italic; font-size:21px; margin-bottom:7px; color:var(--flame-bright)}
.rank .rc{font-size:13.5px; color:var(--ink-2); line-height:1.5}
.rank .rt{font-family:var(--mono); font-size:10px; letter-spacing:.14em; text-transform:uppercase; color:var(--aurum); margin-top:11px}
.tcar-wrap{position:relative; max-width:var(--maxw); margin:0 auto}
.tcar{display:flex; gap:18px; overflow-x:auto; scroll-snap-type:x mandatory; padding:8px 26px 24px; scrollbar-width:none}
.tcar::-webkit-scrollbar{display:none}
.tcard{flex:0 0 auto; width:236px; scroll-snap-align:center; border-radius:var(--radius-lg); overflow:hidden; position:relative; cursor:pointer; border:1px solid var(--glass-border); background:#000; aspect-ratio:9/16; transition:transform .3s, border-color .3s}
.tcard:hover{transform:translateY(-4px); border-color:var(--glass-border-strong)}
.tcard img{width:100%; height:100%; object-fit:cover; opacity:.84; transition:opacity .3s}
.tcard:hover img{opacity:1}
.tcard .play{position:absolute; inset:0; display:flex; align-items:center; justify-content:center}
.tcard .play span{width:54px; height:54px; border-radius:50%; background:linear-gradient(135deg,var(--flame-yellow),var(--ember)); display:flex; align-items:center; justify-content:center; color:#1a0d04; font-size:19px; padding-left:3px; box-shadow:0 6px 22px rgba(0,0,0,.5)}
.tcard .nm{position:absolute; left:0; right:0; bottom:0; padding:30px 14px 12px; font-family:var(--serif); font-style:italic; font-weight:600; font-size:16px; background:linear-gradient(transparent, rgba(0,0,0,.86))}
.tarrow{position:absolute; top:50%; transform:translateY(-50%); z-index:5; width:46px; height:46px; border-radius:50%; border:1px solid var(--glass-border); background:rgba(20,12,7,.85); color:var(--ink-1); font-size:22px; cursor:pointer; display:none}
.tarrow:hover{border-color:var(--flame-yellow); color:var(--flame-yellow)}
.tarrow.l{left:6px} .tarrow.r{right:6px}
@media(min-width:920px){.tarrow{display:block}}
.bens{display:grid; grid-template-columns:1fr 1fr; gap:14px; max-width:860px; margin:0 auto}
.ben{display:flex; align-items:center; gap:12px; padding:18px 22px; background:var(--glass-white); border:1px solid var(--glass-border); border-radius:var(--radius); font-size:15.5px; color:var(--ink-1)}
.ben .bi{color:var(--flame-yellow)}
.diff{text-align:center}
.diff .ds{font-family:var(--serif); font-style:italic; font-weight:600; font-size:46px; color:var(--flame-yellow); line-height:1; margin-bottom:10px}
.diff h3{font-family:var(--sans); font-weight:600; font-size:16px; margin-bottom:8px; color:var(--ink-1)}
.diff p{color:var(--ink-2); font-size:14px}
.faq{max-width:760px; margin:0 auto}
.faq-item{border:1px solid var(--glass-border); border-radius:var(--radius); margin-bottom:12px; overflow:hidden; background:var(--glass-white)}
.faq-q{width:100%; text-align:left; background:none; border:none; color:var(--ink-1); font-family:var(--sans); font-weight:600; font-size:16.5px; padding:22px 24px; cursor:pointer; display:flex; justify-content:space-between; align-items:center; gap:16px}
.faq-q svg{flex:0 0 auto; transition:transform .3s; color:var(--flame-yellow)}
.faq-item.open .faq-q svg{transform:rotate(180deg)}
.faq-a{max-height:0; overflow:hidden; transition:max-height .35s ease}
.faq-a-in{padding:0 24px 22px; color:var(--ink-2); font-size:15.5px; line-height:1.7}
.creator{max-width:680px; margin:0 auto; text-align:center; padding:50px 36px}
.creator .ci{font-size:40px; margin-bottom:20px; filter:drop-shadow(0 0 22px rgba(251,191,36,.55))}
.creator q{font-family:var(--serif); font-style:italic; font-size:24px; line-height:1.5; display:block; margin-bottom:22px; color:var(--ink-1)}
.creator .cn{font-family:var(--mono); color:var(--aurum); font-size:12.5px; letter-spacing:.08em}
.apply{max-width:760px; margin:0 auto; padding:44px 38px}
.fgrid{display:grid; grid-template-columns:1fr 1fr; gap:18px}
.fg{display:flex; flex-direction:column}
.fg.full{grid-column:1/-1}
.fg label{font-family:var(--mono); font-size:11px; letter-spacing:.06em; text-transform:uppercase; color:var(--ink-3); margin-bottom:7px}
.inp{width:100%; background:var(--glass-white); border:1px solid var(--glass-border); border-radius:12px; padding:13px 15px; color:var(--ink-1); font-family:var(--sans); font-size:15px; transition:border-color .2s, background .2s}
.inp:focus{outline:none; border-color:var(--flame-yellow); background:var(--glass-white-2)}
.inp::placeholder{color:var(--ink-3)}
select option, select optgroup{background:#1a0f08; color:var(--ink-1)}
textarea.inp{resize:vertical; min-height:74px}
.aff-error{color:var(--ember); font-size:13.5px; text-align:center; margin-top:10px; min-height:1em}
.invite-card{text-align:center; padding:50px 30px}
.invite-card .ii{font-size:36px; margin-bottom:14px}
.invite-card h3{font-family:var(--serif); font-weight:600; font-size:26px; margin-bottom:10px; color:var(--ink-1)}
.invite-card p{color:var(--ink-2); margin-bottom:26px}
.success{text-align:center; padding:46px 24px}
.success .si{font-size:44px; margin-bottom:16px}
.success h3{font-family:var(--serif); font-weight:600; font-size:26px; margin-bottom:8px; color:var(--ink-1)}
.success p{color:var(--ink-2)}
.hidden{display:none!important}
.footer{padding:64px 26px 74px; text-align:center; border-top:1px solid rgba(251,191,36,.08)}
.footer .fmark{display:inline-flex; align-items:center; gap:9px; font-family:var(--mono); font-weight:500; letter-spacing:.2em; font-size:13px; margin-bottom:12px; color:var(--ink-2)}
.footer .fmark img{width:22px; height:22px}
.footer .fmark b{color:var(--flame-yellow); font-weight:500}
.footer p{font-size:13px; color:var(--ink-3); margin-top:5px}
.footer a{color:var(--flame-yellow); text-decoration:none}
.vmodal{position:fixed; inset:0; z-index:100; background:rgba(5,3,2,.93); display:none; align-items:center; justify-content:center; padding:24px}
.vmodal.on{display:flex}
.vmodal-in{position:relative; width:min(420px,92vw); aspect-ratio:9/16; max-height:86vh}
.vmodal-in iframe{width:100%; height:100%; border:0; border-radius:16px}
.vclose{position:absolute; top:-46px; right:0; background:none; border:none; color:#fff; font-size:34px; cursor:pointer; line-height:1}
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation-duration:.001ms!important; animation-iteration-count:1!important; transition-duration:.001ms!important; scroll-behavior:auto!important}
  .reveal{opacity:1!important; transform:none!important}
}
@media(max-width:900px){
  .philo{padding:88px 26px 76px}
  .story-row{grid-template-columns:1fr; gap:30px; margin-bottom:84px}
  .story-row.reverse .story-text{order:0}
  .grid-3,.doors,.ranks{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
  body{font-size:15.5px}
  .section{padding:74px 0}
  .grid-3,.grid-2,.doors,.ranks,.bens,.fgrid{grid-template-columns:1fr}
  .card{padding:22px}
  .apply,.calc,.creator{padding:30px 22px}
  .hero{padding:110px 22px 70px}
  .philo{padding:64px 22px 56px}
}
