/* Short, restrained motion. Native drawer geometry and behavior remain unchanged. */
body.bes-menu-motion {
  --bes-menu-ease: cubic-bezier(.22,.8,.22,1);
  --bes-menu-border: #eee8eb;
  --bes-menu-muted: #f8f4f6;
}
body.bes-menu-motion-ready .menu-toggle > .bes-menu-motion-icon {
  display:block;
  width:26px;
  height:26px;
  flex:0 0 26px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
}
body.bes-menu-motion-ready .bes-menu-motion-line {
  transform-box:view-box;
  transition:transform 220ms var(--bes-menu-ease),opacity 120ms ease;
}
body.bes-menu-motion-ready .bes-menu-motion-line--top { transform-origin:12px 6px; }
body.bes-menu-motion-ready .bes-menu-motion-line--middle { transform-origin:12px 12px; }
body.bes-menu-motion-ready .bes-menu-motion-line--bottom { transform-origin:12px 18px; }
body.bes-menu-motion-ready .menu-toggle[aria-expanded="true"] .bes-menu-motion-line--top { transform:translateY(6px) rotate(45deg); }
body.bes-menu-motion-ready .menu-toggle[aria-expanded="true"] .bes-menu-motion-line--middle { transform:scaleX(.25); opacity:0; }
body.bes-menu-motion-ready .menu-toggle[aria-expanded="true"] .bes-menu-motion-line--bottom { transform:translateY(-6px) rotate(-45deg); }
body.bes-menu-motion-ready #site-navigation :is(a,[role="button"]):focus-visible,
body.bes-menu-motion-ready :is(.menu-toggle,button.mobile-menu.close-drawer):focus-visible {
  outline:2px solid var(--bes-wine,#74243e) !important;
  outline-offset:-3px !important;
}
body.bes-menu-motion-ready #site-navigation .caret > svg { transition:transform 220ms var(--bes-menu-ease); }

@media(max-width:992px) {
  body.bes-menu-motion.bes-menu-motion-ready.bes-visual-refresh.bes-minimal-commerce .col-full-nav {
    opacity:.96 !important;
    border-radius:0 22px 22px 0 !important;
    box-shadow:12px 0 48px rgba(38,19,28,.14) !important;
    transition:transform 260ms var(--bes-menu-ease),opacity 180ms ease,visibility 0s 260ms !important;
  }
  body.bes-menu-motion.bes-menu-motion-ready.bes-visual-refresh.bes-minimal-commerce.mobile-toggled .col-full-nav {
    opacity:1 !important;
    transition:transform 260ms var(--bes-menu-ease),opacity 180ms ease,visibility 0s !important;
  }
  body.bes-menu-motion.bes-menu-motion-ready.bes-visual-refresh.bes-minimal-commerce .mobile-overlay {
    background:rgba(33,23,28,.25) !important;
    transition:opacity 220ms ease,visibility 0s 260ms !important;
  }
  body.bes-menu-motion.bes-menu-motion-ready.bes-visual-refresh.bes-minimal-commerce.mobile-toggled .mobile-overlay {
    -webkit-backdrop-filter:blur(3px);
    backdrop-filter:blur(3px);
    transition:opacity 220ms ease,visibility 0s !important;
  }
  body.bes-menu-motion.bes-menu-motion-ready.bes-visual-refresh.bes-minimal-commerce button.mobile-menu.close-drawer {
    transition:opacity 160ms ease,visibility 0s 260ms !important;
    color:var(--bes-wine,#74243e) !important;
  }
  body.bes-menu-motion.bes-menu-motion-ready.bes-visual-refresh.bes-minimal-commerce.mobile-toggled button.mobile-menu.close-drawer {
    transition:opacity 180ms 70ms ease,visibility 0s !important;
  }
  body.bes-menu-motion.bes-menu-motion-ready.bes-visual-refresh.bes-minimal-commerce #site-navigation .bes-refresh-menu-brand {
    border-color:var(--bes-menu-border) !important;
  }
  body.bes-menu-motion.bes-menu-motion-ready.bes-visual-refresh.bes-minimal-commerce #site-navigation #menu-mobile {
    padding:10px 12px calc(24px + env(safe-area-inset-bottom,0px)) !important;
  }
  body.bes-menu-motion.bes-menu-motion-ready.bes-visual-refresh.bes-minimal-commerce #site-navigation #menu-mobile > li {
    border:0 !important;
    border-bottom:1px solid var(--bes-menu-border) !important;
  }
  body.bes-menu-motion.bes-menu-motion-ready.bes-visual-refresh.bes-minimal-commerce #site-navigation #menu-mobile > li > a {
    min-height:58px !important;
    padding:16px 48px 16px 14px !important;
    border-radius:10px !important;
    font-weight:500 !important;
    letter-spacing:-.01em;
    transition:background-color 160ms ease,color 160ms ease !important;
  }
  body.bes-menu-motion.bes-menu-motion-ready.bes-visual-refresh.bes-minimal-commerce #site-navigation #menu-mobile > li:is(.bes-menu-expanded,.current-menu-item,.current-menu-ancestor) > a,
  body.bes-menu-motion.bes-menu-motion-ready.bes-visual-refresh.bes-minimal-commerce #site-navigation #menu-mobile > li > a:focus-visible {
    background:var(--bes-menu-muted) !important;
    color:var(--bes-wine,#74243e) !important;
  }
  body.bes-menu-motion.bes-menu-motion-ready.bes-visual-refresh.bes-minimal-commerce #site-navigation #menu-mobile > li > .caret {
    right:8px !important;
    top:7px !important;
    width:44px !important;
    height:44px !important;
    color:var(--bes-wine,#74243e) !important;
  }
  body.bes-menu-motion.bes-menu-motion-ready.bes-visual-refresh.bes-minimal-commerce #site-navigation .sub-menu-wrapper {
    padding:2px 0 12px !important;
  }
  body.bes-menu-motion.bes-menu-motion-ready.bes-visual-refresh.bes-minimal-commerce #site-navigation .sub-menu a {
    padding:12px 16px !important;
    min-height:44px !important;
    border-radius:9px !important;
    margin-top:3px !important;
    background:var(--bes-menu-muted) !important;
    font-size:14px !important;
  }
  body.bes-menu-motion.bes-menu-motion-ready.bes-visual-refresh.bes-minimal-commerce #site-navigation .bes-menu-expanded > .sub-menu-wrapper > .container {
    animation:bes-menu-panel-in 190ms var(--bes-menu-ease) both;
  }
  body.bes-menu-motion.bes-menu-motion-ready.bes-visual-refresh.bes-minimal-commerce #site-navigation .bes-mobile-care-item {
    padding:18px 2px 0 !important;
    border:0 !important;
  }
  body.bes-menu-motion.bes-menu-motion-ready.bes-visual-refresh.bes-minimal-commerce #site-navigation .bes-mobile-care-item button {
    border-radius:12px !important;
    min-height:54px !important;
    line-height:1.4 !important;
  }
  body.bes-menu-motion.bes-menu-motion-ready.bes-visual-refresh.bes-minimal-commerce.mobile-toggled #site-navigation #menu-mobile > li {
    animation:bes-menu-item-in 240ms var(--bes-menu-ease) both;
  }
  body.bes-menu-motion-ready.mobile-toggled #menu-mobile > li:nth-child(1) { animation-delay:35ms !important; }
  body.bes-menu-motion-ready.mobile-toggled #menu-mobile > li:nth-child(2) { animation-delay:55ms !important; }
  body.bes-menu-motion-ready.mobile-toggled #menu-mobile > li:nth-child(3) { animation-delay:75ms !important; }
  body.bes-menu-motion-ready.mobile-toggled #menu-mobile > li:nth-child(4) { animation-delay:95ms !important; }
  body.bes-menu-motion-ready.mobile-toggled #menu-mobile > li:nth-child(n+5) { animation-delay:115ms !important; }
}
@media(min-width:993px) {
  body.bes-menu-motion.bes-menu-motion-ready.bes-visual-refresh.bes-minimal-commerce #site-navigation #menu-mobile > li > .sub-menu-wrapper {
    border:1px solid var(--bes-menu-border) !important;
    border-radius:14px !important;
    box-shadow:0 16px 40px rgba(38,19,28,.1) !important;
  }
  body.bes-menu-motion.bes-menu-motion-ready.bes-visual-refresh.bes-minimal-commerce #site-navigation #menu-mobile > li.bes-menu-expanded > .sub-menu-wrapper > .container {
    animation:bes-menu-panel-in 190ms var(--bes-menu-ease) both;
  }
}
@keyframes bes-menu-item-in {
  from { opacity:0; transform:translateX(-8px); }
  to { opacity:1; transform:translateX(0); }
}
@keyframes bes-menu-panel-in {
  from { opacity:0; transform:translateY(-4px); }
  to { opacity:1; transform:translateY(0); }
}
@media(prefers-reduced-motion:reduce) {
  body.bes-menu-motion.bes-menu-motion-ready.bes-visual-refresh.bes-minimal-commerce :is(.col-full-nav,.mobile-overlay,button.mobile-menu.close-drawer),
  body.bes-menu-motion-ready :is(.bes-menu-motion-line,#site-navigation .caret > svg),
  body.bes-menu-motion.bes-menu-motion-ready.bes-visual-refresh.bes-minimal-commerce #site-navigation #menu-mobile :is(li,a,.sub-menu-wrapper,.sub-menu-wrapper > .container) {
    animation:none !important;
    transition:none !important;
  }
}
