/** Shopify CDN: Minification failed

Line 1424:65 Unexpected ";"
Line 1430:27 Unexpected ";"
Line 1431:35 Unexpected ";"
Line 1432:44 Unexpected ";"

**/
/* ========================================
   Theme Name: Stemregen Booster 2024
   Author: Nathan Bray
   Description: 2024 Rebrand Design by Murmur
   Version: 1.0
   ======================================== */

/* Index
--------------------------------------- */
/*
1. Reset Styles
2. Base Styles
3. Typography Styles
4. Buttons Styles
5. Forms Styles
6. Cards Styles
7. Header Styles
8. Main Content Styles
9. Sidebar Styles
10. Footer Styles
11. Responsive Styles
12. Custom Styles
13. Shopify Specific Styles
14. Theme Overrides
15. Custom Classes
16. Miscellaneous Styles
*/

/* Reset Styles
--------------------------------------- */
/* Reset stylesheets to ensure consistent rendering across different browsers */

/* Base Styles
--------------------------------------- */
/* Define base styles for elements like body, typography, links, etc. */

/********* GLOBAL CSS START *********/
/** ROBOTO FONTS **/
/** ACCENT GRAPHIC FONTS **/
@font-face {
  font-family: "AccentGraphicMedium";
  src: url("AccentGraphic-Medium.eot");
  src: url("AccentGraphic-Medium.eot?#iefix") format("embedded-opentype"),
    url("AccentGraphic-Medium.woff2") format("woff2"),
    url("AccentGraphic-Medium.woff") format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "AccentGraphicBold";
  src: url("AccentGraphic-Bold.eot");
  src: url("AccentGraphic-Bold.eot?#iefix") format("embedded-opentype"),
    url("AccentGraphic-Bold.woff2") format("woff2"),
    url("AccentGraphic-Bold.woff") format("woff");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "AccentGraphicLight";
  src: url("AccentGraphic-Light.eot");
  src: url("AccentGraphic-Light.eot?#iefix") format("embedded-opentype"),
    url("AccentGraphic-Light.woff2") format("woff2"),
    url("AccentGraphic-Light.woff") format("woff");
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}
:root {
  /* Brand Colors */
  --midnight-blue: #0d0d19;
  --secondaryBodyBackgroundColor:#0d0d19;
  --white: #ffffff;
  --patterns-blue: #E4ECF6;
  --stemregen-blue: #3F7FBE;
  --aquamarine: #0AE6D2;
  --azure: #0A5FCD;
  --deep-purple: #730AA5;
  --monotone900:#000000;
  --monotone800:#38383D;
  --monotone500:#898989;
  --monotone300:#B4B4B6;
  /* Secondary Colors */
  --secondary-rasberry:#B72E5F;
  --secondary-lime:#A7D44F;
  --secondary-tangerine:#FF6E26;
  
  /* Gradients */
  --special-gradient: linear-gradient(45deg, rgba(10, 230, 210, 1), rgba(17, 106, 220, 0.99), rgba(115, 10, 165, 1));
  --special-gradient-opacity: linear-gradient(45deg, rgba(10, 230, 210, 0.6), rgba(17, 106, 220, 0.6), rgba(115, 10, 165, 0.6));
  --special-gradient-hover: linear-gradient(45deg, rgba(23, 100, 217, 0.99), rgba(115, 10, 165, 1), rgba(23, 100, 217, 0.99));
  --secondary-gradient: linear-gradient(45deg, rgba(17, 106, 220, 0.99), rgba(115, 10, 165, 1));
  --secondary-gradient-hover: linear-gradient(45deg, rgba(10, 230, 210, 1), rgba(17, 106, 220, 0.99), rgba(115, 10, 165, 1));
  --small-gradient-secondary:linear-gradient(45deg, rgba(17, 106, 220, 0.99), rgba(115, 10, 165, 1));
  /* Font Families */
  --baseFont:"Roboto", sans-serif;
  --heading-font-family-light: "AccentGraphicLight", sans-serif;
  --heading-font-family-medium: "AccentGraphicMedium", sans-serif;
  --heading-font-family-bold: "AccentGraphicBold", sans-serif;
  --body-font-family: "Roboto", sans-serif;
  --link-font-family:"Roboto Condensed", sans-serif;
  --linkColor:#ffffff;
  --microcopy-font-size: 14px;
  --microcopy-line-height: 120%;
}

*,
body {
  font-family: var(--baseFont);
  font-size:17px;
  font-weight: 300;
  line-height: 150%;
  letter-spacing: normal;
}
a {
  font-family:var(--link-font-family);
  font-size: 17px;
  line-height: 120%;
  text-transform:uppercase;
}
.h0,
.h1,
.h2,
h1,
h2,
h3,
h4,
h5,
h6,
.h0 strong,
.h1 strong,
.h2 strong,
h1 strong,
h2 strong,
h3 strong,
h4 strong,
h5 strong,
h6 strong,
.h0 b,
.h1 b,
.h2 b,
h1 b,
h2 b,
h3 b,
h4 b,
h5 b,
h6 b,
.h0 em,
.h1 em,
.h2 em,
h1 em,
h2 em,
h3 em,
h4 em,
h5 em,
h6 em,
.font__family--title {
  font-family: var(--heading-font-family-light);
  letter-spacing: 0;
  line-height: 1;
  margin-bottom:0;
}
.button, .button span {
  font-family: "Roboto Condensed", sans-serif;
  color: var(--white);
  text-transform: uppercase;
  font-size:17px;
}


/* Typography Styles
--------------------------------------- */
/* Typography styles for headings, paragraphs, lists, etc. */
h1,
h2,
h3,
h4,
h5,
h6 {
  text-wrap: balance;
}

.text_wrap--wrap h1,
.text_wrap--wrap h2,
.text_wrap--wrap h3,
.text_wrap--wrap h4,
.text_wrap--wrap h5,
.text_wrap--wrap h6 {
  text-wrap: wrap;
}

.display-large {
  font-family:var(--heading-font-family-light);
  font-size:124px;
  line-height: 120%;
}
.display-small {
  font-family:var(--heading-font-family-light);
  font-size:72px;
  line-height: 120%;
}
h1, .h1 {
  font-family:var(--heading-font-family-light);
  font-size:58px;
  line-height: 120%;
}
h2, .h2 {
  font-family: var(--heading-font-family-light);
  font-size:32px;
  line-height:130%;
  text-transform: capitalize;
}
h3, .h3 {
  font-family: var(--heading-font-family-light);
  font-size:32px;
  line-height:130%;
}
h4, .h4 {
  font-family: var(--baseFont);
  font-size:28px;
  line-height:150%;
  text-transform: none;
  text-wrap: wrap;
}
h5, .h5 {
  font-family: var(--baseFont);
  font-size: 24px;
  font-weight: 100;
  line-height: 150%;
  text-wrap: wrap;
  text-transform: none;
  margin: 24px 0;
}
h5 em, .h5-italic {
  font-family: var(--baseFont);
  font-size:24px;
  font-style: italic;
  font-weight: 100;
  line-height:150%;
}
.superheader {
  color:var(--aquamarine) !important;
  text-transform: uppercase;
  font-size:14px;
  line-height: 150%;
  font-weight: 400;
}
.microcopy {
  font-family:var(--baseFont);
  font-size: var(--microcopy-font-size);
  line-height: var(--microcopy-line-height);
}


/* Buttons Styles
--------------------------------------- */
/* Define styles for buttons, including sizes, colors, and hover effects */
.button {
  padding-left: 32px; 
  padding-right: 32px; 
  padding-top: 16px; 
  padding-bottom: 16px;
  border-radius: 12px;
  box-shadow: 3px 4px 10px rgba(0, 0, 0, 0.10); 
  cursor: pointer;
  justify-content: center; 
  align-items: center;
  transition: 300ms;
}

.button--primary__filled {
  background:var(--special-gradient);
  color: #FFF;
}
.button--primary__filled:hover {
  background:var(--special-gradient-hover);
}
.button--primary__ghost {
  border: none;
  outline: none;
  position: relative;
  z-index: 1;
  background: var(--special-gradient); /* Using your gradient variable */
}

.button--primary__ghost::before {
  content: "";
  position: absolute;
  left: 1px;
  right: 1px;
  top: 1px;
  bottom: 1px;
  border-radius: 11px;
  background-color: var(--midnight-blue);
  z-index: -1;
  transition: 300ms;
}

.button--primary__ghost::after {
  content: attr(data);
  font-size: 16px;
  background: var(--special-gradient); /* Using your gradient variable */
  background-clip: text;
  -webkit-background-clip: text;
  color: var(--midnight-blue);
  transition: 200ms;
}

.button--primary__ghost:hover::before {
  opacity: 0%;
  top: 0px;
  right: 0px;
  bottom: 0px;
  left: 0px;
}

.button--primary__ghost:hover::after {
  color: #fff;
}

.button--secondary__filled {
  background:var(--secondary-gradient);
}
.button--primary__ghost:hover, 
.button--secondary__filled:hover {
  background:var(--secondary-gradient-hover);
}
.button.button--text,
.button.button--text:hover {
  background-color: transparent;
  padding:0;
}

.button.button--scroll-prompt {
  background:var(--secondary-gradient);
  background-size:cover;
  display: inline-block;
  width: 40px;
  height: 40px;
  border:0;
  border-radius: 50%;
  position: relative;
  text-align: center;
  line-height: 40px;
  padding:0px;
  margin-bottom:40px;
}

.button--secondary__scroll-prompt:hover {
  background:var(--secondary-gradient-hover);
}

.button.button--scroll-prompt span {
  position: absolute;
  left: -9999px;
}

.button.button--scroll-prompt::before {
  content: '';
  background-image: url('down-arrow.svg');
  background-repeat:no-repeat;
  background-position:center center;
  width: 24px; 
  height: 24px;
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}


/* Forms Styles
--------------------------------------- */
/* Define styles for form elements like input fields, checkboxes, and radio buttons */
.quantity--input {
  border-radius: var(--borderRadiusSmall);
  border: 1px solid var(--monotone300);
}
.quantity--input .quantity--input__button,
.quantity--input .quantity--input__input {
  background-color:var(--monotone900);
  color:var(--monotone300);
}

span[data-swatch-option] {
  width:100%;
  background-color: var(--monotone900);
  color: var(--accentTextColor);
  border:1px solid var(--monotone300);
  text-align:left;
}
span[data-swatch-option].swatch--active {
  background-color: var(--monotone900);
  color: var(--accentTextColor);
  border:1px solid var(--accentColor);
}

.currency-selector {
  min-width:fit-content;
  width: 100%; 
  box-sizing: border-box; 
  background-color:var(--monotone900); 
  color: white; 
  border-radius: 8px;
  padding:4px 12px;
  font-size:17px;
  border: 0;
  outline: 1px solid var(--monotone800); ;
  border-right: 8px solid transparent;
}
.currency-selector option {
  background-color: var(--monotone900);
  color: white;
}

.search__container--abs form input {
  color: #ffffff;
}


/* Cards Styles
--------------------------------------- */
/* Define styles for cards or product tiles, including borders, shadows, and spacing */
a.card__title {
  display: block;
  margin-bottom: 8px !important;
  white-space: normal;
  font-weight: 400;
  text-transform: capitalize;
}
.card--default .card__description {
  padding-bottom:40px;
}
a.card__img--container {
  border-radius:0;
}
.card__tags {
  top: 12px;
  left: 12px;
}


/* Product Page */
.gallery__thumbnail {
  border-radius:12px;
  height:100px;
  width:80px;
}
.gallery__thumbnails span:hover, .gallery__thumbnail.bstrSlider__thumb--active {
  border:1px solid var(--monotone300);
}
span.product__price {
  text-align: left;
  font-weight: 100;
  width: 100%;
  order: 1;
}
.product__price--old {
  color: var(--monotone500);
  font-family: var(--heading-font-family-light);
  font-size: 32px;
  line-height: 130%;
  margin-left: 8px !important;
  margin-right: 16px;
  text-decoration: line-through;
  text-decoration-color: #b82e5f;
  text-decoration-thickness: 5px;
  order: 0;
}
span.product__price--old:empty {
  display: none;
}
.tag--sale {
  background: #b82e5f;
  order: 3;
  display: block;
  width: 33%;
  padding: 2px;
}
@media (max-width:767px) {
  .tag--sale {
    width: -webkit-fill-available;
  }
}

.product__price--holder {
  margin-bottom: 16px;
}
.swatches__holder .swatches__title {
  margin-top: 0;
}
.add-to-cart__success .add-to-cart__success--single,
.add-to-cart__success .add-to-cart__success--message {
  background-color: var(--midnight-blue);
}
#FeaturedCollection .card__img--ratio {
  border-radius: 12px;
}
.stemregen2024 .rc-widget label.rc-radio.rc-radio--active {
  background: linear-gradient(var(--midnight-blue), var(--midnight-blue)) padding-box,
  linear-gradient(to right, var(--aquamarine), var(--deep-purple)) border-box;
  border: 1px solid transparent;
}
.stemregen2024 .rc-radio.onetime-radio,
.stemregen2024 .rc-radio.subscription-radio {
  border:1px solid var(--monotone500);
  margin-bottom:12px;
}
/********* BLOGS *********/

.bcard--default {
  transition: all .5s;
}
.bcard__title {
  text-wrap: pretty;
  font-weight: 300;
  text-transform: none;
  line-height: 125%;
  font-size: 24px;
}
a .bcard__excerpt,
.bcard__excerpt {
  font-size:unset;
  text-transform: initial;
}

a.bcard--default.bcard--inside.border-radius {
  border: 2px solid #000000;
  border-radius: 8px;
}
a.bcard--default.bcard--wrapped.border-radius {
  border-radius: 12px;
}
a.bcard--default.bcard--wrapped.border-radius:hover {
  box-shadow: 1px 1px 24px 1px rgba(0, 0, 0, 0.25);
}
.bcard--wrapped:hover {
  background: var(--secondary-gradient);
}
.bcard--inside:hover .bcard__info {
  margin: 0px 24px !important;
  color: var(--accentTextColor) !important;
  margin-top: -24px !important;
  padding: 12px 16px;
  position: relative;
  z-index: 1;
  border-radius: 8px;
}
.bcard__img img {
  height: 100%;
  width: 100%;
  object-fit: cover;
  border-radius: 8px;
}
.pagination__page--current, .pagination__page--current:hover {
  color: var(--accentTextColor);
  background: var(--monotone900);
}

/********* HORIZONTAL SINGLE COLUMN BLOG ********/
.blog-card__single-column-img .bcard__img--innerWrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  width:100%;
}

.blog-card__single-column-img .bcard__img--container {
  width: 100%;
  height: auto;
  display: flex;
  align-items: center;
  justify-content: center;
}

.blog-card__single-column-img .bcard__img--ratio {
  padding-top: 56.25%; /* Maintain aspect ratio */
  position: relative;
  width: 100%;
}

.blog-card__single-column-img .bcard__img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center; /* Vertically center the image */
  justify-content: center; /* Horizontally center the image */
  overflow: hidden;
}

.blog-card__single-column-img .bcard__img img {
  max-width: 100%;
  height: auto;
  display: block;
  margin: auto; /* Ensure image is centered */
}

/********* END BLOGS *********/

/* Header Styles
--------------------------------------- */
/* Styles for the header section, including logo, navigation, etc. */
.page__header {
  background: var(--midnight-blue) !important;
  }
  @media screen and (max-width: 768px) {
    .page__header {
      background: var(--midnight-blue) !important;
      }
      .mobile-submenu-label {
        font-size: 1.5rem;
        color: #fff;
        text-align:right;
    }
  }

.marquee-container p {
  font-size:14px; 
  line-height:150%;
  font-weight: 400;
  color:var(--aquamarine);
  text-transform:uppercase;
}

.stemregen2024 .main__navigation {
    width: 100%;
    text-align:center;
}

.stemregen2024 .header__utility {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.5rem;
  margin-left:40px;
}
.stemregen2024 .header__utility > * {
  margin-right: 16px;
  margin-left: 16px;
  display: flex;
  align-items: center;
}

.stemregen2024 .header__utility .uil {
  font-size:28px;
}
.stemregen2024 .minicart__label {
  display: flex;
  position: relative;
  align-items: center;
}
.stemregen2024 .minicart__label-text {
  margin: 0 4px 0px 12px;
  font-size: 17px;
  font-weight: 300;
  font-family:var(--link-font-family);
}
.stemregen2024 .minicart__label .item__count {
  padding: 0px;
  min-height: 10px;
  min-width: 15px;
  font-size: 17px;
  font-weight: 300;
  font-family:var(--link-font-family);
  display: block;
  position: relative;
  text-align: center;
  font-weight: normal;
  user-select: none;
  background: transparent;
  color: var(--white);
  border-radius: 10px;
}
.stemregen2024 .minicart__label .item__count::before {
  content: '[';
  font-size: 17px;
  font-weight: 300;
  font-family:var(--link-font-family);
  padding-right:4px;
}

.stemregen2024 .minicart__label .item__count::after {
  content: ']';
  font-size: 17px;
  font-weight: 300;
  font-family:var(--link-font-family);
  padding-left:4px;
}
.user__button {
  position:relative;
}
.stemregen2024 .user__button label {
  cursor: pointer;
}
.user__holder {
  background-color: var(--midnight-blue);
  position: absolute;
  margin-top: 224px;
  min-width: 200px;
  left: -80px;
}
#user__button:checked+.user__holder {
  padding:16px;
}
a.user__link {
  padding: 12px;
  border-radius:12px;
}
a.user__link:hover {
  background-color: rgba(10, 230, 210, 0.05);
}

.cta-button {
  align-content: end;
  display: flex;
  width: 25%;
  justify-content: end;
}
.cta-button .button {
  padding:12px 24px;
}

/* Main Content Styles
--------------------------------------- */
/* Styles for the main content area, such as hero sections, product listings, collections, etc. */

.max__width {
  max-width: var(--maxwidth);
  margin: auto;
}
.narrowWidth.s__content {
  max-width: 970px;
  margin:auto;;
}

/* Layout - Bootstrap Columns */
.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {
  position: relative;
  min-height: 1px;
  padding-right: 15px;
  padding-left: 15px;
}
.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 {
  float: left;
}
.col-xs-12 {
  width: 100%;
}
.col-xs-11 {
  width: 91.66666667%;
}
.col-xs-10 {
  width: 83.33333333%;
}
.col-xs-9 {
  width: 75%;
}
.col-xs-8 {
  width: 66.66666667%;
}
.col-xs-7 {
  width: 58.33333333%;
}
.col-xs-6 {
  width: 50%;
}
.col-xs-5 {
  width: 41.66666667%;
}
.col-xs-4 {
  width: 33.33333333%;
}
.col-xs-3 {
  width: 25%;
}
.col-xs-2 {
  width: 16.66666667%;
}
.col-xs-1 {
  width: 8.33333333%;
}
.col-xs-pull-12 {
  right: 100%;
}
.col-xs-pull-11 {
  right: 91.66666667%;
}
.col-xs-pull-10 {
  right: 83.33333333%;
}
.col-xs-pull-9 {
  right: 75%;
}
.col-xs-pull-8 {
  right: 66.66666667%;
}
.col-xs-pull-7 {
  right: 58.33333333%;
}
.col-xs-pull-6 {
  right: 50%;
}
.col-xs-pull-5 {
  right: 41.66666667%;
}
.col-xs-pull-4 {
  right: 33.33333333%;
}
.col-xs-pull-3 {
  right: 25%;
}
.col-xs-pull-2 {
  right: 16.66666667%;
}
.col-xs-pull-1 {
  right: 8.33333333%;
}
.col-xs-pull-0 {
  right: auto;
}
.col-xs-push-12 {
  left: 100%;
}
.col-xs-push-11 {
  left: 91.66666667%;
}
.col-xs-push-10 {
  left: 83.33333333%;
}
.col-xs-push-9 {
  left: 75%;
}
.col-xs-push-8 {
  left: 66.66666667%;
}
.col-xs-push-7 {
  left: 58.33333333%;
}
.col-xs-push-6 {
  left: 50%;
}
.col-xs-push-5 {
  left: 41.66666667%;
}
.col-xs-push-4 {
  left: 33.33333333%;
}
.col-xs-push-3 {
  left: 25%;
}
.col-xs-push-2 {
  left: 16.66666667%;
}
.col-xs-push-1 {
  left: 8.33333333%;
}
.col-xs-push-0 {
  left: auto;
}
.col-xs-offset-12 {
  margin-left: 100%;
}
.col-xs-offset-11 {
  margin-left: 91.66666667%;
}
.col-xs-offset-10 {
  margin-left: 83.33333333%;
}
.col-xs-offset-9 {
  margin-left: 75%;
}
.col-xs-offset-8 {
  margin-left: 66.66666667%;
}
.col-xs-offset-7 {
  margin-left: 58.33333333%;
}
.col-xs-offset-6 {
  margin-left: 50%;
}
.col-xs-offset-5 {
  margin-left: 41.66666667%;
}
.col-xs-offset-4 {
  margin-left: 33.33333333%;
}
.col-xs-offset-3 {
  margin-left: 25%;
}
.col-xs-offset-2 {
  margin-left: 16.66666667%;
}
.col-xs-offset-1 {
  margin-left: 8.33333333%;
}
.col-xs-offset-0 {
  margin-left: 0%;
}
@media (min-width: 768px) {
  .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {
    float: left;
  }
  .col-sm-12 {
    width: 100%;
  }
  .col-sm-11 {
    width: 91.66666667%;
  }
  .col-sm-10 {
    width: 83.33333333%;
  }
  .col-sm-9 {
    width: 75%;
  }
  .col-sm-8 {
    width: 66.66666667%;
  }
  .col-sm-7 {
    width: 58.33333333%;
  }
  .col-sm-6 {
    width: 50%;
  }
  .col-sm-5 {
    width: 41.66666667%;
  }
  .col-sm-4 {
    width: 33.33333333%;
  }
  .col-sm-3 {
    width: 25%;
  }
  .col-sm-2 {
    width: 16.66666667%;
  }
  .col-sm-1 {
    width: 8.33333333%;
  }
  .col-sm-pull-12 {
    right: 100%;
  }
  .col-sm-pull-11 {
    right: 91.66666667%;
  }
  .col-sm-pull-10 {
    right: 83.33333333%;
  }
  .col-sm-pull-9 {
    right: 75%;
  }
  .col-sm-pull-8 {
    right: 66.66666667%;
  }
  .col-sm-pull-7 {
    right: 58.33333333%;
  }
  .col-sm-pull-6 {
    right: 50%;
  }
  .col-sm-pull-5 {
    right: 41.66666667%;
  }
  .col-sm-pull-4 {
    right: 33.33333333%;
  }
  .col-sm-pull-3 {
    right: 25%;
  }
  .col-sm-pull-2 {
    right: 16.66666667%;
  }
  .col-sm-pull-1 {
    right: 8.33333333%;
  }
  .col-sm-pull-0 {
    right: auto;
  }
  .col-sm-push-12 {
    left: 100%;
  }
  .col-sm-push-11 {
    left: 91.66666667%;
  }
  .col-sm-push-10 {
    left: 83.33333333%;
  }
  .col-sm-push-9 {
    left: 75%;
  }
  .col-sm-push-8 {
    left: 66.66666667%;
  }
  .col-sm-push-7 {
    left: 58.33333333%;
  }
  .col-sm-push-6 {
    left: 50%;
  }
  .col-sm-push-5 {
    left: 41.66666667%;
  }
  .col-sm-push-4 {
    left: 33.33333333%;
  }
  .col-sm-push-3 {
    left: 25%;
  }
  .col-sm-push-2 {
    left: 16.66666667%;
  }
  .col-sm-push-1 {
    left: 8.33333333%;
  }
  .col-sm-push-0 {
    left: auto;
  }
  .col-sm-offset-12 {
    margin-left: 100%;
  }
  .col-sm-offset-11 {
    margin-left: 91.66666667%;
  }
  .col-sm-offset-10 {
    margin-left: 83.33333333%;
  }
  .col-sm-offset-9 {
    margin-left: 75%;
  }
  .col-sm-offset-8 {
    margin-left: 66.66666667%;
  }
  .col-sm-offset-7 {
    margin-left: 58.33333333%;
  }
  .col-sm-offset-6 {
    margin-left: 50%;
  }
  .col-sm-offset-5 {
    margin-left: 41.66666667%;
  }
  .col-sm-offset-4 {
    margin-left: 33.33333333%;
  }
  .col-sm-offset-3 {
    margin-left: 25%;
  }
  .col-sm-offset-2 {
    margin-left: 16.66666667%;
  }
  .col-sm-offset-1 {
    margin-left: 8.33333333%;
  }
  .col-sm-offset-0 {
    margin-left: 0%;
  }
}
@media (min-width: 992px) {
  .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 {
    float: left;
  }
  .col-md-12 {
    width: 100%;
  }
  .col-md-11 {
    width: 91.66666667%;
  }
  .col-md-10 {
    width: 83.33333333%;
  }
  .col-md-9 {
    width: 75%;
  }
  .col-md-8 {
    width: 66.66666667%;
  }
  .col-md-7 {
    width: 58.33333333%;
  }
  .col-md-6 {
    width: 50%;
  }
  .col-md-5 {
    width: 41.66666667%;
  }
  .col-md-4 {
    width: 33.33333333%;
  }
  .col-md-3 {
    width: 25%;
  }
  .col-md-2 {
    width: 16.66666667%;
  }
  .col-md-1 {
    width: 8.33333333%;
  }
  .col-md-pull-12 {
    right: 100%;
  }
  .col-md-pull-11 {
    right: 91.66666667%;
  }
  .col-md-pull-10 {
    right: 83.33333333%;
  }
  .col-md-pull-9 {
    right: 75%;
  }
  .col-md-pull-8 {
    right: 66.66666667%;
  }
  .col-md-pull-7 {
    right: 58.33333333%;
  }
  .col-md-pull-6 {
    right: 50%;
  }
  .col-md-pull-5 {
    right: 41.66666667%;
  }
  .col-md-pull-4 {
    right: 33.33333333%;
  }
  .col-md-pull-3 {
    right: 25%;
  }
  .col-md-pull-2 {
    right: 16.66666667%;
  }
  .col-md-pull-1 {
    right: 8.33333333%;
  }
  .col-md-pull-0 {
    right: auto;
  }
  .col-md-push-12 {
    left: 100%;
  }
  .col-md-push-11 {
    left: 91.66666667%;
  }
  .col-md-push-10 {
    left: 83.33333333%;
  }
  .col-md-push-9 {
    left: 75%;
  }
  .col-md-push-8 {
    left: 66.66666667%;
  }
  .col-md-push-7 {
    left: 58.33333333%;
  }
  .col-md-push-6 {
    left: 50%;
  }
  .col-md-push-5 {
    left: 41.66666667%;
  }
  .col-md-push-4 {
    left: 33.33333333%;
  }
  .col-md-push-3 {
    left: 25%;
  }
  .col-md-push-2 {
    left: 16.66666667%;
  }
  .col-md-push-1 {
    left: 8.33333333%;
  }
  .col-md-push-0 {
    left: auto;
  }
  .col-md-offset-12 {
    margin-left: 100%;
  }
  .col-md-offset-11 {
    margin-left: 91.66666667%;
  }
  .col-md-offset-10 {
    margin-left: 83.33333333%;
  }
  .col-md-offset-9 {
    margin-left: 75%;
  }
  .col-md-offset-8 {
    margin-left: 66.66666667%;
  }
  .col-md-offset-7 {
    margin-left: 58.33333333%;
  }
  .col-md-offset-6 {
    margin-left: 50%;
  }
  .col-md-offset-5 {
    margin-left: 41.66666667%;
  }
  .col-md-offset-4 {
    margin-left: 33.33333333%;
  }
  .col-md-offset-3 {
    margin-left: 25%;
  }
  .col-md-offset-2 {
    margin-left: 16.66666667%;
  }
  .col-md-offset-1 {
    margin-left: 8.33333333%;
  }
  .col-md-offset-0 {
    margin-left: 0%;
  }
  .order-md-1 {
    -webkit-box-ordinal-group: 1;
    -ms-flex-order: 1;
    order: 1;
  }
  .order-md-2 {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 2;
    order: 2;
  }
}
@media (min-width: 1200px) {
  .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 {
    float: left;
  }
  .col-lg-12 {
    width: 100%;
  }
  .col-lg-11 {
    width: 91.66666667%;
  }
  .col-lg-10 {
    width: 83.33333333%;
  }
  .col-lg-9 {
    width: 75%;
  }
  .col-lg-8 {
    width: 66.66666667%;
  }
  .col-lg-7 {
    width: 58.33333333%;
  }
  .col-lg-6 {
    width: 50%;
  }
  .col-lg-5 {
    width: 41.66666667%;
  }
  .col-lg-4 {
    width: 33.33333333%;
  }
  .col-lg-3 {
    width: 25%;
  }
  .col-lg-2 {
    width: 16.66666667%;
  }
  .col-lg-1 {
    width: 8.33333333%;
  }
  .col-lg-pull-12 {
    right: 100%;
  }
  .col-lg-pull-11 {
    right: 91.66666667%;
  }
  .col-lg-pull-10 {
    right: 83.33333333%;
  }
  .col-lg-pull-9 {
    right: 75%;
  }
  .col-lg-pull-8 {
    right: 66.66666667%;
  }
  .col-lg-pull-7 {
    right: 58.33333333%;
  }
  .col-lg-pull-6 {
    right: 50%;
  }
  .col-lg-pull-5 {
    right: 41.66666667%;
  }
  .col-lg-pull-4 {
    right: 33.33333333%;
  }
  .col-lg-pull-3 {
    right: 25%;
  }
  .col-lg-pull-2 {
    right: 16.66666667%;
  }
  .col-lg-pull-1 {
    right: 8.33333333%;
  }
  .col-lg-pull-0 {
    right: auto;
  }
  .col-lg-push-12 {
    left: 100%;
  }
  .col-lg-push-11 {
    left: 91.66666667%;
  }
  .col-lg-push-10 {
    left: 83.33333333%;
  }
  .col-lg-push-9 {
    left: 75%;
  }
  .col-lg-push-8 {
    left: 66.66666667%;
  }
  .col-lg-push-7 {
    left: 58.33333333%;
  }
  .col-lg-push-6 {
    left: 50%;
  }
  .col-lg-push-5 {
    left: 41.66666667%;
  }
  .col-lg-push-4 {
    left: 33.33333333%;
  }
  .col-lg-push-3 {
    left: 25%;
  }
  .col-lg-push-2 {
    left: 16.66666667%;
  }
  .col-lg-push-1 {
    left: 8.33333333%;
  }
  .col-lg-push-0 {
    left: auto;
  }
  .col-lg-offset-12 {
    margin-left: 100%;
  }
  .col-lg-offset-11 {
    margin-left: 91.66666667%;
  }
  .col-lg-offset-10 {
    margin-left: 83.33333333%;
  }
  .col-lg-offset-9 {
    margin-left: 75%;
  }
  .col-lg-offset-8 {
    margin-left: 66.66666667%;
  }
  .col-lg-offset-7 {
    margin-left: 58.33333333%;
  }
  .col-lg-offset-6 {
    margin-left: 50%;
  }
  .col-lg-offset-5 {
    margin-left: 41.66666667%;
  }
  .col-lg-offset-4 {
    margin-left: 33.33333333%;
  }
  .col-lg-offset-3 {
    margin-left: 25%;
  }
  .col-lg-offset-2 {
    margin-left: 16.66666667%;
  }
  .col-lg-offset-1 {
    margin-left: 8.33333333%;
  }
  .col-lg-offset-0 {
    margin-left: 0%;
  }
}

.no-gap {
  padding-top:0;
  padding-right:0;
  padding-bottom:0;
  padding-left:0;
}

/* MainHero */
#MainHero .font__size--medium.font__family--base p {
  font-size:28px;
  line-height:150%;
}
#MainHero .font__size--big.font__family--title {
  font-size:72px;
  line-height: 110%;
  margin-top:48px;
}
#MainHero .tximage__image img {
  padding:48px 48px 0;
  margin-top:124px;
}
/* Breadcrumbs */
.breadcrumbs__wrapper .breadcrumb{
  width:100%;
  padding:25px;
}
.breadcrumbs__wrapper{background:var(--midnight-blue) !important};
.breadcrumbs--default {
  padding: 0.5rem;
  color: var(--monotone300);
  background: var(--midnight-blue);
}
.breadcrumb{font-size:12px};
.breadcrumb a{text-decoration:none};
.breadcrumb span{margin-left:4px !important};



/* Sidebar Styles
--------------------------------------- */
/* Styles for sidebar elements, if applicable */

/* Footer Styles
--------------------------------------- */
/* Styles for the footer section, including links, copyright, etc. */
.footer {
  background-color:var(--midnight-blue);
  color:var(--white);
  font-size: 15px;
  padding: 32px 0px;
  border-bottom: 0.1px solid #4098d3;
}
.footer img.lazyloaded {
  max-width: 170px;
}
.footer__title {
  color:var(--white);
  font-family:"Roboto", sans-serif;
  font-weight: 400;
  font-size: 24px;
}
.footer__links a, .footer__contact a {
  color:var(--white);
  font-family:var(--link-font-family);
  font-size: 17px;
  line-height: 120%;
  text-transform:uppercase;
  padding:8px;
  opacity:1;
}
.footer__links a:before {
  content: "\2014";
  color: var(--white);
  margin-right:8px;
}
.subfooter {
  padding-top: 24px;
}
.subfooter__block {
  margin-bottom: 24px;
}
.subfooter .footer__text ul {
  display: inline;
  margin: 0;
  padding: 0;
  list-style: none;
}
.subfooter .footer__text ul li {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding: 0.5rem;
  font-size: 0.9em;
}
.subfooter .footer__text ul li:before {
  padding: 0 1rem;
}
.wrapper--bottom {
  padding-top: 0 !important;
  background:url('footer-background-gradient.svg');
  background-repeat:no-repeat;
  background-position:bottom left;
  background-size:contain;
}

/* Custom Styles
--------------------------------------- */
/* Any additional custom styles specific to your theme */

.mobile__submenu__toggle .uil-plus,
.mobile__submenu__toggle .uil-minus {
  font-size:21px;
}

.shape-left {
  top: 0;
  left: 0;
  width: 100%;
  height: 200%; 
  background-image: url('background-shape-top-left.svg');
  background-size: contain;
  background-position: top left; 
  background-repeat:no-repeat;
}
.shape-right {
  top: 0;
  left: 0;
  width: 100%;
  height: 115%;
  background-image: url('background-shape-top-right.svg');
  background-size: contain;
  background-position: top right;
  background-repeat:no-repeat;
}

.brand-mark {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; 
  background-image: url('background-brandmark.svg');
  background-size: contain;
  background-position: top left; 
  background-repeat:no-repeat;
}

/* Shopify Specific Styles
--------------------------------------- */
/* Styles specific to Shopify components or elements */

/* Text + Image Blocks */
.superheader p {
  color:var(--aquamarine) !important;
  text-transform: uppercase;
  font-size:14px;
  line-height: 150%;
  font-weight: 400;
}

/* Accordions */
.accordion {margin:0;}
.accordion__item {
  border-top: 0;
  border-bottom: 0;
  margin-bottom: 4px;
  border-radius:12px;
}
.accordion .accordion__item--open {
  background: linear-gradient(45deg, rgba(10, 230, 210, 0.5), rgba(17, 106, 220, 0.5), rgba(115, 10, 165, 0.5));
}
.accordion__item--title h5 {
  font-weight: 100;
  margin:0;
  margin-right:40px;
}
.accordion__item--title p {
  font-family:var(--baseFont);
  font-size: var(--microcopy-font-size);
  line-height: var(--microcopy-line-height);
  margin:0;
  padding-right:24px;
}
.accordion__item--open .accordion__item--title p {
  color:var(--white);
}
.accordion__item input:checked ~ .accordion__item--title::after {
  color: var(--white);
}
.accordion__item .accordion__item--content {
  background:transparent;
  color: var(--white);
}
.accordion__item input:checked ~ .accordion__item--content {
  padding: 0px 16px;
  max-height: none;
}

/* Theme Overrides
--------------------------------------- */
/* Any overrides or adjustments to third-party or Shopify-generated styles */

.slide--product img {
  border-radius: 24px;;
}
.card--default:hover .card__img img{
  transform:none;
}
/* Product Tabs Booster Theme Overrides */
.tab--product, .featured-tabs__tab {
  font-family: var(--heading-font-family-light);
  margin-right: 8px !important;
  padding:0;
  margin-bottom: 0px !important;
}
.tab--product.tab--active, .featured-tabs__tab.tab--active {
  background:transparent;
  border-radius: 0px;
}
.product--tab__content {
  padding: 16px 0 80px;
  margin-bottom:80px;
}
.card__buttons form {
  display: inline-block;
}
.button--addToCart,
.button--quickBuy {
  margin-right: 0px;
}
/* Custom Classes
--------------------------------------- */
/* Define custom classes for specific styling needs */

/* Custom Section Styles */
#theSystem.the-system {
  padding-top:160px;
  } 

  @media (max-width: 767px) {
    #theSystem.the-system {
      padding-top:80px;
      }
  }
/* Miscellaneous Styles
--------------------------------------- */
/* Any other miscellaneous styles */
.release {color:var(--stemregen-blue);}
.mobilize {color:var(--secondary-rasberry);}
.signal {color:var(--secondary-lime);}
.sport {color:var(--secondary-tangerine);}

.h2.banner--blog-title,
.h2.sidebar-heading {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
}
.gradient-border-primary {
  position: relative;
  padding-bottom:16px;
  margin-bottom:16px;
}

.gradient-border-primary::after {
  content: ''; /* Create a pseudo-element */
  position: absolute; /* Position it relative to its parent */
  left: 0; /* Start from the left edge */
  bottom: 0; /* Position it at the bottom of the parent */
  width: 100%; /* Make it span the full width */
  height: 1px; /* Set the height to create the border effect */
  background: var(--special-gradient); /* Apply the gradient as the background */
}

.gradient-border-secondary {
  position: relative; /* Ensure the parent has a relative position */
  padding-bottom:32px;
}

.gradient-border-secondary::after {
  content: ''; /* Create a pseudo-element */
  position: absolute; /* Position it relative to its parent */
  left: 0; /* Start from the left edge */
  bottom: 0; /* Position it at the bottom of the parent */
  width: 100%; /* Make it span the full width */
  height: 1px; /* Set the height to create the border effect */
  background: var(--small-gradient-secondary); /* Apply the gradient as the background */
}

.testimonials .section__heading {
  margin-bottom: 40px;
}

.testimonials .column__text {
  background: var(--special-gradient-opacity), url(//stemregen-dev.myshopify.com/cdn/shop/t/8/assets/card-background-min_1024x1024.jpeg?v=1314344947232502331713825382);
  background-size: cover, cover;
  padding: 32px;
  border-radius: 16px;
}

/* Quick Add Button and Modal */
.button--quickBuy span::after {
  content: url('s-icon-Plus.svg');
  margin-left: 8px;
}
#quickbuy__modal.modal .content {
  background-color:var(--midnight-blue);
  padding:0;
  max-width:970px;
}
#quickbuy__modal.modal .content .slider--product__holder {
  padding:0;
}
#quickbuy__modal.modal .content .gallery {
  padding:70px;
}
#quickbuy__modal.modal .content .slide--product img {
  border-radius: 0;
}
#quickbuy__modal.modal .content .gallery__thumbnails,
#quickbuy__modal.modal .content .slider__button {
  display:none;
}
#quickbuy__modal.modal .content .product__row {
  margin-top:0;
  margin-bottom:0;
}


/* Text Rotate Transitions
----------------------------------------------------

/*FadeIn*/
.fadeIn{
display: inline;
text-indent: 16px;
}
.fadeIn span{
animation: fadeEffect 9s linear infinite 0s;
-ms-animation: fadeEffect 9s linear infinite 0s;
-webkit-animation: fadeEffect 9s linear infinite 0s;
opacity: 0;
overflow: hidden;
position: absolute;
font-size: 70px;
line-height: 110%;
font-family: var(--heading-font-family-light);
}
@media (max-width: 767px) {
  .fadeIn {
    text-indent: 12px;
  }
  .fadeIn span {
    font-size: 40px;
    line-height: 110%;
  }
}
.fadeIn span:nth-child(2){
animation-delay: 3s;
-ms-animation-delay: 3s;
-webkit-animation-delay: 3s;
}
.fadeIn span:nth-child(3){
animation-delay: 6s;
-ms-animation-delay: 6s;
-webkit-animation-delay: 6s;
}
.fadeIn span:nth-child(4){
animation-delay:9s;
-ms-animation-delay: 9s;
-webkit-animation-delay: 9s;
}
/* .fadeIn span:nth-child(5){
animation-delay: 12s;
-ms-animation-delay: 12s;
-webkit-animation-delay: 12s;
} */

/*FadeIn Animation*/
@-moz-keyframes fadeEffect{
0% { opacity: 0; }
5% { opacity: 0; -moz-transform: translateY(0px); }
10% { opacity: 1; -moz-transform: translateY(0px); }
25% { opacity: 1; -moz-transform: translateY(0px); }
30% { opacity: 0; -moz-transform: translateY(0px); }
80% { opacity: 0; }
100% { opacity: 0; }
}
@-webkit-keyframes fadeEffect{
0% { opacity: 0; }
5% { opacity: 0; -webkit-transform: translateY(0px); }
10% { opacity: 1; -webkit-transform: translateY(0px); }
25% { opacity: 1; -webkit-transform: translateY(0px); }
30% { opacity: 0; -webkit-transform: translateY(0px); }
80% { opacity: 0; }
100% { opacity: 0; }
}
@-ms-keyframes fadeEffect{
0% { opacity: 0; }
5% { opacity: 0; -ms-transform: translateY(0px); }
10% { opacity: 1; -ms-transform: translateY(0px); }
25% { opacity: 1; -ms-transform: translateY(0px); }
30% { opacity: 0; -ms-transform: translateY(0px); }
80% { opacity: 0; }
100% { opacity: 0; }
}

/* END Text Rotate Transitions 
--------------------------------------- */


/* Responsive Styles
--------------------------------------- */
/* Media queries for responsive design */

.responsive-image {
  width:100%;
  height:auto;
}

@media (max-width: 767px) {
  .visible-xs {
      display: block !important;
  }
}
/* Responsive Base Font Sizes */
@media (max-width: 767px) {
  *,
body {
  font-size:16px;
  line-height: 150%;
}
a {
  font-size: 16px;
  line-height: 120%;
  text-transform:uppercase;
}
  .display-large,
  #MainHero .font__size--big.font__family--title {
    font-size:40px;
    margin-top:0;
  }
  #MainHero .font__size--big.font__family--title {
    text-align: center;
  }
  .display-small {
    font-size:40px;
  }
  h1, .h1 {
    font-size:36px;
  }
  h2, .h2 {
    font-size:28px;
    line-height:140%;
  }
  h3, .h3,
  #MainHero .font__size--medium.font__family--base p {
    font-size:24px;
    line-height:140%;
  }
  h4, .h4 {
    font-size:20px;
    line-height:150%;
  }
  h5, .h5 {
    font-size:18px;
    margin:18px 0;
  }
  h5 em, .h5-italic {
    font-size:18px;
  }
  .superheader {
    font-size:12px;
    line-height: 150%;
    font-weight: 400;
  }
  .microcopy {
    font-size: var(--microcopy-font-size);
    line-height: var(--microcopy-line-height);
  }
  .accordion__item--title h5 {
    font-weight:300;
  }
  .accordion__item--title * {
    padding-right: 40px;
    text-wrap: balance;
  }
  .no-padding-mobile {
    padding:0;
  }
  
}
@media (min-width: 768px) {
  .visible-xs {
      display: none !important;
  }
  .card--holder {
    display: flex;
    flex-direction: column;
    height: 100%;
  }
  
  .card--default {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
  }
  
  .card__info {
    flex: 1;
    display: flex;
    flex-direction: column;
  }
  
  .card__buttons,
  .card--holder.block--buttons .card__buttons {
    margin-top: auto;
  }
  
  .card--holder.block--buttons .card__buttons .button {
    padding-left:12px;
    padding-right:12px;
  }
}
@media (max-width: 767px) {
  .hidden-xs {
      display: none !important;
  }
  .order-first-mobile {
    order: -1; /* This will move the column to the beginning on mobile */
  }
  .stemregen2024 .mobile__navigation {
    background-color:var(--midnight-blue);
    width:calc(100vw - 3rem);
    padding:3rem;
    background-image: url('background-brandmark.svg');
    background-size: contain;
    background-position: 0px 100%;
    background-repeat: no-repeat;
  }
  a.nav__link.nav__link-miniCart {
    display: flex;
    align-items: center;
  }
  .nav__link-miniCart svg {
      width: 21px;
      height: 21px;
  }

  .nav__link-miniCart span {
      margin: 0px 4px;
      font-size:21px;
  }

  .mobile__navigation .nav__link,
  .mobile__navigation__footer .user__link {
    font-size:21px;
  }
  .mobile__navigation__footer .user__link {
    padding:1rem 0.5rem;
  }
  .mobile__navigation .nav__link {
    padding:0.5rem;
  }
  .mobile__navigation .nav__link__holder {
    padding-bottom:1rem;
  }

  .banner--blog-title__wrapper {
    margin: 0 12px;
  }
  .gradient-border-primary {
    position: relative;
    padding-bottom: 16px;
    margin-bottom: 16px;
  }

  #MainHero .tximage__image img {
    padding: 0px 0px 0;
    margin-top: 24px;
  }
  .tximage__txt {
    padding: 24px;
    padding-bottom: 24px;
  }
  .card--default .card__info {
    margin-bottom: 40px;
}
  .card--default .card__description {
    padding-bottom: 12px;
  }
  .card__buttons {
    margin-top: 8px;
    display: flex;
    flex-direction: column;
  }
  .card--default .button,
  .card--holder.block--buttons .card__buttons .button,
  .card--holder.block--buttons .card__buttons .button--quickBuy {
    display:block;
    max-width:100%;
    margin-bottom:16px;
  }
  .stemregen2024 .columns__column {
    margin-bottom: 32px !important;
    padding:12px !important;
  }

 /* Slider/Carousel Responsive */
 .container.sliderTestimonial--wrapper {
   padding:0;
   margin-bottom:128px;
 }
 .sliderTestimonial--wrapper .slide-outer-wrapper {
  padding: 0;
}
 .slide-image-left,
 .slide-image-right {
  padding:0;
  float:left;
}
 .slide-image-left {
  width: 41.66666667%;
}
.slide-image-right {
  width: 58.33333333%;
}
.sliderTestimonial--wrapper .wrapper,
.slide-content h5 {
  text-align:center;
}
.slide--heading,
.slide-subheading {
  margin:0;
}
.slide-subheading {
  text-wrap:balance;
}

/* END Slider/Carousel Responsive */

/* Product Page Responsive */
  .stemregen2024 .product__row {
    margin-bottom:0;
  }
  .gallery.gallery__default {
    margin-bottom:0;
    padding:0 24px;
  }
  .gallery__thumbnails {
    margin-bottom:0;
    padding-bottom:0;
  }
  div#product--page.product__page--info {
    padding:0 25px;
  }
  span.product__price {
    text-align:left;
  }
  .product__swatches,
  .swatches__holder {
    margin-bottom:8px;
  }
  .product__atc .button--addToCart {
    margin-right:0;
  }
  .tab__container--product {
    padding:0 25px;
    margin-top:0;
  }
  .tab__container--product .h5 {
    padding:0 0 24px;
    margin:0;
  }
 
  .wrapper--bottom {
    padding-top: 0 !important;
    background:url('footer-background-gradient-mobile.svg');
    background-repeat:no-repeat;
    background-position:bottom left;
    background-size:contain;
  }
  .footer__links__col {
    padding-right:0;
  }
  .footer__links {
    margin-top:0;
  }
  .footer__links a {
    margin-top:0;
    font-size:16px;
    line-height:120%; 
  }

  .stemregen2024 .subfooter {
    padding-right: 0;
    padding-left: 0;
  }
  .subfooter .layout__content.row {
    align-items: baseline;
}
  .end.order-first-mobile {
    justify-items: flex-start;
  }
  .stemregen2024 .subfooter .social-icons .icon-link {
    margin: 4px !important;
  }
  .stemregen2024 .subfooter .social-icons {
    margin-right: 0px;
    text-align:left;
  }
  .icon-link svg {
    width:32px;
    height:32px;
  }
  
}
@media (min-width: 768px) {
  .hidden-xs {
      display: block !important;
  }
}

/* ========================================
   End of Stylesheet
   ======================================== */

  