/* Command-header behavior: the navigation becomes a crisp glass instrument after takeoff. */
.site-header { transition: background .35s ease, border-color .35s ease, box-shadow .35s ease, transform .35s ease; }
.site-header.is-scrolled { position: fixed; background: rgba(3, 12, 29, .78); border-color: rgba(123, 233, 247, .24); box-shadow: 0 15px 38px rgba(0, 0, 0, .22); backdrop-filter: blur(17px) saturate(1.25); animation: header-enter .35s ease both; }
.nav-links a { position: relative; }.nav-links a::after { content: ""; position: absolute; right: 0; bottom: -11px; left: 0; height: 1px; background: var(--cyan); box-shadow: 0 0 9px var(--cyan); transform: scaleX(0); transform-origin: center; transition: transform .25s ease; }.nav-links a.is-active::after, .nav-links a:hover::after { transform: scaleX(1); }

/* Every primary action gets a controlled charge-up pass; motion is supplied by JS on capable pointers. */
.button { position: relative; overflow: hidden; background-size: 170% 100%; transition: transform .2s ease, box-shadow .25s ease, background-position .7s ease; will-change: transform; }
.button::before { content: ""; position: absolute; inset: -60% 55% -60% -35%; pointer-events: none; opacity: 0; background: linear-gradient(105deg, transparent, rgba(255, 255, 255, .6), transparent); transform: translateX(-120%) skewX(-20deg); transition: opacity .2s, transform .65s ease; }
.button:hover { background-position: 100% 0; }.button:hover::before { opacity: 1; transform: translateX(220%) skewX(-20deg); }

/* Depth views move only their media, keeping the page geometry stable. */
[data-depth] { overflow: hidden; }.feature-image[data-depth] img, .system-card-image[data-depth] img, .system-card-command[data-depth] img { transition: transform .45s cubic-bezier(.2, .8, .2, 1), filter .45s ease; transform: scale(1.015) translate3d(var(--depth-x, 0px), var(--depth-y, 0px), 0); }.feature-image[data-depth]:hover img, .system-card-image[data-depth]:hover img, .system-card-command[data-depth]:hover img { filter: saturate(1.18) contrast(1.04); }

/* A shimmer for the cyan emphasis: visual energy with no extra content. */
@media (prefers-reduced-motion: no-preference) { h1 em, h2 em { display: inline-block; color: transparent; background: linear-gradient(105deg, #1bdbea 0%, #b8ffff 38%, #1bdbea 58%, #7c89ff 100%); background-size: 220% 100%; background-clip: text; -webkit-background-clip: text; animation: emphasis-flow 7s linear infinite; } }

/* Final conversion panel: a restrained reactor, not a casino portal. */
.download-panel { isolation: isolate; }.download-panel::before { content: ""; position: absolute; z-index: 0; inset: -40%; pointer-events: none; opacity: .48; background: conic-gradient(from 0deg, transparent 0 42%, rgba(71, 239, 247, .13) 47%, transparent 53% 100%); animation: reactor-spin 18s linear infinite; }
.download-reactor { position: absolute!important; z-index: 0!important; right: 4%; top: 50%; width: 390px; height: 390px; transform: translateY(-50%); pointer-events: none; opacity: .85; }.reactor-ring { position: absolute; border: 1px solid rgba(99, 243, 249, .28); border-radius: 50%; animation: reactor-spin 15s linear infinite; }.ring-a { inset: 4%; box-shadow: 0 0 0 38px rgba(72, 234, 244, .028), 0 0 48px rgba(25, 221, 241, .16); }.ring-b { inset: 23%; border-style: dashed; animation-duration: 9s; animation-direction: reverse; }.ring-c { inset: 41%; animation-duration: 5s; }.reactor-node { position: absolute; width: 8px; height: 8px; border-radius: 50%; background: #aaffff; box-shadow: 0 0 0 6px rgba(73, 238, 249, .1), 0 0 20px #57f2fb; animation: reactor-pulse 2.7s ease-in-out infinite; }.node-a { left: 46%; top: 4%; }.node-b { right: 10%; bottom: 25%; animation-delay: -.8s; }.node-c { left: 13%; bottom: 20%; animation-delay: -1.6s; }
.download-actions { transition: transform .3s ease; }.download-panel:hover .download-actions { transform: translateY(-4px); }

@keyframes header-enter { from { transform: translateY(-100%); } to { transform: translateY(0); } }
@keyframes emphasis-flow { to { background-position: -220% 0; } }
@keyframes reactor-spin { to { transform: rotate(360deg); } }
@keyframes reactor-pulse { 50% { transform: scale(1.6); opacity: .4; } }
@media (max-width: 900px) { .download-reactor { right: -80px; opacity: .48; }.nav-links a::after { bottom: -4px; } }
@media (max-width: 620px) { .site-header.is-scrolled .nav { height: 64px; }.download-reactor { width: 260px; height: 260px; top: 25px; right: -70px; transform: none; }.download-panel:hover .download-actions { transform: none; } }
@media (prefers-reduced-motion: reduce) { .site-header { transition: none; }.site-header.is-scrolled { animation: none; }.button::before { display: none; }.download-panel::before, .reactor-ring, .reactor-node { animation: none; }.download-panel::before { display: none; } }
