/* Hero-only landscape. All layers are native SVG/CSS and sit behind the content. */
.hero > .mountain-scene {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  pointer-events: none;
  isolation: isolate;
  background: #100B1B;
}

/* Set the SVG palette in CSS as well, so already cached templates use purple. */
#rush-mountain-sky stop:nth-child(1) { stop-color: #100B1B; }
#rush-mountain-sky stop:nth-child(2) { stop-color: #251839; }
#rush-mountain-sky stop:nth-child(3) { stop-color: #1D1130; }
#rush-mountain-horizon stop { stop-color: #AD63F5; }
#rush-mountain-far stop:nth-child(1) { stop-color: #553569; }
#rush-mountain-far stop:nth-child(2) { stop-color: #352146; }
#rush-mountain-mid stop:nth-child(1) { stop-color: #472B5A; }
#rush-mountain-mid stop:nth-child(2) { stop-color: #241936; }
#rush-mountain-near stop:nth-child(1) { stop-color: #322041; }
#rush-mountain-near stop:nth-child(2) { stop-color: #1A122A; }
#rush-mountain-rim stop:nth-child(1),
#rush-mountain-rim stop:nth-child(2),
#rush-mountain-rim stop:nth-child(4) { stop-color: #AD63F5; }
.mountain-scene__stars--twinkle { fill: #E8D5FF; }
.mountain-scene__clouds { stroke: #BFA7D8; }
.mountain-scene__ridge--far path:nth-child(4),
.mountain-scene__ridge--near path:nth-child(3) { stroke: #AD63F5; }
.mountain-scene__mist path:nth-child(1) { stroke: #AE85D8; }
.mountain-scene__mist path:nth-child(2) { stroke: #DFCBF7; }
.mountain-scene__ridge--mid path:nth-child(2) { stroke: #A77BD3; }
.mountain-scene__ridge--near path:nth-child(2) { stroke: #76519F; }

.mountain-scene__art {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
}

.mountain-scene__veil {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(16, 11, 27, .27), transparent 46%, rgba(16, 11, 27, .08)),
    linear-gradient(0deg, rgba(16, 11, 27, .52), transparent 27%, transparent 78%, rgba(16, 11, 27, .23));
}

@keyframes rush-mountain-horizon-breathe {
  50% { opacity: .63; transform: translate(24px, -9px) scale(1.05); }
}

@keyframes rush-mountain-cloud-drift {
  50% { transform: translateX(45px); opacity: .72; }
}

@keyframes rush-mountain-far-drift {
  50% { transform: translateX(-12px) translateY(4px); }
}

@keyframes rush-mountain-mid-drift {
  50% { transform: translateX(8px) translateY(-3px); }
}

@keyframes rush-mountain-near-drift {
  50% { transform: translateX(-6px); }
}

@keyframes rush-mountain-mist-flow {
  50% { transform: translateX(-22px); opacity: .6; }
}

@keyframes rush-mountain-star-twinkle {
  50% { opacity: .23; }
}

@media (prefers-reduced-motion: no-preference) {
  .mountain-scene__horizon {
    transform-box: fill-box;
    transform-origin: center;
    animation: rush-mountain-horizon-breathe 16s ease-in-out infinite;
  }
  .mountain-scene__clouds { animation: rush-mountain-cloud-drift 28s ease-in-out infinite; }
  .mountain-scene__ridge--far { animation: rush-mountain-far-drift 22s ease-in-out infinite; }
  .mountain-scene__ridge--mid { animation: rush-mountain-mid-drift 18s ease-in-out infinite; }
  .mountain-scene__ridge--near { animation: rush-mountain-near-drift 14s ease-in-out infinite; }
  .mountain-scene__mist { animation: rush-mountain-mist-flow 21s ease-in-out infinite; }
  .mountain-scene__stars--twinkle { animation: rush-mountain-star-twinkle 5.5s ease-in-out infinite; }
}

@media (max-width: 900px) {
  .mountain-scene__veil {
    background: linear-gradient(0deg, rgba(16, 11, 27, .6), transparent 35%, rgba(16, 11, 27, .16));
  }
}

@media (prefers-reduced-motion: reduce) {
  .mountain-scene__art * { animation: none !important; }
}
