/* home.css — the home page. */
@property --ringv{syntax:"<number>";inherits:true;initial-value:0}
@property --sh{syntax:"<percentage>";inherits:false;initial-value:0%}

main > section{position:relative}
.sec-intro h2,.story-head h2,.dl-head h2{font-size:clamp(40px,6.2vw,84px);letter-spacing:-.05em;line-height:1.02;margin-top:10px}
.sec-intro.center{text-align:center;max-width:900px;margin:0 auto}
.lede{font-size:clamp(18px,1.7vw,22px);color:var(--ink-3);margin-top:18px;line-height:1.4;letter-spacing:-.02em}
.muted2{color:var(--ink-4)}

/* ---- hero ---- */
.hero{min-height:max(1220px,150svh);display:flex;flex-direction:column;padding-top:calc(var(--nav-h) + clamp(36px,8vh,96px));overflow:hidden;isolation:isolate}
.hero-bg{position:absolute;inset:0;z-index:-1;will-change:transform,opacity}
#engineCanvas{position:absolute;inset:0;width:100%;height:100%;touch-action:pan-y;cursor:grab}
#engineCanvas.drag{cursor:grabbing}
.hero-vignette{position:absolute;inset:0;pointer-events:none;background:radial-gradient(70% 55% at 50% 68%,transparent 35%,rgba(0,0,0,.85) 100%),linear-gradient(180deg,rgba(0,0,0,.7) 0%,transparent 26%,transparent 72%,#000 100%)}
.hero-in{display:flex;flex-direction:column;align-items:center;text-align:center;pointer-events:none;will-change:transform,opacity,filter}
.hero-in > *{pointer-events:auto}
.hero-pill{transition:background .25s,border-color .25s}
.hero-pill:hover{background:rgba(255,255,255,.1);border-color:var(--line-2)}
.hero-pill svg{color:var(--ink-4)}
.hero-name{margin-top:26px;font-size:clamp(19px,2vw,24px);font-weight:600;letter-spacing:-.02em;color:var(--ink-2)}
.hero-h{margin-top:6px;font-size:clamp(54px,10.4vw,136px);line-height:.96;letter-spacing:-.055em;font-weight:700}
.hero-glow{background-image:linear-gradient(90deg,#ffd60a,#ff9f0a,#ff375f,#bf5af2,#ff9f0a,#ffd60a);background-size:300% 100%;animation:shimmer 9s linear infinite;padding-bottom:.06em}
@keyframes shimmer{to{background-position:300% 0}}
.hero-sub{max-width:660px;margin-top:24px;font-size:clamp(18px,1.6vw,21px);line-height:1.45;color:var(--ink-3)}
.hero-cta{display:flex;align-items:center;justify-content:center;gap:14px 22px;flex-wrap:wrap;margin-top:32px}
.hero-social{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:18px}
.hs-btn{display:inline-flex;align-items:center;gap:9px;height:44px;padding:0 18px;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid var(--line-2);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);font-size:15px;font-weight:500;color:var(--ink);cursor:pointer;box-shadow:inset 0 1px 0 rgba(255,255,255,.08);transition:background .25s,border-color .25s,transform .35s var(--spring),color .25s}
.hs-btn:hover:not(:disabled){background:rgba(255,255,255,.12);border-color:var(--line-3)}
.hs-btn:active:not(:disabled){transform:scale(.97)}
.hs-btn:disabled{cursor:default;opacity:.6}
.hs-btn > svg{width:16px;height:16px;flex:none}
.hs-ca .ca-k{font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.1em;color:var(--accent)}
.hs-ca .ca-v{font-family:var(--mono);font-size:14px;letter-spacing:0}
.hs-ca .ca-ic{color:var(--ink-3)}
.hs-ca.copied{border-color:rgba(48,209,88,.6);background:rgba(48,209,88,.12)}
.hs-ca.copied .ca-v,.hs-ca.copied .ca-ic{color:var(--green)}
.hero-stats{margin-top:auto;padding-top:40px;padding-bottom:46px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-width:900px}
.hs{border-radius:22px;padding:16px 20px;min-width:0}
.hs small{display:block;font-size:13px;color:var(--ink-3)}
.hs b{display:block;margin-top:2px;font-size:clamp(22px,2.6vw,30px);font-weight:700;letter-spacing:-.035em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hs.hl b{background:var(--glow);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-fig{position:absolute;left:0;right:0;bottom:8px;display:flex;justify-content:space-between;padding:0 var(--gut);font-size:10.5px;letter-spacing:.14em;color:var(--ink-4);pointer-events:none}

/* ---- marquee ---- */
.marquee{overflow:hidden;border-block:1px solid var(--line);padding:22px 0;background:linear-gradient(180deg,#050506,#000);-webkit-mask:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
.mq-track{display:flex;align-items:center;gap:30px;width:max-content;animation:mq 46s linear infinite}
.marquee:hover .mq-track{animation-play-state:paused}
.mq-track span{font-size:clamp(18px,2vw,24px);font-weight:600;letter-spacing:-.03em;color:var(--ink-2);white-space:nowrap}
.mq-track span b{font-weight:600}
.mq-track i{font-style:normal;color:var(--accent);font-size:18px}
@keyframes mq{to{transform:translateX(-50%)}}

/* ---- statement ---- */
.statement{padding-top:clamp(120px,22vh,240px);padding-bottom:clamp(80px,14vh,180px)}
.words{max-width:1040px;margin:0 auto;font-size:clamp(30px,4.7vw,62px);font-weight:600;line-height:1.12;letter-spacing:-.04em}
.words em{font-style:normal}
.w{color:rgba(245,245,247,.14);transition:color .5s var(--ease)}
.w.lit{color:var(--ink)}
.w.em.lit{background-image:var(--glow);background-size:var(--bs,400%) 100%;background-position:var(--bp,0) 0;-webkit-background-clip:text;background-clip:text;color:transparent}

/* ---- story (pinned) ---- */
.story{padding-top:clamp(60px,10vh,120px)}
.story-head{text-align:center}
.story-track{position:relative;height:330vh;margin-top:-6vh}
.story-sticky{position:sticky;top:0;height:100vh;height:100svh;display:flex;align-items:center;overflow:hidden}
.story-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(28px,5vw,80px);align-items:center;padding-top:var(--nav-h)}
.story-copy{display:grid;grid-template-rows:auto auto}
.story-step{grid-area:1/1;opacity:0;transform:translateY(28px);filter:blur(8px);transition:opacity .8s var(--out),transform .9s var(--out),filter .8s var(--out);pointer-events:none}
.story-step.on{opacity:1;transform:none;filter:none;pointer-events:auto}
.story-step .n{font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}
.story-step h3{font-size:clamp(36px,4.4vw,60px);letter-spacing:-.045em;margin-top:14px}
.story-step p{margin-top:18px;font-size:clamp(17px,1.5vw,20px);line-height:1.5;color:var(--ink-3);max-width:44ch}
.story-dots{grid-row:2;display:flex;gap:8px;margin-top:40px}
.story-dots i{position:relative;width:44px;height:4px;border-radius:4px;background:rgba(255,255,255,.12);overflow:hidden}
.story-dots i::after{content:"";position:absolute;inset:0;background:var(--accent);transform-origin:0 50%;transform:scaleX(var(--f,0));transition:transform .2s linear}
.story-stage{position:relative;aspect-ratio:1;max-height:76vh;width:100%;justify-self:center;border-radius:40px;overflow:hidden;border:1px solid var(--line);background:radial-gradient(120% 90% at 50% 0%,#17171b 0%,#0b0b0d 55%,#060607 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 50px 120px -40px rgba(0,0,0,.9)}
.stage-glow{position:absolute;inset:-20%;background:radial-gradient(40% 35% at 50% 55%,rgba(255,159,10,.18),transparent 70%);transition:background 1s var(--ease)}
.story-stage[data-active="1"] .stage-glow{background:radial-gradient(45% 35% at 30% 75%,rgba(255,159,10,.2),transparent 70%)}
.story-stage[data-active="2"] .stage-glow{background:radial-gradient(45% 45% at 50% 50%,rgba(255,80,40,.26),transparent 70%)}
.scene{position:absolute;inset:0;display:grid;place-items:center;opacity:0;transform:scale(.94);filter:blur(6px);transition:opacity .8s var(--out),transform 1s var(--out),filter .8s var(--out);pointer-events:none}
.story-stage[data-active="0"] .s0,.story-stage[data-active="1"] .s1,.story-stage[data-active="2"] .s2{opacity:1;transform:none;filter:none}

/* scene 0 */
.sc-card{width:min(78%,340px);padding:22px;border-radius:26px;background:rgba(30,30,34,.6);border:1px solid var(--glass-line);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 30px 70px -25px rgba(0,0,0,.9),inset 0 1px 0 rgba(255,255,255,.08);transform:translateY(-14%) rotate(-3deg)}
.sc-top{display:flex;align-items:center;gap:14px}
.sc-top b{display:block;font-size:20px;letter-spacing:-.02em;margin-bottom:4px}
.sc-av{width:58px;height:58px;border-radius:16px;background:conic-gradient(from 210deg,#ffd60a,#ff9f0a,#ff375f,#bf5af2,#64d2ff,#ffd60a);box-shadow:0 10px 30px -8px rgba(255,120,30,.6)}
.sc-rows{display:flex;justify-content:space-between;margin:22px 0 8px;font-size:13px;color:var(--ink-3)}
.sc-pct{font-family:var(--mono);color:var(--ink)}
.sc-fill{width:4%;transition:width 2.2s var(--out) .4s}
.story-stage[data-active="0"] .sc-fill{width:64%}
.sc-live{display:flex;align-items:center;gap:9px;margin-top:16px;font-size:13px;color:var(--green)}
.sc-wallet{position:absolute;right:9%;bottom:15%;display:flex;align-items:center;gap:12px;padding:12px 16px 12px 12px;border-radius:20px;background:rgba(40,40,46,.72);border:1px solid var(--glass-line);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 24px 50px -20px rgba(0,0,0,.9);transform:translateY(30px);opacity:0;transition:transform .9s var(--spring) .5s,opacity .6s .5s}
.story-stage[data-active="0"] .sc-wallet{transform:none;opacity:1}
.sc-wallet b{display:block;font-size:15px}
.sc-wallet small{font-size:12px;color:var(--ink-3)}
.sw-ic{width:36px;height:36px;border-radius:11px;background:linear-gradient(135deg,#ab9ff2,#6e56cf)}
.sw-ok{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:#002b0d;font-size:14px;font-weight:800;margin-left:6px;transform:scale(0);transition:transform .6s var(--spring) 1.3s}
.story-stage[data-active="0"] .sw-ok{transform:scale(1)}

/* scene 1 */
.split{width:88%;height:auto;overflow:visible}
.split text{fill:var(--ink);font-family:var(--display);font-size:16px;font-weight:600;text-anchor:middle;letter-spacing:-.02em}
.split text.sm{fill:var(--ink-3);font-size:12px;font-weight:500;letter-spacing:0}
.split text.big{font-size:38px;font-weight:700;letter-spacing:-.04em}
.sp-node rect{fill:rgba(255,255,255,.05);stroke:rgba(255,255,255,.14);stroke-width:1}
.sp-node.eng rect{fill:rgba(255,159,10,.1);stroke:rgba(255,159,10,.6)}
.sp-node.eng text.big{fill:url(#gEngine)}
.sp-base{fill:none;stroke:rgba(255,255,255,.07);stroke-width:6;stroke-linecap:round}
.sp-flow{fill:none;stroke-linecap:round;stroke-dasharray:2 16;animation:dash 1.1s linear infinite}
.sp-flow.a{stroke:url(#gEngine);stroke-width:6}
.sp-flow.b{stroke:url(#gYou);stroke-width:3;animation-duration:1.6s}
@keyframes dash{to{stroke-dashoffset:-18}}
.s1 .sp-node{opacity:0;transform:translateY(10px);transform-box:fill-box;transition:opacity .7s var(--out),transform .9s var(--out)}
.story-stage[data-active="1"] .sp-node{opacity:1;transform:none}
.story-stage[data-active="1"] .sp-node.eng{transition-delay:.35s}
.story-stage[data-active="1"] .sp-node.you{transition-delay:.5s}

/* scene 2 */
.burn-coin{position:relative;width:min(44%,220px);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 32% 26%,#fff3c4 0%,#ffd60a 16%,#ff9f0a 46%,#d9600c 78%,#7a3206 100%);box-shadow:inset 0 0 0 7px rgba(255,255,255,.16),inset 0 0 0 16px rgba(0,0,0,.1),inset 0 -14px 34px rgba(0,0,0,.35),0 0 90px 10px rgba(255,120,20,.35);animation:bob 4s var(--ease) infinite alternate;margin-top:-10%}
.burn-coin span{font-size:clamp(28px,4vw,46px);font-weight:800;letter-spacing:-.05em;color:#5a2500;text-shadow:0 1px 0 rgba(255,255,255,.45),0 -1px 0 rgba(0,0,0,.2)}
.burn-coin b{font-weight:800}
@keyframes bob{to{transform:translateY(-12px)}}
.embers{position:absolute;inset:0;pointer-events:none}
.embers i{position:absolute;bottom:34%;left:50%;width:7px;height:7px;border-radius:50%;background:radial-gradient(circle,#fff6d0,#ffb020 40%,rgba(255,80,20,0) 70%);opacity:0}
.story-stage[data-active="2"] .embers i{animation:ember 2.6s var(--ease) infinite}
.embers i:nth-child(1){margin-left:-80px;animation-delay:0s!important}.embers i:nth-child(2){margin-left:-40px;animation-delay:.4s!important}.embers i:nth-child(3){margin-left:0;animation-delay:.8s!important}.embers i:nth-child(4){margin-left:44px;animation-delay:1.2s!important}.embers i:nth-child(5){margin-left:86px;animation-delay:1.6s!important}.embers i:nth-child(6){margin-left:-62px;animation-delay:2s!important}.embers i:nth-child(7){margin-left:20px;animation-delay:.2s!important}.embers i:nth-child(8){margin-left:64px;animation-delay:.6s!important}.embers i:nth-child(9){margin-left:-20px;animation-delay:1s!important}.embers i:nth-child(10){margin-left:104px;animation-delay:1.4s!important}.embers i:nth-child(11){margin-left:-104px;animation-delay:1.8s!important}.embers i:nth-child(12){margin-left:8px;animation-delay:2.2s!important}
@keyframes ember{0%{opacity:0;transform:translate(0,0) scale(.6)}15%{opacity:1}100%{opacity:0;transform:translate(var(--dx,14px),-260px) scale(1.4)}}
.embers i:nth-child(odd){--dx:-18px}
.burn-cap{position:absolute;left:0;right:0;bottom:11%;text-align:center}
.burn-cap small{display:block;font-size:13px;color:var(--ink-3)}
.burn-cap b{display:block;font-size:clamp(26px,3vw,36px);font-weight:700;letter-spacing:-.035em;margin-top:2px}
.burn-cap em{display:inline-block;margin-top:6px;font-style:normal;font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-4)}

/* ---- bento ---- */
.bento-sec{padding-top:clamp(100px,16vh,200px)}
.bento{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:56px}
.tile{position:relative;min-height:320px;padding:32px;border-radius:30px;background:linear-gradient(180deg,#141417 0%,#0b0b0d 100%);border:1px solid var(--line);display:flex;flex-direction:column;justify-content:flex-end;gap:8px;box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}
.tile h3{font-size:clamp(24px,2.3vw,30px);letter-spacing:-.035em}
.tile p{font-size:16px;line-height:1.5;color:var(--ink-3)}
.t-wide{grid-column:span 2;flex-direction:row;align-items:center;justify-content:space-between;gap:32px}
.t-copy{max-width:320px;display:flex;flex-direction:column;gap:10px;align-self:flex-end}
.t-ic{width:64px;height:64px;margin-bottom:auto}
.t-ic svg{width:100%;height:100%}
.t-cap{font-size:15px!important}
.t-cap b{color:var(--ink);font-weight:600}
.mock-wallet{flex:none;width:min(100%,320px);padding:18px;border-radius:24px;background:rgba(36,36,42,.66);border:1px solid var(--glass-line);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 40px 80px -30px rgba(0,0,0,.95),inset 0 1px 0 rgba(255,255,255,.08);transform:rotate(2deg) translateY(10px);transition:transform .8s var(--out)}
.tile:hover .mock-wallet{transform:rotate(0) translateY(0)}
.mw-h{display:flex;align-items:center;gap:12px;padding-bottom:14px;border-bottom:1px solid var(--line)}
.mw-h b{display:block;font-size:15px}
.mw-h small{font-size:12px;color:var(--ink-3)}
.mw-logo{width:38px;height:38px;border-radius:11px;background:url(/logo.svg) center/70% no-repeat,#0c0c0e;border:1px solid var(--line-2)}
.mw-row{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid var(--line);font-size:13.5px;color:var(--ink-3)}
.mw-row b{color:var(--ink);font-weight:600}
.mw-btns{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}
.mw-btns span{display:grid;place-items:center;padding:10px;border-radius:999px;background:rgba(255,255,255,.08);font-size:14px;font-weight:600}
.mw-btns .ok{background:linear-gradient(180deg,#b6a8ff,#7a62e0);color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.4)}
.ring-tile{align-items:center;justify-content:center;text-align:center}
.ring{--ringv:0;position:relative;width:min(70%,210px);aspect-ratio:1;border-radius:50%;background:conic-gradient(from 0deg,#ffd60a 0%,#ff9f0a calc(var(--ringv) * .5%),#ff375f calc(var(--ringv) * 1%),rgba(255,255,255,.08) calc(var(--ringv) * 1%) 100%);-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 20px),#000 calc(100% - 19px));mask:radial-gradient(farthest-side,transparent calc(100% - 20px),#000 calc(100% - 19px));transition:--ringv 2s var(--out) .25s;margin-bottom:auto}
.ring-tile.in .ring{--ringv:var(--v)}
.ring-in{position:absolute;inset:0;display:grid;place-content:center;text-align:center}
.ring-wrap{position:relative;width:min(70%,210px);aspect-ratio:1;margin:0 auto auto}
.ring-wrap .ring{width:100%}
.ring-in b{font-size:clamp(40px,4vw,54px);font-weight:700;letter-spacing:-.05em;line-height:1}
.ring-in small{font-size:13px;color:var(--ink-3);margin-top:4px}
.tile .forever{font-size:clamp(54px,6vw,84px);font-weight:700;letter-spacing:-.06em;line-height:1;margin-bottom:auto!important;font-style:italic;padding-right:.1em}
.pairs-tile{overflow:hidden}
.floaters{position:absolute;inset:0 0 45% 0}
.floaters span{position:absolute;padding:9px 15px;border-radius:999px;font-size:14px;font-weight:600;background:rgba(255,255,255,.07);border:1px solid var(--line-2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:float 6s var(--ease) infinite alternate}
.floaters span:nth-child(1){left:10%;top:22%}
.floaters span:nth-child(2){left:52%;top:12%;animation-delay:-2s}
.floaters span:nth-child(3){left:20%;top:58%;animation-delay:-4s;color:var(--accent);border-color:rgba(255,159,10,.4)}
.floaters span:nth-child(4){left:60%;top:50%;animation-delay:-1s}
@keyframes float{to{transform:translateY(-14px) rotate(-2deg)}}
.mock-page{flex:none;width:min(100%,360px);border-radius:20px;overflow:hidden;background:#0d0d10;border:1px solid var(--line-2);box-shadow:0 40px 80px -30px rgba(0,0,0,.95);transform:rotate(-2deg);transition:transform .8s var(--out)}
.tile:hover .mock-page{transform:none}
.mp-bar{display:flex;align-items:center;gap:6px;padding:10px 12px;background:#17171b;border-bottom:1px solid var(--line)}
.mp-bar i{width:9px;height:9px;border-radius:50%;background:#3a3a40}
.mp-bar span{margin-left:8px;flex:1;padding:4px 10px;border-radius:8px;background:#0d0d10;font-family:var(--mono);font-size:11px;color:var(--ink-3)}
.mp-body{padding:14px}
.mp-head{display:flex;align-items:center;gap:10px}
.mp-head b{display:block;font-size:14px}
.mp-head small{font-size:11.5px;color:var(--ink-3)}
.mp-av{width:36px;height:36px;border-radius:10px;background:radial-gradient(circle at 35% 30%,#64d2ff,#0a84ff 60%,#003a8c)}
.mp-mc{margin-left:auto;font-weight:700;font-size:15px;color:var(--green)}
.spark{width:100%;height:96px;margin-top:12px;overflow:visible}
.spark-fill{fill:url(#spG);opacity:0;transition:opacity 1s .8s}
.spark-line{fill:none;stroke:var(--accent);stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round;stroke-dasharray:500;stroke-dashoffset:500;transition:stroke-dashoffset 2s var(--out) .2s;vector-effect:non-scaling-stroke}
.tile.in .spark-line{stroke-dashoffset:0}
.tile.in .spark-fill{opacity:1}
.tile .free-n{display:flex;align-items:flex-start;margin-bottom:auto!important;line-height:.9}
.free-n span{font-size:clamp(110px,11vw,150px);font-weight:700;letter-spacing:-.07em}
.free-n small{font-size:42px;font-weight:700;color:var(--ink-3);margin-top:14px}

/* ---- launch studio ---- */
.studio-sec{padding-top:clamp(110px,18vh,220px)}
.studio{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(24px,4vw,60px);align-items:start;margin-top:64px}
.studio-l{position:sticky;top:calc(var(--nav-h) + 30px);display:flex;flex-direction:column;align-items:center;gap:18px}
.holo{--rx:0deg;--ry:0deg;--px:50%;--py:50%;position:relative;width:min(100%,400px);aspect-ratio:5/7;border-radius:30px;overflow:hidden;transform:perspective(1100px) rotateX(var(--rx)) rotateY(var(--ry));transition:transform .8s var(--out),box-shadow .5s;background:linear-gradient(150deg,#222228 0%,#121215 45%,#09090b 100%);border:1px solid rgba(255,255,255,.16);box-shadow:0 50px 110px -36px rgba(255,130,20,.42),0 30px 70px -26px rgba(0,0,0,.95),inset 0 1px 0 rgba(255,255,255,.12)}
.holo.live{transition:transform .08s linear,box-shadow .5s}
.holo-in{position:absolute;inset:0;padding:18px;display:flex;flex-direction:column;gap:14px}
.holo-top{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--ink-3)}
.holo-brand{display:flex;align-items:center;gap:7px;font-weight:600;color:var(--ink-2)}
.holo-brand img{width:18px;height:18px;border-radius:5px}
.holo-no{font-size:11px;letter-spacing:.08em}
.holo-img{position:relative;flex:1;min-height:0;border-radius:20px;overflow:hidden;background:#0d0d10!important;border:1px solid rgba(255,255,255,.08)}
.holo-img img{width:100%;height:100%;object-fit:cover}
.holo-img:empty::before{content:"";position:absolute;inset:-20%;background:radial-gradient(circle at 30% 30%,rgba(255,214,10,.45),transparent 45%),radial-gradient(circle at 72% 66%,rgba(255,55,95,.42),transparent 50%),radial-gradient(circle at 50% 50%,rgba(191,90,242,.35),transparent 65%);filter:blur(18px);animation:blob 12s var(--ease) infinite alternate}
.holo-img:empty::after{content:"Your image here";position:absolute;inset:0;display:grid;place-items:center;font-size:15px;font-weight:600;color:rgba(255,255,255,.7);letter-spacing:-.01em}
@keyframes blob{to{transform:rotate(30deg) scale(1.1)}}
.holo-meta{display:flex;justify-content:space-between;align-items:center;gap:10px}
.holo-meta b{font-size:24px;letter-spacing:-.035em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.holo-meta .chip{font-size:12px;padding:4px 10px}
.holo-foot{display:flex;justify-content:space-between;font-size:11px;color:var(--ink-3);padding-top:12px;border-top:1px solid rgba(255,255,255,.1)}
.holo-sheen{position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(115deg,transparent 18%,rgba(255,214,10,.4) 34%,rgba(255,55,95,.34) 44%,rgba(100,210,255,.34) 54%,rgba(191,90,242,.34) 62%,transparent 80%);background-size:260% 260%;background-position:var(--px) var(--py);mix-blend-mode:color-dodge;opacity:.22;transition:opacity .5s}
.holo-glare{position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(circle at var(--px) var(--py),rgba(255,255,255,.32),transparent 42%);mix-blend-mode:overlay;opacity:.25;transition:opacity .5s}
.holo:hover .holo-sheen{opacity:.75}.holo:hover .holo-glare{opacity:1}
.art-card{width:min(100%,400px);padding:8px;border-radius:22px}
.upl-drop{position:relative;display:flex;align-items:center;gap:14px;min-height:76px;padding:10px 14px;border-radius:16px;border:1.5px dashed var(--line-2);cursor:pointer;overflow:hidden;transition:border-color .2s,background .2s}
.upl-drop:hover,.upl-drop:focus-visible,.upl-drop.over{border-color:var(--accent);background:rgba(255,159,10,.05);outline:none}
.upl-empty{display:grid;grid-template-columns:auto 1fr auto;grid-template-rows:auto auto;column-gap:14px;align-items:center;width:100%;font-size:12.5px;color:var(--ink-3);text-align:left}
.upl-empty svg{grid-row:1/3;width:30px;height:30px;color:var(--ink-3)}
.upl-empty b{color:var(--ink);font-size:15px;font-weight:600}
.upl-empty > span:not(.btn){grid-column:2;line-height:1.35}
.upl-empty .btn{grid-column:3;grid-row:1/3}
.upl-img{width:56px;height:56px;border-radius:12px;object-fit:cover;flex:none}
.upl-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;min-height:0;padding:0 8px;font-size:12px}
.upl-foot:has(.upl-clear:not([hidden])){min-height:40px}

.launch-card{padding:clamp(22px,3vw,34px);border-radius:32px}
.lc-head{display:flex;justify-content:space-between;align-items:center}
.lc-head h3{font-size:30px;letter-spacing:-.04em}
.lc-sub{margin:6px 0 24px;font-size:15px;color:var(--ink-3)}
.fees{border:1px solid var(--line);border-radius:18px;padding:4px 16px;margin:6px 0 16px;background:rgba(255,255,255,.025)}
.fees-row{display:flex;justify-content:space-between;align-items:baseline;gap:14px;padding:11px 0;font-size:13.5px;line-height:1.5;border-top:1px solid var(--line)}
.fees-row:first-child{border-top:0}
.fees-row .k{color:var(--ink-3);flex:none}
.fees-row .v{color:var(--ink-2);font-weight:500;text-align:right;min-width:0;overflow-wrap:anywhere}
.fees-row .v em{font-style:normal;color:var(--accent);font-weight:600}
.fees-row .v.mono{font-size:12px}
.fees-row .v .copy{font-size:12px}
.fees-row .v .pic{width:16px;height:16px;vertical-align:-3px;margin-right:5px;font-size:9px}
.lc-hint{margin-top:10px;text-align:center;font-size:13px;color:var(--ink-3)}
#launchBtn{margin-top:4px}
.xic{width:14px;height:14px;flex:none;background:var(--ink-4);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M17.8 3h3.1l-6.8 7.7L22 21h-6.2l-4.9-6.4L5.3 21H2.2l7.2-8.3L1.8 3h6.4l4.4 5.9zm-1.1 16.2h1.7L7.4 4.7H5.6z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M17.8 3h3.1l-6.8 7.7L22 21h-6.2l-4.9-6.4L5.3 21H2.2l7.2-8.3L1.8 3h6.4l4.4 5.9zm-1.1 16.2h1.7L7.4 4.7H5.6z'/%3E%3C/svg%3E") center/contain no-repeat}
.soon{position:relative;margin:-4px 0 18px;padding:14px 16px;border-radius:16px;font-size:14px;line-height:1.45;color:var(--ink-2);background:linear-gradient(90deg,rgba(255,159,10,.12),rgba(255,55,95,.08));border:1px solid rgba(255,159,10,.3)}
.soon b{color:var(--ink)}

/* pair picker */
.pairseg{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:4px;border-radius:16px;background:rgba(255,255,255,.04);border:1px solid var(--line)}
.pairseg button{display:flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:8px 10px;border-radius:12px;border:0;background:transparent;color:var(--ink-3);font-size:14px;font-weight:500;cursor:pointer;transition:background .3s var(--ease),color .2s,box-shadow .3s}
.pairseg button:hover{color:var(--ink)}
.pairseg button[aria-checked="true"]{background:rgba(255,255,255,.12);color:var(--ink);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 4px 14px -6px rgba(0,0,0,.7)}
.pairseg button:disabled{opacity:.4;cursor:not-allowed}
.pic{width:20px;height:20px;border-radius:50%;display:inline-grid;place-items:center;flex:none;overflow:hidden;background:rgba(255,255,255,.1);color:var(--ink-2);font-size:11px;font-weight:700;line-height:1}
.pic img{width:100%;height:100%;object-fit:cover;display:block}
.pic-plus{background:none;border:1.5px dashed var(--ink-4);color:var(--ink-3);font-size:13px}
.pairpick{position:relative;margin-top:8px}
.pairbtn{display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;cursor:pointer;font-size:15px;color:var(--ink-3)}
.pairbtn.set{color:var(--ink)}
.pairbtn[aria-expanded="true"]{border-color:rgba(255,159,10,.7)}
.pb-cur{display:flex;align-items:center;gap:9px;min-width:0}
.pb-cur b{font-weight:600}
.pb-cur small{color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pairpop{position:absolute;z-index:40;left:0;right:0;top:calc(100% + 8px);background:rgba(28,28,32,.86);-webkit-backdrop-filter:blur(26px) saturate(180%);backdrop-filter:blur(26px) saturate(180%);border:1px solid var(--glass-line);border-radius:20px;box-shadow:0 30px 70px -20px rgba(0,0,0,.9);overflow:hidden;animation:rise .35s var(--out)}
.pp-top{display:flex;flex-direction:column;gap:10px;padding:12px;border-bottom:1px solid var(--line)}
.pp-search{color:var(--ink-4)}
.pp-search input{padding:10px 0!important;font-size:14px}
.pp-tabs{align-self:flex-start}
.pp-list{max-height:300px;overflow-y:auto;padding:6px;overscroll-behavior:contain}
.pp-item{display:flex;align-items:center;gap:10px;width:100%;padding:9px 10px;border:0;border-radius:12px;background:none;color:var(--ink);text-align:left;cursor:pointer}
.pp-item:hover,.pp-item:focus{background:rgba(255,255,255,.08);outline:none}
.pp-item[aria-selected="true"]{background:rgba(255,159,10,.14)}
.pp-item .pic{width:28px;height:28px;font-size:12px}
.pp-item .nm{display:flex;flex-direction:column;min-width:0;flex:1;line-height:1.3}
.pp-item .nm b{font-size:14px;font-weight:600}
.pp-item .nm small{font-size:12px;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pp-item .px{font-family:var(--mono);font-size:12px;color:var(--ink-3);flex:none}
.pp-empty{padding:20px 10px;text-align:center;color:var(--ink-3);font-size:13px}
.pp-head{padding:10px 10px 4px;font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-4)}

/* ---- downlines ---- */
.downlines{padding-top:clamp(110px,18vh,220px)}
.dl-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:36px}
.dl-head .lede{display:flex;align-items:center;gap:12px;font-size:17px}
.dl-tools{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.dl-search{width:250px;border-radius:999px!important;padding:0 14px;color:var(--ink-4)}
.dl-search input{padding:10px 0!important;font-size:14px}
.dl-search input::-webkit-search-cancel-button{filter:invert(1) opacity(.5)}
.dl-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px}
.dl-sk{aspect-ratio:.76;border-radius:24px}
.dl-card{position:relative;display:flex;flex-direction:column;padding:12px;border-radius:24px;background:linear-gradient(180deg,#141417,#0b0b0d);border:1px solid var(--line);transition:transform .6s var(--out),border-color .3s,box-shadow .6s var(--out);animation:rise .6s var(--out) both}
.dl-card:hover{transform:translateY(-6px);border-color:var(--line-2);box-shadow:0 30px 60px -30px rgba(255,130,20,.35)}
.dl-img{position:relative;aspect-ratio:1;border-radius:16px;overflow:hidden;background:#111}
.dl-img img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--out)}
.dl-card:hover .dl-img img{transform:scale(1.06)}
.dl-img .ini{position:absolute;inset:0;display:grid;place-items:center;font-size:44px;font-weight:800;color:rgba(255,255,255,.18)}
.dl-badge{position:absolute;left:8px;top:8px;padding:3px 9px;border-radius:999px;font-size:11px;font-weight:600;background:rgba(0,0,0,.55);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--ink-2)}
.dl-badge.grad{color:var(--green)}
.dl-meta{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:12px;padding:0 4px}
.dl-meta b{font-size:16px;letter-spacing:-.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.dl-mc{display:flex;justify-content:space-between;align-items:baseline;margin:10px 4px 8px;font-size:12.5px;color:var(--ink-3)}
.dl-mc b{font-size:17px;color:var(--ink);letter-spacing:-.03em;font-variant-numeric:tabular-nums;transition:color .6s}
.dl-mc b.flash-up{color:var(--green)}
.dl-mc b.flash-down{color:var(--red)}
.dl-card .bar{margin:0 4px}
.dl-foot{display:flex;justify-content:space-between;margin:9px 4px 2px;font-size:11.5px;color:var(--ink-4);font-family:var(--mono)}
.dl-empty{grid-column:1/-1}
.dl-empty .btn{margin-top:10px}

/* ---- the top ---- */
.top-sec{padding-top:clamp(110px,18vh,220px)}
.coin-stage{position:relative;height:clamp(260px,32vw,360px);display:grid;place-items:center;perspective:1300px;margin:30px 0 10px;cursor:grab;touch-action:pan-y}
.coin-stage.drag{cursor:grabbing}
.coin3d{position:relative;width:clamp(170px,19vw,230px);aspect-ratio:1;transform-style:preserve-3d;transform:rotateX(10deg) rotateY(var(--cy,0deg))}
.c-face,.c-edge i{position:absolute;inset:0;border-radius:50%}
.c-face{display:grid;place-items:center;align-content:center;gap:4px;backface-visibility:hidden;-webkit-backface-visibility:hidden;background:radial-gradient(circle at 32% 26%,#fff3c4 0%,#ffd60a 16%,#ff9f0a 46%,#d9600c 80%,#7a3206 100%);box-shadow:inset 0 0 0 7px rgba(255,255,255,.2),inset 0 0 0 16px rgba(0,0,0,.1),inset 0 -14px 36px rgba(0,0,0,.35);overflow:hidden}
.c-face::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.55) 47%,transparent 60%);background-size:300% 100%;background-position:var(--gl,100%) 0;mix-blend-mode:overlay}
.c-front{transform:translateZ(10px)}
.c-back{transform:rotateY(180deg) translateZ(10px)}
.c-face b{position:relative;font-size:clamp(44px,5vw,60px);font-weight:800;letter-spacing:-.05em;color:#5a2500;text-shadow:0 1px 0 rgba(255,255,255,.5),0 -1px 0 rgba(0,0,0,.25);line-height:1}
.c-mark{position:relative;width:34px;height:30px;background:#5a2500;clip-path:polygon(50% 0,100% 100%,0 100%);opacity:.85;filter:drop-shadow(0 1px 0 rgba(255,255,255,.5))}
.c-edge{position:absolute;inset:0;transform-style:preserve-3d}
.c-edge i{background:linear-gradient(90deg,#7a3206,#c4560a 40%,#ffb340 50%,#c4560a 60%,#7a3206)}
.coin-shadow{position:absolute;bottom:6%;left:50%;width:200px;height:26px;margin-left:-100px;border-radius:50%;background:radial-gradient(closest-side,rgba(255,140,20,.35),transparent);filter:blur(8px)}
.coin-glow{position:absolute;inset:0;background:radial-gradient(30% 45% at 50% 50%,rgba(255,159,10,.18),transparent 70%);pointer-events:none}
.token-card{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;max-width:880px;margin:0 auto;padding:26px 30px;border-radius:28px}
.tc-l{min-width:0;flex:1}
.tc-k{font-size:13px;color:var(--ink-3)}
.tc-ca{margin-top:4px;font-family:var(--mono);font-size:15px;letter-spacing:0;color:var(--ink-2);overflow-wrap:anywhere}
.tc-ca .copy{font-size:14px;color:var(--ink)}
.tc-mc{margin-top:8px;font-size:15px;color:var(--ink-3)}
.tc-mc b{color:var(--ink);font-size:17px}
#drawBuy[aria-disabled=true]{pointer-events:none}
.flow{max-width:880px;margin:16px auto 0;padding:26px;border-radius:28px}
.flow-row{display:flex;align-items:stretch;gap:8px}
.flow-row.two{margin-top:12px}
.fnode{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px;padding:14px 16px;border-radius:18px;border:1px solid var(--line);background:rgba(255,255,255,.03)}
.fnode small{font-size:12px;color:var(--ink-3)}
.fnode b{font-size:17px;font-weight:700;letter-spacing:-.02em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fnode b.mono{font-size:14px}
.fnode .chip{align-self:flex-start;margin-top:auto}
.fnode.hl{border-color:rgba(255,159,10,.45);background:linear-gradient(180deg,rgba(255,159,10,.12),rgba(255,159,10,.02))}
.fnode.hl b{color:var(--accent)}
.fnode.wide{flex:2.2}
.farrow{flex:none;width:66px;display:grid;place-items:center;position:relative}
.farrow::before{content:"";position:absolute;left:4px;right:10px;top:50%;height:2px;background:repeating-linear-gradient(90deg,var(--accent) 0 6px,transparent 6px 12px);background-size:24px 2px;animation:flowx 1s linear infinite;opacity:.85}
.farrow::after{content:"";position:absolute;right:4px;top:50%;margin-top:-5px;border:5px solid transparent;border-left:7px solid var(--accent)}
.farrow span{position:relative;padding:2px 7px;border-radius:999px;font-family:var(--mono);font-size:11px;color:var(--accent);background:#0b0b0d;margin-top:-30px}
@keyframes flowx{to{background-position:24px 0}}

/* ---- faq ---- */
.faq-sec{padding-top:clamp(110px,18vh,220px)}
.faq{max-width:860px;margin:44px auto 0;border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:26px 4px;font-size:clamp(18px,2vw,22px);font-weight:600;letter-spacing:-.025em;transition:color .2s}
.faq summary::-webkit-details-marker{display:none}
.faq summary:hover{color:#fff}
.faq summary::after{content:"";flex:none;width:11px;height:11px;margin-right:4px;border-right:2px solid var(--ink-3);border-bottom:2px solid var(--ink-3);transform:translateY(-3px) rotate(45deg);transition:transform .5s var(--out)}
.faq details[open] summary::after{transform:translateY(2px) rotate(-135deg)}
.ans{overflow:hidden}
.ans p{padding:0 4px 26px;font-size:17px;line-height:1.55;color:var(--ink-3);max-width:68ch}
.ans b{color:var(--ink-2)}

/* ---- finale ---- */
.finale{padding:clamp(140px,24vh,280px) 0 clamp(40px,8vh,100px);text-align:center;overflow:hidden}
.finale h2{font-size:clamp(68px,14vw,200px);letter-spacing:-.065em;line-height:.95}
.finale h2 .glow-text{background-image:linear-gradient(90deg,#ffd60a,#ff9f0a,#ff375f,#bf5af2,#ff9f0a,#ffd60a);background-size:300% 100%;animation:shimmer 9s linear infinite;padding:0 .04em .08em}
.finale .lede{margin:18px 0 34px}
.finale-glow{position:absolute;left:50%;top:58%;width:min(1000px,120vw);height:560px;transform:translate(-50%,-50%);background:radial-gradient(closest-side,rgba(255,159,10,.26),rgba(255,55,95,.12) 55%,transparent);filter:blur(30px);pointer-events:none}

/* ---- responsive ---- */
@media (max-width:1060px){
  .bento{grid-template-columns:1fr 1fr}
  .t-wide{grid-column:span 2}
}
@media (max-width:900px){
  .story-track{height:auto;margin-top:0}
  .story-sticky{position:relative;height:auto;padding:40px 0 0}
  .story-grid{grid-template-columns:1fr;padding-top:0;gap:30px}
  .story-stage{order:-1;max-height:none;max-width:520px}
  .story-copy{min-height:250px}
  .studio{grid-template-columns:1fr}
  .studio-l{position:static}
  .holo{width:min(100%,340px)}
}
@media (max-width:680px){
  .hero-stats{gap:8px;padding-top:30vh}
  .hs{padding:12px 12px;border-radius:18px}
  .hs small{font-size:11px}
  .hs b{font-size:19px}
  .hide-sm{display:none}
  .bento{grid-template-columns:1fr}
  .t-wide{grid-column:auto;flex-direction:column;align-items:stretch}
  .t-copy{max-width:none;align-self:auto}
  .tile{min-height:280px;padding:26px}
  .mock-wallet,.mock-page{width:100%}
  .dl-head{align-items:stretch}
  .dl-tools{width:100%}
  .dl-search{flex:1;width:auto}
  .dl-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .dl-card{padding:8px;border-radius:20px}
  .dl-meta b{font-size:14px}
  .flow-row{flex-direction:column}
  .farrow{width:auto;height:38px}
  .farrow::before{left:50%;right:auto;top:2px;bottom:10px;width:2px;height:auto;background:repeating-linear-gradient(180deg,var(--accent) 0 6px,transparent 6px 12px)}
  .farrow::after{left:50%;right:auto;top:auto;bottom:0;margin:0 0 0 -5px;border:5px solid transparent;border-top:7px solid var(--accent)}
  .farrow span{margin:0 0 0 76px}
  .token-card{padding:22px}
  .token-card .btn{width:100%}
  .launch-card .grid2{grid-template-columns:1fr;gap:0}
}
@media (prefers-reduced-motion:reduce){
  .hero-glow,.finale h2 .glow-text,.mq-track{animation:none}
}

.art-card:empty{display:none}
