:root{--ink:#15283b;--muted:#52677a;--navy:#081a33;--line:#d7e1e8;--yellow:#ffd84d;--bio:#198754;--chem:#b32624;--phys:#1768ac}
.home-skills-link{display:block;width:max-content;margin-top:17px;padding-block:10px;min-height:44px;color:#13263e;font-size:16px;font-weight:650}
*{box-sizing:border-box}[hidden]{display:none!important}html{scroll-padding-top:90px}body{margin:0;background:#f7f9fb;color:var(--ink);font:17px/1.55 system-ui,-apple-system,"Segoe UI",sans-serif;min-height:100vh;display:flex;flex-direction:column}a{color:inherit;text-underline-offset:4px}button{font:inherit;cursor:pointer}a,button{touch-action:manipulation}a:focus-visible,button:focus-visible{outline:3px solid #1676b4;outline-offset:5px}h1:focus{outline:none}.shell{width:min(1040px,calc(100% - 48px));margin-inline:auto}.topbar{background:var(--navy);color:#fff;border-bottom:4px solid var(--yellow)}.header-inner{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{font-size:24px;font-weight:800;letter-spacing:-.8px;text-decoration:none;white-space:nowrap}.brand span{color:var(--yellow)}.mainnav{display:flex;gap:8px}.mainnav a{font-size:15px;font-weight:750;min-width:56px;min-height:44px;display:grid;place-items:center;text-decoration:none;border-radius:7px;padding:8px 12px}.mainnav a:hover,.mainnav a[aria-current]{background:#243b56;color:var(--yellow)}main.shell{flex:1;padding-block:34px 56px}.view-heading{margin-bottom:34px}.eyebrow{font-size:13px;text-transform:uppercase;letter-spacing:.12em;font-weight:750;color:var(--muted);margin:0 0 12px}h1{font-size:clamp(30px,4vw,44px);line-height:1.15;letter-spacing:-.035em;margin:0 0 14px}.view-heading>p:last-child{margin:0;color:var(--muted);max-width:690px}.breadcrumbs{display:flex;align-items:center;flex-wrap:wrap;gap:12px;font-size:14px;color:var(--muted);margin-bottom:28px}.breadcrumbs a{font-weight:600;padding-block:4px}.subject-tabs{display:flex;gap:12px;margin:0 0 28px;border-bottom:1px solid var(--line)}.biology{--subject:var(--bio);--tint:#edf7f1}.chemistry{--subject:var(--chem);--tint:#fff0ed}.physics{--subject:var(--phys);--tint:#edf4fa}.subject-tab{border:0;border-bottom:3px solid transparent;background:transparent;color:var(--muted);font-weight:750;padding:12px 22px 15px;min-height:52px;margin-bottom:-1px}.subject-tab[aria-selected=true]{border-bottom-color:var(--subject);color:var(--subject)}.subject-tab:hover{background:#edf1f5}.module-panel h2{font-size:19px;margin:0 0 18px;font-weight:650}.module-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.module-link{display:flex;align-items:center;gap:16px;min-height:90px;padding:18px 20px;background:var(--subject);color:#fff;border:1px solid transparent;border-radius:9px;text-decoration:none;box-shadow:0 2px 3px #102a4010;transition:filter .15s,box-shadow .15s}.module-link:hover{filter:brightness(.92);box-shadow:0 4px 9px #102a401c}.module-code{font-size:14px;font-weight:800;color:#fff;background:#ffffff20;border:1px solid #ffffff38;border-radius:6px;min-width:39px;min-height:38px;display:grid;place-items:center}.module-link strong{display:block;font-size:17px;font-weight:650;line-height:1.4}.module-link small{display:block;color:#fff;font-size:14px;margin-top:4px}.arrow{margin-left:auto;color:var(--subject);font-size:21px;padding-left:4px}.course-resources{border-top:1px solid var(--line);margin-top:36px;padding-top:24px}.course-resources h2{font-size:16px;margin:0 0 12px;font-weight:650}.course-resources>div{display:flex;flex-wrap:wrap;gap:8px 30px}.course-resources a{font-size:15px;min-height:44px;display:flex;align-items:center;gap:14px;color:var(--muted)}.page-footer{padding-block:22px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:13px}.skip-link{position:absolute;top:-100px;left:12px;background:white;padding:12px;z-index:10}.skip-link:focus{top:12px}
@media(max-width:650px){.shell{width:calc(100% - 32px)}.header-inner{min-height:72px;gap:10px}.brand{font-size:20px}.mainnav{gap:2px}.mainnav a{min-width:48px;padding:10px;font-size:15px}main.shell{padding-block:28px 45px}.view-heading{margin-bottom:26px}.module-grid{grid-template-columns:1fr}.subject-tabs{gap:0;justify-content:space-between;margin-bottom:22px}.subject-tab{padding:12px 9px;font-size:16px}.module-link{min-height:88px;padding:16px}.module-grid{gap:12px}.breadcrumbs{margin-bottom:24px}.page-footer{flex-direction:column;gap:4px}.course-resources>div{gap:0 22px}}
@media(max-width:360px){.brand{font-size:18px}.mainnav a{min-width:44px;padding:8px}.module-link{gap:11px}.subject-tab{font-size:15px;padding-inline:8px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* A restrained home page: clear resource buttons and parallel course panels. */
html[data-school-navigation]{--home-navy:#13263e}
html[data-school-navigation] body{background:#f4f7fa;color:#172b42}
html[data-school-navigation] .topbar{background:var(--home-navy);border-bottom-width:2px}
html[data-school-navigation] .header-inner{min-height:74px}
html[data-school-navigation] .brand{font-weight:750;letter-spacing:-.055em}
html[data-school-navigation] .mainnav{padding:4px;background:#ffffff0d;border:1px solid #ffffff1f;border-radius:11px;gap:3px}
html[data-school-navigation] .mainnav a{border-radius:7px;font-weight:650;color:#dce5ee}
html[data-school-navigation] .mainnav a[aria-current]{background:#fff;color:#13263e;box-shadow:0 1px 4px #0002}
html[data-school-navigation] .mainnav a:hover{background:#ffffff18;color:#fff}
html[data-school-navigation] .mainnav a[aria-current]:hover{background:#f9f4df;color:#13263e}
html[data-school-navigation] main.shell{padding-block:38px 48px}
.ks4-home{max-width:860px;margin-inline:auto}
.ks4-home .view-heading{margin-bottom:25px}
.ks4-home h1{font-size:clamp(32px,4vw,46px);font-weight:750;letter-spacing:-.045em;margin-bottom:0}
.ks4-home .eyebrow{font-size:14px;letter-spacing:.1em;font-weight:650;margin-bottom:8px;color:#5a6d80}
.main-resources{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 28px}
.main-resources .resource-button{display:flex;align-items:center;justify-content:center;min-height:64px;padding:14px;background:var(--home-navy);color:#fff;border:1px solid var(--home-navy);border-radius:10px;font-size:16px;font-weight:700;line-height:1.35;text-align:center;text-decoration:none;box-shadow:0 3px 0 #172b4208;transition:background .15s,border-color .15s,box-shadow .15s,transform .15s;min-width:0}
.main-resources .resource-button:hover{background:#1c3653;color:#fff;border-color:#1c3653;box-shadow:0 5px 12px #172b4214;transform:translateY(-1px)}
.main-resources .resource-button:active{transform:translateY(1px);box-shadow:none}
.main-resources .resource-button:focus-visible{outline:3px solid #9a7100;outline-offset:4px}
.course-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.course-choice{min-width:0;padding:24px;background:#fff;border:1px solid #d4dee8;border-radius:16px;box-shadow:0 5px 18px #172b4205}
.course-choice h2{font-size:23px;font-weight:700;line-height:1.25;letter-spacing:-.025em;color:#172c46;margin:0 0 18px;padding-bottom:17px;border-bottom:1px solid #e5ebf1}
.subject-choices{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}
.subject-choice{display:flex;align-items:center;justify-content:flex-start;gap:13px;min-height:59px;padding:10px 14px;background:var(--home-navy);color:#fff;border:1px solid var(--home-navy);border-radius:10px;font-size:17px;font-weight:650;line-height:1.3;text-align:left;text-decoration:none;box-shadow:0 2px 0 #172b4204;transition:background .15s,border-color .15s,box-shadow .15s}
.subject-initial{display:grid;place-items:center;flex:none;width:32px;height:32px;border:1px solid #ffffff38;border-radius:8px;background:transparent;color:#fff;font-size:14px;font-weight:800}
.subject-choice:hover{background:#1c3653;color:#fff;border-color:#1c3653;box-shadow:0 3px 8px #172b420b}
.subject-choice:focus-visible{outline:3px solid #9a7100;outline-offset:3px}
html[data-school-navigation] .module-link{background:#fff;color:#172c46;border-color:#c8d5e2;box-shadow:0 2px 5px #172b4208}
html[data-school-navigation] .module-link:hover{background:#edf3f9;filter:none;border-color:#7b91a7}
html[data-school-navigation] .module-code{background:#172c46;border-color:#172c46;color:#fff}
html[data-school-navigation] .module-link small{color:#5a6d80}
html[data-school-navigation] .subject-tab[aria-selected=true]{color:#172c46;border-bottom-color:#172c46}
html[data-school-navigation] .page-footer{font-size:14px;border-top-color:#d9e2eb}
@media(max-width:650px){
 html[data-school-navigation] .header-inner{min-height:64px}
 html[data-school-navigation] main.shell{padding-block:25px 30px}
 html[data-school-navigation] .mainnav{padding:3px;border-radius:9px}
 html[data-school-navigation] .mainnav a{min-height:44px;min-width:44px;padding:7px 9px;font-size:14px}
 .ks4-home .view-heading{margin-bottom:21px}
 .ks4-home h1{font-size:32px}
 .ks4-home .eyebrow{font-size:13px;margin-bottom:7px}
 .main-resources{gap:8px;margin-bottom:21px}
 .main-resources .resource-button{justify-content:center;min-height:60px;padding:10px 6px;border-radius:10px;text-align:center;font-size:14px;font-weight:650;line-height:1.3}
 .course-choices{gap:12px}
 .course-choice{padding:16px 13px;border-radius:13px}
 .course-choice h2{font-size:19px;padding-bottom:13px;margin-bottom:14px}
 .subject-choices{gap:9px}
 .subject-choice{min-height:52px;gap:9px;padding:10px 11px;font-size:16px;border-radius:8px}
 .subject-initial{width:26px;height:26px;font-size:12px;border-radius:6px}
 html[data-school-navigation] .page-footer{font-size:13px;padding-block:18px;gap:3px}
}
@media(max-width:480px){.subject-initial{display:none}.subject-choice{justify-content:center;text-align:center}}
@media(max-width:360px){
 html[data-school-navigation] .shell{width:calc(100% - 24px)}
 html[data-school-navigation] .brand{font-size:18px}
 html[data-school-navigation] .mainnav a{min-width:44px;padding-inline:7px}
 .main-resources{gap:6px}
 .main-resources .resource-button{font-size:14px;padding-inline:5px}
 .course-choices{gap:10px}.course-choice{padding:14px 10px}.course-choice h2{font-size:18px}
 .subject-choice{font-size:15px;padding-inline:7px}
}
/* The paper hub offers two complete clickable choices. */
main.papers-hub{max-width:860px;padding-block:32px 36px}
.papers-hub .view-heading{margin-bottom:22px}
.papers-hub h1{font-size:36px;margin:0}
.paper-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.paper-choice{display:flex;flex-direction:column;justify-content:center;min-height:170px;padding:24px;background:#fff;border:1px solid #d5dee7;border-top:4px solid var(--yellow);border-radius:12px;text-decoration:none;box-shadow:0 3px 10px #132a4206;transition:border-color .15s,background .15s}
.paper-choice h2{font-size:23px;line-height:1.25;letter-spacing:-.025em;font-weight:700;margin:0 0 9px;color:var(--navy)}
.paper-choice p{font-size:16px;line-height:1.45;color:var(--muted);margin:0;max-width:30ch}
.paper-choice:hover{background:#fffbed;border-color:#b79b38}
.paper-choice:focus-visible{outline-color:var(--navy);outline-offset:4px}
@media(max-width:650px){
 main.papers-hub{padding-block:24px}
 .papers-hub .view-heading{margin-bottom:20px}
 .papers-hub h1{font-size:30px}
 .paper-choices{grid-template-columns:1fr;gap:12px}
 .paper-choice{min-height:112px;padding:17px 19px;border-top-width:3px;border-radius:10px}
 .paper-choice h2{font-size:20px;margin-bottom:7px}
 .paper-choice p{font-size:15px;line-height:1.4;max-width:none}
}
@media(max-width:360px){
 .paper-choice{padding:16px;min-height:108px}
 .paper-choice h2{font-size:19px}
}

.course-choice h2,.resource-button>span:last-child,.subject-choice>span:last-child{min-width:0;max-width:100%;overflow-wrap:anywhere}

/* Flashcards join the additional resources without changing the compact top row. */
.home-extra-resources{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px}.home-extra-resources .home-skills-link{margin:0;width:100%;min-width:0;text-align:center}.paper-flashcards-link{display:inline-flex;align-items:center;min-height:44px;padding:10px 14px;margin:0 0 16px;background:#13263e;color:white;border-radius:9px;text-decoration:none;font-weight:650;font-size:14px}.paper-flashcards-link:hover{background:#1c3653}@media(max-width:650px){.home-extra-resources{gap:10px;margin-top:14px}.home-extra-resources .home-skills-link{font-size:14px;min-height:44px}}
.paper-flashcards-links{display:flex;flex-wrap:wrap;gap:8px 12px;margin-bottom:16px}.paper-flashcards-links .paper-flashcards-link{margin:0}
