.elementor-3037 .elementor-element.elementor-element-1a76bc2{--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;--padding-top:30px;--padding-bottom:30px;--padding-left:30px;--padding-right:30px;}.elementor-3037 .elementor-element.elementor-element-1a76bc2:not(.elementor-motion-effects-element-type-background), .elementor-3037 .elementor-element.elementor-element-1a76bc2 > .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-3037 .elementor-element.elementor-element-5464ec7{text-align:center;}.elementor-3037 .elementor-element.elementor-element-5464ec7 .elementor-heading-title{font-family:"ADLaM Display", Sans-serif;font-weight:600;color:var( --e-global-color-2a509cf );}.elementor-3037 .elementor-element.elementor-element-2879a1b{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-3037 .elementor-element.elementor-element-2879a1b:not(.elementor-motion-effects-element-type-background), .elementor-3037 .elementor-element.elementor-element-2879a1b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-3037 .elementor-element.elementor-element-3e33ef2{--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;--padding-top:50px;--padding-bottom:0px;--padding-left:50px;--padding-right:40px;}.elementor-3037 .elementor-element.elementor-element-3e33ef2:not(.elementor-motion-effects-element-type-background), .elementor-3037 .elementor-element.elementor-element-3e33ef2 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-3037 .elementor-element.elementor-element-fb83f3f > .elementor-widget-container{padding:0px 0px 0px 30px;}.elementor-3037 .elementor-element.elementor-element-fb83f3f{font-family:"Roboto Slab", Sans-serif;font-weight:400;line-height:32px;color:var( --e-global-color-astglobalcolor5 );}.elementor-3037 .elementor-element.elementor-element-fb83f3f a{color:var( --e-global-color-accent );}.elementor-3037 .elementor-element.elementor-element-feffddd{--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-3037 .elementor-element.elementor-element-feffddd:not(.elementor-motion-effects-element-type-background), .elementor-3037 .elementor-element.elementor-element-feffddd > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-3037 .elementor-element.elementor-element-7c5d0c5{--display:grid;--e-con-grid-template-columns:repeat(1, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;--padding-top:50px;--padding-bottom:50px;--padding-left:20px;--padding-right:10px;}.elementor-3037 .elementor-element.elementor-element-7c5d0c5:not(.elementor-motion-effects-element-type-background), .elementor-3037 .elementor-element.elementor-element-7c5d0c5 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-3037 .elementor-element.elementor-element-3016075 img{width:89%;border-radius:20px 20px 20px 20px;}.elementor-3037 .elementor-element.elementor-element-582f567 > .elementor-widget-container{padding:20px 0px 20px 20px;}.elementor-3037 .elementor-element.elementor-element-71193ab{--display:flex;--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-3037 .elementor-element.elementor-element-71193ab:not(.elementor-motion-effects-element-type-background), .elementor-3037 .elementor-element.elementor-element-71193ab > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-astglobalcolor5 );}.elementor-3037 .elementor-element.elementor-element-7f70a30 > .elementor-widget-container{padding:0px 20px 0px 20px;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-3037 .elementor-element.elementor-element-7c5d0c5{--grid-auto-flow:row;}}@media(min-width:768px){.elementor-3037 .elementor-element.elementor-element-1a76bc2{--content-width:1300px;}.elementor-3037 .elementor-element.elementor-element-2879a1b{--content-width:1300px;}.elementor-3037 .elementor-element.elementor-element-3e33ef2{--content-width:1300px;}.elementor-3037 .elementor-element.elementor-element-feffddd{--width:50%;}}@media(max-width:767px){.elementor-3037 .elementor-element.elementor-element-1a76bc2{--padding-top:20px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3037 .elementor-element.elementor-element-3e33ef2{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3037 .elementor-element.elementor-element-fb83f3f > .elementor-widget-container{padding:20px 15px 0px 15px;}.elementor-3037 .elementor-element.elementor-element-fb83f3f{text-align:center;}.elementor-3037 .elementor-element.elementor-element-7c5d0c5{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;--padding-top:0px;--padding-bottom:20px;--padding-left:0px;--padding-right:0px;}.elementor-3037 .elementor-element.elementor-element-582f567 > .elementor-widget-container{padding:0px 20px 0px 20px;}.elementor-3037 .elementor-element.elementor-element-582f567.elementor-element{--align-self:center;}.elementor-3037 .elementor-element.elementor-element-7f70a30 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}}/* Start custom CSS for container, class: .elementor-element-1a76bc2 *//* Contenedor con margen lateral + borde redondeado arriba */
.elementor-element[data-id="1a76bc2"] {
    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 image, class: .elementor-element-3016075 *//* Asegura que el contenedor no recorte la sombra */
#foto-casa {
  overflow: visible !important;
}

/* Selecciona solo la imagen dentro */
#foto-casa img {
  border-radius: 22px;
  transition: transform 0.35s ease, box-shadow 0.35s ease;
}

/* Hover sobre el contenedor afecta a la imagen */
#foto-casa:hover img {
  transform: scale(1.03);
  box-shadow: 0 12px 24px rgba(0, 191, 165, 0.25);
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-582f567 */.btn-whatsapp {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background-color: #00bfa5;
    color: white;
    padding: 12px 20px;
    border-radius: 50px;
    font-size: 17px;
    font-weight: 600;
    text-decoration: none;
    transition: background-color 0.3s ease, transform 0.2s ease, color 0.3s ease;
}

.btn-whatsapp:hover {
    background-color: #75e6da;
    color: #024b59; /* ➜ Color del texto en hover */
    transform: scale(1.04);
}

.btn-whatsapp .icono img {
    width: 22px;
    height: 22px;
    display: block;
}

.btn-whatsapp:active {
    transform: scale(0.97);
}

@media (max-width: 768px) {
    .btn-whatsapp {
        display: flex !important;
        justify-content: center !important;
        align-items: center;
        margin: 0 auto !important;
        text-align: center;
    }

    /* Por si el contenedor afecta */
    .elementor-element-1d9bf3a .elementor-widget-container {
        display: flex;
        justify-content: center;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-2879a1b *//* Contenedor con margen lateral + borde redondeado arriba */
.elementor-element[data-id="2879a1b"] {
    margin-left: 40px !important;
    margin-right: 40px !important;
   
    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-7f70a30 *//* 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-71193ab *//* Contenedor con margen lateral + borde redondeado arriba */
.elementor-element[data-id="71193ab"] {
    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 */