/* Motion direction: cinematic entrance, flowing specialties, tactile interactions. */
html{scrollbar-color:#076ab3 #e9f4fc}
.hero-title-line{display:block;overflow:hidden;padding-bottom:.09em;margin-bottom:-.09em}
.hero-title-line>span{display:block}
.site-header{transition:box-shadow .3s,background .3s}
.site-header.is-scrolled{box-shadow:0 8px 24px #0000000b;background:#fffcf6f5}
.site-header:after{content:"";position:absolute;left:0;bottom:-1px;width:100%;height:3px;background:var(--blue);transform:scaleX(var(--page-progress,0));transform-origin:left;pointer-events:none}
.taste-ticker{position:relative;isolation:isolate;overflow:hidden;background:var(--blue);color:white;padding:27px 0;margin-block:0 10px}
.ticker-track{display:flex;width:max-content;animation:taste-flow 30s linear infinite;will-change:transform}
.ticker-group{display:flex;align-items:center;gap:32px;padding-right:32px;flex-shrink:0}
.ticker-group span{font-family:Bricolage,sans-serif;font-size:clamp(30px,4.2vw,62px);font-weight:800;line-height:1.1;white-space:nowrap;letter-spacing:-.035em}
.ticker-group b{color:var(--butter);font-size:30px;font-weight:400;line-height:1}
@supports(-webkit-text-stroke:1px white){.ticker-outline{color:transparent;-webkit-text-stroke:1px white}}
.motion-toggle{position:absolute;right:18px;top:50%;transform:translateY(-50%);width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:var(--navy);border:1px solid #ffffff70;border-radius:50%;color:white;z-index:2;box-shadow:0 4px 16px #00000024}
.motion-toggle svg{width:18px;height:18px}
.motion-toggle[hidden]{display:none}
.motion-toggle:hover{background:#052d4b}
.taste-ticker:hover .ticker-track,.taste-ticker:focus-within .ticker-track{animation-play-state:paused}
.ticker-offscreen .ticker-track{animation-play-state:paused}
@keyframes taste-flow{to{transform:translate3d(-50%,0,0)}}
.button{position:relative;isolation:isolate;overflow:hidden;border-radius:999px;transition:background .25s,transform .35s cubic-bezier(.16,1,.3,1)}
.button>svg{transition:transform .35s cubic-bezier(.16,1,.3,1)}
.button:hover>svg{transform:translateX(4px) rotate(-10deg)}
.button:active{transform:translateY(0) scale(.985)}
.button:after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 20%,#ffffff24 45%,transparent 70%);transform:translateX(-120%);transition:transform .7s cubic-bezier(.16,1,.3,1);pointer-events:none}
.button:hover:after{transform:translateX(120%)}
.product-image img{transition:transform 1.1s cubic-bezier(.16,1,.3,1)}
@media(hover:hover) and (pointer:fine){.product-image:hover img{transform:scale(1.055)}.wholesale-photo img{transition:transform .8s cubic-bezier(.16,1,.3,1)}.wholesale-photo:hover img{transform:scale(1.035)}}
.flavor-tab{position:relative;border-bottom:0}
.flavor-tab:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:3px;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform .45s cubic-bezier(.16,1,.3,1)}
.flavor-tab.active:after{transform:scaleX(1)}
.text-link svg{transition:transform .3s cubic-bezier(.16,1,.3,1)}
.text-link:hover svg{transform:translate(3px,-2px)}
.map-open{transition:transform .3s cubic-bezier(.16,1,.3,1),background .2s,box-shadow .3s}
.map-open svg{transition:transform .3s cubic-bezier(.16,1,.3,1)}
.footer-top>a:last-child{transition:transform .35s cubic-bezier(.16,1,.3,1),background .2s,border-color .2s}
.footer-top>a:last-child svg{transition:transform .35s cubic-bezier(.16,1,.3,1)}
@media(hover:hover) and (pointer:fine){
  .map-open:hover{transform:translateY(-2px);background:#fff;box-shadow:0 9px 22px #073c6426}
  .map-open:hover svg{transform:translateX(4px)}
  .footer-top>a:last-child:hover{transform:translateY(-3px) rotate(-7deg);background:var(--blue);border-color:var(--blue)}
  .footer-top>a:last-child:hover svg{transform:scale(1.12)}
  .payment-track:hover .payment-marquee,.payment-track:focus-within .payment-marquee{animation-play-state:paused}
}
.floating-contact{right:25px;bottom:25px;gap:13px;padding:7px 14px 7px 7px;min-height:62px;border-radius:999px;color:white;background:#073c64f5;box-shadow:0 10px 32px #00000024;line-height:1.2;transform:none;transition:background .25s,transform .4s cubic-bezier(.16,1,.3,1)}
.contact-orb{display:flex;align-items:center;justify-content:center;width:47px;height:47px;border-radius:50%;background:var(--butter);color:var(--navy);flex-shrink:0;transition:transform .5s cubic-bezier(.16,1,.3,1),background .3s}
.floating-contact .contact-orb svg{width:25px;height:25px}
.contact-label{display:flex;flex-direction:column;gap:4px}
.contact-label small{font-size:11px;font-weight:400;color:#c5e1f5}
.contact-label strong{font-size:13px;font-weight:600;letter-spacing:-.01em}
.contact-arrow{display:flex;align-items:center;justify-content:center;width:26px;height:32px;overflow:hidden;margin-left:2px}
.floating-contact .contact-arrow svg{width:19px;height:19px;transform:rotate(-35deg);transition:transform .4s cubic-bezier(.16,1,.3,1)}
.floating-contact:hover{background:var(--navy);transform:translateY(-4px)}
.floating-contact:hover .contact-orb{transform:rotate(-10deg);background:white}
.floating-contact:hover .contact-arrow svg{transform:rotate(-35deg) translateX(3px)}
.floating-contact:active{transform:scale(.97)}
@media(max-width:760px){.taste-ticker{padding:23px 0}.ticker-group{gap:22px;padding-right:22px}.ticker-group span{font-size:36px}.ticker-group b{font-size:23px}.motion-toggle{right:12px}.floating-contact{right:14px;bottom:14px;gap:9px;min-height:56px;padding:5px 10px 5px 5px}.contact-orb{width:44px;height:44px}.contact-label strong{font-size:12px}.contact-label small{font-size:11px}.contact-arrow{width:21px;margin-left:0}.site-footer{padding-bottom:calc(28px + env(safe-area-inset-bottom))}}
@media(max-width:370px){.ticker-group span{font-size:31px}.contact-label small{display:none}.floating-contact{min-height:54px}}
[data-motion="paused"] *,[data-motion="paused"] *:before,[data-motion="paused"] *:after{animation-play-state:paused!important;transition:none!important}
@media(prefers-reduced-motion:reduce){.ticker-track{animation:none;transform:none;will-change:auto}.taste-ticker{padding-right:58px}.ticker-group{gap:12px;flex-wrap:wrap;width:calc(100vw - 58px);padding:0 18px}.ticker-group span{font-size:20px}.ticker-group b{font-size:17px}.ticker-group:nth-child(2){display:none}.floating-contact:hover,.wholesale-photo:hover,.product-image:hover img,.button:hover>svg,.text-link:hover svg,.map-open:hover,.footer-top>a:last-child:hover{transform:none}.payment-marquee{animation:none;transform:none;will-change:auto}}
