:root{--ink:#151515;--paper:#f3f1ec;--line:#c9c6bf;--muted:#666}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Arial,Helvetica,sans-serif;background:#f7f6f2}.nav{height:86px;padding:0 6vw;display:flex;align-items:center;gap:40px;position:absolute;z-index:5;width:100%;color:#111;background:linear-gradient(180deg,rgba(247,246,242,.9),rgba(247,246,242,0))}.brand{display:block;margin-right:auto;width:190px;height:66px;overflow:hidden}.brand img{width:100%;height:100%;object-fit:contain}.nav nav{display:flex;gap:34px}.nav a{font-size:11px;text-decoration:none;color:inherit}.hero{min-height:100vh;display:grid;grid-template-columns:56% 44%;position:relative;background:#f2f0eb}.hero-copy{padding:27vh 3vw 12vh 5vw;z-index:2}.hero h1{font-size:clamp(42px,4.1vw,70px);line-height:1.03;letter-spacing:-.045em;font-weight:400;margin:0 0 22px}.hero h1 span{display:block;white-space:nowrap}.hero p{font-size:18px;color:#444;margin-bottom:40px}.hero-cta{display:inline-block;color:inherit;text-decoration:none;border-bottom:1px solid #222;padding-bottom:8px;font-size:11px;letter-spacing:.04em}.hero-photo{position:relative;overflow:hidden}.hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#f2f0eb 0%,rgba(242,240,235,.55) 8%,transparent 25%)}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center}.section{padding:100px 7vw}.strategy{display:grid;grid-template-columns:32% 68%;min-height:330px;align-items:center}.strategy h2,.section-head h2,.about h2,.contact h2,.services-intro h2{font-size:clamp(36px,4vw,62px);font-weight:400;letter-spacing:-.04em;margin:0}.strategy-right>p{font-size:16px;line-height:1.45;color:#555;margin-bottom:55px}.flow{display:flex;align-items:center;gap:14px;font-size:10px}.flow i{height:1px;background:#aaa;flex:1}.services{background:#ebe9e3}.services-intro{display:grid;grid-template-columns:60% 40%;gap:60px;align-items:end;margin-bottom:70px}.services-intro>p{max-width:500px;color:#555;line-height:1.6;margin:0}.eyebrow{font-size:10px;letter-spacing:.12em;margin:0 0 22px;color:#666}.service-columns{display:grid;grid-template-columns:1fr 1fr;gap:28px}.service-columns article{background:#f7f6f2;padding:42px}.service-title{padding-bottom:28px;border-bottom:1px solid #c8c5bd}.service-title h3{font-size:23px;font-weight:500;margin:0 0 10px}.service-title p{margin:0;color:#666;font-size:13px}.service-links{display:grid}.service-links button{border:0;border-bottom:1px solid #d5d2cb;background:transparent;padding:18px 0;text-align:left;font-size:15px;cursor:pointer;display:flex;justify-content:space-between;color:inherit}.service-links button:hover{padding-left:8px}.service-links b{font-weight:400}.section-head{margin-bottom:55px}.project-list{background:#f7f6f2}.experience-head{display:flex;justify-content:space-between;gap:50px;align-items:end}.experience-head p{max-width:560px;color:#666;line-height:1.6;margin:0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:40px 22px}.cards button{border:0;background:transparent;padding:0;text-align:left;cursor:pointer;color:inherit}.cards img{width:100%;aspect-ratio:4/3;object-fit:cover}.cards span{display:block;font-size:18px;margin-top:15px}.cards small{display:block;color:#777;font-size:11px;margin-top:6px}.about{display:grid;grid-template-columns:54% 46%;background:#f0eee9}.about>img{width:100%;height:640px;object-fit:cover}.about>div{padding:100px 8vw}.about p{font-size:17px;line-height:1.65;color:#555;max-width:560px}.about a{display:inline-block;margin-top:25px;color:inherit;font-size:11px}.contact{min-height:520px;padding:100px 7vw;display:grid;grid-template-columns:60% 40%;background:#171715;color:#f4f2ed;align-items:center}.contact>div:first-child>p{max-width:650px;line-height:1.6;color:#c8c5bd;margin-top:28px}.contact-details{font-size:14px;line-height:1.7}.contact-details a{color:inherit}.contact-details p{margin:30px 0;color:#c8c5bd}footer{height:100px;padding:0 7vw;display:flex;align-items:center;justify-content:space-between;font-size:10px;background:#f7f6f2}.footer-logo{width:150px;height:62px;object-fit:contain}dialog{width:min(820px,92vw);border:0;padding:0;background:#f4f2ed;box-shadow:0 20px 80px #0006}dialog::backdrop{background:#0009}.close{position:absolute;right:20px;top:15px;border:0;background:rgba(244,242,237,.85);font-size:30px;cursor:pointer;z-index:2;width:42px;height:42px}.modal-img{width:100%;height:380px;object-fit:cover}.modal-copy{padding:45px}.modal-copy h2{font-size:42px;font-weight:400;margin:0 0 8px}.modal-copy h4{margin:28px 0 8px}.modal-copy p{line-height:1.6;color:#555}.experience-note{font-size:10px;letter-spacing:.08em;color:#777}.disclaimer{font-size:13px;border-top:1px solid #d2cfc8;border-bottom:1px solid #d2cfc8;padding:14px 0;margin:24px 0!important}.modal-second{width:100%;height:auto;margin-top:28px;display:block}.service-modal{padding:55px}.service-modal .eyebrow{margin-bottom:15px}.service-modal h2{font-size:clamp(34px,5vw,54px);font-weight:400;letter-spacing:-.035em;margin:0 0 22px}.service-modal p{font-size:16px;line-height:1.65;color:#555;max-width:650px}.service-modal h4{margin:34px 0 10px}.service-modal ul{padding-left:20px;color:#555;line-height:1.8}.service-modal .service-cta{display:inline-block;margin-top:30px;color:#111;text-decoration:none;border-bottom:1px solid #111;padding-bottom:8px;font-size:12px}
@media(max-width:1050px){.hero{grid-template-columns:58% 42%}.hero h1{font-size:clamp(38px,4vw,56px)}.cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:850px){.nav{padding:0 5vw}.nav nav{display:none}.brand{width:155px;height:58px}.hero{grid-template-columns:1fr;min-height:auto}.hero-copy{padding:150px 7vw 55px}.hero h1{font-size:clamp(37px,10vw,58px)}.hero h1 span{white-space:normal}.hero-photo{height:48vh}.hero-photo:after{background:linear-gradient(180deg,#f2f0eb 0%,transparent 18%)}.strategy{grid-template-columns:1fr;gap:35px}.flow{flex-wrap:wrap}.flow i{min-width:18px}.services-intro,.service-columns,.cards,.about,.contact{grid-template-columns:1fr}.services-intro{gap:25px}.service-columns article{padding:30px}.experience-head{display:block}.experience-head p{margin-top:22px}.cards{gap:45px}.about>img{height:420px}.about>div{padding:70px 7vw}.contact{gap:60px}.footer-logo{width:130px}.modal-copy,.service-modal{padding:35px 25px}}

.nav-cta{border:1px solid #222;padding:10px 14px;margin-left:8px}.nav-cta:hover{background:#171715;color:#f7f6f2}

/* V5 project gallery */
.project-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:28px 0 8px}.project-gallery img{width:100%;height:260px;object-fit:cover;display:block;cursor:zoom-in}.project-gallery img:first-child{grid-column:1/-1;height:430px}.project-contact{display:inline-block;margin-top:28px;color:inherit;text-decoration:none;border-bottom:1px solid #222;padding-bottom:7px;font-size:11px;letter-spacing:.04em}@media(max-width:760px){.project-gallery{grid-template-columns:1fr}.project-gallery img,.project-gallery img:first-child{grid-column:auto;height:auto;max-height:520px}.modal-img{height:300px}}

/* V7 hero service shortcuts */
.hero-copy{padding-bottom:7vh}.hero-tagline{margin-bottom:0!important}.hero-services{margin-top:54px;width:min(610px,100%);border-top:1px solid rgba(21,21,21,.32)}.hero-services-label{font-size:10px;letter-spacing:.12em;color:#666;padding:14px 0 12px}.hero-service-link{display:grid;grid-template-columns:150px 1fr 18px;gap:16px;align-items:center;padding:17px 0;border-top:1px solid rgba(21,21,21,.16);color:inherit;text-decoration:none}.hero-service-link strong{font-size:16px;font-weight:500}.hero-service-link span{font-size:12px;color:#5e5e5e;line-height:1.35}.hero-service-link b{font-size:18px;font-weight:400;text-align:right;transition:transform .2s ease}.hero-service-link:hover b{transform:translateX(4px)}
@media(max-width:850px){.hero-copy{padding-bottom:45px}.hero-services{margin-top:38px}.hero-service-link{grid-template-columns:1fr 22px;gap:6px 12px}.hero-service-link strong{grid-column:1}.hero-service-link span{grid-column:1;font-size:11px}.hero-service-link b{grid-column:2;grid-row:1/3;align-self:center}}

/* V9 — preserve more of each architectural image instead of aggressive cropping */
.hero-photo{background:#e9e6df;display:flex;align-items:center;justify-content:center;padding:5vh 2vw 4vh 0}
.hero-photo img{width:100%;height:100%;object-fit:contain;object-position:center}
.hero-photo:after{pointer-events:none}
.cards button{overflow:hidden}
.cards img{aspect-ratio:16/10;object-fit:contain;background:#ece9e2}
.modal-img{height:min(58vh,560px);object-fit:contain;background:#e9e6df}
.project-gallery{align-items:start}
.project-gallery img{height:300px;object-fit:contain;background:#e9e6df}
.project-gallery img:first-child{height:480px;object-fit:contain}
@media(max-width:850px){.hero-photo{padding:0;background:#e9e6df}.hero-photo img{object-fit:contain}.cards img{aspect-ratio:16/10}.modal-img{height:auto;max-height:520px}.project-gallery img,.project-gallery img:first-child{height:auto;max-height:520px;object-fit:contain}}

/* V13 image framing: consistent project cards + slightly fuller hero */
.hero-photo{padding:2.2vh .8vw 2.2vh 0}
.hero-photo img{width:100%;height:100%;object-fit:contain;object-position:center}
.cards button{display:flex;flex-direction:column;height:100%}
.cards img{width:100%;aspect-ratio:16/10;object-fit:contain;object-position:center;background:#ece9e2;display:block}
@media(max-width:850px){.hero-photo{padding:0}.cards img{aspect-ratio:16/10}}


/* V14 — coordinated project-detail image system */
.modal-img{width:100%;height:min(56vh,520px);object-fit:contain;object-position:center;background:#e9e6df}
.project-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:stretch;margin:32px 0 8px}
.project-gallery img,.project-gallery img:first-child{grid-column:auto;width:100%;height:300px;object-fit:contain;object-position:center;background:#e9e6df;display:block}
.project-gallery img:first-child:nth-last-child(1){grid-column:1/-1;height:min(56vh,520px)}
.project-gallery img:nth-last-child(1):nth-child(odd){grid-column:1/-1;height:min(56vh,520px)}
@media(max-width:760px){.project-gallery{grid-template-columns:1fr}.project-gallery img,.project-gallery img:first-child,.project-gallery img:nth-last-child(1):nth-child(odd){grid-column:auto;height:auto;max-height:520px;aspect-ratio:auto}.modal-img{height:auto;max-height:520px}}

/* V15 compact project detail galleries */
dialog#projectDialog{width:min(760px,92vw)}
#projectDialog .modal-img{height:340px;max-height:42vh;object-fit:contain;background:#e9e6df}
#projectDialog .modal-copy{padding:38px 42px 44px}
#projectDialog .project-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:26px}
#projectDialog .project-gallery img,#projectDialog .project-gallery img:first-child,#projectDialog .project-gallery img:nth-last-child(1):nth-child(odd){grid-column:auto;height:210px;max-height:210px;object-fit:contain;background:#e9e6df}
@media(max-width:760px){#projectDialog .modal-img{height:auto;max-height:360px}#projectDialog .modal-copy{padding:30px 22px 36px}#projectDialog .project-gallery{grid-template-columns:1fr 1fr;gap:8px}#projectDialog .project-gallery img,#projectDialog .project-gallery img:first-child,#projectDialog .project-gallery img:nth-last-child(1):nth-child(odd){height:150px;max-height:150px}}

/* V16 — consistent project cards + tighter hero crop */
.cards{align-items:start}
.cards button{display:block;height:auto}
.cards img{width:100%;aspect-ratio:16/10;height:auto;object-fit:cover;object-position:center;background:#ece9e2;display:block}
.hero-photo{padding:0;background:#e9e6df}
.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center 72%}
@media(max-width:850px){.hero-photo img{object-fit:cover;object-position:center 72%}}

/* V18: clean brochure-derived gallery presentation */
.project-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px}
.project-gallery img{width:100%;height:190px;object-fit:cover;object-position:center;background:#efede7;display:block}
@media(max-width:700px){.project-gallery{grid-template-columns:1fr}.project-gallery img{height:auto;max-height:300px;object-fit:contain}}

/* V19 SEO + mobile alignment */
.seo-intro{max-width:720px;font-size:14px!important;line-height:1.55;color:#5b5b5b!important;margin:0 0 16px!important}
@media(max-width:850px){.service-links button,.service-links button:hover{padding-left:0!important;margin-left:0!important;text-indent:0!important}.seo-intro{font-size:13px!important}}

/* V20 SEO landing pages */
.seo-page{background:#f3f0e9;color:#171717}.seo-nav{position:relative}.seo-hero{min-height:72vh;display:grid;grid-template-columns:1.05fr .95fr;border-bottom:1px solid #bbb}.seo-hero-copy{padding:9vw 7vw 6vw}.seo-kicker{font-size:12px;letter-spacing:.16em;text-transform:uppercase;margin-bottom:28px}.seo-hero h1{font-size:clamp(46px,6vw,88px);line-height:.94;font-weight:500;letter-spacing:-.045em;margin:0 0 28px}.seo-lead{font-size:clamp(18px,1.7vw,25px);line-height:1.45;max-width:760px}.seo-hero img{width:100%;height:100%;object-fit:cover}.seo-section{padding:90px 7vw;border-bottom:1px solid #c8c4bc}.seo-section h2{font-size:clamp(34px,4vw,58px);font-weight:500;letter-spacing:-.035em;max-width:900px}.seo-section p{font-size:17px;line-height:1.65;max-width:820px}.seo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#c8c4bc;margin-top:45px}.seo-card{background:#f3f0e9;padding:34px;min-height:220px}.seo-card h3{font-size:24px;font-weight:500}.seo-card a,.seo-text-link{color:inherit;text-decoration:none;border-bottom:1px solid}.seo-process{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:45px}.seo-num{font-size:12px;letter-spacing:.12em}.seo-projects{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:45px}.seo-projects img{width:100%;aspect-ratio:16/10;object-fit:cover}.seo-projects h3{font-size:19px;margin-bottom:4px}.seo-projects p{font-size:14px;margin-top:0}.seo-faq details{border-top:1px solid #bbb;padding:20px 0;max-width:900px}.seo-faq summary{font-size:20px;cursor:pointer}.seo-cta{background:#171717;color:#f3f0e9;padding:90px 7vw}.seo-cta h2{font-size:clamp(40px,5vw,70px);font-weight:500;margin-top:0}.seo-cta a{color:inherit;font-size:18px}.seo-subnav{display:flex;gap:24px;flex-wrap:wrap;margin-top:35px}.seo-subnav a{color:inherit}.seo-note{font-size:13px!important;opacity:.7}.service-seo-link{display:inline-block;margin-top:18px;color:inherit;text-decoration:none;border-bottom:1px solid}
@media(max-width:850px){.seo-hero{grid-template-columns:1fr}.seo-hero-copy{padding:110px 24px 55px}.seo-hero img{height:48vh}.seo-section,.seo-cta{padding:65px 24px}.seo-grid,.seo-process,.seo-projects{grid-template-columns:1fr}.seo-card{min-height:0}}

/* V21 project pages + SEO service links */
.project-card-link{display:block;color:inherit;text-decoration:none;cursor:pointer}.cards .project-card-link img{display:block}.service-links .service-page-link{display:flex;align-items:center;justify-content:space-between;color:inherit;text-decoration:none;border-bottom:1px solid #c8c4bc;padding:15px 0}.service-links .service-page-link b{font-weight:400}.seo-project-link{display:block;color:inherit;text-decoration:none}.seo-project-link:hover h3,.project-card-link:hover span{text-decoration:underline;text-underline-offset:4px}.project-page-hero{min-height:72vh;display:grid;grid-template-columns:.9fr 1.1fr;border-bottom:1px solid #bbb}.project-page-copy{padding:12vw 7vw 7vw}.project-page-hero h1{font-size:clamp(52px,7vw,96px);line-height:.95;font-weight:500;letter-spacing:-.045em;margin:0 0 24px}.project-page-hero>img{width:100%;height:100%;object-fit:cover;min-height:72vh}.project-story{display:grid;grid-template-columns:repeat(3,1fr);gap:50px}.project-story p{font-size:16px}.project-page-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:35px}.project-page-gallery img{width:100%;height:auto;display:block}.footer a{color:inherit}
@media(max-width:850px){.project-page-hero{grid-template-columns:1fr}.project-page-copy{padding:110px 24px 55px}.project-page-hero>img{min-height:0;height:48vh}.project-story,.project-page-gallery{grid-template-columns:1fr}.service-links .service-page-link{padding:14px 0}}

/* V22: keep SEO service links visually identical to service rows */
.service-links .service-page-link{display:flex;align-items:center;justify-content:space-between;width:100%;box-sizing:border-box;text-decoration:none;color:inherit;border-bottom:1px solid var(--line,#d5d0c7);padding:14px 0;font:inherit;}
.service-links .service-page-link:hover{opacity:.62;}

/* V23 unified service list links */
.service-links .service-page-link,.service-links .service-page-link:link,.service-links .service-page-link:visited{display:flex;align-items:center;justify-content:space-between;width:100%;box-sizing:border-box;border:0;border-bottom:1px solid #d5d2cb;background:transparent;padding:18px 0;text-align:left;font-family:Arial,Helvetica,sans-serif;font-size:15px;font-weight:400;line-height:normal;color:inherit!important;text-decoration:none!important;cursor:pointer;}
.service-links .service-page-link:hover{padding-left:8px;opacity:1;text-decoration:none!important;}


/* V25 — service imagery, project footer repair, AI-search insight pages */
.footer{height:auto;min-height:150px;padding:38px 7vw;display:grid;grid-template-columns:1.2fr 1fr 1fr 1.3fr;gap:34px;align-items:start;font-size:10px;background:#f7f6f2}.footer>div:first-child img{width:150px;height:62px;object-fit:contain;display:block}.footer p{margin:0 0 7px;line-height:1.45}.footer a{color:inherit}.insight-callout{background:#ece9e2}.insight-callout .seo-text-link{display:inline-block;margin-top:18px}.insight-article p{max-width:900px}.insight-article h2{max-width:980px}.insight-related .seo-card{display:block;color:inherit;text-decoration:none}.insight-related .seo-card span{display:inline-block;margin-top:20px}.insight-hero img{object-position:center}.seo-cta>p{max-width:760px;line-height:1.6;color:#c8c5bd}.project-page-gallery img{background:#ece9e2;object-fit:contain;max-height:620px}.project-page-hero>img{object-position:center}.seo-hero>img{object-position:center}.seo-page .brand img{object-fit:contain}
@media(max-width:850px){.footer{grid-template-columns:1fr 1fr;padding:34px 24px;gap:28px}.footer>div:first-child img{width:125px;height:52px}.insight-related{grid-template-columns:1fr}}
@media(max-width:560px){.footer{grid-template-columns:1fr}}

/* V25.1 — homepage high-intent question paths */
.decision-paths{background:#f4f1ea}.decision-paths-head{display:grid;grid-template-columns:1.2fr 1fr;gap:50px;align-items:end;margin-bottom:46px}.decision-paths-head .eyebrow{grid-column:1/-1;margin:0 0 -24px}.decision-paths-head h2{margin:0;font-size:clamp(40px,5vw,76px);font-weight:400;line-height:.98;letter-spacing:-.045em}.decision-paths-head>p:last-child{max-width:420px;margin:0 0 6px;line-height:1.55}.decision-path-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #aaa59c;border-bottom:1px solid #aaa59c}.decision-path-grid a{min-height:220px;padding:28px 28px 30px 0;color:inherit;text-decoration:none;display:flex;flex-direction:column;border-right:1px solid #aaa59c}.decision-path-grid a+a{padding-left:28px}.decision-path-grid a:last-child{border-right:0}.decision-path-grid small{font-size:10px;letter-spacing:.16em;margin-bottom:34px}.decision-path-grid strong{font-size:clamp(24px,2.2vw,38px);font-weight:400;line-height:1.05;letter-spacing:-.025em;max-width:340px}.decision-path-grid span{margin-top:auto;padding-top:28px;font-size:12px;line-height:1.4}.decision-path-grid a:hover strong{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}@media(max-width:850px){.decision-paths-head{grid-template-columns:1fr;gap:18px}.decision-paths-head .eyebrow{margin:0 0 8px}.decision-path-grid{grid-template-columns:1fr}.decision-path-grid a,.decision-path-grid a+a{padding:24px 0;min-height:180px;border-right:0;border-bottom:1px solid #aaa59c}.decision-path-grid a:last-child{border-bottom:0}}

/* V25.2 — quick project view + simplified development services */
#projectDialog{width:min(1080px,94vw);max-height:90vh;overflow:auto}
#projectDialog #dialogContent{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);align-items:start}
#projectDialog .modal-img{position:sticky;top:0;width:100%;height:min(72vh,650px);max-height:none;object-fit:cover;background:#e9e6df}
#projectDialog .modal-copy{padding:44px 46px 48px}
#projectDialog .modal-copy h2{font-size:clamp(34px,4vw,50px)}
#projectDialog .modal-copy h4{margin:22px 0 6px}
#projectDialog .modal-copy p{margin:0 0 12px}
#projectDialog .project-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:22px}
#projectDialog .project-gallery img,#projectDialog .project-gallery img:first-child,#projectDialog .project-gallery img:nth-last-child(1):nth-child(odd){height:150px;max-height:150px;object-fit:cover}
.project-modal-actions{display:flex;gap:26px;flex-wrap:wrap;margin-top:24px}.project-modal-actions .project-contact{margin-top:0}
@media(max-width:760px){#projectDialog #dialogContent{grid-template-columns:1fr}#projectDialog .modal-img{position:static;height:260px;max-height:38vh}#projectDialog .modal-copy{padding:30px 22px 36px}#projectDialog .project-gallery img,#projectDialog .project-gallery img:first-child,#projectDialog .project-gallery img:nth-last-child(1):nth-child(odd){height:130px;max-height:130px}}

/* V25.3 — compact project quick view: text first, no hero-scale image */
#projectDialog{width:min(980px,92vw);max-height:84vh;overflow:auto}
#projectDialog #dialogContent{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);align-items:start}
#projectDialog .modal-img{grid-column:2;grid-row:1;position:static;width:100%;height:300px;max-height:300px;object-fit:cover;background:#e9e6df}
#projectDialog .modal-copy{grid-column:1;grid-row:1;padding:38px 40px 42px}
#projectDialog .modal-copy h2{font-size:clamp(32px,3.4vw,46px);line-height:1;margin-bottom:7px}
#projectDialog .modal-copy h4{margin:18px 0 5px;font-size:11px;letter-spacing:.08em}
#projectDialog .modal-copy p{font-size:14px;line-height:1.48;margin:0 0 9px}
#projectDialog .disclaimer{font-size:12px;padding:10px 0;margin:16px 0!important}
#projectDialog .project-gallery{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:20px 0 0}
#projectDialog .project-gallery img,#projectDialog .project-gallery img:first-child,#projectDialog .project-gallery img:nth-last-child(1):nth-child(odd){height:105px;max-height:105px;object-fit:cover}
#projectDialog .project-modal-actions{margin-top:20px}
@media(max-width:760px){#projectDialog{width:94vw;max-height:88vh}#projectDialog #dialogContent{grid-template-columns:1fr}#projectDialog .modal-img{grid-column:1;grid-row:1;height:210px;max-height:210px}#projectDialog .modal-copy{grid-column:1;grid-row:2;padding:26px 22px 30px}#projectDialog .project-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}#projectDialog .project-gallery img,#projectDialog .project-gallery img:first-child,#projectDialog .project-gallery img:nth-last-child(1):nth-child(odd){height:105px;max-height:105px}}

/* Website enquiry form */
.contact{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:45px 7vw}.contact-details{grid-column:1}.enquiry-form{grid-column:2;grid-row:1 / span 2;min-width:0}.enquiry-form h3{font-size:28px;font-weight:400;margin:0 0 14px}.enquiry-intro{font-size:14px!important;color:#c8c5bd;line-height:1.5!important}.enquiry-form label{display:block;font-size:13px;margin:20px 0 0}.enquiry-form label span{color:#c8c5bd;font-size:11px}.enquiry-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}.enquiry-form input,.enquiry-form textarea{display:block;width:100%;margin-top:9px;padding:13px 14px;color:#171717;background:#f7f6f2;border:1px solid #c8c5bd;border-radius:0;font:inherit;box-sizing:border-box}.enquiry-form textarea{resize:vertical;min-height:130px}.enquiry-form input:focus,.enquiry-form textarea:focus{outline:2px solid #b4a380;outline-offset:3px}.enquiry-form button{padding:16px 23px;margin-top:12px;background:#f7f6f2;color:#171717;border:1px solid #f7f6f2;font:inherit;font-size:12px;letter-spacing:.05em;cursor:pointer}.enquiry-form button:disabled{opacity:.55;cursor:wait}.enquiry-form .enquiry-note,.enquiry-form .enquiry-status{font-size:13px;line-height:1.6;color:#c8c5bd}.enquiry-status[data-state="error"]{color:#ffc7b9}.enquiry-status[data-state="success"]{color:#c9e6cb}.enquiry-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
@media(max-width:850px){.contact{grid-template-columns:1fr;gap:32px}.contact-details,.enquiry-form{grid-column:1;grid-row:auto}.enquiry-fields{grid-template-columns:1fr;gap:0}}

/* V26 brand, navigation and consistent project presentation */
.hero-copy .hero-brandline{font-size:11px;line-height:1.6;letter-spacing:.08em;color:#555;margin:0 0 24px}.hero-copy .hero-description{max-width:560px;font-size:15px;line-height:1.65;color:#555;margin:22px 0 0}.service-shortcuts{display:flex;flex-wrap:wrap;gap:18px 30px;margin-top:32px}.service-shortcuts a{font-size:13px;color:inherit;text-decoration:none;border-bottom:1px solid #777;padding:0 0 7px}.related-link-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:30px}.related-link-grid a{display:flex;justify-content:space-between;gap:16px;padding:24px;background:#ece9e2;border:1px solid #c8c4bc;color:inherit;text-decoration:none;font-size:16px;line-height:1.5}.related-link-grid a:hover{background:#e4e0d7}.project-page-hero h1{font-size:clamp(38px,4.6vw,70px);line-height:1.08}.brand img,.footer-logo,.footer>div:first-child img{max-width:100%;object-fit:contain}.brand img{display:block}.home-footer{height:auto;min-height:100px;gap:20px;flex-wrap:wrap;padding-top:20px;padding-bottom:20px}.footer-site-link{font-size:11px;color:inherit;text-decoration:none}.nav a:focus-visible,.project-card-link:focus-visible,.related-link-grid a:focus-visible{outline:2px solid #85704f;outline-offset:5px}
@media(max-width:850px){.related-link-grid{grid-template-columns:1fr}.hero-copy .hero-brandline{font-size:10px;letter-spacing:.04em}.hero-copy .hero-description{font-size:14px}.project-page-hero h1{font-size:clamp(38px,9vw,64px)}.home-footer .footer-site-link{flex-basis:100%}.service-shortcuts{gap:18px}}
/* Keep the enquiry entry visible on phones. */
@media(max-width:850px){.nav{gap:12px}.nav nav{display:flex;gap:0}.nav nav>a:not(.nav-cta){display:none}.nav .nav-cta{font-size:10px;padding:10px 12px;white-space:nowrap}.nav .brand{width:130px;max-width:40vw}}
@media(max-width:850px){.seo-hero-copy,.project-page-copy{min-width:0}.seo-hero h1{font-size:clamp(34px,9vw,58px);overflow-wrap:break-word}.project-page-hero h1,.seo-cta h2{overflow-wrap:break-word}}
