/* Landing page: pick an arcade. Three doors, each in its own section's style. */
*{box-sizing:border-box}
html,body{margin:0}
body.landing{min-height:100vh;background:radial-gradient(circle at 50% 0,#fff4d6 0,#ffe3b3 38%,#2a1a3e 38.2%,#120a20 100%);font-family:ui-rounded,"Nunito","Segoe UI",system-ui,sans-serif;color:#2d2a4a}
.land{max-width:1100px;margin:0 auto;padding:16px 16px 28px;display:flex;flex-direction:column;align-items:center}
.land-brand{display:flex;flex-direction:column;align-items:center;text-align:center}
.land-brand img{width:clamp(96px,26vw,150px);height:auto;animation:bob 3.2s ease-in-out infinite;filter:drop-shadow(0 6px 0 rgba(0,0,0,.12))}
.land-brand h1{margin:6px 0 0;font-size:clamp(30px,8.5vw,56px);line-height:1;font-weight:900;color:#4a3fb5;letter-spacing:.01em}
.land-brand h1 span{color:#ff6b6b}
.land-brand p{margin:8px 0 0;font-size:clamp(17px,4.4vw,22px);font-weight:800;color:#6b5a8e}
.doors{width:100%;display:grid;grid-template-columns:1fr;gap:16px;margin-top:clamp(56px,9vw,90px)}
@media (min-width:820px){.doors{grid-template-columns:repeat(3,1fr);gap:22px}}
.door{position:relative;display:flex;align-items:center;gap:14px;min-height:120px;padding:18px 18px 18px 16px;border-radius:22px;text-decoration:none;overflow:hidden;perspective:600px;transition:transform .2s;animation:pop .6s backwards}
.door:nth-child(2){animation-delay:.12s}.door:nth-child(3){animation-delay:.24s}
@media (min-width:820px){.door{flex-direction:column;justify-content:flex-start;text-align:center;min-height:330px;padding:24px 18px}}
.door:hover,.door:focus-visible{transform:translateY(-6px) rotate(-.5deg)}
.door .panel{position:absolute;inset:0;transform-origin:left center;transition:transform .45s cubic-bezier(.3,1.4,.5,1);pointer-events:none}
.door:hover .panel,.door:focus-visible .panel{transform:rotateY(-24deg)}
.door .ico{position:relative;flex:none;width:76px;height:76px;display:grid;place-items:center;font-size:44px;border-radius:20px}
@media (min-width:820px){.door .ico{width:110px;height:110px;font-size:64px;margin-bottom:6px}}
.door .txt{position:relative;display:flex;flex-direction:column;gap:4px;min-width:0}
.door .nm{font-size:clamp(20px,5.6vw,30px);font-weight:900;line-height:1.05}
.door .sub{font-size:15px;font-weight:700;line-height:1.35}
.door .go{position:relative;margin-left:auto;flex:none;display:grid;place-items:center;min-width:48px;height:48px;padding:0 12px;border-radius:999px;font-weight:900;font-size:16px}
@media (min-width:820px){.door .go{margin:auto 0 0;min-width:150px}}
/* kids: bright and bubbly */
.d-kids{background:#fff;color:#2d2a4a;box-shadow:0 8px 0 #ffb3c7,0 12px 30px rgba(0,0,0,.25)}
.d-kids .panel{background:repeating-linear-gradient(45deg,rgba(255,202,58,.18) 0 16px,rgba(138,201,38,.14) 16px 32px)}
.d-kids .ico{background:#ffe3ec}.d-kids .nm{color:#ff4f81}.d-kids .go{background:#4d79ff;color:#fff;box-shadow:0 4px 0 #2f56c9}
/* teens: bold neon */
.d-teens{background:#0b0221;color:#f6f0ff;border:3px solid #ff2bd6;box-shadow:0 0 0 3px #0b0221,0 0 24px rgba(255,43,214,.6),0 12px 30px rgba(0,0,0,.35);font-family:ui-monospace,Menlo,Consolas,monospace}
.d-teens .panel{background:linear-gradient(rgba(255,43,214,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(34,228,255,.12) 1px,transparent 1px);background-size:22px 22px}
.d-teens .ico{background:#1a0838;border:2px solid #22e4ff;box-shadow:0 0 14px rgba(34,228,255,.6)}
.d-teens .nm{color:#ff2bd6;text-shadow:0 0 8px rgba(255,43,214,.9);text-transform:uppercase;letter-spacing:.06em}
.d-teens .go{background:#22e4ff;color:#0b0221;box-shadow:0 0 14px rgba(34,228,255,.8)}
/* grown-ups: classic retro cabinet */
.d-grown{background:#15110e;color:#f3e9d2;border:3px solid #ffb000;box-shadow:0 8px 0 #7a5200,0 12px 30px rgba(0,0,0,.35);font-family:ui-monospace,Menlo,Consolas,monospace}
.d-grown .panel{background:repeating-linear-gradient(0deg,rgba(0,0,0,.25) 0 1px,transparent 1px 3px),linear-gradient(180deg,#2a2018,#15110e)}
.d-grown .ico{background:#221b15;border:2px solid #2ec4b6}
.d-grown .nm{color:#ffb000;text-transform:uppercase;letter-spacing:.06em;text-shadow:0 0 6px rgba(255,176,0,.5)}
.d-grown .go{background:#ffb000;color:#15110e}
.land-foot{margin-top:30px;text-align:center;color:#d9cbe8;font-weight:700;font-size:14px;line-height:1.6}
.land-foot .pills{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:10px}
.land-foot .pills span{padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.1)}
.land-foot a{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border-radius:999px;background:#fff;color:#4a3fb5;text-decoration:none;font-weight:900}
@keyframes bob{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-8px) rotate(3deg)}}
@keyframes pop{from{opacity:0;transform:translateY(24px) scale(.96)}}
@media (prefers-reduced-motion:reduce){.land-brand img,.door{animation:none}.door,.door .panel{transition:none}}
