:root { --navy:#0c2d53; --gold:#b4833c; --cream:#f5f3ee; --ink:#131518; --white:#fff; }
body { --font-serif:"Cormorant Garamond"; --font-sans:"Montserrat"; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:#fff; font-family:var(--font-sans), sans-serif; }
a { color:inherit; text-decoration:none; }
img { display:block; max-width:100%; }
.nav { height:90px; padding:0 clamp(24px,6vw,96px); display:flex; align-items:center; justify-content:space-between; background:white; position:relative; z-index:10; border-bottom:1px solid #e8e5df; }
.nav-brand img { width:230px; height:66px; object-fit:contain; object-position:left center; }
.nav-links { display:flex; gap:38px; align-items:center; }
.nav-links a { font-size:11px; text-transform:uppercase; letter-spacing:.16em; font-weight:600; color:var(--navy); }
.nav-links a:hover { color:var(--gold); }
.nav-links .nav-learn { padding:13px 22px; background:var(--navy); color:white; border:1px solid var(--navy); transition:background-color .2s ease,border-color .2s ease,color .2s ease; }
.nav-links .nav-learn:hover { background:var(--gold); border-color:var(--gold); color:white; }
.hero { min-height:calc(100vh - 90px); background:var(--cream); display:grid; grid-template-columns:1.05fr .95fr; position:relative; overflow:hidden; }
.hero-copy { padding:clamp(70px,9vw,140px) 4vw 80px clamp(28px,8vw,128px); z-index:2; }
.eyebrow,.section-tag { font-size:10px; text-transform:uppercase; letter-spacing:.3em; font-weight:600; color:var(--gold); display:flex; align-items:center; gap:13px; }
.eyebrow span { width:30px; height:1px; background:var(--gold); }
h1,h2,h3,p { margin-top:0; }
h1 { font:500 clamp(54px,6.4vw,100px)/.89 var(--font-serif),serif; color:var(--navy); letter-spacing:-.045em; margin:38px 0 35px; }
h1 em { color:var(--gold); font-weight:400; }
.hero-lead { max-width:600px; font:400 17px/1.85 var(--font-sans),sans-serif; color:#4e5660; }
.text-link { display:inline-flex; align-items:center; gap:15px; margin-top:25px; padding-bottom:8px; border-bottom:1px solid var(--gold); color:var(--navy); font-size:11px; font-weight:600; letter-spacing:.14em; text-transform:uppercase; }
.text-link span { color:var(--gold); font-size:16px; }
.hero-art { background:var(--navy); position:relative; display:flex; align-items:flex-end; justify-content:center; min-height:650px; overflow:hidden; }
.hero-art .student-photo { position:absolute; z-index:2; inset:0; width:100%; height:100%; object-fit:cover; object-position:48% center; }
.hero-art:after { content:""; position:absolute; z-index:2; inset:0; background:linear-gradient(180deg,transparent 48%,rgba(6,29,54,.08) 66%,rgba(6,29,54,.88) 100%); pointer-events:none; }
.gold-orbit { position:absolute; width:68%; aspect-ratio:1; border:1px solid rgba(180,131,60,.55); border-radius:50%; }
.gold-orbit:before,.gold-orbit:after { content:"";position:absolute;border:1px solid rgba(180,131,60,.2);border-radius:50%;inset:9%; }
.gold-orbit:after { inset:19%; }
.staff-lines { position:absolute; inset:15% -10% auto -10%; transform:rotate(-10deg); opacity:.17; }
.staff-lines i { display:block; height:1px; background:white; margin:18px 0; }
.hero-art p { position:absolute; z-index:3; bottom:7%; right:8%; text-align:right; color:white; font:italic 21px/1.4 var(--font-serif),serif; text-shadow:0 2px 16px rgba(0,0,0,.28); }
.hero-art p span { color:#f0cf99; }
.note { position:absolute; color:var(--gold); font:60px var(--font-serif); opacity:.8; }.note-one{top:12%;right:12%}.note-two{bottom:17%;left:11%;font-size:42px}
.hero-index { position:absolute; left:clamp(28px,8vw,128px); bottom:30px; display:flex; align-items:center; gap:8px; color:var(--navy); font-size:9px; letter-spacing:.1em; }
.hero-index i { width:55px; height:1px; background:#a9acaf; }.hero-index b{font-weight:400;color:#969a9e}
.statement { padding:120px clamp(28px,8vw,128px) 130px; text-align:center; }
.section-tag { justify-content:center; margin-bottom:26px; }
.statement h2,.values h2 { font:500 clamp(42px,5.2vw,76px)/1.04 var(--font-serif),serif; color:var(--navy); letter-spacing:-.025em; }
.statement h2 em,.values h2 em { color:var(--gold); font-weight:400; }
.statement-copy { max-width:790px; margin:28px auto 70px; color:#5b6269; font:400 16px/1.9 var(--font-sans),sans-serif; }
.pillars { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid #dedbd5; border-bottom:1px solid #dedbd5; text-align:left; }
.pillar { padding:42px 38px; display:flex; gap:25px; }.pillar+ .pillar{border-left:1px solid #dedbd5}
.pillar-symbol { color:var(--gold); font:36px var(--font-serif); line-height:1; }
.pillar h3 { color:var(--navy); font:600 28px var(--font-serif); margin-bottom:12px; }.pillar p{color:#656a70;font-size:13px;line-height:1.8;margin:0}
.mission { position:relative; isolation:isolate; background:var(--navy); display:grid; grid-template-columns:.8fr 1.2fr; min-height:750px; overflow:hidden; }
.mission-watermark { position:absolute; z-index:0; width:min(82%,720px); height:auto; left:50%; top:50%; transform:translate(-50%,-50%); opacity:.045; pointer-events:none; }
.mission-mark { position:relative; z-index:1; display:flex; align-items:center; justify-content:center; background:rgba(9,39,71,.64); overflow:hidden; }
.mission-mark:after { content:"";position:absolute;width:115%;aspect-ratio:1;border:1px solid rgba(180,131,60,.35);border-radius:50%; }
.mission-mark img { width:78%; max-width:590px; position:relative; z-index:2; }
.mission-content { position:relative; z-index:1; isolation:isolate; overflow:hidden; padding:105px clamp(35px,7vw,110px); }
.mission-content > :not(.mission-watermark) { position:relative; z-index:1; }
.section-tag.light{color:#d5ac6f;justify-content:flex-start}
.mission-content article { display:grid;grid-template-columns:64px 1fr;gap:25px;padding:45px 0;border-bottom:1px solid rgba(255,255,255,.16); }
.mission-content article>span { color:var(--gold);font:italic 52px var(--font-serif); }
.mission-content h2 { color:white;font:500 47px var(--font-serif);margin-bottom:13px}.mission-content article p{color:#c5ced7;font-size:14px;line-height:1.9;max-width:650px;margin:0}
.values { padding:125px clamp(28px,8vw,128px); display:grid;grid-template-columns:.8fr 1.2fr;gap:9vw;background:#faf9f6; }
.values-heading .section-tag { justify-content:flex-start; }.values-heading h2{position:sticky;top:130px}
.values-grid { display:grid;grid-template-columns:1fr 1fr; }
.value { padding:35px 28px 42px;border-top:1px solid #d8d4cd;min-height:225px}.value:nth-child(odd){border-right:1px solid #d8d4cd}
.value>span{color:var(--gold);font-size:9px;letter-spacing:.2em}.value h3{color:var(--navy);font:600 30px var(--font-serif);margin:30px 0 12px}.value p{color:#656a70;font-size:13px;line-height:1.8;margin:0}
.closing { position:relative;overflow:hidden;background:var(--navy);padding:110px 30px;text-align:center;color:white; }.closing>img{position:absolute;width:500px;opacity:.05;left:50%;top:50%;transform:translate(-50%,-50%)}
.closing .section-tag{position:relative;justify-content:center;text-align:center}.closing h2{position:relative;font:400 clamp(42px,5.5vw,76px)/1.05 var(--font-serif);max-width:850px;margin:30px auto 45px;text-align:center}.closing-pillars{position:relative;display:flex;justify-content:center;align-items:center;gap:18px;text-align:center;text-transform:uppercase;letter-spacing:.22em;font-size:10px}.closing-pillars i{width:5px;height:5px;background:var(--gold);border-radius:50%}
footer { min-height:130px;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;padding:25px clamp(28px,8vw,128px);gap:20px; }.footer{}
footer img{width:180px;height:65px;object-fit:contain;object-position:left}footer p{text-align:center;color:var(--gold);font:italic 17px var(--font-serif);margin:0}footer span{text-align:right;color:#7a7d80;font-size:9px;letter-spacing:.12em;text-transform:uppercase}
.back-to-top { position:fixed; z-index:50; right:24px; bottom:24px; width:46px; height:46px; display:grid; place-items:center; border:0; border-radius:50%; background:var(--navy); color:white; font:400 22px/1 var(--font-sans); cursor:pointer; box-shadow:0 8px 24px rgba(12,45,83,.25); opacity:0; visibility:hidden; transform:translateY(12px); transition:opacity .2s ease,transform .2s ease,visibility .2s ease,background-color .2s ease; }
.back-to-top.is-visible { opacity:1; visibility:visible; transform:translateY(0); }
.back-to-top:hover { background:var(--gold); }
.back-to-top:focus-visible { outline:3px solid rgba(180,131,60,.45); outline-offset:3px; }
@media(max-width:900px){.nav-links{display:none}.hero{grid-template-columns:1fr}.hero-copy{padding-bottom:100px}.hero-art{min-height:570px}.hero-index{display:none}.pillars{grid-template-columns:1fr}.pillar+.pillar{border-left:0;border-top:1px solid #dedbd5}.mission{grid-template-columns:1fr}.mission-mark{min-height:520px}.values{grid-template-columns:1fr}.values-heading h2{position:static}.values-grid{margin-top:25px}}
@media(max-width:600px){.nav{height:78px}.nav-brand img{width:185px}.hero{min-height:auto}.hero-copy{padding-top:70px}h1{font-size:55px}.hero-lead{font-size:15px}.hero-art{min-height:470px}.statement,.values{padding-top:90px;padding-bottom:90px}.statement h2,.values h2{font-size:44px}.pillar{padding:32px 10px}.mission-mark{min-height:430px}.mission-content{padding:80px 28px}.mission-content article{grid-template-columns:45px 1fr}.values-grid{grid-template-columns:1fr}.value:nth-child(odd){border-right:0}.closing-pillars{gap:10px;letter-spacing:.12em;font-size:8px}footer{grid-template-columns:1fr;text-align:center;padding:40px 24px}footer img{margin:auto;object-position:center}footer span{text-align:center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
