:root{--paper:#f6f3ed;--ink:#30262e;--accent:#c94b30;--line:#d8d2cb;--muted:#6c6368;--light:#fffdf8}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:6px}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:2px}.skip{position:absolute;top:-100px;background:white;padding:12px;z-index:10}.skip:focus{top:0}.concept{height:34px;background:var(--ink);color:#f6f3ed;padding:0 5%;font-size:11px;letter-spacing:.06em;display:flex;align-items:center;gap:9px}.dot{height:6px;width:6px;border-radius:50%;background:#f18e70}.concept-note{margin-left:auto;color:#cec3c9}.header{padding:27px 5%;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line)}.wordmark{font-size:29px;font-weight:900;letter-spacing:-1.9px;line-height:.95;display:inline-flex;flex-direction:column}.wordmark span{font-size:9px;letter-spacing:5.4px;margin-top:8px;font-weight:600}.header nav{display:flex;gap:34px;font-size:13px}.header nav a:hover{color:var(--accent)}.nav-cta{font-size:12px;font-weight:bold;display:flex;gap:30px;align-items:center}.nav-cta span{font-size:24px}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:690px;padding:42px 5% 55px;gap:5%}.hero-copy{padding:55px 0 20px;align-self:center}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;margin:0 0 27px;display:flex;align-items:center;gap:9px}.eyebrow>span{width:20px;height:1px;background:var(--accent)}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.04;letter-spacing:-3.7px;margin:0}h1{font-size:clamp(56px,6.15vw,94px)}h2{font-size:clamp(42px,4.1vw,65px);letter-spacing:-2.5px}em{font-weight:400;color:var(--accent)}.hero-intro{max-width:420px;color:var(--muted);font-size:15px;line-height:1.85;margin:29px 0 30px}.button{border:0;background:var(--accent);color:white;display:inline-flex;justify-content:space-between;align-items:center;gap:25px;padding:18px 22px;font-size:12px;font-weight:700;cursor:pointer;transition:background .2s}.button:hover{background:#a73823}.button span{font-size:22px;line-height:1}.text-link{font-size:12px;font-weight:700;display:flex;gap:24px;align-items:center;width:fit-content}.hero .text-link{margin-top:23px}.hero-visual{position:relative;min-height:590px;overflow:hidden}.hero-visual>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:48% center}.hero-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(22,20,22,.55),transparent 45%)}.image-label{position:absolute;left:24px;top:23px;background:var(--paper);font-size:8px;font-weight:bold;letter-spacing:1.3px;padding:9px 12px}.visual-caption{position:absolute;bottom:30px;left:30px;right:30px;z-index:1;display:flex;align-items:end;justify-content:space-between;color:white;font-family:Georgia,serif;font-size:30px;line-height:1.15}.circle-arrow{border:1px solid #ffffff80;border-radius:50%;width:47px;height:47px;display:grid;place-items:center;font-family:Arial;font-size:24px}.service-strip{background:#e9e4dc;padding:24px 5%;display:flex;justify-content:space-between;gap:18px;align-items:center;font-size:11px;font-weight:700;letter-spacing:.3px}.service-strip span:nth-child(even){font-size:23px;color:var(--accent)}.section{padding:100px 5%}.section-heading{display:flex;justify-content:space-between;gap:60px;align-items:end;margin-bottom:45px}.section-heading>p{max-width:330px;color:var(--muted);font-size:14px;line-height:1.9;margin-bottom:5px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.card-image{position:relative;aspect-ratio:1.4;overflow:hidden;background:#ddd6cb}.card-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.service-card:hover img{transform:scale(1.035)}.card-image>span{position:absolute;left:16px;top:16px;background:var(--paper);font-size:11px;padding:5px 11px}.card-body{padding:23px 0 0}h3{font-weight:500;font-size:20px;letter-spacing:-.4px;margin:0 0 12px}.card-body p{font-size:13px;color:var(--muted);line-height:1.8;margin:0 0 23px}.card-body a{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:16px;font-size:11px;font-weight:700}.card-body a span{font-size:18px}.approach{background:var(--ink);color:var(--paper);display:grid;grid-template-columns:1.1fr 1fr;gap:10%}.approach em{color:#f28a69}.approach-title>p:not(.eyebrow){font-size:14px;color:#c4b9c0;max-width:350px;margin:28px 0}.approach .text-link{color:#f28a69}.steps article{display:flex;gap:25px;border-top:1px solid #66565f;padding:28px 0}.steps article>span{color:#f28a69;font-size:12px}.steps h3{font-size:18px}.steps p{font-size:13px;color:#c4b9c0;margin:0;line-height:1.8}.area{display:grid;grid-template-columns:1fr 1fr;gap:10%;border-bottom:1px solid var(--line);align-items:center}.large-copy{font-family:Georgia,serif;font-size:27px;line-height:1.45;letter-spacing:-.6px;margin:0 0 25px}.locations{display:flex;flex-wrap:wrap;gap:8px}.locations span{border:1px solid #bfb5b7;border-radius:30px;padding:7px 14px;font-size:11px}.area-note{font-size:12px;color:var(--muted);max-width:370px;margin-top:24px}.faq{display:grid;grid-template-columns:1fr 1.3fr;gap:10%}.questions details{border-bottom:1px solid var(--line);padding:22px 0}.questions details:first-child{border-top:1px solid var(--line)}summary{font-size:14px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px}summary::-webkit-details-marker{display:none}summary:after{content:'+';font-size:22px;line-height:1;color:var(--accent)}details[open] summary:after{content:'−'}details p{font-size:13px;color:var(--muted);padding-right:25px;margin:15px 0 2px}.quote{background:#eae4dc;display:grid;grid-template-columns:1fr 1fr;gap:10%}.quote-intro>p:not(.eyebrow){font-size:14px;max-width:340px;color:var(--muted);margin:28px 0}.preview-note{display:flex;gap:16px;max-width:345px;border-top:1px solid #cfc5bf;margin-top:44px;padding-top:20px}.preview-note>span{color:var(--accent);font-size:25px}.preview-note p{font-size:11px;color:var(--muted);margin:0;line-height:1.8}.preview-note strong{color:var(--ink)}form{display:flex;flex-direction:column;gap:19px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:17px}label{display:flex;flex-direction:column;font-size:11px;font-weight:700;gap:8px;position:relative}label>span{position:absolute;right:0;top:0;color:var(--accent)}input,select,textarea{width:100%;border:1px solid #cfc5bf;border-radius:0;background:#f7f3ee;color:var(--ink);padding:13px 12px;font-size:12px;min-height:46px}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}.form-note{font-size:10px;color:var(--muted);margin:0}form .button{width:100%;padding:17px 20px}#quote-result:empty{display:none}#quote-result{font-size:13px;background:var(--paper);padding:18px;border-left:3px solid var(--accent);overflow-wrap:anywhere}footer{padding:55px 5% 22px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:35px;align-items:start}footer>p{font-size:12px;color:var(--muted);margin:0}footer>a:last-of-type{justify-self:end;font-size:11px}.footer-bottom{grid-column:1/-1;border-top:1px solid var(--line);padding-top:20px;display:flex;justify-content:space-between;font-size:9px;color:var(--muted);margin-top:20px}@media(min-width:1600px){.header,.hero,.section,footer{padding-left:max(5%,calc((100vw - 1440px)/2));padding-right:max(5%,calc((100vw - 1440px)/2))}}@media(max-width:900px){.header nav{gap:20px}.hero{gap:5%;min-height:560px}.hero-visual{min-height:500px}h1{font-size:61px}.hero-copy{padding-top:30px}.button{font-size:10px;gap:12px;padding:16px}.visual-caption{font-size:24px;left:20px;right:20px}.section{padding-top:75px;padding-bottom:75px}.cards{gap:18px}.card-body h3{font-size:18px}.approach,.area,.quote{gap:7%}.faq{gap:6%}.quote h2{font-size:45px}}@media(max-width:650px){.concept{padding:0 6%;font-size:10px}.concept-note{display:none}.header{padding:22px 6%}.header nav{display:none}.wordmark{font-size:26px}.wordmark span{font-size:8px;letter-spacing:4.9px}.nav-cta{font-size:10px;gap:12px}.hero{grid-template-columns:1fr;padding:26px 6% 30px;gap:35px}.hero-copy{padding:17px 0 0}h1{font-size:65px;letter-spacing:-3.4px}.eyebrow{font-size:9px;margin-bottom:20px;letter-spacing:1.6px}.hero-intro{font-size:14px;margin:24px 0;max-width:365px}.button{font-size:11px;padding:18px 20px}.hero .text-link{margin-top:20px;font-size:11px}.hero-visual{min-height:420px}.visual-caption{font-size:28px}.service-strip{padding:18px 6%;gap:12px;justify-content:flex-start;flex-wrap:wrap;font-size:10px}.service-strip span:nth-child(even){font-size:17px}.service-strip span:last-child{display:none}.section{padding:65px 6%}.section-heading{display:block;margin-bottom:32px}h2{font-size:45px;letter-spacing:-2px}.section-heading>p{font-size:13px;margin-top:24px}.cards{grid-template-columns:1fr;gap:36px}.card-image{aspect-ratio:1.5}.card-body{padding-top:18px}.card-body h3{font-size:22px}.card-body p{font-size:13px;margin-bottom:18px}.approach,.area,.faq,.quote{grid-template-columns:1fr;gap:38px}.approach-title>p:not(.eyebrow){font-size:13px}.steps article{padding:23px 0}.large-copy{font-size:25px}.area{gap:26px}.faq{gap:30px}.quote{gap:33px}.preview-note{margin-top:28px}.quote-intro>p:not(.eyebrow){margin:24px 0}.form-row{gap:12px}footer{padding:40px 6% 20px;grid-template-columns:1fr 1fr;gap:28px}footer>a:last-of-type{justify-self:start;grid-column:1/-1}.footer-bottom{margin-top:0;gap:20px;font-size:8px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.nav-toggle{display:none;border:0;background:none;color:var(--ink);font-size:12px;cursor:pointer}.quote-summary{white-space:pre-wrap;overflow-wrap:anywhere;font-family:inherit;font-size:12px}.button-secondary{margin-top:12px}#quote-result[hidden]{display:none}@media(max-width:800px){.header{position:relative;flex-wrap:wrap}.nav-toggle{display:block;margin-left:auto}.header nav{display:none;width:100%;order:4;padding-top:16px;border-top:1px solid var(--line)}.header nav.is-open{display:flex}.header .nav-cta{margin-left:8px}}


@media(max-width:380px){h1{font-size:56px}.form-row{grid-template-columns:1fr}.header{gap:14px}.nav-cta{font-size:9px}}

#quote-fields{border:0;padding:0;margin:0;min-width:0;display:flex;flex-direction:column;gap:19px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}

/* Approved identity and final layout */
.brand-logo{display:block;width:260px;height:auto;max-height:86px;object-fit:contain}.wordmark{letter-spacing:normal;flex-shrink:0}footer .brand-logo{width:250px}.header{gap:20px}.header nav{gap:24px}.contact{display:grid;grid-template-columns:1fr 1fr;gap:10%;border-bottom:1px solid var(--line)}.contact>div>p:not(.eyebrow){max-width:400px;font-size:14px;color:var(--muted)}.contact-card{padding:30px;border:1px solid var(--line);align-self:center}.contact-card p{font-size:13px;color:var(--muted)}.contact-email{overflow-wrap:anywhere}.privacy.section{padding-top:30px;padding-bottom:30px}.privacy p{max-width:900px}.form-note a{text-decoration:underline}#quote-result .button{margin-top:14px}a,button,summary{touch-action:manipulation}input,select,textarea{font-size:16px}.nav-toggle{min-height:44px}.header nav a{padding:8px 0}.service-strip span:last-child{display:inline}.hero-visual img{object-position:center}.header .brand-logo{width:245px}
@media(max-width:1100px){.header nav{gap:16px}.header .brand-logo{width:215px}.nav-cta{gap:12px}}
@media(max-width:800px){.header .brand-logo{width:215px}.header .nav-cta{display:none}.contact{grid-template-columns:1fr;gap:25px}.header nav.is-open{flex-wrap:wrap;gap:12px 24px}.header nav a{min-height:44px}.hero .button{font-size:12px}.form-row{grid-template-columns:1fr}.header{padding-top:18px;padding-bottom:18px}footer .brand-logo{width:210px}.footer-bottom{flex-wrap:wrap}.service-strip{font-size:11px}.service-strip span:nth-child(even){display:none}.service-strip span{padding-right:12px}.contact-card{padding:24px}}

/* Keep the approved logo within narrow footer columns. */
footer .wordmark{min-width:0;max-width:100%}footer .brand-logo{max-width:100%}

/* Release polish: readable controls, resilient grids and keyboard focus. */
.hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.cards{grid-template-columns:repeat(3,minmax(0,1fr))}
.hero-copy,.section-heading>div,.service-card,.approach-title,.area-right,.quote-intro,.questions{min-width:0}
.button{max-width:100%;min-height:48px}
.button svg,.text-link svg,.circle-arrow{flex-shrink:0}
.button:disabled{cursor:wait;opacity:.75}
.text-link,.card-body a{min-height:44px}
label{font-size:13px}
.form-note{font-size:12px;line-height:1.65}
.footer-bottom{font-size:11px;line-height:1.6}
.footer-bottom a{display:inline-flex;align-items:center;min-height:44px}
summary{min-height:44px;align-items:center}
summary:after{flex-shrink:0}
.approach a:focus-visible{outline-color:#f28a69}
@media(max-width:800px){
  .hero{grid-template-columns:minmax(0,1fr);gap:32px}
  .hero-copy{max-width:620px}
  .hero-visual{min-height:420px}
  .service-strip{flex-wrap:wrap}
  .header .wordmark{min-width:0;max-width:calc(100% - 80px)}
  .header .brand-logo{max-width:100%}
  .nav-toggle{min-width:44px}
}
@media(max-width:650px){
  .cards{grid-template-columns:minmax(0,1fr)}
  .visual-caption{gap:14px}
  .visual-caption>span:first-child{min-width:0}
}
@media(max-width:480px){
  footer{grid-template-columns:minmax(0,1fr);gap:24px}
  footer .brand-logo{width:210px}
  h2,.quote h2{font-size:clamp(36px,10.5vw,45px)}
}
@media(prefers-reduced-motion:reduce){
  .service-card:hover img{transform:none}
}
