*{box-sizing:border-box}body{margin:0;font-family:system-ui,Segoe UI,Arial;background:#f4f1ea;color:#222}
header{background:#2f3d2a;color:#fff;display:flex;justify-content:space-between;align-items:center;padding:14px 28px}
header a{color:#fff;text-decoration:none;margin-left:18px}.logo{font-size:22px;font-weight:700;margin:0!important}
main{max-width:1150px;margin:0 auto;padding:20px}.hero{background:linear-gradient(120deg,#3e5233,#8a6d3b);color:#fff;border-radius:12px;padding:28px}
.hero h1{margin:0 0 6px}.controls{margin:16px 0;display:flex;gap:10px}input,select{padding:10px;border-radius:8px;border:1px solid #666;font-size:15px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,150px),1fr));gap:10px}
.card{background:#fff;border-radius:10px;padding:12px;text-decoration:none;color:#222;border:1px solid #ddd;display:block}
.card.live{border:2px solid #4b6b3a}.card small{display:block;color:#595959}.badge{font-size:11px;padding:2px 6px;border-radius:6px;background:#4b6b3a;color:#fff}
.badge.soon{background:#595959}.layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,260px);gap:20px}
table{width:100%;border-collapse:collapse;background:#fff;margin:8px 0 18px}td,th{padding:8px;border-bottom:1px solid #eee;text-align:left;font-size:14px}th{background:#e8e3d6}
.ad{background:#fff8e1;border:2px dashed #c9a227;border-radius:10px;padding:14px;margin:10px 0;text-align:center}.ad.banner{margin:10px auto;max-width:1150px}
.tag{display:block;font-size:11px;color:#8a6d00;text-transform:uppercase}.warn{background:#fdecea;border-left:4px solid #c0392b;padding:10px;border-radius:6px}
.sp{background:#fff;border-radius:10px;padding:14px;margin-bottom:12px;border:1px solid #ddd}.src{font-size:12px}footer{text-align:center;padding:24px;color:#666;font-size:13px}

.verified{background:#e8f3e3;border-left:4px solid #3d7a2e;padding:8px 12px;font-size:.9em}
header{flex-wrap:wrap;gap:8px}header nav{display:flex;flex-wrap:wrap;gap:4px 0}header nav a{margin-left:14px;font-size:14px}header nav a.on{text-decoration:underline}
.maph{margin:18px 0 4px}.maptip{font-weight:600;color:#2f3d2a;min-height:1.4em}
.map{background:#fff;border-radius:12px;padding:10px;border:1px solid #ddd}.map svg{width:100%;height:auto;display:block}
.map .st{cursor:pointer;stroke:#354633;stroke-width:1.3;transition:fill .15s}.map .st.live{fill:#7d9a63}.map .st.soon{fill:#c8c2b4}
.map a:hover .st,.map a:focus-visible .st{fill:#c9a227;stroke:#172414;stroke-width:3}
.legend{font-size:13px;color:#555}.sw{display:inline-block;width:12px;height:12px;border-radius:3px;vertical-align:middle;margin:0 4px 0 10px}.sw.live{background:#7d9a63}.sw.soon{background:#c8c2b4}
.tabs{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 16px;border-bottom:2px solid #d8d1c0}.tabs a{padding:8px 12px;border-radius:8px 8px 0 0;text-decoration:none;color:#2f3d2a;background:#e8e3d6}.tabs a.on{background:#2f3d2a;color:#fff}
.ph{background:#eef2f7;border-left:4px solid #5a7aa0;padding:10px;border-radius:6px}.links li{margin:4px 0}.links.small{font-size:13px;columns:2;padding-left:16px}
.meta{color:#555}.leg h3{margin:6px 0}
@media(max-width:760px){.layout{grid-template-columns:minmax(0,1fr)}header{padding:10px 14px}header nav a{margin-left:10px}main{padding:12px}.controls{flex-direction:column}}

/* Accessibility baseline: rem sizing, visible focus and reflow without changing the layout identity. */
html{font-size:100%;scroll-padding:1rem}body{line-height:1.55;overflow-wrap:anywhere}
a{color:#24513b;text-underline-offset:.18em}a:visited{color:#59406b}a:hover{text-decoration-thickness:.15em}
header a,header a:visited{color:#fff}.card:visited{color:#222}.tabs a:visited{color:#2f3d2a}.tabs a.on,.tabs a.on:visited{color:#fff;text-decoration:underline;font-weight:700}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #172414;outline-offset:3px;box-shadow:0 0 0 3px #fff}
main:focus,h1:focus{outline:3px solid #172414;outline-offset:4px;box-shadow:0 0 0 4px #fff}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.skip-link{position:relative;display:inline-flex;align-items:center;min-height:44px;max-inline-size:calc(100% - 1rem);margin:.25rem .5rem;padding:.5rem .75rem;background:#fff;color:#172414;border:2px solid #172414}
.skip-link:focus{transform:none}
header nav a{display:inline-flex;align-items:center;min-height:44px;padding:.3rem .4rem;margin-left:.25rem;font-size:.875rem}
.logo{max-width:100%;font-size:1.375rem;line-height:1.3}.controls label{display:flex;flex-direction:column;gap:.25rem;font-weight:600;min-width:0}
input,select,button{font:inherit;min-height:44px;max-width:100%;color:#222;background:#fff}input,select{min-width:0;width:100%}
.controls{flex-wrap:wrap}.controls label{flex:1 1 14rem}.layout>*{min-width:0}
.table-scroll{max-width:100%;overflow-x:auto;margin:.5rem 0 1.125rem;border:1px solid #666;border-radius:4px}
.table-scroll table{margin:0}table caption{text-align:left;padding:.6rem .5rem;font-weight:700;background:#f4f1ea;color:#222}
td,th{font-size:.875rem;vertical-align:top}tbody th[scope=row]{background:#fff;font-weight:600}table a,.src{display:inline-block;min-height:24px;padding-block:2px}
blockquote{margin:.5rem 0 .75rem 1rem;padding-left:.75rem;border-left:3px solid #666}
summary{cursor:pointer;min-height:28px;padding-block:.25rem;font-weight:600}.external-note{font-size:.85em}
.card small{font-size:.875rem}.badge,.tag{font-size:.75rem}.src{font-size:.8rem}.legend{font-size:.875rem}.links.small{font-size:.875rem}footer{font-size:.875rem}
.tabs a{min-height:44px;display:inline-flex;align-items:center}.links li{margin-block:.5rem}.links a{display:inline-block;min-height:24px;padding-block:2px}
.map .borders{stroke:#354633;stroke-width:1.3;pointer-events:none}.map .separator1{pointer-events:none}
.map a:focus-visible{outline:none;box-shadow:none}.map a:focus-visible .st{paint-order:stroke fill;stroke-width:5;stroke-linejoin:round}
@media(max-width:760px){.controls label{flex-basis:auto}.links.small{columns:1}.hero{padding:1.125rem}header .logo{font-size:1.2rem}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}}
@media(forced-colors:active){a:focus-visible,[tabindex]:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid Highlight;box-shadow:none}.map .st{fill:Canvas;stroke:CanvasText}.map a:focus-visible .st,.map a:hover .st{fill:Highlight;stroke:HighlightText}.card.live,.tabs a.on{border:2px solid CanvasText}.sw{border:1px solid CanvasText}}

/* Definite container sizes: neither intrinsic text nor a wide table may enlarge the page. */
html,body{min-inline-size:0;inline-size:100%}
main{inline-size:100%;min-inline-size:0}
header{inline-size:100%;min-inline-size:0}header>*{min-inline-size:0;max-inline-size:100%}
header nav{min-inline-size:0;max-inline-size:100%;flex:1 1 30rem}
#app>*,.layout>*,.grid>*,.sp,.leg,.tabs,.controls,.controls>*,.table-scroll{min-inline-size:0;max-inline-size:100%}
#app h1,#app h2,#app h3,#app h4,#app h5,#app h6,#app p,#app li,#app a,#app blockquote,#app summary,#app .cite,#app .meta{white-space:normal;overflow-wrap:anywhere;word-break:normal}
.tabs a,header nav a{max-inline-size:100%;white-space:normal;overflow-wrap:anywhere}
.table-scroll{inline-size:100%;max-inline-size:100%;min-inline-size:0;overflow-x:auto;overscroll-behavior-inline:contain}
.table-scroll table{inline-size:100%;min-inline-size:30rem;max-inline-size:none;table-layout:auto}
.table-scroll th,.table-scroll td{white-space:normal;overflow-wrap:anywhere;word-break:normal}
/* Preserve hidden accessible topic suffixes even under the wrapping overrides above. */
#app .sr-only{white-space:nowrap}
@media(max-width:760px){.layout{grid-template-columns:minmax(0,1fr)}header nav{flex-basis:100%}}

/* APEX field journal: original woodland/river identity, solid text surfaces. */
:root{--forest:#2f3d2a;--river:#24536b;--earth:#8a6d3b;--canvas:#f4f1ea;--paper:#fff;--ink:#222;--muted:#4c5747;--line:#b8c1b2;--soft:#e8e3d6;--radius:1rem}
body{background:var(--canvas);color:var(--ink);font-family:system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.65}
header{background:var(--forest);padding:1.15rem clamp(1rem,3vw,3rem);gap:1rem 2rem;border-bottom:4px solid var(--earth)}
header .logo{display:flex;align-items:center;gap:.75rem;font-size:1rem!important;line-height:1.2;flex:0 1 auto;min-inline-size:0}
.brand-mark{flex:0 0 52px;inline-size:52px;block-size:52px}.brand-name{display:block;min-inline-size:0}.brand-apex{display:block;font-size:1.85rem;font-weight:800;letter-spacing:.13em}.brand-sub{display:block;margin-top:.3rem;font-size:.75rem;font-weight:500;letter-spacing:.07em}
header nav{flex:1 1 100%;gap:.2rem;justify-content:flex-start}header nav a{font-size:.875rem;margin:0;padding:.5rem .65rem;border-radius:.4rem;color:#fff}
header nav a:hover,header nav a.on{background:#465740;color:#fff}header nav a.on{font-weight:700;text-decoration:underline;text-decoration-thickness:2px}
.skip-link{font-size:.875rem;border-radius:.35rem;margin:.35rem .75rem;min-height:44px;padding:.4rem .75rem}
main{max-width:1280px;padding:clamp(1rem,3vw,2.5rem);padding-bottom:4rem}
h1,h2{font-family:Georgia,'Times New Roman',serif;color:var(--forest);font-weight:500;letter-spacing:-.025em;line-height:1.15}
h1{font-size:clamp(2rem,4vw,3.5rem);margin:1rem 0 1.25rem}h2{font-size:clamp(1.65rem,3vw,2.25rem);margin:2rem 0 1rem}h3{line-height:1.4;margin-top:1.5rem}
p{margin:.75rem 0 1rem}a{color:var(--river)}a:visited{color:#59406b}a:hover{text-decoration-thickness:2px}
.eyebrow{font-family:system-ui,-apple-system,Segoe UI,sans-serif;font-size:.75rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase;color:var(--river);margin:0 0 .8rem;line-height:1.7}
.hero{padding:0;color:var(--ink);background:#f8f6f0;border:1px solid var(--line);border-radius:var(--radius)}
.hero-home{display:grid;grid-template-columns:minmax(0,1fr);margin-top:.5rem}
.hero-copy{padding:clamp(1.25rem,3vw,3rem);min-inline-size:0}.hero h1{font-size:clamp(2.25rem,4.5vw,4.4rem);line-height:1.06;max-inline-size:17ch;margin:0 0 1.25rem}
.hero-lead{max-inline-size:49ch;font-size:1.075rem;line-height:1.7}.hero-note{font-size:.875rem;color:var(--muted);margin:1.2rem 0 0}
.hero-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.75rem;min-inline-size:0}
.button{display:inline-flex;justify-content:center;align-items:center;gap:.75rem;min-height:48px;max-inline-size:100%;padding:.7rem 1rem;border:2px solid var(--forest);border-radius:.45rem;background:var(--forest);color:#fff;font:600 .95rem/1.5 system-ui,-apple-system,Segoe UI,sans-serif;text-decoration:none;cursor:pointer;white-space:normal;overflow-wrap:anywhere}
.button:visited{color:#fff}.button:hover{background:var(--river);border-color:var(--river);color:#fff;text-decoration:underline}.button.secondary,.button.secondary:visited{background:#f8f6f0;color:var(--forest)}.button.secondary:hover{background:var(--soft)}
.hero-art{display:flex;min-inline-size:0;align-items:stretch;background:#e8e4d4;border-radius:0 0 1rem 1rem}.hero-art img{display:block;inline-size:100%;max-inline-size:100%;block-size:auto;aspect-ratio:1000/720;object-fit:cover;border-radius:inherit}
.finder{margin-top:3rem}.section-intro{max-inline-size:48rem;margin-bottom:1.5rem}.section-intro h2{margin:.25rem 0 .75rem;font-size:clamp(2rem,3.5vw,2.8rem)}
.map{padding:clamp(.5rem,2vw,1.5rem);background:#fff;border:1px solid #73816b;border-radius:var(--radius);box-shadow:0 4px 18px #2f3d2a08}.map svg{max-inline-size:960px;margin-inline:auto}
.map-caption{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.25rem 1rem;padding:.5rem .25rem}.maptip{font-size:.95rem}.legend{font-size:.8rem;margin:.5rem 0;color:var(--muted)}.legend small{display:inline-block;margin-left:.5rem}.sw{border:1px solid #354633}
.finder-tools{background:#fff;border:1px solid var(--line);border-radius:.75rem;padding:1.25rem;margin:1.25rem 0;display:flex;flex-wrap:wrap;align-items:end;gap:.75rem 1.5rem;min-inline-size:0}.finder-tools .controls{flex:1 1 36rem;margin:0}.finder-tools>p{font-size:.875rem;color:var(--muted);margin:.25rem 0}
.controls{gap:1rem}label{font-size:.875rem;color:var(--forest)}input,select{border:1px solid #73816b;border-radius:.4rem;padding:.7rem .8rem;font-size:1rem;font-weight:400;background:#fff;color:var(--ink)}
.state-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,11rem),1fr));gap:.85rem}
.card{border:1px solid var(--line);border-radius:.65rem;padding:1.15rem;background:#fff;box-shadow:0 2px 5px #2f3d2a05;color:var(--ink)}.card.live{border:1px solid var(--line)}.card:hover{border-color:var(--forest);background:#fafbf7}.card:hover b{text-decoration:underline}.card b{font-size:1.05rem;font-weight:650}.card small{color:var(--muted);font-size:.8rem;margin:.25rem 0 .65rem}
.badge{display:inline-block;padding:.3rem .65rem;border-radius:100px;font-size:.75rem;line-height:1.35;font-weight:600;background:var(--forest);color:#fff}.badge.soon{background:#595959;color:#fff}.state-grid .badge{color:var(--forest);background:#e8f3e3}.state-grid .badge.soon{background:#e8e3d6;color:#3f493c}
.state-head{padding:1rem 0 .5rem;border-bottom:1px solid var(--line);margin-bottom:1.25rem}.state-head .eyebrow{margin:1.5rem 0 .5rem}.state-head h1{margin:.25rem 0 1rem}.back-link{display:inline-block;min-height:24px;font-size:.875rem}.agency-line{font-size:.95rem;color:var(--muted)}
.tabs{gap:.35rem;background:var(--soft);padding:.4rem;border:1px solid var(--line);border-radius:.65rem;margin:1rem 0 2rem}.tabs a,.tabs a:visited{padding:.6rem .85rem;border-radius:.4rem;background:transparent;color:var(--forest);font-size:.9rem}.tabs a:hover{background:#d5dece;text-decoration:underline}.tabs a.on,.tabs a.on:visited{background:var(--forest);color:#fff;text-decoration:underline}
.layout{grid-template-columns:minmax(0,1fr);gap:1.75rem}.layout.solo{grid-template-columns:minmax(0,1fr)}.layout>aside{background:#e8e3d6;border-radius:.75rem;padding:1.25rem;align-self:start}.layout>aside h2{font-size:1.5rem;margin-top:.75rem}.layout>aside .links.small{columns:1}
.sp{border:1px solid var(--line);padding:clamp(1rem,2vw,1.75rem);border-radius:.75rem;margin:1rem 0;background:#fff}.sp h3:first-child{margin-top:0}.sp.leg{border-left:4px solid var(--river)}.leg h3{font-family:Georgia,'Times New Roman',serif;font-size:clamp(1.25rem,2vw,1.6rem);font-weight:500;line-height:1.35;margin:.9rem 0 1rem;color:var(--forest)}
.meta{font-size:.9rem;color:var(--muted)}.verified{color:#253e2a;background:#e8f3e3;border-left-color:var(--forest);padding:1rem 1.25rem;border-radius:.4rem;font-size:.9rem}.warn{background:#fff0df;color:#3e3324;border-left-color:var(--earth);padding:1rem 1.25rem;border-radius:.4rem}.ph{background:#e7eef1;color:#243a45;border-left-color:var(--river);padding:1rem 1.25rem}.warn small,small.warn{font-size:.8rem}small.warn{padding:.15rem .4rem}
.table-scroll{border-radius:.55rem;margin:1rem 0 1.75rem}table caption{font-size:.9rem;line-height:1.5;color:var(--forest);padding:.85rem 1rem;background:var(--canvas)}thead th{background:var(--forest);color:#fff;font-size:.8rem;letter-spacing:.025em;font-weight:650}td,th{padding:.85rem 1rem;border-bottom:1px solid #dce1d7;font-size:.9rem;line-height:1.6}tbody th[scope=row]{color:var(--ink);background:#fff}
.cite{padding-top:.5rem;margin-top:.5rem;border-top:1px solid #dce1d7}.src{font-size:.85rem}.external-note{font-size:.85em}details{margin:.6rem 0}summary{font-size:.875rem;color:var(--river)}blockquote{font-size:.95rem;margin:1rem 0 1rem .25rem;padding-left:1rem;border-left-color:var(--line)}
footer{background:#e9e6db;border-top:1px solid var(--line);padding:2.5rem clamp(1rem,4vw,4rem);color:var(--muted);font-size:.875rem;line-height:1.8;text-align:left}.footer-wordmark{font-size:1.2rem;font-weight:800;letter-spacing:.1em;color:var(--forest);margin-bottom:1rem}.footer-wordmark span{font-size:.875rem;letter-spacing:normal;font-weight:500}#lastchk{display:block;margin-top:.75rem;font-size:.8rem}
@media(min-width:58rem){.hero-home{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}.hero-art{border-radius:0 1rem 1rem 0}.hero-art img{block-size:100%}.hero-copy{align-self:center}}
@media(min-width:65rem){.layout{grid-template-columns:minmax(0,1fr) minmax(0,18rem)}.layout.solo{grid-template-columns:minmax(0,1fr)}}
@media(min-width:82rem){header nav{flex-basis:40rem;justify-content:flex-end}}
@media(forced-colors:active){.hero,.hero-copy,.hero-art,.finder-tools,.card,.sp,.tabs,footer{background:Canvas;color:CanvasText}.map .st.live,.map .st.soon{fill:Canvas;stroke:CanvasText}.map .borders{stroke:CanvasText}.map a:focus-visible .st,.map a:hover .st{fill:Highlight;stroke:HighlightText}.button,.button:visited,.button.secondary,.button.secondary:visited{background:ButtonFace;color:ButtonText;border-color:ButtonText}.tabs a.on,.badge{border:1px solid CanvasText}.hero-art img,.brand-mark{forced-color-adjust:none}}
.card,.card.live{border-color:#73816b}input::placeholder{color:#5b6357;opacity:1}

/* Guide directory: each state's details stay together at narrow widths. */
.guide-directory-list{list-style:none;padding:0;margin:1rem 0 2rem;display:grid;grid-template-columns:minmax(0,1fr);gap:1rem}
.guide-directory-card{background:#fff;border:1px solid var(--line);border-radius:.75rem;padding:1.25rem;min-inline-size:0;max-inline-size:100%}
.guide-directory-card h3{font:500 1.5rem/1.3 Georgia,'Times New Roman',serif;margin:0 0 1rem;color:var(--forest)}
#app .guide-directory-card h3 a{overflow-wrap:break-word;word-break:normal}
.guide-directory-card dl{margin:0}.guide-directory-card dl>div{margin-bottom:.9rem}.guide-directory-card dl>div:last-child{margin-bottom:0}
.guide-directory-card dt{font-size:.75rem;letter-spacing:.05em;font-weight:700;color:var(--forest)}.guide-directory-card dd{font-size:.95rem;margin:.25rem 0 0;overflow-wrap:anywhere}
.table-scroll table.guide-roster{min-inline-size:72rem;table-layout:fixed}.guide-roster col:nth-child(1),.guide-roster col:nth-child(2),.guide-roster col:nth-child(6){width:18%}.guide-roster col:nth-child(3){width:25%}.guide-roster col:nth-child(4){width:12%}.guide-roster col:nth-child(5){width:9%}
.roster-scroll-tools{padding:1rem;background:#e7eef1;border:1px solid #73816b;border-radius:.55rem;margin:1rem 0 .75rem}.roster-scroll-tools p{margin:0 0 .75rem;color:#243a45}.roster-scroll-tools .button{font-size:.875rem}
.roster-scroll:focus{outline:3px solid #172414;outline-offset:3px;box-shadow:0 0 0 3px #fff;border-color:#172414}
@media(min-width:58rem){.guide-directory-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(forced-colors:active){.roster-scroll:focus{outline:3px solid Highlight;box-shadow:none}.roster-scroll-tools,.guide-directory-card{background:Canvas;color:CanvasText;border-color:CanvasText}}

/* Fee comparison: native filters and checkbox states; no page-level overflow. */
.fee-compare-form{background:#fff;border:1px solid #73816b;border-radius:.75rem;padding:1.25rem;margin:1.5rem 0;min-inline-size:0;max-inline-size:100%}
.compare-controls{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem}.compare-controls label{display:flex;flex-direction:column;gap:.35rem;font-weight:600;min-inline-size:0;max-inline-size:100%}.compare-controls select{inline-size:100%;min-inline-size:0;max-inline-size:100%}
.compare-state-picker{border:1px solid #73816b;border-radius:.5rem;padding:.75rem;margin:1rem 0}.compare-state-picker summary{min-height:44px;line-height:1.6}.compare-state-picker fieldset{border:0;padding:.75rem 0;margin:0;min-inline-size:0}.compare-state-picker legend{font-weight:700;color:var(--forest);padding:0}
.compare-state-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin:.75rem 0}.compare-state-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,11rem),1fr));gap:.25rem .75rem}
.compare-state-choice{display:flex;align-items:center;gap:.6rem;min-height:44px;max-inline-size:100%;padding:.4rem;overflow-wrap:anywhere}.compare-state-choice input{inline-size:1.25rem;block-size:1.25rem;min-height:1.25rem;max-inline-size:1.25rem;flex:0 0 1.25rem;padding:0;accent-color:var(--forest)}
.comparison-scroll-tools{padding:1rem;background:#e7eef1;border:1px solid #73816b;border-radius:.55rem;margin:1rem 0 .75rem}.comparison-scroll-tools p{color:#243a45;margin:0 0 .75rem}
.table-scroll table.fee-compare-table{min-inline-size:76rem;table-layout:fixed}.fee-compare-table.one-price col:nth-child(1){width:13%}.fee-compare-table.one-price col:nth-child(2){width:25%}.fee-compare-table.one-price col:nth-child(3){width:12%}.fee-compare-table.one-price col:nth-child(4){width:32%}.fee-compare-table.one-price col:nth-child(5){width:18%}
.fee-compare-table.both-prices col:nth-child(1){width:12%}.fee-compare-table.both-prices col:nth-child(2){width:24%}.fee-compare-table.both-prices col:nth-child(3),.fee-compare-table.both-prices col:nth-child(4){width:10%}.fee-compare-table.both-prices col:nth-child(5){width:28%}.fee-compare-table.both-prices col:nth-child(6){width:16%}
.comparison-scroll{scroll-margin-block-start:1rem}.comparison-scroll:focus{outline:3px solid #172414;outline-offset:3px;box-shadow:0 0 0 3px #fff;border-color:#172414}
@media(min-width:48rem){.compare-controls{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(forced-colors:active){.comparison-scroll:focus{outline:3px solid Highlight;box-shadow:none}.fee-compare-form,.compare-state-picker,.comparison-scroll-tools{background:Canvas;color:CanvasText;border-color:CanvasText}}

/* Hunt scenario cards: all facts remain readable without table scrolling. */
.hunt-card{min-inline-size:0;max-inline-size:100%;overflow-wrap:anywhere}.hunt-card h2{font-size:clamp(1.55rem,2.5vw,2rem);margin-top:.5rem}.hunt-total{display:block;font-size:1.6rem;font-weight:750;line-height:1.4;margin-top:.5rem}.hunt-total span{display:block;font-size:.9rem;font-weight:500}
.hunt-scope{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem;margin:1.5rem 0}.hunt-scope>div{min-inline-size:0}.hunt-scope dt,.hunt-card details dt{font-weight:700;color:var(--forest)}.hunt-scope dd,.hunt-card details dd{margin:.2rem 0 .65rem;overflow-wrap:anywhere}.hunt-components{padding-inline-start:1.25rem}.hunt-components>li{margin-block:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--line)}.hunt-card summary{min-block-size:44px;padding-block:.5rem}.hunt-evidence{padding-inline-start:1.25rem}.hunt-evidence blockquote{margin-inline:0;overflow-wrap:anywhere}.hunt-card details{border-top:1px solid var(--line);padding-top:.5rem}
@media(min-width:48rem){.hunt-scope{grid-template-columns:repeat(2,minmax(0,1fr))}}

.release-status{overflow-wrap:anywhere;word-break:normal;font-size:.85rem}.release-status code{white-space:normal;overflow-wrap:anywhere}

/* Compact, reflow-safe county explorer: never a 254-card scenario dump. */
.texas-county-list{list-style:none;padding:0;display:grid;gap:1rem;grid-template-columns:minmax(0,1fr)}
.texas-county-list>li{min-inline-size:0;max-inline-size:100%;overflow-wrap:anywhere;padding:1rem;border:1px solid #d7d5c9;border-radius:.65rem;background:#fff}
.texas-county-list h3{margin-block-start:0}.texas-county-list blockquote{max-inline-size:100%;margin-inline:0;padding-inline:1rem}
#hunt-texas-browse{display:grid;gap:1rem;grid-template-columns:minmax(0,1fr);margin-block:1rem}
#hunt-texas-browse label{display:grid;gap:.4rem;min-inline-size:0}#hunt-texas-browse input,#hunt-texas-browse select{inline-size:100%;min-inline-size:0;max-inline-size:100%;font:inherit;padding:.65rem;border:1px solid #7c8075;border-radius:.35rem;background:#fff;color:#222}
.texas-fees{display:grid;gap:.75rem}.texas-fees>div{min-inline-size:0}.texas-fees dd{margin-inline-start:0}#hunt-county-pages [aria-disabled="true"]{opacity:.75;cursor:default}
@media(min-width:45rem){#hunt-texas-browse{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}

#hunt-texas[hidden],#hunt-texas [hidden]{display:none!important}

/* Texas-only county controls follow the selected-state set, even inside grid/flex layouts. */
#hunt-county-control[hidden],#hunt-county-help[hidden],#hunt-texas-intro[hidden]{display:none!important}

.hunt-coverage-list{padding-inline-start:1.5rem}.hunt-coverage-list>li{margin-block:.8rem;min-inline-size:0;overflow-wrap:anywhere}

/* Keep long native season/window/unit selectors full-width even at intermediate zoom. */
#hunt-form .compare-long{grid-column:1/-1}
@media(min-width:48rem) and (max-width:63.999rem){#hunt-form .compare-controls{grid-template-columns:minmax(0,1fr)}}
