.service-card__box p,
.font-22 p,
.title-desc p {
  line-height: 1.78rem;
}

.txt-monserrat,
.font-60,
.font-54,
.font-34,
.font-48,
.font-30 {
  font-family: 'Montserrat';
  font-weight: bold;
  line-height: normal;

}

/* Centrar contenido dentro de cada slide */
.slick--field-img-logo--full .slick__slide .slide__content {
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Card con borde degradé (neumórfico) */
.slick--field-img-logo--full .media--slick {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 290px;
  /* igual que el canvas */
  height: 220px;
  /* igual que el canvas */
  border-radius: 24px;
  background: linear-gradient(145deg, #ffffff, #e4e4e4);
  overflow: hidden;
  max-width: 90%;
}

/* Rectángulo blanco interior */
.slick--field-img-logo--full .media--slick::before {
  content: "";
  position: absolute;
  inset: 1rem;
  /* separa el borde degradé del centro */
  border-radius: 18px;
  background: #ffffff;
  z-index: 0;
}

/* Imagen del logo encima del fondo blanco */
.slick--field-img-logo--full .media--slick img {
  position: relative;
  z-index: 1;
  max-width: 80%;
  /* deja aire alrededor del logo */
  max-height: 90%;
  object-fit: contain;
  /* por si acaso, no deformar */
  height: auto;
  display: block;
}

#block-daudo-subtheme-logosclientes .slick-prev:before,
#block-daudo-subtheme-logosclientes .slick-next:before {
  font-size: 2rem;
  color: #ccc;
}


.gsc-button {
  font-family: Montserrat !important;
}

.encabezado .font-60 {
  font-family: Montserrat;
  text-align: left;
  color: #1e45c6;
}







/* Card general */
.post-card {
  border-radius: 1rem !important;
  overflow: hidden;
  /* Sombra similar a la de tu referencia */
  filter: drop-shadow(0px -1px 3px rgba(0, 0, 0, .35));
  background-color: #ffffff;
}

/* Imagen con alto fijo para que todas alineen */
.post-card__image .field--name-field-image img {
  width: 100%;
  object-fit: cover;
  display: block;
}

/* Cuerpo en columna para estirar contenido y botón */
.post-card .card-body {
  display: flex;
  flex-direction: column;
}

/* Botón (PNG) centrado abajo */
.post-card__btn-more img {
  max-width: 56px;
  /* o el ancho real del PNG */
  height: auto;
  display: inline-block;
}

/* (Opcional) un poco más de sombra al hover */
.post-card:hover {
  /*   filter:drop-shadow(0 12px 24px rgba(0,0,0,.35));
 */
  transition: box-shadow 0.2s ease-in-out;
}

.sombra {
  filter: drop-shadow(0px -1px 3px rgba(0, 0, 0, .35));
}

/* Servicios */

/* Caja tipo “glass” a la izquierda */
.service-card__box {
  left: 2rem;
  top: 2rem;
  padding: 1rem;
  position: absolute;
  border-radius: 12px;
  background: rgba(0, 0, 0, 0.45);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  filter: drop-shadow(0 12px 24px rgba(0, 0, 0, .35));
  z-index: 10;
  max-width: 80%;
  border: 1px solid #474747;
}




.service-card__bg {
  position: relative;
  z-index: 5;
}



/* Título */
.service-card__title a,
.service-card__title a:hover,
.service-card__excerpt {
  color: #fff;
}

.service-card .field--name-field-service-images {
  border-radius: 1rem;
}

.service-card .line-h {
  height: 2px;
  width: 95%;
  background: #2ECE87;
}

.service-card__media- {
  position: relative;
}

.service-card__more- {
  position: absolute;
  left: 0;
  bottom: 2rem;
  width: 100%;
  z-index: 15;
  /* antes 0 */
  pointer-events: auto;
  /* por si algo lo bloquea */
}

.service-hero {
  position: relative;
}

.service-hero__media img {
  width: 100%;
  object-fit: cover;
  display: block;
}

/* oscurece un poco el banner para legibilidad */
/* .service-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, .10), rgba(0, 0, 0, .55));
  pointer-events: none;
} */

.service-hero__title-wrap {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 24px;
  z-index: 2;
}

.service-hero__title {
  margin: 0;
  color: #fff;
  font-weight: 700;
  text-shadow: 0 8px 24px rgba(0, 0, 0, .45);
}



.node-detail {
  padding-bottom: 0;
}


/* Servicios */

.service-node .resumen {
  font-family: 'Montserrat';
  font-weight: bold;
  font-size: 1.667rem;
  line-height: 40px;
  color: #1e45c6;
}


.service-hero .service-title {
  font-family: 'Montserrat';
  font-weight: bold;
  text-align: left;
  color: #fff;
  text-shadow: 1.09px 1.68px 6px #000;
  font-size: 2rem;
}



.service-hero {
  border-bottom: 4px solid #2ECE87
}




.service-body-head__decor {
  align-self: baseline;
}






.owl-carousel.init-carousel-owl {
  justify-self: center;
}



/* SERVICIOS CARD 4 */
.service-card-4 {
  border-radius: 1rem;
  overflow: hidden;
}

.service-card-4__image {
  position: relative;
  width: 100%;
  aspect-ratio: 5 / 5.5;
  min-height: 350px;
}

/* Asegura imagen full */
.service-card-4__image img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  z-index: 1;
}

/* Si hay wrappers del field */
.service-card-4__image .field,
.service-card-4__image .field__item {
  height: 100%;
}

/* Importante: si el formatter del field trae link, que no robe clics */
.service-card-4__image .field a {
  pointer-events: none;
}

/* Overlay arriba */
.service-card-4__overlay {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0rem;
  z-index: 5;
  height: 125px;
  padding: 2rem;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
  background: rgba(0, 0, 0, .55);
  box-shadow: 0 -10px 18px rgba(0, 0, 0, .18);
}


/* La franja oscura REAL (no depende del texto) */
.service-card-4__overlay::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;

  /* Base oscura + degradado: se nota sí o sí */
  background:
    linear-gradient(to top,
      rgba(0, 0, 0, .78) 0%,
      rgba(0, 0, 0, .60) 55%,
      rgba(0, 0, 0, 0) 100%);
}

/* Botón redondo */
.service-card-4__icon-link:hover,
.service-card-4__icon-link {
  width: 3.61rem;
  height: 3.61rem;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;

  background: #11c37a;
  color: #fff;
  text-decoration: none;

  box-shadow: 0 10px 18px rgba(0, 0, 0, .28);
  /*  transform: translateY(-0.5rem); */
  margin-bottom: 0;
  border: 2px solid #707070;
}


.service-card-4__icon-arrow {
  font-size: 3rem;
  font-family: 'Montserrat';
  align-self: center;
  line-height: normal;
  margin-bottom: .2rem;
}


.service-card-4__title-link:hover,
.service-card-4__title-link {

  font-family: 'Montserrat';
  font-weight: bold;
  font-size: 26px;
  letter-spacing: -0.02em;
  line-height: 40px;
  text-align: center;
  color: #fff;
  text-decoration: none;

}

.service-card-4__title-link:hover {
  text-decoration: underline;
}

/* SERVICIOS CARD 4 */

#etapas-de-la-medicion .gsc-icon-box.top-center .highlight_content .desc {
  text-align: left;
  font-weight: 400;
  font-size: 1rem;
  line-height: normal;
}

#etapas-de-la-medicion .gsc-icon-box.top-center .highlight_content .desc p strong {
  margin-bottom: 1rem;
  display: block;
}

#etapas-de-la-medicion .gsc-icon-box.top-center .highlight-icon {
  position: relative;
}

/* #etapas-de-la-medicion .highlight-icon::after {
    content: "";
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: 100%;
    height: 100px;
    width: 2px;
    background: #1a55ff;
} */



#etapas-de-la-medicion .gsc-icon-box.top-center .highlight_content {
  max-width: fit-content;
  margin-top: 110px;
}



.highlight_content {
  padding: 1rem;
  border-top: 2px solid #1a55ff;
}

/* #etapas-de-la-medicion .highlight-icon::before {
    content: "";
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: calc(100% + 40px);
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #1a55ff;
} */

.p-margin-0 p {
  margin: 0;
}

/* mobile */
@media (max-width: 767px) {



  .integrante-card__inner {
    padding: 1rem;
  }

  #etapas-de-la-medicion .font-48 {
    margin-bottom: 1rem;
  }



  /* móvil */
  .nuestro-impacto .gsc-column.col-12 {
    max-width: 80%;
  }

  .nuestro-impacto .column-content.item {
    width: 80%;
    height: auto;
  }

  .nuestro-impacto .column-content.item p:first-child {
    font-size: smaller;
  }


  .service-card__more img {
    position: absolute;
    z-index: 99;
    right: .5rem;
    max-width: 2.5rem;
    bottom: .5rem;
  }


  body {
    font-size: .83rem !important
  }


  .font-60 p {
    line-height: normal;
    margin-bottom: 1rem;
  }

  p {
    line-height: 1.2rem;
  }


  header.header-default {
    padding: 1rem 0;
  }


  #promesa .cta {
    background-color: #f8f9fa !important;
    margin: 1rem 0;
    border: 1px solid #ccc;
  }

  #promesa a {
    font-size: .8rem;
  }


  #promesa .cta-text {
    font-weight: bold;
    font-size: 1.1rem;
    line-height: normal;
    margin-bottom: 1rem;
  }

  .bloque-redes .titulo {
    font-size: 1.7rem !important;
    line-height: normal !important;
  }


  .elvideo {
    background-image: url(/sites/default/files/nosotros/bg-video-nosotros.jpg);
    background-repeat: no-repeat;
    background-size: 100% 110px;
  }

  .bg-nosotros-video {
    min-height: 100px;
    position: relative;
  }

  .font-54 {
    font-size: 1.5rem;
  }


  .text-linea-tiempo {
    font-size: 191%;
    width: 250px;
    line-height: normal;
  }

  .btn-verde {
    font-size: 1.175rem !important;
    padding: .4rem 1rem !important;

  }


  header.header-default .header-main-inner .branding {
    padding: 0 !important;
  }

  header .site-branding-logo {
    position: absolute;
    padding: .5rem 2rem .5rem 0;
  }

  /* header .site-branding-logo {
    max-width: 80% !important;
  } */




  .font-60 {
    font-weight: bold;
    font-size: 1.6rem;
  }

  .encabezado .font-60 {
    font-weight: bold;
    font-size: 1.6rem;
    letter-spacing: normal;
    line-height: normal;
  }

  [data-onepage-title="CTA Matera"] {
    background-position: right center;
  }


  header .site-branding-logo img {
    max-width: 70%;
  }

  .service-hero__media img {
    object-position: left center;
  }

  .service-hero__media img {
    height: 200px;
  }

  .service-hero__title-wrap {
    bottom: 2rem;
  }

  .service-hero__title {
    font-size: 1.6rem;
  }

  #blogs-inicio {
    background-size: auto;
  }

  .encabezado-blog {
    height: 5rem;
    display: flex !important;
    align-items: center;
    justify-content: center;
  }

}


.nuestra-promesa-fila .gsc-button {
  padding: .2rem 1.5rem;
}

@media (min-width: 768px) {

  #etapas-de-la-medicion .font-48 {
    margin-bottom: 2rem;
  }


  #beneficios-home .gsc-heading.style-1 .title,
  .font-60 {
    font-size: 3rem;
  }

  .font-54 {
    font-size: 2.9rem;
  }


  .font-34 {
    font-size: 1.5rem;
  }

  .font-30 {
    font-size: 1.4rem;
  }

  .font-48 {
    font-size: 2.45rem;
  }

  .font-22 {
    font-size: 1.2rem;
  }

  .font-20 {
    font-size: 1.12rem;
  }


  .font-18 {
    font-size: 1.1rem;
  }


  .gsc-column .texto-destacado-servicio {
    position: absolute;
    left: 3.22rem;
    top: 9.44rem;
    /* ajusta para subir/bajar */
    max-width: 57%;
    padding: 2rem !important;
    border-radius: 1rem;
    background: rgba(70, 70, 70, .72);
    color: #fff;
    z-index: 5;
    margin: 0 !important;
  }



  /* #titulo-promesa{
    min-height: 369px;
  }
 */

  .text-linea-tiempo {
    font-size: 2.5rem;
    max-width: 732px;
    text-align: center;
  }

  .btn-verde {
    font-size: 1.375rem !important;
    padding: 1rem 2rem !important;
  }



  #etapas .gsc-column {
    padding: 0;
    flex-basis: 0;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%;
  }

  .encabezado .font-60 {
    font-size: 55px;
    letter-spacing: -0.02em;
    line-height: 72px;
    text-align: left;
    color: #1e45c6;
  }


  .encabezado-blog {
    height: 303px;
    display: flex !important;
    align-items: center;
    justify-content: center;
  }
}

@media (min-width: 992px) and (max-width: 1199.98px) {






  .navigation .gva_menu>li>a {
    font-size: 1rem !important;
  }

  div[data-onepage-title="CTA Matera"] {
    background-position: 26% center;
  }

  .header-main .container {
    max-width: 100% !important;
  }

  .navigation .gva_menu>li>a {
    padding: .5rem .5rem !important;
  }

  .branding {
    max-width: 400px !important;
  }



}


@media (min-width: 1200px) and (max-width: 1486px) {


  .gsc-button {
    padding-left: 2rem;
    padding-right: 2rem;
  }


  .nuestro-impacto .column-content.item p:first-child {
    font-size: smaller !important;
  }

  #block-daudo-subtheme-logosclientes-2 .blazy.blazy--field-img-logo>.field__item {
    margin-bottom: 2rem;
  }

  .owl-carousel .owl-dots {
    margin-top: 2rem;
  }


  #beneficios-home .gsc-heading.style-1 .title,
  .font-60 {
    font-size: 3.1rem;
  }

  .font-54 {
    font-size: 3rem;
  }


  .font-30 {
    font-size: 1.5rem;
  }

  .font-34 {
    font-size: 1.48rem;
  }

  .font-48 {
    font-size: 2.55rem;
  }

  .font-22 {
    font-size: 1.3rem;
  }

  .font-20 {
    font-size: 1.22rem;
  }


  .font-18 {
    font-size: 1.2rem;
  }





  .container {
    max-width: 1300px;
  }

  #servicios-bg-verde h3,
  #beneficios-home .gsc-heading.style-1 .title,
  .font-60 {
    font-size: 2.8rem;
  }

  .encabezado .font-60 {
    font-size: 2.1rem;
    line-height: normal;
  }

  .gsc-heading.style-1 .title {
    font-size: 2rem;
    position: relative;
  }

  .font-22 {
    font-size: 1.125rem;
  }

  .gsc-button.large {
    font-size: 1.1275rem;
    padding: .7rem 1.35rem;
    margin: 0;
  }

  header .header-main {
    min-height: 150px;
  }


  .container {
    width: calc(100vw - 150px);
  }
}



@media (min-width: 992px) {



  .service-card__excerpt {
    font-size: 22px;
  }

  #titulo-promesa {
    min-height: 100px;
  }

  .nuestra-promesa {
    position: absolute;
    top: 74px;
  }




  .bg-nosotros-video {
    min-height: 198px;
  }


  #video-nosotros .video {
    position: absolute;
    top: -10rem;
  }

  #portafolio .font-60 {
    margin-top: -1.5rem;
  }

  .service-card__box {
    left: 4rem;
    top: 173px;
    width: min(562px, calc(100% - 140px));
    padding: 28px 28px 22px;
  }



}

@media (min-width: 1200px) {

  .nuestros-clientes-decoracion {
    min-height: 400px !important;
  }

  .nuestros-clientes-decoracion .texto-decoracion {
    align-content: end;
    margin-bottom: -4rem;
  }

  #servicios-bg-azul p,
  #servicios-bg-verde p {
    margin-top: 0;
    margin-bottom: 2rem;
  }

  #footer {
    min-height: 553px;
  }


  /*   header .header-main {
    min-height: 207px;
  } */

  .navigation .gva_menu>li:last-child>a {
    padding-right: 0px;
  }


  .service-hero__title-wrap {
    bottom: 7.06rem !important;
  }

  .service-hero .service-title {
    font-size: 4.05rem;
    letter-spacing: -0.03em;
    line-height: 66.91px;
  }

  /*   header.header-default .header-main-inner .branding {
    width: 542px;
  } */


}

@media (min-width: 1487px) {




  .container-manifiesto {
    min-height: 774px !important;
  }

  #block-daudo-subtheme-logosclientes-2 .blazy.blazy--field-img-logo>.field__item {
    margin-bottom: 3rem !important;
  }


  .gsc-button {
    padding-left: 3rem !important;
    padding-right: 3rem !important;
  }


  #block-daudo-subtheme-logosclientes-2 .blazy.blazy--field-img-logo>.field__item {
    margin-bottom: 3rem;
  }


  #footer .footer-center,
  .empresa-b-certificada,
  .impactos,
  .manifiesto .manifiesto-contenido,
  .container-manifiesto,
  .service-body-head .node__content,
  #block-block-servicios-slider [data-onepage-title="Servicios"],
  #servicios-bg-azul,
  #servicios-bg-verde {
    padding-top: 100px !important;
    padding-bottom: 100px !important;
  }


  .service-body-head .node__content .mt-md-5 {
    margin-top: 0px !important;
  }

  #promesa .gsc-button {
    min-width: 494px;
  }

  #servicios-bg-azul,
  #servicios-bg-verde {
    min-height: 800px;
  }

  .manifiesto h3,
  #servicios-bg-azul h3,
  #servicios-bg-verde h3,
  #beneficios-home .gsc-heading.style-1 .title,
  .font-60 {
    font-size: 3.333rem;
    line-height: 70px;
  }

  .font-54 {
    font-size: 3.015rem;
  }


  .font-30 {
    font-size: 1.875rem;
    line-height: 40px;
  }

  .font-34 {
    font-size: 1.88rem;
  }



  .font-48 {
    font-size: 2.66rem;
    line-height: 57.6px;
  }

  .font-22 {
    font-size: 1.225rem;
  }

  .font-20 {
    font-size: 1.15rem;
  }


  .font-18 {
    font-size: 1.125rem;
  }

  body {
    font-size: 1.166rem !important
  }




  .text-linea-tiempo {
    font-size: 3rem;
    max-width: 732px;
    text-align: center;
  }

  /* Decoración a la derecha, debajo del título */
  .titulo-beneficios-3 h2::after {
    content: "";
    position: absolute;
    right: -30%;
    top: 2.5rem;
    aspect-ratio: 6 / 1;
    background: url(/sites/default/files/inline-images/texto-decorativo-beneficios.png) no-repeat right center;
    background-size: contain;
    z-index: 0;
    pointer-events: none;
  }

  .container {
    max-width: 1820px;
  }


  .bg-nosotros-video {
    min-height: 398px;
  }

  .gsc-button.large {
    font-size: 1.233rem;
    padding: .65rem 1.65rem;
    margin: 0;
  }
}

legend {
  font-size: inherit !important;
}



.nuestra-promesa {
  text-shadow: 1.09px 1.68px 6px rgba(0, 0, 0, 0.41);

}

.border-rounded {
  border-radius: 1rem;
}



/* Nosotros */

.manifiesto {
  position: relative;
  overflow: hidden;
  /* para que el overlay respete bordes */
  border-radius: 16px;
  /* ajusta al radio real de tu diseño */
}

.manifiesto::before {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  height: 100%;
  top: 50%;
  transform: translateY(-50%);
  z-index: 0;

  /* 25% blanco, 50% azul, 25% rojo */
  background: linear-gradient(to bottom,
      #ffffff 0%,
      #ffffff 12%,
      #1e45c6 12%,
      #1e45c6 88%,
      #f8f9fa 88%,
      #f8f9fa 100%)
}


/* Asegura que el contenido quede por encima del overlay */
.manifiesto>* {
  position: relative;
  z-index: 1;
}

/* Tarjeta */
.integrante-card {
  border: 1px solid #6b6b6b;
  border-radius: 0;
  /* en tu captura se ve bien cuadradita */
  background: #fff;
  height: 100%;
  margin: 1rem;
}

.integrante-card__inner {
  padding: 1.5rem;
}

/* Imagen: alto fijo + cover */
.integrante-card__media {
  width: 100%;
  overflow: hidden;
}

.integrante-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* Título */
.integrante-card__title {
  font-size: 1.44rem;
  font-weight: 700;
  margin: 1rem;
  text-align: center;
}

/* Descripción */
.integrante-card__desc {
  font-size: .82rem;
  line-height: 1.25;
  color: rgba(0, 0, 0, .75);
  text-align: center;
  min-height: 38px;
  /* ayuda a que no “salten” por textos cortos */
}

/* Botón redondo inferior */
.integrante-card__footer {
  margin-top: 10px;
}

.integrante-card__btn {
  width: 2.66rem;
  height: 2.66rem;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  color: rgba(0, 0, 0, .7);
  background: #f5f5f5;
}

.integrante-card__btn:hover {
  border-color: rgba(0, 0, 0, .35);
}

.integrante-card__btn-icon {
  font-weight: 700;
  font-size: 14px;
  line-height: 1;
  color: #fff;
  background: gray;
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 50%;
  align-content: center;
}

/* si no hay link */
.integrante-card__btn.is-disabled {
  opacity: .35;
}


.empresa-b-certificada {
  font-family: 'Montserrat';
  font-weight: bold;
  text-align: left;
  color: #fff;
  text-shadow: 1.09px 1.68px 6px rgba(0, 0, 0, 0.41);

}

.nuestro-impacto .item {
  font-family: Montserrat;
  font-weight: bold;
  font-size: 38.57px;
  letter-spacing: -0.01em;
  line-height: 38.57px;
  text-align: center;
  color: #fff;
  background-color: #1E45C6;

}


/* =========================
   SOLO SECCIÓN: .nuestro-impacto
   ========================= */

/* separa y centra las 6 tarjetas */
.nuestro-impacto .bb-container.container .row.row-wrapper {
  justify-content: center;

}

.nuestro-impacto .column-content.item:hover {
  background: #2343ab;
  box-shadow: 0 21px 26px rgba(0, 0, 0, .18);
  border: 4.5px solid rgba(0, 210, 255, 0.45);
}

/* tarjeta interna */
.nuestro-impacto .column-content.item {
  height: 197px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;

  background: #1e45c6;
  border: 2.5px solid rgba(0, 210, 255, 0.45);
  border-radius: 14px;
  box-shadow: 0 10px 18px rgba(0, 0, 0, .18);
}

/* tipografía */
.nuestro-impacto .column-content.item p {
  margin: 0;
  line-height: 1.05;
  color: #fff;
  font-weight: 800;
}

.nuestro-impacto .column-content.item p:first-child {
  font-size: 38px;
}

.nuestro-impacto .column-content.item p:nth-child(2) {
  font-size: 26px;
  font-weight: 700;
  margin-top: 6px;
}

/* cuando solo hay un <p> (100%) */
.nuestro-impacto .column-content.item p:only-child {
  font-size: 40px;
}



.nuestro-impacto .texto p {
  padding-top: 1rem;
  font-family: 'Montserrat';
  font-weight: normal;
  line-height: 25.2px;
}

.nuestro-impacto .column-content.item:hover {
  box-shadow:
    0 12px 22px rgba(0, 0, 0, 0.22),
    0 0 0 1px rgba(46, 206, 135, 0.35),
    0 0 18px rgba(46, 206, 135, 0.45);
  transform: translateY(-2px);
}



@media (min-width: 992px) {

  /* Layout horizontal */
  .navigation .gva_menu.gva_menu_main {
    display: flex;
    align-items: center;
    justify-content: center;
    /* opcional */
  }

  /* No apagues TODO: solo quita bordes que estén duplicando */
  .navigation .gva_menu.gva_menu_main>li,
  .navigation .gva_menu.gva_menu_main>li>a {
    border: 0 !important;
  }

  /* Cada item debe ser referencia para el separador */
  .navigation .gva_menu.gva_menu_main>li {
    position: relative;
  }

  /* Separador ÚNICO desde el 2do item */
  .navigation .gva_menu.gva_menu_main>li+li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 1px;
    height: 18px;
    background: #707070;
    opacity: .9;
    pointer-events: none;
  }

  /* Espacio para que el separador no choque con el texto */
  .navigation .gva_menu.gva_menu_main>li>a {
    display: block;
    padding: 1rem 1.2rem;
  }

  .navigation .gva_menu.gva_menu_main>li+li::before {
    z-index: 2;
  }

  .navigation .gva_menu.gva_menu_main>li>a {
    position: relative;
    z-index: 3;
  }
}


.btn-verde {
  background: #2ED18A !important;
  color: #ffffff !important;
  border: 3px solid rgba(0, 210, 255, 0.45) !important;
  border-radius: 3rem !important;
}

.btn-verde a {
  color: #ffffff !important;
  text-shadow: 1.09px 1.68px 6px #000;
  font-family: 'Montserrat';
}

.letra-blanca-sombra {
  font-family: 'Montserrat';
  color: #fff;
  text-shadow: 1.09px 1.68px 6px #000;
}

.modal-backdrop {
  z-index: 1050 !important;
}

.modal {
  z-index: 1055 !important;
}


.modal-backdrop.show {
  opacity: .89 !important;
  /* prueba .65 / .75 / .85 */
}

/* Si también quieres que sea más negro (a veces el theme lo cambia) */
.modal-backdrop {
  background-color: #000 !important;
}


.decoracion-video {
  max-width: 80%;
}

h2,
.h2 {
  font-size: 3.75rem;
}



.text-linea-tiempo {
  position: absolute;
  left: 8%;
  top: 15%;
  font-family: 'Montserrat';
  font-weight: bold;
  color: #fff;
  line-height: normal;
}

.anios25 {
  font-size: 121%;
}

.slick-arrow::before {
  color: #707070
}

.slick-prev,
.slick-next {
  width: 34px;
  height: 34px;
}


.slick--field-integrante--full .slick-prev {
  left: 0;
}

.slick--field-integrante--full .slick-next {
  right: 0;
}


.slick--field-integrante .slick-dots li button:before {
  content: '-';
  font-size: 4rem;
  line-height: 1rem;
}

.slick--field-integrante .slick-dots li.slick-active button:before {
  opacity: .75;
  color: #3B7EFF;
}


.js-webform-type-checkbox {
  flex-direction: row;
  display: flex;
  align-items: baseline;
}

.js-webform-type-checkbox label {
  margin-left: 1rem;
}


/* ===== SOLO ESTE BLOQUE ===== */
#block-daudo-subtheme-logosclientes-2 .blazy.blazy--field-img-logo {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  /* móvil: 2 */
  gap: 18px !important;
  align-items: center;
}

/* Tablet: 4 */
@media (min-width: 768px) {
  #block-daudo-subtheme-logosclientes-2 .blazy.blazy--field-img-logo {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}

/* PC: 6 */
@media (min-width: 992px) {
  #block-daudo-subtheme-logosclientes-2 .blazy.blazy--field-img-logo {
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  }
}

/* Reset al item (aquí suele estar el problema) */
#block-daudo-subtheme-logosclientes-2 .blazy.blazy--field-img-logo>.field__item {
  width: auto !important;
  float: none !important;
  display: flex !important;
  justify-content: center;
  align-items: center;
  background: #fff;
  border: 1px solid #747474;
  border-radius: 8px;
  padding: 10px;
  max-width: 210px;
  margin-bottom: 1rem;
  height: 80px;
  box-shadow: 0 14px 30px rgba(0, 0, 0, .06);
}

/* Asegura que el logo quede bien centrado y sin deformarse */
#block-daudo-subtheme-logosclientes-2 .blazy.blazy--field-img-logo img {
  max-width: 100%;
  /*   max-height: 48px;
 */
  /* ajusta si quieres más grande */
  height: auto;
  width: auto;
  object-fit: contain;
  display: block;
}

div p:last-child,
.texto-destacado-servicio p:last-child,
.title-desc p:last-child {
  margin: 0;
}








/* 1) El contenedor que tiene IMAGEN + TEXTO debe ser relativo */
#block-daudo-subtheme-views-block-service-block-img-servicio {
  position: relative;
}

/* 2) La imagen como card */
.service-card__bg .item-image,
#block-daudo-subtheme-views-block-service-block-img-servicio .item-image {
  position: relative;
  border-radius: 14px;
  overflow: hidden;
}


.service-card__bg .item-image img,
#block-daudo-subtheme-views-block-service-block-img-servicio .item-image img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 1rem;
  border: 1px solid #fff;
}

/* 3) Línea verde + punto */
.service-card__bg .item-image::before,
#block-daudo-subtheme-views-block-service-block-img-servicio .item-image::before {
  content: "";
  position: absolute;
  left: 3.22rem;
  top: 0;
  width: 1rem;
  height: 137px;
  z-index: 3;

  background:
    radial-gradient(circle at 9px 130px, #2ECE87 0 6px, transparent 7px),
    linear-gradient(#2ECE87, #2ECE87);
  background-size:
    18px 145px,
    2px 130px;
  background-position:
    0 0,
    8px 0;
  background-repeat: no-repeat;

  opacity: .95;
  pointer-events: none;
}

/* 4) El bloque de texto EXISTENTE encima de la imagen */
.gsc-column .column-content-inner {
  position: relative;
  /* para que el overlay se ancle bien en esta columna */
}



/* Tipografía adentro del overlay */
.gsc-column .texto-destacado-servicio p {
  margin: 0 0 10px 0;
  line-height: 1.35;
}

.gsc-column .texto-destacado-servicio p:last-child {
  margin-bottom: 0;
}


.nuestra-promesa-fila::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100px;
  background-color: #2ECE87;
}

#promesa .cta-text-btn {
  margin-top: 1.5rem !important;
}







/* SOLO: línea vertical + punto (arranca debajo del icono) */
#etapas-de-la-medicion .highlight-icon {
  position: relative;
}

/* adorno */
#etapas-de-la-medicion .highlight-icon::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 100%;
  /* inicia debajo del icono */
  transform: translateX(-50%);
  width: 18px;
  height: 110px;
  /* AJUSTA el largo de la línea */
  pointer-events: none;

  /* punto arriba + línea */
  background:
    radial-gradient(circle at 9px 6px, #2b5cff 0 4px, transparent 5px),
    linear-gradient(#2b5cff, #2b5cff);
  background-size:
    18px 110px,
    2px 110px;
  background-position:
    0 0,
    8px 3px;
  background-repeat: no-repeat;
}

#etapas-de-la-medicion .highlight-icon {
  padding-bottom: 1rem;
}

/* #etapas-de-la-medicion .highlight-icon::before {
  content: "";
  position: absolute;
  left: 3.22rem;
  top: 0;
  width: 1rem;
  height: 137px;
  z-index: 3;
  background: radial-gradient(circle at 9px 0px, #2ECE87 0 6px, transparent 7px), linear-gradient(#2ECE87, #2ECE87);
  background-size: 18px 145px, 2px 130px;
  background-position: 0 0, 8px 0;
  background-repeat: no-repeat;
  opacity: .95;
  pointer-events: none;
} */

#blogs-inicio article .post-title {
  min-height: 61px;
}


#blogs-inicio .owl-stage {
  display: flex;
}

#blogs-inicio .owl-item {
  display: flex;
  margin-bottom: 1rem;
  height: auto;
}

#blogs-inicio .owl-item .item {
  display: flex;
  height: 100%;
}

#blogs-inicio .post-card {
  height: 100%;
}

#blogs-inicio .post-card .card-body {
  display: flex;
  flex-direction: column;
}

.js-webform-checkboxes .webform-type-checkbox.js-form-item {
  margin: 0 !important;
}

.webform-submission-form span.fieldset-legend,
.webform-submission-form .form-item label {
  font-weight: bold;
  font-size: 1.11rem !important;
}

.sombra-form {
  box-shadow: 0 8px 28px rgba(0, 0, 0, 0.10);
}

.manifiesto-contenido .column-content.item {
  margin: auto;
}



.contenido-integrante {
  min-height: 215px;
  display: flex;
  flex-direction: column;
}


.integrante-card__inner:hover {
  background: #f3f3f3;
}

.integrante-card__btn-icon:hover {
  background-color: var(--verde);
}

.integrante-card__btn:hover {
  background-color: var(--azul);
}

.btn-mas img {
  max-width: 40px;
  height: auto;
}

.post-image .item-image img {
  border-radius: 1rem;
}

.categoria-conteo a,
.categoria-conteo {
  color: #7f8284;
  font-size: 1rem;
  font-weight: 500;
}


