/* Trip map (Leaflet). Colors come from the site tokens in style.css. */
.trip-map { height: min(72vh, 680px); min-height: 360px; background: var(--tile-bg); z-index: 0; }
.trip-map-compact { height: min(55vh, 480px); }
.trip-map.leaflet-container { font-family: var(--sans); }
.trip-map .leaflet-control-attribution { font-size: 0.7rem; }
.trip-map .leaflet-interactive { cursor: pointer; }
.trip-map .leaflet-tooltip { font: 500 0.8rem/1.3 var(--sans); border-radius: 0; }
.trip-map .leaflet-popup-content-wrapper { border-radius: 0; }
.trip-map .leaflet-popup-content { margin: 0.75rem; }
.trip-popup ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 0.5rem; }
.trip-popup a { display: flex; align-items: center; gap: 0.7rem; color: #2f3233; text-decoration: none; }
.trip-popup a:hover strong { color: #3f7482; }
.trip-popup img { flex: none; width: 64px; height: 48px; object-fit: cover; background: #eef3f5; }
.trip-popup strong { display: block; font: 400 1rem/1.25 var(--serif); }
.trip-popup small { display: block; margin-top: 0.1rem; font-size: 0.78rem; color: #6b6f70; }
/* Softens bright OpenStreetMap tiles in dark mode (only used without a CARTO key) */
.trip-map-dim .leaflet-tile-pane { filter: brightness(0.75) contrast(1.05) saturate(0.8); }
.trip-popup-head { margin: 0 0 0.6rem; padding-bottom: 0.45rem; border-bottom: 2px solid var(--teal, #71a1af); font: 500 0.72rem/1 var(--sans); letter-spacing: 0.16em; text-transform: uppercase; color: #6b6f70; }
