:root{--blue:#35799e;--purple:#8185e5;--ink:#263746}*{box-sizing:border-box}html,body{margin:0;font-family:Arial,"Noto Sans TC",sans-serif;color:#222;background:#fff}a{color:#16627e}
.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:18px;min-height:52px;padding:7px 22px;background:#fff;box-shadow:0 1px 5px #0002}.topbar-overlay{position:absolute;left:0;right:0;background:linear-gradient(90deg,rgba(61,29,23,.82),rgba(63,28,23,.38),rgba(61,29,23,.72));box-shadow:none;color:#fff}.brand{display:flex;align-items:center;gap:8px;color:var(--ink);text-decoration:none;white-space:nowrap}.brand-mark{display:grid;place-items:center;width:30px;height:30px;background:#a70794;color:#fff;border-radius:2px}.topbar-overlay .brand,.topbar-overlay .nav a,.topbar-overlay .link-button{color:#fff}.nav{margin-left:auto;display:flex;align-items:center;gap:12px;font-size:.7rem}.nav a{color:var(--ink);text-decoration:none;white-space:nowrap}.nav a:hover{text-decoration:underline}.nav form{margin:0}.link-button{border:0;background:none;color:#16627e;cursor:pointer;font:inherit}.nav-toggle{display:none;margin-left:auto;border:0;background:none;color:inherit;font-size:1.5rem}
.hero{height:315px;overflow:hidden;background:#34799e}.hero img{width:100%;height:100%;object-fit:cover}.home-section{max-width:850px;margin:28px auto 38px;padding:0 22px}.tile-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.tile-grid.three{max-width:720px;grid-template-columns:repeat(3,1fr)}.tile{text-align:center;text-decoration:none;color:#b822a0}.tile img{display:block;width:100%;aspect-ratio:1;object-fit:cover;margin-bottom:9px}.tile span{display:block;font-family:"Arial Narrow",Arial,sans-serif;font-weight:700;text-decoration:underline}.tile small{display:block;color:#555;margin-top:15px;font-size:.68rem}.section-title{text-align:center;font-family:"Arial Narrow",Arial,sans-serif;font-weight:700;font-size:1.65rem;margin:0;padding:16px}.section-title.reading{color:#fff;background:#8185e5 url('../images/restored/reading-strip.jpg') center/cover no-repeat}.section-title.newsletter{color:#b833d0;background:#f3dcdc url('../images/restored/newsletter-strip.jpg') center/cover no-repeat}
.newsletter-carousel{position:relative;max-width:850px;height:600px;margin:16px auto 34px;padding:0 48px;display:grid;place-items:center}.newsletter-carousel>a{height:100%;width:100%;display:grid;place-items:center}.carousel-slide{display:none;max-width:100%;max-height:560px;object-fit:contain}.carousel-slide.active{display:block}.carousel-arrow{position:absolute;top:45%;z-index:2;border:0;background:#34799ecc;color:#fff;width:38px;height:58px;font-size:2.2rem;cursor:pointer}.carousel-arrow.prev{left:0}.carousel-arrow.next{right:0}.carousel-dots{position:absolute;bottom:0;display:flex;gap:9px}.carousel-dots button{border:0;width:9px;height:9px;border-radius:50%;background:#b9c5ca;padding:0}.carousel-dots button.active{background:#34799e}
.platform{background:#35799e;color:#fff;padding:32px max(8vw,24px) 42px}.platform h2{text-align:center;margin-top:0}.platform-content{max-width:850px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:60px}.platform-links{display:grid;grid-template-columns:1fr;gap:9px}.platform a{color:#fff}.manual{text-align:center}.manual a{color:#ffff00;font-weight:700}.manual img{display:block;width:min(300px,100%);max-height:340px;object-fit:contain;margin:10px auto 0}
.page-banner{height:290px;overflow:hidden}.page-banner img{width:100%;height:100%;object-fit:cover}.content-page{max-width:980px;margin:34px auto 80px;padding:0 30px;line-height:1.65}.content-heading{text-align:center;margin:36px 0}.content-heading h1{margin:0;color:#327da2;font-family:"Arial Narrow",Arial,sans-serif;font-size:2.35rem}.content-heading p{margin:4px 0;color:#555}.hub-layout{display:grid;grid-template-columns:1fr 1.35fr;gap:34px;background:#f4f4f4;padding:30px}.hub-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:18px}.feature-card,.book-card{text-decoration:none;text-align:center;color:#17718d}.feature-card img,.book-card img{width:100%;height:190px;object-fit:contain;background:#fff}.feature-card strong,.feature-card span,.book-card strong,.book-card span{display:block}.feature-card strong,.book-card strong{text-decoration:underline;margin-top:9px}.feature-card span,.book-card span{font-size:.78rem;color:#666;margin-top:4px}.hub-copy h2{margin-top:0}.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;max-width:820px;margin:30px auto}.catalog-grid .book-card img{height:310px}.notice{text-align:center;background:#f2f2f2;padding:16px}.book-intro{display:grid;grid-template-columns:300px 1fr;gap:34px;align-items:start;max-width:840px;margin:auto}.book-intro>img{width:100%;max-height:430px;object-fit:contain}.resource-button{display:block;background:#34799e;color:#fff!important;text-align:center;text-decoration:none;padding:9px 18px;margin-top:16px}.lesson-section{margin:34px -30px 0;padding:0 30px}.lesson-section>h2{text-align:center;background:#f0f0f0;padding:16px;font-size:1.15rem;font-weight:500}.video-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.video-grid h3{text-align:center}.video{position:relative;padding-top:56.25%;background:#111}.video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.external iframe{width:100%;height:560px;border:1px solid #ccd4d8}.skill-placeholder{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;text-align:center;font-size:4rem;padding:25px}.lesson-copy{max-width:760px;margin:0 auto 25px}.songs .catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.newsletter-detail{text-align:center}.newsletter-detail img{display:block;max-width:620px;width:100%;margin:0 auto 20px}
.login-page{min-height:100vh;background:linear-gradient(135deg,#207b9c,#7589e6);display:grid;place-items:center;padding:24px}.login-card{width:min(460px,100%);background:#fff;box-shadow:0 22px 70px #1238;border-radius:8px;overflow:hidden}.login-card>img{width:100%;height:140px;object-fit:cover}.login-body{padding:28px 34px}.login-body form,.form-page form{display:grid;gap:8px}.login-body label,.form-page label{font-weight:700;margin-top:9px}.login-body input,.form-page input,.form-page textarea,.search input{width:100%;padding:11px;border:1px solid #b9c2ca;border-radius:5px}.check{display:flex!important;align-items:center;gap:8px}.check input{width:auto!important}.primary,.button,.search button{border:0;border-radius:5px;background:var(--blue);color:#fff;padding:11px 18px;text-decoration:none;cursor:pointer}.button.secondary{background:#62717c}.alert,.validation{background:#fde5e5;color:#8a1d1d;padding:12px}.success{background:#e1f4e8;color:#176a38;padding:12px}.form-page,.admin-page{max-width:1180px;margin:35px auto;padding:0 24px}.panel{border:1px solid #dbe1e5;border-radius:8px;padding:26px;box-shadow:0 6px 24px #19304712}.panel.narrow{max-width:560px;margin:auto}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.admin-heading{display:flex;justify-content:space-between;gap:20px}.search{display:flex;gap:8px;max-width:500px;margin:22px 0}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;min-width:760px}th,td{text-align:left;padding:11px;border-bottom:1px solid #e3e8eb}.status{padding:4px 8px;border-radius:99px}.status.active{background:#dff3e6;color:#146534}.status.inactive{background:#eee}
@media(max-width:1200px){.nav{gap:7px;font-size:.62rem}.topbar{padding-inline:12px}}@media(max-width:900px){.nav-toggle{display:block}.nav{display:none;position:absolute;top:52px;left:0;right:0;background:#fff;padding:18px;box-shadow:0 12px 20px #0002;flex-direction:column;align-items:start;font-size:.9rem}.topbar-overlay .nav{background:#49231ff5}.nav.open{display:flex}.tile-grid{grid-template-columns:repeat(2,1fr)}.hero{height:265px}.page-banner{height:230px}.hub-layout,.platform-content{grid-template-columns:1fr}.catalog-grid{grid-template-columns:repeat(2,1fr)}.book-intro{grid-template-columns:230px 1fr}.newsletter-carousel{height:500px}}@media(max-width:600px){.hero{height:205px}.page-banner{height:175px}.tile-grid,.tile-grid.three,.platform-content,.hub-layout,.catalog-grid,.book-intro,.video-grid,.form-grid{grid-template-columns:1fr}.home-section{padding:0 30px}.newsletter-carousel{height:390px;padding:0 36px}.content-page{padding:0 20px}.hub-layout{padding:20px}.catalog-grid .book-card img{height:260px}.book-intro>img{max-width:280px;margin:auto}.lesson-section{margin-left:-20px;margin-right:-20px;padding:0 20px}.external iframe{height:420px}.skill-placeholder{grid-template-columns:repeat(2,1fr)}.admin-heading{display:block}}

/* Screenshot-faithful responsive image treatment. */
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.hero,.page-banner{height:auto}
.hero img{display:block;width:100%;height:auto;aspect-ratio:1920/338;object-fit:cover}
.page-banner img{display:block;width:100%;height:auto;aspect-ratio:1920/300;object-fit:cover}
.newsletter-carousel{max-width:980px;height:auto;min-height:620px}
.newsletter-stage{width:100%;display:grid;grid-template-columns:minmax(0,1.6fr) minmax(220px,.75fr);gap:24px;align-items:start}
.newsletter-sheet{display:grid;place-items:center;min-height:580px}
.carousel-slide{width:auto;max-width:100%;height:auto;max-height:580px;object-fit:contain}
.newsletter-side{text-align:center}
.newsletter-side img{display:block;width:100%;max-height:430px;object-fit:contain;margin-top:14px}
.newsletter-button{display:block;background:#34799e;color:#fff;text-decoration:none;padding:9px 12px;font-size:.85rem}
@media(max-width:700px){.newsletter-stage{grid-template-columns:1fr}.newsletter-side{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:start}.newsletter-sheet{min-height:0}.newsletter-carousel{min-height:0}.newsletter-side img{margin-top:0}}

.brand-logo{width:30px;height:30px;object-fit:contain}.nav-toggle{font-size:.85rem;border:1px solid currentColor;border-radius:4px;padding:6px 9px}
.hub-media{display:grid;gap:18px;align-content:start}.hub-media .feature-card{display:block}.hub-copy p{font-size:1rem;margin:.7em 0}.hub-copy p:first-of-type{font-size:1.2rem;font-weight:700;color:#317a9e}
.lesson-copy{font-size:1.05rem}.video-grid>div{min-width:0}.video-grid p{text-align:left;color:#444}.questions{max-width:800px;margin:24px auto;padding-left:26px}.questions li{margin:13px 0}
.vocabulary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;max-width:760px;margin:25px auto}.vocabulary-grid div{display:grid;place-items:center;min-height:120px;background:#f5f5f5;color:#34799e}.vocabulary-grid span{font-size:2rem}.vocabulary-grid strong{font-size:1.05rem}
.newsletter-pages{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start}.newsletter-pages img{width:100%;height:auto;object-fit:contain}
.embed-fallback{max-width:560px;margin:15px auto;text-align:center}.catalog-grid .book-card img{height:320px;object-fit:contain}.route-april-2025-reading-g2-4 .catalog-grid .book-card img,.route-april-2025-reading-g5-7 .catalog-grid .book-card img{height:360px}
@media(max-width:900px){.topbar{min-height:56px}.nav-toggle{display:block}.nav{font-size:1rem}.hub-copy p{font-size:.98rem}.newsletter-pages{gap:16px}}
@media(max-width:600px){.vocabulary-grid{grid-template-columns:repeat(2,1fr)}.newsletter-pages{grid-template-columns:1fr}.newsletter-side{display:block}.newsletter-side img{margin-top:12px}.catalog-grid .book-card img,.route-april-2025-reading-g2-4 .catalog-grid .book-card img,.route-april-2025-reading-g5-7 .catalog-grid .book-card img{height:auto;max-height:420px}}

/* ===== Home page adjustments ===== */
.nav{font-size:.9rem}
.home-primary .tile span{font-size:x-large;font-weight:700}
.home-primary .phonics-tile span{color:#FF359A}
.home-primary .grammar-tile span{color:#2828FF}
.home-primary .songs-tile span{color:#FF8000}
.home-primary .student-news-tile span{color:#408080}
.section-title.reading,.section-title.newsletter{height:136px;padding:0;background-size:cover}
.platform a{font-weight:700}

.newsletter-carousel{padding:0;min-height:620px}
.newsletter-viewer{position:relative;min-width:0;min-height:610px;padding:0 48px 30px;display:grid;place-items:center}
.newsletter-sheet{width:100%;min-height:580px}
.newsletter-sheet .carousel-slide{display:none;width:100%;height:580px;padding:0;border:0;background:transparent;cursor:zoom-in}
.newsletter-sheet .carousel-slide.active{display:grid;place-items:center}
.newsletter-sheet .carousel-slide img{display:block;width:auto;max-width:100%;height:auto;max-height:580px;object-fit:contain}
.newsletter-viewer .carousel-arrow{top:calc(50% - 29px)}
.newsletter-viewer .carousel-arrow.prev{left:0}
.newsletter-viewer .carousel-arrow.next{right:0}
.newsletter-viewer .carousel-dots{left:50%;bottom:4px;transform:translateX(-50%)}

.image-lightbox[hidden]{display:none}
.image-lightbox{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:64px 24px 24px;background:rgba(0,0,0,.88)}
.image-lightbox img{display:block;max-width:96vw;max-height:88vh;width:auto;height:auto;object-fit:contain;background:#fff;box-shadow:0 12px 45px rgba(0,0,0,.45)}
.lightbox-close{position:fixed;top:16px;right:22px;width:44px;height:44px;border:1px solid #fff;border-radius:50%;background:#222;color:#fff;font-size:2rem;line-height:1;cursor:pointer}
body.lightbox-open{overflow:hidden}

@media(max-width:1200px){.nav{font-size:.9rem}}
@media(max-width:900px){.nav{font-size:.9rem}}
@media(max-width:700px){
    .section-title.reading,.section-title.newsletter{height:100px}
    .newsletter-viewer{min-height:0;padding:0 38px 30px}
    .newsletter-sheet{min-height:0}
    .newsletter-sheet .carousel-slide{height:auto;min-height:390px}
    .newsletter-sheet .carousel-slide img{max-height:520px}
}

/* ===== Home reading and platform adjustments ===== */
.reading-home .tile span{font-size:x-large;color:red;font-weight:700}
.reading-home .tile small{font-size:large}
.platform a{font-size:x-large}

/* ===== Phonics hub page ===== */
.phonics-hub-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:38px;align-items:start}
.phonics-video-panel h2{margin:0 0 18px;text-align:center;font-size:large;color:#222}
.phonics-video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.phonics-sound-line{margin:18px 0 0;text-align:center;font-size:large;font-weight:700;line-height:1.6}
.sound-oa{color:red}
.sound-ir{color:blue}
.sound-sh{color:purple}
.phonics-goals h2{margin:0 0 20px;font-size:xx-large;line-height:1.25}
.phonics-goals h2 a{color:blue;text-decoration:underline}
.phonics-goals p{margin:0 0 18px;color:#000;font-size:large;line-height:1.6}
.phonics-goals .phonics-goal-heading{font-weight:700}
@media(max-width:900px){
    .phonics-hub-layout{grid-template-columns:1fr}
}
@media(max-width:600px){
    .phonics-video-grid{grid-template-columns:1fr}
    .phonics-video-panel h2{font-size:large}
    .phonics-sound-line,.phonics-goals p{font-size:large}
}

/* ===== September 2026 Phonics lesson ===== */
.april-phonics-heading h1{color:#408080;font-size:xx-large;line-height:1.25;text-align:center}
.april-phonics-heading h1 span,.april-phonics-heading h1 strong{display:block}
.april-phonics-heading h1 span{font-weight:400}
.april-phonics-heading h1 strong{font-weight:700}
.april-phonics-section>h2,.april-phonics-games>h2{text-align:left;font-size:x-large}
.april-phonics-az-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.april-phonics-video-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 22px}
.april-phonics-video{text-align:center}
.april-phonics-video strong,.april-phonics-video span{display:block}
.april-phonics-video strong{margin-top:10px;font-size:x-large;font-weight:700;line-height:1.3}
.april-phonics-video span{margin-top:4px;color:#000;font-size:large;line-height:1.35}
.april-sound-red{color:red}
.april-sound-blue{color:blue}
.april-sound-purple{color:purple}
@media(max-width:800px){
    .april-phonics-video-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:600px){
    .april-phonics-az-grid,.april-phonics-video-grid{grid-template-columns:1fr}
}

/* ===== Grammar hub page ===== */
.grammar-hub-layout{grid-template-columns:minmax(300px,.9fr) minmax(0,1.35fr);gap:38px;align-items:start}
.grammar-image-panel img{display:block;width:100%;height:auto;object-fit:contain}
.grammar-goals h2{margin:0 0 20px;font-size:xx-large;line-height:1.25}
.grammar-goals h2 a{color:blue;text-decoration:underline}
.grammar-goals p{margin:0 0 18px;color:#000;font-size:large;line-height:1.6}
.grammar-goals .grammar-goal-heading{font-size:x-large;font-weight:700}
@media(max-width:900px){
    .grammar-hub-layout{grid-template-columns:1fr}
    .grammar-image-panel{max-width:520px;margin:0 auto}
}

/* ===== September 2026 Grammar: Nouns lesson ===== */
.april-nouns-heading h1{font-size:xx-large;line-height:1.25;text-align:center;font-weight:700}
.april-nouns-heading h1 span,.april-nouns-heading h1 strong{display:block}
.april-nouns-heading h1 em{color:blue;font-style:normal}
.april-nouns-section>h2,.april-nouns-advanced>h2{margin-bottom:24px;padding:22px 26px;text-align:left;font-size:x-large;line-height:1.45}
.nouns-definition-section>h2{background-color:#dff4ff;background-image:radial-gradient(circle at 8% 28%,#fff9 0 24px,transparent 25px),radial-gradient(circle at 92% 70%,#8fd8f766 0 36px,transparent 37px),linear-gradient(120deg,#eaf9ff,#ccecff)}
.nouns-definition-section>h2 strong{font-weight:700}
.nouns-picture-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.noun-picture-card{text-align:center}
.noun-picture-card img{display:block;width:100%;aspect-ratio:1;object-fit:contain;background:#fff}
.noun-picture-card p{margin:8px 0 0;line-height:1.25}
.noun-picture-card .noun-word{color:#000;font-size:x-large}
.noun-picture-card .noun-word span{color:red}
.noun-picture-card .noun-category{color:blue;font-size:large}
.nouns-practice-section>h2,.april-nouns-advanced>h2{background-color:#ffe8a8;background-image:radial-gradient(circle at 6% 50%,#ff8ec455 0 24px,transparent 25px),radial-gradient(circle at 94% 30%,#7bdff255 0 34px,transparent 35px),linear-gradient(110deg,#fff0ae,#ffd9ec 52%,#cdeeff)}
.nouns-learning-list{display:grid;gap:30px}
.nouns-learning-row{display:grid;grid-template-columns:minmax(300px,.9fr) minmax(0,1.1fr);gap:30px;align-items:center}
.nouns-learning-copy h3{margin:0 0 12px;color:#000;font-size:x-large;font-weight:700}
.nouns-learning-copy p{margin:0 0 12px;color:#000;font-size:large;line-height:1.55}
.nouns-game-thumbnail{text-align:center}
.nouns-game-thumbnail a,.nouns-game-thumbnail img{display:block;width:100%}
.nouns-game-thumbnail img{height:auto;object-fit:contain}
.nouns-game-thumbnail p{margin:7px 0 0;color:red;font-size:small;font-weight:700}
.nouns-advanced-image-link{display:block;width:min(100%,831px);margin:0 auto}
.nouns-advanced-image-link img{display:block;width:100%;height:auto;object-fit:contain}
.home-hero{position:relative;height:auto;background:#34799e;overflow:hidden}
.home-hero img{display:block;width:100%;height:auto;aspect-ratio:1920/650;object-fit:cover;object-position:center top}
.home-hero h1{position:absolute;left:50%;top:72%;margin:0;transform:translate(-50%,-50%);color:#fff;font-family:"Arial Narrow",Impact,sans-serif;font-size:clamp(5.4rem,5.3vw,5.4rem);font-weight:800;line-height:1;white-space:nowrap;text-shadow:0 3px 9px #16445ccc;z-index:1}
@media(max-width:600px){.home-hero h1{top:74%;font-size:clamp(5.65rem,5.65vw,5.65rem)}}
.search select{width:100%;max-width:170px;padding:11px;border:1px solid #b9c2ca;border-radius:5px;background:#fff}.search{max-width:760px}.row-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.row-actions form{margin:0}

/* ===== Navigation dropdowns and signed-in user menu ===== */
.nav-dropdown,.user-menu{position:relative;color:var(--ink)}
.nav-dropdown>summary,.user-menu>summary{display:flex;align-items:center;gap:4px;list-style:none;cursor:pointer;white-space:nowrap;user-select:none}
.nav-dropdown>summary::-webkit-details-marker,.user-menu>summary::-webkit-details-marker{display:none}
.nav-dropdown>summary::after,.user-menu>summary::after{content:"▾";font-size:.7em;transition:transform .15s ease}
.nav-dropdown[open]>summary::after,.user-menu[open]>summary::after{transform:rotate(180deg)}
.nav-submenu,.user-submenu{position:absolute;top:calc(100% + 10px);left:0;z-index:40;display:grid;min-width:210px;padding:8px;background:#fff;border:1px solid #dbe1e5;border-radius:7px;box-shadow:0 10px 28px #17384b33}
.user-submenu{left:auto;right:0;min-width:150px}
.nav-submenu a,.user-submenu .link-button{display:block;width:100%;padding:9px 11px;color:var(--ink)!important;font-size:.78rem;text-align:left;text-decoration:none;white-space:nowrap;border-radius:4px}
.nav-submenu a:hover,.nav-submenu a:focus,.user-submenu .link-button:hover,.user-submenu .link-button:focus{background:#eaf4f8;text-decoration:none}
.topbar-overlay .nav-dropdown>summary,.topbar-overlay .user-menu>summary{color:#fff}
.user-menu>summary{max-width:190px;overflow:hidden;text-overflow:ellipsis}
@media(max-width:900px){
    .nav-dropdown,.user-menu{width:100%}
    .nav-dropdown>summary,.user-menu>summary{width:100%;justify-content:space-between;padding:7px 0}
    .user-menu>summary{max-width:none}
    .nav-submenu,.user-submenu{position:static;width:100%;min-width:0;margin:4px 0 8px;padding:5px 10px;box-shadow:none}
    .nav-submenu a,.user-submenu .link-button{font-size:.9rem}
}
@media(max-width:800px){
    .nouns-picture-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .nouns-learning-row{grid-template-columns:1fr}
}
@media(max-width:520px){
    .nouns-picture-grid{grid-template-columns:1fr}
}

/* ===== Songs page ===== */
.songs-special-section>h2{margin-bottom:26px;padding:24px;text-align:center;font-size:xx-large;line-height:1.35;background-color:#ffe38f;background-image:radial-gradient(circle at 7% 35%,#ff76aa66 0 28px,transparent 29px),radial-gradient(circle at 92% 65%,#58d6e866 0 38px,transparent 39px),linear-gradient(115deg,#fff1a8,#ffd3eb 50%,#c7efff)}
.songs-special-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.song-video-card{text-align:center}
.song-video-card h3{margin:14px 0 0;padding:14px 18px;color:#222;font-size:x-large;line-height:1.35;background-color:#dff6ff;background-image:linear-gradient(110deg,#dff6ff,#fff0bd 55%,#ffdcec)}
.song-lyrics-link{display:inline-block;margin-top:8px;padding:5px 12px;border-radius:5px;background:#34799e;color:#fff;font-size:.9rem;font-weight:700;line-height:1.25;text-decoration:none}
.song-lyrics-link:hover,.song-lyrics-link:focus{background:#28627f;text-decoration:underline}
@media(max-width:650px){
    .songs-special-grid{grid-template-columns:1fr}
}

/* ===== Student News hub page ===== */
.student-news-hub-layout{position:relative;isolation:isolate;overflow:hidden;grid-template-columns:minmax(0,1fr) minmax(300px,.9fr);gap:38px;align-items:center;min-height:390px;background-color:#071a3b;background-image:radial-gradient(circle at 8% 16%,#fff 0 2px,transparent 3px),radial-gradient(circle at 22% 36%,#a9d8ff 0 2px,transparent 3px),radial-gradient(circle at 43% 12%,#fff 0 1px,transparent 2px),radial-gradient(circle at 68% 24%,#fff8b8 0 2px,transparent 3px),radial-gradient(circle at 88% 12%,#fff 0 2px,transparent 3px),radial-gradient(circle at 76% 76%,#8ecaff 0 1px,transparent 2px),linear-gradient(145deg,#06132f 0%,#102e64 55%,#351b68 100%);color:#fff}
.student-news-hub-layout::after{content:"";position:absolute;z-index:-1;left:-85px;bottom:-150px;width:330px;height:330px;border:8px solid #9ee8ff99;border-radius:50%;background:radial-gradient(circle at 64% 30%,#b9f06e 0 9%,transparent 10%),radial-gradient(circle at 34% 57%,#75cf63 0 14%,transparent 15%),radial-gradient(circle at 70% 72%,#58bd65 0 11%,transparent 12%),radial-gradient(circle at 50% 50%,#3ca9df 0 66%,#197bb8 67% 73%,#0b3f78 74%)}
.student-news-copy,.student-news-image-panel{position:relative;z-index:1}
.student-news-copy p{margin:0 0 12px;color:#fff;font-size:x-large;font-weight:700;line-height:1.4}
.student-news-copy h2{margin:0;font-size:xx-large;line-height:1.3}
.student-news-copy h2 a{color:#70e6ff;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px}
.student-news-image-panel img{display:block;width:100%;height:auto;max-height:330px;object-fit:contain;border:4px solid #ffffffcc;border-radius:12px;box-shadow:0 14px 34px #0008}
@media(max-width:800px){
    .student-news-hub-layout{grid-template-columns:1fr}
    .student-news-image-panel{max-width:520px;margin:0 auto}
}

/* ===== September 2026 Student News lesson ===== */
.april-student-news-heading h1{margin-bottom:8px;font-size:xxx-large;font-weight:700}
.april-student-news-heading p{font-size:x-large}
.april-student-news-grid{display:grid;grid-template-columns:minmax(320px,.95fr) minmax(0,1.2fr);gap:34px;align-items:start}
.april-student-news-copy h2{margin:0 0 16px;color:#000;font-size:x-large;line-height:1.4}
.april-student-news-copy h2 strong{font-weight:700}
.april-student-news-copy p{margin:0 0 15px;color:#000;font-size:large;line-height:1.65}
.april-student-news-copy ul{margin:4px 0 0;padding-left:28px;list-style-type:square}
.april-student-news-copy li{margin:8px 0;color:#000;font-size:large;font-weight:700;line-height:1.5}
.april-student-news-article>h2{text-align:left;font-size:x-large}
.student-work-callout{margin:36px -30px 0;padding:30px;background:#006699}
.student-work-callout>p:first-child{margin:0;color:#fff;font-size:large;line-height:1.7}
.student-work-callout .student-work-prompt{margin:22px 0 12px;color:#00FFFF;font-size:large;text-align:center}
.student-work-button{display:block;width:100%;padding:13px 18px;background:#fff;color:#006699;font-size:large;font-weight:700;text-align:center;line-height:1.4;cursor:not-allowed}
.section-title.reading{background-image:url('../images/home-reading-strip-v2.png');display:grid;place-items:center;font-size:xxx-large;text-shadow:0 2px 4px rgba(0,0,0,.18)}
.section-title.newsletter{background-image:url('../images/home-newsletter-strip-v2.png');display:grid;place-items:center;font-size:xxx-large;color:#7f347f;text-shadow:0 2px 4px rgba(255,255,255,.75)}
.student-work-button{cursor:pointer;text-decoration:none}
.mfa-qr{display:block;width:min(260px,100%);margin:18px auto}.recovery-codes{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:18px 0}.recovery-codes code{padding:8px;background:#eef2f4;text-align:center}
@media(max-width:800px){
    .april-student-news-grid{grid-template-columns:1fr}
}
@media(max-width:600px){
    .student-work-callout{margin-left:-20px;margin-right:-20px;padding:24px 20px}
}

/* ===== Reading K-Grade 1 hub page ===== */
.reading-k1-hub-layout{grid-template-columns:minmax(300px,.9fr) minmax(0,1.35fr);gap:38px;align-items:start}
.reading-k1-image-panel img{display:block;width:100%;height:auto;object-fit:contain}
.reading-k1-goals h2{margin:0 0 18px;font-size:x-large;line-height:1.35}
.reading-k1-goals h2 a{color:#327da2;text-decoration:underline}
.reading-k1-goals p{color:#000;font-size:large;line-height:1.55}
.reading-k1-goals .reading-k1-goal-heading{margin:0 0 16px;font-weight:700}
.reading-k1-selections{margin:0 0 18px}
.reading-k1-selections>p{position:relative;margin:0 0 9px;padding-left:22px}
.reading-k1-selections>p::before{content:"■";position:absolute;left:0;top:.05em;font-size:.72em}
.reading-k1-selections>strong{display:block;margin:5px 0 5px 22px;color:#000;font-size:large;line-height:1.45}
.reading-k1-steps{margin:0;padding-left:28px}
.reading-k1-steps li{margin:0 0 16px;color:#000;font-size:large}
.reading-k1-steps p{margin:0 0 5px}
.reading-k1-steps strong{font-weight:700}
@media(max-width:900px){
    .reading-k1-hub-layout{grid-template-columns:1fr}
    .reading-k1-image-panel{max-width:540px;margin:0 auto}
}

/* ===== September 2026 Reading K-Grade 1 catalog ===== */
.reading-k1-catalog-heading h1{font-size:xxx-large;text-align:center}
.reading-k1-catalog-heading p{text-align:center}
.reading-k1-catalog{max-width:900px;margin:0 auto}
.reading-k1-catalog-prompt{margin:0 0 24px;color:#000;font-size:large;font-weight:700;text-align:left;line-height:1.55}
.reading-k1-book-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:34px}
.reading-k1-book-card{display:block;color:#000;text-align:center;text-decoration:none}
.reading-k1-book-card img{display:block;width:100%;aspect-ratio:405/228;object-fit:cover;background:#eef3f5}
.reading-k1-book-card strong,.reading-k1-book-card span{display:block;text-align:center}
.reading-k1-book-card strong{margin-top:12px;color:#000;font-size:x-large;line-height:1.35;text-decoration:underline}
.reading-k1-book-card span{margin-top:6px;color:red;font-size:large;line-height:1.35}
@media(max-width:600px){
    .reading-k1-book-grid{grid-template-columns:1fr}
}

/* ===== Soap Boat book page ===== */
.route-soap-boat .content-heading h1{font-size:xxx-large;font-weight:700;text-align:center}
.soap-story-section{display:grid;grid-template-columns:minmax(300px,.95fr) minmax(0,1.2fr);gap:32px;align-items:center;padding:30px;background-color:#fff0b8;background-image:radial-gradient(circle at 6% 18%,#ff8ebc55 0 28px,transparent 29px),radial-gradient(circle at 94% 75%,#63d5ed55 0 42px,transparent 43px),linear-gradient(125deg,#fff2ad,#ffd8e9 52%,#d5f4ff)}
.soap-story-section>img{display:block;width:100%;height:auto;object-fit:contain}
.soap-story-copy p{margin:0 0 14px;color:#000;font-size:large;line-height:1.65}
.soap-reading-link{margin-top:18px}
.soap-vocabulary-section>h2,.soap-comprehension-section>h2,.soap-project-section>h2{font-size:xx-large;font-weight:700}
.soap-vocabulary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.soap-word-card{text-align:center}
.soap-word-card img{display:block;width:100%;aspect-ratio:1;object-fit:contain;background:#fff}
.soap-word-card p{margin:9px 0 4px;color:#000;font-size:x-large;line-height:1.3;text-align:center}
.soap-word-card p span{color:red}
.soap-word-card>a{display:inline-block;font-size:x-large;line-height:1.2;text-decoration:none}
.soap-comprehension-section>ol{margin:0;padding-left:42px}
.soap-comprehension-section li{margin:0 0 30px;padding-left:8px;color:#000;font-size:xx-large;line-height:1.4}
.soap-comprehension-section li>p{margin:3px 0;font-size:inherit}
.soap-project-layout{display:grid;grid-template-columns:minmax(320px,.95fr) minmax(0,1.1fr);gap:32px;align-items:center;padding:28px;background-color:#ffe5a5;background-image:radial-gradient(circle at 8% 30%,#ff70a855 0 30px,transparent 31px),radial-gradient(circle at 92% 68%,#44cce955 0 42px,transparent 43px),linear-gradient(120deg,#fff0a6,#ffd4e8 50%,#cdf2ff)}
.soap-project-copy h3{margin:0 0 16px;color:#000;font-size:xx-large;font-weight:700;line-height:1.35}
.soap-project-copy p{margin:0 0 14px;color:#000;font-size:x-large;line-height:1.6}
.soap-answers-section{margin:36px -30px 0;padding:28px 30px;background:#082c59;color:#fff}
.soap-answers-section h2{margin:0 0 12px;color:#fff;font-size:x-large;font-weight:700}
.soap-answers-section p{margin:0;color:#fff;font-size:large;line-height:1.65}
@media(max-width:800px){
    .soap-story-section,.soap-project-layout{grid-template-columns:1fr}
    .soap-vocabulary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:600px){
    .soap-story-section,.soap-project-layout{padding:22px}
    .soap-answers-section{margin-left:-20px;margin-right:-20px;padding:24px 20px}
}
@media(max-width:480px){
    .soap-vocabulary-grid{grid-template-columns:1fr}
}

/* ===== Penguin Penguin book page ===== */
.penguin-heading h1{font-size:xxx-large;font-weight:700;text-align:center}
.penguin-story-section{display:grid;grid-template-columns:minmax(300px,.95fr) minmax(0,1.2fr);gap:32px;align-items:center;padding:30px;background-color:#dff5ff;background-image:radial-gradient(circle at 8% 18%,#fff 0 24px,transparent 25px),radial-gradient(circle at 94% 72%,#9ee8ff88 0 42px,transparent 43px),linear-gradient(125deg,#e6f8ff,#d8e5ff 52%,#f3dcff)}
.penguin-story-section>img{display:block;width:100%;height:auto;object-fit:contain}
.penguin-story-copy p{margin:0 0 10px;color:#000;font-size:large;line-height:1.55}
.penguin-reading-link{margin-top:18px}
.penguin-vocabulary-section>h2,.penguin-comprehension-section>h2,.penguin-project-section>h2{font-size:xx-large;font-weight:700}
.penguin-vocabulary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.penguin-word-card{text-align:center}
.penguin-word-card img{display:block;width:100%;aspect-ratio:1;object-fit:contain;background:#fff}
.penguin-word-card p{margin:9px 0 4px;color:#000;font-size:x-large;line-height:1.3;text-align:center}
.penguin-word-card p span{color:red}
.penguin-word-card>a{display:inline-block;font-size:x-large;line-height:1.2;text-decoration:none}
.penguin-comprehension-section>ol{margin:0;padding-left:42px}
.penguin-comprehension-section li{margin:0 0 30px;padding-left:8px;color:#000;font-size:xx-large;line-height:1.4}
.penguin-comprehension-section li>p{margin:3px 0;font-size:inherit}
.penguin-project-layout{display:grid;grid-template-columns:minmax(320px,.95fr) minmax(0,1.1fr);gap:32px;align-items:center;padding:28px;background-color:#dff5ff;background-image:radial-gradient(circle at 7% 30%,#ff8fc455 0 30px,transparent 31px),radial-gradient(circle at 92% 68%,#59d4ef66 0 42px,transparent 43px),linear-gradient(120deg,#dff7ff,#e9dcff 50%,#ffe2ef)}
.penguin-project-copy h3{margin:0 0 16px;color:#000;font-size:xx-large;font-weight:700;line-height:1.35}
.penguin-project-copy p{margin:0 0 14px;color:#000;font-size:x-large;line-height:1.6}
.penguin-answers-section{margin:36px -30px 0;padding:28px 30px;background:#082c59;color:#fff}
.penguin-answers-section h2{margin:0 0 12px;color:#fff;font-size:x-large;font-weight:700}
.penguin-answers-section p{margin:0;color:#fff;font-size:large;line-height:1.65}
@media(max-width:800px){
    .penguin-story-section,.penguin-project-layout{grid-template-columns:1fr}
    .penguin-vocabulary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:600px){
    .penguin-story-section,.penguin-project-layout{padding:22px}
    .penguin-answers-section{margin-left:-20px;margin-right:-20px;padding:24px 20px}
}
@media(max-width:480px){
    .penguin-vocabulary-grid{grid-template-columns:1fr}
}

/* ===== Reading Grades 2-4 hub page ===== */
.reading-24-hub-layout{grid-template-columns:minmax(300px,.9fr) minmax(0,1.35fr);gap:38px;align-items:start}
.reading-24-image-panel img{display:block;width:100%;height:auto;object-fit:contain}
.reading-24-goals h2{margin:0 0 20px;font-size:xxx-large;line-height:1.25}
.reading-24-goals h2 a{color:#327da2;text-decoration:underline}
.reading-24-goals p{color:#000;font-size:large;line-height:1.55}
.reading-24-selections{margin:0 0 18px}
.reading-24-selections>p{position:relative;margin:0 0 9px;padding-left:22px}
.reading-24-selections>p::before{content:"■";position:absolute;left:0;top:.05em;font-size:.72em}
.reading-24-selections>strong{display:block;margin:5px 0 5px 22px;color:#000;font-size:large;line-height:1.45}
.reading-24-steps{margin:0;padding-left:28px}
.reading-24-steps li{margin:0 0 16px;color:#000;font-size:large}
.reading-24-steps p{margin:0 0 5px}
.reading-24-steps strong{font-weight:700}
@media(max-width:900px){
    .reading-24-hub-layout{grid-template-columns:1fr}
    .reading-24-image-panel{max-width:540px;margin:0 auto}
}

/* ===== September 2026 Reading Grades 2-4 catalog ===== */
.reading-24-catalog-heading h1{font-size:xxx-large;font-weight:700;text-align:center}
.reading-24-catalog-heading p{font-size:large;text-align:center}
.reading-24-catalog{max-width:980px;margin:0 auto}
.reading-24-catalog-prompt{margin:0 0 26px;color:#000;font-size:large;font-weight:700;text-align:left;line-height:1.55}
.reading-24-book-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.reading-24-book-card{display:block;color:#000;text-align:center;text-decoration:none}
.reading-24-book-card img{display:block;width:100%;aspect-ratio:1;object-fit:cover;background:#eef3f5}
.reading-24-book-card strong,.reading-24-book-card span{display:block;text-align:center}
.reading-24-book-card strong{margin-top:12px;color:#000;font-size:x-large;line-height:1.35;text-decoration:underline}
.reading-24-book-card span{margin-top:6px;color:red;font-size:x-large;line-height:1.35}
@media(max-width:750px){
    .reading-24-book-grid{grid-template-columns:1fr}
    .reading-24-book-card{max-width:460px;width:100%;margin:0 auto}
}

/* ===== Over In the Meadow book page ===== */
.meadow-heading h1{font-size:xxx-large;font-weight:700;text-align:center}
.meadow-story-section{display:grid;grid-template-columns:minmax(300px,.9fr) minmax(0,1.2fr);gap:34px;align-items:center;padding:30px;background-color:#eaf8cf;background-image:radial-gradient(circle at 8% 20%,#fff7a855 0 28px,transparent 29px),radial-gradient(circle at 94% 74%,#63d8ed55 0 44px,transparent 45px),linear-gradient(125deg,#efffc7,#d7f3dd 52%,#d9f5ff)}
.meadow-story-section>img{display:block;width:100%;height:auto;object-fit:contain}
.meadow-story-copy p{margin:0 0 9px;color:#000;font-size:large;line-height:1.55}
.meadow-reading-link{margin-top:18px}
.meadow-vocabulary-section>h2,.meadow-comprehension-section>h2,.meadow-project-section>h2{font-size:xx-large;font-weight:700}
.meadow-vocabulary-section>img{display:block;width:min(100%,1067px);height:auto;margin:0 auto}
.meadow-comprehension-section>ol{margin:0;padding-left:42px}
.meadow-comprehension-section li{margin:0 0 32px;padding-left:8px;color:#000;font-size:xx-large;line-height:1.4}
.meadow-comprehension-section li>p{margin:4px 0;font-size:inherit}
.meadow-project-layout{display:grid;grid-template-columns:minmax(320px,.95fr) minmax(0,1.1fr);gap:32px;align-items:center;padding:28px;background-color:#ffefad;background-image:radial-gradient(circle at 7% 30%,#ff79ad55 0 30px,transparent 31px),radial-gradient(circle at 92% 68%,#4bd4ed66 0 42px,transparent 43px),linear-gradient(120deg,#fff0a6,#dff5cb 50%,#ccefff)}
.meadow-project-copy h3{margin:0 0 16px;color:#000;font-size:xx-large;font-weight:700;line-height:1.35}
.meadow-project-copy p{margin:0 0 14px;color:#000;font-size:x-large;line-height:1.6}
.meadow-answers-section{margin:36px -30px 0;padding:28px 30px;background:#082c59;color:#fff}
.meadow-answers-section h2{margin:0 0 12px;color:#fff;font-size:x-large;font-weight:700}
.meadow-answers-section p{margin:6px 0;color:#fff;font-size:large;line-height:1.55}
@media(max-width:800px){
    .meadow-story-section,.meadow-project-layout{grid-template-columns:1fr}
}
@media(max-width:600px){
    .meadow-story-section,.meadow-project-layout{padding:22px}
    .meadow-answers-section{margin-left:-20px;margin-right:-20px;padding:24px 20px}
    .meadow-comprehension-section li{font-size:x-large}
}

/* ===== The Man The Tree and The Wolf book page ===== */
.wolf-heading h1{font-size:xxx-large;font-weight:700;text-align:center}
.wolf-story-section{display:grid;grid-template-columns:minmax(300px,.9fr) minmax(0,1.2fr);gap:34px;align-items:center;padding:30px;background-color:#f4edda;background-image:radial-gradient(circle at 8% 20%,#ffc87055 0 28px,transparent 29px),radial-gradient(circle at 94% 74%,#79c67a55 0 44px,transparent 45px),linear-gradient(125deg,#fff2cd,#e3f4d7 52%,#dceeff)}
.wolf-story-section>img{display:block;width:100%;height:auto;object-fit:contain}
.wolf-story-copy p{margin:0 0 14px;color:#000;font-size:large;line-height:1.65}
.wolf-reading-link{margin-top:18px}
.wolf-vocabulary-section>h2,.wolf-comprehension-section>h2,.wolf-project-section>h2{font-size:xx-large;font-weight:700}
.wolf-vocabulary-section>img{display:block;width:min(100%,1067px);height:auto;margin:0 auto}
.wolf-comprehension-section>ol{margin:0;padding-left:42px}
.wolf-comprehension-section li{margin:0 0 32px;padding-left:8px;color:#000;font-size:xx-large;line-height:1.4}
.wolf-comprehension-section li>p{margin:4px 0;font-size:inherit}
.wolf-project-layout{display:grid;grid-template-columns:minmax(320px,.95fr) minmax(0,1.1fr);gap:32px;align-items:center;padding:28px;background-color:#fff0b4;background-image:radial-gradient(circle at 7% 30%,#ff826b55 0 30px,transparent 31px),radial-gradient(circle at 92% 68%,#66c88166 0 42px,transparent 43px),linear-gradient(120deg,#fff0ad,#dff0c5 50%,#cfeeff)}
.wolf-project-copy h3{margin:0 0 16px;color:#000;font-size:xx-large;font-weight:700;line-height:1.35}
.wolf-project-copy p{margin:0 0 14px;color:#000;font-size:x-large;line-height:1.6}
.wolf-answers-section{margin:36px -30px 0;padding:28px 30px;background:#082c59;color:#fff}
.wolf-answers-section h2{margin:0 0 12px;color:#fff;font-size:x-large;font-weight:700}
.wolf-answers-section p{margin:6px 0;color:#fff;font-size:large;line-height:1.55}
@media(max-width:800px){
    .wolf-story-section,.wolf-project-layout{grid-template-columns:1fr}
}
@media(max-width:600px){
    .wolf-story-section,.wolf-project-layout{padding:22px}
    .wolf-answers-section{margin-left:-20px;margin-right:-20px;padding:24px 20px}
    .wolf-comprehension-section li{font-size:x-large}
}

/* ===== Ocean Planet book page ===== */
.ocean-heading h1{font-size:xxx-large;font-weight:700;text-align:center}
.ocean-story-section{display:grid;grid-template-columns:minmax(300px,.9fr) minmax(0,1.2fr);gap:34px;align-items:center;padding:30px;background-color:#dff6ff;background-image:radial-gradient(circle at 8% 20%,#fff 0 28px,transparent 29px),radial-gradient(circle at 94% 74%,#30bddd55 0 44px,transparent 45px),linear-gradient(125deg,#e8fbff,#d6f4ed 52%,#d8e7ff)}
.ocean-story-section>img{display:block;width:100%;height:auto;object-fit:contain}
.ocean-story-copy p{margin:0 0 9px;color:#000;font-size:large;line-height:1.55}
.ocean-reading-link{margin-top:18px}
.ocean-vocabulary-section>h2,.ocean-comprehension-section>h2,.ocean-project-section>h2{font-size:xx-large;font-weight:700}
.ocean-vocabulary-section>img{display:block;width:min(100%,1100px);height:auto;margin:0 auto}
.ocean-comprehension-section>ol{margin:0;padding-left:42px}
.ocean-comprehension-section li{margin:0 0 32px;padding-left:8px;color:#000;font-size:xx-large;line-height:1.4}
.ocean-comprehension-section li>p{margin:4px 0;font-size:inherit}
.ocean-project-layout{display:grid;grid-template-columns:minmax(320px,.95fr) minmax(0,1.1fr);gap:32px;align-items:center;padding:28px;background-color:#dff7ff;background-image:radial-gradient(circle at 7% 30%,#ffdc6b66 0 30px,transparent 31px),radial-gradient(circle at 92% 68%,#30bddc66 0 42px,transparent 43px),linear-gradient(120deg,#e7fbff,#d4f3ed 50%,#cbdfff)}
.ocean-project-copy h3{margin:0 0 16px;color:#000;font-size:xx-large;font-weight:700;line-height:1.35}
.ocean-project-copy p{margin:0 0 14px;color:#000;font-size:x-large;line-height:1.6}
.ocean-answers-section{margin:36px -30px 0;padding:28px 30px;background:#082c59;color:#fff}
.ocean-answers-section h2{margin:0 0 12px;color:#fff;font-size:x-large;font-weight:700}
.ocean-answers-section p{margin:6px 0;color:#fff;font-size:large;line-height:1.55}
@media(max-width:800px){
    .ocean-story-section,.ocean-project-layout{grid-template-columns:1fr}
}
@media(max-width:600px){
    .ocean-story-section,.ocean-project-layout{padding:22px}
    .ocean-answers-section{margin-left:-20px;margin-right:-20px;padding:24px 20px}
    .ocean-comprehension-section li{font-size:x-large}
}

/* ===== Reading Grades 5-7 hub page ===== */
.reading-57-hub-layout{grid-template-columns:minmax(300px,.9fr) minmax(0,1.35fr);gap:38px;align-items:start}
.reading-57-image-panel h2{margin:0 0 16px;color:#45818e;font-size:x-large;font-weight:700;line-height:1.35}
.reading-57-image-panel img{display:block;width:100%;height:auto;object-fit:contain}
.reading-57-goals h2{margin:0 0 18px;font-size:x-large;line-height:1.35}
.reading-57-goals h2 a{color:#327da2;text-decoration:underline}
.reading-57-goals p{color:#000;font-size:large;line-height:1.55}
.reading-57-goals .reading-57-goal-heading{margin:0 0 16px;font-weight:700}
.reading-57-selections{margin:0 0 18px}
.reading-57-selections>p{position:relative;margin:0 0 9px;padding-left:22px}
.reading-57-selections>p::before{content:"■";position:absolute;left:0;top:.05em;font-size:.72em}
.reading-57-selections>strong{display:block;margin:5px 0 5px 22px;color:#000;font-size:large;line-height:1.45}
.reading-57-steps{margin:0;padding-left:28px}
.reading-57-steps li{margin:0 0 16px;color:#000;font-size:large}
.reading-57-steps p{margin:0 0 5px}
.reading-57-steps strong{font-weight:700}
@media(max-width:900px){
    .reading-57-hub-layout{grid-template-columns:1fr}
    .reading-57-image-panel{max-width:540px;margin:0 auto}
}

/* ===== September 2026 Reading Grades 5-7 catalog ===== */
.reading-57-catalog-heading h1{font-size:xxx-large;font-weight:700;text-align:center}
.reading-57-catalog-heading p{font-size:x-large;text-align:center}
.reading-57-catalog{max-width:1080px;margin:0 auto}
.reading-57-catalog-prompt{margin:0 0 26px;color:#000;font-size:large;text-align:left;line-height:1.55}
.reading-57-book-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:start}
.reading-57-book-card{display:block;color:#000;text-align:center;text-decoration:none}
.reading-57-book-card img{display:block;width:100%;aspect-ratio:263/330;object-fit:cover;background:#eef3f5}
.reading-57-book-card strong,.reading-57-book-card span{display:block;text-align:center}
.reading-57-book-card strong{margin-top:12px;color:#000;font-size:xx-large;line-height:1.3;text-decoration:underline}
.reading-57-book-card span{margin-top:7px;color:red;font-size:large;line-height:1.35}
@media(max-width:750px){
    .reading-57-book-grid{grid-template-columns:1fr}
    .reading-57-book-card{max-width:460px;width:100%;margin:0 auto}
}

/* ===== Hawaii's Goddess of Fire book page ===== */
.fire-heading{text-align:center}
.fire-heading>p{margin:0 0 8px;color:purple;font-size:x-large;font-weight:700;text-align:center}
.fire-heading h1{font-size:xxx-large;font-weight:700;text-align:center}
.fire-story-section{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.3fr);gap:36px;align-items:center;padding:30px;background-color:#fff0df;background-image:radial-gradient(circle at 7% 20%,#ff824d55 0 28px,transparent 29px),radial-gradient(circle at 94% 75%,#ffd05b66 0 42px,transparent 43px),linear-gradient(125deg,#fff3d2,#ffe0d3 52%,#ecd9ff)}
.fire-story-section>img{display:block;width:100%;height:auto;object-fit:contain}
.fire-story-copy p{margin:0 0 16px;color:#000;font-size:large;line-height:1.65}
.fire-reading-link{margin-top:16px}
.fire-skills-section>h2{font-size:xx-large;font-weight:700;text-align:center}
.fire-skills-grid>div{display:block}
.fire-questions-section>h2,.fire-project-section>h2{font-size:xx-large;font-weight:700}
.fire-questions-section>ol{margin:0;padding-left:42px}
.fire-questions-section li{margin:0 0 22px;padding-left:7px;color:#000;font-size:x-large;line-height:1.55}
.fire-project-layout{display:grid;grid-template-columns:minmax(320px,.95fr) minmax(0,1.1fr);gap:32px;align-items:center;padding:28px;background-color:#ffe4b5;background-image:radial-gradient(circle at 7% 30%,#ff6f5355 0 30px,transparent 31px),radial-gradient(circle at 92% 68%,#8954c866 0 42px,transparent 43px),linear-gradient(120deg,#fff0b1,#ffd7c8 50%,#e5d7ff)}
.fire-project-copy h3{margin:0 0 16px;color:#000;font-size:xx-large;font-weight:700;line-height:1.35}
.fire-project-copy p{margin:0 0 14px;color:#000;font-size:large;line-height:1.65}
.fire-answers-section{margin:36px -30px 0;padding:28px 30px;background:#082c59;color:#fff}
.fire-answers-section h2{margin:0 0 14px;color:#fff;font-size:x-large;font-weight:700}
.fire-answers-section p{margin:8px 0;color:#fff;font-size:large;line-height:1.6}
@media(max-width:800px){
    .fire-story-section,.fire-project-layout{grid-template-columns:1fr}
    .fire-story-section>img{max-width:420px;margin:0 auto}
}
@media(max-width:600px){
    .fire-story-section,.fire-project-layout{padding:22px}
    .fire-answers-section{margin-left:-20px;margin-right:-20px;padding:24px 20px}
}

/* ===== The Happy Prince and Other Tales book page ===== */
.prince-heading h1{font-size:xxx-large;font-weight:700;text-align:center}
.prince-story-section{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.3fr);gap:36px;align-items:center;padding:30px;background-color:#eef5ff;background-image:radial-gradient(circle at 7% 20%,#ffd65955 0 28px,transparent 29px),radial-gradient(circle at 94% 75%,#78b9ff55 0 42px,transparent 43px),linear-gradient(125deg,#fff6cf,#e7efff 52%,#e9dcff)}
.prince-story-section>img{display:block;width:100%;height:auto;object-fit:contain}
.prince-story-copy p{margin:0 0 16px;color:#000;font-size:large;line-height:1.65}
.prince-reading-link{margin-top:16px}
.prince-skills-section>h2{font-size:xx-large;font-weight:700;text-align:center}
.prince-skills-grid>div>p{margin:10px 0 0;color:#000;font-size:large;text-align:center;line-height:1.45}
.prince-questions-section>h2,.prince-project-section>h2{font-size:xx-large;font-weight:700}
.prince-questions-section>ol{margin:0;padding-left:42px}
.prince-questions-section li{margin:0 0 30px;padding-left:7px;color:#000;font-size:x-large;line-height:1.5}
.prince-questions-section li>p{margin:5px 0;font-size:inherit}
.prince-project-layout{display:grid;grid-template-columns:minmax(320px,.95fr) minmax(0,1.1fr);gap:32px;align-items:center;padding:28px;background-color:#fff1b5;background-image:radial-gradient(circle at 7% 30%,#ffcd4655 0 30px,transparent 31px),radial-gradient(circle at 92% 68%,#589dff66 0 42px,transparent 43px),linear-gradient(120deg,#fff4be,#e7ecff 50%,#ead9ff)}
.prince-project-videos{display:grid;grid-template-columns:1fr;gap:24px}
.prince-project-copy h3{margin:0 0 16px;color:#000;font-size:xx-large;font-weight:700;line-height:1.35}
.prince-project-copy p{margin:0 0 14px;color:#000;font-size:large;line-height:1.65}
.prince-answers-section{margin:36px -30px 0;padding:28px 30px;background:#082c59;color:#fff}
.prince-answers-section p{margin:8px 0;color:#fff;font-size:large;line-height:1.6}
@media(max-width:800px){
    .prince-story-section,.prince-project-layout{grid-template-columns:1fr}
    .prince-story-section>img{max-width:420px;margin:0 auto}
}
@media(max-width:600px){
    .prince-story-section,.prince-project-layout{padding:22px}
    .prince-answers-section{margin-left:-20px;margin-right:-20px;padding:24px 20px}
}

/* ===== Bob and the Cyber-Llama book page ===== */
.cyber-heading h1{font-size:xxx-large;font-weight:700;text-align:center}
.cyber-story-section{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.3fr);gap:36px;align-items:center;padding:30px;background-color:#e9f5ff;background-image:radial-gradient(circle at 7% 20%,#ffbf4655 0 28px,transparent 29px),radial-gradient(circle at 94% 75%,#4da3ff55 0 42px,transparent 43px),linear-gradient(125deg,#eaf8ff,#dce9ff 52%,#e5dcff)}
.cyber-story-section>img{display:block;width:100%;height:auto;object-fit:contain}
.cyber-story-copy p{margin:0 0 16px;color:#000;font-size:large;line-height:1.65}
.cyber-reading-link{margin-top:16px}
.cyber-skills-section>h2{font-size:xx-large;font-weight:700;text-align:center}
.cyber-skills-grid>div>p{margin:10px 0 0;color:#000;font-size:large;text-align:center;line-height:1.45}
.cyber-questions-section>h2,.cyber-project-section>h2{font-size:xx-large;font-weight:700}
.cyber-questions-section>ol{margin:0;padding-left:42px}
.cyber-questions-section li{margin:0 0 22px;padding-left:7px;color:#000;font-size:x-large;line-height:1.55}
.cyber-project-layout{display:grid;grid-template-columns:minmax(320px,.95fr) minmax(0,1.1fr);gap:32px;align-items:center;padding:28px;background-color:#dff4ff;background-image:radial-gradient(circle at 7% 30%,#ffca4f66 0 30px,transparent 31px),radial-gradient(circle at 92% 68%,#507cff66 0 42px,transparent 43px),linear-gradient(120deg,#e6f8ff,#dfe8ff 50%,#eadcff)}
.cyber-project-copy h3{margin:0 0 16px;color:#000;font-size:xx-large;font-weight:700;line-height:1.35}
.cyber-project-copy p{margin:0 0 14px;color:#000;font-size:large;line-height:1.65}
.cyber-answers-section{margin:36px -30px 0;padding:28px 30px;background:#082c59;color:#fff}
.cyber-answers-section h2{margin:0 0 14px;color:#fff;font-size:x-large;font-weight:700}
.cyber-answers-section p{margin:8px 0;color:#fff;font-size:large;line-height:1.6}
@media(max-width:800px){
    .cyber-story-section,.cyber-project-layout{grid-template-columns:1fr}
    .cyber-story-section>img{max-width:420px;margin:0 auto}
}
@media(max-width:600px){
    .cyber-story-section,.cyber-project-layout{padding:22px}
    .cyber-answers-section{margin-left:-20px;margin-right:-20px;padding:24px 20px}
}

/* ===== Newsletter page ===== */
.newsletter-family-heading{min-height:310px;margin:0 -30px 36px;padding:38px 24px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;background:#fff4f8 url('../images/newsletter-family-hero.png') center/cover no-repeat}
.newsletter-family-heading h1{width:48%;margin:0;color:#17131a;font-size:xxx-large;font-weight:700;text-align:center;text-shadow:0 2px 8px #fff,0 0 18px #fff}
.newsletter-family-heading p{width:48%;margin:8px 0 0;color:#8b3f78;font-size:x-large;font-weight:700;text-align:center;text-shadow:0 2px 8px #fff,0 0 18px #fff}
.newsletter-issue-section{min-height:370px;margin:0 -30px;display:grid;place-items:center;padding:36px 28px;background:#fff8ed url('../images/newsletter-family-link.png') center/cover no-repeat}
.newsletter-issue-link{display:inline-block;padding:17px 30px;border:2px solid #397b8d;border-radius:12px;background:rgba(255,255,255,.92);box-shadow:0 8px 24px rgba(51,79,88,.2);color:#245f70;font-size:x-large;font-weight:700;line-height:1.4;text-align:center;text-decoration:none}
.newsletter-issue-link:hover,.newsletter-issue-link:focus{background:#fff;color:#873d72;text-decoration:underline}
@media(max-width:700px){
    .newsletter-family-heading{min-height:260px;align-items:center;background-position:62% center}
    .newsletter-family-heading h1,.newsletter-family-heading p{width:92%;padding:4px 8px;background:rgba(255,255,255,.76);border-radius:8px}
    .newsletter-issue-section{min-height:320px;background-position:center}
}
@media(max-width:600px){
    .newsletter-family-heading,.newsletter-issue-section{margin-left:-20px;margin-right:-20px}
    .newsletter-family-heading h1{font-size:xx-large}
    .newsletter-family-heading p,.newsletter-issue-link{font-size:large}
}
