/* Local accident guides: scoped styles and resource discovery. */
.local-hero.inner-hero { height:auto; max-height:none; min-height:480px; }
.local-hero .inner-hero-copy { height:auto; }
.local-hero .inner-hero-copy h1 { font-size:clamp(36px,4vw,56px); }
.local-hero .inner-hero-media { min-height:320px; height:auto; }
.local-hero .inner-hero-media img { position:absolute; inset:0; min-height:0; height:100%; object-position:center 38%; }
.local-guide-body section[id] { scroll-margin-top:110px; }
.local-hero .inner-hero-media span { max-width:85%; }
.local-guide-body p,.local-guide-body li,.local-directory p { text-align:left; }
.local-guide-body .content-section h2 { font-size:clamp(28px,3vw,40px); line-height:1.25; }
.local-guide-body .content-section p a,.local-guide-body .practice-faq a { text-decoration:underline; text-underline-offset:3px; }
.local-guide-body .local-byline { color:var(--ink-soft); font-size:12px; margin-bottom:30px; }
.local-guide-body .local-takeaway { padding:28px; margin-bottom:44px; border-top:3px solid var(--rose); background:#fff; box-shadow:0 12px 36px rgba(12,35,55,.04); }
.local-takeaway h2 { font-size:clamp(26px,3vw,36px); line-height:1.25; }
.local-guide-body .local-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin-top:26px; padding-top:22px; border-top:1px solid var(--line); }
.local-steps strong { display:block; margin-bottom:6px; color:var(--navy); font-family:var(--serif); font-size:18px; }
.local-steps p { font-size:13px; line-height:1.55; margin:0; }
.local-guide-body .local-jump { display:flex; flex-wrap:wrap; gap:8px 20px; margin-bottom:36px; }
.local-jump a { font-size:12px; border-bottom:1px solid var(--rose); padding:8px 0; }
.local-guide-body .local-sources { margin-top:40px; padding-top:28px; border-top:1px solid var(--line); }
.local-sources h2 { font-size:26px; }
.local-sources ul { list-style:none; margin:0; padding:0; }
.local-sources li { margin-bottom:14px; font-size:13px; line-height:1.6; }
.local-sources a { text-decoration:underline; text-underline-offset:3px; overflow-wrap:anywhere; }
.local-sources p { font-size:12px; }
.local-directory { margin:42px 0; padding:32px; background:#f0e7e2; border-top:2px solid var(--rose); scroll-margin-top:100px; }
.local-directory.section-shell { margin:0; padding-top:48px; padding-bottom:48px; }
.local-directory h2 { margin-bottom:16px; font-size:clamp(28px,3vw,42px); }
.local-directory > p { max-width:760px; }
.local-directory-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.local-directory-card { display:flex; flex-direction:column; gap:10px; padding:24px; border:1px solid var(--line); background:var(--ivory); }
.local-directory-card strong { font:400 23px/1.3 var(--serif); color:var(--navy); }
.local-directory-card span { color:var(--ink-soft); font-size:13px; line-height:1.6; }
.local-directory-card em { margin-top:auto; padding-top:8px; color:var(--navy); font:600 11px/1.5 var(--sans); letter-spacing:.04em; }
.local-directory-card:hover { border-color:var(--rose); background:#fff; }
.local-directory a:focus-visible,.local-guide-body a:focus-visible,.local-guide-body summary:focus-visible { outline:2px solid var(--navy); outline-offset:4px; }
.local-office p { font-size:13px; }
@media(max-width:740px) {
 .local-hero.inner-hero { min-height:0; }
 .local-hero .inner-hero-media { min-height:0; height:auto; max-height:none; aspect-ratio:16/9; }
 .local-hero .inner-hero-media img { height:100%; }
}
@media(max-width:650px) {
 .local-guide-body .local-steps { grid-template-columns:1fr; gap:18px; }
 .local-guide-body .local-takeaway { padding:22px; }
 .local-directory { padding:24px 18px; }
 .local-directory-grid { grid-template-columns:1fr; }
 .local-hero .inner-hero-media,.local-hero .inner-hero-media img { min-height:0; }

 .local-hero .inner-hero-actions { flex-wrap:wrap; }
}
