
:root{
 --maroon:#641023;--maroon-dark:#390914;--red:#8d1b32;--cream:#fbf8f1;--paper:#fffdf8;
 --tan:#ddc8ac;--tan-deep:#b99470;--brown:#5a3c2d;--brown-dark:#211714;
 --gold:#f2c743;--gold-pale:#ffe28a;--ink:#171310;--muted:#75665b;--line:#ddcdbb;
 --display:"DM Serif Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif;--mono:"IBM Plex Mono",monospace;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
.topline{height:34px;padding:0 clamp(20px,7vw,132px);display:flex;align-items:center;justify-content:center;gap:30px;color:#f9ead8;background:var(--maroon-dark);font:600 9px var(--mono);letter-spacing:.12em;text-transform:uppercase}
.topline b{color:#c58b70;padding:0 8px}.top-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--gold);margin:0 10px 1px 0}
.header{height:94px;padding:0 clamp(22px,7vw,132px);display:flex;align-items:center;justify-content:space-between;gap:30px;background:var(--paper);border-bottom:1px solid #e9dfd1;position:relative;z-index:4}
.brand{display:inline-flex;align-items:center;gap:13px;min-width:240px}
.brand-seal{display:grid;place-items:center;width:53px;height:53px;overflow:hidden}
.brand-seal img{display:block;width:100%;height:100%;object-fit:contain}
.brand-name{display:flex;flex-direction:column;gap:4px}
.brand-name strong{color:#171310;font-size:14px;font-weight:900;letter-spacing:-.035em;line-height:1}
.brand-name small{color:#887667;font:500 8px var(--mono);letter-spacing:.14em}
.brand-name small b{color:var(--maroon)}
.nav{display:flex;align-items:center;gap:clamp(22px,3vw,48px)}
.nav a{color:#33261f;font-size:12px;font-weight:700;transition:color .18s ease}
.nav a:hover{color:var(--red)}
.nav .nav-official{padding:17px 23px;color:var(--paper);background:var(--maroon);font-weight:800}
.nav-official span{margin-left:12px;color:var(--gold);font-size:16px}
.menu-toggle{display:none;width:43px;height:43px;border:1px solid var(--line);background:transparent;cursor:pointer}
.menu-toggle span{display:block;width:17px;height:1px;margin:5px auto;background:var(--maroon)}
.hero{min-height:650px;position:relative;isolation:isolate;display:grid;grid-template-columns:1.03fr .97fr;gap:clamp(30px,4vw,72px);align-items:center;padding:76px clamp(22px,7vw,132px) 66px;overflow:hidden;color:var(--paper);background:radial-gradient(ellipse at 78% 46%,rgba(160,37,57,.48) 0%,transparent 38%),linear-gradient(115deg,#3e0b17 0%,#691225 48%,#80182d 100%)}
.hero:before{content:"";position:absolute;z-index:-1;inset:0;opacity:.12;background-image:repeating-linear-gradient(0deg,transparent 0 3px,rgba(255,255,255,.06) 4px),repeating-linear-gradient(90deg,transparent 0 3px,rgba(255,255,255,.035) 4px);mask-image:linear-gradient(90deg,#000,transparent 85%)}
.hero:after{content:"";position:absolute;z-index:-1;width:520px;height:520px;border:1px solid rgba(255,224,138,.12);border-radius:50%;right:9%;top:9%;box-shadow:0 0 0 36px rgba(255,255,255,.018),0 0 0 82px rgba(255,255,255,.015)}
.hero-copy{max-width:680px;position:relative;z-index:1;padding:4px 0 0}
.eyebrow{margin:0 0 32px;color:var(--gold-pale);font:600 9px var(--mono);letter-spacing:.19em}
.eyebrow-rule{display:inline-block;width:30px;height:1px;margin:0 12px 3px 0;background:currentColor}
.hero-place{margin:0 0 19px;color:#e3bba5;font:500 9px var(--mono);letter-spacing:.18em}
.hero-place span{color:var(--gold);padding:0 7px}
.hero h1{max-width:700px;margin:0;color:#fffdf8;font:900 clamp(4.3rem,7.3vw,7.7rem)/.91 var(--sans);letter-spacing:-.085em}
.hero h1 em{color:var(--gold);font:italic 400 .99em/.95 var(--display);letter-spacing:-.055em}
.hero-description{max-width:455px;margin:29px 0 27px;color:#f0d9d2;font-size:15px;line-height:1.85;font-weight:500}
.hero-link{display:inline-flex;min-width:240px;align-items:center;justify-content:space-between;gap:30px;padding:19px 22px;color:#3c1d10;background:var(--gold);font-size:11px;font-weight:900;box-shadow:0 10px 22px rgba(25,4,10,.15);transition:transform .2s,background .2s}
.hero-link:hover{transform:translateY(-3px);background:#ffdc65}
.hero-link span{font-size:21px}
.hero-note{display:flex;gap:0;margin-top:66px;color:#f0cfc2;font:600 8px var(--mono);letter-spacing:.13em}
.hero-note span+span{padding-left:18px;margin-left:18px;border-left:1px solid rgba(255,226,138,.55)}
.campus-figure{width:100%;max-width:650px;margin:0;justify-self:end;position:relative;z-index:1;padding:16px 18px 23px 0}
.photo-mat{position:relative;padding:10px;background:#fff7e9;border:1px solid rgba(255,255,255,.6);box-shadow:18px 22px 0 rgba(32,5,12,.18);transform:rotate(2deg)}
.photo-mat:before{content:"";position:absolute;inset:-15px 18px 17px -18px;border:1px solid rgba(255,224,138,.35);pointer-events:none}
.photo-mat:after{content:"";position:absolute;left:25px;right:25px;bottom:-8px;height:8px;background:var(--gold);opacity:.9}
.campus-photo,.photo-fallback{display:block;width:100%;height:auto;aspect-ratio:1.42/1;object-fit:cover;object-position:center 48%;background:#cbb89f}
.photo-fallback[hidden]{display:none}.photo-fallback svg{display:block;width:100%;height:100%}
.photo-index{position:absolute;top:25px;left:25px;padding:10px 13px;color:#fff;background:rgba(48,10,20,.88);font:600 8px var(--mono);letter-spacing:.1em}
.photo-index span{margin-left:12px;color:var(--gold)}
.photo-stamp{position:absolute;right:-25px;top:38px;padding:14px 18px;background:var(--gold);color:#45111a;font:600 8px var(--mono);letter-spacing:.11em;line-height:1.6;transform:rotate(-4deg);box-shadow:0 8px 20px #300b1680}
.photo-stamp strong{font-size:11px}
.photo-side-note{position:absolute;right:-28px;bottom:48px;padding:12px 16px;background:#fff9ef;color:var(--maroon);font:600 8px var(--mono);letter-spacing:.12em;transform:rotate(3deg);box-shadow:0 8px 20px #300b1640}
.campus-figure figcaption{display:flex;justify-content:space-between;gap:20px;margin:25px 0 0;color:#f0d7c7;font:600 8px var(--mono);letter-spacing:.14em}
.trust-strip{min-height:52px;padding:14px clamp(22px,7vw,132px);display:flex;justify-content:space-between;align-items:center;gap:20px;color:#f8ead7;background:#2c1b17;font:500 8px var(--mono);letter-spacing:.13em}
.section-wrap{padding-left:clamp(22px,7vw,132px);padding-right:clamp(22px,7vw,132px)}
.services{padding-top:108px;padding-bottom:112px;background:var(--cream)}
.section-intro{display:grid;grid-template-columns:1fr .62fr;gap:42px;align-items:end;margin-bottom:50px}
.eyebrow-dark{color:var(--maroon)}.eyebrow-dark span{color:#bd8c45;padding:0 5px}
.section-intro h2,.help-main h2,.about-copy h2{margin:0;color:#251a16;font:800 clamp(3.5rem,6vw,6.1rem)/.91 var(--sans);letter-spacing:-.075em}
.section-intro h2 em,.help-main h2 em,.about-copy h2 em{color:var(--maroon);font:italic 400 .98em/.95 var(--display);letter-spacing:-.045em}
.section-description{max-width:420px;margin:0 0 5px auto;color:#6f6055;font-size:12px;line-height:1.85}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
.service-card{min-height:260px;padding:24px 25px 22px;display:flex;flex-direction:column;align-items:flex-start;position:relative;overflow:hidden;transition:transform .22s ease,box-shadow .22s ease}
.service-card:hover{transform:translateY(-5px);box-shadow:0 18px 30px rgba(54,35,27,.15)}
.card-feature{grid-column:span 2;min-height:310px;justify-content:space-between;color:var(--paper);background:linear-gradient(130deg,#4b0d1c,#82172e)}
.card-feature:after{content:"SIS";position:absolute;right:16px;top:42px;color:rgba(255,255,255,.07);font:900 150px/.8 var(--sans);letter-spacing:-.1em;pointer-events:none}
.card-meta{width:100%;display:flex;justify-content:space-between;gap:15px;font:500 8px var(--mono);letter-spacing:.12em;opacity:.8}
.card-feature .card-meta{color:var(--gold-pale)}
.card-feature-bottom{width:100%;display:flex;justify-content:space-between;align-items:end;gap:25px;position:relative;z-index:1}
.service-card h3{max-width:360px;margin:29px 0 10px;color:var(--maroon);font:400 34px/1.02 var(--display);letter-spacing:-.025em}
.service-card p{max-width:320px;margin:0;color:#706357;font-size:11px;line-height:1.75}
.card-feature h3{max-width:470px;margin:0 0 11px;color:var(--paper);font:800 clamp(2.5rem,4vw,4.2rem)/.98 var(--sans);letter-spacing:-.065em}
.card-feature p{max-width:360px;color:#e5cfc0;font-size:12px}
.card-arrow{display:grid;flex:0 0 44px;place-items:center;width:44px;height:44px;color:var(--maroon);background:var(--gold);border-radius:50%;font-size:20px;transition:transform .2s}
.service-card:hover .card-arrow{transform:rotate(45deg)}
.card-light{background:#e8d7c2}.card-paper{background:#fffdf8;border:1px solid #e7ddcf}.card-gold{background:var(--gold)}
.card-small{grid-column:span 3;min-height:155px;justify-content:space-between;color:var(--paper);background:#3b2921}
.card-small .card-meta{color:#efd9a3}.card-small-row{display:flex;width:100%;justify-content:space-between;align-items:end;gap:30px}
.card-small h3{margin:18px 0 6px;color:var(--paper);font-size:30px}.card-small p{color:#e1d0be}
.card-action{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;margin-top:auto;padding-top:19px;color:var(--maroon);font:600 8px var(--mono);letter-spacing:.1em}
.card-action-set{display:flex;flex-wrap:wrap;align-items:center;gap:10px 19px;width:100%;margin-top:auto;padding-top:16px;border-top:1px solid rgba(96,70,54,.22)}
.card-action-set a{display:inline-flex;align-items:center;gap:7px;color:var(--maroon);font:600 8px var(--mono);letter-spacing:.06em}
.card-action-set a:hover{text-decoration:underline;text-underline-offset:3px}
.card-action-set b,.card-action b{font:16px var(--sans)}.card-feature .card-action{color:var(--gold-pale)}
.service-footnote{max-width:860px;margin:18px 0 0;padding-left:14px;border-left:2px solid var(--gold);color:#85786b;font-size:10px;line-height:1.7}
.help-band{padding:82px clamp(22px,7vw,132px) 36px;color:var(--paper);background:radial-gradient(ellipse at 82% 50%,rgba(153,36,58,.38),transparent 45%),linear-gradient(115deg,#3d0b17,#711529)}
.eyebrow-light{color:var(--gold-pale)}.eyebrow-light span{color:#d49d75;padding:0 5px}
.help-main{display:grid;grid-template-columns:1fr .6fr;gap:50px;align-items:end;padding:15px 0 65px}
.help-main h2{color:var(--paper)}.help-main h2 em{color:var(--gold)}
.help-copy{max-width:370px;padding-bottom:4px}.help-copy p{margin:0 0 22px;color:#e6cfc1;font-size:12px;line-height:1.85}
.light-link{display:inline-flex;align-items:center;gap:25px;padding-bottom:8px;border-bottom:1px solid rgba(239,217,163,.55);color:var(--gold-pale);font:600 9px var(--mono);letter-spacing:.1em}
.light-link span{font-size:15px}.help-bottom{padding-top:15px;display:flex;justify-content:space-between;border-top:1px solid rgba(255,255,255,.24);color:#d4b4a2;font:500 8px var(--mono);letter-spacing:.14em}
.help-bottom b{padding-left:8px;color:var(--gold);font-size:13px}
.contacts{padding-top:100px;padding-bottom:105px;background:var(--cream)}
.contact-intro{margin-bottom:42px}.contact-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:65px}
.contact-address{min-height:265px;padding:27px;display:flex;flex-direction:column;align-items:flex-start;background:#e6d2b7}
.contact-label{display:block;color:var(--maroon);font:600 8px var(--mono);letter-spacing:.14em}
.contact-address h3{margin:40px 0 8px;color:#34231b;font:400 32px/.98 var(--display)}
.contact-address p{margin:0;color:#695749;font-size:11px;line-height:1.8}
.contact-address>a{margin-top:auto;padding-top:21px;color:var(--maroon);font:600 8px var(--mono);letter-spacing:.1em}
.contact-address>a b{padding-left:8px;font:14px var(--sans)}
.contact-rows{border-top:1px solid var(--line)}
.contact-row{min-height:88px;padding:15px 0;display:flex;justify-content:space-between;align-items:center;gap:25px;border-bottom:1px solid var(--line)}
.contact-row h3{margin:5px 0 4px;color:#34231b;font:400 23px/.95 var(--display)}
.contact-row div>a{color:#786b5e;font-size:10px}
.contact-phone{white-space:nowrap;color:var(--maroon);font-size:10px;font-weight:800}
.contact-phone b{padding-left:6px;color:var(--tan-deep);font-size:14px}
.about-project{padding:68px clamp(22px,7vw,132px);display:grid;grid-template-columns:95px 1fr auto;gap:34px;align-items:center;background:#e9ddcb}
.about-number{width:82px;height:82px;display:grid;place-content:center;text-align:center;color:var(--maroon);border:1px solid var(--maroon);font:600 13px/1.2 var(--mono);transform:rotate(-5deg)}
.about-copy .eyebrow{margin-bottom:12px}.about-copy h2{font-size:clamp(2.5rem,4vw,4rem)}
.about-copy>p:last-child{max-width:620px;margin:15px 0 0;color:#766758;font-size:11px;line-height:1.85}
.about-source{align-self:end;padding-bottom:8px;white-space:nowrap;color:var(--maroon);border-bottom:1px solid #b9a487;font:600 8px var(--mono);letter-spacing:.08em}
.about-source b{padding-left:8px;font:14px var(--sans)}
.source-area{padding-top:48px;padding-bottom:50px}
.sources{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.sources summary{padding:18px 0;display:flex;align-items:center;justify-content:space-between;cursor:pointer;color:var(--maroon);font:600 9px var(--mono);letter-spacing:.13em;list-style:none}
.sources summary::-webkit-details-marker{display:none}.sources summary span{color:var(--brown);font:20px var(--sans)}
.sources[open] summary span{transform:rotate(45deg)}
.source-list{display:grid;grid-template-columns:1fr 1fr 1fr;gap:35px;padding:5px 0 25px}
.source-list>div{display:flex;flex-direction:column;align-items:flex-start;gap:9px}
.source-list span{margin-bottom:5px;color:#998572;font:500 8px var(--mono);letter-spacing:.12em}
.source-list a{color:#6a5646;font-size:10px;text-decoration:underline;text-decoration-color:#c9b598;text-underline-offset:3px}
.source-list a:hover{color:var(--maroon)}.source-credit p{max-width:320px;margin:0;color:#857766;font-size:10px;line-height:1.8}
.footer{min-height:78px;padding:20px clamp(22px,7vw,132px);display:flex;align-items:center;justify-content:space-between;gap:20px;color:var(--paper);background:#211714}
.footer-brand{color:var(--gold);font:900 13px var(--sans);letter-spacing:.05em}
.footer-brand span{margin-left:8px;color:#e7d9c8;font:500 8px var(--mono);letter-spacing:.1em}
.footer p{margin:0;color:#bcaa97;font-size:9px}.back-top{color:#e8d7c5;font:600 8px var(--mono);letter-spacing:.12em;white-space:nowrap}
@media(max-width:980px){
 .hero{grid-template-columns:.9fr 1.1fr;gap:35px;padding-top:58px}.hero h1{font-size:clamp(4.1rem,8vw,6.8rem)}
 .service-grid{grid-template-columns:repeat(2,1fr)}.card-feature{grid-column:span 2}.card-small{grid-column:span 2}
 .contact-layout{gap:35px}.about-project{grid-template-columns:80px 1fr}.about-source{grid-column:2;justify-self:start}
}
@media(max-width:680px){
 .topline{height:auto;min-height:31px;padding:8px 14px;justify-content:space-between;gap:10px;font-size:6px;letter-spacing:.08em}
 .header{height:76px;padding:0 18px;position:relative}.brand{min-width:0;gap:9px}.brand-seal{width:42px;height:42px}
 .brand-name strong{font-size:11px}.brand-name small{font-size:6px;letter-spacing:.1em}
 .menu-toggle{display:block}.nav{display:none;position:absolute;z-index:5;top:75px;left:0;right:0;padding:16px 20px 20px;flex-direction:column;align-items:stretch;gap:0;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:0 12px 18px rgba(40,25,16,.1)}
 .nav.is-open{display:flex}.nav a{padding:14px 0;border-bottom:1px solid #eee6db}.nav .nav-official{margin-top:12px;padding:13px 14px;border:0;text-align:center}
 .hero{grid-template-columns:1fr;gap:34px;padding:56px 20px 46px;min-height:0}.hero h1{font-size:clamp(4rem,17vw,6rem)}
 .hero-description{max-width:360px;margin-top:23px;font-size:13px}.hero-note{margin-top:40px;gap:0;font-size:6px;letter-spacing:.08em}
 .hero-note span+span{padding-left:10px;margin-left:10px}.campus-figure{max-width:none;padding:8px 10px 18px 0}
 .photo-mat{padding:7px;box-shadow:10px 13px 0 rgba(32,5,12,.18)}.campus-photo,.photo-fallback{aspect-ratio:1.3/1}
 .photo-stamp{right:-7px;top:22px;padding:9px 11px;font-size:6px}.photo-side-note{right:-8px;bottom:36px;padding:9px 10px;font-size:6px}
 .photo-index{top:17px;left:17px;padding:7px 9px;font-size:6px}.campus-figure figcaption{margin-top:17px;font-size:6px}
 .trust-strip{padding:13px 20px;flex-direction:column;align-items:flex-start;gap:7px;font-size:6px}
 .section-wrap{padding-left:20px;padding-right:20px}.services,.contacts{padding-top:72px;padding-bottom:75px}
 .section-intro{grid-template-columns:1fr;gap:17px;margin-bottom:31px}.section-intro h2{font-size:clamp(3.4rem,14vw,4.7rem)}
 .section-description{margin:0}.service-grid{grid-template-columns:1fr;gap:11px}
 .service-card,.card-feature,.card-small{grid-column:auto;min-height:230px;padding:20px}.card-feature{min-height:265px}
 .card-feature h3{font-size:2.8rem}.card-feature:after{font-size:110px}.card-small{min-height:170px}
 .service-card h3{font-size:29px}.card-action{padding-top:16px}.service-footnote{font-size:9px}
 .help-band{padding:59px 20px 26px}.help-main{grid-template-columns:1fr;gap:25px;padding:10px 0 45px}
 .help-main h2{font-size:clamp(3.7rem,14vw,4.8rem)}.help-copy{max-width:100%}
 .contact-layout{grid-template-columns:1fr;gap:26px}.contact-address{min-height:240px}
 .contact-row{align-items:flex-start;flex-direction:column;gap:11px;padding:18px 0}.contact-row h3{font-size:21px}
 .about-project{padding:56px 20px;grid-template-columns:1fr;gap:22px}.about-number{width:66px;height:66px;font-size:11px}
 .about-copy h2{font-size:clamp(2.8rem,11vw,3.7rem)}.about-source{grid-column:1;white-space:normal}
 .source-area{padding-top:32px;padding-bottom:35px}.source-list{grid-template-columns:1fr;gap:22px}
 .footer{align-items:flex-start;flex-direction:column;gap:10px;padding:22px 20px}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
