:root{--g:#0f7a4a;--g2:#13a463;--ink:#0f172a;--mut:#475569;--bg:#f6f8f7;--card:#fff;--r:14px}
*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--ink);background:var(--bg)}
.search{max-width:860px;margin:0 auto;display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr) auto;gap:6px;background:#fff;border-radius:16px;padding:6px;box-shadow:0 10px 30px rgba(0,0,0,.2)}.search select{min-width:0;height:48px;border:0;background:#f1f5f4;border-radius:12px;font-size:16px;padding:0 10px;color:#0f172a}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.spt{font-size:12.5px;color:#334155;margin:0 0 4px}.spt span{color:var(--mut)}.rk{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:center;margin-bottom:4px}.ka{font-size:12px;color:#334155;background:#f1f5f9;border-radius:6px;padding:2px 7px}.card h2.ct a,.card h3.ct a{display:inline-block;padding:11px 0;margin:-11px 0}.pvs{display:inline-block;padding:14px 6px;margin:-14px -2px}#locbar a{display:inline-block;padding:13px 4px;margin:-13px 0}.list>.btn{min-height:44px}.browse,footer{content-visibility:auto;contain-intrinsic-size:auto 600px}.ex{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 12px;grid-column:1/-1}.ex span{font-size:13px;color:var(--mut);font-weight:600}.ex .chip{min-height:44px}.nh{font-size:16px;margin:18px 0 6px;grid-column:1/-1}
.search input{min-width:0;height:48px;box-sizing:border-box;border:0;outline:0;font-size:16px;padding:0 14px;border-radius:12px;background:#f1f5f4}.search input:focus-visible,.search select:focus-visible{outline:2px solid var(--g);outline-offset:1px}
.search button{border:0;background:var(--g);color:#fff;font-weight:700;padding:0 22px;border-radius:12px;cursor:pointer;min-height:48px;font-size:16px}@media(max-width:600px){.search{grid-template-columns:1fr 1fr}.search input,.search button{grid-column:1/-1}}
main{max-width:1200px;margin:20px auto 40px;padding:0 16px}
.filters{background:var(--card);border-radius:var(--r);padding:14px 16px;box-shadow:0 4px 16px rgba(0,0,0,.06);display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center}
.filters label{font-size:13px;color:var(--mut);font-weight:600}.chips{display:flex;flex-wrap:wrap;gap:6px}
.chip{border:1px solid #d6e2dc;background:#fff;border-radius:999px;padding:6px 12px;font-size:13px;cursor:pointer}
.chip.on{background:var(--g);border-color:var(--g);color:#fff}
select{padding:7px 10px;border-radius:8px;border:1px solid #d6e2dc;font-size:14px}
.layout{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}
#map{height:620px;border-radius:var(--r);position:sticky;top:12px;box-shadow:0 4px 16px rgba(0,0,0,.06)}
.count{color:var(--mut);font-size:14px;margin:4px 2px 10px;min-height:20px}
.list{display:grid;gap:12px}
.card{background:var(--card);border-radius:var(--r);padding:16px;box-shadow:0 2px 10px rgba(0,0,0,.05);cursor:pointer;border:2px solid transparent;transition:.15s}
.card:hover{border-color:var(--g2);transform:translateY(-1px)}
.card h3,.card h2.ct{margin:0 0 4px;font-size:17px}.city{color:var(--mut);font-size:13px}
.tags{display:flex;flex-wrap:wrap;gap:5px;margin:10px 0 6px}.tag{background:#e7f5ee;color:var(--g);font-size:12px;padding:3px 8px;border-radius:6px;font-weight:600}
.dist{color:var(--g)}.price{font-size:13px;color:#334155}.team{font-size:12px;font-weight:700;color:#7c3aed}
.modal{position:fixed;inset:0;background:rgba(15,23,42,.55);display:none;align-items:center;justify-content:center;padding:16px;z-index:2000}
.modal.open{display:flex}.box{background:#fff;border-radius:18px;max-width:560px;width:100%;max-height:90vh;overflow:auto;padding:24px;position:relative}
.box h2{margin:0 0 4px}.x{position:absolute;right:14px;top:10px;border:0;background:none;font-size:26px;cursor:pointer;color:var(--mut)}
dl{display:grid;grid-template-columns:120px 1fr;gap:8px 12px;font-size:14px}dt{color:var(--mut);font-weight:600}dd{margin:0}
.btn{display:inline-block;background:var(--g);color:#fff;text-decoration:none;padding:10px 16px;border-radius:10px;font-weight:700;margin:14px 8px 0 0}
.btn.alt{background:#fff;color:var(--g);border:2px solid var(--g)}
.browse{max-width:1100px;margin:24px auto;padding:0 16px;line-height:1.9}.browse a{color:var(--g);font-weight:600}footer{text-align:center;color:var(--mut);font-size:13px;padding:24px 16px 40px}footer a{color:var(--g);font-weight:700}
@media(max-width:860px){.layout{grid-template-columns:1fr}#map{height:340px;position:relative}dl{grid-template-columns:1fr}dt{margin-top:6px}}
.sf label{display:block;font-size:13px;font-weight:600;color:#334155;margin:10px 0 4px}.sf input,.sf textarea{width:100%;padding:9px 10px;border:1px solid #d6e2dc;border-radius:8px;font:inherit}
.sf .row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.sf .hp{position:absolute;left:-9999px;height:0;overflow:hidden}.sf .cks{display:flex;flex-wrap:wrap;gap:6px 12px;font-size:14px}.sf .cks label{display:inline;font-weight:400}
.msg{margin-top:12px;font-weight:600}.msg.ok{color:var(--g)}.msg.err{color:#b91c1c}@media(max-width:600px){.sf .row{grid-template-columns:1fr}}
.modal{padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));align-items:flex-start}
.modal .box{max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom));margin:auto;padding-top:0;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
.modal .x{position:sticky;top:0;float:right;z-index:5;width:44px;height:44px;margin:8px -12px 0 8px;display:flex;align-items:center;justify-content:center;font-size:30px;line-height:1;color:#0f172a;background:#fff;border-radius:50%;box-shadow:0 2px 8px rgba(0,0,0,.15)}
.modal .box>h2{padding-top:18px}
.more{margin-top:8px}.more summary{cursor:pointer;font-weight:700;color:var(--g)}.mf{display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:8px}.mf label{display:flex;flex-direction:column;font-size:13px;font-weight:600}.mfn{font-size:12px;color:var(--mut);margin:6px 0 0}
.card{display:grid;grid-template-columns:96px 1fr;gap:0 12px}.card>.th{cursor:zoom-in;grid-row:1/span 6;width:96px;height:72px;border-radius:8px;object-fit:cover;background:#e2e8f0}.ph{border-radius:8px;background:linear-gradient(135deg,#e7f5ee,#cfe9dc);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:#0b6b40;overflow:hidden}.card>.ph{grid-row:1/span 6;width:96px;height:72px}.ph span{font-size:10px;font-weight:600;line-height:1.1;text-align:center;padding:0 4px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.phb{height:120px;border-radius:10px;margin:10px 0}.phb span{font-size:13px}
.pf{display:inline;color:#0f172a}.pk{font-size:11.5px;color:var(--mut);margin-left:6px}.psec{display:block;font-size:12px;color:#475569;font-style:normal}.price.pun .pf{color:#334155;font-weight:600}
.ch{display:inline-block;font-size:11px;border-radius:999px;padding:0 7px;margin:0 4px 2px 0;background:#f1f5f9;color:#334155;border:1px solid #e2e8f0}.ch-team{background:#dcfce7;color:#14532d;border-color:#bbf7d0}.ch-individual{background:#e0f2fe;color:#075985;border-color:#bae6fd}.ch-membership{background:#fef3c7;color:#78350f;border-color:#fde68a}.plt{font-size:12px;color:var(--mut);margin-top:4px}
.rost{display:inline-grid!important;grid-template-columns:auto auto;gap:2px 8px;align-items:center}.rost small{grid-column:1/-1;font-size:12px;color:var(--mut);max-width:260px}@media(max-width:600px){.rost{grid-column:auto;grid-template-columns:1fr}.rost small{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}}.card>:not(.th):not(.ph){grid-column:2}#roster{font-weight:700}
.pp{font-weight:700;color:#0b6b40;font-size:14px;margin-top:4px}.pp i{font-weight:400;color:var(--mut)}
/* 2026-10-17 pricing provenance: verified = normal text + green badge; unverified/estimated = muted grey, dashed edge, label; contact = plain */
.pv{display:inline-block;background:#dcfce7;color:#14532d;border-radius:999px;font-size:11.5px;font-weight:700;padding:1px 8px;white-space:nowrap}.pvs{font-size:12px;color:#0b6b40}.pvl{margin-top:3px}
.price.pun,.pun{color:#5b6574;font-style:italic;border-left:3px dashed #94a3b8;padding-left:7px}.pu{display:inline-block;font-style:normal;background:#f1f5f9;color:#475569;border:1px dashed #94a3b8;border-radius:999px;font-size:11.5px;font-weight:600;padding:0 8px;white-space:nowrap}
.pc{color:#475569}.price.pop{margin:4px 0 6px;font-size:12.5px}.pq{display:block;font-size:12px;color:#475569;margin-top:3px}.pp.pun{font-weight:400;color:#5b6574}.gal{display:flex;gap:8px;overflow-x:auto;margin:8px 0 2px}.rpl{margin:6px 0 0;font-size:14px}.lnk{background:none;border:0;padding:6px 0;color:#0b6b40;text-decoration:underline;cursor:pointer;font:inherit;min-height:32px}.gal img{cursor:zoom-in;height:180px;width:auto;border-radius:10px;flex:0 0 auto;background:#e2e8f0}.cred{font-size:12px;color:var(--mut);margin:0 0 8px}.cred a{color:var(--mut)}
@media(max-width:600px){.card{grid-template-columns:72px 1fr}.card>.th,.card>.ph{width:72px;height:56px}.gal img{height:150px}}
.fbtn{position:relative;min-height:44px;padding:0 16px;border:1px solid var(--g);background:#fff;color:var(--g);border-radius:999px;font-weight:700;font-size:15px;cursor:pointer}.fbtn .badge{display:inline-block;min-width:20px;height:20px;line-height:20px;border-radius:10px;background:var(--g);color:#fff;font-size:12px;text-align:center;margin-left:4px;padding:0 5px}
.fpbg{position:fixed;inset:0;background:rgba(15,23,42,.45);z-index:1500;display:none}.fpbg.on{display:block}
.fp{position:fixed;z-index:1600;background:#fff;box-shadow:0 12px 40px rgba(15,23,42,.25);display:flex;flex-direction:column;top:90px;left:50%;transform:translateX(-50%);width:min(760px,94vw);max-height:calc(100dvh - 120px);border-radius:16px}.fp[hidden]{display:none}
.fphd{display:flex;align-items:center;justify-content:space-between;padding:12px 16px 4px;border-bottom:1px solid #eef2f0}.fphd h2{margin:0;font-size:18px}.fx{width:44px;height:44px;border:0;background:none;font-size:30px;line-height:1;cursor:pointer;color:#0f172a}
.fpbd{overflow-y:auto;padding:8px 16px 4px;display:grid;grid-template-columns:1fr 1fr;gap:4px 24px;overscroll-behavior:contain}.fpbd section{padding:6px 0}.fpbd h3{font-size:13px;text-transform:uppercase;letter-spacing:.04em;color:var(--mut);margin:6px 0 8px}.fpbd .mfn{grid-column:1/-1}
.fl{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:600;color:#334155;margin-bottom:10px}.fl select{min-height:44px;font-size:15px}.fp .chip{min-height:44px;padding:8px 14px}
.tgs{display:flex;flex-wrap:wrap;gap:8px}.tg{display:inline-flex}.tg input{position:absolute;opacity:0;width:1px;height:1px}.tg span{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border:1px solid #d6e2dc;border-radius:999px;font-size:14px;cursor:pointer;background:#fff;color:#0f172a}.tg input:checked+span{background:var(--g);border-color:var(--g);color:#fff}.tg input:focus-visible+span{outline:2px solid var(--g);outline-offset:2px}
.sz{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}@media(max-width:420px){.sz{grid-template-columns:1fr}}.stp{display:flex;align-items:stretch;border:1px solid #cfd8d3;border-radius:12px;overflow:hidden;background:#fff}.stp button{width:48px;min-height:48px;border:0;background:#f1f5f3;font-size:22px;cursor:pointer;color:#0f5132}.stp input,.nin{flex:1;min-width:0;min-height:48px;border:0;text-align:center;font-size:17px;font-weight:600;-moz-appearance:textfield}.nin{border:1px solid #cfd8d3;border-radius:12px}.stp input::-webkit-inner-spin-button,.nin::-webkit-inner-spin-button{-webkit-appearance:none}.qp{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.qp button{min-height:40px;padding:0 14px;border-radius:999px;border:1px solid #cfd8d3;background:#fff;font-size:14px;cursor:pointer}.qp button.on{background:#0f7a4b;border-color:#0f7a4b;color:#fff}.fnote{font-size:13px;color:#5b6b63;margin:4px 0 0}
.fempty{margin:0 16px 8px;max-height:30dvh;overflow:auto;padding:10px 12px;border-radius:10px;background:#fff7e6;border:1px solid #f3d9a4;font-size:14px}.fempty button{margin:6px 6px 0 0;padding:6px 10px;border-radius:999px;border:1px solid #cfd8d3;background:#fff;cursor:pointer;font-size:13px}.fpft .btn:disabled{opacity:.55;cursor:not-allowed}.fpft{display:flex;gap:10px;justify-content:flex-end;padding:10px 16px calc(10px + env(safe-area-inset-bottom));border-top:1px solid #eef2f0;background:#fff;border-radius:0 0 16px 16px}.fpft .btn{min-height:44px;margin:0;cursor:pointer;border:0}
.ov{display:inline-block;background:#e7f5ee;color:#0b6b40;border:1px solid #bfe3cf;border-radius:999px;font-size:12px;font-weight:700;padding:2px 10px;margin:0 0 4px}.claim{margin:14px 0 0;font-size:14px}.claim a{color:var(--g);font-weight:600;display:inline-block;padding:10px 0}.achips{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 6px}.achips:empty{display:none}.ac{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 6px 0 12px;border-radius:999px;background:#e7f5ee;color:#0b6b40;border:1px solid #bfe3cf;font-size:13px;font-weight:600;cursor:pointer}.ac b{font-size:18px;line-height:1;width:24px;text-align:center}
@media(max-width:700px){.fp{top:auto;bottom:0;left:0;right:0;transform:none;width:100%;max-height:85dvh;border-radius:18px 18px 0 0;animation:su .2s ease-out}.fpbd{grid-template-columns:1fr}.fpft .btn{flex:1}.fphd{position:sticky;top:0;background:#fff;border-radius:18px 18px 0 0}}
@keyframes su{from{transform:translateY(100%)}to{transform:none}}@media(prefers-reduced-motion:reduce){.fp{animation:none}}
.fld{display:inline-flex;align-items:center;gap:8px;min-width:0}#roster{min-height:44px;padding:0 10px;border-radius:8px;border:1px solid #d6e2dc;font-size:16px}#geo{min-height:44px}.filters select{height:44px;box-sizing:border-box}@media(max-width:600px){.filters{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:end}.filters .fld{flex-direction:column;align-items:stretch;gap:4px}.filters .fld select,.filters .fld input{width:100%!important;height:44px;min-height:44px;box-sizing:border-box;min-width:0;font-size:16px}.filters .fbtn{width:100%}#geo{grid-column:1/-1;width:100%}}
.ptc{font-size:12px;color:#475569;font-weight:600;margin:2px 0 2px}.ptb{width:100%;max-width:520px;border-collapse:collapse;font-size:14px;margin:0 0 6px}.ptb tr.gh th{text-align:left;font-weight:600;color:#0f172a;padding:8px 0 2px;font-size:14px}.ptb tr.gh:first-child th{padding-top:2px}.ptb td{vertical-align:top;border-bottom:1px solid #f1f5f9;padding:4px 10px 4px 0}.ptb td.pr{font-weight:700;white-space:nowrap;width:1%}.ptb td:not(.pr){color:#334155}.ptb small{display:block;color:#475569;font-size:12px}.ptb.ptu td.pr{color:#334155}.chs{margin-top:2px}


/* 2026-10-18 layout C (Ryan): header with Browse / Add a facility / Claim listing, headline and search left, US map card
   right, sport chips with live counts, light + dark themes. Colours are tokens so one rule set serves both themes. */
:root{--g:#0f7a4a;--g2:#13a463;--ink:#0f172a;--ink2:#334155;--mut:#475569;--bg:#f6f8f7;--card:#fff;--field:#fff;--soft:#f1f5f4;--line:#d6e2dc;--line2:#e3ebe7;
 --btn:#0f7a4a;--btnink:#fff;--ph:#64748b;--chipbg:#fff;--tagbg:#e7f5ee;--tagink:#0b6b40;--shadow:0 4px 16px rgba(0,0,0,.06);--hbg:#fff;--hero:#eef6f1;--hero2:#f6f8f7;
 --st-on:#cfe9dc;--st-off:#e6ece9;--st-edge:#fff;--bub:#0f7a4a;--bubink:#fff;--halo:rgba(15,122,74,.18);--dot:#0f7a4a;--me:#7c3aed;--ring:#0f7a4a;
 --okbg:#dcfce7;--okink:#14532d;--team:#7c3aed;--warnbg:#fff7e6;--warnline:#f3d9a4;color-scheme:light}
:root[data-theme=dark]{--g:#4ade80;--g2:#22c55e;--ink:#e7efea;--ink2:#c9d6cf;--mut:#a3b5ac;--bg:#0a110e;--card:#121c18;--field:#17231e;--soft:#1b2822;--line:#2b3c34;--line2:#22322b;
 --btn:#34c77b;--btnink:#03140a;--ph:#93a69c;--chipbg:#17231e;--tagbg:#1a3326;--tagink:#86efac;--shadow:0 6px 20px rgba(0,0,0,.45);--hbg:#0d1512;--hero:#0f1a15;--hero2:#0a110e;
 --st-on:#1d4632;--st-off:#18231e;--st-edge:#0d1512;--bub:#34c77b;--bubink:#03140a;--halo:rgba(52,199,123,.22);--dot:#4ade80;--me:#c4b5fd;--ring:#4ade80;
 --okbg:#14532d;--okink:#dcfce7;--team:#a78bfa;--warnbg:#2a2210;--warnline:#5c4a1c;color-scheme:dark}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--g:#4ade80;--g2:#22c55e;--ink:#e7efea;--ink2:#c9d6cf;--mut:#a3b5ac;--bg:#0a110e;--card:#121c18;--field:#17231e;--soft:#1b2822;--line:#2b3c34;--line2:#22322b;
 --btn:#34c77b;--btnink:#03140a;--ph:#93a69c;--chipbg:#17231e;--tagbg:#1a3326;--tagink:#86efac;--shadow:0 6px 20px rgba(0,0,0,.45);--hbg:#0d1512;--hero:#0f1a15;--hero2:#0a110e;
 --st-on:#1d4632;--st-off:#18231e;--st-edge:#0d1512;--bub:#34c77b;--bubink:#03140a;--halo:rgba(52,199,123,.22);--dot:#4ade80;--me:#c4b5fd;--ring:#4ade80;
 --okbg:#14532d;--okink:#dcfce7;--team:#a78bfa;--warnbg:#2a2210;--warnline:#5c4a1c;color-scheme:dark}}
body{background:var(--bg);color:var(--ink)}
/* header */
.top{position:sticky;top:0;z-index:1000;background:var(--hbg);border-bottom:1px solid var(--line2)}
.top .in{max-width:1200px;margin:0 auto;padding:8px 24px;display:flex;align-items:center;gap:10px}
.brand{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--ink);font-weight:800;letter-spacing:-.4px;font-size:17px;margin-right:auto;min-height:44px}
.brand .mark{width:24px;height:29px;flex:none}.mark .pin{fill:var(--g)}.mark .fl{fill:var(--hbg)}.mark .ln{fill:none;stroke:var(--g);stroke-width:1.8}
.nav{display:flex;gap:4px}.nav a{display:inline-flex;align-items:center;min-height:44px;padding:0 12px;border-radius:10px;text-decoration:none;color:var(--ink2);font-weight:600;font-size:15px}
.nav a:hover{background:var(--hero)}.nav a.cta{border:1px solid var(--g);color:var(--g);margin-left:4px}
.ibtn{width:44px;height:44px;border-radius:999px;display:inline-grid;place-items:center;cursor:pointer;border:1px solid var(--line);background:var(--card);color:var(--ink);flex:none;padding:0}
.ibtn svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.theme .i-sun{display:none}:root[data-theme=dark] .theme .i-sun{display:block}:root[data-theme=dark] .theme .i-moon{display:none}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .theme .i-sun{display:block}:root:not([data-theme=light]) .theme .i-moon{display:none}}
.mbtn{display:none}
.nav a:focus-visible,.ibtn:focus-visible,.schip:focus-visible,.search button:focus-visible,.usmap .bub:focus-visible{outline:3px solid var(--ring);outline-offset:2px}
/* hero */
.hero{background:linear-gradient(180deg,var(--hero),var(--hero2));padding:36px 24px 40px}
.hero .grid{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:36px;align-items:center}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:var(--g);margin:0 0 12px}.eyebrow i{width:8px;height:8px;border-radius:50%;background:var(--g)}
.hero h1{font-size:clamp(30px,4.6vw,54px);line-height:1.03;letter-spacing:-.035em;margin:0 0 14px;font-weight:850;text-wrap:balance;color:var(--ink)}.hero h1 span{color:var(--g)}
.hero .sub{margin:0 0 22px;color:var(--mut);font-size:clamp(15px,1.6vw,18px);line-height:1.55;max-width:540px}
.hero .search{max-width:640px;margin:0;display:flex;align-items:center;gap:4px;background:var(--field);border:1px solid var(--line);border-radius:999px;padding:5px;box-shadow:0 10px 30px rgba(15,60,40,.12)}
.hero .search:focus-within{box-shadow:0 0 0 3px var(--ring),0 10px 30px rgba(15,60,40,.12)}
.hero .search input{flex:1;min-width:0;height:46px;border:0;outline:0;background:transparent;color:var(--ink);font-size:16px;padding:0 16px;border-radius:999px}.hero .search input::placeholder{color:var(--ph);opacity:1}
.hero .search .go{border:0;background:var(--btn);color:var(--btnink);font-weight:700;font-size:15px;padding:0 22px;border-radius:999px;cursor:pointer;min-height:46px}
.hero .search .sgeo{display:inline-flex;align-items:center;gap:6px;min-height:46px;padding:0 12px;border:0;border-radius:999px;background:transparent;color:var(--g);font:600 14px system-ui,-apple-system,Segoe UI,Roboto,sans-serif;cursor:pointer;white-space:nowrap}
.hero .search #geo{width:auto;flex:none;grid-column:auto}.hero .search .sgeo:hover{background:var(--soft)}.hero .search .sgeo svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;flex:none}
.schips{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 0}
.schip{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 12px 0 10px;border-radius:999px;border:1px solid var(--line);background:var(--chipbg);color:var(--ink);font:600 14px system-ui,-apple-system,Segoe UI,Roboto,sans-serif;cursor:pointer}
.schip svg{width:18px;height:18px;fill:none;stroke:var(--g);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}
.schip .n{font-weight:500;font-size:12.5px;color:var(--mut);font-variant-numeric:tabular-nums}.schip .n:empty{display:none}
.schip:disabled{opacity:.4;cursor:default}.schip[aria-pressed=true]{background:var(--btn);border-color:var(--btn);color:var(--btnink)}.schip[aria-pressed=true] svg{stroke:var(--btnink)}.schip[aria-pressed=true] .n{color:var(--btnink)}
.mapcard{margin:0;background:var(--card);border:1px solid var(--line2);border-radius:20px;padding:16px 16px 12px;box-shadow:var(--shadow)}
.usmap{display:block;width:100%;height:auto;aspect-ratio:1200/760}
.usmap .sts path{stroke:var(--st-edge);stroke-width:1.6;stroke-linejoin:round;vector-effect:non-scaling-stroke}.usmap .on{fill:var(--st-on)}.usmap .off{fill:var(--st-off)}
.usmap .dots circle{fill:var(--dot);opacity:.75}.usmap .bub{cursor:pointer}.usmap .bub circle{fill:var(--bub)}.usmap .bub .halo{fill:var(--halo)}.usmap .bub:hover .halo{fill:var(--bub);opacity:.35}
.usmap text{fill:var(--bubink);font-weight:800;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;text-anchor:middle;pointer-events:none}
.usmap .me circle{fill:var(--me)}.usmap .me .ring{fill:none;stroke:var(--me);stroke-width:2;vector-effect:non-scaling-stroke}
.legend{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;margin-top:6px;font-size:13px;color:var(--mut);min-height:32px}.legend b{color:var(--ink)}.legend .lnk{color:var(--g);min-height:32px;padding:0}
@media(max-width:860px){.hero .grid{grid-template-columns:minmax(0,1fr)}.mapcard{display:none}.hero{padding:24px 16px 20px}}
@media(max-width:600px){.top .in{padding:6px 12px 6px 16px;gap:6px}.mbtn{display:inline-grid}
 .nav{display:none;position:absolute;top:100%;right:8px;flex-direction:column;align-items:stretch;gap:2px;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:6px;box-shadow:var(--shadow);min-width:200px}
 .nav.open{display:flex}.nav a.cta{margin:0}.hero h1{font-size:32px}.hero .sub{font-size:15px;margin-bottom:16px}
 .hero .search .sgeo{padding:0 10px}.hero .search .sgeo span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.hero .search .go{padding:0 18px}.hero .search input{padding:0 6px 0 14px}
 .schips{gap:6px}.schip{padding:0 10px 0 9px;gap:5px;font-size:13.5px}}
/* results map: on single-column layouts it appears only once a location is set */
@media(max-width:860px){body:not(.loc) #map{display:none}#map{height:260px}}
/* 2026-10-18 dark theme for the rest of the homepage (cards, filters, panel, modal) */
.filters,.card,.box,.fp,.fpft,.fphd{background:var(--card);color:var(--ink)}.filters{border:1px solid var(--line2)}
select,#roster,.fl select,.sf input,.sf textarea{background:var(--field);color:var(--ink);border-color:var(--line)}
.chip,.tg span,.qp button,.fempty button,.fbtn,.btn.alt{background:var(--chipbg);color:var(--ink);border-color:var(--line)}.fbtn,.btn.alt{color:var(--g);border-color:var(--g)}
.chip.on,.tg input:checked+span,.qp button.on{background:var(--btn);border-color:var(--btn);color:var(--btnink)}.btn{background:var(--btn);color:var(--btnink)}.fbtn .badge{background:var(--btn);color:var(--btnink)}.fbtn .badge[hidden]{display:none}
.stp,.nin{background:var(--field);border-color:var(--line)}.stp input,.nin{background:transparent;color:var(--ink)}.stp button{background:var(--soft);color:var(--g)}
.fphd,.fpft{border-color:var(--line2)}.fx,.modal .x{color:var(--ink)}.modal .x{background:var(--card)}.fl,.sf label,.price,.spt,.ka,.ptb td:not(.pr),.ptb.ptu td.pr,.pc,.psec,.ptc,.pq,.ptb small{color:var(--ink2)}
.ptb tr.gh th,.pf{color:var(--ink)}.ptb td{border-color:var(--line2)}.ka,.ch{background:var(--soft);border-color:var(--line2);color:var(--ink2)}
.tag,.ac,.ov{background:var(--tagbg);color:var(--tagink);border-color:transparent}.pp,.pvs,.lnk{color:var(--tagink)}.pv{background:var(--okbg);color:var(--okink)}
.pu{background:var(--soft);color:var(--mut)}.price.pun,.pun,.pp.pun,.price.pun .pf{color:var(--mut)}.team{color:var(--team)}
.fempty{background:var(--warnbg);border-color:var(--warnline)}.ph{background:linear-gradient(135deg,var(--tagbg),var(--st-on));color:var(--tagink)}
.browse a,footer a,.claim a,.more summary,#locbar a{color:var(--g)}#map{background:var(--soft)}
.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:var(--card);color:var(--ink)}.leaflet-popup-content a{color:var(--g)}
:root[data-theme=dark] .leaflet-tile-pane{filter:invert(1) hue-rotate(180deg) brightness(.85) contrast(.9)}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .leaflet-tile-pane{filter:invert(1) hue-rotate(180deg) brightness(.85) contrast(.9)}
:root:not([data-theme=light]) .ch-team,:root:not([data-theme=light]) .ch-individual,:root:not([data-theme=light]) .ch-membership{background:var(--soft);color:var(--ink2);border-color:var(--line)}}
:root[data-theme=dark] .ch-team,:root[data-theme=dark] .ch-individual,:root[data-theme=dark] .ch-membership{background:var(--soft);color:var(--ink2);border-color:var(--line)}
:root[data-theme=dark] .leaflet-bar a{background:var(--card);color:var(--ink);border-color:var(--line)}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .leaflet-bar a{background:var(--card);color:var(--ink);border-color:var(--line)}}
