/* ==========================================
   SECCIÓN 1: HISTORIA Y EVOLUCIÓN
   ========================================== */
.u-section-1 {
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-image: linear-gradient(to left, #b1363e, #5e3434);
  background-size: cover;
}

.u-section-1 .u-sheet-1 {
  min-height: 826px;
}

.u-section-1 .u-layout-wrap-1 {
  margin-top: 164px;
  margin-bottom: 60px;
}

.u-section-1 .u-image-1 {
  min-height: 590px;
  background-image: url("images/foto-3.webp");
  background-position: 55.96% 0%;
  --radius: 20px;
  --animation-custom_in-translate_x: 0px;
  --animation-custom_in-translate_y: 0px;
  --animation-custom_in-opacity: 0;
  --animation-custom_in-rotate: 0deg;
  --animation-custom_in-scale: 1;
  background-size: auto 110%;
}

.u-section-1 .u-container-layout-1 {
  box-shadow: 5px 5px 20px 0 rgba(0,0,0,0.4);
  padding: 30px 60px;
}

.u-section-1 .u-layout-cell-2 {
  min-height: 590px;
  --animation-custom_in-translate_x: 300px;
  --animation-custom_in-translate_y: 0px;
  --animation-custom_in-opacity: 0;
  --animation-custom_in-rotate: 0deg;
  --animation-custom_in-scale: 1;
}

.u-section-1 .u-container-layout-2 {
  padding: 30px 60px;
}

.u-section-1 .u-text-1 {
  text-shadow: 2px 2px 8px rgba(0,0,0,0.4);
  font-size: 3rem;
  --animation-custom_in-translate_x: 300px;
  --animation-custom_in-translate_y: 0px;
  margin: 12px auto 0 0;
}

.u-section-1 .u-text-2 {
  font-size: 1.125rem;
  margin: 21px 0 0;
}

.u-section-1 .u-btn-1 {
  text-transform: uppercase;
  font-size: 0.875rem;
  letter-spacing: 2px;
  border-style: solid;
  margin: 34px auto 0 0;
  padding: 10px 34px;
}

@media (max-width: 1199px) {
  .u-section-1 .u-sheet-1 {
    min-height: 722px;
  }

  .u-section-1 .u-image-1 {
    min-height: 486px;
  }

  .u-section-1 .u-layout-cell-2 {
    min-height: 486px;
  }

  .u-section-1 .u-text-1 {
    --animation-custom_in-opacity: 0;
    --animation-custom_in-rotate: 0deg;
    --animation-custom_in-scale: 1;
  }
}

@media (max-width: 991px) {
  .u-section-1 .u-sheet-1 {
    min-height: 608px;
  }

  .u-section-1 .u-image-1 {
    min-height: 372px;
  }

  .u-section-1 .u-container-layout-1 {
    padding-left: 30px;
    padding-right: 30px;
  }

  .u-section-1 .u-layout-cell-2 {
    min-height: 100px;
  }

  .u-section-1 .u-container-layout-2 {
    padding-left: 30px;
    padding-right: 30px;
  }
}

@media (max-width: 767px) {
  .u-section-1 .u-sheet-1 {
    min-height: 894px;
  }

  .u-section-1 .u-image-1 {
    min-height: 558px;
  }

  .u-section-1 .u-container-layout-1 {
    padding-left: 10px;
    padding-right: 10px;
  }

  .u-section-1 .u-container-layout-2 {
    padding-left: 10px;
    padding-right: 10px;
  }
}

@media (max-width: 575px) {
  .u-section-1 .u-sheet-1 {
    min-height: 687px;
  }

  .u-section-1 .u-image-1 {
    min-height: 351px;
  }

  .u-section-1 .u-text-1 {
    font-size: 2rem;
  }
} 

/* ==========================================
   SECCIÓN 2: MISIÓN Y VISIÓN (PARALLAX)
   ========================================== */
.u-section-2 {
  background-image: linear-gradient(0deg, rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4)), url('images/fondo-3.webp');
  background-position: 50% 40%;
}

.u-section-2 .u-sheet-1 {
  min-height: 588px;
}

.u-section-2 .u-text-1 {
  text-shadow: 2px 2px 8px rgba(0,0,0,0.4);
  --animation-custom_in-translate_x: 300px;
  --animation-custom_in-translate_y: 0px;
  --animation-custom_in-opacity: 0;
  --animation-custom_in-rotate: 0deg;
  --animation-custom_in-scale: 1;
  font-size: 3rem;
  margin: 143px 595px 0 60px;
}

.u-section-2 .u-list-1 {
  width: 1080px;
  margin: 0 0 60px auto;
}

.u-section-2 .u-repeater-1 {
  grid-auto-columns: calc(50% - 5px);
  grid-template-columns: repeat(2, calc(50% - 5px));
  min-height: 222px;
  --gap: 10px;
}

.u-section-2 .u-list-item-1 {
  --animation-custom_in-translate_x: 0px;
  --animation-custom_in-translate_y: 0px;
  --animation-custom_in-opacity: 0;
  --animation-custom_in-rotate: 0deg;
  --animation-custom_in-scale: 1;
}

.u-section-2 .u-container-layout-1 {
  padding: 30px 30px 30px 0;
}

.u-section-2 .u-text-2 {
  margin-top: 0;
  margin-bottom: 0;
  text-shadow: 2px 2px 8px rgba(0,0,0,0.4);
}

.u-section-2 .u-text-3 {
  margin-left: 0;
  margin-bottom: 0;
}

.u-section-2 .u-list-item-2 {
  --animation-custom_in-translate_x: 0px;
  --animation-custom_in-translate_y: 0px;
  --animation-custom_in-opacity: 0;
  --animation-custom_in-rotate: 0deg;
  --animation-custom_in-scale: 1;
}

.u-section-2 .u-container-layout-2 {
  padding: 30px 30px 30px 0;
}

.u-section-2 .u-text-4 {
  margin-top: 0;
  margin-bottom: 0;
  text-shadow: 2px 2px 8px rgba(0,0,0,0.4);
}

.u-section-2 .u-text-5 {
  margin-left: 0;
  margin-bottom: 0;
}

@media (max-width: 1199px) {
   .u-section-2 {
    background-position: 70% 10%;
    background-size: cover, cover;
  }

  .u-section-2 .u-sheet-1 {
    min-height: 485px;
  }

  .u-section-2 .u-text-1 {
    margin-top: 60px;
    margin-right: 455px;
    margin-left: 0;
  }

  .u-section-2 .u-list-1 {
    width: 940px;
  }

  .u-section-2 .u-repeater-1 {
    min-height: 194px;
  }
}

@media (max-width: 991px) {
  .u-section-2 .u-sheet-1 {
    min-height: 371px;
  }

  .u-section-2 .u-text-1 {
    margin-right: 235px;
  }

  .u-section-2 .u-list-1 {
    width: 720px;
  }
}

@media (max-width: 767px) {
  .u-section-2 .u-sheet-1 {
    min-height: 278px;
  }

  .u-section-2 .u-text-1 {
    margin-right: 55px;
  }

  .u-section-2 .u-list-1 {
    width: 540px;
  }

  .u-section-2 .u-repeater-1 {
    grid-auto-columns: 100%;
    grid-template-columns: 100%;
  }

  .u-section-2 .u-container-layout-1 {
    padding-right: 10px;
  }

  .u-section-2 .u-container-layout-2 {
    padding-right: 10px;
  }
}

@media (max-width: 575px) {
  .u-section-2 .u-sheet-1 {
    min-height: 175px;
  }

  .u-section-2 .u-text-1 {
    margin-right: 0;
  }

  .u-section-2 .u-list-1 {
    width: 340px;
  }
}

/* ==========================================
   SECCIÓN 3: POLÍTICA DE GESTIÓN INTEGRADA
   ========================================== */
.u-section-3 .u-sheet-1 {
  min-height: 870px;
}

.u-section-3 .u-layout-wrap-1 {
  margin-top: 60px;
  --animation-custom_in-translate_x: 300px;
  --animation-custom_in-translate_y: 0px;
  --animation-custom_in-opacity: 0;
  --animation-custom_in-rotate: 0deg;
  --animation-custom_in-scale: 1;
}

.u-section-3 .u-layout-cell-1 {
  min-height: 770px;
}

.u-section-3 .u-container-layout-1 {
  padding: 20px 0;
}

.u-section-3 .u-text-1 {
  text-shadow: 2px 2px 8px rgba(0,0,0,0.4);
  font-size: 3rem;
  --animation-custom_in-translate_x: 300px;
  --animation-custom_in-translate_y: 0px;
  --animation-custom_in-opacity: 0;
  --animation-custom_in-rotate: 0deg;
  --animation-custom_in-scale: 1;
  margin: 0;
}

.u-section-3 .u-list-1 {
  margin: 41px 30px 0;
}

.u-section-3 .u-repeater-1 {
  grid-template-columns: 100%;
  min-height: 467px;
  margin-left: auto;
  grid-auto-columns: 100%;
}

.u-section-3 .u-container-layout-2, 
.u-section-3 .u-container-layout-3, 
.u-section-3 .u-container-layout-4 {
  padding: 10px 0;
}

.u-section-3 .u-text-2, 
.u-section-3 .u-text-4, 
.u-section-3 .u-text-6 {
  font-weight: 700;
  font-size: 1.5rem;
  margin: 0 auto 0 0;
}

.u-section-3 .u-text-3, 
.u-section-3 .u-text-5, 
.u-section-3 .u-text-7 {
  margin: 5px 20px 0 0;
}

.u-section-3 .u-image-1 {
  min-height: 443px;
  background-image: url("images/foto-4.webp");
  background-position: 44.65% 50%;
  --radius: 20px;
  --animation-custom_in-translate_x: 300px;
  --animation-custom_in-translate_y: 0px;
  --animation-custom_in-opacity: 0;
  --animation-custom_in-rotate: 0deg;
  --animation-custom_in-scale: 1;
  background-size: cover;
}

.u-section-3 .u-container-layout-5, 
.u-section-3 .u-container-layout-6, 
.u-section-3 .u-container-layout-7 {
  box-shadow: 5px 5px 20px 0 rgba(0,0,0,0.4);
  padding: 0;
}

.u-section-3 .u-image-2 {
  min-height: 318px;
  background-image: url("images/foto-5.webp");
  background-position: 50% 12.36%;
  background-size: cover;
  --radius: 20px;
  --animation-custom_in-translate_x: 300px;
  --animation-custom_in-translate_y: 0px;
  --animation-custom_in-opacity: 0;
  --animation-custom_in-rotate: 0deg;
  --animation-custom_in-scale: 1;
}

.u-section-3 .u-image-3 {
  min-height: 318px;
  background-image: url("images/foto-6.webp");
  background-position: 50% 50%;
  --radius: 20px;
  --animation-custom_in-translate_x: 300px;
  --animation-custom_in-translate_y: 0px;
  --animation-custom_in-opacity: 0;
  --animation-custom_in-rotate: 0deg;
  --animation-custom_in-scale: 1;
}

.u-section-3 .u-layout-wrap-2 {
  width: 410px;
  box-shadow: 0px 0px 8px 0px rgba(51,51,51,1);
  --radius: 20px;
  --animation-custom_in-translate_x: 0px;
  --animation-custom_in-translate_y: 0px;
  --animation-custom_in-opacity: 0;
  --animation-custom_in-rotate: 0deg;
  --animation-custom_in-scale: 1;
  margin: -106px auto 60px 60px;
}

.u-section-3 .u-layout-cell-5 {
  min-height: 75px;
  --radius: 20px;
}

.u-section-3 .u-container-layout-8 {
  padding: 4px 0 6px;
}

.u-section-3 .u-image-4 {
  width: 171px;
  height: 65px;
  margin: 1px auto 0;
}

.u-section-3 .u-layout-cell-6 {
  min-height: 75px;
}

.u-section-3 .u-container-layout-9 {
  padding: 13px 0;
}

.u-section-3 .u-text-8 {
  margin: 0 5px;
}

@media (max-width: 1199px) {
  .u-section-3 .u-sheet-1 {
    min-height: 735px;
  }

  .u-section-3 .u-layout-cell-1 {
    min-height: 882px;
  }

  .u-section-3 .u-text-1 {
    margin-top: 191px;
  }

  .u-section-3 .u-list-1 {
    margin-bottom: -302px;
  }

  .u-section-3 .u-image-1 {
    min-height: 365px;
  }

  .u-section-3 .u-image-2, .u-section-3 .u-image-3 {
    min-height: 262px;
  }
}

@media (max-width: 991px) {
  .u-section-3 .u-sheet-1 {
    min-height: 1132px;
  }

  .u-section-3 .u-layout-cell-1 {
    min-height: 935px;
  }

  .u-section-3 .u-container-layout-1 {
    padding-right: 130px;
  }

  .u-section-3 .u-text-1 {
    margin-top: 243px;
  }

  .u-section-3 .u-list-1 {
    margin-bottom: -276px;
  }

  .u-section-3 .u-repeater-1 {
    min-height: 455px;
  }

  .u-section-3 .u-text-2, .u-section-3 .u-text-4, .u-section-3 .u-text-6 {
    font-size: 1.25rem;
  }

  .u-section-3 .u-image-1 {
    min-height: 599px;
  }

  .u-section-3 .u-image-2, .u-section-3 .u-image-3 {
    min-height: 852px;
  }

  .u-section-3 .u-layout-cell-6 {
    min-height: 100px;
  }
}

@media (max-width: 767px) {
  .u-section-3 .u-sheet-1 {
    min-height: 2539px;
  }

  .u-section-3 .u-layout-cell-1 {
    min-height: 641px;
  }

  .u-section-3 .u-container-layout-1 {
    padding-right: 60px;
  }

  .u-section-3 .u-text-1 {
    margin-top: 0;
  }

  .u-section-3 .u-list-1 {
    margin-bottom: -397px;
  }

  .u-section-3 .u-image-1 {
    min-height: 449px;
  }

  .u-section-3 .u-image-2, .u-section-3 .u-image-3 {
    min-height: 639px;
  }

  .u-section-3 .u-layout-cell-5 {
    min-height: 150px;
  }
}

@media (max-width: 575px) {
  .u-section-3 .u-sheet-1 {
    min-height: 1907px;
  }

  .u-section-3 .u-layout-wrap-1 {
    margin-top: 377px;
  }

  .u-section-3 .u-layout-cell-1 {
    min-height: 303px;
  }

  .u-section-3 .u-container-layout-1 {
    padding: 0;
  }

  .u-section-3 .u-text-1 {
    font-size: 2rem;
    width: auto;
    margin-top: -345px;
  }

  .u-section-3 .u-list-1 {
    margin-top: 29px;
  }

  .u-section-3 .u-repeater-1 {
    min-height: 531px;
  }

  .u-section-3 .u-text-2, .u-section-3 .u-text-4, .u-section-3 .u-text-6 {
    width: auto;
    margin-top: -15px;
  }

  .u-section-3 .u-image-1 {
    min-height: 284px;
  }

  .u-section-3 .u-image-2, .u-section-3 .u-image-3 {
    min-height: 402px;
  }

  .u-section-3 .u-layout-wrap-2 {
    margin-top: 41px;
    margin-bottom: 40px;
    width: auto;
  }

  .u-section-3 .u-layout-cell-5, .u-section-3 .u-layout-cell-6 {
    min-height: 77px;
  }

  .u-section-3 .u-image-4 {
    width: 151px;
  }
} 

/* ==========================================
   SECCIÓN 4: ESTADÍSTICAS / CONTADORES
   ========================================== */
.u-section-4 .u-sheet-1 {
  min-height: 359px;
}

.u-section-4 .u-list-1 {
  margin-bottom: 54px;
  margin-top: 54px;
  --animation-custom_in-translate_x: 0px;
  --animation-custom_in-translate_y: 0px;
  --animation-custom_in-opacity: 0;
  --animation-custom_in-rotate: 0deg;
  --animation-custom_in-scale: 1;
}

.u-section-4 .u-repeater-1 {
  grid-template-columns: repeat(4, 25%);
  min-height: 251px;
  grid-auto-columns: 25%;
}

.u-section-4 .u-container-layout-1, 
.u-section-4 .u-container-layout-2, 
.u-section-4 .u-container-layout-3, 
.u-section-4 .u-container-layout-4 {
  padding: 30px;
}

.u-section-4 .u-icon-1, 
.u-section-4 .u-icon-3, 
.u-section-4 .u-icon-4 {
  height: 64px;
  width: 64px;
  margin: 0 auto;
  padding: 6px;
}

.u-section-4 .u-icon-2 {
  height: 64px;
  width: 64px;
  margin: 0 auto;
}

.u-section-4 .u-text-1, 
.u-section-4 .u-text-3, 
.u-section-4 .u-text-5, 
.u-section-4 .u-text-7 {
  font-weight: 700;
  font-size: 3rem;
  margin: 22px auto 0;
}

.u-section-4 .u-text-2, 
.u-section-4 .u-text-4, 
.u-section-4 .u-text-6, 
.u-section-4 .u-text-8 {
  text-transform: uppercase;
  font-weight: 300;
  letter-spacing: 1px;
  font-size: 1rem;
  margin: 10px auto 0;
}

@media (max-width: 1199px) {
  .u-section-4 .u-sheet-1 {
    min-height: 366px;
  }

  .u-section-4 .u-list-1 {
    margin-top: 81px;
  }

  .u-section-4 .u-repeater-1 {
    min-height: 207px;
  }

  .u-section-4 .u-icon-2 {
    padding: 10px;
  }
}

@media (max-width: 991px) {
  .u-section-4 .u-sheet-1 {
    min-height: 614px;
  }

  .u-section-4 .u-list-1 {
    margin-top: 82px;
  }

  .u-section-4 .u-repeater-1 {
    grid-template-columns: repeat(2, 50%);
    min-height: 480px;
    grid-auto-columns: 50%;
  }
}

@media (max-width: 767px) {
  .u-section-4 .u-sheet-1 {
    min-height: 603px;
  }

  .u-section-4 .u-list-1 {
    margin-bottom: 31px;
    margin-top: 87px;
  }

  .u-section-4 .u-repeater-1 {
    grid-auto-columns: 100%;
  }

  .u-section-4 .u-container-layout-1, 
  .u-section-4 .u-container-layout-2, 
  .u-section-4 .u-container-layout-3, 
  .u-section-4 .u-container-layout-4 {
    padding-left: 10px;
    padding-right: 10px;
  }
}

@media (max-width: 575px) {
  .u-section-4 .u-sheet-1 {
    min-height: 516px;
  }

  .u-section-4 .u-list-1 {
    margin-top: 0;
    margin-bottom: 14px;
  }

  .u-section-4 .u-repeater-1 {
    grid-auto-columns: 50%;
  }

  .u-section-4 .u-text-1, 
  .u-section-4 .u-text-3, 
  .u-section-4 .u-text-5, 
  .u-section-4 .u-text-7 {
    font-size: 2.25rem;
  }
}

/* ==========================================
   ESTILOS EXTRA: CARRUSEL DE FOTOS Y LIGHTBOX
   ========================================== */
.carrusel-contenedor {
    position: relative;
    width: 100%;
}
.carrusel-fotos {
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    gap: 30px; 
    padding: 10px 0 30px 0; 
    -ms-overflow-style: none;
    scrollbar-width: none;
}
.carrusel-fotos::-webkit-scrollbar {
    display: none;
}
.tarjeta-foto {
    scroll-snap-align: center;
    flex: 0 0 90%; 
    background: transparent; 
    transition: transform 0.3s ease;
}
.tarjeta-foto:hover {
    transform: translateY(-5px); 
}
.tarjeta-foto img {
    width: 100%;
    height: 320px; 
    object-fit: cover;
    display: block;
}
.tarjeta-pie {
    padding: 15px 0; 
    text-align: left;
    border-top: 3px solid #b1363e; 
}
.tarjeta-pie h5 {
    margin: 0 0 8px 0;
    color: #333333;
    font-weight: 700;
    font-size: 1.2rem;
}
.tarjeta-pie p {
    margin: 0;
    color: #777777;
    font-size: 0.95rem;
    line-height: 1.5;
}
.nav-carrusel {
    display: flex;
    justify-content: center;
    gap: 15px;
    margin-top: 10px;
}
.nav-btn {
    background-color: #b1363e;
    color: white;
    border: none;
    width: 45px;
    height: 45px;
    border-radius: 50%;
    cursor: pointer;
    font-size: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.3s;
    box-shadow: 0 4px 10px rgba(0,0,0,0.2);
}
.nav-btn:hover {
    background-color: #8c2930;
}

@media (min-width: 768px) {
    .tarjeta-foto {
        flex: 0 0 calc(50% - 15px); 
        scroll-snap-align: start;
    }
}

/* ESTILOS DEL LIGHTBOX MEJORADO */
.lightbox-overlay {
    position: fixed; top: 0; left: 0; width: 100%; height: 100%;
    background: rgba(0,0,0,0.95); z-index: 9999999;
    display: flex; align-items: center; justify-content: center;
    transition: opacity 0.3s ease;
}
.lightbox-cerrar {
    position: absolute; top: 20px; right: 30px; color: white;
    font-size: 45px; cursor: pointer; z-index: 10; font-weight: bold;
}
.lightbox-contenido {
    position: relative;
    display: flex; flex-direction: column; align-items: center; justify-content: center;
    width: 100%; max-width: 1000px; padding: 20px; box-sizing: border-box;
}
#lightbox-img {
    max-width: 100%; max-height: 70vh; 
    object-fit: contain; border-radius: 6px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.6);
}
.lightbox-texto {
    width: 100%; text-align: center; margin-top: 25px;
}
.lightbox-texto h5 {
    color: #ffffff; font-size: 1.5rem; font-weight: 700; margin: 0 0 8px 0;
}
.lightbox-texto p {
    color: #cccccc; font-size: 1rem; margin: 0; line-height: 1.5;
}
.lightbox-btn {
    position: absolute; top: 40%; transform: translateY(-50%);
    background: rgba(255,255,255,0.1); border: 2px solid transparent; color: white;
    width: 55px; height: 55px; border-radius: 50%; font-size: 24px;
    cursor: pointer; z-index: 5; display: flex; justify-content: center; align-items: center;
    transition: all 0.3s ease;
}
.lightbox-btn:hover { background: #b1363e; border-color: #ffffff; }
.lightbox-btn.left { left: 20px; }
.lightbox-btn.right { right: 20px; }

/* Ajustes específicos para celulares */
@media (max-width: 768px) {
    .lightbox-btn { display: none; } 
    #lightbox-img { max-height: 55vh; }
    .lightbox-texto { margin-top: 15px; padding: 0 10px; }
    .lightbox-texto h5 { font-size: 1.25rem; }
    .lightbox-texto p { font-size: 0.95rem; }
}

/* ==========================================
   MENÚ DESPLEGABLE PC (ACERCA DE / GALERÍA)
   ========================================== */
.mi-dropdown {
    position: relative;
}

.mi-submenu {
    visibility: hidden;
    opacity: 0;
    position: absolute;
    top: calc(100% - 15px); 
    left: 0;
    width: 100%;
    background-color: #b1363e;
    list-style: none;
    padding: 0;
    margin: 0;
    box-shadow: 0 8px 16px rgba(0,0,0,0.3);
    z-index: 9999;
    transition: opacity 0.2s ease, visibility 0.2s ease;
}

.mi-dropdown:hover .mi-submenu {
    visibility: visible;
    opacity: 1;
}

.mi-submenu li a {
    color: #ffffff !important;
    text-decoration: none;
    padding: 15px 5px !important;
    display: block;
    text-transform: uppercase !important;
    font-size: 0.85rem !important;
    text-align: center;
    transition: background 0.3s ease;
}

.mi-submenu li a:hover {
    background-color: #8c2930 !important;
}

/* ==========================================
   ARREGLO DEFINITIVO DEL MENÚ MÓVIL
   ========================================== */
@media (max-width: 539px) {
    .u-sidenav-overflow {
        justify-content: flex-start !important; /* Desactiva el imán del centro */
        padding-top: 0px !important; 
    }
    
    .u-sidenav-overflow .u-nav-2 {
        /* Usamos negativo para "chupar" los botones hacia arriba */
        margin-top: 100px !important; 
    }
}

/* ==========================================
   PREVENIR CURSOR TITILANTE EN ENLACES (#)
   ========================================== */
/* Quita el recuadro de foco que a veces ponen los navegadores al saltar a una sección */
:target, :focus {
    outline: none !important; 
}

/* Vuelve invisible la barrita de texto en títulos y secciones */
h1, h2, h3, h4, h5, h6, section, p, span {
    caret-color: transparent !important; 
}

/* Nos aseguramos de que el formulario de contacto SÍ mantenga su cursor normal */
input, textarea {
    caret-color: auto !important; 
}