/* Bogotá Brews — interactive coffee region map. Uses the --bb-* tokens from the site CSS. */
.bb-map{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:48px;align-items:start;font-family:var(--bb-body,system-ui);color:var(--bb-ink,#2a1712)}
.bb-map-figure{margin:0;position:sticky;top:24px}
.bb-map-svg{display:block;width:100%;height:auto;max-height:640px;overflow:visible}
.bb-map-base path{fill:#efe7da;stroke:#fbf7f1;stroke-width:1.2;stroke-linejoin:round}
.bb-map-region path{fill:var(--bb-sage,#D7D9B1);stroke:#fbf7f1;stroke-width:1.2;stroke-linejoin:round;transition:fill .18s ease}
.bb-map-region{cursor:pointer;outline:none}
.bb-map-region:hover path{fill:#c6c995}
.bb-map-region.is-featured path{fill:#e8c9a1}
.bb-map-region.is-featured:hover path{fill:#e2b986}
.bb-map-region.is-active path{fill:var(--bb-maroon,#4a0a05)}
.bb-map-region:focus-visible path{stroke:var(--bb-gold,#f2a93b);stroke-width:3}
.bb-map-pin circle{fill:var(--bb-slate,#6A7B76);stroke:#fff;stroke-width:2;transition:transform .18s ease}
.bb-map-pin.is-featured circle{fill:var(--bb-gold,#f2a93b);stroke:var(--bb-maroon,#4a0a05)}
.bb-map-pin.is-active circle{fill:var(--bb-gold,#f2a93b);stroke:#fff;transform:scale(1.25)}
.bb-map-pins{pointer-events:none}
.bb-map-hint{font-family:var(--bb-data,monospace);font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;color:var(--bb-muted,#6f5a52);text-align:center;margin:12px 0 0!important}

.bb-map-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}
.bb-map-chip{cursor:pointer;font:500 .88rem var(--bb-body,system-ui);padding:8px 14px;border-radius:999px;border:1.5px solid #c9cbb0;background:var(--bb-surface,#fff);color:var(--bb-ink,#2a1712);line-height:1.2}
.bb-map .bb-map-chip:hover,.bb-map .bb-map-chip:focus{background:var(--bb-surface,#fff);color:var(--bb-ink,#2a1712);border-color:var(--bb-slate,#6A7B76)}
.bb-map-chip.is-featured{border-color:var(--bb-gold,#f2a93b)}
.bb-map .bb-map-chip[aria-selected="true"],.bb-map .bb-map-chip[aria-selected="true"]:hover,.bb-map .bb-map-chip[aria-selected="true"]:focus{background:var(--bb-maroon,#4a0a05);border-color:var(--bb-maroon,#4a0a05);color:var(--bb-on-band,#fff4e2)}
.bb-map-chip:focus-visible{outline:3px solid var(--bb-gold,#f2a93b);outline-offset:2px}

.bb-map-card{animation:bbMapIn .22s ease}
.bb-map-card[hidden]{display:none}
.bb-map-card .bb-spec-top{align-items:flex-start}
.bb-map-sub{margin:6px 0 0!important;font-family:var(--bb-data,monospace);font-size:.74rem;letter-spacing:.08em;color:var(--bb-on-band-muted,#e6c9a6)}
.bb-map-intro{margin:0!important;padding:18px 24px;color:var(--bb-muted,#6f5a52);border-bottom:1px solid var(--bb-line,#e7dccf);font-size:1rem}
@keyframes bbMapIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.bb-map-card{animation:none}.bb-map-region path,.bb-map-pin circle{transition:none}}

@media (max-width:900px){
  .bb-map{grid-template-columns:minmax(0,1fr);gap:24px}
  .bb-map-figure{position:static;max-width:420px;margin:0 auto;width:100%}
  .bb-map-svg{max-height:none}
}
