/* v2: premium layer */
.v2hero{align-items:center;padding-bottom:6vh}
.v2grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:4vw;align-items:center}
.v2hero h1{font-size:clamp(3.2rem,8.2vw,9rem);margin:16px 0 22px;line-height:.92}
.v2copy .lead{max-width:540px}
.v2ctas{display:flex;flex-wrap:wrap;gap:18px;align-items:center;margin:28px 0 14px}
.v2play{display:inline-flex;align-items:center;gap:12px;padding:18px 28px;border-radius:999px;font-weight:700;font-size:1.05rem;color:#fff;text-decoration:none;background:linear-gradient(110deg,var(--a),var(--c),var(--b),var(--a));background-size:300% 100%;box-shadow:0 18px 50px -14px rgba(124,92,255,.8);animation:v2shine 6s linear infinite;transition:transform .3s}
.v2play:hover{transform:translateY(-2px) scale(1.03)}
.v2tri{width:0;height:0;border-left:12px solid #fff;border-top:8px solid transparent;border-bottom:8px solid transparent}
@keyframes v2shine{to{background-position:300% 0}}
.v2visual{position:relative;perspective:1400px}
.v2device{position:relative;border-radius:28px;overflow:hidden;border:1px solid rgba(255,255,255,.18);box-shadow:0 60px 140px -40px rgba(124,92,255,.75),0 0 0 8px rgba(255,255,255,.03),0 0 80px -10px rgba(34,211,238,.35);transform:rotateY(-12deg) rotateX(5deg);animation:v2float 7s ease-in-out infinite;background:#0a0b18}
.v2device img{display:block;width:100%;height:auto}
.v2scan{position:absolute;inset:0;background:linear-gradient(115deg,transparent 35%,rgba(255,255,255,.16) 50%,transparent 65%);background-size:250% 100%;animation:v2sweep 5s ease-in-out infinite;pointer-events:none}
@keyframes v2float{0%,100%{transform:rotateY(-12deg) rotateX(5deg) translateY(0)}50%{transform:rotateY(-8deg) rotateX(3deg) translateY(-14px)}}
@keyframes v2sweep{0%{background-position:150% 0}60%,100%{background-position:-100% 0}}



@keyframes v2bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
.v2card{isolation:isolate}
.v2bg{position:absolute;inset:0;z-index:-1;background:center/cover;opacity:.28;filter:saturate(1.2);transition:opacity .5s,transform .8s var(--ease);mask-image:linear-gradient(180deg,#000 0%,transparent 75%);-webkit-mask-image:linear-gradient(180deg,#000 0%,transparent 75%)}
.v2card:hover .v2bg{opacity:.5;transform:scale(1.06)}
.v2arcade .frame{max-width:1100px;margin:0 auto;aspect-ratio:16/9;border:1px solid rgba(124,92,255,.5);box-shadow:0 0 0 1px rgba(34,211,238,.2),0 50px 160px -30px rgba(124,92,255,.85),0 0 120px -30px rgba(255,79,216,.45)}
.v2arcade .frame::after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(0,0,0,.12) 0 2px,transparent 2px 4px);mix-blend-mode:multiply}
.v2arcade .cover .play{width:110px;height:110px;box-shadow:0 0 0 0 rgba(124,92,255,.7);animation:v2pulse 2.4s infinite}
@keyframes v2pulse{70%{box-shadow:0 0 0 28px rgba(124,92,255,0)}100%{box-shadow:0 0 0 0 rgba(124,92,255,0)}}
.v2arcade .bar{max-width:1100px;margin:18px auto 0}
.v2lbgrid{display:grid;grid-template-columns:1fr 1fr;gap:5vw;align-items:center}
.v2board{border:1px solid var(--line);border-radius:26px;padding:12px;background:linear-gradient(160deg,rgba(255,255,255,.06),rgba(255,255,255,.01));backdrop-filter:blur(10px);box-shadow:0 40px 120px -40px rgba(34,211,238,.45)}
.v2bh,.v2row{display:grid;grid-template-columns:70px 1fr 120px;gap:14px;align-items:center;padding:16px 18px}
.v2bh{font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--mut)}
.v2row{border-top:1px solid var(--line);font-family:"Space Grotesk";color:var(--mut)}
.v2row .ph{height:12px;border-radius:6px;background:linear-gradient(90deg,rgba(255,255,255,.08),rgba(255,255,255,.18),rgba(255,255,255,.08));background-size:200% 100%;animation:v2sk 2.2s linear infinite}
.v2row .ph.s{width:70%}
@keyframes v2sk{to{background-position:-200% 0}}
.v2row.you{margin-top:6px;border:1px solid rgba(124,92,255,.6);border-radius:16px;background:linear-gradient(90deg,rgba(124,92,255,.3),rgba(34,211,238,.12));color:#fff;font-weight:700}
.v2rev{opacity:0;transform:translateY(40px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.v2rev.in{opacity:1;transform:none}
@media (max-width:860px){
.v2grid{grid-template-columns:1fr;gap:42px}
.v2hero{padding-top:110px!important}
.v2hero h1{font-size:clamp(3rem,15vw,5rem)}
.v2device{transform:none;animation:none}


.v2ctas{gap:12px}.v2ctas .gpx.xl img{width:200px;height:auto}
.v2play{padding:15px 22px}
.v2lbgrid{grid-template-columns:1fr}
.v2bh,.v2row{grid-template-columns:48px 1fr 90px;padding:14px}
.v2bg{opacity:.35}
}
@media (prefers-reduced-motion:reduce){
.v2play,.v2device,.v2scan,
.v2rev{opacity:1;transform:none;transition:none}
}
@media (max-width:860px){.v2copy .lead,.v2copy .cta-note{text-shadow:0 2px 14px #04050c,0 0 4px #04050c}}

/* v2b highlight band */
.v2stats{padding:14vh 0 10vh!important;position:relative;z-index:2}
.v2stats ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:4vw}
.v2stats li{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding-top:28px;border-top:1px solid rgba(255,255,255,.12);position:relative}
.v2stats li::before{content:"";position:absolute;top:-1px;left:0;width:64px;height:2px;background:linear-gradient(90deg,var(--b),var(--a));box-shadow:0 0 18px var(--b)}
.v2stats b{font-family:"Space Grotesk";font-weight:700;font-size:clamp(4.5rem,9vw,9rem);line-height:.9;letter-spacing:-.04em;background:linear-gradient(180deg,#fff 30%,#a99bff);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 28px rgba(124,92,255,.45))}
.v2stats .t{font-family:"Space Grotesk";font-size:1.35rem;color:#fff;font-weight:600}
.v2stats .d{color:var(--mut);font-size:1rem;max-width:26ch}
.v2stats.v2go li{opacity:0;transform:translateY(36px);transition:opacity 1s var(--ease),transform 1s var(--ease)}
.v2stats.v2go li:nth-child(2){transition-delay:.15s}.v2stats.v2go li:nth-child(3){transition-delay:.3s}
.v2stats.v2go.in li{opacity:1;transform:none}
.v2free{color:var(--b)}
.v2solo{color:var(--mut);font-size:.95rem;margin:0}.v2solo a{color:#fff}
@media (max-width:860px){.v2stats{padding:10vh 0 6vh!important}.v2stats ul{grid-template-columns:1fr;gap:56px}.v2stats b{font-size:5rem}}
@media (prefers-reduced-motion:reduce){.v2stats.v2go li{opacity:1!important;transform:none!important;transition:none}}
.v2stats .t,.v2stats .d{text-shadow:0 2px 16px #04050c,0 0 4px #04050c}
/* v2c: how a run works */
.v2runhead{margin-bottom:6vh}
.v2ctrl{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:7vh}
.v2c{padding:28px 30px;border-radius:24px;border:1px solid var(--line);background:linear-gradient(160deg,rgba(124,92,255,.14),rgba(255,255,255,.01))}
.v2c h3{font-size:1.3rem;margin-bottom:10px}.v2c p{color:var(--mut);line-height:1.9}
kbd{display:inline-grid;place-items:center;min-width:34px;height:34px;padding:0 9px;border-radius:10px;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.06);color:#fff;font:600 .95rem "Space Grotesk",sans-serif;box-shadow:0 3px 0 rgba(255,255,255,.12)}
.v2tips{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.v2tips li{padding:28px;border-radius:22px;border:1px solid var(--line);background:rgba(255,255,255,.025);transition:border-color .4s,transform .4s}
.v2tips li:hover{border-color:rgba(34,211,238,.45);transform:translateY(-3px)}
.v2tips .n{font-family:"Space Grotesk";font-size:.8rem;letter-spacing:.2em;color:var(--b)}
.v2tips h3{font-size:1.35rem;margin:14px 0 8px}.v2tips p{color:var(--mut)}
.v2more{margin-top:5vh}.v2more a{color:var(--b);font-weight:600;text-decoration:none;border-bottom:1px solid currentColor}
/* v2c: gallery */
.v2galhead{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:5vh}
.v2arrows{display:flex;gap:12px}
.v2arr{width:56px;height:56px;border-radius:50%;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.04);color:#fff;font-size:1.3rem;cursor:pointer;transition:background .3s,border-color .3s}
.v2arr:hover,.v2arr:focus-visible{background:rgba(124,92,255,.35);border-color:var(--a)}
.v2track{list-style:none;margin:0;display:flex;gap:28px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:10px max(5vw,calc((100vw - 1400px)/2)) 30px;scroll-padding:0 max(5vw,calc((100vw - 1400px)/2));scrollbar-width:none;outline:none}
.v2track::-webkit-scrollbar{display:none}
.v2track:focus-visible{box-shadow:inset 0 0 0 2px var(--b)}
.v2slide{flex:0 0 min(760px,82vw);scroll-snap-align:start}
.v2slide figure{margin:0;border-radius:26px;overflow:hidden;border:1px solid var(--line);background:#0a0b18;box-shadow:0 40px 100px -40px rgba(124,92,255,.6);position:relative}
.v2slide img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.v2slide figcaption{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;padding:20px 24px}
.v2slide .cn{font-size:.75rem;letter-spacing:.2em;color:var(--b)}
.v2slide b{font-family:"Space Grotesk";font-size:1.4rem;color:#fff}
.v2slide figcaption span:last-child{color:var(--mut);flex-basis:100%}
.v2hint{display:none}
@media (max-width:860px){
.v2ctrl,.v2tips{grid-template-columns:1fr}.v2tips{gap:14px}.v2tips li{padding:22px}
.v2arrows{display:none}
.v2track{gap:16px;padding:6px 5vw 20px;scroll-padding:0 5vw}
.v2slide{flex-basis:86vw}
.v2hint{display:flex;align-items:center;gap:12px;padding:0 5vw;color:var(--mut);font-size:.75rem;letter-spacing:.22em;text-transform:uppercase}
.v2hint i{position:relative;width:60px;height:1px;background:rgba(255,255,255,.25);overflow:hidden}
.v2hint i::after{content:"";position:absolute;inset:0;width:20px;background:var(--b);animation:v2swipe 1.8s ease-in-out infinite}
@keyframes v2swipe{0%{transform:translateX(-20px)}100%{transform:translateX(60px)}}
}
@media (prefers-reduced-motion:reduce){.v2track{scroll-behavior:auto}.v2hint i::after{animation:none}.v2tips li{transition:none}}
/* v2d: gallery uncropped */
.v2slide figure{border-radius:26px}
.v2slide picture{display:block;aspect-ratio:16/9;background:#05060f;border-radius:20px;margin:10px 10px 0;overflow:hidden}
.v2slide img{width:100%;height:100%;object-fit:contain;aspect-ratio:auto;border-radius:20px}
.v2slide figcaption{min-height:104px;align-content:flex-start}
.v2track{align-items:stretch}.v2slide figure{height:100%}
/* v2d QA fixes */
.lg-foot,.lg-hero{max-width:100%;height:auto}
.games-card .media{overflow:hidden}
footer .fl a{display:inline-flex;align-items:center;min-height:40px}
.v2more a{display:inline-block;padding:10px 0}
@media (max-width:860px){
body{padding-bottom:92px}
footer .fl a,footer a[href^="mailto"]{min-height:44px;display:inline-flex;align-items:center}
.bar a{display:inline-block;padding:8px 0}
}
footer{position:relative;z-index:4;background:linear-gradient(180deg,rgba(4,5,12,.6),rgba(4,5,12,.92) 30%)}
.ppbadge{grid-column:1/-1;display:flex;justify-content:center;padding:8px 0 4px}.ppbadge a{display:inline-block;border-radius:12px;line-height:0;transition:opacity .3s,transform .3s}.ppbadge a:hover{opacity:.9;transform:translateY(-2px)}.ppbadge img{max-width:100%;height:auto}
