/* Stable hit area, separate idle motion, two identical rotating faces. */
html .hyperion-3d-card {
  --card-turn: 0deg; --card-drag-rx: 0deg; --card-delay: 0s;
  position: relative; perspective: 1400px; overflow: visible !important;
  user-select: none; -webkit-user-select: none; touch-action: pan-y; cursor: grab;
}
html .hyperion-3d-card-float {
  display: block; position: relative; width: 100%; height: auto;
  border-radius: inherit; perspective: 1400px; transform-style: preserve-3d;
  animation: hyperion-card-hover 7s ease-in-out var(--card-delay) infinite;
  animation-play-state: paused;
}
html .hyperion-3d-card.is-card-visible > .hyperion-3d-card-float { animation-play-state: running; }
html .hyperion-3d-card-inner {
  display: block; position: relative; width: 100%; height: auto;
  border-radius: inherit; transform-style: preserve-3d;
  transform: rotateX(var(--card-drag-rx)) rotateY(var(--card-turn));
  /* Filters or opacity here would flatten both faces into one plane. */
  transition: none;
}
html .hyperion-3d-card-impact {
  display:block; position:relative; width:100%; border-radius:inherit;
  transform-style:preserve-3d;
}
html .hyperion-3d-card-face {
  display: block; width: 100%; box-sizing: border-box; padding: 0; border: 0;
  border-radius: inherit; backface-visibility: hidden; -webkit-backface-visibility: hidden;
  background: transparent;
}
html .hyperion-3d-card-front { position: relative; transform: translateZ(.5px); }
html .hyperion-3d-card-back { position: absolute; inset: 0; transform: rotateY(180deg) translateZ(.5px); }
html body .hyperion-3d-card .hyperion-3d-card-face > img {
  display: block !important; width: 100% !important; height: auto !important;
  margin: 0 !important; border: 0 !important; border-radius: inherit;
  object-fit: contain !important; opacity: 1 !important; filter: none !important;
  transform: none !important; animation: none !important; box-shadow: none !important;
  pointer-events: none; -webkit-user-drag: none;
}
html body .hyperion-3d-card .hyperion-3d-card-back > img { height: 100% !important; }
html .hyperion-3d-card-face::before, html .hyperion-3d-card-face::after { content: none; }
html .hyperion-3d-card:hover > .hyperion-3d-card-float,
html .hyperion-3d-card:focus-within > .hyperion-3d-card-float,
html .hyperion-3d-card.is-dragging > .hyperion-3d-card-float { animation-play-state: paused; }
html .hyperion-3d-card.is-dragging { cursor: grabbing; z-index: 40; }
html .hyperion-3d-card:focus-visible { outline: 2px solid #6ce9e0; outline-offset: 6px; }
.home-price-art { display: block; width: 100%; margin-inline: auto; }
@keyframes hyperion-card-hover {
  0%,100% { transform: translateY(0) rotateX(-1deg) rotateY(-2deg); }
  50% { transform: translateY(-10px) rotateX(1deg) rotateY(2deg); }
}
@media (hover:hover) and (pointer:fine) {
  html .hyperion-3d-card { touch-action: none; }
}
@media (prefers-reduced-motion:reduce) { html .hyperion-3d-card-float { animation: none; } }
