/** Shopify CDN: Minification failed

Line 852:53 The "+" operator only works if there is whitespace on both sides

**/



/* ==========================================================
   BUNDLE LIST (Cart & Drawer, right column)
   ----------------------------------------------------------
   - Compact "chip" rows for bundle contents
   - Grid layout so titles wrap but prices stay aligned right
   - Crossed-out compare-at price shown when available
   ========================================================== */

/* Container + label */
.bundle-contents--compact{
  display:flex;
  align-items:center;
  gap:.6rem;
  flex-wrap:wrap;
  margin-top:.35rem;
}
.bundle-contents__label{
  font-size:12px;
  opacity:.7;
}

/* Stacked list in the right column */
.bundle-contents__list{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:.6rem;
  width:100%;
}

/* Chip row: grid layout
   Columns: [28px image] [wrapping title] [qty + prices pinned right] */
.bundle-contents__item.bundle-chip{
  display:grid;
  grid-template-columns:28px 1fr auto;
  align-items:center;
  column-gap:.6rem;
  row-gap:.25rem;
  width:100%;
  box-sizing:border-box;
  padding:.45rem .70rem;
  border:1px solid rgba(0,0,0,.10);
  background:rgba(0,0,0,.03);
  border-radius:16px;
  font-size:13px;
  line-height:1.2;
}
.custom-sets-product .product-details__variants-wrapper{
  display:none;
}
/* Thumbnail */
.bundle-chip__img{
  grid-column:1;
  width:28px; height:28px;
  border-radius:6px;
  overflow:hidden;
  background:#f2f2f2;
}
.bundle-chip__img img{
  width:100%; height:100%;
  object-fit:cover; display:block; border-radius:6px;
}

/* Title (wraps) */
.bundle-chip__title{
  grid-column:2;
  min-width:0;
  overflow-wrap:anywhere;
}

/* Qty + crossed-out compare + final */
.bundle-chip__price-wrap{
  grid-column:3;
  justify-self:end;
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  white-space:nowrap;
}
.bundle-chip__qty{ opacity:.7; }
/* "$3 ea × 4" — the arithmetic behind the line total. Same muted weight as the bare
   qty chip it replaces, so the line total stays the thing the eye lands on. */
.bundle-chip__calc{ opacity:.7; font-variant-numeric:tabular-nums; }
.bundle-chip__compare{ text-decoration:line-through; opacity:.55; }

/* Very narrow: drop price under title (still right-aligned) */
@media (max-width:560px){
  .bundle-contents__item.bundle-chip{ grid-template-columns:28px 1fr; }
  .bundle-chip__price-wrap{ grid-column:2 / -1; }
}

/* Drawer: slightly smaller thumbs to fit the column better (optional) */
.drawer .bundle-contents__item.bundle-chip,
.cart-drawer .bundle-contents__item.bundle-chip,
[data-cart-drawer] .bundle-contents__item.bundle-chip{
  padding:.45rem .65rem;
}
.drawer .bundle-chip__img,
.cart-drawer .bundle-chip__img,
[data-cart-drawer] .bundle-chip__img{
  width:26px; height:26px;
}



/* header new css */
.navigation:not(.navigation--drawer) .submenu__list .submenu__list:not(.trigger-open-dropdown-animation){
  padding-right:15px;
}
.navigation:not(.navigation--drawer) .submenu--secondary .submenu__item+.submenu__item{
  margin-top:unset !important;
}
.template-index .shopify-section-group-header-group.header-section header-wrapper[data-is-sticky="false"] .icon--dropdown path{
  stroke:#00BB7E !important;

}
.shopify-section-group-header-group.header-section header-wrapper[data-is-sticky="false"] .submenu__item:hover .icon--dropdown path{
  stroke:#fff !important;
}


.submenu__inner.submenu__inner--secondary{
  max-width:unset !important;
  padding-left:0 !important;
  padding-right:0 !important;
  /* padding-top:32px !important; */
  padding-top:24px !important;
  padding-bottom:0 !important; 
  flex-wrap:wrap;
   /* position:relative;  */
} 
.inside-max-width{
  /* max-width:1300px;   */
  /* max-width:85%; */
  max-width:80%;
  margin:0 auto;
  display:flex;
  /* padding-bottom:32px; */
  padding-bottom:24px !important;
  align-items:center;
}
ul.custom-links-menu{
  display:flex !important;
  gap:10px !important;
}
ul.custom-links-menu.submenu__list{
  /* width:40% !important; */
    width:50% !important;
}
ul.custom-image-menu{
   /* width:60%; */
   width:50%;

}
ul.custom-image-menu .default-img-content{
   width:50%;
  aspect-ratio: 4 / 5; 
   /* aspect-ratio: 1 / 1; */
   
}
 .MegaMenu__Item.false .default-img-content{
    aspect-ratio: 5 / 2;
     
} 
.MegaMenu__Push.false  .default-img-content{
    aspect-ratio: 5 / 2;
    
}   
ul.custom-image-menu .default-img-content img{
  max-width:100%;
   width:100%;
   height:100%;
   border-radius:16px;
   object-fit:cover;
   object-position: 50% 50%;

}

.custom-sets-product .product-details__variants-wrapper{
  display:none;
}
ul.custom-image-menu .default-img-content a{
font-weight: 400;
font-style: Regular;
/* font-size: 16px; */
font-size: 14px;
line-height: 100%;
letter-spacing: 0%;
color:#000000;
text-decoration:none;
}
ul.custom-image-menu .default-img-content a:hover{
 text-decoration:underline;
}
 
ul.custom-image-menu .default-img-content .image-text{
  font-style: normal;
  font-weight: 400;
  font-size: 12px;
  line-height: 16px;
  display: flex;
  align-items: center;
  color: rgba(0, 0, 0, 0.6);
}
.custom-links-menu .menu-badge{
padding: 3px 14px;
width:fit-content;
border-radius: 35.69px;
font-weight: 700;
/* font-size: 12px;
line-height: 16px; */
font-size:10px;
line-height:14px;
text-transform: capitalize;
text-decoration:none;
}

.submenu__item .submenu__link--item{
  display:flex !important;
  justify-content:flex-start !important;
  gap:12px !important;
  align-items:center !important;
}

.submenu__item .submenu__link--item img{
   /* width:72px; */
   width:48px;
   border-radius:10.29px;
}
.MegaMenu__PushImageWrapper{
  display:flex;
  align-items:center;
  gap:25px;
}
.MegaMenu__PushImageWrapper .over-push-img-content{
  display:flex;
  align-items:center;
  gap:25px;
}
.custom-links-menu .shop-all-btn-custom {
   /* width:80%; */
   width:70%;
   max-width:400px;
}
.js.do-anim .navigation:not(.navigation--drawer).dropdown-breakpoint .submenu--mega.trigger-open-dropdown-animation {
    animation-name: unset !important; 
    animation-fill-mode: unset !important; 
     animation-delay: unset !important;
}
.navigation:not(.navigation--drawer).dropdown-breakpoint .submenu--secondary.trigger-open-dropdown-animation{
  border-radius:unset !important;
}
.shop-all-btn-custom a{
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 15px 16px;
    /* padding: 17px 16px; */
    gap: 8px;
    width:100%;
    background: linear-gradient(0deg, #4382DD, #4382DD), linear-gradient(0deg, #FFFFFF, #FFFFFF), #FFFFFF;
    border-radius: 112px;
    font-weight: 700;
    font-style: Bold;
    font-size: 14px;
    line-height: 100%;
    letter-spacing: 0px;
    text-align: center;
    vertical-align: middle;
    text-transform: uppercase;
    text-decoration:none;
    color:#ffffff;
}
.js .navigation:not(.navigation--drawer) .submenu--secondary.submenu--mega{
  background:#FFF4EB !important;
  top:56px;
  border-radius:unset !important;
  /* border-bottom-right-radius: var(--radius-drawer);
    border-bottom-left-radius: var(--radius-drawer); */
  /* width:100%; */
  
}
product-item product-item-quick-shopping .button-with-state-wrapper a{
  text-decoration:none;
}
cart-drawer .cross-sells-item .you-save-percent{
  display:none;
}
.submenu__item--primary-submenu {
  position: relative;
}

.submenu__item--primary-submenu::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  /* padding-bottom:40px;  */
  padding-bottom:18px;
  background:transparent;
  /* pointer-events: pointer; */
  z-index:2
}
.navigation:not(.navigation--drawer) .submenu .submenu .submenu__item-display-text{
  color:#000000 !important;
  font-weight: 500 !important;
  font-style: Medium !important;
  font-size: 14px !important;
  line-height: 100% !important;
  letter-spacing: 0px !important;
  vertical-align: middle;
  text-transform: capitalize;
  gap:12px !important;
}

.navigation:not(.navigation--drawer) .submenu .submenu .submenu__item-display-text:hover .menu-badge{
  text-decoration:NONE !important;
  
}
.overall-trust-icon-wrapper{
  display:flex;
  background:#D8A1DB;
  justify-content: center;
  gap:40px;
  /* padding:16px 0; */
  padding:13px 0;
  width:100%; 
  /* border-bottom-right-radius: var(--radius-drawer);
  border-bottom-left-radius: var(--radius-drawer); */
}
.overall-trust-icon-wrapper .trust-icons-cont {
    display: flex;
    justify-content: center;
    /* width: 22%; */
     width:20%;
}
.overall-trust-icon-wrapper .trust-icons-cont .icons-txt-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    /* gap: 12px; */
    gap:8px;
}
.overall-trust-icon-wrapper .trust-icons-cont .icons-txt-wrap .img-icn-warp {
    /* max-width: 32px; */
    max-width:24px;
    display: flex;
    gap: 8px;
    align-items: center;
}
.overall-trust-icon-wrapper .trust-icons-cont .icons-txt-wrap .img-icn-warp img{
   width:100%;
   height:auto;
}

.overall-trust-icon-wrapper .trust-icons-cont .icons-txt-wrap .txt-wrap p{
  font-weight: 400;
  /* font-size: 16px;
  line-height: 21px; */
  font-size:14px;
  line-height:100%;
  letter-spacing: 0.039px;
  color: #FFF4EB;
  margin-top:5px;
}

.badge-position-adjust-top_left{
  position: absolute;
  top:8px;
  left:8px;
  width: 100%;
  z-index: 1;
  height: 61px;
  max-width: 60px;
  /* height: 75px;
  max-width:75px; */
}
.badge-position-adjust-top_right{
  position: absolute;
  /* top:5px;
  right:5px; */
  top:8px;
  right:8px;
  width: 100%;
  z-index: 1;
  height: 61px;
  max-width: 60px;
  /* height: 75px;
  max-width:75px; */
}
.badge-position-adjust-bottom_left{
  position: absolute;
  /* bottom:5px;
  left:5px; */
   bottom:8px;
  left:8px;
  width: 100%;
  z-index: 1;
  height: 61px;
    max-width: 60px;
 
}
.badge-position-adjust-bottom_right{
  position: absolute;
  /* bottom:5px;
  right:5px; */
  bottom:8px;
  right:8px;
  width: 100%;
  z-index: 1;
  height: 61px;
    max-width: 60px;
  /* height: 75px;
  max-width:75px; */
}

.shipping_badge-position-adjust-top_left{
  position: absolute;
  top:8px;
  left:8px;
  z-index: 1;
  width: fit-content;
  
}
.shipping_badge-position-adjust-top_left .shipping_best-badge-container{
  background: #DEBEDF;
  border-radius: 51.04px;
  padding: 5px 12px 4px;
  line-height:0;
}
.shipping_badge-position-adjust-top_right{
  position: absolute;
  top:8px;
  right:8px;
  z-index: 1;
  width: fit-content;
}
.shipping_badge-position-adjust-top_right .shipping_best-badge-container{
  background:#baebf7;
  border-radius: 51.04px;
  padding: 5px 12px 4px;
  line-height:0;
}
.shipping_badge-position-adjust-bottom_left{
  position: absolute;
   bottom:8px;
  left:8px;
  z-index: 1;
  width: fit-content;
  
}
.shipping_badge-position-adjust-bottom_left .shipping_best-badge-container{
  background: #baebf7;
  border-radius: 51.04px;
  padding: 5px 12px 4px;
  line-height:0;
}
.shipping_badge-position-adjust-bottom_right{
  position: absolute;
  /* bottom:5px;
  right:5px; */
  bottom:8px;
  right:8px;
  z-index: 1;
  width: fit-content;
}
.shipping_badge-position-adjust-bottom_right .shipping_best-badge-container{
  background:#baebf7;
  border-radius: 51.04px;
  padding: 5px 12px 4px;
  line-height:0;
}

.shipping_best-badge-container .badge-text{
  font-size: 12px;
  line-height: 100%;
  letter-spacing:0;
  font-weight:400;
  text-align: center;
  color:#000000
}


.best-badge-container {
  background-image: url('/cdn/shop/files/Butter_Sticker_1__1_-removebg-preview.png?v=1764323455');
  background-size:contain;
  background-repeat: no-repeat;
  background-position: center;
  position:relative;
  width:100%;
  height:100%;
}

.best-badge-container .badge-text {
  font-size: 10px;
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%, -50%);
  font-weight: 400;
  font-size: 14px;
  line-height: 16px;
  color: #000000;
  text-align:center;
}
.collection-product-grid__top-bar .filter-sort-wrap {
    display: flex;
    gap: 12px;
    align-items:center;
}
.collection-product-grid__top-bar .filter-sort-wrap .collection-top-bar__filter-button{
  font-size: 16px;
  line-height: 19px;
  border: 1px solid #4382DD;
  background: none;
  color: #4382DD;
  padding:12px 16px;
}
.collection-product-grid__top-bar .filter-sort-wrap .collection-top-bar__result-count{
  display:none;
}
.collection-product-grid__top-bar .filter-sort-wrap .result-sort-divider{
  display:none;
}
.collection-product-grid__top-bar .filter-sort-wrap .collection-top-bar-sort__trigger{
  border: 1px solid #4382DD;
  background: none;
  color: #4382DD;
  min-width:230px;
  padding: 13px 16px;
}
.filter-sort-wrap .collection-top-bar-sort__trigger  .sort-trigger__label{
  color: #4382DD;
}
.collection-product-grid__products.standard-grid{
  row-gap:40px;
  column-gap:32px !important;
}
.collection-title-description p{
font-style: normal;
font-weight: 400;
font-size: 16px;
line-height: 21px;
color: rgba(0, 0, 0, 0.7);
margin-top:6px;
}
product-item .product-item__image-wrapper{
  margin-bottom:0;
}
product-item .product-item__swatches{
  justify-content:flex-start;
  margin:16px 0 0 0;
  padding:0;
}
product-item .product-item__title{
  margin:unset;
  text-align:left;
  padding-top:12px;
  letter-spacing:0;
  font-weight: 400;
  font-size: 18px;
  line-height: 24px;
  letter-spacing:0;
}
product-item .custom-subtitle-content p{
  font-weight: 400;
  font-size: 14px;
  line-height: 19px;
  color: rgba(0, 0, 0, 0.6);
  text-align:left;
  margin-top:4px;
  /* margin-bottom:12px; */
}
product-item .product-item__price span.you-save-percent{
    box-sizing: border-box;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 3px 12px;
    background: #00BB7E;
    border: 1px solid #00BB7E;
    border-radius: 51.04px;
    font-weight: 400;
    font-size: 14px;
    line-height: 19px;
    display: flex;
    align-items: center;
    text-align: center;
    color: #FFFFFF;
}
product-item .price__main+.price__strikethrough{
    font-size: 18px;
    color: #00000099;
    font-weight: 400;
    font-style: Regular;
    font-size: 18px;
    line-height: 100%;
    letter-spacing: 0%;
    text-align: center;
    margin:0;
    text-decoration: line-through;
}
product-item .price__main.price__main--sale{
    font-weight: 400;
    font-style: Regular;
    font-size: 18px;
    color:#000000;
    line-height: 100%;
    letter-spacing: 0%;
    text-align: center;
}
product-item .product-item__price .price{
    display:flex;
    align-items:center;
    width:100%;
    gap:12px;
    margin-top:12px;
}
product-item .card-wrapper .image-container{
  position:relative;
  line-height:0;
}
product-item .card-wrapper .image-container img{
  width:100%;
  height:auto;
  border-radius:16px;
}
product-item .card-wrapper {
  position:relative;
}
product-item .card-wrapper .content-part{
  position:absolute;
  bottom:0;
  display:flex;
  flex-direction:column;
  gap:8px;
  padding:0 16px 22px 16px;
}
product-item .card-wrapper .content-part p{
  font-weight: 400;
  font-size: 16px;
  line-height:22px;
  letter-spacing: 0.03px;
  color:#FFF4EB;
  text-decoration:none;
  text-align:left;
}
product-item .card-wrapper .content-part .floating_button_label{
  background: linear-gradient(0deg, #4382DD, #4382DD), linear-gradient(0deg, #FFFFFF, #FFFFFF), #FFFFFF;
  border-radius: 72px;
  font-weight: 500;
  font-style: Medium;
  font-size: 12px;
  line-height: 100%;
  letter-spacing: 0px;
  text-align: center;
  vertical-align: middle;
  text-transform: uppercase;
  color: #FFFFFF;
  width: fit-content;
  padding:13px 16px;
  text-decoration:none;
} 
product-item .card-wrapper .image-container:after{
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  height: 100%;
  content: " ";
  width: 100%;
  background: #00000026;
  border-radius: 16px;
}
product-item.promotion-box.mobile-promotion-box{
  display:none;
}
product-item .product-item__price span.you-save-percent .badge--discount{
  background:none;
  padding:0;
  margin:0;
}
product-item .product-item__image-wrapper{
  border-radius:16px;
}
product-item .product-item__image{
  border-radius:16px;
}
product-item .swatch .swatch__inner-disabled-strikethrough{
  width:24px;
  height:24px;
}
 .filter-group-wrapper .filter-item-swatch__hidden-input{
  border-radius:3.33px;
  border: 1px solid #99928D;
  width:20px !important;
  height:20px !important;
  z-index:2;
  pointer-events: auto !important;
  clip:unset;
  background:#fff;
  position:relative !important;
} 
.filter-group-wrapper .filter-item__swatch label{
  gap:0;
}
.filter-group-wrapper .swatch-wrapper{
  width:20px;
  height:20px;
  margin-right:6px;
  margin-left:12px;
}
.filter-group-wrapper .swatch .swatch__inner-disabled-strikethrough{
  width:20px;
  height:20px;
}
.filter-group-wrapper .swatch.swatch--shape-round{
  width:20px;
  height:20px;
}
.filter-item__swatch .swatch .swatch__inner{
  width:20px;
  height:20px;
}
.filter-item__swatch .swatch-wrapper .swatch:before{
  top: 0px;
  right: 1px;
  bottom: 1px;
  left:-28px;
  width: 20px;
  height: 20px;
  opacity:0;
  box-shadow:none;
  z-index:3;
}
.filter-item__swatch .filter-item-label .label-count{
  display:none;
}
.filter-group-wrapper input[type=checkbox]:before{
  background:#fff;
}
.filter-group-wrapper input[type=checkbox]:after{
  background:#99928D;
}
.filter-item__swatch input[type=checkbox]:checked{
  background:#fff;
  border-color:#99928D;
}
.filter-item__swatch .label-text{
  font-weight: 400;
  font-size: var(--font-size-body-100);;
  /* line-height: 20px; */
  display: flex;
  align-items: center;
  text-align: left;
  letter-spacing: 0.0424615px;
  color: #000000;
  margin-top:3px;
}
.template-product .product-inner .you-save-percent{
  display:none;
}
product-item .product-item__sale-badge{
  display:none;
}
.badge--discount{
  background:#00BB7E !important;
  color:#ffffff !important;
}
 @media (min-width:1660px){
  .overall-trust-icon-wrapper .trust-icons-cont{
    width:22%;
  }
 }
 @media (min-width:1024px){
.navigation:not(.navigation--drawer).dropdown-breakpoint .submenu__item--primary>.submenu__link .submenu__link-text{
  text-decoration: none !important;
}
/* .navigation:not(.navigation--drawer).dropdown-breakpoint .submenu__item--primary:hover>.submenu__link:before{
  animation:none;
}
.navigation:not(.navigation--drawer).dropdown-breakpoint .submenu__item--primary:hover>.submenu__link .submenu__link-text{
  transform:none;
  
} */
.navigation:not(.navigation--drawer).dropdown-breakpoint .submenu__item--primary>.submenu__link .submenu__link-text:after{
  padding-top:1px;
  
}
.navigation:not(.navigation--drawer).dropdown-breakpoint .submenu__item--primary>.submenu__link .submenu__link-text-wrapper:hover{
  /* var(--color-accent) is #ffffff in the header scheme, which painted a white
     box over the (also-white) hover text. The blue #4382DD pill comes from the
     <li>:hover rule below, so the wrapper needs no background of its own. */
  background-color: transparent;
}
/* Cart count badge: the header scheme (scheme_2) accent was changed from
   #4382DD to #FFFFFF in the theme editor, so the badge background
   (var(--color-accent)) became white and its text (var(--color-accent-foreground)
   = #fff4eb cream) was invisible on the green header. Restore the original
   readable blue badge with white text. */
.cart-button:not([data-icon-type="no-icon"]) cart-count.cart-button-count{
  background-color: #4382DD;
  color: #ffffff;
}
.cart-button[data-icon-type="no-icon"] cart-count.cart-button-count::before{
  background-color: #4382DD;
}
.cart-button[data-icon-type="no-icon"] cart-count.cart-button-count{
  color: #ffffff;
}
collection-product-grid .collection-product-grid__top-bar{
  margin-bottom:32px;
}
product-item .quick-shop-mobile-btn{
  display:none;
}
.navigation:not(.navigation--drawer) .submenu__item-display-text{
font-weight: 700 !important;
font-style: Bold;
font-size: 15px !important;
line-height: 100% !important;
letter-spacing: 0% !important;
}
.submenu__item.submenu__item--primary .submenu__link-text{
  text-transform:capitalize !important;
}

.js .navigation:not(.navigation--drawer) .submenu--secondary.submenu--mega.is-open,
.js .navigation:not(.navigation--drawer) .submenu--secondary.submenu--mega.is-opening {
    transform: translate(calc((var(--js-left, -2) + var(--js-scrollbar-width)) * -1)) !important; 
    left:0 ;
    /* transform: translate(calc((var(--js-left, 0) + var(--js-scrollbar-width)) * -1)); */
    /* border-radius:unset !important; */
    /* width: calc(100vw + var(--js-scrollbar-width)); */
}


  .js .no-scrollbar-width .navigation:not(.navigation--drawer) .submenu--secondary.submenu--mega.is-open,
   .js .no-scrollbar-width .navigation:not(.navigation--drawer) .submenu--secondary.submenu--mega.is-opening {
      transform: translate(calc((var(--js-left, 0) + var(--js-scrollbar-width)) * -1)); 
      left: calc(var(--spacing-100) * -1);
  }

.js.do-anim .navigation:not(.navigation--drawer).dropdown-breakpoint .submenu--mega .submenu__link:not(.submenu__link--fragment) .submenu__link-text {
  background: none !important;
  font-weight: 500;
  font-size: 14px;
  line-height: 100%;
  letter-spacing: 0px;
  text-transform: capitalize;

}
.submenu__link:hover .submenu__link-text {
  text-decoration:underline !important;
}
.navigation:not(.navigation--drawer) .submenu--primary>.submenu__container>.submenu__inner>.submenu__list>.submenu__item>.submenu__parent-item, .navigation:not(.navigation--drawer) .submenu--primary>.submenu__container>.submenu__inner>.submenu__list>.submenu__item>.submenu__link{
    padding-right: 0;
    padding-top: 14px;
    padding-bottom: 12px;
    border-radius: 48px;
    padding-left: 15px;
    text-decoration:none !important;
       
 }
.navigation:not(.navigation--drawer) .submenu__item-display-text .icon.icon--dropdown svg{
  width:14px;
}
ul.submenu__list{
  /* gap:16px !important; */
  gap:12px !important;
}
.submenu__item.submenu__item--primary.submenu__item--primary-submenu .submenu__link{
  padding-right:0 !important;
}
.submenu__item.submenu__item--primary .submenu__link{
  padding-right:15px !important;
}
.navigation:not(.navigation--drawer) .submenu__item--primary-submenu{
  display:flex;
  align-items:center;
  flex-direction:row-reverse;
  padding-right:15px !important;
   gap:8px;
  /* padding: 12px 16px; */ 
}
.navigation:not(.navigation--drawer) .submenu__item--primary-submenu:hover{
  background: #4382DD;
  border-radius: 48px;   
  
}
 .navigation:not(.navigation--drawer).dropdown-breakpoint .submenu__item--primary>.submenu__link{
  display:inline-block !important;
} 
.navigation:not(.navigation--drawer) .submenu--primary>.submenu__container>.submenu__inner>.submenu__list>.submenu__item>.submenu__parent-item>.icon.icon--dropdown{
   display:flex !important;
}

/* .navigation:not(.navigation--drawer) .submenu__item.submenu__item--parent:has(.is-open,.is-opening,.is-closing)>.submenu__link .icon--dropdown {
   opacity:1 !important;
   
} */
/* .navigation:not(.navigation--drawer) .submenu--primary>.submenu__container>.submenu__inner>.submenu__list>.submenu__item>.submenu__parent-item>.icon, .navigation:not(.navigation--drawer) .submenu--primary>.submenu__container>.submenu__inner>.submenu__list>.submenu__item>.submenu__link>.icon.icon--dropdown{
  display:block;
} */
.navigation:not(.navigation--drawer) .submenu--primary>.submenu__container>.submenu__inner>.submenu__list>.submenu__item>.submenu__parent-item>.icon, .navigation:not(.navigation--drawer) .submenu--primary>.submenu__container>.submenu__inner>.submenu__list>.submenu__item>.submenu__link>.icon.icon--chevron-right-small{
  display:none;
}
.header__content-segment .mobile-menu{
   display:none;
}
.mobile-menu-scroll{
   display:none !important;
}
.bottom-border-links {
   display:none !important;
}
.collection-title-description {
    padding-right: 15px;
}
.navigation:not(.navigation--drawer).dropdown-breakpoint .submenu__item--primary:hover>.submenu__link .submenu__link-text{
  transform:unset !important;
  color:#ffffff;
}
.navigation:not(.navigation--drawer).dropdown-breakpoint .submenu__item--primary:hover>.submenu__link{
  overflow:unset !important;
}
.navigation:not(.navigation--drawer) .submenu--primary .submenu__item.submenu__item--primary:hover{
  background: #4382DD;
  border-radius: 48px;
}
.navigation:not(.navigation--drawer).dropdown-breakpoint .submenu__item--primary:hover>.submenu__link:before{
  animation-name:unset !important;
}
} 

@media (max-width:1300px){
.inside-max-width{
  padding-left:32px !important;
  padding-right:32px !important;
} 
.overall-trust-icon-wrapper .trust-icons-cont{
  width:18%;
}
.overall-trust-icon-wrapper .trust-icons-cont .icons-txt-wrap{
  gap:5px;
}
}
@media (max-width:1100px){
  .header__content-segment--icons-inner-wrapper .icon-wrapper .icon{
    width:17px;
    height:17px;
  }
  .navigation:not(.navigation--drawer) .submenu .submenu .submenu__item-display-text{
    gap:8px !important;
  }
  .inside-max-width{
  max-width:90%;
  padding-left:20px !important;
  padding-right:20px !important;

} 
}
@media (max-width:950px){
.overall-trust-icon-wrapper .trust-icons-cont .icons-txt-wrap .txt-wrap p{
  font-size: 14px;
  line-height: 21px;
}
}
 @media (max-width:1024px){
.header__content-segment.desktop-menu{
  display:none;
}
product-item .quick-shop-mobile-btn{
  display:block;
}
product-item product-item-quick-shopping{
  display:none !important;
}
product-item .quick-shop-mobile-btn product-item-quick-shopping{
  display:block !important;
  line-height:0;
  margin-top:10px;
}
product-item .quick-shop-mobile-btn product-item-quick-shopping .button-with-state[data-has-alt-mobile-button]{
  width: 100%;
  height: 100%;
  /* border-radius: unset; */
  border-radius: 88px;
  background: #4382DD;
  color: #FEF3EA;
  /* padding: 16px 30px 17px; */
  padding:16px 0 14px;
}
product-item .quick-shop-mobile-btn product-item-quick-shopping .button-with-state[data-has-alt-mobile-button] .button-with-state__label--mobile .label-idle{
 display:none;
}
product-item .quick-shop-mobile-btn product-item-quick-shopping .button-with-state[data-has-alt-mobile-button] .button-with-state__label--hidden{
  visibility:visible;
  font-weight: 400;
  font-size: 12px;
  line-height: 0;
  
}
 ul.submenu__list.mobile-menu-scroll{
  gap:0 !important;
  padding-left:20px;
  /* padding-bottom:20px; */
  padding-bottom:16px;
  overflow-x:hidden;
}
.submenu__link:hover{
  background:none !important;
}
.navigation:not(.navigation--drawer).dropdown-breakpoint .submenu__item--primary:hover>.submenu__link{
  padding: 14px 19px;
  background: #4382DD;
  border-radius: 48px;
}
/* .navigation:not(.navigation--drawer) .submenu--primary>.submenu__container>.submenu__inner>.submenu__list>.submenu__item>.submenu__parent-item>.icon{
  display:block !important;
} */


.navigation:not(.navigation--drawer).dropdown-breakpoint .submenu__item--primary>.submenu__link{
    display: flex;
    align-items: center;
    gap: 5px;
}

.desktop-menu-scroll{
  display:none !important;
}
.desktop-nav .icon-wrapper.desktop-menu{
  display:block;
}
.header__content-segment .mobile-menu-nave{
   display:block;
}
.mobile-menu-scroll .overall-hover-image{
  display:none;
}
.navigation__control-close[for] {
   width: 100%;
   padding: 32px 0;
   top: 0px;
   right: 0;
   background : #00BB7E;
   color: #FFFFFF !important;
}
.navigation__control-close[for] .icon{
    margin: 0;
    margin-left:20px;
    order:1;
}
.mobile-menu-scroll .submenu__link{
  padding-top:12px;
  padding-bottom:12px; 
}
.mobile-menu-scroll .submenu__link-text{
  display:flex;
  align-items:center;
  gap:8px;
  font-size: 12px;
  font-weight: 500;
  font-style: Medium;
  font-size: 12px;
  line-height: 100%;
  letter-spacing: 0px;
  vertical-align: middle;
  text-transform: capitalize;
}
.mobile-menu-scroll .menu-badge{
  font-weight: 700;
  font-size: 10px;
  line-height: 13px;
  display: flex;
  align-items: center;
  text-transform: capitalize;
  color: #FFFFFF;
  border-radius: 59.69px;
  padding: 3px 10px;
}
.mobile-menu-scroll .submenu__item img{
  max-width:56px;
}
.mobile-menu-scroll .icon--chevron-right-small{
  order:999;
}
.mobile-menu-scroll .submenu__item .submenu__list-control.submenu__list-control{
  gap:16px !important;
  justify-content:unset !important;
  padding-left:0;
}
.mobile-menu-scroll .submenu__inner.submenu__inner--secondary{
  padding:0 !important;
}
.Mobile-logo{
    width: calc(100% - 36px);
    height: auto;
    max-width: 140px;
    justify-content: center;
    text-align: center;
    margin: 0 auto;
    order:2;
    width:calc(100% - 24px);
    max-width: 160px; 
    margin-left: 6rem;
    line-height:0;
    display:flex;
    position: absolute;
    top: 11px;
    left: 8%;
    z-index: 9999;
}
.Mobile-logo img{
  width:100%;
  height:auto;
}
.mobile-menu-scroll ul.custom-links-menu.submenu__list {
    width: 100% !important;
}
.mobile-menu-scroll .submenu--mega>.submenu__container>.submenu__inner .submenu__header {
    order: 0;
    position: sticky;
    top: 0;
}
.mobile-menu-scroll .overall-trust-icon-wrapper{
   display:none;
}
 .mobile-menu-scroll .submenu__item--primary-submenu{
  position:unset;
 }
.mobile-menu-scroll .submenu__item .submenu__link--item{
  padding:6px 0 !important;
}
.submenu__link{
   padding:6px 0 !important;
}
.bottom-border-links{
  padding: 6px 25px 0; 
  border-top: 1px solid rgba(0, 0, 0, 0.1);
  margin:20px -36px 0;
  width:calc(100% + 52px);
}
.bottom-border-links .custom-bottom-links{
  display: flex;
  flex-wrap: wrap;
  column-gap:25px;
  padding:0px 30px 0 16px; 
}
.bottom-border-links li {
    width: 48%;
    list-style: none;
}
.bottom-border-links .submenu__link-text{
  font-style: normal;
  font-weight: 400;
  font-size: 12px;
  line-height: 16px;
  color: rgba(0, 0, 0, 0.7);

}
.mobile-menu-scroll .shop-all-btn-custom{
  display:flex;
  align-items:center;
  flex-direction:column;
  margin-top:12px;
  position:relative;
  left:-7px;
}
.mobile-menu-scroll .shop-all-btn-custom a{
  font-style: normal;
  font-weight: 700;
  font-size: 12px;
  line-height: 16px;
  display: flex;
  align-items: center;
  text-align: center;
  text-transform: uppercase;
  color: #FFFFFF;
  width:100%;
  padding: 14px 16px;

}
.mobile-menu-scroll .shop-all-btn-custom p{
  font-style: normal;
  font-weight: 400;
  font-size: 12px;
  line-height: 12px;
  display: flex;
  align-items: center;
  text-align: justify;
  color: #000000;
  margin-top:8px;
  display:flex;
  align-items:center;
  gap:4px;
}

.mobile-menu-scroll .shop-all-btn-custom p img{
  width:16px;
  height:auto;
}
.navigation__submenu .navigation__cross-border-account{
  display:none;
} 
/* new collection css */
collection-product-grid .collection-product-grid__sticky-filter-sort-button{
  position:relative;
  bottom:unset;
  transform:unset;
  left:unset;
  width: 100%;
  background: none;
  /* gap:16px; */
  gap:8px;
  margin-bottom:16px;
}
collection-product-grid .sticky-filter-sort__filter-button 
{
  width:50%;
  color:#4382DD;
  border-radius:35px;
  border:1px solid #4382DD;
  padding: 5.5px;
  font-size: 12px !important;
  justify-content:center;
}
collection-product-grid .sticky-filter-sort__filter-button .icon--filter{
  width: 16px;
  height:16px;
}
collection-product-grid .sticky-filter-sort__sort-wrapper{
   width:50%;
}
collection-product-grid .sticky-filter-sort__sort-trigger{
   width:100%;
   color:#4382DD;
   border-radius:35px;
   border:1px solid #4382DD;
   justify-content:center;
   padding:5.5px;
   font-size:12px !important;

}
collection-product-grid .collection-product-grid__sticky-filter-sort-button.active{
  transform:unset;
  transition-timing-function:unset;
}
collection-product-grid .sticky-filter-sort__filter-button .filter-button__count:before {
  top:-1px;
  left:1px;
}
collection-product-grid .sticky-filter-sort__filter-button .filter-button__count{
  width:17px;
  height:17px;
}
collection-product-grid .sticky-filter-sort__sort-mobile .icon--sort{
  width:16px;
  height:17px;
}


.shipping_badge-position-adjust-top_left .shipping_best-badge-container{
  padding: 4px 10px 4px;
}

.shipping_badge-position-adjust-top_right .shipping_best-badge-container{
  padding: 4px 10px 4px;
}

.shipping_badge-position-adjust-bottom_left .shipping_best-badge-container{
 padding: 4px 10px 4px;
}

.shipping_badge-position-adjust-bottom_right .shipping_best-badge-container{
  padding: 4px 10px 4px;
}

.shipping_best-badge-container .badge-text{
  font-size: 8px;
  line-height: 100%;
}


 }
@media screen and (max-width: 1024px) and (min-width: 720px) {
  .collection-product-grid__sticky-filter-sort-button .sticky-filter-sort__sort-wrapper disclosure-component .disclosure-wrapper.disclosure--alignment-above .disclosure-content{
    bottom:unset;
  }
}
@media (max-width:720px){
  /* .junip-review-list-item-container .junip-review-customer .junip-review-author{
    font-size:14px !important;
  } */

.badge-position-adjust-top_left{
  /*height: 50px;
  max-width: 50px; */
  height: 45px;
  max-width: 45px;
}
.badge-position-adjust-top_right{
  /* height: 50px;
  max-width: 50px; */
  height: 45px;
  max-width: 45px;
}
.badge-position-adjust-bottom_left{
  /* height: 50px;
  max-width: 50px; */
  height: 45px;
  max-width: 45px;
}
.badge-position-adjust-bottom_right{
  /* height: 50px;
  max-width: 40px; */
  height: 40px;
  max-width: 50px;
}
.best-badge-container .badge-text{
  font-size:10px;
  line-height:11px;
}
product-item.promotion-box.desktop-promotion-box{
  display:none;
}
product-item.promotion-box.mobile-promotion-box{
  display:block;
}
product-item .card-wrapper .content-part p{
  font-size: 10px;
  line-height: 15px;
}
product-item .card-wrapper .content-part{
  padding: 0 8px 22px 8px;
}
.collection-title-description .collection-title{
font-weight: 400;
font-size: 18px;
line-height: 24px;
display: flex;
align-items: center;
letter-spacing: 0.0424615px;
color: #000000;
}
.collection-title-description p{  
font-weight: 400;
font-size: 12px;
line-height: 16px;
}
collection-product-grid .collection-product-grid__top-bar{
  margin-bottom:12px;
}
.collection-product-grid__products.standard-grid{
  column-gap: 8px !important;
  row-gap: 24px;
}
product-item .product-item__image{
  border-radius: 8px
}
product-item .product-item__swatches{
  margin:8px 0 0 0;
}
product-item .product-item__title{
  font-size: 14px;
  line-height: 19px;
  padding-top:6px;
}
product-item .product-item__price .price{
  margin-top:6px;
}
product-item .product-item__image-wrapper{
  border-radius:8px;
}
product-item .product-item__price span.you-save-percent{
  font-size: 10px;
  line-height: 13px;
}
product-item .price__main.price__main--sale{
  font-size: 14px;
  line-height: 19px;
}
product-item .price__main+.price__strikethrough{
  font-size: 14px;
  line-height: 19px;
  margin:0;
}
product-item .product-item__price .price{
  gap:7px;
}
collection-product-grid .section-inner{
  padding-left:16px;
  padding-right:16px;
}
product-item .custom-subtitle-content p{
  /* font-size: 10px;
  line-height: 13px; */
letter-spacing: 0%;
font-weight: 400;
font-size: 12px;
line-height: 16px;
color: rgba(0, 0, 0, 0.6);

}
.button-with-state[data-has-alt-mobile-button] .button-with-state__label--mobile .label-success svg path{
  stroke:#FEF3EA;
 }
 .modal.product-quick-view .product-inner--quick-view .product__details{
  line-height:1.4;
 }
 /* .button-with-state[data-has-alt-mobile-button] .button-with-state__label--desktop{
  display:block !important;
 } */
 .button-with-state[data-has-alt-mobile-button] .button-with-state__label--desktop .label-default{
  font-size: 12px;
  line-height: 19px;
  padding:10px 0 !important;
 }
 
}
@media (max-width:450px){
  .Mobile-logo { 
    margin-left: 5rem;
  }
  /* product-item .quick-shop-mobile-btn product-item-quick-shopping .button-with-state[data-has-alt-mobile-button]{
    padding: 8px 16px;
  } */
  product-item .quick-shop-mobile-btn product-item-quick-shopping .button-with-state[data-has-alt-mobile-button] .button-with-state__label--hidden{
    font-size: 10px;
    /* line-height: 17px; */
  }
}
/* @media (max-width:420px){
  .Mobile-logo { 
    margin-left: 3rem;
  } 
}*/
/* @media (max-width:360px){
  .Mobile-logo { 
    margin-left: 2rem;
  }
} */
@media (max-width:350px){
  .mobile-menu-scroll .shop-all-btn-custom p { 
    font-size: 10px;
    line-height: 12px;
  }
}
@media (max-width:340px){
  .mobile-menu-scroll .menu-badge {
    font-size:7px;
  }
  product-item .product-item__price span.you-save-percent {
    font-size: 8px;
    line-height: 11px;
  }
  product-item .price__main+.price__strikethrough {
    font-size: 12px;
    line-height: 19px;
       
  }
  product-item .price__main.price__main--sale {
    font-size: 12px;
    line-height: 19px;
  }
}

/* ============================================================
   A/B test B: collar PDP 3D render + type-a-name charms.
   Lifted verbatim from the dev theme; nothing above this line changed.
   ============================================================ */
/* Cart: the charm row spells the customer's name, so give the letters room to read
   as a word and make a free set unmistakable. */
.bundle-chip__charmlabel{display:block;font-size:.85em;opacity:.75;margin-bottom:3px}
/* Grid with capped columns keeps up to 8 charms on ONE line: each column is at most
   26px but may shrink, so a long name narrows instead of wrapping. */
/* The charms row gets the chip's full width — it's the thing the customer chose, and
   it was being squeezed into a fit-content pill beside the price. Columns cap at 40px
   but shrink, so eight still stay on one line. */
.bundle-chip--charms{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center}
.bundle-chip--charms .bundle-chip__title{display:block;min-width:0;width:100%}
/* Fixed strap height so the charms sit a consistent 15% proud, top and bottom.
   Sizing/spacing per charm is set inline by the hydrator from measured glyph widths. */
.bundle-chip__charmstrip{display:flex;flex-wrap:nowrap;align-items:center;gap:0;
  justify-content:center;height:26px;box-sizing:border-box;padding:0 14px;
  width:100%;max-width:100%;
  background:var(--charm-strap,transparent);border-radius:999px;overflow:visible}
.charmstrip__bead{flex:0 0 auto;object-fit:contain;background:none;box-shadow:none;
  padding:0;filter:drop-shadow(0 1px 2px rgba(0,0,0,.20));
  display:inline-flex;align-items:center;justify-content:center;font-weight:700}
.charmstrip__bead--text{display:inline-flex;align-items:center;justify-content:center;
  font-weight:600;font-size:.8rem}
.bundle-chip--charms .bundle-chip__title{display:block}
.bundle-chip__free{color:#00875a;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.bundle-chip--charms.is-free .bundle-chip__title{opacity:1}

/* What the set would have cost bought separately, beside what it actually costs. */
.price .bundle-value-was{ margin-left:8px; opacity:.5; }
/* The subtotal row is label | value with space-between, so a third child would sit
   marooned in the middle. margin-left:auto parks it against the value. */
.cart-subtotal__was{ margin-left:auto; margin-right:8px; opacity:.45; font-weight:inherit; }

/* On a phone the set items sat in the text column, so they started under the
   title and left a stripe of empty card to their left. The row is
   [80px image][gap][content]; pulling back by exactly that puts the pills on the
   card's own padding edge and gives the charm strip the full width to fit in. */
/* The charms row carries no thumbnail, so the chip's 28px image column was dead
   space squeezing the strip. Give the strip that column back at every width. */
.bundle-contents__item.bundle-chip--charms{grid-template-columns:1fr auto}
.bundle-contents__item.bundle-chip--charms .bundle-chip__title{grid-column:1}
.bundle-contents__item.bundle-chip--charms .bundle-chip__price-wrap{grid-column:2}

@media (max-width:719.9px){
  /* Sharing the row with the price left the strip about 125px, so eight charms had
     to shrink to half size to fit. Stack the count and price under it instead --
     the name is the thing worth reading. */
  .bundle-contents__item.bundle-chip--charms{grid-template-columns:1fr;gap:6px}
  .bundle-contents__item.bundle-chip--charms .bundle-chip__title,
  .bundle-contents__item.bundle-chip--charms .bundle-chip__price-wrap{grid-column:1 / -1}
  .bundle-contents__item.bundle-chip--charms .bundle-chip__price-wrap{justify-self:end}
}


/* Type-a-name charm builder (inline, no modal) */
.cni{margin:12px 0 4px}
.cni__row{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:10px}
.cni__label{font-size:.86rem;opacity:.8;flex:0 0 auto}
/* Name field: bold label on its own line, input beneath. */
.cni__row:has(.cni__input){flex-direction:column;align-items:stretch;gap:6px}
.cni__row:has(.cni__input) .cni__label{font-weight:700;opacity:1;font-size:.95rem}
/* flex-grow:1 from the row layout applies to HEIGHT once the row is a column, which
   stretched the field into a giant box. Pin it back to its natural height. */
.cni__row:has(.cni__input) .cni__input{width:auto;flex:1 1 auto;height:auto}
.cni__row:has(.cni__input) .cni__field{flex:0 0 auto}
/* The counter used to be pulled up over the field; with Clear in the row that
   overlapped it. It now sits in normal flow between the input and the button. */
.cni__row:has(.cni__input) .cni__count{align-self:center;margin:0}
.cni__colors{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.cni__chip{width:28px;height:28px;border-radius:50%;border:2px solid rgba(0,0,0,.12);
  background-size:cover;background-position:center;cursor:pointer;padding:0;flex:0 0 auto}
.cni__chip.is-active{outline:2px solid #262626;outline-offset:2px}
.cni__chip--custom{width:auto;height:28px;border-radius:999px;padding:0 12px;
  font-size:.78rem;font-weight:600;background:transparent}
/* Mixed: four quadrants of the charm palette. */
.cni__chip--mixed{background-size:cover}
.cni__field{display:flex;align-items:center;gap:8px;width:100%}
.cni__clear{flex:0 0 auto;padding:9px 14px;border:1px solid rgba(0,0,0,.18);
  border-radius:8px;background:transparent;font-size:.8rem;font-weight:600;cursor:pointer}
.cni__clear:hover{background:rgba(0,0,0,.04)}
.cni__input{flex:1 1 160px;min-width:140px;padding:9px 12px;border:1px solid rgba(0,0,0,.18);
  border-radius:8px;font-size:1rem;text-transform:uppercase;letter-spacing:.06em}
.cni__count{font-size:.78rem;opacity:.6;flex:0 0 auto;white-space:nowrap}
/* Fixed strap height so the charm overhang is exact rather than whatever the
   content happens to push it to. */
.cni__symbols{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 12px}
.cni__symbol{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;
  border:1px solid rgba(0,0,0,.18);border-radius:999px;background:transparent;
  font-size:.78rem;font-weight:600;cursor:pointer;line-height:1}
.cni__symbol:hover{background:rgba(0,0,0,.04)}
.cni__symbol-ch{font-size:1rem;line-height:1}
.cni__bead[draggable="true"]{cursor:grab;touch-action:none}
.cni__bead.is-dragging{opacity:.55;cursor:grabbing;transform:scale(1.06);
  filter:drop-shadow(0 3px 6px rgba(0,0,0,.35))}
.cni__bead.is-drop-target{outline:2px dashed rgba(0,0,0,.45);outline-offset:-6px;border-radius:50%}

.cni__strap{display:flex;align-items:center;gap:0;flex-wrap:nowrap;
  height:46px;box-sizing:border-box;padding:0 26px;border-radius:999px;
  background:var(--cikb-strap-bg,#fff);border:1px solid rgba(0,0,0,.12);
  overflow:visible;margin:12px 0}
/* Charms sit ON the strap, not in a chip: no disc behind them, and tall enough to
   break the strap's edge top and bottom the way real charms do. */
/* The letter PNGs are 300x300 canvases whose glyph only fills ~65% vertically, so the
   box has to be ~1.5x the wanted letter height. Target letter = 46px strap + 15% proud
   each side = ~60px, hence a 92px box. The negative side margins claw back the dead
   horizontal padding so eight charms still fit on one line. */
.cni__bead{width:92px;height:92px;object-fit:contain;flex:0 0 auto;
  display:inline-flex;align-items:center;justify-content:center;
  font-weight:600;font-size:2rem;
  background:none;box-shadow:none;padding:0;margin:0 -18px;/*JS overrides per glyph*/
  filter:drop-shadow(0 1px 2px rgba(0,0,0,.20))}

/* Type-a-name mode drives staging automatically, so the modal opener and the
   staged-set list below it are redundant — one set of charms only. */
[data-name-mode="1"] [id^="cikb-open-"],
[data-name-mode="1"] .cikb-staged-wrap{display:none !important}


/* Walk-set PDP: personalisation first, chosen items last and small. */
.wsl{display:block;margin:4px 0 18px}
.wsl > *{margin-bottom:14px}
.wsl .cni__strap{margin-bottom:26px}
/* Charm colour and size were sitting right on top of each other and the select. */
.wsl .cni__row:has(.cni__colors){margin:0 0 22px}
.wsl__sizes{margin-top:22px}
.wsl__sizes .mpb-opt--size .mpb-opt__label{margin-bottom:10px}
.wsl__sizes .mpb-size-select{margin-top:2px}
.wsl__items{margin-top:24px}
.wsl .cni__symbols{margin-top:14px}
.wsl .mpb-shared-color{margin:0 0 14px}
.wsl .cni__row{margin-bottom:0}
.wsl__sizes{display:flex;flex-wrap:wrap;gap:14px}
.wsl__sizes .mpb-opt--size{flex:1 1 220px;min-width:0}

/* Confirmation strip: image plus the live variant label, no title, no price. */
.wsl__items{display:flex;gap:14px;align-items:flex-start;flex-wrap:wrap}
.wsl__item{display:flex;flex-direction:column;align-items:center;gap:4px;
  flex:0 0 auto;width:84px}
.wsl__item .mpb-card__img{width:84px;height:84px;border-radius:10px;overflow:hidden;
  background:#fff;border:1px solid rgba(0,0,0,.08);display:grid;place-items:center}
.wsl__item .mpb-card__img img{max-width:100%;max-height:100%;object-fit:contain}
.wsl__item-label{font-size:.72rem;line-height:1.25;text-align:center;opacity:.75}
.wsl__item .mpb-preorder{font-size:.7rem;line-height:1.25;text-align:center;color:#EA6739}
.wsl__item .mpb-free-tag{position:static;align-self:center;font-size:.62rem}

/* The original cards are emptied by the move — hide what's left (title, price). */
.mpb-card.is-compacted{display:none}


/* Modal strap: same drag affordance as the inline builder. */
.cikb-strap__charm[draggable="true"]{cursor:grab}
.cikb-strap__charm.is-dragging{opacity:.45;cursor:grabbing}
.cikb-strap__charm.is-drop-target{outline:2px dashed rgba(0,0,0,.45);outline-offset:-4px}


/* "Limited Edition" is a group heading, not an emphasis. */
.mpb-limited-label{font-weight:400}


/* Free-charm sets: hide the popup's per-charm price maths. */
.cikb-free-charms .cikb-cta__price,
.cikb-free-charms .cikb-cta__sub{display:none !important}


/* Duplicate of the bundle headline price — hidden, not removed, so it returns the
   moment the walk-set layout is off. */
.price__container.wsl-hidden-price{display:none}


/* Reassurance row under Add to Cart. */
.wsl__trust{display:flex;flex-direction:column;gap:12px;margin:16px 0 4px;
  padding:16px 0;border-top:1px solid rgba(0,0,0,.10);border-bottom:1px solid rgba(0,0,0,.10)}
.wsl__trust-item{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.wsl__trust-icon{width:22px;height:22px;flex:0 0 auto;color:#19b377}
.wsl__trust-label{font-size:.88rem;font-weight:600}
.wsl__trust-stars{color:#f5a623;letter-spacing:.08em;font-size:.85rem;line-height:1}
@media (min-width:750px){
  .wsl__trust{flex-direction:row;justify-content:space-between;gap:18px}
  .wsl__trust-item{flex:1 1 0;align-items:center;text-align:center;flex-direction:column;gap:6px}
  .wsl__trust-label{font-size:.8rem;line-height:1.3}
}


/* Rating sits tight under the price headline; collapses when there's nothing to show. */
.wsl__rating{--bottom-spacing:0 !important;margin:0 0 10px}
.wsl__rating:empty{display:none}


/* Bottle + free dispenser quick-add, below the reassurance row. No panel — it reads
   as part of the page rather than an ad block. */
.wsl-offer{display:flex;align-items:center;gap:16px;margin:20px 0 8px;padding:0;
  background:none;border:0}
.wsl-offer__media{display:flex;align-items:center;gap:8px;flex:0 0 auto}
.wsl-offer__media img{width:62px;height:62px;object-fit:contain;border-radius:10px;background:#fff}
.wsl-offer__plus{font-weight:700;opacity:.45;font-size:1.05rem}
.wsl-offer__body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:7px;align-items:flex-start}
.wsl-offer__text{margin:0;font-size:1rem;font-weight:700;line-height:1.25}
.wsl-offer__tag{display:inline-flex;align-items:center;font-size:.72rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.03em;padding:5px 11px;border-radius:999px;
  background:rgba(25,179,119,.12);color:#12855a;border:1px solid rgba(25,179,119,.30)}
.wsl-offer__action{display:flex;align-items:center;gap:14px;flex:0 0 auto}
.wsl-offer__now{font-size:1.05rem;font-weight:700}
.wsl-offer__btn{padding:14px 30px;border-radius:999px;border:0;cursor:pointer;
  background:#4382dd;color:#fff;font-weight:700;font-size:.95rem;line-height:1}
.wsl-offer__btn:disabled{opacity:.7;cursor:default}
@media (max-width:600px){
  .wsl-offer{flex-wrap:wrap;gap:12px}
  .wsl-offer__action{width:100%;justify-content:space-between}
  .wsl-offer__btn{flex:1 1 auto;text-align:center}
}


/* Key benefits, checkmark list under the price. */
.wsl__benefits{list-style:none;margin:10px 0 16px;padding:0;display:flex;
  flex-direction:column;gap:7px}
.wsl__benefit{display:flex;align-items:flex-start;gap:9px;font-size:.9rem;line-height:1.35}
.wsl__benefit-icon{width:17px;height:17px;flex:0 0 auto;margin-top:2px;color:#19b377}


/* Preorder notices for the set, shown whenever a chosen variant is backordered. */
.wsl__preorder{display:flex;flex-direction:column;gap:4px;margin:10px 0 0}
.wsl__preorder:not(:has(.mpb-preorder:not([hidden]))){display:none}
.wsl__preorder .mpb-preorder{font-size:.84rem;font-weight:600;color:#EA6739;line-height:1.35}


/* Section rules: group the column into scannable blocks — benefits, colour,
   personalisation, size — rather than one continuous run of controls. */
.wsl{--wsl-rule:1px solid rgba(0,0,0,.12);--wsl-gap:20px}
.wsl__benefits,
.wsl .mpb-shared-color,
.wsl .cni__row:has(.cni__input),
.wsl__slot-color,
.wsl__sizes{
  border-top:var(--wsl-rule);
  padding-top:var(--wsl-gap);
  margin-top:var(--wsl-gap);
}
/* The benefits list sits under the price, which already has its own spacing. */
.wsl__benefits{margin-top:16px;padding-top:16px}
/* Inner controls of the personalisation block shouldn't repeat the rule. */
.wsl .cni__symbols,
.wsl .cni__strap,
.wsl .cni__row:has(.cni__colors){border-top:0;padding-top:0}
.wsl .cni__row:has(.cni__colors){margin-top:18px}
/* Preorder notices hang off the size block, not a new section. */
.wsl__preorder{border-top:0;padding-top:0;margin-top:12px}


/* Cart bundle rows: the parent thumbnail was taking a third of the width while the

   set contents — the part the customer actually configured — were squeezed into the
   remainder, leaving the charm name unreadable. Shrink the thumbnail and let the
   contents span the full row. */
cart-item .product-item-minimal__image{width:74px;min-width:74px;flex:0 0 74px}
cart-item .product-item-minimal__image img{width:100%;height:auto}
/* Stays in the content column — pulling it left with a negative margin dragged the
   "Set items" label under the thumbnail. Width comes from the smaller thumbnail. */
cart-item .bundle-contents{width:100%;max-width:none;box-sizing:border-box}
cart-item .bundle-contents__list{width:100%}

/* The set items break out of the text column and run the full width of the card,
   which is where the charm strip finds the room to render at full size. The
   thumbnail is 74px at every width, so this holds on desktop too.
   width:auto is the load-bearing half: with width:100% the negative margin only
   slides the pills left instead of widening them. Declared here rather than with
   the rest of the charms CSS because the rule above would otherwise win. */
/* The break-out itself is measured in JS (bundle-hydrator's spanCard): the pills sit
   several wrappers deep inside a flex column, so no fixed offset in CSS lines up with
   the card's edges at every breakpoint. This just makes sure nothing here fights it. */
cart-item .bundle-contents{ max-width:none; flex:0 0 auto; }

/* With the extra room, charms can render bigger and still stay on one line. */

.bundle-chip--charms{gap:12px}



/* Set value anchor in the cart, matching the PDP headline. */
.bundle-contents__value{margin:0 0 4px;font-size:.8rem;line-height:1.2}
.bundle-contents__value s{opacity:.55;margin-right:5px}
.bundle-contents__value span{font-weight:700;color:#12855a;text-transform:uppercase;
  letter-spacing:.03em;font-size:.72rem}


/* A slot with its own colour palette (e.g. the bag, which doesn't stock every colour). */
.wsl__slot-color .mpb-shared-color{margin:0}
.wsl__slot-color-title{font-weight:700;font-size:.95rem;margin-bottom:10px}


/* ── Walk-set landing page ───────────────────────────────────────────────── */
.lp{--lp-ink:#262626;--lp-accent:#4382dd;--lp-green:#19b377;
  max-width:1120px;margin:0 auto;padding:0 20px;color:var(--lp-ink)}
.lp-h2{font-size:clamp(1.4rem,3.2vw,2rem);line-height:1.15;margin:0 0 22px;text-align:center}
.lp-eyebrow{text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;font-weight:700;
  color:var(--lp-green);margin:0 0 10px}

.lp-hero{display:grid;gap:28px;align-items:center;padding:36px 0 8px}
.lp-hero__title{font-size:clamp(1.8rem,5vw,3rem);line-height:1.08;margin:0 0 14px}
.lp-hero__sub{font-size:1.05rem;line-height:1.5;margin:0 0 18px;opacity:.85}
.lp-hero__price{display:flex;align-items:baseline;gap:10px;margin:0 0 18px}
.lp-price-now{font-size:1.6rem;font-weight:700}
.lp-price-was{opacity:.55}
.lp-hero__note{margin:12px 0 0;font-size:.85rem;opacity:.75}
.lp-hero__media img{width:100%;height:auto;border-radius:18px}

.lp-cta{display:inline-block;background:var(--lp-accent);color:#fff;font-weight:700;
  padding:15px 34px;border-radius:999px;text-decoration:none;font-size:1rem}
.lp-cta:hover{filter:brightness(.95)}
.lp-cta--lg{padding:18px 44px;font-size:1.05rem}
.lp-cta-row{text-align:center;margin-top:28px}

.lp-reasons{padding:44px 0}
/* Stacked, one reason per row: big image on the left with a numbered badge biting
   into its corner, heavy uppercase heading and generous body copy on the right. */
.lp-reasons__list{list-style:none;margin:0;padding:0;display:grid;gap:52px}
.lp-reason{display:grid;grid-template-columns:1fr;gap:20px;align-items:start;
  padding:0;border:0;border-radius:0}
.lp-reason__media{position:relative;border-radius:2px;overflow:hidden;background:#efe9e1}
.lp-reason__media img{display:block;width:100%;height:100%;object-fit:cover;aspect-ratio:1}
.lp-reason__ph{aspect-ratio:1;display:grid;place-items:center;color:rgba(0,0,0,.28);
  background:repeating-linear-gradient(45deg,#efe9e1,#efe9e1 12px,#e7e0d6 12px,#e7e0d6 24px)}
.lp-reason__ph svg{width:56px;height:56px}
.lp-reason__num{position:absolute;top:0;left:0;z-index:2;
  width:64px;height:64px;background:#111;color:#fff;
  display:grid;place-items:center;font-weight:800;font-size:1.9rem;line-height:1;border-radius:0}
.lp-reason__title{margin:0 0 14px;font-size:clamp(1.5rem,4vw,2.3rem);line-height:1.06;
  font-weight:800;text-transform:uppercase;letter-spacing:-.01em}
.lp-reason__text{font-size:clamp(1rem,1.6vw,1.15rem);line-height:1.5;opacity:.9}
.lp-reason__text p{margin:0}

.lp-compare{padding:44px 0}
.lp-table{width:100%;border-collapse:collapse;font-size:.95rem}
.lp-table th,.lp-table td{padding:13px 12px;border-bottom:1px solid rgba(0,0,0,.10);text-align:center}
.lp-table th[scope=row]{text-align:left;font-weight:600}
.lp-table thead th{font-size:.8rem;text-transform:uppercase;letter-spacing:.04em}
.lp-table .is-ours{background:rgba(25,179,119,.08);font-weight:700}
.lp-tick{color:var(--lp-green);font-weight:800}
.lp-cross{color:#c0392b;opacity:.7}

/* Trust bar — a compact strip sitting just above the offer block. */
/* Break out of the page container so the bar runs edge to edge. */
.lp-trustbar{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;
  background:#eef4fd;border-radius:0;padding:22px 24px;
  width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);
  margin-top:8px;margin-bottom:44px}
.lp-trustbar__item{text-align:center}
.lp-trustbar__value{display:block;font-size:1.05rem;font-weight:800;line-height:1.1}
.lp-trustbar__label{display:block;font-size:.75rem;opacity:.75;margin-top:2px;line-height:1.25}

/* PDP-style offer: imagery left with badges, buying copy right. */
.lp-offer{display:grid;gap:26px;align-items:center;padding:8px 0 52px}
.lp-offer__media{position:relative;background:#f4f1ec;border-radius:4px;overflow:hidden}
.lp-offer__media img{display:block;width:100%;height:auto}
.lp-offer__ph{aspect-ratio:1;display:grid;place-items:center;color:rgba(0,0,0,.28);
  background:repeating-linear-gradient(45deg,#efe9e1,#efe9e1 12px,#e7e0d6 12px,#e7e0d6 24px)}
.lp-offer__ph svg{width:56px;height:56px}
.lp-offer__badge{position:absolute;top:18px;left:18px;z-index:2;font-weight:800;
  font-size:1.05rem;letter-spacing:.01em;text-transform:uppercase}
.lp-offer__flash{position:absolute;left:18px;bottom:18px;z-index:2;display:grid;place-items:center;
  width:104px;height:104px;border-radius:50%;background:var(--lp-accent);color:#fff;
  font-weight:800;font-size:.82rem;line-height:1.15;text-align:center;padding:10px}

.lp-offer__head{display:flex;align-items:baseline;justify-content:space-between;gap:14px;
  flex-wrap:wrap;border-bottom:1px solid rgba(0,0,0,.12);padding-bottom:12px;margin-bottom:14px}
.lp-offer__title{margin:0;font-size:clamp(1.5rem,3.4vw,2.1rem);line-height:1.05;
  font-weight:800;text-transform:uppercase}
.lp-offer__ship{color:var(--lp-green);font-weight:800;font-size:.9rem;text-transform:uppercase}
.lp-offer__rating{display:flex;align-items:center;gap:8px;margin:0 0 10px;font-size:.85rem;opacity:.8}
.lp-offer__stars{color:#f5a623;letter-spacing:.06em}
.lp-offer__price{display:flex;align-items:baseline;gap:10px;margin:0 0 14px}
.lp-offer__text{font-size:1rem;line-height:1.5;opacity:.88;margin-bottom:16px}
.lp-offer__text p{margin:0}
.lp-offer__bullets{list-style:none;margin:0 0 18px;padding:0;display:grid;gap:9px}
.lp-offer__bullets li{display:flex;gap:10px;align-items:flex-start;font-weight:700;font-size:.95rem}
.lp-offer__tick{color:var(--lp-accent);font-weight:800;flex:0 0 auto}
.lp-offer__guarantee{border:1px solid rgba(0,0,0,.22);border-radius:8px;padding:12px 14px;
  text-align:center;font-weight:800;font-size:.8rem;line-height:1.3;letter-spacing:.02em;
  text-transform:uppercase;margin-bottom:14px}
.lp-cta--block{display:block;text-align:center;border-radius:10px;font-size:1.05rem;
  text-transform:uppercase;letter-spacing:.03em}
.lp-offer__foot{margin:10px 0 0;text-align:center;font-size:.82rem;color:var(--lp-accent)}

.lp-quotes{padding:44px 0}
/* Fixed column counts rather than auto-fit: with four reviews, auto-fit fitted three
   and orphaned the fourth onto its own row. */
.lp-quotes__grid{display:grid;gap:18px;grid-template-columns:1fr}
@media (min-width:600px){ .lp-quotes__grid{grid-template-columns:repeat(2,minmax(0,1fr))} }
@media (min-width:1000px){ .lp-quotes__grid{grid-template-columns:repeat(4,minmax(0,1fr))} }
.lp-quote{margin:0;border:1px solid rgba(0,0,0,.10);border-radius:14px;background:#fff;
  overflow:hidden;display:flex;flex-direction:column}
.lp-quote__photo{display:block;width:100%;aspect-ratio:1;object-fit:cover}
.lp-quote__body{padding:16px 16px 18px}
.lp-quote__stars{color:#f5a623;letter-spacing:.06em;margin-bottom:8px}
.lp-quote blockquote{margin:0 0 12px;font-size:.88rem;line-height:1.45}
.lp-quote__meta{display:flex;flex-direction:column;gap:2px;font-size:.8rem}
.lp-quote__author{font-weight:700}
.lp-quote__verified{color:#12855a;font-weight:700;font-size:.74rem}
.lp-quote__product{opacity:.6;font-size:.74rem}

.lp-close{text-align:center;padding:46px 0 60px}
.lp-close__text{max-width:560px;margin:0 auto 22px;opacity:.85;line-height:1.5}

@media (min-width:750px){
  .lp-hero{grid-template-columns:1fr 1fr;gap:44px;padding:56px 0 20px}
  .lp-reason{grid-template-columns:minmax(0,42%) minmax(0,1fr);gap:44px;align-items:center}
  .lp-reason__num{width:76px;height:76px;font-size:2.2rem}
  .lp-offer{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:44px}
}


/* Reassurance panels closing the landing page. */
.lp-assure{display:grid;gap:18px;grid-template-columns:1fr;padding:8px 0 64px}
.lp-assure__item{background:#f1efec;border-radius:4px;padding:26px 24px;text-align:center}
.lp-assure__title{margin:0 0 10px;font-size:1.02rem;font-weight:800;text-transform:uppercase;
  letter-spacing:.01em;line-height:1.2}
.lp-assure__text{font-size:.92rem;line-height:1.5;opacity:.8}
.lp-assure__text p{margin:0}
@media (min-width:750px){ .lp-assure{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px} }
/* Size as a segmented control rather than a menu. The labels have no wrapper of
   their own, so the track is drawn on whatever contains them. */
/* Its own container, so the option label and the size-guide link are not dragged
   into the track alongside the segments. */
.variant-seg{
  display:flex; gap:0; padding:3px; border-radius:999px;
  background:rgba(0,0,0,.045); width:100%; box-sizing:border-box; margin-top:8px;
}
.variant-option--seg{
  flex:1 1 0; display:flex; align-items:center; justify-content:center;
  padding:9px 6px; border-radius:999px; cursor:pointer; text-align:center;
  color:#262626; min-width:0; hyphens:none; overflow-wrap:normal;
  border:0; background:transparent;
  transition:background .14s ease, color .14s ease, box-shadow .14s ease;
}
/* Size over range, so the chip reads at a glance instead of as one long string. */
.variant-seg__label{
  display:flex; flex-direction:column; align-items:center; gap:1px; line-height:1.15;
}
/* It carries .chip--selected for the theme's handler; the pill behind it is what
   actually shows the selection, so nothing of the chip look comes with it. */
.variant-seg .chip--selected{ background:none; border:0; color:inherit; padding:0; }
.variant-seg__name{ font-size:.9rem; font-weight:600; letter-spacing:.005em; }
.variant-seg__range{ font-size:.72rem; font-weight:500; opacity:.55; white-space:nowrap; }
.variant-option--seg:hover{ background:rgba(0,0,0,.05); }
.variant-option--seg:has(input:checked){
  background:#262626; color:#fff; box-shadow:0 1px 3px rgba(0,0,0,.18);
}
.variant-option--seg:has(input:checked) .variant-seg__range{ opacity:.7; }
/* The chips spell the selection out, so repeating it in the label is noise. */
.option-group__container:has(.variant-seg) .label-value{ display:none; }
.option-group__container:has(.variant-seg) .label-text{ margin-right:0; }
.variant-option--seg:has(input:disabled),
.variant-option--seg:has(input.disabled){ opacity:.4; }
.variant-option--seg input{ position:absolute; opacity:0; width:0; height:0; }
/* On a phone the size and the range wrapped onto two ragged lines, which made this
   one control as tall as the whole charm card. The two-line label above is compact
   enough on its own; this just keeps the tap target honest. */
@media (max-width:749px){
  .variant-option--seg{ padding:8px 4px; }
  .variant-seg__name{ font-size:.86rem; }
  .variant-seg__range{ font-size:.7rem; }
}

/* The Klaviyo sign-up teaser (form RVqqrH, the "Mystery Gift" bubble) ships with
   position:fixed; top:0; left:0; margin:20px; 84px square; z-index:90000 — which
   lands it straight on top of the mobile header's hamburger. The header only sits
   at z-index 510, so it can never win; push the bubble down below the header.
   95px + Klaviyo's own 20px margin puts its top edge at 115px: the sticky header
   bottoms out at 107px at scroll 0 (47px announcement bar + 60px header) and at
   60px once scrolled, so this clears it in both states.

   The [style*="top: 0px"] qualifier matters. Klaviyo picks its teaser layout off
   the USER AGENT, not the viewport: a mobile UA gets this 84px circle anchored
   top/left at any width, a desktop UA gets a 184x50 pill anchored bottom/right at
   any width — so a narrowed desktop window is inside the media query but must be
   left alone. Matching the inline top anchor hits only the circle. If Klaviyo ever
   re-anchors it, the rule stops applying and the teaser just returns to default. */
@media (max-width:1023px){
  [class*="kl-teaser-"][style*="top: 0px"]{
    top: 95px !important;
    bottom: auto !important;
    left: 0 !important;
    right: auto !important;
    /* Klaviyo ships this at z-index 90000, which put it over the open nav drawer and
       covered the menu links. The theme's own scale is header 510, drawers 520, modals
       1300 (assets/theme.css:239-249), so 300 — the same rank as --z-index-bar — leaves
       the bubble above ordinary page content but underneath the header, the nav and cart
       drawers, and any modal. It is visible while browsing and gets out of the way the
       moment navigation opens over it. */
    z-index: 300 !important;
  }
}
