




.wrap, .box { position: relative; }

.hd-k {
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 2.4px;
  text-transform: uppercase;
  color: #3f5d3c;
  margin-bottom: 10px;
  min-height: 13px;
}
.hd-k b { color: var(--green); font-weight: 500; }
.hd-k i, .kick i {
  display: inline-block;
  width: 6px; height: 10px;
  background: var(--green);
  vertical-align: -1px;
  margin-left: 3px;
  animation: hk-blink 1.1s steps(1, end) infinite;
}
@keyframes hk-blink { 0%, 49% { opacity: 1 } 50%, 100% { opacity: .12 } }

h1 .ch {
  display: inline-block;
  white-space: pre;
  opacity: 0;
  transform: translateY(12px);
  animation: h1-in .44s cubic-bezier(.16, 1, .3, 1) forwards;
}
@keyframes h1-in { to { opacity: 1; transform: translateY(0) } }

h1 .ac.pulse { animation: dot-pulse 1.7s ease-out 1 forwards; }
@keyframes dot-pulse {
  0% { text-shadow: none }
  26% { text-shadow: 0 0 20px rgba(57,255,20,.95), 0 0 44px rgba(57,255,20,.5) }
  100% { text-shadow: 0 0 9px rgba(57,255,20,.4) }
}

.hd-scan {
  position: absolute;
  left: -14px; right: -14px; top: 0;
  height: 2px;
  pointer-events: none;
  z-index: 5;
  background: linear-gradient(90deg, transparent, rgba(57,255,20,.8), transparent);
  box-shadow: 0 0 18px rgba(57,255,20,.5);
  animation: hd-scan 1.1s cubic-bezier(.4, 0, .5, 1) .08s forwards;
}
@keyframes hd-scan {
  0% { opacity: 0; transform: translateY(0) }
  14% { opacity: 1 }
  100% { opacity: 0; transform: translateY(168px) }
}

@media (prefers-reduced-motion: reduce) {
  .hd-k i, .kick i { animation: none }
  h1 .ch { animation: none; opacity: 1; transform: none }
  h1 .ac.pulse { animation: none }
  .hd-scan { display: none }
}
