[data-theme] .drink-section .wave-bottom > path { fill: #02040d; }
.rahu-section {
  position: relative;
  isolation: isolate;
  min-height: 620px;
  overflow: hidden;
  color: #e4e8f2;
  background: #02040d;
}
.rahu-scene { position: absolute; inset: 0; overflow: hidden; pointer-events: none; isolation: isolate; z-index: 0; }
.rahu-nebula {
  position: absolute; inset: -10%; top: 0; z-index: 0;
  background: radial-gradient(ellipse at 23% 25%, #60247c70, transparent 48%), radial-gradient(ellipse at 72% 18%, #205aa054, transparent 42%), radial-gradient(ellipse at 50% 57%, #107c8230, transparent 40%), radial-gradient(ellipse at 90% 66%, #8f33472b, transparent 45%);
  -webkit-mask-image: linear-gradient(to bottom, transparent, #000 120px);
  mask-image: linear-gradient(to bottom, transparent, #000 120px);
}
.rahu-stars, .rahu-dust { position: absolute; inset: 0; width: 100%; height: 100%; }
.rahu-stars { z-index: 1; }
.rahu-planet {
  position: absolute; width: 740px; max-width: none;
  left: calc(13% - 370px); top: 50px; z-index: 3;
  opacity: .83; filter: drop-shadow(0 0 28px #27cddd38);
}
.rahu-moon { position: absolute; width: 108px; left: 0; top: 0; will-change: transform; opacity: .9; filter: drop-shadow(0 0 9px #74d8ef44); }
.rahu-moon-red { width: 83px; filter: sepia(1) saturate(2.2) hue-rotate(310deg) drop-shadow(0 0 8px #ff684044); opacity: .7; }
.rahu-dust { z-index: 5; }
.rahu-ship { position: absolute; width: min(72vw, 1000px); max-width: none; right: -6%; bottom: 8%; z-index: 6; will-change: transform; filter: drop-shadow(0 12px 18px #0008); isolation: isolate; }
.rahu-ship-hull { position: relative; z-index: 1; display: block; width: 100%; height: auto; }
.rahu-thruster {
  position: absolute;
  z-index: 0;
  pointer-events: none;
  width: 3.6%;
  height: 31.25%;
  transform-origin: 50% 100%;
  transform: translate(-50%, -100%) rotate(52deg);
}
/* Exhaust origins use the rear engine spacing in the 1600 × 700 ship image. */
.rahu-thruster-port {
  left: 43.75%;
  top: 54.29%;
}
.rahu-thruster-center {
  left: 48.875%;
  top: 57.55%;
  width: 3.8%;
  height: 32.5%;
}
.rahu-thruster-starboard {
  left: 54%;
  top: 60.23%;
  width: 3.9%;
  height: 33.75%;
}
.rahu-thruster::before,
.rahu-thruster::after {
  content: '';
  position: absolute;
  transform-origin: 50% 100%;
  animation-play-state: paused;
}
.rahu-thruster::before {
  inset: -15% -45% 0 -45%;
  border-radius: 50% 50% 30% 30% / 60% 60% 40% 40%;
  background: radial-gradient(ellipse at 50% 80%, rgba(165, 243, 252, 0.85) 0%, rgba(56, 189, 248, 0.65) 30%, rgba(14, 116, 144, 0.4) 60%, transparent 80%);
  filter: blur(8px);
  animation: rahu-thruster-halo 0.43s ease-in-out infinite;
  animation-play-state: paused;
}
.rahu-thruster::after {
  inset: 0;
  -webkit-clip-path: polygon(50% 0, 76% 38%, 100% 100%, 0 100%, 24% 38%);
  clip-path: polygon(50% 0, 76% 38%, 100% 100%, 0 100%, 24% 38%);
  background: linear-gradient(to top, #ffffff 0%, #a5f3fc 22%, #38bdf8 55%, rgba(14, 165, 233, 0.4) 82%, transparent 100%);
  filter: blur(2px);
  animation: rahu-thruster-core 0.24s ease-in-out infinite;
  animation-play-state: paused;
}
.rahu-thruster-port::after {
  -webkit-clip-path: polygon(50% 0, 76% 38%, 100% 72%, 62% 100%, 38% 100%, 0 72%, 24% 38%);
  clip-path: polygon(50% 0, 76% 38%, 100% 72%, 62% 100%, 38% 100%, 0 72%, 24% 38%);
}
.rahu-visible .rahu-thruster::before,
.rahu-visible .rahu-thruster::after {
  animation-play-state: running;
}
.rahu-thruster-center::before {
  animation-delay: -0.11s;
}
.rahu-thruster-center::after {
  animation-delay: -0.07s;
}
.rahu-thruster-starboard::before {
  animation-delay: -0.18s;
}
.rahu-thruster-starboard::after {
  animation-delay: -0.1s;
}
@keyframes rahu-thruster-core {
  0% { transform: scaleY(0.9) scaleX(1.05); opacity: 0.85; }
  20% { transform: scaleY(1.14) scaleX(0.88); opacity: 1; }
  45% { transform: scaleY(0.78) scaleX(1.1); opacity: 0.7; }
  70% { transform: scaleY(1.16) scaleX(0.86); opacity: 0.95; }
  85% { transform: scaleY(0.95) scaleX(1.02); opacity: 0.8; }
  100% { transform: scaleY(0.9) scaleX(1.05); opacity: 0.85; }
}
@keyframes rahu-thruster-halo {
  0% { transform: scaleY(0.95) scaleX(1.02); opacity: 0.82; }
  25% { transform: scaleY(1.12) scaleX(0.89); opacity: 0.98; }
  50% { transform: scaleY(0.82) scaleX(1.08); opacity: 0.68; }
  75% { transform: scaleY(1.08) scaleX(0.93); opacity: 0.92; }
  100% { transform: scaleY(0.95) scaleX(1.02); opacity: 0.82; }
}
.rahu-vignette { position: absolute; inset: 0; z-index: 7; background: radial-gradient(ellipse at 52% 39%, transparent 22%, #02040d88 100%), linear-gradient(0deg, #02040d 0%, transparent 24%); }
.rahu-content { position: relative; z-index: 2; max-width: 1180px; margin: auto; padding: 64px 36px; }
.rahu-wordmark { position: relative; display: block; width: min(75%, 780px); margin: 0 auto; aspect-ratio: 3723 / 867; filter: drop-shadow(0 7px 9px #000); }
.rahu-wordmark img { width: 100%; height: 100%; display: block; }
.rahu-wordmark::after {
  content: ''; position: absolute; inset: 0;
  background: linear-gradient(103deg, transparent 38%, #fff4 45%, #fffbdabf 49%, #fff9 51%, transparent 59%);
  background-size: 300% 100%; background-position: 150% 0;
  -webkit-mask: url('/static/rahu/title-mask.png') center / contain no-repeat;
  mask: url('/static/rahu/title-mask.png') center / contain no-repeat;
  mix-blend-mode: screen; animation: rahu-shine 3.6s linear infinite; animation-play-state: paused;
}
.rahu-visible .rahu-wordmark::after { animation-play-state: running; }
@keyframes rahu-shine { to { background-position: -150% 0; } }
.rahu-subtitle {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  text-align: center;
  font-family: 'Jura', sans-serif;
  text-transform: uppercase;
  font-size: 18px;
  letter-spacing: .55em;
  color: #e6c485;
  margin: 14px 0 18px;
  padding-left: .55em;
}
.rahu-subtitle::before,
.rahu-subtitle::after {
  content: '';
  height: 1px;
  width: 54px;
  flex-shrink: 0;
}
.rahu-subtitle::before {
  background: linear-gradient(to right, transparent, rgba(255, 184, 61, .38));
}
.rahu-subtitle::after {
  background: linear-gradient(to left, transparent, rgba(255, 184, 61, .38));
}
.rahu-subtitle span {
  color: #e6c485;
  text-shadow: 0 0 12px rgba(252, 237, 199, .25);
}
@supports (-webkit-background-clip: text) or (background-clip: text) {
  .rahu-subtitle span {
    background: linear-gradient(to bottom, #fcedc7 0%, #e6c485 55%, #c29e61 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
  }
}
.rahu-section .platform-icons { display: flex; justify-content: center; align-items: center; gap: 16px; margin-top: 0; opacity: 1; }
.rahu-section .platform-icons a { display: inline-flex; align-items: center; justify-content: center; color: #fff; opacity: .7; text-decoration: none; transition: opacity .15s ease; }
.rahu-section .platform-icons a:hover,
.rahu-section .platform-icons a:focus { opacity: 1; }
.rahu-section .platform-icons svg { width: 20px; height: 20px; display: block; }
.rahu-section .platform-icons svg.icon-android { height: 17px; }
.rahu-section .platform-icons svg.icon-steam { width: 21px; height: 21px; }
.rahu-section a:focus-visible { outline: 2px solid #9af2ff; outline-offset: 5px; }
@media (max-width: 700px) {
  .rahu-section { min-height: 620px; }
  .rahu-content { padding: 52px 24px; }
  .rahu-wordmark { width: 100%; }
  .rahu-subtitle { font-size: 13px; margin: 10px 0 18px; gap: 8px; }
  .rahu-subtitle::before,
  .rahu-subtitle::after { width: 34px; }
  .rahu-planet { width: 560px; left: calc(13% - 280px); top: 200px; opacity: .65; }
  .rahu-moon { width: 80px; }
  .rahu-moon-red { width: 58px; }
  .rahu-ship { width: 620px; right: calc(50% - 310px); bottom: 25px; }
}
@media (prefers-reduced-motion: reduce) {
  .rahu-wordmark::after { animation: none; background-position: 62% 0; }
  .rahu-thruster::before,
  .rahu-thruster::after { animation: none; opacity: 0.85; transform: none; }
}
