body{font-family:system-ui,sans-serif;margin:0;color:#222}header{background:#1f4e3d;padding:12px 16px}.brand{color:#fff;font-weight:700;text-decoration:none}
main{max-width:960px;margin:auto;padding:16px}#map{height:360px;margin:12px 0}table{border-collapse:collapse;width:100%;font-size:14px}th,td{border-bottom:1px solid #ddd;padding:6px;text-align:left}
.cols{columns:3}.small{font-size:12px;color:#666}.aff{border:2px dashed #c90;padding:8px;margin:20px 0}footer{font-size:13px;padding:16px;background:#f4f4f4}#q{width:100%;font-size:18px;padding:8px}
/* v2 */
:root{--g:#1f4e3d;--o:#e8590c;--y:#ffd43b;--ink:#1d232a;--mut:#5f6b76;--bg:#f7f5f0}
body{background:var(--bg);color:var(--ink);line-height:1.5}
header{background:var(--g);position:sticky;top:0;z-index:1000}.brand{font-size:18px;letter-spacing:.2px}.brand::before{content:"🚐 "}
main{max-width:1100px}a{color:#0b6e4f}h2{margin-top:32px}
.hero{position:relative;overflow:hidden;margin:-16px -16px 8px;padding:44px 20px 120px;color:#fff;background:linear-gradient(160deg,#ff922b 0%,#e8590c 35%,#a61e4d 70%,#3b1f5c 100%)}
.hero::before{content:"";position:absolute;right:8%;top:22px;width:110px;height:110px;border-radius:50%;background:radial-gradient(circle,#fff3bf,#ffd43b 60%,transparent 62%);opacity:.9}
.hero-road{position:absolute;left:0;bottom:0;width:100%;height:120px}
.hero-in{position:relative;max-width:760px;margin:auto}.hero h1{font-size:clamp(30px,6vw,52px);line-height:1.08;margin:6px 0 10px;text-shadow:0 2px 12px rgba(0,0,0,.25)}
.eyebrow{display:flex;gap:8px;align-items:center;font-weight:600;opacity:.95;margin:0}.lede{font-size:18px;opacity:.95;margin:0 0 18px}
.search{display:flex;background:#fff;border-radius:14px;box-shadow:0 10px 30px rgba(0,0,0,.25);overflow:hidden}
.search #q{flex:1;border:0;font-size:19px;padding:16px 18px;min-width:0;outline:none}
#near{border:0;background:var(--g);color:#fff;font-weight:700;font-size:15px;padding:0 18px;display:flex;gap:6px;align-items:center;cursor:pointer}#near:hover{background:#163a2d}
.chk{display:inline-block;margin:10px 4px;font-size:14px}
#res{list-style:none;padding:0;margin:0;background:#fff;border-radius:12px;max-height:320px;overflow:auto}#res li a{display:block;padding:10px 14px;border-bottom:1px solid #eee;color:var(--ink);text-decoration:none}#res li a:hover{background:#fff4e6}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:18px}.stats div{background:rgba(255,255,255,.14);backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.25);border-radius:12px;padding:10px;text-align:center}
.stats b{display:block;font-size:clamp(22px,4vw,32px)}.stats span{font-size:13px;opacity:.9}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}
.card{display:flex;flex-direction:column;gap:4px;background:#fff;border-radius:14px;padding:16px;text-decoration:none;color:var(--ink);box-shadow:0 1px 3px rgba(0,0,0,.08);border-top:4px solid var(--o);transition:transform .15s,box-shadow .15s}
.card:hover{transform:translateY(-3px);box-shadow:0 8px 20px rgba(0,0,0,.12)}.card .ic{font-size:26px}.card small{color:var(--mut)}.card.st{border-top-color:var(--g)}
.pills{display:flex;flex-wrap:wrap;gap:8px}.pills a{background:#1c7ed6;color:#fff;border-radius:8px;padding:6px 12px;font-weight:700;text-decoration:none;border:2px solid #fff;box-shadow:0 0 0 2px #1c7ed6}.pills small{opacity:.8;font-weight:400}
.bigmap{height:440px!important;border-radius:14px;box-shadow:0 2px 10px rgba(0,0,0,.1)}
.spons{margin:36px 0;padding:20px;border-radius:18px;background:linear-gradient(135deg,#fff9db,#fff4e6)}.spons .tag{margin:0 0 10px;font-size:12px;text-transform:uppercase;letter-spacing:1px;color:var(--mut)}
.sp-hero,.sp-card{position:relative;display:flex;flex-direction:column;gap:6px;text-decoration:none;color:var(--ink);background:#fff;border-radius:14px;padding:18px;box-shadow:0 1px 4px rgba(0,0,0,.08)}
.sp-hero{padding:26px;border:2px solid var(--o);margin-bottom:14px}.sp-hero b{font-size:24px}.sp-hero em,.sp-card em{color:var(--o);font-style:normal;font-weight:700}
.sp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.sp-card:hover,.sp-hero:hover{box-shadow:0 8px 20px rgba(0,0,0,.12)}
.sp-hero img,.sp-card img{max-height:40px;max-width:160px;object-fit:contain}
.badge{position:absolute;top:10px;right:10px;font-size:11px;background:#f1f3f5;color:var(--mut);padding:2px 8px;border-radius:99px}
table{background:#fff}@media(max-width:640px){.cols{columns:2}table{font-size:13px}.hero{padding-bottom:100px}#near span{display:none}}
.sp-card.adv{border:2px dashed var(--o);background:#fffaf3}
