.elementor-20 .elementor-element.elementor-element-c340f14{margin-top:20px;margin-bottom:0px;}.elementor-bc-flex-widget .elementor-20 .elementor-element.elementor-element-5891596.elementor-column .elementor-widget-wrap{align-items:center;}.elementor-20 .elementor-element.elementor-element-5891596.elementor-column.elementor-element[data-element_type="column"] > .elementor-widget-wrap.elementor-element-populated{align-content:center;align-items:center;}.elementor-widget-posts .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-posts .elementor-post__title, .elementor-widget-posts .elementor-post__title a{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-posts .elementor-post__meta-data{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-posts .elementor-post__excerpt p{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-posts .elementor-post__read-more{color:var( --e-global-color-accent );}.elementor-widget-posts a.elementor-post__read-more{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-posts .elementor-post__card .elementor-post__badge{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-posts .elementor-pagination{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-posts .ecs-load-more-button .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );background-color:var( --e-global-color-accent );}.elementor-widget-posts .e-load-more-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-20 .elementor-element.elementor-element-1a24b88{--grid-row-gap:35px;--grid-column-gap:30px;}.elementor-20 .elementor-element.elementor-element-1a24b88 .elementor-posts-container .elementor-post__thumbnail{padding-bottom:calc( 0.66 * 100% );}.elementor-20 .elementor-element.elementor-element-1a24b88:after{content:"0.66";}.elementor-20 .elementor-element.elementor-element-1a24b88 .elementor-post__thumbnail__link{width:100%;}.elementor-20 .elementor-element.elementor-element-1a24b88 .elementor-post{border-style:solid;border-width:2.5px 2.5px 2.5px 2.5px;border-radius:20px;padding:0px 0px 5px 0px;box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);}.elementor-20 .elementor-element.elementor-element-1a24b88.elementor-posts--thumbnail-left .elementor-post__thumbnail__link{margin-right:15px;}.elementor-20 .elementor-element.elementor-element-1a24b88.elementor-posts--thumbnail-right .elementor-post__thumbnail__link{margin-left:15px;}.elementor-20 .elementor-element.elementor-element-1a24b88.elementor-posts--thumbnail-top .elementor-post__thumbnail__link{margin-bottom:15px;}.elementor-20 .elementor-element.elementor-element-1a24b88 .elementor-post__title, .elementor-20 .elementor-element.elementor-element-1a24b88 .elementor-post__title a{font-family:"Roboto", Sans-serif;font-size:15px;font-weight:600;text-decoration:none;}.elementor-20 .elementor-element.elementor-element-39d6f3e{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:30px;margin-bottom:30px;padding:30px 0px 30px 0px;}.elementor-20 .elementor-element.elementor-element-39d6f3e > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-20 .elementor-element.elementor-element-f475252{z-index:2;}.elementor-20 .elementor-element.elementor-element-3cfa685 > .elementor-widget-container{margin:0px -150px 0px -150px;padding:0px 0px 0px 0px;}.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-20 .elementor-element.elementor-element-e8ad3a6 > .elementor-widget-container{margin:-200px 0px 0px -105px;}.elementor-20 .elementor-element.elementor-element-e8ad3a6{text-align:left;}.elementor-20 .elementor-element.elementor-element-e8ad3a6 img{width:50%;}.elementor-20 .elementor-element.elementor-element-c723723{--grid-row-gap:35px;--grid-column-gap:30px;}.elementor-20 .elementor-element.elementor-element-c723723 > .elementor-widget-container{margin:0px 0px 50px 0px;}.elementor-20 .elementor-element.elementor-element-c723723 .elementor-posts-container .elementor-post__thumbnail{padding-bottom:calc( 0.66 * 100% );}.elementor-20 .elementor-element.elementor-element-c723723:after{content:"0.66";}.elementor-20 .elementor-element.elementor-element-c723723 .elementor-post__thumbnail__link{width:100%;}.elementor-20 .elementor-element.elementor-element-c723723 .elementor-post{border-style:solid;border-width:2.5px 2.5px 2.5px 2.5px;border-radius:20px;padding:0px 0px 5px 0px;box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);}.elementor-20 .elementor-element.elementor-element-c723723.elementor-posts--thumbnail-left .elementor-post__thumbnail__link{margin-right:15px;}.elementor-20 .elementor-element.elementor-element-c723723.elementor-posts--thumbnail-right .elementor-post__thumbnail__link{margin-left:15px;}.elementor-20 .elementor-element.elementor-element-c723723.elementor-posts--thumbnail-top .elementor-post__thumbnail__link{margin-bottom:15px;}.elementor-20 .elementor-element.elementor-element-c723723 .elementor-post__title, .elementor-20 .elementor-element.elementor-element-c723723 .elementor-post__title a{font-family:"Roboto", Sans-serif;font-size:15px;font-weight:600;text-decoration:none;}@media(max-width:767px){.elementor-20 .elementor-element.elementor-element-1a24b88 .elementor-posts-container .elementor-post__thumbnail{padding-bottom:calc( 0.5 * 100% );}.elementor-20 .elementor-element.elementor-element-1a24b88:after{content:"0.5";}.elementor-20 .elementor-element.elementor-element-1a24b88 .elementor-post__thumbnail__link{width:100%;}.elementor-20 .elementor-element.elementor-element-3cfa685 > .elementor-widget-container{margin:1px 1px 1px 1px;}.elementor-20 .elementor-element.elementor-element-c723723 .elementor-posts-container .elementor-post__thumbnail{padding-bottom:calc( 0.5 * 100% );}.elementor-20 .elementor-element.elementor-element-c723723:after{content:"0.5";}.elementor-20 .elementor-element.elementor-element-c723723 .elementor-post__thumbnail__link{width:100%;}}/* Start custom CSS for html, class: .elementor-element-62286d2 */.servicios-destacados {
  background: linear-gradient(135deg, #f3fdf8, #ffffff);
  padding: 50px 40px;
  border-radius: 24px;
  box-shadow: 0 8px 20px rgba(22, 153, 85, 0.1);
  font-family: 'Poppins', sans-serif;
  color: #169955;
  max-width: 500px;
  margin: auto;
  text-align: left;
  transition: all 0.3s ease-in-out;
}

.servicios-destacados h2 {
  font-size: 2rem;
  margin-bottom: 20px;
  color: #0e5f3d;
  font-weight: 600;
}

.servicios-destacados p {
  font-size: 1.1rem;
  line-height: 1.6;
  color: #3c3c3c;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-41b5c2d */.encabezado-servicio1 {
  font-family: 'Poppins', sans-serif;
  font-size: 2.5rem;
  font-weight: 700;
  color: #169955;
  text-align: center;
  position: relative;
  margin: 20px 0 40px 0;
}

.encabezado-servicio::after {
  content: '';
  width: 80px;
  height: 4px;
  background-color: #169955;
  display: block;
  margin: 16px auto 0 auto;
  border-radius: 2px;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-28032ed */.encabezado-servicio-blanco {
  font-family: 'Poppins', sans-serif;
  font-size: 2.5rem;
  font-weight: 700;
  color: #ffffff !important; /* Texto blanco forzado */
  text-align: center;
  position: relative;
  margin: 20px 0 40px 0;
}

.encabezado-servicio-blanco::after {
  content: '';
  width: 80px;
  height: 4px;
  background-color: #ffffff !important; /* Línea decorativa blanca forzada */
  display: block;
  margin: 16px auto 0 auto;
  border-radius: 2px;
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-39d6f3e */.seccion-verde-animada {
  position: relative;
  background-color: #169955;
  color: #ffffff;
  padding: 80px 20px;
  text-align: center;
  overflow: hidden;
}

.seccion-verde-animada h2 {
  font-size: 38px;
  margin-bottom: 20px;
  font-weight: 700;
  animation: fadeInDown 1s ease-out;
}

.seccion-verde-animada p {
  font-size: 18px;
  max-width: 800px;
  margin: 0 auto;
  line-height: 1.6;
  animation: fadeInUp 1.2s ease-out;
}

/* Animación de entrada */
@keyframes fadeInDown {
  from { opacity: 0; transform: translateY(-30px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes fadeInUp {
  from { opacity: 0; transform: translateY(30px); }
  to { opacity: 1; transform: translateY(0); }
}

/* Fondo animado de burbujas */
.burbujas {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image:
    radial-gradient(circle at 20% 30%, rgba(255,255,255,0.1) 10px, transparent 11px),
    radial-gradient(circle at 70% 20%, rgba(255,255,255,0.08) 8px, transparent 9px),
    radial-gradient(circle at 50% 70%, rgba(255,255,255,0.1) 12px, transparent 13px);
  background-size: 200% 200%;
  animation: burbujasMovimiento 15s linear infinite;
  z-index: 0;
}

@keyframes burbujasMovimiento {
  0% { background-position: 0% 0%; }
  100% { background-position: 100% 100%; }
}

.seccion-verde-animada .contenido {
  position: relative;
  z-index: 1;
}/* End custom CSS */