.expanded{grid-template-columns:repeat(4,minmax(0,1fr))}.expanded h3{font-size:1.6rem}.eyebrow,.service-bottom,.trust span{font-size:.875rem}.page-intro{padding:70px 6% 60px;max-width:1400px}.page-intro h1{font-size:clamp(3rem,5.5vw,5.8rem);max-width:1050px}.page-intro>p:not(.eyebrow){max-width:760px;margin-top:25px;color:#c6cbc6;font-size:1.125rem}.crumb{display:block;color:var(--gold);margin-bottom:25px;font-size:.875rem}.detail-lead{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.detail-lead>img{width:100%;height:480px;object-fit:cover}.detail-copy p{margin:24px 0;color:#62665f}.detail-copy ul{padding-left:22px;line-height:2}.portfolio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 24px}.portfolio-grid figure{margin:0;min-width:0}.portfolio-grid img{width:100%;height:330px;object-fit:cover;display:block;background:#242624}.portfolio-grid a:hover img{filter:brightness(1.08)}.portfolio-grid figcaption{font-size:1rem;color:#bdc1bb;padding:14px 0}.gallery-group{scroll-margin-top:30px}.gallery-group h2{margin-bottom:30px;font-size:2.7rem}.gallery-group+.gallery-group{border-top:1px solid var(--line)}.gallery-tabs{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.gallery-tabs a{border:1px solid #686e65;padding:10px 16px;font-size:.875rem}.gallery-tabs a:hover{background:var(--gold);color:#111}.faq{max-width:950px;margin:auto}.faq h2{margin-bottom:30px}.faq details{border-bottom:1px solid #bfc2b8;padding:22px 0}.faq summary{font-weight:bold;font-size:1.125rem;cursor:pointer}.faq details p{padding:16px 0 0;color:#555e53}.pool-card{height:255px;background:#17232a;color:#d4b27a;display:flex;flex-direction:column;justify-content:center;padding:25px}.pool-card span{font-family:Bedrock,sans-serif;font-size:2.8rem;line-height:1}.pool-card p{font-size:.875rem;margin-top:20px;color:#ddd}.location-list{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;list-style:none;padding:0}.location-list li{border-bottom:1px solid #bfc2b8;padding:14px 0}.editorial{max-width:850px}.editorial p{margin:22px 0}.editorial h2{font-size:2rem;margin-top:35px}.hero.real-work .hero-image{object-position:65% 58%}.hero.real-work .hero-shade{background:linear-gradient(90deg,#0a0c0bf2 0%,#0a0c0bc9 32%,#0a0c0b30 72%),linear-gradient(0deg,#0a0c0ba0,transparent 40%)}.featured-work{display:grid;grid-template-columns:1.4fr 1fr;gap:25px}.featured-work img{width:100%;height:420px;object-fit:cover}.featured-work h3{margin:16px 0 10px}.featured-work p{color:#bbc2b8}.gallery-link{margin-top:32px}.form-note a{text-decoration:underline}.contact a[href^="mailto"]{overflow-wrap:anywhere}.service-note{font-size:.875rem;color:#737a6f;margin-top:16px}.intro-copy{font-size:1.125rem;max-width:720px;margin-top:25px}.hero-bottom{font-size:.875rem}main{min-height:55vh}input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
.service-articles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}.service-articles h2,.service-local h2{font-size:clamp(1.8rem,2.3vw,2.4rem);line-height:1.12}.service-articles p,.service-local p{margin:22px 0;color:#c2c8be;line-height:1.8}.service-local{max-width:900px;margin-top:48px;border-top:1px solid var(--line);padding-top:35px}.service-related{padding-top:35px;padding-bottom:40px;border-top:1px solid var(--line)}.service-related h2{font-size:2rem}
@media(max-width:1000px){.expanded{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-lead{gap:30px}.location-list{grid-template-columns:repeat(3,1fr)}.service-articles{grid-template-columns:1fr;gap:28px;max-width:850px}}
@media(max-width:650px){.expanded,.detail-lead,.portfolio-grid,.featured-work{grid-template-columns:1fr}.page-intro{padding:45px 6%}.detail-lead>img{height:340px}.portfolio-grid img{height:auto;max-height:520px;object-fit:contain}.featured-work img{height:310px}.location-list{grid-template-columns:1fr 1fr}.hero.real-work .hero-image{object-position:62% center}.hero.real-work .hero-shade{background:linear-gradient(90deg,#0a0c0bde,#0a0c0b80)}.pool-card{height:240px}.hero-bottom span:last-child{max-width:95%}.page-intro h1{overflow-wrap:break-word}.contact .button{max-width:100%}}
