/* ============ ZamZom Design System ============ */
:root{
  --primary:#6C5CE7;
  --primary-dark:#5a4bd1;
  --secondary:#FF9F43;
  --secondary-dark:#d68910;
  --success:#2ED573;
  --danger:#FF6B6B;
  --accent:#FFC93C;
  --bg:#FFF6E9;
  --card:#ffffff;
  --text:#2D3436;
  --muted:#636e72;
  --radius:20px;
  --shadow:0 4px 12px rgba(0,0,0,.08);
  --font:'Comic Sans MS','Chalkboard SE','Segoe UI',system-ui,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--font);background:var(--bg);color:var(--text);line-height:1.6}
img{max-width:100%}
a{color:var(--primary)}
.container{max-width:1100px;margin:0 auto;padding:0 20px}

/* ---------- Header ---------- */
.site-header{background:var(--primary);position:sticky;top:0;z-index:100;box-shadow:0 2px 10px rgba(0,0,0,.15)}
.header-inner{max-width:1100px;margin:0 auto;padding:12px 20px;display:flex;justify-content:space-between;align-items:center}
.logo{color:#fff;font-size:1.7rem;font-weight:bold;text-decoration:none}
.logo span{color:var(--accent)}
.main-nav{display:flex;gap:22px}
.main-nav a{color:#fff;text-decoration:none;font-weight:bold}
.main-nav a:hover{color:var(--accent)}
.hamburger{display:none;background:none;border:none;color:#fff;font-size:1.8rem;cursor:pointer}

/* ---------- Buttons ---------- */
.btn{display:inline-block;background:var(--secondary);color:#fff;border:none;padding:14px 34px;font-size:1.15rem;border-radius:50px;cursor:pointer;font-weight:bold;font-family:inherit;text-decoration:none;box-shadow:0 4px 0 var(--secondary-dark);transition:transform .1s}
.btn:hover{transform:translateY(-2px)}
.btn:active{transform:translateY(2px);box-shadow:none}
.btn-green{background:var(--success);box-shadow:0 4px 0 #1eae53}
.btn-purple{background:var(--primary);box-shadow:0 4px 0 var(--primary-dark)}
.btn-outline{background:#fff;color:var(--primary);box-shadow:0 4px 0 #dfe6e9;border:2px solid var(--primary)}

/* ---------- Hero ---------- */
.hero{background:linear-gradient(135deg,#6C5CE7 0%,#a29bfe 100%);color:#fff;text-align:center;padding:70px 20px 60px;border-radius:0 0 40px 40px}
.hero-badge{display:inline-block;background:rgba(255,255,255,.2);padding:8px 20px;border-radius:50px;font-weight:bold;margin-bottom:18px}
.hero h1{font-size:2.8rem;margin-bottom:12px;text-shadow:2px 2px 0 rgba(0,0,0,.15)}
.hero p{font-size:1.25rem;max-width:640px;margin:0 auto 28px;opacity:.95}
.hero-cta{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.hero-mascots{font-size:3rem;margin-top:26px;letter-spacing:8px;animation:bounce 2s infinite}
@keyframes bounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}

/* ---------- Sections ---------- */
.section{padding:56px 0}
.section-title{text-align:center;font-size:2rem;margin-bottom:8px}
.section-sub{text-align:center;color:var(--muted);max-width:640px;margin:0 auto 34px}

/* ---------- Category cards ---------- */
.cat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px}
.cat-card{background:var(--card);border-radius:var(--radius);padding:28px 20px;text-align:center;box-shadow:var(--shadow);text-decoration:none;color:var(--text);transition:transform .15s;border-top:6px solid var(--primary)}
.cat-card:hover{transform:translateY(-6px)}
.cat-card .emoji{font-size:3rem}
.cat-card h3{margin:10px 0 6px}
.cat-card p{color:var(--muted);font-size:.95rem}
.cat-card .count{display:inline-block;margin-top:10px;background:#f1f2f6;padding:4px 14px;border-radius:50px;font-size:.85rem;font-weight:bold}

/* ---------- Game cards ---------- */
.games-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:22px}
.game-card{background:var(--card);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column;transition:transform .15s}
.game-card:hover{transform:translateY(-6px)}
.game-art{font-size:4rem;text-align:center;padding:30px 10px;background:linear-gradient(135deg,#ffeaa7,#fab1a0)}
.game-card:nth-child(2n) .game-art{background:linear-gradient(135deg,#a29bfe,#81ecec)}
.game-card:nth-child(3n) .game-art{background:linear-gradient(135deg,#55efc4,#81ecec)}
.game-body{padding:20px;display:flex;flex-direction:column;flex:1}
.game-tag{display:inline-block;align-self:flex-start;background:#f1f2f6;color:var(--primary);font-size:.8rem;font-weight:bold;padding:4px 12px;border-radius:50px;margin-bottom:8px}
.game-body h3{margin-bottom:6px}
.game-body p{color:var(--muted);font-size:.95rem;flex:1;margin-bottom:14px}
.game-body .btn{text-align:center;padding:12px 20px;font-size:1rem}

/* ---------- Features ---------- */
.features{background:#fff;border-radius:40px;margin:0 16px}
.feat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px}
.feat{text-align:center;padding:10px}
.feat .emoji{font-size:2.6rem}
.feat h3{margin:8px 0 6px}
.feat p{color:var(--muted);font-size:.95rem}

/* ---------- Parents banner ---------- */
.parents-banner{background:linear-gradient(135deg,#00b894,#55efc4);color:#fff;border-radius:30px;padding:44px 30px;text-align:center;margin:0 16px}
.parents-banner h2{margin-bottom:10px}
.parents-banner p{max-width:600px;margin:0 auto 22px;opacity:.95}

/* ---------- Ad slots ---------- */
.ad-slot{border:2px dashed #b2bec3;background:#f1f2f6;min-height:90px;display:flex;align-items:center;justify-content:center;color:var(--muted);border-radius:12px;margin:28px auto;max-width:970px}
.ad-slot::after{content:'Advertisement'}

/* ---------- Content pages ---------- */
.page-hero{background:linear-gradient(135deg,#6C5CE7,#a29bfe);color:#fff;text-align:center;padding:50px 20px;border-radius:0 0 30px 30px}
.page-hero h1{font-size:2.2rem}
.page-content{max-width:800px;margin:0 auto;padding:40px 20px}
.page-content h2{margin:28px 0 10px;color:var(--primary)}
.page-content p,.page-content li{margin-bottom:10px}
.page-content ul{padding-left:22px}
.info-card{background:#fff;border-radius:var(--radius);padding:26px;box-shadow:var(--shadow);margin-bottom:20px}

/* ---------- Game page shared ---------- */
.game-wrap{max-width:900px;margin:0 auto;padding:20px}
.game-head{text-align:center;margin-bottom:6px}
.game-head h1{font-size:2rem}
.game-head p{color:var(--muted)}
.how-to{background:#fff;border-radius:var(--radius);padding:24px;box-shadow:var(--shadow);margin:26px 0}
.how-to h2{color:var(--primary);margin-bottom:10px}
.how-to ol{padding-left:22px}
.how-to li{margin-bottom:8px}
.more-games{text-align:center;margin:26px 0}

/* ---------- Footer ---------- */
.site-footer{background:#2D3436;color:#dfe6e9;margin-top:50px}
.footer-grid{max-width:1100px;margin:0 auto;padding:44px 20px 20px;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:26px}
.site-footer h4{color:#fff;margin-bottom:12px}
.site-footer a{color:#dfe6e9;text-decoration:none;display:block;margin-bottom:8px}
.site-footer a:hover{color:var(--accent)}
.footer-logo{font-size:1.6rem;font-weight:bold;color:#fff;margin-bottom:10px}
.footer-bottom{text-align:center;padding:18px;border-top:1px solid #3d4446;color:#b2bec3;font-size:.9rem}

/* ---------- Responsive ---------- */
@media(max-width:720px){
  .main-nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--primary-dark);flex-direction:column;padding:14px 20px;gap:12px}
  .main-nav.open{display:flex}
  .hamburger{display:block}
  .site-header{position:sticky}
  .header-inner{position:relative}
  .hero h1{font-size:2rem}
  .hero{padding:50px 16px 44px}
}

/* ---------- Share & Comments ---------- */
.share-box{background:#fff;border-radius:20px;padding:24px;box-shadow:0 4px 12px rgba(0,0,0,.08);margin:26px 0;text-align:center}
.share-box h3{color:#6C5CE7;margin-bottom:6px}
.share-btns{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:14px}
.share-btn{display:inline-block;padding:10px 18px;border-radius:50px;color:#fff!important;font-weight:bold;text-decoration:none;font-size:.95rem;border:none;cursor:pointer;font-family:inherit}
.share-fb{background:#1877F2}.share-x{background:#111}.share-wa{background:#25D366}.share-tg{background:#229ED9}.share-copy{background:#6C5CE7}
.copy-msg{display:none;color:#2ED573;font-weight:bold;margin-top:10px}
.comments-box{background:#fff;border-radius:20px;padding:24px;box-shadow:0 4px 12px rgba(0,0,0,.08);margin:26px 0}
.comments-box h3{color:#6C5CE7;margin-bottom:12px}
/* ---------- Premium footer contact ---------- */
.footer-contact{margin-top:14px}
.footer-contact p{margin-bottom:6px;font-size:.92rem}
.footer-contact a{color:#FFC93C;display:inline}
