:root{
  color-scheme:dark;
  --void:#000; --ink:#fff; --ink2:#E9E9EC; --body:#B4B4BC; --soft:#9A9AA2; --dim:#8E8E98; --faint:#6E6E76;
  --hair:#1F1F23; --hair2:#2E2E34; --panel:#0A0A0B;
  --green:#34D378; --fade-a:#6FD9A3; --fade-b:#2EBD73;
  --display:Archivo,ui-sans-serif,system-ui,sans-serif;
  --sans:Inter,ui-sans-serif,system-ui,sans-serif;
  --mono:'JetBrains Mono',ui-monospace,Menlo,monospace;
}
html{background:#000}
img{max-width:100%}
[hidden]{display:none !important}
body{margin:0;font-size:16px;background:var(--void);color:var(--ink2);font-family:var(--sans);-webkit-font-smoothing:antialiased}
a{color:var(--green)}a:hover{color:var(--fade-a)}
.page *,.page *::before,.page *::after{box-sizing:border-box}
.page{background:var(--void);overflow-x:clip;max-width:100vw}
:focus-visible{outline:2px solid var(--fade-a);outline-offset:3px;border-radius:8px}
.c-g{--lc:#34D378;--lcr:52,211,120}
.c-b{--lc:#5AA8FF;--lcr:90,168,255}
.c-a{--lc:#FFB23A;--lcr:255,178,58}

@property --chapang{syntax:'<angle>';inherits:false;initial-value:0deg}
@keyframes chapspin{to{--chapang:360deg}}
@keyframes endFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@keyframes fadeUp{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
@keyframes drift{0%{transform:scale(1)}100%{transform:scale(1.06)}}
@keyframes lineIn{from{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:none}}
@keyframes scan{0%{top:8%;opacity:0}12%{opacity:1}88%{opacity:1}100%{top:90%;opacity:0}}
@keyframes softpulse{0%,100%{opacity:.55}50%{opacity:1}}

.wrap{position:relative;z-index:2;max-width:1200px;margin:0 auto;padding:0 32px}



.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:12px 22px;border-radius:999px;font:600 15px var(--sans);color:#F2F2F2;text-decoration:none;white-space:nowrap;background:#0B0B0C;border:1px solid #34343B;box-shadow:inset 0 1px 0 rgba(255,255,255,.06);transition:border-color .2s,background .2s;cursor:pointer}
.btn:hover{background:#141416;border-color:#4A4A52;color:#fff}
.btn-em{border:1px solid rgba(52,211,120,.62);background:linear-gradient(180deg,rgba(52,211,120,.16),rgba(52,211,120,.04)),#0B0B0C;box-shadow:0 0 24px -8px rgba(52,211,120,.65),inset 0 1px 0 rgba(255,255,255,.08);color:#fff}
.btn-s{min-height:40px;padding:8px 16px;font-size:14px}

.sec{position:relative;padding:150px 0 110px}
.sec::after{content:"";position:absolute;left:0;right:0;top:0;height:680px;background:radial-gradient(34% 42% at 50% 44%,rgba(var(--lcr),.16),rgba(var(--lcr),.05) 55%,transparent 80%);pointer-events:none;z-index:0}
.seam{position:absolute;top:0;left:50%;width:min(360px,64%);height:1px;transform:translateX(-50%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.30),transparent);z-index:3}
.sh{display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px;margin-bottom:56px}
.gicon{flex:none;width:132px;height:132px;border-radius:32px;overflow:hidden;background:#0b0b0d;margin-bottom:10px;box-shadow:0 0 0 1px rgba(255,255,255,.10),inset 0 1px 0 rgba(255,255,255,.14),0 34px 70px -24px rgba(var(--lcr),.8),0 0 120px -26px rgba(var(--lcr),.55)}
.gicon video{width:100%;height:100%;object-fit:cover;display:block}
.h1{font-family:var(--display);font-weight:500;font-size:clamp(40px,5vw,62px);line-height:1.04;letter-spacing:-2px;margin:0;color:#fff;text-wrap:balance}
.h2{font-family:var(--display);font-weight:500;font-size:clamp(36px,4.8vw,62px);line-height:1.05;letter-spacing:-.03em;margin:0;color:#fff;text-wrap:balance}
.grad{background:linear-gradient(90deg,var(--fade-a),var(--fade-b));-webkit-background-clip:text;background-clip:text;color:transparent;padding-right:.08em;margin-right:-.08em}
.lede{font-size:clamp(16px,1.4vw,19px);line-height:1.6;color:var(--soft);margin:0;max-width:600px}
.lede strong{color:#fff;font-weight:600}
.sh .lede{margin-left:auto;margin-right:auto;max-width:720px}
.lbl{font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--dim)}

.chip{display:inline-flex;align-items:center;gap:8px;padding:5px 12px 5px 6px;border-radius:999px;border:1.5px solid transparent;background:linear-gradient(#0b0b0d,#0b0b0d) padding-box,linear-gradient(135deg,var(--ul),var(--ud)) border-box;font-family:var(--mono);font-weight:700;font-size:11px;letter-spacing:.08em;color:#fff;white-space:nowrap;line-height:1.4;flex:none;text-transform:uppercase}
.chip .lt{flex:none;width:14px;height:14px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff 0 8%,var(--ul) 42%,var(--ud) 100%);box-shadow:0 0 0 2px #3c3c44,0 0 0 3px #141417,0 0 12px var(--ul)}
.u-td{--ul:#FFB23A;--ud:#9A5A00}
.u-wh{--ul:#34D378;--ud:#0F7A42}

.hero{position:relative;padding:64px 0 120px}
.hero::after{content:"";position:absolute;left:0;right:0;top:0;height:760px;background:radial-gradient(36% 44% at 76% 46%,rgba(52,211,120,.12),rgba(52,211,120,.04) 55%,transparent 80%);pointer-events:none;z-index:0}
.hero-g{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);grid-template-areas:"h art" "w art";column-gap:56px;align-items:center}
.hero-g .h1{grid-area:h;align-self:end}
.hwords{grid-area:w;align-self:start}
.hero .lede{margin-top:22px;max-width:560px}
.hart{grid-area:art;position:relative;aspect-ratio:1/1;width:100%;max-width:640px;justify-self:end;margin:0;border-radius:30px;overflow:hidden;background:#0A0A0B;border:1px solid rgba(255,255,255,.10);box-shadow:0 60px 120px -60px rgba(0,0,0,.95),0 0 110px -44px rgba(52,211,120,.5),0 0 110px -50px rgba(255,255,255,.10)}
.hart::before{content:"";position:absolute;left:14%;right:14%;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.5),transparent);z-index:3}
.hart .drift{position:absolute;inset:0;animation:deskdrift 18s ease-in-out infinite alternate;transform-origin:88% 50%}
@keyframes deskdrift{0%{transform:scale(1)}100%{transform:scale(1.035)}}
.hart img{width:100%;height:100%;object-fit:cover;display:block}
.hart .tagglow{position:absolute;left:70.4%;top:31.6%;width:20%;aspect-ratio:1/1;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(closest-side,rgba(255,90,78,.5),rgba(255,90,78,.14) 55%,transparent);mix-blend-mode:screen;animation:softpulse 3.2s ease-in-out infinite;pointer-events:none}
.hart figcaption{position:absolute;left:0;right:0;bottom:0;height:24%;background:linear-gradient(180deg,transparent,rgba(0,0,0,.78));z-index:2;pointer-events:none}
.hart .who{position:absolute;bottom:20px;transform:translateX(-50%);display:inline-flex;align-items:center;gap:9px;font:700 11.5px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:#E9E9EC;white-space:nowrap}
.hart .who i{width:7px;height:7px;border-radius:50%;display:block;background:#8E8E98}
.hart .who.l{left:21%}
.hart .who.r{left:74%}
.hart .who.r i{background:var(--green);box-shadow:0 0 10px var(--green)}

.door{position:relative;display:grid;grid-template-columns:84px minmax(0,1fr) auto;gap:18px;align-items:center;margin-top:30px;padding:12px 18px 12px 12px;border-radius:24px;text-decoration:none;color:#fff;isolation:isolate;max-width:560px;background:linear-gradient(180deg,#17171A,#0D0D0E);border:1px solid rgba(52,211,120,.4);box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 30px 70px -34px rgba(0,0,0,.9),0 0 50px -26px rgba(52,211,120,.6);transition:transform .25s}
.door::before{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1.5px;background:conic-gradient(from var(--chapang),transparent 0deg,transparent 240deg,rgba(90,245,160,.85) 320deg,transparent 360deg);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:chapspin 5s linear infinite;pointer-events:none}
.door:hover{transform:translateY(-2px);color:#fff}
.dphoto{position:relative;width:84px;height:104px;border-radius:15px;overflow:hidden;border:1px solid rgba(255,255,255,.18)}
.dphoto img{width:100%;height:100%;object-fit:cover;display:block}
.dphoto .scanl{position:absolute;left:6px;right:6px;height:2px;background:linear-gradient(90deg,transparent,rgba(90,245,160,.95),transparent);box-shadow:0 0 10px rgba(52,211,120,.8);animation:scan 3.6s ease-in-out infinite}
.door b{display:block;font:500 21px/1.25 var(--display);letter-spacing:-.3px}
.door .dsub{display:block;margin-top:6px;color:#A8A8B0;font-size:14.5px;line-height:1.5}
.door .go{width:46px;height:46px;border-radius:999px;display:grid;place-items:center;background:rgba(52,211,120,.14);border:1px solid rgba(52,211,120,.55);color:#5AF5A0}

.bento{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.card{position:relative;border-radius:22px;overflow:hidden;background:#0A0A0B;border:1px solid rgba(255,255,255,.09);box-shadow:0 40px 90px -50px rgba(0,0,0,.95),0 0 60px -30px rgba(var(--lcr),.4)}
.card::before{content:"";position:absolute;left:14%;right:14%;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(var(--lcr),.75),transparent);z-index:3}
.card .pic{position:relative;aspect-ratio:1/1;overflow:hidden}
.card .pic img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.4s cubic-bezier(.2,.8,.2,1)}
.card:hover .pic img{transform:scale(1.05)}
.card .pic::after{content:"";position:absolute;left:0;right:0;bottom:0;height:34%;background:linear-gradient(180deg,transparent,#0A0A0B);pointer-events:none}
.card .no{position:absolute;left:14px;top:14px;z-index:2;display:inline-flex;align-items:center;gap:8px;padding:6px 11px;border-radius:999px;background:rgba(10,10,11,.72);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.14);font:700 10.5px var(--mono);letter-spacing:.12em;color:#E9E9EC}
.card .no i{width:6px;height:6px;border-radius:50%;background:var(--lc);box-shadow:0 0 8px var(--lc);display:block}
.card .ct{position:relative;padding:0 20px 24px;margin-top:-22px;z-index:2}
.card .d{margin:0;font-size:15px;line-height:1.58;color:#B4B4BC}
.card .d b{color:#fff;font-weight:600}
.card .d a,.dhead p a,.faq p a,.aside a,.src a{color:var(--green);text-decoration:none;border-bottom:1px solid rgba(52,211,120,.4)}
.swipe{display:none}
.js .bento.wait .card{opacity:0}
.bento.go .card{animation:fadeUp .8s cubic-bezier(.2,.8,.2,1) both}
.bento.go .card:nth-child(2){animation-delay:.12s}
.bento.go .card:nth-child(3){animation-delay:.24s}
.bento.go .card:nth-child(4){animation-delay:.36s}

.h3x{margin:0;font-family:var(--display);font-weight:500;font-size:clamp(28px,3.4vw,44px);line-height:1.1;letter-spacing:-.025em;color:#fff;text-wrap:balance}
.doors{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:stretch;max-width:1080px;margin:0 auto}
.doors .pic{aspect-ratio:4/3}
.doors .pic .gicon{position:absolute;left:20px;bottom:18px;z-index:3;width:76px;height:76px;border-radius:20px;margin:0}
.doors .ct{margin-top:0;padding:18px 24px 28px}
.doors .d{font-size:16.5px;line-height:1.6;color:#C4C4CC}
.doors .d strong{color:#fff;font-weight:600}
code{font:500 .86em var(--mono);color:#E9E9EC;background:#16161A;border:1px solid var(--hair2);border-radius:7px;padding:2px 7px;overflow-wrap:anywhere}
.js .doors.wait .card{opacity:0}
.doors.go .card{animation:fadeUp .8s cubic-bezier(.2,.8,.2,1) both}
.doors.go .card:nth-child(2){animation-delay:.14s}

.tkwrap{position:relative;max-width:640px;margin:0 auto}
.tkwrap::before{content:"";position:absolute;left:-12%;right:-12%;top:8%;bottom:-6%;background:radial-gradient(closest-side,rgba(255,178,58,.20),rgba(255,178,58,.06) 60%,transparent);pointer-events:none}
.ticket{--stub:104px;position:relative;border-radius:22px;background:linear-gradient(180deg,#1C1C21 0%,#131316 46%,#101013 100%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.13),inset 0 1px 0 rgba(255,255,255,.5);
  -webkit-mask:radial-gradient(circle 13px at 0 calc(100% - var(--stub)),transparent 97%,#000),radial-gradient(circle 13px at 100% calc(100% - var(--stub)),transparent 97%,#000);-webkit-mask-composite:source-in;
  mask:radial-gradient(circle 13px at 0 calc(100% - var(--stub)),transparent 97%,#000),radial-gradient(circle 13px at 100% calc(100% - var(--stub)),transparent 97%,#000);mask-composite:intersect}
.tk-top{position:relative;display:flex;align-items:center;gap:9px;padding:20px 26px 6px}
.tk-top .ic{width:26px;height:26px;display:block}
.tk-top .wm{height:17px;width:auto;display:block;opacity:.92}
.tk-top .hole{position:absolute;left:50%;top:16px;width:22px;height:22px;margin-left:-11px;border-radius:50%;background:#000;box-shadow:inset 0 2px 3px rgba(0,0,0,.9),0 1px 0 rgba(255,255,255,.14)}
.fields{margin:0;padding:6px 26px 10px}
.fl{display:grid;grid-template-columns:250px minmax(0,1fr);gap:16px;align-items:center;padding:15px 0;border-bottom:1px dashed #303036}
.fields .fl:last-child{border-bottom:0}
.fl dt{font:700 11.5px/1.5 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--dim)}
.fl dd{margin:0;font-size:17px;line-height:1.5;color:#fff;overflow-wrap:anywhere}
.stub{position:relative;margin:0;height:var(--stub);padding:0 26px;display:flex;align-items:center;border-top:2px dashed #3A3A42}
.stub .fl{flex:1;border:0;padding:0}
.stub dd.url{font:500 15px var(--mono);color:#6FD9A3}
.js .ticket.wait .fl{opacity:0}
.ticket.go .fl{animation:lineIn .5s ease both}
.ticket.go .fields .fl:nth-child(2){animation-delay:.22s}.ticket.go .fields .fl:nth-child(3){animation-delay:.44s}.ticket.go .fields .fl:nth-child(4){animation-delay:.66s}.ticket.go .fields .fl:nth-child(5){animation-delay:.88s}.ticket.go .fields .fl:nth-child(6){animation-delay:1.1s}.ticket.go .stub .fl{animation-delay:1.4s}
.tk-act{position:relative;display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:center;margin-top:22px}
.tk-act .said{flex-basis:100%;text-align:center;min-height:18px;font:500 12px var(--mono);color:#6FD9A3}
.after{max-width:720px;margin:34px auto 0;text-align:center;font-size:16.5px;line-height:1.6;color:var(--soft)}

.facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.facts .pic{aspect-ratio:4/3}
.facts .ct{margin-top:0;padding:16px 22px 26px}
.facts .d{font-size:15.5px;line-height:1.62;color:#C9C9D0}
.js .facts.wait .card{opacity:0}
.facts.go .card{animation:fadeUp .8s cubic-bezier(.2,.8,.2,1) both}
.facts.go .card:nth-child(2){animation-delay:.12s}
.facts.go .card:nth-child(3){animation-delay:.24s}
.aside{max-width:760px;margin:40px auto 0;text-align:center;font-size:15.5px;line-height:1.65;color:var(--dim)}

.faq{max-width:880px;margin:0 auto;border-top:1px solid var(--hair)}
.faq details{border-bottom:1px solid var(--hair)}
.faq summary{list-style:none;display:flex;align-items:center;gap:18px;padding:22px 4px;cursor:pointer}
.faq summary::-webkit-details-marker{display:none}
.faq h3{flex:1;margin:0;font:500 clamp(18px,1.8vw,22px)/1.3 var(--display);letter-spacing:-.01em;color:#fff}
.faq .pm{flex:none;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--hair2);background:#0E0E10;color:#C4C4CC;transition:transform .25s,border-color .25s,color .25s}
.faq details[open] .pm{transform:rotate(45deg);border-color:rgba(52,211,120,.6);color:#5AF5A0}
.faq p{margin:0;padding:0 60px 24px 4px;font-size:16px;line-height:1.68;color:#A8A8B0}
.src{max-width:880px;margin:48px auto 0}
.src h2{margin:0 0 10px;font:700 11px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--dim)}
.src p{margin:0;font-size:14.5px;line-height:1.6;color:var(--dim)}

.more{max-width:880px;margin:84px auto 0;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:20px 64px;align-items:start}
.more .lbl{padding-bottom:12px;border-bottom:1px solid var(--hair2)}
.mlist{display:grid;grid-template-columns:minmax(0,1fr)}
.mlist.two{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px}
.mlist a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px;padding:10px 2px;border-bottom:1px solid var(--hair);color:#E9E9EC;text-decoration:none;font:500 16px/1.3 var(--sans);transition:color .2s,border-color .2s}
.mlist a::after{content:"";flex:none;width:8px;height:8px;border-top:1.6px solid #6E6E76;border-right:1.6px solid #6E6E76;transform:rotate(45deg);transition:border-color .2s,transform .2s}
.mlist a:hover{color:#fff;border-bottom-color:rgba(52,211,120,.55)}
.mlist a:hover::after{border-color:var(--green);transform:translateX(3px) rotate(45deg)}
.mlist a.wide{grid-column:1/-1}

.closing{text-align:center}
.closing .lede{margin:18px auto 0}
.endmark{position:relative;width:min(230px,56vw);margin:0 auto 34px;animation:endFloat 7s ease-in-out infinite}
.endmark img{position:relative;z-index:2;display:block;width:100%;height:auto;filter:drop-shadow(0 22px 34px rgba(0,0,0,.7)) drop-shadow(0 0 28px rgba(232,118,42,.22))}
.endmark-glow{position:absolute;z-index:1;left:-30%;right:-30%;top:-25%;bottom:-25%;border-radius:50%;background:radial-gradient(closest-side,rgba(232,118,42,.20),rgba(52,211,120,.08) 55%,transparent 75%);pointer-events:none}
.endmark-floor{position:absolute;z-index:0;left:12%;right:12%;bottom:-22px;height:22px;border-radius:50%;background:radial-gradient(closest-side,rgba(232,118,42,.38),rgba(52,211,120,.10) 60%,transparent);filter:blur(4px)}
.pair{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin-top:36px}
.pub{margin:44px 0 0;font:500 12px var(--mono);letter-spacing:.04em;color:var(--faint)}


@media (max-width:1000px){.bento{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:940px){
.hero-g{grid-template-columns:minmax(0,1fr);grid-template-areas:"h" "art" "w";row-gap:0}
.hart{justify-self:center;margin:22px 0 22px;max-width:560px}
.facts{grid-template-columns:minmax(0,1fr);max-width:560px;margin:0 auto}
}
@media (max-width:760px){
.bento{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin:0 -16px;padding:0 16px 6px;scrollbar-width:none}
.bento::-webkit-scrollbar{display:none}
.bento .card{flex:0 0 84%;scroll-snap-align:start;scroll-margin-left:16px}
.swipe{display:flex;justify-content:center;margin-top:16px}
.js .bento.wait .card{opacity:1}
}
@media (max-width:640px){
.wrap{padding:0 16px}
.hero{padding:30px 0 72px}
.h1{letter-spacing:-1.2px}
.hero .lede{margin-top:4px}
.door{grid-template-columns:68px minmax(0,1fr) auto;gap:14px;padding:10px 14px 10px 10px;border-radius:20px;margin-top:24px}
.dphoto{width:68px;height:86px;border-radius:12px}
.door b{font-size:18.5px}
.door .dsub{font-size:13.5px}
.door .go{width:40px;height:40px}
.sec{padding:100px 0 72px}
.sh{margin-bottom:36px}
.gicon{width:104px;height:104px;border-radius:26px}
.hart{border-radius:24px}
.hart .who{bottom:14px;font-size:10.5px;letter-spacing:.12em}
.doors{grid-template-columns:minmax(0,1fr);gap:16px}
.doors .pic .gicon{width:64px;height:64px;border-radius:18px;left:16px;bottom:14px}
.doors .ct{padding:16px 20px 24px}
.doors .d{font-size:15.5px}
.ticket{--stub:112px}
.tk-top{padding:18px 20px 4px}
.fields{padding:4px 20px 8px}
.fl{grid-template-columns:minmax(0,1fr);gap:3px;padding:13px 0}
.fl dd{font-size:16.5px}
.stub{padding:0 20px}
.stub dd.url{font-size:13.5px}
.tk-act .btn{flex:1 1 0}
.more{grid-template-columns:minmax(0,1fr);gap:40px}
.faq summary{padding:18px 2px;gap:12px}
.faq p{padding:0 2px 20px}
.more{margin-top:56px}
.pair .btn{flex:1 1 0;padding:12px 12px;font-size:14px}
.pair{flex-wrap:nowrap;gap:10px}
}
@media (prefers-reduced-motion:reduce){
.door::before,.endmark,.hart .drift,.hart .tagglow,.dphoto .scanl,.bento.go .card,.ticket.go .fl,.doors.go .card,.facts.go .card{animation:none !important}
.js .bento.wait .card,.js .ticket.wait .fl,.js .doors.wait .card,.js .facts.wait .card{opacity:1}
}
