
:root{
  --blue:#082f59;--deep:#041d38;--blue2:#0f467d;--red:#b51f26;
  --ice:#eef4f8;--white:#fff;--ink:#102030;--muted:#617184;
  --shadow:0 18px 55px rgba(4,29,56,.14)
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#fff}
img{max-width:100%;display:block}
a{color:inherit}
.wrap{width:min(1160px,calc(100% - 40px));margin:auto}
.topbar{position:absolute;z-index:10;left:0;right:0;top:0;padding:22px 0}
.nav{display:flex;align-items:center;justify-content:space-between;gap:24px}
.nav-logo{width:122px;background:#fff;border-radius:10px;padding:7px;box-shadow:0 10px 28px rgba(0,0,0,.18)}
.nav-links{display:flex;align-items:center;gap:24px;color:#fff;font-weight:700;font-size:14px}
.nav-links a{text-decoration:none;opacity:.92}
.nav-links a:hover{opacity:1}
.nav-call{background:var(--red);padding:12px 16px;border-radius:8px}
.hero{min-height:92vh;display:flex;align-items:center;position:relative;color:#fff;background:url('assets/hero.jpg') center/cover no-repeat;border-bottom:7px solid var(--red)}
.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,29,56,.97) 0%,rgba(8,47,89,.82) 42%,rgba(8,47,89,.20) 74%,rgba(4,29,56,.05) 100%)}
.hero .wrap{position:relative;z-index:2}
.hero-copy{max-width:720px;padding:150px 0 85px}
.eyebrow,.kicker{text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:900}
.eyebrow{color:#dce8f4}
.kicker{color:var(--red)}
h1,h2,h3{margin-top:0}
h1{font-size:clamp(50px,7vw,92px);line-height:.94;letter-spacing:-.055em;margin-bottom:26px}
h2{font-size:clamp(34px,4.4vw,58px);line-height:1.02;letter-spacing:-.045em;margin-bottom:22px;color:var(--deep)}
h3{font-size:22px;letter-spacing:-.02em}
.lead{font-size:clamp(19px,2vw,25px);line-height:1.5;color:#e8eef5;max-width:670px}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}
.btn{display:inline-block;text-decoration:none;font-weight:900;padding:16px 22px;border-radius:9px}
.btn-red{background:var(--red);color:#fff}
.btn-white{background:#fff;color:var(--blue)}
.trust{display:flex;gap:24px;flex-wrap:wrap;margin-top:30px;color:#d8e4ef;font-size:14px;font-weight:700}
section{padding:88px 0}
.alt{background:var(--ice)}
.blue{background:linear-gradient(135deg,var(--deep),var(--blue) 62%,var(--blue2));color:#fff}
.blue h2,.blue h3{color:#fff}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.copy{font-size:18px;line-height:1.75;color:var(--muted)}
.blue .copy{color:#d0dce8}
.photo{border-radius:18px;box-shadow:var(--shadow);width:100%;height:auto}
.photo-tall{aspect-ratio:4/3;object-fit:cover}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:34px}
.card{background:#fff;border:1px solid #dbe4ec;border-radius:16px;padding:26px;box-shadow:0 10px 32px rgba(4,29,56,.06)}
.blue .card{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.15);box-shadow:none}
.blue .card p{color:#cbd8e6}
.gallery{display:grid;grid-template-columns:1.1fr .9fr .9fr;grid-template-rows:240px 240px;gap:14px}
.gallery figure{margin:0;overflow:hidden;border-radius:16px;position:relative;background:#dce7ef}
.gallery figure:first-child{grid-row:1/3}
.gallery img{width:100%;height:100%;object-fit:cover}
.gallery figcaption{position:absolute;left:0;right:0;bottom:0;padding:32px 16px 14px;color:#fff;font-weight:900;background:linear-gradient(transparent,rgba(4,29,56,.86))}
.student-band{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center}
.student-image{border-radius:18px;box-shadow:var(--shadow);width:100%;aspect-ratio:4/3;object-fit:cover}
.local-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.pill{padding:9px 12px;border-radius:999px;background:#e6eef5;color:var(--blue);font-size:14px;font-weight:800;text-decoration:none}
.cta{text-align:center;max-width:780px;margin:auto}
.cta .actions{justify-content:center}
.footer{background:var(--deep);color:#b8c7d6;padding:34px 0}
.footer-in{display:flex;justify-content:space-between;gap:22px;flex-wrap:wrap;font-size:14px}
.subhero{background:linear-gradient(135deg,var(--deep),var(--blue));color:#fff;padding:150px 0 80px}
.subhero h1{font-size:clamp(42px,6vw,72px);max-width:900px}
.subhero .lead{max-width:800px}
.breadcrumbs{font-size:14px;color:#c9d7e4;margin-bottom:18px}
.breadcrumbs a{text-decoration:none;color:#fff}
.content-narrow{max-width:850px}
.content-narrow h2{margin-top:48px}
.faq{display:grid;gap:12px;margin-top:28px}
.faq details{border:1px solid #dbe4ec;border-radius:12px;padding:17px 18px;background:#fff}
.faq summary{font-weight:900;cursor:pointer}
.faq p{color:var(--muted);line-height:1.65}
@media(max-width:820px){
  .nav-links a:not(.nav-call){display:none}
  .grid2,.student-band{grid-template-columns:1fr}
  .cards{grid-template-columns:1fr}
  .gallery{grid-template-columns:1fr 1fr;grid-template-rows:260px 180px 180px}
  .gallery figure:first-child{grid-column:1/3;grid-row:auto}
  .hero{min-height:88vh;background-position:58% center}
  .hero:before{background:linear-gradient(0deg,rgba(4,29,56,.97),rgba(8,47,89,.45))}
  section{padding:66px 0}
}
