/* Motion is a narrative instrument, never an information gate. */
@keyframes boot-sweep {
  from {
    transform: translateX(-60%);
  }
  to {
    transform: translateX(470%);
  }
}
@keyframes mouse-bounce {
  0%,100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(8px);
  }
}
@keyframes marquee {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}
@keyframes incident-flash {
  0%,17%,18%,18.5%,19.5%,100% {
    opacity: 0;
  }
  17.25%,18.75% {
    opacity: .6;
  }
}
@keyframes radar-sweep {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
@keyframes cover-switch {
  from {
    opacity: .3;
    transform: rotate(-9deg) scale(.94);
    filter: blur(6px);
  }
  to {
    opacity: 1;
    transform: rotate(-2.5deg) scale(1);
    filter: blur(0);
  }
}
@keyframes disc-rotate {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
@keyframes equalizer {
  from {
    transform: scaleY(.35);
  }
  to {
    transform: scaleY(1);
  }
}
@keyframes breathe {
  0%,100% {
    opacity: .45;
    transform: scale(1);
  }
  50% {
    opacity: .75;
    transform: scale(1.08);
  }
}
@keyframes hover-slow {
  0%,100% {
    transform: translateY(0) rotateY(-14deg) rotateX(3deg);
  }
  50% {
    transform: translateY(-13px) rotateY(-14deg) rotateX(3deg);
  }
}
@keyframes signal-blink {
  0%,52%,56%,100% {
    opacity: 1;
  }
  54% {
    opacity: .2;
  }
}
@keyframes border-breathe {
  0%,100% {
    border-color: rgba(131,224,255,.2);
  }
  50% {
    border-color: rgba(131,224,255,.48);
  }
}
@keyframes bar-reveal {
  from {
    transform: scaleX(0);
    transform-origin: left;
  }
  to {
    transform: scaleX(1);
    transform-origin: left;
  }
}
@keyframes grain-shift {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: 17px 11px;
  }
}
@keyframes atmosphere-pan {
  0%,100% {
    background-position: 50% 42%;
  }
  50% {
    background-position: 52% 44%;
  }
}
@keyframes hud-drift {
  0%,100% {
    opacity: .75;
  }
  50% {
    opacity: 1;
  }
}
@keyframes line-trace {
  0% {
    transform: scaleX(.3);
    opacity: .4;
  }
  60% {
    transform: scaleX(1);
    opacity: .9;
  }
  100% {
    transform: scaleX(.6);
    opacity: .55;
  }
}
@keyframes visual-rise {
  from {
    opacity: 0;
    transform: translateY(28px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes dust-shimmer {
  0%,100% {
    opacity: .1;
  }
  50% {
    opacity: .22;
  }
}
@keyframes focus-beam {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes callout-pop {
  from {
    opacity: 0;
    transform: translateY(8px);
  }
  to {
    opacity: .9;
    transform: translateY(0);
  }
}
@keyframes signal-line {
  from {
    background-position: -100% 0;
  }
  to {
    background-position: 200% 0;
  }
}
@keyframes scan-vertical {
  0% {
    transform: translateY(-60px);
  }
  100% {
    transform: translateY(600px);
  }
}
@keyframes shimmer-letter {
  from {
    text-shadow: 0 0 0 transparent;
  }
  to {
    text-shadow: 0 0 12px rgba(131,224,255,.22);
  }
}
@keyframes orbit-tilt {
  0%,100% {
    transform: rotate(0deg);
  }
  50% {
    transform: rotate(7deg);
  }
}
@keyframes subtitle-arrival {
  from {
    letter-spacing: .4em;
    opacity: 0;
  }
  to {
    letter-spacing: .2em;
    opacity: 1;
  }
}
@keyframes static-signal {
  0%,100% {
    background-position: 0 0;
  }
  50% {
    background-position: 0 33px;
  }
}
@keyframes particle-fade {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes noise-light {
  0%,100% {
    opacity: 1;
  }
  46% {
    opacity: .86;
  }
  48% {
    opacity: .98;
  }
  50% {
    opacity: .87;
  }
}
@keyframes outline-charge {
  from {
    opacity: .4;
  }
  to {
    opacity: .8;
  }
}
@keyframes blue-sky {
  0%,100% {
    filter: saturate(1);
  }
  50% {
    filter: saturate(1.23);
  }
}
@keyframes underline-drive {
  from {
    background-size: 0 2px;
  }
  to {
    background-size: 100% 2px;
  }
}
@keyframes glyph-drift {
  from {
    transform: translateY(0);
  }
  to {
    transform: translateY(-6px);
  }
}
@keyframes ring-scan {
  0% {
    transform: scale(.9);
    opacity: .14;
  }
  75%,100% {
    transform: scale(1.12);
    opacity: 0;
  }
}
@keyframes mono-tick {
  0%,90%,100% {
    opacity: .7;
  }
  95% {
    opacity: 1;
  }
}
@keyframes reader-ink {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes aurora {
  0%,100% {
    opacity: .72;
    filter: blur(21px);
  }
  50% {
    opacity: 1;
    filter: blur(34px);
  }
}
@keyframes pulse-anchor {
  0%,100% {
    box-shadow: 0 0 0 0 rgba(131,224,255,.2);
  }
  50% {
    box-shadow: 0 0 0 10px rgba(131,224,255,0);
  }
}
@keyframes slow-shift {
  0%,100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-10px);
  }
}
@keyframes tiny-flicker {
  0%,100% {
    opacity: .8;
  }
  22% {
    opacity: .65;
  }
  23% {
    opacity: .93;
  }
  24% {
    opacity: .7;
  }
}
@keyframes lens-light {
  0%,100% {
    background-position: 0 0;
  }
  50% {
    background-position: 200% 0;
  }
}
@keyframes panel-appear {
  from {
    opacity: 0;
    transform: translateY(16px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes mono-flash {
  0%,100% {
    color: var(--c-cyan);
  }
  50% {
    color: #fff;
  }
}
@keyframes zero-gravity {
  0%,100% {
    translate: 0 0;
  }
  50% {
    translate: 0 -12px;
  }
}
@keyframes cover-lift {
  0% {
    scale: .96;
    opacity: .45;
  }
  100% {
    scale: 1;
    opacity: 1;
  }
}
@keyframes credit-line {
  0% {
    opacity: .35;
  }
  100% {
    opacity: 1;
  }
}
@keyframes active-choice {
  from {
    box-shadow: inset 0 0 0 0 rgba(255,207,50,0);
  }
  to {
    box-shadow: inset 3px 0 0 0 var(--c-yellow);
  }
}
@keyframes ripple-center {
  from {
    transform: scale(.3);
    opacity: .6;
  }
  to {
    transform: scale(1.7);
    opacity: 0;
  }
}
@keyframes title-entry {
  from {
    clip-path: inset(100% 0 0 0);
    transform: translateY(30px);
  }
  to {
    clip-path: inset(0);
    transform: translateY(0);
  }
}
@keyframes console-text {
  from {
    opacity: .6;
  }
  to {
    opacity: 1;
  }
}
@keyframes horizontal-trace {
  0% {
    transform: translateX(-10px);
    opacity: 0;
  }
  100% {
    transform: translateX(0);
    opacity: 1;
  }
}
@keyframes feature-shine {
  from {
    opacity: .03;
  }
  to {
    opacity: .15;
  }
}
@keyframes step-in {
  from {
    opacity: 0;
    transform: translateY(35px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes icon-breath {
  from {
    opacity: .85;
  }
  to {
    opacity: 1;
  }
}
@keyframes orbit-dash {
  from {
    transform: rotate(0);
  }
  to {
    transform: rotate(-360deg);
  }
}
@keyframes glowing-scan {
  from {
    opacity: .2;
  }
  to {
    opacity: .8;
  }
}
@keyframes scene-opacity {
  from {
    opacity: .3;
  }
  to {
    opacity: .55;
  }
}
@keyframes progress-reveal {
  from {
    opacity: .3;
  }
  to {
    opacity: 1;
  }
}
@keyframes grain-vary {
  0% {
    opacity: .09;
  }
  50% {
    opacity: .15;
  }
  100% {
    opacity: .1;
  }
}
@keyframes headline-ink {
  from {
    text-shadow: 0 0 30px rgba(131,224,255,.25);
  }
  to {
    text-shadow: none;
  }
}
@keyframes icon-select {
  from {
    transform: rotate(-8deg) scale(.9);
  }
  to {
    transform: rotate(0) scale(1);
  }
}
@keyframes link-enter {
  from {
    background-size: 0 1px;
  }
  to {
    background-size: 100% 1px;
  }
}
@keyframes card-boundary {
  from {
    border-color: var(--c-outline);
  }
  to {
    border-color: rgba(131,224,255,.34);
  }
}
@keyframes footer-signal {
  from {
    opacity: .4;
  }
  to {
    opacity: .8;
  }
}
@keyframes floating-book {
  0%,100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-9px);
  }
}
@keyframes message-arrive {
  from {
    opacity: 0;
    transform: scale(.97);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes glow-enter {
  from {
    opacity: 0;
  }
  to {
    opacity: .8;
  }
}
@keyframes label-appear {
  from {
    transform: translateY(4px);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}
@keyframes trace-path {
  from {
    stroke-dashoffset: 900;
  }
  to {
    stroke-dashoffset: 0;
  }
}
@keyframes room-shift {
  0% {
    background-position: 49% 40%;
  }
  100% {
    background-position: 51% 42%;
  }
}
@keyframes sky-halo {
  from {
    box-shadow: 0 0 48px rgba(0,104,255,.18);
  }
  to {
    box-shadow: 0 0 95px rgba(0,104,255,.32);
  }
}
@keyframes quiet-spark {
  0%,100% {
    opacity: .8;
  }
  50% {
    opacity: .5;
  }
}
@keyframes readable-emphasis {
  from {
    color: #fff;
  }
  to {
    color: var(--c-yellow);
  }
}
@keyframes scene-sweep {
  from {
    transform: translateY(-100%);
  }
  to {
    transform: translateY(100%);
  }
}
@keyframes radial-noise {
  from {
    opacity: .06;
  }
  to {
    opacity: .14;
  }
}
@keyframes page-slide {
  from {
    transform: translateY(10px);
    opacity: .5;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}
@keyframes press-feedback {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(.98);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes motion-transition {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes book-gleam {
  0%,100% {
    background-position: -90% 0;
  }
  50% {
    background-position: 150% 0;
  }
}
@keyframes area-illumination {
  0%,100% {
    opacity: .28;
  }
  50% {
    opacity: .46;
  }
}
@keyframes byte-pulse {
  0%,100% {
    opacity: .72;
  }
  50% {
    opacity: 1;
  }
}
@keyframes ring-orbit {
  from {
    rotate: 0deg;
  }
  to {
    rotate: 360deg;
  }
}
@keyframes scanline {
  from {
    background-position-y: 0;
  }
  to {
    background-position-y: 4px;
  }
}
@keyframes navigation-activate {
  from {
    transform: translateY(-3px);
    opacity: .2;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}
@keyframes rich-presence {
  from {
    filter: saturate(.7);
  }
  to {
    filter: saturate(1);
  }
}
@keyframes text-signal {
  from {
    opacity: .8;
  }
  to {
    opacity: 1;
  }
}
@keyframes portal-arrival {
  from {
    transform: scale(1.03);
  }
  to {
    transform: scale(1);
  }
}
@keyframes proof-flash {
  from {
    background-color: rgba(255,207,50,.15);
  }
  to {
    background-color: transparent;
  }
}
@keyframes line-arrival {
  from {
    transform: scaleX(0);
  }
  to {
    transform: scaleX(1);
  }
}
@keyframes map-fade {
  from {
    opacity: .5;
  }
  to {
    opacity: 1;
  }
}
@keyframes scene-soften {
  from {
    filter: blur(5px);
  }
  to {
    filter: blur(0);
  }
}
@keyframes icon-orbit {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
@keyframes status-light {
  from {
    box-shadow: 0 0 4px var(--c-cyan);
  }
  to {
    box-shadow: 0 0 18px var(--c-cyan);
  }
}
@keyframes unmask {
  from {
    clip-path: inset(0 100% 0 0);
  }
  to {
    clip-path: inset(0);
  }
}
@keyframes book-reorient {
  from {
    transform: rotateY(-23deg);
  }
  to {
    transform: rotateY(-14deg);
  }
}
@keyframes stage-lift {
  from {
    translate: 0 9px;
  }
  to {
    translate: 0 0;
  }
}
@keyframes motion-fade {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes glowing-dot {
  from {
    opacity: .5;
  }
  to {
    opacity: 1;
  }
}
@keyframes reader-discover {
  from {
    background-position-y: -5px;
  }
  to {
    background-position-y: 0;
  }
}
@keyframes action-highlight {
  from {
    filter: brightness(.94);
  }
  to {
    filter: brightness(1.1);
  }
}
@keyframes surface-color {
  from {
    background-color: rgba(131,224,255,.01);
  }
  to {
    background-color: rgba(131,224,255,.05);
  }
}
@keyframes zoom-slow {
  from {
    transform: scale(1.02);
  }
  to {
    transform: scale(1);
  }
}
@keyframes haze {
  from {
    opacity: .28;
  }
  to {
    opacity: .58;
  }
}
@keyframes ticker-step {
  from {
    opacity: .6;
  }
  to {
    opacity: 1;
  }
}
@keyframes noir-move {
  from {
    opacity: .42;
  }
  to {
    opacity: .6;
  }
}
@keyframes clock-tick {
  from {
    opacity: 1;
  }
  to {
    opacity: .6;
  }
}
@keyframes content-stagger {
  from {
    opacity: .5;
    transform: translateY(4px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes atmospheric-sheen {
  from {
    background-position: 0 0;
  }
  to {
    background-position: 100% 0;
  }
}
@keyframes scope-zoom {
  from {
    transform: scale(.98);
  }
  to {
    transform: scale(1);
  }
}
@keyframes ambient-signal {
  from {
    opacity: .45;
  }
  to {
    opacity: .75;
  }
}
@keyframes ring-echo {
  from {
    scale: 1;
    opacity: .2;
  }
  to {
    scale: 1.12;
    opacity: .08;
  }
}
@keyframes skyline-lift {
  from {
    background-position-y: 45%;
  }
  to {
    background-position-y: 41%;
  }
}
@keyframes codex-appear {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes slow-refraction {
  from {
    filter: hue-rotate(-5deg);
  }
  to {
    filter: hue-rotate(5deg);
  }
}
@keyframes light-pass {
  from {
    transform: translateX(-70px);
    opacity: 0;
  }
  to {
    transform: translateX(0);
    opacity: 1;
  }
}
@keyframes camera-settle {
  from {
    transform: perspective(700px) rotateY(-4deg);
  }
  to {
    transform: perspective(700px) rotateY(0deg);
  }
}
@keyframes drop-of-light {
  0% {
    opacity: 0;
    transform: translateY(-12px);
  }
  25% {
    opacity: .7;
  }
  100% {
    opacity: 0;
    transform: translateY(22px);
  }
}
@keyframes reader-signal {
  from {
    border-color: rgba(131,224,255,.17);
  }
  to {
    border-color: rgba(131,224,255,.28);
  }
}
@keyframes bloom {
  from {
    opacity: .25;
  }
  to {
    opacity: .5;
  }
}
@keyframes editorial-line {
  from {
    transform: translateX(-6px);
  }
  to {
    transform: translateX(0);
  }
}
@keyframes static-fade {
  from {
    opacity: .75;
  }
  to {
    opacity: 1;
  }
}
@keyframes focus-sequence {
  from {
    opacity: .6;
  }
  to {
    opacity: 1;
  }
}
@keyframes shelf-signal {
  from {
    transform: rotate(-3deg);
  }
  to {
    transform: rotate(-1deg);
  }
}
@keyframes hardbound-glow {
  from {
    box-shadow: 0 0 15px rgba(131,224,255,.08);
  }
  to {
    box-shadow: 0 0 32px rgba(131,224,255,.19);
  }
}
@keyframes question-enter {
  from {
    transform: translateY(12px);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}
@keyframes privacy-appear {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes call-to-action {
  from {
    box-shadow: 0 14px 28px rgba(255,207,50,.1);
  }
  to {
    box-shadow: 0 16px 32px rgba(255,207,50,.19);
  }
}
@keyframes typography-beam {
  from {
    filter: brightness(.8);
  }
  to {
    filter: brightness(1);
  }
}
@keyframes story-arc {
  from {
    opacity: .4;
  }
  to {
    opacity: .8;
  }
}
@keyframes edition-stage {
  from {
    opacity: .4;
  }
  to {
    opacity: .8;
  }
}
@keyframes story-door {
  from {
    transform: translateY(12px);
  }
  to {
    transform: translateY(0);
  }
}
@keyframes vanishing-road {
  from {
    opacity: .35;
  }
  to {
    opacity: .7;
  }
}
@keyframes gentle-enter {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes chapter-sign {
  from {
    letter-spacing: .22em;
  }
  to {
    letter-spacing: .15em;
  }
}
@keyframes sound-indicator {
  from {
    transform: scale(.95);
  }
  to {
    transform: scale(1.02);
  }
}
@keyframes pulse-color {
  from {
    background: var(--c-cyan);
  }
  to {
    background: #d8fbff;
  }
}
@keyframes interstitial {
  from {
    opacity: .4;
  }
  to {
    opacity: 1;
  }
}
@keyframes frame-settle {
  from {
    opacity: .8;
  }
  to {
    opacity: 1;
  }
}
@keyframes story-move {
  from {
    transform: translateY(7px);
  }
  to {
    transform: translateY(0);
  }
}
@keyframes chip-focus {
  from {
    opacity: .6;
  }
  to {
    opacity: 1;
  }
}
@keyframes panorama-light {
  from {
    filter: contrast(1);
  }
  to {
    filter: contrast(1.1);
  }
}
@keyframes reveal-accent {
  from {
    opacity: .7;
  }
  to {
    opacity: 1;
  }
}
@keyframes fade-ambient {
  from {
    opacity: .9;
  }
  to {
    opacity: 1;
  }
}
@keyframes smooth-respond {
  from {
    transform: translateY(0);
  }
  to {
    transform: translateY(-2px);
  }
}
@keyframes type-flow {
  from {
    opacity: .5;
  }
  to {
    opacity: 1;
  }
}
@keyframes resilient-layout {
  from {
    opacity: .92;
  }
  to {
    opacity: 1;
  }
}
@keyframes quiet-pulse {
  from {
    opacity: .58;
  }
  to {
    opacity: .9;
  }
}
@keyframes second-look {
  from {
    filter: brightness(1);
  }
  to {
    filter: brightness(1.1);
  }
}
@keyframes transition-confirm {
  from {
    transform: translateY(-4px);
  }
  to {
    transform: translateY(0);
  }
}
@keyframes text-read {
  from {
    opacity: .7;
  }
  to {
    opacity: 1;
  }
}
@keyframes purchase-available {
  from {
    border-color: rgba(131,224,255,.2);
  }
  to {
    border-color: rgba(131,224,255,.4);
  }
}
@keyframes site-arrival {
  from {
    opacity: .75;
  }
  to {
    opacity: 1;
  }
}
@keyframes product-hover {
  from {
    scale: 1;
  }
  to {
    scale: 1.015;
  }
}
@keyframes intentional-reveal {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes axis-alignment {
  from {
    transform: rotate(-1deg);
  }
  to {
    transform: rotate(0);
  }
}
@keyframes book-cover-breathe {
  from {
    filter: saturate(.95);
  }
  to {
    filter: saturate(1.06);
  }
}
@keyframes tactile-press {
  from {
    transform: translateY(-2px);
  }
  to {
    transform: translateY(0);
  }
}
@keyframes narrative-moment {
  from {
    opacity: .7;
  }
  to {
    opacity: 1;
  }
}
@keyframes detail-line {
  from {
    border-color: rgba(131,224,255,.1);
  }
  to {
    border-color: rgba(131,224,255,.3);
  }
}
@keyframes paper-turn {
  from {
    transform: rotateY(-3deg);
  }
  to {
    transform: rotateY(0);
  }
}
@keyframes ambient-arc {
  from {
    opacity: .35;
  }
  to {
    opacity: .45;
  }
}
@keyframes subtle-depth {
  from {
    filter: drop-shadow(7px 10px 10px rgba(0,0,0,.3));
  }
  to {
    filter: drop-shadow(14px 20px 16px rgba(0,0,0,.5));
  }
}
@keyframes micro-shimmer {
  from {
    opacity: .35;
  }
  to {
    opacity: .7;
  }
}
@keyframes micro-movement {
  from {
    transform: translateY(3px);
  }
  to {
    transform: translateY(0);
  }
}
@keyframes hover-control {
  from {
    opacity: .8;
  }
  to {
    opacity: 1;
  }
}
@keyframes contrast-restore {
  from {
    filter: saturate(.9);
  }
  to {
    filter: saturate(1);
  }
}
@keyframes window-reveal {
  from {
    transform: translateY(10px);
    opacity: .8;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}
@keyframes text-return {
  from {
    opacity: .8;
  }
  to {
    opacity: 1;
  }
}
@keyframes station-light {
  from {
    background-color: rgba(131,224,255,.02);
  }
  to {
    background-color: rgba(131,224,255,.04);
  }
}
@keyframes scene-tension {
  from {
    opacity: .3;
  }
  to {
    opacity: .6;
  }
}
@keyframes detail-resolve {
  from {
    filter: blur(2px);
  }
  to {
    filter: blur(0);
  }
}
@keyframes bridge-advance {
  from {
    opacity: .8;
  }
  to {
    opacity: 1;
  }
}
@keyframes motion-signal {
  from {
    translate: 0 0;
  }
  to {
    translate: 0 -4px;
  }
}
@keyframes subtle-pulse {
  from {
    opacity: .5;
  }
  to {
    opacity: 1;
  }
}
@keyframes focus-letter {
  from {
    letter-spacing: .04em;
  }
  to {
    letter-spacing: .025em;
  }
}
@keyframes mark-present {
  from {
    transform: scale(.9);
  }
  to {
    transform: scale(1);
  }
}
@keyframes story-bloom {
  from {
    opacity: .7;
  }
  to {
    opacity: .85;
  }
}
@keyframes accent-pulse {
  from {
    box-shadow: 0 0 0 0 rgba(255,207,50,.0);
  }
  to {
    box-shadow: 0 0 0 3px rgba(255,207,50,.1);
  }
}
@keyframes proof-highlight {
  from {
    background-color: rgba(131,224,255,.07);
  }
  to {
    background-color: rgba(131,224,255,.14);
  }
}
@keyframes scene-clarity {
  from {
    opacity: .9;
  }
  to {
    opacity: 1;
  }
}
@keyframes site-focus {
  from {
    outline-offset: 0;
  }
  to {
    outline-offset: 4px;
  }
}
@keyframes edge-light {
  from {
    box-shadow: 0 0 0 0 rgba(131,224,255,0);
  }
  to {
    box-shadow: 0 0 0 1px rgba(131,224,255,.2);
  }
}
@keyframes copy-transition {
  from {
    opacity: .75;
  }
  to {
    opacity: 1;
  }
}
@keyframes readable-frame {
  from {
    border-color: rgba(131,224,255,.1);
  }
  to {
    border-color: rgba(131,224,255,.2);
  }
}
@keyframes book-checkpoint {
  from {
    opacity: .8;
  }
  to {
    opacity: 1;
  }
}
@keyframes content-open {
  from {
    opacity: .8;
  }
  to {
    opacity: 1;
  }
}
@keyframes arrival {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
/* Only the named effects below are enabled at runtime; others are reusable
 * motion primitives for subsequent sections, not effects stacked indiscriminately. */
html.js-enabled .reveal:not(.is-visible) {
  opacity: 0;
  transform: translateY(36px);
}
html.js-enabled .reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 840ms var(--ease-expo),transform 840ms var(--ease-expo);
}
html.js-enabled .hero__copy .reveal:nth-of-type(2) {
  transition-delay: 70ms;
}
html.js-enabled .hero__copy .reveal:nth-of-type(3) {
  transition-delay: 130ms;
}
html.js-enabled .hero__copy .reveal:nth-of-type(4) {
  transition-delay: 185ms;
}
html.js-enabled .hero__copy .reveal:nth-of-type(5) {
  transition-delay: 235ms;
}
html.js-enabled .hero__copy .reveal:nth-of-type(6) {
  transition-delay: 285ms;
}
html.js-enabled .hero__copy .reveal:nth-of-type(7) {
  transition-delay: 335ms;
}
html.js-enabled .hero__copy .reveal:nth-of-type(8) {
  transition-delay: 385ms;
}
.hero__product-glow {
  animation: aurora 7s ease-in-out infinite alternate;
}
.hero__book-orbit {
  animation: ring-orbit 95s linear infinite;
}
.hero__book-orbit::before {
  animation: orbit-dash 72s linear infinite;
}
.book-callout {
  animation: hud-drift 5s ease-in-out infinite alternate;
}
.book-callout--lower {
  animation-delay: -2.2s;
}
.hero__book-caption {
  animation: mono-tick 9s infinite;
}
.terminal-scene__heading .status-led {
  animation: status-light 2.5s alternate infinite;
}
.signal-band__track {
  will-change: transform;
}
.cursor-beam {
  position: fixed;
  z-index: 19;
  pointer-events: none;
  left: 0;
  top: 0;
  width: 460px;
  height: 460px;
  border-radius: 50%;
  background: radial-gradient(circle,rgba(109,206,255,.055),transparent 70%);
  transform: translate3d(-50%,-50%,0);
  opacity: 0;
  transition: opacity .4s;
}
body[data-pointer-active="true"] .cursor-beam {
  opacity: 1;
}
