/* Plaque motion. nkvp.css reduced-motion uses animation/transition none !important
   and must keep winning: nothing here sets those with !important. */

@media (prefers-reduced-motion: no-preference) {
  html.nkvp-hold .plaque.is-on,
  html.nkvp-hold .plaque.is-on *,
  html.nkvp-hold .plaque.is-on *::before,
  html.nkvp-hold .plaque.is-on *::after,
  html.nkvp-hold .hero__frame:has(.nkvp-room)::after {
    animation-play-state: paused !important;
  }

  /* Hero still: locked frame, one slow warm pass across the wood. */
  .hero__media--still.nkvp-room {
    animation: none;
    transform: none;
  }
  .hero__frame:has(.nkvp-room)::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 3;
    pointer-events: none;
    background-image: linear-gradient(
      108deg,
      transparent 0%,
      transparent 40%,
      rgba(255, 214, 156, 0.16) 50%,
      transparent 60%,
      transparent 100%
    );
    background-size: 170% 100%;
    background-repeat: no-repeat;
    animation: nkvp-room 18s ease-in-out infinite alternate;
  }

  /* One lamp over the print. Heat rises, a surface catches it, a light already in the picture breathes.
     The plaque bar is not here. */
  .ladder > .lot:nth-child(2) .lot__still { --nkvp-lag: -1.6s; }
  .ladder > .lot:nth-child(3) .lot__still { --nkvp-lag: -3.1s; }
  .ladder > .lot:nth-child(4) .lot__still { --nkvp-lag: -0.8s; }
  .ladder > .lot:nth-child(5) .lot__still { --nkvp-lag: -4.4s; }

  .lot__still[data-fx],
  .draw__pic[data-fx] {
    position: relative;
    overflow: hidden;
  }

  .lot__still[data-fx="burger"]::after,
  .draw__pic[data-fx="burger"]::after,
  .lot__still[data-fx="grill"]::after,
  .draw__pic[data-fx="grill"]::after,
  .lot__still[data-fx="spout"]::after,
  .draw__pic[data-fx="spout"]::after,
  .lot__still[data-fx="bath"]::after,
  .draw__pic[data-fx="bath"]::after {
    content: "";
    position: absolute;
    width: 8%;
    height: 30%;
    pointer-events: none;
    border-radius: 40%;
    background: linear-gradient(to top, transparent 8%, rgba(255, 250, 242, 0.7) 46%, transparent 100%);
    filter: blur(8px);
    animation: nkvp-rise 8s ease-out infinite;
    animation-delay: var(--nkvp-lag, 0s);
  }
  .lot__still[data-fx="burger"]::after,
  .draw__pic[data-fx="burger"]::after { left: 18%; bottom: 8%; }
  .lot__still[data-fx="grill"]::after,
  .draw__pic[data-fx="grill"]::after { left: 28%; top: 24%; }
  .lot__still[data-fx="spout"]::after,
  .draw__pic[data-fx="spout"]::after {
    left: 0;
    top: 0;
    width: 11%;
    height: 18%;
    filter: blur(5px);
  }
  .lot__still[data-fx="bath"]::after,
  .draw__pic[data-fx="bath"]::after {
    right: 12%;
    left: auto;
    bottom: 18%;
    width: 24%;
    height: 26%;
    filter: blur(14px);
    animation-duration: 10s;
  }

  .lot__still[data-fx="sheen"]::after,
  .draw__pic[data-fx="sheen"]::after,
  .lot__still[data-fx="glaze"]::after,
  .draw__pic[data-fx="glaze"]::after,
  .lot__still[data-fx="pearl"]::after,
  .draw__pic[data-fx="pearl"]::after,
  .lot__still[data-fx="linen"]::after,
  .draw__pic[data-fx="linen"]::after,
  .lot__still[data-fx="map"]::after,
  .draw__pic[data-fx="map"]::after,
  .lot__still[data-fx="frost"]::after,
  .draw__pic[data-fx="frost"]::after,
  .lot__still[data-fx="train"]::after,
  .draw__pic[data-fx="train"]::after,
  .lot__still[data-fx="shore"]::after,
  .draw__pic[data-fx="shore"]::after,
  .lot__still[data-fx="lidar"]::after,
  .draw__pic[data-fx="lidar"]::after,
  .lot__still[data-fx="porthole"]::after,
  .draw__pic[data-fx="porthole"]::after {
    content: "";
    position: absolute;
    pointer-events: none;
    background: radial-gradient(ellipse at 50% 42%, rgba(255, 248, 232, 0.95), transparent 58%);
    filter: blur(16px);
    mix-blend-mode: soft-light;
    animation: nkvp-lamp-on 8.5s ease-in-out infinite;
    animation-delay: var(--nkvp-lag, 0s);
  }
  .lot__still[data-fx="sheen"]::after,
  .draw__pic[data-fx="sheen"]::after,
  .lot__still[data-fx="glaze"]::after,
  .draw__pic[data-fx="glaze"]::after { inset: 0; }
  .lot__still[data-fx="pearl"]::after,
  .draw__pic[data-fx="pearl"]::after {
    inset: 32% 34% 36%;
    border-radius: 50%;
    filter: blur(7px);
  }
  .lot__still[data-fx="linen"]::after,
  .draw__pic[data-fx="linen"]::after { inset: 14% 8% 24%; }
  .lot__still[data-fx="map"]::after,
  .draw__pic[data-fx="map"]::after { inset: 20% 10%; }
  .lot__still[data-fx="frost"]::after,
  .draw__pic[data-fx="frost"]::after { left: 33%; top: 8%; width: 34%; height: 80%; }
  .lot__still[data-fx="train"]::after,
  .draw__pic[data-fx="train"]::after { left: 14%; top: 8%; width: 72%; height: 36%; }
  .lot__still[data-fx="shore"]::after,
  .draw__pic[data-fx="shore"]::after { left: 0; top: 0; width: 100%; height: 44%; }
  .lot__still[data-fx="lidar"]::after,
  .draw__pic[data-fx="lidar"]::after {
    left: 18%;
    top: 16%;
    width: 64%;
    height: 58%;
    border-radius: 50%;
  }
  .lot__still[data-fx="porthole"]::after,
  .draw__pic[data-fx="porthole"]::after { left: 30%; top: 10%; width: 40%; height: 78%; }

  .lot__still[data-fx="nose-l"]::after,
  .draw__pic[data-fx="nose-l"]::after,
  .lot__still[data-fx="nose-r"]::after,
  .draw__pic[data-fx="nose-r"]::after,
  .lot__still[data-fx="dental"]::after,
  .draw__pic[data-fx="dental"]::after,
  .lot__still[data-fx="work"]::after,
  .draw__pic[data-fx="work"]::after,
  .lot__still[data-fx="studio"]::after,
  .draw__pic[data-fx="studio"]::after,
  .lot__still[data-fx="quiet"]::after,
  .draw__pic[data-fx="quiet"]::after,
  .lot__still[data-fx="keys"]::after,
  .draw__pic[data-fx="keys"]::after,
  .lot__still[data-fx="rinse"]::after,
  .draw__pic[data-fx="rinse"]::after,
  .lot__still[data-fx="clinic"]::after,
  .draw__pic[data-fx="clinic"]::after,
  .lot__still[data-fx="year"]::after,
  .draw__pic[data-fx="year"]::after,
  .lot__still[data-fx="curtain"]::after,
  .draw__pic[data-fx="curtain"]::after,
  .lot__still[data-fx="room"]::after,
  .draw__pic[data-fx="room"]::after,
  .lot__still[data-fx="dine"]::after,
  .draw__pic[data-fx="dine"]::after {
    content: "";
    position: absolute;
    pointer-events: none;
    border-radius: 50%;
    filter: blur(7px);
    mix-blend-mode: soft-light;
    background: radial-gradient(circle, rgba(255, 232, 186, 0.95), transparent 70%);
    animation: nkvp-lamp-on 6.8s ease-in-out infinite;
    animation-delay: var(--nkvp-lag, 0s);
  }
  .lot__still[data-fx="nose-l"]::after,
  .draw__pic[data-fx="nose-l"]::after {
    left: 14%;
    top: 42%;
    width: 16%;
    height: 12%;
    filter: blur(3px);
  }
  .lot__still[data-fx="nose-r"]::after,
  .draw__pic[data-fx="nose-r"]::after {
    right: 24%;
    left: auto;
    top: 39%;
    width: 16%;
    height: 12%;
    filter: blur(3px);
  }
  .lot__still[data-fx="dental"]::after,
  .draw__pic[data-fx="dental"]::after { left: 32%; top: 0; width: 22%; height: 16%; }
  .lot__still[data-fx="work"]::after,
  .draw__pic[data-fx="work"]::after { left: 4%; top: 24%; width: 18%; height: 18%; }
  .lot__still[data-fx="studio"]::after,
  .draw__pic[data-fx="studio"]::after { left: 40%; top: 0; width: 20%; height: 14%; }
  .lot__still[data-fx="quiet"]::after,
  .draw__pic[data-fx="quiet"]::after { left: 0; top: 38%; width: 16%; height: 20%; }
  .lot__still[data-fx="keys"]::after,
  .draw__pic[data-fx="keys"]::after {
    left: 18%;
    bottom: 4%;
    width: 14%;
    height: 12%;
    filter: blur(2px);
  }
  .lot__still[data-fx="rinse"]::after,
  .draw__pic[data-fx="rinse"]::after {
    left: 0;
    top: 0;
    width: 20%;
    height: 100%;
    border-radius: 0;
    background: linear-gradient(90deg, rgba(255, 236, 200, 0.8), transparent 82%);
    filter: blur(12px);
  }
  .lot__still[data-fx="clinic"]::after,
  .draw__pic[data-fx="clinic"]::after {
    inset: 22% 26%;
    width: auto;
    height: auto;
    filter: blur(18px);
  }
  .lot__still[data-fx="year"]::after,
  .draw__pic[data-fx="year"]::after,
  .lot__still[data-fx="curtain"]::after,
  .draw__pic[data-fx="curtain"]::after {
    left: 20%;
    top: 0;
    width: 60%;
    height: 34%;
    border-radius: 0;
    background: linear-gradient(to bottom, rgba(255, 244, 220, 0.8), transparent 80%);
    filter: blur(14px);
    animation-duration: 9s;
  }
  .lot__still[data-fx="room"]::after,
  .draw__pic[data-fx="room"]::after {
    left: 4%;
    top: 0;
    width: 34%;
    height: 32%;
    border-radius: 0;
    background: linear-gradient(to bottom, rgba(255, 236, 196, 0.75), transparent);
    filter: blur(12px);
    animation-duration: 9s;
  }
  .lot__still[data-fx="dine"]::after,
  .draw__pic[data-fx="dine"]::after {
    right: 0;
    top: 0;
    width: 42%;
    height: 48%;
    border-radius: 0;
    background: linear-gradient(to left, rgba(255, 226, 176, 0.7), transparent);
    filter: blur(14px);
    animation-duration: 9s;
  }

  .plaque__sig img {
    animation: nkvp-mark 8.5s ease-in-out infinite;
  }
}

/* One light. No discs, no stickers, no second drawing on the mark. */

@keyframes nkvp-room {
  from { background-position: 0% 0; }
  to { background-position: 100% 0; }
}
@keyframes nkvp-rise {
  0% { transform: translate3d(0, 10%, 0) scale(0.9, 0.65); opacity: 0; }
  24% { opacity: 0.8; }
  100% { transform: translate3d(5%, -70%, 0) scale(1.08, 1.15); opacity: 0; }
}
@keyframes nkvp-lamp-on {
  0%, 100% { opacity: 0.22; }
  46%, 62% { opacity: 0.92; }
}
@keyframes nkvp-mark {
  0%, 100% { opacity: 0.7; }
  50% { opacity: 1; }
}


@media (prefers-reduced-motion: no-preference) {
  .slip.is-live .slip__line,
  .slip.is-live .slip__more,
  .slip.is-live .slip__rule,
  .slip.is-live .slip__sign,
  .slip.is-live .slip__mark {
    animation: nkvp-slip 0.7s ease both;
  }
  .slip.is-live .slip__line { animation-delay: 0.12s; }
  .slip.is-live .slip__more,
  .slip.is-live .slip__rule { animation-delay: 0.42s; }
  .slip.is-live .slip__sign { animation-delay: 0.72s; }
  .slip.is-live .slip__mark { animation-delay: 0.95s; }
  .slip.is-armed .slip__x { animation: nkvp-slip 0.35s ease both; }
}
@keyframes nkvp-slip {
  from { opacity: 0; transform: translateY(14px); }
  to { opacity: 1; transform: none; }
}
