/* Choreographed hero: preserve the original composition and separate motion layers. */
.hero{perspective:1400px}
.hero-copy{transform:translate3d(0,var(--copy-drift,0px),0)}
.hero h1{perspective:1000px}
.title-line{transform-origin:0 100%;backface-visibility:hidden}
.hero-art{transform:translate3d(0,var(--art-drift,0px),0);transform-origin:65% 50%}
.hero-food{transform:translate3d(var(--pointer-x,0px),calc(var(--pointer-y,0px) + var(--food-drift,0px)),0) scale(var(--food-scale,1.065));transition:transform .55s cubic-bezier(.22,1,.36,1)}
.hero-sticker{transform:translate3d(0,var(--badge-drift,0px),0) rotate(var(--badge-rotation,9deg));transition:transform .55s cubic-bezier(.22,1,.36,1)}
.hero-actions .button{position:relative;overflow:hidden}
.hero-actions .button:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 30%,#ffffff45 50%,transparent 70%);transform:translateX(-130%);transition:transform .65s cubic-bezier(.22,1,.36,1)}
.hero-actions .button:hover:after,.hero-actions .button:focus-visible:after{transform:translateX(130%)}
.hero-actions .plain-link{transition:color .3s,border-color .3s}
.hero-actions .plain-link:hover{color:var(--amber);border-color:var(--amber)}
.hero-actions .plain-link span{display:inline-block;transition:transform .35s}
.hero-actions .plain-link:hover span{transform:translateX(5px)}
.hero-bottom .round-button{transition:transform .4s cubic-bezier(.22,1,.36,1),background .3s,color .3s}
.hero-bottom .round-button:hover{transform:rotate(45deg)}
@media(max-width:580px){.hero-copy,.hero-art{transform:none}.hero-food{transform:translateY(var(--food-drift,0px)) scale(1.065)}}
@media(prefers-reduced-motion:reduce){.hero-copy,.hero-art,.hero-food{transform:none!important}.hero-sticker{transform:rotate(9deg)!important}.hero *,.hero *:after{transition:none!important;animation:none!important}}
