/* v17.71 — product motion on every breakpoint.
   Entry posters remain light; after the intro, each available animated render
   replaces its poster without changing the product's visible bounding box. */

@media (max-width:1024px) {
  :is(
    #slide-1 .product-left,
    #slide-2 .product-dishwasher
  ) > img.is-motion-ready[data-motion-profile] {
    position:absolute!important;
    inset:auto!important;
    left:var(--motion-left)!important;
    top:var(--motion-top)!important;
    right:auto!important;
    bottom:auto!important;
    width:var(--motion-width)!important;
    height:var(--motion-height)!important;
    max-width:none!important;
    max-height:none!important;
    object-fit:fill!important;
    object-position:50% 50%!important;
    scale:1!important;
    translate:none!important;
    transform:none!important;
  }

  /* The washer keeps the same neutral studio treatment as the dishwasher.
     Its three-quarter perspective is retained; only light and perceived scale
     are normalized, so the render belongs to the shared appliance family. */
  #slide-1 .product-left > img.is-motion-ready[data-motion-profile="washer"] {
    filter:drop-shadow(0 22px 23px rgba(22,25,30,.19))
           drop-shadow(0 -3px 11px rgba(255,255,255,.11));
  }
  html[data-finish="white"] #slide-1 .product-left > img.is-motion-ready[data-motion-profile="washer"] {
    filter:drop-shadow(0 20px 22px rgba(20,22,26,.15))
           drop-shadow(0 -3px 10px rgba(255,255,255,.18));
  }

  /* Existing atmospheric motion remains alive around products that do not
     have a frame-based render of their own. Nothing moves the product box. */
  #slide-3.is-visible .plaque-stage {
    animation:se-plaque-live-light 7.6s ease-in-out infinite!important;
  }
  #slide-4.is-visible .heater-stage::before {
    animation:se-heater-aura-live 6.8s ease-in-out infinite!important;
  }
}

/* Tablet keeps the approved snowfall. On phones the simplified neutral scene
   remains intact and the small heater aura carries the motion instead. */
@media (min-width:641px) and (max-width:1024px) {
  #slide-4 .heater-flake {
    animation-name:heater-snow!important;
    animation-duration:var(--flake-speed)!important;
    animation-timing-function:linear!important;
    animation-delay:var(--flake-delay)!important;
    animation-iteration-count:infinite!important;
  }
  #slide-4:not(.is-visible) .heater-flake { animation-play-state:paused!important; }
  #slide-4.is-visible .heater-flake { animation-play-state:running!important; }
}

@keyframes se-plaque-live-light {
  0%,100% { filter:brightness(1) drop-shadow(0 18px 20px rgba(24,26,30,.14)); }
  48% { filter:brightness(1.035) drop-shadow(0 20px 23px rgba(24,26,30,.18)); }
}

@keyframes se-heater-aura-live {
  0%,100% { opacity:.82; filter:blur(30px); }
  50% { opacity:1; filter:blur(26px); }
}

@media (prefers-reduced-motion:reduce) {
  #slide-3.is-visible .plaque-stage,
  #slide-4.is-visible .heater-stage::before,
  #slide-4 .heater-flake {
    animation:none!important;
  }
}
