/* Slightly fuller movement, with slow timing and the original composition intact. */
@media(prefers-reduced-motion:no-preference){
 .hero.motion-ready .hero-pack,.hero.motion-ready .hero-orbit,.hero.motion-ready .hero-seal{--drift-x:0px;--drift-y:0px;animation:gibsons-breathe 10s ease-in-out infinite;will-change:translate}
 .hero.motion-ready .pack-blue{animation-duration:11s;animation-delay:-3s;--float:10px}
 .hero.motion-ready .pack-red{animation-duration:13s;animation-delay:-8s;--float:9px}
 .hero.motion-ready .hero-orbit{animation-duration:17s;animation-delay:-5s;--float:11px}
 .hero.motion-ready .hero-seal{animation-duration:14s;animation-delay:-2s;--float:8px}
 .hero.motion-paused .hero-pack,.hero.motion-paused .hero-orbit,.hero.motion-paused .hero-seal{animation-play-state:paused}
 @keyframes gibsons-breathe{0%,100%{translate:var(--drift-x) calc(var(--drift-y) + var(--float));rotate:-.6deg}50%{translate:calc(var(--drift-x) + 3px) calc(var(--drift-y) - var(--float));rotate:.6deg}}
}
.hero-cursor-warmth{position:absolute;inset:0;z-index:1;pointer-events:none;opacity:0;background:radial-gradient(ellipse 290px 250px at var(--warm-x,65%) var(--warm-y,45%),rgba(255,206,123,.23),rgba(249,162,49,.08) 44%,transparent 73%);mix-blend-mode:screen;transition:opacity 1s ease}
.hero.pointer-warm .hero-cursor-warmth{opacity:1}.hero-products{z-index:2}
@media(pointer:coarse),(prefers-reduced-motion:reduce){.hero-cursor-warmth{display:none}}

.hero-cursor-warmth:after{content:'';position:absolute;left:var(--warm-x,65%);top:var(--warm-y,45%);width:30px;height:30px;border:1px solid rgba(255,220,156,.4);border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 18px rgba(250,177,77,.12);pointer-events:none}
