/* workshop-v1 */
.expoStage{position:relative;width:min(1360px,96vw);margin:18px 0 0 50%;transform:translateX(-50%);min-height:620px;border-radius:28px;overflow:hidden;border:1px solid var(--line);background:radial-gradient(80% 60% at 50% 0%,rgba(91,140,255,.35),transparent 70%),linear-gradient(180deg,#0B0C26 0%,#14164A 55%,#0B0C26 100%);display:flex;align-items:center;justify-content:center;isolation:isolate}
.expoFloor{position:absolute;left:-50%;right:-50%;bottom:-38%;height:90%;background-image:linear-gradient(rgba(91,140,255,.45) 1px,transparent 1px),linear-gradient(90deg,rgba(91,140,255,.45) 1px,transparent 1px);background-size:64px 64px;transform:perspective(520px) rotateX(68deg);transform-origin:50% 0;-webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 30%,#000 100%);mask-image:linear-gradient(180deg,transparent 0%,#000 30%,#000 100%);animation:floorMove 6s linear infinite;z-index:-2}
@keyframes floorMove{from{background-position:0 0,0 0}to{background-position:0 64px,0 0}}
.expoGlow{position:absolute;left:10%;right:10%;bottom:14%;opacity:.7;height:3px;background:linear-gradient(90deg,transparent,var(--gold),var(--purple),var(--gold),transparent);filter:blur(1px);box-shadow:0 0 40px 10px rgba(0,217,248,.35);z-index:-1}
.expoHero{text-align:center;padding:64px 22px;max-width:860px}
.expoHero h1{margin:.25em 0 .3em;font-size:clamp(2.4rem,6.4vw,4.8rem);line-height:1.02;text-shadow:0 10px 40px rgba(0,0,0,.6)}
.expoHero .lede{margin:0 auto 22px;max-width:620px}
.chips{list-style:none;display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:0 0 22px;padding:0}
.chips li{padding:7px 14px;border-radius:999px;border:1px solid rgba(0,217,248,.5);background:rgba(8,15,32,.55);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:.9rem;font-weight:500}
.countdown{display:flex;gap:10px;justify-content:center;margin:0 0 26px}
.countdown div{min-width:82px;padding:12px 8px;border-radius:16px;border:1px solid var(--line);background:rgba(17,26,51,.6);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:grid;gap:2px;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 14px 30px rgba(0,0,0,.35)}
.countdown b{font-family:"Sora",system-ui,sans-serif;font-weight:600;font-size:2rem;line-height:1;color:var(--fg);font-variant-numeric:tabular-nums}
.countdown span{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.countdown.live b{color:var(--green)}
.quickAnswer{max-width:860px;margin:56px auto;padding:26px 28px;border-left:3px solid var(--gold);border-radius:0 18px 18px 0;background:rgba(29,31,82,.45)}
.quickAnswer h2{margin:0 0 8px;font-size:1.2rem;color:var(--gold)}
.quickAnswer p{margin:0;line-height:1.7}
.hall{margin:72px 0}
.hallHead{text-align:center;margin-bottom:26px}
.hallHead h2{margin:.2em 0 0}
.booths{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px;perspective:1100px}
.booth{position:relative;padding:26px 22px 22px;border-radius:22px;border:1px solid var(--line);background:linear-gradient(160deg,rgba(91,140,255,.16),rgba(17,26,51,.75) 45%);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 24px 50px rgba(0,0,0,.4),inset 0 1px 0 rgba(255,255,255,.08);transform-style:preserve-3d;transition:transform .25s ease,box-shadow .25s ease}
.booth::before{content:"";position:absolute;left:18px;right:18px;top:-1px;height:4px;border-radius:0 0 6px 6px;background:linear-gradient(90deg,var(--purple),var(--gold))}
.booth:hover{box-shadow:0 34px 70px rgba(0,0,0,.5),0 0 0 1px rgba(0,217,248,.35)}
.boothNum{font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}
.booth h3{margin:.35em 0 .6em;font-family:"Sora",system-ui,sans-serif;font-weight:600;font-size:1.3rem}
.booth ul{margin:0;padding-left:18px;display:grid;gap:7px;color:var(--muted);line-height:1.45}
.booth p{margin:0;color:var(--muted);line-height:1.5}
.booth .big{font-family:"Sora",system-ui,sans-serif;font-size:3.4rem;line-height:1;color:var(--gold);margin-bottom:6px}
.booth--gold{background:linear-gradient(160deg,rgba(0,217,248,.2),rgba(17,26,51,.78) 50%)}
.booth--soon{border-style:dashed}
.desk{margin:80px 0}
.deskInner{display:grid;grid-template-columns:1fr 1.1fr;gap:28px;align-items:center;padding:34px;border-radius:26px;border:1px solid rgba(0,217,248,.45);background:radial-gradient(90% 120% at 0% 0%,rgba(91,140,255,.22),transparent 60%),rgba(17,26,51,.7);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 30px 80px rgba(0,0,0,.45)}
.deskCopy h2{margin:.2em 0 .4em}
.deskCopy p{color:var(--muted)}
.deskCopy .chips{justify-content:flex-start}
.regForm{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.regForm label{display:grid;gap:6px;font-size:.9rem;color:var(--muted)}
.regForm .wide{grid-column:1/-1}
.regForm input[type=text],.regForm input[type=email]{font:inherit;color:var(--fg);background:rgba(8,15,32,.65);border:1px solid var(--line);border-radius:12px;padding:12px 14px;width:100%;box-sizing:border-box}
.regForm input:focus-visible{outline:2px solid var(--purple);outline-offset:2px}
.regForm .opt{display:flex;gap:10px;align-items:flex-start;color:var(--fg)}
.regForm .opt input{margin-top:4px}
.regForm .trap{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.regForm button{justify-self:stretch}
.regStatus{margin:0;color:var(--green);font-weight:500}
.faq{max-width:860px;margin:72px auto}
.faq details{border-bottom:1px solid var(--line);padding:14px 0}
.faq summary{cursor:pointer;font-weight:600}
.faq details p{color:var(--muted);margin:10px 0 0}
.faq a{color:var(--gold)}
@media (max-width:820px){.deskInner{grid-template-columns:1fr;padding:22px}.expoStage{min-height:560px;border-radius:20px;width:100%;margin-left:0;transform:none}.countdown div{min-width:64px}.countdown b{font-size:1.5rem}}
@media (max-width:480px){.regForm{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.expoFloor{animation:none}.booth{transition:none}}
/* END workshop-v1 */