/* Standalone coming-soon canvas. The existing shared.css owns the 3D ring. */
html { margin: 0; background: #080808; }
body.coming-soon { margin: 0; min-height: 100svh; background: #080808; color: #fff; overflow-x: hidden; }
.coming-soon * { box-sizing: border-box; }
.ambient-light { position: fixed; inset: -15%; pointer-events: none; background: radial-gradient(ellipse at 77% 64%, #9b641323, transparent 47%), radial-gradient(ellipse at 15% 30%, #d0a04410, transparent 43%); animation: ambient-breathe 9s ease-in-out infinite alternate; }
.coming-flow { position: fixed; inset: 0; width: 100%; height: 100%; pointer-events: none; fill: none; }
.wave-line { stroke: #d0a044; stroke-width: 1; opacity: .44; }
.wave-echo { opacity: .18; stroke-width: .65; }
.wave-halo { stroke: #d0a044; stroke-width: 8; opacity: .1; filter: blur(7px); }
.wave-runner { stroke: #ffe2a0; stroke-width: 1.7; stroke-linecap: round; stroke-dasharray: .035 .965; animation: light-travel 7s linear infinite; }
.runner-glow { stroke-width: 5; filter: blur(5px); opacity: .7; }
.runner-secondary { animation-duration: 11s; animation-delay: -5s; opacity: .45; stroke-width: 1; }
.coming-content { position: relative; min-height: 100svh; display: flex; flex-direction: column; justify-content: center; align-items: center; padding: 60px 24px; isolation: isolate; }
.coming-content::before { content: ''; position: absolute; width: min(1200px, 100%); height: 410px; z-index: -1; background: radial-gradient(ellipse, #080808ef 20%, #0808089c 48%, transparent 72%); pointer-events: none; }
.coming-logo { --mark-size: clamp(74px, 20vw, 228px); display: grid; grid-template-columns: var(--mark-size) minmax(0, 1fr); align-items: center; width: min(100%, 1000px); gap: 8px; }
body.coming-soon .hero-badge.rma-emblem-3d { position: relative; inset: auto; width: var(--mark-size); height: var(--mark-size); margin: 0; border-radius: 0; perspective: 1000px; }
.coming-soon .emblem-ring i { border-width: calc(var(--mark-size) * .06558); }
.coming-wordmark { display: block; width: 100%; overflow: hidden; }
.coming-content h1 { margin: 52px 0 0; padding-left: .5em; font: 400 clamp(12px, 1.2vw, 16px)/1.5 Arial, sans-serif; letter-spacing: .5em; color:#dfa935; }
@keyframes light-travel { from { stroke-dashoffset: 1; } to { stroke-dashoffset: 0; } }
@keyframes ambient-breathe { from { opacity: .5; transform: scale(1); } to { opacity: 1; transform: scale(1.08); } }
@media(max-width: 600px) { .coming-content { padding-inline: 20px; } .coming-logo { gap: 3px; } .coming-content h1 { margin-top: 36px; } .coming-flow { width: 170%; left: -35%; } }
.motion-paused *, .motion-paused .ambient-light { animation-play-state: paused !important; }
@media(prefers-reduced-motion: reduce) { .coming-soon * { animation: none !important; } .wave-runner { display: none; } }
