/*turn off for now*/ 
#home-quiz {display:none;}
#mailing-list {display:none;}
 
 /* ==========================================================================
   Helper classes
   ========================================================================== */
.accent {color:#ecaab9;}
.accent-bg {background-color:#ecaab9; color:#fff;}
.block {display: block;}
.inline-block {display: inline-block!important;}
.text-light {font-weight: 100;}

.pink {color:#ff5c83;}
.pink-bg {background-color:#EDABB9;}

.bright-pink {color:#FF5C83;}
.bright-pink-bg {background-color:#FF5C83;}

.light-pink-bg {background-color: #fdf0ed;}

.text-golden { color: #ffd400 !important; }

.alert-light2 {color: #1b1e21;background-color: #f8f8f8;border-color: #f1f1f1;}

.b {font-weight: bold;}

/* flex */
.flex {display: flex;}

.flex-row {
    flex-direction: row;
}

.flex-row-reverse {
    flex-direction: row-reverse;
}

.flex-column {
    flex-direction: column;
}

.flex-grow {
    flex-grow: 1;
}

.flex-1 {
    flex: 1;
}

.flex-wrap {
    flex-wrap: wrap;
}

.flex-basis-auto {
    flex-basis: auto;
}

.align-items-center {
    align-items: center;
}

.align-items-start {
    align-items: flex-start;
}

.justify-content-start {
    justify-content: flex-start;
}

.justify-content-end {
    justify-content: flex-end;
}

.justify-content-center {
    justify-content: center;
}

.justify-content-space-between {
    justify-content: space-between;
}

.justify-content-space-around {
    justify-content: space-around;
}

.justify-content-space-evenly {
    justify-content: space-evenly;
}

.flex-50 {
    flex: 1 1 50%;
}
/*
 * Hide visually and from screen readers
 */

 .hidden {
  display: none !important;
}

/*
* Hide only visually, but have it available for screen readers:
* https://snook.ca/archives/html_and_css/hiding-content-for-accessibility
*
* 1. For long content, line feeds are not interpreted as spaces and small width
*    causes content to wrap 1 word per line:
*    https://medium.com/@jessebeach/beware-smushed-off-screen-accessible-text-5952a4c2cbfe
*/

.visuallyhidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  white-space: nowrap; /* 1 */
}

/*
* Extends the .visuallyhidden class to allow the element
* to be focusable when navigated to via the keyboard:
* https://www.drupal.org/node/897638
*/

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto;
  white-space: inherit;
}

/*
* Hide visually and from screen readers, but maintain layout
*/

.invisible {
  visibility: hidden;
}

/*
* Clearfix: contain floats
*
* For modern browsers
* 1. The space content is one way to avoid an Opera bug when the
*    `contenteditable` attribute is included anywhere else in the document.
*    Otherwise it causes space to appear at the top and bottom of elements
*    that receive the `clearfix` class.
* 2. The use of `table` rather than `block` is only necessary if using
*    `:before` to contain the top-margins of child elements.
*/

.clearfix:before,
.clearfix:after {
  content: " "; /* 1 */
  display: table; /* 2 */
}

.clearfix:after {
  clear: both;
}

.relative {position: relative;}

.btn {border-radius: 0px;}
.btn-primary {
    color: #fff;
    background-color: #FF5C83;
    border-color: #FF5C83;
}
.btn-primary:hover {
    color: #fff;
    background-color: #ecaab9;
    border-color: #ecaab9;
}

.btn-secondary {
    color: #fff;
    background-color: #000000;
    border-color: #000000;
}

.badge-primary {
    color: #fff;
    background-color: #ff5c83;
}
.badge-secondary {
    color: #454f5b;
    background-color: #dfe3e8;
}


BODY {font-family: 'objektiv-mk1', sans-serif;}

h1,h2,h3,h4,h5,h6 {
    font-family: 'Playfair Display', serif;
    font-weight: 900;
}
a {color: #fe5b82;}
a:hover {color: #FF5C83;}
.navbar-light .navbar-nav .nav-link {
    color: #151515;
    font-weight: bold;
    padding: 10px 18px;
    transition: all .4s ease-in-out;
    clip-path: polygon(12% 19%, 88% 22%, 100% 83%, 0% 100%);
}
.navbar-light .navbar-nav .nav-link.active,
.navbar-light .navbar-nav .nav-link:hover {
    background: #EDABB9;
    clip-path: polygon(0% 0%, 98% 10%, 91% 99%, 6% 82%);
    color: #FDF0ED;
}

nav .container,
footer .container {
  max-width: 1400px;
}
a.user-link {
    padding: 20px 20px 0;
}
/*material form input*/

.group {
    position: relative;
    margin: 45px 0;
  }
input,
textarea {
  background: none;
  color: #c6c6c6;
  font-size: 18px;
  padding: 10px 10px 10px 5px;
  display: block;
  width: 320px;
  border: none;
  border-radius: 0;
  border-bottom: 1px solid #c6c6c6;
}
input:focus,
textarea:focus {
  outline: none;
}
/*probably need to change this, was adjusted for shipping checkbox on checkout page*/
/* input:focus ~ label, input:valid ~ label,
textarea:focus ~ label,
textarea:valid ~ label {
  top: -3px;
  font-size: 12px;
  line-height: 25px;
  color: #ecaab9;
}
input:focus ~ .bar:before,
textarea:focus ~ .bar:before {
    width: 100%;
} */

/* input[type="password"] {
  letter-spacing: 0.3em;
} */

/*causing problems, cant remember what its for, come back with more specific selector*/
/* label {
  color: #c6c6c6;
  font-size: 16px;
  font-weight: normal;
  position: absolute;
  pointer-events: none;
  left: 5px;
  top: 10px;
  transition: 300ms ease all;
} */

.bar {
  position: relative;
  display: block;
  width: 100%;
}
.bar:before {
  content: '';
  height: 2px;
  width: 0;
  bottom: 0px;
  position: absolute;
  background: #ecaab9;
  transition: 300ms ease all;
  left: 0%;
}
nav.breadcrumb-nav {
    box-shadow: none;
    -webkit-box-shadow: none;
}
nav.breadcrumb-nav ol {
    background-color: transparent;
    font-size: 13px;
}
nav.breadcrumb-nav ol li a{
    color: #f37c65;
}
nav.breadcrumb-nav ol.breadcrumb {display: flex; align-items: flex-end;}
nav.breadcrumb-nav:not(.checkout-progress) .breadcrumb-item+.breadcrumb-item::before {content: ">";color: #afb6bd;}

nav.breadcrumb-nav .breadcrumb-item.active {
    color: #b7bec3;
}

nav.breadcrumb-nav.checkout-progress .breadcrumb-item.active {
    color: #ff5c83;
}
nav.breadcrumb-nav.checkout-progress ol {
    counter-reset: item;
}
nav.breadcrumb-nav.checkout-progress .breadcrumb-item::before {
    content: counter(item, decimal-leading-zero) " "; 
    counter-increment: item;
    font-weight: 100;
}
nav.breadcrumb-nav.checkout-progress .breadcrumb-item.finished::before {
    font-family: 'Font Awesome 5 Free';
    content: "\f00c"; 
    counter-increment: item;
    font-weight: unset;
    margin-right: 10px;
}
nav.breadcrumb-nav.checkout-progress .breadcrumb-item {
    margin-right: 55px;
    text-transform: uppercase;
    font-weight: bold;
    color: #2d2d2d;
    font-size: 11px;
    letter-spacing: 1.5px;
}

#pop {
    width: 100%;
    height: 375px;
    position: fixed;
    bottom: 0;
    right: 0;
    padding: 0 80px;
    z-index: 25;
    max-width: 650px;
    background-color: #ffe7ec;
    transition: 1s;
    overflow: hidden;
}
#pop.collapsed {bottom: -500px;}

/*slide button*/
.slide-btn {
    padding: 8px 16px;
    cursor: pointer;
    border: 0 none;
    background: linear-gradient(90deg, #EDABB9 50%, #fff 50%);
    background-clip: text;
    -webkit-text-fill-color: #000;
    position: relative;
    color: transparent;
    width: fit-content;
  }
  
  .slide-btn:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(45deg, #EDABB9 50%, transparent 50%);
    z-index: -1;
  }
  
  .slide-btn,
  .slide-btn:after {
    background-size: 300%;
    background-position: 62%;
    transition: 1s, font-size 0.2s;
  }
  
  .slide-btn:hover,
  .slide-btn:hover:after {
    background-position: 0; 
    color: #EDABB9; /*For IE*/
  }
  
  .slide-btn.black {
    background: linear-gradient(90deg, #000 50%, transparent 50%);
    -webkit-text-fill-color: #fff;
  }
  .slide-btn.black:after {
    background: linear-gradient(45deg, #000 50%, transparent 50%);
  }
  .slide-btn.black,
  .slide-btn.black:after {
    background-size: 300%;
    background-position: 62%;
    transition: 1s, font-size 0.2s;
  }
  .slide-btn.black:hover,
  .slide-btn.black:hover:after {
    background-position: 0; 
    color: #fff; /*For IE*/
  }
  


/* Header / Nav */

#notification-bar {
    background: #fdf0ed;
    margin-top: -4px;
    font-size: 13px;
}
#notification-bar .btn-primary {
    background-color: #FF5C83;
    color: #fff;
    padding: 15px;
    border: 0 none;
    margin-left: 10px;
    font-weight: 100;
    font-size: 14px;
}
#header-logo {width: 215px;}
#header-logo .cls-1 {fill: #000;}

nav {
    -moz-box-shadow: 0 2px 8px 0px rgba(0, 0, 0, 0.14);
    -webkit-box-shadow: 0 2px 8px 0px rgba(0, 0, 0, 0.14);
    box-shadow: 0 2px 8px 0px rgba(0, 0, 0, 0.34);
    background: #fff;
}

.site-header {
    /* background-color: #ecaab9; */
    background-color: #292929;
    margin-bottom: -65px;
}
.site-header .list-inline-item {
    margin: 0 20px;
}
.site-header a {
    color: #fff;
    font-weight: 700;
    font-size: 13px;
    transition: ease-in-out color .15s;
}
.site-header a:hover {
    color: #fff;
    text-decoration: none;
}
.navbar-light .navbar-toggler {
    border: 0 none;
}

#hero {
    background-image: url('/assets/images/bb_xmas_hero.jpg');
      width: 100%;
      max-height: 1100px;
      background-size: cover;
      background-repeat: no-repeat;
      background-position: center;
      height: 43vw;
      /* background-attachment: fixed; */
}

.hero-poly {
    width: 38vw;
    height: 24vw;
    background: url(../images/hero-poly-bg.png) no-repeat;
    position: absolute;
    right: 7vw;
    /* top: 17vw; */
    top: 29%;
    background-size: contain;
}
.hero-poly h1 {font-size: 3.3vw;}
.hero-poly p {font-size: 1.5vw;}

#experiences {
    /* background:#fdf0ed; */
    background:#ffe6f4;
    min-height: 307px;
}

#experiences p {
    max-width: 650px;
    display: block;
    margin: 0 auto;
    color: #707070;
    font-size: 14px;
    line-height: 25px;
}

#reward-yourself div.yellow-box {
    background: url(../images/yellow-wave-bottom.png) no-repeat bottom center #ffc13e;
    min-height: 430px;
    max-width: 50%;
    float: right;
    background-size: contain;
}
#reward-yourself div.yellow-box p {color:#fff;}

#browse-category {
    background: url(../images/home-category-bg.jpg) no-repeat center center;
    background-size: contain;
}

#quiz-result {
    max-width:400px;
    width: 100%; 
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
}

.mood-menu {
    position: absolute;
    left: 6px;
    background: #fff;
    /* width: 97%; */
    top: -10px;
    border-radius: 8px;
    box-shadow: -4px 6px 10px 0px #0000002b;
    font-size: 18px;
    padding: 15px;
    z-index: 10;
}
.mood-menu ul{
    padding: 0;
    list-style: none;
    margin: 0;
}
.mood-menu ul li{
    padding: 5px;
    border-top: 1px solid #f3f3f3;
}
.mood-menu ul li:hover {
    background: #edabb9;
    color: #fff;
}

.icon-wrapper {
    max-width: 378px;
    font-size: 13px;
    margin-left: 50px;
}

footer {
    background-color: #FDF0ED;
    z-index: 9;
    position: relative;
}
footer ul li a {font-size: 12px;}
footer .fab {
    color: #FF5C83;
    font-size: 18px;
    margin-right: 5px;
}


/*admin*/
.table .thead-dark th {
    color: #ffffff;
    background-color: #ff5c83;
    border-color: #eaeaea;
    padding: 10px 10px;
    font-weight: 200;
    font-size: 16px;
}
.table thead.no-border th {border: 0 none;}


/*Category page*/

#cat-hero {
    /* background-image: url(/assets/images/cat-hero@2x.jpg),url(/assets/images/cat-hero.jpg); */
    /*background-image: url('/assets/images/tgiving_product_category_hero.jpg?v=2'); */
    background-image: url('/assets/images/xmas2_product_category_hero.jpg');
    width: 100%;
    /* max-height: 640px; */
    background-size: cover;
    background-repeat: no-repeat;
    /* height: 29.5vw; */
    /* height: 52.5vw; */
    height: 20.5vw;
    background-position: center;
}
body.charity-collection #cat-hero {
    background-image: url('/assets/images/bca_hero_image.jpg');
}
body.charity-collection #extra_text {
    display:block!important;
}

.product-cat .product-wrapper {
    width:250px;
    text-align: center;
    height: 100%;
    justify-content: flex-end;
}
.product-cat .product-image {width:200px;}

#cat-bath-bombs {
    /* background-image: linear-gradient(225deg,#2d2438,#3c304b);
    border-bottom: 1px solid #1c1723;
    color: #fff; */
    padding: 7vh 0 5vh;
}
#cat-bath-bombs + div.product_bar {
    /* background: #2b2235; */
    padding: 20px 0;
    /* color: #fff; */
    border-top: 1px solid #f1f1f1;
    border-bottom: 1px solid #f1f1f1;
}

#cat-essential-oils {
    /* background-image: linear-gradient(225deg,#ff8162,#f69178);
    border-bottom: 1px solid #f67a5b;
    color: #fff; */
    padding: 7vh 0 5vh;
}
#cat-essential-oils + div.product_bar {
    /* background: #ff8163; */
    padding: 20px 0;
    /* color: #fff; */
    border-top: 1px solid #f1f1f1;
    border-bottom: 1px solid #f1f1f1;
}

#cat-gift-sets {
    /* background-image: linear-gradient(225deg,#ffbd49,#ffb431);
    border-bottom: 1px solid #f7ad2d;
    color: #fff; */
    padding: 7vh 0 5vh;
}
#cat-gift-sets + div.product_bar {
    /* background: #ffb432; */
    padding: 20px 0;
    /* color: #fff; */
    border-top: 1px solid #f1f1f1;
    border-bottom: 1px solid #f1f1f1;
}

#cat-accessories {
    /* background-image: linear-gradient(225deg,#2eecff,#aa4dff);
    border-bottom: 1px solid #aa4dff;
    color: #fff; */
    padding: 7vh 0 5vh;
}
#cat-accessories + div.product_bar {
    /* background: #9b2dff; */
    padding: 20px 0;
    /* color: #fff; */
    border-top: 1px solid #f1f1f1;
    border-bottom: 1px solid #f1f1f1;
}
#cat-charity-collection, #cat-seasonal, #cat-christmas-collection {
    /* background-image: linear-gradient(225deg,#2eecff,#aa4dff);
    border-bottom: 1px solid #aa4dff;
    color: #fff; */
    padding: 7vh 0 5vh;
}
.btn-shop-all {
    color: #ffffff;
    background-color: #ff85a4;
    border-color: #ff85a2;
}

.btn-shop-all:hover {
    color: #ffffff;
    background-color: #ff5b83;
    border-color: #ff5a83;
}


/*Product page*/
#video-bg {
    overflow: hidden;
    height: 700px;
    background-color: #449da2;
    margin-top: -59px;
}

#video-bg > video {
    width: 100%;
    position: absolute;
    object-fit: cover;
    height: 100%;
    display: none;
}

#video-bg {
    overflow: hidden;
    height: 100vh;
    background-color: #449da2;
    /* margin-top: -59px; */
    background: url(/assets/images/bg1.jpg);
    background-size: cover;
    background-position-y: center;
    max-height: 700px;
    background-repeat: no-repeat;
}

/* h1.product-tagline {margin-top: 100px;} */

.product-box-wrap {
    position: fixed;
    top: 150px;
    filter: drop-shadow( 0px 3px 4px rgba(0, 0, 0, 0.1));
    right: 30px;
}
.product-box {
    clip-path: polygon(0% 0%, 100% 3%, 100% 100%, 12% 100%);
    background: #fff;
    background-size: contain;
    background-repeat: no-repeat;
    width: 642px;
    padding: 75px 60px 35px 145px;
}

.product-box p.pink {font-size: 18px;}
.product-box p.short_desc {    min-height: 125px;}
.product-box s {
    color: #707070;
}
.product-box .ringsize {
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    padding: 15px 10px;
    font-size: 14px;
}
.product-box .ringsize a {
    margin-left: 8px;
    text-decoration: underline;
    display: none;
}
.strikeout {
    color: #707070;
    line-height: 1em;
    position: relative;
    padding: 0 3px;
  }
  .strikeout::after {
    border-bottom: 0.125em solid #FF5C83;
    content: "";
    left: 0;
    margin-top: calc(0.125em / 2 * -1);
    position: absolute;
    right: 0;
    top: 50%;
  }

.product-box i {
    margin-top: -9px;
    color: #ababab;
    font-size: 11px;
    margin-right: 10px;
}

section h1.product-tagline {
    font-size: 85px;
    line-height: 80px;
    border-bottom: 1px solid;
    padding-bottom: 25px;
    margin-bottom: 50px;
}
.accord-wrap {width: 700px;}
#accordion a.btn-link {
    text-transform: uppercase;
    font-size: 12px;
    font-weight: bold;
    color: #707070;
    letter-spacing: 1.5px;
    display: block;
    text-align: left;
}
ul.scents .list-inline-item {
    margin-right: 33px!important;
    width: 70px;
    display: flex;
    align-items: center;
    flex-direction: column;
}

ul.scents li.scent img {height: 115px;}

ul.scents li.scent.scent-blackberry img {width: 46px;}
ul.scents li.scent.scent-citrus img {width: 74px;}
ul.scents li.scent.scent-coconut img {width: 80px;}

ul.scents li.scent.scent-lemon img,
ul.scents li.scent.scent-lavender img {width: 64px;}

ul.scents li.scent.scent-jasmine img,
ul.scents li.scent.scent-peppermint img,
ul.scents li.scent.scent-vanilla img {width: 70px;}

ul.scents li.scent.scent-eucalyptus img,
ul.scents li.scent.scent-orange img,
ul.scents li.scent.scent-rose img,
ul.scents li.scent.scent-mint img {width: 55px;}

div.ingredients {width: fit-content; margin: 0 auto;}
div.ingredients ul:first-child {    margin-right: 50px;}
div.ingredients ul li span {display: block; color: #FFC04C;}

#promise_section {
    background-image: url(/assets/images/_G5A4028.jpg);background-position: right;background-repeat: no-repeat;
}

#ingredients-works .ingredients-wrap {
    padding: 75px 0;
    max-width: 500px;
    margin-left: 50px;
}

#ingredients-works .works-wrap {padding: 75px 0;}
#ingredients-works .works-wrap .container {max-width:700px;}
#winner-10k {
    background: #fff;
    position: relative;
}
#winner-10k div.hero {
    /* background-image: url('/assets/images/CH-10k-winner.jpg'),url('/assets/images/CH-10k-winner-LQ.jpg');      */
    width: 100%; 
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    /* height: 600px; */
    position: relative;
}
#winner-10k div.hero div.container {
    position: relative;
    height: 100%;
}

#winner-10k div.box {
    width: 50vw;
    height: fit-content;
    padding: 60px 60px 160px;
    color: #fff;
    max-width: 745px;
}
#winner-10k div.box p b {
    text-transform: uppercase;
    display: block;
}
#winner-10k div.money-back {
    padding: 150px 0;
}
#winner-10k div.money-back small {display: block;}
#winner-10k div.money-back .flex div {
    max-width: 250px;
    height: 152px;
}
#looxReviews {
    background: #fff;
    position: relative;
    z-index: 0;
}
#reviews-cover {
    margin-bottom: -52px;
    padding-bottom: 60px;
    background: #fff;
    position: relative;
    z-index: 1;
}
#reviews-cover .loox-rating {font-size: 19px;}
.loox-star {color: #FFC04C;}

@media screen and (max-width: 500px) {
    #cd-cart.speed-in {
        width: 92vw;
    }
    .navbar.sticky-top {    margin-bottom: 3px;}
    .navbar-light .navbar-nav .nav-link,
    .navbar-light .navbar-nav .nav-link.active, 
    .navbar-light .navbar-nav .nav-link:hover {
        clip-path: none;
    }
    #video-bg {
        max-height: 565px;
        height: 75vw;
        position: absolute;
        top: 150px;
        width: 100%;
    }
    #video-bg video {
        width: 100%;
        margin-top: 0;
        position: absolute;
    }
    .product-box-wrap {
        position: absolute;
        top: 72vw;
        right: 40px;
        left: -21px;
    }
    .product-box {
        height: auto;
        padding: 40px 20px;
        width: 100%;
        margin: 0 auto;
        clip-path: none;
    }
    .product-box h2 {font-size: 18px;}
    .product-box .sale_price {font-size: 12px;}
    .product-box p.pink {
        font-size: 12px;
    }
    .product-box p.short_desc {
        font-size: 12px;
        height: 100px;
    }
    .product-box a.btn {
        font-size: 14px;
    }
    .product-box-wrap + section {padding-top: 180vw;}
    div.ingredients ul:first-child {
        margin-right: auto;
    }
    section h1.product-tagline {
        font-size: 36px;
        line-height: 40px;
        margin: 30px auto;
        /* margin-bottom: 0px;
        color: #EE4A7F;
        border-bottom: 0 none; */
    }
    #promise_section{background: none;}
    .icon-wrapper {margin: 0 50px;}
    ul.scents .list-inline-item {
        margin-right: 0px!important;
        width: 33%;
    }

    #ingredients-works .ingredients-wrap {
        margin-left: 0px;
    }
    #ingredients-works .ingredients-wrap ul{
        text-align: center;
        margin: 0 auto;
    }

    #winner-10k-mobile {background: #FAEEEB;}


    #winner-10k div.hero {
        background-position: -35px;
        background-repeat: no-repeat;
        height: 277px;
    }
    #winner-10k div.box-wrap {
        position: relative;
        right: auto;
        bottom: auto;
        margin: -34px auto 0;
    }
    #winner-10k div.box {
        width: 95%;
        padding: 40px 20px 160px;
        clip-path: polygon(0% 0%, 100% 0%, 100% 87%, 0% 80%);
        margin: 0 auto;
    }
    #winner-10k div.box h1 {
        font-size: 24px;
        margin-bottom: 20px;
    }
    #winner-10k div.box p b {
        font-size: 14px;
        margin-bottom: 7px;
        margin-top: 30px;
    }
    #winner-10k div.money-back {
        padding-top: 0;
        padding-bottom: 80px;
    }
    #winner-10k div.money-back .flex div {max-width: none; height: auto;}
    #winner-10k div.money-back .flex div > small {
        text-align: center;
        font-size: 16px;
    }
    #ingredients-works {
        background: url(../images/home-category-bg.jpg) no-repeat -655px 600px;
        background-size: 323%;
    }
    #winner-10k div.money-back small {
        font-size: 17px;
    }
    #reviews-cover {
        margin-bottom: -80px;
        padding-bottom: 0px;
    }
    #reviews-cover h1 {
        text-align: center;
    }
    #reviews-cover .loox-rating {
        font-size: 14px;
    }
}

/*product feed*/
/* div.product-feed::after {
    content: "";
  flex: auto;
} */
div.product-feed .shopify-buy__product-img-wrapper {
    width: 175px;
}
div.product-feed .product-wrapper {
    margin:20px;
    width: 190px;
}
div.product-feed h5.shopify-buy__product__title {
    height: 50px;
    font-size: 16px;
    text-align: center;
    display: flex;
    align-items: center;
}
div.product-feed h5.shopify-buy__product__title a {color: #000;}

/*about page*/
#about-hero {
    background-image: url(/assets/images/bubbly_story_hero_HQ.jpg),url(/assets/images/bubbly_story_hero_LQ.jpg);
    width: 100%;
    max-height: 640px;
    background-size: cover;
    background-repeat: no-repeat;
    height: 29.5vw;
}

/*winners page*/
#winners-hero {
    background-image: url(/assets/images/winners-hero-HQ.jpg),url(/assets/images/winners-hero-LQ.jpg);
    width: 100%;
    max-height: 640px;
    background-size: cover;
    background-repeat: no-repeat;
    height: 29.5vw;
}
#winners-hero .btn-wrap {
    margin-top: 20px;
    width:400px;
}
div.next-winner {
    background: #fff;
    position: relative;
    top: -100px;
    padding: 40px;
    text-align: center;
}

#sweeps_timer2 {
    font-size: 42px;
    max-width: 800px;
    margin: 0 auto;
}
#sweeps_timer2 small {
    font-size: 12px;
    color: #9e9e9e;
}
.winners .winner .align-items-start {
    justify-content: flex-end;
}
.winners .winner:nth-child(odd) {
    flex-direction: row-reverse;
}
.winners .winner:nth-child(odd) .align-items-start {
    justify-content: flex-start;
}

/*reveal page*/
#reveal-hero {
    background-image: url(/assets/images/reveal_hero_HQ.jpg),url(/assets/images/reveal_hero_LQ.jpg);
    width: 100%;
    background-size: cover;
    background-repeat: no-repeat;
}
#reveal-box{
    clip-path: polygon(12% 8%, 92% 16%, 100% 82%, 6% 90%);
    background: #fff;
    background-size: contain;
    background-repeat: no-repeat;
    width: 840px;
    max-width: 100%;
    height: 700px;
    padding: 140px 70px 128px 100px;
}
#reveal-box p.title {
    font-size: calc(21px + 0.5vw);
}

#reveal-box label.form-check-label {
    color: #999;
    padding-left: 10px;
}
.form-check-input {width:auto;}
.form-check-input:focus {
    outline-offset: 0;
  }
input.error {
    color: red;
    border-color: red;
}
input.error + .invalid-feedback {display:block;}

/* Entries banner*/
BODY{padding-top: 60px;}

BODY.entries-banner-shown {
    padding-top:119px;
}
BODY.entries-banner-hidden {
    padding-top:60px;
}
#entries-banner {
    background: #2d2d2d;
    color: #e8e8e8;
    font-weight: 100;
    position: fixed;
    top: 60px;
    z-index: 1000;
    left: 0;
    right: 0;
    font-size: 14px;
}

/*cart*/
.cart-product-img-wrap {max-width:70px; margin-right:5px;}
.checkout-cart .cart-product-img-wrap {
    background: #fff;
    width: 71px;
    height: auto;
    border: 1px solid #e6e6e6;
    margin: 0px 10px 10px 0;
    flex-shrink: 0;
}
.checkout-cart h6 {
    font-size: 14px;
    font-family: sans-serif;
    font-weight: normal;
}
.checkout-cart h6+small {
    margin-bottom: 18px;
    color: #909090;
}
form.promo-form {
    border-top: 1px solid #e4e4e4;
    border-bottom: 1px solid #e4e4e4;
}


/*checkout pages*/
/*body.checkout main {padding-top: 0!important;}*/
body.checkout .form-control {
    color: #495057;
    background-color: #f8f8f8;
    border: 0 none;
    border-radius: 0;
}
body.checkout select.custom-select {    background-color: #f8f8f8;}
div.form-title {
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 1.5px;
}
div.form-title small {
    text-transform: none;
    font-size: 12px;
}
main {overflow: hidden;}
/* .sidebar::after {
    content: "";
    display: block;
    width: 300%;
    position: absolute;
    top: 0;
    left: -100%;
    bottom: 0;
    background: #fafafa;
    z-index: -1;
    -webkit-box-shadow: 0 -1px 0 #e1e1e1 inset;
    box-shadow: 0 -1px 0 #e1e1e1 inset;
} */
select.error,
.form-control.error { 
    border: 2px solid red;
  }
label.error {
    color:red;
}
label {
    width: 100%;
    font-size: 1rem;
  }
  
  .card-input-element+.card {
    height: calc(20px + 2*1rem);
    color: #9e9e9e;
    -webkit-box-shadow: none;
    box-shadow: none;
    border: 2px solid transparent;
    border-radius: 4px;
  }
  
  .card-input-element+.card:hover {
    cursor: pointer;
  }
  
  .card-input-element:checked+.card {
    border: 2px solid #ff5c82;
    color: #ff5c82;
    -webkit-transition: border .3s;
    -o-transition: border .3s;
    transition: border .3s;
  }
  
  .card-input-element:checked+.card::after {
    content: '\e5ca';
    color: #ff5c82;
    font-family: 'Material Icons';
    font-size: 24px;
    -webkit-animation-name: fadeInCheckbox;
    animation-name: fadeInCheckbox;
    -webkit-animation-duration: .5s;
    animation-duration: .5s;
    -webkit-animation-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    animation-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  }


  .modal-full {
    min-width: 100vw;
    margin: 0;
    z-index: 1000;
}

.modal-full .modal-content {
    min-height: 100vh;
}


svg.spinner {
    -webkit-animation: rotator 1.4s linear infinite;
            animation: rotator 1.4s linear infinite;
  }
  
  @-webkit-keyframes rotator {
    0% {
      -webkit-transform: rotate(0deg);
              transform: rotate(0deg);
    }
    100% {
      -webkit-transform: rotate(270deg);
              transform: rotate(270deg);
    }
  }
  
  @keyframes rotator {
    0% {
      -webkit-transform: rotate(0deg);
              transform: rotate(0deg);
    }
    100% {
      -webkit-transform: rotate(270deg);
              transform: rotate(270deg);
    }
  }
  .path {
    stroke-dasharray: 187;
    stroke-dashoffset: 0;
    -webkit-transform-origin: center;
            transform-origin: center;
    -webkit-animation: dash 1.4s ease-in-out infinite, colors 5.6s ease-in-out infinite;
            animation: dash 1.4s ease-in-out infinite, colors 5.6s ease-in-out infinite;
  }
  
  @-webkit-keyframes colors {
    0% {
      stroke: #efefef;
    }
    25% {
      stroke: #fefefe;
    }
    50% {
      stroke: #fff;
    }
    75% {
      stroke: #fff;
    }
    100% {
      stroke: #fff;
    }
  }
  
  @keyframes colors {
    0% {
      stroke: #efefef;
    }
    25% {
      stroke: #fefefe;
    }
    50% {
      stroke: #fff;
    }
    75% {
      stroke: #fff;
    }
    100% {
      stroke: #fff;
    }
  }
  @-webkit-keyframes dash {
    0% {
      stroke-dashoffset: 187;
    }
    50% {
      stroke-dashoffset: 46.75;
      -webkit-transform: rotate(135deg);
              transform: rotate(135deg);
    }
    100% {
      stroke-dashoffset: 187;
      -webkit-transform: rotate(450deg);
              transform: rotate(450deg);
    }
  }
  @keyframes dash {
    0% {
      stroke-dashoffset: 187;
    }
    50% {
      stroke-dashoffset: 46.75;
      -webkit-transform: rotate(135deg);
              transform: rotate(135deg);
    }
    100% {
      stroke-dashoffset: 187;
      -webkit-transform: rotate(450deg);
              transform: rotate(450deg);
    }
  }
  
  
  @-webkit-keyframes fadeInCheckbox {
    from {
      opacity: 0;
      -webkit-transform: rotateZ(-20deg);
    }
    to {
      opacity: 1;
      -webkit-transform: rotateZ(0deg);
    }
  }
  
  @keyframes fadeInCheckbox {
    from {
      opacity: 0;
      transform: rotateZ(-20deg);
    }
    to {
      opacity: 1;
      transform: rotateZ(0deg);
    }
  }
  

  @keyframes pulse {
    from { transform: scale(1); }
    50% { transform: scale(0.95); }
    to { transform: scale(1); }
  }
  
  .fe-pulse {
    animation-name: pulse;
    animation-duration: 3s;
    animation-iteration-count: infinite;
  }


/* @media screen and (min-width: 1000px) {
    .sidebar::after {
        left: 0;
        background-position: left top;
        -webkit-box-shadow: 1px 0 0 #e1e1e1 inset;
        box-shadow: 1px 0 0 #e1e1e1 inset;
    }
} */



/* admin page */
section#welcome {
    background: #f7f7f7;
    padding: 100px 0;
    /* margin-bottom: 80px; */
}

section#welcome .section-title h2 {font-size: 31px;}
.section-title.refer h2 {font-size: 23px;}
body.membership-settings .section-title h2 {
    font-size: 19px;
    text-transform: uppercase;
    text-align: center;
}

.btn-border {
    border-color: #000000;
    border-radius: 0;
    border-width: 3px;
    min-width: 100px;
    cursor: pointer;
}
.btn-edit {
    background: #de5f63;
    border-radius: 0;
    color: #fff!important;
    font-size: 12px;
}

.btn-border:hover {
    color: #fff;
    text-decoration: none;
    background: #353535;
}

body.membership-settings .btn-border {
    border-color: #efefef;
}
body.membership-settings .btn-border:hover {
    text-decoration: none;
    border-color: #545454;
    background: none;
    color: inherit;
}
body.membership-settings .btn-border.active {
    border: 3px solid #ff1471;
    color: #ff1471;
    font-weight: bold;
}

#accordionExample .card {
    margin-bottom: 15px;
}
#accordionExample .card .card-header{
    background-color: #fff;
}
.section-title{
    margin-bottom: 15px;
    /* ew david font-family: 'Montserrat', sans-serif; */
    -webkit-font-smoothing: antialiased;
}

.section-title p{
	color: #aaa7a7;
	position: relative;
	font-size: 14px;
	text-transform: uppercase;
    letter-spacing: 0.1em;
    font-family: 'Montserrat', sans-serif;
    -webkit-font-smoothing: antialiased;
    margin-bottom: 0;
}

.section-title h2{
	color: #413f3f;
	font-size: 40px;
    font-weight: 700;
    font-family: 'Montserrat', sans-serif;
    -webkit-font-smoothing: antialiased;
}

body.membership-settings .btn-border {
    border-color: #efefef;
}
body.membership-settings .btn-border:hover {
    text-decoration: none;
    border-color: #545454;
    background: none;
    color: inherit;
}
body.membership-settings .btn-border.active {
    border: 3px solid #ff1471;
    color: #ff1471;
    font-weight: bold;
}
.btn-primary.disabled, .btn-primary:disabled {
    color: #fff;
    background-color: #b9b9b9;
    border-color: #adadad;
}


/* Blog */

.post-preview img {
    width: 100%;
    margin-bottom: 10px;
}
p.post-meta {
    color: #9c9c9c;
    font-size: 12px;
    margin: 5px 0;
}
h2.post-title {
    font-size: 26px;
    margin-bottom: 15px;
}

/* box animation */

.viewer {
    height: 100%;
    margin-left: auto;
    margin-right: auto;
    max-width: 489px;
    width: 100%;
    background-image: url('/assets/images/box-animation-sprite.jpg');
    background-repeat: no-repeat;
    background-position: 0 50%;
  }
  
  .viewer.frame1 {
    background-position: -489px 50%;
  }
  
  .viewer.frame2 {
    background-position: -978px 50%;
  }
  
  .viewer.frame3 {
    background-position: -1467px 50%;
  }
  
  .viewer.frame4 {
    background-position: -1956px 50%;
  }
  
  .viewer.frame5 {
    background-position: -2445px 50%;
  }
  
  .viewer.frame6 {
    background-position: -2934px 50%;
  }
  
  .viewer.frame7 {
    background-position: -3423px 50%;
  }
  
  .viewer.frame8 {
    background-position: -3912px 50%;
  }
  
  .viewer.frame9 {
    background-position: -4401px 50%;
  }

  .viewer.frame10 {
    background-position: -4890px 50%;
  }


  
  @-webkit-keyframes drink-coffee {
    to {
      background-position: -1800px 50%;
    }
  }
  
  @keyframes drink-coffee {
    to {
      background-position: -1800px 50%;
    }
  }


/*Wave*/

.wave {
    position: absolute;
    left:0;
    right:0;
    top:0;
    bottom:0;
    z-index: 1;
  }
  
  .wave + .wave {
    z-index: 2;
  }

  .wave-wrapper {
      width: 100vw;
      height: 200px;
      position: relative;
  }
  .wave-wrapper.reverse {
    transform: rotateX(180deg);
  }



  
  
  body.foo {color: #3e4686;}
  body.foo .btn-secondary {
    background-color: #3d4686;
    border-color: #3d4686;
}
  body.foo section.main {
    background: #b2e3e3;
    padding: 100px 0 100px 0;
}
body.foo .product-box-wrap2 {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

body.foo .product-box-wrap2 .ringsize {
    background: white;
    padding: 13px 17px;
    border-radius: 8px;
    box-shadow: 2px 2px 4px #3d46864f;
}
body.foo .product-box-wrap2 img {
    max-width:500px;
}
.product-box2 {
    max-width:400px;
    color: #3e4686;
}
body.foo .breadcrumb-nav {background: #b2e3e3;}
body.foo .breadcrumb-nav ol {margin: 0;}

body.foo #about-product {
    background: #f596b4;
}

body.foo #about-product h1.product-tagline {
    margin: 0;
    font-size: 120px;
    color: #3e4686;
}

body.foo #ingredients-works,
body.foo #ingredients-works .ingredients-wrap {
    background: none;
}
body.foo #ingredients-works h1 {
    font-size: 80px;
    margin-bottom: 50px;
}

body.foo #ingredients-works .works-wrap {
    background: #b2e3e4;
    padding: 150px 0;
}

body.foo #accordion a.btn-link {
    color:#fff;
    font-size: 18px;
}
body.foo #accordion .card-body {
    color:#3d4686;
    font-size: 18px;
}

body.foo #winner-10k div.winner-text {max-width: 500px;}


@media screen and (max-width: 480px) {
/*    BODY {
        padding-top: 121px;
    }
*/
    body.foo .product-box-wrap2 {
        flex-direction: column;
    }
    body.foo .product-box-wrap2 img {
        max-width: 100%;
    }
    body.foo section.main {
        padding: 25px 0 25px 0;
    }
    .product-box2 {
        padding: 25px 0;
    }
    body.foo #about-product h1.product-tagline {
        font-size: 46px;
    }
    body.foo #ingredients-works h1 {
        font-size: 40px;
    }
    body.foo div.ingredients {padding-left: 30px;}
    
    body.foo #ingredients-works .works-wrap {
        padding: 75px 0;
    }

    body.foo #winner-10k div.flex.container {flex-direction: column;}

    BODY.entries-banner-shown {
        padding-top:175px;
    }
}





/*bubbles*/

/* #background-wrap {
    bottom: 0;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 10;
}

@-webkit-keyframes animateBubble {
    0% {
        margin-top: 1000px;
    }
    100% {
        margin-top: -100%;
    }
}

@-moz-keyframes animateBubble {
    0% {
        margin-top: 1000px;
    }
    100% {
        margin-top: -100%;
    }
}

@keyframes animateBubble {
    0% {
        margin-top: 1000px;
    }
    100% {
        margin-top: -100%;
    }
}

@-webkit-keyframes sideWays { 
    0% { 
        margin-left:0px;
    }
    100% { 
        margin-left:50px;
    }
}

@-moz-keyframes sideWays { 
    0% { 
        margin-left:0px;
    }
    100% { 
        margin-left:50px;
    }
}

@keyframes sideWays { 
    0% { 
        margin-left:0px;
    }
    100% { 
        margin-left:50px;
    }
} */

/* ANIMATIONS */

/* .x1 {
    -webkit-animation: animateBubble 25s linear infinite, sideWays 2s ease-in-out infinite alternate;
	-moz-animation: animateBubble 25s linear infinite, sideWays 2s ease-in-out infinite alternate;
	animation: animateBubble 25s linear infinite, sideWays 2s ease-in-out infinite alternate;
	
	left: -5%;
	top: 5%;
	
	-webkit-transform: scale(0.6);
	-moz-transform: scale(0.6);
	transform: scale(0.6);
}

.x2 {
    -webkit-animation: animateBubble 20s linear infinite, sideWays 4s ease-in-out infinite alternate;
	-moz-animation: animateBubble 20s linear infinite, sideWays 4s ease-in-out infinite alternate;
	animation: animateBubble 20s linear infinite, sideWays 4s ease-in-out infinite alternate;
	
	left: 5%;
	top: 80%;
	
	-webkit-transform: scale(0.4);
	-moz-transform: scale(0.4);
	transform: scale(0.4);
}

.x3 {
    -webkit-animation: animateBubble 28s linear infinite, sideWays 2s ease-in-out infinite alternate;
	-moz-animation: animateBubble 28s linear infinite, sideWays 2s ease-in-out infinite alternate;
	animation: animateBubble 28s linear infinite, sideWays 2s ease-in-out infinite alternate;
	
	left: 10%;
	top: 40%;
	
	-webkit-transform: scale(0.7);
	-moz-transform: scale(0.7);
	transform: scale(0.7);
}

.x4 {
    -webkit-animation: animateBubble 22s linear infinite, sideWays 3s ease-in-out infinite alternate;
	-moz-animation: animateBubble 22s linear infinite, sideWays 3s ease-in-out infinite alternate;
	animation: animateBubble 22s linear infinite, sideWays 3s ease-in-out infinite alternate;
	
	left: 20%;
	top: 0;
	
	-webkit-transform: scale(0.3);
	-moz-transform: scale(0.3);
	transform: scale(0.3);
}

.x5 {
    -webkit-animation: animateBubble 29s linear infinite, sideWays 4s ease-in-out infinite alternate;
	-moz-animation: animateBubble 29s linear infinite, sideWays 4s ease-in-out infinite alternate;
	animation: animateBubble 29s linear infinite, sideWays 4s ease-in-out infinite alternate;
	
	left: 30%;
	top: 50%;
	
	-webkit-transform: scale(0.5);
	-moz-transform: scale(0.5);
	transform: scale(0.5);
}

.x6 {
    -webkit-animation: animateBubble 21s linear infinite, sideWays 2s ease-in-out infinite alternate;
	-moz-animation: animateBubble 21s linear infinite, sideWays 2s ease-in-out infinite alternate;
	animation: animateBubble 21s linear infinite, sideWays 2s ease-in-out infinite alternate;
	
	left: 50%;
	top: 0;
	
	-webkit-transform: scale(0.8);
	-moz-transform: scale(0.8);
	transform: scale(0.8);
}

.x7 {
    -webkit-animation: animateBubble 20s linear infinite, sideWays 2s ease-in-out infinite alternate;
	-moz-animation: animateBubble 20s linear infinite, sideWays 2s ease-in-out infinite alternate;
	animation: animateBubble 20s linear infinite, sideWays 2s ease-in-out infinite alternate;
	
	left: 65%;
	top: 70%;
	
	-webkit-transform: scale(0.4);
	-moz-transform: scale(0.4);
	transform: scale(0.4);
}

.x8 {
    -webkit-animation: animateBubble 22s linear infinite, sideWays 3s ease-in-out infinite alternate;
	-moz-animation: animateBubble 22s linear infinite, sideWays 3s ease-in-out infinite alternate;
	animation: animateBubble 22s linear infinite, sideWays 3s ease-in-out infinite alternate;
	
	left: 80%;
	top: 10%;
	
	-webkit-transform: scale(0.3);
	-moz-transform: scale(0.3);
	transform: scale(0.3);
}

.x9 {
    -webkit-animation: animateBubble 29s linear infinite, sideWays 4s ease-in-out infinite alternate;
	-moz-animation: animateBubble 29s linear infinite, sideWays 4s ease-in-out infinite alternate;
	animation: animateBubble 29s linear infinite, sideWays 4s ease-in-out infinite alternate;
	
	left: 90%;
	top: 50%;
	
	-webkit-transform: scale(0.6);
	-moz-transform: scale(0.6);
	transform: scale(0.6);
}

.x10 {
    -webkit-animation: animateBubble 26s linear infinite, sideWays 2s ease-in-out infinite alternate;
	-moz-animation: animateBubble 26s linear infinite, sideWays 2s ease-in-out infinite alternate;
	animation: animateBubble 26s linear infinite, sideWays 2s ease-in-out infinite alternate;
	
	left: 80%;
	top: 80%;
	
	-webkit-transform: scale(0.3);
	-moz-transform: scale(0.3);
	transform: scale(0.3);
} */

/* OBJECTS */

/* .bubble {
    -webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	
    -webkit-box-shadow: 0 20px 30px rgba(0, 0, 0, 0.2), inset 0px 10px 30px 5px rgba(255, 255, 255, 1);
	-moz-box-shadow: 0 20px 30px rgba(0, 0, 0, 0.2), inset 0px 10px 30px 5px rgba(255, 255, 255, 1);
	box-shadow: 0 20px 30px rgba(0, 0, 0, 0.2), inset 0px 10px 30px 5px rgba(255, 255, 255, 1);
	
    height: 200px;
	position: absolute;
	width: 200px;
}

.bubble:after {
    background: -moz-radial-gradient(center, ellipse cover,  rgba(255,255,255,0.5) 0%, rgba(255,255,255,0) 70%); 
    background: -webkit-gradient(radial, center center, 0px, center center, 100%, color-stop(0%,rgba(255,255,255,0.5)), color-stop(70%,rgba(255,255,255,0))); 
    background: -webkit-radial-gradient(center, ellipse cover,  rgba(255,255,255,0.5) 0%,rgba(255,255,255,0) 70%); 
    background: -o-radial-gradient(center, ellipse cover,  rgba(255,255,255,0.5) 0%,rgba(255,255,255,0) 70%); 
    background: -ms-radial-gradient(center, ellipse cover,  rgba(255,255,255,0.5) 0%,rgba(255,255,255,0) 70%); 
    background: radial-gradient(ellipse at center,  rgba(255,255,255,0.5) 0%,rgba(255,255,255,0) 70%); 
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#80ffffff', endColorstr='#00ffffff',GradientType=1 ); 

	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	
    -webkit-box-shadow: inset 0 20px 30px rgba(255, 255, 255, 0.3);
	-moz-box-shadow: inset 0 20px 30px rgba(255, 255, 255, 0.3);
	box-shadow: inset 0 20px 30px rgba(255, 255, 255, 0.3);
	
	content: "";
    height: 180px;
	left: 10px;
	position: absolute;
	width: 180px;
} */


.lds-dual-ring {
    display: inline-block;
    width: 80px;
    height: 80px;
  }
  .lds-dual-ring:after {
    content: " ";
    display: block;
    width: 64px;
    height: 64px;
    margin: 8px;
    border-radius: 50%;
    border: 6px solid #fff;
    border-color: #fff transparent #FF5C83 transparent;
    animation: lds-dual-ring 1.2s linear infinite;
  }
  @keyframes lds-dual-ring {
    0% {
      transform: rotate(0deg);
    }
    100% {
      transform: rotate(360deg);
    }
  }
  


#dollar-bombs {
    position: absolute;
    background: #fff;
    z-index: 99999;
    width: 100%;
    top: 0;
    height: 100%;
}


.dollar-bombs.not-selected {opacity: 0.05;}
.dollar-bombs.selected {
    position: absolute;
    z-index: 999;
    top: 50%;
    left: 50%;
    margin-left: -50%!important;
    margin-top: -160px!important;
    background: #ffffff;
    opacity: 1;
    width: 100%!important;
    padding: 20px 0;
}


/*responsive styles*/

@media screen and (max-width: 599px) {

    div#attentive_overlay {
        z-index: 999999!important;
    }

    .justify-content-center-sm {
        justify-content: center!important;
    }

    .section-title {font-size: 20px;}

    #hero {
        background-size: cover;
        background-repeat: no-repeat;
        height: 380px;
        /*background-position: -145px center;*/
    }

    .hero-poly {
        width: 82vw;
        height: 51vw;
        background: url(../images/hero-poly-bg.png) no-repeat;
        position: absolute;
        left: 50%;
        top: -88px;
        background-size: contain;
        z-index: 999;
        margin-left: -41vw;
    }
    .hero-poly h1 {
        font-size: 26px;
        margin-bottom: 15px;
    }
    /*.hero-poly p {display: none!important;}
		cooper commenting this out for scott */

    #notification-bar div.discount {
        display: flex;
        font-size: 8px;
        width: 100%;
        align-items: center;
        justify-content: space-between;
    }
    #notification-bar .btn-primary {
        padding: 10px;
    }

    #experiences {
        position: relative;
        background-position: right bottom;
        padding: 25px 25px 0;
    }
    #experiences > h1 { 
        margin-top: 110px;
        font-size: 33px;
        line-height: 44px;
    }

    #reward-yourself div.yellow-box {
        padding: 40px 20px 50px!important;
        max-width: 97%;
        min-height: auto;
    }

    #reward-yourself div.yellow-box h3 {
        font-size: 20px;
        margin-bottom: 26px!important;
    }
    #reward-yourself div.yellow-box p {font-size: 13px;}

    #angry {margin: -50px 0 -20px!important;}

    #browse-category .cat {margin-bottom: 30px;}

    #home-quiz {margin-top: 0!important;}
    #home-quiz h2 {font-size: 6vw;}

    #quiz-result {
        max-width: 95%;
        font-size: 12px;
        width: 95%;
    }

    #winner .col-md {margin: 0 auto!important; max-width: auto;}

    .site-header {
        background-color: #fff;
    }

    .icon-wrapper div.flex {
        flex: 0 0 50%;
        max-width: 50%;
    }

    #mailing-list > div.container > div.flex {
        flex-direction: column;
    }
    #mailing-list .group {
        width: 90%;
        margin: 20px auto!important;
    }

    BODY.entries-banner-shown {
        padding-top:147px;
    }
    BODY.checkout.entries-banner-shown {
        padding-top:70px;
    }
    
    BODY.entries-banner-hidden {
        padding-top:94px;
    }
    #entries-banner {
        top: 58px;
        font-size: 14px;
    }
    BODY.checkout #entries-banner {
        display: none;
    }

    /* no BODY.checkout {padding-top: 0px!important;} */
    BODY.checkout main {padding-top: 0px!important;}
    BODY.checkout main div.order-md-1 {margin-bottom: 0px!important;}
    BODY.checkout main div.row.h-100 {
        /* flex-direction: column-reverse; */
        flex-direction: column;
    }

    #reward-yourself section.section {
        width: auto!important;
        height: auto!important;
    }

    #winners-hero {height:250px;}
    div.next-winner {top: -45px; }
    div.next-winner span.bright-pink {margin-bottom: 20px; }
    #winners-hero .btn-wrap {padding: 0 10px;}
    body.winners .flex-50 h1 {font-size: 16px;}
    body.winners .flex-50 h5 {font-size: 12px;}

   
    #cat-bath-bombs {
        padding: 0;
    }

    .product-cat .product-image {
        width: 90px;
    }
    .product-cat h1 {
        font-size: 30px;
    }

    .flex-wrap-reverse-sm {flex-wrap: wrap-reverse;}

    .product-cat h5.shopify-buy__product__title {font-size: 14px;}

}
/*Entries*/
@media screen and (max-width: 1000px) and (min-width: 767px) {

}

/*this came from main.php*/

      .Objektiv-Mk1-Light {
        font-family: 'objektiv-mk1', sans-serif;
        font-weight: 300;
        font-style: normal;
      }

      .Objektiv-Mk1-Regular {
        font-family: objektiv-mk1, sans-serif;
        font-weight: 400;
        font-style: normal;
      }

      .Objektiv-Mk1-Bold {
        font-family: objektiv-mk1, sans-serif;
        font-weight: 700;
        font-style: normal;
      }

      .playfair {font-family: 'Playfair Display', serif;font-weight: 400;}
      .playfair-black {font-family: 'Playfair Display', serif; font-weight: 900;}


      .bd-placeholder-img {
        font-size: 1.125rem;
        text-anchor: middle;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
      }

      @media (min-width: 768px) {
        .bd-placeholder-img-lg {
          font-size: 3.5rem;
        }
      }
	  
	  /* cooper desktop style tweaks 
      this is for checkout button */
	 ul.cd-cart-items {
		max-height: 73%;
	}
    
    /*adjust on super smalls*/
	@media screen and (max-width: 320px) {
        ul.cd-cart-items { max-height: 65%; }
    }
	@media screen and (min-width: 321px) and (max-width: 375px) {
        ul.cd-cart-items { max-height: 68%; }
    }
	@media screen and (min-width: 375px) {
        ul.cd-cart-items { max-height: 74%; }
    }
    
	/*active styles cmon randy!*/
	.btn-primary:active {
		background-color: #d85071 !important;
		border: 1px solid #d85071 !important;
	}
    /*country flag in checkout*/
    span.hold-this-label img {
        max-width: 35px;
    }

    /*for some reason there's a modal override preventing centering; this appears to fix*/
    .text-center { justify-content: center; }
    
    /* weirdness no more */
    #reviews-cover{ background-color: white; position: relative; }
    
    /* new element */
    section#similar-products { position: relative; background-color: white; padding: 2rem 0 2rem 0 !important; border-top: 13px solid #f59179; border-bottom: 13px solid #f59179; }
    
    /*cooper mobile styles*/
	@media screen and (max-width: 600px) {
        main section#experiences h1.text-center.mb-5 { margin-top: 20px !important; margin-bottom: 20px !important; }
		section#experiences { min-height: unset; }
	}
	@media screen and (max-width: 767px) {
		a#mini_cart div { right: 0px !important; }
        .flex.flex-wrap.ingredients ul { margin: 0 auto !important; }
	}
    
	/* nav tweaks */
    /*there's a clippath more than there should be*/
    @media screen and (min-width: 500px) and (max-width: 990px) {
        a.nav-link { clip-path: unset !important; }
    }
	@media screen and (min-width: 992px) and (max-width: 1103px) { 
		span#han_label {
			display: none;
		}
	}

    
    /* this is for two-line pink bar at the top */
    
    /*set this first for the product pages */
    html main { margin-top: 75px; } /* product page 75 is best cause the spacing it adds at the top -- but that's not on every page */
    html main { margin-top: 55px; } /* https://bubblybelle.com/shop needs 55 */
    html.h-100 main { margin-top: 0px !important; } /* this is the easiest way to target the checkout page */
    html.h-100 body.h-100:not(.checkout) main { margin-top: 67px !important; } /* this collides with above on the about page and stuff, body class fixes */
    
    @media screen and (min-width: 483px) {
        html main { margin-top: 55px; } /* was 115 */
    }
	
    @media screen and (min-width: 768px) {    
        html main { margin-top: 56px; }
    }

    /*and i guess now override every fucking issue*/
    @media screen and (max-width: 406px) {
        body.gift-sets main, body.bath-bombs main, body.essential-oils main, body.winners main { margin-top: -6px; }
        body.winners main { margin-top: 112px; }
        body.about main { margin-top: 111px; } 
        body.reveal main { margin-top: 160px; } 
        body.home main { margin-top: 38px; } 
    }
    
    @media screen and (min-width: 407px) { 
        body.gift-sets main, body.bath-bombs main, body.essential-oils main, body.winners main { margin-top: 55px; }
        body.about main { margin-top: 85px; } 
        body.reveal main { margin-top: 138px; } 
        body.home main { margin-top: 15px; } 
    }
    
    @media screen and (min-width: 483px) and (max-width: 725px) {
        body.home main { margin-top: 55px; } 
    }
    
    @media screen and (min-width: 407px) and (max-width: 478px) { 
        body.gift-sets main, body.bath-bombs main, body.essential-oils main, body.winners main { margin-top: 14px; }
    }
    
    @media screen and (min-width: 726px) { 
        body.gift-sets main, body.bath-bombs main, body.essential-oils main, body.winners main { margin-top: 52px; }
        body.about main { margin-top: 63px; } 
        body.reveal main { margin-top: 68px; } 
        body.home main { margin-top: 52px; } 
    }
	
	/* this is archival -- this is for 3-line pink bar 
    html main { margin-top: 75px; }
    
    @media screen and (min-width: 483px) {
        html main { margin-top: 115px; }
    }
    @media screen and (min-width: 768px) {    
        html main { margin-top: 52px; }
    }

    @media screen and (max-width: 406px) {
        body.gift-sets main, body.bath-bombs main, body.essential-oils main, body.winners main { margin-top: 38px; }
        body.winners main { margin-top: 112px; }
        body.about main { margin-top: 111px; } 
        body.reveal main { margin-top: 160px; } 
        body.home main { margin-top: 38px; } 
    }
    
    @media screen and (min-width: 407px) { 
        body.gift-sets main, body.bath-bombs main, body.essential-oils main, body.winners main { margin-top: 74px; }
        body.about main { margin-top: 85px; } 
        body.reveal main { margin-top: 138px; } 
        body.home main { margin-top: 15px; } 
    }
    
    @media screen and (min-width: 483px) and (max-width: 725px) {
        body.home main { margin-top: 76px; } 
    }
    
    @media screen and (min-width: 407px) and (max-width: 478px) { 
        body.gift-sets main, body.bath-bombs main, body.essential-oils main, body.winners main { margin-top: 14px; }
    }
    
    @media screen and (min-width: 726px) { 
        body.gift-sets main, body.bath-bombs main, body.essential-oils main, body.winners main { margin-top: 52px; }
        body.about main { margin-top: 63px; } 
        body.reveal main { margin-top: 114px; } 
        body.home main { margin-top: 52px; } 
    }	*/
    
    /* marquee stuff */
.logo-marquee {
  width: 85vw;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 1em;
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: box;
  display: flex;
  -webkit-box-align: center;
  -moz-box-align: center;
  -o-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  overflow: hidden;
}
.logo-marquee-content {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: box;
  display: flex;
  -webkit-animation: marquee 40s linear infinite running;
  -moz-animation: marquee 40s linear infinite running;
  -o-animation: marquee 40s linear infinite running;
  -ms-animation: marquee 40s linear infinite running;
  animation: marquee 40s linear infinite running;
}
.logo-marquee-content:hover {
  -webkit-animation-play-state: paused;
  -moz-animation-play-state: paused;
  -o-animation-play-state: paused;
  -ms-animation-play-state: paused;
  animation-play-state: paused;
}
.logo-marquee-tag {
  width: 200px;
  margin: 0 0.5em;
  padding: 0.5em;
 /*background: rgba(255,255,255,0.1);*/
  display: -webkit-inline-box;
  display: -moz-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-box;
  display: inline-flex;
  -webkit-box-align: center;
  -moz-box-align: center;
  -o-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-box-pack: center;
  -moz-box-pack: center;
  -o-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  -ms-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.logo-marquee-tag:hover {
  /*background: rgba(255,255,255,0.5);*/
  -webkit-transform: scale(1.1);
  -moz-transform: scale(1.1);
  -o-transform: scale(1.1);
  -ms-transform: scale(1.1);
  transform: scale(1.1);
  cursor: pointer;
}
@-moz-keyframes marquee {
  0% {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -o-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    -webkit-transform: translate(-50%);
    -moz-transform: translate(-50%);
    -o-transform: translate(-50%);
    -ms-transform: translate(-50%);
    transform: translate(-50%);
  }
}
@-webkit-keyframes marquee {
  0% {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -o-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    -webkit-transform: translate(-50%);
    -moz-transform: translate(-50%);
    -o-transform: translate(-50%);
    -ms-transform: translate(-50%);
    transform: translate(-50%);
  }
}
@-o-keyframes marquee {
  0% {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -o-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    -webkit-transform: translate(-50%);
    -moz-transform: translate(-50%);
    -o-transform: translate(-50%);
    -ms-transform: translate(-50%);
    transform: translate(-50%);
  }
}
@keyframes marquee {
  0% {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -o-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    -webkit-transform: translate(-50%);
    -moz-transform: translate(-50%);
    -o-transform: translate(-50%);
    -ms-transform: translate(-50%);
    transform: translate(-50%);
  }
}

/* shrink logo on super tiny */
@media screen and (max-width: 320px) {
	a.navbar-brand {
		zoom: 80%;
	}
}


/* new home page slider styles */
.is-playfair { font-family: 'Playfair Display'; }
.text-black { color: black; }
a.text-black:hover, a.text-black:active, a.text-black:focus  { color: black; }
.bg-soft-blue { background-color: #e6f6ff; }
.is-star { color: #FFCD00; }
body.new-layout { text-transform: lowercase; }

.slick-dotted.slick-slider {
    margin-bottom: unset !important;
}

/* i dont love that the backgrounds are here now but lets make do
	this applies to all the backgrounds */
.home-page-hero-slider .single-slide {
    background-size: cover;
    background-position: center;
}

/* this is for the cta which is different now */
.new-slider-og-cta-container {
    background: url(/assets/images/hero-poly-bg.png) no-repeat;
    padding: 1rem;
    height: 200px;
}

/* now with the individual backgrounds */
/* desktop background */
.home-page-hero-slider .bundle-slide { background-image: url("../images/bb_bundle_hero.jpg") }
.home-page-hero-slider .body-scrubs-slide { background-image: url("../images/bb_scrub_hero.jpg") }

/* home page adjustment to the categories */
@media screen and (min-width: 992px) and (min-width: 1200px) { 
    .row.category-list div.col-md-6:nth-child(4) {
        margin-left: 17%;
    }
}

@media screen and (min-width: 768px) and (max-width: 991px) { 
    .row.category-list div.col-md-6:nth-child(5) {
        margin-left: 25%;
    }
}

div#cat-hero.new-layout {
    height: 520px;
    text-align: right;
    text-transform: lowercase;
}

div#cat-hero.new-layout h1, div#cat-hero.new-layout p {
    max-width: 500px;
    margin-left: auto;
    padding-right: 5%;
    text-align: left;
    color: #fff;
}

div#cat-hero.new-layout h1 {
    position: relative;
    top: 50%;
    font-size: 3.5rem;
}


div#cat-hero.new-layout p {
    position: relative;
    font-size: 1.1rem;
    top: 50%;
}

/* desktop styles */
.new-product-grid.is-special-mention {
    padding: 0;
    overflow-y: hidden;
    /* height: 300px; */
}
.new-product-grid .npg-content {
    position: relative;
    top: -60px;
    width: 80%;
    margin: 0 auto 0 auto;
    background-color: white;
    box-shadow: 4px 4px 4px #6d6d6d63;
    padding: 10px;
    line-height: 1.3;
}

.new-product-grid .product-feature h5 a { font-weight: 700 !important; }

.new-product-grid .npg-content p.heading {
    color: #ee4a7f;
    font-size: 1.2rem;
}

.new-product-grid .npg-content p:not(.heading) {
    font-size: 0.8rem;
}

/* 576 |} 768 | 992 | 1200 */
.new-product-grid {
    flex: 0 0 50%;
    padding: 1rem 10px 1rem 10px;
}
@media screen and (max-width: 768px) {
	body.bath-bombs.new-layout main #cat-hero {
		background-image: url('/assets/images/collection_bb_header_mobile.png') !important;
		height: 440px;
	}
	body.gift-sets.new-layout main #cat-hero {
		background-image: url('/assets/images/collection_gs_header_mobile.png') !important;
		height: 440px;
	}
	body.essential-oils.new-layout main #cat-hero {
		background-image: url('/assets/images/collection_eo_header_mobile.png') !important;
		height: 440px;
	}
}
@media screen and (min-width: 768px) {
	.new-product-grid {
		flex: 0 0 33%;
	}
}
@media screen and (min-width: 992px) {
	/*just adjust the flex here*/
	.new-product-grid {
		flex: 0 0 20%;
	}
}

/* cooper adding the fomo styles here */

#customer-experience {
	position: fixed;
	bottom: -110px;
	left: 15px;
	height: 75px;
	max-width: 90%;
	width: 330px;
	border: 3px solid #f4f4f4;
	transition: all 400ms;
	border-radius: 10px;
	background-color: #ffffff;
}
#customer-experience.is-visible {
	bottom: 95px;
	left: 15px;
	z-index: 16;
}
#customer-experience .ce-product_image {
	width: 68px;
	height: 68px;
	margin-left: 0.4rem;
}
#customer-experience .wrapper {
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: 69%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 31%;
}
#customer-experience .wrapper .buyer {
	font-size: 11px;
}
#customer-experience .wrapper .ce-product_name {
	font-size: 16px !important;
	font-weight: 600;
	text-decoration: none;
	color: #eb3775;
	line-height: 1.2;
}
#customer-experience .wrapper .time {
    font-size: 9px;
}

/* overrides the placement of the widget without the gray bar */
#customer-experience.is-visible {
	bottom: 15px !important;
	max-width: 79%; 
}
#customer-experience.is-visible img {
	max-width: 50px;
	max-height: 50px;
	position: relative;
	top: 10px;
	left: 3px;
}

#customer-experience.is-visible .wrapper {
	left: 28%;
	width: 72%;
}

#customer-experience.is-visible .wrapper .ce-buyer {
	font-size: 11px;
}

#customer-experience.is-visible .wrapper .textcontainer span {
	font-size: 16px !important;
}

#customer-experience.is-visible .ce-time {
	font-size: 11.5px;
}	

@media screen and (min-width: 700px) {
	#customer-experience .ce-product_image {
		margin-left: 1.1rem;
	}
}

a.bg-pink {
	color: white;
    background-color: #fe5b82;
    width: 13%;
    display: inline-block;
    margin-bottom: 1rem;
    font-size: 1.1rem;
    line-height: 2.5;
    text-align: center;
    margin-right: 2%;
}

@media screen and (max-width: 768px) {
	.modal-ring-container {
		padding: 0 !important;
		margin: 0 auto 0 auto;
	}
}

@media screen and (max-width: 768px) {
	.new-product-grid.is-special-mention {
		flex: 0 0 100%;
		height: unset;
	}

	.npg-content {
		font-size: 1.7rem;
	}

	.npg-content p:nth-child(2) {
		font-size: 1rem !important;
	}
	.npg-content p {
		max-width: 80%;
		margin: 0 auto 0 auto;
	}
	
	.new-product-grid .npg-content p.heading {
		font-size: 1.7rem;
	}
	.npg-content p:nth-child(2) {
		font-size: 1.3rem !important;
	}
	.new-product-grid .npg-content {
		padding: 30px;
	}
}

@media screen and (min-width: 992px) {
	.product-feature a img {
		max-width: 200px;
		margin: 0 auto 0 auto;
		display: block;
	}
}

.loox_review_item h5.reviewer span.date {
    font-family: sans-serif;
    font-size: 0.9rem;
}

.loox_review_item {
    min-height: 140px;
}

div#loox_db_reviews { position: relative; z-index: 1; margin-top: 40px}