/* Isolated enhancements: no text reveal state and no layout changes on touch screens. */
@media (min-width: 901px) and (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .cm-motion-enabled .cm-parallax {
    overflow: hidden;
  }

  .cm-motion-enabled .cm-parallax > img {
    translate: 0 var(--cm-photo-y, 0px);
    scale: var(--cm-photo-scale, 1);
    /* Individual properties compose with the original image-settle transform. */
    transform-origin: center;
  }

  .cm-motion-enabled .cm-parallax-visible > img {
    will-change: translate;
  }

  .cm-motion-enabled .cm-card {
    position: relative;
    isolation: isolate;
    rotate: var(--cm-card-tilt, 0deg);
    transition: rotate .55s cubic-bezier(.22, 1, .36, 1), box-shadow .45s, border-color .45s;
  }

  .cm-motion-enabled .cm-card::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 3;
    border-radius: inherit;
    background: radial-gradient(420px circle at var(--cm-light-x, 50%) var(--cm-light-y, 40%), rgb(246 216 159 / 13%), transparent 65%);
    opacity: 0;
    pointer-events: none;
    transition: opacity .55s ease;
  }

  .cm-motion-enabled .cm-card-engaged::before {
    opacity: 1;
  }

  /* A focus target stays level even if the pointer is still inside its card. */
  .cm-motion-enabled .cm-card:focus-within {
    rotate: none;
    transition: box-shadow .45s, border-color .45s;
  }

  .cm-motion-enabled .cm-card:focus-within::before {
    opacity: 0;
    transition: none;
  }

  .cm-motion-enabled .cm-card .card-bottom a {
    transition: text-decoration-color .25s, text-underline-offset .25s;
  }

  .cm-motion-enabled .cm-card .card-bottom a:hover {
    text-underline-offset: 6px;
    text-decoration-color: var(--accent, #917249);
  }
}

@media print {
  .cm-parallax > img { translate: none !important; scale: none !important; }
  .cm-card { rotate: none !important; }
  .cm-card::before { display: none !important; }
}
