
:root{--ink:#101827;--muted:#475569;--paper:#f5f1ea;--line:#e5e0d8;--dark:#111827;--gold:#e9ad45;--orange:#ef5b36;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.62;-webkit-font-smoothing:antialiased}a{color:inherit}.wrap{width:min(1160px,92vw);margin:auto}.site-header{position:sticky;top:0;z-index:50;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;padding:16px max(22px,5vw);background:rgba(17,24,39,.96);border-bottom:3px solid var(--gold);box-shadow:0 10px 34px rgba(0,0,0,.18)}.brand{font-size:clamp(1.12rem,2vw,1.42rem);font-weight:950;color:#fff;text-decoration:none;letter-spacing:-.035em}.navlinks{display:flex;justify-content:center;gap:22px;color:#fff;font-weight:850}.navlinks a{text-decoration:none}.phone{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:var(--orange);color:#fff!important;text-decoration:none;font-weight:950;letter-spacing:.01em;padding:13px 20px;box-shadow:0 12px 28px rgba(239,91,54,.25)}.header-phone{white-space:nowrap}.menu-label,.menu-toggle{display:none}.hero{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr);min-height:clamp(540px,70vh,740px);background:#0c1018}.hero-photo{min-height:100%;background:linear-gradient(90deg,rgba(6,10,18,.08),rgba(6,10,18,.62)),var(--hero-img) center/cover no-repeat}.hero-card{align-self:center;justify-self:start;margin:clamp(28px,5vw,70px);max-width:570px;padding:clamp(28px,5vw,54px);background:#fff;border-radius:28px;border-top:10px solid var(--gold);box-shadow:0 28px 80px rgba(0,0,0,.32)}.eyebrow{margin:0 0 10px;color:#8b4d07;font-weight:950;text-transform:uppercase;letter-spacing:.11em;font-size:.78rem}.hero h1{margin:0 0 24px;font-size:clamp(2.65rem,5.5vw,5.25rem);line-height:.94;letter-spacing:-.073em;color:#111827}.hero-phone{font-size:1.08rem;padding:16px 24px}.intro{padding:clamp(54px,7vw,86px) 0;background:var(--paper)}.intro-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:42px;align-items:start}.intro h2,.call-panel h2,.local-section h2,.areas h2,.final-cta h2{margin:0;font-size:clamp(2rem,4vw,3.55rem);line-height:1.02;letter-spacing:-.055em;color:var(--ink)}p{font-size:clamp(1.02rem,1.3vw,1.13rem);color:#2f3b4c;margin:0 0 16px}.image-band{display:grid;grid-template-columns:repeat(3,1fr);gap:0;background:#111827}.service-tile{position:relative;min-height:520px;display:grid;align-items:end;overflow:hidden}.service-tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(1.02) contrast(1.03);transform:scale(1.02)}.service-tile::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.80))}.service-tile div{position:relative;z-index:1;padding:30px;color:#fff}.service-tile h2{margin:0 0 12px;font-size:clamp(1.45rem,2.4vw,2.3rem);line-height:1.04;letter-spacing:-.045em;color:#fff}.service-tile p{color:#f6f8fb;font-weight:620}.call-panel{padding:clamp(58px,8vw,96px) 0;background:#fff}.call-grid{display:grid;grid-template-columns:.8fr 1.1fr auto;gap:34px;align-items:center}.call-grid ul{margin:0;padding:0;list-style:none;display:grid;gap:10px}.call-grid li{padding:13px 15px;background:#f7f8fa;border:1px solid #e1e6ee;border-radius:14px;color:#243044;font-weight:720}.local-section{padding:clamp(58px,8vw,98px) 0;background:#111827;color:#fff}.local-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:42px;align-items:center}.local-section h2,.local-section p{color:#fff}.local-copy p:last-child{color:#e5edf6}.local-section img{width:100%;min-height:410px;object-fit:cover;border-radius:30px;box-shadow:22px 22px 0 var(--gold)}.areas{padding:clamp(58px,8vw,96px) 0;background:#fff}.areas h2{max-width:820px;margin-bottom:26px}.area-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.area-cards article{border:1px solid var(--line);border-radius:22px;padding:22px;background:#fff;box-shadow:0 16px 36px rgba(15,23,42,.07)}.area-cards h3{margin:0 0 8px;font-size:1.15rem;color:#111827}.area-cards p{font-size:1rem}.final-cta{padding:clamp(58px,8vw,100px) 0;background:linear-gradient(135deg,#2b160f,#111827);text-align:center}.final-cta h2,.final-cta p{color:#fff}.final-cta p{max-width:780px;margin:12px auto 24px;color:#f3f4f6}footer{padding:34px 0;background:#080c14;color:#fff}.footgrid{display:grid;grid-template-columns:1.2fr 1fr auto;gap:24px;align-items:center}footer p,footer a,footer strong{color:#fff}footer a{display:inline-block;margin-right:18px;text-decoration:none;font-weight:800}.layout-offset .hero{grid-template-columns:.92fr 1.08fr}.layout-offset .hero-card{border-left:10px solid var(--gold);border-top:0}.layout-compact .hero{min-height:560px}.layout-compact .hero-card{max-width:520px}.layout-broad .hero-photo{background-position:center 35%}.layout-broad .service-tile{min-height:470px}@media(max-width:980px){.site-header{grid-template-columns:1fr auto;gap:14px}.menu-label{display:inline-flex;justify-self:end;border:1px solid rgba(255,255,255,.65);border-radius:999px;padding:9px 14px;color:#fff;font-weight:900}.menu-toggle{position:absolute;opacity:0}.navlinks{display:none;grid-column:1/-1;flex-direction:column;align-items:flex-start;gap:10px;border-top:1px solid rgba(255,255,255,.15);padding-top:12px}.menu-toggle:checked~.navlinks{display:flex}.header-phone{grid-column:1/-1;justify-self:start}.hero,.layout-offset .hero{grid-template-columns:1fr;min-height:auto}.hero-photo{min-height:340px}.hero-card{margin:-64px 22px 34px;z-index:2;position:relative;justify-self:stretch}.intro-grid,.call-grid,.local-grid{grid-template-columns:1fr}.image-band{grid-template-columns:1fr}.service-tile{min-height:410px}.area-cards{grid-template-columns:1fr 1fr}.footgrid{grid-template-columns:1fr}.local-section img{min-height:300px;box-shadow:12px 12px 0 var(--gold)}}@media(max-width:620px){.site-header{padding:14px 18px}.brand{font-size:1.08rem}.hero-photo{min-height:285px}.hero-card{padding:24px;margin:-48px 16px 28px;border-radius:22px}.hero h1{font-size:clamp(2.35rem,14vw,3.55rem)}.hero-phone,.phone{width:100%}.area-cards{grid-template-columns:1fr}.service-tile div{padding:24px}.intro,.call-panel,.local-section,.areas,.final-cta{padding:48px 0}}
