:root{--cedar:#123c28;--cedar-deep:#0c2a1c;--gold:#c39630;--gold-bright:#e0b64a;--oxblood:#7c2230;--ivory:#f5f0e5;--ivory-2:#efe7d6;--ink:#16211b;--muted:#5c6a60;--line:#123c2824;--display:"Fraunces",Georgia,serif;--body:"Mulish",system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--body);color:var(--ink);background:var(--ivory);-webkit-font-smoothing:antialiased;margin:0;line-height:1.6}h1,h2,h3{font-family:var(--display);margin:0;font-weight:600;line-height:1.1}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.wrap{width:min(1160px,92vw);margin-inline:auto}.eyebrow{font-family:var(--body);letter-spacing:.18em;text-transform:uppercase;color:var(--gold);font-size:.72rem;font-weight:700}.util{background:var(--cedar-deep);color:#e7e0cf;font-size:.82rem}.util .wrap{justify-content:space-between;align-items:center;gap:1rem;padding:.5rem 0;display:flex}.util a{opacity:.9}.util .u-r{align-items:center;gap:1.4rem;display:flex}.util .apply{color:var(--cedar-deep);background:var(--gold-bright);border-radius:100px;padding:.28rem .8rem;font-size:.78rem;font-weight:700}@media (width<=680px){.util .u-l span{display:none}}header.site{z-index:40;backdrop-filter:blur(8px);border-bottom:1px solid var(--line);background:#f5f0e5eb;position:sticky;top:0}header.site .wrap{align-items:center;gap:1.2rem;padding:.7rem 0;display:flex}.brand{align-items:center;gap:.7rem;display:flex}.brand img{border-radius:50%;width:46px;height:46px}.brand b{font-family:var(--display);letter-spacing:.01em;font-size:1.05rem;font-weight:600;line-height:1.05}.brand small{font-family:var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-top:2px;font-size:.66rem;font-weight:600;display:block}nav.main{align-items:center;gap:1.5rem;margin-left:auto;font-size:.92rem;font-weight:600;display:flex}nav.main a{color:var(--ink);padding:.2rem 0;position:relative}nav.main a:after{content:"";background:var(--gold);width:0;height:2px;transition:width .25s;position:absolute;bottom:-3px;left:0}nav.main a:hover:after{width:100%}.btn{cursor:pointer;border-radius:100px;padding:.6rem 1.25rem;font-size:.9rem;font-weight:700;transition:transform .18s,box-shadow .18s;display:inline-block}.btn-ghost{color:#fff;border:1.5px solid #ffffff80}.btn-ghost:hover{background:#ffffff1a}.menu-btn{border:1.5px solid var(--line);background:0 0;border-radius:8px;margin-left:auto;padding:.4rem .6rem;font-size:1.1rem;display:none}@media (width<=940px){nav.main,header .btn-gold{display:none}.menu-btn{display:block}}.hero{background:radial-gradient(120% 90% at 85% -10%,#c3963038,transparent 55%), linear-gradient(160deg,var(--cedar) 0%,var(--cedar-deep) 100%);color:#f3ecdb;position:relative;overflow:hidden}.hero:before{content:"";opacity:.5;background-image:radial-gradient(#ffffff0d 1px,#0000 1px);background-size:22px 22px;position:absolute;inset:0}.hero .wrap{grid-template-columns:1.15fr .85fr;align-items:center;gap:3rem;padding:4.6rem 0 4.8rem;display:grid;position:relative}.hero h1{color:#fbf6ea;letter-spacing:-.01em;font-size:clamp(2.5rem,5vw,4rem);font-weight:600}.hero h1 em{color:var(--gold-bright);font-style:italic}.hero p.lead{color:#d9d0bd;max-width:42ch;margin:1.3rem 0 0;font-size:1.12rem}.hero .cta{flex-wrap:wrap;gap:.9rem;margin-top:2rem;display:flex}.motto{letter-spacing:.06em;color:#cdc4b0;align-items:center;gap:.6rem;margin-top:2.2rem;font-size:.82rem;display:inline-flex}.motto span{background:var(--gold);width:34px;height:1px}.crest-card{justify-self:center;position:relative}.crest-ring{aspect-ratio:1;background:radial-gradient(circle at 50% 40%,#ffffff0f,#0000 70%);border:1px solid #e0b64a59;border-radius:50%;place-items:center;width:min(340px,72vw);display:grid;box-shadow:0 30px 60px #00000059,inset 0 0 0 10px #e0b64a0f}.crest-ring:after{content:"";border:1px dashed #e0b64a47;border-radius:50%;position:absolute;inset:-14px}.crest-ring img{border-radius:50%;width:78%}@media (width<=940px){.hero .wrap{text-align:center;grid-template-columns:1fr;padding:3.4rem 0}.hero .cta,.motto{justify-content:center}.crest-card{order:-1}.hero p.lead{margin-inline:auto}}.facts{background:var(--gold);color:#20180a}.facts .wrap{grid-template-columns:repeat(4,1fr);gap:1px;padding:0;display:grid}.facts .f{text-align:center;padding:1.5rem 1rem}.facts .f b{font-family:var(--display);font-size:1.5rem;font-weight:600;line-height:1;display:block}.facts .f span{letter-spacing:.09em;text-transform:uppercase;opacity:.72;font-size:.78rem;font-weight:700}@media (width<=720px){.facts .wrap{grid-template-columns:repeat(2,1fr)}.facts .f{border-bottom:1px solid #00000014}}section{padding:5rem 0}.sec-head{max-width:60ch}.sec-head h2{margin-top:.6rem;font-size:clamp(1.9rem,3.4vw,2.7rem)}.sec-head p{color:var(--muted);margin-top:.8rem;font-size:1.05rem}.welcome{background:var(--ivory-2)}.welcome .wrap{grid-template-columns:.9fr 1.1fr;align-items:center;gap:3rem;display:grid}.welcome .photo{aspect-ratio:4/3;background:linear-gradient(135deg,#1a4d33,#0e3222);border-radius:14px;position:relative;overflow:hidden;box-shadow:0 24px 44px #123c2838}.welcome .photo span{color:#fff9;letter-spacing:.05em;font-size:.78rem;position:absolute;inset:auto 1rem 1rem}.welcome blockquote{font-family:var(--display);color:var(--cedar);margin:1.4rem 0 0;font-size:1.35rem;font-weight:500;line-height:1.5}.signoff{margin-top:1.4rem;font-weight:700}.signoff small{color:var(--muted);font-weight:600;display:block}@media (width<=820px){.welcome .wrap{grid-template-columns:1fr}}.values .wrap{grid-template-columns:repeat(3,1fr);gap:1.4rem;margin-top:2.6rem;display:grid}.vcard{border:1px solid var(--line);background:#fff;border-radius:14px;padding:2rem 1.7rem;transition:transform .2s,box-shadow .2s}.vcard:hover{transform:translateY(-4px);box-shadow:0 18px 40px #123c281f}.vcard .ic{width:52px;height:52px;color:var(--cedar);background:#c3963024;border-radius:12px;place-items:center;margin-bottom:1.1rem;display:grid}.vcard h3{font-size:1.35rem}.vcard p{color:var(--muted);margin:.5rem 0 0;font-size:.98rem}@media (width<=820px){.values .wrap{grid-template-columns:1fr}}.academics{background:var(--cedar);color:#eee6d4}.academics .sec-head h2{color:#fbf6ea}.academics .sec-head p{color:#c9c0ac}.academics .eyebrow{color:var(--gold-bright)}.prog{grid-template-columns:repeat(3,1fr);gap:1.3rem;margin-top:2.6rem;display:grid}.pcard{background:#ffffff0a;border:1px solid #e0b64a38;border-radius:14px;padding:1.9rem 1.6rem}.pcard .age{font-family:var(--display);color:var(--gold-bright);font-size:.95rem}.pcard h3{color:#fff;margin:.3rem 0 .7rem;font-size:1.4rem}.pcard p{color:#c9c0ac;margin:0;font-size:.95rem}.pcard a{color:var(--gold-bright);margin-top:1.1rem;font-size:.9rem;font-weight:700;display:inline-block}@media (width<=820px){.prog{grid-template-columns:1fr}}.news .wrap>.top{justify-content:space-between;align-items:flex-end;gap:1rem;display:flex}.grid3{grid-template-columns:repeat(3,1fr);gap:1.4rem;margin-top:2.4rem;display:grid}.ncard{border:1px solid var(--line);background:#fff;border-radius:14px;transition:transform .2s,box-shadow .2s;overflow:hidden}.ncard:hover{transform:translateY(-4px);box-shadow:0 18px 40px #123c281f}.ncard .thumb{aspect-ratio:16/10;background:linear-gradient(135deg,#20583c,#123c28)}.ncard:nth-child(2) .thumb{background:linear-gradient(135deg,#8c3b1e,#7c2230)}.ncard:nth-child(3) .thumb{background:linear-gradient(135deg,#b98a2b,#8a6415)}.ncard .body{padding:1.3rem 1.3rem 1.6rem}.ncard .tag{letter-spacing:.1em;text-transform:uppercase;color:var(--gold);font-size:.72rem;font-weight:700}.ncard h3{margin:.4rem 0 .5rem;font-size:1.25rem;line-height:1.2}.ncard p{color:var(--muted);margin:0;font-size:.92rem}@media (width<=820px){.grid3{grid-template-columns:1fr}}.band{background:linear-gradient(120deg,var(--oxblood),#5c1620);color:#fbeee4;text-align:center}.band .wrap{padding:4.4rem 0}.band h2{color:#fff;font-size:clamp(1.9rem,3.6vw,2.8rem)}.band p{color:#f0d9cf;max-width:52ch;margin:1rem auto 0}.band .cta{flex-wrap:wrap;justify-content:center;gap:.9rem;margin-top:2rem;display:flex}footer.site{background:var(--cedar-deep);color:#cfc7b4;font-size:.94rem}footer.site .wrap{grid-template-columns:1.4fr 1fr 1fr;gap:2.4rem;padding:3.6rem 0 2rem;display:grid}footer .brand b{color:#fbf6ea}footer h4{font-family:var(--body);text-transform:uppercase;letter-spacing:.12em;color:var(--gold-bright);margin:0 0 1rem;font-size:.75rem}footer a{color:#cfc7b4;padding:.24rem 0;display:block}footer a:hover{color:#fff}footer .fbrand p{color:#a9a290;max-width:34ch;margin:1rem 0 0}.foot-b{border-top:1px solid #ffffff1a}.foot-b .wrap{color:#8f8877;flex-wrap:wrap;justify-content:space-between;gap:1rem;padding:1.1rem 0;font-size:.82rem;display:flex}@media (width<=820px){footer.site .wrap{grid-template-columns:1fr;gap:2rem}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto;transition:none!important;animation:none!important}}.reveal{opacity:0;animation:.7s forwards rise;transform:translateY(14px)}@keyframes rise{to{opacity:1;transform:none}}.btn{font-family:var(--body);letter-spacing:.01em;cursor:pointer;white-space:nowrap;border:2px solid #0000;border-radius:100px;justify-content:center;align-items:center;gap:.55rem;padding:.9rem 1.7rem;font-size:.95rem;font-weight:800;line-height:1;transition:transform .18s,box-shadow .18s,background .18s,border-color .18s;display:inline-flex}.btn .arr{transition:transform .2s}.btn:hover .arr{transform:translate(4px)}.btn:focus-visible{outline:3px solid var(--gold-bright);outline-offset:3px}.btn-gold{background:linear-gradient(180deg,var(--gold-bright),var(--gold));color:#20180a;box-shadow:0 8px 20px #8c6e144d,inset 0 1px #fff6}.btn-gold:hover{transform:translateY(-2px);box-shadow:0 14px 30px #8c6e146b,inset 0 1px #ffffff80}.btn-ghost{color:#fff;box-shadow:none;background:0 0;border-color:#ffffff8c}.btn-ghost:hover{background:#ffffff1f;border-color:#fff;transform:translateY(-2px)}.btn-cedar{background:var(--cedar);color:#fbf6ea;box-shadow:0 8px 20px #123c283d}.btn-cedar:hover{background:var(--cedar-deep);transform:translateY(-2px);box-shadow:0 14px 30px #123c2857}.btn-outline{border-color:var(--cedar);color:var(--cedar);background:0 0}.btn-outline:hover{background:var(--cedar);color:#fbf6ea;transform:translateY(-2px)}.btn-lg{padding:1.1rem 2.1rem;font-size:1.02rem}.cta{flex-wrap:wrap;align-items:center;gap:.9rem;display:flex}nav.main a.is-active{color:var(--cedar)}nav.main a.is-active:after{width:100%}.menu-btn{cursor:pointer}.mobile-nav{background:var(--ivory);border-bottom:1px solid var(--line);flex-direction:column;display:none}.mobile-nav.open{display:flex}.mobile-nav a{border-top:1px solid var(--line);color:var(--ink);padding:.95rem clamp(1rem,6vw,2rem);font-weight:700}.mobile-nav a.is-active{color:var(--cedar);background:#c396301a}.mobile-nav .btn{justify-content:center;margin:1rem clamp(1rem,6vw,2rem)}@media (width>=941px){.mobile-nav{display:none!important}}.page-hero{background:radial-gradient(120% 130% at 88% -25%,#c396303d,transparent 55%), linear-gradient(160deg,var(--cedar) 0%,var(--cedar-deep) 100%);color:#f3ecdb;padding:3.6rem 0 3.2rem;position:relative;overflow:hidden}.page-hero:before{content:"";opacity:.5;background-image:radial-gradient(#ffffff0d 1px,#0000 1px);background-size:22px 22px;position:absolute;inset:0}.page-hero .wrap{position:relative}.page-hero .eyebrow{color:var(--gold-bright)}.page-hero h1{color:#fbf6ea;letter-spacing:-.01em;margin-top:.55rem;font-size:clamp(2rem,4.4vw,3.1rem)}.page-hero p{color:#d9d0bd;max-width:62ch;margin:1rem 0 0;font-size:1.08rem}.lead-copy{max-width:66ch}.lead-copy p{color:var(--muted);margin:0 0 1.1rem;font-size:1.06rem}.two-col{grid-template-columns:1.1fr .9fr;align-items:start;gap:3rem;display:grid}@media (width<=820px){.two-col{grid-template-columns:1fr;gap:2rem}}.feat-grid{grid-template-columns:repeat(3,1fr);gap:1.4rem;margin-top:2.4rem;display:grid}.feat-grid.two{grid-template-columns:repeat(2,1fr)}.feat{border:1px solid var(--line);background:#fff;border-radius:14px;padding:1.9rem 1.6rem;transition:transform .2s,box-shadow .2s}.feat:hover{transform:translateY(-4px);box-shadow:0 18px 40px #123c281f}.feat .ic{width:52px;height:52px;color:var(--cedar);background:#c3963024;border-radius:12px;place-items:center;margin-bottom:1.1rem;display:grid}.feat h3{font-size:1.28rem}.feat p{color:var(--muted);margin:.5rem 0 0;font-size:.98rem}@media (width<=820px){.feat-grid,.feat-grid.two{grid-template-columns:1fr}}.steps{counter-reset:step;grid-template-columns:repeat(3,1fr);gap:1.4rem;margin-top:2.4rem;display:grid}.step{border:1px solid var(--line);background:#fff;border-radius:14px;padding:2.2rem 1.6rem 1.7rem;position:relative}.step:before{counter-increment:step;content:counter(step);background:linear-gradient(180deg,var(--gold-bright),var(--gold));color:#20180a;width:44px;height:44px;font-family:var(--display);border-radius:50%;place-items:center;font-size:1.2rem;font-weight:700;display:grid;position:absolute;top:-18px;left:1.6rem;box-shadow:0 8px 18px #8c6e1447}.step h3{margin:.4rem 0 .5rem;font-size:1.2rem}.step p{color:var(--muted);margin:0;font-size:.96rem}@media (width<=820px){.steps{grid-template-columns:1fr}}.contact-grid{grid-template-columns:1fr 1fr;align-items:start;gap:3rem;display:grid}@media (width<=900px){.contact-grid{grid-template-columns:1fr;gap:2.4rem}}.cinfo{gap:1.1rem;display:grid}.cinfo .row{border:1px solid var(--line);background:#fff;border-radius:14px;align-items:flex-start;gap:1rem;padding:1.3rem 1.4rem;display:flex}.cinfo .row .ic{width:46px;height:46px;color:var(--cedar);background:#c3963024;border-radius:11px;flex:none;place-items:center;display:grid}.cinfo .row h4{font-family:var(--body);text-transform:uppercase;letter-spacing:.1em;color:var(--gold);margin:0 0 .3rem;font-size:.72rem}.cinfo .row a,.cinfo .row p{color:var(--ink);margin:0;font-size:1rem;font-weight:600;line-height:1.45}.cinfo .row a:hover{color:var(--cedar)}.cform{border:1px solid var(--line);background:#fff;border-radius:16px;padding:1.9rem 1.8rem;box-shadow:0 18px 44px #123c2814}.cform label{color:var(--ink);margin:1rem 0 .35rem;font-size:.86rem;font-weight:700;display:block}.cform label:first-child{margin-top:0}.cform input,.cform textarea{width:100%;font-family:var(--body);color:var(--ink);background:var(--ivory);border:1.5px solid var(--line);border-radius:10px;padding:.75rem .9rem;font-size:1rem}.cform input:focus,.cform textarea:focus{border-color:var(--gold);outline:none;box-shadow:0 0 0 3px #c396302e}.cform textarea{resize:vertical;min-height:130px}.cform .btn{width:100%;margin-top:1.4rem}.news-page .grid3{margin-top:0}section.slim{padding:3.6rem 0}
