/* V24: accessible, responsive family-friendly teaching spaces */
.v24-hub{--v24-green:#0b4233;--v24-gold:#e3c584;--v24-mint:#eaf0e4;--v24-text:#183b30;color:var(--v24-text)}
.v24-hub *, .v24-hub *::before,.v24-hub *::after{box-sizing:border-box}
.v24-hub h1,.v24-hub h2,.v24-hub h3{letter-spacing:-.025em;line-height:1.13}
.v24-hub p{line-height:1.75}
.v24-hub a:focus-visible,.v24-hub button:focus-visible,.v24-hub select:focus-visible{outline:3px solid #b58a32;outline-offset:3px}
.v24-kicker{font-size:.77rem;font-weight:800;text-transform:uppercase;letter-spacing:.16em;color:#866b2a;margin:0 0 12px}
.v24-hero{background:linear-gradient(115deg,#0b3329,#125341);color:white;padding:clamp(42px,6vw,90px) 0}
.v24-hero-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(250px,.8fr);gap:clamp(28px,5vw,80px);align-items:center}
.v24-hero h1{font-size:clamp(2.65rem,5.9vw,5rem);max-width:850px;margin:12px 0 18px;color:white}
.v24-hero h1 em{font-weight:500;color:#f3dea6}
.v24-hero p:not(.v24-kicker){max-width:680px;color:#e6efe9;font-size:clamp(1rem,1.65vw,1.18rem)}
.v24-hero .v24-kicker{color:#e9ce92}
.v24-action-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:22px}
.v24-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:13px 19px;border-radius:10px;min-height:48px;font-weight:750;font-size:.94rem;border:1px solid transparent;cursor:pointer;text-decoration:none;line-height:1.3}
.v24-btn.v24-primary{background:#e3c584;color:#173c31}.v24-btn.v24-light{background:#f5f5ea;color:#183f32}.v24-btn.v24-outline{background:transparent;border-color:#a9bfae;color:#214a38}
.v24-hero-art{min-height:310px;border:2px solid #c8b57950;border-radius:32px;position:relative;display:grid;place-items:center;background:radial-gradient(circle at 50% 45%,#357b5c70,#0d4435 68%);overflow:hidden}
.v24-orbit{position:absolute;font-size:350px;line-height:1;color:#dec78c38;transform:rotate(15deg)}
.v24-book{position:relative;font-size:clamp(95px,12vw,170px);filter:drop-shadow(0 18px 15px #001b14a8)}
.v24-stars{position:absolute;top:14px;right:27px;color:#f4d998;font-size:25px;letter-spacing:8px}
.v24-hero-art-caption{position:absolute;bottom:22px;font-size:.76rem;font-weight:750;letter-spacing:.22em;color:#e6d59e}
.v24-section{padding-block:clamp(36px,5vw,70px)}
.v24-section-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:26px}.v24-section-heading h2{font-size:clamp(1.9rem,3.2vw,2.9rem);margin:0}.v24-section-heading p:not(.v24-kicker){margin:12px 0 0;max-width:740px}
.v24-levels{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}
.v24-level{border:2px solid #d4dfd0;background:#fffdf7;color:#173d30;border-radius:16px;padding:20px 14px;display:flex;flex-direction:column;text-align:left;gap:7px;min-width:0;cursor:pointer;transition:transform .15s,border-color .15s}
.v24-level:hover{transform:translateY(-2px)}.v24-level[aria-pressed="true"]{border-color:#126748;background:#ecf3e5;box-shadow:0 0 0 2px #12674820}.v24-level span{font-size:2rem}.v24-level strong{font-size:1.1rem}.v24-level small{font-size:.86rem;color:#526a5a}.v24-age-feedback{background:#ecf2e7;border-left:4px solid #357b58;padding:15px 19px;border-radius:4px 10px 10px 4px;margin:18px 0 0}
.v24-tint{background:#edf1e8}.v24-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.v24-card{border:1px solid #d4e0d0;background:#fffdf8;padding:clamp(20px,3vw,28px);border-radius:17px;min-width:0;display:flex;flex-direction:column;align-items:flex-start}.v24-card-icon{font-size:2.1rem}.v24-card h3{font-size:1.6rem;margin:4px 0 0}.v24-card p:not(.v24-kicker){margin:12px 0 20px}.v24-card a,.v24-week a{margin-top:auto;font-weight:750;color:#0c503c;text-underline-offset:4px}
.v24-privacy{display:flex;gap:18px;background:#edf3e8;border:1px solid #d6e4d6;border-radius:14px;padding:18px 20px;align-items:start}.v24-privacy>span{font-size:2rem}.v24-privacy p{margin:0}
.v24-compact-hero{background:linear-gradient(125deg,#0b372a,#15553e);color:white;padding:clamp(36px,5vw,65px) 0}.v24-compact-hero h1{color:white;font-size:clamp(2.2rem,5vw,4rem);margin:8px 0 13px}.v24-compact-hero p:not(.v24-kicker){color:#e5ede8;max-width:770px}.v24-compact-hero .v24-kicker{color:#efd694}.v24-back{color:#f1d692;display:inline-block;margin-top:10px;font-weight:700}
.v24-player-top{display:flex;align-items:end;gap:16px;flex-wrap:wrap;background:#ebf1e7;border:1px solid #d4e2d0;padding:18px;border-radius:16px;margin-bottom:20px}.v24-player-top>div:not(.v24-star-counter){display:flex;flex-direction:column;gap:7px}.v24-player-top label{font-size:.85rem;font-weight:750}.v24-player-top select{padding:12px 16px;border:1px solid #acbfae;border-radius:9px;min-height:46px;background:white;color:#214335}.v24-star-counter{margin-left:auto;font-size:.91rem}.v24-star-counter span{font-size:1.6rem}.v24-star-counter strong{font-size:1.45rem}
.v24-game-tabs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px}.v24-game-tabs button{border-radius:40px;padding:13px 17px;border:1px solid #a9c2b0;color:#174533;background:#fffdf7;cursor:pointer;min-height:48px;font-size:.95rem;font-weight:750}.v24-game-tabs button[aria-pressed="true"]{background:#0c523b;color:white;border-color:#0c523b}
.v24-play-panel{background:#fffefb;border:1px solid #cfdccc;border-radius:20px;padding:clamp(20px,4vw,40px);max-width:930px}.v24-play-top{display:flex;justify-content:space-between;gap:12px;align-items:center;font-size:.89rem;font-weight:750}.v24-play-top .v24-kicker{margin:0}.v24-play-progress{height:10px;overflow:hidden;border-radius:20px;background:#e5ebe3;margin:16px 0 26px}.v24-play-progress span{height:100%;display:block;width:0;background:#9e812f;border-radius:20px;transition:width .2s}.v24-play-panel h2{font-size:clamp(1.55rem,3vw,2.6rem);margin:0 0 14px}.v24-question-help{margin:0 0 18px;color:#526e5c}.v24-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.v24-option{text-align:left;border:2px solid #d4dfd1;border-radius:12px;background:#f6f8f1;padding:17px;font:inherit;font-weight:650;color:#1a4335;min-height:73px;cursor:pointer}.v24-option:hover:not(:disabled){border-color:#458662;background:#edf3e8}.v24-option:disabled{cursor:default}.v24-option.v24-good{background:#d8efde;border-color:#2b8e53}.v24-option.v24-try{background:#fff1e0;border-color:#c89c53}.v24-feedback{margin-top:20px;background:#edf4e5;border-radius:10px;border-left:5px solid #347650;padding:16px 18px;font-weight:600}.v24-activity-note{margin-top:28px}
.v24-week{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.v24-week article{border:1px solid #d0dfcd;background:#fffefa;border-radius:14px;padding:20px;min-width:0;display:flex;flex-direction:column}.v24-week article span{font-weight:850;font-size:.75rem;letter-spacing:.12em;color:#876e32}.v24-week h3{font-size:1.48rem;margin:12px 0}.v24-prompt-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0 30px}.v24-prompt-grid blockquote{border-left:4px solid #a58c4b;margin:0;padding:20px;background:#f1f4e9;border-radius:3px 12px 12px 3px;font-size:1.06rem}
.v24-education-feature{border-color:#76aa87!important;background:#f3f8ed!important}
@media(max-width:900px){.v24-hero-layout{grid-template-columns:1fr}.v24-hero-art{min-height:210px;max-width:550px;width:100%}.v24-book{font-size:120px}.v24-levels{grid-template-columns:repeat(2,minmax(0,1fr))}.v24-section-heading{align-items:start;flex-direction:column}}
@media(max-width:600px){.v24-hero h1{font-size:clamp(2.2rem,12vw,3.3rem)}.v24-levels{gap:9px}.v24-level{padding:16px 10px}.v24-cards,.v24-week,.v24-options,.v24-prompt-grid{grid-template-columns:1fr}.v24-card{padding:20px}.v24-action-row a,.v24-action-row button{width:100%}.v24-player-top{align-items:stretch}.v24-player-top>div:not(.v24-star-counter){width:100%}.v24-player-top select{width:100%}.v24-star-counter{margin-left:0}.v24-game-tabs{display:grid;grid-template-columns:1fr}.v24-game-tabs button{text-align:center}.v24-play-panel{padding:18px 14px}.v24-option{min-height:64px}.v24-hero-art{min-height:170px}}
@media print{.topbar,.header,.v20-banner,.footer,.v24-compact-hero,.v24-section-heading button,.v24-card a{display:none!important}.v24-section{padding:12px 0!important}.v24-week{display:block}.v24-week article{break-inside:avoid;margin:0 0 10px;padding:12px}.v24-week article a{display:none}.v24-tint{background:white!important}.v24-privacy{display:none}}
@media(prefers-reduced-motion:reduce){.v24-level,.v24-play-progress span{transition:none}}
