@charset "utf-8";
/* CSS Document */
/*.ac-slide .carousel-item {
  height: 600px;
  position: relative;
  opacity: 1;
}
*/
.ac-slide .carousel-item{
    height: calc(100vh - 80px); /* ajusta 80px según tu header */
    min-height: 500px;
    position: relative;
    opacity: 1;
}
/* Imagen */
.ac-slide .carousel-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
/* Capa oscura + centrado */
.ac-slide .carousel-caption {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;      /* Centra horizontalmente */
    justify-content: center;  /* Centra verticalmente */
    text-align: center;       /* Centra el texto */
    user-select: none;
    padding: 0 10%;
}
.ac-slideP .carousel-captionP {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column; /* Asegura que el contenido se apile verticalmente */
  align-items: flex-start; /* Alinea los items a la izquierda */
  justify-content: center; /* Mantiene el contenido centrado verticalmente */
  text-align: center;        /* Alinea el texto a la izquierda */
  user-select: none;
  padding-left: 10%;       /* Espacio desde el borde izquierdo */
  padding-right: 10%;      /* Espacio de seguridad a la derecha */
}
/* Animaciones de texto */
.ac-slide .carousel-caption h2,
.ac-slide .carousel-caption p,
.ac-slide .sl-title,
.ac-slide .sl-detalles {
  opacity: 0;
  transform: translateY(30px);
  transition: all 0.8s ease;
}
.ac-slide .carousel-item.active .carousel-caption h2,
.ac-slide .carousel-item.active .sl-title {
  opacity: 1;
  transform: translateY(0);
  transition-delay: 0.2s;
}
.ac-slide .carousel-item.active .carousel-caption p,
.ac-slide .carousel-item.active .sl-detalles {
  opacity: 1;
  transform: translateY(0);
  transition-delay: 0.4s;
}
/* Tipografía */
.ac-slide .sl-title {
  font-size: clamp(1.6rem, 4vw, 3rem);
  font-weight: 700;
}
/* Indicadores */
.ac-slide .carousel-indicators button {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background-color: #ffffff;
  opacity: 0.7;
}
.ac-slide .carousel-indicators .active {
  opacity: 1;
}
.ac-slide .carousel-item img {
  filter: brightness(45%);
}
/* === DETALLES DEL SLIDER === */
.ac-slide .sl-detalles {
  /*font-size: clamp(1rem, 2.5vw, 1.4rem);*/
  max-width: 700px;
  margin: auto;
}
.sl-det-title-a{
 font-size:2.4rem;
 line-height:1.0;
 text-shadow: 1px 1px 1px rgba(0, 0, 0, 1.0);
}
.sl-det-title-b{
 font-size:1.6rem; 
 text-shadow: 1px 1px 1px rgba(0, 0, 0, 1.0);
}
.sl-det-subtitle-a{
 font-size:1.4rem; 
 text-shadow: 1px 1px 1px rgba(0, 0, 0, 1.0);
 padding-top:15px;
}
.sl-det-subtitle-b{
 font-size:1.0rem; 
 line-height:normal;
 text-shadow: 1px 1px 1px rgba(0, 0, 0, 1.0);
}
.titulo-slides{
 font-size:2.3rem;   
}
.desc-slides{
 font-size:1.8rem;
 color:rgba(255,255,255,0.5);
}
/* === FIN DETALLES === */
/* ==============================
   RESPONSIVE
  /* ==============================
   PANTALLAS GRANDES (>=1400px)
   ============================== */
@media (min-width: 1400px){
    .ac-slide .carousel-item{
        height: 600px;
    }
}
/* ==============================
   DESKTOP (1200px - 1399px)
   ============================== */
@media (min-width: 1200px) and (max-width: 1399.98px){
    .ac-slide .carousel-item{
        height: 85vh;
    }
}
/* ==============================
   LAPTOP (992px - 1199px)
   ============================== */
@media (min-width: 992px) and (max-width: 1199.98px){
    .ac-slide .carousel-item{
        height: 80vh;
    }
}
/* ==============================
   TABLETS (<= 992px)
   ============================== */
@media (max-width: 992px){
    .ac-slide .carousel-item{
        height: 70vh;
        min-height: 400px;
    }
}
/* ==============================
   MÓVILES GRANDES (<= 768px)
   ============================== */
@media (max-width: 768px){
    .ac-slide .carousel-item{
        height: 60vh;
        min-height: 320px;
    }
    .ac-slide .sl-detalles{
        padding: 0 1rem;
    }
}
/* ==============================
   MÓVILES PEQUEÑOS (<= 576px)
   ============================== */
@media (max-width: 576px){
    .ac-slide .carousel-item{
        height: 55vh;
        min-height: 280px;
    }
    .ac-slide .sl-detalles{
        padding: 0 0.8rem;
    }
}