/* Get Involved directory — the package's own CSS scoped under .gi, then re-skinned to the site tokens (BUILD.md §7). Edit the skin block at the bottom. */
.gi .leaflet-pane,.gi .leaflet-tile,.gi .leaflet-marker-icon,.gi .leaflet-marker-shadow,.gi .leaflet-tile-container,.gi .leaflet-pane>svg,.gi .leaflet-pane>canvas,.gi .leaflet-zoom-box,.gi .leaflet-image-layer,.gi .leaflet-layer{position:absolute;left:0;top:0}
.gi .leaflet-container{overflow:hidden}
.gi .leaflet-tile,.gi .leaflet-marker-icon,.gi .leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}
.gi .leaflet-tile::selection{background:transparent}
.gi .leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}
.gi .leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}
.gi .leaflet-marker-icon,.gi .leaflet-marker-shadow{display:block}
.gi .leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}
.gi .leaflet-container .leaflet-marker-pane img,.gi .leaflet-container .leaflet-shadow-pane img,.gi .leaflet-container .leaflet-tile-pane img,.gi .leaflet-container img.leaflet-image-layer,.gi .leaflet-container .leaflet-tile{max-width:none!important;max-height:none!important;width:auto;padding:0}
.gi .leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}
.gi .leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}
.gi .leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}
.gi .leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}
.gi .leaflet-container{-webkit-tap-highlight-color:transparent}
.gi .leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}
.gi .leaflet-tile{filter:inherit;visibility:hidden}
.gi .leaflet-tile-loaded{visibility:inherit}
.gi .leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}
.gi .leaflet-overlay-pane svg{-moz-user-select:none}
.gi .leaflet-pane{z-index:400}
.gi .leaflet-tile-pane{z-index:200}
.gi .leaflet-overlay-pane{z-index:400}
.gi .leaflet-shadow-pane{z-index:500}
.gi .leaflet-marker-pane{z-index:600}
.gi .leaflet-tooltip-pane{z-index:650}
.gi .leaflet-popup-pane{z-index:700}
.gi .leaflet-map-pane canvas{z-index:100}
.gi .leaflet-map-pane svg{z-index:200}
.gi .leaflet-vml-shape{width:1px;height:1px}
.gi .lvml{behavior:url(#default#VML);display:inline-block;position:absolute}
.gi .leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}
.gi .leaflet-top,.gi .leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}
.gi .leaflet-top{top:0}
.gi .leaflet-right{right:0}
.gi .leaflet-bottom{bottom:0}
.gi .leaflet-left{left:0}
.gi .leaflet-control{float:left;clear:both}
.gi .leaflet-right .leaflet-control{float:right}
.gi .leaflet-top .leaflet-control{margin-top:10px}
.gi .leaflet-bottom .leaflet-control{margin-bottom:10px}
.gi .leaflet-left .leaflet-control{margin-left:10px}
.gi .leaflet-right .leaflet-control{margin-right:10px}
.gi .leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}
.gi .leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}
.gi .leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}
.gi svg.leaflet-zoom-animated{will-change:transform}
.gi .leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}
.gi .leaflet-zoom-anim .leaflet-tile,.gi .leaflet-pan-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}
.gi .leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}
.gi .leaflet-interactive{cursor:pointer}
.gi .leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}
.gi .leaflet-crosshair,.gi .leaflet-crosshair .leaflet-interactive{cursor:crosshair}
.gi .leaflet-popup-pane,.gi .leaflet-control{cursor:auto}
.gi .leaflet-dragging .leaflet-grab,.gi .leaflet-dragging .leaflet-grab .leaflet-interactive,.gi .leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}
.gi .leaflet-marker-icon,.gi .leaflet-marker-shadow,.gi .leaflet-image-layer,.gi .leaflet-pane>svg path,.gi .leaflet-tile-container{pointer-events:none}
.gi .leaflet-marker-icon.leaflet-interactive,.gi .leaflet-image-layer.leaflet-interactive,.gi .leaflet-pane>svg path.leaflet-interactive,.gi svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}
.gi .leaflet-container{background:#ddd;outline-offset:1px}
.gi .leaflet-container a{color:#0078A8}
.gi .leaflet-zoom-box{border:2px dotted #38f;background:rgba(255,255,255,.5)}
.gi .leaflet-container{font-family:"Helvetica Neue",Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}
.gi .leaflet-bar{box-shadow:0 1px 5px rgba(0,0,0,.65);border-radius:4px}
.gi .leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}
.gi .leaflet-bar a,.gi .leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}
.gi .leaflet-bar a:hover,.gi .leaflet-bar a:focus{background-color:#f4f4f4}
.gi .leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}
.gi .leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}
.gi .leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}
.gi .leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}
.gi .leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}
.gi .leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}
.gi .leaflet-control-zoom-in,.gi .leaflet-control-zoom-out{font:bold 18px 'Lucida Console',Monaco,monospace;text-indent:1px}
.gi .leaflet-touch .leaflet-control-zoom-in,.gi .leaflet-touch .leaflet-control-zoom-out{font-size:22px}
.gi .leaflet-container .leaflet-control-attribution{background:#fff;background:rgba(255,255,255,.8);margin:0}
.gi .leaflet-control-attribution,.gi .leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}
.gi .leaflet-control-attribution a{text-decoration:none}
.gi .leaflet-control-attribution a:hover,.gi .leaflet-control-attribution a:focus{text-decoration:underline}
.gi .leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}
.gi .leaflet-left .leaflet-control-scale{margin-left:5px}
.gi .leaflet-bottom .leaflet-control-scale{margin-bottom:5px}
.gi .leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;-moz-box-sizing:border-box;box-sizing:border-box;background:rgba(255,255,255,.8);text-shadow:1px 1px #fff}
.gi .leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}
.gi .leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}
.gi .leaflet-touch .leaflet-control-attribution,.gi .leaflet-touch .leaflet-control-layers,.gi .leaflet-touch .leaflet-bar{box-shadow:none}
.gi .leaflet-touch .leaflet-control-layers,.gi .leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}
.gi .leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}
.gi .leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}
.gi .leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}
.gi .leaflet-popup-content p{margin:17px 0;margin:1.3em 0}
.gi .leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}
.gi .leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}
.gi .leaflet-popup-content-wrapper,.gi .leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px rgba(0,0,0,.4)}
.gi .leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}
.gi .leaflet-container a.leaflet-popup-close-button:hover,.gi .leaflet-container a.leaflet-popup-close-button:focus{color:#585858}
.gi .leaflet-popup-scrolled{overflow:auto}
.gi .leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}
.gi .leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto}
.gi .leaflet-oldie .leaflet-control-zoom,.gi .leaflet-oldie .leaflet-control-layers,.gi .leaflet-oldie .leaflet-popup-content-wrapper,.gi .leaflet-oldie .leaflet-popup-tip{border:1px solid #999}
.gi .leaflet-div-icon{background:#fff;border:1px solid #666}
.gi .leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px rgba(0,0,0,.4)}
.gi .leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}
.gi .leaflet-tooltip-top:before,.gi .leaflet-tooltip-bottom:before,.gi .leaflet-tooltip-left:before,.gi .leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:""}
.gi .leaflet-tooltip-bottom{margin-top:6px}
.gi .leaflet-tooltip-top{margin-top:-6px}
.gi .leaflet-tooltip-bottom:before,.gi .leaflet-tooltip-top:before{left:50%;margin-left:-6px}
.gi .leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}
.gi .leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}
.gi .leaflet-tooltip-left{margin-left:-6px}
.gi .leaflet-tooltip-right{margin-left:6px}
.gi .leaflet-tooltip-left:before,.gi .leaflet-tooltip-right:before{top:50%;margin-top:-6px}
.gi .leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}
.gi .leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}
@media print{
.gi .leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}
}
.gi /* ---------- Porch Light tokens ---------- */
:root{--ground:#FAF6ED; --surface:#FFFFFF; --surface-2:#F4EBD9; --surface-3:#EEE3CC; --ink:#241E14; --dim:#5E5344; --mute:#8A7D69;
  --hair:rgba(36,30,20,.12); --hair-strong:rgba(36,30,20,.26);
  --glow:#F2B347; --glow-deep:#B8791A; --glow-ink:#7A4E0B; --filament:#FFE7B4; --glow-soft:rgba(242,179,71,.16); --glow-mid:rgba(242,179,71,.42);
  --shadow:0 8px 30px rgba(36,30,20,.08); --shadow-sm:0 2px 10px rgba(36,30,20,.06);
  --f-display:"Fraunces",Georgia,"Times New Roman",serif; --f-body:"Poppins","Helvetica Neue",Arial,sans-serif;
  --pad:clamp(16px,4vw,32px); --measure:40rem; --r:18px;}
.gi a{color:var(--glow-ink)}
.gi button,.gi input,.gi select{font:inherit;color:inherit}
.gi .wrap{max-width:56rem;margin:0 auto;padding-inline:var(--pad);padding-block:28px 64px}
.gi /* ---------- hero ---------- */
.hero{display:grid;gap:12px;margin-bottom:22px}
.gi .eyebrow{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--glow-deep);font-weight:600;display:flex;align-items:center;gap:10px}
.gi .lamp{width:14px;height:14px;border-radius:50%;flex:none;background:radial-gradient(circle at 40% 35%,#fff6dd 0,var(--glow) 45%,var(--glow-deep) 100%);box-shadow:0 0 0 4px var(--glow-soft),0 0 18px rgba(242,179,71,.55)}
.gi h1{font-family:var(--f-display);font-weight:600;font-size:clamp(2.2rem,7vw,3.6rem);line-height:1.02;margin:0;text-wrap:balance;letter-spacing:-.015em}
.gi h1 em{font-style:italic;font-weight:400;color:var(--glow-deep)}
.gi .lede{color:var(--dim);max-width:var(--measure);margin:0;font-size:16px}
.gi .stats{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:13px;color:var(--mute);font-variant-numeric:tabular-nums}
.gi .stats b{color:var(--ink);font-weight:600}
.gi /* ---------- control deck ---------- */
.deck{background:var(--surface);border:1px solid var(--hair);border-radius:var(--r);box-shadow:var(--shadow);overflow:hidden}
.gi .step{padding:18px var(--pad) 20px;display:grid;gap:14px}
.gi .step+.step{border-top:1px solid var(--hair)}
.gi .stephead{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.gi .stepnum{font-family:var(--f-display);font-size:13px;font-weight:700;color:var(--glow-deep);letter-spacing:.08em;text-transform:uppercase}
.gi .stephead h2{font-family:var(--f-display);font-weight:600;font-size:1.35rem;margin:0;line-height:1.1}
.gi .stephead .opt{font-size:13px;color:var(--mute)}
.gi .tabs{display:flex;gap:6px;background:var(--surface-2);padding:4px;border-radius:12px;width:max-content;max-width:100%;overflow-x:auto}
.gi .tabs button{border:0;background:transparent;border-radius:9px;padding:8px 14px;font-size:14px;font-weight:500;color:var(--dim);cursor:pointer;white-space:nowrap}
.gi .tabs button[aria-selected="true"]{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm);font-weight:600}
.gi .pane{display:grid;gap:12px}
.gi .fields{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) auto;gap:8px;align-items:stretch}
@media (max-width:560px){
.gi .fields{grid-template-columns:1fr 1fr}
.gi .fields .locbtn{grid-column:1/-1}
}
.gi input[type=text],.gi select{background:var(--ground);border:1px solid var(--hair-strong);border-radius:12px;padding:12px 13px;min-width:0;width:100%;font-size:15px}
.gi input[type=text]::placeholder{color:var(--mute)}
.gi select{appearance:none;-webkit-appearance:none;padding-right:34px;background-image:linear-gradient(45deg,transparent 50%,var(--dim) 50%),linear-gradient(135deg,var(--dim) 50%,transparent 50%);background-position:calc(100% - 18px) 55%,calc(100% - 13px) 55%;background-size:5px 5px,5px 5px;background-repeat:no-repeat}
.gi .locbtn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--hair-strong);background:var(--surface);border-radius:12px;padding:0 14px;cursor:pointer;font-weight:500;font-size:14px;color:var(--ink);white-space:nowrap;min-height:46px}
.gi .locbtn:hover{border-color:var(--glow-deep)}
.gi .locbtn svg{width:18px;height:18px}
.gi .hint{font-size:13px;color:var(--mute);margin:0}
.gi .hint b{color:var(--dim);font-weight:600}
.gi /* tile map */
.mapgrid{display:grid;grid-template-columns:repeat(11,minmax(0,1fr));gap:4px;max-width:520px}
.gi .tile{aspect-ratio:1;border-radius:6px;border:1px solid transparent;background:var(--surface-2);font-size:11.5px;font-weight:600;color:var(--dim);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;position:relative;transition:transform .12s,background .15s}
.gi .tile:hover{transform:scale(1.08);border-color:var(--glow-deep);z-index:1}
.gi .tile[aria-pressed="true"]{background:var(--glow);color:#241E14;border-color:var(--glow-deep);box-shadow:0 0 0 3px var(--glow-soft)}
.gi .tile .n{position:absolute;right:2px;bottom:1px;font-size:8px;font-weight:500;color:var(--mute);letter-spacing:0}
.gi .tile[aria-pressed="true"] .n{color:#241E14}
@media (max-width:420px){
.gi .tile{font-size:10px;border-radius:4px}
.gi .tile .n{display:none}
}
.gi .mapkey{font-size:12px;color:var(--mute);display:flex;align-items:center;gap:8px}
.gi .mapkey i{display:inline-block;width:12px;height:12px;border-radius:3px;background:var(--surface-2)}
.gi .mapkey i.hi{background:var(--glow-mid)}
.gi .staterow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}
@media (max-width:560px){
.gi .staterow{grid-template-columns:1fr}
}
.gi /* type tiles */
.types-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
@media (max-width:640px){
.gi .types-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
.gi .ttile{border:1px solid var(--hair-strong);background:var(--surface);border-radius:14px;padding:12px 12px 10px;text-align:left;cursor:pointer;display:grid;gap:6px;transition:border-color .15s,background .15s,transform .12s;min-height:104px;align-content:start}
.gi .ttile:hover{border-color:var(--glow-deep);transform:translateY(-1px)}
.gi .ttile[aria-pressed="true"]{background:var(--filament);border-color:var(--glow-deep);box-shadow:0 0 0 3px var(--glow-soft)}
.gi .ttile .ic{width:26px;height:26px;color:var(--glow-deep);display:block}
.gi .ttile .ic svg,.gi .tag svg,.gi .locbtn svg,.gi .dist svg{display:block;width:100%;height:100%}
.gi .dist svg{width:12px;height:12px}
.gi .ttile[aria-pressed="true"] .ic{color:var(--glow-ink)}
.gi .ttile .tl{font-weight:600;font-size:14px;line-height:1.2;color:var(--ink)}
.gi .ttile .ts{font-size:12px;color:var(--mute);line-height:1.3}
.gi .ttile .tc{font-size:11px;color:var(--mute);font-variant-numeric:tabular-nums;margin-top:auto}
.gi .morefilters{display:grid;grid-template-columns:1fr 1fr;gap:8px}
@media (max-width:560px){
.gi .morefilters{grid-template-columns:1fr}
}
.gi /* ---------- summary strip ---------- */
.strip{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;margin:18px calc(-1*var(--pad)) 0;padding:10px var(--pad);background:color-mix(in srgb,var(--ground) 86%,transparent);backdrop-filter:saturate(1.2) blur(10px);-webkit-backdrop-filter:saturate(1.2) blur(10px);border-bottom:1px solid var(--hair);display:flex;align-items:center;gap:8px;flex-wrap:wrap}
@supports not (background:color-mix(in srgb,red 50%,transparent)){
.gi .strip{background:var(--ground)}
}
.gi .strip .count{font-size:14px;color:var(--dim);margin-right:auto}
.gi .strip .count b{color:var(--ink);font-variant-numeric:tabular-nums}
.gi .pill{display:inline-flex;align-items:center;gap:6px;background:var(--surface);border:1px solid var(--hair-strong);border-radius:999px;padding:5px 8px 5px 11px;font-size:12.5px;font-weight:500;color:var(--ink)}
.gi .pill button{border:0;background:var(--surface-2);color:var(--dim);border-radius:50%;width:18px;height:18px;line-height:1;cursor:pointer;font-size:13px;display:grid;place-items:center;padding:0}
.gi .pill button:hover{background:var(--glow);color:#241E14}
.gi .toggle{display:inline-flex;border:1px solid var(--hair-strong);border-radius:999px;overflow:hidden;background:var(--surface)}
.gi .toggle button{background:transparent;border:0;padding:6px 13px;font-size:13px;font-weight:500;cursor:pointer;color:var(--dim)}
.gi .toggle button[aria-pressed="true"]{background:var(--ink);color:var(--ground)}
.gi /* ---------- results ---------- */
.results{margin-top:24px;display:grid;gap:36px}
.gi .band{display:grid;gap:14px}
.gi .bandhead{display:grid;gap:4px}
.gi .bandhead h2{font-family:var(--f-display);font-weight:600;font-size:clamp(1.45rem,4.5vw,1.9rem);margin:0;line-height:1.1;display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.gi .bandhead h2 small{font-family:var(--f-body);font-size:13px;color:var(--mute);font-weight:500}
.gi .bandhead p{margin:0;color:var(--dim);font-size:14px}
.gi .rule{height:3px;width:44px;border-radius:2px;background:var(--glow)}
.gi .list{display:grid;gap:12px}
.gi .card{background:var(--surface);border:1px solid var(--hair);border-radius:16px;padding:16px 18px 14px;display:grid;gap:9px;position:relative}
.gi .card.partner{border-color:var(--glow-deep);box-shadow:0 0 0 3px var(--glow-soft)}
.gi .card .top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.gi .card h3{margin:0;font-size:17px;font-weight:600;line-height:1.3}
.gi .card .meta{font-size:13px;color:var(--mute);display:flex;flex-wrap:wrap;gap:4px 12px;font-variant-numeric:tabular-nums;align-items:center}
.gi .dist{display:inline-flex;align-items:center;gap:5px;background:var(--surface-2);border-radius:6px;padding:1px 7px;color:var(--dim);font-weight:600;font-size:12px}
.gi .badges{display:flex;gap:6px;flex-wrap:wrap;align-items:center;justify-content:flex-end}
.gi .badge{font-size:11px;letter-spacing:.06em;text-transform:uppercase;font-weight:600;padding:3px 8px;border-radius:6px;border:1px solid var(--hair-strong);color:var(--dim);white-space:nowrap}
.gi .badge.partner{background:var(--glow);border-color:var(--glow);color:#241E14}
.gi .badge.vetted{background:var(--filament);border-color:var(--glow-deep);color:var(--glow-ink)}
.gi .badge.gov{background:var(--surface-2);border-color:transparent}
.gi .badge.faith{border-style:dashed}
.gi .card .desc{margin:0}
.gi .card .step-line{margin:0;color:var(--dim);font-size:14px;border-left:3px solid var(--glow);padding-left:10px}
.gi .card .step-line b{color:var(--ink);font-weight:600}
.gi .tags{display:flex;flex-wrap:wrap;gap:5px}
.gi .tag{font-size:12px;color:var(--dim);background:var(--surface-2);border-radius:6px;padding:2px 7px;display:inline-flex;align-items:center;gap:5px}
.gi .tag svg{width:12px;height:12px;color:var(--glow-deep)}
.gi .actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:2px}
.gi .btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:10px;padding:10px 15px;font-size:14px;font-weight:600;text-decoration:none;border:1px solid transparent;cursor:pointer}
.gi .btn.primary{background:var(--glow);color:#241E14;border-color:var(--glow)}
.gi .btn.primary:hover{background:#F6C15F}
.gi .btn.ghost{background:transparent;border-color:var(--hair-strong);color:var(--ink)}
.gi .btn.ghost:hover{border-color:var(--glow-deep)}
.gi .link{font-size:14px;color:var(--dim);text-decoration:underline;text-underline-offset:3px;margin-left:auto}
@media (max-width:420px){
.gi .actions .btn.primary{flex:1 1 100%}
}
.gi .more{justify-self:center;background:transparent;border:1px solid var(--hair-strong);border-radius:999px;padding:9px 18px;font-weight:500;cursor:pointer;color:var(--dim)}
.gi .empty{background:var(--surface-2);border-radius:14px;padding:16px 18px;color:var(--dim);font-size:14px}
.gi .empty b{color:var(--ink)}
.gi .nudge{background:linear-gradient(135deg,var(--filament),var(--surface));border:1px solid var(--glow-deep);border-radius:16px;padding:16px 18px;display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.gi .nudge p{margin:0;flex:1 1 220px;color:var(--ink);font-size:14.5px}
.gi .nudge .btn{white-space:nowrap}
.gi /* ---------- map view ---------- */
#map{height:min(70vh,540px);border-radius:var(--r);border:1px solid var(--hair);overflow:hidden;background:var(--surface-2)}
.gi .mapnote{font-size:13px;color:var(--mute);margin:8px 0 0}
.gi .leaflet-container{font-family:var(--f-body);background:var(--surface-2)}
.gi .leaflet-popup-content-wrapper,.gi .leaflet-popup-tip{background:var(--surface);color:var(--ink)}
.gi .leaflet-popup-content{margin:12px 16px}
.gi .leaflet-popup-content h4{margin:0 0 4px;font-size:14px}
.gi .leaflet-popup-content a{color:var(--glow-ink);font-weight:600}
.gi .leaflet-bar a{background:var(--surface);color:var(--ink);border-color:var(--hair)}
.gi .leaflet-container .leaflet-control-attribution{background:var(--surface);color:var(--mute)}
.gi /* ---------- footer ---------- */
footer{margin-top:60px;border-top:1px solid var(--hair);padding-top:26px;display:grid;gap:18px;color:var(--dim);font-size:14px}
.gi footer p{margin:0;max-width:var(--measure)}
.gi .submit{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px}
.gi .porch{background:var(--surface-2);border-radius:14px;padding:16px 18px;display:grid;gap:8px}
.gi .porch a.btn{justify-self:start}
.gi .fine{font-size:12.5px;color:var(--mute)}
.gi /* ---------- modal ---------- */
.modal{position:fixed;inset:0;background:rgba(18,16,12,.55);display:flex;align-items:flex-end;justify-content:center;padding:16px;z-index:2000}
@media (min-width:600px){
.gi .modal{align-items:center}
}
.gi .modal .box{background:var(--surface);color:var(--ink);border-radius:18px;padding:22px 22px 18px;max-width:420px;width:100%;box-shadow:var(--shadow);display:grid;gap:12px;border:1px solid var(--hair)}
.gi .modal h2{font-family:var(--f-display);font-weight:600;font-size:1.5rem;margin:0;line-height:1.15;text-wrap:balance}
.gi .modal p{margin:0;color:var(--dim);font-size:14px}
.gi .modal label{display:grid;gap:4px;font-size:13px;color:var(--dim)}
.gi .modal .fieldrow{display:grid;gap:10px}
.gi .modal .btns{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:4px}
.gi .modal .later{background:none;border:0;color:var(--mute);text-decoration:underline;cursor:pointer;padding:6px 0}
.gi .modal .thanks{display:grid;gap:10px}
.gi .modal .thanks .links{display:flex;flex-wrap:wrap;gap:8px}
.gi .sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
@media (prefers-reduced-motion:no-preference){
.gi .card{animation:rise .25s ease-out both}
@keyframes rise{from{opacity:.4;transform:translateY(4px)}to{opacity:1;transform:none}}
}

/* ---------- our skin: site tokens + the Get-Involved board ---------- */
.gi [hidden]{display:none!important}
.gi *{box-sizing:border-box}
.gi button,.gi input,.gi select{font:inherit;color:inherit}
.gi{--ground:#14110d;--surface:#2b241c;--surface-2:#1e1913;--surface-3:#3a3226;--ink:#f3ece3;--dim:#a89d8e;--mute:#a89d8e;
  --hair:#3a3226;--hair-strong:#3a3226;--glow:#f4bb46;--glow-deep:#f4bb46;--glow-ink:#ffd97a;--filament:rgba(244,187,70,.10);--glow-soft:rgba(244,187,70,.12);--glow-mid:rgba(244,187,70,.4);
  --shadow:0 24px 48px -32px rgba(0,0,0,.6);--shadow-sm:none;--f-display:"Poppins","Segoe UI",system-ui,sans-serif;--f-body:"Poppins","Segoe UI",system-ui,sans-serif;--pad:32px;--measure:40rem;--r:20px;
  font:400 15px/1.55 var(--f-body);color:var(--ink)}
.gi .wrap{max-width:1280px;margin:0 auto;padding:0 var(--gutter) 64px}
.gi .deck{background:#2b241c;border:1px solid #3a3226;border-radius:20px;box-shadow:0 24px 48px -32px rgba(0,0,0,.6)}
.gi .step{padding:28px 32px 32px;gap:16px}
.gi .stepnum{font:700 13px/18px var(--f-display);letter-spacing:.1em;color:var(--gold);text-transform:uppercase}
.gi .stephead h2{font:600 26px/32px var(--f-display);letter-spacing:0;color:var(--ink)}
.gi .stephead .opt{font:400 14px/20px var(--f-display);color:var(--ink-muted)}
.gi .tabs{background:#14110d;padding:4px;border-radius:12px;gap:4px}
.gi .tabs button{padding:8px 16px;border-radius:9px;font:500 15px/20px var(--f-display);color:var(--ink-muted);border:1px solid transparent}
.gi .tabs button[aria-selected="true"]{background:#2b241c;color:var(--ink);border-color:#3a3226;box-shadow:none;font-weight:500}
.gi input[type=text],.gi select{background:#14110d;border:1px solid #3a3226;border-radius:12px;padding:12px 14px;font:400 16px/24px var(--f-body);color:var(--ink)}
.gi input[type=text]:focus,.gi select:focus{border-color:var(--gold);outline:none}
.gi select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23f3ece3' stroke-width='1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:12px 8px;padding-right:36px}
.gi .locbtn{background:transparent;border:1px solid #3a3226;border-radius:12px;padding:0 16px;height:50px;min-height:50px;font:500 15px/20px var(--f-display);color:var(--ink)}
.gi .locbtn:hover{border-color:var(--gold)}
.gi .hint{font:400 14px/20px var(--f-body);color:var(--ink-muted)} .gi .hint b{color:var(--ink);font-weight:600}
.gi .ttile{border:1px solid #3a3226;background:#14110d;border-radius:14px;padding:14px 14px 12px;gap:8px;min-height:112px}
.gi .ttile:hover{border-color:rgba(244,187,70,.6)}
.gi .ttile[aria-pressed="true"]{background:rgba(244,187,70,.10);border-color:rgba(244,187,70,.6);box-shadow:0 0 0 3px rgba(244,187,70,.12)}
.gi .ttile .ic{color:var(--gold)} .gi .ttile[aria-pressed="true"] .ic{color:var(--gold)}
.gi .ttile .tl{font:600 15px/20px var(--f-display);color:var(--ink)} .gi .ttile .ts{font:400 13px/18px var(--f-body);color:var(--ink-muted)} .gi .ttile .tc{font:400 12px/16px var(--f-body);color:var(--ink-muted)}
.gi .tile{background:#1e1913;color:var(--ink-muted)} .gi .tile[aria-pressed="true"]{background:var(--gold);color:#14110d}
.gi .strip{margin:0;padding:12px 0;background:rgba(20,17,13,.86);border-bottom:1px solid #3a3226;gap:8px}
.gi .strip .count{font:400 15px/20px var(--f-body);color:var(--ink-muted)} .gi .strip .count b{color:var(--ink);font-weight:600}
.gi .pill{background:#2b241c;border:1px solid #3a3226;border-radius:999px;padding:6px 10px 6px 14px;font:500 14px/20px var(--f-display);color:var(--ink)}
.gi .pill button{background:#3a3226;color:var(--ink-muted);width:18px;height:18px;font:500 12px/18px var(--f-display)}
.gi .toggle{border:1px solid #3a3226;border-radius:999px;background:transparent}
.gi .toggle button{padding:6px 14px;font:500 14px/20px var(--f-display);color:var(--ink-muted)}
.gi .toggle button[aria-pressed="true"]{background:#f3ece3;color:#14110d}
.gi .results{margin-top:40px;gap:40px}
.gi .band{padding:0;gap:14px;background:none;border:0}
.gi .rule{width:44px;height:3px;border-radius:2px;background:var(--gold)}
.gi .bandhead{gap:6px}
.gi .bandhead h2{font:600 30px/36px var(--f-display);letter-spacing:0;color:var(--ink)} .gi .bandhead h2 small{font:500 14px/20px var(--f-body);color:var(--ink-muted)}
.gi .bandhead p{font:400 15px/22px var(--f-body);color:var(--ink-muted)}
.gi .list{gap:12px}
.gi .card{background:#2b241c;border:1px solid rgba(244,187,70,.14);border-radius:16px;padding:20px 24px;gap:10px;display:grid;animation:none}
.gi .card.partner{border-color:rgba(244,187,70,.6);box-shadow:0 0 0 3px rgba(244,187,70,.12)}
.gi .card h3{font:600 20px/26px var(--f-display);color:var(--ink)}
.gi .card .meta{font:400 14px/20px var(--f-body);color:var(--ink-muted);gap:4px 12px}
.gi .dist{background:#1e1913;border-radius:6px;padding:2px 8px;font:600 12px/18px var(--f-display);color:var(--ink)} .gi .dist svg{color:var(--gold)}
.gi .badge{font:600 11px/16px var(--f-display);letter-spacing:.06em;padding:3px 8px;border-radius:6px;border:1px solid #3a3226;color:var(--ink-muted)}
.gi .badge.partner{background:var(--gold);border-color:var(--gold);color:#14110d}
.gi .badge.vetted{background:rgba(244,187,70,.10);border-color:rgba(244,187,70,.6);color:var(--glow-ink)}
.gi .badge.gov{background:transparent;border-color:#3a3226} .gi .badge.faith{border-style:dashed}
.gi .card .desc{font:400 16px/26px var(--f-body);color:var(--ink)}
.gi .card .step-line{font:400 15px/24px var(--f-body);color:var(--ink-muted);border-left:3px solid var(--gold);padding-left:10px} .gi .card .step-line b{color:var(--ink)}
.gi .tag{background:#1e1913;border-radius:6px;padding:3px 8px;font:400 13px/18px var(--f-body);color:var(--ink-muted)} .gi .tag svg{color:var(--gold)}
.gi .actions{gap:8px;margin-top:4px}
.gi .btn{border-radius:12px;padding:10px 16px;font:500 16px/24px var(--f-display);border:1px solid transparent;gap:8px;transition:box-shadow .15s ease-out,background .15s ease-out,border-color .15s ease-out}
.gi .btn.primary{background:linear-gradient(180deg,#ffd27a 0%,#f4bb46 55%,#e3a72e 100%);color:#14110d;border-color:#f4bb46;box-shadow:0 1px 0 rgba(255,255,255,.25) inset,0 10px 28px -10px rgba(244,187,70,.65)}
.gi .btn.primary:hover{background:linear-gradient(180deg,#ffd27a 0%,#f4bb46 55%,#e3a72e 100%);box-shadow:0 1px 0 rgba(255,255,255,.25) inset,0 0 0 2px #f4bb4633,0 0 24px 4px #f4bb4659}
.gi .btn.ghost{background:rgba(244,187,70,.04);border-color:rgba(244,187,70,.28);color:var(--ink)} .gi .btn.ghost:hover{border-color:rgba(244,187,70,.45)}
.gi .link{font:400 14px/20px var(--f-body);color:var(--ink-muted)}
.gi .more{border:1px solid #3a3226;border-radius:999px;padding:9px 18px;font:500 15px/20px var(--f-display);color:var(--ink-muted);background:transparent}
.gi .empty{background:#1e1913;border-radius:14px;color:var(--ink-muted)} .gi .empty b{color:var(--ink)}
.gi .nudge{background:#2b241c;border:1px solid rgba(244,187,70,.14);border-radius:16px} .gi .nudge p{color:var(--ink)}
.gi #map{border-radius:20px;border:1px solid #3a3226;background:#1e1913}
.gi .mapnote{font:400 13px/18px var(--f-body);color:var(--ink-muted)}
.gi .modal{background:rgba(20,17,13,.8)}
.gi .modal .box{background:#2b241c;border:1px solid rgba(244,187,70,.14);border-radius:20px;padding:28px;gap:14px;box-shadow:0 24px 48px -24px rgba(0,0,0,.7)}
.gi .modal h2{font:600 26px/32px var(--f-display);letter-spacing:0;color:var(--ink)} .gi .modal p{font:400 15px/24px var(--f-body);color:var(--ink-muted)}
.gi .modal .later{color:var(--ink-muted);font:400 14px/20px var(--f-body)}
@media (max-width:600px){.gi .step{padding:20px 16px 24px}.gi .card{padding:16px 18px}.gi .strip{position:static}}

.gi .leaflet-popup-content .mp + .mp{margin-top:10px;padding-top:10px;border-top:1px solid #3a3226}
.gi .leaflet-popup-content .mp div{color:#a89d8e;font-size:13px}

.gi .partners-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.gi #partnersBtn[aria-pressed="true"]{background:rgba(244,187,70,.10);border-color:rgba(244,187,70,.6);box-shadow:0 0 0 3px rgba(244,187,70,.12)}

/* ---------- phone (audit 2026-09-29): nothing in the deck may force the card wider than the screen ---------- */
.gi .step > * { min-width: 0; }
.gi .tabs { width: auto; max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
.gi .tabs button { flex: none; }
@media (max-width: 600px) {
  .gi .tabs button { padding: 8px 12px; font-size: 14px; }
  .gi .fields { grid-template-columns: 1fr 1fr; }
  .gi .fields .locbtn { grid-column: 1 / -1; }
  .gi .staterow { grid-template-columns: 1fr; }
  .gi .mapkey { justify-content: flex-start; }
  .gi .types-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .gi .morefilters { grid-template-columns: 1fr; }
  .gi .partners-row { align-items: flex-start; flex-direction: column; gap: 8px; }
  .gi .actions .btn.primary { flex: 1 1 100%; }
  .gi .card .top { flex-wrap: wrap; }
  .gi .badges { justify-content: flex-start; }
}

/* the porch-light card inside the results */
.gi .porch-card{background:linear-gradient(180deg,rgba(244,187,70,.10) 0%,#2b241c 60%);border-color:rgba(244,187,70,.5)}
.gi .porch-card__kicker{font:600 12px/16px var(--f-display);letter-spacing:.14em;color:var(--gold)}
.gi .porch-card .desc{font:400 18px/28px "Lora",Georgia,serif;color:var(--ink)}
.gi .porch-card__lamp{width:15px;height:21px;flex:none}
