:root {
  color-scheme: light dark;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 100%;
  line-height: 1.6;
  background: #fff;
  color: #111;
  --surface: #f2f2f2;
  --border: #777;
  --link: #111;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0 auto; max-width: 48rem; padding: 0 1.25rem; }
a { color: var(--link); text-decoration-thickness: .1em; text-underline-offset: .18em; }
a:hover { text-decoration-thickness: .16em; }
a:focus-visible { outline: 3px solid currentColor; outline-offset: 3px; }
.skip-link { position: absolute; top: -5rem; left: 1rem; z-index: 2; padding: .75rem; background: #fff; color: #000; }
.skip-link:focus { top: 1rem; }
.site-header { display: flex; justify-content: space-between; align-items: center; min-height: 4.5rem; border-bottom: 1px solid var(--border); }
.brand { font-weight: 800; letter-spacing: -.03em; text-decoration: none; }
.language { min-width: 3rem; min-height: 3rem; display: inline-flex; align-items: center; justify-content: center; }
main { padding: 1rem 0 2rem; }
section { padding: 1.5rem 0; border-bottom: 1px solid var(--border); }
.hero { padding: 2rem 0 2.5rem; }
.eyebrow, .small { font-size: .9rem; }
.eyebrow { font-weight: 700; text-transform: uppercase; letter-spacing: .06em; }
h1, h2, h3 { line-height: 1.2; }
h1 { max-width: 14ch; margin: .4rem 0 1rem; font-size: clamp(2.2rem, 9vw, 3.5rem); letter-spacing: -.04em; }
h2 { font-size: 1.6rem; margin: 0 0 1rem; }
h3 { font-size: 1.15rem; margin: 1.25rem 0 .35rem; }
p { margin: .6rem 0 1rem; }
.lead { max-width: 39rem; font-size: 1.25rem; }
.button { display: flex; align-items: center; justify-content: space-between; gap: 1rem; width: 100%; min-height: 3.5rem; margin: 1.5rem 0 .5rem; padding: .75rem 1rem; border: 2px solid #111; border-radius: .25rem; background: #111; color: #fff; font-size: 1.15rem; font-weight: 750; text-decoration: none; }
.button:hover { background: #333; }
.plain-list { list-style: none; padding: 0; }
.plain-list li { margin: 0 0 1rem; }
.action-link { display: inline-flex; align-items: center; min-height: 3rem; font-size: 1.1rem; font-weight: 700; }
.phone { display: inline-block; min-height: 3rem; padding: .35rem 0; font-weight: 650; }
.county-grid { display: grid; grid-template-columns: 1fr; gap: 1rem; }
.county-grid article { padding: 0 1rem 1rem; border: 1px solid var(--border); border-radius: .25rem; }
footer { padding: 1.5rem 0 2.5rem; }
.review-note { padding: .75rem; border: 2px solid currentColor; font-weight: 700; }
@media (min-width: 38rem) { body { padding: 0 2rem; } .county-grid { grid-template-columns: 1fr 1fr; } }
@media (prefers-color-scheme: dark) {
  :root { background: #111; color: #f5f5f5; --surface: #222; --border: #aaa; --link: #fff; }
  .button { border-color: #fff; background: #fff; color: #111; }
  .button:hover { background: #ddd; }
  .skip-link { background: #fff; color: #000; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; } }
