.elementor-5020 .elementor-element.elementor-element-2448334{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:40px;--padding-bottom:40px;--padding-left:0px;--padding-right:0px;}.elementor-5020 .elementor-element.elementor-element-2448334:not(.elementor-motion-effects-element-type-background), .elementor-5020 .elementor-element.elementor-element-2448334 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-5020 .elementor-element.elementor-element-8e9e870 > .elementor-widget-container{margin:0px 0px -21px 0px;}.elementor-5020 .elementor-element.elementor-element-8e9e870{text-align:center;}.elementor-5020 .elementor-element.elementor-element-8e9e870 .elementor-heading-title{font-family:"Roboto Slab", Sans-serif;font-size:21px;font-weight:600;color:var( --e-global-color-c6edcbb );}.elementor-5020 .elementor-element.elementor-element-31f8453 > .elementor-widget-container{padding:0px 0px 20px 0px;}.elementor-5020 .elementor-element.elementor-element-31f8453{text-align:center;}.elementor-5020 .elementor-element.elementor-element-31f8453 .elementor-heading-title{font-family:"ADLaM Display", Sans-serif;font-size:32px;font-weight:600;color:var( --e-global-color-2a509cf );}.elementor-5020 .elementor-element.elementor-element-240b2de{--display:flex;--padding-top:40px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-5020 .elementor-element.elementor-element-240b2de:not(.elementor-motion-effects-element-type-background), .elementor-5020 .elementor-element.elementor-element-240b2de > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-astglobalcolor5 );}:root{--page-title-display:none;}@media(max-width:767px){.elementor-5020 .elementor-element.elementor-element-2448334{--padding-top:20px;--padding-bottom:20px;--padding-left:0px;--padding-right:0px;}.elementor-5020 .elementor-element.elementor-element-8e9e870 .elementor-heading-title{font-size:17px;}.elementor-5020 .elementor-element.elementor-element-31f8453 > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-5020 .elementor-element.elementor-element-31f8453 .elementor-heading-title{font-size:13px;}}/* Start custom CSS for container, class: .elementor-element-2448334 *//* Contenedor con margen lateral + borde redondeado arriba */
.elementor-element[data-id="2448334"] {
    margin-left: 40px !important;
    margin-right: 40px !important;
    border-top-left-radius: 22px;
    border-top-right-radius: 22px;
    overflow: hidden; /* necesario para que el borde afecte al contenido */
    box-sizing: border-box;
    width: calc(100% - 80px); /* 40px + 40px */
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-a31cb14 *//* Masonry gallery */
.masonry-gallery {
  column-count: 4;
  column-gap: 15px;
  width: 100%;
}

.masonry-gallery img {
  width: 100%;
  margin-bottom: 15px;
  border-radius: 10px;
  cursor: pointer;
  transition: transform 0.3s ease, filter 0.3s ease;
}

/* Hover effect */
.masonry-gallery img:hover {
  transform: scale(1.03);
  filter: brightness(1.05);
}

/* Vertical vs Horizontal image heights */
.masonry-gallery img.vertical {
  aspect-ratio: 3/4;
  object-fit: cover;
}

.masonry-gallery img.horizontal {
  aspect-ratio: 4/3;
  object-fit: cover;
}

/* Responsive */
@media (max-width: 1024px) {
  .masonry-gallery { column-count: 3; }
}

@media (max-width: 768px) {
  .masonry-gallery { column-count: 2; }
}

@media (max-width: 480px) {
  .masonry-gallery { column-count: 1; }
}

/* Lightbox */
#lightbox {
  display: none;
  position: fixed;
  top: 0; left: 0;
  width: 100%; height: 100%;
  background: rgba(0,0,0,0.9);
  justify-content: center;
  align-items: center;
  z-index: 9999;
}

#lightbox img {
  max-width: 90%;
  max-height: 90%;
  border-radius: 10px;
}

#close, #prev, #next {
  position: absolute;
  color: white;
  font-size: 40px;
  cursor: pointer;
  user-select: none;
  padding: 8px 15px;
}

#close { top: 20px; right: 30px; }
#prev { left: 40px; }
#next { right: 40px; }

#prev:hover, #next:hover, #close:hover {
  color: #046d75;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-240b2de *//* Contenedor con margen lateral + borde redondeado arriba */
.elementor-element[data-id="240b2de"] {
    margin-left: 40px !important;
    margin-right: 40px !important;
   border-bottom-left-radius: 22px;
border-bottom-right-radius: 22px;
    overflow: hidden; /* necesario para que el borde afecte al contenido */
    box-sizing: border-box;
    width: calc(100% - 80px); /* 40px + 40px */
}/* End custom CSS */