@import url('assets/fonts/fonts.css');
:root{--bg:#fdfdf7;--ink:#162124;--action:#006dac;--display:Arial, sans-serif;--line:#cfd3cf;--tint:#f0f1e9;--buttonText:#ffffff}

*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.65 Arial,Helvetica,sans-serif}img{display:block;width:100%;object-fit:cover}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:5px}button,input,select,textarea{font:inherit}button{cursor:pointer}a,button{touch-action:manipulation}button,a,input,select,textarea{outline-offset:5px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #4586bf}.skip{position:absolute;left:-9999px}.skip:focus{left:20px;top:20px;z-index:40;background:white;color:black;padding:12px}.demo{font-size:10px;line-height:1.4;display:flex;justify-content:space-between;gap:20px;padding:10px 4%;background:#e9eceb;color:#253532}.demo a{font-weight:bold;text-decoration:underline}.shell{width:min(1300px,90%);margin:auto}.header{display:flex;align-items:center;justify-content:space-between;gap:25px;min-height:106px}.brand{font-family:var(--display);font-size:28px;line-height:1.1;letter-spacing:-1px}.brand small{display:block;font:10px/1.4 Arial,sans-serif;text-transform:uppercase;letter-spacing:3px;margin-top:7px}.nav{display:flex;gap:24px;align-items:center;font-size:12px}.nav a{padding:12px 0}.nav a[aria-current=page]{text-decoration:underline;text-underline-offset:6px}.nav a:last-child{border:1px solid currentColor;padding:11px 18px}.menu{display:none;background:none;color:inherit;border:1px solid currentColor;min-height:44px;padding:7px 15px}.eyebrow{font-size:10px;letter-spacing:1.8px;text-transform:uppercase;margin:0 0 23px;font-family:Arial,sans-serif;font-weight:600}h1,h2,h3{font-family:var(--display);font-weight:var(--weight,400);line-height:1.04;letter-spacing:-.045em;text-wrap:balance;margin:0 0 25px}h1{font-size:clamp(48px,6.3vw,91px)}h2{font-size:clamp(34px,3.7vw,55px)}h3{font-size:27px;line-height:1.15}p{margin:0 0 24px;max-width:64ch}.lead{font-size:20px;line-height:1.6}.quiet{opacity:.76}.action{display:inline-flex;gap:26px;align-items:center;justify-content:center;min-height:50px;padding:14px 24px;background:var(--action);color:var(--buttonText,#fff);font-size:13px;border:1px solid var(--action);border-radius:var(--radius,0);text-decoration:none}.action:hover{filter:brightness(.9);text-decoration:none}.text-link{display:inline-block;font-size:13px;border-bottom:1px solid currentColor;padding-bottom:5px}.hero{margin-bottom:50px}.hero p:not(.eyebrow){max-width:450px}.hero .action{margin-top:7px}.split-hero{display:grid;grid-template-columns:46% 54%;min-height:610px}.hero-copy{padding:60px 45px 65px 0;align-self:center}.hero-photo img{height:100%;min-height:610px;border-radius:var(--radius,0)}.hero-photo{position:relative}.caption{font-size:11px;margin-top:12px;opacity:.7}.image-note{position:absolute;bottom:20px;left:22px;right:22px;background:#182321cf;color:white;font-size:10px;padding:11px 15px;display:flex;justify-content:space-between}.section{padding:85px 0}.section-title{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:35px}.section-title h2{margin-bottom:0}.section-title p{max-width:470px;margin:0}.service-nav{display:grid;grid-template-columns:1fr repeat(3,1fr);gap:20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0;font-size:13px}.service-nav a{border-left:1px solid var(--line);padding-left:22px;display:flex;justify-content:space-between}.project-pair{display:grid;grid-template-columns:1.35fr 1fr;gap:35px}.project-pair article:nth-child(2){padding-top:85px}.project-card img{aspect-ratio:1.5;border-radius:var(--radius,0)}.project-card h3{font-size:25px;margin:19px 0 10px}.project-card p{font-size:13px;max-width:50ch}.project-card .tag{font-size:10px;text-transform:uppercase;letter-spacing:1px}.project-card .media-link{display:block}.tint{background:var(--tint,#f1f2ed)}.two-column{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:start}.two-column>div>img{border-radius:var(--radius,0);aspect-ratio:1.15}.two-column h2{max-width:550px}.scope-list{border-top:1px solid var(--line)}.scope-item{display:grid;grid-template-columns:40px 1fr 1fr;gap:22px;padding:25px 0;border-bottom:1px solid var(--line)}.scope-item h3{margin:0;font-size:26px}.scope-item p{font-size:14px;margin:0}.num{font:11px/1.6 Arial,sans-serif;opacity:.65}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.step{border-top:1px solid var(--line);padding-top:20px}.step h3{font-size:24px;margin:22px 0 16px}.step p{font-size:14px}.area-preview{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;align-items:center}.area-preview img{aspect-ratio:1.25;border-radius:var(--radius,0)}.towns{display:flex;flex-wrap:wrap;gap:12px 24px;margin-bottom:24px}.towns span{font-size:14px;border-bottom:1px solid var(--line);padding-bottom:6px}.closing{padding:65px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.closing .shell{display:flex;justify-content:space-between;align-items:center;gap:40px}.closing h2{max-width:750px;margin-bottom:12px}.closing p{margin-bottom:0;font-size:14px}.footer{padding:50px 0 25px}.footer-main{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:40px;margin-bottom:45px}.footer-main nav a{display:block;font-size:13px;padding:4px 0}.fine{font-size:10px;border-top:1px solid var(--line);padding-top:20px;display:flex;justify-content:space-between;gap:35px}.fine p{max-width:95ch;margin:0}.fine a{min-width:125px;text-decoration:underline}.page-heading{padding:55px 0;max-width:1000px}.page-heading h1{font-size:clamp(47px,5.6vw,80px)}.page-heading p:not(.eyebrow){max-width:650px;font-size:19px}.wide-image{height:460px;border-radius:var(--radius,0)}.service-detail{padding:70px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:70px;scroll-margin-top:25px}.service-detail:nth-child(even)>.service-image{order:2}.service-image img{height:480px;border-radius:var(--radius,0)}.service-detail ul{padding-left:20px;font-size:14px}.service-detail li{padding-bottom:10px}.service-detail p{font-size:15px}.service-detail h2{font-size:42px}.faq details{padding:22px 0;border-top:1px solid var(--line)}.faq summary{font-size:18px;cursor:pointer;min-height:38px}.faq details p{font-size:14px;margin:10px 0}.story-block{max-width:850px}.story-block p{font-size:18px}.gallery-controls{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:35px}.filter{background:none;color:inherit;border:1px solid var(--line);border-radius:var(--radius,0);padding:10px 19px;min-height:44px;font-size:13px}.filter[aria-pressed=true]{background:var(--action);color:var(--buttonText,#fff);border-color:var(--action)}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.gallery article{min-width:0}.gallery button{background:none;border:0;padding:0;text-align:left;color:inherit;width:100%}.gallery img{aspect-ratio:1.25;border-radius:var(--radius,0)}.gallery h3{font-size:22px;margin:15px 0 7px}.gallery .meta{font-size:10px;text-transform:uppercase;letter-spacing:1px}.gallery [hidden]{display:none!important}.gallery p{font-size:13px;margin:10px 0}.photo-dialog{background:var(--bg);color:var(--ink);border:1px solid var(--line);padding:25px;max-width:min(1050px,94vw);max-height:92vh;overflow:auto;border-radius:var(--radius,0)}.photo-dialog::backdrop{background:#0e151ce8}.photo-dialog img{max-height:55vh;object-fit:contain}.dialog-close{background:var(--action);color:var(--buttonText,#fff);border:0;padding:10px 18px;min-height:44px;display:block;margin:0 0 20px auto}.photo-dialog h2{font-size:32px;margin:25px 0 15px}.photo-dialog p{font-size:15px}.photo-dialog .caption{font-size:11px}.about-principles{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.about-principles article{border-top:1px solid var(--line);padding-top:25px}.about-principles h3{font-size:25px}.about-principles p{font-size:14px}.area-list{display:grid;grid-template-columns:repeat(2,1fr);gap:35px}.area-list article{padding:30px 0;border-top:1px solid var(--line)}.area-list h2{font-size:38px}.area-list p{font-size:15px}.contact-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px}.contact-aside{background:var(--tint,#f0f1ed);padding:35px;height:fit-content}.contact-aside h2{font-size:33px}.contact-aside p,.contact-aside li{font-size:14px}.contact-aside ul{padding-left:18px}.form{display:grid;gap:22px}.form label{font-size:13px;display:grid;gap:8px}.form input,.form textarea,.form select{background:transparent;border:1px solid var(--line);color:inherit;border-radius:var(--radius,0);padding:13px 15px;width:100%;min-height:48px}.form select option{color:#111;background:#fff}.form textarea{min-height:135px;resize:vertical}.form small{font-size:11px}.form .action{justify-self:start}.result{border:1px solid var(--line);padding:22px;font-size:14px}.form [hidden]{display:none}.photo-credit{font-size:10px;opacity:.7}.full-photo{position:relative}.full-photo img{height:650px}.overlay-copy{position:absolute;left:6%;bottom:65px;color:white;max-width:850px}.overlay-copy h1{font-size:clamp(55px,7.5vw,112px);text-shadow:0 2px 22px #0009}.overlay-copy p{text-shadow:0 1px 8px #000}.full-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0009,transparent 85%);pointer-events:none}.overlay-copy{z-index:1}.hero-band{padding:70px 5%;background:#000;color:#fff}.hero-band h1{font-size:clamp(70px,10vw,145px);max-width:1100px;margin:0}.hero-bottom{display:grid;grid-template-columns:1fr 1fr;gap:60px;padding:40px 0}.hero-bottom img{height:300px}.photo-statement img{height:570px}.photo-statement .statement{display:flex;justify-content:space-between;align-items:start;gap:60px;padding:35px 0}.photo-statement .statement p{max-width:430px}.archive-hero{display:grid;grid-template-columns:.9fr 1.1fr;gap:65px;padding:45px 0}.archive-hero img{height:520px}.archive-hero .archive-links a{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:16px 0;font-size:14px}.mosaic-hero{display:grid;grid-template-columns:1fr 1fr}.mosaic-hero>div{padding:60px;background:#ddbdea}.mosaic-hero>img{height:100%;min-height:570px}.mosaic-hero>aside{padding:30px 60px;background:#f0f0ed}.mosaic-hero>aside:last-child{background:#e7def0}.mini-wall{display:grid;grid-template-columns:1fr 1fr;gap:18px}.mini-wall img{height:285px}.mini-wall img:nth-child(2){margin-top:55px}.sidebar-site .header{position:fixed;top:36px;bottom:0;left:0;width:240px;display:block;padding:40px 30px;min-height:0;z-index:4;background:var(--bg);border-right:1px solid var(--line)}.sidebar-site .header .brand{display:block;margin-bottom:50px}.sidebar-site .nav{display:flex;flex-direction:column;align-items:start;gap:10px}.sidebar-site main,.sidebar-site .closing,.sidebar-site .footer{margin-left:240px}.sidebar-site .hero{padding-top:45px}.sidebar-site .demo{position:relative;z-index:5}.sidebar-site .split-hero{grid-template-columns:.8fr 1.2fr}.sidebar-site h1{font-size:clamp(45px,4.5vw,70px)}.sidebar-site .hero-copy{padding-top:0}.sidebar-site .hero-photo img{min-height:540px}.sidebar-site .project-pair{grid-template-columns:1fr 1fr}.sidebar-site .project-pair article:nth-child(2){padding:0}.c1{--radius:12px;--tint:#f0f1e9}.c1 .hero h1{font-size:clamp(45px,5.3vw,74px)}.c1 .closing{background:#162124;color:white}.c1 .closing .action{border-color:#006dac}.c2{--weight:700}.c2 .hero{width:100%}.c2 .project-pair{grid-template-columns:1fr}.c2 .project-pair article:nth-child(2){padding:0}.c2 .project-card img{aspect-ratio:2}.c2 .project-card h3{font-size:42px}.c2 .gallery{grid-template-columns:1fr}.c2 .gallery article{display:grid;grid-template-columns:2fr 1fr;gap:35px;margin-bottom:35px}.c2 .gallery img{aspect-ratio:1.8}.c2 .service-detail{grid-template-columns:1fr 1.4fr}.c2 .page-heading{max-width:1200px}.c3{--tint:#d4d6d4;--weight:400}.c3 .hero-band{background:#212529}.c3 .hero-band .action{background:transparent;border:1px solid white;color:white}.c3 .hero-band h1{font-size:clamp(70px,9vw,130px)}.c3 .scope-item{grid-template-columns:60px 1fr 1.2fr;padding:35px 0}.c3 .scope-item h3{font-size:39px}.c3 .gallery{gap:10px;grid-template-columns:repeat(4,1fr)}.c3 .contact-aside{border:2px solid var(--ink)}.c4{--radius:28px;--tint:#fce1e3}.c4 .header .brand{text-align:center}.c4 .full-photo{border-radius:160px 160px 0 0;overflow:hidden}.c4 .overlay-copy{background:#fff1f1;color:#572631;border-radius:45% 45% 0 0;padding:45px 60px;left:6%;bottom:0;max-width:700px;text-align:center}.c4 .overlay-copy h1{font-size:65px;text-shadow:none}.c4 .overlay-copy p{text-shadow:none;margin:auto}.c4 .overlay-copy .eyebrow{margin-bottom:15px}.c4 .full-photo:after{display:none}.c4 .project-pair{grid-template-columns:1fr 1fr;gap:50px}.c4 .project-pair article:nth-child(2){padding:60px 0 0}.c4 .service-detail .service-image img{border-radius:45% 45% 5px 5px}.c4 .gallery{grid-template-columns:repeat(2,1fr);gap:45px}.c4 .about-principles article{border:0;background:#fce1e3;border-radius:25px;padding:30px}.c5{--tint:#f6f6f6}.c5 .full-photo h1{font-size:clamp(45px,5.8vw,80px)}.c5 .project-pair{grid-template-columns:1fr 1fr}.c5 .project-pair article:nth-child(2){padding:0}.c5 .scope-item h3{font-size:23px}.c5 .gallery{grid-template-columns:repeat(4,1fr);gap:15px}.c5 .gallery article:nth-child(3n) img{aspect-ratio:.85}.c5 .gallery h3{font-size:20px}.c5 .about-principles h3{font-size:22px}.c6{--buttonText:#41443e;--line:#777c73;--tint:#363932}.c6 .header{min-height:120px}.c6 .nav a{font-size:11px}.c6 .hero{text-align:center;padding-top:35px}.c6 .hero h1{font-size:clamp(68px,8vw,120px);max-width:1000px;margin:0 auto 35px}.c6 .hero>.lead{max-width:570px;margin:0 auto 40px}.c6 .hero img{width:76%;height:530px;margin:0 auto}.c6 .hero>.eyebrow{margin-bottom:30px}.c6 .gallery{grid-template-columns:1fr 1fr;gap:60px}.c6 .gallery article:nth-child(even){padding-top:100px}.c6 .gallery img{aspect-ratio:1.3}.c6 .form input,.c6 .form textarea{border-color:#9b9f97}.c6 .section-title{justify-content:center;text-align:center}.c6 .section-title .text-link{display:none}.c7{--line:#c9c9c9;--tint:#f4f4f4}.c7 .gallery{grid-template-columns:1fr}.c7 .gallery article{display:grid;grid-template-columns:1.5fr 1fr;gap:25px}.c7 .gallery img{aspect-ratio:1.5}.c8{--tint:#f1f2ed}.c8 .header{flex-direction:column;gap:0;padding:28px 0 10px;border-bottom:2px solid #171717}.c8 .brand{font-size:44px;text-align:center}.c8 .nav{gap:40px;margin-top:25px}.c8 .nav a:last-child{border:0;padding:12px 0}.c8 .hero{padding-top:45px}.c8 .hero>.eyebrow{text-align:center}.c8 .hero h1{font-size:clamp(55px,6.5vw,95px)}.c8 .editorial-lead{display:grid;grid-template-columns:1.3fr 1fr;gap:55px;align-items:center}.c8 .editorial-lead img{height:540px}.c8 .gallery{grid-template-columns:repeat(3,1fr);gap:40px}.c8 .gallery article:first-child{grid-column:span 2}.c8 .gallery article:first-child img{aspect-ratio:1.8}.c8 .page-heading{text-align:center;margin:auto}.c8 .page-heading p{margin-left:auto;margin-right:auto}.c8 .scope-item h3{font-size:28px}.c8 .closing{text-align:center}.c8 .closing .shell{display:block}.c8 .closing h2{margin:0 auto 20px}.c8 .closing p{margin:0 auto 25px}.c9{--tint:#ebe7e1;--radius:3px}.c9 .header{flex-direction:column;padding:30px 0 0;gap:25px;border-bottom:1px solid var(--line)}.c9 .brand{text-align:center;font-size:37px;letter-spacing:.02em}.c9 .nav{width:100%;justify-content:center;padding:0 0 20px}.c9 .nav a:last-child{border:0;padding:12px 0}.c9 .hero{padding-top:45px}.c9 .split-hero{border:1px solid #193741;padding:22px;grid-template-columns:1fr 1fr}.c9 .hero-copy{padding:40px}.c9 h1{font-size:60px}.c9 .hero-photo img{min-height:520px}.c9 .section-title{text-align:center;display:block}.c9 .section-title .text-link{margin-top:20px}.c9 .project-pair{gap:50px}.c9 .gallery{grid-template-columns:repeat(2,1fr);gap:40px}.c9 .gallery article{padding:15px;border:1px solid #d7dcd9}.c9 .gallery img{aspect-ratio:1.5}.c9 .closing{background:#193741;color:white}.c9 .closing .action{background:transparent;color:white;border:1px solid white}.c10{--line:#c4c4c4;--tint:#f4f4f4}.c10 .brand{font-size:23px}.c10 .nav{font-size:11px;gap:20px}.c10 .page-heading{display:grid;grid-template-columns:1fr 2fr;max-width:none;gap:0 50px}.c10 .page-heading .eyebrow{grid-row:span 2;padding-top:12px}.c10 .page-heading h1{font-size:65px}.c10 .gallery{display:block}.c10 .gallery article{display:grid;grid-template-columns:1.5fr 1fr;gap:50px;border-top:1px solid var(--line);padding:35px 0}.c10 .gallery img{height:360px}.c10 .area-list{display:block}.c10 .area-list article{display:grid;grid-template-columns:1fr 1fr;gap:50px}.c11{--tint:#e7def0}.c11 .header{border-bottom:1px solid var(--ink)}.c11 .hero{width:100%}.c11 .mosaic-hero h1{font-size:clamp(55px,7vw,98px)}.c11 .project-pair{gap:0;grid-template-columns:1fr 1fr}.c11 .project-pair article{background:#ddbdea;padding:25px}.c11 .project-pair article:nth-child(2){padding:25px;background:#e5e8dd}.c11 .gallery{grid-template-columns:repeat(3,1fr);gap:0}.c11 .gallery article{padding:22px;background:#e7def0}.c11 .gallery article:nth-child(3n+1){background:#edf0e6}.c11 .gallery article:first-child{grid-column:span 2}.c11 .gallery article:nth-child(4){grid-column:span 2}.c11 .scope-item{padding:30px;background:#e7def0;border:0;margin:5px 0}.c11 .contact-aside{background:#ddbdea}.c12{--tint:#ffe100}.c12 .header .brand{font-size:36px}.c12 .hero-band{background:#ffe100;color:#141414}.c12 .hero-band h1{font-size:clamp(70px,10vw,145px)}.c12 .hero{width:100%;display:grid;grid-template-columns:1.15fr 1fr}.c12 .hero-band{padding:70px 9%}.c12 .hero>img{height:100%;min-height:600px}.c12 .hero-band p{font-family:Arial,sans-serif;font-size:16px;margin-top:25px}.c12 .hero-band .eyebrow{margin:0 0 25px;font-size:10px}.c12 .scope-item h3{font-size:42px}.c12 .scope-item{border-bottom:2px solid #141414}.c12 .gallery{grid-template-columns:1fr 1fr;gap:12px}.c12 .gallery h3{font-size:36px}.c12 .gallery article{background:#f3f3ef;padding:18px}.c12 .gallery article:nth-child(4n){background:#bff5ef}.c12 .closing{background:#ffe100}.c13 .header{width:205px}.c13 main,.c13 .closing,.c13 .footer{margin-left:205px}.c13 .wall-hero{padding-top:35px;display:grid;grid-template-columns:1fr 1fr;gap:28px}.c13 .wall-hero>div:first-child{grid-column:1/-1;display:flex;justify-content:space-between;gap:40px;align-items:center}.c13 .wall-hero h1{font-size:55px;margin:0}.c13 .wall-hero p{max-width:340px;font-size:15px}.c13 .wall-hero>img{height:400px}.c13 .wall-hero>img:last-child{height:320px;margin-top:60px}.c13 .gallery{grid-template-columns:repeat(3,1fr);gap:18px}.c13 .gallery article:nth-child(3n+2){padding-top:60px}.c13 .gallery img{aspect-ratio:.9}.c13 .gallery h3{font-size:19px}.c13 .contact-layout{gap:40px}.c14{--tint:#eee8e2}.c14 .header .brand{font-size:31px}.c14 .hero .photo-statement img{height:560px}.c14 .hero .statement h1{font-size:clamp(48px,5vw,75px)}.c14 .gallery{grid-template-columns:1fr 1fr;gap:45px}.c14 .gallery img{aspect-ratio:1.8}.c14 .gallery h3{font-size:27px}.c14 .project-pair{grid-template-columns:1fr 1fr}.c14 .project-pair article:nth-child(2){padding-top:0}.c14 .project-card img{aspect-ratio:1.75}.c15 .header{position:absolute;top:34px;left:5%;right:5%;z-index:3;color:white;width:auto}.c15 .hero{width:100%;margin-top:0}.c15 .hero .full-photo img{height:850px}.c15 .overlay-copy{bottom:65px}.c15 .overlay-copy h1{font-size:clamp(80px,11vw,160px)}.c15 .hero .action{background:white;color:#111;border-color:white}.c15 .hero .eyebrow{padding-top:30px}.c15 .page-heading{padding-top:60px}.c15:not(.home-page) .header{position:static;color:var(--ink);width:90%;margin:auto}.c15 .gallery{grid-template-columns:1fr;gap:75px}.c15 .gallery img{aspect-ratio:2.25}.c15 .gallery h3{font-size:42px}.c15 .gallery article{max-width:1100px}.c15 .gallery article:nth-child(even){margin-left:auto;width:85%}.c15 .closing{background:#0d0e13;color:white}.c15 .closing .action{background:white;color:black}
@media(max-width:1100px){.nav{gap:14px}.nav a{font-size:11px}.header .brand{font-size:24px}.two-column,.area-preview,.service-detail,.contact-layout{gap:40px}.sidebar-site .header{width:180px;padding:30px 20px}.sidebar-site main,.sidebar-site .closing,.sidebar-site .footer{margin-left:180px}.sidebar-site h1{font-size:48px}.sidebar-site .split-hero{display:block}.sidebar-site .hero-copy{padding-right:0}.sidebar-site .hero-photo img{height:440px;min-height:0}.sidebar-site .two-column{gap:30px}.c12 .hero-band h1{font-size:80px}}
@media(max-width:760px){html{scroll-behavior:auto}.shell{width:88%}.demo{padding:9px 6%;font-size:9px;gap:12px}.demo span{max-width:190px}.header,.c8 .header,.c9 .header{height:90px;min-height:90px;flex-direction:row;padding:0;border-bottom:0;gap:15px;position:relative}.brand,.header .brand,.c8 .brand,.c9 .brand,.c12 .header .brand{font-size:25px;text-align:left}.brand small{font-size:9px;letter-spacing:2px}.menu{display:block;font-size:13px}.nav,.c8 .nav,.c9 .nav{display:none;position:absolute;top:90px;left:-7%;right:-7%;width:auto;background:var(--bg);color:var(--ink);z-index:15;flex-direction:column;align-items:stretch;padding:22px 6%;gap:0;margin:0;border-bottom:1px solid var(--line)}.nav.open{display:flex}.nav a,.c8 .nav a,.c9 .nav a{font-size:14px;padding:12px 0;min-height:46px}.nav a:last-child,.c8 .nav a:last-child,.c9 .nav a:last-child{border:0;padding:12px 0}.sidebar-site .header{position:relative;top:auto;left:auto;bottom:auto;width:88%;padding:0;display:flex;margin:auto;border:0;background:var(--bg)}.sidebar-site .header .brand{margin:0}.sidebar-site .nav{display:none;align-items:stretch;gap:0}.sidebar-site .nav.open{display:flex}.sidebar-site main,.sidebar-site .closing,.sidebar-site .footer{margin-left:0}.sidebar-site .hero{padding-top:15px}.hero{margin-bottom:30px}.split-hero,.sidebar-site .split-hero{display:flex;flex-direction:column;min-height:0}.hero-copy,.sidebar-site .hero-copy{padding:25px 0 35px}.hero-photo img,.sidebar-site .hero-photo img{height:365px;min-height:0}h1,.sidebar-site h1{font-size:48px}h2{font-size:36px}h3{font-size:25px}.eyebrow{font-size:9px;letter-spacing:1.4px;margin-bottom:20px}.hero p:not(.eyebrow){font-size:16px}.image-note{left:12px;right:12px;bottom:12px;font-size:9px;padding:10px}.service-nav{grid-template-columns:1fr;gap:0;padding:5px 0}.service-nav span{padding:14px 0}.service-nav a{border-left:0;border-top:1px solid var(--line);padding:13px 0}.section{padding:55px 0}.section-title{display:block}.section-title .text-link{margin-top:20px}.section-title p{margin-top:20px}.project-pair,.c2 .project-pair,.c4 .project-pair,.c5 .project-pair,.c11 .project-pair,.c14 .project-pair,.sidebar-site .project-pair{grid-template-columns:1fr;gap:30px}.project-pair article:nth-child(2),.c4 .project-pair article:nth-child(2){padding-top:0}.project-card h3,.c2 .project-card h3{font-size:26px}.project-card img,.c2 .project-card img{aspect-ratio:1.4}.two-column,.area-preview,.contact-layout{grid-template-columns:1fr;gap:30px}.scope-item,.c3 .scope-item{grid-template-columns:25px 1fr;gap:10px;padding:23px 0}.scope-item h3,.c3 .scope-item h3,.c12 .scope-item h3{font-size:28px}.scope-item p{grid-column:2}.steps{grid-template-columns:1fr;gap:20px}.step{display:grid;grid-template-columns:28px 1fr;gap:0 15px}.step h3{margin:0 0 12px}.step p{grid-column:2}.closing{padding:45px 0}.closing .shell{display:block}.closing .action{margin-top:25px}.closing h2{font-size:36px}.footer-main{grid-template-columns:1fr 1fr;gap:30px}.footer-main>div:first-child{grid-column:1/-1}.fine{display:block}.fine p{margin-bottom:15px}.fine a{display:inline-block;padding:8px 0}.page-heading{padding:30px 0}.page-heading h1{font-size:47px}.page-heading p:not(.eyebrow){font-size:17px}.wide-image{height:330px}.service-detail,.c2 .service-detail{grid-template-columns:1fr;gap:25px;padding:40px 0}.service-detail:nth-child(even)>.service-image{order:0}.service-detail h2{font-size:36px}.service-image img{height:320px}.gallery,.c3 .gallery,.c4 .gallery,.c5 .gallery,.c6 .gallery,.c8 .gallery,.c9 .gallery,.c11 .gallery,.c12 .gallery,.c13 .gallery,.c14 .gallery{grid-template-columns:repeat(2,1fr);gap:15px}.gallery h3,.c5 .gallery h3,.c13 .gallery h3,.c14 .gallery h3{font-size:20px;letter-spacing:-.02em}.gallery p{font-size:12px}.gallery img,.c5 .gallery article:nth-child(3n) img,.c13 .gallery img,.c14 .gallery img{aspect-ratio:1}.gallery-controls{gap:8px}.filter{font-size:12px;padding:8px 14px}.c2 .gallery{display:block}.c2 .gallery article,.c7 .gallery article,.c10 .gallery article{display:block;margin-bottom:25px;padding-top:20px}.c2 .gallery img,.c7 .gallery img,.c10 .gallery img{height:auto;aspect-ratio:1.4}.c6 .gallery article:nth-child(even),.c13 .gallery article:nth-child(3n+2){padding-top:0}.c8 .gallery article:first-child,.c11 .gallery article:first-child,.c11 .gallery article:nth-child(4){grid-column:span 2}.c8 .gallery article:first-child img{aspect-ratio:1.5}.c11 .gallery{gap:0}.c11 .gallery article{padding:15px}.c12 .gallery article{padding:12px}.c12 .gallery h3{font-size:24px}.c15 .gallery img{aspect-ratio:1.4}.c15 .gallery article:nth-child(even){width:100%;margin:0}.c15 .gallery h3{font-size:29px}.about-principles{grid-template-columns:1fr;gap:25px}.area-list{grid-template-columns:1fr;gap:15px}.area-list article,.c10 .area-list article{display:block}.area-list h2{font-size:34px}.contact-aside{padding:25px}.contact-layout .form{order:-1}.lead,.story-block p{font-size:18px}.full-photo img{height:600px}.overlay-copy{bottom:35px;left:7%;right:7%}.overlay-copy h1{font-size:55px}.hero-band{padding:40px 6%}.hero-band h1,.c3 .hero-band h1{font-size:65px}.hero-bottom{grid-template-columns:1fr;gap:20px;padding:25px 0}.photo-statement img{height:370px}.photo-statement .statement{display:block;padding:25px 0}.archive-hero{grid-template-columns:1fr;gap:25px;padding:25px 0}.archive-hero img{height:350px}.mosaic-hero{grid-template-columns:1fr}.mosaic-hero>div{padding:40px 6%}.mosaic-hero>img{height:350px;min-height:0}.mosaic-hero>aside{padding:22px 6%}.mini-wall img{height:200px}.c4 .full-photo{border-radius:70px 70px 0 0}.c4 .overlay-copy{left:0;right:0;max-width:none;padding:35px 25px 25px;border-radius:45% 45% 0 0}.c4 .overlay-copy h1{font-size:43px}.c4 .full-photo img{height:650px}.c5 .full-photo h1{font-size:39px}.c6 .hero{padding-top:20px}.c6 .hero h1{font-size:55px}.c6 .hero img{width:100%;height:365px}.c6 .hero>.lead{font-size:16px}.c8 .hero{padding-top:25px}.c8 .editorial-lead{grid-template-columns:1fr;gap:25px}.c8 .editorial-lead img{height:360px}.c8 .hero h1{font-size:49px}.c9 .hero{padding-top:20px}.c9 .split-hero{padding:15px}.c9 .hero-copy{padding:20px 5px 30px}.c9 h1{font-size:45px}.c9 .hero-photo img{min-height:0;height:330px}.c10 .page-heading{display:block}.c10 .page-heading h1{font-size:48px}.c11 .mosaic-hero h1{font-size:55px}.c12 .hero{display:flex;flex-direction:column}.c12 .hero-band{padding:40px 6%}.c12 .hero-band h1{font-size:70px}.c12 .hero>img{height:350px;min-height:0}.c13 .wall-hero{display:block;padding-top:20px}.c13 .wall-hero>div:first-child{display:block}.c13 .wall-hero h1{font-size:48px;margin-bottom:25px}.c13 .wall-hero>img{height:350px;margin-top:30px}.c13 .wall-hero>img:last-child{height:260px;margin-top:20px}.c14 .hero .photo-statement img{height:340px}.c14 .hero .statement h1{font-size:46px}.c15 .header{top:39px;left:6%;right:6%;width:auto}.c15 .hero .full-photo img{height:710px}.c15 .overlay-copy{bottom:40px}.c15 .overlay-copy h1{font-size:75px}.c15:not(.home-page) .header{width:88%}.c15 .page-heading{padding-top:30px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
 .c1{--display:Manrope,Arial,sans-serif}.c3,.c12{--display:Barlow Condensed,Impact,sans-serif}.c4{--display:DM Serif Display,Georgia,serif}.c9{--display:Libre Baskerville,Georgia,serif}.c1 .hero h1{font-weight:300}.c3,.c12{--weight:700} .c15.home-page .full-photo:after{background:linear-gradient(180deg,#0008 0%,transparent 40%,#0009 100%)} @media(max-width:760px){.c15 .overlay-copy h1{font-size:65px}}
/* Revised contractor content, RM-01 only. */
.c1 .hero h1{font-size:clamp(40px,4.4vw,63px);line-height:1.08}.c1 .scope-item{grid-template-columns:1fr 1fr}.c1 .scope-item h3{font-size:26px}.c1 .step{display:block}.c1 .header .nav{gap:20px}.c1 .action:empty{display:none}@media(max-width:760px){.c1 .hero h1{font-size:39px}.c1 .scope-item{grid-template-columns:1fr}.c1 .scope-item p{grid-column:1}.c1 .hero-copy{padding-top:20px}.c1 .step p{grid-column:auto}}

/* Visual quality review: matching cards, permanent labels, and readable controls. */
.project-card{display:flex;flex-direction:column;min-width:0}.project-card .text-link{align-self:flex-start;margin-top:auto}.project-card>p{margin-bottom:22px}.project-pair{align-items:stretch}.project-pair article:nth-child(2){padding-top:0}.project-pair:not(:has(article:only-child)){grid-template-columns:1fr 1fr}.project-card img{width:100%;aspect-ratio:1.5;object-fit:cover}.form input::placeholder,.form textarea::placeholder{color:var(--ink);opacity:.7}.form input,.form textarea,.form select{border-radius:var(--radius,0);font-size:16px}.form select{min-height:50px}.gallery h3{font-size:21px;line-height:1.3;letter-spacing:-.015em}.gallery article{display:flex;flex-direction:column}.gallery h3{margin-bottom:12px}.gallery p{margin-bottom:0}.service-detail{scroll-margin-top:30px}.about-opening{padding-top:30px}.about-opening .page-heading{padding-top:30px}.contact-photo{width:100%;height:260px;object-fit:cover;margin-bottom:28px;border-radius:var(--radius,0)}.about-opening>.wide-image{width:100%;object-fit:cover}.form small{line-height:1.6}.service-detail .action{align-self:start}.form .result{grid-column:1/-1}.contact-layout>.form{min-width:0}.gallery-controls .filter{color:var(--ink)}summary{list-style:none;display:flex;align-items:baseline;gap:14px}summary::-webkit-details-marker{display:none}summary::before{content:'+';font-family:Arial,sans-serif;flex:none}details[open]>summary::before{content:'−'}
.c1 .project-pair{gap:35px}.c1 .project-pair article:nth-child(2){padding-top:0}.c1 .project-card img{aspect-ratio:1.5}.c1 .gallery h3{font-size:22px}.c1 .about-opening{display:block}
@media(max-width:760px){.project-pair,.project-pair:not(:has(article:only-child)){grid-template-columns:1fr}.project-card{height:auto}.project-card .text-link{margin-top:0}.about-opening{display:flex!important;flex-direction:column!important;padding:20px 0!important;gap:25px!important;border-radius:0!important}.about-opening .page-heading{order:0!important;padding:15px 0!important}.about-opening .wide-image{order:1!important;height:330px!important;border-radius:var(--radius,0)}.about-opening h1{font-size:39px!important}.service-detail,.c2 .service-detail,.c4 .service-detail,.c6 .service-detail,.c9 .service-detail,.c11 .service-detail,.c15 .service-detail{display:flex!important;flex-direction:column!important;padding:30px 0!important;gap:25px!important;margin-bottom:0!important}.service-detail .service-image{width:100%;padding:0!important;order:0!important}.service-detail .service-image img{height:310px!important;margin:0!important}.service-detail>div:last-child{display:block!important;padding:0!important;column-count:1!important}.service-detail h2{font-size:33px!important}.service-detail .action{margin-top:5px!important}.services-grid{display:block!important}.services-grid>.shell{width:100%!important}.contact-layout,.c6 .contact-layout,.c7 .contact-layout,.c9 .contact-layout{display:flex!important;flex-direction:column!important;gap:30px!important}.contact-layout .form{order:-1!important;width:100%!important;display:grid!important;grid-template-columns:1fr!important;padding:0!important;background:none!important;border:0!important;border-radius:0!important}.form>*{grid-column:auto!important}.contact-layout .contact-aside{width:100%;display:block!important;padding:25px!important}.contact-photo{height:260px!important}.area-list{display:block!important}.area-list article{display:block!important;padding:25px 0!important}.area-list article h2{font-size:32px!important}.about-principles{display:block!important}.about-principles article{display:block!important;margin-bottom:25px!important;padding:25px 0!important}.gallery h3{font-size:20px!important}.c6 .contact-layout .form{border:1px solid #a2a699!important;padding:22px!important}.c9 .service-detail ul{display:block}.c4 .service-detail.bathroom-service,.c6 .service-detail,.c11 .service-detail,.c15 .service-detail{padding:25px!important;margin-bottom:25px!important}.c4 .area-list article,.c9 .area-list article,.c11 .area-list article,.c15 .area-list article{padding:25px!important}.c15 .about-opening{padding:25px!important}.c12 .services-grid>.shell,.c13 .services-grid>.shell{width:100%!important}}

/* Intrinsic HTML height must not override responsive image aspect ratios. Explicit theme heights remain in force. */
img{height:auto}

/* Photo-only galleries retain their full image width after caption removal. */
.c2 .gallery article,.c7 .gallery article,.c10 .gallery article{display:block}.gallery article>button{display:block;width:100%}

/* Use each design’s contrasting button text in every gallery interaction state. */
.gallery-controls button.filter:is(:hover,:focus-visible,[aria-pressed="true"]){background:var(--action);color:var(--buttonText,#fff);border-color:var(--action)}
