*{box-sizing:border-box;margin:0}
html,body{min-height:100%;background:#0B0B2E;color:#EDEBFB;font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Inter","Segoe UI",Roboto,sans-serif;-webkit-font-smoothing:antialiased}
body{position:relative;overflow-x:hidden}
.glow{position:fixed;inset:-20%;pointer-events:none;z-index:0;background:radial-gradient(40% 35% at 50% 38%,rgba(37,37,218,.45),transparent 70%),radial-gradient(30% 25% at 60% 60%,rgba(198,191,238,.14),transparent 70%);filter:blur(30px);animation:drift 18s ease-in-out infinite alternate}
@keyframes drift{0%{transform:translate(-3%,-2%) scale(1);opacity:.75}100%{transform:translate(3%,3%) scale(1.12);opacity:1}}
@media (prefers-reduced-motion:reduce){.glow{animation:none}}
main{position:relative;z-index:1;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:120px 24px 64px;gap:0}
.logo{width:min(200px,52vw);height:auto;opacity:.95;margin-bottom:72px}
h1{font-size:clamp(40px,7vw,76px);font-weight:600;letter-spacing:-.035em;line-height:1.05;background:linear-gradient(180deg,#fff,#C6BFEE);-webkit-background-clip:text;background-clip:text;color:transparent}
.sub{margin-top:22px;font-size:clamp(15px,1.6vw,18px);color:rgba(198,191,238,.75);max-width:30ch;line-height:1.5}
form{display:flex;gap:8px;width:100%;max-width:400px;margin:0 auto}
.wait{margin-top:64px}
input,textarea{flex:1;min-width:0;font:inherit;font-size:16px;color:#fff;background:rgba(255,255,255,.06);border:1px solid rgba(198,191,238,.22);border-radius:999px;padding:14px 20px;outline:none;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}
input::placeholder{color:rgba(198,191,238,.5)}
input:focus{border-color:#C6BFEE}
button{font:inherit;font-size:16px;font-weight:600;color:#fff;border:0;border-radius:999px;padding:14px 24px;background:linear-gradient(135deg,#2525DA,#6a5ee6);cursor:pointer;transition:transform .3s cubic-bezier(.34,1.56,.64,1)}
button:active{transform:scale(.96)}
.note{min-height:20px;margin-top:12px;font-size:13px;color:rgba(198,191,238,.7)}
.partner{margin-top:72px;width:100%;max-width:400px}
.partner p.t{font-size:15px;color:rgba(198,191,238,.85);margin-bottom:16px}
.partner form{flex-direction:column}
.partner button{background:transparent;border:1px solid rgba(198,191,238,.35);color:#EDEBFB}
.contact{margin-top:72px;font-size:13px;display:flex;gap:18px;justify-content:center;flex-wrap:wrap}
.contact a{color:rgba(198,191,238,.65);text-decoration:none}.contact a:hover{color:#fff}
footer{margin-top:28px;font-size:12px;color:rgba(198,191,238,.4)}
@media (max-width:480px){.wait{flex-direction:column}.logo{margin-bottom:56px}}
/* v2 creative pass */
@font-face{font-family:"Archivo Black";src:url(/assets/fonts/ArchivoBlack-Regular.woff2) format("woff2");font-display:swap}
@font-face{font-family:"Space Mono";font-weight:700;src:url(/assets/fonts/SpaceMono-Bold.woff2) format("woff2");font-display:swap}
.orbs{position:fixed;inset:0;pointer-events:none;z-index:0;overflow:hidden}
.orbs i{position:absolute;border-radius:50%;filter:blur(60px);opacity:.55;animation:float 22s ease-in-out infinite alternate}
.orbs i:nth-child(1){width:42vmax;height:42vmax;left:-12vmax;top:-10vmax;background:radial-gradient(circle,#2525DA,transparent 65%)}
.orbs i:nth-child(2){width:36vmax;height:36vmax;right:-10vmax;top:20vh;background:radial-gradient(circle,#7B3FE4,transparent 65%);animation-duration:28s}
.orbs i:nth-child(3){width:30vmax;height:30vmax;left:20vw;bottom:-14vmax;background:radial-gradient(circle,#6E69FF,transparent 65%);animation-duration:34s;opacity:.4}
@keyframes float{0%{transform:translate(0,0) scale(1)}100%{transform:translate(4vw,-3vh) scale(1.15)}}
@media (prefers-reduced-motion:reduce){.orbs i{animation:none}}
.logo{animation:bob 6s ease-in-out infinite;filter:drop-shadow(0 10px 40px rgba(110,105,255,.45))}
@keyframes bob{50%{transform:translateY(-8px)}}
h1{font-family:"Archivo Black",-apple-system,sans-serif;font-weight:400;text-transform:uppercase;letter-spacing:.005em;line-height:1.02;font-size:clamp(40px,8vw,96px);display:flex;flex-direction:column;align-items:center;background:none;color:#fff}
h1 .l1{background:linear-gradient(90deg,#6E69FF,#EBE6FF);-webkit-background-clip:text;background-clip:text;color:transparent}
h1 .l2{color:#fff}
.subs{margin-top:28px;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px 18px;max-width:960px}
.subs .sub{margin:0;max-width:none;white-space:nowrap;font-size:clamp(15px,1.5vw,18px);color:rgba(235,230,255,.85)}
.dot{width:6px;height:6px;border-radius:50%;background:linear-gradient(135deg,#6E69FF,#B9A8FF);box-shadow:0 0 10px #8C86FF}
.card{background:rgba(255,255,255,.04);border:1px solid rgba(198,191,238,.16);border-radius:28px;padding:28px 22px;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);box-shadow:0 20px 60px rgba(10,8,40,.5)}
.partner p.t{font-family:"Space Mono",monospace;font-weight:700;letter-spacing:.02em;font-size:14px;color:#EBE8FF}
.partner button[type=submit]{background:linear-gradient(135deg,#2525DA,#7B3FE4);border:0}
@keyframes pop{0%{opacity:0;transform:scale(.85) translateY(-6px)}100%{opacity:1;transform:none}}
@media (max-width:640px){.subs{flex-direction:column;gap:10px}.dot{display:none}.subs .sub{white-space:normal}}
/* v5 typography */
@font-face{font-family:"Instrument Serif";font-style:italic;src:url(/assets/fonts/InstrumentSerif-Italic.woff2) format("woff2");font-display:swap}
.subs{margin-top:34px;gap:12px 26px;max-width:1200px}
.subs .sub{font-size:clamp(17px,1.8vw,22px);color:rgba(235,230,255,.88);letter-spacing:.005em;font-weight:400}
.subs .sub em{font-family:"Instrument Serif",Georgia,serif;font-style:italic;font-size:1.3em;color:#C6BFEE;letter-spacing:0}
.subs .sub b{font-family:"Archivo Black",sans-serif;font-weight:400;text-transform:uppercase;font-size:.82em;letter-spacing:.06em;background:linear-gradient(90deg,#6E69FF,#EBE6FF);-webkit-background-clip:text;background-clip:text;color:transparent}
.subs .s3 em{background:linear-gradient(90deg,#B9A8FF,#fff);-webkit-background-clip:text;background-clip:text;color:transparent;padding-right:.1em}
.dot{width:7px;height:7px;transform:rotate(45deg);border-radius:2px}
.partner p.t{font-family:inherit;margin-bottom:22px;display:flex;flex-direction:column;align-items:center;gap:2px;line-height:1.1}
.partner .q1{font-family:"Instrument Serif",Georgia,serif;font-style:italic;font-size:30px;color:#EDEBFB}
.partner .q1 b{font-weight:400;background:linear-gradient(90deg,#6E69FF,#EBE6FF);-webkit-background-clip:text;background-clip:text;color:transparent;padding-right:.08em}
.partner .q2{font-family:"Archivo Black",sans-serif;text-transform:uppercase;font-size:14px;letter-spacing:.18em;color:#B9A8FF;margin-top:8px}
/* v6 facebook */
.fb{margin-top:40px;display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:999px;font-size:14px;font-weight:600;color:#EDEBFB;text-decoration:none;background:rgba(255,255,255,.05);border:1px solid rgba(140,134,255,.45);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);transition:border-color .25s,box-shadow .25s,transform .3s cubic-bezier(.34,1.56,.64,1)}
.fb svg{color:#8C86FF}
.fb:hover{border-color:#B9A8FF;box-shadow:0 0 24px rgba(110,105,255,.35)}
.fb:active{transform:scale(.96)}
.fb+.contact{margin-top:40px}

/* ===== staging-motion pass ===== */
#shader{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;opacity:0;transition:opacity 1.6s ease;mix-blend-mode:screen}
html.gl #shader{opacity:.55}
.cursor-light{position:fixed;left:0;top:0;width:520px;height:520px;margin:-260px 0 0 -260px;border-radius:50%;pointer-events:none;z-index:0;background:radial-gradient(closest-side,rgba(110,105,255,.16),rgba(123,63,228,.06) 55%,transparent);opacity:0;transition:opacity .6s;will-change:transform}
html.cl .cursor-light{opacity:1}
.cursor-light{display:none}
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.cursor-light{display:block}}
/* logo: intro, then bob + soft glow */
@keyframes logoIn{from{opacity:0;filter:blur(14px) drop-shadow(0 10px 40px rgba(110,105,255,0));transform:scale(.92)}to{opacity:.95;filter:blur(0) drop-shadow(0 10px 40px rgba(110,105,255,.45));transform:none}}
@keyframes logoGlow{0%,100%{filter:drop-shadow(0 10px 40px rgba(110,105,255,.40))}50%{filter:drop-shadow(0 10px 52px rgba(140,134,255,.62))}}
@media (prefers-reduced-motion:no-preference){
.logo{animation:logoIn 1.1s cubic-bezier(.2,.7,.2,1) .1s both,bob 6s ease-in-out 1.2s infinite,logoGlow 7s ease-in-out 1.2s infinite}
h1 .w{display:inline-block;animation:wordIn .9s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(.6s + var(--i)*.13s)}
@keyframes wordIn{from{opacity:0;filter:blur(10px);transform:translateY(.35em)}to{opacity:1;filter:blur(0);transform:none}}
.subs .s2 b{background:linear-gradient(100deg,#6E69FF 0%,#EBE6FF 40%,#fff 50%,#EBE6FF 60%,#6E69FF 100%) 100% 0/250% 100% no-repeat;-webkit-background-clip:text;background-clip:text;animation:shine 1.6s ease-in-out 2.4s 1 both}
@keyframes shine{from{background-position:100% 0}to{background-position:0 0}}
}
@media (prefers-reduced-motion:reduce){.logo{animation:none}}
h1 .l1 .w{background:linear-gradient(90deg,#6E69FF,#EBE6FF);-webkit-background-clip:text;background-clip:text;color:transparent}
h1 .l1{background:none}
h1 .l2{white-space:nowrap}
/* scroll fade-up (only where supported; otherwise everything just shows) */
@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){
.subs .sub,.partner,.fb,.contact,footer{animation:fadeUp linear both;animation-timeline:view();animation-range:entry 0% entry 100%}
@keyframes fadeUp{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}
}}
/* glass card + focus glow; solid fallback */
.card{background:rgba(255,255,255,.055);border-color:rgba(198,191,238,.22);box-shadow:0 20px 60px rgba(10,8,40,.5),inset 0 1px 0 rgba(255,255,255,.08)}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.card,input,.fb{background:#17164a}}
@media (prefers-reduced-transparency:reduce){.card{background:#17164a;backdrop-filter:none;-webkit-backdrop-filter:none}}
input{transition:border-color .25s,box-shadow .25s,background-color .25s}
input:focus{border-color:#C6BFEE;box-shadow:0 0 0 4px rgba(198,191,238,.16),0 0 24px rgba(110,105,255,.25);background-color:rgba(255,255,255,.09)}
button:focus-visible,input:focus-visible,a:focus-visible{outline:3px solid #C6BFEE;outline-offset:3px}
/* thank-you */
.thanks{display:none;flex-direction:column;align-items:center;gap:12px;padding:8px 0;font-size:16px;color:#EDEBFB}
.partner.done form,.partner.done .p-note-hide{display:none}
.partner.done .thanks{display:flex}
.thanks svg{width:56px;height:56px}
.thanks circle,.thanks path{fill:none;stroke:#C6BFEE;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
@media (prefers-reduced-motion:no-preference){
.partner.done .thanks circle{stroke-dasharray:145;stroke-dashoffset:145;animation:draw .7s ease .15s forwards}
.partner.done .thanks path{stroke-dasharray:32;stroke-dashoffset:32;animation:draw .4s ease .75s forwards}
@keyframes draw{to{stroke-dashoffset:0}}
}
.partner{view-transition-name:partner}
::view-transition-old(partner),::view-transition-new(partner){animation-duration:.45s;animation-timing-function:cubic-bezier(.2,.7,.2,1)}
@media (prefers-reduced-motion:reduce){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}
