/*
 * VENT adaptive performance layer
 * --------------------------------
 * The complete visual design remains active on capable hardware.  This layer
 * skips off-screen layout work and pauses decorative motion that cannot be
 * seen.  On constrained devices it swaps only expensive live GPU effects for
 * visually equivalent static surfaces; image resolution and content are never
 * reduced.
 */

img {
  image-rendering: auto;
}

/* Browser-native rendering deferral: older browsers safely ignore it. */
@supports (content-visibility: auto) {
  .site-shell > section:nth-of-type(n + 2),
  .site-shell > footer,
  .site-shell > .site-footer {
    content-visibility: auto;
    contain-intrinsic-size: 760px;
    contain-intrinsic-size: auto 760px;
  }

  .product-card,
  .brand-card,
  .feature-grid > article,
  .contact-cards > *,
  .instruction-list > *,
  .partner-set > * {
    contain: layout style;
  }
}

/* JavaScript pauses whole animated islands while they are outside the view. */
.is-runtime-paused,
.is-runtime-paused *,
.is-runtime-paused::before,
.is-runtime-paused::after,
.is-runtime-paused *::before,
.is-runtime-paused *::after {
  animation-play-state: paused !important;
}

.partner-slider.is-runtime-paused .partner-track {
  will-change: auto;
}

/* Avoid promoting the marquee for its entire lifetime when it is not moving. */
.partner-slider:hover .partner-track,
.partner-slider:focus-within .partner-track,
.partner-slider.is-runtime-paused .partner-track {
  will-change: auto;
}

/* Constrained-hardware mode: same layout, colors, assets and resolution. */
html[data-performance="balanced"] .site-shell {
  --shadow: 0 18px 48px rgba(0, 9, 23, .32);
}

html[data-theme="light"][data-performance="balanced"] .site-shell,
html[data-performance="balanced"] .site-shell[data-theme="light"] {
  --shadow: 0 18px 46px rgba(3, 37, 65, .12);
}

html[data-performance="balanced"] .site-header,
html[data-performance="balanced"] .dropdown-panel,
html[data-performance="balanced"] .theme-dock,
html[data-performance="balanced"] .collage-label,
html[data-performance="balanced"] .visual-status,
html[data-performance="balanced"] .camera-status,
html[data-performance="balanced"] .map-badge,
html[data-performance="balanced"] .cms-gallery-head,
html[data-performance="balanced"] .product-detail-zoom,
html[data-performance="balanced"] .home-hero-controls,
html[data-performance="balanced"] .terminal-stage-label,
html[data-performance="balanced"] .terminal-product-copy,
html[data-performance="balanced"] .terminal-offer-badge,
html[data-performance="balanced"] .terminal-order-badge,
html[data-performance="balanced"] .premium-hero-proof,
html[data-performance="balanced"] .software-showcase-head,
html[data-performance="balanced"] .video-showcase-head,
html[data-performance="balanced"] .software-platform-info,
html[data-performance="balanced"] .software-floating-badge,
html[data-performance="balanced"] .video-floating-card,
html[data-performance="balanced"] .video-quality-badge,
html[data-performance="balanced"] .orbit-badge,
html[data-performance="balanced"] .software-card-index {
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}

html[data-performance="balanced"] .site-header,
html[data-performance="balanced"] .theme-dock,
html[data-performance="balanced"] .home-hero-controls,
html[data-performance="balanced"] .cms-gallery-head {
  background-color: rgba(var(--bg-rgb), .97);
}

html[data-performance="balanced"] .premium-showcase,
html[data-performance="balanced"] .premium-showcase-canvas,
html[data-performance="balanced"] .software-hero-platform {
  perspective: none !important;
  transform-style: flat !important;
}

html[data-performance="balanced"] .premium-showcase-canvas {
  transform: none !important;
}

/* These are purely ornamental infinite loops. Their static frame is identical
   in information and keeps the premium composition intact. */
html[data-performance="balanced"] .page-orbit span,
html[data-performance="balanced"] .support-icon-stage > span,
html[data-performance="balanced"] .visual-status,
html[data-performance="balanced"] .camera-status,
html[data-performance="balanced"] .camera-radar i,
html[data-performance="balanced"] .video-scan-line,
html[data-performance="balanced"] .video-radar i,
html[data-performance="balanced"] .software-flow i,
html[data-performance="balanced"] .software-floating-badge,
html[data-performance="balanced"] .video-floating-card,
html[data-performance="balanced"] .orbit {
  animation: none !important;
}

html[data-performance="balanced"] .software-card-glow,
html[data-performance="balanced"] .terminal-product-glow {
  filter: none;
  opacity: .38;
}

html[data-performance="balanced"] .card-shine,
html[data-performance="balanced"] .site-shell::before {
  display: none;
}

/* A coarse pointer cannot use hover-only depth effects, so avoid creating
   needless compositor layers while keeping every card and action visible. */
@media (hover: none), (pointer: coarse) {
  .premium-showcase-canvas,
  .software-hero-platform,
  .product-card,
  .brand-card {
    transform: none !important;
  }

  .premium-showcase-canvas,
  .software-hero-platform {
    transform-style: flat;
  }
}

/* Reduced motion changes transitions, never the functional hero timer. */
@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  .home-hero-slide,
  .home-hero-slide .hero-copy > *,
  .cms-gallery-stage,
  .cms-gallery-main img {
    transition-duration: .01ms !important;
  }
}

@media (max-width: 650px) {
  @supports (content-visibility: auto) {
    .site-shell > section:nth-of-type(n + 2),
    .site-shell > footer,
    .site-shell > .site-footer {
      contain-intrinsic-size: 980px;
      contain-intrinsic-size: auto 980px;
    }
  }
}
