:root{
  --navy:#142b44; --navy-2:#234965; --bronze:#9a744e; --gold:#c6a15b;
  --ivory:#f6f2e9; --paper:#fffdf9; --ink:#1d2832; --muted:#66717b; --line:#ddd5c7;
  --shadow:0 18px 50px rgba(20,43,68,.10); --radius:18px; --max:1180px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.6}
a{color:inherit}.wrap{width:min(var(--max),calc(100% - 40px));margin:auto}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:16px;top:16px;z-index:999;background:#fff;padding:10px 14px}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,253,249,.96);backdrop-filter:blur(10px);border-bottom:1px solid rgba(154,116,78,.24)}.nav-wrap{display:flex;align-items:center;justify-content:space-between;min-height:78px;gap:24px}.brand{display:flex;gap:12px;align-items:center;text-decoration:none}.brand img{width:54px;height:54px;object-fit:contain}.brand strong{font-family:"Libre Baskerville",Georgia,serif;color:var(--navy);font-size:1.23rem;display:block;line-height:1.05}.brand small{display:block;color:var(--bronze);text-transform:uppercase;letter-spacing:.12em;font-size:.66rem;margin-top:5px}.primary-nav{display:flex;align-items:center;gap:22px}.primary-nav a{text-decoration:none;font-weight:650;font-size:.92rem;padding:8px 0;border-bottom:2px solid transparent}.primary-nav a:hover,.primary-nav a.active{color:var(--navy);border-color:var(--gold)}.primary-nav .nav-cta{border:0;background:var(--navy);color:#fff;padding:10px 16px;border-radius:999px}.menu-toggle{display:none;border:1px solid var(--line);background:#fff;padding:9px 12px;border-radius:10px;font-weight:700}
.hero{background:linear-gradient(135deg,var(--ivory),#fff);padding:58px 0 50px;border-bottom:1px solid var(--line)}.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:48px;align-items:center}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.76rem;color:var(--bronze);font-weight:800;margin:0 0 12px}.hero h1,.page-hero h1,.section-title{font-family:"Libre Baskerville",Georgia,serif;color:var(--navy);line-height:1.1}.hero h1{font-size:clamp(2.6rem,5vw,5rem);margin:.15em 0 .32em}.hero-lead{font-size:1.16rem;max-width:680px}.hero-media{position:relative}.hero-media img{width:100%;display:block;border-radius:28px;box-shadow:var(--shadow);aspect-ratio:4/3;object-fit:cover}.hero-badge{position:absolute;left:-20px;bottom:24px;background:var(--navy);color:#fff;padding:15px 20px;border-radius:14px;box-shadow:var(--shadow);max-width:260px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0}.button{display:inline-block;text-decoration:none;border-radius:999px;padding:12px 20px;font-weight:800;border:1px solid transparent}.button.primary{background:var(--navy);color:#fff}.button.secondary{background:var(--bronze);color:#fff}.button.ghost{border-color:var(--navy);color:var(--navy);background:transparent}.button:hover{transform:translateY(-1px)}
.page-hero{padding:56px 0 44px;background:linear-gradient(125deg,var(--navy),var(--navy-2));color:#fff}.page-hero .eyebrow{color:#e1c597}.page-hero h1{color:#fff;font-size:clamp(2.2rem,4vw,4rem);margin:.15em 0}.page-hero p{max-width:800px;font-size:1.08rem;color:#f1eee8}.section{padding:66px 0}.section.alt{background:var(--ivory)}.section-title{font-size:clamp(2rem,3vw,3.1rem);margin:.15em 0 .5em}.section-lead{font-size:1.1rem;color:#48545f;max-width:800px}.centered{text-align:center;margin-left:auto;margin-right:auto}.three-col{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.two-col{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card,.panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:25px;box-shadow:0 10px 30px rgba(20,43,68,.05)}.card h3,.panel h3{font-family:"Libre Baskerville",Georgia,serif;color:var(--navy);margin-top:0}.mission-card{border-top:5px solid var(--bronze)}.outcomes-list{padding-left:20px}.outcomes-list li{margin:10px 0}.status-band{padding:24px 0;background:var(--navy);color:#fff}.status-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:26px;align-items:center}.status-grid p{margin:0}.status-grid strong{color:#f1d7aa}.timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;position:relative;margin-top:34px}.timeline:before{content:"";position:absolute;left:8%;right:8%;top:13px;height:3px;background:linear-gradient(90deg,var(--bronze),var(--gold),var(--bronze));z-index:0}.milestone{position:relative;text-align:center;padding-top:30px}.milestone .dot{width:18px;height:18px;border-radius:50%;background:var(--paper);border:4px solid var(--bronze);position:absolute;top:5px;left:calc(50% - 9px);z-index:2}.milestone strong{display:block;color:var(--navy);font-family:"Libre Baskerville",Georgia,serif;font-size:1.5rem}.milestone span:last-child{color:var(--muted);font-size:.9rem}
.year-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.year-card{background:#fff;border:1px solid var(--line);border-top:5px solid var(--bronze);border-radius:16px;padding:20px}.year-card .year{color:var(--bronze);font-weight:900;font-size:.8rem;letter-spacing:.12em;text-transform:uppercase}.year-card h3{font-family:"Libre Baskerville",Georgia,serif;color:var(--navy);font-size:1.4rem}.course-list{padding-left:19px;margin-bottom:0}.course-list li{margin:7px 0}.highlight-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.highlight{padding:20px;border-left:4px solid var(--gold);background:#fff;border-radius:0 14px 14px 0}.highlight strong{display:block;color:var(--navy);margin-bottom:5px}
.mascot-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:42px;align-items:center}.mascot-card{background:#fff;border:1px solid var(--line);border-radius:28px;padding:22px;box-shadow:var(--shadow)}.mascot-card img{width:100%;display:block}.mascot-caption{margin-top:14px;background:var(--navy);color:var(--gold);font-family:"Libre Baskerville",Georgia,serif;font-weight:700;letter-spacing:.10em;text-align:center;padding:14px 12px;border-radius:12px;text-transform:uppercase;font-size:1.18rem}.sport-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.sport{padding:18px 12px;text-align:center;background:#fff;border:1px solid var(--line);border-radius:14px;font-weight:800;color:var(--navy)}.sport small{display:block;font-weight:500;color:var(--muted);margin-top:5px}.partnership{background:linear-gradient(135deg,#f1eadf,#fff);border:1px solid #ddcfbc;border-radius:20px;padding:25px}
.life-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.life-card{padding:24px;border-radius:18px;background:#fff;border:1px solid var(--line)}.life-card h3{color:var(--navy);font-family:"Libre Baskerville",Georgia,serif}.house-band{background:var(--navy);color:#fff;border-radius:24px;padding:32px}.house-band h2{color:#fff}.house-band p{color:#e9edf0}
.tuition-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.number-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:26px;text-align:center}.number-card span{display:block;color:var(--muted);font-weight:700}.number-card strong{display:block;font-family:"Libre Baskerville",Georgia,serif;color:var(--navy);font-size:2.5rem;margin:8px 0}.number-card.emphasis{border:2px solid var(--bronze);transform:translateY(-5px)}.aid-list{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:24px}.aid-item{padding:18px;background:var(--ivory);border-radius:14px}.notice{padding:18px 20px;border-left:5px solid var(--gold);background:#fff9ed;border-radius:0 12px 12px 0}
.involvement-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:34px}.interest-form{background:#fff;border:1px solid var(--line);border-radius:22px;padding:26px;box-shadow:var(--shadow)}fieldset{border:0;padding:0;margin:0 0 24px}legend{font-weight:850;color:var(--navy);margin-bottom:10px}.checks{display:grid;grid-template-columns:1fr 1fr;gap:8px 18px}.checks label{display:flex;gap:8px;align-items:flex-start}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}label{font-weight:650;font-size:.92rem}input,select,textarea{width:100%;font:inherit;padding:11px 12px;border:1px solid #cfc7b9;border-radius:10px;background:#fff;margin-top:5px}input[type=checkbox]{width:auto;margin-top:4px}.student-box{border:1px dashed #cdbb9f;padding:15px;border-radius:12px;margin:10px 0;background:#fffdfa}.student-box.hidden{display:none}.student-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-note{font-size:.8rem;color:var(--muted)}
.download-card{display:flex;justify-content:space-between;gap:20px;align-items:center;background:var(--navy);color:#fff;padding:24px;border-radius:18px}.download-card h3{margin:0;color:#fff;font-family:"Libre Baskerville",Georgia,serif}.download-card p{margin:4px 0 0;color:#e8edf1}.download-card .button{background:#fff;color:var(--navy);white-space:nowrap}
.description-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.course-desc{border:1px solid var(--line);border-radius:16px;padding:20px;background:#fff}.course-desc h3{color:var(--navy);font-family:"Libre Baskerville",Georgia,serif;margin:0 0 8px}.course-desc .tag{display:inline-block;background:var(--ivory);color:var(--bronze);font-weight:800;font-size:.75rem;padding:4px 8px;border-radius:999px;margin-bottom:8px}
.site-footer{background:#0f2235;color:#dce3e8;padding:42px 0 20px;margin-top:0}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr .8fr;gap:28px;align-items:start}.footer-brand{display:flex;gap:12px;align-items:center}.footer-brand img{width:122px;height:145px;object-fit:contain;flex:0 0 auto}.footer-brand{align-items:center;gap:22px}.footer-brand strong{display:block;color:#fff;font-family:"Libre Baskerville",Georgia,serif}.footer-brand span{display:block;color:#c8aa7c;font-size:.8rem}.site-footer nav{display:flex;flex-direction:column;gap:6px}.site-footer a{color:#e5e9ec;text-decoration:none}.footer-bottom{border-top:1px solid rgba(255,255,255,.15);padding-top:18px;margin-top:28px;font-size:.8rem;color:#aeb9c2}.small{font-size:.84rem;color:var(--muted)}
@media(max-width:960px){.primary-nav{display:none;position:absolute;top:78px;left:0;right:0;background:#fff;padding:18px 25px;box-shadow:var(--shadow);flex-direction:column;align-items:flex-start}.primary-nav.open{display:flex}.menu-toggle{display:block}.hero-grid,.status-grid,.mascot-grid,.involvement-grid{grid-template-columns:1fr}.three-col,.cards,.highlight-grid,.life-grid,.tuition-grid{grid-template-columns:1fr 1fr}.year-grid{grid-template-columns:1fr 1fr}.sport-grid{grid-template-columns:repeat(3,1fr)}.hero-badge{left:12px}.footer-grid{grid-template-columns:1fr}.timeline{grid-template-columns:repeat(2,1fr)}.timeline:before{display:none}}
@media(max-width:640px){.footer-brand img{width:92px;height:110px}.wrap{width:min(100% - 28px,var(--max))}.hero{padding-top:34px}.three-col,.cards,.highlight-grid,.life-grid,.tuition-grid,.year-grid,.sport-grid,.description-grid,.aid-list{grid-template-columns:1fr}.two-col,.form-grid,.checks,.student-row{grid-template-columns:1fr}.timeline{grid-template-columns:1fr}.brand small{display:none}.download-card{align-items:flex-start;flex-direction:column}}

.preview-note{background:#fff8e8;border-bottom:1px solid #e5d5b8;padding:10px 16px;text-align:center;font-size:.86rem;color:#665b4b}
.preview-page{display:none}.preview-page.active{display:block}
.preview-nav a.active{color:var(--navy);border-color:var(--gold)}
