.local-work { background: var(--cream); }
.local-work .local-reading { max-width: 820px; }
.local-work .local-heading { font-size: clamp(38px, 6vw, 76px); margin-bottom: 30px; }
.local-work .local-intro { font-size: 20px; line-height: 1.75; margin: 0 0 32px; }
.local-periods { display: flex; flex-wrap: wrap; gap: 12px; margin: 0 0 38px; }
.local-periods a { padding: 14px 18px; border: 2px solid var(--pink); color: var(--pink); font-size: 13px; font-weight: 800; line-height: 1.5; }
.local-periods a[aria-current="location"] { color: white; background: var(--pink); }
.local-index { margin: 0; padding: 0; list-style: none; border-top: 1px solid #d9cead; }
.local-index li { border-bottom: 1px solid #d9cead; }
.local-index a { display: flex; align-items: baseline; gap: 15px; padding: 15px 0; font-size: 15px; font-weight: 700; line-height: 1.5; }
.local-index span { color: var(--pink); font-size: 12px; }
.local-index a:hover, .local-sources a:hover { text-decoration: underline; }
.local-case { padding: 65px 0; border-bottom: 1px solid #d9cead; scroll-margin-top: 88px; }
.local-case .local-label { margin: 0 0 20px; color: var(--pink); font-size: 12px; font-weight: 900; letter-spacing: .1em; line-height: 1.6; }
.local-case h3, .local-extra h3 { font-family: Oswald, Impact, sans-serif; font-size: clamp(30px, 4vw, 46px); line-height: 1.2; margin: 0 0 24px; }
.local-case > p:not(.local-label), .local-extra > p { font-size: 17px; line-height: 1.8; margin: 0 0 22px; }
.local-result { padding: 24px 28px; margin: 30px 0; border-left: 5px solid var(--pink); background: var(--yellow); }
.local-result strong { display: block; margin-bottom: 8px; color: var(--pink); font-size: 11px; font-weight: 900; letter-spacing: .1em; }
.local-result p { margin: 0; font-size: 17px; font-weight: 700; line-height: 1.65; }
.local-result.is-action { background: #fff; }
.local-evidence { width: min(100%, 540px); margin: 32px auto 0; }
.local-evidence a { display: block; }
.local-evidence img { display: block; width: 100%; height: auto; object-fit: contain; border: 1px solid #d9cead; }
.local-evidence figcaption { margin-top: 13px; font-size: 12px; line-height: 1.65; color: #514a40; }
.local-sources { display: flex; flex-wrap: wrap; gap: 12px 24px; margin-top: 24px; }
.local-sources a { color: var(--pink); border-bottom: 1px solid currentColor; font-size: 13px; font-weight: 800; line-height: 1.6; padding: 6px 0; }
.local-extra { padding: 35px; margin-top: 48px; border: 2px solid var(--pink); }
.local-extra > .work-label { color: var(--pink); margin-bottom: 18px; }
.local-extra details { margin-top: 24px; border-top: 1px solid #d9cead; }
.local-extra summary { padding: 16px 0; cursor: pointer; color: var(--pink); font-weight: 800; font-size: 14px; }
.local-extra summary:hover { text-decoration: underline; }
.local-work a:focus-visible, .local-work summary:focus-visible { outline: 3px solid var(--pink); outline-offset: 5px; }
.local-next { margin-top: 38px; }
.local-next a { display: inline-block; background: var(--pink); color: #fff; padding: 18px 24px; font-weight: 800; line-height: 1.5; }
@media (max-width: 800px) {
  .local-work .local-intro { font-size: 17px; }
  .local-case { padding: 45px 0; }
  .local-result { padding: 20px; }
  .local-extra { padding: 24px 20px; }
  .local-periods { flex-direction: column; }
}
