:root{--navy:#09233f;--navy2:#06182b;--red:#e51c2a;--cream:#f5f1e7;--ink:#142234;--pale:#f3f5f7}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:white}.top{height:104px;background:var(--navy);display:flex;align-items:center;justify-content:space-between;padding:16px 5vw;color:white}.brand{display:flex;align-items:center;gap:22px;color:white;text-decoration:none;font-weight:900;letter-spacing:2px}.brand img{width:155px;max-height:74px;object-fit:contain}.strap{font-size:15px;font-weight:700}nav{position:sticky;top:0;z-index:10;display:flex;justify-content:center;gap:25px;padding:15px;background:white;border-bottom:1px solid #ddd;box-shadow:0 3px 12px #0001}nav a{color:var(--navy);text-decoration:none;font-weight:800;font-size:14px}.hero{min-height:610px;background:linear-gradient(115deg,var(--navy2) 0 66%,var(--red) 66%);color:white;padding:85px 7vw;display:grid;grid-template-columns:1.55fr .8fr;gap:8vw;align-items:center}.eyebrow,.heading>p{font-size:13px;font-weight:900;letter-spacing:3px;color:var(--red)}.hero .eyebrow,.impact .eyebrow,.voices .eyebrow{color:#ff5864}.hero h1{font-size:72px;line-height:.98;margin:14px 0 28px;letter-spacing:-3px}.hero h1 span{color:#ff3948}.lead{max-width:720px;font-size:20px;line-height:1.6}.actions{display:flex;gap:12px;margin-top:30px}.btn{padding:15px 22px;border-radius:3px;text-decoration:none;font-weight:900}.red{background:var(--red);color:white}.ghost{border:1px solid #fff;color:#fff}.hero-panel{border-top:7px solid white;background:#ffffff12;padding:30px}.hero-panel>p:first-child{font-size:12px;font-weight:900;letter-spacing:3px}.hero-panel h2{font-size:34px}.mini-stat{display:flex;gap:18px;align-items:center;margin:25px 0}.mini-stat b{font-size:70px}.mini-stat span{line-height:1.4}.section{padding:76px 6vw}.pale{background:var(--pale)}.heading{max-width:850px;margin-bottom:34px}.heading h2{font-size:44px;color:var(--navy);margin:8px 0}.heading span{font-size:18px;color:#5a6673}.yeargrid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.year{border:0;background:var(--navy);color:white;padding:24px 12px;text-align:left;cursor:pointer;min-height:160px}.year small{letter-spacing:2px}.year b{display:block;font-size:52px}.year span{font-weight:700}.year.active{background:var(--red)}.year-detail{margin-top:14px;background:var(--cream);padding:32px;display:grid;grid-template-columns:1fr 1fr;gap:50px}.year-detail h3{font-size:32px;margin:6px 0}.mini-book{display:grid;grid-template-columns:42px 1fr;gap:10px;align-items:center;margin:8px 0}.mini-book img{width:42px;height:58px;object-fit:cover}.mini-book i{font-style:normal}.mini-book small{display:block;color:#68717b;margin-top:3px}.filter{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.filter button,.chips button{border:1px solid #c9ced4;background:white;padding:9px 13px;font-weight:700;cursor:pointer}.filter button.active,.chips button.active{background:var(--red);color:white;border-color:var(--red)}.genres{margin-bottom:30px}.books{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.book{background:white;box-shadow:0 5px 18px #00000013;display:flex;flex-direction:column;overflow:hidden}.book>img{width:100%;height:310px;object-fit:contain;background:#eceff2;padding:14px}.book>div{padding:20px;display:flex;flex-direction:column;flex:1}.book h3{font-size:21px;margin:9px 0 3px;color:var(--navy)}.book h4{margin:0 0 12px;color:#6a7480}.book p{line-height:1.5;flex:1}.book small{font-weight:800}.tag{font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:1px;color:var(--red)}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.cards article{border-top:5px solid var(--red);background:var(--pale);padding:24px}.cards b{color:var(--red);font-size:13px}.cards h3{font-size:25px;color:var(--navy);margin:10px 0}.cards p{line-height:1.55}.strategy-strip{display:grid;grid-template-columns:repeat(3,1fr);margin-top:20px;background:var(--navy);color:white}.strategy-strip div{padding:24px;border-right:1px solid #ffffff33}.strategy-strip strong,.strategy-strip span{display:block}.strategy-strip strong{font-size:22px;margin-bottom:7px}.impact{padding:75px 7vw;background:var(--navy);color:white;display:grid;grid-template-columns:1.6fr .7fr;gap:70px}.impact h2,.voices h2{font-size:45px;margin:8px 0}.impact>div>p{font-size:18px;line-height:1.6}.impact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:30px}.impact-grid span{background:#ffffff0f;padding:18px;line-height:1.45}.impact-grid b{display:block;color:#ff4d59;margin-bottom:5px}.myths{background:white;color:var(--ink);padding:30px}.myths h3{font-size:28px;color:var(--navy)}.myths p{border-bottom:1px solid #ddd;padding-bottom:15px}.subjects{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.subjects span{background:var(--navy);color:white;padding:23px;font-weight:900}.subjects small{display:block;font-weight:400;line-height:1.5;margin-top:8px;color:#d9e1e8}.reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.reviews blockquote{margin:0;background:white;padding:28px;font-size:19px;line-height:1.6;border-left:5px solid var(--red)}.reviews blockquote div{color:var(--red);letter-spacing:2px}.reviews footer{font-size:13px;font-weight:800;margin-top:20px}.review-cta{margin-top:18px;background:var(--red);color:white;padding:22px;display:flex;gap:22px;align-items:center}.review-cta span{flex:1}.review-cta button{padding:11px 15px;border:0;font-weight:800}.voices{padding:70px 7vw;background:var(--navy2);color:white;display:grid;grid-template-columns:.8fr 1.3fr;gap:55px}.voicegrid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.voicegrid article{background:#ffffff10;padding:25px;border-top:5px solid var(--red)}.voicegrid b{font-size:11px;color:#ff5864;letter-spacing:2px}.finder-box{background:var(--cream);padding:30px}.finder-box label{font-size:22px;font-weight:900}.finder-box select{font-size:18px;padding:8px}.chips{display:flex;flex-wrap:wrap;gap:8px;margin:25px 0}.suggestion{display:flex;gap:16px;flex-wrap:wrap;align-items:center}.suggestion>p{width:100%;font-weight:900}.suggestion span{background:white;padding:10px;display:grid;grid-template-columns:45px 170px;grid-template-rows:auto auto;gap:2px 10px;align-items:center}.suggestion img{width:45px;height:65px;object-fit:cover;grid-row:1/3}.suggestion small{color:#666}.faq{max-width:900px}.faq details{background:white;margin:8px 0;padding:20px}.faq summary{font-weight:900;font-size:19px;color:var(--navy);cursor:pointer}.faq p{line-height:1.6}footer{background:#041321;color:white;padding:35px 6vw;display:flex;align-items:center;gap:30px}footer img{width:120px}footer div{flex:1}footer strong{letter-spacing:2px}@media(max-width:900px){.hero,.impact,.voices,.year-detail{grid-template-columns:1fr}.hero{background:var(--navy2)}.hero h1{font-size:50px}.yeargrid{grid-template-columns:repeat(2,1fr)}.books,.cards,.subjects{grid-template-columns:repeat(2,1fr)}.reviews,.voicegrid,.impact-grid{grid-template-columns:1fr}.strap{display:none}nav{overflow:auto;justify-content:flex-start}.book>img{height:280px}}@media(max-width:560px){.books,.cards,.subjects{grid-template-columns:1fr}.section{padding:55px 5vw}.heading h2{font-size:35px}.brand span{display:none}}
/* Live student review system */
.review-prize{display:grid;grid-template-columns:1.6fr 1fr;gap:24px;background:#071b35;color:white;border-radius:18px;padding:30px;margin:26px 0 34px}.prize-kicker{font-size:.75rem;letter-spacing:.16em;color:#f05a62;font-weight:800}.review-prize h3{font-size:1.7rem;margin:.45rem 0}.review-prize p{margin:0;color:#dce5ef}.prize-math{background:#fff;color:#071b35;border-radius:14px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;text-align:center;padding:20px}.prize-math b{font-size:1.4rem}.prize-math span{font-size:1.6rem;color:#d51f2b}.prize-math small{grid-column:1/-1;margin-top:8px}.review-layout{display:grid;grid-template-columns:2fr .85fr;gap:30px;align-items:start}.subheading h3{font-size:1.55rem;margin:.2rem 0}.subheading p{font-size:.75rem;letter-spacing:.14em;font-weight:800;color:#d51f2b}.live-reviews{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:20px 0}.live-review{background:#fff;border-radius:14px;padding:0;overflow:hidden;box-shadow:0 8px 24px rgba(7,27,53,.08);display:grid;grid-template-columns:115px 1fr;min-height:190px}.live-review .cover{background:#e9edf2;min-height:190px;display:flex;align-items:center;justify-content:center}.live-review .cover img{width:100%;height:100%;object-fit:cover}.cover-fallback{padding:12px;text-align:center;font-size:.75rem;color:#657386}.live-review .review-copy{padding:18px}.live-review h4{margin:.25rem 0 .15rem;font-size:1.05rem}.live-review .author{font-size:.8rem;color:#687485}.stars{color:#d51f2b;letter-spacing:.06em;margin:.4rem 0}.live-review blockquote{margin:.5rem 0;font-size:.92rem;line-height:1.5}.reviewer{font-size:.78rem;font-weight:800;color:#071b35}.review-submit-card{background:#fff;border-top:5px solid #d51f2b;padding:25px;border-radius:14px;box-shadow:0 8px 24px rgba(7,27,53,.08);position:sticky;top:90px}.review-submit-card h3{font-size:1.5rem;margin:.4rem 0}.review-submit-card .btn{display:block;text-align:center;width:100%;margin:18px 0 10px}.review-submit-card small{display:block;color:#687485}.redtext{color:#d51f2b}.review-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:32px}.review-stats div{background:#fff;border-radius:12px;padding:18px;text-align:center}.review-stats b{display:block;font-size:1.8rem;color:#071b35}.review-stats span{font-size:.8rem;color:#687485}.dark{border-color:#071b35!important;color:#071b35!important}.modal{display:none;position:fixed;inset:0;background:rgba(3,12,24,.75);z-index:1000;padding:25px;overflow:auto}.modal.open{display:flex;align-items:flex-start;justify-content:center}.modal-card{position:relative;background:#fff;width:min(820px,100%);margin:auto;border-radius:18px;padding:34px;box-shadow:0 24px 80px rgba(0,0,0,.35)}.modal-close{position:absolute;right:18px;top:12px;border:0;background:none;font-size:2rem;cursor:pointer}.form-intro{color:#5c6877}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.modal label{display:flex;flex-direction:column;gap:6px;font-weight:700;font-size:.88rem}.modal label span{font-weight:400}.modal input,.modal select,.modal textarea{font:inherit;padding:11px 12px;border:1px solid #cbd3dc;border-radius:8px;background:white}.modal input:focus,.modal select:focus,.modal textarea:focus{outline:3px solid rgba(213,31,43,.14);border-color:#d51f2b}.full{margin-top:16px}.char-note{text-align:right;color:#687485;font-size:.75rem}.check{flex-direction:row!important;align-items:flex-start;margin:18px 0}.check input{margin-top:3px}.form-actions{display:flex;gap:18px;align-items:center;flex-wrap:wrap}#reviewFormStatus{font-weight:700}.review-loading{padding:20px;background:#fff;border-radius:12px}.system-note{background:#fff7e6;border-left:4px solid #e5a400;padding:12px 15px;border-radius:6px;font-size:.85rem}
@media(max-width:850px){.review-prize,.review-layout{grid-template-columns:1fr}.live-reviews{grid-template-columns:1fr}.review-submit-card{position:static}.form-grid{grid-template-columns:1fr}.review-stats{grid-template-columns:1fr}.prize-math{min-height:130px}}@media(max-width:500px){.live-review{grid-template-columns:88px 1fr}.modal{padding:10px}.modal-card{padding:28px 18px}.review-prize{padding:22px}}

/* Expanded reading role models */
.rolemodels-section{background:#071b30;color:#fff}.rolemodels-section .heading h2,.rolemodels-section .heading span{color:#fff}.rolemodels{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.rolemodel{background:#fff;color:#0b223b;border-radius:18px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 14px 32px rgba(0,0,0,.18)}.rolemodel img{width:100%;height:250px;object-fit:cover;background:#dbe3ea}.rolemodel-copy{padding:22px;display:flex;flex-direction:column;gap:10px;height:100%}.rolemodel .role{font-size:.72rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#ef3340}.rolemodel h3{font-size:1.45rem;margin:0}.rolemodel blockquote{font-size:1.05rem;line-height:1.5;margin:4px 0 0;border-left:4px solid #ef3340;padding-left:14px;font-weight:750}.rolemodel p{margin:0;line-height:1.5;color:#45576a}.rolemodel a{margin-top:auto;color:#0b4f88;font-weight:800;text-decoration:none}.source-note{font-size:.78rem;opacity:.72;margin-top:18px;max-width:900px}
/* Deep curriculum literacy explorer */
.subject-zone{background:#f3f6f8}.subject-nav{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 24px}.subject-nav button{border:1px solid #c8d3dd;background:#fff;color:#0b223b;border-radius:999px;padding:10px 14px;font-weight:850;cursor:pointer}.subject-nav button.active,.subject-nav button:hover{background:#ef3340;color:#fff;border-color:#ef3340}.subject-detail{background:#fff;border-radius:20px;box-shadow:0 10px 28px rgba(10,35,58,.09);overflow:hidden}.subject-head{background:#0b223b;color:#fff;padding:28px 30px}.subject-head .eyebrow{color:#ff5360}.subject-head h3{font-size:2rem;margin:4px 0 8px}.subject-head p{max-width:900px;line-height:1.55;margin:0}.subject-body{padding:28px 30px}.subject-columns{display:grid;grid-template-columns:1fr 1fr;gap:28px}.subject-panel h4{font-size:1.15rem;margin:0 0 12px;color:#0b223b}.text-types{display:grid;gap:9px}.text-type{background:#f3f6f8;border-left:4px solid #ef3340;padding:11px 13px;border-radius:0 9px 9px 0}.text-type b{display:block;margin-bottom:3px}.vocab-cloud{display:flex;flex-wrap:wrap;gap:8px}.vocab-cloud span{background:#e9eef3;border-radius:999px;padding:8px 11px;font-size:.88rem;font-weight:800}.subject-books-title{margin:30px 0 14px}.subject-books{display:grid;grid-template-columns:repeat(5,1fr);gap:15px}.subject-book{border:1px solid #dce4ea;border-radius:13px;overflow:hidden;background:#fff}.subject-book .cover-wrap{height:205px;background:#e8edf1;display:flex;align-items:center;justify-content:center}.subject-book img{width:100%;height:100%;object-fit:cover}.subject-book .cover-placeholder{font-size:.72rem;text-align:center;color:#6b7782;font-weight:800;padding:15px}.subject-book-copy{padding:13px}.subject-book h5{font-size:.96rem;line-height:1.2;margin:0 0 5px}.subject-book .book-author{font-size:.76rem;font-weight:800;color:#637386;margin-bottom:7px}.subject-book p{font-size:.8rem;line-height:1.42;margin:0;color:#465665}
@media(max-width:900px){.rolemodels{grid-template-columns:1fr 1fr}.subject-columns{grid-template-columns:1fr}.subject-books{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.rolemodels{grid-template-columns:1fr}.rolemodel img{height:230px}.subject-books{grid-template-columns:1fr 1fr}.subject-body,.subject-head{padding:20px}.subject-book .cover-wrap{height:180px}}


/* Integrated book explorer */
.book-link{cursor:pointer;transition:transform .18s ease,box-shadow .18s ease}.book-link:hover,.book-link:focus{transform:translateY(-4px);box-shadow:0 14px 34px rgba(7,27,53,.16);outline:3px solid rgba(239,51,64,.18);outline-offset:2px}.open-book-note{display:block;margin-top:10px;color:#d51f2b;font-weight:900}.book-modal-card{width:min(930px,100%);padding:0;overflow:hidden}.book-modal-card>.modal-close{z-index:3;background:#fff;width:42px;height:42px;border-radius:50%;line-height:1}.book-detail-grid{display:grid;grid-template-columns:260px 1fr;min-height:390px}.book-detail-cover{background:#e7edf2;display:flex;align-items:center;justify-content:center;padding:24px}.book-detail-cover img{width:100%;max-height:345px;object-fit:contain;filter:drop-shadow(0 12px 14px rgba(0,0,0,.18))}.book-detail-copy{padding:42px 38px 30px}.book-detail-copy h2{font-size:2.1rem;line-height:1.05;margin:5px 0 7px;color:#071b35}.book-detail-copy h3{margin:0 0 16px;color:#5d6c7c}.book-meta{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:18px}.book-meta span{background:#edf2f5;border-radius:999px;padding:7px 10px;font-size:.76rem;font-weight:850}.book-detail-blurb{font-size:1rem;line-height:1.65;color:#3e4f60}.book-review-panel{padding:26px 34px;background:#f4f7f9;border-top:1px solid #dce4ea}.book-review-panel h3,.related-books h3{margin:0 0 15px;color:#071b35}.book-review-panel article{background:#fff;padding:17px;border-left:4px solid #ef3340;margin:10px 0}.book-review-panel blockquote{margin:5px 0 10px;line-height:1.55}.book-review-panel b{font-size:.8rem}.empty-book-reviews{background:#fff;padding:16px;border-radius:9px;color:#596a7a}.related-books{padding:24px 34px 32px}.related-books>div{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.related-book{border:1px solid #d7e0e7;background:#fff;border-radius:10px;padding:13px;text-align:left;cursor:pointer}.related-book:hover{border-color:#ef3340}.related-book b,.related-book small{display:block}.related-book small{margin-top:5px;color:#697887}.subject-book .open-book-note{font-size:.72rem}.book small{line-height:1.4}
@media(max-width:650px){.book-detail-grid{grid-template-columns:120px 1fr;min-height:0}.book-detail-cover{padding:14px;align-items:flex-start}.book-detail-cover img{max-height:190px}.book-detail-copy{padding:32px 18px 22px}.book-detail-copy h2{font-size:1.45rem}.related-books>div{grid-template-columns:1fr}.book-review-panel,.related-books{padding:20px}.book-modal-card{border-radius:12px}}
/* v4 grouped book reviews: one book card, multiple student reviews in a carousel */
.live-reviews{grid-template-columns:repeat(2,minmax(0,1fr))}.review-book-card{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 8px 24px rgba(7,27,53,.09);border-top:5px solid #d51f2b}.review-book-head{display:grid;grid-template-columns:120px 1fr;min-height:185px}.review-book-head .cover{background:#e9edf2;display:flex;align-items:center;justify-content:center}.review-book-head .cover img{width:100%;height:100%;object-fit:cover}.review-book-info{padding:18px}.review-book-info h4{font-size:1.18rem;line-height:1.15;color:#071b35;margin:7px 0 4px}.review-book-info .author{font-size:.85rem;color:#687485}.review-summary{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:12px 0;font-size:.82rem}.review-summary .stars{margin:0}.review-open-book{border:0;background:#071b35;color:#fff;font-weight:800;padding:8px 11px;border-radius:7px;cursor:pointer}.review-carousel{position:relative;background:#f7f9fb;border-top:1px solid #e1e7ec;padding:20px;min-height:205px}.review-slide blockquote{margin:7px 0 13px;font-size:.95rem;line-height:1.55;border:0;padding:0;background:transparent}.review-slide .review-position{position:absolute;right:20px;bottom:19px;font-size:.72rem;color:#73808d}.review-carousel-controls{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:18px}.review-carousel-controls>button{width:34px;height:34px;border-radius:50%;border:1px solid #cbd5de;background:#fff;color:#071b35;font-size:1.4rem;line-height:1;cursor:pointer}.review-dots{display:flex;gap:6px}.review-dots button{width:8px;height:8px;border:0;border-radius:50%;background:#c5ced6;padding:0;cursor:pointer}.review-dots button.active{background:#d51f2b}.book-review-summary{display:flex;gap:10px;align-items:baseline;margin-bottom:10px}.book-review-summary b{font-size:1.35rem;color:#d51f2b}.book-review-carousel{background:#fff;border-radius:10px;padding:18px;position:relative;min-height:155px}.book-review-panel .review-slide blockquote{background:transparent;border:0;padding:0}.book-review-panel .review-position{bottom:18px}.review-slide[hidden]{display:none!important}
@media(max-width:700px){.live-reviews{grid-template-columns:1fr}.review-book-head{grid-template-columns:95px 1fr}.review-carousel{min-height:220px}}

/* v4.3 interactive department vocabulary */
.vocab-instruction{margin:0 0 12px;color:#526475;line-height:1.45}
.vocab-cloud{display:flex;flex-wrap:wrap;gap:9px}
.vocab-cloud .vocab-button{appearance:none;border:1px solid #dbe3ea;background:#eaf0f5;color:#0b2341;border-radius:999px;padding:8px 14px;font:inherit;font-weight:800;cursor:pointer;transition:transform .15s ease,background .15s ease,color .15s ease,border-color .15s ease}
.vocab-cloud .vocab-button:hover,.vocab-cloud .vocab-button:focus-visible{transform:translateY(-1px);border-color:#ed1c24;outline:none}
.vocab-cloud .vocab-button.active{background:#0b2341;color:#fff;border-color:#0b2341}
.vocab-definition{margin-top:18px;min-height:150px}
.vocab-definition-empty,.vocab-definition-card{box-sizing:border-box;min-height:140px;border-left:5px solid #ed1c24;background:#f5f7f9;border-radius:0 14px 14px 0;padding:20px 22px}
.vocab-definition-empty{display:flex;flex-direction:column;justify-content:center;color:#526475}
.vocab-definition-empty b{color:#0b2341;font-size:1.05rem;margin-bottom:4px}
.vocab-definition-card .eyebrow{margin:0 0 7px;color:#ed1c24;font-size:.72rem;letter-spacing:.16em;font-weight:900}
.vocab-definition-card h5{margin:0 0 8px;color:#0b2341;font-size:1.35rem;text-transform:none}
.vocab-definition-card p{margin:0;color:#263b50;line-height:1.55}
.vocab-definition-card .vocab-pending{color:#66788a;font-style:italic}
.vocab-example{margin-top:13px;padding-top:12px;border-top:1px solid #dbe3ea;display:grid;gap:3px;color:#263b50}
.vocab-example b{color:#0b2341}
.vocab-footnote{margin:14px 0 0;color:#6b7b8c;font-size:.9rem;line-height:1.45}
@media(max-width:700px){.vocab-definition{min-height:0}.vocab-definition-empty,.vocab-definition-card{min-height:120px;padding:17px}.vocab-cloud .vocab-button{padding:8px 12px}}
/* v4.5: reliable role-model image fallback */
.rolemodel-image{height:215px;background:#dfe7ee;overflow:hidden}.rolemodel-image>img{width:100%;height:100%;object-fit:cover;display:block}.rolemodel-photo-fallback{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;background:#13283d;color:#fff}.rolemodel-photo-fallback span{font-size:.72rem;font-weight:800;letter-spacing:.16em;color:#ef3340;margin-bottom:10px}.rolemodel-photo-fallback strong{font-size:1.35rem}

/* v4.7 QA refinements */
.review-book-card .cover-fallback{height:100%;min-height:205px;background:linear-gradient(145deg,#0b223b,#173d61);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:18px}
.review-book-card .cover-fallback span{font-size:.66rem;letter-spacing:.16em;font-weight:900;color:#ff5360;margin-bottom:10px}
.review-book-card .cover-fallback strong{font-size:.9rem;line-height:1.25;max-width:130px}

/* v4.8: unified age-aware Bullers Bookshelf */
.shelf-step{display:flex;align-items:center;gap:10px;margin-top:24px;color:var(--navy);font-size:18px;font-weight:900}.shelf-step b{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--red);color:#fff}.year-picks button{font-size:17px;padding:11px 20px}.shelf-summary{margin:28px 0 18px;padding:18px 20px;background:var(--navy);color:white;display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}.shelf-summary b{font-size:22px}.shelf-summary span{color:#dbe5ee}.shelf-note{margin-top:24px;color:#5b6672;font-size:14px}.book{cursor:pointer}.shelf-cover{height:300px;background:#e9edf1;display:flex;align-items:center;justify-content:center;padding:14px}.shelf-cover img{width:100%;height:100%;object-fit:contain}.book-cover-fallback{height:100%;width:100%;background:linear-gradient(145deg,var(--navy),#173d63);color:white;padding:24px;display:flex;flex-direction:column;justify-content:flex-end}.book-cover-fallback b{font-size:22px;line-height:1.1}.book-cover-fallback small{margin-top:8px;color:#dce6ef}.book>div:not(.shelf-cover){padding:18px}.book h3{font-size:19px}.book p{font-size:14px}.mini-cover{width:42px;height:58px;background:#e8edf1;display:block}.mini-cover img{width:100%;height:100%;object-fit:contain}.subject-book .cover-wrap img{object-fit:contain!important;object-position:center!important;background:#f2f3f4;padding:8px}.role-card img{object-fit:cover;object-position:center 20%}@media(max-width:900px){.books{grid-template-columns:repeat(2,1fr)}.shelf-cover{height:280px}}@media(max-width:560px){.books{grid-template-columns:1fr}.shelf-cover{height:360px}.shelf-summary{align-items:flex-start;flex-direction:column}}

/* v4.8: unified age-aware Bullers Bookshelf */
.shelf-step{display:flex;align-items:center;gap:10px;margin-top:24px;color:var(--navy);font-size:18px;font-weight:900}.shelf-step b{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--red);color:#fff}.year-picks button{font-size:17px;padding:11px 20px}.shelf-summary{margin:28px 0 18px;padding:18px 20px;background:var(--navy);color:white;display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}.shelf-summary b{font-size:22px}.shelf-summary span{color:#dbe5ee}.shelf-note{margin-top:24px;color:#5b6672;font-size:14px}.book{cursor:pointer}.shelf-cover{height:300px;background:#e9edf1;display:flex;align-items:center;justify-content:center;padding:14px}.shelf-cover img{width:100%;height:100%;object-fit:contain}.book-cover-fallback{height:100%;width:100%;background:linear-gradient(145deg,var(--navy),#173d63);color:white;padding:24px;display:flex;flex-direction:column;justify-content:flex-end}.book-cover-fallback b{font-size:22px;line-height:1.1}.book-cover-fallback small{margin-top:8px;color:#dce6ef}.book>div:not(.shelf-cover){padding:18px}.book h3{font-size:19px}.book p{font-size:14px}.mini-cover{width:42px;height:58px;background:#e8edf1;display:block}.mini-cover img{width:100%;height:100%;object-fit:contain}.subject-book .cover-wrap img{object-fit:contain!important;object-position:center!important;background:#f2f3f4;padding:8px}.role-card img{object-fit:cover;object-position:center 20%}@media(max-width:900px){.books{grid-template-columns:repeat(2,1fr)}.shelf-cover{height:280px}}@media(max-width:560px){.books{grid-template-columns:1fr}.shelf-cover{height:360px}.shelf-summary{align-items:flex-start;flex-direction:column}}

/* v4.8: unified age-aware Bullers Bookshelf */
.shelf-step{display:flex;align-items:center;gap:10px;margin-top:24px;color:var(--navy);font-size:18px;font-weight:900}.shelf-step b{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--red);color:#fff}.year-picks button{font-size:17px;padding:11px 20px}.shelf-summary{margin:28px 0 18px;padding:18px 20px;background:var(--navy);color:white;display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}.shelf-summary b{font-size:22px}.shelf-summary span{color:#dbe5ee}.shelf-note{margin-top:24px;color:#5b6672;font-size:14px}.book{cursor:pointer}.shelf-cover{height:300px;background:#e9edf1;display:flex;align-items:center;justify-content:center;padding:14px}.shelf-cover img{width:100%;height:100%;object-fit:contain}.book-cover-fallback{height:100%;width:100%;background:linear-gradient(145deg,var(--navy),#173d63);color:white;padding:24px;display:flex;flex-direction:column;justify-content:flex-end}.book-cover-fallback b{font-size:22px;line-height:1.1}.book-cover-fallback small{margin-top:8px;color:#dce6ef}.book>div:not(.shelf-cover){padding:18px}.book h3{font-size:19px}.book p{font-size:14px}.mini-cover{width:42px;height:58px;background:#e8edf1;display:block}.mini-cover img{width:100%;height:100%;object-fit:contain}.subject-book .cover-wrap img{object-fit:contain!important;object-position:center!important;background:#f2f3f4;padding:8px}.role-card img{object-fit:cover;object-position:center 20%}@media(max-width:900px){.books{grid-template-columns:repeat(2,1fr)}.shelf-cover{height:280px}}@media(max-width:560px){.books{grid-template-columns:1fr}.shelf-cover{height:360px}.shelf-summary{align-items:flex-start;flex-direction:column}}

/* v4.8: unified age-aware Bullers Bookshelf */
.shelf-step{display:flex;align-items:center;gap:10px;margin-top:24px;color:var(--navy);font-size:18px;font-weight:900}.shelf-step b{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--red);color:#fff}.year-picks button{font-size:17px;padding:11px 20px}.shelf-summary{margin:28px 0 18px;padding:18px 20px;background:var(--navy);color:white;display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}.shelf-summary b{font-size:22px}.shelf-summary span{color:#dbe5ee}.shelf-note{margin-top:24px;color:#5b6672;font-size:14px}.book{cursor:pointer}.shelf-cover{height:300px;background:#e9edf1;display:flex;align-items:center;justify-content:center;padding:14px}.shelf-cover img{width:100%;height:100%;object-fit:contain}.book-cover-fallback{height:100%;width:100%;background:linear-gradient(145deg,var(--navy),#173d63);color:white;padding:24px;display:flex;flex-direction:column;justify-content:flex-end}.book-cover-fallback b{font-size:22px;line-height:1.1}.book-cover-fallback small{margin-top:8px;color:#dce6ef}.book>div:not(.shelf-cover){padding:18px}.book h3{font-size:19px}.book p{font-size:14px}.mini-cover{width:42px;height:58px;background:#e8edf1;display:block}.mini-cover img{width:100%;height:100%;object-fit:contain}.subject-book .cover-wrap img{object-fit:contain!important;object-position:center!important;background:#f2f3f4;padding:8px}.role-card img{object-fit:cover;object-position:center 20%}@media(max-width:900px){.books{grid-template-columns:repeat(2,1fr)}.shelf-cover{height:280px}}@media(max-width:560px){.books{grid-template-columns:1fr}.shelf-cover{height:360px}.shelf-summary{align-items:flex-start;flex-direction:column}}

/* v4.9 consolidated visual QA: preserve complete portraits and complete book covers */
.rolemodel-image{
  height:290px;
  background:#10263b;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
}
.rolemodel-image>img{
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center center;
  display:block;
}
.rolemodel-photo-fallback{width:100%;height:100%}
.subject-book .cover-wrap{
  height:285px;
  background:#f2f3f4;
  padding:12px;
}
.subject-book .cover-wrap img{
  width:100%;
  height:100%;
  object-fit:contain!important;
  object-position:center center!important;
  background:transparent!important;
  padding:0!important;
}
.subject-book .cover-placeholder{width:100%}
@media(max-width:900px){.rolemodel-image{height:300px}.subject-book .cover-wrap{height:300px}}
@media(max-width:560px){.rolemodel-image{height:260px}.subject-book .cover-wrap{height:235px}}
