/* Storefront performance — all nav pages, same visuals */

.page-storefront .site-backdrop {
  contain: layout paint style;
  isolation: isolate;
}

.page-storefront .site-grid-bg,
.page-storefront .site-backdrop__mesh {
  contain: layout paint;
  pointer-events: none;
}

.page-storefront .site-backdrop__photo,
.page-storefront .site-backdrop__video {
  backface-visibility: hidden;
  transform: translate3d(0, 0, 0) scale(1.04);
}

.page-storefront .glass-orb {
  backface-visibility: hidden;
  will-change: transform;
}

.page-storefront .site-header {
  transform: translate3d(0, 0, 0);
}

.page-storefront .resizable-nav__body {
  contain: layout style;
}

/* No scroll reveals — full page visible on first paint (no fade/slide when scrolling) */
.page-storefront .reveal,
.page-storefront .reveal.is-visible,
.page-storefront [data-reveal] {
  opacity: 1 !important;
  transform: none !important;
  transition: none !important;
  transition-delay: 0s !important;
}

/* Tab in background — pause decorative CSS company-wide */
html.is-tab-hidden .page-storefront *,
html.is-tab-hidden .page-storefront *::before,
html.is-tab-hidden .page-storefront *::after {
  animation-play-state: paused !important;
}

/* Off-screen blocks — pause CSS animations only (not JS-driven product/review marquees) */
.page-storefront .is-viewport-paused:not([data-hero-dock-marquee]):not([data-home-marquee-collections]):not([data-home-marquee-products]):not([data-home-reviews-marquee]),
.page-storefront .is-viewport-paused:not([data-hero-dock-marquee]):not([data-home-marquee-collections]):not([data-home-marquee-products]):not([data-home-reviews-marquee]) * {
  animation-play-state: paused !important;
}

.page-storefront [data-feedback-3d].is-viewport-paused {
  animation-play-state: paused !important;
}

/* After first paint — pause backdrop decor only (not page content) */
html:not(.is-page-ready) .page-storefront .glass-orb,
html:not(.is-page-ready) .page-storefront .grid-drip::before,
html:not(.is-page-ready) .page-storefront .home-effects,
html:not(.is-page-ready) .page-storefront .home-effects * {
  animation-play-state: paused;
}

.page-storefront .home-effects {
  contain: layout paint;
}

/* Hero/review marquees use JS transforms — no contain:paint (breaks motion + intersection) */

/* Scrolled past hero — pause backdrop zoom (static frame) */
html.is-backdrop-idle .page-storefront .site-backdrop__photo,
html.is-backdrop-idle .page-storefront .site-backdrop__video {
  animation-play-state: paused !important;
}

/* Instant load — static home nav (no entrance motion or scroll tilt) */
.page-storefront .site-header--home .resizable-nav__body,
.page-storefront .site-header--home.is-nav-entered .resizable-nav__body,
.page-storefront .site-header--home.is-scrolled .resizable-nav__body {
  opacity: 1 !important;
  transform: none !important;
  transition: background 0.35s ease, border-color 0.35s ease, box-shadow 0.35s ease !important;
}

.page-storefront .site-header--home.is-nav-entered .resizable-nav__logo,
.page-storefront .site-header--home.is-nav-entered .floating-dock--home,
.page-storefront .site-header--home.is-nav-entered .resizable-nav__actions--home {
  opacity: 1 !important;
  animation: none !important;
}

.page-storefront .site-header--home.is-nav-entered .resizable-nav__viewport {
  animation: none !important;
}

.page-storefront .site-header--home [data-home-nav],
.page-storefront .site-header--home .resizable-nav__viewport {
  transform: none !important;
  perspective: none !important;
}

/* Weak devices — lighter marquee paint, no hover scale churn */
html.is-low-perf .page-home .home-marquee__track,
html.is-low-perf .page-home .hero-dock__track,
html.is-low-perf .page-home .home-reviews-marquee__track {
  contain: layout style;
  backface-visibility: hidden;
}

html.is-low-perf .page-home .catalog-card--marquee,
html.is-low-perf .page-home .product-card--marquee {
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

html.is-low-perf .page-home .catalog-card--marquee:hover,
html.is-low-perf .page-home .product-card--marquee:hover,
html.is-medium-perf .page-home .catalog-card--marquee:hover,
html.is-medium-perf .page-home .product-card--marquee:hover {
  transform: none;
}

html.is-low-perf .page-home .home-marquee__nav,
html.is-medium-perf .page-home .home-marquee__nav {
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

/* Faster aura rim while hovering — override global animation pause */
.page-storefront [data-home-nav].is-nav-hover .resizable-nav__aura::before {
  animation-play-state: running !important;
}

.page-storefront .hero-scroll__dot {
  animation: none !important;
}

@media (prefers-reduced-motion: reduce) {
  .page-storefront .site-backdrop__photo,
  .page-storefront .site-backdrop__video,
  .page-storefront .glass-orb,
  .page-storefront .grid-drip::before {
    animation: none !important;
  }
}
