body > header {
  background: linear-gradient(108deg, #e3eee5, #e8eee5 48%, #f2ead8);
  border-bottom-color: #cad9ce;
  box-shadow: 0 3px 12px #1641390c;
  position: relative;
  z-index: 1;
}
header .brand { display: block; }
header .build-pulse-art {
  display: block;
  width: clamp(6.75rem, 14vw, 10rem);
  height: auto;
}
header nav a {
  border-radius: .36rem;
  padding: .22em .3em;
}
header nav a:hover, header nav a[aria-current="page"] {
  color: #174d3e;
  background: #bad5c466;
}
.pulse-pieces, .cardiac-sweep { opacity: 0; }
.motion-ready:not(.effects-paused) .build-pulse-art { animation: aenon-header-reset 12s linear infinite; }
.motion-ready:not(.effects-paused) .pulse-complete { animation: aenon-logo-hold 12s steps(1, end) infinite; }
.motion-ready:not(.effects-paused) .pulse-pieces { animation: aenon-tile-hold 12s steps(1, end) infinite; }
.motion-ready:not(.effects-paused) .pulse-piece {
  animation: aenon-tile-assemble 12s cubic-bezier(.2,.75,.32,1) var(--tile-delay) infinite both;
}
.motion-ready:not(.effects-paused) .cardiac-sweep {
  stroke-dasharray: 115 1100;
  animation: aenon-cardiac-sweep 12s ease-in-out infinite;
}
@keyframes aenon-header-reset {
  0% { opacity: 0; }
  3%, 97.5% { opacity: 1; }
  100% { opacity: 0; }
}
@keyframes aenon-logo-hold { 0% { opacity: 0; } 16% { opacity: 1; } }
@keyframes aenon-tile-hold { 0% { opacity: 1; } 16% { opacity: 0; } }
@keyframes aenon-tile-assemble {
  0% { transform: translate(var(--tile-x), var(--tile-y)); opacity: 0; }
  4% { opacity: 1; }
  10%, 100% { transform: translate(0, 0); opacity: 1; }
}
@keyframes aenon-cardiac-sweep {
  0%, 16% { stroke-dashoffset: 140; opacity: 0; }
  22%, 31% { opacity: 1; }
  37%, 100% { stroke-dashoffset: -1030; opacity: 0; }
}
.aenon-ecg-stage { position: relative; isolation: isolate; overflow: clip; }
.aenon-ecg {
  position: absolute;
  z-index: -1;
  inset: 50% auto auto 50%;
  transform: translate(-50%, -50%);
  width: max(46rem, 110%);
  height: auto;
  pointer-events: none;
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.aenon-ecg-base { stroke: #558f78; stroke-width: 1.6; opacity: .19; }
.aenon-ecg-light {
  stroke: #b18a47;
  stroke-width: 3.1;
  stroke-dasharray: 185 1100;
  opacity: 0;
  filter: drop-shadow(0 0 4px #c8a15d80);
}
.motion-ready:not(.effects-paused) .aenon-ecg-light { animation: aenon-ecg-glow 9s ease-in-out infinite; }
.aenon-ecg-anchor .aenon-ecg { width: max(46rem, 100%); top: 3.8rem; }
@keyframes aenon-ecg-glow {
  0%, 11% { stroke-dashoffset: 185; opacity: 0; }
  25%, 45% { opacity: .45; }
  65%, 100% { stroke-dashoffset: -1040; opacity: 0; }
}
@media (max-width: 650px) {
  .aenon-ecg { left: 60%; }
  header nav a { padding: .12em .14em; }
}
@media (prefers-reduced-motion: reduce), print {
  body.motion-ready .build-pulse-art,
  body.motion-ready .build-pulse-art *,
  body.motion-ready .aenon-ecg-light { animation: none !important; }
  .aenon-motion-control { display: none; }
}
@media print { .aenon-ecg { display: none; } }

.aenon-motion-control {
  display: inline-grid;
  place-items: center;
  width: 1.65rem;
  height: 1.65rem;
  padding: 0;
  border: 1px solid #63807570;
  border-radius: 50%;
  background: transparent;
  color: #29574a;
  font: 700 .78rem/1 system-ui;
}
.aenon-motion-control:hover { background: #d6e6d9; }
.aenon-motion-control[hidden] { display: none; }
@media (prefers-reduced-motion: reduce), print { .aenon-motion-control { display: none; } }
