.wine-map-section{background:var(--cream);border-block:1px solid var(--line)}.wine-map-section .section-heading p{margin:12px 0 0;font-size:16px;color:var(--muted)}.wine-map-controls{display:grid;grid-template-columns:1fr 1fr 1.3fr auto;gap:16px;align-items:end;margin:24px 0}.wine-map-controls label{display:grid;gap:8px;font-size:14px;font-weight:600;color:var(--burgundy)}.wine-map-controls select,.wine-map-controls input{width:100%;min-width:0;min-height:46px;padding:10px 12px;border:1px solid var(--line);background:var(--paper);font:inherit}.wine-map-controls button{min-height:46px;padding:10px 16px;border:1px solid var(--burgundy);background:var(--paper);color:var(--burgundy)}.wine-map-layout{display:grid;grid-template-columns:minmax(0,2.4fr) minmax(250px,1fr);gap:24px;align-items:start}.wine-map-frame{position:relative;background:#e6eff1;border:1px solid #cdd8d9;overflow:hidden}.wine-map-svg{display:block;width:100%;aspect-ratio:800/520;overflow:hidden}.wine-map-marker{cursor:pointer}.wine-map-marker circle{fill:var(--burgundy);stroke:#fff;stroke-width:2;vector-effect:non-scaling-stroke}.wine-map-marker.is-selected circle,.wine-map-marker:hover circle,.wine-map-marker:focus circle{fill:var(--wine);stroke:var(--gold);stroke-width:3}.wine-map-marker text{fill:#fff;text-anchor:middle;font-family:var(--primary-font);font-weight:700;pointer-events:none}.wine-map-marker:focus-visible{outline:none}.wine-map-navigation{position:absolute;left:12px;bottom:12px;display:flex;gap:6px;flex-wrap:wrap;max-width:calc(100% - 24px)}.wine-map-navigation button{width:40px;height:40px;border:1px solid var(--line);background:var(--paper);color:var(--burgundy);font-size:22px;line-height:1}.wine-map-help,.wine-map-status{font-size:13px;line-height:1.6;color:var(--muted);margin:12px 0}.wine-map-sidebar{background:var(--paper);padding:24px;border:1px solid var(--line);min-width:0}.wine-map-sidebar h3{font:500 27px/1.25 var(--alt-font);margin-bottom:12px}.wine-map-sidebar p{font-size:14px;line-height:1.7;margin-bottom:14px}.wine-map-sidebar h4{font-size:14px;color:var(--burgundy);margin:20px 0 10px}.wine-map-open{display:inline-flex;align-items:center;min-height:44px;background:var(--burgundy);color:#fff;padding:10px 16px;font-size:14px;font-weight:600}.wine-map-grapes{list-style:none;display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:0 0 16px}.wine-map-grapes a{display:inline-flex;align-items:center;min-height:36px;border:1px solid var(--line);padding:5px 9px;font-size:12px;color:var(--burgundy)}.wine-map-coordinate-source{font-size:11px;color:var(--muted);text-decoration:underline}.wine-map-list-heading{margin:24px 0 12px!important;font-size:20px!important}.wine-map-region-list{list-style:none;padding:0;margin:0;max-height:245px;overflow:auto}.wine-map-region-list a{display:flex;gap:10px;align-items:center;min-height:44px;font-size:14px;border-bottom:1px solid var(--line);padding:6px 0}.wine-map-region-list a[aria-current]{color:var(--wine);font-weight:700}.wine-map-region-list span{font-size:11px;display:grid;place-items:center;background:var(--cream);border-radius:50%;width:22px;height:22px;flex:none}.wine-map-scope,.wine-map-credit{font-size:12px;color:var(--muted);line-height:1.7;margin:18px 0 0}.wine-map-credit{margin-top:6px}.wine-map-credit a{text-decoration:underline}.wine-map-fallback{margin-top:18px;font-size:14px}.wine-map-fallback summary{cursor:pointer;color:var(--burgundy)}.wine-map-fallback li{margin:10px 0}.wine-map-fallback a{text-decoration:underline}.wine-map-status button{margin-left:10px;min-width:44px;min-height:44px;border:1px solid var(--line);background:var(--paper);color:var(--burgundy)}
@media(max-width:900px){.wine-map-layout{grid-template-columns:1fr}.wine-map-controls{grid-template-columns:1fr 1fr}.wine-map-sidebar{display:grid;grid-template-columns:1fr 1fr;gap:16px}.wine-map-sidebar>[data-map-detail]{grid-row:1/3}.wine-map-list-heading{margin-top:0!important}.wine-map-region-list{max-height:330px}}
@media(max-width:560px){.wine-map-sidebar{display:block;padding:20px}.wine-map-list-heading{margin-top:24px!important}.wine-map-controls{gap:12px}.wine-map-controls label{font-size:12px}.wine-map-controls input,.wine-map-controls select{font-size:13px}.wine-map-controls button{font-size:13px}.wine-map-navigation{left:8px;bottom:8px;gap:4px}.wine-map-navigation button{width:34px;height:36px;font-size:19px}.wine-map-help{font-size:12px}}
