:root{
  --navy:#233b5d;
  --navy-dark:#1b2f4a;
  --blue:#233b5d;
  --green:#7f8d69;
  --green-dark:#6a7658;
  --terracotta:#bb6848;
  --gold:#d0a24f;
  --cream:#efe2c7;
  --sand:#f7f3ea;
  --surface:#fffdf9;
  --page:#f3eee4;
  --text:#2b3340;
  --muted:#5e645e;
  --border:#ddd2bd;
  --radius:14px;
  --control:6px;
  --max:1180px;
  --shadow:0 10px 26px rgba(35,59,93,.10)
}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:linear-gradient(180deg,#f8f4ec 0%,var(--page) 100%);color:var(--text);font-family:"Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.46}img{max-width:100%;height:auto}a{color:var(--navy);text-underline-offset:.16em}a:hover,a:focus-visible{color:var(--terracotta)}
.site-header{background:rgba(255,253,249,.95);border-bottom:1px solid var(--border)}.site-header__inner,.home-nav__inner,.site-main{width:min(calc(100% - 32px),var(--max));margin-inline:auto}.site-header__inner{height:90px;min-height:90px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:0}.site-brand{display:inline-flex;align-items:center;margin-left:-12px}.site-brand img{display:block;width:min(420px,100%);height:auto;max-width:100%;max-height:70px;object-fit:contain}.site-header__actions{flex:0 0 auto}.site-header__actions a,.hero-action{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:6px 14px;border:1px solid var(--terracotta);border-radius:var(--control);background:var(--terracotta);color:#fffaf5;font-weight:700;text-decoration:none;white-space:nowrap;line-height:1.1;box-shadow:0 2px 0 rgba(0,0,0,.04)}.site-header__actions a:hover,.hero-action:hover,.site-header__actions a:focus-visible,.hero-action:focus-visible{background:#a85a3d;color:#fff}
.site-header__actions a{min-width:104px}
.home-nav{background:linear-gradient(90deg,var(--navy-dark) 0%,var(--navy) 55%,#314b71 100%);color:#fff}.home-nav__inner{display:flex;align-items:center;flex-wrap:wrap;gap:2px;padding-block:8px}.home-nav__label,.home-nav a{padding:8px 10px}.home-nav__label{padding-left:0;font-weight:800}.home-nav a{border-radius:6px;color:#fff;font-size:.9rem;font-weight:700;text-decoration:none}.home-nav a:hover,.home-nav a:focus-visible{background:rgba(255,255,255,.14);color:#fff}
.site-main{padding-block:32px 56px}.breadcrumbs{margin:0 0 18px;color:var(--muted);font-size:.92rem}.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:7px;margin:0;padding:0;list-style:none}.breadcrumbs li:not(:last-child)::after{content:">";margin-left:7px;color:#8d98a2}.breadcrumbs a{color:var(--terracotta);font-weight:700;text-decoration:none}.breadcrumbs a:hover,.breadcrumbs a:focus-visible{text-decoration:underline}.home-hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:34px;align-items:center;padding:36px;border:1px solid var(--border);border-radius:var(--radius);background:linear-gradient(135deg,#fffdf8 0%,#f3ebdd 55%,#eef1e7 100%);box-shadow:var(--shadow)}.home-hero.content-page .home-hero__copy{max-width:820px}.home-hero.content-page h2{margin:28px 0 10px;color:var(--navy-dark);font-size:1.35rem;line-height:1.25}.home-hero.content-page h2:first-of-type{margin-top:18px}.home-hero.content-page p,.home-hero.content-page li{max-width:820px;color:var(--text)}.home-hero.content-page p{margin:0 0 12px}.home-hero.content-page ul,.home-hero.content-page ol{margin:0 0 14px;padding-left:1.35rem}.home-hero.content-page li{margin:0 0 6px}.home-hero.content-page .policy-updated{margin:10px 0 18px;color:var(--muted);font-size:.95rem}.home-hero.content-page code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.92em;background:rgba(35,59,93,.06);padding:.1em .35em;border-radius:4px}.eyebrow{margin:0 0 8px;color:var(--terracotta);font-size:.78rem;font-weight:800;letter-spacing:.12em}.home-hero h1{margin:0;color:var(--navy-dark);font-size:42px;line-height:1.08}.hero-lead{margin:14px 0 9px;font-size:21px;font-weight:700;color:var(--green-dark)}.home-hero__copy>p:last-of-type{max-width:720px;margin:0}.hero-action{margin-top:20px}.home-hero__steps{display:grid;gap:10px}.home-hero__steps>div{position:relative;padding:15px 15px 15px 54px;border:1px solid #d7ccb8;border-radius:10px;background:rgba(255,251,245,.92)}.home-hero__steps span{position:absolute;left:14px;top:15px;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--gold);color:#fff;font-weight:800}.home-hero__steps strong{color:var(--navy-dark)}.home-hero__steps p{margin:2px 0 0;color:var(--muted);font-size:.92rem}
.map-section,.state-directory,.regions,.about-grid{margin-top:38px}.section-header{margin-bottom:17px}.section-header h2,.about-grid h2{margin:0;color:var(--navy-dark);font-size:24px;line-height:1.25}.section-header p{max-width:850px;margin:7px 0 0;color:var(--muted)}.map-frame{width:min(100%,980px);margin-inline:auto;padding:22px;border:1px solid var(--border);border-radius:var(--radius);background:#fffdf9;box-shadow:var(--shadow)}.map-frame img{display:block;max-width:100%;height:auto;margin:auto}.map-frame--art{background:linear-gradient(180deg,#fffdf9 0%,#fbf7f0 100%)}
.state-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.state-link{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:44px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:#fffdf9;color:var(--navy);font-weight:700;text-decoration:none}.state-link span{color:var(--terracotta)}.state-link:hover,.state-link:focus-visible{border-color:#c8b08d;background:#f8f0e6}
.region-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.region-group{padding:18px;border:1px solid var(--border);border-radius:var(--radius);background:#fffdf9;box-shadow:var(--shadow);scroll-margin-top:12px}.region-group h3{margin:0 0 10px;color:var(--navy-dark);font-size:18px}.region-links{display:flex;flex-direction:column;gap:6px}.region-links a{font-weight:600;text-decoration:none}.about-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.about-grid article{padding:22px;border-left:4px solid var(--green);border-radius:8px;background:#f1f0e8}.about-grid p{margin:8px 0 0}.text-action{display:inline-block;margin-top:12px;font-weight:800;color:var(--terracotta)}
.feedback-panel,.site-footer{width:min(calc(100% - 32px),var(--max));margin-inline:auto}.feedback-panel{margin-bottom:24px;padding:20px;border:1px solid var(--border);border-radius:var(--radius);background:#fffdf9}.feedback-panel h2{margin:0 0 8px;color:var(--navy);font-size:1.35rem}.feedback-panel p{margin:0}.site-footer{margin-bottom:28px;padding:26px 20px;border-radius:var(--radius);background:var(--navy-dark);color:#e9e6dc;text-align:center}.site-footer a{color:#fff}.site-footer__links{display:flex;justify-content:center;flex-wrap:wrap;gap:10px 18px;margin-bottom:10px}.site-footer__links a{font-weight:700}.site-footer p{margin:5px 0}.site-footer__legal{font-size:.88rem}
@media(max-width:900px){.home-hero{grid-template-columns:1fr}.home-hero__steps{grid-template-columns:repeat(3,1fr)}.state-grid{grid-template-columns:repeat(3,1fr)}.region-grid{grid-template-columns:repeat(2,1fr)}.site-brand img{width:min(360px,100%)}}
@media(max-width:760px){.site-header__inner{height:90px;min-height:90px;padding-block:0}.site-brand img{width:min(320px,72vw)}.home-hero{padding:24px}.home-hero h1{font-size:34px}.home-hero__steps{grid-template-columns:1fr}.map-frame{padding:16px}.state-grid{grid-template-columns:repeat(2,1fr)}.region-grid{grid-template-columns:1fr 1fr}.about-grid{grid-template-columns:1fr}}
@media(max-width:520px){.site-header__actions a{min-width:auto;min-height:32px;padding:5px 9px;font-size:.9rem}.home-nav__label{width:100%;padding-bottom:3px}.home-nav a{padding:6px 8px}.site-main{width:min(calc(100% - 20px),var(--max));padding-top:20px}.home-hero{padding:20px}.home-hero h1{font-size:30px}.hero-lead{font-size:19px}.state-grid,.region-grid{grid-template-columns:1fr}.feedback-panel,.site-footer{width:min(calc(100% - 20px),var(--max))}.site-brand img{width:min(280px,78vw)}}



/* Complete user-traced responsive SVG overlay */
.map-artwork{position:relative;width:100%;line-height:0}
.map-artwork>img{display:block;width:100%;height:auto}
.state-hotspots{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.state-hotspots a{outline:none}
.state-hotspots polygon,.state-hotspots rect{fill:transparent;stroke:transparent;stroke-width:2.6;vector-effect:non-scaling-stroke;cursor:pointer;transition:fill .16s ease,stroke .16s ease,filter .16s ease}
.state-hotspots a:hover polygon,.state-hotspots a:hover rect,.state-hotspots a:focus polygon,.state-hotspots a:focus rect,.state-hotspots a:focus-visible polygon,.state-hotspots a:focus-visible rect{fill:rgba(208,162,79,.30);stroke:var(--terracotta)}
.state-hotspots a:focus-visible polygon,.state-hotspots a:focus-visible rect{stroke-width:4;filter:drop-shadow(0 0 7px rgba(35,59,93,.38))}
.state-hotspot--alternate rect{fill:rgba(255,253,249,.24);stroke:rgba(35,59,93,.32);stroke-width:1.5}
.state-hotspot--alternate:hover rect,.state-hotspot--alternate:focus rect,.state-hotspot--alternate:focus-visible rect{fill:rgba(208,162,79,.40);stroke:var(--terracotta)}
@media (prefers-reduced-motion:reduce){.state-hotspots polygon,.state-hotspots rect{transition:none}}
