/* UX baseline (growth/ux-overload.md): 18px body, 4.5:1 contrast, 48px targets, answer-first */
:root{font-size:18px;--mut:#3f4d45}
body{line-height:1.55}
main.st{max-width:760px}
main.st p,main.st li{max-width:68ch}
small,.note small{font-size:.9rem}
.st .note,.note{color:#24332a}
.hero .note,.hero .lede{color:#eef6f0}
.st .note:has(a[href*="new-laws"]){background:#fff4dc;border-left:5px solid #9a5a00;padding:.7rem .9rem;border-radius:8px;color:#2a1c00}
a{color:#1d6b3b;text-underline-offset:2px}
.mainnav{display:flex;gap:.25rem}.mainnav a{margin:0;padding:0 .7rem;min-height:48px;display:inline-flex;align-items:center;font-size:.9rem;font-weight:600;color:#1f3a2a;border-radius:8px}
.mainnav a:hover{background:#e8f3ec;text-decoration:none}
@media(max-width:560px){.bar{height:auto;flex-wrap:wrap;padding:.4rem 1rem}.mainnav{width:100%;justify-content:space-between}.mainnav a{padding:0 .4rem;font-size:.85rem}}
.crumb{font-size:.9rem;margin:1rem 0 .4rem;color:#34443a}.crumb a{display:inline-flex;min-height:48px;align-items:center}
h1{font-size:clamp(1.6rem,5.5vw,2.2rem);line-height:1.2;letter-spacing:-.01em}
h2{font-size:1.25rem;line-height:1.3}
.ans{font-size:1.1rem}.ans small{display:block;margin-top:.4rem;font-size:.95rem;color:#24332a}
.ans p{margin:.2rem 0 .8rem}
.btn,button{min-height:48px}
input,select{min-height:48px;font-size:1rem}
details.more,details.srcp{border:1px solid #cfd8d2;border-radius:10px;background:#fff;margin:.7rem 0}
details>summary{cursor:pointer;min-height:48px;display:flex;align-items:center;gap:.5rem;padding:.4rem 1rem;font-weight:700;list-style:none}
details>summary::-webkit-details-marker{display:none}
details>summary::before{content:"▸";color:#1d6b3b;font-size:1rem;transition:transform .15s}
details[open]>summary::before{transform:rotate(90deg)}
details>summary h2,details>summary h3{margin:0;font-size:1.1rem;display:inline}
details.more>*:not(summary),details.srcp .srcb{padding:0 1rem .6rem}
details.srcp{display:inline-block;width:100%;background:#f6f8f6}
details.srcp>summary{font-size:.95rem;color:#1d4d30;min-height:48px}
.srcb ul{padding-left:1.1rem}.srcb li{margin:.5rem 0;word-break:break-word}
.allsrc{font-weight:600}
.n{font-weight:400;color:#3f4d45;font-size:.95em}
ul.cards{list-style:none;padding:0;margin:1rem 0;display:grid;gap:.6rem}
ul.cards .card{display:block;padding:.9rem 1rem;min-height:48px;border:1px solid #cfd8d2;border-radius:12px;background:#fff;text-decoration:none;color:#1b2620;overflow:visible}
ul.cards .card:hover{border-color:#1d6b3b;box-shadow:0 2px 10px #0001}
ul.cards .card strong{display:block;font-size:1.05rem;color:#14432a}
ul.cards .card span{display:block;margin-top:.2rem;color:#2f3d35;font-size:.95rem}
ul.cards .card .badge,ul.cards .card [class*="rate"]{display:inline-block;margin-bottom:.3rem}
.showall>summary{justify-content:center;color:#1d6b3b}
.yard{background:#fff;border-radius:12px;padding:1rem;box-shadow:0 6px 20px #0002;color:#1b2620;margin:1rem 0}
.yard label{display:block;font-weight:700;margin:.2rem 0 .3rem}
.yard .row{display:flex;gap:.5rem;flex-wrap:wrap}.yard .row input{flex:1 1 12rem}.yard .btn{flex:0 0 auto}
.ansbox .yard{box-shadow:none;border:1px solid #cfd8d2;padding:.7rem;margin:.4rem 0 0}
.where{font-weight:600;margin:.3rem 0 .8rem}.where button{background:none;border:0;color:#1d6b3b;text-decoration:underline;font:inherit;min-height:48px;cursor:pointer}
.res h2{margin:1.2rem 0 .4rem}
.res details{border:1px solid #cfd8d2;border-radius:12px;background:#fff;margin:.6rem 0}
.res summary{flex-wrap:wrap}.res summary .q{font-weight:700;min-width:8.5rem}.res summary .a{font-weight:600}
.res .bad .a{color:#8a1414}.res .ok .a{color:#14532d}.res .warn .a{color:#7a3e00}.res .unk .a{color:#33413a}
.res details>div{padding:0 1rem .8rem}
.cta{background:#fff4dc;border-left:5px solid #9a5a00;border-radius:8px;padding:.8rem 1rem;margin:1rem 0}.cta ul{margin:.4rem 0 0;padding-left:1.1rem}.cta a[href^="tel"]{display:inline-flex;min-height:44px;align-items:center}
.txl{list-style:none;padding:0;margin:.6rem 0 0;display:grid;gap:.4rem}.tx{display:flex;flex-wrap:wrap;gap:.5rem;background:#fff;border-radius:8px;padding:.5rem .7rem}.tx span{min-width:7.5rem;font-weight:700}
.tx.bad strong{color:#8a1414}.tx.ok strong{color:#14532d}.tx.warn strong{color:#7a3e00}.tx.unk strong{color:#33413a}
.wc li{margin:.55rem 0;word-break:break-word}.wc .k{display:inline-block;font-size:.8rem;background:#e8f3ec;color:#14432a;border-radius:6px;padding:0 .4rem;margin-left:.3rem}
.jump a{display:inline-flex;min-height:44px;align-items:center}
.wclink a{font-weight:600}
.foot{font-size:.95rem;color:#33413a}.foot a{color:#1d6b3b}
table.kv{font-size:.95rem}
@media(max-width:640px){table.kv{display:block;overflow-x:auto}}
.st .lede{color:#2f3d35}
.lock{display:grid;gap:.4rem;border:1px dashed #9aa89f;border-radius:12px;padding:1rem;background:#fafbf9;margin:.6rem 0}.lock .btn{justify-self:start;text-decoration:none;display:inline-flex;align-items:center}
.plans{display:grid;gap:.8rem}.plan{border:1px solid #cfd8d2;border-radius:12px;background:#fff;padding:1rem}.plan h2{margin:.2rem 0}.plan .price{font-size:1.6rem;font-weight:800;color:#14432a}.plan .btn{display:inline-flex;align-items:center;text-decoration:none}.btn.off{background:#7c8a82;cursor:not-allowed}
@media print{header,footer,.yard,.mainnav,.crumb,.lock,#savebtn{display:none!important}details{border:0}details>*{display:block!important}}
.hero details.more{color:#1b2620}.hero details.more .note{color:#24332a}
.pv{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.pv img{width:100%;height:auto;border:1px solid #cfd8d2;border-radius:6px}
