/* ===== Data-center flythrough intro (homepage only, once per session) ===== */
.tarin-intro {
  position: fixed;
  inset: 0;
  z-index: 9999;
  background: radial-gradient(120% 90% at 50% 120%, #0d1c3a 0%, #05070B 65%, #05070B 100%);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity var(--tarin-intro-exit-dur, 700ms) var(--ease-smooth), visibility var(--tarin-intro-exit-dur, 700ms);
  cursor: pointer;
}
html.intro-playing .tarin-intro {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
.tarin-intro.is-done {
  opacity: 0;
  pointer-events: none;
}
.tarin-intro.is-done .tarin-intro__canvas {
  transform: scale(1.12);
}

.tarin-intro__canvas {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
  transform: scale(1);
  transition: transform var(--tarin-intro-exit-dur, 700ms) var(--ease-smooth);
  will-change: transform;
}

.tarin-intro__vignette {
  position: absolute;
  inset: 0;
  pointer-events: none;
  box-shadow: inset 0 0 220px 60px rgba(0, 0, 0, .85);
  background: radial-gradient(120% 100% at 50% 55%, transparent 40%, rgba(0, 0, 0, .55) 100%);
}

.tarin-intro__skip {
  position: absolute;
  bottom: var(--space-6);
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
}

@media (max-width: 700px) {
  .tarin-intro__skip { bottom: var(--space-5); }
}

@media (prefers-reduced-motion: reduce) {
  .tarin-intro { display: none !important; }
}
