.elementor-2568 .elementor-element.elementor-element-1211092{--display:flex;}.elementor-2568 .elementor-element.elementor-element-1211092:not(.elementor-motion-effects-element-type-background), .elementor-2568 .elementor-element.elementor-element-1211092 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-2568 .elementor-element.elementor-element-2b157fb{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2568 .elementor-element.elementor-element-630a11a{--display:flex;}/* Start custom CSS *//* MAP */
.map-wrap { position: relative; height: 100%; }
#map { width: 100%; height: 600px; }
.leaflet-container { background: #f3f4f6 !important; }
.leaflet-control-attribution { display: none !important; }

/* LOADER */
#map-loader {
  position: absolute; inset: 0; background: #fff;
  display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 14px;
  z-index: 9999; transition: opacity 0.5s ease;
}
#map-loader.hidden { opacity: 0; pointer-events: none; }
.loader-dots { display: flex; gap: 8px; }
.loader-dot { width: 10px; height: 10px; border-radius: 50%; background: var(--red); animation: pulse 1.2s ease-in-out infinite; }
.loader-dot:nth-child(2) { animation-delay: 0.2s; }
.loader-dot:nth-child(3) { animation-delay: 0.4s; }
@keyframes pulse { 0%,100%{opacity:.2;transform:scale(.8)} 50%{opacity:1;transform:scale(1.2)} }
#map-loader p { font-size: 13px; color: var(--muted); }

/* PANEL */
.panel {
  background: var(--panel-bg);
  border-left: 1px solid var(--border);
  display: flex; flex-direction: column; overflow: hidden;
}
.panel-inner {
  flex: 1; overflow-y: auto; padding: 32px 28px 24px;
  scrollbar-width: thin; scrollbar-color: var(--border) transparent;
}

.eyebrow {
  display: inline-flex; align-items: center; gap: 7px;
  font-size: 13px; font-weight: 600; text-transform: uppercase;
  letter-spacing: 1.4px; color: var(--red); margin-bottom: 12px;
}
.eyebrow-dot { width: 5px; height: 5px; border-radius: 50%; background: var(--red); }

.panel h1 {
  font-family: 'DM Serif Display', serif;
  font-size: 50px; line-height: 1.1; margin-bottom: 4px; color: var(--text);
}

.panel p.desc { font-size: 17px; color: var(--muted); line-height: 1.8; margin-bottom: 24px; }

/* DIVIDER */
.divider { height: 1px; background: var(--border); margin-bottom: 20px; }

/* STATS */
.stats { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 10px; margin-bottom: 20px; }
.card {
  background: var(--red); border: 1px solid var(--border);
  padding: 16px 14px; border-radius: 12px;
  transition: transform 0.2s, box-shadow 0.2s, border-color 0.2s;
}
.card:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 16px rgba(0,0,0,0.07);
  border-color: rgba(192,57,43,0.25);
}
.card .label { font-size: 11px; text-transform: uppercase; letter-spacing: 1px; color: var(--card-bg); margin-bottom: 7px; }
.card .value { font-size: 24px; line-height: 1; color: var(--card-bg); }


@media (max-width: 900px) {
  .layout { grid-template-columns: 1fr; grid-template-rows: 45vh 1fr; }
  .panel { border-left: none; border-top: 1px solid var(--border); }
  body { overflow: auto; }
  .panel-inner { padding: 24px 20px; }
  .panel h1 { font-size: 30px; }
}/* End custom CSS */