/** Shopify CDN: Minification failed

Line 14:0 Comments in CSS use "/* ... */" instead of "//"
Line 18:2 Unexpected "0%"
Line 19:2 Unexpected "100%"
Line 24:18 Expected percentage but found ";"
Line 28:18 Expected percentage but found ";"
Line 38:45 Expected percentage but found ";"
Line 42:45 Expected percentage but found ";"
Line 52:46 Expected percentage but found ";"
Line 56:46 Expected percentage but found ";"

**/
// ANIMATION KEYFRAMES

/* -- Banner Slide -- */
@keyframes bannerSlide {
  0% {transform: translate3d(0, 0, 0)}
  100% {transform: translate3d(-1692px, 0, 0)}
}

/* -- Fade In -- */
@keyframes fadeIn {
	0%   {opacity:0;};
	100% {opacity:1;};
}
@-webkit-keyframes fadeIn {
	0%   {opacity:0;};
	100% {opacity:1;};
}
.fadeIn.visible {
	opacity: 0;
	animation: fadeIn 1s ease-in-out forwards; 
}

/* -- Slide In Left -- */
@keyframes slideInLeft {
	0%   {opacity:0; transform:translateX(90px)};
	100% {opacity:1; transform:translateX(0px)};
}
@-webkit-keyframes slideInLeft {
	0%   {opacity:0; transform:translateX(90px)};
	100% {opacity:1; transform:translateX(0px)};
}
.slideInLeft.visible {
	opacity: 0;
	animation: slideInLeft 1s ease-in-out forwards; 
}

/* -- Slide In Right -- */
@keyframes slideInRight {
	0%   {opacity:0; transform:translateX(-90px)};
	100% {opacity:1; transform:translateX(0px)};
}
@-webkit-keyframes slideInRight {
	0%   {opacity:0; transform:translateX(-90px)};
	100% {opacity:1; transform:translateX(0px)};
}
.slideInRight.visible {
	opacity: 0;
	animation: slideInRight 1s ease-in-out forwards; 
}

html,body {
  
}

html {
  scroll-behavior: smooth;
}

body {
  letter-spacing: 0;
}

h1 {
  letter-spacing: 0;
  line-height: 1.1;
  text-wrap: balance;
}

h2, .h1 {
  color: #3dae2b;
  font-size: 250%;
  font-weight: 500;
  line-height: 1.2;
  margin: 0 0 10px;
  letter-spacing: 0;
  text-wrap: balance;
}
@media (max-width: 767px) {
  h2, .h1 {
    font-size: 190%;
  }
}

h3 {
  color: #3dae2b;
  font-size: 175%;
  font-weight: 500;
  line-height: 1.2;
  margin: 0 0 10px;
  letter-spacing: 0;
  text-wrap: balance;
}
@media (max-width: 767px) {
  h3 {
    font-size: 150%;
  }
}

.page-width {
  padding: 0 2.5rem;
}
@media (max-width: 767px) {
  .page-width {
    padding: 0 2.2rem;
  }
}



.header__icon--search {
    display: none;
}
.header__submenu.list-menu {
    padding: 10px 0;
}

.button {
  border: 2px solid #3dae2b;
  background: transparent;
  color: #3dae2b;
  font-weight: 600;
  padding: 10px 30px;
  border-radius: 30px;
  transition: .2s;
  --border-offset: none;
  min-height: 30px;
}
.button:hover,
.button:focus {
  
}
.button:before,
.button:after {
  display: none; 
}
.button--primary,
.product-form__submit {
  background: #fff;
  border-color: #3dae2b;
  color: #000;
}
.button--primary:hover,
.product-form__submit:hover {
  background: #3dae2b;
  color: #fff;
}
.button--outline {
  background: transparent;
}
.button--white {
  border-color: #fff;
  color: #fff;
}
.button--white:hover,
.button--white:focus {
  background: #fff;
  color: #000;
}
.button--blue {
  border-color: rgba(7, 66, 182, 1);
  background: rgba(7, 66, 182, 1);
  color: #fff;
}
.button--blue:hover,
.button--blue:focus {
  background: #fff;
  color: #000;
}
.button--pink {
  border-color: #ee4693;
  color: #000;
}
.button--pink:hover,
.button--pink:focus {
  background: #ee4693;
  color: #fff;
}


.main-page-title {
  color: #3dae2b;
  text-align: center;
}


.rich-text__heading.h0 {
  font-size: 300%;
  font-weight: 300;
  color: #3dae2b;
  text-transform: uppercase;
}
.rich-text__blocks {
  max-width: 100rem!important;
}


#insta-feed {
  margin-left: calc(-100vw / 2 + 100% / 2)!important;
  margin-right: calc(-100vw / 2 + 100% / 2)!important;
  width: 100vw!important;
  padding: 0 7px;
}
#insta-feed h2 {
  color: #3dae2b;
}


.shopify-section .jdgm-carousel-wrapper {
  padding: 0;
}
.shopify-section .jdgm-carousel-wrapper .jdgm-carousel__item-wrapper {
    height: 400px;
}


.accordion {
  border-color: #3dae2b!important;
}
.accordion:first-child {
  border-top: none;
}
.accordion summary {
  padding: 1.5rem 15px!important;
}
.accordion .accordion__content {
  padding: 0 15px!important;
}

.product .product__info-wrapper .product__accordion {
  display: none;
}


/* Announcement Bar */

#shopify-section-announcement-bar .announcement-bar {
  background: #3dae2b;
}
#shopify-section-announcement-bar .announcement-bar .h5 {
  color: #fff;
  font-weight: 500;
}


/* Header */

.header .header__inline-menu,
.header .header__icons {
  flex: 1;
}
.header .header__inline-menu .list-menu--inline {
  gap: 15px;
}
.header__icons {
  justify-content: flex-end;
  align-items: center;
  gap: 8px;
  padding: 0;
}
.header__extra-links {
  display: none;
}
.header__extra-links a {
  color: #000;
  font-size: 17px;
  font-weight: 500;
  text-decoration: none;
}
.header__extra-links a:hover,
.header__extra-links a:focus {
  text-decoration: underline;
}

@media (max-width: 767px) {
  .header__heading-logo {
    max-width: 120px!important;
  }
  .header__icons {
    gap: 0;
  }
}

.header .mega-menu__content {
  
}
.header .mega-menu__content .mega-menu__link {
  
}

@media screen and (min-width: 990px) {
  .header {
    display: flex;
    justify-content: space-between;
  }
  .header--middle-left .header__inline-menu {
    flex: 1;
    display: flex;
    justify-content: end;
  }
  .header .header__inline-menu .list-menu__item {
    font-size: 17px;
    font-weight: 500;
    color: #000;
  }
  .header .header__inline-menu .list-menu__item:hover {
    color: #000;
    text-decoration: none!important;
  }
  .header__extra-links {
    display: block;
  }
}


.header #karma-nav {
  text-align: center;
}
.header #karma-nav .mega-menu__content .mega-menu__content__wrapper {
  max-width:900px; 
  margin:0 auto; 
  text-align:center; 
}
.header #karma-nav .mega-menu__list {
  display: flex;
  justify-content: center;
}
.header #karma-nav .image-links {
  display: flex;
  justify-content: center;
  gap: 20px;
}
.header #karma-nav .image-links a {
  display: block;
  width: 120px;
  aspect-ratio: 1;
  overflow: hidden;
  border-radius: 100%;
  border: 0px solid transparent;
  transition: .2s;
}
.header #karma-nav .image-links a:hover {
  border: 3px solid #fff;
}
.header #karma-nav .image-links a img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.header #karma-nav #Details-HeaderMenu--locations .mega-menu__content__wrapper {
  display: flex;
  gap: 20px;
  justify-content: center;
  align-items: center;
}
.header #karma-nav #Details-HeaderMenu--locations .mega-menu__content__wrapper div {
  flex: 1;
}
.header #karma-nav #Details-HeaderMenu--locations .mega-menu__content__wrapper div a {
  font-weight: 700;
  color: #fff;
}
.header #karma-nav #Details-HeaderMenu--locations .mega-menu__content__wrapper div:nth-child(1),
.header #karma-nav #Details-HeaderMenu--locations .mega-menu__content__wrapper div:nth-child(4) {
  text-align: left;
  line-height: 1.3;
}
.header #karma-nav #Details-HeaderMenu--locations .mega-menu__content__wrapper div:nth-child(2) a img,
.header #karma-nav #Details-HeaderMenu--locations .mega-menu__content__wrapper div:nth-child(3) a img {
  display: block;
  width: 150px;
  aspect-ratio: 1;
  overflow: hidden;
  border-radius: 100%;
  border: 0px solid transparent;
  margin: 0 auto 15px;
  transition: .2s;
}

/* Mega Menu */

.mega-menu-panel__wrapper {
  display: flex;
  justify-content: center;
  gap: 60px;
}
.mega-menu-panel__col {
  flex: 1;
}
.mega-menu-panel__col--nav {
  max-width: 200px;
}
.mega-menu-panel__col--info {
  max-width: 400px;
}
.mega-menu-panel__col--img {
  max-width: 300px;
}
.mega-menu-panel__col img {
  width: 100%;
}
.mega-menu-panel__heading {
  color: #3dae2b;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.2;
  margin: 0 0 10px;
}
.mega-menu-panel__col--nav ul {
  list-style: none;
  padding: 0;
}
.mega-menu-panel__col--nav ul a {
  display: block;
  color: #000;
  font-weight: 500;
  text-decoration: none;
  padding: 4px 0;
}
.mega-menu-panel__col--nav ul a:hover,
.mega-menu-panel__col--nav ul a:focus {
  text-decoration: underline;
}

/* Mobile Menu */

.header .menu-drawer {
  width: calc(100vw - 9rem);  
}

/* Footer */

.footer .footer__content-top {
  padding-top: 10px;
  padding-bottom: 10px;
}

.footer__blocks-wrapper {
  display: flex!important;
  flex-flow: column;
  justify-content: center;
  text-align: center;
}
.footer__blocks-wrapper .grid__item {
  flex: 1!important;
}
.footer__blocks-wrapper .grid__item:last-child {
  flex: 2!important;
}
.footer__blocks-wrapper .footer-block-image img {
  width: 200px;
}
.footer-block--newsletter {
  margin-top: 20px!important;
}
.footer__list-social .list-social__item svg path {
  fill: #3dae2b;
}
footer .footer-block__image-wrapper {
  box-shadow: none;
  border: none;
}

.newsletter-form.karma-newsletter-form {
  margin-bottom: 15px;
}
.karma-newsletter-form .newsletter-form__field-wrapper .field:after {
  border-radius: 30px;
  border-color: #3dae2b;
  border: none!important;
  box-shadow: none;
}
.karma-newsletter-form .newsletter-form__field-wrapper .field__input {
  border-radius: 30px;
  border: 1px solid #999;
}
.karma-newsletter-form .newsletter-form__field-wrapper .field__input:focus {
  box-shadow: 0 0 0 calc(0.1rem + var(--inputs-border-width)) #3dae2b;
  box-shadow: none!important;
  border: 2px solid #3dae2b;
}
.karma-newsletter-form .newsletter-form__field-wrapper .newsletter-form__button {
  background: #3dae2b!important;
  width: fit-content;
  margin: 0;
  right: 10px;
  top: 9px;
  height: auto;
  padding: 7px 15px;
  border-radius: 15px;
  font-weight: 700;
  color: #fff;
  text-shadow: 0 0 1px rgba(0,0,0,.8);
  z-index: 2;
  transition: .2s;
}
.karma-newsletter-form .newsletter-form__field-wrapper .newsletter-form__button:hover, 
.karma-newsletter-form .newsletter-form__field-wrapper .newsletter-form__button:focus {
  background: #111!important;
}
  
.footer .footer-block--karma-extra {
  margin-top: 15px;
  p {
    width: 100%;
    max-width: 800px;
    font-size: 12px;
    margin: 0 auto;
    text-align: center;
  }
}

@media (max-width: 991px) {
  .footer__blocks-wrapper {
    flex-flow: wrap!important;
    justify-content: space-between;
    row-gap: 20px!important;
  } 
  .footer .footer__blocks-wrapper .grid__item:first-child {
    width: 100%;
    flex: none !important;
  }
  .footer .footer__blocks-wrapper .grid__item:last-child {
    width: 100%;
    flex: none !important;
  }
  .footer .footer__blocks-wrapper .grid__item .footer-block__details-content .list-menu__item--link {
    padding: 5px 0;
  }
}
@media (max-width: 767px) {
  .footer .footer__content-top {
    padding: 0 2.2rem;
  }
  .footer .footer__blocks-wrapper .grid__item {
    width: 45%;
    flex: none !important;
    margin: 0;
  }
  .footer .footer__blocks-wrapper .grid__item:first-child {
    width: 100%;
  }
  .footer .footer__blocks-wrapper .grid__item .footer-block__details-content {
    margin-bottom: 20px;
  }
}


/* ------ SCROLLING BANNER ------ */
.logo-banner {
  display: block!important;
  position: relative;
  overflow: hidden;
  background: #3aae2a;
  color: #fff;
}
.logo-banner-wrapper {
  display: block!important;
  height: 60px;
  width: 5076px;
  background-image: url('/cdn/shop/files/karma-banner-logo.png?v=1675790435');
  background-size: 350px;
  background-position: center;
  background-repeat: repeat-x;
  animation: bannerSlide 60s linear infinite;
}
.logo-banner--where-to-buy .logo-banner-wrapper {
  background-image: url('/cdn/shop/files/k-where-to-buy.png?v=1682352133');
}
@keyframes bannerSlide {
  0% {transform: translate3d(0, 0, 0)}
  100% {transform: translate3d(-1692px, 0, 0)}
}
.logo-banner--blue {
  background-color: #0848bd;
}
.logo-banner--purple {
  background-color: #7e57c6;
}
.logo-banner--new {
  background-color: #7e57c6;
}
.logo-banner--new .logo-banner-wrapper {
  background-image: url('/cdn/shop/files/find-your-good-marquee.svg?v=1707885654');
  background-size: 320px;
}

@media (max-width: 767px) {
  .logo-banner-wrapper {
    height: 40px;
    background-size: 300px;
  }
}

/* ------ end scrolling banner ------ */


.image-strip {
  position: relative;
  overflow: hidden;
  height: 300px;
  background: #eee;
  display: flex;
  justify-content: center;
}
.image-strip img {
  flex: 1;
  object-fit: cover;
}
.image-strip__icon {
  position: absolute;
  top: 0; left: 0;
  height: 100%; width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 30px 0;
}
.image-strip__icon img {
  height: 100%; width: 100%;
  object-fit: contain;
  filter: brightness(0) invert(1);
}


/* --- HOMEPAGE --- */

/* Hero */
.homepage-video-hero {
  width: 100%;
  aspect-ratio: 21/7.9;
  overflow: hidden;
}
.homepage-video-hero video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  margin-bottom: -10px;
}
@media (max-width: 767px) {
  .homepage-video-hero {
    aspect-ratio: 2/1;
  }
  .homepage-video-hero video {
    transform: scale(1.35);
  }
}



/* Intro Section */
#shopify-section-template--17264298983719__39b27f92-6194-487a-8d5d-e5f59544b268 {}
#shopify-section-template--17264298983719__39b27f92-6194-487a-8d5d-e5f59544b268 .image-with-text__heading {
  color: #3aae2a;
  font-weight: 200;
  text-transform: uppercase;
}
@media screen and (min-width: 990px) {
  #shopify-section-template--17264298983719__39b27f92-6194-487a-8d5d-e5f59544b268 .image-with-text__content {
    padding: 40px 0;
  }
}



@media screen and (max-width: 991px) {
  .image-with-text .image-with-text__content {
    padding: 25px 0;
  }
}


@media screen and (min-width: 990px) {
  .product--medium:not(.product--no-media) .product__media-wrapper, 
  .product--small:not(.product--no-media) .product__info-wrapper {
      max-width: 47.5%!important;
  }
}


.product__info-container .caption-with-letter-spacing {
  font-size: 1.15em;
  color: #3DAE2B;
  margin-bottom: 5px;
}



.quantity {
  background-color: #fff;
}
.product__info-wrapper .product-form__input--pill input[type=radio]+label {
  border: 2px solid #ccc;
  background-color: #fff;
  font-weight: 500;
}
.product__info-wrapper .product-form__input--pill input[type=radio]:checked+label {
  color: #fff;
  background-color: #3DAE2B;
  border: 2px solid #3DAE2B;
}





/* ------ START PRODUCT SHOWCASE SECTION ------ */

.product-showcase__wrapper {
  display: flex;
  align-items: center;
}
.product-showcase__content {
  flex-grow: 0;
  padding: 40px;
}
.product-showcase__new-badge {
  color: #3dae2b;
  font-weight: 700;
  margin-bottom: 10px;
  width: 120px;
}
.product-showcase__content__subheading {
  font-size: 120%;
  font-weight: 300;
  text-transform: uppercase;
  letter-spacing: 2px;
  margin-top: 0;
  margin-bottom: 20px;
}  
.product-showcase__content h2 {
  margin-top: 0;
  margin-bottom: 20px;
}
.product-showcase__content__description {
  font-size: 115%;
  margin-bottom: 30px;   
}
.product-showcase__content__description span,
.product-showcase__content__description strong {
  color: #3dae2b;
  font-weight: 700;
}
.product-showcase__gallery {
  background-color: #eeeeee;
  width: 50vw;
  overflow: hidden;
  height: 600px;
  padding: 30px;
  flex-shrink: 0;
  margin-right: calc( -100vw / 2 + 100% / 2 );
  display: flex;
  justify-content: flex-start;
}
.product-showcase__gallery-item {
  margin: 0 -40px;
  width: 250px;
}
.product-showcase__gallery-item img {
  height: 100%;
  width: auto;
}

.product-showcase__gallery-item img.hidden {
  opacity: 0;
}

.gallery-on-right .product-showcase__gallery img.visible {
  animation: slideInLeft 1s ease-in-out forwards;   
}
.gallery-on-right .product-showcase__gallery .product-showcase__gallery-item:nth-child(1) img.visible {animation-delay: .1s}
.gallery-on-right .product-showcase__gallery .product-showcase__gallery-item:nth-child(2) img.visible {animation-delay: .2s}
.gallery-on-right .product-showcase__gallery .product-showcase__gallery-item:nth-child(3) img.visible {animation-delay: .3s}
.gallery-on-right .product-showcase__gallery .product-showcase__gallery-item:nth-child(4) img.visible {animation-delay: .4s}
.gallery-on-right .product-showcase__gallery .product-showcase__gallery-item:nth-child(5) img.visible {animation-delay: .5s}
.gallery-on-right .product-showcase__gallery .product-showcase__gallery-item:nth-child(6) img.visible {animation-delay: .6s}

.gallery-on-left .product-showcase__gallery img.visible {
  animation: slideInRight 1s ease-in-out forwards;   
}
.gallery-on-left .product-showcase__gallery .product-showcase__gallery-item:nth-child(1) img.visible {animation-delay: .1s}
.gallery-on-left .product-showcase__gallery .product-showcase__gallery-item:nth-child(2) img.visible {animation-delay: .2s}
.gallery-on-left .product-showcase__gallery .product-showcase__gallery-item:nth-child(3) img.visible {animation-delay: .3s}
.gallery-on-left .product-showcase__gallery .product-showcase__gallery-item:nth-child(4) img.visible {animation-delay: .4s}
.gallery-on-left .product-showcase__gallery .product-showcase__gallery-item:nth-child(5) img.visible {animation-delay: .5s}
.gallery-on-left .product-showcase__gallery .product-showcase__gallery-item:nth-child(6) img.visible {animation-delay: .6s} 


.gallery-on-left .product-showcase__gallery {
  order: 1;
  margin-right: 0;
  margin-left: calc( -100vw / 2 + 100% / 2 );
  
  flex-direction: row-reverse;
}
.gallery-on-left .product-showcase__content {
  order: 2;
}

/* Media Queries */

@media (max-width:767px) {
  .product-showcase__wrapper {
    flex-flow: column;
  }
  .product-showcase__gallery {
    height: 360px;
    width: 100vw;
    padding: 30px 20px;
    margin-right: 0;
    order: 1;
    overflow: auto;
    white-space: nowrap;
  }
  .product-showcase__gallery-item {
    margin: 0px -20px;
    width: 140px;
  }
  .gallery-on-left .product-showcase__gallery {
    margin-left: 0;
    flex-direction: row;
  }
  .product-showcase__content {
    order: 2;
    padding: 30px 10px;
  }
}

/* ------ END PRODUCT SHOWCASE ------ */








.karma-difference-lifestyle .image-main {
  width: 100%;
  margin-bottom: -10px;
}
.karma-difference-lifestyle .flex-container {
  overflow: hidden;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}
.karma-difference-lifestyle .flex-container .image-left {
  flex: 1;
  text-align: left;
}
.karma-difference-lifestyle .flex-container .image-left img {
  width: 300px;
  margin-left: -15%;
  margin-bottom: 0;
}
.karma-difference-lifestyle .flex-container .image-center {
  flex: 1;
  text-align: center;
}
.karma-difference-lifestyle .flex-container .image-center img {
  width: 600px;
  margin-bottom: 0;
}
.karma-difference-lifestyle .flex-container .image-right {
  flex: 1;
  text-align: right;
}
.karma-difference-lifestyle .flex-container .image-right img {
  width: 250px;
  margin-bottom: 0;
}


/* ------ START KARMA DIFFERENT SECTION ------ */
.karma-diff-how {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 30px;
}
.karma-diff-how img {
  width: 50%;
  max-width: 400px;
}
.karma-diff-how span {
  display: block;
  max-width: 300px;
  color: #3dae2b;
  font-size: 150%;
  font-weight: 700;
  text-transform: uppercase;
  line-height: 1.2;
  position: relative;
  display: flex;
  align-items: center;
}
.karma-diff-how span:before {
  content: "";
  display: block;
  width: 150px;
  height: 2px;
  background: #3dae2b;
  position: absolute;
  margin-left: -175px;
}
@media (max-width: 767px) {
  .karma-diff-how {
    flex-flow: column;
  }
  .karma-diff-how img {
    width: 100%;
    max-width: 200px;
  }
  .karma-diff-how span {
    text-align: center;
    font-size: 120%;
    margin-top: -30px;
    margin-bottom: 30px;
    flex-flow: column;
  }
  .karma-diff-how span:before {
    content: "";
    display: block;
    width: 2px;
    height: 40px;
    background: #3dae2b;
    position: absolute;
    margin-left: 0;
    margin-top: -50px;
  }
}

/* ------ END KARMA DIFFERENCE ------ */


/* ------ SHOP PAGE ------ */

/* Hide Price for Hydration Kit */
#title-template--17900824592679__product-grid-8234584244519 + .card-information .price { display: none; }

.rb-header { display: none !important; }




/* ------ RECHARGE ------ */

.shopify-block.recharge-subscription-widget {
  justify-content: flex-start!important;
}
