:root{--purple:#563aca;--ink:#20223d;--muted:#64677e;--bg:#fbfaff;--lav:#f0edff;--mint:#e3fbef;--line:#e8e7f0;--white:#fff;--yellow:#fff4d6}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:system-ui,-apple-system,Segoe UI,sans-serif;font-size:16px;line-height:1.6}a{color:var(--purple)}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.65}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.17}h1{font-size:clamp(2.4rem,5vw,4.3rem);max-width:790px;font-weight:900;letter-spacing:-.045em}h2{font-size:clamp(1.75rem,3vw,2.65rem);font-weight:900;letter-spacing:-.025em}h3{font-size:1.3rem}em{font-style:normal;color:var(--purple)}p{color:var(--muted)}.container{max-width:1180px;padding:0 24px;margin:auto}.skip{position:absolute;top:-100px;left:12px;z-index:100;background:#fff;padding:10px}.skip:focus{top:8px}
.nav{height:auto;min-height:78px;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:12px max(24px,calc((100% - 1132px)/2));background:rgba(255,255,255,.94);border-bottom:1px solid var(--line)}.nav .logo{text-decoration:none;font-weight:900;font-size:1.55rem;color:var(--ink);white-space:nowrap}.logo span{color:var(--purple)}.nav nav{display:flex;align-items:center;flex-wrap:wrap;gap:clamp(10px,2vw,26px)}.nav nav a{text-decoration:none;color:#3d3c54;font-weight:800;font-size:.96rem;padding:6px 0}.nav nav a[aria-current="page"]{color:var(--purple);box-shadow:0 3px 0 var(--purple)}.nav a:hover{text-decoration:underline}
.hero{background:radial-gradient(circle at 92% 22%,#ffe4bc 0,transparent 24%),radial-gradient(circle at 79% 80%,#e4dcff 0,transparent 30%),linear-gradient(128deg,#f8f4ff 0%,#fff 72%);padding:65px 0 71px}.hero p{font-size:1.12rem;max-width:710px}.eyebrow{text-transform:uppercase;color:var(--purple);font-weight:900;font-size:.75rem;letter-spacing:.12em}.heroactions{display:flex;gap:14px;flex-wrap:wrap;margin:26px 0 0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;border-radius:14px;font-size:1rem;font-weight:900;padding:13px 21px;min-height:49px;line-height:1.1;border:2px solid transparent;transition:transform .16s,background .16s}.btn:hover:not(:disabled){transform:translateY(-2px)}.btn.primary{background:var(--purple);color:#fff}.btn.primary:hover{background:#432aab}.btn.outline{background:white;border-color:#ded9fa;color:var(--purple)}.stats{display:flex;gap:28px;flex-wrap:wrap;margin:29px 0 0}.stats div{display:flex;flex-direction:column}.stats b{font-size:2rem;line-height:1.1;color:var(--purple)}.stats span{font-size:.88rem;color:var(--muted)}.section{padding-top:68px;padding-bottom:65px}.section-head{display:flex;justify-content:space-between;gap:25px}.section-head p{max-width:800px}.filters{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin:22px 0 26px;padding:18px;background:white;border:1px solid var(--line);box-shadow:0 8px 24px #35246c0a;border-radius:19px}.filters label,.play-head label{display:flex;flex-direction:column;gap:6px;font-weight:800;color:#373651;font-size:.85rem}.filters input,.filters select,.play-head select{min-width:0;width:100%;border:1px solid #dad7e8;background:#fff;border-radius:11px;padding:11px;color:var(--ink);outline-offset:3px;font-size:.95rem}.listing>p:first-child{color:#59556c;font-weight:800}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.unit-card{background:white;border:1px solid var(--line);border-radius:19px;padding:23px;box-shadow:0 5px 20px #26244d09;display:flex;flex-direction:column;min-height:315px}.unit-card h3{margin:15px 0 10px;line-height:1.3}.unit-card p{font-size:.94rem;margin:0 0 12px}.unit-card ul{margin:0 0 18px;padding-left:21px;color:#51516a;font-size:.93rem}.unit-card li{margin-bottom:4px}.unit-card .top{display:flex;justify-content:space-between;gap:8px;align-items:center;flex-wrap:wrap}.tag{background:var(--lav);color:#4b32ae;border-radius:40px;font-weight:900;padding:5px 11px;font-size:.75rem}.tag.mint{background:var(--mint);color:#136b4c}.locked{margin-top:auto;padding-top:12px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:.86rem;font-weight:800}.locked span{color:#7d748d}.locked a{white-space:nowrap}.callout{margin-top:8px;margin-bottom:66px;padding-top:30px;padding-bottom:30px;background:var(--lav);border:1px solid #ded9fc;border-radius:25px;display:flex;align-items:center;justify-content:space-between;gap:24px}.callout h2{font-size:1.65rem;margin-bottom:6px}.callout p{margin:0;max-width:720px}.note{padding-bottom:56px}.note p{font-size:.88rem}.note a{font-weight:800}footer{background:#251c51;color:#e8e1ff;padding:25px 0}footer .container{display:flex;gap:16px;align-items:center;flex-wrap:wrap}footer a{color:#fff}footer small{margin-left:auto}::selection{background:#d8cfff}
.game-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:24px 0}.game-tile{display:flex;flex-direction:column;align-items:flex-start;gap:8px;text-align:left;border:2px solid var(--line);border-radius:20px;background:white;padding:21px;color:#26223e;font-size:2rem;transition:all .15s}.game-tile:hover,.game-tile.active{border-color:var(--purple);background:#f4f0ff;transform:translateY(-2px)}.game-tile strong{font-size:1rem;line-height:1.15}.game-tile span{font-size:.85rem;color:var(--muted);line-height:1.4}.games-hero{padding-bottom:42px}.stars{display:inline-flex;align-items:center;gap:9px;flex-wrap:wrap;font-size:1rem;font-weight:900;background:white;padding:10px 18px;border:1px solid #eee0ad;border-radius:32px}.quiet{border:0;background:transparent;color:var(--purple);font-weight:800;text-decoration:underline;font-size:.85rem}.playarea{border:1px solid #dfdbef;background:#fff;border-radius:26px;padding:28px;box-shadow:0 10px 35px #2d245013}.play-head{display:flex;justify-content:space-between;gap:20px;align-items:center}.play-head h3{font-size:1.8rem;margin:4px 0}.play-head select{min-width:148px}.game-board{min-height:240px;margin:20px 0;display:flex;flex-direction:column;gap:13px}.game-status{color:#343055;font-weight:800;margin-top:15px;background:#f0edff;padding:11px 16px;border-radius:13px}.challenge-prompt{font-size:clamp(1.4rem,3vw,2rem);font-weight:900;line-height:1.4;margin:8px 0}.challenge-options{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.choice{border:2px solid #e7e1f7;border-radius:15px;padding:18px 14px;background:#fff;text-align:center;font-size:1.12rem;font-weight:900;color:#343059;min-height:67px;white-space:normal}.choice:hover:not(:disabled){border-color:var(--purple);background:#f7f5ff}.choice.right{background:#e0fbea;border-color:#1a915a}.choice.wrong{background:#fff0f0;border-color:#c75b5b}.game-feedback{font-weight:900;color:#254d3a;font-size:1rem}.game-feedback.fail{color:#994e4e}.play-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.counter{color:#57526c;font-weight:800;font-size:.9rem}.memory-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.memory-card{min-height:95px;border-radius:16px;border:2px solid #d8d1f7;background:#654ac9;color:#fff;padding:7px;font-size:1.1rem;word-break:normal;line-height:1.2;font-weight:800}.memory-card.revealed,.memory-card.matched{background:#f2edff;color:#251c51}.memory-card.matched{background:#dcf8e8;border-color:#61c793}.memory-card:focus-visible,.choice:focus-visible,.game-tile:focus-visible,a:focus-visible{outline:3px solid #d28900;outline-offset:3px}.notice{background:var(--yellow);padding:15px;border-radius:13px;border:1px solid #edd9a3;max-width:760px;color:#514425;font-size:.97rem}.plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:26px 0}.plan{background:#fff;border:1px solid var(--line);border-radius:22px;padding:27px;display:flex;flex-direction:column}.plan.featured{border:2px solid var(--purple);box-shadow:0 12px 30px #563aca17}.plan h3{margin:12px 0 6px}.plan .price{font-weight:900;font-size:1.4rem;color:var(--ink);margin:0 0 10px}.plan ul{padding-left:22px;line-height:1.9;color:#514b65;margin-bottom:25px}.plan .btn{margin-top:auto;text-align:center}details{background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px 22px;margin-bottom:11px}summary{cursor:pointer;color:var(--ink);font-weight:900}details p{margin:12px 0 0}
@media(max-width:1000px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.game-picker{grid-template-columns:repeat(2,minmax(0,1fr))}.filters{grid-template-columns:repeat(2,minmax(0,1fr))}.plans{grid-template-columns:repeat(2,minmax(0,1fr))}.plan:last-child{grid-column:1/-1}}@media(max-width:650px){.nav{flex-direction:column;align-items:flex-start;gap:6px}.nav nav{width:100%;justify-content:space-between;gap:8px}.nav nav a{font-size:.82rem}.hero{padding:44px 0}.cards,.plans{grid-template-columns:1fr}.plan:last-child{grid-column:auto}.filters{grid-template-columns:1fr}.game-picker{grid-template-columns:1fr 1fr;gap:8px}.game-tile{padding:13px;font-size:1.4rem}.game-tile strong{font-size:.9rem}.game-tile span{font-size:.77rem}.play-head{flex-wrap:wrap}.play-head select{min-width:160px}.callout{border-radius:0;flex-direction:column;align-items:flex-start;margin-bottom:40px}.challenge-options{grid-template-columns:1fr 1fr}.memory-card{min-height:76px;font-size:.78rem}.playarea{padding:17px}.stats{gap:20px}}