html,body{max-width:100%;overflow-x:hidden}.nav{width:100%}.menu-toggle{display:none;border:3px solid var(--ink);background:var(--acid);padding:10px 14px;font:inherit;font-weight:900;cursor:pointer}
.hero{position:relative;min-height:86vh;overflow:hidden;padding-bottom:105px;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}.hero-copy{min-width:0}
.hero-support{font-size:clamp(16px,1.5vw,21px);font-weight:700;margin:14px 0 0}
.hero-description{max-width:680px;font-size:16px;line-height:1.55;margin-top:14px}
.actions a{display:inline-block;box-shadow:5px 5px 0 var(--ink);transition:transform .15s,box-shadow .15s;text-decoration:none;color:var(--ink)}
.actions a:hover{transform:translate(3px,3px);box-shadow:2px 2px 0 var(--ink)}
.actions a:focus-visible,.game-card:focus-visible,.challenge-button:focus-visible,.trending-grid a:focus-visible,.scroll-hint:focus-visible,.surprise-section button:focus-visible,.nav a:focus-visible,.menu-toggle:focus-visible{outline:4px solid var(--pink);outline-offset:4px}
.hero-art{transform:scale(1.12) translateX(-35px);transform-origin:center;animation:heroFloat 4.6s ease-in-out infinite}
.hero-art .eye{animation:blink 5.4s infinite;transform-origin:center}
.hero-art .speech{max-width:245px;min-height:86px;display:grid;place-items:center;text-align:center;transition:opacity .25s,transform .25s}
.hero-art .speech.changing{opacity:0;transform:translateY(8px) rotate(4deg)}
.sticker{animation:stickerBounce 4s ease-in-out infinite}.s2{animation-delay:.8s}.s3{animation-delay:1.6s}
.scroll-hint{position:absolute;bottom:28px;left:50%;transform:translateX(-50%);color:var(--ink);font-weight:900;letter-spacing:.09em;text-decoration:none;animation:scrollBounce 2s ease-in-out infinite}
@keyframes heroFloat{50%{transform:scale(1.12) translate(-35px,-12px)}}
@keyframes blink{0%,45%,48%,100%{transform:scaleY(1)}46%,47%{transform:scaleY(.08)}}
@keyframes stickerBounce{50%{translate:0 -5px}}
@keyframes scrollBounce{50%{transform:translate(-50%,8px)}}
.games-section{background:var(--paper);border-top:4px solid var(--ink)}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:36px}.section-heading p{font-weight:800;letter-spacing:.13em}.section-heading h2{font-family:"Archivo Black";font-size:clamp(55px,8vw,110px);line-height:.9;margin:8px 0 0}.section-lead{font-size:clamp(18px,2vw,25px);letter-spacing:0!important;max-width:380px}
.games-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.game-card{position:relative;display:flex;flex-direction:column;min-height:390px;border:4px solid var(--ink);background:#fff;color:#111;padding:18px;text-decoration:none;box-shadow:8px 8px 0 var(--ink);transition:transform .18s,box-shadow .18s}.game-card:hover{transform:translate(-3px,-3px);box-shadow:12px 12px 0 var(--ink)}.game-card:nth-child(2n){background:var(--blue)}.game-card:nth-child(3n){background:var(--pink)}.game-card h3{font-family:"Archivo Black";font-size:25px;line-height:1;margin:18px 0 8px}.game-card p{font-weight:600;line-height:1.45;margin:0 0 18px}.game-art{height:145px;display:grid;place-items:center;background:var(--acid);border:3px solid var(--ink);font-size:48px;letter-spacing:-.12em}.card-label{position:absolute;top:8px;right:8px;background:var(--orange);color:#fff;border:2px solid var(--ink);padding:5px 8px;font-size:11px;font-weight:900;transform:rotate(4deg)}.play-button{margin-top:auto;align-self:flex-start;background:var(--ink);color:#fff;padding:10px 16px;font-weight:900}
.challenge-section{margin:0;padding:48px 6vw;display:flex;justify-content:space-between;align-items:center;gap:30px;background:var(--acid);border-block:4px solid var(--ink)}.challenge-section p{font-weight:900;letter-spacing:.14em}.challenge-section h2{font-family:"Archivo Black";font-size:clamp(28px,4vw,55px);max-width:850px;margin:8px 0}.challenge-button{flex:none;background:var(--ink);color:#fff;border:4px solid var(--ink);padding:18px 22px;font-weight:900;text-decoration:none;box-shadow:6px 6px 0 var(--orange)}
.trending-section{background:#fff}.trending-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.trending-grid a{display:flex;flex-direction:column;gap:8px;min-height:180px;padding:24px;border:4px solid var(--ink);color:var(--ink);text-decoration:none;box-shadow:7px 7px 0 var(--ink)}.trending-grid a:nth-child(2){background:var(--orange);color:#fff}.trending-grid a:nth-child(3){background:var(--blue)}.trending-grid span{font-size:12px;font-weight:900;letter-spacing:.12em}.trending-grid strong{font-family:"Archivo Black";font-size:27px;line-height:1}.trending-grid small{font-size:16px;margin-top:auto}
.surprise-section{text-align:center;padding:75px 20px;background:var(--pink);border-top:4px solid var(--ink)}.surprise-section p{font-size:20px;font-weight:800}.surprise-section button{border:4px solid var(--ink);background:var(--acid);padding:17px 28px;font:inherit;font-weight:900;box-shadow:7px 7px 0 var(--ink);cursor:pointer}
.about-summary{background:var(--paper);border-top:4px solid var(--ink)}.about-answer{max-width:900px;font-size:clamp(18px,2vw,24px);line-height:1.55;font-weight:600}.facts-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:35px 0}.facts-grid div{border:3px solid var(--ink);background:#fff;color:#111;padding:18px;box-shadow:5px 5px 0 var(--ink)}.facts-grid dt{font-weight:900;text-transform:uppercase;font-size:12px;letter-spacing:.08em}.facts-grid dd{margin:8px 0 0;font-weight:700}.collection-links{display:flex;flex-wrap:wrap;gap:12px}.collection-links a{border:3px solid var(--ink);background:var(--acid);color:#111;padding:12px 16px;font-weight:900;text-decoration:none}.footer-pages{display:flex;flex-wrap:wrap;gap:12px}.footer-pages a{color:#fff;font-weight:700}
.nav a.active{background:var(--acid);padding:6px 8px;color:#111!important}
@media(max-width:1100px){.games-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.facts-grid{grid-template-columns:repeat(2,1fr)}.hero-art{transform:scale(1.03) translateX(-15px)}@keyframes heroFloat{50%{transform:scale(1.03) translate(-15px,-10px)}}}
@media(max-width:850px){.nav{position:relative;flex-wrap:wrap;max-width:100vw}.menu-toggle{display:block;position:absolute;right:5vw;top:50%;transform:translateY(-50%)}.nav nav{display:none;position:absolute;z-index:100;top:100%;left:0;right:0;padding:18px 5vw;background:var(--paper);border-bottom:4px solid var(--ink);grid-template-columns:1fr;gap:8px}.nav nav.open{display:grid}.nav nav a,.nav nav a.game-link{display:block;padding:10px;border:2px solid transparent}.nav nav button{justify-self:start}.hero{grid-template-columns:minmax(0,1fr);padding:55px 6vw 85px}.hero-art{min-height:500px;transform:none;margin-top:30px}@keyframes heroFloat{50%{transform:translateY(-8px)}}.hero-art .head{transform:scale(1.05)}.section-heading,.challenge-section{display:block}.challenge-button{display:inline-block;margin-top:12px}.trending-grid{grid-template-columns:1fr}.scroll-hint{bottom:18px;font-size:12px}.section{padding-block:70px}}
@media(max-width:560px){.games-grid{grid-template-columns:1fr}.facts-grid{grid-template-columns:1fr}.game-card{min-height:350px}.hero,.hero-copy{width:100%;max-width:100%}.hero-copy p{max-width:100%;overflow-wrap:anywhere}.hero h1{font-size:11vw;max-width:100%}.hero .intro{font-size:20px}.hero-art{min-height:440px}.speech{font-size:17px!important}.scroll-hint{display:none}.challenge-section{padding-block:38px}.section-heading h2{font-size:50px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-art,.hero-art .eye,.sticker,.scroll-hint{animation:none!important}.hero-art .speech,.game-card,.actions a{transition:none!important}}
