/* ═══════════════════════════════════════════════════════════════════
   HERO SLIDER — slider.css
   ──────────────────────────────────────────────────────────────────
   Slider de pantalla completa con overlay de texto centrado.
   ► Para cambiar la altura del slider: editar --slider-height
   ► Para cambiar el color del overlay: editar .slide-overlay background
   ► Para cambiar las imágenes: editar config.js → images.slides[]
   ► Para cambiar los textos: editar index.html (sección <!-- SLIDER -->)
   ═══════════════════════════════════════════════════════════════════ */

/* ── Altura del slider: ocupa el viewport menos el nav ──────── */
/* Para hacer el slider más alto/bajo, cambia este valor         */
.slider {
  position: relative;
  overflow: hidden;
  height: calc(100vh - 76px);   /* 76px = altura aproximada del nav */
  min-height: 520px;
  max-height: 820px;
}

/* ── Track: los 3 slides en fila horizontal ─────────────────── */
.slider-track {
  display: flex;
  width: 300%;           /* 3 slides × 100% */
  height: 100%;
  transition: transform 0.8s cubic-bezier(0.77, 0, 0.175, 1);
}

/* ── Slide individual ───────────────────────────────────────── */
.slide {
  width: 33.333%;        /* Cada slide = 1/3 del track */
  height: 100%;
  position: relative;
  flex-shrink: 0;
}

/* Imagen de fondo del slide */
.slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  display: block;
}

/* ── Overlay oscuro sobre la imagen ─────────────────────────── */
/* Para cambiar la oscuridad: modifica el último valor de rgba() */
.slide-overlay {
  position: absolute;
  inset: 0;
  background: rgba(10, 25, 50, 0.60);
  display: flex;
  align-items: center;
  justify-content: center;
}

/* ── Contenido de texto del slide (centrado) ────────────────── */
.slide-content {
  text-align: center;
  padding: 0 var(--section-px);
  max-width: 720px;
  width: 100%;
}

/* Eyebrow (texto pequeño arriba del título) */
.slide-eyebrow {
  display: inline-block;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--color-highlight);
  margin-bottom: 16px;
}

/* Título principal del slide */
.slide-content h1 {
  font-family: var(--font-heading);
  font-size: clamp(32px, 5.5vw, 68px);
  color: var(--color-white);
  line-height: 1.1;
  margin-bottom: 20px;
  text-shadow: 0 2px 20px rgba(0, 0, 0, 0.3);
}

/* Palabra destacada en el título */
.slide-content h1 em {
  font-style: normal;
  color: var(--color-highlight);
}

/* Subtítulo / párrafo del slide */
.slide-content p {
  font-size: 17px;
  color: rgba(255, 255, 255, 0.82);
  line-height: 1.65;
  margin-bottom: 32px;
  max-width: 540px;
  margin-left: auto;
  margin-right: auto;
}

/* Botones del slide */
.slide-buttons {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
  justify-content: center;
}

/* ── Controles: flechas anterior / siguiente ────────────────── */
.slider-btn {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: rgba(255, 255, 255, 0.18);
  border: 1.5px solid rgba(255, 255, 255, 0.38);
  color: var(--color-white);
  width: 46px;
  height: 46px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  font-size: 20px;
  z-index: 10;
  transition: var(--transition-base);
  line-height: 1;
}
.slider-btn:hover {
  background: rgba(255, 255, 255, 0.32);
}
.slider-btn.prev { left: 20px; }
.slider-btn.next { right: 20px; }

/* ── Puntos indicadores (dots) ──────────────────────────────── */
.slider-dots {
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 8px;
  z-index: 10;
}

.slider-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.40);
  border: none;
  cursor: pointer;
  transition: all 0.3s ease;
}

/* Dot activo: se alarga y cambia a color highlight */
.slider-dot.active {
  background: var(--color-highlight);
  width: 28px;
  border-radius: 5px;
}
