:root {
  --forest:#123f2b;
  --green:#27824f;
  --lime:#b9dd53;
  --yellow:#ffd65a;
  --sky:#dff5f2;
  --cream:#fffaf0;
  --ink:#17352a;
  --muted:#547064;
  --white:#fff;
  --shadow:0 18px 50px rgba(18,63,43,.12);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:"Trebuchet MS",Arial,sans-serif;font-size:16px;line-height:1.6}
button,a{font:inherit}
button{color:inherit}
a{color:inherit}
.skip-link{position:absolute;left:-999px;top:10px;background:#fff;padding:10px;z-index:99}
.skip-link:focus{left:10px}
.site-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:14px clamp(20px,5vw,72px);background:rgba(255,250,240,.94);backdrop-filter:blur(12px);border-bottom:1px solid rgba(18,63,43,.1)}
.brand{font-size:1.35rem;font-weight:900;text-decoration:none}.brand span{font-size:1.6rem}
nav{display:flex;gap:26px;align-items:center}nav a{text-decoration:none;font-weight:700}nav a:hover{text-decoration:underline}.nav-game{background:var(--forest);color:#fff;padding:9px 16px;border-radius:999px}.menu-button{display:none;border:0;background:var(--forest);color:#fff;border-radius:10px;padding:8px 12px;font-weight:800}
.hero{min-height:620px;display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,5vw,80px);align-items:center;padding:70px clamp(24px,7vw,110px);background:radial-gradient(circle at 12% 20%,rgba(185,221,83,.35),transparent 28%),linear-gradient(135deg,#fffdf5 0%,#e8f6d7 100%);overflow:hidden}
.eyebrow{margin:0 0 8px;color:var(--green);font-weight:900;letter-spacing:.12em;text-transform:uppercase;font-size:.82rem}.hero h1{font-size:clamp(3rem,6vw,6rem);line-height:.96;margin:0 0 24px;letter-spacing:-.055em}.hero h1 span{color:var(--green)}.hero-copy>p:not(.eyebrow){font-size:1.18rem;max-width:580px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.button{display:inline-block;border:0;border-radius:14px;padding:12px 20px;font-weight:900;text-decoration:none;cursor:pointer}.button.primary{background:var(--forest);color:#fff;box-shadow:0 8px 0 #08271b}.button.primary:active{transform:translateY(4px);box-shadow:0 4px 0 #08271b}.button.secondary{background:#fff;border:2px solid var(--forest)}.button:focus-visible,button:focus-visible,a:focus-visible{outline:4px solid var(--yellow);outline-offset:3px}
.hero-art{position:relative}.hero-art img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:32px 32px 110px 32px;border:8px solid #fff;box-shadow:var(--shadow)}.photo-note{position:absolute;left:-25px;bottom:-30px;max-width:300px;background:var(--yellow);padding:14px 18px;border-radius:16px;font-weight:800;transform:rotate(-2deg);box-shadow:var(--shadow)}
.section{padding:90px clamp(24px,7vw,110px)}.section-heading{max-width:760px;margin-bottom:38px}.section-heading h2,.needs-section h2,.challenge-section h2{font-size:clamp(2rem,4vw,3.5rem);line-height:1.05;margin:0 0 14px;letter-spacing:-.035em}.section-heading>p:last-child{color:var(--muted);font-size:1.06rem}
.parts-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}.part-card{border:2px solid #dbe8d4;background:#fff;border-radius:20px;padding:22px 12px;min-height:170px;cursor:pointer;transition:.2s}.part-card:hover,.part-card.active{transform:translateY(-6px);border-color:var(--green);box-shadow:var(--shadow)}.part-card span{display:block;font-size:3rem}.part-card strong{display:block;font-size:1.1rem}.part-card small{color:var(--muted)}.discovery{margin-top:22px;background:var(--sky);border-left:7px solid var(--green);border-radius:12px;padding:18px 22px;font-weight:800;min-height:64px}
.needs-section{padding:80px clamp(24px,7vw,110px);background:var(--yellow);display:grid;grid-template-columns:.7fr 1.3fr;gap:60px;align-items:center}.needs-list{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.needs-list article{background:rgba(255,255,255,.82);padding:18px 12px;text-align:center;border-radius:50% 50% 18px 18px;min-height:170px}.needs-list span{font-size:2.4rem}.needs-list h3{margin:2px 0}.needs-list p{font-size:.9rem;margin:0;color:var(--muted)}
.cycle{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:18px;counter-reset:cycle}.cycle li{display:flex;gap:15px;align-items:center;background:#fff;border:2px solid #dce9d6;padding:22px;border-radius:22px;position:relative}.cycle li span{font-size:3rem}.cycle p{margin:2px 0 0;color:var(--muted)}
.facts-section{padding:80px clamp(24px,7vw,110px);background:var(--forest);color:#fff}.light .eyebrow{color:var(--lime)}.fact-deck{display:grid;grid-template-columns:auto minmax(0,700px) auto;justify-content:center;align-items:center;gap:18px}.fact-deck>button{width:50px;height:50px;border-radius:50%;border:2px solid rgba(255,255,255,.5);background:transparent;color:#fff;font-size:1.5rem;cursor:pointer}.fact-deck article{min-height:240px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:#fff;color:var(--ink);border-radius:28px;padding:30px;box-shadow:0 12px 0 var(--lime)}#fact-icon{font-size:4rem}#fact-text{font-size:1.25rem;font-weight:800;max-width:570px}#fact-count{color:var(--muted)}
.games-section{padding:90px clamp(24px,7vw,110px);background:#edf8f1}.game-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}.game-card{background:#fff;border-radius:28px;padding:28px;box-shadow:var(--shadow);border:2px solid #dce9d6}.game-title{display:flex;gap:15px;align-items:center;border-bottom:2px dashed #cfe0c8;padding-bottom:16px}.game-title>span{font-size:2.8rem}.game-title h3{margin:0;font-size:1.5rem}.game-title p{margin:0;color:var(--muted)}.game-progress{color:var(--green);font-weight:900}.game-card h4{font-size:1.2rem;min-height:58px}.quiz-options{display:grid;gap:10px;margin-bottom:14px}.quiz-options button,.grow-actions button{background:#f4f8ef;border:2px solid #d6e4cf;border-radius:14px;padding:12px;text-align:left;font-weight:800;cursor:pointer}.quiz-options button:hover,.quiz-options button.selected,.grow-actions button:hover{border-color:var(--green);background:#e4f4d9}.quiz-options button.correct{background:#d9f5df;border-color:#2b9255}.quiz-options button.wrong{background:#ffe2df;border-color:#c94d42}.feedback{min-height:30px;font-weight:900}.plant-pot{height:190px;margin:20px 0 10px;border-radius:22px;background:linear-gradient(#dff4ff 0 65%,#9f714a 65%);display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:4.7rem}.plant-pot strong{font-size:1rem;background:#fff;padding:2px 10px;border-radius:10px}.grow-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.grow-actions button{text-align:center}.text-button{border:0;background:transparent;text-decoration:underline;font-weight:800;cursor:pointer}
.challenge-section{display:grid;grid-template-columns:1fr .7fr;gap:40px;align-items:center;padding:80px clamp(24px,7vw,110px);background:var(--sky)}.challenge-box{background:#fff;padding:28px;border-radius:24px;box-shadow:var(--shadow)}.challenge-box>span{font-size:3rem}.challenge-box ul{margin-bottom:0}
footer{display:flex;justify-content:space-between;align-items:center;padding:35px clamp(24px,7vw,110px);background:#08271b;color:#fff}footer p{margin:2px 0;color:#c9ded3}footer a{font-weight:800}
@media(max-width:1050px){.parts-grid{grid-template-columns:repeat(3,1fr)}.needs-section{grid-template-columns:1fr}.needs-list{grid-template-columns:repeat(5,1fr)}}
@media(max-width:760px){.menu-button{display:block}nav{display:none;position:absolute;top:68px;left:0;right:0;background:#fff;padding:22px;flex-direction:column;box-shadow:var(--shadow)}nav.open{display:flex}.hero{grid-template-columns:1fr;padding-top:45px}.hero-art{margin:0 10px}.photo-note{position:relative;left:0;bottom:auto;margin:-10px 18px 0}.parts-grid{grid-template-columns:repeat(2,1fr)}.needs-list{grid-template-columns:repeat(2,1fr)}.needs-list article:last-child{grid-column:1/-1}.cycle{grid-template-columns:1fr}.game-grid,.challenge-section{grid-template-columns:1fr}.fact-deck{grid-template-columns:1fr 1fr}.fact-deck article{grid-column:1/-1;grid-row:1}.fact-deck>button{justify-self:center}.grow-actions{grid-template-columns:1fr}footer{align-items:flex-start;gap:25px;flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.part-card{transition:none}}
