/* Motion only: no changes to layout, typography or the user's colours. */
.cosmed-header__login { transition: transform .25s ease, background-color .25s ease, color .25s ease; }
.cm-benefit-card,.cm-product-series,.cm-catalog-brand,.cosmed-brand-card { transition: transform .3s ease; }
.cm-brand-story__image,.cm-product-series__visual img,.cm-catalog-brand__visual img { transition: transform .6s ease; }
.cm-product-series__visual { overflow: hidden; }
.cosmed-carousel__nav :is(img,svg),.cm-slider-controls :is(img,svg) { transition: transform .25s ease; }
@media (hover:hover) and (pointer:fine) {
  .cosmed-header__login:hover { transform: scale(1.025); }
  .cm-benefit-card:hover,.cm-product-series:hover,.cm-brand-recommendations .cm-catalog-brand:hover,.cosmed-brand-card:hover { transform: translateY(-4px); }
  .cm-brand-story__image:hover { transform: scale(1.015); }
  .cm-product-series:hover .cm-product-series__visual img,.cm-brand-recommendations .cm-catalog-brand:hover img { transform: scale(1.03); }
  :is([data-cosmed-next],[data-cm-slide-next]):not(:disabled):hover :is(img,svg) { transform: translateX(3px); }
  :is([data-cosmed-prev],[data-cm-slide-prev]):not(:disabled):hover :is(img,svg) { transform: translateX(-3px); }
  .cm-motion-draggable { cursor: grab; }
}
.cm-motion-draggable.is-dragging { cursor: grabbing; user-select: none; }
.cm-motion-draggable.is-coasting { scroll-snap-type: none !important; scroll-behavior: auto !important; }
.cm-motion-gradient { background-size: 160% 160% !important; animation: cm-gradient-drift 18s ease-in-out infinite alternate; animation-play-state: paused; }
.cm-motion-gradient.is-motion-visible { animation-play-state: running; }
@keyframes cm-gradient-drift { from { background-position: 15% 50%; } to { background-position: 85% 50%; } }
@media (prefers-reduced-motion:reduce) {
  .cosmed-button,.cosmed-carousel__nav :is(img,svg),.cm-slider-controls :is(img,svg) { transition: none; }
  .cosmed-button:hover,:is([data-cosmed-next],[data-cm-slide-next],[data-cosmed-prev],[data-cm-slide-prev]):not(:disabled):hover :is(img,svg) { transform: none; }
  .cm-motion-gradient { animation: none; background-size: auto !important; }
  .cosmed-header__login,.cm-benefit-card,.cm-product-series,.cm-catalog-brand,.cosmed-brand-card,.cm-brand-story__image,.cm-product-series__visual img,.cm-catalog-brand__visual img { transition: none; }
  .cosmed-header__login:hover,.cm-benefit-card:hover,.cm-product-series:hover,.cm-brand-recommendations .cm-catalog-brand:hover,.cosmed-brand-card:hover,.cm-brand-story__image:hover,.cm-product-series:hover .cm-product-series__visual img,.cm-brand-recommendations .cm-catalog-brand:hover img { transform: none; }
  [data-cosmed-track],[data-cm-slide-track] { scroll-behavior: auto; }
}

.cm-brand-banner__scroll > svg { animation:cm-brand-scroll-arrow 1.6s ease-in-out infinite; }
@keyframes cm-brand-scroll-arrow {
  0%,100% { transform:translateY(0); }
  50% { transform:translateY(6px); }
}
@media (prefers-reduced-motion:reduce) {
  .cm-brand-banner__scroll > svg { animation:none; }
}
