/* ============================================================
   CorfuDiscovery  -  the archive's results map (Settings -> Map Settings)
   ============================================================ */
.cdf-results-map { margin: 0 0 26px; }
.cdf-results-map[hidden] { display: none; }
.cdf-results-map__canvas {
  position: relative; z-index: 0; isolation: isolate;
  height: clamp(320px, 52vh, 520px); border: 1px solid var(--line); border-radius: var(--r-lg);
  overflow: hidden; background: var(--sand-2); box-shadow: var(--shadow-sm);
}

/* the card in a pin's popup */
.cdf-results-map .cdf-map-popup .leaflet-popup-content-wrapper { padding: 0; border-radius: 16px; overflow: hidden; background: var(--tc-maps-ffffff,#fff); box-shadow: 0 14px 34px var(--tc-maps-0f2a3b38,rgba(15, 42, 59, .22)), 0 2px 6px var(--tc-maps-0f2a3b1a,rgba(15, 42, 59, .10)); }
.cdf-results-map .cdf-map-popup .leaflet-popup-content { margin: 0; width: 270px !important; line-height: 1.35; }
.cdf-results-map .cdf-map-popup .leaflet-popup-tip { background: var(--tc-maps-ffffff,#fff); box-shadow: 0 6px 12px var(--tc-maps-0f2a3b1f,rgba(15, 42, 59, .12)); }
.cdf-results-map .cdf-map-popup a.leaflet-popup-close-button {
  top: 8px; right: 8px; width: 28px; height: 28px; padding: 0; border-radius: 50%; background: var(--tc-maps-ffffffeb,rgba(255, 255, 255, .92));
  color: var(--tc-maps-14354d,#14354d); font: 400 20px/28px sans-serif; text-align: center; box-shadow: 0 1px 4px var(--tc-maps-0f2a3b40,rgba(15, 42, 59, .25)); transition: background .15s, color .15s;
}
.cdf-results-map .cdf-map-popup a.leaflet-popup-close-button:hover { background: var(--tc-maps-ffffff,#fff); color: var(--tc-maps-c93d28,#c93d28); }
.cdf-map-card { display: flex; flex-direction: column; }
.cdf-map-card__media { display: block; background: var(--sand-2, #f4efe6); }
.cdf-map-card img { width: 100%; height: 140px; object-fit: cover; display: block; }
.cdf-map-card__body { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; padding: 14px 16px 16px; }
.cdf-map-card--plain .cdf-map-card__body { padding-top: 18px; border-top: 4px solid var(--coral, #e8503a); padding-right: 44px; }
.cdf-results-map .cdf-map-popup .cdf-map-card__cat { color: var(--tc-maps-c93d28,#c93d28); font-size: 10.5px; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }
.cdf-results-map .cdf-map-popup a.cdf-map-card__title {
  color: var(--navy, #0f2a3b); font-family: var(--serif, Georgia, serif); font-size: 21px; font-weight: 500; letter-spacing: -.01em; line-height: 1.15; text-decoration: none;
}
.cdf-results-map .cdf-map-popup a.cdf-map-card__title:hover { color: var(--tc-maps-c93d28,#c93d28); }
.cdf-map-card__facts { display: flex; flex-direction: column; gap: 7px; width: 100%; margin: 2px 0 0; padding: 0; list-style: none; }
.cdf-map-card__facts li { display: flex; align-items: flex-start; gap: 9px; color: var(--tc-maps-3d4f5c,#3d4f5c); font-size: 13.5px; line-height: 1.35; }
.cdf-map-card__facts svg { flex: none; width: 16px; height: 16px; margin-top: 1px; fill: none; stroke: var(--tc-maps-e8503a,#e8503a); stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.cdf-map-card__facts span { min-width: 0; overflow-wrap: anywhere; }
.cdf-results-map .cdf-map-popup .cdf-map-card__facts a { color: var(--tc-maps-3d4f5c,#3d4f5c); text-decoration: none; }
.cdf-results-map .cdf-map-popup .cdf-map-card__facts a:hover { color: var(--tc-maps-c93d28,#c93d28); text-decoration: underline; }
.cdf-results-map .cdf-map-popup a.cdf-map-card__cta {
  display: inline-flex; align-items: center; gap: 6px; margin-top: 4px; padding: 9px 20px; border: 1.5px solid var(--tc-maps-e8503a,#e8503a); border-radius: 99px;
  background: var(--tc-maps-ffffff,#fff); color: var(--tc-maps-c93d28,#c93d28); font-size: 13.5px; font-weight: 700; text-decoration: none; transition: background .15s, color .15s;
}
.cdf-results-map .cdf-map-popup a.cdf-map-card__cta:hover, .cdf-results-map .cdf-map-popup a.cdf-map-card__cta:focus-visible { background: var(--tc-maps-e8503a,#e8503a); color: var(--tc-maps-ffffff,#fff); }

/* address suggestions under a field (address-suggest.js) */
.cdf-suggest { position: absolute; left: 0; right: 0; top: calc(100% + 4px); z-index: 30; margin: 0; padding: 4px; list-style: none; background: var(--tc-maps-ffffff,#fff); border: 1px solid var(--line-strong); border-radius: var(--r); box-shadow: var(--shadow); max-height: 260px; overflow-y: auto; }
.cdf-suggest[hidden] { display: none; }
.cdf-suggest li { padding: 9px 12px; border-radius: 8px; font-size: 14px; font-weight: 600; color: var(--ink); cursor: pointer; }
.cdf-suggest li:hover { background: var(--sand-2); color: var(--coral); }
.pac-container { z-index: 10000; }

/* clusters: Leaflet.markercluster's own classes, in the site's colours */
.marker-cluster { background-clip: padding-box; border-radius: 22px; }
.marker-cluster div { width: 30px; height: 30px; margin: 5px 0 0 5px; border-radius: 15px; text-align: center; color: var(--tc-maps-ffffff,#fff); font: 700 12px/30px var(--sans, sans-serif); }
.marker-cluster-small { background: var(--tc-maps-e8604c52,rgba(232, 96, 76, .32)); }
.marker-cluster-small div { background: var(--tc-maps-e8604cd9,rgba(232, 96, 76, .85)); }
.marker-cluster-medium { background: var(--tc-maps-d6473457,rgba(214, 71, 52, .34)); }
.marker-cluster-medium div { background: var(--tc-maps-d64734e0,rgba(214, 71, 52, .88)); }
.marker-cluster-large { background: var(--tc-maps-0f2a3b57,rgba(15, 42, 59, .34)); }
.marker-cluster-large div { background: var(--tc-maps-0f2a3be6,rgba(15, 42, 59, .9)); }
.leaflet-cluster-anim .leaflet-marker-icon, .leaflet-cluster-anim .leaflet-marker-shadow { transition: transform .3s ease-out, opacity .3s ease-in; }
.leaflet-cluster-spider-leg { transition: stroke-dashoffset .3s ease-out, stroke-opacity .3s ease-in; }

/* The bar above the results map: what it is, and the way to put it away. */
.cdf-results-map__bar { align-items: center; display: flex; justify-content: space-between; margin: 0 0 10px; }
.cdf-results-map__bar strong { color: var(--navy, #14354d); font-size: 15px; }
.cdf-results-map__close {
  align-items: center; background: var(--tc-maps-ffffff,#fff); border: 1px solid var(--tc-maps-d9d2c3,#d9d2c3); border-radius: 99px; color: var(--tc-maps-14354d,#14354d); cursor: pointer; display: inline-flex;
  font-size: 13px; font-weight: 700; gap: 6px; padding: 7px 14px; transition: border-color .15s, color .15s;
}
.cdf-results-map__close:hover, .cdf-results-map__close:focus-visible { border-color: var(--tc-maps-e8503a,#e8503a); color: var(--tc-maps-c93d28,#c93d28); }
