:root{font-family:Inter,Arial,sans-serif;color:#17302a;background:#f5f8f6;line-height:1.55}*{box-sizing:border-box}body{margin:0}a{color:#176c52}a:hover{text-decoration:none}.top{background:#fff;border-bottom:1px solid #d9e5de;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px max(24px,calc((100vw - 1160px)/2))}.brand{font-size:24px;font-weight:800;text-decoration:none;color:#103b2d}.brand span{font-size:14px;font-weight:500;color:#648076}.top nav{display:flex;gap:24px;font-size:14px}main{max-width:1160px;margin:auto;padding:24px 24px 80px}.crumbs{font-size:14px;color:#71867e;margin:4px 0 22px}.crumbs a{color:#537267}.hero{padding:46px 48px;background:linear-gradient(120deg,#143e31,#1d664d);color:white;border-radius:20px;margin-bottom:28px}.hero h1{font-size:clamp(30px,4.5vw,48px);line-height:1.13;margin:8px 0 18px;max-width:800px}.hero p{max-width:760px;margin:0 0 18px;color:#e3f1e9}.eyebrow{font-size:13px;letter-spacing:.12em;text-transform:uppercase;font-weight:800}.pill,.badge{display:inline-block;padding:5px 11px;border-radius:999px;background:#fff0d8;color:#755220;font-size:12px;font-weight:700}.pill{background:#daf7e7;color:#175238}.badge.ok{background:#d5f4df;color:#17613b}.notice{padding:20px 24px;background:#e6f3ec;border-left:4px solid #29885e;border-radius:8px;margin:24px 0}.notice p{margin:5px 0 0}.section{margin-top:40px}.section h2,.panel h2{font-size:27px;margin:0 0 18px}.controls{display:flex;align-items:end;gap:14px;flex-wrap:wrap;margin-bottom:20px}.controls label{display:grid;gap:5px;font-size:13px;font-weight:700;min-width:220px}.controls input,.controls select{height:44px;padding:0 12px;border:1px solid #b8cfc2;border-radius:8px;background:white;font:inherit;color:#17302a}.controls input{min-width:300px}.controls [data-count]{font-size:13px;color:#537267;padding-bottom:10px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.card,.panel{background:white;border:1px solid #dce7df;border-radius:14px;padding:22px;box-shadow:0 6px 22px #123a2110}.card[hidden]{display:none}.card-head{display:flex;justify-content:space-between;gap:12px;align-items:start}.card-head>span:first-child,.card>span:first-child{font-size:13px;color:#547267}.card h3{margin:10px 0;font-size:20px}.card h3 a{text-decoration:none;color:#173d30}.card p{color:#4e675c;margin:8px 0 16px}.card dl,.panel dl{margin:0 0 18px}.card dl div,.panel dl div{display:flex;justify-content:space-between;gap:15px;border-top:1px solid #edf2ed;padding:9px 0}.card dt,.panel dt{color:#678075}.card dd,.panel dd{margin:0;text-align:right}.secondary{font-weight:700;text-decoration:none}.detail{display:grid;grid-template-columns:1fr 1fr;gap:18px}.panel{min-width:0}.button{display:inline-block;padding:12px 18px;border-radius:8px;background:#176c52;color:white;text-decoration:none;font-weight:700}.map,.map-fallback{height:340px;border-radius:10px;overflow:hidden}.map-fallback{display:grid;align-content:center;justify-items:center;text-align:center;background:#eaf2ed;padding:30px;color:#365a4a}.map-fallback p{max-width:330px}.empty{color:#716e63}footer{padding:32px max(24px,calc((100vw - 1160px)/2));background:#153a2e;color:#d7e7dd;font-size:14px}footer p{margin:5px 0}@media(max-width:750px){.top{align-items:start;flex-direction:column}.top nav{flex-wrap:wrap;gap:12px}.hero{padding:28px}.detail{grid-template-columns:1fr}.controls input{min-width:0;width:100%}.controls label{width:100%}}
.hero-link{color:#e7fff0;font-weight:700}.info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:32px 0}.info-grid article{background:white;border:1px solid #dce7df;border-radius:14px;padding:22px}.info-grid span{color:#21815b;font-weight:800}.info-grid h2{font-size:20px;margin:8px 0}.info-grid p{color:#4e675c;margin:0}.alphabet{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 20px}.alphabet a{display:grid;place-items:center;width:34px;height:34px;background:#e4f2e9;border-radius:7px;text-decoration:none;font-weight:700}.letter-group{margin:24px 0}.letter-group[hidden]{display:none}.letter-group h3{font-size:21px;border-bottom:1px solid #dce7df;padding-bottom:6px}.faq{display:grid;gap:8px}.faq details{background:white;border:1px solid #dce7df;border-radius:9px;padding:14px 18px}.faq summary{cursor:pointer;font-weight:700}.faq p{margin:10px 0 0;color:#4e675c}@media(max-width:750px){.info-grid{grid-template-columns:1fr}}
