/* Scoped to the nine local offers. Shared navigation and other pages stay independent. */
.local-landing .local-hero{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.85fr);align-items:center;gap:65px;padding-top:70px;padding-bottom:55px}
.local-landing .local-hero h1{font-size:clamp(42px,5.6vw,78px);line-height:1.08;max-width:850px}
.local-landing .local-hero h1 em{display:block}
.local-landing .local-hero .lead{font-size:18px;line-height:1.85;max-width:730px}
.local-landing .local-hero .hero-actions{gap:12px;margin-top:28px}
.local-landing .local-hero-aside{background:#f7f7f8;border:1px solid #e2e2e7;border-radius:24px;padding:32px}
.local-landing .local-hero-aside h2{font-size:27px;line-height:1.3;margin:14px 0 24px;letter-spacing:-.035em}
.local-landing .local-hero-aside ul{list-style:none;padding:0;margin:0}
.local-landing .local-hero-aside li{display:flex;align-items:flex-start;gap:14px;padding:15px 0;border-top:1px solid #dedee3;font-size:15px;font-weight:600;line-height:1.6}
.local-landing .local-hero-aside li svg{width:21px;height:21px;flex-shrink:0;color:#cf330b;margin-top:3px}
.local-landing .local-hero-aside>p{color:#55555e;font-size:14px;line-height:1.8;margin:20px 0}
.local-landing .local-hero-aside .text-link{font-size:13px}
.local-landing .local-page-nav{width:min(var(--width),calc(100% - 2*var(--gutter)));margin-inline:auto;display:flex;flex-wrap:wrap;justify-content:center;gap:10px;padding:24px 8px 30px;border-bottom:1px solid #e2e2e7}
.local-landing .local-page-nav a{padding:12px 18px;border:1px solid #dedee3;border-radius:8px;color:#414149;font-size:12px;text-decoration:none;line-height:1.5;text-align:center}
.local-landing .local-page-nav a:hover{color:#b92b06;border-color:#cf330b;background:#fff5f0}
.local-landing .section{padding-block:75px;scroll-margin-top:110px}
.local-landing .section h2{font-size:clamp(28px,3.1vw,43px);line-height:1.24;letter-spacing:-.045em}
.local-landing .section-head{max-width:850px;margin-bottom:35px}
.local-landing .section-head>p:not(.eyebrow){font-size:16px;line-height:1.8;color:#55555e}
.local-landing .local-context,.local-landing .local-detail,.local-landing .local-seo{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:65px;align-items:start}
.local-landing .prose p{font-size:16px;line-height:1.95;color:#505059;max-width:70ch}
.local-landing .prose p:first-child{margin-top:0}
.local-landing .prose .text-link{font-size:14px;line-height:1.6;margin-top:12px}
.local-landing .local-offer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.local-landing .local-offer-grid article{position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:flex-end;padding:30px;border:1px solid #303034;border-radius:20px;background:#171719;transition:border-color .25s,box-shadow .25s}
.local-landing .local-offer-media{position:absolute;inset:0;z-index:-2;display:block}
.local-landing .local-offer-media img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top;transition:transform .6s}
.local-landing .local-offer-grid article:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#10111318 0%,#10111340 20%,#101113e8 48%,#101113fa 76%,#101113 100%);pointer-events:none}
.local-landing .local-offer-copy{padding-top:190px;position:relative}
.local-landing .local-number{position:absolute;top:24px;left:26px;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;border:1px solid #ffffff35;background:#171719bd;color:#fff;font-size:12px;font-weight:700}
.local-landing .local-offer-grid h3{font-size:25px;line-height:1.35;margin:0 0 16px;letter-spacing:-.035em;color:#fff}
.local-landing .local-offer-grid p{font-size:15px;line-height:1.9;color:#e1e1e5;margin:0}
.local-landing .local-offer-grid article:hover{border-color:#fc3b00;box-shadow:0 12px 40px -24px #fc3b0066}
.local-landing .local-offer-grid article:hover img{transform:scale(1.025)}
.local-landing .local-detail{border-top:1px solid #e2e2e7}
.local-landing .local-seo{background:#171719;color:#fff;box-shadow:0 0 0 100vmax #171719;clip-path:inset(0 -100vmax)}
.local-landing .local-seo h2{color:#fff}
.local-landing .local-seo .eyebrow{color:#ff8c69}
.local-landing .local-seo .prose p{color:#ceced4}
.local-landing .local-seo .text-link{color:#ff9474}
.local-landing .local-projects .project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.local-landing .local-projects .project-label{line-height:1.6}
.local-landing .local-projects .project-title h3{font-size:24px;line-height:1.35}
.local-landing .local-process{border-top:1px solid #e2e2e7}
.local-landing .local-process ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;list-style:none;padding:0;counter-reset:local-step}
.local-landing .local-process li{counter-increment:local-step;padding-top:22px;border-top:1px solid #dedee3}
.local-landing .local-process li:before{content:'0' counter(local-step);color:#c53008;font-size:12px;font-weight:700}
.local-landing .local-process li h3{font-size:20px;line-height:1.4;margin:17px 0 12px;letter-spacing:-.03em}
.local-landing .local-process li p{font-size:15px;line-height:1.9;color:#55555e}
.local-landing .local-invitation{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:50px;margin-top:35px;padding-top:35px;border-top:1px solid #e2e2e7}
.local-landing .local-invitation h3{font-size:28px;letter-spacing:-.035em;line-height:1.3;margin:0 0 12px}
.local-landing .local-invitation p{font-size:15px;line-height:1.8;color:#55555e}
.local-landing .local-faq{padding-top:30px}
.local-landing .local-faq .faq-grid{grid-template-columns:1fr;max-width:980px}
.local-landing .local-faq summary{font-size:16px;line-height:1.6}
.local-landing .local-faq details p{font-size:15px;line-height:1.9;max-width:80ch}
.local-landing .contact{border-top:1px solid #e2e2e7}
@media(max-width:1000px){.local-landing .local-hero{gap:30px}.local-landing .local-hero-aside{padding:25px}.local-landing .local-context,.local-landing .local-detail,.local-landing .local-seo{gap:35px}.local-landing .local-invitation{gap:30px}.local-landing .local-process ol{gap:24px}}
@media(max-width:800px){.local-landing .local-hero{grid-template-columns:1fr;padding-top:40px;gap:30px}.local-landing .local-hero-aside{max-width:650px}.local-landing .local-context,.local-landing .local-detail,.local-landing .local-seo{grid-template-columns:1fr;gap:25px}.local-landing .section{padding-block:50px}.local-landing .local-invitation{grid-template-columns:1fr;gap:20px}.local-landing .local-process ol{grid-template-columns:1fr;gap:18px}.local-landing .local-process li p{max-width:70ch}.local-landing .local-projects .project-grid{gap:30px}}
@media(max-width:580px){.local-landing .local-hero{padding-top:32px;padding-bottom:28px}.local-landing .local-hero h1{font-size:clamp(34px,9.4vw,52px)}.local-landing .local-hero .lead{font-size:16px;line-height:1.85}.local-landing .local-hero .hero-actions{flex-direction:column;align-items:stretch}.local-landing .local-hero .button{width:100%;justify-content:space-between}.local-landing .local-hero-aside{padding:24px;border-radius:18px}.local-landing .local-hero-aside h2{font-size:24px}.local-landing .local-page-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.local-landing .local-page-nav a{padding:12px 8px}.local-landing .section{padding-block:40px}.local-landing .section h2{font-size:28px;line-height:1.3}.local-landing .prose p{font-size:15px;line-height:1.9}.local-landing .local-offer-grid,.local-landing .local-projects .project-grid{grid-template-columns:1fr}.local-landing .local-offer-grid article{padding:24px}.local-landing .local-offer-grid h3{font-size:21px}.local-landing .local-faq summary{font-size:15px}.local-landing .local-faq details p{font-size:14px}.local-landing .local-invitation h3{font-size:25px}}

.local-landing .contact-paths{gap:23px;align-items:stretch;min-width:0}
.local-landing .contact-paths .contact-path{
 display:grid;grid-template-columns:48px minmax(0,1fr) 17px;align-items:center;
 gap:15px;min-width:0;width:100%;text-decoration:none;color:#171719;
 padding:0;background:none;border:0;box-shadow:none;text-align:left;
}
.local-landing .contact-paths .contact-path-phone{grid-template-columns:48px minmax(0,1fr)}
.local-landing .contact-path .contact-path-icon{
 display:grid;place-items:center;width:48px;height:48px;border-radius:50%;
 border:1px solid transparent;background:#141416;color:#fff;
 transition:background .2s,border-color .2s,transform .2s;
}
.local-landing .contact-path .contact-path-icon svg{width:22px;height:22px;padding:0;background:none;border-radius:0;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;transform:none}
.local-landing .contact-path .contact-path-icon svg path{transform:none}
.local-landing .contact-path-phone .contact-path-icon{background:#fc3b00;color:#fff}
.local-landing .contact-path-copy{display:flex;flex-direction:column;gap:4px;min-width:0}
.local-landing .contact-path-copy strong{color:inherit;font-size:14px;font-weight:700;line-height:1.55;letter-spacing:-.025em}
.local-landing .contact-path-copy>span{color:#71717b;font-size:11px;font-weight:400;line-height:1.65}
.local-landing .contact-path-phone .contact-path-copy strong{font-size:17px;letter-spacing:-.02em}
.local-landing .contact-path .contact-path-forward{width:17px;height:17px;stroke:currentColor;stroke-width:1.5;transition:transform .2s}
.local-landing .local-invitation .contact-paths{display:flex;flex-direction:column;gap:22px;max-width:370px;width:100%}
.local-landing .contact-path:hover{color:#c53008}

/* Contact uses the same handset artwork, proportions and orange disc as the homepage. */
.local-landing .local-hero .hero-actions{align-items:center;justify-content:flex-start;column-gap:26px;row-gap:22px}
.local-landing .local-hero-phone{display:flex;width:220px;max-width:100%}
.local-landing .local-final-phone{display:flex;margin-bottom:22px;min-width:250px}
.local-landing .contact-direct .contact-path-copy>span{margin:0}
.local-landing .local-final-phone .contact-path-copy strong{font-size:26px}
.local-landing .local-final-phone .contact-path-copy>span{font-size:12px}
.local-landing .contact-path-project:hover .contact-path-icon{background:#303035;transform:translateY(-2px)}
.local-landing .contact-path-phone:hover .contact-path-icon{background:#d9380c;transform:translateY(-2px)}
.local-landing .contact-path-project:hover .contact-path-forward{transform:translateX(3px)}
@media(max-width:800px){.local-landing .local-offer-copy{padding-top:160px}}
@media(max-width:580px){.local-landing .local-page-nav{padding-inline:0}.local-landing .local-hero .hero-actions{align-items:stretch;gap:22px}.local-landing .local-hero-phone{width:100%;padding:0 4px}.local-landing .local-offer-grid article{padding:24px}.local-landing .local-offer-copy{padding-top:160px}.local-landing .local-offer-grid h3{font-size:23px}.local-landing .local-offer-grid p{font-size:14px;line-height:1.9}.local-landing .local-number{top:20px;left:22px}.local-landing .local-final-phone{min-width:0}.local-landing .local-final-phone .contact-path-copy strong{font-size:23px}}
@media(prefers-reduced-motion:reduce){.local-landing .local-offer-grid article:hover img{transform:none}}
