/* Local clinic information and treatment guides. */
.seo-breadcrumbs {font-size:12px;line-height:1.6;color:var(--slate-600)}
.seo-breadcrumbs ol {display:flex;flex-wrap:wrap;gap:8px 12px;list-style:none;padding:0;margin:0}
.seo-breadcrumbs li+li::before {content:"/";margin-right:12px;opacity:.55}
.seo-breadcrumbs a:hover {text-decoration:underline;text-underline-offset:4px}
.seo-breadcrumbs-band {background:linear-gradient(120deg,var(--petrol-950),#123f4b 76%,#355764)}
.seo-breadcrumbs--page {padding-block:18px;color:var(--white)}
.seo-breadcrumbs--page a {color:inherit}
.seo-breadcrumbs--page li+li::before {opacity:.55}
.treatment-detail-link {display:inline;transition:color .2s}
.treatment-detail-link:hover {color:var(--mint);text-decoration:underline;text-underline-offset:5px}
.treatment-detail-link:focus-visible {outline:2px solid var(--mint);outline-offset:6px}
.local-intro,.local-profile {display:grid;grid-template-columns:1fr 1.2fr;gap:60px;padding-block:80px;border-top:1px solid var(--line)}
.local-intro h2,.local-profile h2 {font-size:clamp(26px,3vw,40px);line-height:1.2;letter-spacing:-.04em;margin:20px 0}
.local-intro p,.local-profile p {font-size:16px;line-height:1.9;color:var(--ink-soft)}
.local-intro p:first-child {margin-top:0}
.local-intro a,.service-article a {text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.business-hours dl {margin:24px 0}
.business-hours dl>div {display:flex;justify-content:space-between;gap:24px;padding:12px 0;border-bottom:1px solid var(--line)}
.business-hours dd {margin:0}
.service-hero {padding:30px 0 80px;background:var(--petrol-950);color:white}
.service-hero .seo-breadcrumbs {color:#b9cccf;margin-bottom:50px}
.service-hero__grid {display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:64px}
.service-hero .eyebrow {color:var(--mint);font-size:12px;letter-spacing:.14em}
.service-hero h1 {font-size:clamp(34px,4vw,58px);line-height:1.12;letter-spacing:-.055em;margin:22px 0}
.service-hero p {font-size:16px;line-height:1.85;color:#c4d4d7;margin:24px 0 30px;max-width:62ch}
.service-hero__visual {border-radius:32px 32px 90px 32px;overflow:hidden;border:1px solid #ffffff25;background:#ffffff08}
.service-hero__visual img {width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.service-overview {padding:32px 40px;counter-reset:step}
.service-overview span {display:flex;align-items:center;gap:20px;padding:26px 0;font-size:20px;border-bottom:1px solid #ffffff20;counter-increment:step}
.service-overview span::before {content:"0" counter(step);font-size:12px;color:var(--mint)}
.service-overview span:last-child {border:0}
.service-layout {display:grid;grid-template-columns:260px minmax(0,1fr);gap:90px;padding-block:88px}
.service-index {align-self:start;position:sticky;top:120px;font-size:14px}
.service-index>p {font-weight:800;letter-spacing:.08em;text-transform:uppercase;font-size:11px;margin:0 0 22px;color:var(--slate-600)}
.service-index nav {display:grid;border-top:1px solid var(--line);margin-bottom:26px}
.service-index nav a {padding:15px 0;border-bottom:1px solid var(--line);line-height:1.5}
.service-index nav a:hover {color:var(--petrol-700);text-decoration:underline;text-underline-offset:4px}
.service-article {max-width:780px}
.service-article section {margin:0 0 46px;scroll-margin-top:115px}
.service-article h2,.service-related h2 {font-size:clamp(24px,2.4vw,34px);letter-spacing:-.04em;line-height:1.25;margin:0 0 20px}
.service-article p {font-size:16px;line-height:1.95;color:var(--ink-soft);margin:0 0 16px}
.service-faq details {border-bottom:1px solid var(--line);padding:20px 0}
.service-faq summary {cursor:pointer;font-weight:700;line-height:1.6;padding-right:12px}
.service-faq details p {margin:18px 0 0}
.service-reading {border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:28px 0;margin-block:40px}
.service-reading p {margin-top:20px;font-size:14px}
.service-location {padding:30px;background:var(--mist-100);border-radius:20px}
.service-location a {display:inline-block;margin:8px 24px 0 0}
.service-related {padding-bottom:90px}
.service-related>div {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.service-related a {display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid var(--line);padding:28px;border-radius:16px;font-weight:650;line-height:1.6}
.service-related a:hover {background:var(--mist-100)}
.not-found {padding-block:100px;max-width:820px}
.not-found h1 {font-size:clamp(32px,6vw,56px);line-height:1.15}
.not-found p {line-height:1.85;color:var(--ink-soft)}
.not-found nav {display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
.not-found nav a {padding:14px 20px;background:var(--petrol-950);color:white;border-radius:30px}
@media(max-width:1000px) {
 .service-layout {grid-template-columns:210px minmax(0,1fr);gap:40px}
 .service-hero__grid {gap:30px}
 .local-intro,.local-profile {gap:30px}
 .service-related a {padding:20px}
}
@media(max-width:700px) {
 .service-hero {padding:24px 0 48px}
 .service-hero .seo-breadcrumbs {margin-bottom:30px}
 .service-hero__grid,.service-layout,.local-intro,.local-profile {grid-template-columns:1fr}
 .service-hero__grid {gap:36px}
 .service-layout {padding-block:48px;gap:38px}
 .service-index {position:static}
 .service-index nav {grid-template-columns:1fr 1fr;column-gap:20px}
 .service-overview {padding:18px 28px}
 .service-overview span {padding:18px 0;font-size:18px}
 .service-related>div {grid-template-columns:1fr}
 .service-related {padding-bottom:50px}
 .local-intro,.local-profile {padding-block:48px;gap:16px}
 .service-location {padding:24px}
}

