:root{--play-red:#bb2030;--play-ink:#181818}
.play-site{min-height:100vh;display:flex;flex-direction:column;background:#fff;color:var(--play-ink);font-family:Arial,Helvetica,sans-serif}
.play-header{background:#fff}.play-logo>span:first-child{color:var(--play-red);font-weight:950;letter-spacing:-1.2px;font-size:clamp(1.3rem,4vw,1.7rem);line-height:1}
.play-logo .badge{font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;line-height:1.15;padding:.55em .8em;white-space:nowrap}
.play-nav{color:var(--play-ink);font-size:.9rem;font-weight:700}.play-hero{padding-top:clamp(3rem,7vw,7rem);padding-bottom:clamp(3rem,7vw,7rem)}
.play-eyebrow{font-size:.72rem;letter-spacing:.18em;font-weight:800;color:var(--play-red)}
.play-site .ok-hero-title{font-size:clamp(2.7rem,6.5vw,6.2rem);font-weight:950;line-height:.99;letter-spacing:-.065em;margin:0;color:var(--play-ink)}
.play-site .ok-hero-title em{font-style:normal;color:var(--play-red)}
.play-hero-art{aspect-ratio:1;max-width:380px;margin:auto;background:#f3f1ee;border-radius:2rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.3rem;transform:rotate(3deg)}
.play-hero-art>.bi{font-size:clamp(6rem,12vw,10rem);color:var(--play-red);line-height:1.2}
.play-art-label,.play-art-bottom{font-size:.68rem;letter-spacing:.22em;font-weight:800}.play-games{background:#f5f5f4;scroll-margin-top:2rem}
.play-card{color:var(--play-ink);border:1px solid #e9e9e7;transition:transform .18s,border-color .18s}.play-card:hover{color:var(--play-red);border-color:var(--play-red);transform:translateY(-3px)}
.play-card-icon{font-size:2rem;color:var(--play-red);background:#faf0f1;width:66px;height:66px;display:grid;place-items:center;border-radius:18px}
.play-footer{font-size:.8rem}.play-footer a{color:#555;text-decoration:none}.play-footer a:hover{color:var(--play-red);text-decoration:underline}
.play-legal{max-width:850px;overflow-wrap:anywhere;line-height:1.8}
.play-site .arcade-game-hero,.play-site .catch-hero{padding:clamp(2rem,6vw,5rem) 0;background:#f5f5f4}
.play-site .arcade-back{display:block;margin-bottom:1rem;color:var(--play-red)}.play-site .arcade-kicker{display:block;margin-bottom:1rem}
.play-site :focus-visible{outline:3px solid var(--play-red);outline-offset:4px}
@media(max-width:575px){.play-hero-art{max-width:240px}.play-site .ok-hero-title{font-size:clamp(2.4rem,10vw,3.8rem)}.play-logo{max-width:250px}.play-footer nav{width:100%}}
@media(prefers-reduced-motion:reduce){.play-card{transition:none}.play-card:hover{transform:none}}

/* Legal pages use the shop's content-page structure, without loading shop assets. */
.play-site .content-page{padding:4.5rem 0 8rem;background:#fff}
.play-site .content-page-head{max-width:880px;margin-bottom:2.7rem}
.play-site .content-page-head h1{font-size:clamp(2.6rem,5vw,5rem);font-weight:700;letter-spacing:-.055em;margin:.5rem 0 1rem;overflow-wrap:anywhere}
.play-site .content-page-head>p:last-child{font-size:1.08rem;color:#6d6d6d;line-height:1.65}
.play-site .content-page-body{max-width:1100px}
.play-site .legal-section{border-top:1px solid #e4e4e4;padding:1.6rem 0}
.play-site .legal-section h2{font-size:1.2rem;font-weight:600;color:var(--play-red);margin:0 0 .8rem}
.play-site .legal-section p{line-height:1.75;color:#505050;max-width:900px}
@media(max-width:575px){.play-site .content-page{padding:2.5rem 0 4rem}}
