@font-face{font-family:Nunito;font-style:normal;font-weight:400 900;font-display:swap;src:url(fonts/nunito-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Nunito Fallback";src:local("Arial");size-adjust:101%;ascent-override:99%;descent-override:34.5%;line-gap-override:0%}
:root{--purple:#7C3AED;--orange:#FF7A1A;--yellow:#FFC107;--navy:#0E1B4D;--grad:linear-gradient(135deg,#FF7A1A,#FFC107);
--bg:#FBF9FF;--bg2:#F3EEFF;--card:#fff;--text:#0E1B4D;--muted:#4A5578;--line:rgba(124,58,237,.16);--shadow:0 10px 30px -12px rgba(14,27,77,.25);--accent:#6D28D9}
[data-theme=dark]{--bg:#0B1026;--bg2:#111842;--card:#151D47;--text:#EEF0FF;--muted:#B4BAE0;--line:rgba(167,139,250,.22);--shadow:0 10px 40px -12px rgba(0,0,0,.6);--accent:#C4B5FD}
*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:Nunito,"Nunito Fallback",system-ui,sans-serif;background:var(--bg);color:var(--text);line-height:1.6;transition:background .4s,color .4s;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
h1,h2,h3{font-weight:900;line-height:1.15;margin:0 0 .5em;letter-spacing:-.01em}
h2{font-size:clamp(1.7rem,4.5vw,2.6rem);text-align:center}h3{font-weight:800;font-size:1.15rem}
.wrap{max-width:1120px;margin:0 auto;padding:0 20px}.narrow{max-width:720px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.skip{position:absolute;left:-999px;top:8px;z-index:99;background:var(--purple);color:#fff;padding:8px 14px;border-radius:10px}.skip:focus{left:8px}
:focus-visible{outline:3px solid var(--yellow);outline-offset:3px;border-radius:8px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--grad);color:#1a1033;font-weight:900;font-size:1.05rem;padding:14px 26px;border-radius:999px;border:0;cursor:pointer;text-decoration:none;box-shadow:0 8px 22px -8px rgba(255,122,26,.7);transition:transform .2s,box-shadow .2s;font-family:inherit}
.btn:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 14px 28px -8px rgba(255,122,26,.8)}.btn:active{transform:scale(.97)}
.btn.ghost{background:rgba(255,255,255,.1);color:#fff;box-shadow:inset 0 0 0 2px rgba(255,255,255,.4);backdrop-filter:blur(6px)}
.btn-sm{padding:8px 16px;font-size:.95rem}
.nav{position:fixed;inset:0 0 auto;z-index:50;display:flex;justify-content:space-between;align-items:center;padding:12px 20px;transition:background .3s,box-shadow .3s}
.nav.scrolled{background:color-mix(in srgb,var(--bg) 82%,transparent);backdrop-filter:blur(14px);box-shadow:0 1px 0 var(--line)}
.brand{display:flex;align-items:center;gap:8px;font-weight:900;font-size:1.3rem;color:#fff;text-decoration:none}.nav.scrolled .brand{color:var(--accent)}
.nav-actions{display:flex;gap:8px;align-items:center}
.chip{font:inherit;font-weight:800;font-size:.85rem;min-width:40px;height:40px;border-radius:999px;border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.12);color:#fff;cursor:pointer;display:grid;place-items:center;backdrop-filter:blur(6px);transition:transform .2s}
.chip:hover{transform:rotate(-8deg) scale(1.06)}.nav.scrolled .chip{color:var(--text);border-color:var(--line);background:var(--card)}
.chip .moon{display:none}[data-theme=dark] .chip .sun{display:none}[data-theme=dark] .chip .moon{display:block}
/* hero */
.hero{position:relative;min-height:100svh;display:flex;align-items:center;padding:110px 0 120px;color:#fff;overflow:hidden;background:#0B1026}
.scene{position:absolute;inset:0}
[data-theme=light] .hero{background:#1B1150}
.hero-grid{position:relative;display:grid;gap:32px;align-items:center}
.pill{display:inline-block;padding:6px 14px;border-radius:999px;background:rgba(124,58,237,.35);border:1px solid rgba(196,181,253,.5);font-weight:800;font-size:.9rem;margin-bottom:16px}
h1{font-size:clamp(2.1rem,6.5vw,4rem)}
.grad{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.lead{font-size:1.15rem;color:inherit;opacity:.92;max-width:38em}
.hero .lead{color:#E3E0FF}
.cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.hero-art{position:relative;justify-self:center;width:min(70vw,360px)}
.glow{position:absolute;inset:10%;background:radial-gradient(circle,rgba(255,150,40,.55),rgba(124,58,237,.35) 50%,transparent 70%);filter:blur(30px)}
.mascot{position:relative;width:100%;animation:float 6s ease-in-out infinite;filter:drop-shadow(0 0 18px rgba(255,140,40,.35)) drop-shadow(0 24px 30px rgba(0,0,0,.45))}
@keyframes float{0%,100%{transform:translate(0,0) rotate(0)}30%{transform:translate(-6px,-16px) rotate(-4deg)}65%{transform:translate(6px,-6px) rotate(2.5deg)}}
.hero-fade{position:absolute;left:0;right:0;bottom:-1px;height:200px;background:linear-gradient(transparent,var(--sky1))}
/* sections */
section{padding:80px 0}
.cards{display:grid;gap:18px;margin-top:32px}
.card{background:var(--card);border:1px solid var(--line);border-radius:24px;padding:26px;box-shadow:var(--shadow);transition:transform .3s,box-shadow .3s}
.card:hover{transform:translateY(-6px) rotate(-.5deg)}
.card p,.steps p,.faq p,.muted{color:var(--muted)}
.ico{width:60px;height:60px;display:grid;place-items:center;border-radius:18px;background:var(--bg2);margin-bottom:12px}
.how{background:transparent}
.steps{list-style:none;padding:0;margin:36px 0 0;display:grid;gap:18px;counter-reset:s}
.steps li{position:relative;background:var(--card);border:1px solid var(--line);border-radius:24px;padding:26px;box-shadow:var(--shadow)}
.step-ico{width:72px;height:72px;border-radius:22px;display:grid;place-items:center;background:var(--bg2);margin-bottom:14px}
.n{position:absolute;top:18px;right:20px;font-weight:900;font-size:2.4rem;color:var(--purple);opacity:.25}
.note{margin:28px auto 0;max-width:760px;text-align:center;color:var(--muted);background:var(--card);border:1px dashed var(--line);padding:16px 20px;border-radius:18px}
.checks{list-style:none;padding:0;margin:20px 0}
.checks li{position:relative;padding:10px 0 10px 40px;font-weight:700}
details{background:var(--card);border:1px solid var(--line);border-radius:18px;margin:12px 0;padding:4px 20px;transition:box-shadow .3s}
details[open]{box-shadow:var(--shadow)}
summary{cursor:pointer;font-weight:800;padding:14px 28px 14px 0;list-style:none;position:relative}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";position:absolute;right:0;top:10px;font-size:1.5rem;color:var(--purple);transition:transform .3s}
details[open] summary::after{transform:rotate(45deg)}
/* form */
.waitlist{background:transparent}
.form-card{position:relative;text-align:center;background:var(--card);border:1px solid var(--line);border-radius:32px;padding:56px 22px 32px;box-shadow:var(--shadow);margin-top:40px}
.form-mascot{position:absolute;top:-46px;left:50%;translate:-50% 0;animation:float 5s ease-in-out infinite}
.field{display:flex;flex-direction:column;gap:10px;margin-top:22px;text-align:left}
.field input{font:inherit;font-weight:700;font-size:1.05rem;width:100%;padding:15px 20px;border-radius:999px;border:2px solid var(--line);background:var(--bg);color:var(--text);transition:border-color .2s,box-shadow .2s}
.field input::placeholder{color:var(--muted);opacity:.8}
.field input:focus{outline:none;border-color:var(--purple);box-shadow:0 0 0 4px rgba(124,58,237,.25)}
.field input[aria-invalid=true]{border-color:#E5484D}
.btn[disabled]{opacity:.7;cursor:wait}
.hp{position:absolute;left:-5000px;width:1px;height:1px;opacity:0}
.form-msg{min-height:1.4em;margin:10px 0 0;font-weight:700;color:#C62828}[data-theme=dark] .form-msg{color:#FF9B9B}
.fine{font-size:.85rem;color:var(--muted);margin:4px 0 0}
.thanks{animation:pop .5s cubic-bezier(.2,1.4,.4,1)}.burst{font-size:3rem}
.thanks h3{font-size:1.6rem;color:var(--accent)}
@keyframes pop{from{transform:scale(.8);opacity:0}}
footer{position:relative;text-align:center;padding:200px 20px 40px;color:#E3E0FF;font-size:.95rem;overflow:hidden;z-index:2}
.disclaimer{font-weight:800;color:#fff}
/* reveal */
.js .reveal{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.8,.2,1)}
.js .reveal.in{opacity:1;transform:none}
@media(min-width:720px){.cards,.steps{grid-template-columns:repeat(3,1fr)}.field{flex-direction:row}.field .btn{flex-shrink:0}.form-card{padding:64px 48px 40px}}
@media(min-width:960px){.hero-grid{grid-template-columns:1.2fr .8fr}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.js .reveal{opacity:1;transform:none}.layer{transform:none!important}}
@media(max-width:959px){.hero-art{width:min(52vw,230px);order:-1;margin-top:8px}.hero{padding-top:90px}}
/* illustrations */
.js .reveal-img{opacity:0;transform:translateY(40px) scale(.96) rotate(-1.5deg);transition:opacity .8s ease,transform .9s cubic-bezier(.2,.8,.2,1),translate .2s linear}
.js .reveal-img.in{opacity:1;transform:none}
@media(max-width:959px){.hero-art{width:min(62vw,260px)}}
@media(prefers-reduced-motion:reduce){.js .reveal-img{opacity:1;transform:none}.art{translate:none!important}}
/* hero layers */
.layer{position:absolute}
.layer.full{inset:-10% -5%}
.layer.full>img,.drift{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;max-width:none}
.drift .stars-img{width:100%;height:100%;object-fit:cover;max-width:none}
.nebula{opacity:.55;mix-blend-mode:screen;animation:pulse 9s ease-in-out infinite}
@keyframes pulse{50%{opacity:.95;transform:scale(1.08)}}
.d1{animation:drift 90s linear infinite alternate}.d2{animation:drift 60s linear infinite alternate-reverse}.d3{animation:drift 40s linear infinite alternate}
@keyframes drift{to{transform:translate3d(-3%,1.5%,0)}}
.starfield{position:absolute;inset:0}
.star{position:absolute;border-radius:50%;background:#fff;box-shadow:0 0 6px rgba(255,255,255,.8);animation:tw var(--t,3s) ease-in-out var(--dl,0s) infinite}
.star.o{background:#FFD8A8;box-shadow:0 0 8px rgba(255,160,60,.9)}.star.p{background:#DDD0FF;box-shadow:0 0 8px rgba(167,139,250,.9)}
@keyframes tw{0%,100%{opacity:var(--o,.9)}50%{opacity:.12}}
.pl{will-change:transform}
.p1{width:min(38vw,320px);right:-5%;top:9%}.p2{width:min(18vw,130px);left:3%;bottom:16%}.p3{width:min(16vw,150px);left:38%;top:9%;opacity:.85}
.orbit{width:100%}
.o1{animation:orb1 22s ease-in-out infinite}.o2{animation:orb2 14s ease-in-out infinite}.o3{animation:orb3 30s linear infinite}
@keyframes orb1{0%,100%{transform:translate(0,0) rotate(0)}50%{transform:translate(-26px,18px) rotate(12deg)}}
@keyframes orb2{0%,100%{transform:translate(0,0) rotate(0)}33%{transform:translate(18px,-22px) rotate(-14deg)}66%{transform:translate(-10px,-8px) rotate(8deg)}}
@keyframes orb3{0%{transform:translate(0,0) rotate(-6deg)}25%{transform:translate(22px,10px) rotate(0)}50%{transform:translate(0,20px) rotate(6deg)}75%{transform:translate(-22px,10px) rotate(0)}100%{transform:translate(0,0) rotate(-6deg)}}
.shoot{position:absolute;width:160px;height:2px;background:linear-gradient(90deg,transparent,#fff 70%,#FFD8A8);border-radius:2px;opacity:0;animation:shoot 9s linear infinite;filter:drop-shadow(0 0 4px #fff)}
.s1{top:12%;left:72%}.s2{top:40%;left:95%;animation-delay:3.2s;animation-duration:11s}.s3{top:4%;left:45%;animation-delay:6.5s;animation-duration:13s}
@keyframes shoot{0%{opacity:0;transform:rotate(-25deg) translateX(0)}2%{opacity:1}9%{opacity:0;transform:rotate(-25deg) translateX(-420px)}100%{opacity:0;transform:rotate(-25deg) translateX(-420px)}}
.sparkles{position:absolute;inset:0}
.spk{position:absolute;width:var(--s,10px);height:var(--s,10px);background:var(--c,#FFC107);clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);animation:spk var(--t,6s) ease-in-out var(--dl,0s) infinite;opacity:0}
@keyframes spk{0%,100%{opacity:0;transform:translateY(0) scale(.4) rotate(0)}40%{opacity:.95;transform:translateY(-18px) scale(1) rotate(45deg)}70%{opacity:.5;transform:translateY(-34px) scale(.7) rotate(90deg)}}
.hero-art{will-change:transform}
/* icons */
.ic{width:30px;height:30px;color:var(--purple);--ic2:var(--orange);flex-shrink:0}
[data-theme=dark] .ic{color:#B79CFF;--ic2:#FF9A4D}
.ico{color:var(--purple)}
.step-ico .ic{width:38px;height:38px}
.ic-inline{width:22px;height:22px;vertical-align:-5px;margin-right:6px}
.checks li{display:flex;gap:12px;align-items:center;padding:8px 0}
.checks li .ic{width:36px;height:36px;padding:6px;border-radius:12px;background:var(--bg2)}
.burst .ic{width:64px;height:64px;padding:12px;border-radius:22px;background:var(--bg2);margin:0 auto 8px;animation:float 5s ease-in-out infinite}
.burst{font-size:0}
/* transparent illustrations */
.art{position:relative;margin:40px auto 44px;max-width:600px;translate:0 var(--py,0px);transition:translate .2s linear}
.art::before{content:"";position:absolute;inset:8% 6%;border-radius:50%;background:radial-gradient(closest-side,rgba(124,58,237,.22),transparent);filter:blur(20px);z-index:0}
[data-theme=dark] .art::before{background:radial-gradient(closest-side,rgba(167,139,250,.28),rgba(255,122,26,.08) 60%,transparent)}
.art img{position:relative;width:100%;filter:drop-shadow(0 18px 28px rgba(14,27,77,.18))}
[data-theme=dark] .art img{filter:drop-shadow(0 18px 30px rgba(0,0,0,.45))}
@media(max-width:719px){.p3{left:83%;top:31%;width:48px}.p1{top:5%}.p2{left:72%;bottom:6%;width:70px}}
@media(prefers-reduced-motion:reduce){.star,.spk,.shoot{animation:none!important}.spk,.shoot{display:none}}
/* ===== cosmic page ===== */
:root{--sky1:#EFE6FF;--sky2:#F7EEFF;--sky3:#FFE7D6;--nebA:rgba(167,139,250,.35);--nebB:rgba(255,154,77,.25);--nebC:rgba(236,72,153,.18);--starc:#8B5CF6;--glass:rgba(255,255,255,.72);--glass2:rgba(240,232,255,.66)}
[data-theme=dark]{--sky1:#0B1026;--sky2:#120A35;--sky3:#1A0F3D;--nebA:rgba(124,58,237,.35);--nebB:rgba(255,122,26,.16);--nebC:rgba(236,72,153,.16);--starc:#fff;--glass:rgba(24,30,82,.78);--glass2:rgba(52,28,112,.62)}
body{background:var(--sky1)}
.cosmos{position:fixed;inset:0;z-index:0;pointer-events:none;background:linear-gradient(180deg,var(--sky1),var(--sky2) 55%,var(--sky3));overflow:hidden}
.cz{position:absolute;left:0;right:0;top:0;height:170%;will-change:transform}
.neb{position:absolute;border-radius:50%}
.n1{width:60vw;height:50vh;left:-15vw;top:20%;background:radial-gradient(closest-side,var(--nebA),transparent);animation:nebd 26s ease-in-out infinite}
.n2{width:55vw;height:45vh;right:-15vw;top:50%;background:radial-gradient(closest-side,var(--nebB),transparent);animation:nebd 32s ease-in-out -8s infinite reverse}
.n3{width:45vw;height:40vh;left:25vw;top:85%;background:radial-gradient(closest-side,var(--nebC),transparent);animation:nebd 22s ease-in-out -4s infinite}
@keyframes nebd{50%{transform:translate3d(6vw,-4vh,0) scale(1.15)}}
.cosmos .star,.horizon .star{background:var(--starc);box-shadow:0 0 6px var(--starc)}
[data-theme=light] .cosmos .star{--o:.45}
main,footer{position:relative}main{overflow-x:clip}main>section:not(.hero){position:relative;z-index:2}
.hero{z-index:3}.nav{z-index:60}
/* comet traveler */
.comet{position:fixed;left:0;top:0;width:64px;height:60px;z-index:1;pointer-events:none;opacity:0;will-change:transform,opacity}
.comet img{position:relative;width:100%;filter:drop-shadow(0 0 14px rgba(255,140,40,.7))}
.trail{position:absolute;right:28px;top:50%;width:84px;height:14px;margin-top:-7px;border-radius:14px;background:linear-gradient(90deg,transparent,rgba(167,139,250,.5),rgba(255,122,26,.85));filter:blur(3px);transform-origin:right center}
/* drifting planets */
.drifter{position:absolute;z-index:-1;pointer-events:none;translate:0 var(--py,0px);opacity:.9}
.dr1{width:min(22vw,170px);right:4%;top:-60px;animation:orb3 30s linear infinite}
.dr3{width:min(16vw,110px);right:6%;bottom:10%;animation:orb2 16s ease-in-out infinite}
/* glass cards */
.glass{position:relative;overflow:hidden;isolation:isolate;background:linear-gradient(145deg,var(--glass),var(--glass2))!important;border:1px solid var(--line);box-shadow:var(--shadow),inset 0 1px 0 rgba(255,255,255,.25)}
.glass::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
background:radial-gradient(1.5px 1.5px at 12% 22%,var(--starc),transparent),radial-gradient(1px 1px at 78% 14%,var(--starc),transparent),radial-gradient(1.5px 1.5px at 64% 70%,var(--starc),transparent),radial-gradient(1px 1px at 30% 84%,var(--starc),transparent),radial-gradient(1.2px 1.2px at 90% 56%,var(--starc),transparent),
radial-gradient(120% 90% at 110% -10%,var(--nebA),transparent 55%),radial-gradient(90% 70% at -10% 110%,var(--nebB),transparent 60%);animation:twk 4s ease-in-out infinite alternate}
@keyframes twk{from{opacity:.65}to{opacity:1}}
.glass::after{content:"";position:absolute;z-index:-1;pointer-events:none;width:260px;height:260px;right:-120px;bottom:-150px;border-radius:50%;border:1px dashed var(--line);box-shadow:0 0 0 22px transparent,0 0 0 23px var(--line);animation:spin 60s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.shine{position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(105deg,transparent 40%,rgba(255,255,255,.22) 50%,transparent 60%);transform:translateX(-120%);animation:shine 7s ease-in-out infinite}
@keyframes shine{0%,70%{transform:translateX(-120%)}100%{transform:translateX(120%)}}
.card.glass,.steps li.glass{transition:transform .25s ease,box-shadow .3s,opacity .7s}
.glass.tilt{box-shadow:var(--shadow),0 0 0 1px rgba(167,139,250,.5),0 18px 50px -12px rgba(124,58,237,.55)}
.note.glass{border-style:dashed}
/* orbit connector */
.steps-wrap{position:relative}
.orbit-line{position:absolute;pointer-events:none;overflow:visible;z-index:0}
.orbit-line path{fill:none;stroke-width:3;vector-effect:non-scaling-stroke}
.ol-bg{stroke:var(--line);stroke-dasharray:6 8}
.ol-fg{stroke:url(#g);stroke-dasharray:1;stroke-dashoffset:var(--ol,1);stroke-linecap:round;filter:drop-shadow(0 0 6px rgba(255,122,26,.6))}
.orbit-line:not(.v){left:0;right:0;top:-40px;height:150px;display:none}
.orbit-line.v{left:50%;width:60px;margin-left:-30px;top:0;bottom:0;height:100%}
.steps{position:relative;z-index:1}
@media(min-width:720px){.orbit-line:not(.v){display:block}.orbit-line.v{display:none}}
.steps .n{transform:scale(.3);opacity:0;transition:transform .6s cubic-bezier(.2,1.6,.4,1) .4s,opacity .4s .4s}
.steps li.in .n,.no-js .n{transform:none;opacity:.35}
/* stagger fly-in */
.js .reveal.glass:nth-child(odd){transform:translate(-30px,40px) rotate(-2deg)}
.js .reveal.glass:nth-child(even){transform:translate(30px,40px) rotate(2deg)}
.js .reveal.glass.in{transform:none}
/* icon draw-in */
.ic path,.ic rect,.ic circle{stroke-dasharray:64;stroke-dashoffset:0;transition:stroke-dashoffset 1.3s cubic-bezier(.6,0,.2,1) .3s,fill-opacity .5s 1s}
.js .reveal:not(.in) .ic path,.js .reveal:not(.in) .ic rect,.js .reveal:not(.in) .ic circle{stroke-dashoffset:64;fill-opacity:0}
.ico,.step-ico{transition:transform .5s cubic-bezier(.2,1.6,.4,1)}.glass:hover .ico,.glass:hover .step-ico{transform:scale(1.08) rotate(-6deg)}
.ico,.step-ico{background:linear-gradient(145deg,rgba(124,58,237,.14),rgba(255,122,26,.12))}
/* footer horizon */
.horizon{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,transparent,#2A1663 35%,#140B38)}
[data-theme=light] .horizon{background:linear-gradient(180deg,transparent,#B9A2F5 30%,#4C2A9E 75%,#2A1663)}
.surface{position:absolute;left:-30%;right:-30%;top:150px;height:900px;border-radius:50%;background:radial-gradient(ellipse at 50% 0,#FF9A4D 0,#C2410C 8%,#3B1A7A 30%,#140B38 60%);box-shadow:0 -10px 60px rgba(255,140,40,.55),0 -2px 0 rgba(255,200,120,.8)}
footer p{position:relative}
@media(max-width:719px){.cosmos .star:nth-child(n+50){display:none}.glass::after{display:none}.dr2{display:none}}
@media(prefers-reduced-motion:reduce){.comet,.drifter,.shine{display:none}.cz{transform:none!important}.js .reveal.glass{transform:none}.steps .n{transform:none;opacity:.35}.ol-fg{--ol:0}.js .reveal:not(.in) .ic *{stroke-dashoffset:0!important;fill-opacity:1!important}}
/* ===== step mockups ===== */
.steps li{display:flex;flex-direction:column}
.mock{margin-top:auto;padding-top:18px;font-size:.86rem;line-height:1.35}
.mock>*,.mbody{position:relative}
.chat,.screen,.meet{--mbg:rgba(255,255,255,.82);--mfg:#0E1B4D;--msub:#5B6488;--mline:rgba(124,58,237,.18)}
[data-theme=dark] .mock{--mbg:rgba(10,14,40,.72);--mfg:#EEF0FF;--msub:#A9B0DA;--mline:rgba(167,139,250,.25)}
.mock .mhead,.mock .mbody,.screen,.meet{background:var(--mbg);color:var(--mfg)}
.chat{border-radius:20px;overflow:hidden;border:1px solid var(--mline);padding:0;margin-top:auto}
.steps li .chat{margin-top:18px}
.mhead{display:flex;gap:10px;align-items:center;padding:10px 12px;border-bottom:1px solid var(--mline)}
.mhead b{display:block;font-size:.9rem}.mhead small{color:#22A06B;font-weight:700;font-size:.72rem}
.av{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font-weight:900;font-size:.72rem;color:#fff;flex-shrink:0}
.av.s{background:linear-gradient(135deg,#7C3AED,#A855F7)}.av.b{background:linear-gradient(135deg,#FF7A1A,#FFC107);color:#1a1033}
.mbody{display:flex;flex-direction:column;gap:7px;padding:12px}
.mbody p{margin:0;color:inherit!important}
.in-b,.out-b{max-width:84%;padding:8px 12px;border-radius:18px;font-weight:600}
.in-b{align-self:flex-start;background:rgba(124,58,237,.1);border-bottom-left-radius:6px}
[data-theme=dark] .in-b{background:rgba(167,139,250,.16)}
.out-b{align-self:flex-end;background:linear-gradient(135deg,#7C3AED,#9F5BFF);color:#fff;border-bottom-right-radius:6px}
.linkcard{display:flex;gap:10px;align-items:center;background:var(--mbg)!important;color:var(--mfg)!important;border:1.5px solid rgba(124,58,237,.45);padding:9px 12px}
.linkcard img{width:32px;height:auto;border-radius:8px}.linkcard b{display:block;font-size:.82rem}.linkcard span{display:block;font-weight:900;color:#7C3AED}[data-theme=dark] .linkcard span{color:#C4B5FD}
.linkcard em{display:inline-block;margin-top:4px;font-style:normal;font-weight:900;font-size:.74rem;padding:3px 10px;border-radius:999px;background:var(--grad);color:#1a1033}
.screen,.meet{border:1px solid var(--mline);border-radius:22px;padding:14px;margin-top:18px;display:flex;flex-direction:column;gap:9px}
.held{align-self:flex-start;display:flex;gap:8px;align-items:center;font-weight:800;font-size:.78rem;padding:4px 12px;border-radius:999px;background:rgba(255,122,26,.14);color:#C2410C}
[data-theme=dark] .held{color:#FFB27A}
.held .dot{width:8px;height:8px;border-radius:50%;background:#FF7A1A;box-shadow:0 0 0 0 rgba(255,122,26,.6);animation:ping 1.8s infinite}
@keyframes ping{70%{box-shadow:0 0 0 8px rgba(255,122,26,0)}100%{box-shadow:0 0 0 0 rgba(255,122,26,0)}}
.amt{font-weight:900;font-size:1.5rem;line-height:1.1}.amt small{display:block;font-size:.76rem;color:var(--msub);font-weight:700}
.mchecks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.mchecks li{display:flex!important;align-items:center;gap:8px;padding:0!important;background:none!important;border:0!important;box-shadow:none!important;font-weight:700;border-radius:0}
.mock .ic{width:20px;height:20px;padding:0;background:none;box-shadow:none}
.mnote{margin:0;font-size:.76rem;color:var(--msub)!important;border-top:1px dashed var(--mline);padding-top:8px}
.loc{display:flex;gap:8px;align-items:center;font-weight:700;font-size:.8rem;color:var(--msub)}
.pin{text-align:center;font-weight:800;font-size:.78rem;color:var(--msub);background:rgba(124,58,237,.08);border-radius:16px;padding:10px}
.pdots{display:flex;justify-content:center;gap:12px;margin-top:6px}
.pdots i{width:14px;height:14px;border-radius:50%;border:2px solid #7C3AED;background:#7C3AED;transform:scale(.4);opacity:.3;transition:transform .3s cubic-bezier(.2,1.6,.4,1),opacity .3s}
.in .pdots i{transform:none;opacity:1}
.in .pdots i:nth-child(1){transition-delay:1s}.in .pdots i:nth-child(2){transition-delay:1.2s}.in .pdots i:nth-child(3){transition-delay:1.4s}.in .pdots i:nth-child(4){transition-delay:1.6s}
.rel{display:flex;gap:10px;align-items:center;padding:10px 12px;border-radius:16px;background:rgba(34,160,107,.12);border:1px solid rgba(34,160,107,.35)}
.rel b{display:block;font-size:.85rem}.rel small{color:#178A5A;font-weight:700}[data-theme=dark] .rel small{color:#6EE7B7}
.rel .ic{color:#22A06B}
.avs{display:flex;justify-content:center;align-items:center;gap:10px}.hand{color:var(--msub);font-weight:900}
/* bubbles appear one by one */
.js .reveal .mb{opacity:0;transform:translateY(12px) scale(.94);transition:opacity .45s ease,transform .5s cubic-bezier(.2,1.4,.4,1);transition-delay:calc(var(--i,0)*.35s + .35s)}
.js .reveal.in .mb{opacity:1;transform:none}
/* ===== FAQ accordion ===== */
summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-right:0}
summary::after{content:none!important}
.chev{width:22px;height:22px;flex-shrink:0;color:var(--purple);transition:transform .35s cubic-bezier(.2,.8,.2,1)}
[data-theme=dark] .chev{color:#C4B5FD}
details.is-open .chev{transform:rotate(180deg)}
.fa{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s cubic-bezier(.2,.8,.2,1)}
.fa>div{overflow:hidden}
.fa p{margin:0;padding:0 0 16px;opacity:0;transform:translateY(-6px);transition:opacity .3s,transform .35s}
details.is-open .fa{grid-template-rows:1fr}
details.is-open .fa p{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.js .reveal .mb,.pdots i{opacity:1!important;transform:none!important}.fa,.fa p,.chev{transition:none}}
.steps .mchecks li{flex-direction:row;justify-content:flex-start;text-align:left;margin:0}
/* fix: form mascot inside card, rings kept in corners */
.form-card{padding-top:28px}
.form-mascot{position:relative;top:auto;left:auto;translate:none;display:block;width:110px;height:auto;margin:0 auto 6px;filter:drop-shadow(0 0 16px rgba(255,140,40,.45))}
.glass::after{width:150px;height:150px;right:-92px;bottom:-96px;box-shadow:0 0 0 14px transparent,0 0 0 15px var(--line)}
.form-card.glass::after,details.glass::after,.note.glass::after{display:none}
@media(min-width:720px){.form-card{padding-top:32px}}
/* ===== FAQ v2: bento cards ===== */
.faq .wrap{max-width:1120px}
.faq-head{position:relative;text-align:center;max-width:640px;margin:0 auto}
.faq-head p{margin:0}
.peek{position:absolute;width:96px;right:-40px;top:-46px;transform:rotate(14deg);animation:peek 5s ease-in-out infinite;filter:drop-shadow(0 0 14px rgba(255,140,40,.45))}
@keyframes peek{0%,100%{transform:translate(0,0) rotate(14deg)}50%{transform:translate(-6px,-10px) rotate(4deg)}}
.chips{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:24px 0 28px}
.fchip{font:inherit;font-weight:800;font-size:.92rem;padding:9px 18px;border-radius:999px;border:1.5px solid var(--line);background:var(--glass);color:var(--text);cursor:pointer;transition:transform .2s,background .25s,color .25s,box-shadow .25s}
.fchip:hover{transform:translateY(-2px)}
.fchip[aria-pressed=true]{background:linear-gradient(135deg,#7C3AED,#A855F7);color:#fff;border-color:transparent;box-shadow:0 8px 20px -8px rgba(124,58,237,.8)}
.qgrid{columns:1;column-gap:16px}
@media(min-width:720px){.qgrid{columns:2}}@media(min-width:1024px){.qgrid{columns:3}}
.qcard{break-inside:avoid;margin:0 0 16px;position:relative;border-radius:24px;border:1px solid var(--line);background:linear-gradient(145deg,var(--glass),var(--glass2));box-shadow:var(--shadow);overflow:hidden;isolation:isolate;transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s,opacity .26s ease}
.qcard::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.9;background:radial-gradient(1.2px 1.2px at 85% 20%,var(--starc),transparent),radial-gradient(1px 1px at 20% 80%,var(--starc),transparent),radial-gradient(120% 80% at 110% -20%,var(--nebA),transparent 55%)}
.qcard.tb::before{background:radial-gradient(1.2px 1.2px at 15% 25%,var(--starc),transparent),radial-gradient(120% 80% at -10% 120%,var(--nebB),transparent 55%)}
.qcard.tc::before{background:radial-gradient(1px 1px at 70% 75%,var(--starc),transparent),radial-gradient(110% 80% at 110% 120%,var(--nebC),transparent 55%)}
.qcard:hover{transform:translateY(-4px);box-shadow:var(--shadow),0 16px 40px -14px rgba(124,58,237,.5)}
.qcard.out{opacity:0;transform:scale(.92)}
.qcard h3{margin:0;font-size:1rem}
.qbtn{all:unset;box-sizing:border-box;display:flex;gap:12px;align-items:center;width:100%;padding:18px 18px;cursor:pointer;font-weight:800;color:var(--text);line-height:1.3}
.qbtn:focus-visible{outline:3px solid var(--yellow);outline-offset:-3px;border-radius:24px}
.qt{flex:1}
.qic{width:44px;height:44px;flex-shrink:0;display:grid;place-items:center;border-radius:14px;background:linear-gradient(145deg,rgba(124,58,237,.16),rgba(255,122,26,.14));transition:transform .45s cubic-bezier(.2,1.8,.4,1)}
.qic .ic{width:24px;height:24px}
.qcard:hover .qic{transform:translateY(-3px) rotate(-8deg) scale(1.08)}
.qcard.is-open .qic{transform:rotate(-8deg) scale(1.1)}
.qcard.is-open{box-shadow:var(--shadow),0 0 0 1.5px rgba(167,139,250,.6),0 18px 44px -14px rgba(124,58,237,.55)}
.qcard.is-open .chev{transform:rotate(180deg)}
.qa{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s cubic-bezier(.2,.8,.2,1)}
.qa>div{overflow:hidden}
.qa p{margin:0;padding:0 18px 18px 74px;color:var(--muted);opacity:0;transform:translateY(-6px);transition:opacity .3s .05s,transform .35s}
.qcard.is-open .qa{grid-template-rows:1fr}.qcard.is-open .qa p{opacity:1;transform:none}
.qcta{text-align:center;padding:22px;background:linear-gradient(145deg,rgba(124,58,237,.9),rgba(168,85,247,.85))!important;color:#fff;border-color:transparent}
.qcta img{width:72px;margin:0 auto 6px;animation:float 5s ease-in-out infinite}
.qcta h3{font-size:1.15rem;margin:0 0 4px}.qcta p{margin:0 0 14px;color:#EDE6FF}
@media(max-width:719px){.peek{width:56px;right:4px;top:-58px}.qa p{padding-left:18px}}
@media(prefers-reduced-motion:reduce){.qa,.qa p,.qcard,.qic,.chev,.fchip{transition:none!important}.peek,.qcta img{animation:none}}
/* social */
.social{display:flex;gap:6px;align-items:center}
.soc{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;color:#fff;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.3);backdrop-filter:blur(6px);position:relative;isolation:isolate;overflow:hidden;transition:transform .35s cubic-bezier(.2,1.8,.4,1),box-shadow .3s,color .2s,border-color .2s}
.soc svg{width:17px;height:17px}
.soc::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(135deg,#7C3AED,#FF7A1A);opacity:0;transition:opacity .25s}
.soc:hover,.soc:focus-visible{transform:translateY(-3px) scale(1.08);color:#fff;border-color:transparent;box-shadow:0 8px 20px -6px rgba(255,122,26,.6),0 0 16px rgba(124,58,237,.45)}
.soc:hover::before,.soc:focus-visible::before{opacity:1}
.soc[data-todo]{opacity:.8}
.nav.scrolled .soc,.foot-social .soc{color:var(--accent);background:var(--card);border-color:var(--line)}
.nav.scrolled .soc:hover,.foot-social .soc:hover{color:#fff}
.nav-social{margin-right:4px}
.foot-social{justify-content:center;gap:10px;margin-bottom:18px;position:relative}
.foot-social .soc{width:44px;height:44px;color:#fff;background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.3)}
.foot-social .soc svg{width:20px;height:20px}
@media(max-width:899px){.nav-social .soc:not(.soc-x){display:none}}
@media(max-width:479px){.nav-social{display:none}}@media(max-width:359px){.brand span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}}
@media(prefers-reduced-motion:reduce){.soc{transition:none}}
.hero-fade,.scene,.cosmos,.horizon{pointer-events:none}
/* form: country + consent */
.field .sel{position:relative;flex:0 0 auto}
@media(min-width:720px){.field .sel{width:220px}}
.sel select{font:inherit;font-weight:700;font-size:1.05rem;width:100%;padding:15px 44px 15px 20px;border-radius:999px;border:2px solid var(--line);background:var(--bg);color:var(--muted);appearance:none;-webkit-appearance:none;cursor:pointer;transition:border-color .2s,box-shadow .2s}
.sel select.has-val{color:var(--text)}
.sel select option{color:var(--text);background:var(--bg)}
.sel select:focus{outline:none;border-color:var(--purple);box-shadow:0 0 0 4px rgba(124,58,237,.25)}
.sel select[aria-invalid=true]{border-color:#E5484D}
.sel .chev{position:absolute;right:16px;top:50%;margin-top:-11px;pointer-events:none}
.consent{display:flex;gap:12px;align-items:flex-start;text-align:left;margin:16px 4px 0;font-size:.92rem;color:var(--muted);cursor:pointer;line-height:1.45}
.consent input{position:absolute;opacity:0;width:24px;height:24px;margin:0}
.consent .box{flex:0 0 24px;width:24px;height:24px;border-radius:8px;border:2px solid var(--line);background:var(--bg);display:grid;place-items:center;color:#fff;transition:background .2s,border-color .2s,transform .2s;margin-top:1px}
.consent .box svg{width:16px;height:16px;opacity:0;transform:scale(.4);transition:opacity .2s,transform .25s cubic-bezier(.2,1.6,.4,1)}
.consent input:checked+.box{background:linear-gradient(135deg,#7C3AED,#A855F7);border-color:transparent}
.consent input:checked+.box svg{opacity:1;transform:none}
.consent input:focus-visible+.box{outline:3px solid var(--yellow);outline-offset:2px}
.consent input[aria-invalid=true]+.box{border-color:#E5484D;box-shadow:0 0 0 3px rgba(229,72,77,.2)}
.consent a,.privacy a,.foot-links a,.legal a{color:var(--accent);font-weight:800;text-decoration:underline;text-underline-offset:3px}
.submit-btn{width:100%;margin-top:18px}
.foot-links{margin:0 0 10px}.foot-links a{color:#fff}
/* privacy page */
.legal-page main{position:relative;z-index:2;padding:110px 0 60px}
.legal{max-width:760px;margin:0 auto;padding:36px clamp(20px,4vw,48px)}
.legal h1{font-size:clamp(1.8rem,5vw,2.6rem);margin-bottom:6px}
.legal .upd{color:var(--muted);font-weight:700;margin:0 0 24px}
.legal dl{margin:0}.legal dt{font-weight:900;font-size:1.05rem;margin-top:20px;color:var(--accent)}
.legal dd{margin:4px 0 0;color:var(--text)}
.legal .closing{margin-top:28px;padding:16px 18px;border-radius:16px;background:rgba(124,58,237,.1);font-weight:700}
.legal-page .nav .brand{color:var(--accent)}
.legal{border-radius:28px}.legal a.btn{color:#1a1033;text-decoration:none;margin-top:8px}.legal.glass::after{display:none}
/* ===== meteor logo: animated trail (all loop durations divide 4s) ===== */
.meteor{position:relative;display:block;container-type:inline-size}
.mt-body{position:relative;display:block;animation:mtDive 4s ease-in-out infinite;will-change:transform}
.meteor img{position:relative;z-index:1;display:block;width:100%;height:auto}
.meteor .mascot{animation:none}
.mt-fx{position:absolute;inset:0;z-index:0;pointer-events:none}
.mt-axis{position:absolute;left:62%;top:60%;width:0;height:0;transform:rotate(216deg)}
.fl{position:absolute;left:20cqw;top:0;border-radius:50%;transform-origin:0 50%;mix-blend-mode:screen}
.f1{width:85cqw;height:40cqw;margin-top:-20cqw;background:radial-gradient(ellipse at 0% 50%,rgba(255,214,90,.75),rgba(255,122,26,.55) 30%,rgba(168,85,247,.35) 60%,transparent 72%);animation:mtFlick1 .8s ease-in-out infinite}
.f2{width:68cqw;height:26cqw;margin-top:-20cqw;background:radial-gradient(ellipse at 0% 50%,rgba(255,170,60,.7),rgba(236,72,153,.35) 50%,transparent 70%);animation:mtFlick2 1s ease-in-out infinite}
.f3{width:72cqw;height:24cqw;margin-top:-2cqw;background:radial-gradient(ellipse at 0% 50%,rgba(255,200,80,.6),rgba(124,58,237,.4) 55%,transparent 72%);animation:mtFlick3 .8s ease-in-out -.4s infinite}
@keyframes mtFlick1{0%,100%{transform:scale(1,1)}50%{transform:scale(1.08,.9) translateY(1.5cqw)}}
@keyframes mtFlick2{0%,100%{transform:scale(1,1) translateY(0)}50%{transform:scale(1.15,1.1) translateY(-2cqw)}}
@keyframes mtFlick3{0%,100%{transform:scale(1,1) translateY(0)}50%{transform:scale(.9,1.12) translateY(2cqw)}}
.sl{position:absolute;left:40cqw;height:.7cqw;min-height:1px;width:40cqw;border-radius:2cqw;background:linear-gradient(90deg,rgba(255,255,255,.7),transparent);opacity:0;animation:mtLine 1s linear infinite}
.l1{top:-16cqw}.l2{top:12cqw;animation-delay:-.33s}.l3{top:-2cqw;width:45cqw;animation-delay:-.66s}
@keyframes mtLine{0%{opacity:0;transform:translateX(-10cqw)}25%{opacity:.8}100%{opacity:0;transform:translateX(60cqw)}}
.em{position:absolute;left:30cqw;top:0;width:3cqw;height:3cqw;margin:-1.5cqw 0 0;border-radius:50%;background:radial-gradient(circle,#FFF3C4,#FFB020 45%,rgba(255,122,26,0) 70%);opacity:0;animation:mtEmber 1s linear infinite}
.e1{--y:-10cqw;--y2:-24cqw}.e2{--y:6cqw;--y2:18cqw;animation-delay:-.2s;animation-duration:.8s}.e3{--y:-2cqw;--y2:-8cqw;animation-delay:-.5s}
.e4{--y:10cqw;--y2:26cqw;animation-delay:-.7s;animation-duration:.8s;width:2cqw;height:2cqw}.e5{--y:-14cqw;--y2:-30cqw;animation-delay:-.35s;width:2.2cqw;height:2.2cqw}
.e6{--y:2cqw;--y2:10cqw;animation-delay:-.85s;animation-duration:2s}.e7{--y:-6cqw;--y2:-20cqw;animation-delay:-1.3s;animation-duration:2s;width:2cqw;height:2cqw}
.e8{--y:8cqw;--y2:14cqw;animation-delay:-.1s;animation-duration:.8s;width:1.6cqw;height:1.6cqw}.e9{--y:-18cqw;--y2:-12cqw;animation-delay:-.6s;width:2.4cqw;height:2.4cqw;background:radial-gradient(circle,#F3E8FF,#A855F7 50%,rgba(168,85,247,0) 72%)}
.e10{--y:14cqw;--y2:30cqw;animation-delay:-1.6s;animation-duration:2s;background:radial-gradient(circle,#F3E8FF,#A855F7 50%,rgba(168,85,247,0) 72%)}
@keyframes mtEmber{0%{opacity:0;transform:translate(0,var(--y)) scale(1)}15%{opacity:1}100%{opacity:0;transform:translate(62cqw,var(--y2)) scale(.3)}}
@keyframes mtDive{0%,100%{transform:translate(0,0) rotate(0)}50%{transform:translate(2.5%,3%) rotate(3deg)}}
.hero-art .glow{animation:mtGlow 2s ease-in-out infinite}
@keyframes mtGlow{0%,100%{opacity:.75;transform:scale(1)}50%{opacity:1;transform:scale(1.08)}}
/* nav: compact; animate on load + hover */
.brand .meteor.mini{width:40px;height:38px;flex-shrink:0;overflow:visible}
.brand .meteor.mini img{width:40px;height:38px;filter:drop-shadow(0 0 6px rgba(255,140,40,.5))}
.mini .fl,.mini .em,.mini .mt-body{animation-play-state:paused}
.mini .mt-fx{opacity:.55;transition:opacity .3s}
.mini .em{display:none}
.brand:hover .mini .fl,.brand:hover .mini .em,.brand:hover .mini .mt-body,.brand:focus-visible .mini .fl,.brand:focus-visible .mini .em,.mt-live .mini .fl,.mt-live .mini .em,.mt-live .mini .mt-body{animation-play-state:running}
.brand:hover .mini .mt-fx,.brand:focus-visible .mini .mt-fx,.mt-live .mini .mt-fx{opacity:1}
.brand:hover .mini .em,.brand:focus-visible .mini .em,.mt-live .mini .em{display:block}
.brand img[src*="icon"]{display:none}
@media(prefers-reduced-motion:reduce){.mt-body,.fl,.sl,.em,.hero-art .glow{animation:none!important}.sl,.em{display:none!important}.mini .mt-fx{opacity:.8}}
.hero-copy{position:relative;z-index:2}
/* ===== roadmap ===== */
.roadmap{position:relative;padding:90px 0 70px}
.rm-head{text-align:center;max-width:640px;margin:0 auto}
.rm-track{position:relative;margin-top:40px}
.rm-path{position:absolute;pointer-events:none;overflow:visible}
.rm-path path{fill:none;stroke-width:3;vector-effect:non-scaling-stroke}
.rm-bg{stroke:var(--line);stroke-dasharray:6 8}
.rm-fg{stroke:url(#g);stroke-dasharray:1;stroke-dashoffset:1;stroke-linecap:round;filter:drop-shadow(0 0 6px rgba(255,122,26,.6))}
.rm-path.h{display:none;left:0;right:0;top:0;height:140px;width:100%}
.rm-path.v{left:6px;top:0;width:40px;height:100%}
.rm-meteor{position:absolute;left:3px;top:0;width:46px;height:auto;z-index:3;will-change:transform;filter:drop-shadow(0 0 10px rgba(255,140,40,.7));transition:transform .15s linear}
.rm-cards{list-style:none;margin:0;padding:0 0 0 58px;display:grid;gap:20px}
.rm-card{position:relative;border-radius:24px;padding:24px;overflow:visible!important}
.rm-station{position:absolute;left:-46px;top:28px;width:22px;height:22px;border-radius:50%;background:var(--bg2);border:2px solid var(--line);display:grid;place-items:center;z-index:2;transition:transform .4s,border-color .4s}
.rm-station i{width:10px;height:10px;border-radius:50%;background:var(--muted);opacity:.4;transition:opacity .4s,transform .4s}
.rm-card.lit .rm-station{border-color:#FF9A1F;transform:scale(1.15)}
.rm-card.lit .rm-station i{background:radial-gradient(circle,#FFF3C4,#FF7A1A);opacity:1;transform:scale(1.2)}
.rm-card.lit .rm-station::after{content:"";position:absolute;inset:-8px;border-radius:50%;background:radial-gradient(circle,rgba(255,154,31,.45),transparent 70%);animation:rmPulse 2s ease-in-out infinite}
@keyframes rmPulse{50%{opacity:.35;transform:scale(1.25)}}
.rm-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.rm-top .step-ico{margin:0;width:60px;height:60px;border-radius:18px}
.rm-chip{font-size:.78rem;font-weight:800;padding:6px 12px;border-radius:999px;border:1px solid var(--line)}
.rm-chip.now{background:linear-gradient(135deg,#FF7A1A,#FFC107);color:#1a0b2e;border-color:transparent}
.rm-chip.next{background:rgba(168,85,247,.18);color:var(--text)}
.rm-chip.later{background:transparent;color:var(--muted)}
.rm-meta{margin:14px 0 2px;font-size:.85rem;font-weight:700;color:var(--muted);letter-spacing:.02em}
.rm-card h3{margin:0 0 10px}
.rm-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.rm-list li{display:flex;gap:8px;align-items:flex-start;color:var(--muted);line-height:1.45}
.rm-list .ic{width:18px;height:18px;flex-shrink:0;margin-top:2px;color:#FF9A1F}
.rm-card:not(.lit) .rm-list .ic{opacity:.55}
.rm-foot{text-align:center;margin:26px 0 14px;font-size:.9rem}
.rm-cta{text-align:center}
.nav-link{font-weight:800;color:var(--text);text-decoration:none;padding:8px 6px;display:none}
.nav-link:hover{color:#FF9A1F}
@media(min-width:720px){.nav-link{display:inline-block}
 .rm-path.h{display:block}.rm-path.v{display:none}
 .rm-track{padding-top:110px}
 .rm-meteor{left:0;width:56px}
 .rm-cards{padding:0;grid-template-columns:repeat(3,1fr);gap:22px}
 .rm-station{left:50%;top:-58px;margin-left:-11px;width:26px;height:26px}
 .ph1 .rm-station{top:-58px}.ph2 .rm-station{top:-58px}.ph3 .rm-station{top:-58px}}
@media(prefers-reduced-motion:reduce){.rm-meteor{transition:none}.rm-card.lit .rm-station::after{animation:none}}
.rm-card.glass::after{display:none}
