/* Location-page editorial layouts. Scoped to avoid changing global components. */
.location-service-scope {padding:clamp(64px,7vw,104px) clamp(22px,7vw,96px);background:#fff;}
.location-scope-layout {display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:clamp(36px,7vw,104px);max-width:1320px;margin:auto;align-items:start;}
.location-scope-intro h2 {max-width:16ch;margin:12px 0 24px;font-family:Oswald,Inter,sans-serif;font-size:clamp(32px,3.4vw,48px);font-weight:600;line-height:1.12;letter-spacing:-.02em;}
.location-scope-intro>p:not(.eyebrow) {max-width:43ch;margin:0;color:var(--muted);font-size:16px;line-height:1.8;}
.location-service-rows {list-style:none;padding:0;margin:0;border-top:1px solid #bbcfc0;}
.location-service-rows li {display:grid;grid-template-columns:32px minmax(0,1fr);gap:20px;padding:28px 0;border-bottom:1px solid var(--line);}
.location-row-number {padding-top:5px;color:var(--orange);font-size:12px;font-weight:800;letter-spacing:.08em;}
.location-service-rows h3 {margin:0 0 10px;font-family:Inter,sans-serif;font-size:20px;font-weight:750;line-height:1.4;letter-spacing:-.025em;}
.location-service-rows h3 a {color:var(--ink);text-decoration:none;}
.location-service-rows h3 a span {color:var(--orange);white-space:nowrap;}
.location-service-rows h3 a:hover {color:var(--orange);text-decoration:underline;text-underline-offset:5px;}
.location-service-rows p {margin:0;max-width:58ch;color:var(--muted);font-size:15px;line-height:1.75;}
.location-quote {max-width:1320px;margin:72px auto 0;padding:42px 48px;background:#f2f7f3;border-left:3px solid var(--orange);display:grid;grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr);gap:48px;align-items:start;}
.location-quote>.eyebrow {max-width:20ch;margin:7px 0;line-height:1.7;}
.location-quote figure {margin:0;}
.location-quote blockquote {margin:0;color:var(--ink);font-size:clamp(20px,2vw,27px);font-weight:500;line-height:1.55;letter-spacing:-.025em;}
.location-quote figcaption {display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:25px;font-size:12px;line-height:1.6;color:var(--muted);}
.location-quote figcaption>span:first-child {font-weight:800;color:var(--ink);}
.location-facility-guide {max-width:1320px;margin:56px auto 0;padding-top:30px;border-top:1px solid var(--line);display:flex;gap:32px;justify-content:space-between;align-items:start;}
.location-facility-guide h3 {margin:0;max-width:18ch;font-family:Inter,sans-serif;font-size:16px;line-height:1.5;}
.location-facility-guide nav {display:flex;flex-wrap:wrap;gap:12px 28px;max-width:760px;}
.location-facility-guide a {font-size:14px;font-weight:700;line-height:1.7;color:var(--orange);text-decoration:underline;text-underline-offset:4px;text-decoration-color:#bbcfc0;}
.location-detail-page .location-nearby {padding-top:48px;padding-bottom:48px;background:#fff;border-top:1px solid var(--line);}
.location-nearby .section-heading {max-width:none;margin-bottom:25px;}
.location-nearby .section-heading h2 {font-size:clamp(27px,3vw,36px);}
.location-nearby-links {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;}
.location-nearby-links a {display:flex;justify-content:space-between;gap:20px;padding:18px 0;border-bottom:1px solid #bbcfc0;color:var(--ink);font-size:17px;font-weight:750;text-decoration:none;}
.location-nearby-links a>span:last-child {color:var(--orange);}
.location-nearby-links a:hover {color:var(--orange);border-bottom-color:var(--orange);}
.location-service-scope a:focus-visible,.location-nearby-links a:focus-visible {outline:2px solid var(--orange);outline-offset:5px;}
/* Coverage cards are information, not oversized clickable service tiles. */
.location-detail-page .location-area-grid {gap:0 28px;}
.location-detail-page .location-area-grid>article {padding:24px 0;border:0;border-top:1px solid #c9d8cd;border-radius:0;background:transparent;box-shadow:none;}
.location-detail-page .location-area-grid>article>span {font-size:12px;}
.location-detail-page .location-area-grid>article>b {font-size:20px;line-height:1.3;}
.location-detail-page .location-area-grid>article>p {font-size:15px;line-height:1.7;}
.location-detail-page .location-borough-grid>a {min-height:0;justify-content:flex-start;gap:12px;padding:24px 0;border:0;border-top:1px solid #c9d8cd;border-radius:0;box-shadow:none;background:transparent;}
.location-detail-page .location-borough-grid>a>span {font-size:20px;font-weight:750;color:var(--ink);}
.location-detail-page .location-borough-grid>a>b {font-size:15px;font-weight:500;color:var(--muted);line-height:1.7;}
@media(max-width:800px){.location-scope-layout{grid-template-columns:1fr;gap:32px}.location-scope-intro h2{max-width:25ch}.location-scope-intro>p:not(.eyebrow){max-width:65ch}.location-quote{grid-template-columns:1fr;gap:20px;padding:32px;margin-top:48px}.location-quote>.eyebrow{max-width:none}.location-facility-guide{flex-direction:column;gap:20px}.location-facility-guide h3{max-width:none}}
@media(max-width:520px){.location-service-rows li{gap:12px;grid-template-columns:25px minmax(0,1fr);padding:24px 0}.location-service-rows h3{font-size:19px}.location-quote{padding:26px 23px}.location-quote figcaption{flex-direction:column;gap:3px}.location-facility-guide nav{display:grid;gap:16px}.location-nearby-links{grid-template-columns:1fr;gap:0}.location-service-scope{padding-top:56px;padding-bottom:56px}}
/* Hub: destination directory and service reference, deliberately distinct from sales cards. */
.location-hub-editorial .city-coverage-section .location-link-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:0 48px;margin-top:36px;}
.location-hub-editorial .city-coverage-section .location-link-grid a {min-height:0;justify-content:flex-start;gap:10px;padding:26px 32px 26px 0;border:0;border-top:1px solid #bbcfc0;border-radius:0;background:transparent;box-shadow:none;position:relative;}
.location-hub-editorial .city-coverage-section .location-link-grid a:after {content:'↗';position:absolute;right:0;top:27px;color:var(--orange);}
.location-hub-editorial .city-coverage-section .location-link-grid a>b {font-size:22px;}
.location-hub-editorial .city-coverage-section .location-link-grid a>span {font-size:15px;line-height:1.65;}
.location-hub-editorial .city-coverage-section .location-link-grid a:hover {transform:none;box-shadow:none;border-top-color:var(--orange);}
.location-hub-editorial .area-service-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:0 40px;}
.location-hub-editorial .area-service-grid a {min-height:0;display:block;padding:26px 0;border:0;border-top:1px solid #bbcfc0;background:transparent;box-shadow:none;border-radius:0;}
.location-hub-editorial .area-service-grid a>span {display:block;font-size:21px;line-height:1.4;font-weight:750;margin-bottom:12px;color:var(--ink);}
.location-hub-editorial .area-service-grid a>b {display:block;font-size:15px;font-weight:500;line-height:1.7;color:var(--muted);}
.location-hub-editorial .area-service-grid a:hover {transform:none;box-shadow:none;border-top-color:var(--orange);}
.location-hub-editorial a:focus-visible {outline:2px solid var(--orange);outline-offset:5px;}
@media(max-width:600px){.location-hub-editorial .city-coverage-section .location-link-grid,.location-hub-editorial .area-service-grid{grid-template-columns:1fr}}
