
.tunel-lienzo,
.tunel-paradas { display: none; }
.tunel .tunel-envoltorio {
  position: relative;
  height: var(--tunel-alto, 760vh);
  background: var(--n-abismo);
}
.tunel .tunel-escenario {
  position: sticky;
  top: 0;
  height: 100vh;
  height: 100svh;
  overflow: hidden;
}
.tunel .tunel-lienzo {
  display: block;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.tunel .tunel-escenario::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 22vh;
  background: linear-gradient(transparent, var(--n-lienzo));
  opacity: 0;
  transition: opacity 900ms var(--w-curva);
  pointer-events: none;
}
.tunel.tunel-al-final .tunel-escenario::after { opacity: 1; }
.tunel .hero {
  position: absolute;
  inset: 0;
  min-height: 0;
  background: transparent;
}
.tunel .hero__cosmos { display: none; }
.tunel .hero__contenido,
.tunel .descubrir {
  transition: opacity 700ms var(--w-curva), transform 1100ms var(--w-curva-salida), filter 700ms var(--w-curva);
}
.tunel.tunel-en-viaje .hero__contenido {
  opacity: 0;
  transform: scale(1.07);
  filter: blur(8px);
  pointer-events: none;
}
.tunel.tunel-en-viaje .descubrir { opacity: 0; pointer-events: none; }
.tunel .hero__lema,
.tunel .hero__sublema { text-shadow: 0 2px 26px rgba(9, 13, 24, 0.75); }
.tunel .tunel-paradas {
  display: block;
  position: absolute;
  inset: 0;
  pointer-events: none;
}
.tunel-parada {
  position: absolute;
  top: 50%;
  width: min(34rem, 40vw);
  translate: 0 -50%;
}
.tunel-parada[data-lado="izquierda"] { left: max(var(--w-margen), calc((100% - var(--w-ancho, 1200px)) / 2)); }
.tunel-parada[data-lado="derecha"] { right: max(var(--w-margen), calc((100% - var(--w-ancho, 1200px)) / 2)); }
.tunel-parada--final {
  left: 50%;
  top: 40%;
  width: min(46rem, 84vw);
  translate: -50% -50%;
  text-align: center;
}
.tunel-parada > * {
  opacity: 0;
  transform: translateY(18px);
  filter: blur(8px);
  transition: opacity 500ms var(--w-curva), transform 900ms var(--w-curva-salida), filter 600ms var(--w-curva);
}
.tunel-parada.es-activa > * { opacity: 1; transform: none; filter: none; }
.tunel-parada.es-activa > :nth-child(2) { transition-delay: 120ms; }
.tunel-parada.es-activa > :nth-child(3) { transition-delay: 260ms; }
.tunel-parada .kicker { margin: 0 0 18px; }
.tunel-parada__titulo {
  margin: 0;
  font-size: clamp(28px, 1.9vw + 14px, 46px);
  font-weight: 600;
  line-height: 1.08;
  letter-spacing: -0.02em;
  color: var(--n-txt);
  text-wrap: balance;
  text-shadow: 0 2px 26px rgba(9, 13, 24, 0.8);
}
.tunel-parada__texto {
  margin: 18px 0 0;
  max-width: 40ch;
  font-size: var(--w-t-entrada);
  line-height: 1.5;
  color: var(--n-txt-2);
  text-wrap: pretty;
  text-shadow: 0 1px 18px rgba(9, 13, 24, 0.85);
}
.tunel-parada--final .tunel-parada__texto { margin-inline: auto; }
.tunel-parada__texto { text-align: justify; hyphens: auto; -webkit-hyphens: auto; }
.tunel-parada--final .tunel-parada__texto { text-align: center; }
@media (max-width: 760px) {
  .tunel-parada,
  .tunel-parada[data-lado] {
    left: var(--w-margen);
    right: var(--w-margen);
    top: auto;
    bottom: 8svh;
    width: auto;
    translate: none;
    text-align: left;
  }
  .tunel-parada--final[data-lado] {
    top: 16svh;
    bottom: auto;
    text-align: center;
  }
  .tunel-parada__titulo { font-size: clamp(25px, 6.8vw, 32px); }
  .tunel-parada__texto { font-size: 16px; }
}
.tunel-firma { display: none; }
.tunel .tunel-firma {
  display: block;
  position: absolute;
  left: 50%;
  top: var(--firma-y, 70%);
  width: 0;
  height: 0;
  opacity: var(--firma-op, 0);
  transform: translateY(calc(var(--firma-sube, 0px) * -1));
  pointer-events: none;
  will-change: transform, opacity;
}
.tunel-firma__narsil,
.tunel-firma__intelligence {
  position: absolute;
  left: 0;
  font-family: var(--n-titular); 
  font-weight: 400;
  text-transform: uppercase;
  font-variant-ligatures: none;
  white-space: nowrap;
  line-height: 1;
  translate: -50% 0;
}
.tunel-firma__narsil {
  bottom: clamp(14px, 1.6vh, 22px);
  padding-left: 0.34em;
  font-size: clamp(34px, 2.6vw + 18px, 64px);
  letter-spacing: 0.34em;
  color: var(--n-txt);
  text-shadow: 0 0 26px rgba(222, 193, 183, 0.28);
}
.tunel-firma__intelligence {
  top: clamp(14px, 1.6vh, 22px);
  padding-left: 0.52em;
  font-size: clamp(11px, 0.36vw + 8.6px, 15px);
  letter-spacing: 0.52em;
  color: #FFFFFF;
}
.tunel-firma__linea {
  position: absolute;
  left: 0;
  top: -0.75px;
  width: clamp(260px, 30vw, 520px);
  height: 1.5px;
  translate: -50% 0;
  background: linear-gradient(90deg, rgba(159, 106, 87, 0), rgba(159, 106, 87, 1) 35%, rgba(159, 106, 87, 1) 65%, rgba(159, 106, 87, 0));
  opacity: var(--firma-linea, 0);
}
@media (min-width: 761px) {
  .tunel .tunel-parada--final.tunel-parada--con-firma { top: var(--final-top, 34%); translate: -50% 0; }
}
@media (max-width: 760px) {
  .tunel .tunel-parada--final.tunel-parada--con-firma { top: var(--final-top, 16svh); bottom: auto; }
}
@media (max-width: 760px) {
  .tunel-firma__narsil { font-size: clamp(28px, 8vw, 40px); bottom: 12px; }
  .tunel-firma__intelligence { font-size: 10.5px; top: 12px; }
  .tunel-firma__linea { width: 64vw; }
}
