:root{--ink: #1d1d1d;--muted: #4d4d4d;--paper: #f6f4ee;--card: #ffffff;--brand: #37b5fd;--brand-dark: #0c7ab8;--line: #e4e0d6;--serif: "DM Serif Display", Georgia, serif;--sans: Poppins, "Segoe UI", sans-serif}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--sans);font-size:16px;line-height:1.6}a{color:var(--brand-dark)}img{max-width:100%;display:block}h1,h2,h3,h4,h5,h6{font-family:var(--serif);font-weight:400;line-height:1.2;margin:.6em 0 .3em}h1{font-size:clamp(2rem,4vw,3.3rem)}h2{font-size:clamp(1.6rem,3vw,2.3rem)}.site-header{display:flex;align-items:center;gap:1.25rem;padding:.8rem 1.5rem;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}.brand img{height:52px;width:auto}.main-nav{display:flex;flex-wrap:wrap;gap:.75rem 1rem;flex:1}.main-nav a{color:var(--ink);text-decoration:none;font-size:.92rem;font-weight:500}.main-nav a.active{color:var(--brand-dark)}.login-control{background:var(--brand);color:#fff;text-decoration:none;font-weight:600;padding:.65rem 1rem;border-radius:999px;white-space:nowrap}main{padding:1.5rem clamp(1rem,4vw,4rem) 3rem}.page{max-width:1100px;margin:0 auto}.page>p{max-width:72ch}.eyebrow{letter-spacing:.08em;text-transform:uppercase;font-family:var(--sans);font-size:.78rem;font-weight:600;color:var(--brand-dark)}.btn,button,.referral-form button,.login-panel button,.hub-bar button{background:var(--brand);color:#fff;border:0;border-radius:999px;padding:.7rem 1.1rem;font:600 .95rem var(--sans);text-decoration:none;display:inline-block;cursor:pointer}.card-grid,.stat-grid,.pupil-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin:1.25rem 0}.info-card,.stat,.pupil-card,.login-panel,.referral-form{background:var(--card);border-radius:16px;padding:1rem;box-shadow:0 8px 24px #1d1d1d0f}.info-card{color:inherit;text-decoration:none;display:block}.info-card img,figure img{border-radius:12px;width:100%;object-fit:cover;max-height:280px}.stat-value{font-family:var(--serif);font-size:2.4rem;color:var(--brand-dark);margin:0}.policy-list{columns:2;padding-left:1.1rem}.site-footer{background:#173246;color:#f6f4ee;display:grid;grid-template-columns:1fr 2fr;gap:1rem;padding:2rem clamp(1rem,4vw,4rem)}.site-footer a{color:#d7f1ff;margin-right:.8rem;display:inline-block}.login-panel,.referral-form{max-width:560px;margin:1rem auto}label{display:block;font-weight:600;margin:.7rem 0}input,select{display:block;width:100%;margin-top:.3rem;padding:.55rem .7rem;border:1px solid var(--line);border-radius:8px;font:inherit}.form-error{color:#9d1c1c}.form-ok{color:#0d6b4c}.demo-note{background:#e8f6ff;padding:.7rem .9rem;border-radius:10px}.hub{min-height:100vh;background:#0e1c24;color:#f4f7f8;padding:1.5rem clamp(1rem,3vw,3rem) 3rem;font-family:var(--sans)}.hub h1,.hub h2,.hub h3{font-family:var(--sans);font-weight:600}.hub-bar{display:flex;justify-content:space-between;align-items:center;gap:1rem}.hub-kicker{margin:0;letter-spacing:.14em;text-transform:uppercase;color:#7ee0d6;font-size:.75rem}.hub h1{margin:0;font-size:2rem}.prototype-banner{background:#14343a;border:1px solid #2a8f86;color:#d9fff8;padding:.8rem 1rem;border-radius:10px}.hub table{width:100%;border-collapse:collapse;background:#132833}.hub th,.hub td{text-align:left;padding:.55rem .7rem;border-bottom:1px solid #244554}.hub th{color:#8fd0ea;font-size:.8rem;letter-spacing:.04em}.pupil-card{background:#132833;color:#f4f7f8}.hub a{color:#9adfff}@media(max-width:800px){.site-header{flex-wrap:wrap}.policy-list{columns:1}.site-footer{grid-template-columns:1fr}}
