.elementor-10143 .elementor-element.elementor-element-578f9d7{--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-hotspot .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-hotspot{--hotspot-color:var( --e-global-color-primary );--hotspot-box-color:var( --e-global-color-secondary );--tooltip-color:var( --e-global-color-secondary );}.elementor-widget-hotspot .e-hotspot__label{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-hotspot .e-hotspot__tooltip{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );text-transform:var( --e-global-typography-secondary-text-transform );}.elementor-10143 .elementor-element.elementor-element-3e6e299 .elementor-repeater-item-b4422e4{--hotspot-min-width:20px;--hotspot-min-height:20px;left:5%;--hotspot-translate-x:5%;top:28%;--hotspot-translate-y:28%;}.elementor-10143 .elementor-element.elementor-element-3e6e299 .elementor-repeater-item-903593c{left:81%;--hotspot-translate-x:81%;top:12%;--hotspot-translate-y:12%;}.elementor-10143 .elementor-element.elementor-element-3e6e299 .elementor-repeater-item-8468c77{left:32%;--hotspot-translate-x:32%;top:8%;--hotspot-translate-y:8%;}.elementor-10143 .elementor-element.elementor-element-3e6e299 .elementor-repeater-item-90d7ef5{left:4%;--hotspot-translate-x:4%;top:8%;--hotspot-translate-y:8%;}.elementor-10143 .elementor-element.elementor-element-3e6e299 .elementor-repeater-item-03d18ec{left:9%;--hotspot-translate-x:9%;top:5%;--hotspot-translate-y:5%;}.elementor-10143 .elementor-element.elementor-element-3e6e299 .elementor-repeater-item-1893008{left:12%;--hotspot-translate-x:12%;top:23%;--hotspot-translate-y:23%;}.elementor-10143 .elementor-element.elementor-element-3e6e299 .elementor-repeater-item-779cd4a{left:18%;--hotspot-translate-x:18%;top:18%;--hotspot-translate-y:18%;}.elementor-10143 .elementor-element.elementor-element-3e6e299 .elementor-repeater-item-cadfa12{left:24%;--hotspot-translate-x:24%;top:13%;--hotspot-translate-y:13%;}.elementor-10143 .elementor-element.elementor-element-3e6e299 .elementor-repeater-item-44be1fe{left:4%;--hotspot-translate-x:4%;top:61%;--hotspot-translate-y:61%;}.elementor-10143 .elementor-element.elementor-element-3e6e299 .elementor-repeater-item-822a534{left:11%;--hotspot-translate-x:11%;top:84%;--hotspot-translate-y:84%;}.elementor-10143 .elementor-element.elementor-element-3e6e299 .elementor-repeater-item-4aa4e9f{left:52%;--hotspot-translate-x:52%;top:30%;--hotspot-translate-y:30%;}.elementor-10143 .elementor-element.elementor-element-3e6e299 .elementor-repeater-item-c670c3f{left:27%;--hotspot-translate-x:27%;top:82%;--hotspot-translate-y:82%;}.elementor-10143 .elementor-element.elementor-element-3e6e299 .elementor-repeater-item-3c4c70f{left:2%;--hotspot-translate-x:2%;top:77%;--hotspot-translate-y:77%;}.elementor-10143 .elementor-element.elementor-element-3e6e299 .e-hotspot--tooltip-position{right:initial;bottom:initial;left:initial;top:calc(100% + 5px );}.elementor-10143 .elementor-element.elementor-element-3e6e299{--container-width:100%;--image-width:100%;--hotspot-color:var( --e-global-color-e37c78e );--hotspot-size:16px;--hotspot-min-width:28px;--hotspot-min-height:28px;--hotspot-box-color:var( --e-global-color-primary );--hotspot-padding:6px;--hotspot-border-radius:50px 50px 50px 50px;--tooltip-padding:10px 10px 10px 10px;--tooltip-color:var( --e-global-color-accent );--tooltip-border-radius:8px 8px 8px 8px;}.elementor-10143 .elementor-element.elementor-element-3e6e299 .e-hotspot__label{font-family:"Luckiest Guy", Sans-serif;font-size:16px;font-weight:400;line-height:1em;}.elementor-10143 .elementor-element.elementor-element-3e6e299 .e-hotspot__tooltip{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-10143 .elementor-element.elementor-element-d6428ff{--display:flex;--border-radius:0px 0px 20px 20px;--padding-top:40px;--padding-bottom:40px;--padding-left:40px;--padding-right:40px;}@media(max-width:1024px){.elementor-widget-hotspot .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}}@media(max-width:767px){.elementor-10143 .elementor-element.elementor-element-578f9d7{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-hotspot .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-10143 .elementor-element.elementor-element-3e6e299 img{border-radius:0px 0px 0px 0px;}.elementor-10143 .elementor-element.elementor-element-d6428ff{--border-radius:0px 0px 0px 0px;--padding-top:25px;--padding-bottom:25px;--padding-left:25px;--padding-right:25px;}}/* Start custom CSS for hotspot, class: .elementor-element-3e6e299 */.elementor-10143 .elementor-element.elementor-element-3e6e299 .e-hotspot__button {
    width: 24px;
    height: 24px;
    border: 2px solid #fff;
}

.elementor-repeater-item-b4422e4 .e-hotspot__button  {
    background: #fff !important;
}

.elementor-repeater-item-b4422e4 .e-hotspot__button  svg {
    fill: #EC1B23;
}

.elementor-10143 .elementor-element.elementor-element-3e6e299 h3 {
    font-size: 20px;
    margin: 0 !important;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-4b3bf89 *//* --- Base list styles --- */
.map-list {
  list-style: none;
  padding-inline-start: 0;
}

/* Turn the list into a responsive grid */
.map-list {
  display: grid;
  grid-template-columns: 1fr;          /* Mobile: 1 column */
  column-gap: 10px;                    /* Horizontal gap between columns */
  row-gap: 0px;                       /* Vertical gap between rows */
}

/* Tablet breakpoint: 2 columns */
@media (min-width: 768px) {
  .map-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Desktop breakpoint: 4 columns */
@media (min-width: 1025px) {
  .map-list {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

/* Each item inside the list */
.map-list__item {
  padding: 5px 0;
  /* Animation still applies individually; grid layout does not interfere */
}

/* Button inside each list item */
.map-list__btn {
  display: flex;
  gap: .75rem;                         /* Space between number circle and text */
  align-items: flex-start;             /* Align content to the top */
  padding: 0 !important;
  width: 100%;
  text-align: left;
  background: none;
  border: 0;
  color: inherit;
  cursor: pointer;
  font-family: var(--e-global-typography-primary-font-family), Sans-serif !important;
  font-size: 16px !important;
  font-weight: var(--e-global-typography-primary-font-weight) !important;
  line-height: 16px !important;
  letter-spacing: 0 !important;
  background: transparent !important;
}

/* Title text in the list */
.map-list__title {
  opacity: 0.9;
  transition: opacity 200ms;
  flex: 1 1 auto;
  min-width: 0;
  white-space: normal;
  overflow-wrap: anywhere;
  color: var(--e-global-color-a2d5b91);
  font-size: 20px;
  line-height: 20px !important;
  margin-top: 6px;
}

/* Hover/focus states */
.map-list__btn:hover .map-list__title { opacity: 1; }
.map-list__btn:hover,
.map-list__btn:focus { background: none !important; }

/* Number circle */
.map-list__num {
  text-align: center;
  padding: 6px !important;
  width: 28px;
  height: 28px;
  border: 2px solid #fff;
  border-radius: 50px;
  background: var(--e-global-color-primary);
  font-size: 15px;
  font-weight: 600;
  line-height: 1;
  display: flex;
  justify-content: center;
}

/* --- Animations --- */

/* Fade-up keyframes */
@keyframes map-fade-up {
  from { opacity: 0; transform: translateY(8px); }
  to   { opacity: 1; transform: none; }
}

/* Initial state before animation */
.map-list__item { opacity: 0; transform: translateY(8px); }

/* Apply staggered fade-in when the list is in viewport */
.map-list.is-animate .map-list__item {
  animation: map-fade-up .38s ease-out forwards;
  animation-delay: var(--delay, 1s); /* includes base delay */
}

/* Accessibility: disable motion for users with reduced-motion preference */
@media (prefers-reduced-motion: reduce) {
  .map-list__item,
  .map-list.is-animate .map-list__item {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
  }
}/* End custom CSS */