/** Shopify CDN: Minification failed

Line 653:0 Unexpected "@media"

**/

:root{
  --tp-forest:#143D2A;
  --tp-sage:#DDE4CC;
  --tp-cream:#F8F5EC;
  --tp-gold:#B89C5E;
  --tp-ink:#23352A;
  --tp-max:1280px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--tp-cream);color:var(--tp-ink);font-family:Arial,sans-serif}
img{max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
.tp-shell{width:min(var(--tp-max),calc(100% - 40px));margin:0 auto}
.tp-section{padding:64px 0}
.tp-heading{text-align:center;margin-bottom:32px}
.tp-heading h2{font-family:Georgia,serif;color:var(--tp-forest);font-size:42px;margin:0 0 10px}
.tp-heading p{margin:0 auto;max-width:720px}
.tp-button{display:inline-block;background:var(--tp-forest);color:#fff;padding:13px 22px;border-radius:4px;font-weight:700;font-size:13px;letter-spacing:.04em}
.tp-skip-link{position:absolute;left:-9999px}
.tp-skip-link:focus{left:16px;top:16px;background:white;padding:10px;z-index:9999}

/* header */
.tp-announcement{text-align:center;padding:8px 12px;background:var(--tp-forest);color:#fff;font-size:12px}
.tp-header{background:#fff;border-bottom:1px solid rgba(20,61,42,.08)}
.tp-header__row{display:grid;grid-template-columns:auto 1fr auto;gap:28px;align-items:center;padding:18px 0}
.tp-header__logo img{display:block;max-height:72px;width:auto}
.tp-header__wordmark{font-family:Georgia,serif;font-size:30px;color:var(--tp-forest)}
.tp-header nav{display:flex;gap:22px;justify-content:center;flex-wrap:wrap}
.tp-header__icons{display:flex;align-items:center;gap:12px}
.tp-header__icons a,.tp-search-toggle{width:40px;height:40px;border:1px solid #d9ded6;border-radius:50%;display:grid;place-items:center;background:#fff}
.tp-header svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8}
.tp-search{padding:0 0 16px}
.tp-search form{display:grid;grid-template-columns:1fr auto;max-width:650px;margin:auto}
.tp-search input{padding:12px;border:1px solid #ccd4ca}
.tp-search button{border:0;background:var(--tp-forest);color:#fff;padding:0 18px}

/* hero */
.tp-hero{display:grid;grid-template-columns:minmax(320px,1fr) minmax(420px,1.15fr);min-height:560px;background:#eef0e0;align-items:stretch}
.tp-hero__copy{display:flex;align-items:center;padding:64px max(30px,8vw)}
.tp-hero__copy h1{font-family:Georgia,serif;font-size:58px;line-height:1.02;color:var(--tp-forest);margin:0 0 18px}
.tp-hero__copy p{font-size:17px;line-height:1.6;max-width:560px}
.tp-hero__media{display:flex;align-items:flex-end;justify-content:center;padding:18px 18px 0;background:#eef0e0;overflow:hidden}
.tp-hero__media img{width:100%;max-width:760px;height:auto;max-height:540px;object-fit:contain;display:block}

/* icon strip */
.tp-icon-strip{padding:22px 0 18px;border-top:1px solid rgba(20,61,42,.06);border-bottom:1px solid rgba(20,61,42,.06)}
.tp-icon-grid{display:grid;gap:16px;grid-template-columns:repeat(var(--tp-count),minmax(0,1fr))}
.tp-icon-item{display:flex;align-items:center;justify-content:center;gap:14px;padding:16px 18px;border-radius:22px;background:rgba(255,255,255,.72);border:1px solid rgba(20,61,42,.08);box-shadow:0 12px 28px rgba(20,61,42,.08);min-width:0;text-align:left;backdrop-filter:blur(4px)}
.tp-icon-badge{width:var(--tp-icon-badge-size,64px);height:var(--tp-icon-badge-size,64px);min-width:var(--tp-icon-badge-size,64px);border-radius:999px;display:grid;place-items:center;background:var(--tp-badge-bg,#E9F2E4);box-shadow:inset 0 1px 0 rgba(255,255,255,.65),0 8px 18px rgba(20,61,42,.08)}
.tp-icon-item:nth-child(4n+1){--tp-badge-bg:#E4F1DE;--tp-icon-accent:#2F6E42}
.tp-icon-item:nth-child(4n+2){--tp-badge-bg:#F8E6CD;--tp-icon-accent:#B26C2B}
.tp-icon-item:nth-child(4n+3){--tp-badge-bg:#E3EDF8;--tp-icon-accent:#3E6E99}
.tp-icon-item:nth-child(4n+4){--tp-badge-bg:#F0E6F8;--tp-icon-accent:#7958A8}
.tp-icon-badge img{width:calc(var(--tp-icon-size,36px) + 10px);height:calc(var(--tp-icon-size,36px) + 10px);object-fit:contain;display:block}
.tp-icon-badge svg{width:var(--tp-icon-size,36px);height:var(--tp-icon-size,36px);display:block}
.tp-icon-badge svg *{stroke:var(--tp-icon-accent,#2F6E42);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.tp-icon-item strong{display:block;margin:0;font-size:var(--tp-icon-text-size,14px);line-height:1.2;font-weight:700;letter-spacing:.01em;color:var(--tp-icon-text-color,var(--tp-ink));max-width:12ch}

/* split */
.tp-split{display:grid;grid-template-columns:1fr 1fr}
.tp-split--right .tp-split__media{order:2}
.tp-split--right .tp-split__copy{order:1}
.tp-split__media img{display:block;width:100%;height:100%;min-height:460px;object-fit:cover;object-position:center}
.tp-split__copy{padding:64px;display:flex;align-items:center}
.tp-split__inner h2{font-family:Georgia,serif;color:var(--tp-forest);font-size:46px;margin:0 0 16px}
.tp-split__inner p{line-height:1.65}

/* products */
.tp-product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.tp-product-card{background:#fff;border:1px solid #e7e4da;padding:16px;text-align:center}
.tp-product-card__media{display:block;aspect-ratio:1/1;background:#f3f1e9}
.tp-product-card__media img{width:100%;height:100%;object-fit:contain}
.tp-product-card h3{font-family:Georgia,serif;color:var(--tp-forest);font-size:20px}
.tp-price{font-weight:700}

/* ingredients */
.tp-ingredients{display:grid;grid-template-columns:300px 1fr;gap:36px;align-items:center}
.tp-ingredients__intro h2{font-family:Georgia,serif;color:var(--tp-forest);font-size:38px}
.tp-slider{position:relative}
.tp-slider input{position:absolute;opacity:0}
.tp-slider__viewport{overflow:hidden}
.tp-slider__track{display:flex;transition:transform .35s ease}
.tp-slide{flex:0 0 100%;display:grid;grid-template-columns:minmax(260px,1.05fr) minmax(250px,.95fr);gap:36px;align-items:center;background:#fff;border:1px solid #dedfd6;padding:34px 78px;min-height:330px}
.tp-slide img{width:100%;height:260px;object-fit:contain;display:block;margin:0 auto}
.tp-slide h3{font-family:Georgia,serif;color:var(--tp-forest);font-size:28px;margin:0 0 8px}
.tp-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:44px;height:44px;border-radius:50%;background:#fff;border:1px solid #cbd2c8;display:grid;place-items:center;font-size:30px;cursor:pointer}
.tp-arrow--prev{left:12px}.tp-arrow--next{right:12px}
.tp-dots{display:flex;justify-content:center;gap:8px;margin-top:12px}
.tp-dots label{width:9px;height:9px;border-radius:50%;background:#c3c8bc}

/* why */
.tp-benefits{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:28px 0}
.tp-benefit{text-align:center}
.tp-benefit img,.tp-benefit svg{width:38px;height:38px}

/* reviews */
.tp-review-box{max-width:850px;margin:auto;background:#fff;border:1px solid #e5e1d7;padding:42px;text-align:center}
.tp-review-box blockquote{font-family:Georgia,serif;font-size:28px;line-height:1.4;margin:0 0 16px}

/* newsletter */
.tp-newsletter{text-align:center;padding:44px 0}
.tp-newsletter form{display:grid;grid-template-columns:1fr auto;max-width:520px;margin:18px auto 0}
.tp-newsletter input{padding:13px;border:1px solid #b8c1b2}
.tp-newsletter button{border:0;background:var(--tp-forest);color:#fff;padding:0 18px}

/* footer */
.tp-footer{padding:44px 0 18px}
.tp-footer__grid{display:grid;grid-template-columns:1.4fr .8fr .8fr .8fr 1fr;gap:34px}
.tp-footer__logo img,.tp-footer__badge img{display:block;width:100%;height:auto;background:transparent;border:0;box-shadow:none}
.tp-footer h3{font-size:11px;letter-spacing:.08em;margin:0 0 11px}
.tp-footer__brand-subheading{margin-top:10px!important}
.tp-footer__menu a{display:block;font-size:11px;margin:6px 0}
.tp-footer__socials{display:flex;gap:9px;flex-wrap:wrap;margin-top:15px}
.tp-footer__socials a{width:34px;height:34px;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center;padding:7px}
.tp-footer__socials svg,.tp-footer__socials img{width:100%;height:100%;object-fit:contain}
.tp-footer__fallback{border:1px solid;border-radius:50%;display:grid;place-items:center;text-align:center;font-size:8px;padding:10px}
.tp-footer__bottom{border-top:1px solid rgba(255,255,255,.18);margin-top:30px;padding-top:14px;display:grid;grid-template-columns:1fr 1.3fr auto;gap:18px;align-items:center;font-size:9px}
.tp-footer__bottom nav{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.tp-footer__payments{display:flex;gap:4px}
.tp-payment-icon{height:20px;width:auto}

/* standard pages */
.tp-page{padding:60px 0}
.tp-page h1{font-family:Georgia,serif;color:var(--tp-forest);font-size:46px}
.tp-contact form{display:grid;gap:10px;max-width:720px}
.tp-contact input,.tp-contact textarea{padding:12px;border:1px solid #ccd2ca}
.tp-cart-table{width:100%;border-collapse:collapse}
.tp-cart-table td,.tp-cart-table th{padding:12px;border-bottom:1px solid #ddd;text-align:left}

@media(max-width:900px){
  .tp-header__row{grid-template-columns:1fr auto}
  .tp-header nav{grid-column:1/-1;order:3}
  .tp-hero,.tp-split{grid-template-columns:1fr}
  .tp-split--right .tp-split__media,.tp-split--right .tp-split__copy{order:initial}
  .tp-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tp-ingredients{grid-template-columns:1fr}
  .tp-benefits{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tp-footer__grid{grid-template-columns:1fr 1fr}
  .tp-footer__brand,.tp-footer__badgecol{grid-column:1/-1}
}
@media(max-width:600px){
  .tp-shell{width:min(var(--tp-max),calc(100% - 28px))}
  .tp-hero__copy h1{font-size:42px}
  .tp-split__copy{padding:36px 24px}
  .tp-product-grid{grid-template-columns:1fr}
  .tp-icon-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tp-slide{grid-template-columns:1fr;padding:24px 56px;text-align:center}
  .tp-benefits{grid-template-columns:1fr 1fr}
  .tp-footer__bottom{grid-template-columns:1fr;text-align:center}
}

.tp-footer__socials a,
.tp-footer__social-placeholder{
  width:34px;height:34px;border:1px solid currentColor;border-radius:50%;
  display:grid;place-items:center;padding:7px;
}

@media (max-width: 768px){
  .tp-hero{grid-template-columns:1fr}
  .tp-hero__media{padding:0 16px 16px}
  .tp-hero__media img{max-width:100%;max-height:none}
  .tp-ingredients{grid-template-columns:1fr}
  .tp-slide{grid-template-columns:1fr;min-height:auto;padding:26px 44px 30px}
  .tp-slide img{height:220px}
}

.tp-product-card img{width:100%;height:220px;object-fit:contain;display:block;margin:0 auto}

/* ===== V12.4 HEADER ===== */
.tp-header{
  position:relative;
  z-index:20;
}
.tp-header__row{
  grid-template-columns:minmax(250px,1fr) auto minmax(250px,1fr);
}
.tp-header__nav{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:24px;
  min-width:0;
}
.tp-header__nav a{
  font-size:12px;
  font-weight:700;
  letter-spacing:.02em;
  white-space:nowrap;
}
.tp-header__logo{
  justify-self:center;
}
.tp-header__icons{
  justify-self:end;
}
.tp-search-drawer{
  position:relative;
}
.tp-search-drawer summary{
  list-style:none;
}
.tp-search-drawer summary::-webkit-details-marker{
  display:none;
}
.tp-search-toggle{
  cursor:pointer;
}
.tp-search-panel{
  position:absolute;
  right:0;
  top:calc(100% + 12px);
  width:min(520px,calc(100vw - 40px));
  padding:14px;
  background:#fff;
  border:1px solid #d9ded6;
  box-shadow:0 12px 35px rgba(20,61,42,.12);
  z-index:100;
}
.tp-search-panel form{
  display:grid;
  grid-template-columns:1fr auto;
}
.tp-search-panel input{
  min-width:0;
  padding:12px 14px;
  border:1px solid #ccd4ca;
  border-right:0;
  font:inherit;
}
.tp-search-panel button{
  border:0;
  background:var(--tp-forest);
  color:#fff;
  padding:0 18px;
  font-weight:700;
}
.tp-visually-hidden{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}
.tp-cart-link{
  position:relative;
}
.tp-cart-count{
  position:absolute;
  right:-5px;
  top:-5px;
  min-width:18px;
  height:18px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:var(--tp-forest);
  color:#fff;
  font-size:10px;
  font-weight:700;
}
@media(max-width:900px){
  .tp-header__row{
    grid-template-columns:auto 1fr auto;
  }
  .tp-header__logo{
    justify-self:start;
  }
  .tp-header__nav{
    grid-column:1/-1;
    grid-row:2;
    justify-content:center;
    padding-bottom:4px;
    flex-wrap:wrap;
  }
}
@media(max-width:600px){
  .tp-header__nav{
    gap:14px;
  }
  .tp-header__nav a{
    font-size:11px;
  }
  .tp-search-panel{
    position:fixed;
    left:14px;
    right:14px;
    top:92px;
    width:auto;
  }
}

/* ===== V12.5 FULL-WIDTH HERO ===== */
.tp-hero.tp-hero--overlay{
  position:relative;
  min-height:620px;
  overflow:hidden;
  display:block;
}
.tp-hero--overlay .tp-hero__bg{
  position:absolute;
  inset:0;
  z-index:0;
}
.tp-hero--overlay .tp-hero__bg img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center right;
  display:block;
}
.tp-hero--overlay .tp-hero__fade{
  position:absolute;
  inset:0;
  z-index:1;
  background:
    linear-gradient(90deg,
      rgba(248,245,236,0.98) 0%,
      rgba(248,245,236,0.96) 18%,
      rgba(248,245,236,0.90) 34%,
      rgba(248,245,236,0.72) 48%,
      rgba(248,245,236,0.42) 62%,
      rgba(248,245,236,0.12) 76%,
      rgba(248,245,236,0) 100%);
}
.tp-hero--overlay .tp-hero__inner{
  position:relative;
  z-index:2;
  min-height:620px;
  display:flex;
  align-items:center;
}
.tp-hero--overlay .tp-hero__copy{
  width:min(48%, 560px);
  padding:72px 0;
  display:flex;
  align-items:center;
}
.tp-hero--overlay .tp-hero__copy-inner{
  max-width:520px;
}
.tp-hero--overlay .tp-hero__copy h1{
  font-family:Georgia,serif;
  font-size:66px;
  line-height:0.98;
  color:var(--tp-forest);
  margin:0 0 18px;
}
.tp-hero--overlay .tp-hero__copy p{
  font-size:18px;
  line-height:1.65;
  max-width:470px;
  margin:0 0 26px;
}
@media (max-width: 1100px){
  .tp-hero--overlay .tp-hero__copy{
    width:min(56%, 540px);
  }
  .tp-hero--overlay .tp-hero__copy h1{
    font-size:58px;
  }
}
@media (max-width: 820px){
  .tp-hero.tp-hero--overlay,
  .tp-hero--overlay .tp-hero__inner{
    min-height:560px;
  }
  .tp-hero--overlay .tp-hero__fade{
    background:
      linear-gradient(180deg,
        rgba(248,245,236,0.94) 0%,
        rgba(248,245,236,0.88) 18%,
        rgba(248,245,236,0.70) 38%,
        rgba(248,245,236,0.38) 58%,
        rgba(248,245,236,0.12) 78%,
        rgba(248,245,236,0.06) 100%);
  }
  .tp-hero--overlay .tp-hero__bg img{
    object-position:center center;
  }
  .tp-hero--overlay .tp-hero__copy{
    width:100%;
    max-width:520px;
    padding:54px 0 34px;
  }
}
@media (max-width: 640px){
  .tp-hero.tp-hero--overlay,
  .tp-hero--overlay .tp-hero__inner{
    min-height:520px;
  }
  .tp-hero--overlay .tp-hero__copy h1{
    font-size:46px;
  }
  .tp-hero--overlay .tp-hero__copy p{
    font-size:16px;
    max-width:100%;
  }
}

/* ===== V12.7 REAL INGREDIENTS SLIDER ===== */
.tp-real-ingredients{
  overflow:hidden;
}
.tp-real-ingredients__layout{
  display:grid;
  grid-template-columns:minmax(230px,300px) minmax(0,1fr);
  gap:42px;
  align-items:center;
}
.tp-real-ingredients__intro h2{
  font-family:Georgia,serif;
  color:var(--tp-forest);
  font-size:38px;
  line-height:1.03;
  margin:0 0 16px;
}
.tp-real-ingredients__intro p{
  line-height:1.55;
}
.tp-text-link{
  display:inline-block;
  margin-top:12px;
  font-size:11px;
  font-weight:700;
  letter-spacing:.03em;
  border-bottom:1px solid currentColor;
  padding-bottom:4px;
}
.tp-real-ingredients__slider{
  position:relative;
  min-width:0;
  padding:0 58px;
}
.tp-real-ingredients__viewport{
  overflow:hidden;
  border:1px solid rgba(20,61,42,.14);
  border-radius:10px;
  background:var(--tp-ingredient-card-bg);
}
.tp-ingredient-slide{
  display:none;
  grid-template-columns:minmax(260px,1.05fr) minmax(250px,.95fr);
  gap:42px;
  align-items:center;
  min-height:360px;
  padding:34px 48px;
  background:var(--tp-ingredient-card-bg);
}
.tp-ingredient-slide.is-active{
  display:grid;
}
.tp-ingredient-slide__image{
  min-width:0;
  display:flex;
  align-items:center;
  justify-content:center;
}
.tp-ingredient-slide__image img{
  display:block;
  width:auto;
  max-width:100%;
  height:var(--tp-ingredient-image-height);
  max-height:var(--tp-ingredient-image-height);
  object-fit:contain;
  margin:0 auto;
}
.tp-ingredient-slide__copy h3{
  font-family:Georgia,serif;
  color:var(--tp-forest);
  font-size:30px;
  margin:0 0 12px;
}
.tp-ingredient-slide__copy p{
  font-size:15px;
  line-height:1.55;
  margin:0;
}
.tp-ingredient-slide__extra{
  margin-top:14px;
  font-size:13px;
  line-height:1.5;
}
.tp-ingredient-slider-arrow{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:46px;
  height:46px;
  border-radius:50%;
  border:1px solid rgba(20,61,42,.24);
  background:#fff;
  color:var(--tp-forest);
  display:grid;
  place-items:center;
  font:32px/1 Georgia,serif;
  cursor:pointer;
  z-index:3;
  box-shadow:0 5px 18px rgba(20,61,42,.08);
}
.tp-ingredient-slider-arrow--prev{left:0}
.tp-ingredient-slider-arrow--next{right:0}
.tp-ingredient-slider-dots{
  display:flex;
  justify-content:center;
  gap:8px;
  margin-top:14px;
}
.tp-ingredient-dot{
  appearance:none;
  width:9px;
  height:9px;
  padding:0;
  border:0;
  border-radius:50%;
  background:#C9C9B9;
  cursor:pointer;
}
.tp-ingredient-dot.is-active{
  background:var(--tp-forest);
}
.tp-ingredient-empty{
  padding:44px;
  background:#fff;
  border:1px dashed rgba(20,61,42,.28);
  text-align:center;
}
@media(max-width:900px){
  .tp-real-ingredients__layout{
    grid-template-columns:1fr;
  }
  .tp-real-ingredients__intro{
    text-align:center;
    max-width:620px;
    margin:0 auto;
  }
}
@media(max-width:680px){
  .tp-real-ingredients__slider{
    padding:0 40px;
  }
  .tp-ingredient-slide,
  .tp-ingredient-slide.is-active{
    grid-template-columns:1fr;
    min-height:auto;
    padding:28px 24px 32px;
    gap:18px;
    text-align:center;
  }
  .tp-ingredient-slide__image img{
    height:min(var(--tp-ingredient-image-height),240px);
    max-height:240px;
  }
  .tp-ingredient-slider-arrow{
    width:38px;
    height:38px;
    font-size:28px;
  }
}

/* ===== V13 GLOBAL THEME SETTINGS ===== */
body{
  font-family:var(--tp-body-font);
  font-size:var(--tp-body-size);
  line-height:var(--tp-body-line-height);
  letter-spacing:var(--tp-body-letter-spacing);
  color:var(--tp-body-color);
}
h1,h2,h3,h4,h5,h6,
.tp-heading h2,
.tp-hero__copy h1,
.tp-split__inner h2,
.tp-real-ingredients__intro h2,
.tp-ingredient-slide__copy h3,
.tp-product-card h3{
  font-family:var(--tp-heading-font);
}
h1,.tp-hero__copy h1,.tp-page h1{
  font-size:var(--tp-h1-size);
  line-height:var(--tp-h1-line-height);
  letter-spacing:var(--tp-h1-letter-spacing);
  color:var(--tp-h1-color);
}
h2,.tp-heading h2,.tp-split__inner h2,.tp-real-ingredients__intro h2{
  font-size:var(--tp-h2-size);
  line-height:var(--tp-h2-line-height);
  letter-spacing:var(--tp-h2-letter-spacing);
  color:var(--tp-h2-color);
}
h3,.tp-product-card h3,.tp-ingredient-slide__copy h3{
  font-size:var(--tp-h3-size);
  line-height:var(--tp-h3-line-height);
  letter-spacing:var(--tp-h3-letter-spacing);
  color:var(--tp-h3-color);
}
a{color:var(--tp-link-color)}
a:hover{color:var(--tp-link-hover)}
.tp-button,
button.tp-button,
.tp-card-add,
.tp-newsletter button,
.tp-search-panel button{
  font-family:var(--tp-button-font);
  font-size:var(--tp-button-size);
  letter-spacing:var(--tp-button-letter-spacing);
  background:var(--tp-button-bg);
  color:var(--tp-button-text);
  border:var(--tp-button-border-width) solid var(--tp-button-border);
  border-radius:var(--tp-button-radius);
  padding:var(--tp-button-py) var(--tp-button-px);
  transition:background .2s ease,color .2s ease,border-color .2s ease;
}
.tp-button:hover,
button.tp-button:hover,
.tp-card-add:hover,
.tp-newsletter button:hover,
.tp-search-panel button:hover{
  background:var(--tp-button-hover-bg);
  color:var(--tp-button-hover-text);
}
input,textarea,select,
.tp-search-panel input,
.tp-newsletter input,
.tp-contact input,
.tp-contact textarea{
  background:var(--tp-input-bg);
  color:var(--tp-input-text);
  border-color:var(--tp-input-border);
  border-radius:var(--tp-input-radius);
  font-size:var(--tp-input-size);
}
.tp-shell{
  width:min(var(--tp-max),calc(100% - var(--tp-gutter)));
}
.tp-section{
  padding-top:var(--tp-section-space);
  padding-bottom:var(--tp-section-space);
}
.tp-product-card,
.tp-real-ingredients__viewport,
.tp-review-box,
.tp-ingredient-slide,
@media(max-width:749px){
  .tp-section{
    padding-top:var(--tp-section-space-mobile);
    padding-bottom:var(--tp-section-space-mobile);
  }
}

/* ===== V14 PRODUCT PAGE ===== */
.tp-product-page{padding:28px 0 70px;background:#fbf8ef}
.tp-breadcrumbs{display:flex;gap:8px;align-items:center;font-size:11px;margin:0 0 20px;color:#617065}
.tp-product-main{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);gap:54px;align-items:start}
.tp-product-gallery{display:grid;grid-template-columns:88px minmax(0,1fr);gap:18px;min-width:0}
.tp-product-thumbs{display:flex;flex-direction:column;gap:10px}
.tp-product-thumb{padding:4px;border:1px solid #d8ded4;background:#fff;border-radius:4px;cursor:pointer}
.tp-product-thumb.is-active{border-color:var(--tp-forest)}
.tp-product-thumb img{display:block;width:100%;aspect-ratio:1/1;object-fit:contain}
.tp-product-main-media{background:#f8f5ec;min-height:620px;display:grid;place-items:center;border-radius:6px;overflow:hidden}
.tp-product-media-item{display:none;width:100%;height:100%}
.tp-product-media-item.is-active{display:grid;place-items:center}
.tp-product-main-media img{display:block;width:100%;height:100%;max-height:660px;object-fit:contain}
.tp-product-info{padding-top:18px;position:sticky;top:24px}
.tp-product-eyebrow{font-size:10px;font-weight:700;letter-spacing:.12em;color:#7b887d;margin-bottom:8px}
.tp-product-info h1{font-size:46px!important;line-height:1.05!important;margin:0 0 14px}
.tp-product-short{font-size:16px;line-height:1.6;margin-bottom:18px}
.tp-product-price{font-size:24px;color:var(--tp-forest);display:flex;gap:10px;align-items:center;margin-bottom:22px}
.tp-product-price s{font-size:16px;opacity:.55}
.tp-product-options fieldset{border:0;padding:0;margin:0 0 18px}
.tp-product-options legend{font-size:11px;font-weight:700;margin-bottom:8px}
.tp-product-option-buttons{display:flex;gap:10px;flex-wrap:wrap}
.tp-product-option-buttons input{position:absolute;opacity:0}
.tp-product-option-buttons span{display:block;border:1px solid #ccd4ca;padding:10px 14px;background:#fff;cursor:pointer}
.tp-product-option-buttons input:checked + span{border-color:var(--tp-forest);box-shadow:inset 0 0 0 1px var(--tp-forest)}
.tp-purchase-options{border:1px solid #dfe3dc;margin:18px 0;background:#fff}
.tp-purchase-choice{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:13px 14px;border-bottom:1px solid #e5e8e2;font-size:11px}
.tp-purchase-choice:last-child{border-bottom:0}
.tp-purchase-choice span{font-weight:700}
.tp-product-buy-row{display:grid;grid-template-columns:92px 1fr;gap:10px;margin-top:14px}
.tp-qty{display:grid;grid-template-columns:30px 1fr 30px;border:1px solid #ccd4ca;background:#fff}
.tp-qty button{border:0;background:transparent;font-size:18px;cursor:pointer}
.tp-qty input{width:100%;border:0;text-align:center;padding:0}
.tp-product-add{width:100%}
.tp-dynamic-checkout{margin-top:10px}
.tp-dynamic-checkout .shopify-payment-button__button{min-height:48px;border-radius:var(--tp-button-radius)}
.tp-product-benefit-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;background:#f5f2e7;margin:44px 0 34px;padding:22px;border-radius:6px}
.tp-product-benefit{display:flex;gap:12px;align-items:center;justify-content:center;padding:0 16px;border-right:1px solid rgba(20,61,42,.12);font-size:10px;font-weight:700}
.tp-product-benefit:last-child{border-right:0}
.tp-product-benefit svg,.tp-product-benefit img{width:34px;height:34px;object-fit:contain;flex:0 0 34px}
.tp-product-content-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:42px;align-items:start}
.tp-product-tabs{border-top:1px solid #dcded8}
.tp-product-tabs details{border-bottom:1px solid #dcded8}
.tp-product-tabs summary{cursor:pointer;padding:16px 0;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;list-style:none}
.tp-product-tabs summary::-webkit-details-marker{display:none}
.tp-product-tab-content{padding:0 0 18px;line-height:1.65}
.tp-product-lifestyle img{display:block;width:100%;max-height:420px;object-fit:cover;border-radius:6px}
.tp-product-related{padding-top:48px}
.tp-product-related .tp-heading h2{text-transform:none}
@media(max-width:980px){
  .tp-product-main{grid-template-columns:1fr}
  .tp-product-info{position:static}
  .tp-product-content-grid{grid-template-columns:1fr}
}
@media(max-width:700px){
  .tp-product-gallery{grid-template-columns:1fr}
  .tp-product-thumbs{order:2;flex-direction:row;overflow:auto}
  .tp-product-thumb{width:74px;flex:0 0 74px}
  .tp-product-main-media{min-height:420px}
  .tp-product-benefit-strip{grid-template-columns:1fr 1fr;gap:18px}
  .tp-product-benefit{border-right:0}
}



/* ===== V14.3 REAL INGREDIENTS MODERNIZED ===== */
.tp-real-ingredients{
  overflow:hidden;
}
.tp-real-ingredients__layout{
  display:grid;
  grid-template-columns:minmax(230px,300px) minmax(0,1fr);
  gap:42px;
  align-items:center;
}
.tp-real-ingredients__intro h2{
  font-family:Georgia,serif;
  color:var(--tp-forest);
  font-size:38px;
  line-height:1.03;
  margin:0 0 16px;
}
.tp-real-ingredients__intro p{
  line-height:1.6;
}
.tp-real-ingredients__slider{
  position:relative;
  min-width:0;
}
.tp-real-ingredients__slider--css .tp-ing-radio{
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.tp-real-ingredients__viewport{
  overflow:hidden;
  border-radius:28px;
  background:
    radial-gradient(circle at top right, rgba(255,255,255,.38), rgba(255,255,255,0) 36%),
    linear-gradient(180deg, rgba(255,255,255,.16), rgba(255,255,255,.08)),
    var(--tp-ingredient-card-bg);
  box-shadow:0 18px 38px rgba(38,59,31,.08);
  border:1px solid rgba(67,88,61,.08);
}
.tp-real-ingredients--plain .tp-real-ingredients__viewport{
  background:transparent;
  box-shadow:none;
  border:0;
}
.tp-real-ingredients__slider--css .tp-ing-track{
  display:flex;
  transition:transform .38s ease;
}
.tp-real-ingredients__slider--css .tp-ingredient-slide{
  position:relative;
  display:grid;
  grid-template-columns:minmax(260px,1fr) minmax(260px,.95fr);
  gap:28px;
  align-items:center;
  flex:0 0 100%;
  min-height:390px;
  padding:36px 74px;
}
.tp-real-ingredients--plain .tp-real-ingredients__slider--css .tp-ingredient-slide{
  padding-left:56px;
  padding-right:56px;
}
.tp-ingredient-slide__imagewrap{
  min-width:0;
  display:flex;
  align-items:center;
  justify-content:center;
}
.tp-ingredient-slide__imagepanel{
  width:min(100%,340px);
  height:min(100%,340px);
  min-width:260px;
  min-height:260px;
  border-radius:50%;
  padding:26px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:
    radial-gradient(circle at center, rgba(255,255,255,.88) 0%, rgba(255,255,255,.68) 42%, rgba(255,255,255,.0) 72%),
    rgba(255,255,255,.10);
}
.tp-real-ingredients--frame-soft-square .tp-ingredient-slide__imagepanel{
  border-radius:30px;
}
.tp-real-ingredients--frame-none .tp-ingredient-slide__imagepanel{
  width:100%;
  height:auto;
  min-width:0;
  min-height:0;
  padding:0;
  border-radius:0;
  background:none;
}
.tp-ingredient-slide__image{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:center;
}
.tp-ingredient-slide__image img{
  display:block;
  width:auto;
  max-width:100%;
  height:var(--tp-ingredient-image-height);
  max-height:var(--tp-ingredient-image-height);
  object-fit:contain;
  margin:0 auto;
  filter:drop-shadow(0 12px 20px rgba(70,93,54,.11));
}
.tp-ingredient-slide__copy{
  padding:8px 0;
}
.tp-ingredient-slide__eyebrow{
  margin:0 0 10px;
  font-size:11px;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:#6b7c66;
  font-weight:700;
}
.tp-ingredient-slide__copy h3{
  font-family:Georgia,serif;
  color:var(--tp-forest);
  font-size:34px;
  line-height:1.06;
  margin:0 0 14px;
}
.tp-ingredient-slide__benefit{
  font-size:16px;
  line-height:1.65;
  margin:0;
  color:#2d362f;
}
.tp-ingredient-slide__extra{
  margin-top:16px;
  font-size:14px;
  line-height:1.6;
  color:#4d5c4a;
}
.tp-ingredient-slider-arrow{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:48px;
  height:48px;
  border-radius:999px;
  border:1px solid rgba(49,78,43,.14);
  background:rgba(255,255,255,.96);
  color:var(--tp-forest);
  display:grid;
  place-items:center;
  font:32px/1 Georgia,serif;
  cursor:pointer;
  z-index:5;
  box-shadow:0 10px 22px rgba(32,48,27,.12);
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.tp-ingredient-slider-arrow:hover{
  transform:translateY(-50%) scale(1.05);
  box-shadow:0 14px 26px rgba(32,48,27,.16);
  background:#fff;
}
.tp-ingredient-slider-arrow--prev{left:18px}
.tp-ingredient-slider-arrow--next{right:18px}
.tp-ingredient-slider-dots{
  display:flex;
  justify-content:center;
  gap:8px;
  margin-top:16px;
}
.tp-ingredient-dot{
  appearance:none;
  width:10px;
  height:10px;
  padding:0;
  border:0;
  border-radius:50%;
  background:#c4ccb9;
  cursor:pointer;
  transition:transform .18s ease, background .18s ease;
}
.tp-ingredient-empty{
  padding:44px;
  background:#fff;
  border:1px dashed rgba(20,61,42,.28);
  text-align:center;
  border-radius:18px;
}
@media(max-width:900px){
  .tp-real-ingredients__layout{
    grid-template-columns:1fr;
  }
  .tp-real-ingredients__intro{
    text-align:center;
    max-width:620px;
    margin:0 auto;
  }
}
@media(max-width:700px){
  .tp-real-ingredients__slider--css .tp-ingredient-slide{
    grid-template-columns:1fr;
    min-height:auto;
    padding:28px 22px 84px;
    gap:10px;
    text-align:center;
  }
  .tp-real-ingredients--plain .tp-real-ingredients__slider--css .tp-ingredient-slide{
    padding-left:22px;
    padding-right:22px;
  }
  .tp-ingredient-slide__imagepanel{
    width:min(100%,260px);
    height:min(100%,260px);
    min-width:220px;
    min-height:220px;
    padding:18px;
  }
  .tp-real-ingredients--frame-none .tp-ingredient-slide__imagepanel{
    width:100%;
    min-width:0;
    min-height:0;
  }
  .tp-ingredient-slide__image img{
    height:min(var(--tp-ingredient-image-height),210px);
    max-height:210px;
  }
  .tp-ingredient-slide__copy{
    padding:0 0 8px;
  }
  .tp-ingredient-slide__copy h3{
    font-size:28px;
  }
  .tp-ingredient-slider-arrow{
    width:42px;
    height:42px;
    font-size:28px;
    top:auto;
    bottom:20px;
    transform:none;
    z-index:3;
  }
  .tp-ingredient-slider-arrow:hover{
    transform:scale(1.04);
  }
  .tp-ingredient-slider-arrow--prev{left:calc(50% - 52px)}
  .tp-ingredient-slider-arrow--next{right:auto;left:calc(50% + 10px)}
}

/* ===== V14.5 SHOP BY HEALTH NEED MODERNIZED ===== */
.tp-health-products{
  position:relative;
}
.tp-health-products__header{
  text-align:center;
  margin-bottom:26px;
}
.tp-health-products__heading{
  max-width:760px;
  margin:0 auto;
}
.tp-health-products__heading h2{
  margin-bottom:10px;
}
.tp-health-products__heading p{
  max-width:620px;
  margin:0 auto;
}
.tp-health-products__surface{
  border-radius:30px;
  padding:28px 28px 22px;
  background:
    radial-gradient(circle at top right, rgba(255,255,255,.55), rgba(255,255,255,0) 35%),
    linear-gradient(180deg, rgba(255,255,255,.22), rgba(255,255,255,.08)),
    var(--tp-health-card-bg);
  border:1px solid rgba(57,76,50,.08);
  box-shadow:0 14px 34px rgba(39,61,33,.05);
}
.tp-health-products__grid{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:24px;
}
.tp-health-products__item{
  flex:1 1 220px;
  max-width:280px;
  min-width:220px;
}
.tp-health-products__grid--1 .tp-health-products__item{max-width:340px}
.tp-health-products__grid--2 .tp-health-products__item{max-width:300px}
.tp-health-products__grid--3 .tp-health-products__item,
.tp-health-products__grid--4 .tp-health-products__item{max-width:250px}
.tp-product-card{
  background:#fffdf8;
  border:1px solid rgba(66,83,57,.10);
  border-radius:24px;
  padding:18px 18px 16px;
  text-align:center;
  height:100%;
  display:flex;
  flex-direction:column;
  box-shadow:0 10px 24px rgba(37,60,32,.05);
}
.tp-product-card__media{
  display:block;
  aspect-ratio:1/1;
  background:linear-gradient(180deg,#fbfaf5 0%, #f1f3eb 100%);
  border-radius:18px;
  overflow:hidden;
  margin-bottom:16px;
}
.tp-product-card__media img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
  padding:12px;
}
.tp-product-card__content{
  display:flex;
  flex-direction:column;
  flex:1;
}
.tp-product-card h3{
  font-family:Georgia,serif;
  color:var(--tp-forest);
  font-size:23px;
  line-height:1.12;
  margin:0 0 10px;
}
.tp-product-card h3 a{
  color:inherit;
  text-decoration:none;
}
.tp-product-card__excerpt{
  font-size:14px;
  line-height:1.55;
  color:#54604e;
  margin:0 0 14px;
  min-height:44px;
}
.tp-product-card__footer{
  margin-top:auto;
  display:flex;
  flex-direction:column;
  gap:10px;
  align-items:center;
}
.tp-price{
  font-weight:700;
  color:var(--tp-forest);
  font-size:18px;
}
.tp-product-card__link{
  display:inline-flex;
  align-items:center;
  gap:6px;
  color:var(--tp-forest);
  font-weight:700;
  text-decoration:none;
  font-size:14px;
}
.tp-health-products__button{
  text-align:center;
  margin-top:28px;
}
.tp-button--soft{
  background:var(--tp-forest);
  color:#fff;
  border-radius:999px;
  padding:14px 28px;
  min-width:220px;
  display:inline-flex;
  justify-content:center;
  box-shadow:0 12px 22px rgba(16,61,41,.14);
}
@media(max-width:900px){
  .tp-health-products__surface{
    padding:24px 18px 18px;
  }
  .tp-health-products__item{
    flex:1 1 calc(50% - 24px);
    min-width:230px;
  }
}
@media(max-width:600px){
  .tp-health-products__item{
    flex:1 1 100%;
    max-width:100%;
    min-width:0;
  }
  .tp-product-card h3{
    font-size:21px;
  }
}

/* ===== V14.6 FOOTER HEADING / MENU VISIBILITY FIX ===== */
.tp-footer,
.tp-footer *{
  color:inherit;
}
.tp-footer h1,
.tp-footer h2,
.tp-footer h3,
.tp-footer h4,
.tp-footer h5,
.tp-footer h6,
.tp-footer__menu h3,
.tp-footer__brand-subheading,
.tp-footer__badgecol h3{
  color:inherit !important;
}
.tp-footer__menu h3,
.tp-footer__badgecol h3{
  display:block !important;
  opacity:1 !important;
  visibility:visible !important;
  font-size:13px !important;
  line-height:1.25 !important;
  letter-spacing:.08em !important;
  font-weight:700 !important;
  margin:0 0 14px !important;
}
.tp-footer__menu{
  display:block !important;
  min-width:0;
}
.tp-footer__menu a,
.tp-footer__bottom a,
.tp-footer__socials a,
.tp-footer__social-placeholder{
  color:inherit !important;
  opacity:1 !important;
}
.tp-footer__menu a{
  font-size:12px;
  line-height:1.45;
  margin:8px 0;
}

/* ===== V14.8 INGREDIENT SLIDER ARROWS FIX ===== */
.tp-ingredient-slider-arrow{
  appearance:none;
  -webkit-appearance:none;
  padding:0;
  line-height:1;
}
.tp-ingredient-slider-arrow:focus{
  outline:2px solid rgba(33,77,55,.25);
  outline-offset:2px;
}

/* ===== V14.9 INGREDIENT IMAGE SHAPES + EXPLORE CTA ===== */
/* The selected frame style now crops the uploaded image itself. */
.tp-real-ingredients--frame-circle .tp-ingredient-slide__imagepanel{
  border-radius:50%;
  overflow:hidden;
  padding:0;
  aspect-ratio:1/1;
}
.tp-real-ingredients--frame-circle .tp-ingredient-slide__image{
  width:100%;
  height:100%;
}
.tp-real-ingredients--frame-circle .tp-ingredient-slide__image img{
  width:100%;
  height:100%;
  max-width:none;
  max-height:none;
  object-fit:cover;
  border-radius:50%;
  filter:none;
}

.tp-real-ingredients--frame-soft-square .tp-ingredient-slide__imagepanel{
  border-radius:26px;
  overflow:hidden;
  padding:0;
  aspect-ratio:1/1;
}
.tp-real-ingredients--frame-soft-square .tp-ingredient-slide__image{
  width:100%;
  height:100%;
}
.tp-real-ingredients--frame-soft-square .tp-ingredient-slide__image img{
  width:100%;
  height:100%;
  max-width:none;
  max-height:none;
  object-fit:cover;
  border-radius:26px;
  filter:none;
}

.tp-real-ingredients--frame-none .tp-ingredient-slide__image img{
  width:auto;
  height:var(--tp-ingredient-image-height);
  max-width:100%;
  max-height:var(--tp-ingredient-image-height);
  object-fit:contain;
  border-radius:0;
}

/* Explore CTA */
.tp-ingredients-explore{
  margin-top:18px;
  font-weight:700;
  letter-spacing:.03em;
}
.tp-real-ingredients--explore-pill .tp-ingredients-explore{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:11px 18px;
  border-radius:999px;
  background:rgba(20,61,42,.08);
  border:1px solid rgba(20,61,42,.14);
  text-decoration:none;
}


/* ===== V15 MODERN WHY + REVIEWS ===== */
.tp-why-modern{
  position:relative;
}
.tp-why-modern__grid{
  display:grid;
  grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);
  gap:42px;
  align-items:stretch;
}
.tp-why-modern__grid--right .tp-why-modern__media{order:2}
.tp-why-modern__grid--right .tp-why-modern__copy{order:1}
.tp-why-modern__media{
  min-width:0;
}
.tp-why-modern__media img{
  display:block;
  width:100%;
  height:100%;
  min-height:520px;
  object-fit:cover;
  border-radius:34px;
  box-shadow:0 20px 50px rgba(30,52,36,.10);
}
.tp-why-modern__copy{
  background:rgba(255,255,255,.42);
  border:1px solid rgba(47,72,50,.08);
  border-radius:34px;
  padding:42px 40px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-width:0;
}
.tp-why-modern__eyebrow,
.tp-reviews-modern__eyebrow{
  margin:0 0 14px;
  font-size:12px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--tp-forest);
  opacity:.82;
}
.tp-why-modern__copy h2,
.tp-reviews-modern__header h2{
  font-family:Georgia,serif;
  color:var(--tp-forest);
  font-size:54px;
  line-height:0.98;
  margin:0 0 18px;
}
.tp-why-modern__text{
  font-size:18px;
  line-height:1.72;
  max-width:640px;
}
.tp-why-modern__text p{margin:0}
.tp-why-modern__benefits{
  margin:28px 0 0;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}
.tp-why-modern__benefit{
  display:flex;
  gap:14px;
  align-items:flex-start;
  padding:18px 18px 16px;
  background:rgba(255,255,255,.65);
  border:1px solid rgba(50,72,48,.08);
  border-radius:22px;
}
.tp-why-modern__benefit-icon{
  width:44px;
  height:44px;
  border-radius:999px;
  display:grid;
  place-items:center;
  background:rgba(33,77,55,.08);
  flex:0 0 44px;
}
.tp-why-modern__benefit-icon img,
.tp-why-modern__benefit-icon svg{
  width:24px;
  height:24px;
  object-fit:contain;
}
.tp-why-modern__benefit-copy{
  display:flex;
  flex-direction:column;
  gap:4px;
}
.tp-why-modern__benefit-copy strong{
  font-size:13px;
  line-height:1.25;
  letter-spacing:.03em;
  color:var(--tp-forest);
}
.tp-why-modern__benefit-copy span{
  font-size:14px;
  line-height:1.5;
  color:rgba(18,26,18,.80);
}
.tp-why-modern .tp-button{
  margin-top:26px;
  align-self:flex-start;
}

.tp-reviews-modern__header{
  text-align:center;
  max-width:760px;
  margin:0 auto 30px;
}
.tp-reviews-modern__header h2{
  font-size:48px;
  margin-bottom:14px;
}
.tp-reviews-modern__subtext{
  font-size:17px;
  line-height:1.65;
}
.tp-reviews-modern__card{
  max-width:980px;
  margin:0 auto;
  background:linear-gradient(180deg, rgba(255,255,255,.82), rgba(255,255,255,.62));
  border:1px solid rgba(50,72,48,.09);
  border-radius:34px;
  padding:52px 54px 46px;
  text-align:center;
  box-shadow:0 18px 46px rgba(30,52,36,.08);
}
.tp-reviews-modern__quote-mark{
  font-family:Georgia,serif;
  font-size:72px;
  line-height:1;
  color:rgba(33,77,55,.22);
  margin-bottom:2px;
}
.tp-reviews-modern__card blockquote{
  margin:0 auto 22px;
  max-width:760px;
  font-family:Georgia,serif;
  font-size:34px;
  line-height:1.36;
  color:var(--tp-forest);
}
.tp-reviews-modern__author{
  display:flex;
  flex-direction:column;
  gap:6px;
  align-items:center;
}
.tp-reviews-modern__author strong{
  font-size:16px;
  color:var(--tp-forest);
}
.tp-reviews-modern__author span{
  font-size:13px;
  letter-spacing:.04em;
  text-transform:uppercase;
  opacity:.72;
}

@media (max-width: 1040px){
  .tp-why-modern__grid{
    grid-template-columns:1fr;
  }
  .tp-why-modern__grid--right .tp-why-modern__media,
  .tp-why-modern__grid--right .tp-why-modern__copy{
    order:initial;
  }
  .tp-why-modern__copy h2,
  .tp-reviews-modern__header h2{
    font-size:46px;
  }
}
@media (max-width: 760px){
  .tp-why-modern__media img{
    min-height:360px;
    border-radius:24px;
  }
  .tp-why-modern__copy{
    padding:28px 24px;
    border-radius:24px;
  }
  .tp-why-modern__copy h2,
  .tp-reviews-modern__header h2{
    font-size:36px;
  }
  .tp-why-modern__text,
  .tp-reviews-modern__subtext{
    font-size:16px;
  }
  .tp-why-modern__benefits{
    grid-template-columns:1fr;
  }
  .tp-reviews-modern__card{
    padding:34px 24px 30px;
    border-radius:24px;
  }
  .tp-reviews-modern__card blockquote{
    font-size:26px;
  }
  .tp-reviews-modern__quote-mark{
    font-size:56px;
  }
}

/* ===== V15.1 PER-SECTION TYPOGRAPHY CONTROLS ===== */
.tp-hero__copy h1,.tp-split__inner h2,.tp-health-products__heading h2,.tp-real-ingredients__intro h2,.tp-why-modern__copy h2,.tp-reviews-modern__header h2,.tp-newsletter h2{font-size:var(--tp-section-heading-size,inherit)!important;color:var(--tp-section-heading-color,inherit)!important}
.tp-hero__copy p,.tp-split__inner p,.tp-health-products__heading p,.tp-real-ingredients__intro p,.tp-why-modern__text,.tp-why-modern__text p,.tp-reviews-modern__subtext,.tp-reviews-modern__subtext p,.tp-newsletter p{font-size:var(--tp-section-text-size,inherit)!important;color:var(--tp-section-text-color,inherit)!important}
.tp-icon-item strong{color:var(--tp-icon-text-color,var(--tp-ink))!important;font-size:var(--tp-icon-text-size,14px)!important}

/* ===== V15.2 HEADER + FULL WIDTH SEARCH ===== */
.tp-header{position:relative;z-index:40;background:#fff}
.tp-header__row{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;gap:34px!important;align-items:center;padding:17px 0!important}
.tp-header__logo{justify-self:start!important;grid-column:1}
.tp-header__logo a{display:flex;align-items:center}
.tp-header__nav{grid-column:2!important;justify-self:start!important;justify-content:flex-start!important;align-items:center;gap:28px!important;flex-wrap:wrap;min-width:0;padding:0!important}
.tp-header__nav a{font-size:var(--tp-menu-font-size,15px)!important;font-weight:600!important;letter-spacing:.01em!important;color:var(--tp-ink)!important;white-space:nowrap;position:relative;padding:8px 0}
.tp-header__nav a:after{content:"";position:absolute;left:0;right:100%;bottom:2px;height:1px;background:var(--tp-forest);transition:right .2s ease}
.tp-header__nav a:hover:after{right:0}
.tp-header__icons{grid-column:3;justify-self:end!important;gap:10px}
.tp-search-drawer{position:static!important}
.tp-search-drawer[open] .tp-search-toggle{background:var(--tp-search-bg);border-color:rgba(20,61,42,.18)}
.tp-search-panel{position:absolute!important;left:0!important;right:0!important;top:100%!important;width:100%!important;max-width:none!important;padding:0!important;background:var(--tp-search-bg)!important;border:0!important;border-top:1px solid rgba(20,61,42,.08)!important;border-bottom:1px solid rgba(20,61,42,.10)!important;box-shadow:0 22px 50px rgba(20,61,42,.16)!important;z-index:200!important}
.tp-search-panel__inner{display:grid;grid-template-columns:minmax(220px,.55fr) minmax(0,1.45fr);gap:38px;align-items:center;padding-top:30px;padding-bottom:30px}
.tp-search-panel__intro{display:flex;flex-direction:column;gap:6px}
.tp-search-panel__intro span{font-size:11px;font-weight:700;letter-spacing:.16em;color:var(--tp-forest)}
.tp-search-panel__intro strong{font-family:var(--tp-heading-font,Georgia,serif);font-size:24px;line-height:1.15;color:var(--tp-forest)}
.tp-search-panel form{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;max-width:none!important;margin:0!important;background:var(--tp-search-input-bg);border:1px solid rgba(20,61,42,.14);border-radius:999px;padding:6px;box-shadow:0 8px 22px rgba(20,61,42,.08)}
.tp-search-panel input{min-width:0;padding:15px 18px!important;border:0!important;border-radius:999px!important;background:transparent!important;font-size:16px!important;color:var(--tp-ink);outline:none}
.tp-search-panel button{min-width:126px;min-height:50px;border:0!important;border-radius:999px!important;background:var(--tp-forest)!important;color:#fff!important;padding:0 20px!important;display:flex;align-items:center;justify-content:center;gap:8px;font-weight:700!important;cursor:pointer}
.tp-search-panel button svg{width:18px;height:18px;stroke:#fff}
@media(max-width:900px){.tp-header__row{grid-template-columns:auto 1fr auto!important;gap:18px!important}.tp-header__nav{grid-column:1/-1!important;grid-row:2;justify-self:start!important;justify-content:flex-start!important;width:100%;gap:20px!important;overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none}.tp-search-panel__inner{grid-template-columns:1fr;gap:18px;padding-top:24px;padding-bottom:24px}}
@media(max-width:600px){.tp-header__logo img{max-width:150px}.tp-header__nav a{font-size:14px!important}.tp-search-panel__intro strong{font-size:20px}.tp-search-panel button{min-width:54px;width:54px;padding:0!important}.tp-search-panel button span{display:none}}

@media(max-width:1100px){.tp-icon-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.tp-icon-strip{padding:16px 0}.tp-icon-grid{grid-template-columns:1fr;gap:12px}.tp-icon-item{justify-content:flex-start;padding:14px 16px}.tp-icon-item strong{max-width:none}.tp-icon-badge{width:58px;height:58px;min-width:58px}}

/* ===== V15.3 MOBILE HERO CONTROLS ===== */
.tp-hero__bg picture{
  display:block;
  width:100%;
  height:100%;
}
.tp-hero__bg picture img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

@media(max-width:767px){
  .tp-hero--overlay .tp-hero__copy h1{
    font-size:var(--tp-mobile-heading-size,42px) !important;
    line-height:1.02 !important;
  }

  .tp-hero--overlay .tp-hero__copy p{
    font-size:var(--tp-mobile-text-size,16px) !important;
    line-height:1.55 !important;
  }

  .tp-hero--overlay .tp-hero__copy{
    width:100%;
    max-width:100%;
    padding:42px 0 36px;
  }

  .tp-hero--overlay .tp-hero__copy-inner{
    max-width:92%;
  }
}

/* ===== V15.4 PRODUCT-SPECIFIC REVIEWS ===== */
.tp-product-reviews{
  position:relative;
}
.tp-product-reviews__header{
  text-align:center;
  max-width:780px;
  margin:0 auto 34px;
}
.tp-product-reviews__eyebrow{
  margin:0 0 10px;
  font-size:11px;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--tp-forest);
  opacity:.78;
}
.tp-product-reviews__header h2{
  margin:0 0 12px;
  font-family:var(--tp-heading-font,Georgia,serif);
  font-size:var(--tp-product-reviews-heading-size,44px);
  line-height:1.04;
  color:var(--tp-product-reviews-heading);
}
.tp-product-reviews__intro{
  font-size:16px;
  line-height:1.6;
}
.tp-product-reviews__apps{
  max-width:1100px;
  margin:0 auto;
}
.tp-product-reviews__app{
  width:100%;
}
.tp-product-reviews__editor-note{
  padding:30px;
  border:1px dashed rgba(20,61,42,.22);
  border-radius:22px;
  background:rgba(255,255,255,.58);
  text-align:center;
  color:var(--tp-forest);
}
.tp-product-reviews__editor-note strong,
.tp-product-reviews__editor-note span{
  display:block;
}
.tp-product-reviews__editor-note span{
  margin-top:8px;
  font-size:14px;
  line-height:1.55;
  color:var(--tp-ink);
}
.tp-product-app-blocks{
  margin:0 0 20px;
}
.tp-product-app-block + .tp-product-app-block{
  margin-top:12px;
}
@media(max-width:700px){
  .tp-product-reviews__header h2{
    font-size:min(var(--tp-product-reviews-heading-size,44px),36px);
  }
}


/* ===== V15.4.2 SOCIAL ICON COLORS ONLY ===== */
.tp-footer__socials a[data-social],
.tp-footer__socials .tp-footer__social-placeholder[data-social]{
  width:38px;
  height:38px;
  border:0 !important;
  border-radius:50%;
  display:grid;
  place-items:center;
  padding:8px;
  color:#fff !important;
  box-shadow:0 6px 14px rgba(0,0,0,.14);
  overflow:hidden;
}

.tp-footer__socials [data-social] svg{
  width:100%;
  height:100%;
  display:block;
  color:#fff;
  stroke:#fff;
  fill:none;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.tp-footer__socials [data-social="facebook"] svg path,
.tp-footer__socials [data-social="tiktok"] svg path{
  fill:#fff;
  stroke:none;
}

.tp-footer__socials [data-social="instagram"]{
  background:linear-gradient(135deg,#833AB4 0%,#C13584 28%,#E1306C 50%,#F77737 74%,#FCAF45 100%);
}

.tp-footer__socials [data-social="facebook"]{
  background:#1877F2;
}

.tp-footer__socials [data-social="youtube"]{
  background:#FF0000;
}

.tp-footer__socials [data-social="x"]{
  background:#111111;
}

.tp-footer__socials [data-social="tiktok"]{
  background:#111111;
}

.tp-footer__socials [data-social="pinterest"]{
  background:#E60023;
}

.tp-footer__socials [data-social="linkedin"]{
  background:#0A66C2;
}

.tp-footer__socials [data-social="custom"]{
  background:#B89C5E;
}

.tp-footer__socials a[data-social]:hover{
  transform:translateY(-2px);
}

.tp-footer__socials [data-social] img{
  width:100%;
  height:100%;
  object-fit:contain;
}


/* ===== V15.4.3 MODERN NEWSLETTER / SIGNUP ===== */
.tp-newsletter--modern{
  position:relative;
  padding:76px 0;
  overflow:hidden;
}
.tp-newsletter--modern .tp-newsletter__card{
  position:relative;
  overflow:hidden;
  max-width:1120px;
  margin:0 auto;
  padding:64px 42px;
  border-radius:36px;
  background:
    radial-gradient(circle at 12% 20%, rgba(255,255,255,.72), rgba(255,255,255,0) 28%),
    var(--tp-newsletter-card-bg);
  border:1px solid rgba(20,61,42,.08);
  box-shadow:0 22px 55px rgba(20,61,42,.10);
}
.tp-newsletter--modern .tp-newsletter__content{
  position:relative;
  z-index:2;
  max-width:780px;
  margin:0 auto;
  text-align:center;
}
.tp-newsletter--modern .tp-newsletter__eyebrow{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin:0 0 14px;
  padding:7px 12px;
  border-radius:999px;
  background:rgba(255,255,255,.65);
  border:1px solid rgba(20,61,42,.08);
  color:var(--tp-newsletter-accent) !important;
  font-size:11px !important;
  font-weight:800;
  letter-spacing:.14em;
  line-height:1;
  text-transform:uppercase;
}
.tp-newsletter--modern h2{
  max-width:760px;
  margin:0 auto 14px;
  line-height:1.02;
}
.tp-newsletter--modern .tp-newsletter__text{
  max-width:650px;
  margin:0 auto;
  line-height:1.65;
}
.tp-newsletter--modern .tp-newsletter__perks{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:9px;
  margin:22px 0 0;
}
.tp-newsletter--modern .tp-newsletter__perks span{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:9px 13px;
  border-radius:999px;
  background:rgba(255,255,255,.70);
  border:1px solid rgba(20,61,42,.08);
  color:#294233;
  font-size:12px;
  font-weight:700;
}
.tp-newsletter--modern .tp-newsletter__perks i{
  width:18px;
  height:18px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:var(--tp-newsletter-accent);
  color:#fff;
  font-size:11px;
  font-style:normal;
}
.tp-newsletter--modern .tp-newsletter__form{
  max-width:660px;
  margin:26px auto 0;
}
.tp-newsletter--modern .tp-newsletter__field{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:8px;
  min-height:64px;
  padding:7px 7px 7px 18px;
  border-radius:999px;
  background:#fff;
  border:1px solid rgba(20,61,42,.12);
  box-shadow:0 12px 30px rgba(20,61,42,.09);
}
.tp-newsletter--modern .tp-newsletter__mail-icon{
  width:24px;
  height:24px;
  display:grid;
  place-items:center;
  color:#577160;
}
.tp-newsletter--modern .tp-newsletter__mail-icon svg{
  width:21px;
  height:21px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.tp-newsletter--modern .tp-newsletter__field input{
  width:100%;
  min-width:0;
  padding:11px 4px;
  border:0 !important;
  outline:0;
  background:transparent !important;
  color:#23352A;
  font:inherit;
  box-shadow:none !important;
}
.tp-newsletter--modern .tp-newsletter__field input::placeholder{
  color:#78877D;
  opacity:1;
}
.tp-newsletter--modern .tp-newsletter__field button{
  min-height:50px;
  padding:0 22px;
  border:0;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  background:var(--tp-newsletter-button-bg) !important;
  color:var(--tp-newsletter-button-text) !important;
  font-weight:800;
  letter-spacing:.035em;
  white-space:nowrap;
  cursor:pointer;
  transition:transform .18s ease, box-shadow .18s ease;
}
.tp-newsletter--modern .tp-newsletter__field button:hover{
  transform:translateY(-1px);
  box-shadow:0 8px 18px rgba(20,61,42,.18);
}
.tp-newsletter--modern .tp-newsletter__field button span{
  font-size:18px;
  line-height:1;
}
.tp-newsletter--modern .tp-newsletter__note{
  margin:12px 0 0;
  color:#64756A !important;
  font-size:11px !important;
  line-height:1.5;
}
.tp-newsletter--modern .tp-newsletter__message{
  margin:14px auto 0;
  padding:10px 14px;
  border-radius:12px;
  font-size:13px;
  line-height:1.5;
}
.tp-newsletter--modern .tp-newsletter__message--success{
  background:rgba(255,255,255,.72);
  color:#1D5D39;
}
.tp-newsletter--modern .tp-newsletter__message--error{
  background:#FFF1EE;
  color:#8A362D;
}
.tp-newsletter--modern .tp-newsletter__decor{
  position:absolute;
  z-index:1;
  border-radius:48% 52% 58% 42% / 44% 42% 58% 56%;
  pointer-events:none;
}
.tp-newsletter--modern .tp-newsletter__decor--one{
  width:230px;
  height:230px;
  left:-90px;
  bottom:-92px;
  background:rgba(255,255,255,.40);
  transform:rotate(18deg);
}
.tp-newsletter--modern .tp-newsletter__decor--two{
  width:180px;
  height:180px;
  right:-62px;
  top:-72px;
  background:color-mix(in srgb, var(--tp-newsletter-accent) 16%, transparent);
  transform:rotate(-22deg);
}

@media(max-width:700px){
  .tp-newsletter--modern{
    padding:48px 0;
  }
  .tp-newsletter--modern .tp-newsletter__card{
    padding:42px 20px 36px;
    border-radius:26px;
  }
  .tp-newsletter--modern h2{
    font-size:min(var(--tp-section-heading-size,48px),38px) !important;
  }
  .tp-newsletter--modern .tp-newsletter__perks{
    gap:7px;
  }
  .tp-newsletter--modern .tp-newsletter__field{
    grid-template-columns:auto minmax(0,1fr);
    border-radius:22px;
    padding:10px 12px 12px;
  }
  .tp-newsletter--modern .tp-newsletter__field button{
    grid-column:1 / -1;
    width:100%;
    min-height:48px;
    margin-top:2px;
  }
}


/* ===== V15.4.4 COPYRIGHT CONTROLS ===== */
.tp-footer__copyright,
.tp-footer__bottom,
.tp-footer__bottom p,
.tp-footer__bottom small{
  font-size:var(--tp-copyright-size,12px) !important;
  color:var(--tp-copyright-color,#E7EFE8) !important;
}

/* ===== V15.4.4 MODERN PRODUCT PAGE ===== */
.tp-product{
  gap:56px;
  align-items:start;
}
.tp-product__gallery{
  position:sticky;
  top:120px;
}
.tp-product__main-image{
  border-radius:28px;
  overflow:hidden;
  background:#F3F4EF;
  border:1px solid rgba(20,61,42,.08);
  box-shadow:0 16px 34px rgba(20,61,42,.07);
}
.tp-product__main-image img{
  width:100%;
  display:block;
  object-fit:cover;
}
.tp-product__thumbnails{
  gap:10px;
  margin-top:12px;
}
.tp-product__thumbnail{
  border-radius:14px;
  overflow:hidden;
  border:1px solid rgba(20,61,42,.10);
  background:#fff;
}
.tp-product__info{
  padding:18px 0 0;
}
.tp-product__info h1{
  font-size:clamp(38px,4vw,58px);
  line-height:1.02;
  margin-bottom:14px;
}
.tp-product-price{
  margin:18px 0 20px;
  font-size:24px;
}
.tp-product__accordion{
  margin-top:28px;
  border-top:1px solid rgba(20,61,42,.12);
}
.tp-product__accordion details{
  border-bottom:1px solid rgba(20,61,42,.12);
}
.tp-product__accordion summary{
  padding:18px 0;
  font-weight:700;
  cursor:pointer;
}
.tp-product-tab-content{
  padding:0 0 20px;
  line-height:1.7;
}
.tp-product-story{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);
  gap:42px;
  align-items:center;
  margin-top:72px;
  margin-bottom:72px;
}
.tp-product-story__image{
  overflow:hidden;
  border-radius:30px;
  min-height:460px;
  background:#E8EEE4;
  box-shadow:0 16px 34px rgba(20,61,42,.08);
}
.tp-product-story__image img{
  width:100%;
  height:100%;
  min-height:460px;
  display:block;
  object-fit:cover;
}
.tp-product-story__copy{
  padding:28px;
}
.tp-product-story__eyebrow{
  margin:0 0 10px;
  font-size:11px;
  font-weight:800;
  letter-spacing:.15em;
  color:#B78D45;
}
.tp-product-story__copy h2{
  margin:0 0 16px;
  font-size:clamp(34px,4vw,52px);
  line-height:1.05;
}
.tp-product-story__text{
  font-size:17px;
  line-height:1.75;
  color:#405046;
}
@media(max-width:900px){
  .tp-product{
    grid-template-columns:1fr;
    gap:26px;
  }
  .tp-product__gallery{
    position:static;
  }
  .tp-product-story{
    grid-template-columns:1fr;
    gap:18px;
    margin-top:48px;
    margin-bottom:48px;
  }
  .tp-product-story__image,
  .tp-product-story__image img{
    min-height:320px;
  }
  .tp-product-story__copy{
    padding:10px 4px;
  }
}

/* ===== V15.4.4 FAQ PAGE ===== */
.tp-faq-page{
  padding:82px 0;
}
.tp-faq-page__header{
  max-width:760px;
  margin:0 auto 42px;
  text-align:center;
}
.tp-faq-page__eyebrow{
  margin:0 0 10px;
  font-size:11px;
  font-weight:800;
  letter-spacing:.16em;
  color:#B78D45;
}
.tp-faq-page__header h1{
  margin:0 0 14px;
  font-size:clamp(42px,6vw,68px);
  line-height:1.02;
  color:#143D2A;
}
.tp-faq-page__intro{
  font-size:17px;
  line-height:1.7;
  color:#45564B;
}
.tp-faq-page__list{
  max-width:900px;
  margin:0 auto;
  display:grid;
  gap:12px;
}
.tp-faq-item{
  background:#fff;
  border:1px solid rgba(20,61,42,.10);
  border-radius:20px;
  box-shadow:0 8px 22px rgba(20,61,42,.05);
  overflow:hidden;
}
.tp-faq-item summary{
  list-style:none;
  padding:20px 22px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  cursor:pointer;
  font-weight:700;
  color:#143D2A;
}
.tp-faq-item summary::-webkit-details-marker{display:none}
.tp-faq-item__icon{
  width:30px;
  height:30px;
  border-radius:50%;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  background:#E5EDD9;
  color:#143D2A;
  font-size:20px;
  transition:transform .18s ease;
}
.tp-faq-item[open] .tp-faq-item__icon{
  transform:rotate(45deg);
}
.tp-faq-item__answer{
  padding:0 22px 22px;
  color:#45564B;
  line-height:1.7;
}


/* ===== V15.4.5 FULL MODERN PRODUCT REBUILD ===== */
.tp-product-page--modern{
  background:#FCFAF5;
  padding:28px 0 80px;
}
.tp-product-page--modern .tp-breadcrumbs{
  margin-bottom:24px;
}
.tp-product-main--modern{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(390px,.92fr);
  gap:60px;
  align-items:start;
}
.tp-product-gallery--modern{
  display:block;
  min-width:0;
}
.tp-product-gallery-radios{
  display:grid;
  grid-template-columns:1fr;
  gap:14px;
}
.tp-product-gallery-radio{
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.tp-product-page--modern .tp-product-main-media{
  min-height:620px;
  border-radius:30px;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 42%,#FFFFFF 0%,#F4F4EC 64%,#ECEFE5 100%);
  border:1px solid rgba(20,61,42,.07);
  box-shadow:0 18px 42px rgba(20,61,42,.08);
}
.tp-product-page--modern .tp-product-media-item{
  display:none;
  width:100%;
  height:100%;
  min-height:620px;
  place-items:center;
}
.tp-product-page--modern .tp-product-media-item img{
  width:100%;
  height:100%;
  max-height:680px;
  object-fit:contain;
  padding:30px;
}
.tp-product-main-media--empty{
  color:#718177;
  font-size:14px;
}
.tp-product-page--modern .tp-product-thumbs{
  order:2;
  display:flex;
  flex-direction:row;
  gap:10px;
  overflow-x:auto;
  padding:2px 2px 8px;
  scrollbar-width:thin;
}
.tp-product-page--modern .tp-product-thumb{
  width:82px;
  height:82px;
  flex:0 0 82px;
  padding:5px;
  border:1px solid rgba(20,61,42,.10);
  border-radius:16px;
  background:#fff;
  cursor:pointer;
  overflow:hidden;
  transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease;
}
.tp-product-page--modern .tp-product-thumb:hover{
  transform:translateY(-2px);
}
.tp-product-page--modern .tp-product-thumb img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
}
.tp-product-info--modern{
  position:sticky;
  top:110px;
  padding:24px 26px 26px;
  border-radius:30px;
  background:rgba(255,255,255,.90);
  border:1px solid rgba(20,61,42,.08);
  box-shadow:0 18px 42px rgba(20,61,42,.07);
}
.tp-product-info--modern .tp-product-eyebrow{
  margin:0 0 10px;
  color:#A97C3B;
  font-size:11px;
  font-weight:800;
  letter-spacing:.15em;
}
.tp-product-info--modern h1{
  margin:0 0 14px;
  font-size:clamp(40px,4.2vw,58px) !important;
  line-height:1.01 !important;
  color:var(--tp-forest);
}
.tp-product-info--modern .tp-product-short{
  margin:0 0 18px;
  color:#47584D;
  font-size:16px;
  line-height:1.65;
}
.tp-product-info--modern .tp-product-price{
  display:flex;
  align-items:center;
  gap:10px;
  margin:8px 0 22px;
}
.tp-product-info--modern .tp-product-price strong{
  font-size:28px;
  color:var(--tp-forest);
}
.tp-product-info--modern .tp-product-price s{
  font-size:16px;
  color:#8A948D;
}
.tp-product-form--modern{
  padding:0;
}
.tp-product-form--modern .tp-product-options fieldset{
  margin:0 0 18px;
}
.tp-product-form--modern .tp-product-options legend{
  margin-bottom:9px;
  color:#314438;
  font-size:12px;
  font-weight:800;
  letter-spacing:.03em;
}
.tp-product-form--modern .tp-product-option-buttons{
  gap:9px;
}
.tp-product-form--modern .tp-product-option-buttons span{
  padding:11px 16px;
  border:1px solid rgba(20,61,42,.13);
  border-radius:999px;
  background:#F8F5EC;
  color:#314438;
  font-size:13px;
  font-weight:700;
  transition:.18s ease;
}
.tp-product-form--modern .tp-product-option-buttons input:checked + span{
  background:#DDE7D2;
  border-color:#143D2A;
  box-shadow:none;
  color:#143D2A;
}
.tp-purchase-options--modern{
  display:grid;
  gap:10px;
  margin:20px 0;
  border:0;
  background:transparent;
}
.tp-purchase-options--modern .tp-purchase-choice{
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:12px;
  padding:15px 16px;
  border:1px solid rgba(20,61,42,.10);
  border-radius:18px;
  background:#F8F5EC;
  font-size:12px;
  cursor:pointer;
}
.tp-purchase-options--modern .tp-purchase-choice:first-child{
  background:#EEF3E8;
  border-color:rgba(20,61,42,.22);
}
.tp-purchase-options--modern .tp-purchase-choice span{
  display:grid;
  gap:3px;
}
.tp-purchase-options--modern .tp-purchase-choice small{
  color:#8B7658;
  font-size:9px;
  font-weight:800;
  letter-spacing:.12em;
}
.tp-purchase-options--modern .tp-purchase-choice b{
  color:#24382B;
  font-size:13px;
}
.tp-purchase-options--modern .tp-purchase-choice strong{
  color:#143D2A;
  font-size:13px;
}
.tp-product-page--modern .tp-product-buy-row{
  display:grid;
  grid-template-columns:118px 1fr;
  gap:10px;
  margin-top:18px;
}
.tp-product-page--modern .tp-qty{
  min-height:56px;
  display:grid;
  grid-template-columns:38px 1fr 38px;
  align-items:center;
  border:1px solid rgba(20,61,42,.12);
  border-radius:999px;
  overflow:hidden;
  background:#fff;
}
.tp-product-page--modern .tp-qty button{
  height:100%;
  border:0;
  background:transparent;
  color:#143D2A;
  font-size:21px;
  cursor:pointer;
}
.tp-product-page--modern .tp-qty input{
  width:100%;
  border:0;
  background:transparent;
  text-align:center;
  font-size:14px;
  font-weight:700;
}
.tp-product-page--modern .tp-product-add{
  min-height:56px;
  border-radius:999px !important;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:13px;
  background:#143D2A !important;
  border:1px solid #143D2A !important;
  color:#fff !important;
  font-size:13px !important;
  font-weight:800 !important;
  letter-spacing:.06em;
  box-shadow:0 10px 22px rgba(20,61,42,.18);
  transition:transform .18s ease,box-shadow .18s ease;
}
.tp-product-page--modern .tp-product-add:hover{
  transform:translateY(-1px);
  box-shadow:0 14px 26px rgba(20,61,42,.24);
}
.tp-product-page--modern .tp-dynamic-checkout{
  margin-top:10px;
}
.tp-product-page--modern .tp-dynamic-checkout .shopify-payment-button__button,
.tp-product-page--modern .shopify-payment-button__button{
  min-height:52px !important;
  border-radius:999px !important;
}
.tp-product-microcopy{
  display:flex;
  flex-wrap:wrap;
  gap:8px 16px;
  margin-top:16px;
  color:#69786E;
  font-size:11px;
}
.tp-product-page--modern .tp-product-benefit-strip{
  display:grid;
  grid-template-columns:repeat(var(--tp-benefit-count,4),minmax(0,1fr));
  gap:14px;
  margin:48px 0;
  padding:0;
  background:transparent;
}
.tp-product-page--modern .tp-product-benefit{
  min-height:118px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:18px 14px;
  border:1px solid rgba(20,61,42,.08);
  border-radius:22px;
  background:#fff;
  box-shadow:0 10px 26px rgba(20,61,42,.06);
  text-align:center;
}
.tp-product-page--modern .tp-product-benefit:nth-child(4n+1){--tp-benefit-icon-bg:#E4F1DE;--tp-benefit-icon:#2F6E42}
.tp-product-page--modern .tp-product-benefit:nth-child(4n+2){--tp-benefit-icon-bg:#F8E6CD;--tp-benefit-icon:#B26C2B}
.tp-product-page--modern .tp-product-benefit:nth-child(4n+3){--tp-benefit-icon-bg:#E3EDF8;--tp-benefit-icon:#3E6E99}
.tp-product-page--modern .tp-product-benefit:nth-child(4n+4){--tp-benefit-icon-bg:#F0E6F8;--tp-benefit-icon:#7958A8}
.tp-product-benefit__icon{
  width:58px;
  height:58px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:var(--tp-benefit-icon-bg,#E4F1DE);
}
.tp-product-benefit__icon svg{
  width:32px !important;
  height:32px !important;
}
.tp-product-benefit__icon svg *{
  stroke:var(--tp-benefit-icon,#2F6E42);
  fill:none;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.tp-product-benefit__icon img{
  width:38px !important;
  height:38px !important;
  object-fit:contain;
}
.tp-product-page--modern .tp-product-benefit > span{
  max-width:16ch;
  color:#314438;
  font-size:11px;
  font-weight:800;
  line-height:1.25;
  letter-spacing:.025em;
}
.tp-product-info-section{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(330px,.95fr);
  gap:38px;
  align-items:stretch;
  margin:18px 0 62px;
}
.tp-product-info-section__content{
  display:flex;
  flex-direction:column;
  gap:20px;
}
.tp-product-horizontal-tabs{
  min-height:330px;
  overflow:hidden;
  border:1px solid rgba(20,61,42,.08);
  border-radius:26px;
  background:#fff;
  box-shadow:0 12px 30px rgba(20,61,42,.05);
}
.tp-product-horizontal-tabs > input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.tp-product-tab-nav{
  display:grid;
  grid-template-columns:1fr 1fr;
  border-bottom:1px solid rgba(20,61,42,.09);
  background:#F8F5EC;
}
.tp-product-tab-nav label{
  position:relative;
  padding:18px 22px;
  color:#66756B;
  font-size:12px;
  font-weight:800;
  letter-spacing:.06em;
  text-align:center;
  text-transform:uppercase;
  cursor:pointer;
}
.tp-product-horizontal-tabs > input:first-of-type:checked ~ .tp-product-tab-nav label:first-child,
.tp-product-horizontal-tabs > input:nth-of-type(2):checked ~ .tp-product-tab-nav label:nth-child(2){
  color:#143D2A;
}
.tp-product-tab-nav label:after{
  content:"";
  position:absolute;
  left:20%;
  right:20%;
  bottom:-1px;
  height:3px;
  border-radius:999px;
  background:transparent;
}
.tp-product-horizontal-tabs > input:first-of-type:checked ~ .tp-product-tab-nav label:first-child:after,
.tp-product-horizontal-tabs > input:nth-of-type(2):checked ~ .tp-product-tab-nav label:nth-child(2):after{
  background:#B78D45;
}
.tp-product-tab-panels{
  padding:26px 28px 30px;
}
.tp-product-tab-panel{
  display:none;
  color:#405046;
  font-size:15px;
  line-height:1.75;
}
.tp-product-horizontal-tabs > input:first-of-type:checked ~ .tp-product-tab-panels .tp-product-tab-panel--description{
  display:block;
}
.tp-product-horizontal-tabs > input:nth-of-type(2):checked ~ .tp-product-tab-panels .tp-product-tab-panel--ingredients{
  display:block;
}
.tp-feeding-guide{
  display:grid;
  grid-template-columns:58px 1fr;
  gap:16px;
  align-items:start;
  padding:22px 24px;
  border-radius:24px;
  background:#DDE7D2;
  border:1px solid rgba(20,61,42,.07);
}
.tp-feeding-guide__icon{
  width:50px;
  height:50px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#fff;
  color:#143D2A;
}
.tp-feeding-guide__icon svg{
  width:28px;
  height:28px;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.tp-feeding-guide__eyebrow{
  margin:0 0 4px;
  color:#8C6D3E;
  font-size:9px;
  font-weight:800;
  letter-spacing:.14em;
}
.tp-feeding-guide h3{
  margin:0 0 8px;
  color:#143D2A;
  font-size:24px;
}
.tp-feeding-guide__text{
  color:#405046;
  font-size:14px;
  line-height:1.65;
}
.tp-product-page--modern .tp-product-lifestyle{
  overflow:hidden;
  min-height:100%;
  border-radius:28px;
  background:#EEF1E8;
  box-shadow:0 14px 32px rgba(20,61,42,.07);
}
.tp-product-page--modern .tp-product-lifestyle img{
  width:100%;
  height:100%;
  min-height:480px;
  max-height:none;
  display:block;
  object-fit:cover;
  border-radius:0;
}
.tp-product-page--modern .tp-product-story{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);
  gap:0;
  overflow:hidden;
  margin:62px 0;
  border-radius:30px;
  background:#EEF3E8;
  border:1px solid rgba(20,61,42,.07);
}
.tp-product-page--modern .tp-product-story__image{
  min-height:460px;
  border-radius:0;
  box-shadow:none;
}
.tp-product-page--modern .tp-product-story__image img{
  width:100%;
  height:100%;
  min-height:460px;
  object-fit:cover;
}
.tp-product-page--modern .tp-product-story__copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:54px 48px;
}
.tp-product-page--modern .tp-product-story__eyebrow{
  margin:0 0 10px;
  color:#B78D45;
  font-size:10px;
  font-weight:800;
  letter-spacing:.15em;
}
.tp-product-page--modern .tp-product-story__copy h2{
  margin:0 0 16px;
  color:#143D2A;
  font-size:clamp(38px,4vw,52px);
  line-height:1.04;
}
.tp-product-page--modern .tp-product-story__text{
  color:#405046;
  font-size:16px;
  line-height:1.7;
}
.tp-product-related{
  padding-top:18px;
}
.tp-product-related__heading{
  text-align:center;
  margin-bottom:28px;
}
.tp-product-related__heading p{
  margin:0 0 7px;
  color:#B78D45;
  font-size:10px;
  font-weight:800;
  letter-spacing:.15em;
}
.tp-product-related__heading h2{
  margin:0;
  font-size:42px;
  text-transform:none !important;
}
@media(max-width:980px){
  .tp-product-main--modern{
    grid-template-columns:1fr;
    gap:28px;
  }
  .tp-product-info--modern{
    position:static;
  }
  .tp-product-info-section{
    grid-template-columns:1fr;
  }
  .tp-product-page--modern .tp-product-lifestyle img{
    min-height:360px;
  }
  .tp-product-page--modern .tp-product-story{
    grid-template-columns:1fr;
  }
}
@media(max-width:700px){
  .tp-product-page--modern{
    padding-top:18px;
  }
  .tp-product-page--modern .tp-product-main-media,
  .tp-product-page--modern .tp-product-media-item{
    min-height:390px;
  }
  .tp-product-page--modern .tp-product-media-item img{
    max-height:430px;
    padding:18px;
  }
  .tp-product-info--modern{
    padding:22px 18px;
    border-radius:24px;
  }
  .tp-product-info--modern h1{
    font-size:38px !important;
  }
  .tp-product-page--modern .tp-product-buy-row{
    grid-template-columns:1fr;
  }
  .tp-product-page--modern .tp-qty{
    width:130px;
  }
  .tp-product-page--modern .tp-product-benefit-strip{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    margin:34px 0;
  }
  .tp-product-page--modern .tp-product-benefit{
    min-height:112px;
    border-radius:18px;
  }
  .tp-product-info-section{
    gap:20px;
    margin-bottom:42px;
  }
  .tp-product-tab-nav label{
    padding:15px 10px;
    font-size:10px;
  }
  .tp-product-tab-panels{
    padding:22px 20px 24px;
  }
  .tp-feeding-guide{
    grid-template-columns:46px 1fr;
    padding:18px;
  }
  .tp-feeding-guide__icon{
    width:42px;
    height:42px;
  }
  .tp-product-page--modern .tp-product-lifestyle img{
    min-height:310px;
  }
  .tp-product-page--modern .tp-product-story{
    margin:42px 0;
    border-radius:24px;
  }
  .tp-product-page--modern .tp-product-story__image,
  .tp-product-page--modern .tp-product-story__image img{
    min-height:300px;
  }
  .tp-product-page--modern .tp-product-story__copy{
    padding:32px 24px 36px;
  }
}


/* ===== V15.4.8 CLICKABLE PRODUCT TABS + FEEDING METAOBJECT ===== */
.tp-product-page--modern .tp-product-horizontal-tabs{
  border-color:rgba(20,61,42,.10);
  box-shadow:0 14px 34px rgba(20,61,42,.07);
}

.tp-product-page--modern .tp-product-tab-nav{
  gap:10px;
  padding:12px;
  border-bottom:1px solid rgba(20,61,42,.08);
  background:#F8F5EC;
}

.tp-product-page--modern .tp-product-tab-trigger{
  min-height:76px;
  padding:13px 15px !important;
  display:grid;
  grid-template-columns:42px 1fr 24px;
  align-items:center;
  gap:11px;
  border:1px solid rgba(20,61,42,.09);
  border-radius:18px;
  background:#fff;
  text-align:left !important;
  text-transform:none !important;
  cursor:pointer;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease;
}

.tp-product-page--modern .tp-product-tab-trigger:hover{
  transform:translateY(-1px);
  border-color:rgba(20,61,42,.22);
  box-shadow:0 7px 18px rgba(20,61,42,.07);
}

.tp-product-tab-trigger__icon{
  width:42px;
  height:42px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#E8F0E1;
  color:#2F6E42;
}

.tp-product-tab-trigger--ingredients .tp-product-tab-trigger__icon{
  background:#F6E8D4;
  color:#A86E2F;
}

.tp-product-tab-trigger__icon svg{
  width:23px;
  height:23px;
  display:block;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.tp-product-tab-trigger__text{
  display:grid;
  gap:3px;
}

.tp-product-tab-trigger__text strong{
  color:#143D2A;
  font-size:14px;
  line-height:1.1;
}

.tp-product-tab-trigger__text small{
  color:#748177;
  font-size:10px;
  line-height:1.2;
  letter-spacing:0;
  text-transform:none;
}

.tp-product-tab-trigger__arrow{
  width:24px;
  height:24px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#F1F3EC;
  color:#143D2A;
  font-size:15px;
  transition:transform .18s ease,background .18s ease,color .18s ease;
}

.tp-product-horizontal-tabs > input:first-of-type:checked ~ .tp-product-tab-nav label:first-child,
.tp-product-horizontal-tabs > input:nth-of-type(2):checked ~ .tp-product-tab-nav label:nth-child(2){
  border-color:#143D2A;
  background:#EEF3E8;
  box-shadow:0 7px 18px rgba(20,61,42,.08);
}

.tp-product-horizontal-tabs > input:first-of-type:checked ~ .tp-product-tab-nav label:first-child .tp-product-tab-trigger__arrow,
.tp-product-horizontal-tabs > input:nth-of-type(2):checked ~ .tp-product-tab-nav label:nth-child(2) .tp-product-tab-trigger__arrow{
  background:#143D2A;
  color:#fff;
  transform:rotate(90deg);
}

/* Remove old little underline now that tabs are full cards */
.tp-product-page--modern .tp-product-tab-nav label:after{
  display:none !important;
}

/* Structured Feeding Guide */
.tp-product-page--modern .tp-feeding-guide--structured{
  display:block;
  padding:24px;
  border-radius:26px;
  background:
    radial-gradient(circle at 100% 0%,rgba(255,255,255,.42),transparent 34%),
    #DDE7D2;
  border:1px solid rgba(20,61,42,.08);
  box-shadow:0 12px 28px rgba(20,61,42,.06);
}

.tp-feeding-guide__top{
  display:grid;
  grid-template-columns:58px 1fr;
  gap:16px;
  align-items:start;
}

.tp-feeding-guide__intro{
  margin-top:7px;
  color:#46574C;
  font-size:14px;
  line-height:1.55;
}

.tp-feeding-guide__rows{
  display:grid;
  gap:8px;
  margin-top:19px;
}

.tp-feeding-guide__row{
  min-height:48px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:11px 15px;
  border-radius:14px;
  background:rgba(255,255,255,.74);
  border:1px solid rgba(20,61,42,.07);
}

.tp-feeding-guide__row span{
  color:#3E5045;
  font-size:13px;
  font-weight:650;
}

.tp-feeding-guide__row strong{
  flex:0 0 auto;
  color:#143D2A;
  font-size:14px;
  font-weight:800;
}

.tp-feeding-guide__note{
  display:grid;
  grid-template-columns:24px 1fr;
  gap:9px;
  margin-top:14px;
  padding-top:14px;
  border-top:1px solid rgba(20,61,42,.11);
  color:#627168;
  font-size:11px;
  line-height:1.55;
}

.tp-feeding-guide__note > span{
  color:#8C6D3E;
  font-size:15px;
}

@media(max-width:700px){
  .tp-product-page--modern .tp-product-tab-nav{
    grid-template-columns:1fr;
  }

  .tp-product-page--modern .tp-product-tab-trigger{
    min-height:68px;
    grid-template-columns:38px 1fr 24px;
    border-radius:16px;
  }

  .tp-product-tab-trigger__icon{
    width:38px;
    height:38px;
  }

  .tp-product-page--modern .tp-feeding-guide--structured{
    padding:20px 17px;
  }

  .tp-feeding-guide__top{
    grid-template-columns:46px 1fr;
    gap:12px;
  }

  .tp-feeding-guide__row{
    padding:10px 12px;
  }
}


/* ===== V15.4.9 CENTERED PRODUCT TAB ARROWS ===== */
.tp-product-page--modern .tp-product-tab-trigger__arrow{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 !important;
  line-height:0 !important;
}

.tp-product-page--modern .tp-product-tab-trigger__arrow svg{
  width:14px;
  height:14px;
  display:block;
  fill:none;
  stroke:currentColor;
  stroke-width:2.2;
  stroke-linecap:round;
  stroke-linejoin:round;
  transform:rotate(0deg);
  transform-origin:center;
  transition:transform .18s ease;
}

.tp-product-horizontal-tabs > input:first-of-type:checked ~ .tp-product-tab-nav label:first-child .tp-product-tab-trigger__arrow,
.tp-product-horizontal-tabs > input:nth-of-type(2):checked ~ .tp-product-tab-nav label:nth-child(2) .tp-product-tab-trigger__arrow{
  transform:none !important;
}

.tp-product-horizontal-tabs > input:first-of-type:checked ~ .tp-product-tab-nav label:first-child .tp-product-tab-trigger__arrow svg,
.tp-product-horizontal-tabs > input:nth-of-type(2):checked ~ .tp-product-tab-nav label:nth-child(2) .tp-product-tab-trigger__arrow svg{
  transform:rotate(90deg);
}


/* ===== V15.5.0 PRODUCT SUMMARY METAFIELD ===== */
.tp-product-short--placeholder{
  padding:12px 14px;
  border:1px dashed rgba(20,61,42,.20);
  border-radius:14px;
  background:#F8F5EC;
  color:#6A776E !important;
  font-size:13px !important;
}


/* ===== V15.5.2 FORCED MODERN CART PAGE ===== */
.tp-cart-page{
  padding:54px 0 84px;
  background:
    radial-gradient(circle at 88% 4%,rgba(221,231,210,.50),transparent 26%),
    #FCFAF5;
  min-height:60vh;
}

.tp-cart-eyebrow,
.tp-cart-summary__eyebrow{
  margin:0 0 8px;
  color:#B78D45;
  font-size:10px;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.tp-cart-header{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:24px;
  margin-bottom:30px;
}

.tp-cart-header h1{
  margin:0;
  color:#143D2A;
  font-size:clamp(44px,6vw,68px);
  line-height:1;
}

.tp-cart-header__subtext{
  margin:10px 0 0;
  color:#69776E;
  font-size:14px;
}

.tp-cart-continue{
  padding-bottom:4px;
  color:#143D2A;
  font-size:13px;
  font-weight:750;
  text-decoration:none;
  border-bottom:1px solid rgba(20,61,42,.22);
}

.tp-cart-layout{
  display:grid;
  grid-template-columns:minmax(0,1.3fr) minmax(340px,.7fr);
  gap:34px;
  align-items:start;
}

.tp-cart-items{
  display:grid;
  gap:14px;
}

.tp-cart-item{
  display:grid;
  grid-template-columns:150px minmax(0,1fr);
  gap:20px;
  padding:18px;
  border-radius:24px;
  background:#fff;
  border:1px solid rgba(20,61,42,.08);
  box-shadow:0 10px 28px rgba(20,61,42,.05);
}

.tp-cart-item__image{
  min-height:150px;
  display:grid;
  place-items:center;
  border-radius:18px;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 45%,#fff 0%,#F3F4EE 68%,#ECEFE5 100%);
}

.tp-cart-item__image img{
  width:100%;
  height:100%;
  min-height:150px;
  object-fit:contain;
  padding:12px;
}

.tp-cart-item__image-placeholder{
  color:#7C887F;
  font-size:13px;
}

.tp-cart-item__content{
  min-width:0;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}

.tp-cart-item__top{
  display:flex;
  justify-content:space-between;
  gap:16px;
}

.tp-cart-item__vendor{
  margin:0 0 4px;
  color:#A07A42;
  font-size:9px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.tp-cart-item h2{
  margin:0;
  font-size:24px;
  line-height:1.12;
}

.tp-cart-item h2 a{
  color:#143D2A;
  text-decoration:none;
}

.tp-cart-item__variant{
  display:flex;
  flex-wrap:wrap;
  gap:6px 14px;
  margin-top:9px;
  color:#6B786F;
  font-size:11px;
}

.tp-cart-item__variant strong{
  color:#405046;
}

.tp-cart-item__plan{
  display:inline-flex;
  margin-top:9px;
  padding:5px 9px;
  border-radius:999px;
  background:#EEF3E8;
  color:#3B6346;
  font-size:10px;
  font-weight:700;
}

.tp-cart-item__remove{
  width:36px;
  height:36px;
  flex:0 0 36px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#F8F5EC;
  color:#66746B;
  transition:.18s ease;
}

.tp-cart-item__remove:hover{
  background:#F5E8E2;
  color:#8A4434;
}

.tp-cart-item__remove svg{
  width:17px;
  height:17px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.tp-cart-item__bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-top:18px;
}

.tp-cart-qty{
  width:128px;
  min-height:46px;
  display:grid;
  grid-template-columns:40px 1fr 40px;
  align-items:center;
  border:1px solid rgba(20,61,42,.12);
  border-radius:999px;
  background:#F8F5EC;
  overflow:hidden;
}

.tp-cart-qty button{
  height:100%;
  border:0;
  background:transparent;
  color:#143D2A;
  font-size:20px;
  cursor:pointer;
}

.tp-cart-qty input{
  width:100%;
  padding:0;
  border:0 !important;
  background:transparent !important;
  text-align:center;
  color:#143D2A;
  font-weight:800;
  box-shadow:none !important;
}

.tp-cart-item__price{
  display:flex;
  align-items:center;
  gap:8px;
}

.tp-cart-item__price s{
  color:#879187;
  font-size:12px;
}

.tp-cart-item__price strong{
  color:#143D2A;
  font-size:18px;
}

.tp-cart-item__discount{
  margin-top:10px;
  color:#3B714B;
  font-size:11px;
  font-weight:700;
}

.tp-cart-note{
  padding:18px;
  border-radius:20px;
  background:#F8F5EC;
  border:1px solid rgba(20,61,42,.08);
}

.tp-cart-note label{
  display:block;
  margin-bottom:8px;
  color:#143D2A;
  font-size:12px;
  font-weight:800;
}

.tp-cart-note textarea{
  width:100%;
  padding:13px 14px;
  border:1px solid rgba(20,61,42,.12);
  border-radius:14px;
  background:#fff;
  resize:vertical;
  font:inherit;
}

.tp-cart-update{
  justify-self:start;
  padding:0;
  border:0;
  border-bottom:1px solid rgba(20,61,42,.25);
  background:transparent;
  color:#143D2A;
  font-size:12px;
  font-weight:750;
  cursor:pointer;
}

.tp-cart-summary{
  position:sticky;
  top:110px;
  display:grid;
  gap:16px;
}

.tp-cart-summary__card{
  padding:28px;
  border-radius:28px;
  background:#DDE7D2;
  border:1px solid rgba(20,61,42,.08);
  box-shadow:0 16px 38px rgba(20,61,42,.08);
}

.tp-cart-summary__card h2{
  margin:0 0 22px;
  color:#143D2A;
  font-size:34px;
  line-height:1.05;
}

.tp-cart-summary__line{
  display:flex;
  justify-content:space-between;
  gap:20px;
  padding:18px 0;
  border-top:1px solid rgba(20,61,42,.10);
  border-bottom:1px solid rgba(20,61,42,.10);
  color:#405046;
}

.tp-cart-summary__line strong{
  color:#143D2A;
  font-size:20px;
}

.tp-cart-summary__discount{
  padding:12px 0 0;
  color:#3F714D;
  font-size:11px;
}

.tp-cart-summary__discount > div{
  display:flex;
  justify-content:space-between;
  gap:16px;
}

.tp-cart-summary__shipping{
  margin:14px 0 18px;
  color:#617066;
  font-size:11px;
  line-height:1.5;
}

.tp-cart-checkout{
  width:100%;
  min-height:56px;
  border-radius:999px !important;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  background:#143D2A !important;
  color:#fff !important;
  box-shadow:0 10px 22px rgba(20,61,42,.18);
}

.tp-cart-additional-checkout{
  margin-top:10px;
}

.tp-cart-trust{
  display:grid;
  gap:14px;
  margin-top:22px;
  padding-top:20px;
  border-top:1px solid rgba(20,61,42,.10);
}

.tp-cart-trust > div{
  display:grid;
  grid-template-columns:42px 1fr;
  gap:11px;
  align-items:center;
}

.tp-cart-trust__icon{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#fff;
  color:#2F6E42;
}

.tp-cart-trust__icon--sage{
  background:#EEF3E8;
}

.tp-cart-trust__icon--gold{
  background:#F6E8D4;
  color:#A36F2F;
}

.tp-cart-trust__icon svg{
  width:22px;
  height:22px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.tp-cart-trust > div > span:last-child{
  display:grid;
  gap:2px;
}

.tp-cart-trust strong{
  color:#143D2A;
  font-size:11px;
}

.tp-cart-trust small{
  color:#65736A;
  font-size:9px;
  line-height:1.35;
}

.tp-cart-help{
  display:grid;
  grid-template-columns:42px 1fr;
  gap:12px;
  padding:19px;
  border-radius:22px;
  background:#fff;
  border:1px solid rgba(20,61,42,.08);
  box-shadow:0 10px 26px rgba(20,61,42,.05);
}

.tp-cart-help__icon{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#F6E8D4;
  color:#8F642F;
  font-weight:800;
}

.tp-cart-help strong{
  color:#143D2A;
  font-size:13px;
}

.tp-cart-help p{
  margin:5px 0 8px;
  color:#66746B;
  font-size:11px;
  line-height:1.5;
}

.tp-cart-help a{
  color:#143D2A;
  font-size:11px;
  font-weight:750;
}

.tp-cart-empty{
  max-width:720px;
  margin:42px auto 0;
  padding:64px 34px;
  border-radius:34px;
  text-align:center;
  background:
    radial-gradient(circle at 50% 0%,rgba(255,255,255,.7),transparent 40%),
    #DDE7D2;
  border:1px solid rgba(20,61,42,.08);
  box-shadow:0 18px 44px rgba(20,61,42,.08);
}

.tp-cart-empty__icon{
  width:76px;
  height:76px;
  margin:0 auto 18px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#fff;
  color:#143D2A;
}

.tp-cart-empty__icon svg{
  width:38px;
  height:38px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.tp-cart-empty h1{
  margin:0 0 12px;
  color:#143D2A;
  font-size:clamp(42px,6vw,62px);
  line-height:1;
}

.tp-cart-empty__text{
  max-width:480px;
  margin:0 auto 22px;
  color:#56665B;
  font-size:15px;
  line-height:1.65;
}

.tp-cart-empty__button{
  display:inline-flex;
  align-items:center;
  gap:10px;
  border-radius:999px !important;
}

@media(max-width:900px){
  .tp-cart-layout{
    grid-template-columns:1fr;
  }

  .tp-cart-summary{
    position:static;
  }
}

@media(max-width:640px){
  .tp-cart-page{
    padding:34px 0 60px;
  }

  .tp-cart-header{
    align-items:start;
    flex-direction:column;
  }

  .tp-cart-item{
    grid-template-columns:104px minmax(0,1fr);
    gap:14px;
    padding:13px;
    border-radius:20px;
  }

  .tp-cart-item__image,
  .tp-cart-item__image img{
    min-height:104px;
  }

  .tp-cart-item h2{
    font-size:19px;
  }

  .tp-cart-item__bottom{
    align-items:flex-end;
    flex-direction:column-reverse;
  }

  .tp-cart-qty{
    align-self:flex-start;
  }

  .tp-cart-summary__card{
    padding:23px 19px;
    border-radius:24px;
  }

  .tp-cart-empty{
    padding:48px 20px;
    border-radius:26px;
  }
}


/* ===== V15.5.3 CART TEXT READABILITY ===== */
.tp-cart-page .tp-cart-header__subtext{
  font-size:16px !important;
}

.tp-cart-page .tp-cart-continue{
  font-size:14px !important;
}

.tp-cart-page .tp-cart-item__vendor{
  font-size:11px !important;
}

.tp-cart-page .tp-cart-item__variant{
  font-size:13px !important;
  line-height:1.45;
}

.tp-cart-page .tp-cart-item__plan{
  font-size:12px !important;
}

.tp-cart-page .tp-cart-item__price s{
  font-size:14px !important;
}

.tp-cart-page .tp-cart-item__price strong{
  font-size:20px !important;
}

.tp-cart-page .tp-cart-item__discount{
  font-size:13px !important;
}

.tp-cart-page .tp-cart-qty input{
  font-size:16px !important;
}

.tp-cart-page .tp-cart-note label{
  font-size:14px !important;
}

.tp-cart-page .tp-cart-note textarea{
  font-size:15px !important;
  line-height:1.55;
}

.tp-cart-page .tp-cart-update{
  font-size:14px !important;
}

.tp-cart-page .tp-cart-summary__line{
  font-size:15px !important;
}

.tp-cart-page .tp-cart-summary__discount{
  font-size:13px !important;
}

.tp-cart-page .tp-cart-summary__shipping{
  font-size:13px !important;
  line-height:1.6;
}

.tp-cart-page .tp-cart-checkout{
  font-size:14px !important;
}

.tp-cart-page .tp-cart-trust strong{
  font-size:13px !important;
}

.tp-cart-page .tp-cart-trust small{
  font-size:11px !important;
  line-height:1.45;
}

.tp-cart-page .tp-cart-help strong{
  font-size:14px !important;
}

.tp-cart-page .tp-cart-help p{
  font-size:13px !important;
  line-height:1.55;
}

.tp-cart-page .tp-cart-help a{
  font-size:13px !important;
}

.tp-cart-page .tp-cart-empty__text{
  font-size:17px !important;
}

.tp-cart-page .tp-button,
.tp-cart-page button,
.tp-cart-page input,
.tp-cart-page textarea{
  -webkit-text-size-adjust:100%;
}

@media(max-width:640px){
  .tp-cart-page .tp-cart-item__variant{
    font-size:12px !important;
  }

  .tp-cart-page .tp-cart-summary__shipping,
  .tp-cart-page .tp-cart-help p{
    font-size:12px !important;
  }

  .tp-cart-page .tp-cart-trust small{
    font-size:10.5px !important;
  }
}


/* ===== V15.5.4 CHECKOUT BUTTON TEXT ===== */
.tp-cart-page .tp-cart-checkout{
  font-size:16px !important;
  font-weight:800 !important;
  letter-spacing:.07em !important;
}

@media(max-width:640px){
  .tp-cart-page .tp-cart-checkout{
    font-size:16px !important;
  }
}


/* ===== V15.5.5 GOLD CHECKOUT + TRUST TEXT READABILITY ===== */
.tp-cart-page .tp-cart-checkout{
  background:#B78D45 !important;
  border-color:#B78D45 !important;
  color:#FFFFFF !important;
  font-size:16px !important;
  font-weight:800 !important;
  letter-spacing:.07em !important;
  box-shadow:0 10px 24px rgba(183,141,69,.28) !important;
  transition:
    background .18s ease,
    border-color .18s ease,
    transform .18s ease,
    box-shadow .18s ease !important;
}

.tp-cart-page .tp-cart-checkout:hover{
  background:#9D7538 !important;
  border-color:#9D7538 !important;
  transform:translateY(-2px);
  box-shadow:0 14px 30px rgba(157,117,56,.34) !important;
}

.tp-cart-page .tp-cart-checkout:focus-visible{
  outline:3px solid rgba(183,141,69,.32) !important;
  outline-offset:3px;
}

.tp-cart-page .tp-cart-trust strong{
  font-size:14px !important;
  line-height:1.3 !important;
}

.tp-cart-page .tp-cart-trust small{
  margin-top:3px;
  color:#526258 !important;
  font-size:12.5px !important;
  line-height:1.5 !important;
}

.tp-cart-page .tp-cart-trust > div{
  grid-template-columns:46px 1fr !important;
  gap:13px !important;
}

.tp-cart-page .tp-cart-trust__icon{
  width:46px !important;
  height:46px !important;
}

@media(max-width:640px){
  .tp-cart-page .tp-cart-trust strong{
    font-size:13.5px !important;
  }

  .tp-cart-page .tp-cart-trust small{
    font-size:12px !important;
    line-height:1.5 !important;
  }
}


/* ===== V15.5.8 CART UI FONT CONTROLS + GLOBAL FONTS ===== */
body{
  font-family:var(--tp-body-font) !important;
  font-size:var(--tp-body-size) !important;
}

h1,h2,h3,h4,h5,h6,
.tp-heading,
.tp-product-info--modern h1,
.tp-cart-page h1,
.tp-cart-page h2{
  font-family:var(--tp-heading-font) !important;
}

button,
.tp-button,
input[type="submit"],
input[type="button"]{
  font-family:var(--tp-button-font) !important;
}

.tp-cart-page{
  font-family:var(--tp-body-font) !important;
}

.tp-cart-page .tp-cart-header__subtext,
.tp-cart-page .tp-cart-continue,
.tp-cart-page .tp-cart-item__variant,
.tp-cart-page .tp-cart-item__plan,
.tp-cart-page .tp-cart-item__discount,
.tp-cart-page .tp-cart-note label,
.tp-cart-page .tp-cart-note textarea,
.tp-cart-page .tp-cart-update,
.tp-cart-page .tp-cart-summary__line,
.tp-cart-page .tp-cart-summary__shipping,
.tp-cart-page .tp-cart-help p,
.tp-cart-page .tp-cart-help a,
.tp-cart-page .tp-cart-empty__text{
  font-size:var(--tp-cart-body-size,17px) !important;
}

.tp-cart-page .tp-cart-item__vendor,
.tp-cart-page .tp-cart-summary__eyebrow,
.tp-cart-page .tp-cart-eyebrow,
.tp-cart-page .tp-cart-summary__discount,
.tp-cart-page .tp-cart-trust small{
  font-size:var(--tp-cart-small-size,14px) !important;
}

.tp-cart-page .tp-cart-trust strong{
  font-size:var(--tp-cart-trust-title-size,15px) !important;
  line-height:1.35 !important;
}

.tp-cart-page .tp-cart-trust small{
  font-size:var(--tp-cart-trust-text-size,14px) !important;
  line-height:1.55 !important;
}

.tp-cart-page .tp-cart-checkout{
  font-size:var(--tp-cart-checkout-size,17px) !important;
}


/* ===== V15.5.9 INSIDE THE SCOOP ===== */
.tp-scoop{
  background:var(--tp-scoop-bg,#F7F4EA);
  color:var(--tp-scoop-ink,#143D2A);
  padding:clamp(54px,7vw,96px) 0;
  overflow:hidden;
}
.tp-scoop__inner{
  width:min(var(--tp-page-width,1300px),calc(100% - 40px));
  margin:0 auto;
}
.tp-scoop__header{
  max-width:760px;
  margin:0 auto 38px;
  text-align:center;
}
.tp-scoop__eyebrow{
  margin:0 0 10px;
  font-family:var(--tp-button-font);
  font-size:12px;
  font-weight:800;
  letter-spacing:.18em;
  color:var(--tp-scoop-accent,#B78D45);
}
.tp-scoop__header h2{
  margin:0;
  color:var(--tp-scoop-ink,#143D2A);
}
.tp-scoop__intro{
  margin:14px auto 0;
  max-width:610px;
  color:var(--tp-scoop-muted,#5F6F64);
  font-size:16px;
  line-height:1.65;
}
.tp-scoop__stage{
  position:relative;
}
.tp-scoop__center{
  width:190px;
  height:190px;
  margin:0 auto 26px;
  border-radius:50%;
  background:color-mix(in srgb,var(--tp-scoop-accent,#B78D45) 13%,white);
  border:1px solid color-mix(in srgb,var(--tp-scoop-accent,#B78D45) 28%,white);
  display:flex;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  text-align:center;
  box-shadow:0 18px 48px rgba(20,61,42,.08);
}
.tp-scoop__bowl{
  width:112px;
  color:var(--tp-scoop-accent,#B78D45);
}
.tp-scoop__bowl svg{
  width:100%;
  height:auto;
  display:block;
}
.tp-scoop__center span{
  margin-top:-4px;
  width:130px;
  font-family:var(--tp-button-font);
  font-size:10px;
  font-weight:800;
  letter-spacing:.14em;
}
.tp-scoop__grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.tp-scoop-card{
  min-width:0;
  background:var(--tp-scoop-card,#fff);
  border:1px solid rgba(20,61,42,.1);
  border-radius:24px;
  overflow:hidden;
  box-shadow:0 12px 34px rgba(20,61,42,.07);
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.tp-scoop-card:hover{
  transform:translateY(-4px);
  border-color:color-mix(in srgb,var(--tp-scoop-accent,#B78D45) 40%,transparent);
  box-shadow:0 18px 42px rgba(20,61,42,.11);
}
.tp-scoop-card__media{
  aspect-ratio:1.55/1;
  overflow:hidden;
  background:#EEF2E7;
}
.tp-scoop-card__media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .35s ease;
}
.tp-scoop-card:hover .tp-scoop-card__media img{
  transform:scale(1.035);
}
.tp-scoop-card__media--placeholder{
  display:flex;
  align-items:center;
  justify-content:center;
  color:#86A080;
}
.tp-scoop-card__media--placeholder svg{
  width:76px;
  height:76px;
}
.tp-scoop-card__body{
  padding:22px 22px 20px;
}
.tp-scoop-card h3{
  margin:0 0 7px;
  color:var(--tp-scoop-ink,#143D2A);
  font-size:22px;
  line-height:1.15;
}
.tp-scoop-card__benefit{
  margin:0;
  min-height:48px;
  color:var(--tp-scoop-muted,#5F6F64);
  font-size:15px;
  line-height:1.55;
}
.tp-scoop-card__toggle{
  width:100%;
  margin-top:17px;
  padding:12px 0 0;
  border:0;
  border-top:1px solid rgba(20,61,42,.1);
  background:transparent;
  color:var(--tp-scoop-ink,#143D2A);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  font:inherit;
  font-family:var(--tp-button-font);
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  cursor:pointer;
}
.tp-scoop-card__toggle svg{
  width:18px;
  height:18px;
  transition:transform .2s ease;
}
.tp-scoop-card.is-open .tp-scoop-card__toggle svg{
  transform:rotate(180deg);
}
.tp-scoop-card__details{
  padding-top:13px;
  color:var(--tp-scoop-muted,#5F6F64);
  font-size:14px;
  line-height:1.65;
}
.tp-scoop-card__details[hidden]{
  display:none;
}
.tp-scoop__footer{
  max-width:720px;
  margin:30px auto 0;
  text-align:center;
  color:var(--tp-scoop-muted,#5F6F64);
  font-size:14px;
}
.tp-scoop__editor-placeholder{
  max-width:760px;
  margin:0 auto;
  padding:28px;
  border:1px dashed rgba(20,61,42,.28);
  border-radius:22px;
  background:rgba(255,255,255,.55);
  text-align:center;
}
.tp-scoop__editor-placeholder p{
  margin:8px 0 0;
}
.tp-scoop__editor-placeholder code{
  font-size:.92em;
}

@media(min-width:990px){
  .tp-scoop__stage{
    padding-top:94px;
  }
  .tp-scoop__center{
    position:absolute;
    z-index:2;
    left:50%;
    top:0;
    transform:translate(-50%,-3px);
    margin:0;
  }
  .tp-scoop__grid{
    padding-top:95px;
  }
  .tp-scoop__grid .tp-scoop-card:nth-child(1),
  .tp-scoop__grid .tp-scoop-card:nth-child(2),
  .tp-scoop__grid .tp-scoop-card:nth-child(3){
    margin-top:0;
  }
}
@media(max-width:989px){
  .tp-scoop__grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:649px){
  .tp-scoop{
    padding:48px 0;
  }
  .tp-scoop__inner{
    width:min(100% - 28px,1300px);
  }
  .tp-scoop__header{
    margin-bottom:28px;
  }
  .tp-scoop__intro{
    font-size:15px;
  }
  .tp-scoop__center{
    width:160px;
    height:160px;
  }
  .tp-scoop__bowl{
    width:92px;
  }
  .tp-scoop__grid{
    grid-template-columns:1fr;
    gap:15px;
  }
  .tp-scoop-card{
    display:grid;
    grid-template-columns:118px 1fr;
    border-radius:20px;
  }
  .tp-scoop-card__media{
    aspect-ratio:auto;
    min-height:100%;
  }
  .tp-scoop-card__body{
    padding:18px;
  }
  .tp-scoop-card h3{
    font-size:19px;
  }
  .tp-scoop-card__benefit{
    min-height:0;
    font-size:14px;
  }
}


/* ===== V15.6.0 HOW IT FITS THEIR ROUTINE ===== */
.tp-routine{
  background:var(--tp-routine-bg,#fff);
  color:var(--tp-routine-text,#143D2A);
  padding:clamp(54px,7vw,96px) 0;
}
.tp-routine__inner{
  width:min(var(--tp-page-width,1300px),calc(100% - 40px));
  margin:0 auto;
}
.tp-routine__header{
  max-width:760px;
  margin:0 auto 42px;
  text-align:center;
}
.tp-routine__eyebrow{
  margin:0 0 10px;
  color:var(--tp-routine-accent,#B78D45);
  font-family:var(--tp-button-font);
  font-size:12px;
  font-weight:800;
  letter-spacing:.18em;
}
.tp-routine__header h2{
  margin:0;
  color:var(--tp-routine-text,#143D2A);
}
.tp-routine__intro{
  max-width:620px;
  margin:14px auto 0;
  color:var(--tp-routine-muted,#5F6F64);
  font-size:16px;
  line-height:1.65;
}
.tp-routine__steps{
  display:grid;
  gap:20px;
}
.tp-routine__steps--2{grid-template-columns:repeat(2,minmax(0,1fr));}
.tp-routine__steps--3{grid-template-columns:repeat(3,minmax(0,1fr));}
.tp-routine__steps--4{grid-template-columns:repeat(4,minmax(0,1fr));}

.tp-routine-card{
  position:relative;
  min-width:0;
  padding:22px;
  background:var(--tp-routine-card,#F3F6EC);
  border:1px solid rgba(20,61,42,.09);
  border-radius:var(--tp-routine-radius,24px);
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.tp-routine-card:hover{
  transform:translateY(-4px);
  border-color:color-mix(in srgb,var(--tp-routine-accent,#B78D45) 40%,transparent);
  box-shadow:0 18px 42px rgba(20,61,42,.10);
}
.tp-routine-card__top{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:18px;
}
.tp-routine-card__number{
  width:42px;
  height:42px;
  flex:0 0 42px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:var(--tp-routine-accent,#B78D45);
  color:#fff;
  font-family:var(--tp-button-font);
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  box-shadow:0 8px 20px rgba(183,141,69,.22);
}
.tp-routine-card__connector{
  height:1px;
  flex:1;
  background:linear-gradient(90deg,
    color-mix(in srgb,var(--tp-routine-accent,#B78D45) 52%,transparent),
    rgba(20,61,42,.08)
  );
}
.tp-routine-card__icon{
  width:84px;
  height:84px;
  margin:0 0 19px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:22px;
  background:#fff;
  color:var(--tp-routine-accent,#B78D45);
  box-shadow:0 10px 28px rgba(20,61,42,.06);
}
.tp-routine-card__icon svg{
  width:49px;
  height:49px;
}
.tp-routine-card__media{
  aspect-ratio:1.5/1;
  margin-bottom:20px;
  border-radius:18px;
  overflow:hidden;
  background:#EAF0E1;
}
.tp-routine-card__media img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .35s ease;
}
.tp-routine-card:hover .tp-routine-card__media img{
  transform:scale(1.035);
}
.tp-routine-card__kicker{
  margin:0 0 7px;
  color:var(--tp-routine-accent,#B78D45);
  font-family:var(--tp-button-font);
  font-size:10px;
  font-weight:800;
  letter-spacing:.15em;
}
.tp-routine-card h3{
  margin:0 0 9px;
  color:var(--tp-routine-text,#143D2A);
  font-size:24px;
  line-height:1.12;
}
.tp-routine-card__text{
  color:var(--tp-routine-muted,#5F6F64);
  font-size:15px;
  line-height:1.65;
}
.tp-routine-card__text p:last-child{
  margin-bottom:0;
}
.tp-routine__note{
  max-width:780px;
  margin:28px auto 0;
  padding:15px 18px;
  display:flex;
  align-items:flex-start;
  gap:11px;
  border:1px solid rgba(20,61,42,.09);
  border-radius:16px;
  background:color-mix(in srgb,var(--tp-routine-accent,#B78D45) 7%,white);
  color:var(--tp-routine-muted,#5F6F64);
  font-size:13px;
  line-height:1.55;
}
.tp-routine__note-icon{
  width:21px;
  height:21px;
  flex:0 0 21px;
  color:var(--tp-routine-accent,#B78D45);
}
.tp-routine__note-icon svg{
  width:100%;
  height:100%;
}
.tp-routine__note .rte p{
  margin:0;
}

@media(max-width:989px){
  .tp-routine__steps--3,
  .tp-routine__steps--4{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:649px){
  .tp-routine{
    padding:48px 0;
  }
  .tp-routine__inner{
    width:min(100% - 28px,1300px);
  }
  .tp-routine__header{
    margin-bottom:28px;
  }
  .tp-routine__intro{
    font-size:15px;
  }
  .tp-routine__steps--2,
  .tp-routine__steps--3,
  .tp-routine__steps--4{
    grid-template-columns:1fr;
  }
  .tp-routine-card{
    padding:19px;
  }
  .tp-routine-card__icon{
    width:72px;
    height:72px;
    border-radius:19px;
  }
  .tp-routine-card__icon svg{
    width:43px;
    height:43px;
  }
  .tp-routine-card h3{
    font-size:22px;
  }
}


/* ===== V15.6.1 FULL CART UI CONTROLS ===== */
.tp-cart-page{
  color:var(--tp-cart-text-color,#143D2A) !important;
}
.tp-cart-page,
.tp-cart-page p,
.tp-cart-page span,
.tp-cart-page strong,
.tp-cart-page small,
.tp-cart-page label,
.tp-cart-page a,
.tp-cart-page h1,
.tp-cart-page h2,
.tp-cart-page h3,
.tp-cart-page textarea,
.tp-cart-page input{
  color:var(--tp-cart-text-color,#143D2A);
}
.tp-cart-page .tp-cart-header h1{
  font-size:var(--tp-cart-main-heading-size,48px) !important;
}
.tp-cart-page .tp-cart-summary__card h2{
  font-size:var(--tp-cart-summary-heading-size,32px) !important;
}
.tp-cart-page .tp-cart-item h2,
.tp-cart-page .tp-cart-item h2 a{
  font-size:var(--tp-cart-item-heading-size,20px) !important;
}
.tp-cart-page .tp-cart-empty h1{
  font-size:var(--tp-cart-empty-heading-size,44px) !important;
}
.tp-cart-page .tp-cart-summary__card{
  background:var(--tp-cart-summary-bg,#E8EFDE) !important;
}
.tp-cart-page .tp-cart-checkout{
  background:var(--tp-cart-button-bg,#B78D45) !important;
  border-color:var(--tp-cart-button-bg,#B78D45) !important;
  color:var(--tp-cart-button-text,#fff) !important;
}
.tp-cart-page .tp-cart-checkout span{
  color:inherit !important;
}
.tp-cart-page .tp-cart-checkout:hover{
  background:var(--tp-cart-button-hover,#9D7538) !important;
  border-color:var(--tp-cart-button-hover,#9D7538) !important;
  color:var(--tp-cart-button-text,#fff) !important;
}
.tp-cart-page .tp-cart-trust__icon{
  overflow:hidden;
}
.tp-cart-page .tp-cart-trust__custom-icon{
  display:block !important;
  width:72% !important;
  height:72% !important;
  max-width:34px !important;
  max-height:34px !important;
  object-fit:contain !important;
}
.tp-cart-page .tp-cart-trust__icon svg{
  width:24px;
  height:24px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}


/* ===== V15.6.2 INSIDE THE SCOOP — MOCKUP MATCH ===== */
.tp-scoop-v2{
  background:var(--tp-scoop-bg,#FBF8F0);
  color:var(--tp-scoop-text,#143D2A);
  padding:clamp(58px,7vw,98px) 0;
  overflow:hidden;
}
.tp-scoop-v2__inner{
  width:min(1280px,calc(100% - 40px));
  margin:0 auto;
}
.tp-scoop-v2__header{
  max-width:820px;
  margin:0 auto 34px;
  text-align:center;
}
.tp-scoop-v2__eyebrow{
  margin:0 0 8px;
  color:var(--tp-scoop-accent);
  font-family:var(--tp-button-font);
  font-size:11px;
  font-weight:800;
  letter-spacing:.18em;
}
.tp-scoop-v2__header h2{
  margin:0;
  color:var(--tp-scoop-text);
  font-size:clamp(42px,5.1vw,72px);
  line-height:1;
  letter-spacing:-.035em;
}
.tp-scoop-v2__intro{
  margin:13px auto 0;
  color:var(--tp-scoop-muted);
  font-size:clamp(16px,1.6vw,21px);
  line-height:1.55;
}
.tp-scoop-v2__divider{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:12px;
  margin-top:18px;
}
.tp-scoop-v2__divider span{
  width:70px;
  height:1px;
  background:rgba(20,61,42,.18);
}
.tp-scoop-v2__divider svg,
.tp-scoop-v2__footer svg{
  width:25px;
  fill:var(--tp-scoop-text);
}

.tp-scoop-v2__composition{
  position:relative;
  min-height:590px;
  margin-top:12px;
}
.tp-scoop-v2__center{
  position:absolute;
  left:50%;
  top:50%;
  width:min(390px,34vw);
  aspect-ratio:1/1;
  transform:translate(-50%,-50%);
  z-index:1;
  display:flex;
  align-items:center;
  justify-content:center;
}
.tp-scoop-v2__center-photo{
  width:100%;
  height:100%;
  object-fit:contain;
  filter:drop-shadow(0 20px 28px rgba(77,54,28,.12));
}
.tp-scoop-v2__center-fallback{
  width:250px;
  height:250px;
  border-radius:50%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  background:rgba(255,255,255,.55);
  border:1px solid rgba(183,141,69,.23);
  color:var(--tp-scoop-accent);
}
.tp-scoop-v2__center-fallback svg{
  width:145px;
}
.tp-scoop-v2__center-fallback span{
  width:150px;
  text-align:center;
  color:var(--tp-scoop-text);
  font-family:var(--tp-button-font);
  font-size:10px;
  font-weight:800;
  letter-spacing:.15em;
}

.tp-scoop-v2__ingredients{
  position:absolute;
  inset:0;
  z-index:2;
}
.tp-scoop-v2__ingredient{
  position:absolute;
  width:330px;
}
.tp-scoop-v2__ingredient--1{left:0;top:34px;}
.tp-scoop-v2__ingredient--2{left:0;bottom:32px;}
.tp-scoop-v2__ingredient--3{right:0;top:34px;}
.tp-scoop-v2__ingredient--4{right:0;bottom:32px;}
.tp-scoop-v2__ingredient--5{left:50%;bottom:-74px;transform:translateX(-50%);}
.tp-scoop-v2__ingredient--6{left:50%;top:-54px;transform:translateX(-50%);}

.tp-scoop-v2__ingredient-main{
  width:100%;
  display:grid;
  grid-template-columns:var(--tp-scoop-image-size) 1fr;
  align-items:center;
  gap:20px;
  padding:0;
  background:transparent;
  border:0;
  color:inherit;
  text-align:left;
  cursor:pointer;
}
.tp-scoop-v2__ingredient--3 .tp-scoop-v2__ingredient-main,
.tp-scoop-v2__ingredient--4 .tp-scoop-v2__ingredient-main{
  grid-template-columns:1fr var(--tp-scoop-image-size);
}
.tp-scoop-v2__ingredient--3 .tp-scoop-v2__photo,
.tp-scoop-v2__ingredient--4 .tp-scoop-v2__photo{order:2;}
.tp-scoop-v2__ingredient--3 .tp-scoop-v2__copy,
.tp-scoop-v2__ingredient--4 .tp-scoop-v2__copy{order:1;}

.tp-scoop-v2__photo{
  width:var(--tp-scoop-image-size);
  height:var(--tp-scoop-image-size);
  border-radius:50%;
  overflow:hidden;
  border:5px solid rgba(255,255,255,.92);
  box-shadow:0 10px 28px rgba(35,53,42,.12);
  background:#fff;
  display:block;
}
.tp-scoop-v2__photo img,
.tp-scoop-v2__photo-placeholder{
  width:100%;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  object-fit:cover;
}
.tp-scoop-v2__photo-placeholder{
  color:#81977B;
  background:#EEF2E7;
}
.tp-scoop-v2__photo-placeholder svg{width:58%;}

.tp-scoop-v2__copy{
  display:flex;
  flex-direction:column;
  min-width:0;
}
.tp-scoop-v2__copy strong{
  color:var(--tp-scoop-text);
  font-family:var(--tp-heading-font);
  font-size:24px;
  line-height:1.1;
}
.tp-scoop-v2__copy span{
  margin-top:7px;
  color:var(--tp-scoop-muted);
  font-size:15px;
  line-height:1.5;
}
.tp-scoop-v2__copy em{
  margin-top:7px;
  color:var(--tp-scoop-accent);
  font-family:var(--tp-button-font);
  font-size:10px;
  font-style:normal;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.tp-scoop-v2__line{
  position:absolute;
  top:50%;
  width:105px;
  border-top:2px dotted rgba(20,61,42,.38);
  pointer-events:none;
}
.tp-scoop-v2__ingredient--1 .tp-scoop-v2__line,
.tp-scoop-v2__ingredient--2 .tp-scoop-v2__line{
  left:100%;
}
.tp-scoop-v2__ingredient--3 .tp-scoop-v2__line,
.tp-scoop-v2__ingredient--4 .tp-scoop-v2__line{
  right:100%;
}
.tp-scoop-v2__ingredient--1 .tp-scoop-v2__line{transform:rotate(13deg);transform-origin:left;}
.tp-scoop-v2__ingredient--2 .tp-scoop-v2__line{transform:rotate(-10deg);transform-origin:left;}
.tp-scoop-v2__ingredient--3 .tp-scoop-v2__line{transform:rotate(-13deg);transform-origin:right;}
.tp-scoop-v2__ingredient--4 .tp-scoop-v2__line{transform:rotate(10deg);transform-origin:right;}

.tp-scoop-v2__details{
  margin-top:12px;
  padding:13px 15px;
  background:#fff;
  border:1px solid rgba(20,61,42,.1);
  border-radius:14px;
  color:var(--tp-scoop-muted);
  font-size:13px;
  line-height:1.55;
  box-shadow:0 9px 24px rgba(20,61,42,.07);
}
.tp-scoop-v2__details[hidden]{display:none;}
.tp-scoop-v2__details p:first-child{margin-top:0;}
.tp-scoop-v2__details p:last-child{margin-bottom:0;}

.tp-scoop-v2__why{
  margin-top:28px;
  padding:28px 32px;
  display:grid;
  grid-template-columns:1.15fr 1.35fr;
  gap:28px;
  background:var(--tp-scoop-panel,#fff);
  border:1px solid rgba(20,61,42,.09);
  border-radius:22px;
  box-shadow:0 12px 30px rgba(20,61,42,.07);
}
.tp-scoop-v2__why-copy{
  display:flex;
  align-items:center;
  gap:18px;
}
.tp-scoop-v2__why-icon{
  width:78px;
  height:78px;
  flex:0 0 78px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:#EEF0D9;
  color:var(--tp-scoop-text);
}
.tp-scoop-v2__why-icon svg{width:48px;}
.tp-scoop-v2__why h3{
  margin:0 0 7px;
  color:var(--tp-scoop-text);
  font-size:26px;
}
.tp-scoop-v2__why-copy .rte{
  color:var(--tp-scoop-muted);
  font-size:14px;
  line-height:1.55;
}
.tp-scoop-v2__claims{
  display:grid;
  grid-template-columns:repeat(4,1fr);
}
.tp-scoop-v2__claim{
  min-width:0;
  padding:0 14px;
  border-left:1px solid rgba(20,61,42,.12);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
  text-align:center;
}
.tp-scoop-v2__claim svg{
  width:38px;
  height:38px;
  color:var(--tp-scoop-text);
}
.tp-scoop-v2__claim span{
  color:var(--tp-scoop-muted);
  font-size:12px;
  line-height:1.35;
}

.tp-scoop-v2__footer{
  margin-top:28px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  color:var(--tp-scoop-text);
  text-align:center;
}
.tp-scoop-v2__footer .rte{
  font-family:var(--tp-heading-font);
  font-size:18px;
}
.tp-scoop-v2__footer p{margin:0;}
.tp-scoop-v2__editor-placeholder{
  padding:28px;
  border:1px dashed rgba(20,61,42,.25);
  border-radius:18px;
  text-align:center;
}

@media(max-width:1090px){
  .tp-scoop-v2__composition{
    min-height:720px;
  }
  .tp-scoop-v2__center{
    top:47%;
    width:330px;
  }
  .tp-scoop-v2__ingredient{
    width:300px;
  }
  .tp-scoop-v2__ingredient-main{
    grid-template-columns:125px 1fr;
  }
  .tp-scoop-v2__ingredient--3 .tp-scoop-v2__ingredient-main,
  .tp-scoop-v2__ingredient--4 .tp-scoop-v2__ingredient-main{
    grid-template-columns:1fr 125px;
  }
  .tp-scoop-v2__photo{
    width:125px;
    height:125px;
  }
  .tp-scoop-v2__line{width:60px;}
  .tp-scoop-v2__why{
    grid-template-columns:1fr;
  }
}
@media(max-width:820px){
  .tp-scoop-v2__composition{
    min-height:0;
    display:flex;
    flex-direction:column;
    gap:24px;
  }
  .tp-scoop-v2__center{
    position:relative;
    left:auto;
    top:auto;
    width:min(360px,82vw);
    margin:0 auto;
    transform:none;
    order:1;
  }
  .tp-scoop-v2__ingredients{
    position:relative;
    inset:auto;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:24px 18px;
    order:2;
  }
  .tp-scoop-v2__ingredient,
  .tp-scoop-v2__ingredient--1,
  .tp-scoop-v2__ingredient--2,
  .tp-scoop-v2__ingredient--3,
  .tp-scoop-v2__ingredient--4,
  .tp-scoop-v2__ingredient--5,
  .tp-scoop-v2__ingredient--6{
    position:relative;
    left:auto;
    right:auto;
    top:auto;
    bottom:auto;
    width:auto;
    transform:none;
  }
  .tp-scoop-v2__ingredient-main,
  .tp-scoop-v2__ingredient--3 .tp-scoop-v2__ingredient-main,
  .tp-scoop-v2__ingredient--4 .tp-scoop-v2__ingredient-main{
    grid-template-columns:110px 1fr;
  }
  .tp-scoop-v2__ingredient--3 .tp-scoop-v2__photo,
  .tp-scoop-v2__ingredient--4 .tp-scoop-v2__photo,
  .tp-scoop-v2__ingredient--3 .tp-scoop-v2__copy,
  .tp-scoop-v2__ingredient--4 .tp-scoop-v2__copy{
    order:initial;
  }
  .tp-scoop-v2__photo{
    width:110px;
    height:110px;
  }
  .tp-scoop-v2__line{display:none;}
  .tp-scoop-v2__claims{
    grid-template-columns:repeat(2,1fr);
    gap:20px 0;
  }
}
@media(max-width:580px){
  .tp-scoop-v2{
    padding:48px 0;
  }
  .tp-scoop-v2__inner{
    width:min(100% - 28px,1280px);
  }
  .tp-scoop-v2__header h2{
    font-size:42px;
  }
  .tp-scoop-v2__ingredients{
    grid-template-columns:1fr;
  }
  .tp-scoop-v2__ingredient-main,
  .tp-scoop-v2__ingredient--3 .tp-scoop-v2__ingredient-main,
  .tp-scoop-v2__ingredient--4 .tp-scoop-v2__ingredient-main{
    grid-template-columns:96px 1fr;
  }
  .tp-scoop-v2__photo{
    width:96px;
    height:96px;
  }
  .tp-scoop-v2__copy strong{
    font-size:20px;
  }
  .tp-scoop-v2__why{
    padding:22px 20px;
  }
  .tp-scoop-v2__why-copy{
    align-items:flex-start;
  }
  .tp-scoop-v2__why-icon{
    width:58px;
    height:58px;
    flex-basis:58px;
  }
  .tp-scoop-v2__why-icon svg{
    width:35px;
  }
  .tp-scoop-v2__claims{
    grid-template-columns:1fr 1fr;
  }
  .tp-scoop-v2__claim{
    padding:12px;
  }
}


/* ===== V15.6.3 FORCED INSIDE THE SCOOP VISUAL SECTION ===== */
.tp-scoop-v2--forced{
  position:relative;
}
.tp-scoop-v2--forced .tp-scoop-v2__composition{
  border-radius:32px;
}
.tp-scoop-v2--forced .tp-scoop-v2__photo{
  box-shadow:0 12px 34px rgba(20,61,42,.16) !important;
}


/* ===== V15.6.4 TIGHTER SCOOP + BIGGER SAGE POPUP ===== */

/* Make the real wooden scoop substantially larger. */
.tp-scoop-v2--forced .tp-scoop-v2__center{
  width:min(510px,42vw) !important;
}
.tp-scoop-v2--forced .tp-scoop-v2__center-photo{
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  filter:drop-shadow(0 22px 30px rgba(76,55,31,.16)) !important;
}
.tp-scoop-v2--forced .tp-scoop-v2__center-photo--default{
  transform:scale(1.08);
}

/* Pull all four main ingredient callouts inward toward the scoop. */
.tp-scoop-v2--forced .tp-scoop-v2__ingredient{
  width:370px !important;
}
.tp-scoop-v2--forced .tp-scoop-v2__ingredient--1{
  left:62px !important;
  top:54px !important;
}
.tp-scoop-v2--forced .tp-scoop-v2__ingredient--2{
  left:62px !important;
  bottom:54px !important;
}
.tp-scoop-v2--forced .tp-scoop-v2__ingredient--3{
  right:62px !important;
  top:54px !important;
}
.tp-scoop-v2--forced .tp-scoop-v2__ingredient--4{
  right:62px !important;
  bottom:54px !important;
}

/* Larger circles. */
.tp-scoop-v2--forced .tp-scoop-v2__photo{
  width:var(--tp-scoop-image-size,180px) !important;
  height:var(--tp-scoop-image-size,180px) !important;
  border-width:6px !important;
}
.tp-scoop-v2--forced .tp-scoop-v2__ingredient-main{
  grid-template-columns:var(--tp-scoop-image-size,180px) 1fr !important;
  gap:18px !important;
}
.tp-scoop-v2--forced .tp-scoop-v2__ingredient--3 .tp-scoop-v2__ingredient-main,
.tp-scoop-v2--forced .tp-scoop-v2__ingredient--4 .tp-scoop-v2__ingredient-main{
  grid-template-columns:1fr var(--tp-scoop-image-size,180px) !important;
}

/* Shorter connector lines = ingredients sit visually closer to the scoop. */
.tp-scoop-v2--forced .tp-scoop-v2__line{
  width:52px !important;
  top:calc(var(--tp-scoop-image-size,180px) / 2) !important;
}

/*
  IMPORTANT: details are absolute overlays.
  Opening them no longer changes the article height, so connector lines
  stay in exactly the same place instead of jumping.
*/
.tp-scoop-v2--forced .tp-scoop-v2__ingredient{
  isolation:isolate;
}
.tp-scoop-v2--forced .tp-scoop-v2__details{
  position:absolute !important;
  z-index:20 !important;
  top:calc(var(--tp-scoop-image-size,180px) + 14px) !important;
  left:20px !important;
  width:min(360px,calc(100vw - 40px)) !important;
  margin:0 !important;
  padding:22px 48px 22px 22px !important;
  border:1px solid rgba(20,61,42,.13) !important;
  border-radius:20px !important;
  background:#DCE6D1 !important;
  color:#203C2D !important;
  box-shadow:0 18px 42px rgba(20,61,42,.16) !important;
  font-size:16px !important;
  line-height:1.62 !important;
}
.tp-scoop-v2--forced .tp-scoop-v2__ingredient--3 .tp-scoop-v2__details,
.tp-scoop-v2--forced .tp-scoop-v2__ingredient--4 .tp-scoop-v2__details{
  left:auto !important;
  right:20px !important;
}
.tp-scoop-v2--forced .tp-scoop-v2__details-content,
.tp-scoop-v2--forced .tp-scoop-v2__details-content p{
  font-size:16px !important;
  line-height:1.62 !important;
  color:#203C2D !important;
}
.tp-scoop-v2--forced .tp-scoop-v2__details-content p:first-child{
  margin-top:0 !important;
}
.tp-scoop-v2--forced .tp-scoop-v2__details-content p:last-child{
  margin-bottom:0 !important;
}
.tp-scoop-v2--forced .tp-scoop-v2__details-close{
  position:absolute;
  top:13px;
  right:13px;
  width:30px;
  height:30px;
  padding:0;
  border:0;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(255,255,255,.58);
  color:#203C2D;
  cursor:pointer;
}
.tp-scoop-v2--forced .tp-scoop-v2__details-close:hover{
  background:#fff;
}
.tp-scoop-v2--forced .tp-scoop-v2__details-close svg{
  width:16px;
  height:16px;
}

/* Slightly stronger ingredient typography. */
.tp-scoop-v2--forced .tp-scoop-v2__copy strong{
  font-size:26px !important;
}
.tp-scoop-v2--forced .tp-scoop-v2__copy span{
  font-size:16px !important;
}

/* Keep opened ingredient visually highlighted without moving anything. */
.tp-scoop-v2--forced .tp-scoop-v2__ingredient.is-open .tp-scoop-v2__photo{
  border-color:#A9B99A !important;
  box-shadow:0 14px 34px rgba(20,61,42,.20) !important;
}

/* Responsive safeguards */
@media(max-width:1090px){
  .tp-scoop-v2--forced .tp-scoop-v2__center{
    width:380px !important;
  }
  .tp-scoop-v2--forced .tp-scoop-v2__ingredient{
    width:310px !important;
  }
  .tp-scoop-v2--forced .tp-scoop-v2__ingredient--1,
  .tp-scoop-v2--forced .tp-scoop-v2__ingredient--2{
    left:14px !important;
  }
  .tp-scoop-v2--forced .tp-scoop-v2__ingredient--3,
  .tp-scoop-v2--forced .tp-scoop-v2__ingredient--4{
    right:14px !important;
  }
}
@media(max-width:820px){
  .tp-scoop-v2--forced .tp-scoop-v2__center{
    width:min(400px,88vw) !important;
  }
  .tp-scoop-v2--forced .tp-scoop-v2__ingredient,
  .tp-scoop-v2--forced .tp-scoop-v2__ingredient--1,
  .tp-scoop-v2--forced .tp-scoop-v2__ingredient--2,
  .tp-scoop-v2--forced .tp-scoop-v2__ingredient--3,
  .tp-scoop-v2--forced .tp-scoop-v2__ingredient--4{
    width:auto !important;
    left:auto !important;
    right:auto !important;
  }
  .tp-scoop-v2--forced .tp-scoop-v2__photo{
    width:125px !important;
    height:125px !important;
  }
  .tp-scoop-v2--forced .tp-scoop-v2__ingredient-main,
  .tp-scoop-v2--forced .tp-scoop-v2__ingredient--3 .tp-scoop-v2__ingredient-main,
  .tp-scoop-v2--forced .tp-scoop-v2__ingredient--4 .tp-scoop-v2__ingredient-main{
    grid-template-columns:125px 1fr !important;
  }
  .tp-scoop-v2--forced .tp-scoop-v2__details,
  .tp-scoop-v2--forced .tp-scoop-v2__ingredient--3 .tp-scoop-v2__details,
  .tp-scoop-v2--forced .tp-scoop-v2__ingredient--4 .tp-scoop-v2__details{
    position:relative !important;
    top:auto !important;
    left:auto !important;
    right:auto !important;
    width:100% !important;
    margin-top:12px !important;
  }
}


/* ===== V15.6.5 INSIDE THE SCOOP — EXACT MOCKUP LAYOUT ===== */
.tp-scoop-v3{
  background:var(--tp-scoop-v3-bg,#FCF8EF);
  color:var(--tp-scoop-v3-text,#143D2A);
  padding:64px 0 58px;
  overflow:hidden;
}
.tp-scoop-v3__inner{
  width:min(1380px,calc(100% - 40px));
  margin:0 auto;
}
.tp-scoop-v3__header{
  text-align:center;
  margin:0 auto 20px;
}
.tp-scoop-v3__header h2{
  margin:0;
  color:var(--tp-scoop-v3-text);
  font-family:var(--tp-heading-font);
  font-size:clamp(56px,6.3vw,94px) !important;
  line-height:.98;
  letter-spacing:-.045em;
}
.tp-scoop-v3__intro{
  margin:12px auto 0;
  color:var(--tp-scoop-v3-muted);
  font-family:var(--tp-heading-font);
  font-size:clamp(18px,1.8vw,27px);
  line-height:1.45;
}
.tp-scoop-v3__intro p{margin:0;}
.tp-scoop-v3__divider{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  margin-top:18px;
}
.tp-scoop-v3__divider span{
  width:82px;
  height:1px;
  background:#789681;
}
.tp-scoop-v3__divider svg{
  width:28px;
  fill:var(--tp-scoop-v3-text);
}

.tp-scoop-v3__stage{
  position:relative;
  height:610px;
  margin-top:6px;
}
.tp-scoop-v3__center{
  position:absolute;
  z-index:1;
  left:50%;
  top:50%;
  width:600px;
  height:590px;
  transform:translate(-50%,-50%);
  pointer-events:none;
}
.tp-scoop-v3__center-image{
  width:100%;
  height:100%;
  object-fit:contain;
  filter:drop-shadow(0 20px 32px rgba(76,55,31,.14));
}

/* Ingredient positioning mirrors the mockup. */
.tp-scoop-v3__item{
  position:absolute;
  z-index:3;
  width:390px;
}
.tp-scoop-v3__item--1{left:10px;top:40px;}
.tp-scoop-v3__item--2{left:10px;bottom:32px;}
.tp-scoop-v3__item--3{right:10px;top:40px;}
.tp-scoop-v3__item--4{right:10px;bottom:32px;}

.tp-scoop-v3__trigger{
  width:100%;
  border:0;
  padding:0;
  background:transparent;
  display:grid;
  grid-template-columns:1fr var(--tp-scoop-v3-circle);
  align-items:center;
  gap:18px;
  color:inherit;
  text-align:left;
  cursor:pointer;
}
.tp-scoop-v3__item--1 .tp-scoop-v3__trigger,
.tp-scoop-v3__item--2 .tp-scoop-v3__trigger{
  grid-template-columns:1fr var(--tp-scoop-v3-circle);
}
.tp-scoop-v3__item--1 .tp-scoop-v3__copy,
.tp-scoop-v3__item--2 .tp-scoop-v3__copy{
  order:1;
}
.tp-scoop-v3__item--1 .tp-scoop-v3__circle,
.tp-scoop-v3__item--2 .tp-scoop-v3__circle{
  order:2;
}
.tp-scoop-v3__item--3 .tp-scoop-v3__trigger,
.tp-scoop-v3__item--4 .tp-scoop-v3__trigger{
  grid-template-columns:var(--tp-scoop-v3-circle) 1fr;
}
.tp-scoop-v3__item--3 .tp-scoop-v3__circle,
.tp-scoop-v3__item--4 .tp-scoop-v3__circle{
  order:1;
}
.tp-scoop-v3__item--3 .tp-scoop-v3__copy,
.tp-scoop-v3__item--4 .tp-scoop-v3__copy{
  order:2;
}

.tp-scoop-v3__circle{
  width:var(--tp-scoop-v3-circle);
  height:var(--tp-scoop-v3-circle);
  overflow:hidden;
  border-radius:50%;
  background:#fff;
  border:6px solid rgba(255,255,255,.95);
  box-shadow:0 10px 28px rgba(20,61,42,.13);
  transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease;
}
.tp-scoop-v3__circle img,
.tp-scoop-v3__placeholder{
  width:100%;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  object-fit:cover;
}
.tp-scoop-v3__placeholder{
  background:#EEF2E7;
  color:#77916F;
}
.tp-scoop-v3__placeholder svg{width:55%;}

.tp-scoop-v3__copy{
  display:flex;
  flex-direction:column;
  min-width:0;
}
.tp-scoop-v3__copy strong{
  color:var(--tp-scoop-v3-text);
  font-family:var(--tp-heading-font);
  font-size:31px;
  line-height:1.05;
}
.tp-scoop-v3__copy span{
  margin-top:8px;
  color:var(--tp-scoop-v3-muted);
  font-size:17px;
  line-height:1.48;
}
.tp-scoop-v3__copy em{
  margin-top:8px;
  color:#9B6844;
  font-family:var(--tp-button-font);
  font-size:11px;
  font-style:normal;
  font-weight:800;
  letter-spacing:.10em;
  text-transform:uppercase;
}

.tp-scoop-v3__connector{
  position:absolute;
  top:50%;
  width:78px;
  border-top:2px dashed var(--tp-scoop-v3-line,#52765F);
  pointer-events:none;
  opacity:.9;
}
.tp-scoop-v3__item--1 .tp-scoop-v3__connector,
.tp-scoop-v3__item--2 .tp-scoop-v3__connector{
  left:calc(100% - 5px);
  transform-origin:left;
}
.tp-scoop-v3__item--3 .tp-scoop-v3__connector,
.tp-scoop-v3__item--4 .tp-scoop-v3__connector{
  right:calc(100% - 5px);
  transform-origin:right;
}
.tp-scoop-v3__item--1 .tp-scoop-v3__connector{transform:rotate(12deg);}
.tp-scoop-v3__item--2 .tp-scoop-v3__connector{transform:rotate(-10deg);}
.tp-scoop-v3__item--3 .tp-scoop-v3__connector{transform:rotate(-12deg);}
.tp-scoop-v3__item--4 .tp-scoop-v3__connector{transform:rotate(10deg);}

/* Popup overlays without shifting item/connector positions. */
.tp-scoop-v3__popup{
  position:absolute;
  z-index:30;
  top:-40px;
  width:310px;
  padding:26px 24px 22px;
  background:var(--tp-scoop-v3-sage,#DCE6D1);
  border:1px solid rgba(20,61,42,.10);
  border-radius:22px;
  box-shadow:0 18px 44px rgba(20,61,42,.18);
  color:var(--tp-scoop-v3-text);
}
.tp-scoop-v3__popup[hidden]{display:none;}
.tp-scoop-v3__item--1 .tp-scoop-v3__popup,
.tp-scoop-v3__item--2 .tp-scoop-v3__popup{
  left:100%;
  margin-left:18px;
}
.tp-scoop-v3__item--3 .tp-scoop-v3__popup,
.tp-scoop-v3__item--4 .tp-scoop-v3__popup{
  right:100%;
  margin-right:18px;
}
.tp-scoop-v3__popup::before{
  content:"";
  position:absolute;
  top:82px;
  width:0;
  height:0;
  border-top:18px solid transparent;
  border-bottom:18px solid transparent;
}
.tp-scoop-v3__item--1 .tp-scoop-v3__popup::before,
.tp-scoop-v3__item--2 .tp-scoop-v3__popup::before{
  right:100%;
  border-right:20px solid var(--tp-scoop-v3-sage,#DCE6D1);
}
.tp-scoop-v3__item--3 .tp-scoop-v3__popup::before,
.tp-scoop-v3__item--4 .tp-scoop-v3__popup::before{
  left:100%;
  border-left:20px solid var(--tp-scoop-v3-sage,#DCE6D1);
}
.tp-scoop-v3__popup h3{
  margin:0;
  padding-right:28px;
  font-family:var(--tp-heading-font);
  font-size:34px;
  line-height:1.02;
  color:var(--tp-scoop-v3-text);
}
.tp-scoop-v3__popup-sub{
  margin:6px 0 0;
  font-size:20px;
  line-height:1.25;
  color:var(--tp-scoop-v3-text);
}
.tp-scoop-v3__popup-rule{
  margin:14px 0 14px;
  height:1px;
  background:rgba(20,61,42,.28);
}
.tp-scoop-v3__popup-text,
.tp-scoop-v3__popup-text p{
  margin:0;
  color:var(--tp-scoop-v3-muted);
  font-size:17px;
  line-height:1.55;
}
.tp-scoop-v3__popup-close{
  position:absolute;
  right:14px;
  top:13px;
  width:32px;
  height:32px;
  padding:0;
  border:0;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:transparent;
  color:var(--tp-scoop-v3-text);
  cursor:pointer;
}
.tp-scoop-v3__popup-close:hover{
  background:rgba(255,255,255,.55);
}
.tp-scoop-v3__popup-close svg{width:19px;height:19px;}
.tp-scoop-v3__popup-badge{
  margin-top:16px;
  padding:10px 13px;
  display:flex;
  align-items:center;
  gap:9px;
  border-radius:16px;
  background:rgba(255,255,255,.72);
  box-shadow:0 5px 14px rgba(20,61,42,.07);
  font-size:14px;
  line-height:1.25;
  font-weight:700;
}
.tp-scoop-v3__popup-badge svg{
  width:26px;
  flex:0 0 26px;
  fill:var(--tp-scoop-v3-text);
}
.tp-scoop-v3__item.is-open .tp-scoop-v3__circle{
  border-color:#9EB296;
  box-shadow:0 13px 34px rgba(20,61,42,.20);
}

/* Why panel */
.tp-scoop-v3__why{
  margin-top:4px;
  padding:28px 30px;
  display:grid;
  grid-template-columns:1.05fr 1.4fr;
  gap:28px;
  align-items:center;
  background:var(--tp-scoop-v3-panel,#FFFDF8);
  border:1px solid rgba(20,61,42,.09);
  border-radius:22px;
  box-shadow:0 12px 30px rgba(20,61,42,.07);
}
.tp-scoop-v3__why-main{
  display:flex;
  align-items:center;
  gap:20px;
}
.tp-scoop-v3__why-icon{
  width:104px;
  height:104px;
  flex:0 0 104px;
  border-radius:50%;
  background:#DCE6D1;
  display:flex;
  align-items:center;
  justify-content:center;
  color:var(--tp-scoop-v3-text);
}
.tp-scoop-v3__why-icon svg{width:61px;}
.tp-scoop-v3__why-main h3{
  margin:0 0 8px;
  font-family:var(--tp-heading-font);
  font-size:34px;
  line-height:1.08;
}
.tp-scoop-v3__why-main .rte,
.tp-scoop-v3__why-main .rte p{
  margin:0;
  color:var(--tp-scoop-v3-muted);
  font-size:15px;
  line-height:1.5;
}
.tp-scoop-v3__claims{
  display:grid;
  grid-template-columns:repeat(4,1fr);
}
.tp-scoop-v3__claim{
  min-height:118px;
  padding:7px 18px;
  border-left:1px solid rgba(20,61,42,.13);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
  text-align:center;
}
.tp-scoop-v3__claim svg{
  width:48px;
  height:48px;
  color:var(--tp-scoop-v3-text);
}
.tp-scoop-v3__claim span{
  color:var(--tp-scoop-v3-muted);
  font-size:13px;
  line-height:1.4;
}
.tp-scoop-v3__footer{
  margin:28px auto 0;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
}
.tp-scoop-v3__footer > span{
  width:180px;
  height:1px;
  background:#789681;
}
.tp-scoop-v3__footer svg{
  width:28px;
  fill:var(--tp-scoop-v3-text);
}
.tp-scoop-v3__footer .rte,
.tp-scoop-v3__footer .rte p{
  margin:0;
  color:var(--tp-scoop-v3-text);
  font-family:var(--tp-heading-font);
  font-size:18px;
}
.tp-scoop-v3__empty{
  padding:28px;
  border:1px dashed rgba(20,61,42,.25);
  border-radius:18px;
  text-align:center;
}

/* Tablet */
@media(max-width:1120px){
  .tp-scoop-v3__stage{
    height:720px;
  }
  .tp-scoop-v3__center{
    width:500px;
    height:620px;
  }
  .tp-scoop-v3__item{
    width:330px;
  }
  .tp-scoop-v3__copy strong{font-size:26px;}
  .tp-scoop-v3__copy span{font-size:15px;}
  .tp-scoop-v3__connector{width:52px;}
  .tp-scoop-v3__why{
    grid-template-columns:1fr;
  }
}

/* Mobile: center scoop first, then clean 2-column cards. */
@media(max-width:820px){
  .tp-scoop-v3{
    padding:48px 0;
  }
  .tp-scoop-v3__inner{
    width:min(100% - 28px,1380px);
  }
  .tp-scoop-v3__header h2{
    font-size:46px !important;
  }
  .tp-scoop-v3__stage{
    height:auto;
    display:flex;
    flex-direction:column;
    gap:22px;
  }
  .tp-scoop-v3__center{
    position:relative;
    left:auto;
    top:auto;
    width:min(440px,94vw);
    height:430px;
    margin:0 auto;
    transform:none;
    order:1;
  }
  .tp-scoop-v3__items{
    order:2;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:22px 16px;
  }
  .tp-scoop-v3__item,
  .tp-scoop-v3__item--1,
  .tp-scoop-v3__item--2,
  .tp-scoop-v3__item--3,
  .tp-scoop-v3__item--4{
    position:relative;
    left:auto;
    right:auto;
    top:auto;
    bottom:auto;
    width:auto;
  }
  .tp-scoop-v3__trigger,
  .tp-scoop-v3__item--1 .tp-scoop-v3__trigger,
  .tp-scoop-v3__item--2 .tp-scoop-v3__trigger,
  .tp-scoop-v3__item--3 .tp-scoop-v3__trigger,
  .tp-scoop-v3__item--4 .tp-scoop-v3__trigger{
    grid-template-columns:110px 1fr;
  }
  .tp-scoop-v3__circle{
    width:110px;
    height:110px;
  }
  .tp-scoop-v3__copy,
  .tp-scoop-v3__circle{
    order:initial !important;
  }
  .tp-scoop-v3__copy strong{font-size:22px;}
  .tp-scoop-v3__copy span{font-size:14px;}
  .tp-scoop-v3__connector{
    display:none;
  }
  .tp-scoop-v3__popup,
  .tp-scoop-v3__item--1 .tp-scoop-v3__popup,
  .tp-scoop-v3__item--2 .tp-scoop-v3__popup,
  .tp-scoop-v3__item--3 .tp-scoop-v3__popup,
  .tp-scoop-v3__item--4 .tp-scoop-v3__popup{
    position:relative;
    left:auto;
    right:auto;
    top:auto;
    width:100%;
    margin:12px 0 0;
  }
  .tp-scoop-v3__popup::before{display:none;}
  .tp-scoop-v3__why{
    margin-top:34px;
  }
  .tp-scoop-v3__claims{
    grid-template-columns:repeat(2,1fr);
  }
}

/* Small mobile */
@media(max-width:580px){
  .tp-scoop-v3__items{
    grid-template-columns:1fr;
  }
  .tp-scoop-v3__trigger,
  .tp-scoop-v3__item--1 .tp-scoop-v3__trigger,
  .tp-scoop-v3__item--2 .tp-scoop-v3__trigger,
  .tp-scoop-v3__item--3 .tp-scoop-v3__trigger,
  .tp-scoop-v3__item--4 .tp-scoop-v3__trigger{
    grid-template-columns:100px 1fr;
  }
  .tp-scoop-v3__circle{
    width:100px;
    height:100px;
  }
  .tp-scoop-v3__why{
    padding:22px 18px;
  }
  .tp-scoop-v3__why-main{
    align-items:flex-start;
  }
  .tp-scoop-v3__why-icon{
    width:68px;
    height:68px;
    flex-basis:68px;
  }
  .tp-scoop-v3__why-icon svg{width:40px;}
  .tp-scoop-v3__why-main h3{font-size:27px;}
  .tp-scoop-v3__footer > span{width:60px;}
  .tp-scoop-v3__footer .rte,
  .tp-scoop-v3__footer .rte p{font-size:15px;}
}
