html{scroll-behavior:smooth}
section[id]{scroll-margin-top:96px}
.hero{min-height:calc(100svh - 96px)}
.hero .proof{flex-wrap:wrap;gap:10px 22px;line-height:1.35}
.hero .lead{font-size:1.15rem;line-height:1.55}
.difference .section-head p+p{margin-top:16px}
.difference .professional-graphic{align-self:center}
.content-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.content-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.content-grid article{min-width:0;padding:25px;background:#fff;border:1px solid var(--line);border-radius:8px}
.content-grid h3,.content-grid h4{font:700 1.15rem/1.3 "DM Sans",sans-serif;margin:0 0 10px}
.content-grid h4{color:var(--navy)}
.content-grid p{margin:0;line-height:1.5}
.content-grid .eyebrow{margin-bottom:12px}
.section-footnote{max-width:900px;margin:25px 0 0;line-height:1.55;color:#48657a}
.cycle-across{margin:36px 0 0;padding:22px 26px;border-left:5px solid var(--teal);background:#fff;max-width:1000px}
.curriculum{background:#fff}
.curriculum .section-head,.participation .section-head,.subscription .section-head,.school-pathway .section-head,.professional-learning .section-head,.partners .section-head,.faq .section-head{max-width:900px}
.curriculum h3{margin:45px 0 20px}
.table-scroll{overflow-x:auto}
.curriculum table{border-collapse:collapse;width:100%;min-width:560px;text-align:left}
.curriculum caption{text-align:left;font:700 1.2rem "DM Sans",sans-serif;margin-bottom:14px}
.curriculum th,.curriculum td{padding:15px 18px;border-bottom:1px solid var(--line);vertical-align:top}
.curriculum thead{background:var(--navy);color:#fff}
.curriculum tbody th{color:var(--navy)}
.curriculum tbody tr:nth-child(even){background:#f5fbfa}
.source-note{margin-top:24px;font-size:14px}
.participation{background:var(--mint)}
.role-list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.role-list div{padding:19px;border-top:3px solid var(--navy);background:#fff}
.role-list b,.role-list span{display:block}
.role-list b{margin-bottom:7px;color:var(--navy)}
.role-list span{font-size:15px;line-height:1.45}
.technology .professional-graphic{max-width:none}
.subscription{background:#f5fbfa}
.subscription .content-grid article{border-top:4px solid var(--teal)}
.school-pathway{background:var(--mint)}
.pathway-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.pathway-grid article{padding:26px;background:#fff;border:1px solid var(--line);border-radius:8px}
.pathway-grid span{font-weight:700;color:var(--coral)}
.pathway-grid h3{margin:8px 0;font:700 1.35rem "DM Sans",sans-serif}
.pathway-grid p{margin:0}
.funding{display:flex;gap:40px;align-items:center;justify-content:space-between;margin-top:38px;padding:28px 0;border-top:2px solid var(--navy)}
.funding>div{max-width:780px}
.funding h3{margin:6px 0 12px;font-size:1.75rem}
.funding .button{flex-shrink:0}
.funding .fine{font-size:14px}
.professional-learning .content-grid article{background:var(--cream)}
.text-link{display:inline-block;margin-top:22px;font-weight:700}
.research-grid article{border-left:4px solid var(--teal)}
.partners{background:var(--navy);color:#fff}
.partners .eyebrow{color:var(--yellow)}
.partners .content-grid{margin-bottom:28px}
.partners .content-grid article{color:var(--ink)}
.partners .button{color:#fff;border-color:#fff}
.faq{background:#f5fbfa}
.faq-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px}
.faq-grid details{padding:19px 0;border-top:1px solid var(--line)}
.faq-grid summary{cursor:pointer;font-weight:700;line-height:1.4}
.faq-grid details p{margin:12px 0 0;line-height:1.5}
.faq-grid summary:focus-visible{outline:3px solid var(--teal)}
.fit-checker .choice-grid label span{height:100%;display:flex;align-items:center}
footer{gap:20px;flex-wrap:wrap}
footer p{margin:0;font-size:14px}
@media(max-width:1100px){.content-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}.role-list{grid-template-columns:repeat(3,minmax(0,1fr))}.site-header nav{gap:15px;font-size:14px}}
@media(max-width:900px){.content-grid,.pathway-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.funding{align-items:flex-start;flex-direction:column;gap:10px}.faq-grid{grid-template-columns:1fr}.site-header nav{gap:22px;font-size:16px}}
@media(max-width:580px){.hero{min-height:auto}.content-grid,.content-grid.four,.pathway-grid,.role-list{grid-template-columns:1fr}.content-grid article,.pathway-grid article{padding:20px}.funding h3{font-size:1.4rem}.curriculum th,.curriculum td{padding:12px}.cycle-across{padding:18px}.site-header nav{max-height:calc(100svh - 80px);overflow-y:auto}footer{align-items:flex-start}}
