/* Decorative auction still-life. All moving parts share one impact clock. */
#auction .cp-auction-copy { min-width:0; }
#auction .auction-gavel-filler { --gavel-cycle:4.8s; position:relative; width:var(--gavel-filler-width,min(100%,560px)); max-width:100%; aspect-ratio:700/430; margin:-96px 0 0 auto; isolation:isolate; pointer-events:none; user-select:none; }
#auction .auction-gavel-scene { display:block; width:100%; height:100%; overflow:visible; }
#auction .gavel-hammer { transform-box:view-box; transform-origin:90px 290px; animation:auction-hammer var(--gavel-cycle) infinite; }
#auction .gavel-ball { transform-box:view-box; transform-origin:626px 333px; animation:auction-ball var(--gavel-cycle) infinite; }
#auction .gavel-block { transform-box:view-box; transform-origin:485px 393px; animation:auction-block var(--gavel-cycle) infinite; }
#auction .gavel-hammer-shadow { transform-box:view-box; transform-origin:345px 363px; animation:auction-hammer-shadow var(--gavel-cycle) infinite; }
#auction .gavel-ball-shadow { transform-box:view-box; transform-origin:626px 390px; animation:auction-ball-shadow var(--gavel-cycle) infinite; }
#auction .gavel-impact { transform-box:view-box; transform-origin:485px 324px; opacity:0; animation:auction-impact var(--gavel-cycle) infinite; }
#auction .auction-gavel-filler :is(.gavel-hammer,.gavel-ball,.gavel-block,.gavel-hammer-shadow,.gavel-ball-shadow,.gavel-impact) { animation-play-state:paused; }
#auction .auction-gavel-filler.is-running :is(.gavel-hammer,.gavel-ball,.gavel-block,.gavel-hammer-shadow,.gavel-ball-shadow,.gavel-impact) { animation-play-state:running; }
#auction .cp-auction-copy.gavel-copy-flows { position:relative; top:auto; }
@keyframes auction-hammer {
 0%,15%,100% { transform:rotate(0deg); animation-timing-function:cubic-bezier(.4,0,.25,1); }
 35% { transform:rotate(-16deg); animation-timing-function:ease-in-out; }
 42% { transform:rotate(-16deg); animation-timing-function:cubic-bezier(.65,0,.9,.45); }
 50% { transform:rotate(0deg); animation-timing-function:cubic-bezier(.16,1,.3,1); }
 54% { transform:rotate(-5deg); animation-timing-function:cubic-bezier(.55,0,.85,.4); }
 60% { transform:rotate(0deg); animation-timing-function:ease-out; }
 64% { transform:rotate(-1deg); animation-timing-function:ease-in-out; }
 69% { transform:rotate(0deg); }
}
@keyframes auction-ball {
 0%,49.8%,73%,100% { transform:translate(0,0) rotate(0deg) scale(1); }
 50.6% { transform:translate(1px,2px) rotate(1deg) scale(1.025,.975); animation-timing-function:cubic-bezier(.16,1,.3,1); }
 54.5% { transform:translate(6px,-10px) rotate(8deg) scale(1); animation-timing-function:cubic-bezier(.55,0,.9,.5); }
 59% { transform:translate(9px,0) rotate(11deg); animation-timing-function:ease-out; }
 62.5% { transform:translate(5px,-3px) rotate(6deg); animation-timing-function:ease-in; }
 66% { transform:translate(2px,0) rotate(2deg); animation-timing-function:ease-out; }
}
@keyframes auction-block {
 0%,49.8%,55%,100% { transform:translateY(0) scaleY(1); }
 50.6% { transform:translateY(1.4px) scaleY(.99); }
}
@keyframes auction-hammer-shadow {
 0%,15%,50%,69%,100% { transform:scale(1); opacity:.17; }
 35%,42% { transform:translate(13px,3px) scale(1.12,1.4); opacity:.065; }
 54% { transform:scale(1.02,1.1); opacity:.12; }
}
@keyframes auction-ball-shadow {
 0%,49.8%,73%,100% { transform:scale(1); opacity:.15; }
 50.6%,59% { transform:scale(1.035,1); opacity:.17; }
 54.5% { transform:translateX(6px) scale(.86,.85); opacity:.09; }
 62.5% { transform:translateX(5px) scale(.95,.95); opacity:.12; }
}
@keyframes auction-impact {
 0%,49.8%,61%,100% { opacity:0; transform:scale(.9); }
 50.6% { opacity:.15; transform:scale(.92); }
 60% { opacity:0; transform:scale(1.35); }
}
@media (max-width:1100px) { #auction .auction-gavel-filler { margin-top:12px; } }
@media (max-width:700px), (max-height:599px) { #auction .auction-gavel-filler { margin-top:8px; width:min(100%,440px); } }
@media (prefers-reduced-motion:reduce) {
 #auction .auction-gavel-filler { margin-top:8px; }
 #auction .auction-gavel-filler :is(.gavel-hammer,.gavel-ball,.gavel-block,.gavel-hammer-shadow,.gavel-ball-shadow,.gavel-impact) { animation:none; transform:none; }
 #auction .gavel-hammer-shadow { opacity:.17; }
 #auction .gavel-ball-shadow { opacity:.15; }
 #auction .gavel-impact { opacity:0; }
}
