/** Shopify CDN: Minification failed

Line 172:0 Unexpected "}"
Line 174:0 Unexpected "}"

**/
/* VEYRISSA MOTION V2 — polished trigger feedback + non-abrupt surfaces
   Scope: drawers, search, cart, filter, quick add, details, PDP controls,
   content refreshes, and progressive page transitions. */
:root{
  --v-motion-tap:140ms;
  --v-motion-control:170ms;
  --v-motion-overlay:190ms;
  --v-motion-panel:260ms;
  --v-motion-content:220ms;
  --v-motion-media:260ms;
  --v-ease-out:cubic-bezier(.22,.72,.18,1);
  --v-ease-soft:cubic-bezier(.25,.65,.22,1);
}

/* Buttons should acknowledge the finger/cursor before the next state arrives. */
.button,
button,
.header__action,
.header__menu-button,
.drawer__close,
.product-card__quick-add,
.veyrissa-variant-option,
.veyrissa-segment-option,
.product__quantity-stepper button,
.product__media-controls button,
.cart-summary__checkout,
[data-sticky-atc-trigger]{
  transition:
    background-color var(--v-motion-control) ease,
    color var(--v-motion-control) ease,
    border-color var(--v-motion-control) ease,
    opacity var(--v-motion-control) ease,
    box-shadow var(--v-motion-control) ease,
    transform var(--v-motion-tap) var(--v-ease-out) !important;
  will-change:transform;
}

.button:active,
button:active,
.header__action:active,
.header__menu-button:active,
.product-card__quick-add:active,
.veyrissa-variant-option:active,
.veyrissa-segment-option:active,
.product__quantity-stepper button:active,
.product__media-controls button:active{
  transform:scale(.975);
}

.header__action:hover,
.header__menu-button:hover,
.drawer__close:hover{
  opacity:.72;
}

/* Drawer system: slower than v1 so surfaces arrive rather than pop in. */
.drawer__backdrop,
.quick-add-dialog::backdrop{
  transition:opacity var(--v-motion-overlay) ease-out !important;
}

.drawer__panel{
  transition:transform var(--v-motion-panel) var(--v-ease-out) !important;
  will-change:transform;
}

.search-drawer__panel{
  transition:transform 240ms var(--v-ease-out), opacity var(--v-motion-overlay) ease-out !important;
  opacity:.985;
  will-change:transform,opacity;
}
.search-drawer.is-open .search-drawer__panel{opacity:1;}

.collection-filter-drawer.is-open{
  animation:vOverlayIn var(--v-motion-overlay) ease-out both;
}
.collection-filter-drawer__panel{
  transition:transform var(--v-motion-panel) var(--v-ease-out) !important;
  will-change:transform;
}

/* Quick add native dialog gets a composed entrance instead of instant appearance. */
.quick-add-dialog[open]{
  animation:vDialogIn 220ms var(--v-ease-out) both;
  transform-origin:center center;
}
.quick-add-dialog[open]::backdrop{
  animation:vBackdropIn var(--v-motion-overlay) ease-out both;
}

/* Popovers / expandable content. */
.sort-popover[open] .sort-popover__menu,
[data-localization-disclosure][open] > :not(summary){
  animation:vPopoverIn 180ms var(--v-ease-out) both;
  transform-origin:top right;
}
.accordion[open] .accordion__content,
.filter-group[open] .filter-group__values,
details[open] > .faq__answer{
  animation:vDetailsIn 190ms var(--v-ease-soft) both;
}

/* PDP controls: selection and quantity changes should feel deliberate. */
.veyrissa-variant-option.is-motion-selected,
.veyrissa-segment-option.is-motion-selected{
  animation:vSelectPulse 210ms var(--v-ease-out) both;
}
.product__quantity-stepper input.is-motion-bump{
  animation:vNumberBump 180ms var(--v-ease-out) both;
}
.product-sticky-atc{
  transition:
    opacity 190ms ease-out,
    transform 230ms var(--v-ease-out),
    visibility 230ms linear !important;
}

/* Async cart refresh: the drawer remains in place while its contents settle in. */
#CartDrawer .drawer__panel.is-motion-refreshing > *{
  animation:vContentSettle 190ms var(--v-ease-out) both;
}

/* Product / recommendation cards: subtle, not floaty. */
.product-card__media img,
.category-list__image,
.pdp-reco-card__image{
  transition:
    transform var(--v-motion-media) var(--v-ease-soft),
    opacity var(--v-motion-content) ease-out !important;
}

@keyframes vOverlayIn{
  from{opacity:0}
  to{opacity:1}
}
@keyframes vBackdropIn{
  from{opacity:0}
  to{opacity:1}
}
@keyframes vDialogIn{
  from{opacity:0;transform:translateY(10px) scale(.985)}
  to{opacity:1;transform:translateY(0) scale(1)}
}
@keyframes vPopoverIn{
  from{opacity:0;transform:translateY(-5px) scale(.99)}
  to{opacity:1;transform:translateY(0) scale(1)}
}
@keyframes vDetailsIn{
  from{opacity:0;transform:translateY(-4px)}
  to{opacity:1;transform:translateY(0)}
}
@keyframes vSelectPulse{
  0%{transform:scale(.975)}
  62%{transform:scale(1.015)}
  100%{transform:scale(1)}
}
@keyframes vNumberBump{
  0%{opacity:.55;transform:translateY(2px)}
  100%{opacity:1;transform:translateY(0)}
}
@keyframes vContentSettle{
  from{opacity:.55;transform:translateY(5px)}
  to{opacity:1;transform:translateY(0)}
}
  to{opacity:1;transform:translateY(0)}
}
  to{opacity:1}
}

@media(prefers-reduced-motion:reduce){
  @view-transition{navigation:none;}
  .quick-add-dialog[open],
  .quick-add-dialog[open]::backdrop,
  .collection-filter-drawer.is-open,
  .sort-popover[open] .sort-popover__menu,
  [data-localization-disclosure][open] > :not(summary),
  .accordion[open] .accordion__content,
  .filter-group[open] .filter-group__values,
  .veyrissa-variant-option.is-motion-selected,
  .veyrissa-segment-option.is-motion-selected,
  .product__quantity-stepper input.is-motion-bump,
  #CartDrawer .drawer__panel.is-motion-refreshing > *{
    animation:none !important;
  }
}

/* VEYRISSA_DRAWER_SHAKE_FIX_V1
   Preserve page width while overlay drawers lock scrolling, and keep drawer triggers stationary. */
body.drawer-open{
  padding-right:var(--veyrissa-scrollbar-compensation,0px)!important;
}
[data-drawer-open]:active,
[data-drawer-close]:active,
[data-search-open]:active,
[data-search-close]:active,
[data-drawer-open].is-motion-activated,
[data-drawer-close].is-motion-activated,
[data-search-open].is-motion-activated,
[data-search-close].is-motion-activated{
  transform:none!important;
}

/* VEYRISSA_DRAWER_SHAKE_FIX_V2
   Body width is frozen in JS at its pre-drawer client width.
   Do not add scrollbar compensation padding on top of that. */
body.drawer-open{
  padding-right:0!important;
}

/* VEYRISSA_CART_SHAKE_FIX_V3
   Cart drawer opens without body locking/reflow. */
#CartDrawer{
  overscroll-behavior:contain;
}
#CartDrawer .drawer__panel{
  overscroll-behavior:contain;
}
#CartDrawer .drawer__backdrop{
  touch-action:none;
}

/* VEYRISSA_NAV_CART_STABILITY_V4
   Final stability layer for header drawers in Shopify mobile preview. */
#MobileDrawer,
#CartDrawer{
  contain:paint;
}
#MobileDrawer .drawer__panel,
#CartDrawer .drawer__panel{
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
  transform:translate3d(-100%,0,0);
  transition:transform 220ms cubic-bezier(.22,.72,.18,1)!important;
  will-change:transform;
}
#CartDrawer .drawer__panel{
  transform:translate3d(100%,0,0);
}
#MobileDrawer.is-open .drawer__panel,
#CartDrawer.is-open .drawer__panel{
  transform:translate3d(0,0,0)!important;
}
#MobileDrawer .drawer__backdrop,
#CartDrawer .drawer__backdrop{
  transition:opacity 180ms ease-out!important;
}
[data-drawer-open="#MobileDrawer"],
[data-drawer-open="#CartDrawer"],
[data-drawer-open="#MobileDrawer"]:active,
[data-drawer-open="#CartDrawer"]:active{
  transform:none!important;
  translate:none!important;
}

/* VEYRISSA_MOBILE_MENU_STABILITY_V5
   Dedicated mobile menu behavior; do not let generic motion/body-lock rules move the trigger. */
[data-drawer-open="#MobileDrawer"],
[data-drawer-open="#MobileDrawer"]:hover,
[data-drawer-open="#MobileDrawer"]:active,
[data-drawer-open="#MobileDrawer"]:focus,
[data-drawer-open="#MobileDrawer"].is-motion-activated{
  position:relative!important;
  z-index:5!important;
  transform:none!important;
  translate:none!important;
  scale:1!important;
  will-change:auto!important;
}
[data-drawer-open="#MobileDrawer"] svg{
  transform:none!important;
  translate:none!important;
  scale:1!important;
}
#MobileDrawer{
  contain:none!important;
  position:fixed!important;
  inset:0!important;
  z-index:70!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
#MobileDrawer.is-open{
  visibility:visible!important;
  pointer-events:auto!important;
}
#MobileDrawer .drawer__backdrop{
  position:absolute!important;
  inset:0!important;
  opacity:0!important;
  transition:opacity 180ms ease-out!important;
}
#MobileDrawer.is-open .drawer__backdrop{
  opacity:1!important;
}
#MobileDrawer .drawer__panel{
  position:absolute!important;
  top:0!important;
  bottom:0!important;
  left:0!important;
  right:auto!important;
  transform:translate3d(-100%,0,0)!important;
  transition:transform 220ms cubic-bezier(.22,.72,.18,1)!important;
  backface-visibility:hidden!important;
  -webkit-backface-visibility:hidden!important;
  will-change:transform!important;
}
#MobileDrawer.is-open .drawer__panel{
  transform:translate3d(0,0,0)!important;
}

/* VEYRISSA_RUNTIME_CLEANUP_V1
   Single motion system. No document-level transitions, no navigation transforms,
   and no runtime PDP purchase-layout forcing. */
html{scroll-behavior:auto!important;}
@view-transition{navigation:none;}
.site-header .header__brand{transform:none!important;translate:none!important;scale:1!important;}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{
    scroll-behavior:auto!important;
    transition-duration:.01ms!important;
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
  }
}
