@font-face {
  font-family: "Source Sans 3";
  src: url("fonts/SourceSans3-Regular.woff2") format("woff2");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "Source Sans 3";
  src: url("fonts/SourceSans3-Bold.woff2") format("woff2");
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}

@font-face {
  font-family: "Playfair Display";
  src: url("fonts/PlayfairDisplay-Regular.woff2") format("woff2");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

.ndkh-map-shell {
  --ndkh-primary: #460028;
  --ndkh-accent: #ffff00;
  --ndkh-secondary: #daccd4;
  --ndkh-surface: #ffffff;
  --ndkh-text: #460028;
  --ndkh-border: #daccd4;
  --ndkh-icon-filter: url("icons/filter.svg");
  --ndkh-icon-location: url("icons/location.svg");
  --ndkh-icon-time: url("icons/time.svg");
  --ndkh-icon-close: url("icons/close_x.svg");
  --ndkh-icon-close-colored: url("icons/close_x_colored.svg");
  --ndkh-icon-back: url("icons/btn_back.svg");
  --ndkh-icon-heart: url("icons/heart.svg");
  --ndkh-icon-heart-liked: url("icons/heart_liked.svg");
  --ndkh-font-primary-size: 24px;
  --ndkh-font-primary-weight: 300;
  --ndkh-font-secondary-size: 18px;
  --ndkh-font-secondary-weight: 400;
  --ndkh-font-text-size: 14px;
  --ndkh-font-text-small: 12px;
  --ndkh-font-text-weight: 400;
  --ndkh-font-primary-size-mobile: 21px;
  --ndkh-font-secondary-size-mobile: 16px;
  --ndkh-font-text-size-mobile: 13px;
  --ndkh-font-body: "Source Sans 3", "Helvetica Neue", Arial, sans-serif;
  --ndkh-font-display: "Playfair Display", Georgia, "Times New Roman", serif;
  --ndkh-detail-hero-height: 240px;
  --ndkh-detail-hero-image-position: 50% 50%;
  --ndkh-hero-action-inset-x: 12px;
  --ndkh-hero-action-inset-y: 12px;
  --ndkh-global-header-offset: 120px;
  /* Elementor-first layering: keep map UI in a local, low z-index range.
   * Order: map < dim < filters < panel < modal. */
  --ndkh-z-map: 0;
  --ndkh-z-dim: 10;
  --ndkh-z-filters: 20;
  --ndkh-z-panel: 30;
  --ndkh-z-modal: 40;
  --ndkh-z-panel-actions: 2;
  --ndkh-z-hero-actions: 4;
  --ndkh-z-sheet-head: 5;
  width: 100%;
  overflow-x: hidden;
  overflow-x: clip;
  font-family: var(--ndkh-font-body) !important;
}
.ndkh-map-shell button,
.ndkh-map-shell input,
.ndkh-map-shell select,
.ndkh-map-shell textarea {
  font-family: var(--ndkh-font-body);
}
.ndkh-map-shell button,
.ndkh-map-shell input[type="search"] {
  font-family: var(--ndkh-font-body) !important;
  font-size: inherit;
  line-height: normal;
}
.ndkh-map-shell .ndkh-filter-head__title,
.ndkh-map-shell .ndkh-detail-panel__headline,
.ndkh-map-shell .ndkh-detail-panel__list-title,
.ndkh-map-shell .ndkh-detail-panel__church-link,
.ndkh-map-shell .ndkh-detail-panel__event-name,
.ndkh-map-shell .ndkh-detail-panel__view-tab,
.ndkh-popup h3 {
  font-family: var(
    --ndkh-font-display,
    "Playfair Display",
    Georgia,
    "Times New Roman",
    serif
  ) !important;
}
.ndkh-popup {
  font-family: var(
    --ndkh-font-body,
    "Source Sans 3",
    "Helvetica Neue",
    Arial,
    sans-serif
  ) !important;
}
.ndkh-map {
  width: 100%;
}
.ndkh-map.ndkh-map--auto-size {
  height: 100%;
}
.ndkh-map--leaflet {
  position: relative;
  z-index: var(--ndkh-z-map);
}
.ndkh-map-content {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 12px;
  align-items: start;
  position: relative;
  isolation: isolate;
}
.ndkh-map-shell .ndkh-map-filters-host {
  position: absolute;
  top: 20px;
  bottom: 20px;
  left: 20px;
  width: min(560px, calc(100% - 20px));
  max-width: calc(100% - 20px);
  pointer-events: none;
}
.ndkh-map-content::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: var(--ndkh-z-dim);
  background: rgba(24, 12, 21, 0.28);
  border-radius: 10px;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease;
}
.ndkh-map-shell .ndkh-filter-shell {
  margin: 0;
  width: 100%;
  height: 100%;
  max-height: 100%;
  min-height: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  pointer-events: none;
}
.ndkh-map-shell .ndkh-filter-controls {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  flex-shrink: 0;
  gap: 10px;
  pointer-events: auto;
}
.ndkh-map-shell .ndkh-filter-secondary-controls {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-shrink: 0;
  pointer-events: auto;
}
.ndkh-map-shell .ndkh-active-filters {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 0;
  overflow-x: auto;
  overflow-y: hidden;
  padding: 0 2px 2px 0;
  white-space: nowrap;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  pointer-events: auto;
}
.ndkh-map-shell .ndkh-active-filters::-webkit-scrollbar {
  display: none;
}
.ndkh-map-shell .ndkh-active-filter-chip {
  border: 1px solid var(--ndkh-primary) !important;
  border-radius: 9999px !important;
  background: var(--ndkh-primary) !important;
  color: var(--ndkh-surface) !important;
  min-height: 40px !important;
  padding: 8px 12px !important;
  font-size: var(--ndkh-font-text-size) !important;
  font-weight: var(--ndkh-font-secondary-weight);
  line-height: 1.2 !important;
  display: inline-flex !important;
  align-items: center;
  gap: 8px;
  white-space: nowrap;
  cursor: pointer;
  text-transform: uppercase !important;
}
.ndkh-map-shell .ndkh-active-filter-chip__text {
  display: inline-block;
}
.ndkh-map-shell .ndkh-active-filter-chip__close {
  width: 12px;
  height: 12px;
  display: inline-block;
  flex: 0 0 12px;
  background-image: var(--ndkh-icon-close);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  opacity: 0.9;
}
.ndkh-map-shell .ndkh-filter-toggle {
  flex: 0 0 auto;
  width: auto;
  max-width: 100%;
  border: 0;
  border-radius: 9999px !important;
  background: var(--ndkh-primary) !important;
  color: var(--ndkh-surface) !important;
  min-height: 48px !important;
  padding: 10px 16px !important;
  font-size: var(--ndkh-font-text-small) !important;
  font-weight: var(--ndkh-font-secondary-weight);
  line-height: 1.2 !important;
  letter-spacing: 0.03em;
  text-transform: uppercase !important;
  cursor: pointer;
  display: flex !important;
  align-items: center;
  justify-content: center;
  gap: 10px;
  box-shadow: 0 8px 18px rgba(70, 0, 40, 0.24) !important;
  transition:
    background 0.2s ease,
    transform 0.12s ease;
  white-space: nowrap;
  pointer-events: auto;
}
.ndkh-map-shell .ndkh-filter-toggle.ndkh-filter-toggle--compact {
  min-width: 48px;
  padding: 10px !important;
}
.ndkh-map-shell .ndkh-filter-toggle::before {
  content: "";
  width: 20px;
  height: 10px;
  display: inline-block;
  background-image: var(--ndkh-icon-filter);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  opacity: 0.95;
}
.ndkh-map-shell .ndkh-filter-toggle[hidden] {
  display: none !important;
}
.ndkh-map-shell .ndkh-filter-favorites-toggle {
  width: auto;
  max-width: 100%;
  border: 0;
  border-radius: 9999px !important;
  background: var(--ndkh-secondary) !important;
  color: var(--ndkh-primary) !important;
  min-height: 48px !important;
  padding: 10px 16px !important;
  font-size: var(--ndkh-font-text-small) !important;
  font-weight: var(--ndkh-font-secondary-weight);
  line-height: 1.2 !important;
  letter-spacing: 0.03em;
  text-transform: uppercase !important;
  cursor: pointer;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 8px;
  box-shadow: 0 6px 16px rgba(70, 0, 40, 0.18) !important;
  pointer-events: auto;
}
.ndkh-map-shell .ndkh-filter-favorites-toggle.is-active {
  background: var(--ndkh-primary) !important;

  color: var(--ndkh-surface) !important;
}
.ndkh-map-shell .ndkh-filter-favorites-toggle::before {
  content: "";
  width: 18px;
  height: 18px;
  display: inline-block;
  background-image: var(--ndkh-icon-heart);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
.ndkh-map-shell .ndkh-filter-favorites-toggle.is-active::before {
  background-image: var(--ndkh-icon-heart-liked);
}
.ndkh-map-shell .ndkh-filter-panel[hidden] {
  display: none !important;
}
.ndkh-map-shell .ndkh-filter-panel {
  width: 100%;
  max-width: none;
  flex: 1 1 auto;
  min-height: 0;
  max-height: 100%;
  display: flex;
  flex-direction: column;
  border-radius: 18px !important;
  background: var(--ndkh-primary) !important;
  box-shadow: 0 14px 36px rgba(56, 0, 34, 0.38) !important;
  overflow: hidden;
  opacity: 0;
  transform: translateY(-4px);
  pointer-events: none;
  will-change: opacity, transform;
  transition:
    opacity 0.16s ease-out,
    transform 0.18s ease-out;
}
.ndkh-map-shell .ndkh-filter-panel.ndkh-filter-panel--open {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}
.ndkh-map-shell .ndkh-filters {
  margin: 0;
  height: 100%;
  min-height: 0;
  padding: 14px;
  display: grid;
  grid-template-rows: auto auto auto minmax(0, 1fr) auto;
  gap: 0;
  flex: 1 1 auto;
  border: 0;
  border-radius: 18px !important;
  color: var(--ndkh-secondary) !important;
}
.ndkh-map-shell .ndkh-filter-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 8px;
}
.ndkh-map-shell .ndkh-filter-head__title {
  margin: 0;
  font-size: var(--ndkh-font-secondary-size);
  line-height: 1.05 !important;
  letter-spacing: 0.01em;
  color: var(--ndkh-surface) !important;
  font-weight: var(--ndkh-font-primary-weight);
}
.ndkh-map-shell .ndkh-filter-head__close {
  border: 0 !important;
  background: transparent !important;
  color: var(--ndkh-secondary) !important;
  font-size: 0 !important;
  line-height: 0 !important;
  width: 34px !important;
  height: 34px !important;
  min-height: 34px !important;
  cursor: pointer;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  font-weight: var(--ndkh-font-text-weight);
  padding: 0 !important;
  box-shadow: none !important;
  text-transform: none !important;
}
.ndkh-map-shell .ndkh-filter-head__close::before {
  content: "";
  width: 16px;
  height: 16px;
  display: block;
  background-image: var(--ndkh-icon-close);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
.ndkh-map-shell .ndkh-filter-head__close:hover,
.ndkh-map-shell .ndkh-filter-head__close:focus-visible {
  background: rgba(255, 255, 255, 0.12) !important;
  color: var(--ndkh-secondary) !important;
}
.ndkh-map-shell .ndkh-search {
  width: 100%;
  max-width: none;
  padding: 10px 14px !important;
  border-radius: 8px !important;
  margin-bottom: 12px;
  background: var(--ndkh-primary) !important;
  color: var(--ndkh-surface) !important;
  font-size: var(--ndkh-font-text-size) !important;
  font-weight: var(--ndkh-font-secondary-weight);
  line-height: 1.25 !important;
  box-shadow: none !important;
  text-transform: none !important;
}
.ndkh-map-shell input.ndkh-search[type="search"] {
  border-radius: 8px !important;
  -webkit-appearance: none;
  appearance: none;
  min-height: 0 !important;
}
.ndkh-map-shell .ndkh-search::placeholder {
  color: var(--ndkh-secondary) !important;
  font-size: var(--ndkh-font-text-size);
  letter-spacing: 0.02em;
  font-family: var(--ndkh-font-body);
  font-weight: var(--ndkh-font-text-weight);
}
.ndkh-map-shell .ndkh-filter-subhead {
  margin: 0 0 10px;
  color: var(--ndkh-surface) !important;
  font-size: var(--ndkh-font-secondary-size);
  font-weight: var(--ndkh-font-secondary-weight);
  line-height: 1.15 !important;
}
.ndkh-map-shell .ndkh-groups {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
  min-height: 0;
  overflow-y: auto;
  overflow-x: hidden;
  overscroll-behavior: contain;
  padding-right: 2px;
}
.ndkh-map-shell .ndkh-group {
  padding: 12px;
  border: 0;
  border-radius: 12px !important;
  background: #5e153c !important;
}
.ndkh-map-shell .ndkh-group-title {
  font-weight: var(--ndkh-font-primary-weight);
  margin-bottom: 8px;
  font-size: var(--ndkh-font-text-small);
  line-height: 1.1 !important;
  color: var(--ndkh-surface) !important;
}
.ndkh-map-shell .ndkh-check {
  display: inline-flex;
  align-items: center;
  margin: 0 6px 6px 0;
  cursor: pointer;
  background: transparent !important;
}
.ndkh-map-shell .ndkh-check input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.ndkh-map-shell .ndkh-check span {
  display: inline-flex !important;
  align-items: center;
  min-height: 30px !important;
  padding: 0 12px !important;
  border: 1px solid var(--ndkh-border) !important;
  border-radius: 999px !important;
  color: var(--ndkh-surface) !important;
  font-size: var(--ndkh-font-text-small) !important;
  font-weight: var(--ndkh-font-text-weight);
  line-height: 1.2 !important;
  letter-spacing: 0.04em;
  text-transform: uppercase !important;
  transition:
    background 0.15s ease,
    border-color 0.15s ease,
    color 0.15s ease;
  box-shadow: none !important;
}
.ndkh-map-shell .ndkh-check input:checked + span {
  background: var(--ndkh-accent) !important;
  border-color: var(--ndkh-accent) !important;
  color: var(--ndkh-primary) !important;
}
.ndkh-map-shell .ndkh-actions {
  margin-top: 12px;
  display: grid;
  gap: 12px;
  justify-items: center;
  width: 100%;
  position: sticky;
  bottom: 0;
  background: var(--ndkh-primary) !important;
  z-index: var(--ndkh-z-panel-actions);
}
.ndkh-map-shell .ndkh-btn {
  padding: 8px 12px !important;
  border-radius: 999px !important;
  background: transparent;
  color: inherit;
  cursor: pointer;
  font: inherit;
  line-height: 1.2 !important;
  text-transform: none !important;
}
.ndkh-map-shell .ndkh-btn--apply {
  width: 100%;
  padding: 10px 18px !important;
  border: 0 !important;
  background: var(--ndkh-accent) !important;
  color: var(--ndkh-primary) !important;
  display: flex !important;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 2px;
}
.ndkh-map-shell .ndkh-btn--apply-main {
  display: block;
  font-size: var(--ndkh-font-text-small);
  line-height: 1 !important;
  letter-spacing: 0.01em;
  font-weight: var(--ndkh-font-primary-weight);
}
.ndkh-map-shell .ndkh-btn--apply-sub {
  display: block;
  font-size: var(--ndkh-font-text-size);
  line-height: 1.1 !important;
  letter-spacing: 0.07em;
  text-transform: uppercase !important;
  font-weight: var(--ndkh-font-text-weight);
}
.ndkh-map-shell .ndkh-btn--reset {
  border: 0 !important;
  background: transparent !important;
  color: var(--ndkh-surface) !important;
  font-size: var(--ndkh-font-text-small) !important;
  line-height: 1.1 !important;
  padding: 2px 8px !important;
  min-height: 0 !important;
  font-weight: var(--ndkh-font-primary-weight);
  box-shadow: none !important;
}
.ndkh-map-shell .ndkh-btn--apply:hover,
.ndkh-map-shell .ndkh-btn--apply:focus-visible,
.ndkh-map-shell .ndkh-btn--apply:active {
  background: var(--ndkh-accent) !important;
  color: var(--ndkh-primary) !important;
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.18) !important;
  transform: none !important;
}
.ndkh-map-shell .ndkh-btn--reset:hover,
.ndkh-map-shell .ndkh-btn--reset:focus-visible,
.ndkh-map-shell .ndkh-btn--reset:active {
  background: transparent !important;
  color: var(--ndkh-surface) !important;
}
.ndkh-popup-fixed .leaflet-popup-content-wrapper {
  padding: 0;
  border-radius: 10px;
  overflow: hidden;
}
.ndkh-popup-fixed .leaflet-popup-content {
  margin: 0;
  width: 320px !important;
  max-height: min(70vh, 520px);
  overflow-y: auto;
  overflow-x: hidden;
}
.ndkh-map-shell .ndkh-detail-panel__close,
.leaflet-container .leaflet-popup.ndkh-popup-fixed .leaflet-popup-close-button {
  position: absolute;
  top: 12px;
  right: 12px;
  width: 32px;
  height: 32px;
  border: 0;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.92);
  color: #410004;
  font-size: 0;
  line-height: 0;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  margin: 0;
  text-align: center;
  text-decoration: none;
  box-sizing: border-box;
  box-shadow: 0 6px 14px rgba(0, 0, 0, 0.18) !important;
  transition:
    background 0.18s ease,
    color 0.18s ease;
}
.ndkh-map-shell .ndkh-detail-panel__close::before,
.leaflet-container
  .leaflet-popup.ndkh-popup-fixed
  .leaflet-popup-close-button::before {
  content: "";
  width: 16px;
  height: 16px;
  display: block;
  background-image: var(--ndkh-icon-close-colored);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
.leaflet-container .leaflet-popup.ndkh-popup-fixed .leaflet-popup-close-button {
  top: 12px !important;
  right: 12px !important;
  width: 32px !important;
  height: 32px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.92) !important;
  color: #410004 !important;
  font-size: 0 !important;
  line-height: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  margin: 0 !important;
  text-decoration: none !important;
  transition:
    background 0.18s ease,
    color 0.18s ease !important;
}
.ndkh-map-shell .ndkh-detail-panel__close:hover,
.ndkh-map-shell .ndkh-detail-panel__close:focus-visible,
.leaflet-container
  .leaflet-popup.ndkh-popup-fixed
  .leaflet-popup-close-button:hover,
.leaflet-container
  .leaflet-popup.ndkh-popup-fixed
  .leaflet-popup-close-button:focus-visible {
  background: var(--ndkh-primary) !important;
  color: var(--ndkh-surface) !important;
}
.ndkh-map-shell .ndkh-detail-panel__close:hover::before,
.ndkh-map-shell .ndkh-detail-panel__close:focus-visible::before,
.leaflet-container
  .leaflet-popup.ndkh-popup-fixed
  .leaflet-popup-close-button:hover::before,
.leaflet-container
  .leaflet-popup.ndkh-popup-fixed
  .leaflet-popup-close-button:focus-visible::before {
  background-image: var(--ndkh-icon-close);
}
.ndkh-popup {
  width: 320px;
  min-height: 264px;
  box-sizing: border-box;
  overflow: visible;
  display: flex;
  flex-direction: column;
  background: var(--ndkh-surface);
}
.ndkh-popup .ndkh-image {
  margin: 0;
}
.ndkh-popup .ndkh-image img {
  width: 100%;
  height: 160px;
  object-fit: cover;
  border: 0;
  border-radius: 0;
  outline: none;
  display: block;
  box-shadow: none;
}
.ndkh-popup h3 {
  margin: 10px 12px 4px;
  font-size: var(--ndkh-font-primary-size);
  line-height: 1.1;
  font-weight: var(--ndkh-font-primary-weight);
  color: var(--ndkh-primary);
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.ndkh-popup .ndkh-sub {
  margin: 0 12px 8px;
  font-size: var(--ndkh-font-text-size);
  line-height: 1.35;
  font-weight: var(--ndkh-font-text-weight);
  color: var(--ndkh-text);
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.ndkh-popup .ndkh-detail-panel__hvv {
  margin: 4px 12px 12px;
  padding-top: 0;
}
.ndkh-popup .ndkh-events {
  margin-top: 8px;
}
.ndkh-popup .ndkh-events ul {
  padding-left: 18px;
  margin: 6px 0 0;
}
.ndkh-popup .ndkh-ev-name {
  font-weight: 600;
}
.ndkh-popup .ndkh-ev-time {
  font-size: var(--ndkh-font-text-size);
  color: var(--ndkh-text);
  font-weight: var(--ndkh-font-text-weight);
}
.ndkh-popup .ndkh-ev-desc {
  font-size: var(--ndkh-font-text-size);
  color: var(--ndkh-text);
  font-weight: var(--ndkh-font-text-weight);
}
.ndkh-map-shell .ndkh-detail-panel {
  position: absolute;
  top: 20px;
  right: 20px;
  bottom: 20px;
  width: clamp(340px, 36vw, 480px);
  z-index: var(--ndkh-z-panel);
  border-radius: 10px !important;
  background: var(--ndkh-surface) !important;
  box-sizing: border-box;
  min-height: 220px !important;
  overflow-x: hidden;
  overflow-y: auto;
  transform: translateX(0);
  opacity: 1;
  pointer-events: auto;
  transition:
    transform 0.22s ease,
    opacity 0.22s ease;
  display: flex !important;
  flex-direction: column;
  color: var(--ndkh-text) !important;
}
.ndkh-map-shell.ndkh-map-shell--has-selection .ndkh-detail-panel {
  transform: translateX(0);
  opacity: 1;
  pointer-events: auto;
}
.ndkh-map-shell .ndkh-detail-panel__hero {
  position: relative;
  height: var(--ndkh-detail-hero-height);
  min-height: var(--ndkh-detail-hero-height);
  background: var(--ndkh-secondary) !important;
  overflow: hidden;
}
.ndkh-map-shell .ndkh-detail-panel__hero-media {
  position: absolute;
  inset: 0;
}
.ndkh-map-shell .ndkh-detail-panel__hero-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: var(--ndkh-detail-hero-image-position);
  display: block;
  border-radius: 0 !important;
  box-shadow: none !important;
}
.ndkh-map-shell .ndkh-detail-panel__hero-actions {
  position: absolute;
  inset: 0;
  z-index: var(--ndkh-z-hero-actions);
  pointer-events: none;
}
.ndkh-map-shell .ndkh-detail-panel__hero .ndkh-detail-panel__close {
  top: max(var(--ndkh-hero-action-inset-y), env(safe-area-inset-top, 0px));
  right: max(var(--ndkh-hero-action-inset-x), env(safe-area-inset-right, 0px));
  transform: none !important;
  pointer-events: auto;
}
.ndkh-map-shell .ndkh-detail-panel__hero .ndkh-favorite-btn {
  right: max(var(--ndkh-hero-action-inset-x), env(safe-area-inset-right, 0px));
  bottom: max(
    var(--ndkh-hero-action-inset-y),
    env(safe-area-inset-bottom, 0px)
  );
  z-index: var(--ndkh-z-hero-actions);
  transform: none !important;
  pointer-events: auto;
}
.ndkh-map-shell .ndkh-detail-panel__top-actions {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 8px;
}
.ndkh-map-shell .ndkh-detail-panel__close.ndkh-detail-panel__close--inline {
  position: static;
}
.ndkh-map-shell .ndkh-detail-panel__body {
  padding: 22px !important;
  overflow: visible;
  display: grid !important;
  gap: 12px;
}
.ndkh-map-shell .ndkh-detail-panel__body--list {
  align-content: start;
  grid-auto-rows: min-content;
}
.ndkh-map-shell .ndkh-detail-panel__sheet-head {
  display: grid;
  gap: 10px;
}
.ndkh-map-shell .ndkh-detail-panel__sheet-head--detail {
  display: none;
}
.ndkh-map-shell .ndkh-detail-panel__sheet-handle {
  display: none;
  justify-content: center;
  align-items: center;
  min-height: 14px;
  border: 0 !important;
  background: transparent !important;
  margin: 0 auto;
  padding: 0 !important;
  width: 100%;
  cursor: grab;
}
.ndkh-map-shell .ndkh-detail-panel__sheet-handle:active {
  cursor: grabbing;
}
.ndkh-map-shell .ndkh-detail-panel__sheet-handle span {
  display: block;
  width: 44px;
  height: 4px;
  border-radius: 999px;
  background: var(--ndkh-border);
}
.ndkh-map-shell .ndkh-detail-panel__list-content {
  display: grid;
  gap: 12px;
}
.ndkh-map-shell .ndkh-detail-panel__view-tabs {
  display: flex;
  align-items: center;
  gap: 12px;
  padding-bottom: 10px;
  margin-bottom: 4px;
}
.ndkh-map-shell .ndkh-detail-panel__view-tab {
  border: 0 !important;
  border-radius: 0px !important;
  background: transparent !important;
  color: var(--ndkh-primary) !important;
  font-size: var(--ndkh-font-secondary-size) !important;
  line-height: 1.1 !important;
  font-weight: var(--ndkh-font-secondary-weight);
  padding: 0 0 6px !important;
  border-bottom: 3px solid transparent !important;
  cursor: pointer;
  text-align: left;
}
.ndkh-map-shell .ndkh-detail-panel__view-tab--mobile-only {
  display: none !important;
}
.ndkh-map-shell .ndkh-detail-panel__view-tab--mobile-only::before {
  content: "";
  width: 18px;
  height: 18px;
  display: inline-block;
  background-image: var(--ndkh-icon-heart);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
.ndkh-map-shell .ndkh-detail-panel__view-tab--mobile-only.is-active::before {
  background-image: var(--ndkh-icon-heart-liked);
}
.ndkh-map-shell .ndkh-detail-panel__view-tab:hover,
.ndkh-map-shell .ndkh-detail-panel__view-tab:focus-visible {
  color: var(--ndkh-primary) !important;
}
.ndkh-map-shell .ndkh-detail-panel__view-tab.is-active {
  border-bottom-color: var(--ndkh-primary) !important;
}
.ndkh-map-shell .ndkh-detail-panel__list {
  display: grid;
  gap: 22px;
}
.ndkh-map-shell .ndkh-detail-panel__list-card {
  border: 1px solid var(--ndkh-border);
  border-radius: 20px 0 20px 0 !important;
  background: var(--ndkh-secondary);
  overflow: hidden;
  min-width: 0;
}
.ndkh-map-shell .ndkh-detail-panel__list-card--event {
  position: relative;
}
.ndkh-map-shell .ndkh-detail-panel__list-card--event-highlight {
  border: 0;
  border-radius: 0;
  background: transparent;
  overflow: visible;
}
.ndkh-map-shell
  .ndkh-detail-panel__list-card--event-highlight
  .ndkh-detail-panel__list-link {
  border-top: 0 !important;
  padding-top: 8px !important;
  padding-left: 0 !important;
}
.ndkh-map-shell .ndkh-detail-panel__list-item {
  width: 100%;
  border: 0 !important;
  background: transparent !important;
  text-align: left;
  display: grid;
  gap: 8px;
  padding: 16px !important;
  color: var(--ndkh-text) !important;
  cursor: pointer;
  min-width: 0;
}
.ndkh-map-shell .ndkh-detail-panel__list-title {
  margin: 0 !important;
  color: var(--ndkh-primary) !important;
  font-size: var(--ndkh-font-secondary-size) !important;
  line-height: 1.15 !important;
  font-weight: var(--ndkh-font-secondary-weight);
  overflow-wrap: anywhere;
  word-break: break-word;
  white-space: normal;
}
.ndkh-map-shell .ndkh-detail-panel__list-text {
  margin: 0 !important;
  color: var(--ndkh-text) !important;
  font-size: var(--ndkh-font-text-size) !important;
  line-height: 1.35 !important;
  overflow-wrap: anywhere;
  word-break: break-word;
  white-space: normal;
}
.ndkh-map-shell .ndkh-detail-panel__list-link {
  width: 100%;
  border: 0 !important;
  border-top: 1px solid var(--ndkh-border) !important;
  background: transparent !important;
  color: var(--ndkh-primary) !important;
  padding: 10px 58px 10px 16px !important;
  text-align: left;
  font-size: var(--ndkh-font-text-size) !important;
  line-height: 1.3 !important;
  cursor: pointer;
  min-width: 0;
  overflow-wrap: anywhere;
  word-break: break-word;
  white-space: normal;
}
.ndkh-map-shell .ndkh-detail-panel__list-count {
  margin: 0 !important;
  color: var(--ndkh-primary) !important;
  font-size: var(--ndkh-font-text-small) !important;
  line-height: 1.2 !important;
  text-transform: uppercase;
}
.ndkh-map-shell .ndkh-detail-panel__back {
  border: 0 !important;
  background: transparent !important;
  color: var(--ndkh-primary) !important;
  font-size: var(--ndkh-font-text-small) !important;
  line-height: 1.2 !important;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  padding: 0 !important;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  justify-self: start;
  cursor: pointer;
}
.ndkh-map-shell .ndkh-detail-panel__back::before {
  content: "";
  width: 14px;
  height: 14px;
  display: inline-block;
  background-image: var(--ndkh-icon-back);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  flex: 0 0 14px;
  transform: translateY(-1px);
}
.ndkh-map-shell .ndkh-detail-panel__meta-label {
  margin: 0 !important;
  color: var(--ndkh-text) !important;
  font-size: var(--ndkh-font-text-small) !important;
  line-height: 1.2 !important;
  text-transform: uppercase;
}
.ndkh-map-shell .ndkh-detail-panel__church-link {
  margin: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--ndkh-primary) !important;
  font-size: var(--ndkh-font-secondary-size) !important;
  line-height: 1.1 !important;
  font-weight: var(--ndkh-font-secondary-weight);
  padding: 0 !important;
  text-align: left;
  justify-self: start;
  text-decoration: underline !important;
  cursor: pointer;
}
.ndkh-map-shell .ndkh-detail-panel__headline {
  margin: 0 !important;
  font-size: var(--ndkh-font-primary-size) !important;
  line-height: 1.1 !important;
  font-weight: var(--ndkh-font-primary-weight);
  color: var(--ndkh-primary) !important;
}
.ndkh-map-shell .ndkh-detail-panel__address {
  margin: 0 !important;
  display: flex !important;
  align-items: flex-start;
  gap: 8px;
  color: var(--ndkh-text) !important;
  font-size: var(--ndkh-font-text-size) !important;
  font-weight: var(--ndkh-font-text-weight);
  line-height: 1.35 !important;
}
.ndkh-map-shell .ndkh-detail-panel__address--link {
  border: 0 !important;
  background: transparent !important;
  padding: 0 !important;
  cursor: pointer;
  text-align: left;
  margin-bottom: 12px !important;
}
.ndkh-map-shell .ndkh-detail-panel__address-icon {
  width: 18px !important;
  height: 18px !important;
  flex: 0 0 18px;
  background-image: var(--ndkh-icon-location);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  margin-top: 1px;
}
.ndkh-map-shell .ndkh-detail-panel__address-text {
  display: grid !important;
  gap: 1px;
}
.ndkh-map-shell .ndkh-detail-panel__address-line {
  display: block;
  margin: 0 !important;
}
.ndkh-map-shell .ndkh-detail-panel__tabs {
  display: flex !important;
  flex-wrap: wrap;
  gap: 6px;
  margin: 18px 0 !important;
}
.ndkh-map-shell .ndkh-detail-panel__tab {
  display: inline-flex !important;
  align-items: center;
  min-height: 26px !important;
  border-radius: 999px !important;
  padding: 0 10px !important;
  background: transparent !important;
  border: 1px solid var(--ndkh-primary) !important;
  color: var(--ndkh-primary) !important;
  font-size: var(--ndkh-font-text-small) !important;
  line-height: 1 !important;
  font-weight: var(--ndkh-font-text-weight);
  text-transform: uppercase !important;
}
.ndkh-map-shell .ndkh-detail-panel__program-title {
  margin: 0 !important;
  font-size: var(--ndkh-font-text-small) !important;
  font-weight: var(--ndkh-font-secondary-weight);
  color: var(--ndkh-text) !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
}
.ndkh-map-shell .ndkh-detail-panel__events {
  display: grid !important;
  gap: 18px;
}
.ndkh-map-shell .ndkh-detail-panel__event-card {
  background: var(--ndkh-secondary) !important;
  border-radius: 20px 0 20px 0 !important;
  padding: 22px 58px 22px 22px !important;
  box-shadow: none !important;
  position: relative;
  transition:
    opacity 0.18s ease,
    transform 0.18s ease;
}
.ndkh-map-shell .ndkh-detail-panel__event-card.ndkh-favorite-leaving {
  opacity: 0;
  transform: translateY(-6px) scale(0.985);
}
.ndkh-map-shell .ndkh-detail-panel__event-card--interactive {
  cursor: pointer;
}
.ndkh-map-shell .ndkh-detail-panel__event-card--interactive:hover,
.ndkh-map-shell .ndkh-detail-panel__event-card--interactive:focus-visible {
  box-shadow: none !important;
  outline: none !important;
}
.ndkh-map-shell .ndkh-detail-panel__event-card--top {
  background: transparent !important;
  border-radius: 0 !important;
  padding: 0px !important;
}
.ndkh-map-shell .ndkh-detail-panel__event-image-wrap {
  margin: 0 0 14px !important;
  position: relative;
}
.ndkh-map-shell
  .ndkh-detail-panel__event-card--top
  .ndkh-detail-panel__event-image-wrap {
  margin: 0 0 12px !important;
}
.ndkh-map-shell .ndkh-detail-panel__event-image {
  display: block !important;
  width: 100% !important;
  max-height: 220px;
  object-fit: cover;
  border-radius: 12px !important;
}
.ndkh-map-shell
  .ndkh-detail-panel__event-card--top
  .ndkh-detail-panel__event-image {
  border-radius: 20px 0px !important;
}
.ndkh-map-shell .ndkh-detail-panel__event-name {
  margin: 0 0 10px !important;
  font-size: var(--ndkh-font-secondary-size) !important;
  line-height: 1.1 !important;
  font-weight: var(--ndkh-font-secondary-weight);
  color: var(--ndkh-primary) !important;
}
.ndkh-map-shell .ndkh-detail-panel__event-short {
  margin: 0 0 12px !important;
  font-size: var(--ndkh-font-text-size) !important;
  line-height: 1.35 !important;
  font-weight: var(--ndkh-font-text-weight);
}
.ndkh-map-shell .ndkh-detail-panel__event-time {
  margin: 0 !important;
  display: inline-flex !important;
  align-items: center;
  gap: 6px;
  font-size: var(--ndkh-font-text-size) !important;
  line-height: 1.2 !important;
  font-weight: var(--ndkh-font-text-weight);
  color: var(--ndkh-text) !important;
}
.ndkh-map-shell
  .ndkh-detail-panel__event-card:not(.ndkh-detail-panel__event-card--top)
  .ndkh-detail-panel__event-short,
.ndkh-map-shell
  .ndkh-detail-panel__event-card:not(.ndkh-detail-panel__event-card--top)
  .ndkh-detail-panel__event-time,
.ndkh-map-shell
  .ndkh-detail-panel__event-card:not(.ndkh-detail-panel__event-card--top)
  .ndkh-detail-panel__address {
  color: color-mix(in srgb, var(--ndkh-text) 50%, transparent) !important;
}
.ndkh-map-shell
  .ndkh-detail-panel__event-card:not(.ndkh-detail-panel__event-card--top)
  .ndkh-detail-panel__time-icon,
.ndkh-map-shell
  .ndkh-detail-panel__event-card:not(.ndkh-detail-panel__event-card--top)
  .ndkh-detail-panel__address-icon {
  opacity: 0.5 !important;
}
.ndkh-map-shell .ndkh-detail-panel__time-icon {
  width: 18px !important;
  height: 18px !important;
  flex: 0 0 18px;
  background-image: var(--ndkh-icon-time);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
.ndkh-map-shell .ndkh-detail-panel__event-time-line {
  white-space: nowrap;
}
.ndkh-map-shell .ndkh-detail-panel__event-time-label {
  color: #410004 !important;
  font-weight: 600;
}
.ndkh-map-shell .ndkh-favorite-btn {
  position: absolute;
  right: 14px;
  bottom: 14px;
  width: 32px !important;
  height: 32px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: var(--ndkh-surface) !important;
  box-shadow: 0 6px 14px rgba(0, 0, 0, 0.18) !important;
  padding: 0 !important;
  margin: 0 !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.ndkh-map-shell .ndkh-favorite-btn::before {
  content: "";
  width: 18px;
  height: 18px;
  display: block;
  background-image: url("icons/heart.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
.ndkh-map-shell .ndkh-favorite-btn.is-active::before {
  background-image: url("icons/heart_filled.svg");
}
.ndkh-map-shell
  .ndkh-detail-panel__event-card--top
  .ndkh-detail-panel__event-image-wrap
  .ndkh-favorite-btn {
  right: 12px;
  bottom: 12px;
}
.ndkh-map-shell .ndkh-favorite-btn:hover,
.ndkh-map-shell .ndkh-favorite-btn:focus-visible {
  transform: none;
}
.ndkh-map-shell .ndkh-favorite-btn:hover::before,
.ndkh-map-shell .ndkh-favorite-btn:focus-visible::before {
  background-image: url("icons/heart_filled.svg");
}
.ndkh-map-shell .ndkh-favorite-btn.ndkh-favorite-btn--inline {
  position: static;
  right: auto;
  bottom: auto;
}
.ndkh-map-shell .ndkh-detail-panel__empty,
.ndkh-map-shell .ndkh-detail-panel__no-events {
  margin: 0 !important;
  color: var(--ndkh-text) !important;
  font-size: var(--ndkh-font-text-size) !important;
  line-height: 1.35 !important;
  font-weight: var(--ndkh-font-text-weight);
}
.ndkh-map-shell .ndkh-detail-panel__empty-title {
  margin: 0 0 6px !important;
  color: var(--ndkh-text) !important;
  font-family: var(--ndkh-font-display) !important;
  font-size: var(--ndkh-font-secondary-size) !important;
  line-height: 1.2 !important;
  font-weight: var(--ndkh-font-secondary-weight) !important;
}
.ndkh-map-shell .ndkh-detail-panel__hvv {
  margin-top: 2px !important;
  padding-top: 10px !important;
  color: var(--ndkh-text) !important;
  font-size: var(--ndkh-font-text-small) !important;
  line-height: 1.35 !important;
  font-weight: var(--ndkh-font-text-weight);
}
.ndkh-map-shell .ndkh-detail-panel__hvv-label {
  color: #410004 !important;
  font-weight: 600;
  margin-right: 4px;
}
.leaflet-marker-icon.ndkh-marker-selected {
  filter: drop-shadow(0 0 3px rgba(70, 0, 40, 0.65));
}
.ndkh-map-shell--has-selection .ndkh-map--leaflet {
  border-color: var(--ndkh-primary);
}
.ndkh-cluster-pin {
  background: transparent;
  border: 0;
}
.ndkh-cluster-pin__wrap {
  position: relative;
  width: 41px;
  height: 46px;
}
.ndkh-cluster-pin__shape {
  position: absolute;
  inset: 0;
  width: 41px;
  height: 46px;
  object-fit: contain;
  display: block;
}
.ndkh-cluster-pin__count {
  position: absolute;
  top: 9px;
  left: 50%;
  width: 24px;
  height: 24px;
  line-height: 24px;
  transform: translateX(-50%);
  text-align: center;
  font-size: var(--ndkh-font-text-size);
  font-weight: 600;
  color: var(--ndkh-surface);
  background: transparent;
  text-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);
}
@media (max-width: 980px) {
  .ndkh-map-shell {
    --ndkh-sheet-top-gap: 140px;

    --ndkh-sheet-peek-min: 200px;
    --ndkh-sheet-peek-max: 290px;
    --ndkh-sheet-peek-ratio: 0.28;
    --ndkh-sheet-peek-visible: clamp(
      var(--ndkh-sheet-peek-min),
      calc(var(--ndkh-sheet-peek-ratio) * 100vh),
      var(--ndkh-sheet-peek-max)
    );
    --ndkh-sheet-peek-visible: clamp(
      var(--ndkh-sheet-peek-min),
      calc(var(--ndkh-sheet-peek-ratio) * 100dvh),
      var(--ndkh-sheet-peek-max)
    );
    --ndkh-sheet-full-height: calc(
      100vh - env(safe-area-inset-top, 0px) - var(--ndkh-sheet-top-gap)
    );
    --ndkh-sheet-full-height: calc(
      100dvh - env(safe-area-inset-top, 0px) - var(--ndkh-sheet-top-gap)
    );
  }
  .ndkh-map-content {
    grid-template-columns: 1fr;
  }
  .ndkh-map-shell {
    --ndkh-font-primary-size: var(--ndkh-font-primary-size-mobile);
    --ndkh-font-secondary-size: var(--ndkh-font-secondary-size-mobile);
    --ndkh-font-text-size: var(--ndkh-font-text-size-mobile);
  }
  .ndkh-map-shell .ndkh-filter-shell {
    align-items: stretch;
  }
  .ndkh-map-shell .ndkh-active-filters {
    margin-top: 0;
  }
  .ndkh-map-shell .ndkh-active-filter-chip {
    min-height: 36px !important;
    padding: 7px 11px !important;
    font-size: var(--ndkh-font-text-small) !important;
  }
  .ndkh-map-shell .ndkh-filter-controls {
    justify-content: stretch;
  }
  .ndkh-map-shell .ndkh-filter-secondary-controls {
    display: none;
  }
  .ndkh-map-shell .ndkh-filter-favorites-toggle {
    display: none !important;
  }
  .ndkh-map-shell .ndkh-filter-shell {
    gap: 0;
  }
  .ndkh-map-shell .ndkh-filter-panel {
    position: fixed;
    top: var(--ndkh-global-header-offset, 0px);
    left: 0;
    right: 0;
    width: 100%;
    max-width: none;
    height: calc(100vh - var(--ndkh-global-header-offset, 0px));
    height: calc(100dvh - var(--ndkh-global-header-offset, 0px));
    max-height: calc(100vh - var(--ndkh-global-header-offset, 0px));
    max-height: calc(100dvh - var(--ndkh-global-header-offset, 0px));
    border-radius: 0 !important;
    z-index: var(--ndkh-z-modal);
    box-shadow: 0 18px 48px rgba(56, 0, 34, 0.42) !important;
    padding-top: env(safe-area-inset-top, 0px);
    padding-bottom: env(safe-area-inset-bottom, 0px);
  }
  .ndkh-map-shell .ndkh-groups {
    grid-template-columns: 1fr;
  }
  .ndkh-map-shell .ndkh-filters {
    height: 100%;
    min-height: 0;
    padding: 14px;
    display: grid;
    grid-template-rows: auto auto auto minmax(0, 1fr) auto;
    gap: 0;
  }
  .ndkh-map-shell .ndkh-filter-head,
  .ndkh-map-shell .ndkh-search,
  .ndkh-map-shell .ndkh-filter-subhead {
    flex-shrink: 0;
  }
  .ndkh-map-shell .ndkh-search {
    margin-bottom: 10px;
  }
  .ndkh-map-shell .ndkh-filter-subhead {
    margin-bottom: 10px;
  }
  .ndkh-map-shell .ndkh-groups {
    min-height: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding-right: 2px;
  }
  .ndkh-map-shell .ndkh-btn--apply {
    width: 100%;
  }
  .ndkh-map-shell .ndkh-actions {
    position: sticky;
    bottom: 0;
    margin-top: 10px;
    background: var(--ndkh-primary) !important;
    z-index: var(--ndkh-z-panel-actions);
  }
  .ndkh-map-shell .ndkh-detail-panel {
    left: 0;
    right: 0;
    width: auto;
    top: auto;
    bottom: 0;
    z-index: var(--ndkh-z-panel);
    border-radius: 22px 22px 0 0 !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.2) !important;
    max-height: var(--ndkh-sheet-full-height);
    min-height: clamp(230px, 34%, 360px);
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
    transform: translateY(calc(100% - var(--ndkh-sheet-peek-visible)));
    opacity: 1;
    pointer-events: auto;
    transition:
      transform 0.2s ease,
      opacity 0.2s ease;
  }
  .ndkh-map-shell .ndkh-detail-panel[data-sheet-state="peek"] {
    transform: translateY(calc(100% - var(--ndkh-sheet-peek-visible)));
  }
  .ndkh-map-shell .ndkh-detail-panel[data-sheet-state="full"] {
    height: var(--ndkh-sheet-full-height);
    max-height: var(--ndkh-sheet-full-height);
    transform: translateY(0);
    opacity: 1;
    pointer-events: auto;
  }
  .ndkh-map-shell .ndkh-detail-panel__hero {
    --ndkh-detail-hero-height: clamp(180px, 30vh, 260px);
    --ndkh-detail-hero-image-position: 50% 35%;
  }
  .ndkh-map-shell.ndkh-map-shell--sheet-full .ndkh-map-content::after {
    opacity: 1;
    pointer-events: auto;
  }
  .ndkh-map-shell.ndkh-map-shell--sheet-full .ndkh-map-filters-host {
    opacity: 0;
    pointer-events: none;
  }
  .ndkh-map-shell .ndkh-detail-panel__body {
    padding: 18px !important;
    gap: 10px;
    flex: 1 1 auto;
    overflow: visible;
  }
  .ndkh-map-shell .ndkh-detail-panel__sheet-head {
    position: sticky;
    top: 0;
    z-index: var(--ndkh-z-sheet-head);
    background: var(--ndkh-surface) !important;
    margin: -12px -18px 8px;
    padding: 6px 18px 8px;
    isolation: isolate;
    touch-action: none;
  }
  .ndkh-map-shell .ndkh-detail-panel__sheet-head--detail {
    display: grid;
  }
  .ndkh-map-shell .ndkh-detail-panel__body--list {
    padding-top: 0px !important;
  }
  .ndkh-map-shell .ndkh-detail-panel__sheet-handle {
    display: flex;
  }
  .ndkh-map-shell .ndkh-detail-panel__view-tabs {
    overflow-x: auto;
    overflow-y: hidden;
    flex-wrap: nowrap;
    gap: 16px;
    padding-bottom: 8px;
    margin-bottom: 0;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  .ndkh-map-shell .ndkh-detail-panel__view-tabs::-webkit-scrollbar {
    display: none;
  }
  .ndkh-map-shell .ndkh-detail-panel__view-tab {
    flex: 0 0 auto;
  }
  .ndkh-map-shell .ndkh-detail-panel__view-tab--mobile-only {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-left: auto;
    border: 0 !important;
    border-radius: 9999px !important;
    border-bottom: 0 !important;
    background: var(--ndkh-secondary) !important;
    color: var(--ndkh-primary) !important;
    min-height: 40px !important;
    padding: 8px 14px !important;
    font-size: var(--ndkh-font-text-small) !important;
    font-weight: var(--ndkh-font-secondary-weight);
    line-height: 1.2 !important;
    letter-spacing: 0.03em;
    text-transform: uppercase !important;
    white-space: nowrap;
  }
  .ndkh-map-shell .ndkh-detail-panel__view-tab--mobile-only.is-active {
    background: var(--ndkh-primary) !important;
    color: var(--ndkh-surface) !important;
  }
  .ndkh-map-shell .ndkh-detail-panel__view-tab--mobile-only:hover,
  .ndkh-map-shell .ndkh-detail-panel__view-tab--mobile-only:focus-visible {
    color: var(--ndkh-primary) !important;
  }
  .ndkh-map-shell .ndkh-detail-panel__view-tab--mobile-only.is-active:hover,
  .ndkh-map-shell
    .ndkh-detail-panel__view-tab--mobile-only.is-active:focus-visible {
    color: var(--ndkh-surface) !important;
  }
  .ndkh-map-shell .ndkh-detail-panel__list {
    gap: 14px;
  }
}

@media (min-width: 768px) and (max-width: 980px) {
  .ndkh-map-shell {
    --ndkh-sheet-top-gap: 250px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .ndkh-map-shell .ndkh-filter-panel,
  .ndkh-map-shell .ndkh-filter-toggle,
  .ndkh-map-shell .ndkh-detail-panel,
  .ndkh-map-shell .ndkh-detail-panel__event-card,
  .ndkh-map-shell .ndkh-map-content::after {
    transition: none;
  }
}

.ndkh-map-shell .ndkh-map-content--consent-blocked .ndkh-map-filters-host,
.ndkh-map-shell .ndkh-map-content--consent-blocked .ndkh-detail-panel {
  display: none !important;
}
.ndkh-map-shell .ndkh-map-content--consent-blocked::after {
  display: none;
}
.ndkh-map-shell .ndkh-map-consent-notice {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 16px;
  width: 100%;
  min-height: 320px;
  box-sizing: border-box;
  padding: 32px 24px;
  text-align: center;
  color: var(--ndkh-text);
  font-family: var(--ndkh-font-body);
}
.ndkh-map-shell .ndkh-map-consent-notice__text {
  margin: 0;
  font-size: var(--ndkh-font-secondary-size);
  font-weight: var(--ndkh-font-secondary-weight);
  line-height: 1.4;
}
.ndkh-map-shell .ndkh-map-consent-accept {
  padding: 12px 22px;
  border: 0;
  border-radius: 6px;
  background: var(--ndkh-primary);
  color: var(--ndkh-surface);
  font-family: var(--ndkh-font-body);
  font-size: var(--ndkh-font-text-size);
  font-weight: var(--ndkh-font-primary-weight);
  letter-spacing: 0.04em;
  text-transform: uppercase;
  cursor: pointer;
  transition: background 0.2s ease, box-shadow 0.2s ease;
}
.ndkh-map-shell .ndkh-map-consent-accept:hover,
.ndkh-map-shell .ndkh-map-consent-accept:focus-visible {
  background: var(--ndkh-primary);
  color: var(--ndkh-surface);
}
.ndkh-map-shell .ndkh-map-consent-accept:focus-visible {
  outline: 2px solid var(--ndkh-primary);
  outline-offset: 2px;
}
@media (prefers-reduced-motion: reduce) {
  .ndkh-map-shell .ndkh-map-consent-accept {
    transition: none;
  }
}
