@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#24282b;--bronze:#996b37;--paper:#faf9f6;--soft:#f0ede7;--line:#dcd7ce;--muted:#626563}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;line-height:1.65}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,select,textarea,summary{outline-offset:5px}button{cursor:pointer}img{display:block;max-width:100%}.wrap{width:min(1220px,calc(100% - 100px));margin:auto}.top{background:var(--ink);color:#fff;font-size:11px;letter-spacing:.14em}.top .wrap{display:flex;justify-content:space-between;padding:10px 0}.top a{letter-spacing:.05em}header{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.header{height:100px;display:flex;justify-content:space-between;align-items:center}.brand img{width:140px;height:85px;object-fit:contain}nav{display:flex;align-items:center;gap:34px;font-size:14px;font-weight:600}.button{display:inline-flex;justify-content:center;align-items:center;gap:25px;background:var(--bronze);color:white;padding:17px 25px;border:1px solid transparent;font-weight:600;font-size:14px;transition:background .2s,transform .2s}.button:hover{background:#785128;transform:translateY(-2px)}.small{padding:13px 19px}.light{background:var(--paper);color:var(--ink)}.light:hover{background:#e6ded0}.nav-services{position:relative}.nav-services summary{cursor:pointer;list-style:none}.nav-services summary:after{content:'+';margin-left:8px}.nav-services>div{position:absolute;top:35px;left:-25px;background:white;padding:20px;width:320px;box-shadow:0 15px 40px #0002;border:1px solid var(--line)}.nav-services a{display:block;padding:8px;font-size:13px}.nav-services a:hover{background:var(--soft)}.menu-toggle{display:none}.hero{min-height:660px;height:calc(100svh - 135px);max-height:850px;position:relative;display:flex;align-items:center;background:var(--ink);color:white;overflow:hidden}.hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(17,23,23,.91),rgba(17,23,23,.62) 48%,rgba(17,23,23,.1))}.hero-copy{position:relative;padding:70px 0 90px}.eyebrow{display:block;font-size:11px;font-weight:700;letter-spacing:.19em;color:var(--bronze);margin-bottom:23px}.hero .eyebrow{color:#dfbc8d}h1,h2,h3{font-family:'Manrope',sans-serif;font-weight:500;line-height:1.12;letter-spacing:-.045em;margin:0 0 25px}h1{font-size:clamp(48px,6.8vw,92px)}h1 em{font-style:normal;color:#e4c19b}h2{font-size:clamp(32px,3.5vw,49px)}h3{font-size:25px}p{margin:0 0 22px;color:var(--muted);font-size:16px}.hero p{font-size:18px;max-width:480px;color:#e5e7e4}.hero-actions{display:flex;align-items:center;gap:30px;margin-top:35px}.underlink{border-bottom:1px solid #c4c3bb;padding:9px 0;font-size:14px}.image-note{position:absolute;right:30px;bottom:18px;font-size:10px;color:#fff9}.intro-strip{display:flex;justify-content:space-between;padding:27px 0;font-size:10px;letter-spacing:.17em;border-bottom:1px solid var(--line);font-weight:700}.section{padding-top:105px;padding-bottom:105px}.split{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}.lead{font-size:21px;line-height:1.65;color:var(--ink)}.text-link{display:inline-flex;gap:30px;align-items:center;font-size:14px;font-weight:600;border-bottom:1px solid var(--bronze);padding-bottom:7px;margin-top:8px}.services-band,.soft{background:var(--soft)}.section-head{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:45px}.section-head p{max-width:330px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr)}.service-card{padding:35px 30px;border:1px solid var(--line);margin:-1px 0 0 -1px;display:flex;flex-direction:column;min-height:310px;transition:background .2s}.service-card:hover{background:#e7dfd3}.number{font-size:12px;color:var(--bronze);margin-bottom:30px;letter-spacing:.1em}.service-card h3{font-size:25px;max-width:260px}.service-card p{font-size:14px;margin-bottom:28px}.service-card .text-link{margin-top:auto;align-self:flex-start}.photo-frame{position:relative}.photo-frame img{height:510px;width:100%;object-fit:cover}.photo-frame small,small{font-size:10px;color:var(--muted)}.steps>div{display:flex;gap:25px;padding:24px 0;border-top:1px solid var(--line)}.steps b{color:var(--bronze);font-size:12px}.steps h3{font-size:20px;letter-spacing:-.025em;margin-bottom:10px}.steps p{font-size:14px;margin:0}.area-band{background:#e7e9e3;padding:75px 0}.faq{max-width:900px}.faq details{padding:22px 0;border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;font-size:18px;font-weight:500}.faq details p{margin:20px 0 0}.cta{background:var(--ink);color:var(--paper);padding:60px;display:flex;align-items:center;justify-content:space-between;gap:40px;margin-bottom:90px}.cta h2{font-size:38px;margin:0}.cta .eyebrow{color:#d1ad7e}footer{background:#eae7e0;padding:70px 0 25px}.footer-grid{display:grid;grid-template-columns:1.1fr .7fr 1.1fr;gap:70px}.footer-brand{font-size:24px;letter-spacing:.02em;font-weight:800;font-family:Manrope,sans-serif}.footer-brand span{display:block;color:var(--bronze);font-size:11px;letter-spacing:.25em;margin:0 0 22px}.footer-grid h3{font-family:'DM Sans',sans-serif;letter-spacing:0;font-size:14px;font-weight:700}.footer-grid p,.footer-grid a:not(.footer-brand){font-size:13px}.footer-grid>div>a:not(.footer-brand){display:block;margin:10px 0;overflow-wrap:anywhere}.footer-bottom{display:flex;justify-content:space-between;gap:25px;padding-top:35px;margin-top:45px;border-top:1px solid #cdc8bd;font-size:11px;color:var(--muted)}.footer-bottom a{text-decoration:underline}.page-hero{padding-top:85px;padding-bottom:75px}.page-hero h1{font-size:clamp(44px,5.5vw,75px);max-width:940px}.page-hero .lead{max-width:800px}.crumb{display:block;font-size:12px;color:var(--muted);margin-bottom:45px}.feature-list{list-style:none;padding:0;margin:0}.feature-list li{border-top:1px solid var(--line);padding:20px 0 20px 30px;position:relative}.feature-list li:before{content:'';position:absolute;left:0;color:var(--bronze)}.related{display:grid;grid-template-columns:1fr 1fr;gap:15px}.related a{padding:22px;border:1px solid var(--line)}.rounded-photo{height:500px;width:100%;object-fit:cover}.soft-panel{background:var(--soft);padding:65px;margin-bottom:90px}.soft-panel p{max-width:650px}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;padding-top:10px}.contact-phone{font-family:Manrope,sans-serif;font-size:29px;display:block;color:var(--bronze)}.contact-email{font-size:14px;overflow-wrap:anywhere}.contact-detail{padding-top:25px}.contact-detail b{font-size:10px;letter-spacing:.15em}.contact-detail p{font-size:15px;margin-top:10px}form{padding:40px;background:var(--soft)}form h2{font-size:30px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:block;font-size:13px;font-weight:600}label span{font-weight:400}.full{grid-column:1/-1}input,select,textarea{display:block;width:100%;padding:13px 12px;background:#fff;border:1px solid #c8c3ba;border-radius:0;margin-top:7px;color:var(--ink);min-width:0}textarea{resize:vertical}.consent{display:flex;align-items:flex-start;gap:10px;margin:25px 0;font-size:12px}.consent input{width:17px;margin:3px 0 0;flex-shrink:0}.consent a{text-decoration:underline}.form-note{font-size:11px;margin-top:15px}.honeypot{display:none}.prose{max-width:800px;padding-top:0}.prose h2{font-size:27px;margin-top:35px}.skip{position:fixed;left:10px;top:-100px;background:white;padding:15px;z-index:99}.skip:focus{top:10px}.consent-banner{position:fixed;bottom:20px;left:20px;right:20px;margin:auto;max-width:650px;background:white;border:1px solid var(--line);box-shadow:0 5px 40px #0002;padding:22px;z-index:30}.consent-banner p{font-size:13px;margin-bottom:12px}.consent-banner button{margin-right:12px;padding:9px 16px;border:1px solid var(--line);background:var(--ink);color:white}.consent-banner button+button{background:white;color:var(--ink)}
@media(max-width:1000px){.wrap{width:calc(100% - 60px)}nav{gap:22px}.split{gap:40px}.service-card{padding:28px 20px}.cta{padding:40px}.cta h2{font-size:32px}.contact-grid{gap:35px}.footer-grid{gap:35px}.hero{min-height:600px}.header{height:88px}}
@media(max-width:700px){.wrap{width:calc(100% - 40px)}.top{font-size:9px}.header{height:85px}.brand img{width:110px;height:72px}.menu-toggle{display:flex;background:transparent;border:0;align-items:center;gap:12px;padding:10px}nav{display:none;position:absolute;top:85px;left:0;right:0;background:white;padding:25px;align-items:stretch;border-bottom:1px solid var(--line)}nav.open{display:flex;flex-direction:column;gap:22px}.nav-services>div{position:static;width:100%;box-shadow:none;margin-top:10px;padding:10px}.hero{height:660px;min-height:0}.hero-copy{padding:45px 0}.hero h1{font-size:52px}.hero p{font-size:16px;max-width:320px}.hero-shade{background:linear-gradient(90deg,#141d1de8,#141d1d65)}.hero-actions{align-items:flex-start;flex-direction:column;gap:15px}.image-note{left:20px;right:20px;font-size:9px}.intro-strip{flex-wrap:wrap;gap:15px;font-size:8px}.section{padding-top:65px;padding-bottom:65px}.split,.contact-grid{grid-template-columns:1fr;gap:35px}.section-head{display:block}.section-head p{margin-top:20px}.service-grid{grid-template-columns:1fr}.service-card{min-height:240px;padding:28px}.number{margin-bottom:20px}.photo-frame img,.rounded-photo{height:350px}.area-band{padding:55px 0}.cta{flex-direction:column;align-items:flex-start;padding:30px;margin-bottom:60px}.cta h2{font-size:30px}.footer-grid{grid-template-columns:1fr;gap:25px}.footer-bottom{flex-direction:column;gap:12px}.page-hero{padding-top:55px;padding-bottom:45px}.page-hero h1{font-size:46px}.lead{font-size:18px}.related,.form-grid{grid-template-columns:1fr}.full{grid-column:auto}form{padding:25px 20px}.contact-grid{padding-top:0}.soft-panel{padding:30px}.crumb{margin-bottom:30px}.consent-banner{bottom:10px;left:10px;right:10px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
/* Revised visual direction: restrained editorial type, photographic composition and simple links. */

:root{--ink:#242724;--bronze:#946a3f;--paper:#f8f7f3;--soft:#eeece5;--line:#d6d4ca;--muted:#62655e}body{font-family:'DM Sans',sans-serif}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.045em}h2{font-size:clamp(38px,4.2vw,61px);line-height:1.06}.wrap{width:min(1260px,calc(100% - 110px))}.header{height:110px}.brand img{width:145px;height:93px}.button{font-size:12px;letter-spacing:.02em;padding:16px 23px;background:var(--ink);border:1px solid var(--ink);font-weight:500;gap:0}.button:hover{background:var(--bronze);border-color:var(--bronze);transform:none}.button.small{padding:14px 22px}.button.outline{background:transparent;color:var(--ink);border:1px solid #94978b}.button.outline:hover{background:var(--ink);color:white}nav{font-size:13px;gap:36px}.nav-services summary:after{content:'+';margin-left:9px;color:var(--bronze);font-weight:400}.eyebrow{font-size:10px;letter-spacing:.18em;font-weight:500;color:var(--bronze)}.section{padding-top:100px;padding-bottom:100px}.plain-link{display:inline-block;padding-bottom:4px;border-bottom:1px solid currentColor;font-size:13px}.new-hero{background:var(--paper)}.hero-editorial{display:grid;grid-template-columns:1fr 1fr;min-height:650px}.hero-intro{padding:75px max(45px,calc((100vw - 1260px)/2)) 0;padding-right:45px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.hero-intro h1{font-family:Georgia,serif;font-size:clamp(48px,5.4vw,80px);line-height:1.02;letter-spacing:-.055em;margin-bottom:30px}.hero-intro h1 em{display:block;font-size:.72em;font-style:italic;color:var(--bronze);margin-top:10px;letter-spacing:-.04em;line-height:1.1}.hero-description{font-size:15px;max-width:355px;line-height:1.8;margin-bottom:30px}.hero-footnote{font-size:8px;letter-spacing:.12em;border-top:1px solid var(--line);display:flex;gap:25px;padding:22px 0;margin-top:65px;width:100%;line-height:1.6}.hero-visual{position:relative;min-width:0;overflow:hidden;background:#a8a49a}.hero-visual>img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.hero-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0008,transparent 25%)}.image-caption{position:absolute;bottom:26px;left:30px;right:30px;color:white;z-index:1;display:flex;justify-content:space-between;gap:20px;font-size:8px;letter-spacing:.09em}.image-caption span:last-child{color:#fffc;letter-spacing:0}.hero-base{display:flex;justify-content:space-between;padding:25px 0;border-bottom:1px solid var(--line);font-size:12px}.hero-base a{border-bottom:1px solid var(--bronze)}.intro-layout{display:grid;grid-template-columns:1.05fr 1fr;gap:100px}.intro-layout h2{font-size:clamp(39px,4.3vw,62px)}.intro-layout p{font-size:15px}.intro-layout .lead{font-size:20px;line-height:1.6}.company-intro>.eyebrow{margin-bottom:40px}.work-intro{display:grid;grid-template-columns:1.05fr 1fr;background:#e6e7df}.work-image{position:relative;min-height:590px}.work-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.photo-label{position:absolute;bottom:14px;left:20px;font-size:9px;background:#242724ba;color:#fff;padding:3px 7px}.work-copy{padding:95px 12%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.work-copy h2{font-size:65px}.work-copy p{font-size:15px}.work-copy .button{margin-top:15px}.services-title{display:grid;grid-template-columns:1fr 2fr 1.2fr;gap:30px;align-items:end;padding-bottom:40px}.services-title h2{margin:0}.services-title p{font-size:13px;margin:0}.services-title>.eyebrow{align-self:center;font-size:10px}.service-row{display:grid;grid-template-columns:.45fr 2fr 1.4fr .6fr;align-items:center;gap:25px;padding:30px 0;border-top:1px solid var(--line);transition:background .2s}.service-row:last-child{border-bottom:1px solid var(--line)}.service-row:hover{background:#eeece4}.service-row h3{font-size:31px;margin:0;letter-spacing:-.035em}.service-row p{font-size:13px;margin:0;max-width:240px}.row-num{font-size:11px;color:var(--bronze)}.row-link{font-size:10px;border-bottom:1px solid var(--bronze);justify-self:end;padding-bottom:3px}.sectors-section{background:#262c28;color:#f4f1e9}.sectors-section .eyebrow{color:#caa675}.sector-title{display:grid;grid-template-columns:1fr 2fr;column-gap:45px;margin-bottom:45px}.sector-title h2{grid-column:2;font-size:56px}.sector-title .eyebrow{grid-row:1}.sector-title>p:last-child{grid-column:2;color:#bec1b6;font-size:14px}.sector-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:22px}.sector-large{position:relative;min-height:650px;display:flex;align-items:end;overflow:hidden}.sector-large img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.65);transition:transform .7s}.sector-large:hover img{transform:scale(1.03)}.sector-large>div{position:relative;padding:45px}.sector-layout h3{font-size:45px;line-height:1.05;margin:20px 0 25px}.sector-layout span:first-child{font-size:9px;letter-spacing:.16em}.sector-action{font-size:12px;padding-bottom:5px;border-bottom:1px solid #b4ac98}.sector-stack{display:grid;gap:22px}.sector-stack>a{padding:40px 45px;background:#343c35}.sector-stack>a:last-child{background:#b29a77;color:#222820}.sector-stack p{color:#d4d8ce;font-size:13px;max-width:300px}.sector-stack>a:last-child p{color:#2f382e}.sector-stack>a:last-child .sector-action{border-color:#3c4135}.process-section>div:first-child{display:flex;flex-wrap:wrap;justify-content:space-between;column-gap:50px}.process-section .eyebrow{width:100%}.process-intro{max-width:350px;font-size:14px}.process-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:55px;margin-top:50px}.process-columns article{border-top:1px solid var(--line);padding-top:23px}.process-columns article>span{font-size:11px;color:var(--bronze)}.process-columns h3{font-size:29px;letter-spacing:-.04em;margin-top:30px}.process-columns p{font-size:14px}.bc-section{background:#e6e7df;padding:75px 0}.bc-layout{display:grid;grid-template-columns:1fr 1fr;gap:120px}.bc-layout h2{font-size:70px}.bc-layout>div:last-child{padding-top:40px}.bc-layout p{font-size:15px}.bc-layout .lead{font-size:23px}.closing{position:relative;overflow:hidden;background:var(--paper);padding:90px 0 150px;border-bottom:1px solid var(--line)}.closing-inner{position:relative;z-index:1}.closing-inner h2{font-size:clamp(55px,7vw,95px);max-width:700px}.closing-contact{display:flex;gap:40px;align-items:center;margin-top:35px}.closing-phone{font-size:20px}.closing-word{position:absolute;bottom:-.1em;white-space:nowrap;font-family:'Manrope',sans-serif;font-size:15.5vw;letter-spacing:-.07em;font-weight:700;color:#eeece5;line-height:1;left:3vw;pointer-events:none}footer{background:#eeece5;padding-top:65px}.footer-brand{font-size:22px}.footer-grid p{line-height:1.85}.footer-bottom{margin-top:30px}.page-hero h1{font-family:Georgia,serif;font-size:clamp(45px,6.2vw,83px);line-height:1.05;max-width:950px}.page-hero{padding-top:70px;padding-bottom:60px}.page-hero .lead{font-size:19px;max-width:740px}.crumb{font-size:10px;margin-bottom:40px}.service-banner{position:relative;height:430px;margin-bottom:70px}.service-banner img{width:100%;height:100%;object-fit:cover}.service-banner small{position:absolute;left:18px;bottom:15px;color:#fff;background:#242724aa;padding:3px 8px}.feature-list li:before{content:'—';font-size:14px}.feature-list li{font-size:15px}.related a{border:0;border-top:1px solid var(--line);font-size:16px}.related a:hover{text-decoration:underline}.service-grid{gap:0}.service-card{min-height:240px;border:0;border-top:1px solid var(--line);margin:0;padding:30px}.service-card h3{font-size:31px}.service-card .text-link{border-bottom:1px solid var(--line);font-size:12px;gap:0}.contact-grid{padding-top:0;gap:110px}form{background:#efede6;border-top:3px solid var(--bronze)}form h2{font-size:34px}input,textarea,select{background:#faf9f6}.menu-toggle{letter-spacing:.06em;font-size:12px;border-bottom:1px solid var(--bronze);padding:8px 0}.area-band{background:#e6e7df}.soft-panel{border-top:1px solid var(--bronze)}
@media(max-width:1100px){.hero-intro{padding-left:45px;padding-right:30px}.hero-intro h1{font-size:59px}.hero-footnote{gap:15px;flex-direction:column;margin-top:45px}.intro-layout{gap:55px}.work-copy{padding:65px 10%}.work-copy h2{font-size:52px}.work-image{min-height:540px}.service-row{grid-template-columns:.3fr 1.6fr 1.1fr .6fr;gap:20px}.service-row h3{font-size:27px}.sector-stack>a{padding:30px}.sector-layout h3{font-size:38px}.contact-grid{gap:50px}}
@media(max-width:700px){.wrap{width:calc(100% - 40px)}.header{height:90px}.brand img{width:112px;height:77px}nav{top:90px}.hero-editorial{grid-template-columns:1fr}.hero-intro{padding:45px 20px 0}.hero-intro h1{font-size:57px}.hero-intro h1 em{font-size:38px}.hero-description{font-size:14px;max-width:320px}.hero-footnote{flex-direction:row;font-size:7px;margin-top:35px;padding:20px 0;gap:20px}.hero-visual{height:400px;min-height:0}.hero-visual img{object-position:center}.image-caption{left:20px;right:20px;bottom:18px;font-size:7px;gap:10px}.image-caption span:first-child{max-width:175px}.hero-base{font-size:10px;gap:15px;padding:20px 0;align-items:center}.hero-base>span{max-width:180px}.section{padding-top:65px;padding-bottom:65px}.company-intro>.eyebrow{margin-bottom:25px}.intro-layout,.work-intro{grid-template-columns:1fr;gap:20px}.intro-layout h2{font-size:43px}.intro-layout .lead{font-size:18px}.work-image{min-height:360px;order:2}.work-copy{padding:50px 25px;order:1}.work-copy h2{font-size:53px}.work-intro{gap:0}.services-title{grid-template-columns:1fr;gap:15px}.services-title h2{font-size:48px}.services-title p{font-size:13px}.service-row{grid-template-columns:25px 1fr;gap:12px;padding:23px 0}.service-row h3{font-size:28px}.service-row p{grid-column:2;max-width:100%;font-size:12px}.row-link{grid-column:2;justify-self:start;font-size:10px;margin-top:5px}.sector-title{display:block}.sector-title h2{font-size:44px}.sector-layout{grid-template-columns:1fr}.sector-large{min-height:470px}.sector-large>div{padding:30px}.sector-layout h3{font-size:40px}.sector-stack>a{padding:30px;min-height:300px}.process-section>div:first-child{display:block}.process-section h2{font-size:44px}.process-columns{grid-template-columns:1fr;gap:20px;margin-top:30px}.process-columns article{padding-top:20px}.process-columns h3{margin-top:15px;margin-bottom:15px}.bc-layout{grid-template-columns:1fr;gap:15px}.bc-layout h2{font-size:60px}.bc-layout>div:last-child{padding-top:0}.closing{padding:65px 0 110px}.closing-inner h2{font-size:62px}.closing-contact{flex-direction:column;align-items:flex-start;gap:20px}.closing-word{font-size:16vw;bottom:5px}.page-hero h1{font-size:49px}.page-hero .lead{font-size:17px}.service-banner{height:270px;margin-bottom:45px}.service-grid{grid-template-columns:1fr}.contact-grid{gap:35px}form h2{font-size:30px}.footer-grid{gap:30px}.button{padding:15px 22px}}

/* Keep the enquiry form clear of the sticky navigation when linked directly. */
#quote-form { scroll-margin-top: 140px; }
@media(max-width: 760px) { #quote-form { scroll-margin-top: 110px; } }

/* Explicit styling prevents mobile browsers from applying blue button text. */
.menu-toggle, .menu-toggle:visited, .menu-toggle:hover, .menu-toggle:focus, .menu-toggle:active { color: var(--ink); -webkit-text-fill-color: var(--ink); appearance: none; -webkit-appearance: none; }

/* Selected project photography */
.project-jumps{display:flex;gap:26px;flex-wrap:wrap;margin-top:28px;font-size:13px}.project-jumps a{border-bottom:1px solid var(--bronze);padding-bottom:5px}.project-feature{padding-bottom:90px;scroll-margin-top:140px}.project-heading{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:end;margin-bottom:40px}.project-heading h2{margin-bottom:0}.project-heading>p{max-width:470px;margin-bottom:5px;font-size:15px}.project-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:35px 24px}.project-gallery figure{margin:0;min-width:0}.project-photo{display:block;overflow:hidden;background:#e4e1da}.project-gallery img{width:100%;height:400px;object-fit:cover;transition:transform .5s}.project-photo:hover img{transform:scale(1.025)}.project-gallery figcaption{font-size:11px;color:var(--muted);padding-top:12px}.progress-gallery{border-top:1px solid var(--line);margin-top:40px;padding-top:22px}.progress-gallery summary{cursor:pointer;font-size:14px}.progress-grid{grid-template-columns:repeat(2,1fr);max-width:800px;margin-top:25px}.residential-section{background:var(--soft);scroll-margin-top:110px}.featured-project{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.featured-photo img{width:100%;height:560px;object-fit:cover}.featured-copy p{max-width:430px}.featured-copy h2{font-size:59px}.residential-link{display:table;margin-top:24px}.photo-dialog{border:0;padding:0;background:#161b18;width:min(1000px,95vw);max-width:95vw;max-height:94svh;color:white}.photo-dialog::backdrop{background:#111d}.photo-dialog img{max-height:83svh;width:100%;object-fit:contain}.photo-dialog button{display:block;margin:10px 15px 10px auto;padding:8px 20px;background:white;border:0;color:#242724}.photo-dialog:focus{outline:2px solid var(--bronze)}
@media(max-width:1000px){.project-heading,.featured-project{gap:40px}.project-gallery img{height:320px}.featured-copy h2{font-size:47px}}
@media(max-width:700px){.project-heading,.featured-project{grid-template-columns:1fr;gap:22px}.project-heading h2{font-size:43px}.project-gallery{grid-template-columns:repeat(2,1fr);gap:24px 14px}.project-gallery img{height:250px}.project-gallery figcaption{font-size:10px;line-height:1.5}.project-heading>p{font-size:14px}.project-feature{padding-bottom:60px}.featured-photo img{height:410px}.featured-copy h2{font-size:46px}.featured-copy{padding-top:12px}.project-jumps{gap:20px}.progress-grid img{height:240px}}
@media(max-width:380px){.project-gallery img{height:210px}}

/* Insurance and commercial coordination */
.insured-strip{border-bottom:1px solid var(--line);background:#eeece5}.insured-inner{display:flex;align-items:center;gap:23px;padding-top:23px;padding-bottom:23px}.insured-inner svg{color:var(--bronze);flex-shrink:0}.insured-inner strong{display:block;font-size:15px;font-weight:600}.insured-inner span{font-size:12px;color:var(--muted)}.insured-inner>p{margin:0 0 0 auto;font-size:12px}.trust-columns,.commercial-sectors{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:40px}.trust-columns article,.commercial-sectors>*{border-top:1px solid var(--line);padding-top:25px}.trust-columns h3,.commercial-sectors h3{font-size:29px;line-height:1.15}.trust-columns p,.commercial-sectors p{font-size:14px}.commercial-intro{max-width:650px}.permit-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:45px 65px;margin-top:45px}.permit-grid article{border-top:1px solid #ccc8bd;padding-top:25px}.permit-grid article>span{font-size:10px;letter-spacing:.15em;color:var(--bronze)}.permit-grid h3{font-size:32px;line-height:1.13;margin-top:18px}.permit-grid p{font-size:14px;max-width:510px}.permit-note{font-size:12px;margin-top:35px;max-width:800px}.commercial-brief{display:flex;align-items:center;gap:60px;justify-content:space-between;border-top:1px solid var(--line);padding:35px 0 55px}.commercial-brief h3{font-size:35px}.commercial-brief p{max-width:680px;font-size:14px}.commercial-brief .plain-link{white-space:nowrap}.footer-grid p.footer-tagline{font-family:Georgia,serif;font-size:18px;color:var(--ink);margin:4px 0 20px}
@media(max-width:700px){.insured-inner{gap:15px;flex-wrap:wrap}.insured-inner>p{margin:0 0 0 43px;font-size:11px}.insured-inner span{font-size:11px}.trust-columns,.commercial-sectors,.permit-grid{grid-template-columns:1fr;gap:22px}.trust-columns h3,.commercial-sectors h3{font-size:28px;margin-bottom:13px}.permit-grid h3{font-size:29px}.commercial-brief{display:block;padding-bottom:40px}.commercial-brief h3{font-size:32px}.commercial-brief .plain-link{margin-top:8px}.hero-intro h1 em{font-size:37px}}

#why-choose-us{scroll-margin-top:130px}@media(max-width:700px){#why-choose-us{scroll-margin-top:105px}}

/* Clear design coordination feature and stronger phone numbers. */
a[href^="tel:"]{font-weight:700!important;letter-spacing:.015em}.closing-phone{font-size:23px}.contact-phone{font-weight:700}.mobile-header-phone{display:none}.design-highlight{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start;border-top:1px solid var(--line)}.design-highlight h2{font-size:clamp(38px,4vw,58px)}.design-highlight>div:last-child{padding-top:38px}.design-intro{max-width:740px}.design-highlight .lead{font-size:21px}
@media(max-width:700px){.mobile-header-phone{display:block;font-size:15px;margin-left:auto;margin-right:20px;white-space:nowrap;color:var(--ink)}.design-highlight{grid-template-columns:1fr;gap:10px}.design-highlight>div:last-child{padding-top:0}.design-highlight h2{font-size:42px}.design-highlight .lead{font-size:18px}.closing-phone{font-size:24px}.footer-grid a[href^="tel:"]{font-size:17px}.brand img{width:95px}.menu-toggle{font-size:11px}}
@media(max-width:370px){.mobile-header-phone{font-size:13px;margin-right:12px}.brand img{width:86px}}
