:root{
  --bg:#fffaf4;--paper:#fff;--ink:#3a2e2a;--muted:#7a6b64;--line:#eadfd3;
  --fire:#e0412f;--orange:#ff7a1a;--sun:#ffd23f;--sky:#3d7bd9;--leaf:#2f9e5b;
  --kids:#e7f4ff;--adults:#fff1e3;--radius:20px;--shadow:0 6px 24px rgba(58,46,42,.08);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Nunito,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;background:var(--bg);color:var(--ink);line-height:1.5;font-size:17px}
img{max-width:100%;height:auto;display:block}
a{color:var(--sky)}
h1,h2,h3{line-height:1.15;margin:0 0 .4em}
h1{font-size:clamp(1.7rem,4vw,2.6rem);font-weight:900}
h2{font-size:clamp(1.5rem,3vw,2.1rem);font-weight:900}
h3{font-size:1.25rem;font-weight:800}
.tiny{font-size:.85rem;color:var(--muted)}
.muted{color:var(--muted)}

.top{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:16px;padding:10px 16px;background:rgba(255,250,244,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.logo{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--ink);font-weight:700;font-size:1.1rem}
.logo b{color:var(--fire);font-weight:900}
.nav{display:flex;gap:4px;margin-left:auto;flex-wrap:wrap}
.nav a{text-decoration:none;color:var(--ink);font-weight:700;padding:8px 12px;border-radius:999px}
.nav a:hover{background:var(--adults)}
.call{display:flex;flex-direction:column;align-items:center;text-decoration:none;background:var(--fire);color:#fff;padding:6px 14px;border-radius:14px;line-height:1.1}
.call span{font-size:.7rem;opacity:.9}.call b{font-size:1.3rem;font-weight:900}

main{max-width:1100px;margin:0 auto;padding:16px}
.hero{display:grid;grid-template-columns:1.2fr 1fr;gap:32px;align-items:center;padding:32px 0 16px}
.eyebrow{text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:var(--fire);font-size:.8rem;margin:0 0 8px}
.lead{font-size:1.1rem;color:#574a44}
.cta{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0 12px}
.btn{display:inline-block;border:0;cursor:pointer;font:inherit;font-weight:800;padding:14px 22px;border-radius:999px;text-decoration:none;color:var(--ink);box-shadow:var(--shadow);transition:transform .15s}
.btn:hover{transform:translateY(-2px)}
.btn-kids{background:var(--sun)}.btn-adults{background:var(--orange);color:#fff}.btn-print{background:#fff;border:2px solid var(--line)}
.hero-img{width:100%;max-width:480px;justify-self:center}

.numbers{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin:16px 0 40px}
.num{background:var(--paper);border:2px solid var(--line);border-radius:var(--radius);padding:14px 18px;display:flex;flex-direction:column}
.num b{font-size:1.7rem;color:var(--fire);font-weight:900;line-height:1.1}
.num span{font-size:.85rem;color:var(--muted)}

.block{padding:36px 0;scroll-margin-top:70px}
.block-head{max-width:720px;margin-bottom:20px}
.kids .block-head h2{color:var(--sky)}.adults .block-head h2{color:var(--orange)}.emergency .block-head h2{color:var(--fire)}
.stars{font-size:1.4rem;letter-spacing:2px;min-height:1.6em}

.lessons{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:20px}
.lesson{background:var(--paper);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;display:flex;flex-direction:column;border:3px solid transparent}
.kids .lesson{border-color:#cfe6fb}.adults .lesson{border-color:#ffe0c2}
.lesson-img{width:100%;aspect-ratio:400/260;object-fit:cover}
.lesson-body{padding:18px 20px 20px;display:flex;flex-direction:column;gap:10px}
.short{margin:0;color:#574a44}
.points{margin:0;padding-left:20px}
.points li{margin:4px 0}
.kids .points li::marker{color:var(--sky)}.adults .points li::marker{color:var(--orange)}

.player{display:flex;align-items:center;gap:12px;background:var(--bg);border:2px dashed var(--line);border-radius:14px;padding:10px 12px}
.player.has-audio{border-style:solid}
.play{width:46px;height:46px;border-radius:50%;border:0;background:var(--fire);color:#fff;font-size:1.1rem;cursor:pointer;flex-shrink:0}
.play[disabled]{background:#cfc5bd;cursor:not-allowed}
.player-meta{display:flex;flex-direction:column;line-height:1.2}
.player-meta span{font-size:.8rem;color:var(--muted)}
.player audio{display:none}

.quiz{margin-top:auto;border-top:1px solid var(--line);padding-top:12px}
.quiz-q{font-weight:800;margin:0 0 8px}
.quiz-a{display:flex;flex-direction:column;gap:6px}
.quiz-a button{font:inherit;text-align:left;padding:8px 12px;border-radius:10px;border:2px solid var(--line);background:#fff;cursor:pointer}
.quiz-a button:hover{border-color:var(--sky)}
.quiz-a button.ok{background:#e4f6ea;border-color:var(--leaf)}
.quiz-a button.bad{background:#fde7e4;border-color:var(--fire)}
.quiz-res{margin:8px 0 0;font-weight:800;min-height:1.4em}

.emergency{background:var(--paper);border-radius:var(--radius);padding:32px;box-shadow:var(--shadow);margin:20px 0}
.steps{counter-reset:s;list-style:none;padding:0;margin:0 0 20px;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px}
.steps li{counter-increment:s;position:relative;padding:14px 16px 14px 60px;background:var(--adults);border-radius:14px}
.steps li::before{content:counter(s);position:absolute;left:14px;top:12px;width:34px;height:34px;border-radius:50%;background:var(--fire);color:#fff;font-weight:900;display:grid;place-items:center}

.tabs{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}
.tab{font:inherit;font-weight:800;padding:8px 16px;border-radius:999px;border:2px solid var(--line);background:#fff;cursor:pointer}
.tab.is-active{background:var(--ink);color:#fff;border-color:var(--ink)}
.news-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px}
.news-item{overflow-wrap:anywhere;min-width:0;background:var(--paper);border:2px solid var(--line);border-radius:16px;padding:14px 16px;display:flex;flex-direction:column;gap:6px}
.news-item a{color:var(--ink);text-decoration:none;font-weight:800;line-height:1.3}
.news-item a:hover{color:var(--fire)}
.news-item .src{font-size:.8rem;color:var(--muted)}
.news-item .desc{font-size:.92rem;color:#574a44;margin:0}

.foot{max-width:1100px;margin:40px auto 0;padding:24px 16px;border-top:1px solid var(--line);color:var(--muted);font-size:.85rem}

@media (max-width:800px){
  .hero{grid-template-columns:1fr;text-align:center}
  .cta{justify-content:center}
  .nav{display:none}
  .emergency{padding:20px}
}
@media print{
  .top,.hero,.numbers,.kids,.adults,.news,.foot,.btn-print{display:none!important}
  .emergency{box-shadow:none;border:1px solid #000}
}
