/* Anthracite, bronze and ivory: STMP's architectural palette. */
:root{--ink:#f2eee8;--muted:#bcb6ae;--paper:#191a1b;--accent:#c9a87c;--line:#ffffff24;color-scheme:dark}
.header{background:#141516;color:var(--ink);border-color:var(--line);height:100px;padding-inline:6%}
.header-cta{border-color:#c9a87c;color:#e2c49d}
.brand span{font-size:11px;letter-spacing:1.5px}
.skip{background:#f2eee8;color:#191a1b}
.hero{position:relative;isolation:isolate;display:grid;grid-template-columns:1fr;gap:0;max-width:none;padding:0;margin:0;background:#141516}
.hero-image{position:absolute;inset:0 0 135px;height:auto;min-height:0;margin:0;z-index:-1;background:#343332}
.hero-image img{object-position:center 56%;opacity:.72}
.hero-image:after{inset:0;background:linear-gradient(90deg,rgba(14,15,16,.82),rgba(14,15,16,.44) 55%,rgba(14,15,16,.12)),linear-gradient(0deg,rgba(14,15,16,.56),transparent 40%)}
.hero-copy{max-width:900px;padding:90px 6% 85px;margin:0;min-height:690px;align-self:auto}
.hero .eyebrow{color:#e3caa8;font-size:13px;letter-spacing:3px}
.hero .eyebrow:before{background:#e3caa8}
h1{font-size:clamp(54px,6.7vw,100px);line-height:1.04;letter-spacing:-3.7px;margin-bottom:28px}
h1 em,h2 em{color:#d0ae83}
.hero h1{color:#fffaf3;text-shadow:0 2px 25px #0003}
.hero h1 em{color:#e6c7a2}
.hero .intro{color:#eee8df;max-width:510px;font-size:18px;line-height:1.75}
.button{background:#cfad81;border-color:#cfad81;color:#171819;font-size:15px;padding:20px 25px}
.button:hover{background:#e1c29a;border-color:#e1c29a}
.appointment{color:#e1d8cc;font-size:14px}.appointment strong{color:#fff4e7}
.visual-signature{left:auto;right:6%;bottom:45px;max-width:280px;display:block;border-color:#e3d4bc66;text-align:right}
.visual-signature>span{font-size:35px;letter-spacing:5px}.visual-signature p{margin-top:12px;color:#f0e8dc}
.hero-bottom{height:135px;align-items:center;margin:0;padding:28px 6%;background:#171819;border-color:var(--line);gap:25px}
.hero-bottom strong{font-size:19px;color:#e5c6a0}.hero-bottom span{font-size:14px;color:#c2bbb2}
.section{padding-block:105px}.eyebrow{color:#c9a87c;font-size:13px;letter-spacing:2.3px}
.section-intro{margin-bottom:46px}h2{font-size:clamp(38px,3.8vw,58px);line-height:1.14}
.service-list{gap:30px}.service-list article,.service-list article:last-child{background:#232425;border:1px solid #ffffff16;min-height:0;padding:0 30px 30px;overflow:hidden;grid-template-rows:auto auto 1fr;align-content:start;color:var(--ink)}
.service-photo{display:block;grid-column:1/-1;grid-row:1;width:calc(100% + 60px);max-width:none;height:260px;object-fit:cover;margin:0 -30px 28px;filter:saturate(.75);transition:filter .4s}
.service-list article:hover .service-photo{filter:saturate(1)}
.service-list .number{grid-row:2;font-size:32px;color:#d0ae83;margin-bottom:20px;letter-spacing:-1px}
.service-list .service-tag{grid-row:2;color:#bca78c;font-size:12px;letter-spacing:1.7px;padding-top:10px}
.service-list article>div{grid-row:3;min-width:0}.service-list h3{font-size:28px;margin-bottom:12px;letter-spacing:-.6px}
.service-list p,.service-list article:last-child p{color:#bfb9b1;line-height:1.75;max-width:520px}
.service-list article:last-child .number,.service-list article:last-child .service-tag{color:#d0ae83}
.expertise{background:#111213;border-block:1px solid #ffffff14}.expertise .eyebrow{color:#c9a87c}.expertise h2 em{color:#d0ae83}
.expertise-lead,.commitments p{color:#bfb9b1}.commitments article,.commitments article:last-child{border-color:#ffffff25}.commitments article>span{color:#c9a87c;font-size:14px}
.contact{background:#191a1b}.appointment-note>span{color:#c9a87c;font-size:13px}.appointment-note a{color:#e2c49d}
form{background:#222324;border-color:#ffffff20;box-shadow:none;padding:34px}
input:not([type=checkbox]):not([type=hidden]),select,textarea{background:#191a1b;border-color:#555452;color:#f2eee8;border-radius:0}
input::placeholder,textarea::placeholder{color:#a5a09a}.choices label{border-color:#555452;font-size:14px}.choices input{accent-color:#d0ae83}.choices label:has(input:checked){background:#3c3328;border-color:#c9a87c}
.optional{font-size:13px}.preview-note,.privacy-note,.direct-contact,.form-status{font-size:14px}.form-status.error{color:#ffb4a8}
footer{background:#111213;border-top:1px solid #ffffff20}footer p,.footer-meta{color:#bfb9b1;font-size:14px}
.thanks-main{padding-top:95px}.thanks-main h1 em{color:#d0ae83}
@media(min-width:1700px){.hero-copy{margin-left:calc((100vw - 1700px)/2);padding-left:100px}}
@media(max-width:1050px){.hero-copy{padding:75px 6%;min-height:670px}.visual-signature{max-width:210px;bottom:30px}.hero-bottom{gap:15px}.hero-bottom strong{font-size:17px}.hero-bottom span{font-size:13px}.service-photo{height:220px}.section{padding-block:80px}.service-list{gap:22px}.service-list h3{font-size:25px}.service-list article,.service-list article:last-child{padding-inline:24px}.service-photo{width:calc(100% + 48px);margin-inline:-24px}form{padding:25px}}
@media(max-width:760px){.header{height:90px}.header-cta{font-size:13px}.hero-copy{padding:64px 6% 52px;min-height:620px}.hero h1{font-size:clamp(46px,9.4vw,70px);letter-spacing:-2px}.hero h1 em{white-space:normal;letter-spacing:-1.8px}.hero .intro{font-size:17px;max-width:450px}.hero .eyebrow{font-size:12px;letter-spacing:2px}.hero-image{inset:0 0 207px;height:auto}.hero-image img{object-position:63% center;opacity:.66}.hero-image:after{background:linear-gradient(90deg,#111213d6,#11121365),linear-gradient(0deg,#11121370,transparent)}.visual-signature{display:none}.hero-bottom{height:207px;padding:25px 6%;gap:24px 16px;grid-template-columns:1fr 1fr}.hero-bottom strong{font-size:17px}.hero-bottom span{font-size:13px}.section{padding-block:65px}.service-list{gap:25px}.service-photo{height:auto;aspect-ratio:3/2;margin-bottom:24px}.service-list h3{font-size:27px}.service-list .number{margin-bottom:18px}.service-list article,.service-list article:last-child{padding:0 24px 28px}.service-list .service-tag{font-size:11px}.eyebrow{font-size:12px}.expertise h2{font-size:37px}form{padding:25px 20px}.thanks-main h1{font-size:54px}}
@media(prefers-reduced-motion:reduce){.service-photo{transition:none}}
