/* TILT3D — 3D перекос карточек за курсором + blik */

.problem-grid, .solution-grid, .features-grid, .pricing-grid,
.how-grid, .roi-grid, #cta .cta-form, .faq-list {
  perspective: 1200px;
  perspective-origin: 50% 40%;
}

[data-tilt] {
  transform-style: preserve-3d;
  transform: perspective(1200px) rotateX(0) rotateY(0);
  will-change: transform;
  transition: transform 0.18s cubic-bezier(0.16, 1, 0.3, 1);
}

[data-tilt].tilting { transition: none; }

[data-tilt] > * {
  transform: translateZ(18px);
  transform-style: preserve-3d;
}

[data-tilt] .pain-emoji,
[data-tilt] .sol-icon,
[data-tilt] .feature-cat-title,
[data-tilt] .tariff-name,
[data-tilt] .step-num,
[data-tilt] h3 {
  transform: translateZ(38px);
}

[data-tilt] .pain-cost,
[data-tilt] .tariff-price,
[data-tilt] .roi-cell .val {
  transform: translateZ(28px);
}

/* Glare (наложение через JS в виде div) */
.tilt-glare {
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
  mix-blend-mode: overlay;
  opacity: 0;
  transition: opacity 0.3s ease;
  transform: translateZ(1px);
  z-index: 3;
}

[data-tilt]:hover .tilt-glare { opacity: 1; }

/* Fallbacks */
@media (hover: none) {
  [data-tilt] { transform: none !important; transition: none; }
  [data-tilt] > * { transform: none; }
  .tilt-glare { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  [data-tilt] { transform: none !important; transition: none; }
  [data-tilt] > * { transform: none; }
  .tilt-glare { display: none; }
}
