/** Shopify CDN: Minification failed

Line 153:10 Unexpected "{"

**/
/* =========================================
   Studio Mesh — Custom Styles 
   ========================================= */

/* Fonts */

@font-face {
  font-family: "Neue Haas Grotesk Display Pro";
  src: url('{{ "NHG-DisplayPro-Variable.woff2" | asset_url }}') format("woff2");
  font-weight: 100 900;            
  font-style: normal;
  font-display: swap;
  font-synthesis-weight: none;     
  font-synthesis-style: none;      
}

@font-face {
  font-family: "Roboto Mono";
  src: url('{{ "RobotoMono-Variable.woff2" | asset_url }}') format("woff2");
  font-weight: 100 700;            
  font-style: normal;
  font-display: swap;
  font-synthesis-weight: none;
  font-synthesis-style: none;
  
}


/* -------------------
   Global Tokens
------------------- */
:root {
  /* Font families */
  --mesh-font-display: "Neue Haas Grotesk Display Pro", "Helvetica Neue", Arial, system-ui, sans-serif;
  --mesh-font-mono: "Roboto Mono", ui-monospace, SFMono-Regular, Menlo, monospace;

  /* Paired default for mono */
  --mesh-font-mono-tracking: var(--mesh-ls-50);

  /* Weights */
  --mesh-fw-25: 200; /* 25 = extra light */
  --mesh-fw-35: 300; /* 35 = light */
  --mesh-fw-45: 400; /* 45 = normal/regular */
  --mesh-fw-55: 500; /* 55 = semi/medium */
  --mesh-fw-65: 600; /* 65 = semi-bold / heavier semi */
  --mesh-fw-75: 700; /* 75 = bold */

  /* Letter spacing / tracking */
  --mesh-ls-25: 0.025em;
  --mesh-ls-50: 0.05em;
  --mesh-ls-85: 0.085em;

  /* Colors */
  --mesh-text: #111;
  --mesh-bg: #fff;
  --mesh-accent: #163ca0;
}

/* -------------------
   Bundle Theme Overrides
------------------- */
:root {
  /* Override Bundle's fonts */
  --font-body-family: var(--mesh-font-display);
  --font-heading-family: var(--mesh-font-display);
  --font-body-weight: var(--mesh-fw-45);
  --font-heading-weight: var(--mesh-fw-65);

  /* Override Bundle's colors */
  --color-foreground: var(--mesh-text);
  --color-background: var(--mesh-bg);
  --color-accent: var(--mesh-accent);
}

[data-color-scheme="inverse"] {
  --color-foreground: #fff;
  --color-background: #000;
}



/* -------------------
   Base Typography 
------------------- */
body {
  letter-spacing: var(--mesh-ls-50);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

  * {
    text-wrap: pretty;
  }
  
main {
  position: relative;
  z-index: 1!important;
}



/* -------------------
   Heading Overrides with Custom Fonts
------------------- */
.display1,
.display2,
.display3,
.caption1,
.caption2,
.caption3,
h1,
h2,
h3,
h4,
h5,
h6,
.h0,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
.h7{
  font-family: var(--mesh-font-display) !important;
  font-weight: var(--mesh-fw-45) !important;
}


.heading-font-family {
  font-family: var(--mesh-font-display) !important;
  /* font-weight: var(--mesh-fw-55) !important; */
  letter-spacing: var(--mesh-ls-50) !important;
}

body, h1, h2, h3, .caption.rich-text__caption {
   font-family: var(--mesh-font-display)!important;
   letter-spacing: var(--mesh-ls-50) !important;
}

.caption.rich-text__caption {
  font-weight: var(--mesh-fw-45) !important;
  font-size: var(--gsc-caption-1-font-size);
}

.caption1,
.caption2,
.caption3,{
font-weight: var(--mesh-fw-45) !important;
letter-spacing: var(--mesh-ls-50) !important;
}

.faq--with-background.faq__container, .faq__container{
  padding:16px !important;
}

.faq__accordeon-plus-btn .accordeon-plus__btn .caption2 {
  font-size:inherit;
}


.faq__accordeon-plus-btn {
  padding:1rem 0;
}
.faq__question.faq__accordeon-plus.accordeon-plus.accordeon-plus--top-bordered {
   padding-bottom: 0 !important;
   border-bottom:0.5px solid inherit!important;
}

.rte.body3 {
  margin-bottom:1rem;
}

/* -------------------
   BUTTONS
------------------- */

/* Ensure outline buttons always have white background and blue text */

.btn {
  text-transform: none;
  font-family: var(--mesh-font-display);
  font-weight: var(--mesh-fw-55);
}

.btn--outline {
  background-color: white !important;
  color: #163ca0 !important;
  border: 1px solid #163ca0;
  font-weight: var(--mesh-fw-55);
}

/* Hover states */
.btn--outline:hover {
  background-color: #163ca0;
  color: white;
}

.btn--solid {
  background-color: #163ca0;
  color: white;
  font-weight: var(--mesh-fw-55);
}

.btn--solid:hover {
  background-color: #163ca0; 
}


/* REMOVE UNDERLINE ON BITTON TEXT HOVER */
   .link__text {
      background-image:none !important;
      font-weight: 500;
    }

    .link__chevron{
      display:none;
    }
/* -------------------
   Navigation
------------------- */
.header__menu a,
.header__icon-label,
.header__nav span.underline-text__label {
  font-family: var(--mesh-font-display);
  font-weight: var(--mesh-fw-45);
  /* font-size: clamp(1rem, 0.9rem + 0.8vw, 1.375rem); */
  line-height: 1.4;
  letter-spacing: var(--mesh-ls-85);
  text-transform: none;
}



/* -------------------
   Hero: rotated logo
------------------- */
.rotated-logo-wrapper {
  position: absolute;
  right: 1.5%;
  bottom: 10%;
  z-index: 3;
  max-width: 10vw;
}
.rotated-logo-overlay { width: 100%; height: auto; }

@media (max-width: 768px) {
  .rotated-logo-wrapper {
    max-width: 18vw;
    bottom: 5%;
    right: 5%;
  }
}


/* HOME */

/* #shopify-section-template--25747680330071__rich_text_7xRGz3 .caption.rich-text__caption {
  font-weight: var(--mesh-fw-45) !important;
} */

.section-template--25747680330071__rich_text_7xRGz3 p{
  font-family: var(--mesh-font-display)!important;
  font-weight: var(--mesh-fw-55);
  font-size: clamp(1rem, 0.9rem + 0.8vw, 1.375rem);
  line-height: 1.4;
  text-transform: none;
}


/* -------------------
   Before / After
------------------- */
.before-after__tag {
  font-family: var(--mesh-font-mono);
  text-transform: uppercase;
 font-size:var(--gsc-body-font-size-s);
  font-weight: var(--mesh-fw-45);
  padding: .4rem !important;
}


.ba-labels{
  font-family: var(--mesh-font-mono)!important;
  color:var(--mesh-accent)!important;
  text-transform: uppercase;
  font-size:var(--gsc-body-font-size-s);
  font-weight: var(--mesh-fw-45);
}

.hotspot-text {
   color:var(--mesh-accent)!important;
}

/* -------------------
   Product customisation
------------------- */

.container.container--large.product__container {
  max-width:none;
  width: 100%;
}

.product__quantity-and-button {
  display: flex;
  gap: 1rem;
  align-items: flex-end;
  justify-content: space-between;
  width: 100%;
}

/* Product title */
h1.product__title,
.product__title h1 {
  font-size: clamp(1.5625rem, 1.2rem + 2.2vw, 2.8125rem) !important;
  font-weight: var(--mesh-fw-45) !important;
  letter-spacing: var(--mesh-ls-25);
}

/* Tabs */
.product-content-tab__btn {
  font-weight: var(--mesh-fw-55);
  font-size: 1.375rem;
  text-transform: uppercase;
  padding: 0.8rem 0 !important;
  letter-spacing: var(--mesh-ls-25);
  border-bottom: 1px solid currentColor;
}

.product-quantity__label { display: none; }
.quantity__input { 
  font-weight: var(--mesh-fw-55);
  width: auto; 
  flex-grow: 0; 
  font-size: 1.25rem; 
}
/* .btn--sm { min-height: 2rem; } */

.product-form__btn-wrapper .btn span {
  display: flex;
  flex-direction: row;
  font-size: 1.25rem;
  font-weight: var(--mesh-fw-55);
   font-family: var(--mesh-font-display);

    text-transform: none;
}

.product-quantity__quantity { 
  width: auto; }
.product-quantity__wrap { 
  border: 1px solid #163ca0;
 padding:8px 32px;
}
.product .container--with-aside-paddings {
   gap: 0; }



.product__info-wrapper {
  padding-top: 0rem;
  padding-left: 5.6rem;
}

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

.product-content-tab__content {
    padding: 1rem 0 !important;}

/* Move buy buttons and quantity selector up */
.product__buy-buttons,
.product__quantity-and-button,
.product-form__btn-wrapper {
  order: 0; /* This moves them above other elements */
}

/* Make sure collapsible sections stay at bottom */
.product__collapsible-content,
.collapsible-row,
[class*="collapsible"] {
  order: 2;
}

/* Keep description in middle */
.product__description {
  order: 1;
}

/* Reduce padding between the two heading lines in product */
.product-content-tab.block-28586830-d855-4547-8946-94914bac9e85, .product__info>.product-general-info-block+.product-content-tab{
margin:0 !important;
}

@media (max-width: 767px) {
  .product--with-desktop-media-carousel .product__info-wrapper {
    padding-left: 0;
    padding-right: 0;
  }
}
/* Base: mobile (<768px) → row layout */
.product__quantity-and-button {
  display: flex;
  flex-direction: row;
  align-items: center;
}

.product-quantity__wrap {
  justify-content: flex-start; /* normal alignment when row */
}

/* Extra-small (320–500px) → column layout */
@media (min-width: 320px) and (max-width: 500px) {
  .product__quantity-and-button {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  .product-quantity__wrap {
    justify-content: center !important;
  }
}

/* Tablet (768–1023px) → column layout */
@media (min-width: 768px) and (max-width: 1023px) {
  .product__quantity-and-button {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  .product-quantity__wrap {
    justify-content: center !important;
  }
}

/* Desktop (≥1024px) → row layout again */
@media (min-width: 1024px) {
  .product__quantity-and-button {
    flex-direction: row !important;
    align-items: center !important;
  }

  .product-quantity__wrap {
    justify-content: flex-start !important;
  }
}
/* -------------------
   STATS SECTION 
------------------- */

:root {
  /* tweak per-section if needed */
  --stats-gap: 2.5rem;         /* 40px default */
  --stats-min: 220px;          /* min card width */
  --stats-line: 1px;           /* underline thickness */
}

.stats-columns {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(var(--stats-min), 1fr));
  gap: var(--stats-gap);
}

.stat-column {
  min-width: 0; /* allow content to shrink */
}

/* Force 4 → 2 → 1 columns */
.animated-stats .stats-columns {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

@media (max-width: 1024px) {
  .animated-stats .stats-columns {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 768px) {
  .animated-stats .stats-columns {
    grid-template-columns: 1fr !important;
  }
}

/* Big number */
.stat-value {
 
  font-family: var(--mesh-font-display);
  font-size: calc(var(--stats-value-fs, 3rem) * var(--stats-value-scale, 1));
  line-height: var(--stats-value-lh, 1.1);
  font-weight: var(--mesh-fw-45);

}

/* Divider */
.stat-underline {
  width: 100%;
  height: var(--stats-line);
  margin: 0.875rem 0; /* 14px */
  background: currentColor;
  opacity: 0.4;
}

/* Title */
.stat-title {
  font-family: var(--mesh-font-display);
  font-weight: var(--mesh-fw-45);
  margin: 0 0 0.5rem;
  line-height: 1.25;
  font-size: clamp(2rem, 1.2rem + 5vw, 3rem);
  color: white;
}

/* Body */
.stat-text {
  font-family: var(--mesh-font-display);
  font-weight: var(--mesh-fw-45);
  
  line-height: 1.5;
  margin: 0 0 0.5rem;
  
  color: var(--color-foreground);
  opacity: 0.8;
}

/* “Show more” inline control */
.toggle-more {
  appearance: none;
  background: none;
  border: 0;
  color: currentColor;
  font-family: var(--mesh-font-display);
  font-weight: var(--mesh-fw-45);
  
  text-decoration: underline;
  cursor: pointer;
  padding: 0;
  margin: 0 0 1.25rem; /* 20px */
 
}

/* Optional CTA in a stat */
.stat-button {
  display: inline-block;
  margin-top: 0.5rem;
  padding: 0.625rem 0.9375rem; /* 10/15 */
  font-family: var(--mesh-font-display);
  font-weight: var(--mesh-fw-55);
  
  text-transform: uppercase;
  text-decoration: none;
  line-height: var(--gsc-caption-2-line-height, 1.5);
  border: 1px solid currentColor;
  background: transparent;
  color: currentColor;
}

/* Footer copy under grid */
.stats-footer-text {
  margin-top: 6.25rem; 
  max-width: 56.25rem; 
  font-family: var(--mesh-font-display);
  font-weight: var(--mesh-fw-45);
  line-height: 1.5;
  color: var(--color-foreground);
  opacity: 0.6;
}

/* Responsive tweaks */
@media (max-width: 1024px) {
  :root { --stats-gap: 2rem; }
}
@media (max-width: 768px) {
  :root { --stats-gap: 1.25rem; }
  .stats-footer-text { font-size: 1rem; }
}

/* =========================================
   Key Ingredients — grid + hover/tap
   ========================================= */


.key-ingredients-section {
  font-family: var(--mesh-font-display);
  color: var(--color-foreground);
  padding: 3rem 0;

  /* Shared transition shorthand */
  --mesh-trans: opacity .25s ease, color .25s ease, transform .25s ease;
}

/* 33/66 grid */
.key-ingredients__container {
  display: grid;
  grid-template-columns: minmax(0, 33%) minmax(0, 1fr);
  gap: 2rem;
  margin: 0 auto;
  align-items: start;
}
.key-ingredients__container--full-width{
  padding:0!important;
}


.key-ingredients__left { grid-column: 1; }
.key-ingredients__right { grid-column: 2; }

/* Left heading */
.key-ingredients__heading {
  font-size: clamp(2rem, 1.8rem + 0.6vw, 2.5rem);
  font-weight: var(--mesh-fw-45);
  line-height: 1.2;
  letter-spacing: var(--mesh-ls-25);
  margin: 0 0 1.5rem;
}

/* List */
.key-ingredients__list {
  display: flex;
  flex-direction: column;
  margin: 0;
  padding: 0;
  list-style: none;
}

/* Reset padding on list buttons + labels */
.key-ingredients-section .key-ingredients__list > li > button,
.key-ingredients-section .key-ingredients__list > li > .key-ingredients__btn {
  padding: 0;
}

.key-ingredients-section .key-ingredients__list > li > button .label,
.key-ingredients-section .key-ingredients__list > li > .key-ingredients__btn .label {
  padding-top: 0;
  padding-bottom: 8px;
  margin-top: 0;
  margin-bottom: 0;
  line-height: 1;
  display: inline-block;
}

/* Buttons */
.key-ingredients__btn {
  background: none;
  border: 0;
  width: 100%;
  text-align: left;
  cursor: pointer;
  display: flex;
  align-items: baseline;
  gap: 1.5rem;
  padding: 0.5rem 0;
  font-weight: var(--mesh-fw-45);
  letter-spacing: var(--mesh-ls-25);
  opacity: .35;
  transition: var(--mesh-trans);
}

.key-ingredients__btn .label,
.key-ingredients__btn .num {
  font-size: clamp(1.375rem, 1.15rem + 1.2vw, 2rem);
  font-weight: var(--mesh-fw-45);
}

.key-ingredients__btn .num { opacity: .9; }

.key-ingredients__btn:hover,
.key-ingredients__btn.is-active,
.key-ingredients__btn:focus {
  opacity: 1;
  color: var(--color-foreground);
}

/* Right panels (layered) */
.key-ingredients__right {
  position: relative;
  min-height: 220px;
}

.key-ingredients__detail {
  position: absolute;
  inset: 0;
  opacity: 0;
  transform: translateY(0.5rem);
  pointer-events: none;
  transition: opacity .35s ease, transform .35s ease;
}

.key-ingredients__detail.is-active {
  opacity: 1;
  transform: none;
  pointer-events: auto;
}

/* Overline */
.key-ingredients__detail h3 {
  font-weight: var(--mesh-fw-55);
  font-size: clamp(1rem, 0.85rem + 0.6vw, 1.25rem);
  letter-spacing: var(--mesh-ls-85);
  text-transform: uppercase;
  margin: 0 0 1rem;
}

/* Body + Subheading — unified style */
.key-ingredients__detail p,
.key-ingredients__detail h2.key-ingredients__heading {
  font-size: clamp(1.375rem, 1.05rem + 2.2vw, 2.5rem);
  line-height: 1.25;
  font-weight: var(--mesh-fw-45);
  letter-spacing: var(--mesh-ls-25);
  margin: 0 0 1.5rem;
}

/* Full list below left column */
.key-ingredients__full-list {
  grid-column: 1 / 2;
  /*margin top to space out without interfering with grid*/
  margin-top: 20rem;
  font-size: 1rem;
  line-height: 1.6;
  font-weight: var(--mesh-fw-45);
  letter-spacing: var(--mesh-ls-25);
}


.key-ingredients__full-list strong { font-weight: var(--mesh-fw-55); }

/* ---- Mobile (≤767px) ---- */
.key-ingredients-section.is-mobile .key-ingredients__full-list {
  margin-top: 6rem;
}


.key-ingredients-section.is-mobile .key-ingredients__container {
  grid-template-columns: 1fr;
  gap: 4rem;
}

.key-ingredients-section.is-mobile .key-ingredients__left,
.key-ingredients-section.is-mobile .key-ingredients__right,
.key-ingredients-section.is-mobile .key-ingredients__full-list {
  grid-column: 1;
}

.key-ingredients-section.is-mobile .key-ingredients__right {
  position: static;
  min-height: 0;
}

.key-ingredients-section.is-mobile .key-ingredients__detail {
  position: static;
  display: none;
  opacity: 0;
  transform: translateY(0.5rem);
  transition: opacity .3s ease, transform .3s ease;
  pointer-events: auto;
  margin: 0 0 1.25rem;
}

.key-ingredients-section.is-mobile .key-ingredients__detail.is-active {
  display: block;
  opacity: 1;
  transform: none;
}

.key-ingredients-section.is-mobile .key-ingredients__btn {
  padding: 0.375rem 0;
  gap: 1rem;
  font-size: 1.375rem;
  line-height: 1.3;
  opacity: .5;
}

.key-ingredients-section.is-mobile .key-ingredients__btn.is-active { opacity: 1; }


/* 33/66 grid to one col on mobile */
.key-ingredients__container.is-mobile {
  display: grid;
  grid-template-columns: 1fr;
  gap: 4rem;
 
}
/* =========================================
   product modal
   ========================================= */

.product-modal__body {
background-color:#003DA6;
}



/* ========================
   Split Image Text Mesh - Home page with rotating bottle 
   ======================== */

 .scroll-info-section {
  background-color: #e9e9e7; }

  .scroll-info-layout {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 2rem;
    align-items: end;
  /* padding: 0rem 2rem 8rem;  */
     padding: 0rem 3rem;
  }
  
  @media (max-width: 768px) {
  .scroll-info-layout {
     padding: 0;
  }

  .scroll-info-text {
    font-family: Neue Haas Grotesk Display, sans-serif;
    padding:0 32px 48px!important;
      }
    }


  .image-slider-slideshow--with-vertical-scroll .image-slider__image {
    width: auto;
    height: 100%;
  }
    .image-slider-slideshow--with-vertical-scroll--text {
      display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    }

  .scroll-image {
    overflow: visible;
    position: relative;
  }
  .scroll-image img {
    /* width: 120%; */
    width: 100%;
    height: auto;
    display: block;
    /* margin-left: -20%; 
    margin-bottom:-20%;  */
    margin-right: auto;
     /* transform: scale(1.2); */
  }
  .scroll-info-text {
    font-family: Neue Haas Grotesk Display, sans-serif;
    padding:0 0 10rem 0;
  }

  .scroll-info-text h3 {
    font-size: 1.25rem;
    margin-bottom: 1.5rem;
  }

  .info-row {
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid #000;
    padding: 2rem 0;
    gap:20px;
  }

 /* .info-row strong{
  font-weight: var(--mesh-fw-55)!important;
  } */

  .info-row span {
  margin-left:4rem;
  text-align:right;
}





/* ========================
   Image / Text Split custom colums section (Science page)
   ======================== */

.image-text-split {
  /* editor-controlled spacing */
  padding-block: var(--split-pt, 60px) var(--split-pb, 60px);
  color: var(--split-color, var(--color-foreground));
  background: transparent;
}

.image-text-split .split-container {
  display: flex;
  flex-direction: row; /* default */
  min-block-size: 90vh;
}

.image-text-split[data-reverse="true"] .split-container {
  flex-direction: row-reverse;
}

.image-text-split .split-image {
  inline-size: var(--split-img-w, 50%);
  min-block-size: 90vh;
}

.image-text-split .split-image img {
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
  display: block;
}

.image-text-split .split-content {
  inline-size: var(--split-text-w, 50%);
  background: var(--split-bg, var(--mesh-accent));
  color: var(--split-color, var(--mesh-bg));
  padding: 48px; 
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  font-family: var(--mesh-font-display);
  letter-spacing: var(--mesh-ls-25);
}

/* Label */
.image-text-split .label {
  font-family: var(--mesh-font-mono);
  letter-spacing: var(--mesh-font-mono-tracking);
  text-transform: uppercase;
  font-weight: var(--mesh-fw-45);
  margin-block-end: 1rem;
  
}

/* Main text */
.image-text-split .main-text {
  font-family: var(--mesh-font-display);
  font-weight: var(--mesh-fw-45);
  letter-spacing: var(--mesh-ls-25);
  line-height: 1.5;
  margin-block-end: 1.875rem; /* 30px */
  font-size:var(--gsc-heading-5-font-size);
}

/* Bottom row */
.image-text-split .bottom-columns {
  display: flex;
  gap: 4rem;             
  text-transform: uppercase;
  font-weight: var(--mesh-fw-25);
  letter-spacing: var(--mesh-ls-25);
  font-size:var(--gsc-body-font-size-s)!important;
}

.image-text-split .bottom-columns > div {
  font-family: var(--mesh-font-mono);
  letter-spacing: var(--mesh-font-mono-tracking);
  line-height: 1.4;
  border-top: 1px solid currentColor;
  padding-top: 1rem;     
  flex: 1 1 0%;
}

/* Mobile */
@media (max-width: 768px) {
  .image-text-split .split-container {
    min-block-size: auto;
    flex-direction: column;
  }
  .image-text-split .split-image,
  .image-text-split .split-content {
    inline-size: 100%;
    min-block-size: auto;
  }
  .image-text-split .split-image img {
    block-size: auto;
    max-block-size: 60vh;
  }
  .image-text-split .split-content { padding: 1.875rem 32px; } /* 30/20 */
  .image-text-split .bottom-columns { flex-direction: column; }
  .image-text-split .bottom-columns > div { margin-block-end: 0.9375rem; }
  /* Bottom row */
.image-text-split .bottom-columns {
  display: flex;
  gap: 2rem;  
}

/* Main text */
.image-text-split .main-text {
  margin-block-end: 4rem;}
}





/* =========================================
   About the brand (science page)
   ========================================= */


/*--------------------
   Overflow visible on 3 col section
   ----------------------------------*/
#shopify-section-template--25747680330071__multicolumn_DBbTga .shape,  
#shopify-section-template--25747680330071__multicolumn_DBbTga .multicolumn__column-image-wrap,
#section-template--25747680559447__multicolumn_VNCGbP .shape,
#section-template--25747680559447__multicolumn_VNCGbP .multicolumn__column-image-wrap{ 
    overflow: visible !important;
}


 #shopify-section-template--25747680330071__multicolumn_DBbTga .multicolumn__column-image {
  overflow: visible !important;
}

 .block-column_MGVr38 {
      --gsc-img-ratio: 150% !important;
      overflow: visible;
    } 

.multicolumn {
  display: flex;
  align-items: stretch;
}

/* Equal width by default */
.multicolumn__column {
  flex: 1 1 0;
  display: flex;
  justify-content: center;
}

/* Make the middle column larger */
.multicolumn__column:nth-child(2) {
  flex: 1.5 1 0;
}

/* Center content vertically inside */
.multicolumn__details {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding:0!important;
}

/* Button / link styling */
.link.multicolumn__column-link {
  font-family: var(--mesh-font-display);

    text-transform: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid currentColor;
  width:100%;
  padding:1rem 3rem;
  transition: background-color 0.3s ease, color 0.3s ease;
  color: var(--mesh-text)!important;
  background-color: var(--mesh-bg)!important;
}

.link.multicolumn__column-link:hover {
  color: var(--mesh-bg)!important;
  background-color: var(--mesh-accent)!important;

}

.link.multicolumn__column-link .link-parent-for-hover span.link__text:hover, .link.multicolumn__column-link .link-parent-for-hover .link:hover .link__text:hover {
  background-image:none!important;
  background-color:transparent;
  background-size: 0 !important;
  background-image: transparent!important;
}


#shopify-section-template--25747680330071__multicolumn_d3mHaX .link.multicolumn__column-link {
  
  width:100%;
}

 


/* Title typography */
.multicolumn__column-title.h5 {
  font-family: var(--mesh-font-display);
}

/* Responsive: stack on mobile */
@media (max-width: 768px) {
  .multicolumn {
    flex-direction: column;
  }

  .multicolumn__column:nth-child(2) {
    flex: 1 1 0; 
  }

   .block-column_MGVr38 {
      --gsc-img-ratio: 100% !important;
    } 
.section-template--25747680330071__multicolumn_d3mHaX .multicolumn__column:nth-child(2) {
  flex: 1 1 0;
}

}
/* -------------------
   bouncing icons 
------------------- 

  /* Bouncing animation for 4 pillar specific multicolumn sections only */
  #shopify-section-template--25747680493911__multicolumn_LQheCN .shape--nature, #shopify-section-template--25747680330071__multicolumn_mAjCPR .shape--nature {
  transition: transform 0.2s ease-in-out;
  }

  #shopify-section-template--25747680493911__multicolumn_LQheCN .shape--nature:hover, #shopify-section-template--25747680330071__multicolumn_mAjCPR .shape--nature:hover{
  animation: calm-bounce 1.2s ease-in-out infinite;
  }

  @keyframes calm-bounce {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-8px); }
  }




/*SCIENCE*/

#shopify-section-template--25747680493911__image_slider_Fq3DzD h2  {
  font-size: 3.2rem !important;
}


/*SCIENCE STEM UTILISES SECTION WITH ROTATING INFO*/


.image-slider-slideshow--with-vertical-scroll--text .image-slider__content-wrapper {
  min-height: inherit;
  gap: 10rem !important;
}
.image-slider-slideshow--with-vertical-scroll--text {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
}

@media (min-width: 768px) and (max-width: 1023px) {
  .image-slider-slideshow--with-vertical-scroll--text {
    grid-template-columns: 1fr 2fr;
  }
}
@media (min-width: 1024px) {
  .image-slider-slideshow--with-vertical-scroll--text {
    grid-template-columns: 1fr 1fr;
  }
}
@media (min-width: 768px) {
  .image-slider__image-wrapper:not(:nth-child(1)) {
    display: none !important;
  }
}





/*--------------------
   science 3 col gifs
   ----------------------------------*/
.multicolumn.section.section-template--25747680493911__multicolumn_RKhWcG {
  .caption2 {
    font-weight: 400 !important;
  }
  p {
    font-family: Roboto Mono !important;
    font-weight: 400 !important;
  }
  .multicolumn__number-indicator {
     position: absolute; 
    top: 10px;
    left: 0px;
    color: black;
    font-family: Roboto Mono !important;
   
  }
  .multicolumn__column-media {
    position: relative;
  }
  .slider-grid__d-grid {
    align-items: start;
  }
  .multicolumn__column-title.caption1 {
    font-family: Neue Haas Grotesk Display, sans-serif !important;
    font-weight: 200 !important;
    font-size: 2.2rem !important;
    letter-spacing: 0.025em;
  }
  .multicolumn__column-media--image {
    padding-left:0!important;
     padding-right:0!important;
     width:100%;
  }
  /*safari fix do not remove*/
    .slider-grid__d-grid .slider-grid__slide {
    min-width: 0 !important;
  }
}


/*--------------------
   TESTIMONIALS
   ----------------------------------*/
 @media screen and (min-width: 768px){ 
   .testimonials__body {
  padding: 1rem;
}}
 
.testimonials__content, .testimonials__body--right-quotes .testimonials__container {
  align-items:start !important;
  margin: 0 auto!important;
  text-align:left;
  width:100%;
}

.testimonials__body--aside-quotes .testimonials__solid-dots-carousel {
padding:0 1rem !important;
}

/*SWAP DOTS TO RIGHT*/
.testimonials__body--right-quotes .testimonials__carousel{
  flex-flow: row;
  width:100% !important;
 }
/* DOTS bottom */
/* .testimonials__body--aside-quotes .solid-dots-carousel--vertical {
justify-content: flex-end;
  } */

  /* DOTS middle */
.testimonials__body--aside-quotes .solid-dots-carousel--vertical {
justify-content: center;
  }


.rating__star {
  width:1.2rem!important;
  height:1.2rem!important;
}

.quote__text--medium {
  font-weight: var(--mesh-fw-35) !important;
  font-family: var(--mesh-font-display)!important;
}

.quote__author-name{
 font-weight: var(--mesh-fw-55) !important;
}
 
/* Active dot */
.solid-dots-carousel__solid-dot.is-primary .solid-dots-carousel__solid-dot-circle {
  background: var(--mesh-accent) !important;
}

/* Inactive dots */
.solid-dots-carousel__solid-dot:not(.is-primary) .solid-dots-carousel__solid-dot-circle {
  background: rgba(22, 61, 160, 0.5) !important;
}

 .btn.btn--outline.testimonials__btnscroll-trigger{
    transition: background-color 0.3s ease, color 0.3s ease;
    color: var(--mesh-text) !important;
    background-color: var(--mesh-bg)!important;
    border:1px solid var(--mesh-text);
    }


    .btn.btn--outline.testimonials__btnscroll-trigger:hover {
      color: var(--mesh-bg)!important;
      background-color: var(--mesh-accent)!important;
     border:1px solid var(--mesh-accent);
    }

/* .quote__content {
flex-direction:row;
} */


/* 
.testimonials__container.container.container--large  {
  display:grid !important;
  grid-template-columns:1fr 2fr!important;
  
} */

/* @media screen and (max-width: 1024px) {
  .testimonials__container.container.container--large  {
display:grid !important;
 grid-template-columns:1fr!important;
}

} */

/* -------------------
  FAQ's
------------------- */


.faq__blocks {
  width:63%;
}

 .faq__category.faq__category--all-without-aside-spacing{
      padding: 2rem 0 1rem!important;
    }
/* Mobile faq styles */
@media screen and (max-width: 768px) {
 .faq__blocks {
  width:100%;
    }

    .faq__category.faq__category--all-without-aside-spacing{
      padding: 2rem 0!important;
    }
    .faq__question--outer-container {
      padding: 0!important;
    }

}


/* -------------------
   CART
------------------- */

.cart-drawer-subtotal__btn.btn.btn--solid.btn--lg[type="submit"]  {
  color:white;
  transition:all 0.2s ease;
}

 #product-buy-btn-10113737228631-template--25747680559447__main---MainSection:hover,.sidebar-cart__warning-btn:hover, .cart-drawer-subtotal__btn:hover {
  color:var(--mesh-accent)!important;
  background-color:white !important;
  opacity:1 !important;
  border: 1px solid var(--mesh-accent);
}

a[href="/cart"] {
  color:var(--mesh-accent);
}

.cart-drawer__footer {
    padding-bottom: 2rem;}


/* -------------------
   Custom Footer
------------------- */
.shopify-section-group-main-footer-group {
 background-color: var(--mesh-accent);
}

#shopify-section-sections--25747674595671__custom_footer_XjWqAe {
  position: sticky!important;
  bottom: -2px !important;            
  z-index: 0 !important;    
}

/* 3) Sticky reveal footer */
.custom-footer-overlay {
  background-color: var(--mesh-accent);
  color: var(--mesh-bg);
  /* border-top-left-radius: 48px;
  border-top-right-radius: 48px; */
  overflow: hidden;
  margin-bottom: 0;     
  /* margin-top: 48px;     */

  /* optional: create its own stacking context so z-index behaves consistently */
  isolation: isolate;
}

.footer-inner {
  display: flex;
  justify-content: space-between;
 max-width:none;
  margin: 0 auto;
  flex-wrap: wrap;
 padding: 40px 32px 30% 32px;
  gap: 4rem;
}

.footer-column.left {
  flex: 1 1 30%;
  margin-right: 6rem;
}

.footer-column.right {
  display: flex;
  flex: 1 1 30%;
  justify-content: space-between;
  flex-wrap: wrap;
}

.footer-heading-wrap {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  max-width:65%;
}

.footer-icon {
  width: 24px;
  height: auto;
  flex-shrink: 0;
}

.footer-heading {
  font-family: var(--mesh-font-display);
  font-weight: var(--mesh-fw-55);
  font-size: clamp(1.875rem, 1.5rem + 1.8vw, 2.5rem);
  letter-spacing: var(--mesh-ls-50);
  margin: 0;
  color: var(--mesh-bg);
}

.footer-subtext {
  font-family: var(--mesh-font-display);
  font-weight: var(--mesh-fw-55);
  margin: 1rem 0;
  letter-spacing: var(--mesh-ls-50);
}

form.contact-form{
    border-bottom: 1px solid var(--mesh-bg) !important;
    width: 65%;
    display: grid;
    grid-template-columns: 2fr 1fr;
    flex-direction: row;
    align-items: flex-end;
    justify-content: space-between;
  }

  footer-newsletter {
    display:flex;
    width:65%;
  }

.footer-newsletter input[type="email"] {
  padding: 10px 0;
  border: none;
  margin-right: 10px;
  margin-top: 40px;
  background: transparent;
  /* border-bottom: 1px solid var(--mesh-bg); */
  color: var(--mesh-bg);
  width: 90%;
  font-family: var(--mesh-font-display);
}

.footer-newsletter input[type="email"]::placeholder {
  color: var(--mesh-bg);
  opacity: 1;
  font-family: var(--mesh-font-display);
  font-weight: var(--mesh-fw-55);
  letter-spacing: var(--mesh-ls-50);
}

.footer-newsletter > form button {
  background-color: var(--mesh-bg);
  font-family: var(--mesh-font-display);
  color: var(--mesh-accent);
  padding: 4px 12px;
  border-radius: 20px;
  font-weight: var(--mesh-fw-55);
  letter-spacing: var(--mesh-ls-50);
  border: none;
  cursor: pointer;
  transition: opacity 0.3s ease;
  margin-bottom:8px;
  white-space: nowrap;
}

.footer-newsletter button:hover {
  opacity: 0.9;
}

.footer-link-group h4.footer-link-title {
  font-family: var(--mesh-font-mono);
  letter-spacing: var(--mesh-ls-50);
  text-transform: capitalize !important;
  font-weight: var(--mesh-fw-55)!important;
  font-size: 1.5rem; 
  margin-bottom: 0.5rem;
  color: var(--mesh-bg);
}

.footer-link-group ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.footer-link-group ul li {
  margin-bottom: 0.3rem;
  
}

.footer-link-group ul li a {
  color: var(--mesh-bg);
  text-decoration: none;
  font-family: var(--mesh-font-display);
  font-weight: var(--mesh-fw-45);
  /* font-size: 1.5rem; */
  letter-spacing: var(--mesh-ls-25);
  transition: opacity 0.3s ease;
}

.footer-link-group ul li a:hover {
  opacity: 0.7;
}

.footer-logo-bg {
  position: absolute;
  bottom: 0px;
  right: -10px;
  left: -15px;
  width: 102%;
  text-align: center;
  opacity: 1;
  z-index: 1;
}

.footer-logo-bg img {
  width: 100%;
  height: auto;
}

/* Mobile footer styles */
@media screen and (max-width: 768px) {
  .footer-inner {
    flex-direction: column;
    padding: 40px 30px 30% 30px;
    gap: 2rem;
  }

  .footer-column.left,
  .footer-column.right {
    width: 100%;
  }

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

  .footer-link-group h4::after {
    content: ' +';
    float: right;
    font-weight: normal;
  }

  .footer-link-group ul {
    display: none;
  }

  .footer-link-group.open ul {
    display: block;
  }

  .footer-link-group h4 {
    padding: 10px 0;
    border-bottom: 1px solid var(--mesh-bg);
    cursor: pointer;
  }

  footer-newsletter {
  width:auto;
}
  
  .footer-newsletter input[type="email"] {
    margin-bottom: 16px;
    width: 100%;
    padding:0;
  }
  
  .footer-newsletter button {
    width: auto;
    white-space: nowrap;
  }


  .footer-heading-wrap {
    max-width:100%;
  }

  form.contact-form {
    width:auto;}

  .footer-newsletter > form button {
    margin-bottom:16px;
  }
}

/* -------------------
   Utilities (minimal set)
------------------- */
/* .ff-mono { font-family: var(--mesh-font-mono); }
.fw-45 { font-weight: var(--mesh-fw-45); }
.fw-55 { font-weight: var(--mesh-fw-55); }
.fw-65 { font-weight: var(--mesh-fw-65); }
.fw-75 { font-weight: var(--mesh-fw-75); }
.ls-25 { letter-spacing: var(--mesh-ls-25); }
.ls-50 { letter-spacing: var(--mesh-ls-50); }
.ls-85 { letter-spacing: var(--mesh-ls-85); }

.body4 {
  font-weight: var(--mesh-fw-55) !important;
} */


