/* My Study Fund college page. Tokens from mystudyfund.com src/index.css:
   --primary 210 100% 20% (navy #003366), --gold 40 78% 57%, --ice 200 50% 96%, system sans. */
:root{--navy:#003366;--navy-2:#0b2a4a;--gold:#e5ad3b;--gold-d:#c48d1f;--ice:#eef6fa;--ink:#111827;--mute:#4b5563;--line:#e5e7eb;--ok:#2e8b57}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:#fafafa;color:var(--ink);font:16px/1.6 ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}
a{color:#1d4ed8}
.top{display:flex;align-items:center;gap:24px;padding:18px 32px;background:#fff;border-bottom:1px solid var(--line)}
.logo{display:flex;align-items:center;gap:8px;font-weight:800;color:var(--navy-2);text-decoration:none;font-size:20px}.logo b{color:var(--gold)}
.logo-book{width:30px;height:24px;background:var(--navy);border-radius:3px 3px 6px 6px;box-shadow:inset -15px 0 0 #1c4f86}
.top nav{display:flex;gap:28px;margin:0 auto;color:#36597e}.top nav a{color:inherit;text-decoration:none}
.btn-navy{background:var(--navy);color:#fff;padding:9px 18px;border-radius:999px;font-weight:700;text-decoration:none}
main{max-width:1120px;margin:0 auto;padding:0 24px 64px}
.crumbs{font-size:14px;color:var(--mute);padding:20px 0 4px}.crumbs a{color:var(--mute)}
.hero{display:grid;grid-template-columns:1.35fr 1fr;gap:40px;align-items:start;padding:12px 0 36px}
.kicker{color:var(--gold-d);font-weight:700;margin:0 0 6px}
h1{font-size:46px;line-height:1.08;letter-spacing:-.02em;margin:0 0 16px;color:var(--navy-2)}
.lede{font-size:19px;color:#374151;margin:0 0 22px}.lede b{color:var(--navy)}
.facts{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;list-style:none;margin:0;padding:0}
.facts li{background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px}.facts b{display:block;font-size:22px;color:var(--navy)}.facts span{font-size:13px;color:var(--mute);line-height:1.3;display:block}
.gapcard{background:var(--navy);color:#fff;border-radius:18px;padding:24px;position:sticky;top:16px}
.gc-h{font-weight:800;font-size:20px;margin:0 0 12px}.gc-l{font-size:13px;opacity:.8}
.gapcard select{width:100%;margin:4px 0 14px;padding:10px;border-radius:10px;border:0;font-size:16px}
.gapcard dl{margin:0}.gapcard dl div{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.15);font-size:15px}
.gapcard dt{opacity:.85}.gapcard dd{margin:0;font-weight:700;white-space:nowrap}
.gc-total{border-bottom:0!important;font-size:18px!important}.gc-total dd{color:var(--gold);font-size:24px}
.gc-cta-t{margin:6px 0 14px}.gc-cta-t b{color:var(--gold)}
.btn-gold{display:block;text-align:center;background:var(--gold);color:var(--navy-2);font-weight:800;padding:13px;border-radius:999px;text-decoration:none;cursor:pointer}
.gc-note{font-size:12px;opacity:.75;margin:12px 0 0}.gc-note a{color:#cfe6ff}
.block{padding:30px 0;border-top:1px solid var(--line)}
h2{font-size:28px;letter-spacing:-.01em;color:var(--navy-2);margin:0 0 6px}.sub{color:var(--mute);margin:0 0 18px}
.bands{display:grid;gap:8px}
.band{display:grid;grid-template-columns:110px 1fr 90px;align-items:center;gap:14px;width:100%;background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px 14px;font:inherit;cursor:pointer;text-align:left}
.band-l{font-weight:600;color:#374151}.band-bar{height:12px;background:var(--ice);border-radius:99px;overflow:hidden}.band-bar i{display:block;height:100%;width:var(--w);background:#7fb8dc;border-radius:99px}
.band-v{font-weight:800;text-align:right;color:var(--navy)}
.band.on{border-color:var(--navy);box-shadow:0 0 0 2px var(--navy) inset}.band.on .band-bar i{background:var(--navy)}
.aside{font-size:14px;color:var(--mute)}
.sources{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.sources .src{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px}
.src b{display:block;font-size:30px;color:var(--navy);line-height:1.1}.src span{display:block;font-weight:600;margin:4px 0}.src em{font-style:normal;color:var(--mute);font-size:14px}.src.loan b{color:#9a6a0e}.sources.three{grid-template-columns:repeat(3,1fr)}
.grants{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.grant{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;display:flex;flex-direction:column}
.grant-tag{font-size:12px;font-weight:700;color:var(--ok);text-transform:none}
.grant h3{margin:4px 0;font-size:19px;color:var(--navy-2)}.grant-amt{font-weight:800;color:var(--navy);margin:0 0 6px}.grant p{margin:0 0 8px;font-size:15px}.grant a{margin-top:auto;font-weight:600}
.two{display:grid;grid-template-columns:1fr 1fr;gap:40px}
.t{border-collapse:collapse;width:100%;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}.t th,.t td{padding:12px 14px;border-bottom:1px solid var(--line);text-align:left}.t td{text-align:right;font-weight:700;color:var(--navy)}
.big{font-size:40px;font-weight:800;color:var(--navy);margin:4px 0}.big small{font-size:15px;font-weight:500;color:var(--mute);margin-left:6px}
.cta{display:flex;gap:32px;align-items:center;justify-content:space-between;background:var(--ice);border-radius:18px;padding:28px 32px;margin:16px 0}
.cta p{margin:6px 0 0;color:#374151;max-width:640px}.cta .btn-gold{white-space:nowrap;padding:13px 26px}
details{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 18px;margin:8px 0}summary{font-weight:700;cursor:pointer;color:var(--navy-2)}details p{margin:8px 0 0;color:#374151}
.srcs h3{margin:0 0 6px}.srcs p{font-size:14px;color:var(--mute)}.rel a{color:#1d4ed8}
.foot{text-align:center;color:var(--mute);font-size:14px;padding:30px}
@media (max-width:900px){.hero,.two{grid-template-columns:1fr}.gapcard{position:static}.sources,.grants{grid-template-columns:1fr 1fr}.top nav{display:none}h1{font-size:36px}}
@media (max-width:560px){main{padding:0 16px 48px}.top{padding:14px 16px}.facts{grid-template-columns:1fr 1fr}.sources,.sources.three{grid-template-columns:1fr 1fr}.grants{grid-template-columns:1fr}.src b{font-size:24px}.band{grid-template-columns:84px 1fr 76px;gap:10px}.cta{flex-direction:column;align-items:stretch}h1{font-size:31px}}
.logo img{display:block;height:40px;width:auto}
.hub-hero{padding:16px 0 26px}.hub-hero h1{max-width:820px}
.list{list-style:none;padding:0;margin:0}.list li{padding:6px 0;border-bottom:1px solid var(--line)}.list small{color:var(--mute);margin-left:6px}
.list.cols{columns:2;column-gap:32px}.list.cols li{break-inside:avoid}
.scroll{overflow-x:auto}.t.hub th{background:#f1f5f9;font-size:13px;color:var(--mute);text-align:left}.t.hub td{text-align:right;white-space:nowrap}.t.hub td:first-child{text-align:left;font-weight:600;color:var(--ink);white-space:normal}
.t.hub td small{display:block;font-weight:400;color:var(--mute);font-size:13px}
.foot nav{margin-bottom:6px}.foot a{color:var(--mute)}
@media (max-width:560px){.list.cols{columns:1}.t.hub th,.t.hub td{padding:9px 8px;font-size:14px}}
