:root{--navy:#071927;--navy2:#0d2638;--ink:#102534;--muted:#546977;--orange:#f5682a;--blue:#65cdf2;--line:#dbe4e7;--paper:#f3f7f8}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:#fff;font-family:Arial,Helvetica,sans-serif;font-size:1rem;line-height:1.65}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;object-fit:contain}a:focus-visible,summary:focus-visible{outline:3px solid #0c95c6;outline-offset:6px}.wrap{width:min(1240px,calc(100% - 80px));margin:auto}.skip{position:fixed;top:-100px;left:15px;background:white;padding:15px;z-index:100}.skip:focus{top:10px}.topbar{background:var(--navy);color:#b9cad4;font-size:0.8125rem;padding:8px 0}.topbar .wrap{display:flex;justify-content:space-between;gap:20px}header{background:#fff;position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line)}.nav{display:flex;align-items:center;justify-content:space-between;gap:25px;min-height:100px}.brand{display:flex;align-items:center;gap:22px;flex-shrink:0}.brand img{width:153px;height:70px}.brand>span{font-size:0.75rem;letter-spacing:.14em;line-height:1.6;border-left:1px solid var(--line);padding-left:20px;max-width:110px}.desktop{display:flex;gap:26px;align-items:center}.desktop a{font-size:0.875rem;font-weight:600}.desktop a:hover,.dark-link:hover{color:#a83c11}.nav-call{font-size:0.875rem;font-weight:700;display:flex;gap:16px;white-space:nowrap}.nav-call span{color:#ac3e13}.mobile{display:none}.hero{background:var(--navy);color:white;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.12fr 1fr;gap:55px;min-height:650px;align-items:center}.hero-copy{padding:80px 0}.eyebrow{font-size:0.8125rem;font-weight:700;letter-spacing:.15em;line-height:1.7;margin:0 0 24px;display:flex;align-items:center;gap:12px}.hero .eyebrow,.one .eyebrow{color:#b5c9d4}.eyebrow>span{width:25px;height:3px;background:var(--orange)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(3rem,5.7vw,4.875rem);font-weight:700;letter-spacing:-.045em;line-height:1.06;margin-bottom:28px}em{font-style:normal;color:var(--blue)}.hero-description{color:#beced9;max-width:555px;font-size:1.125rem;line-height:1.8;margin-bottom:32px}.actions{display:flex;flex-wrap:wrap;gap:26px;align-items:center}.button{min-height:54px;display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:14px 22px;font-size:0.875rem;font-weight:700;transition:background .2s}.primary{background:var(--orange);color:#071927}.primary:hover{background:#ff8c55}.text-link{border-bottom:1px solid #718a99;padding:9px 0;display:inline-flex;gap:24px;font-size:0.875rem;font-weight:600}.text-link:hover{color:var(--blue)}.hero-note{border-top:1px solid #294150;padding-top:26px;margin-top:48px;display:flex;flex-wrap:wrap;gap:9px 22px;color:#aac1ce;font-size:0.8125rem}.hero-visual{height:530px;position:relative;background:#123347;align-self:end;overflow:hidden}.brand-display{display:flex;align-items:center;justify-content:center;flex-direction:column;height:100%;padding-bottom:55px;background:radial-gradient(circle at 50% 35%,#244e65,transparent 65%)}.brand-display img{width:215px;height:215px}.brand-display p{margin:28px 0 0;font-size:1.5625rem;letter-spacing:.07em}.brand-display p span{display:block;font-size:0.75rem;letter-spacing:.3em;text-align:center;margin-top:6px;color:#b7d5e5}.hero-photo{width:100%;height:100%;object-fit:cover}.image-label{position:absolute;bottom:0;left:0;right:0;padding:24px 28px;background:#0d2638f5;border-top:2px solid var(--orange)}.image-label span{display:block;color:#abc1ce;font-size:0.8125rem}.image-label strong{font-size:1.125rem;font-weight:500}.service-band{background:var(--navy2);color:#d1dfe7;border-top:1px solid #294150}.service-band .wrap{display:grid;grid-template-columns:repeat(4,1fr);padding-top:24px;padding-bottom:24px;gap:20px}.service-band span{font-size:0.875rem;font-weight:600;border-right:1px solid #344c5c}.service-band span:last-child{border:0}.section{padding:100px 0}.section-heading{display:grid;grid-template-columns:1.3fr 1fr;align-items:end;gap:90px;margin-bottom:48px}.section-heading h2,h2{font-size:clamp(2.125rem,3.7vw,3.125rem);font-weight:600;letter-spacing:-.035em;line-height:1.13;margin-bottom:0}.section-heading>p{color:var(--muted);margin:0;max-width:470px}.services{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line)}.services article{padding:34px 30px;display:flex;flex-direction:column;border-right:1px solid var(--line)}.services article:last-child{border:0}.number{font-size:0.875rem;color:#a23d15;border-bottom:2px solid var(--orange);width:35px;padding-bottom:8px;margin-bottom:28px}.services h3{font-size:1.5625rem;line-height:1.25;font-weight:600;letter-spacing:-.02em;margin-bottom:17px}.services p{color:var(--muted);margin-bottom:24px}.services ul{list-style:none;margin:0 0 32px;padding:0}.services li{border-top:1px solid var(--line);padding:10px 0;font-size:0.875rem}.services article>a{margin-top:auto;font-size:0.875rem;font-weight:700;display:flex;justify-content:space-between;gap:10px}.services article>a:hover{color:#a83c11}.approach{background:var(--paper)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.steps article{border-top:1px solid #b7c8d2;padding-top:25px}.steps article>span{font-size:0.75rem;letter-spacing:.1em;font-weight:700;color:#506976}.steps h3{margin:22px 0 14px;font-size:1.4375rem;line-height:1.3;font-weight:600}.steps p{color:var(--muted);margin:0}.about-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:100px;align-items:center}.about h2{margin-bottom:28px}.about h2 em{color:#15769a}.about p:not(.eyebrow){color:var(--muted)}.about .text-link{margin-top:10px}.experience{background:var(--paper);padding:36px}.experience .eyebrow{font-size:0.75rem;letter-spacing:.09em}.since strong{font-size:4.375rem;line-height:1.1;letter-spacing:-.04em;font-weight:500;display:block}.since>span{font-size:0.875rem;color:var(--muted)}.sector-list{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:30px 0;padding-top:25px;border-top:1px solid #c7d7df;font-size:0.875rem}.small{font-size:0.8125rem}.experience>a{font-size:0.875rem;font-weight:600}.one{background:var(--navy);color:#fff}.one-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:100px;align-items:center}.one-title{border:1px solid #304c5c;min-height:340px;padding:40px;display:flex;flex-wrap:wrap;align-content:center;align-items:center;gap:24px;background:#0d2638}.one-title>div{font-size:1rem;letter-spacing:.12em}.one-title strong{display:block;font-size:4.5rem;line-height:1.05;font-weight:500;letter-spacing:-.03em}.badge{font-size:0.75rem;padding:7px 12px;border:1px solid #496675;letter-spacing:.13em;margin-top:26px;color:#bfd0da}.one h2{margin-bottom:22px}.one p:not(.eyebrow){color:#b6cad6}.pillars{display:flex;flex-wrap:wrap;gap:10px;margin:28px 0}.pillars span{font-size:0.8125rem;padding:6px 10px;border:1px solid #3d5765}.contact-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;border-top:1px solid var(--line);padding-top:38px;gap:42px}.label{display:block;font-size:0.75rem;font-weight:700;letter-spacing:.14em;color:var(--muted);margin-bottom:16px}.phone{display:block;font-size:clamp(1.375rem,2.3vw,1.875rem);line-height:1.4;letter-spacing:-.025em;font-weight:600;margin-bottom:25px}.email{display:block;font-size:0.875rem;margin-top:15px}.office{border-left:1px solid var(--line);padding-left:30px}.office h3{font-size:1.375rem;font-weight:600;margin-bottom:14px}.office address{font-style:normal;color:var(--muted);font-size:0.9375rem}.office p{font-size:0.8125rem;margin:15px 0 0;color:var(--muted)}footer{background:var(--navy);color:#b3c8d4;padding:45px 0 20px}.footer-top{display:flex;justify-content:space-between;gap:30px;align-items:center;padding-bottom:35px}.footer-brand{font-size:1.25rem;font-weight:600;color:#fff;letter-spacing:.04em}.footer-brand span{display:block;font-size:0.75rem;letter-spacing:.22em;color:#92afc0}.footer-top p{font-size:0.875rem;margin:0}.footer-top>a:last-child{font-size:0.875rem}.footer-bottom{border-top:1px solid #304654;padding-top:20px;display:flex;justify-content:space-between;gap:20px;font-size:0.75rem}@media(min-width:1600px){.hero-grid{min-height:710px}.hero-visual{height:590px}}@media(max-width:1150px){.brand>span{display:none}.desktop{gap:18px}.nav{gap:18px}.hero-grid{gap:30px}.hero-note{gap:8px 12px}.about-grid,.one-grid{gap:50px}.section-heading{gap:50px}.services article{padding:28px 22px}}@media(max-width:900px){.wrap{width:calc(100% - 48px)}.desktop,.nav-call{display:none}.brand>span{display:block}.mobile{display:block;position:relative}.mobile summary{cursor:pointer;font-size:0.875rem;padding:10px 14px;border:1px solid var(--line)}.mobile nav{position:absolute;right:0;top:54px;min-width:220px;background:#fff;border:1px solid var(--line);box-shadow:0 12px 25px #07192720;padding:8px}.mobile nav a{display:block;padding:10px 14px;font-size:1rem}.hero-grid{grid-template-columns:1.1fr .9fr;gap:24px}.hero-copy{padding:55px 0}.hero-visual{height:510px}.hero-description{font-size:1rem}.hero-note{margin-top:30px}.actions{gap:15px}h1{font-size:3rem}.services{grid-template-columns:1fr}.services article{border-right:0;border-bottom:1px solid var(--line);padding:30px}.services ul{display:grid;grid-template-columns:1fr 1fr;gap:0 30px}.steps{gap:25px}.about-grid{grid-template-columns:1fr;gap:40px}.about-grid>div{max-width:670px}.contact-grid{grid-template-columns:1fr 1fr}.contact-main{grid-column:1/-1}.office{padding-left:0;border:0}.one-grid{grid-template-columns:1fr 1.3fr;gap:30px}.one-title{padding:25px}.one-title img{width:60px;height:60px}.one-title strong{font-size:3.625rem}.section{padding:72px 0}}@media(max-width:620px){html{scroll-padding-top:95px}.wrap{width:calc(100% - 40px)}.topbar{font-size:0.75rem}.topbar a{display:none}.nav{min-height:86px}.brand{gap:12px}.brand img{width:127px;height:60px}.brand>span{font-size:0.625rem;max-width:90px;padding-left:12px}.hero-grid{grid-template-columns:1fr;gap:0}.hero-copy{padding:52px 0 38px}h1{font-size:clamp(2.6875rem,11vw,3.8125rem)}.hero-description{font-size:1.0625rem}.hero-note{font-size:0.75rem}.hero-visual{height:320px}.brand-display{padding-bottom:60px}.brand-display img{width:130px;height:130px}.brand-display p{font-size:1.125rem;margin-top:16px}.hero-photo{object-position:center 45%}.image-label{padding:15px 22px}.image-label strong{font-size:1rem}.service-band .wrap{grid-template-columns:1fr 1fr;gap:16px}.service-band span{font-size:0.75rem}.service-band span:nth-child(2){border:0}.section{padding:60px 0}.section-heading{grid-template-columns:1fr;gap:22px;margin-bottom:32px}.section-heading h2,h2{font-size:2.25rem}.eyebrow{font-size:0.75rem;margin-bottom:18px}.services article{padding:27px 24px}.services ul{grid-template-columns:1fr;margin-bottom:20px}.steps{grid-template-columns:1fr;gap:30px}.steps h3{margin-top:15px}.experience{padding:26px}.sector-list{gap:13px 18px;font-size:0.8125rem}.one-grid{grid-template-columns:1fr;gap:40px}.one-title{min-height:210px;gap:20px;padding:26px}.one-title img{width:70px;height:70px}.badge{margin-top:0}.contact-grid{gap:32px 20px}.office h3{font-size:1.25rem}.office address{font-size:0.875rem}.office p{font-size:0.75rem}.footer-top{flex-direction:column;align-items:flex-start;gap:22px}.footer-bottom{align-items:flex-start;font-size:0.75rem}.phone{font-size:1.6875rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Multi-page navigation and service layouts */
.service-menu{position:relative}.service-menu summary{font-size:0.875rem;font-weight:600;cursor:pointer;padding:12px 0}.service-menu>div{position:absolute;left:-20px;top:46px;min-width:220px;background:white;border:1px solid var(--line);box-shadow:0 14px 30px #07192720;padding:9px;z-index:40}.service-menu>div a{display:block;padding:12px}.desktop [aria-current=page]{color:#a83c11}.mobile nav [aria-current=page]{border-left:3px solid var(--orange);background:var(--paper)}.footer-links{display:flex;flex-wrap:wrap;gap:14px 30px;padding-bottom:28px;font-size:0.875rem}.page-intro{padding:30px 0 65px;background:var(--navy);color:white}.breadcrumb{display:inline-block;color:#b5cad5;font-size:0.8125rem;margin-bottom:45px}.intro-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:90px;align-items:center}.intro-grid:has(>div:only-child){grid-template-columns:1fr}.page-intro h1{font-size:clamp(2.625rem,5vw,4.25rem);max-width:850px;line-height:1.08}.page-intro .eyebrow{color:#b3ccd9}.intro-description{font-size:1.125rem;color:#b9ceda;max-width:740px;margin-bottom:0}.intro-note{border-left:2px solid var(--orange);padding:25px 0 25px 30px}.intro-note>span{display:block;color:#adc9d8;font-size:0.75rem;letter-spacing:.12em;margin-bottom:18px}.intro-note strong{display:block;font-size:1.875rem;font-weight:500;line-height:1.3;letter-spacing:-.02em}.intro-note p{font-size:0.9375rem;color:#b9ceda;margin:20px 0 0}.service-directory{display:grid;grid-template-columns:repeat(6,1fr);gap:20px}.service-tile{grid-column:span 2;border:1px solid var(--line);padding:28px;display:flex;flex-direction:column;transition:border-color .2s,background .2s}.service-tile:nth-child(n+4){grid-column:span 3}.service-tile:hover{border-color:#91adbc;background:var(--paper)}.service-tile h3{font-size:1.5625rem;line-height:1.25;margin:0 0 16px;font-weight:600}.service-tile p{color:var(--muted);margin-bottom:26px}.tile-link{margin-top:auto;font-size:0.875rem;font-weight:700}.detail-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.detail-cards:has(article:nth-child(4)){grid-template-columns:1fr 1fr}.detail-cards article{border:1px solid var(--line);padding:30px}.detail-cards .number{display:block}.detail-cards h3{font-size:1.5625rem;line-height:1.3;letter-spacing:-.02em;margin-bottom:15px}.detail-cards p{color:var(--muted)}.detail-cards ul{list-style:none;margin:26px 0 0;padding:0}.detail-cards li{font-size:0.9375rem;border-top:1px solid var(--line);padding:11px 0}.spaced-heading{margin-bottom:40px}.project-cta{background:#eaf2f5;padding:55px 0}.project-cta .wrap{display:flex;align-items:center;justify-content:space-between;gap:50px}.project-cta h2{font-size:2.1875rem}.project-cta p{max-width:720px;margin:15px 0 0;color:var(--muted)}.project-cta .button{flex-shrink:0}.related{padding-top:38px;padding-bottom:38px;border-top:1px solid var(--line)}.related>div{display:flex;flex-wrap:wrap;gap:16px 30px}.related a{font-size:0.9375rem;font-weight:600}.related a:hover{color:#a83c11}.scope-note{margin:32px 0 0;font-size:0.875rem;color:var(--muted);max-width:900px;border-left:2px solid #b4c7d1;padding-left:20px}.enquiry-links{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.enquiry-links a{background:#fff;border:1px solid var(--line);padding:24px}.enquiry-links a:hover{border-color:#7897a8}.enquiry-links strong{display:block;font-size:1.1875rem;font-weight:600}.enquiry-links span{font-size:0.875rem;display:block;margin-top:12px}.home-renovation{background:#edf3f5}.home-renovation h2{margin-bottom:25px}.home-renovation p:not(.eyebrow){color:var(--muted)}.home-renovation em{color:#15769a}.renovation-visual{background:#17394d;color:white;min-height:340px;display:flex;flex-direction:column;justify-content:center;padding:35px}.renovation-visual p{font-size:0.75rem;letter-spacing:.12em;color:#adc9d8!important}.renovation-visual strong{font-weight:500;font-size:1.9375rem;line-height:1.25}.renovation-banner{margin-top:45px}.renovation-banner .renovation-visual{min-height:320px}.renovation-visual:has(img){padding:0;position:relative;overflow:hidden;height:410px}.renovation-visual img{width:100%;height:100%;object-fit:cover}.image-credit{position:absolute;bottom:0;left:0;right:0;color:white;background:#071927d9;padding:10px 16px;font-size:0.75rem}.image-credit a{text-decoration:underline}.renovation-banner .renovation-visual:has(img){height:420px}.home-renovation .image-credit{font-size:0.75rem}.page-intro+.about{padding-top:70px}@media(max-width:1250px){.nav-call{display:none}.desktop{margin-left:auto}}@media(max-width:900px){.intro-grid{gap:35px;grid-template-columns:1.4fr 1fr}.intro-note strong{font-size:1.5625rem}.detail-cards{grid-template-columns:1fr}.detail-cards:has(article:nth-child(4)){grid-template-columns:1fr 1fr}.service-directory{grid-template-columns:1fr 1fr}.service-tile,.service-tile:nth-child(n+4){grid-column:auto}.service-tile:last-child{grid-column:1/-1}.project-cta .wrap{align-items:flex-start;flex-direction:column;gap:24px}.enquiry-links{grid-template-columns:1fr 1fr}.home-renovation .about-grid{grid-template-columns:1fr 1fr;gap:30px}.home-renovation h2{font-size:2.25rem}}@media(max-width:620px){.page-intro{padding:22px 0 45px}.breadcrumb{margin-bottom:30px}.intro-grid{grid-template-columns:1fr;gap:30px}.page-intro h1{font-size:2.6875rem}.intro-description{font-size:1.0625rem}.intro-note{padding:4px 0 4px 20px}.intro-note strong{font-size:1.5625rem}.service-directory,.detail-cards:has(article:nth-child(4)),.enquiry-links{grid-template-columns:1fr}.service-tile:last-child{grid-column:auto}.service-tile,.detail-cards article{padding:25px}.home-renovation .about-grid{grid-template-columns:1fr}.renovation-visual:has(img),.renovation-banner .renovation-visual:has(img){height:330px}.related>div{flex-direction:column;gap:16px}.project-cta h2{font-size:1.9375rem}.footer-links{gap:16px 22px}.mobile nav{max-height:75vh;overflow-y:auto}.spaced-heading{margin-bottom:30px}.brand>span{font-size:0.75rem}.brand>span{max-width:90px;letter-spacing:.06em}}

/* Visual audit corrections: intrinsic logo sizing, readable type and reflow. */
.brand img{width:168px;height:auto;aspect-ratio:1268/512}.nav{gap:22px}.brand{gap:18px}.brand>span{max-width:110px}.hero-visual{align-self:center}.hero-photo{object-position:55% center}.hero-copy{padding:68px 0}.one-title img{object-fit:contain;flex-shrink:0}.one-title{gap:24px}.one-title>div{line-height:1.3}.badge{margin-top:12px;max-width:100%;width:fit-content}.renovation-visual:has(img){min-height:0}.renovation-visual img{object-position:center 56%}.image-credit{position:static;background:var(--navy);width:100%;flex-shrink:0;line-height:1.6}.renovation-visual img{flex:1;min-height:0;height:0}.detail-cards article{display:flex;flex-direction:column}.detail-cards ul{margin-top:auto;padding-top:24px}.detail-cards h3{min-height:2.6em}.detail-cards p{min-height:4.95em}.service-menu summary{list-style:none;display:flex;align-items:center;gap:8px}.service-menu summary::after{content:'⌄';font-size:1rem}.service-menu summary::-webkit-details-marker{display:none}.service-menu[open] summary::after{content:'⌃'}.mobile summary{min-height:44px;display:flex;align-items:center;list-style:none}.mobile summary::-webkit-details-marker{display:none}.desktop{flex-wrap:wrap;row-gap:4px}.nav{padding-top:12px;padding-bottom:12px}.topbar .wrap{flex-wrap:wrap}.brand,.intro-grid>*,.hero-grid>*,.one-grid>*,.about-grid>*,.steps>*,.contact-grid>*,.section-heading>*{min-width:0}h1,h2,h3,p,li,address,.text-link,.phone,.badge,.footer-brand{overflow-wrap:anywhere}h1,h2,h3{text-wrap:pretty}.button{max-width:100%;gap:20px}.footer-top,.footer-bottom,.contact-grid{min-width:0}.image-label{position:static;flex-shrink:0}.hero-visual{display:flex;flex-direction:column}.hero-photo{flex:1;min-height:0;height:0}.service-band span{padding-right:12px}.mobile nav{width:250px;max-width:calc(100vw - 40px)}
@media(max-width:1150px){.brand>span{display:none}.nav-call{display:none}}
@media(max-width:900px){.brand>span{display:block}.nav{flex-wrap:nowrap}.brand img{width:158px}.detail-cards h3,.detail-cards p{min-height:0}.one-title{padding:28px}.service-menu>div{max-width:calc(100vw - 48px)}}
@media(max-width:620px){.brand img{width:145px}.brand>span{display:none}.nav{gap:18px}.mobile{margin-left:auto;flex-shrink:0}.hero-copy{padding:48px 0 38px}.hero-visual{height:330px}.hero-note,.service-band span{font-size:.875rem}.hero .eyebrow{letter-spacing:.1em}.one-title{min-height:0;padding:28px}.one-title strong{font-size:3.625rem}.one-title>div{font-size:.875rem}.badge{font-size:.75rem}.renovation-banner .renovation-visual:has(img),.renovation-visual:has(img){height:330px}.contact-grid{grid-template-columns:1fr}.office{padding-top:22px;border-top:1px solid var(--line)}.office address{font-size:1rem}.office p{font-size:.875rem}.sector-list{grid-template-columns:1fr}.project-cta .button{white-space:normal}.page-intro h1{font-size:clamp(2rem,10.5vw,2.6875rem)}.footer-top,.footer-bottom{flex-wrap:wrap}.related a{padding:8px 0}.service-band .wrap{gap:16px 12px}.section-heading h2,h2{font-size:clamp(1.875rem,9vw,2.25rem)}}
@media(max-width:360px){.wrap{width:calc(100% - 32px)}.brand img{width:132px}.hero .eyebrow{font-size:.75rem;letter-spacing:.06em}.one-title{padding:22px}.experience{padding:22px}.phone{font-size:1.5rem}}

.brand>span{max-width:none;width:7em;flex-shrink:0}.brand img{flex-shrink:0}.detail-cards h3{font-weight:600}

.brand>span{width:auto;max-width:none;white-space:nowrap}.detail-cards h3,.detail-cards p{min-height:0}
@supports(grid-template-rows:subgrid){.detail-cards article{display:grid;grid-row:span 4;grid-template-rows:subgrid;gap:20px}.detail-cards .number,.detail-cards h3,.detail-cards p,.detail-cards ul{margin:0;min-height:0}.detail-cards .number{align-self:start}.detail-cards ul{padding-top:0}.detail-cards p{align-self:start}}

/* Service photography and direct UK contact options. */
.secondary{border:1px solid #9bb1be;color:var(--ink);background:#fff}.secondary:hover{background:#f3f7f8;border-color:var(--ink)}
.contact-actions{display:flex;flex-direction:column;gap:12px;flex-shrink:0;max-width:100%}.contact-actions .button{width:100%}.footer-contact{display:flex;flex-wrap:wrap;gap:16px 36px;border-top:1px solid #304654;padding-top:24px;padding-bottom:28px;font-size:.9375rem}.footer-contact a{overflow-wrap:anywhere}.footer-contact a:hover{color:#fff}.contact-main .email{font-size:1.0625rem;overflow-wrap:anywhere;margin-top:22px}.office-phone{display:inline-block;font-size:.875rem;margin-top:16px;text-decoration:underline;text-underline-offset:4px}
.service-photo{width:100%;aspect-ratio:3/2;height:auto;object-fit:cover}.photo-cards article{padding:0 26px 28px;overflow:hidden}.photo-cards .service-photo{width:calc(100% + 52px);max-width:none;margin:0 -26px 24px}.photo-cards .number{margin-top:0}.photo-note{font-size:.8125rem;color:var(--muted);margin:24px 0 0}.photo-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.photo-gallery figure{margin:0;background:white;min-width:0;display:flex;flex-direction:column}.photo-gallery figcaption{padding:24px}.photo-gallery h3{font-size:1.4375rem;line-height:1.3;margin-bottom:12px}.photo-gallery p{color:var(--muted);margin:0}.home-mep .about-grid{grid-template-columns:1fr 1.1fr;gap:64px}.home-mep h2{margin-bottom:26px}.home-mep em{color:#15769a}.home-mep p:not(.eyebrow){color:var(--muted)}.feature-photo{margin:0}.feature-photo img{aspect-ratio:4/3;object-fit:cover;width:100%;height:auto}.feature-photo figcaption{font-size:.8125rem;color:var(--muted);padding:12px 0;border-bottom:1px solid var(--line)}
@supports(grid-template-rows:subgrid){.photo-cards article{grid-row:span 5}.photo-cards .service-photo{margin-bottom:0}}
@media(max-width:900px){.photo-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.photo-cards article{padding:0 18px 24px}.photo-cards .service-photo{width:calc(100% + 36px);margin-left:-18px;margin-right:-18px}.photo-cards h3{font-size:1.3125rem}.photo-gallery{gap:16px}.photo-gallery figcaption{padding:20px}.home-mep .about-grid{gap:32px}}
@media(max-width:620px){.photo-cards,.photo-gallery,.home-mep .about-grid{grid-template-columns:1fr}.photo-cards{gap:28px}.photo-cards h3{font-size:1.5625rem}.photo-gallery{gap:28px}.contact-actions{width:100%}.footer-contact{flex-direction:column;gap:16px}.home-mep .about-grid{gap:30px}}

/* Clear service discovery and accessible project questions. */
.faq-section{background:#f8fafb}.faq-list{max-width:960px}.faq-list details{border-top:1px solid var(--line)}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{cursor:pointer;min-height:60px;padding:20px 34px 20px 0;font-size:1.125rem;font-weight:600;line-height:1.5;position:relative;list-style:none;overflow-wrap:anywhere}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary::after{content:'+';position:absolute;right:4px;top:20px;color:#a23d15}.faq-list details[open] summary::after{content:'−'}.faq-list p{margin:0;padding:0 34px 24px 0;color:var(--muted);max-width:880px}.coverage-section p:not(.eyebrow){max-width:880px;color:var(--muted)}.breadcrumb a{text-decoration:underline;text-underline-offset:4px}.service-tile:nth-child(n+4){grid-column:span 2}
@media(max-width:900px){.service-tile,.service-tile:nth-child(n+4),.service-tile:last-child{grid-column:auto}}
