/* Resources page only. Existing school navigation and theme are preserved. */
.resource-hero{padding:42px 0 48px;background:linear-gradient(115deg,#f8fafc,#eef3fa)}
.resource-hero-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(260px,.8fr);gap:55px;align-items:center}
.resource-hero h1{font-size:clamp(2rem,4.4vw,3.9rem);line-height:1.38;letter-spacing:-.045em;font-weight:700;margin:0;color:var(--blue)}
.resource-hero .lede{font-size:1.03rem;line-height:1.95;max-width:700px;margin:22px 0 0}
.resource-start{border-left:3px solid var(--gold);padding:20px 24px;background:rgba(255,255,255,.7);border-radius:0 15px 15px 0}
.resource-start-label{font-weight:800;font-size:.94rem;color:var(--blue)}
.resource-start p{font-size:.9rem;line-height:2;margin:12px 0}.resource-start a{color:var(--red);text-underline-offset:4px}.resource-start small{font-size:.75rem;color:var(--muted)}
.resource-jump{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}.resource-jump a{background:white;padding:9px 17px;border:1px solid var(--line);border-radius:100px;text-decoration:none;font-size:.83rem;font-weight:700}.resource-jump a:first-child{background:var(--blue);color:white;border-color:var(--blue)}
.resource-page .section-title{font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.4}.resource-page .section-head>p{font-size:.9rem}
.resource-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.resource-book-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.resource-book{min-width:0;overflow:hidden;border:1px solid var(--line);background:white;border-radius:18px;box-shadow:var(--shadow-soft);display:flex;flex-direction:column;scroll-margin-top:100px}
.resource-cover{display:flex;justify-content:center;align-items:center;background:#eaf0f5;padding:25px;text-decoration:none;overflow:hidden;border-bottom:1px solid var(--line)}
.resource-cover img{width:auto;height:292px;max-width:100%;object-fit:contain;box-shadow:6px 12px 22px rgba(11,33,70,.18);border-radius:2px;transition:transform .2s ease}
.resource-cover:hover img{transform:translateY(-4px)}
.resource-book-copy{padding:25px;display:flex;flex-direction:column;flex:1;min-width:0}
.resource-badges{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:14px}.resource-level{padding:3px 11px;background:var(--blue);color:white;border-radius:6px;font-size:.8rem;font-weight:800;letter-spacing:.03em}.resource-new{font-size:.7rem;color:#486273;background:#edf4f6;padding:3px 9px;border-radius:5px}
.resource-book h3{font-family:Georgia,serif;color:var(--blue);font-size:1.65rem;line-height:1.2;margin:0 0 9px;letter-spacing:-.025em;overflow-wrap:anywhere}
.resource-japanese-title{font-weight:800;font-size:.94rem;line-height:1.65;margin:0 0 15px}.resource-description{font-size:.87rem;line-height:1.95;margin:0 0 12px;color:#425267}.resource-features{list-style:none;padding:0;margin:0 0 16px;font-size:.8rem;color:#405269}.resource-features li::before{content:'✓';color:#27736a;margin-right:7px}
.resource-file-info{font-size:.74rem;color:var(--muted);margin:auto 0 14px;padding-top:5px}.resource-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.resource-actions .button{font-size:.82rem;padding:.65rem 1rem;gap:16px}.resource-save{font-size:.8rem;font-weight:700;text-underline-offset:4px;color:var(--blue)}
.resource-book-note{font-size:.72rem;line-height:1.8;color:#5b6878;margin:16px 0 0}.resource-date{font-size:.66rem;color:var(--muted);margin:10px 0 0}
.resource-featured .resource-cover{background:linear-gradient(135deg,#eef3f6,#e1e9ef);padding:29px}.resource-featured .resource-cover img{height:355px}
.resource-featured h3{font-size:2rem}.resource-featured .resource-description{font-size:.94rem}
.resource-guidance{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:28px;padding:23px 28px;border:1px solid #d8e4eb;border-radius:14px;background:#f3f7fa}.resource-guidance strong{color:var(--blue);font-size:1.02rem}.resource-guidance p{font-size:.85rem;line-height:1.85;margin:5px 0 0;max-width:750px}.resource-guidance>a{white-space:nowrap;font-size:.84rem}
.resource-study-tips{padding-left:1.4em;line-height:2.2;font-size:.95rem}.resource-audio-note{font-size:.77rem;line-height:1.9;opacity:.8}.resource-related{display:flex;gap:18px;flex-wrap:wrap;font-size:.8rem;margin-top:13px}.resource-related a{text-underline-offset:4px}
.resource-page section[id]{scroll-margin-top:95px}
@media(min-width:1250px){.resource-featured{display:grid;grid-template-columns:190px minmax(0,1fr)}.resource-featured .resource-cover{padding:20px 14px;border-bottom:0;border-right:1px solid var(--line);align-items:flex-start;padding-top:37px}.resource-featured .resource-cover img{height:auto;width:160px}.resource-featured .resource-book-copy{padding:27px 24px}.resource-featured h3{font-size:1.9rem}}
@media(max-width:1000px){.resource-hero-grid{grid-template-columns:1fr;gap:25px}.resource-start{max-width:680px}.resource-book-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.resource-book-grid .resource-book:last-child{grid-column:auto}.resource-guidance{align-items:flex-start;flex-direction:column;gap:14px}}
@media(max-width:640px){.resource-hero{padding:28px 0 33px}.resource-hero h1{font-size:2rem}.resource-start{padding:16px 19px}.resource-jump{gap:8px}.resource-jump a{padding:8px 12px;font-size:.76rem}.resource-feature-grid,.resource-book-grid{grid-template-columns:1fr;gap:22px}.resource-cover img,.resource-featured .resource-cover img{height:310px}.resource-book-copy{padding:23px}.resource-featured h3{font-size:1.9rem}.resource-guidance{padding:20px}.resource-page .section-head{gap:15px}.resource-page .section{padding-top:45px;padding-bottom:45px}}
@media(prefers-reduced-motion:reduce){.resource-cover img{transition:none}.resource-cover:hover img{transform:none}}
