/* Motion is decorative: the shopping controls and prices remain steady. */
.marquee{overflow:hidden;position:relative}
.announcement.marquee-top{height:38px;padding:0;display:block;font-size:.8rem}
.marquee-track{display:flex;width:max-content;animation:badge-marquee 30s linear infinite}
.marquee-group{display:flex;align-items:center;flex-shrink:0;gap:40px;padding:0 20px;min-width:100vw}
.marquee-top .marquee-group{height:38px;justify-content:space-around;letter-spacing:.03em}
.marquee b{font-weight:400;display:inline-block}
.marquee-top b{font-size:1.3rem}
.marquee:hover .marquee-track,.marquee:focus-within .marquee-track,.motion-offscreen .marquee-track{animation-play-state:paused}
.motion-ribbon{background:var(--red);color:white;padding:21px 0;margin:5px 0 16px;isolation:isolate}
.motion-ribbon .marquee-track{animation-duration:38s;animation-direction:reverse}
.motion-ribbon .marquee-group{gap:38px;padding:0 19px;min-width:0;font-size:clamp(1.8rem,3.5vw,3.7rem);font-weight:850;line-height:1.2;letter-spacing:-.055em;white-space:nowrap}
.motion-ribbon b{font-size:.85em;color:var(--yellow);animation:badge-spin 16s linear infinite}
.ribbon-outline{color:var(--yellow);font-style:italic;font-family:Georgia,serif;font-weight:500}
.motion-toggle{height:40px;padding:0 10px;display:inline-flex;align-items:center;gap:7px;background:#f5f4f8;border:1px solid var(--line);border-radius:7px;color:var(--ink);font:inherit;font-size:.75rem;cursor:pointer;white-space:nowrap}
.motion-toggle:hover{background:var(--yellow)}
.motion-symbol{font-size:1.1rem;line-height:1;min-width:16px}
.motion-toggle:disabled{cursor:default;opacity:.7}
.site-header:has(.page-header-nav){height:auto;min-height:90px}
.nav-wrap:has(.page-header-nav){min-height:90px;flex-wrap:wrap;padding-block:14px}
.hero-copy .eyebrow,.hero-copy h1,.hero-copy>p,.hero-cta,.hero-note,.format-shortcut{animation:badge-enter .85s cubic-bezier(.2,.8,.2,1) both}
.hero-copy h1{animation-delay:.08s}.hero-copy>p{animation-delay:.16s}.hero-cta{animation-delay:.24s}.hero-note,.format-shortcut{animation-delay:.32s}
.hero-copy h1 em{display:inline-block;position:relative}
.hero-copy h1 em::after{content:'';position:absolute;height:4px;border-radius:100%;background:var(--yellow);bottom:-5px;left:0;right:0;transform-origin:left;animation:badge-underline 1.1s .45s both}
.tiny-star{display:inline-block;animation:badge-spin 20s linear infinite}
.hero-label{animation:badge-bob 5s ease-in-out infinite}
.hero-visual{perspective:1000px}
.hero-visual>img{transition:transform .55s cubic-bezier(.2,.8,.2,1);transform:rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) scale(1.025)}
.product-visual{perspective:900px;transition:box-shadow .35s,translate .35s}
.product-visual>canvas{transform:rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.product-visual:hover{translate:0 -6px;box-shadow:0 16px 32px #24232914}
.product-visual .visual-arrow{transition:transform .35s,background .35s}
.product-visual:hover .visual-arrow{transform:rotate(45deg);background:var(--yellow)}
.button{transition:background .2s,box-shadow .25s,translate .25s}
.button:hover{translate:0 -3px;box-shadow:0 8px 20px #24232918}
.button:active{translate:0 0}
.button .icon{transition:transform .25s}.button:hover .icon{transform:translateX(4px)}
.motion-ready .reveal{opacity:0;translate:0 28px;transition:opacity .7s var(--reveal-delay,0ms),translate .7s cubic-bezier(.2,.8,.2,1) var(--reveal-delay,0ms)}
.motion-ready .reveal.is-visible{opacity:1;translate:0 0}
.cart-button{position:relative}
.cart-spark{position:absolute;left:50%;top:50%;width:6px;height:6px;border-radius:2px;background:var(--spark-color);pointer-events:none;animation:badge-spark .7s ease-out forwards;z-index:2}
.nfc-option{transition:border-color .25s,background .25s,box-shadow .25s}
.nfc-option:has(input:checked){box-shadow:0 0 0 3px #edfa7166}
.faq-list details[open]>p{animation:badge-enter .3s ease-out}
.closing-banner .container>span{display:inline-block;animation:badge-spin 25s linear infinite}
dialog[open]{animation:badge-dialog .23s ease-out}
@keyframes badge-marquee{to{transform:translateX(-50%)}}
@keyframes badge-spin{to{transform:rotate(360deg)}}
@keyframes badge-bob{0%,100%{translate:0 0;rotate:0deg}50%{translate:0 -9px;rotate:-3deg}}
@keyframes badge-enter{from{opacity:0;translate:0 19px}to{opacity:1;translate:0 0}}
@keyframes badge-underline{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes badge-dialog{from{opacity:0;translate:0 12px}to{opacity:1;translate:0 0}}
@keyframes badge-spark{0%{opacity:1;transform:rotate(var(--spark-angle)) translateY(0)}100%{opacity:0;transform:rotate(var(--spark-angle)) translateY(-52px)}}
html[data-motion=paused] *,html[data-motion=paused] *::before,html[data-motion=paused] *::after{animation-play-state:paused!important;transition:none!important}
html[data-motion=paused] .reveal,html[data-motion=paused] .hero-copy>*{opacity:1!important;translate:0 0!important}
html[data-motion=paused] .cart-spark{display:none}
html[data-motion=paused] .hero-visual>img,html[data-motion=paused] .product-visual>canvas{transform:none}
html[data-motion=paused] .button:hover,html[data-motion=paused] .product-visual:hover{translate:0 0}
@media(max-width:1100px){.motion-label{display:none}.motion-toggle{padding-inline:8px}#main-nav{gap:20px}.nav-wrap{gap:14px}}
@media(max-width:900px){.page-header-nav{order:3;flex-basis:100%;justify-content:center}.nav-wrap:has(.page-header-nav)>.motion-toggle{margin-left:auto}.site-header:has(.page-header-nav){min-height:74px}.nav-wrap:has(.page-header-nav){row-gap:12px;min-height:74px}}
@media(max-width:700px){.motion-ribbon{padding:17px 0;margin:0 0 8px}.marquee-group{gap:28px;padding-inline:14px}.marquee-top .marquee-group{min-width:780px}.motion-ribbon .marquee-group{gap:25px;padding-inline:12.5px}.nav-actions{gap:4px}.motion-toggle{height:36px;padding-inline:7px}.hero-copy h1 em::after{height:3px}.form-grid>div{grid-column:auto}.form-grid .full-width{grid-column:1/-1}}
@media(max-width:360px){.nav-wrap{gap:5px}.brand{gap:5px;font-size:1rem}.brand-domain{font-size:.75rem}.brand-pop{width:32px;height:32px;line-height:1;font-size:1.55rem}.cart-button{padding:8px;gap:5px}.nav-actions .icon-button{width:32px}.motion-toggle{padding-inline:5px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.motion-ready .reveal{opacity:1;translate:0 0}.hero-visual>img,.product-visual>canvas{transform:none}.button:hover,.product-visual:hover{translate:0 0}.cart-spark{display:none}}
@media print{.marquee,.motion-toggle{display:none!important}.motion-ready .reveal{opacity:1;translate:0 0}}
