/** Shopify CDN: Minification failed

Line 1150:57 Expected identifier but found "var("
Line 1222:24 Expected ":"

**/
a.no-style:hover { text-decoration: underline }
header a.no-style:hover { text-decoration: none }
select { padding: var(--boxPadding); padding-right: 45px }
select, button, .button[class*="is-black"] { width: 100%; margin: 0 auto }
textarea { border-radius: calc(var(--radius) / 3) }
picture{display: block }
.visually-hidden { position: absolute!important; overflow: hidden; width: 1px; height: 1px; margin: -1px; padding: 0; border: 0; clip: rect(0 0 0 0); word-wrap: normal !important }
flex.even > * { width: 100% }
blockquote { margin: var(--padding) auto }
table { display: block; max-width: -moz-fit-content; max-width: fit-content; margin: 0 auto; overflow-x: auto; white-space: nowrap }

.rte :where(ol,ul) { list-style-position: inside }
.rte :where(ul ul, ol ol) { display: inline-grid; list-style-position: initial; margin-top: 0 }

h1,h2,h3,h4,h5,h6 { text-transform: var(--hTxTransform); margin: 0; padding: 0 }
a :where(h1,h2,h3,h4,h5,h6) { color: var(--linkColor) }
a:hover :where(h1,h2,h3,h4,h5,h6) { color: var(--linkHover) }
li { list-style-position: inside }

#shopify-section-footer {
  z-index: 999;
}

.mobnav a:hover, .credits a:hover { color: white; }

label { display: flex; gap: var(--margin) }
summary { cursor: pointer }
input::-webkit-outer-spin-button,input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0 }
input[type=number] { -moz-appearance:textfield }

#shopify-section-header a.no-style, footer a, .login a { padding: var(--buttonPadding) 0 }
.nopadd { padding: 0!important; }
.errors { color: var(--red) }

.grecaptcha-badge { display: none!important }
.hidden { display: none }
.border-right { border-right: var(--globalBorder) }
.border-left { border-left: var(--globalBorder) }

@media (max-width: 777px) { .border-left, .border-right { border: none } }

.svg-placeholder { max-height:100%; max-width: 100%; height: 100vh; min-height: 250px; fill: currentColor }
.svg-placeholder.banner { height: 100% }

.no-js:not(html) { display: none!important }
html.no-js .no-js:not(html) { display: block!important }

.no-js-inline { display: none!important }
html.no-js .no-js-inline { display: inline-block!important }
html.no-js .no-js-hidden { display: none!important }

  body.t-collection { background: #fa5581 }
/* RTE */
.rte {
    --hSize: 1.953rem;
    --h1Size: 2em;
    --h2Size: 1.5em;
    --h3Size: 1.17em;
    --h4Size: 1em;
    --h5Size: .83em;
    --h6Size: .67em;
}
      
.rte iframe { max-width: 100%; width: 100%; aspect-ratio: 16 / 9 }
.rte p { margin: var(--margin) 0!important }

/*** Breadcrumbs */
.breadcrumb { padding: var(--margin) var(--padding); border-bottom: var(--globalBorder) }
.breadcrumb a, .breadcrumb span { padding: var(--buttonPadding) var(--margin) }
.breadcrumb a:first-child { padding-left: 0 }

body,
      .h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
  font-family: "Josefin Sans", sans-serif;
}

/*** Dropdown caret */
summary.dropdown-caret::-webkit-details-marker { display:none }
.dropdown-caret { width: 100%; list-style: none; display: flex; align-items: center; justify-content: space-between; gap: .7rem; user-select: none }
.dropdown-caret::after {
    content: "";
    display: inline-block;
    width: 0;
    height: 0;
    vertical-align: middle;
    border-style: solid;
    border-width: 6px 6px 0;
    border-right-color: transparent;
    border-bottom-color: transparent;
    border-left-color: transparent;
}

details[open] > summary.dropdown-caret::after,
.dropdown-caret[aria-expanded="true"]::after { transform: rotate(180deg) }

/*** Header */
header { position: fixed; top: 0; left: 0; width: 100%; background: transparent; border-bottom: var(--globalBorder) }
#shopify-section-header { position: var(--headerPosition); top: 0; z-index: 99 }

header > grid c { display: flex; align-items: center }

      header { pointer-events: none; }
      header a, header .hamburger { pointer-events: all; }
      header .header-wrapper { height: 200px; display: flex; align-items: center; justify-content: space-between; padding: 0 20px; }
      .t-index .header-wrapper { height: 50px }
      @media (max-width:777px) {
    header > grid c { padding: calc(var(--padding) - var(--margin)) calc(var(--padding) - var(--buttonPadding)) }
}


header.hasBorders > grid > c:not(:last-child) { border-right: var(--globalBorder) }
header ul.inline { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: var(--navAlign); }
header .fire-menu { cursor: pointer; color: var(--linkColor); padding: var(--buttonPadding) 0 }
header .fire-menu:hover { color: var(--linkHover) }
header .fire-menu { color: white;
  font-size: 28px;
  text-transform: uppercase;
  font-family: 'Josefin Sans', sans-serif;
}
      header .fire-menu:hover {
        color: #f86ba2;
      }
#shopify-section-header header .menulink a.no-style { display: inline-block; padding: var(--buttonPadding) }
header .menulink summary { color: var(--linkColor); padding: var(--buttonPadding) }
header .menulink summary:hover { color: var(--linkHover) }

header .hasBorders > c:not(:last-child) { border-right: var(--globalBorder) }

/* Logo */
header .logo { font-size: var(--logoSize); font-weight: var(--logoFontWeight); font-style: var(--logoFontStyle); font-family: var(--logoFontFamily); --fontLine: 1 }

header img.logo { margin: 0 auto; width: auto; border-radius: 0; padding: 0 }
header .bogo a { display: contents }

      .t-index header img.logo { display: none; }
/* Alignment */
header .bogo     { position: absolute; top: 0; left: 50%; transform: translateX(-50%); justify-content: var(--logoAlign); }
header .menulink { justify-content: var(--navAlign); padding-inline: 0; }
header .accounts { justify-content: var(--accAlign) }

@media (max-width: 777px) {
    header .bogo { justify-content: flex-start }
    header .accounts { justify-content: flex-end  }
}

#shopify-section-header .accounts a.no-style { padding: var(--buttonPadding) }

/* Cart */
header .carto { padding: 0 0.5rem; color: var(--linkColor); font-family: "Josefin Sans", sans-serif; border-radius: var(--radius) }
header .carto::after { content: attr(data-count); text-indent: 0 }

header .hamburger .close { display: none }

.t-index header { margin-top: 20px; }
      
/* Dropdown menu */
@media (min-width: 778px) {
    details.dm > details-menu {
        position: absolute;
        z-index: 99;
        left: 0;
        max-width: 100%;
        width: 100vw;
        border-top: var(--globalBorder);
        border-bottom: var(--globalBorder);
        background: var(--bgColor);
    }

    details.dm > details-menu ul { display: flex; flex-wrap: nowrap; margin-inline: var(--navDropdownAlign) }
}

/* Footer */
footer { position: relative }
footer > flex { background: var(--globalBorderColor); gap: var(--globalBorderWidth); border-bottom: var(--globalBorder) }
footer > flex > c { flex: 1; width: 100%; padding: var(--padding); background: var(--bgColor) }

footer li { margin-bottom: calc(var(--margin) * 2) }

footer .mpti { display: flex; flex-direction: column }
footer .credits { display: flex; white-space: nowrap; color: white; background: linear-gradient(to right, #f86ba2,#fa5581,#f9ae55); padding: calc(var(--margin) * 2) var(--padding) }
footer .credits a { color: white }
footer .payments { padding: 1rem 2rem; border-bottom: var(--globalBorder) }

      @media (max-width:777px) { 
        footer .credits { flex-direction: column; text-align: center; } 
      }
footer [type="email"] { font-size:calc(var(--fontSize) + 1px) }

.ssocialss { min-width: 115px; width: 100%; flex-basis: 100% }

.ssocialss svg, .ssocialss .iconstrue span { display: none }
.ssocialss .iconstrue svg { display: block }
.ssocialss ul.iconstrue li { display: inline-block; margin: 0.5rem }

.ssocialss ul { display: flex; flex-wrap: wrap; justify-content: center; gap: 2.2rem; width: fit-content; margin: 0 0 0 auto }
.ssocialss li { margin: 0 }

            @media (max-width:777px) { 
        .ssocialss { min-width: 0; width: 100%; margin: 0 auto; } 
        .ssocialss ul { margin: 5px auto 0; }
      }
@media (max-width: 777px) {
    footer { margin-bottom: calc(var(--buyPlatformHeight) + var(--padding)) }
    footer .payments { padding: var(--padding) 0 }
    footer .payments .icons { border-bottom: var(--globalBorder); padding-bottom: var(--padding); text-align: center }

    footer .credits c { padding: var(--padding) }
    footer #shopify-credits:not(:empty) { border-top: var(--globalBorder); width: 100%; text-align: center }
}

.stick { position: sticky; top: 0 }
body.hpsticky .stick { position: sticky; top: calc(var(--headerHeight) + var(--padding) * 2) }

svg.icon { display: inline-block; width: calc(var(--iconSize) * 1.5); height: calc(var(--iconSize) * 1.2); max-width: fit-content; vertical-align: middle; fill: currentColor; transform: translateY(calc(100% - 105%)) }
svg.icon.icon-trash { min-width: 100%; max-width: unset }

/** Country swticher */
.disclosure { position: relative; width: max-content; margin-inline: auto }
.disclosure__button { 
    --buttonColor: var(--boxColor); 
    --buttonBgColor: var(--boxBgColor); 
    --buttonBorder: var(--boxBorder); 
    --buttonBorderColor: var(--boxBorderColor);
    --buttonBorderHover: var(--boxBorderHover);
    width: max-content 
}
.dropdown-caret[aria-expanded="true"]::after { transform: rotate(180deg)  }

.disclosure__list {
    position: absolute;
    z-index: 20;
    bottom: 110%;
    background: var(--boxBgColor);
    color: var(--boxColor);
    border: var(--globalBorder);
    border-radius: calc(var(--radius) / 3);
    overflow: hidden;
    overflow-y: auto;
    width: max-content;
    max-width: 250px;
    max-height: 55vh;
    margin: 0 auto!important;
    box-shadow: var(--globalShadow);
    right: 0;
}

/* center option-box */
@media (max-width: 777px) { 
    .disclosure__list { left: 50%; right: 50%; transform: translateX(-50%) } 
}

.disclosure__list li { margin: 0 }

.disclosure__list a {
    --linkHover: var(--boxColor);
    --linkColor: var(--boxColor);
    display: flex; 
    padding: var(--margin) calc(var(--margin) * 3);
    text-decoration: none;
    flex-direction: row;
    justify-content: space-between;
    gap: 1rem;
    border-bottom: 1px solid var(--globalBorderColor)
}

.disclosure__list li:last-child a { border: none }
.disclosure__list a.active { background: var(--boxColor); color: var(--boxBgColor); --linkColor: var(--boxBgColor) }

/* Mobile navigation */
.mobnav { max-height: 0; display: none }

  	.mobnav {
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      max-height: 100vh;
      min-height: 100px;
      display: block;
      transform: translateX(0);
      padding: 0 var(--padding);
      background: var(--bgColor);
      z-index: 999;
      transform: translateX(-100%);
      transition: transform 0.25s;
    }
  
    body.open-menu .mobnav {
        transform: translateX(0);
    }
      
    .mobnav a {
      font-family: "Josefin Sans", sans-serif;
      text-transform: uppercase;
    }

      @media (max-width: 777px) {
        .mobnav {
          color: white;
          background: transparent;
          padding: 0;
          width: 100%;
        }
        
        .mobnav nav {
          position: absolute;
          top: 50%;
          transform: translateY(-50%);
          font-size: 42px;
          text-align: center;
          width: 100%;
        }
        
        .mobnav a,
        .mobnav button {
          color: white;
        }
        
        .mobnav button {
          position: absolute;
          right: 0;
          width: 70px;
        }
        
        .mobnav button span {
          font-size: 42px;
        }
        
        .mobnav:after {
          content: '';
          position: absolute;
          left: 0;
          top: 0;
          background: linear-gradient(#f86ba2,#fa5581,#f9ae55);
          opacity: 0.8;
          height: 100%;
          width: 100%;
          z-index: -1;
        }
      }
      
      @media (min-width: 778px) {
        .mobnav {
          color: white;
          background: transparent;
          width: 50%;
        }
        
        .mobnav nav {
          position: absolute;
          top: 50%;
          transform: translateY(-50%);
          font-size: 42px;
        }
        
        .mobnav a,
        .mobnav button {
          color: white;
        }
        
        .mobnav button {
          position: absolute;
          right: 25%;
          width: 70px;
        }
        
        .mobnav button span {
          font-size: 42px;
        }
        
        .mobnav:after {
          content: '';
          position: absolute;
          left: 0;
          top: 0;
          background: linear-gradient(to right, #f86ba2,#f9ae55, transparent);
          opacity: 0.8;
          height: 100%;
          width: 100%;
          z-index: -1;
        }
      }
@media (max-width: 777px) {
    body.open-menu { overflow: hidden }
}

/* Search bar */
#searchbar { display: none; }
#topsearch { margin: 0 }

body.open-search #searchbar {
    display: block;
    position: relative;
    top: 0;
    left: 0;
    right: 0;
    padding: 0 var(--padding) var(--padding);
    background: var(--bgColor);
    border-bottom: var(--globalBorder);
}

@media (max-width:777px) { body.open-search #searchbar { padding: 0 var(--margin) var(--margin); height: 100% } }

/* Buy button */
button.is-primary,.button.is-primary  { font-family: "Josefin Sans", sans-serif; color: white; background: linear-gradient(to right, #f86ba2,#fa5581,#f9ae55); max-width: 220px; border-radius: 0; }
button.is-primary:hover,.button.is-primary:hover { --buttonBorderHover: var(--buyButtonBorderHover) }

/* Cart */
.cart:not(.cart-page) { 
    overflow: hidden;
    padding: 0 20px 50px;
    background: transparent;
    position: fixed;
    top: 0;
    left: 100%;
      transition: left 0.25s;
  	height: 100vh;
      width: 100%;
    z-index: 99;
    font-family: "Josefin Sans", sans-serif;
      text-transform: uppercase;
  color: white;
}
  
  .open-cart .cart:not(.cart-page) {
    left: 0;
  }

  .mobnav button {
    font-family: var(--hFontFamily);
      }
  
  .cart button span {
    font-size: 42px;
    color: white;
    font-family: var(--hFontFamily);
  }
  
  @media (max-width: 777px) {
    
    .cart:not(.cart-page):after {
          content: '';
          position: absolute;
          left: 0;
          top: 0;
          background: linear-gradient(#f86ba2,#fa5581,#f9ae55);
          opacity: 0.8;
          height: 100%;
          width: 100%;
          z-index: -1;
    }
    
  }
  
  .cart:not(.cart-page):after {
    position: fixed;
    transition: all 0.25s;
    left: 100%;
  }
  
    .open-cart .cart:not(.cart-page):after {
      left: 0;
    }
  
  @media (min-width: 778px) {
    .cart:not(.cart-page) {
      transition: left 0.25s;
      left: 100%;
      padding-left: 25vw;
      width: 75%;
    }
    
    .cart:not(.cart-page):after {
          content: '';
          position: fixed;
          left: 100%;
          top: 0;
          background: linear-gradient(to right, transparent, #f9ae55, #f86ba2);
          opacity: 0.8;
          height: 100%;
          width: 100%;
          z-index: -1;
    }
    
    .open-cart .cart:not(.cart-page) {
      left: 25%;
    }
  }
.cart .header { padding-inline: var(--margin) }

  .cart__products {
    padding: 20px 40px;
  }
  
  @media (max-width: 777px) {
    .cart__products {
	    padding: 20px;
    }
  }
  
  .cart__product-item {
    display: flex;
    position: relative;
    z-index: 1;
    margin-bottom: 20px;
    color: black;
  }
  
  .cart__product-image {
    height: 185px;
    padding: 0;
    margin-bottom: 5px;
  }
  
  .cart__product-info {
    display: flex;
    flex-wrap: wrap;
    padding: 20px;
    width: 100%;
  }
  
  @media (max-width: 777px) {
    .cart__product-info {
      font-size: 12px;
    }
  }
  
  .cart__product-item:before {
    content: '';
    position: absolute;
    top: 5px;
    left: 5px;
    height: 100%;
    width: 100%;
    background: linear-gradient(to right, #f86ba2,#fa5581,#f9ae55);
    z-index: -2;
  }
  
  .cart__product-item:after {
    content: '';
    position: absolute;
    top: 0px;
    left: 0px;
    height: calc(100% - 5px);
    width: calc(100% - 5px);
    background: white;
    z-index: -1;
  }
  
  .cart__product-name,
  .cart__product-price {
    width: 50%;
  }
  
  .cart__product-price {
    text-align: right;
  }
  
  .total-price {
    color: black;
    padding: 10px;
    font-size: 22px;
    position: relative;
    z-index: 1;
  }
  
    .total-price:before {
    content: '';
    position: absolute;
    top: 5px;
    left: 5px;
    height: 100%;
    width: 100%;
    background: linear-gradient(to right, #f86ba2,#fa5581,#f9ae55);
    z-index: -2;
  }
  
  .total-price:after {
    content: '';
    position: absolute;
    top: 0px;
    left: 0px;
    height: calc(100% - 5px);
    width: calc(100% - 5px);
    background: white;
    z-index: -1;
  }
  
  .cart__product-quantity-control {
    display: flex;
    justify-content: center;
    align-items: center;
  }
  
  .cart__product-quantity-control button:first-of-type {
    padding-left: 0;
  }
  
  .cart__product-quantity-control + button {
    color: black;
    margin-right: 0;
    width: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0;
  }
  
  .cart__product-quantity-control + button span {
    color: black;
  }
  
  .cart__product-quantity {
    display: flex;
    justify-content: space-between;
    width: 100%;
  }
  
.times { user-select: none; cursor: pointer; font-size: 2.4rem }
.smaller { line-height: 1.2; font-size: 80%; margin-top: var(--margin) }


.cart .subtotal { padding: var(--margin); border-block: var(--globalBorder) }
.cart-page .subtotal { padding: 0; border: none; font-size: var(--h6Size) }

.cart .shippingtaxes { margin-bottom: var(--padding); padding-inline: var(--margin); }
.cart .product-option :where(dt,dd) { display: inline; margin: 0; font-weight: 500 }

.cart .entry { padding-left: var(--margin); border-right: var(--globalBorder) }
.cart .entry grid:not(:last-child) { border-bottom: var(--globalBorder) }
.cart .entry grid:first-child { border-top: var(--globalBorder) }
.cart .entry grid.productsInCart > c { padding: var(--padding) 0 }
.cart .name { text-align: start; text-transform: lowercase; text-transform: capitalize; overflow: hidden;
     text-overflow: ellipsis; line-height: 1.4 }
.cart input.input-number { margin: var(--margin) 0; width: 50px; text-align: center }

.cart .empty { text-align: center; margin: var(--padding) }
.cart-page .empty { display: grid; place-items: center; min-height: 500px }
.cart :where(.plus, .minus) { cursor: pointer; user-select: none; font-size: 2rem; padding: var(--buttonPadding) }
.cart .qtyinput { display: grid; place-items: center; border-radius: 100%; width: 2.5rem; height: 2.5rem; border: 1px solid var(--globalBorderColor) }

.cart .empty { position: relative; color: black; padding: 20px; font-size: 28px; margin: 25vh auto 0; z-index: 1; max-width: 350px;}
  
    .cart .empty:before {
    content: '';
    position: absolute;
    top: 5px;
    left: 5px;
    height: 100%;
    width: 100%;
    background: linear-gradient(to right, #f86ba2,#fa5581,#f9ae55);
    z-index: -2;
  }
  
  .cart .empty:after {
    content: '';
    position: absolute;
    top: 0px;
    left: 0px;
    height: calc(100% - 5px);
    width: calc(100% - 5px);
    background: white;
    z-index: -1;
  }
 
.cart .gocheckout {
    top: -1px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
  	padding: 0 40px;
  font-size: 28px;
}
  
  @media (max-width: 777px) {
    .cart .gocheckout {
      padding: 0 20px;
      flex-direction: column;
    }
  }
  
  .cart .gocheckout button {
    min-width: 220px;
  }
  
  @media (max-width: 777px) {
    .cart .gocheckout button {
      margin-top: 20px;
    }
  }

  .cartCounter #counter {
	position: absolute;
    top: 0;
    left: 5px;
    z-index: 2;
    width: 75px;
    height: 63px;
    transform: translateY(-18px);
  }
  
.cartCounter #counter::before {
	content: '';
    position: absolute;
    bottom: -2px;
    right: 0px;
    border-radius: 50%;
    height: 36px;
    width: 36px;
    background: linear-gradient(to right, #f86ba2,#fa5581,#f9ae55);
    z-index: -1;
}
  
  .cartCounter #counter::after {
    position: absolute;
    bottom: 0;
    right: 2px;
    /* transform: translate(-50%, -50%); */
    border-radius: 50%;
    height: 31px;
    line-height: 31px;
    text-align: center;
    width: 31px;
    background: white;
    z-index: -1;
}
  
  
  .cartCounter {
    position: relative;
    padding: 0;
    pointer-events: all;
  }
  
  .cartCounter a {
    display: block;
    margin-top: -25px;
    padding: 0 !important;
  }
  
  .cartCounter img {
    	width: 75px;
  }
  
  .cartCounter #counter {
  position: absolute;
    bottom: 0;
    right: 5px;
    z-index: 2;
  }
  
@media (min-width: 777px) and (max-width: 1020px) {
    .cart .controllers { flex-wrap: wrap }
    .cart .controllers c { width: 100% }
}

@media (max-width: 777px) {
    .cart .entry { border-right: 0; padding: var(--padding) var(--margin) }
    .cart .discountBox { margin: var(--padding) 0 }
    .cart input.input-number { padding: var(--margin) }
    .cart :where(.plus, .minus) { padding: var(--buttonPadding) }

    body:where(.open-menu,.open-cart,.open-search) { overflow: hidden }

    body:where(.open-menu,.open-cart,.open-search) #header { display: none }
}

body.open-cart .cart { max-height: calc(var(--vh, 1vh) * 100); border-bottom: var(--globalBorder); overflow-y: auto }
body.hpinherit.open-cart:not(.hideheader) #shopify-section-header { position: sticky; top: 0 }
body.hpinherit.open-cart.hideheader .cart { position: fixed; top: 0 }

/*** Cart PAGE */
main section.cart { max-height: 100%; border-bottom: var(--globalBorder) }
main section.cart > * { max-width: 1080px; margin: 0 auto }

.is-contents { display: contents }

.cart-page { height: auto; background: transparent }
.cart-page.empty { min-height: calc(100vh - 57.6vh); display: grid; place-items: center }

.cart-page .cart-footer { margin: var(--padding) auto; width: 100% }
.cart-page.empty .cart-footer { display: none }

.cart-page .items .header { border-top: var(--globalBorder); border-bottom: var(--globalBorder);margin-top: var(--padding);padding: var(--margin) 0 }

.cart-page .items grid { --rowGap:var(--padding); --columnGap:var(--padding) }
.cart-page .items .item { border-bottom: var(--globalBorder) }
.cart-page .items .item .image { display: grid; place-items: center; height: 100%; border-right: var(--globalBorder) }
.cart-page .items .item .image img { min-width: 60px; width: 100%; }

@media (max-width: 777px) {
    .cart-page { padding: 0 var(--margin) }
    c[js=end].actions { justify-self: initial!important }
    .cart-page .items .item { --rowGap: 1rem; --columnGap: 1rem }
    .cart.cart-page .name { padding-top: var(--padding) }

    .cart-page .items .item .image { grid-row-start: 1; grid-row-end: 3 }

    .cart .summary { bottom: var(--globalBorderWidth); background: var(--bgColor) }
      
      .cart button.is-primary { display: block; margin-left: auto; margin-right: auto; }
}

/** Newsletter popup */
#newsletterbox {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    transition: all 0.3s ease-in-out;
    background: rgba(255,255,255,.8);
    display: none;
    z-index: 999;
    padding-inline: var(--margin);
}

.newsletterbox {
    position: relative;
    max-width: 830px;
    overflow: hidden;
    background: var(--newsletterpopupBg, #FFF);
    color: var(--newsletterpopupColor, #000);
    border: var(--globalBorder);
    padding: var(--padding);
    border-radius: var(--radius);
}

.newsletterbox .cont { max-width: 400px; padding: 1rem; text-align: start }
.newsletterbox #popSubscribe { --buttonColor: var(--newsletterpopupColor); --buttonBgColor: var(--newsletterpopupBg) }
.newsletterbox .cont .controls { margin-bottom: 1rem }
.newsletterbox .cont .controls .x3 { font-size: 2.6rem; line-height: 1 }

.newsletterpopupBody { margin-bottom: var(--padding) }

body.newsletter-active #newsletterbox { display: flex }

/*** Cookie Jar */
#cookies-banner {
    display: none;
    background-color: var(--cookieBg, #FFF);
    color: var(--cookieColor, #000);
    border: var(--globalBorder);
    border-radius: calc(var(--radius) / 3);
    padding: var(--padding);
    position: fixed;
    z-index: 998;
    right: 0;
    bottom: 1rem;
    left: 0;
    max-width: 70ch;
    margin: 0 auto;
    overflow: hidden;
}

#cookies-banner button { --buttonColor: var(--cookieButtonColor); --buttonBgColor: var(--cookieButtonBg); --buttonBorderColor: var(--cookieButtonBg) }
@media only screen and (max-width: 777px) { #cookies-banner { bottom: var(--padding); margin-inline: var(--margin); padding: var(--padding) } }

/*** Homepage */
/* Hero */
.hero { position: relative; width: 100vw; overflow: hidden }
.hero picture img { padding: 0; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center center; opacity: 1; transition: opacity 500ms ease 0s }
.hero__double img { padding: 0; }
  @media (min-width: 778px) {
    .hero__double img { width: 50%; }
    .hero__double {
    display: flex;
}
  }
@media (min-width: 778px) {
  .hero__mobile {
    display: none;
  }

  .hero__desktop {
    display: block;
  }
}

@media (max-width: 777px) {
  .hero picture {
    display: none;
  }

  .hero__desktop {
    display: none;
  }
}
  
  @media (min-width: 778px) {
    picture {
      display: block;
    }
  }

.hero img { padding: 0; }
.hero .meta {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 88;
    width: 100%;
    height: 100%;
    padding: calc(var(--padding) * 2);
}
  
.hero .meta .hero__logo {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  margin: 0 auto;
  width: 650px;
}
  
  @media (max-width: 777px) {
    .hero .meta .hero__logo {
      width: 75%;
    }
  }

.hero .meta grid { height: 100% }

.hero .meta a { text-decoration: none; border:0 }
.hero .meta h2 {  color: var(--heroMetaH1Color); --linkColor: var(--heroMetaH1Color); --linkHover: var(--heroMetaH1Color) }
.hasBg { display: inline; padding: var(--margin); background: var(--heroMetaH1Bg); border-radius: calc(var(--radius) / 7) }
.hero .button.is-customized { font-family: 'Josefin Sans', sans-serif; --buttonBgColor: var(--heroMetaH1Bg); --buttonColor: var(--heroMetaH1Color); box-shadow: 2px 2px 2px rgb(0 0 0 / 75%); position: absolute; top: calc(50% + 100px); left: 50%; transform: rotate(-22deg); background: linear-gradient(#f86ba2, #fa5581, #f9ae55); color: white; }

  @media (min-width: 778px) { .hero .button.is-customized:hover { animation: shake 0.82s cubic-bezier(.36,.07,.19,.97) both; } }

  @media (max-width: 777px) { .hero .button.is-customized { left: 50% ; transform: translateX(-50%); font-size: 12px; top: calc(50% + 90px) } }

  @keyframes shake {
  10%, 90% {
    transform: rotate(-25deg);
  }
  
  20%, 80% {
    transform: rotate(-20deg);
  }

  30%, 50%, 70% {
    transform: rotate(-24deg);
  }

  40%, 60% {
    transform: rotate(-22deg);
  }
}
.gs-title { padding: var(--padding); border-bottom: var(--globalBorder) }
@media (max-width: 777px) { .gs-title { text-align: center } }

/* Hero text */
.hero-text { border-bottom: var(--globalBorder); padding: var(--padding) }
.hero-text p { line-height: 1.25 }
.hero-text .button { margin: var(--padding) 0 }

/* Hero video */
.hero-video { margin-top: -1px }
.hero-video iframe { padding: 0; border-radius: var(--radiusImg) }
.hero-video, .hero-double { display: flex; overflow: hidden }


/* Hero double */
.hero-double c { position: relative }
.hero-double c:nth-child(odd) { border-right: var(--globalBorder) }
.hero-double c:nth-child(even) { border-right: var(--globalBorderWidth) solid transparent }
.hero-double c:nth-child(3), .hero-double c:nth-child(4) { border-top: var(--globalBorder) }
.hero-double.blox-3 { border-bottom: var(--globalBorder) }

.hero-double img { width: 100%; padding: 0; }
.hero-double .title {
    position: absolute;
    margin: calc(var(--padding) * 1.6);
    max-width: calc(100% - var(--padding) * 2);
    width: fit-content;
    border-radius: calc(var(--radius) / 7);
}

@media (max-width: 777px) {
    .hero-double c { border-right: 0!important; border-bottom: var(--globalBorder) }
    .hero-double c:where(:last-child,:nth-child(3),:nth-child(4)) { border-bottom: 0 }
    .hero-double .title { margin: calc(var(--padding) + var(--margin)); max-width: calc(100% - var(--padding) * 2) }
    .hero-double c:nth-child(3) { border-top: none }
}

/* Hero Image + text */
.image-text { border-bottom: var(--globalBorder) }
.image-text .meta { padding: var(--padding) }
.image-text .meta > flex { height: 100% }
  .image-text img { padding: 0 }
  
/* Featured product section */
.featured-product { border-bottom: var(--globalBorder); --expandMediaHeight: 700px }
.featured-product .short-desc { font-size: var(--fontSize) }

.featured-product .product-page .item .meta { width: 100%; padding: 0; padding-top: var(--padding) }
.featured-product .product-page .item .meta.lrg[order="1"] { border-right: var(--globalBorder) }
.featured-product .product-page .item .meta.lrg[order="3"] { border-left: var(--globalBorder) }
.featured-product #buyplatform { position: inherit!important }
.featured-product .item .meta .sharing { border:none }
.featured-product.onboarding .meta.lrg { padding: var(--padding) }
.featured-product.onboarding .meta.lrg section:not(:first-child) { margin-block: var(--padding) }
.featured-product .title { padding: 0 } 
.featured-product .product-page .gallery { position: relative; isolation: isolate }

.featured-product .is-xpand { position: absolute; z-index: 99; top: calc(var(--expandMediaHeight) - 70px); width: 100%; margin: 0 auto; text-align: center }
.featured-product [data-menu]:checked + .is-xpand { top: unset; bottom: calc(var(--padding) + var(--margin)) }

.featured-product .is-xpand .viewless { display: none }
.featured-product [data-menu]:checked + .is-xpand .viewless { display: inline }
.featured-product [data-menu]:checked + .is-xpand .viewall { display: none }

.featured-product .xpand { height: var(--expandMediaHeight); overflow: hidden }
.featured-product [data-menu]:checked ~ .xpand { height: 100%; pointer-events: all }
.featured-product .xpand::after {
    content: "";
    display: block;
    position: sticky;
    bottom: -3px;
    left: 0;
    height: 150px;
    background: linear-gradient(to bottom,rgba(0,0,0,0) 0, var(--bgColor) 100%);
    width: 100%;
}

.featured-product [data-menu]:checked ~ .xpand::after { height: 0; background: none }
.t-index .featprod { position: sticky; bottom: calc(-1*var(--globalBorderWidth)); margin-top: calc(-1*var(--globalBorderWidth)); z-index: 8; background: var(--bgColor); border-top: var(--globalBorder) }

.border-bottom { border-bottom: var(--globalBorder) }

@media (max-width: 777px) { 
    .featured-product.onboarding .image { border-bottom: var(--globalBorder) }
    .featured-product { --expandMediaHeight: 500px; border-bottom: 0 }
    .featured-product .product-page .gallery { border-right: 0 }

    .featured-product .product-page .item .meta.lrg { border-inline: 0!important }

    .t-index :where(.stickyTitle,.gs-title) {
        position: sticky; 
        top: 0;
        z-index: 15; 
        isolation: isolate; 
        background: var(--bgColor);
        padding: var(--padding); 
        border-bottom: var(--globalBorder);
    }

    .t-index :where(.stickyTitle,.gs-title) { max-width: 100%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis }

    body.hpsticky.t-index :where(.stickyTitle,.gs-title) { top: calc(var(--headerHeight) + var(--noticerHeight,0px)) }
    .t-index .loadmore { position: sticky; bottom: 0; margin-top: calc(-1*var(--globalBorderWidth)); z-index: 16; background: var(--bgColor); border-top: var(--globalBorder) }

}

@media (min-width: 777px) { .featured-product.onboarding .image { border-right: var(--globalBorder) } }

/* Logo list */
.logo-list { border-bottom: var(--globalBorder); padding: var(--padding) 0 }
.logo-list img { max-width: 150px; border-radius: 0 }
.logo-list svg { max-width: 150px; min-height: 150px; height: 100% }

/* Reviews */
.reviews { border-bottom: var(--globalBorder) }

.reviews { text-align: center }
.reviews .box > c { padding: var(--padding) }
.reviews .box > c:nth-child(odd) { border-right: var(--globalBorder) }
.reviews .review { max-width: 400px; margin: var(--padding) auto }
.reviews .name { display: block; line-height: 1; margin-top: var(--margin) }
.reviews .avatar img { border: var(--globalBorder); overflow: hidden; max-width: 90px; border-radius: 100%; margin: 0 auto; text-align: center; padding: .3rem }

.reviews .svg-placeholder { width: 100px; height: 100%; max-height: 100px; min-height: 0; border: var(--globalBorder); border-radius: 100% }

@media (max-width:777px) {
    .reviews .box > c, .reviews .box > c:nth-child(odd) { border-right: 0; border-bottom: var(--globalBorder) }
    .reviews .box > c:last-child { border-bottom: 0 }
}

/* Noticer Marquee */
.noticer { 
    border-bottom: var(--globalBorder);
    padding: calc(var(--margin) * 2) 0;
    width: 100%;
    overflow: hidden;
    background: linear-gradient(to right,#f86ba2,#fa5581,#f9ae55);
    color: white;
    position: fixed;
    top: 0;
    left: 0;
    display: flex;
    align-items: center;
    height: 50px;
    font-family: 'Josefin Sans', sans-serif;
}

.noticer li {padding:0 30px; margin:0; text-align:center }

      .noticer a { color: white; }
      .noticer a:hover { color: white; text-decoration: none; }
      
/*** Product card */
.product { position: relative }
.product a, .product a:hover { text-decoration: none }

.product .card { 
    display: grid;
    width: 100%;
    position: relative; 
    isolation: isolate;
    background: var(--cardBg);
    overflow: hidden;
    --color: var(--cardColor);
    --linkColor: var(--cardColor);
    --linkHover: var(--cardColor);
}

.product .card .cover { position: relative }
.product .card .cover .secondary { display: grid; place-items: center; position: absolute; inset: 0; opacity: 0; transition: opacity 250ms var(--easeInOutQuad); overflow: hidden }

.product .card:hover .cover.hasHover .primary { opacity: 0; transition: opacity 300ms var(--easeInOutQuad) }
.product .card:hover .cover .secondary { opacity: 1 }

.product .card .cover .secondary picture { display: grid; place-items: center; height: 100%; width: 100% }
.product .card .cover .secondary picture img { width: 100% }

.product .card:nth-child(3n+3) { border-right-color: transparent }

@media(max-width: 777px) { 
    .product .card { border-inline: 0!important; }
    .product .card .cover img { object-fit: cover; max-height: 500px } 
}

.cartPriceAdd { display: block }
.cartLoader { display: none }
.cartButton.loading .cartLoader { display: block }
.cartButton.loading .cartPriceAdd { display: none }
.product form {display: contents; height: 0 }

/* Product Card v2 aka classic */
.product .card.v2 { position: relative; min-height: auto }
.product .card.v2 :where(.prices, .soldout, .quickBuy) { var(--margin) }
.product .card.v2 :where(.actions, .meta) { opacity: 1 }
.product .card.v2 a { display: flex; flex-direction: column; gap: var(--margin); }
.product .card.v2 .prodtitle { margin: 0; --h3size: calc(var(--hSizeBase) * 1.3rem) }

.product .card.v2 { overflow: visible; transition: all 0.25s }
      
@media (min-width: 777px) {
.product .card.v2::after { content: ''; position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; background: linear-gradient(#f86ba2,#fa5581,#f9ae55); z-index: -1; transition: all 0.25s; }
      .product .card.v2:hover::after { top: 20px; left: 20px; }
      .product .card.v2:hover { transform: translate(-20px, -20px); }
}
      
.product .card.v00 :where(.prodtitle,.prices,.soldout) {
    margin: 0 var(--buttonPadding);
    background: var(--cardTextBg);
    color: var(--cardColor);
    display: inline;
    width: fit-content;
    padding: var(--margin);
    border-radius: calc(var(--radius) / 7);
}

.product .card.v2 img { object-fit: var(--cardObjectFit, cover); aspect-ratio: var(--cardAspectRatio, 1/1); margin: 0 auto }
      .product .card.v2 :where(a, h3, .prices, .soldout) { color: white; }

.product .card .old-price { margin-right: var(--margin) }
.product .card.v2 .quickBuy { margin-top: auto }
.product .card.v2 .soldout { white-space: nowrap }

/* Product Card v0 aka default */
.product .card img { min-height: 250px; max-height: 600px; padding: 0; }

.product .card.v00 .quickBuy { margin-bottom: 0 }

.product .card.v00 :where(.cover,a) { margin-bottom: 0 }

.card.v2:not(.v00) .itsOverlay {
    flex-direction: row;
    justify-content: space-between;
    align-items: center; 
  	width: 100%; 
  	text-align: center; 
  	padding: 20px; 
  	margin-top: auto;
}
      
      .card.v2:not(.v00) .itsOverlay a h3 {
          font-family: 'Josefin Sans', sans-serif;
          text-transform: uppercase;
      }
      
      @media (min-width: 777px) {
        .card.v2:not(.v00) .itsOverlay { 
            	background: white; 
  	position: absolute;
  	top: 50%;
  	left: 50%;
  	transform: translate(-50%, -50%);
 	pointer-events: none;
  	width: calc(100% - 60px);
  	opacity: 0;
        }
      }
      
      .card.v2:not(.v00):hover .itsOverlay {
        opacity: 1;
      }
      
.card.v2:not(.v00) .itsOverlay::after { content: ''; position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; background: linear-gradient(to right, #f86ba2,#fa5581,#f9ae55); z-index: -1; transition: all 0.25s; }

.card.v00 .itsOverlay {
    position: absolute;m
    inset: 0;
    display: flex;
    flex-direction: column;
    max-height: calc(100% - var(--padding));
}
  
@media (max-width: 777px) {
  .card.v2:not(.v00) .itsOverlay {
    opacity: 1;
    width: auto;
    padding: 10px;
  }
}
      
body.ip--padding .card.v00 .itsOverlay { padding: var(--padding) }
body.ip--margin .card.v00 .itsOverlay { padding: var(--margin) }

@media (min-width: 777px) {
    .product .card.v2 .primary img { max-height: 600px }
    .product .card.v00.cardHoverQuickBuy .quickBuy { opacity: 0 }
    .product .card.v00.cardHoverQuickBuy:hover .quickBuy { opacity: 1 }
}

/* if aspect ratio is set to landscape and cardHoverQuickBuy is active */
.cardHoverQuickBuy.aspectRatioLandscape .itsOverlay { position: relative; padding-bottom: var(--padding); max-height: 100% }
.product .card.v00.cardHoverQuickBuy.aspectRatioLandscape .quickBuy { opacity: 1 }

/* Quick buy button */
.shopify-payment-button { margin: var(--margin) 0 }

.shopify-payment-button__button--branded,
.shopify-payment-button__button--unbranded,
.shopify-payment-button__button, 
.shopify-payment-button__more-options,
.shopify-payment-button__button--unbranded:hover,
.shopify-payment-button__button:hover, 
.shopify-payment-button__more-options:hover {
    font-weight: 700!important;
    border-radius: var(--radius)!important;
    background: var(--buyButtonBgColor)!important;
    color: var(--buyButtonColor)!important;
    border: var(--buttonBorderWidth) solid var(--buyButtonBorderColor)!important;
    overflow: hidden!important;
}

.shopify-payment-button__button--branded:hover,
.shopify-payment-button__button--unbranded:hover,
.shopify-payment-button__button:hover, 
.shopify-payment-button__more-options:hover {
    border-color: var(--buyButtonBorderHover)!important;
}

.shopify-payment-button__more-options { margin:var(--margin) auto }
.shopify-payment-button__button--hidden { display:none!important }

.shopify-payment-button__more-options {
    margin: var(--margin) auto;
    background: none!important;
    border: none!important;
    color: currentColor!important;
    font-size: 80%;
}

.shopify-payment-button__more-options:hover { color: currentColor!important; background: none!important; border: none!important }

@media (max-width: 777px) { .product .card.v2 img { height: 100%; max-height: 650px } }
@media (max-width: 400px) { .product .card.v2 img { height: 100%; max-height: 450px } }
@media (max-width: 1281px) { .AddToCartForm .actions { --grid-tc: repeat(1,1fr) } }

/*** Search page */
.search-page .results > grid > c:not(:nth-child(3n+3)):not(:only-child) { border-right: var(--globalBorder) }
.search-page .apage { display: grid; place-items: center; min-height: 250px; border-bottom: var(--globalBorder) }
.search-page :where(.blog-listing, .blog-listing .posts) { display: grid; min-height: 100% }
.search-page .product { display: grid }
.search-page .product .card, .search-page .blog-listing .bp { border-right: none }

input[type=checkbox]:not(.switch) { border-radius: 0 }

@media (max-width: 777px) {
    .search-page .intro > grid > c:not(:last-child) { padding: 1rem var(--padding); border-right: 0; border-bottom: var(--globalBorder) }
    .search-page .results > grid > c { border-right: none!important }
    .search-page .blog-listing .bp { padding: var(--padding) 0 }
}

/*** Collection - Product Listing Page */
.listing-page .products { border: 0 }

:where(.listing-page, .search-page) .intro > grid { border-bottom: var(--globalBorder) }
:where(.listing-page, .search-page) .intro > grid > c { padding: var(--padding); border-right: var(--globalBorder) }
:where(.listing-page, .search-page) .intro .filterBlock { padding: 0; align-self: center }
:where(.listing-page, .search-page) .intro > grid > c:last-child { border-right: none }

.listing-page .intro .featuredMedia { padding: 0; border: 0; border-bottom: var(--globalBorder); max-height: 500px }
.listing-page .intro .featuredMedia img { object-fit: cover; object-position: center; height: 100%; max-height: 500px; height: auto }

.listing-page .intro .featuredMedia.coll { max-height: 200px }
.listing-page .intro .featuredMedia.coll img { width: auto; max-height: 200px }

:where(.listing-page,.search-page) .intro .filter > summary { margin: 0 auto; padding: var(--padding) }
:where(.listing-page,.search-page) .intro .padd { padding: var(--padding) }
:where(.listing-page,.search-page) .intro form details { padding: var(--margin) var(--padding); border-bottom: var(--globalBorder) }
:where(.listing-page,.search-page) .intro details > div { padding: var(--padding) 0 }
:where(.listing-page,.search-page) .intro .actiions { margin-top: var(--padding) }

:where(.listing-page,.search-page) .intro details { position: relative }

:where(.listing-page,.search-page) .intro #FacetFiltersFormMobile {
    position: absolute;
    background: var(--bgColor);
    left: 0; right: 0;
    margin-inline: var(--padding);
    margin-top: calc(-1 * var(--padding));
    box-shadow: var(--globalShadow);
    border-radius: calc(var(--radius) / 3);
    border: var(--globalBorder);
    z-index: 10;
}

#FacetFiltersFormMobile summary { padding: var(--buttonPadding) 0 }
#FacetFiltersFormMobile .sortByBlock { padding-bottom: var(--padding) }

.filter .dropdown-caret { cursor: pointer; user-select: none; font-size: var(--h3Size); text-transform: uppercase }

@media (min-width: 777px) { :where(.listing-page,.search-page) .intro .filterBlock { padding: 0 } }

@media (max-width: 777px) {
    .listing-page .intro .featured { border-bottom: 0 }
    :where(.listing-page,.search-page) .intro > grid { border-bottom: 0 } 
    :where(.listing-page,.search-page) .intro > grid > c { border-bottom: var(--globalBorder); border-right: 0 }
}

.loadmore { text-align: center; border-bottom: var(--globalBorder) }
.loadmore:empty { border: none; }
.loadmore a { display: inline-block; padding: var(--padding) }

.loadmore span { display: inline; margin-inline: .5rem }
.loadmore span.current { border: var(--globalBorder); border-radius: var(--radius); padding: var(--buttonPadding) }
.loadmore span a { text-decoration: none; padding: var(--buttonPadding) }

#ajaxPagination { padding: var(--margin) }

/*** Product Page */
.product-page .item .meta { padding-top: calc(var(--padding) / 2); margin-bottom: calc(-1*var(--globalBorderWidth)) }
.product-page .item .meta.small-only { padding-top: 0; border-bottom: var(--globalBorder) }
.product-page .item .meta.lrg[order="1"] { border-right: var(--globalBorder) }
.product-page .item .meta.lrg[order="3"] { border-left: var(--globalBorder) }
.product-page .item .meta section { padding: var(--margin) var(--padding); width: 100%; max-width: 100vw; }
.product-page .item .meta .contents { padding: var(--margin) 0 }
.product-page .item .meta .contents .title { margin-bottom: var(--margin) }
.product-page .item .meta .contents div { margin-bottom: var(--margin) }
.product-page .item .meta .xform { top: 0; z-index: 3; padding: var(--margin) var(--padding); background: var(--bgColor); border-bottom: var(--globalBorder) }
body.hpsticky .product-page .item .meta .xform { top: calc(var(--headerHeight, 0px) + var(--noticerHeight, 0px)) }
    .product-page .item .meta product-form { display: block; padding: var(--margin) 0 }
.product-page .item .meta section.cartNotes { padding: 0; margin: var(--margin) 0 }

.product-page .item .meta .qtyBox { background: var(--boxBgColor); color: var(--boxColor); border: var(--boxBorderWidth) var(--boxBorderStyle) var(--boxBorderColor); border-radius: var(--boxRadius); padding: 0; padding-left: var(--boxPadding) }
.product-page .item .meta .qtyBox:hover { border-color: var(--boxBorderHover) }
.product-page .item .meta .qtyBox:focus-within { outline: 1px solid var(--color)!important; outline-offset: 2px; border-color: var(--boxBorderHover) }
.product-page .item .meta .qtyBox label { margin: 0; word-break: kee∂çp-all }
.product-page .item .meta .qtyBox input { outline: none!important; border: none; margin: 0 }

.product-page .item variant-selects, .product-page .item variant-radios { text-align: center; display: grid; gap: var(--padding); padding: var(--margin) 0 }
.product-page .item variant-radios :where(input) { display: none }

.product-page .sellingPlan { margin: var(--margin) 0 }

[shopify-payment-terms] { display: block; padding: var(--margin) var(--padding) }

.product-page #prodesc > *:last-child { border-bottom: var(--globalBorder) }

.product-page .item variant-radios label { font-family: "Josefin Sans", sans-serif; text-transform: uppercase; padding: 10px 20px; margin: 0; border: var(--globalBorder); font-weight: normal; border-radius: var(--radius) }

.product-page variant-radios input[type=radio]:checked+label { background-color: transparent; color: black; position: relative; z-index: 1; }
.product-page variant-radios input[type=radio]:checked+label:before { content: ''; position: absolute; top: 5px; left: 5px; width: calc(100% - 10px); height: calc(100% - 10px); background: white; z-index: -1; border-radius: var(--radius) }
.product-page variant-radios input[type=radio]:checked+label:after { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(to right, #f86ba2,#fa5581,#f9ae55); z-index: -2; border-radius: var(--radius) }
.product-page--scrunchies variant-radios input[type=radio]+label, .product-page--mens variant-radios input[type=radio][name="Color"]+label { background-size: 0 }
.product-page--scrunchies variant-radios input[type=radio]:checked+label, .product-page--mens variant-radios input[type=radio][name="Color"]:checked+label { background-size: cover }
.product-page--scrunchies variant-radios input[type=radio]:checked+label:after, .product-page--mens variant-radios input[type=radio][name="Color"]:checked+label:after { background: none }
.nojs.product-form__input { margin: var(--margin) 0 }


  .product-page .item .meta section h1 { font-family: "Josefin Sans", sans-serif; text-transform: uppercase; font-size: 32px; }
.product-page .item .meta .price :where(dd,dl,dt) { margin: 0; display: inline }
.product-page .item .meta :where(.price__regular, .price__sale) { display: flex; gap: var(--margin); flex-direction: row }

.product-page .item .meta .sharing { padding: var(--padding) }
.product-page .item .meta .sharing li { padding: 0 var(--margin) }
.product-page .item .meta .sharing a { padding: var(--buttonPadding) var(--margin) }
.product-page .item .meta .blocks { padding: var(--padding); border-block: var(--globalBorder) }
.product-page .item .meta .blocks.accordion { padding: 0 }
.product-page .item .meta .blocks.accordion h4 { line-height: 1 }
.product-page .item .meta .blocks.accordion :where(.text, summary) { padding: var(--padding) }
.product-page .item .meta .blocks.accordion summary { text-transform: uppercase; font-size: var(--h4Size); font-weight: var(--hWeight) }
.product-page .item .meta .blocks.accordion details[open] summary { border-bottom: var(--globalBorder) }

.product-page .item .meta .blocks p { margin: 0; padding: 0 }

.product-page .related .product .card:nth-child(3) { border-right: none }

/* Product popup  */
.product-page section.popup { border-bottom: var(--globalBorder); padding: 0!important }
.product-page modal-opener :where(button,.button) { display: block; padding: var(--padding); margin: 0; text-align: start; --buttonFontSize: var(--h4Size); font-weight: var(--hWeight) }
.product-page .product-popup-modal { position: fixed; inset: 0; width: 100vw; height: 100vh; overflow:auto; visibility:hidden; opacity:0; z-index:-1; background:rgba(255,255,255,.9); display: flex; align-items: center; justify-content: center }
.product-page .product-popup-modal[open]{ opacity:1; visibility:visible; z-index:99 }
.product-page .product-popup-modal__content { border: var(--globalBorder); background: var(--bgColor); color: var(--color); overflow: auto; height: 80%; width: 90% }
.product-page modal-dialog button { position: sticky; top: 0; right: 0; border: 0; border-radius: 0!important; border-bottom: var(--globalBorder); background: var(--bgColor); text-align: end; color: currentColor; cursor: pointer; padding: var(--padding) }

.product-page modal-dialog grid > c { padding: var(--padding) }
.product-page modal-dialog grid > c:first-child { border-right: var(--globalBorder) }

  @media (max-width: 777px) {
  .product-page .item .meta .title-stars { padding-top: 40px; }
    .product__button-wrapper { margin-bottom: 20px } 
}
@media (min-width: 777px) { .product-page modal-dialog grid { height: 100% } }

@media (max-width: 777px) {
    .product-page modal-dialog button { position: inherit }
    .product-page modal-dialog grid > c:first-child { border: 0; border-bottom: var(--globalBorder) }
}
  
  .product__button-wrapper { margin-top: 20px; display: flex; align-items: center; justify-content: center; }
  .product-page .item .meta .product__button-wrapper section { padding: 0; font-family: "Josefin Sans", sans-serif; font-size: 32px; }
/* MEDIA in Product Page */
.product-page .gallery .media :where(img,video,iframe) { padding: 0; width: 100% }

@media (min-width: 777px) {
    .product-page .gallery.i2col { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--margin); height: fit-content }
    .product-page .gallery.i2col .media { border: 0 }
    .product-page .gallery.i1stBig .media:first-child { grid-column: 1 / -1 }
  
  .product-wrapper { display: flex; }
  .product-wrapper .meta, .product-wrapper .gallery { width: 50% }
  .product-wrapper .meta {
    background: white;
    height: 100vh;
    position: fixed;
    bottom: 0px;
    padding-bottom: 50px;;
    right: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    font-size: 16px;
  }
}

/* model viewer / 3D */
.product-page .gallery .media model-viewer { display: block!important; width: 100%!important; min-height: 500px!important }
.product-page .gallery .auto-iframe iframe { min-height: 450px }

/* for iframe players: maintain the aspect ration on width 100% */
.auto-iframe iframe { margin: 0px auto; width: 100%; aspect-ratio: 16 / 9 }

/* Review */
.itsapp .spr-container, .itsapp .reviews .spr-form { border:0; padding:0 }
.itsapp .spr-header-title, .itsapp .spr-form-title { font-size: var(--fontSize); margin: 0; text-align: start }
.itsapp .spr-summary { text-align: start; margin-top: var(--padding) }
.itsapp .spr-form-label { font-size: var(--fontSize); line-height: 20px; text-align: start; display: block }

.itsapp :where(.spr-review-header,.spr-review-content) { text-align: start }
.itsapp .spr-review-reportreview { display: none }

.itsapp :where(.spr-review, .spr-form) { border-color: var(--borderColor)!important }
.itsapp .spr-starrating { display: block; text-align: start }

@media (max-width: 777px) {
    .product-page .item .gallery { border: none; border-bottom: var(--globalBorder) }
    .product-page .item .meta .xform { z-index: 9!important; top: inherit; bottom: 0; width: 100%; border-top: var(--globalBorder) }
    .product-page .item .meta .xform.sticky { position: fixed!important }
    body.hpsticky .product-page .item .meta .xform.sticky { top: unset; position: fixed!important }
    .product-page .item .meta:is(.lrg[order="1"],.lrg[order="3"]) { border: 0 }

    .product-page .item .meta .contents.mobtitle { padding: var(--padding) }
    .product-page .item .meta .contents.mobtitle .h1 { margin: 0 }

    .product-page .related .product .card { border-right: 0 }
    .product-page .related .product .card:nth-child(even) { border-right: 0 }
    .product-page .related .product .card:nth-child(3) { border-right: 0 }
    .product-page .related .product .card:nth-child(3), .related .product > .card:nth-child(4) { border-bottom: 0 }

    .product-page .related .browseall { background-color: var(--bgColor) }
}

/* product availability  */
pickup-availability { padding: var(--padding); border-bottom: var(--globalBorder); display: block }
.pickup-availability-preview { align-items: flex-start; display: flex; gap: 0.2rem }
.pickup-availability-preview .icon { flex-shrink: 0; height: 1.8rem }
.pickup-availability-preview .icon-unavailable { height: 1.6rem; margin-top: 0.1rem }
.pickup-availability-info * { margin: 0 0 0.6rem }

pickup-availability-drawer {
    background: var(--bgColor);
    border-left: var(--globalBorder);
    padding: var(--padding);
    height: 100%;
    overflow-y: auto;
    position: fixed;
    top: 0;
    right: 0;
    z-index: 111;
    transform: translateX(100%);
    transition: transform 500ms ease-in-out;
    width: 100%;
    max-width: 444px;
}
 
    @media (min-width: 777px) {
      .size-and-size-chart { 
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-top: 20px;
        position: relative;
    }

      .skirt .size-chart-button {
        position: absolute;
        right: 24px;
        bottom: 0;
      }

      .js.product-form__input:last-of-type {
        text-align: left;
      }
  }
  
  .size-and-size-chart .product-form__input {
    margin: 0;
    padding-top: 0;
    padding-bottom: 0;
  }
  
  .size-chart-overlay {
  	position: absolute;
    top: 0;
    right: 0;
    transform: translateY(-100%);
    z-index: 99999;
    width: calc(100vw - 30px);
    display: none;
}
  
   @media (min-width: 777px) {
     .size-chart-overlay {
                 top: 0;
    right: 0;
    transform: translateY(-100%);
      width: 30vw;
     }
   }
  
  .size-chart-button {
    position: relative;
    text-align: center;
  }
  
.size-chart-button button {
  width: auto;
  background-color: transparent;
  color: black;
  font-size: 14px;
}
  
  .size-chart-button button:hover + .size-chart-overlay {
    display: block;
  }
  
pickup-availability-drawer[open] { transform: translateX(0) }
.pickup-availability-header { align-items: flex-start; display: flex; justify-content: space-between; margin-bottom: var(--padding) }
.pickup-availability-variant { font-size: 1.3rem; line-height: 1.2; margin: 0 0 1.2rem; text-transform: capitalize }
.pickup-availability-variant > * + strong { margin-left: var(--padding) }
.pickup-availability-list__item { padding: 2rem 0 }
.pickup-availability-list__item > * { margin: 0 }
.pickup-availability-list__item > * + * { margin-top: var(--padding) }
.pickup-availability-address { font-style: normal; font-size: 1.2rem; line-height: 1.5 }
.pickup-availability-address p { margin: 0 }

/* Accordion */
.accordion .text { overflow: hidden; max-height: 100%; opacity: 1; transform: translate(0, 0); margin-block:var(--margin) }
.accordion ul li { margin: 0; position: relative }

/* Custom page */
#shopify-section-product-custom { border-top:var(--globalBorder) }
#shopify-section-product-custom .hero { border-bottom:none } 

/*** Blog Listing */
.blog-listing c { border-bottom: var(--globalBorder) }

.blog-listing .bp { border-bottom: var(--globalBorder); border-right: var(--globalBorder); display: grid; place-items: start stretch }
.blog-listing .meta { padding: var(--padding); margin-top: auto }
.blog-listing .meta :where(h3,p) { margin-top: var(--margin) }
.blog-listing .meta a { display: flex; flex-direction: column; width: 100%; height: 100% }
.blog-listing .heading { border-bottom: var(--globalBorder) }

.blog-listing .posts img { object-fit: cover; object-position: center center; aspect-ratio: 1 / 1; width: 100%; margin: 0 auto }
.blog-listing .posts picture { border-bottom: var(--globalBorder) }
.blog-listing .posts .svg-placeholder { width: 100vw; min-height: 0; height: 300px }

@media (min-width: 777px) { .blog-listing .posts c:nth-child(3n) { border-right-color: transparent } }
@media (max-width: 777px) { .blog-listing {border-bottom:0} .blog-listing .meta { padding: calc(var(--padding) / 1.7) } .blog-listing c:nth-child(odd) { border-right-color: transparent } .blog-listing .posts c:first-child { grid-column: 1/-1 } }

/*** Blog post */
.blog-page { border-bottom: var(--globalBorder) }
.blog-page .post article { padding: var(--padding); width: 100%; max-width: 80ch; margin-inline: auto }
.blog-page .post img { margin-top: 1.4rem; width: 100%!important }
.blog-page .post iframe { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9 }

.blog-page .post aside { padding: var(--padding) 0 }
.blog-page .post aside > div { padding: 0 var(--padding) }
.blog-page .post aside h1 { margin-bottom: var(--margin) }
.blog-page .post .meta { border-right: var(--globalBorder); min-height: 100%; display: block}
.blog-page .post .meta span { margin: 1rem 1rem 0 0 }

.blog-page .post .what2fix li::first-letter { text-transform: capitalize }

@media (max-width: 777px) {
    .blog-page .post aside { position: unset; padding: 0 }
    .blog-page .post .meta { margin-top: var(--padding); border-right: 0; min-height: fit-content } 
}

comments-section:not(:empty) { display: block; padding: var(--padding); margin-top: var(--margin); border-top: var(--globalBorder) }
comments-section form.comment-form { padding: var(--padding) var(--margin); margin-top: var(--padding) }
comments-section .form-error { margin-top: var(--margin); color: var(--red) }
comments-section .form-success { margin-top:  var(--margin); color: var(--green) }

comments-section .acomment { width: 100%!important; max-width: 1080px!important }
comments-section .acomment flex { margin-top: var(--padding) }

/*** General page */
.general-page grid c { border-right: var(--globalBorder); padding: var(--padding) }
.general-page grid c:last-child { border: 0 }

@media (max-width: 777px){
  .general-page__images {
    height: 100vh;
 	position: relative;
    margin-bottom: 40px;
  }
  
  .general-page__images div {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background-size: cover;
    background-position: 50% 50%;
  }
  
  .general-page__content {
    padding: 0 60px 40px;
    text-align: center;
  }
  
  .general-page__content h1 {
    font-family: "Josefin Sans", sans-serif;
    font-size: 24px;
    text-transform: uppercase;
    margin-bottom: 20px;
  }
  
  .general-page__content .rte {
    font-size: 18px;
  }
}
  
  .general-page__images div {
    opacity: 0;
  }
  
  .general-page__images div:nth-child(1) {
    animation: fade 10s 8s ease-in-out infinite;
  }
  
  .general-page__images div:nth-child(2) {
    animation: fade 10s 6s ease-in-out infinite;
  }
  
  .general-page__images div:nth-child(3) {
    animation: fade 10s 4s ease-in-out infinite;
  }
  
  .general-page__images div:nth-child(4) {
    animation: fade 10s 2s ease-in-out infinite;
  }
  
  .general-page__images div:nth-child(5) {
    animation: fade 10s 0s ease-in-out infinite;
  }
  
    @keyframes fade {
      0% {
        opacity:1;
      }
      17% {
        opacity:1;
      }
      25% {
        opacity:0;
      }
      92% {
        opacity:0;
      }
      100% {
        opacity:1;
      }
    }
  
@media (min-width: 778px){
  .general-page__wrapper {
    display: flex;
  }
  
  .general-page__images,
  .general-page__content {
    text-align: center;
    width: 50%;
  }
  
  .general-page__images {
    height: 100vh;
 	position: fixed;
  }
  
  .general-page__images div {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background-size: cover;
    background-position: 50% 50%;
  }
  
  .general-page__content {
    padding: 200px 60px 40px;
    margin-left: 50%;
  }
  
  .general-page__content h1 {
    font-family: "Josefin Sans", sans-serif;
    font-size: 42px;
    text-transform: uppercase;
    margin-bottom: 20px;
  }
  
  .general-page__content .rte {
    font-size: 22px;
  }
}
  
/*** Legal pages */
.shopify-policy__container { display: flex; max-width: 100%!important; border-bottom: var(--globalBorder)!important; margin: 0 auto!important; padding: 0!important }
.shopify-policy__container > * { width: 100%; text-align: start }
.shopify-policy__title h1 { padding: var(--padding) }
.shopify-policy__body { max-width: 75ch; margin: 0 auto; border-left: var(--globalBorder); padding: var(--padding) }
@media (max-width: 777px) { .shopify-policy__container { flex-direction: column } .shopify-policy__body { border:0 } }

/*** About */
.about-page c { padding: 0 }
.about-page .meta { padding: 4rem; margin: 0 auto; max-width: 600px }
.about-page .meta p { margin: 2rem 0 }

/*** FAQ page & FAQ sections */
.faq-page .faqs { max-width: 600px }
:where(.faq-page, .faq) details { margin-bottom: 3rem }
[data-question] { user-select: none; font-weight: 600; padding-bottom: var(--margin); cursor: pointer }
[data-answer] { padding-top: var(--margin) }

section.faq c { border-right:var(--globalBorder); border-bottom:var(--globalBorder); padding:var(--padding) }
section.faq c:nth-child(3n) { border-right:none }

@media (max-width: 777px) { section.faq c {border-right:none} section.faq c:last-child {border-bottom:0} }

/*** Gallery page */
.gallery-page .mosaic { display: flex; flex-direction: row; flex-wrap: wrap; gap: var(--margin) }
@media (min-width: 777px) { .gallery-page .mosaic img { max-width: 49.5% } }

/*** Press */
.press-page c { 
    display: grid; 
    align-content: center;
    text-align: center; 
    border-right: var(--globalBorder); 
    border-bottom: var(--globalBorder); 
    padding: calc(var(--padding) * 2) var(--padding); 
}
.press-page c:nth-child(3n+3) { border-right-color: transparent }
.press-page img { max-width: 200px; text-align: center; margin: 0 auto var(--padding); display: inline; border-radius: 0 }
.press-page .meta p { margin:0 }

.press-page svg.svg-imglogolist { height: 250px }

@media (max-width: 777px) { .press-page c {  border-right: 0 } }

/*** Brand listing page */
.brands .brand { border-bottom: var(--globalBorder) }
.brands .brand img { max-height: 160px; width: auto; border-radius: calc(var(--radiusImg) / 1) }
.brands .brand c { min-height: 100px; border-right: var(--globalBorder) }
.brands .brand c h2 { padding-inline: var(--margin); text-align: center; width: min(85%, 40ch) }
.brands .brand c:nth-child(3n) { border-right:0 }

@media (max-width: 777px) { .brands .brand c:nth-child(2n) { border-right: 0 } }

/*** Login page */
#recover, #recover + div { display: none }
#recover:target { display: flex }
#recover:target + div { display: block }
#recover:target ~ #login, #recover:target ~ #login + div { display: none }

/*** Addresses */
.addressBox { padding: var(--padding) 0; margin: var(--padding) auto; border-bottom: var(--globalBorder) }

/*** Account page */
.account-page { border-bottom: var(--globalBorder) }
.account-page > grid { min-height: 65vh }
.account-page > grid > c { border-right: var(--globalBorder); padding: var(--padding) }
.account-page > grid > c:last-child { border: 0 }

.account-page .table grid { --columnGap: 1rem; --rowGap: 1rem }
.account-page .table .head { border-top: var(--globalBorder) }
.account-page .table .head,
.account-page .table .body { padding: var(--margin) 0; margin-bottom: var(--margin); border-bottom: var(--globalBorder) }
.account-page .text-hr.noMargin { margin-top: 0 }
.account-page form div { margin: var(--padding) 0 }

@media (max-width: 777px) { 
    .account-page > grid > c { border-right: 0; border-bottom: var(--globalBorder) }
    .account-page > grid > c:last-child { border-bottom: 0 }
}

/*** Image scroll snap slider for mobile */
@media (max-width: 777px) {
    .product-page .gallery.scroll-snap { --ss-height: 500px; --ss-width: 100% }
    .product-page .gallery.scroll-snap .media { display: grid; place-items: center; width: 100%; height: var(--ss-height); border-bottom: 0 }
    .product-page .gallery.scroll-snap .media img { width: calc(var(--ss-height) - 100px) }
    .product-page .gallery.scroll-snap .media .model { min-width: calc(var(--ss-width) - 10%) }
    .product-page .gallery.scroll-snap .media :where(iframe,video) { display: block; width: var(--ss-width); height: auto; aspect-ratio: 16 / 9 }

    .scroll-snap {
        --scrollDirection: x;
        --scrollType: mandatory;
        --scrollAlign: start;
        --scrollMargin: 0;
        --scrollStop: normal;
        --scrollJustifyContent: start;
        --scrollAlignItems: center;
        --scrollFlexFlow: row nowrap;
        display: flex;
        flex: none;
        flex-flow: var(--scrollFlexFlow);
        gap: var(--scrollMargin);
        justify-content: var(--scrollJustifyContent);
        align-items: var(--scrollAlignItems);
        overflow: auto;
        counter-reset: item;
        scroll-behavior: smooth;
        scroll-margin: var(--scrollMargin);
        scroll-snap-stop: var(--scrollStop);
        scroll-snap-type: var(--scrollDirection) var(--scrollType);
    }

    .scroll-snap > * { width: auto; flex: none; scroll-snap-align: var(--scrollAlign) }
    .scroll-snap.y { --scrollDirection: y; --scrollFlexFlow: column nowrap; --scrollAlignItems: start } 
    .scroll-snap.mandatory { --scrollType: mandatory } /* default */
    .scroll-snap.proximity { --scrollType: proximity }
    .scroll-snap.align-start { --scrollAlign: start }
    .scroll-snap.align-center { --scrollAlign: center }
    .scroll-snap.align-end { --scrollAlign: end }
    .scroll-snap.stop-always { --scrollStop: always } /* default */
}

/*** iOS fix: prevent zooming on input:focus */
@media (max-width: 777px) {
    input, 
    input[type="color"], 
    input[type="date"], 
    input[type="datetime-local"], 
    input[type="email"], 
    input[type="file"], 
    input[type="month"], 
    input[type="number"], 
    input[type="password"], 
    input[type="search"], 
    input[type="tel"], 
    input[type="text"], 
    input[type="time"], 
    input[type="url"], 
    input[type="week"], 
    input[inputmode], 
    select, 
    textarea { font-size: 16px }

    .button, button, 
    input[type="submit"], 
    input[type="reset"], 
    input[type="button"] { --buttonFontSize: 16px }
}
      
#app {
  max-width: 100%;
  border: 0;
}