.page-hero{min-height:520px;height:min(72svh,720px)}
.page-hero h1{font-size:clamp(58px,7.2vw,112px)}
.page-hero .hero-inner{padding-top:150px;padding-bottom:110px}
.breadcrumb{background:var(--ink);color:#fff;font-size:13px}
.breadcrumb .wrap{display:flex;gap:14px;align-items:center;padding-block:14px;flex-wrap:wrap}
.breadcrumb a{color:#fff;text-decoration:none;opacity:.85}.breadcrumb a:hover{opacity:1;text-decoration:underline}
.breadcrumb span[aria-hidden]{color:var(--orange)}
.page-section .wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:48px 72px;align-items:start}
.page-section h2{font-size:clamp(40px,4.6vw,64px)}
.page-prose p,.page-prose li{font-size:17px;line-height:1.65}
.page-prose ul{padding-left:22px;margin:0}.page-prose li{margin-bottom:10px}.page-prose p+p,.page-prose ul+p,.page-prose p+ul{margin-top:18px}
.page-prose a{color:inherit;font-weight:600}
.page-section.alt{background:#fff}
.page-gallery{padding-bottom:96px}
.faq-section .services-list{max-width:900px}
.faq-section .section-heading{margin-bottom:40px}
.related-services{background:var(--sand)}
.related-services .wrap{display:flex;flex-wrap:wrap;gap:16px 40px;align-items:center;padding-block:34px}
.related-services span{font:600 13px/1 var(--body);letter-spacing:.14em;text-transform:uppercase}
.cta-band{background:var(--ink);color:#fff}
.cta-band .wrap{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:40px;align-items:center;padding-block:96px}
.cta-band h2{font-size:clamp(56px,6vw,96px)}
.cta-band p{font-size:18px;max-width:440px;color:#d2d0ca}
.cta-band .contact-direct{display:grid;gap:14px}
.cta-band .contact-direct a{color:#fff;text-decoration:none;display:flex;gap:16px;align-items:baseline}
.cta-band .contact-direct strong{font-family:var(--display);font-size:32px;font-weight:700;letter-spacing:.01em}
.cta-band .contact-direct span{font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--silver)}
.footer-services{border-top:1px solid #ffffff20}
.footer-services nav{display:flex;flex-wrap:wrap;gap:10px 28px;padding-block:22px;align-items:center}
.footer-services .footer-label{font:600 12px/1 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--orange)}
.footer-services a{color:#fff;text-decoration:none;font-size:14px;opacity:.9}.footer-services a:hover{text-decoration:underline;opacity:1}
.footer-credit a{color:inherit}
@media(max-width:900px){.page-section .wrap{grid-template-columns:1fr;gap:24px}.cta-band .wrap{grid-template-columns:1fr}.page-hero{min-height:460px}.page-hero .hero-inner{padding-top:120px;padding-bottom:70px}}
