@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Quattrocento+Sans:wght@400;700&display=swap');

:root { --ink:#152833; --deep:#172a37; --build:#233b4b; --steel:#90a0a7; --mist:#e9edef; --paper:#f8f8f5; --line:#bdc7ca; --warm:#c9bfae; --white:#fff; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:'Quattrocento Sans',Arial,sans-serif; }
a { color:inherit; text-decoration:none; }
.wrap { width:min(1240px,calc(100% - 96px)); margin:auto; }
.eyebrow, .meta, .nav-link, .button, label { font-size:11px; font-weight:700; letter-spacing:.18em; text-transform:uppercase; }
.site-header { position:absolute; inset:0 0 auto; z-index:3; border-bottom:1px solid rgba(255,255,255,.25); color:white; }
.site-header .wrap { min-height:91px; display:flex; align-items:center; justify-content:space-between; gap:30px; }
.brand { display:flex; align-items:center; gap:13px; }
.brand img { width:133px; height:auto; filter:brightness(0) invert(1); }
.brand span { border-left:1px solid rgba(255,255,255,.55); padding-left:13px; font-family:'Cormorant Garamond',serif; font-size:22px; font-style:italic; }
.primary-nav { display:flex; align-items:center; gap:26px; }
.nav-link { opacity:.86; transition:opacity .2s; }.nav-link:hover,.language a:hover { opacity:1; }
.language { display:flex; gap:9px; font-size:11px; letter-spacing:.13em; }.language [aria-current] { border-bottom:1px solid currentColor; padding-bottom:4px; }
.hero { min-height:850px; display:grid; grid-template-columns:minmax(0,1.02fr) minmax(420px,.98fr); color:white; background:var(--deep); }
.hero-copy { display:flex; align-items:flex-end; padding:160px max(48px,calc((100vw - 1240px)/2)) 82px max(48px,calc((100vw - 1240px)/2)); }
.hero-copy-inner { max-width:640px; }
.hero .eyebrow { color:#d8e0e2; margin-bottom:30px; }
h1,h2,h3,p { margin:0; } h1,h2,h3 { font-family:'Cormorant Garamond',Georgia,serif; font-weight:500; }
h1 { font-size:clamp(58px,6.1vw,100px); line-height:.9; letter-spacing:-.045em; } h1 em,h2 em { font-weight:400; }
.hero-intro { max-width:535px; margin:34px 0 37px; font-size:18px; line-height:1.55; color:#e4ebed; }
.actions { display:flex; flex-wrap:wrap; gap:14px; }.button { display:inline-flex; align-items:center; justify-content:center; min-height:50px; padding:0 22px; border:1px solid currentColor; transition:background .2s,color .2s; }.button:hover { background:white; color:var(--deep); }.button--quiet { color:#e5ecee; border-color:rgba(255,255,255,.52); }
.hero-media { position:relative; background:#0f202c; min-height:550px; overflow:hidden; }.hero-media img { width:100%; height:100%; object-fit:contain; object-position:center; display:block; opacity:.78; }.hero-media::after { content:''; position:absolute; inset:0; background:linear-gradient(90deg,var(--deep) 0%,transparent 30%),linear-gradient(0deg,rgba(7,19,27,.48),transparent 45%); }
.media-credit { position:absolute; z-index:1; bottom:38px; right:42px; color:white; }
.proofs { background:var(--build); color:#edf2f3; }.proofs .wrap { display:grid; grid-template-columns:repeat(3,1fr); }.proof { padding:31px 0; border-right:1px solid rgba(255,255,255,.22); }.proof:not(:first-child) { padding-left:35px; }.proof:last-child { border:0; }.proof strong { display:block; margin-bottom:7px; font-size:14px; }.proof span { font-size:13px; color:#c9d5d9; }
section { padding:135px 0; }.section-head { display:grid; grid-template-columns:1.15fr .85fr; gap:80px; align-items:end; margin-bottom:68px; }.section-head h2 { max-width:750px; font-size:clamp(48px,5.2vw,78px); line-height:.95; letter-spacing:-.04em; }.section-head p { max-width:450px; font-size:17px; line-height:1.65; }
.model { background:var(--mist); }.principles { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); }.principle { padding:28px 30px 0 0; min-height:170px; border-right:1px solid var(--line); }.principle:not(:first-child) { padding-left:30px; }.principle:last-child { border:0; }.principle h3 { font-size:31px; margin:13px 0 9px; }.principle p { max-width:260px; color:#51616a; font-size:14px; line-height:1.55; }
.services { background:var(--paper); }.service-list { border-top:1px solid var(--line); }.service { display:grid; grid-template-columns:110px 1fr 1.15fr; gap:35px; padding:28px 0 31px; border-bottom:1px solid var(--line); align-items:baseline; }.service h3 { font-size:39px; line-height:1; }.service p { color:#52626b; max-width:480px; font-size:15px; line-height:1.58; }
.split-feature { background:var(--deep); color:#f6f7f6; padding:0; display:grid; grid-template-columns:1fr 1fr; }.split-feature .feature-photo { min-height:670px; background:#0d1c25; }.split-feature img,.split-feature video { width:100%; height:100%; object-fit:contain; display:block; }.feature-copy { align-self:center; padding:110px min(10vw,150px); }.feature-copy .eyebrow { color:#b8c6ca; margin-bottom:27px; }.feature-copy h2 { font-size:clamp(50px,5vw,73px); line-height:.95; letter-spacing:-.04em; }.feature-copy p { color:#d4dfe2; line-height:1.62; font-size:16px; margin-top:28px; }
.approach { background:var(--build); color:#f3f6f6; }.approach .section-head p { color:#d0dbde; }.stages { border-top:1px solid rgba(255,255,255,.42); }.stage { display:grid; grid-template-columns:105px 1fr 1.2fr; gap:35px; align-items:center; min-height:110px; border-bottom:1px solid rgba(255,255,255,.28); }.stage h3 { font-size:40px; }.stage p { color:#d0dbde; font-size:15px; line-height:1.55; }
.governance { background:var(--mist); }.governance-grid { display:grid; grid-template-columns:1fr 1fr; gap:clamp(50px,11vw,180px); }.governance-grid h2 { font-size:clamp(48px,5vw,74px); line-height:.96; letter-spacing:-.04em; }.governance-grid .body-copy { align-self:end; font-size:17px; line-height:1.65; }.checks { list-style:none; padding:0; margin:37px 0 0; border-top:1px solid var(--line); }.checks li { padding:15px 0; border-bottom:1px solid var(--line); font-size:14px; }.checks li::before { content:'—'; margin-right:14px; color:var(--build); }
.consult { background:var(--deep); color:#f7f8f7; }.consult-grid { display:grid; grid-template-columns:.85fr 1.15fr; gap:clamp(55px,10vw,150px); }.consult h2 { font-size:clamp(48px,5vw,74px); line-height:.95; letter-spacing:-.04em; }.consult p { color:#d4dfe2; font-size:16px; line-height:1.65; margin-top:27px; }.consult-note { font-size:13px !important; color:#afc0c6 !important; margin-top:35px !important; }
form { display:grid; grid-template-columns:1fr 1fr; gap:23px 18px; } .form-field { display:flex; flex-direction:column; gap:9px; }.form-field--full { grid-column:1 / -1; } label { color:#d9e2e4; font-size:10px; } input,select,textarea { width:100%; background:transparent; border:0; border-bottom:1px solid rgba(255,255,255,.55); color:white; padding:10px 0 12px; outline:none; font:15px 'Quattrocento Sans',sans-serif; border-radius:0; } select option { color:#172a37; } textarea { resize:vertical; min-height:75px; }.consent { grid-column:1/-1; display:flex; gap:10px; color:#bdcbd0; font-size:12px; line-height:1.45; }.consent input { width:auto; margin-top:2px; }.form-button { grid-column:1/-1; justify-self:start; background:#eef2f2; color:var(--deep); border-color:#eef2f2; }.form-button:hover { background:transparent; color:#eef2f2; }
.site-footer { background:#101e27; color:#d6e0e2; padding:27px 0; }.site-footer .wrap { display:flex; justify-content:space-between; gap:20px; font-size:12px; }.site-footer a { text-decoration:underline; text-underline-offset:4px; }
@media (max-width:900px) { .wrap { width:min(100% - 46px,1240px); }.site-header .wrap { min-height:72px; }.primary-nav { display:none; }.hero { min-height:auto; grid-template-columns:1fr; }.hero-copy { min-height:670px; padding:150px 23px 60px; }.hero-media { min-height:390px; }.proofs .wrap { grid-template-columns:1fr; }.proof { border-right:0; border-bottom:1px solid rgba(255,255,255,.22); }.proof:not(:first-child) { padding-left:0; }.section-head,.governance-grid,.consult-grid { grid-template-columns:1fr; gap:32px; }.principles { grid-template-columns:1fr; }.principle,.principle:not(:first-child) { padding:22px 0; border-right:0; border-bottom:1px solid var(--line); }.service { grid-template-columns:65px 1fr; gap:15px; }.service p { grid-column:2; }.split-feature { grid-template-columns:1fr; }.split-feature .feature-photo { min-height:420px; }.feature-copy { padding:80px 23px; }.stage { grid-template-columns:60px 1fr; gap:15px; padding:20px 0; }.stage p { grid-column:2; }.consult { padding:85px 0; } form { grid-template-columns:1fr; }.form-field--full,.consent,.form-button { grid-column:auto; } section { padding:88px 0; } }
