@media (max-width: 767px), (pointer: coarse) {
  .rate-page .rate-hero__visual {
    perspective: none;
  }

  .rate-page .rate-hero__phone {
    transform-style: flat;
  }

  .rate-page .rate-phone__portrait {
    contain: paint;
  }

  .rate-page .rate-phone__face-mesh,
  .rate-page .rate-phone__mesh-grid line,
  .rate-page .rate-phone__mesh-points circle {
    animation: none;
  }

  .rate-page .rate-phone__face-mesh {
    opacity: .84;
    color: #ffffffc7;
    filter: none;
    mix-blend-mode: normal;
    clip-path: none;
  }

  .rate-page .rate-phone__mesh-points circle {
    transform: none;
  }

  .rate-page .rate-phone__portrait img {
    filter: none;
  }

  .rate-page .rate-phone__scan {
    top: -86px;
    bottom: 0;
    filter: none;
    background-position: 0 0;
    background-image: linear-gradient(
      #0000 0% 40%, #e7c26a06 44%, #f6dc9d1a 47%,
      #fff4d67a 49.3%, #fffbede6 50%, #fff4d67a 50.7%,
      #f6dc9d1a 53%, #e7c26a06 56%, #0000 60% 100%
    );
    -webkit-mask-image: none;
    mask-image: none;
    will-change: transform;
    animation: rate-mobile-scan 1.6s linear infinite;
  }

  .rate-page .rate-phone__portrait[data-rate-visible="false"] .rate-phone__scan,
  html[data-rate-page-hidden="true"] .rate-page .rate-phone__scan {
    animation-play-state: paused;
    will-change: auto;
  }
}

@keyframes rate-mobile-scan {
  from { transform: translateY(0); }
  to { transform: translateY(86px); }
}

@media (prefers-reduced-motion: reduce) {
  .rate-page .rate-phone__scan,
  .rate-page .rate-phone__face-mesh,
  .rate-page .rate-phone__mesh-grid line,
  .rate-page .rate-phone__mesh-points circle {
    animation: none !important;
    will-change: auto;
  }
}
