*{box-sizing:border-box}body{margin:0;font:16px/1.5 system-ui,sans-serif;color:#1d2433;background:#f6f8fb}
header{display:flex;justify-content:space-between;align-items:center;padding:14px 24px;background:#0f3d2e;color:#fff;flex-wrap:wrap}
header a{color:#fff;text-decoration:none;margin-left:18px}.logo{font-weight:700;font-size:1.25rem;margin:0}
main{max-width:1100px;margin:0 auto;padding:24px}footer{background:#e8edf3;padding:18px 24px;font-size:.88rem;text-align:center}
.hero{text-align:center;padding:20px 0}.hero h1{font-size:2.2rem;margin:.2em 0}
#q{width:100%;max-width:560px;padding:14px;font-size:1.1rem;border:2px solid #0f3d2e;border-radius:10px}
#map{height:420px;border-radius:12px;margin:18px 0}.stats{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.stat{background:#fff;padding:10px 18px;border-radius:10px;box-shadow:0 1px 3px #0002}
.card{background:#fff;padding:14px 18px;border-radius:10px;margin:10px 0;box-shadow:0 1px 3px #0002}
.tag{display:inline-block;font-size:.75rem;background:#dff3e8;color:#0f3d2e;padding:2px 8px;border-radius:99px;margin-left:6px}
.btn{display:inline-block;background:#1f8a5b;color:#fff;padding:10px 18px;border-radius:8px;text-decoration:none}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}.grid a{background:#fff;padding:10px;border-radius:8px;text-decoration:none;color:#0f3d2e}
.notice{background:#fff8e1;border-left:4px solid #f0b400;padding:10px 14px}
