@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Libre+Caslon+Display&display=swap');

:root { --navy:#071b2d; --navy-2:#0d2a42; --ink:#102232; --gold:#c8a76a; --cream:#f4f1ea; --white:#fff; --muted:#68747d; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:#fff; font-family:'DM Sans', Arial, sans-serif; }
a { color:inherit; text-decoration:none; }
.nav-shell { height:86px; display:flex; align-items:center; justify-content:space-between; padding:0 clamp(24px,5vw,78px); background:#fff; position:relative; z-index:10; }
.brand { display:flex; gap:13px; align-items:center; color:var(--navy); font-size:15px; letter-spacing:.17em; white-space:nowrap; }
.brand b { font-weight:400; color:#9a7b43; }
.logo-link { display:flex; align-items:center; width:225px; height:76px; }
.logo-link img { display:block; width:225px; height:74px; object-fit:contain; }
.footer-logo { width:205px; height:104px; padding:7px; background:#fff; border-radius:2px; }
.footer-logo img { width:191px; height:90px; object-fit:contain; }
.brand-mark { width:29px; height:27px; display:flex; align-items:flex-end; gap:3px; transform:skewX(-18deg); }
.brand-mark i { display:block; width:7px; background:var(--gold); }
.brand-mark i:nth-child(1){height:13px}.brand-mark i:nth-child(2){height:20px}.brand-mark i:nth-child(3){height:27px}
nav { display:flex; gap:36px; font-size:13px; color:#324552; }
nav a:hover, footer a:hover { color:var(--gold); }
.button { display:inline-flex; align-items:center; justify-content:center; gap:22px; min-height:54px; padding:0 24px; color:var(--navy); background:var(--gold); border:1px solid var(--gold); font:600 12px 'DM Sans'; text-transform:uppercase; letter-spacing:.12em; cursor:pointer; transition:.2s ease; }
.button:hover { background:#d9ba7e; transform:translateY(-2px); }
.button-small { min-height:44px; padding:0 18px; gap:14px; }
.hero { min-height:720px; position:relative; display:flex; align-items:center; padding:80px clamp(24px,7vw,110px); overflow:hidden; color:#fff; }
.hero-photo { position:absolute; inset:0; background:url('subdivision.jpg') center/cover no-repeat; transform:scale(1.01); }
.hero-wash { position:absolute; inset:0; background:linear-gradient(90deg,rgba(4,20,34,.95) 0%,rgba(4,20,34,.82) 43%,rgba(4,20,34,.28) 73%,rgba(4,20,34,.13)),linear-gradient(0deg,rgba(2,15,26,.55),transparent 55%); }
.hero-content { position:relative; max-width:780px; z-index:1; }
.eyebrow { margin:0 0 24px; display:flex; align-items:center; gap:12px; color:#ddc58f; font-size:11px; font-weight:600; text-transform:uppercase; letter-spacing:.2em; }
.eyebrow span { width:30px; height:1px; background:var(--gold); }
h1,h2,blockquote { font-family:'Libre Caslon Display', Georgia, serif; font-weight:400; letter-spacing:-.035em; }
h1 { margin:0; font-size:clamp(50px,6.2vw,88px); line-height:.99; }
h1 em,h2 em { color:#d4b573; font-style:italic; }
.hero-copy { max-width:610px; margin:30px 0; font-size:17px; line-height:1.7; color:#d8e0e5; }
.hero-actions { display:flex; align-items:center; gap:34px; }
.text-link { padding:12px 0; border-bottom:1px solid rgba(255,255,255,.5); font-size:12px; text-transform:uppercase; letter-spacing:.13em; }
.text-link span { margin-left:15px; color:var(--gold); }
.hero-card { position:absolute; z-index:2; right:clamp(24px,5vw,72px); bottom:0; width:310px; padding:30px 34px; background:rgba(7,27,45,.94); border-top:3px solid var(--gold); backdrop-filter:blur(10px); }
.hero-card p { margin:0 0 5px; color:#aebbc5; text-transform:uppercase; letter-spacing:.14em; font-size:10px; }
.hero-card strong { font:400 39px Georgia,serif; color:#fff; }
.gold-rule { height:1px; margin:20px 0; background:rgba(200,167,106,.45); }
.hero-card dl { margin:0; display:flex; gap:28px; }
.hero-card dt { color:#91a1ad; font-size:10px; }
.hero-card dd { margin:4px 0 0; color:#fff; font-size:12px; }
.photo-credit { position:absolute; right:20px; top:20px; opacity:.52; font-size:9px; writing-mode:vertical-rl; }
.trust-strip { display:grid; grid-template-columns:repeat(3,1fr); padding:0 clamp(24px,7vw,110px); background:var(--cream); border-bottom:1px solid #ded9cf; }
.trust-strip p { margin:0; padding:34px 30px; display:flex; gap:20px; border-right:1px solid #ded9cf; }
.trust-strip p:first-child { padding-left:0; }.trust-strip p:last-child{border:0}
.trust-strip b { color:var(--gold); font:400 24px Georgia,serif; }.trust-strip span { color:#6b7479; font-size:12px; line-height:1.5; }.trust-strip strong { display:block; margin-bottom:4px; color:var(--ink); font-size:13px; }
.section { padding:120px clamp(24px,8vw,130px); }
.split { display:grid; grid-template-columns:1.05fr .95fr; gap:10vw; align-items:start; }
.eyebrow.dark { color:#95733f; }
h2 { margin:0; color:var(--navy); font-size:clamp(39px,4.6vw,64px); line-height:1.08; }
.section-copy { padding-top:43px; border-top:1px solid #d4c8b2; }
.section-copy p { margin:0 0 20px; color:#56656f; font-size:16px; line-height:1.85; }
.criteria-wrap { display:grid; grid-template-columns:.85fr 1.15fr; background:var(--navy); color:#fff; }
.criteria-intro { padding:100px clamp(30px,6vw,90px); background:linear-gradient(145deg,#0c2b45,#071b2d); }
.criteria-intro h2 { color:#fff; font-size:clamp(38px,4vw,58px); }
.criteria-intro>p:last-child { max-width:440px; margin-top:26px; color:#9fb0bb; line-height:1.75; }
.criteria-grid { display:grid; grid-template-columns:1fr 1fr; }
.criteria-grid article { padding:58px 46px; border-left:1px solid rgba(255,255,255,.1); border-bottom:1px solid rgba(255,255,255,.1); }
.criteria-grid article>span { color:var(--gold); font:400 17px Georgia,serif; }
.criteria-grid h3,.process h3 { margin:34px 0 12px; font:400 21px Georgia,serif; }
.criteria-grid p { margin:0; color:#92a5b2; font-size:13px; line-height:1.7; }
.process { display:grid; grid-template-columns:.85fr 1.15fr; gap:10vw; background:var(--cream); }
.process-heading>p:last-child { color:#66737b; max-width:420px; line-height:1.7; }
.process ol { list-style:none; margin:0; padding:0; }
.process li { display:grid; grid-template-columns:70px 1fr; gap:24px; padding:31px 0; border-top:1px solid #d4cdbf; }
.process li:last-child { border-bottom:1px solid #d4cdbf; }.process li>b { color:var(--gold); font:400 19px Georgia,serif; }.process li h3 { margin:0 0 8px; color:var(--navy); }.process li p { margin:0; color:#65727a; font-size:13px; line-height:1.6; }
.expertise { padding:115px max(24px,14vw); text-align:center; background:#fff; }
.quote-mark { height:60px; color:var(--gold); font:80px Georgia,serif; }
blockquote { max-width:980px; margin:15px auto 30px; color:var(--navy); font-size:clamp(32px,4.3vw,56px); line-height:1.15; }
.expertise>p { max-width:730px; margin:auto; color:#69757c; line-height:1.7; }
.signature { margin-top:45px; color:var(--navy); font-size:11px; font-weight:600; letter-spacing:.14em; }.signature span { display:block; margin-top:8px; color:#9c7c44; font-weight:400; letter-spacing:.08em; }
.partners { padding:105px clamp(24px,8vw,130px); background:var(--cream); }
.partners-heading { margin-bottom:50px; }
.partners-heading .eyebrow { margin-bottom:14px; }
.partners-heading h2 { max-width:760px; }
.partner-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.partner-grid a,.partner-card { min-height:230px; padding:30px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:26px; background:#fff; border:1px solid #ded8cd; transition:.2s ease; }
.partner-grid a:hover { transform:translateY(-4px); border-color:var(--gold); box-shadow:0 16px 35px rgba(7,27,45,.08); }
.partner-grid img { display:block; width:100%; height:105px; object-fit:contain; }
.partner-grid span { color:#7e693e; font-size:10px; text-transform:uppercase; letter-spacing:.12em; }
.apply { display:grid; grid-template-columns:.9fr 1.1fr; gap:10vw; padding:110px clamp(24px,8vw,130px); background:var(--navy); color:#fff; }
.apply h2 { color:#fff; }.apply-copy>p:nth-of-type(2) { margin-top:28px; color:#a7b4bd; line-height:1.75; }
.response-badge { display:flex; align-items:center; gap:14px; margin-top:50px; }.response-badge b { color:var(--gold); font:400 50px Georgia,serif; }.response-badge span { color:#bcc6cc; font-size:11px; text-transform:uppercase; letter-spacing:.13em; line-height:1.5; }
form { padding:42px; background:#fff; color:var(--navy); box-shadow:0 22px 60px rgba(0,0,0,.25); }
label { display:block; margin-bottom:20px; color:#4d5c66; font-size:10px; font-weight:600; text-transform:uppercase; letter-spacing:.12em; }
input,select,textarea { display:block; width:100%; margin-top:8px; padding:13px 3px; border:0; border-bottom:1px solid #cfd3d5; border-radius:0; outline:none; color:var(--ink); background:#fff; font:14px 'DM Sans'; }
textarea { resize:vertical; }.form-row { display:grid; grid-template-columns:1fr 1fr; gap:25px; }.submit { width:100%; margin-top:6px; border:0; }.apply small { display:block; margin-top:14px; color:#87929a; line-height:1.5; }
.success { align-self:stretch; padding:60px; display:flex; flex-direction:column; justify-content:center; background:#fff; color:var(--navy); text-align:center; }.success>span { margin:auto; width:58px;height:58px;display:grid;place-items:center;border-radius:50%;background:var(--gold);font-size:24px;}.success h3{font:38px Georgia,serif;margin:22px 0 10px}.success p{color:#64717a;line-height:1.7}.success button{border:0;background:none;color:#8c6c36;text-decoration:underline;cursor:pointer}
footer { display:grid; grid-template-columns:1fr 1fr auto; gap:30px; align-items:center; padding:50px clamp(24px,8vw,130px) 30px; color:#9eabb4; background:#041522; border-top:1px solid rgba(255,255,255,.09); font-size:12px; }.brand.light{color:#fff}.brand.light b{color:var(--gold)}footer>div{display:flex;gap:24px;color:#d1d8dc}footer small{grid-column:1/-1;padding-top:25px;border-top:1px solid rgba(255,255,255,.08);font-size:9px;color:#667782}
@media(max-width:900px){nav{display:none}.hero{min-height:780px;align-items:flex-start;padding-top:110px}.hero-card{left:24px;right:auto;width:min(350px,calc(100% - 48px))}.trust-strip{grid-template-columns:1fr}.trust-strip p{padding:24px 0;border-right:0;border-bottom:1px solid #ded9cf}.split,.criteria-wrap,.process,.apply{grid-template-columns:1fr}.criteria-grid{min-height:520px}.process{gap:60px}.apply{gap:60px}footer{grid-template-columns:1fr}footer small{grid-column:auto}}
@media(max-width:600px){.nav-shell{height:72px}.nav-shell>.button{display:none}.brand{font-size:12px}.hero{padding-left:24px;padding-right:24px}.hero-actions{align-items:flex-start;flex-direction:column;gap:13px}.hero-copy{font-size:15px}.trust-strip{padding:0 24px}.section,.apply{padding:82px 24px}.criteria-intro{padding:80px 24px}.criteria-grid{grid-template-columns:1fr}.criteria-grid article{padding:40px 24px}.process{padding:80px 24px}.form-row{grid-template-columns:1fr;gap:0}form{padding:30px 24px}.expertise{padding:85px 24px}.hero-card{padding:25px}.hero-card strong{font-size:34px}footer{padding:45px 24px 30px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
@media(max-width:1100px){.partner-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.partner-grid{grid-template-columns:1fr}.partner-grid a,.partner-card{min-height:190px}.logo-link{width:174px;height:62px}.logo-link img{width:174px;height:58px}.footer-logo{width:185px;height:94px}.footer-logo img{width:171px;height:80px}}
