/** Shopify CDN: Minification failed

Line 198:14 Unexpected ";"

**/
/* pdp-premium.css
   Depth layer for the ripped PDP: gradients, elevation and light on top of the
   flat blocks. Palette stays REMERDY: oxblood #4a2028, gold #c9a24a, cream.
   The bundle cards and the add-to-cart block are deliberately untouched. */

:root{
  --rem-red:#4a2028;
  --rem-red-lift:#652531;
  --rem-red-deep:#32151a;
  --rem-red-ink:#311218;
  --rem-gold:#c9a24a;
  --rem-gold-soft:#e7c873;
  --rem-cream:#fdfcf8;
  --rem-ivory:#faf7f0;
  --rem-line:#e6e1d6;
  --rem-shadow:59,7,8;
}

/* ---------- page ground ---------- */
body{
  background-image:linear-gradient(180deg,#fdfcf8 0%,#faf7f0 42%,#fdfcf8 100%);
}

/* ---------- light sections get air and a warm wash ---------- */
.el-pdt-section,
.el-pdp-signs,
.el-pdp-solution,
.el-pdp-days,
.el-pdp-table,
.el-pdp-faq-top,
.el-pdp-faq-bottom,
.el-pdp-review2,
.el-pdp-GMP-certified{
  background-image:
    radial-gradient(110% 70% at 50% 0%, rgba(201,162,74,.09) 0%, rgba(201,162,74,0) 62%),
    linear-gradient(180deg,#fffefb 0%, #faf7f0 100%);
  border-top:1px solid rgba(230,225,214,.85);
}

/* ---------- deep panels: lit oxblood instead of flat fill ---------- */
.el-pdp-number,
.el-pdp-reviews,
.el-pdp-risk .el-image-with-text-content,
.el-pdp-table-item2 ul{
  background-image:
    radial-gradient(120% 95% at 12% -10%, rgba(231,200,115,.22) 0%, rgba(231,200,115,0) 58%),
    radial-gradient(90% 80% at 100% 110%, rgba(0,0,0,.40) 0%, rgba(0,0,0,0) 62%),
    linear-gradient(158deg, var(--rem-red-lift) 0%, var(--rem-red-deep) 48%, var(--rem-red-ink) 100%);
  box-shadow:inset 0 1px 0 rgba(231,200,115,.28);
}
.el-pdp-number,
.el-pdp-reviews{position:relative;overflow:hidden}
/* a slow shaft of light so the dark blocks are not dead flat */
.el-pdp-number::after,
.el-pdp-reviews::after{
  content:"";position:absolute;inset:-40% -20% auto -20%;height:70%;
  background:radial-gradient(60% 100% at 30% 0%, rgba(255,240,214,.10) 0%, rgba(255,240,214,0) 70%);
  pointer-events:none;
}

/* ---------- eyebrows in gold ---------- */
.el-global-sub-heading p{
  color:var(--rem-gold);
  letter-spacing:.13em;
  font-size:12.5px;
}
.el-pdp-number .el-global-sub-heading p,
.el-pdp-reviews .el-global-sub-heading p{color:var(--rem-gold-soft)}

/* ---------- media: rounded, lifted ---------- */
.el-pdp-days .el-media img,
.el-pdp-solution .el-media img,
.el-pdp-risk .el-media img,
.el-pdp-signs2 .el-media img{
  box-shadow:0 22px 42px -26px rgba(var(--rem-shadow),.55);
}/* product gallery: soft depth under the main shot */



/* ---------- cards ---------- */
.el-review-card_main{
  background-image:linear-gradient(180deg,#ffffff 0%, #fbf9f3 100%);
  border:1px solid rgba(230,225,214,.9);
  box-shadow:0 20px 40px -28px rgba(var(--rem-shadow),.45);
}
.el-pdp-table-item{
  background-image:linear-gradient(180deg,#f7f5ec 0%, #efece1 100%);
  box-shadow:0 18px 34px -28px rgba(var(--rem-shadow),.4);
}
.el-global-faq{
  transition:background-color .3s ease;
}
.el-global-faq:hover{background-color:rgba(201,162,74,.06)}

/* ---------- science tabs ---------- */
.el-pdp-tab .el-element-text ul li{
  background-image:linear-gradient(180deg,#ffffff 0%, #f6f3ea 100%);
  border-color:rgba(133,15,18,.16);
  box-shadow:0 6px 14px -10px rgba(var(--rem-shadow),.35);
}
.el-pdp-tab .el-element-text ul li.el-active{
  background-image:linear-gradient(160deg,#812c3d 0%, #32151a 100%);
  border-color:transparent;
  box-shadow:0 12px 22px -12px rgba(var(--rem-shadow),.65), inset 0 1px 0 rgba(255,255,255,.18);
}

/* ---------- trust marquee: fades at both edges ---------- */
.el-hp-bar{
  background-image:linear-gradient(90deg,#f7f5ee 0%, #fdfcf8 50%, #f7f5ee 100%);
  border-top:1px solid rgba(230,225,214,.9);
  border-bottom:1px solid rgba(230,225,214,.9);
  -webkit-mask-image:linear-gradient(90deg,transparent 0, #000 8%, #000 92%, transparent 100%);
          mask-image:linear-gradient(90deg,transparent 0, #000 8%, #000 92%, transparent 100%);
}

/* ---------- sticky bar: frosted, lifted ---------- */
.el-pdp-sticky{
  background-image:linear-gradient(180deg, rgba(253,252,248,.88) 0%, rgba(250,247,240,.97) 100%);
  -webkit-backdrop-filter:saturate(140%) blur(14px);
          backdrop-filter:saturate(140%) blur(14px);
  border-top:1px solid rgba(230,225,214,.9);
  box-shadow:0 -12px 34px -22px rgba(var(--rem-shadow),.55);
}
.el-pdp-sticky .el-button{
  background-image:linear-gradient(160deg,#812c3d 0%, #4a2028 45%, #541d28 100%);
  box-shadow:0 14px 26px -14px rgba(var(--rem-shadow),.7), inset 0 1px 0 rgba(255,255,255,.16);
  transition:transform .25s ease, box-shadow .25s ease;
}
.el-pdp-sticky .el-button:hover{
  transform:translateY(-1px);
  box-shadow:0 18px 30px -14px rgba(var(--rem-shadow),.75), inset 0 1px 0 rgba(255,255,255,.2);
}

/* ---------- reveal on scroll ---------- */
@media (prefers-reduced-motion: no-preference){
  .pdp-reveal{opacity:0;transform:translateY(16px)}
  .pdp-reveal.is-in{opacity:1;transform:none;
    transition:opacity .75s cubic-bezier(.2,.7,.2,1), transform .75s cubic-bezier(.2,.7,.2,1)}
}

/* ---------- trust badge strip ---------- */
/* Their tiles were filled with the same brown as the panel, so on the gradient
   they read as smudges. Square them, lift them with a translucent wash and a
   gold hairline instead. */

.el-pdp-GMP-certified .el-icon-with-text-flex{
  background-color:#5c3039;
  border:1px solid rgba(231,200,115,.30);
  border-radius:0;
  padding:18px 10px;
  min-height:112px;
  justify-content:center;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}
.el-pdp-GMP-certified .el-element-text p{
  text-wrap:balance;
  line-height:1.25;
}
.el-pdp-GMP-certified .el-media img{filter:drop-shadow(0 4px 10px rgba(0,0,0,.35))}

/* ---------- squared edges on the ripped blocks ---------- */
.el-element-sub-option,
.el-pdp-table-item,
.el-pdp-table-item1,
.el-pdp-table-item2 ul,
.el-pdp-table-item3,
.el-review-card_main,
.el-global-faq{border-radius:0}


/* ---------- line-art tiles ship on a white square ---------- */
/* Their art is drawn on solid white. On their site the section was pure white
   so the square never showed. Multiply blends the white into the cream instead
   of masking it with a rounded corner. */
.el-pdp-signs .el-media img,
.el-pdp-table .el-media img,
.el-pdp-table-img img{
  mix-blend-mode:multiply;
  box-shadow:none;
}

/* ---------- guarantee seal ---------- */
/* Their slot was sized for a square webp; the gold seal is wider than tall,
   so it must keep its own ratio instead of being stretched to fill. */
.el-pdp-risk-img1 img{
  height:auto;
  object-fit:contain;
  width:100%;
  max-width:170px;
}

/* ---------- proof row, title tag, feature pills ---------- */
  display:flex;align-items:center;gap:12px;
  padding:10px 14px 10px 10px;margin:0 0 14px;
  background:#f4f2ec;border-radius:999px;
}
  width:34px;height:34px;border-radius:50%;overflow:hidden;
  border:2px solid #fff;margin-right:-10px;background:#e6e1d6;
}

.pdp-product .rem-titlerow{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.pdp-product .rem-titlerow .el-element-heading-main{flex:1 1 auto;min-width:0}
.pdp-product .rem-tag{
  flex:0 0 auto;white-space:nowrap;
  padding:5px 10px;font-size:13px;line-height:1.15;
  color:var(--rem-red);border:1px solid rgba(133,15,18,.35);
  background:rgba(133,15,18,.05);
}


/* ---------- buy block rhythm ---------- */
/* Their checkout block carried padding-top:25px. The swapped-in add-to-cart
   wrapper had none, so it sat flush against the refills box. */
.pdp-product .el-element-variants{padding-top:10px}
.pdp-product .rm-bundle{margin-top:0;margin-bottom:16px}
.pdp-product .el-element-sub-options{padding-top:0;padding-bottom:0}
.pdp-product .shop-add-to-cart-wrapper{padding-top:16px}


/* ---------- gallery images keep their shape ---------- */
/* Their thumbs were square exports, so the slot hardcodes a square box. Real
   product photos are not square, so they crop into the slot instead of
   stretching. Same for the main slide. */
.pdp-product .el-slider-product-media-thumb .el-media img{
  width:100%;height:100%;object-fit:cover;display:block;
}
.pdp-product .el-slider-product-media-main .el-media img{
  width:100%;height:auto;object-fit:contain;display:block;box-shadow:none;
}



/* ---------- 90 day timeline: week markers read at a glance ---------- */
.pdp-timeline .el-pdp-days-list1-item .el-element-image .el-media.el-svg{
  font-size:22px;
  line-height:1.05;
}
.pdp-timeline .el-pdp-days-list1-item .el-element-image .el-media.el-svg span{
  font-size:52px;
  line-height:.98;
  letter-spacing:-1px;
}
@media (max-width:749px){
  .pdp-timeline .el-pdp-days-list1-item .el-element-image .el-media.el-svg{font-size:19px}
  .pdp-timeline .el-pdp-days-list1-item .el-element-image .el-media.el-svg span{font-size:44px}
}


/* ---------- type roles ---------- */
/* Serif is for headings only. Anything marked as body text, and everything
   inside it, stays on the sans so small copy reads clean. */
.el-font-body,
.el-font-body *:not(.el-font-heading):not(.el-element-heading){
  font-family:var(--el-body-font);
}
.el-sub-option-title,
.el-element-title,
.el-variant-title,
.el-element-text,
.el-element-review-name{font-family:var(--el-body-font)}







/* ---------- gallery dots ---------- */
/* Full-width positioner, frosted capsule inside it. The capsule has to read on
   a black photo and on a white one, so it carries its own ground. */
.pdp-product .el-pdt-slider,
.pdp-product .el-media-main-wrapper{position:relative}
.pdp-dots{
  position:absolute;left:0;right:0;bottom:14px;z-index:1;
  display:flex!important;justify-content:center;align-items:center;
  width:auto;pointer-events:none;text-align:center;
}
.pdp-dots:empty{display:none}
.pdp-dots__pill{
  display:inline-flex;align-items:center;gap:7px;
  padding:7px 11px;border-radius:999px;pointer-events:auto;
  background:rgba(28,14,14,.32);
  -webkit-backdrop-filter:blur(10px) saturate(140%);
          backdrop-filter:blur(10px) saturate(140%);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.18);
}
.pdp-dots button{
  appearance:none;border:0;padding:0;cursor:pointer;flex:0 0 auto;
  width:6px;height:6px;border-radius:999px;
  background:rgba(255,255,255,.55);
  box-shadow:0 1px 2px rgba(0,0,0,.35);
  transition:width .28s cubic-bezier(.2,.7,.2,1),background-color .28s ease;
}
.pdp-dots button.is-active{width:18px;background:#fdfcf8}
@media (max-width:749px){
  .pdp-dots{bottom:12px}
  .pdp-dots__pill{gap:6px;padding:6px 10px}
  .pdp-dots button{width:5px;height:5px}
  .pdp-dots button.is-active{width:15px}
}



/* ---------- section titles: the old theme's ink-to-oxblood wash ---------- */
/* Serif headings only, and only on the light sections. The dark panels keep
   their cream type, where a dark gradient would disappear. */
.pdp-product .el-pdp-pdt-heading .el-element-heading,
.el-pdp-signs .el-element-heading.el-font-heading,
.el-pdp-solution .el-element-heading.el-font-heading,
.el-pdp-days .el-element-heading.el-font-heading,
.el-pdp-table .el-element-heading.el-font-heading,
.el-pdp-faq-top .el-element-heading.el-font-heading,
.el-pdp-faq-bottom .el-element-heading.el-font-heading,
.el-pdp-review2 .el-element-heading.el-font-heading{
  background-image:linear-gradient(96deg,#2A1016 0%,#4A2028 34%,#8A3A4A 72%,#A24A5C 100%);
  -webkit-background-clip:text;background-clip:text;
  color:#4a2028;-webkit-text-fill-color:transparent;
}
@supports not ((-webkit-background-clip:text) or (background-clip:text)){
  .el-element-heading.el-font-heading{background-image:none;-webkit-text-fill-color:#4a2028;color:#4a2028}
}

/* ---------- country row ---------- */
.pdp-flag{
  display:inline-block;line-height:1;font-size:16px;
  font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;
}


/* ---------- product title size ---------- */
.pdp-product .el-pdp-pdt-heading .el-element-heading{
  font-size:clamp(36px,9.4vw,46px);
  line-height:1.02;
  letter-spacing:-.6px;
}
@media (min-width:750px){
  .pdp-product .el-pdp-pdt-heading .el-element-heading{font-size:52px}
}


/* ---------- refills option ---------- */
/* Neutral by design: grey dashed edge, page-coloured fill, ink tick box. It is
   a quiet upsell, so nothing in it competes with the button below. */
.pdp-product .el-element-sub-option{
  padding:12px 14px;
  border:1.5px dashed rgba(34,38,42,.22);
  border-radius:6px;
  background:transparent;
}
.pdp-product .el-element-sub-option.el-active{border-color:rgba(34,38,42,.32);background:transparent}
.pdp-product .el-sub-option-title-flex{gap:12px;align-items:center}
.pdp-product .el-sub-option-title-texts{gap:5px}
.pdp-product .el-sub-option-title{
  font-size:14.5px;font-weight:600;color:#1e2429;letter-spacing:-.1px;line-height:1.2;
}
.pdp-product .el-sub-option-text{font-size:12.5px;color:#5b6167;line-height:1.3}
.pdp-product .el-sub-option-text strong{font-weight:400;color:inherit}
.pdp-product .el-selector-sub{
  width:25px;height:25px;min-width:25px;border-radius:4px;bottom:0;
  border:1.5px solid #1e2429;background:transparent;
}
.pdp-product .el-selector-sub svg{width:13px;height:auto}
.pdp-product .el-selector-sub svg path{fill:#1e2429}

/* ---------- reviews list toggle ---------- */
/* Only one link shows at a time: "Read less" stays out until the list is open.
   The script flips them with inline display, which beats this. */
.el-pdp-review2-links:has(a[href="#hide"]){display:none}

/* ---------- reviewer line as a pill ---------- */
/* Name, tick and Verified sit together in a soft capsule, the same shape as the
   proof row at the top of the page. */
.el-pdp-review2-list1-item .el-element-text p:nth-child(2){
  display:inline-flex;align-items:center;gap:8px;
  width:auto;align-self:flex-start;
  margin-top:18px;padding:9px 16px 9px 14px;
  border-radius:999px;
  background:#f1efe9;
  box-shadow:inset 0 0 0 1px rgba(230,225,214,.9);
  font-size:13.5px;
}
.el-pdp-review2-list1-item .el-element-text p:nth-child(2) em{color:#292223;font-weight:600}
.el-pdp-review2-list1-item .el-element-text p:nth-child(2) strong{color:#6f6a5f;font-weight:500}

/* ---------- reviewer line in the carousel ---------- */
/* Same capsule as the review list and the proof row, so the verified marker
   reads the same everywhere. */
.el-pdp-reviews .el-element-review-user-detail{
  display:inline-flex;align-items:center;
  padding:8px 15px;border-radius:999px;
  background:#f4f2ec;
  box-shadow:inset 0 0 0 1px rgba(230,225,214,.9);
}
.el-pdp-reviews .el-element-review-name{
  display:inline-flex;align-items:center;gap:8px;
  font-size:13.5px;color:#292223;font-weight:600;
}
.el-pdp-reviews .el-element-review-name svg{flex:0 0 auto}
.el-pdp-reviews .el-element-review-card-bottom{display:flex}





/* ---------- hero benefits: 2 x 2 ---------- */
.pdp-product .el-pdp-pdt-list1 .el-element-icon-with-text-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px 14px;
}
.pdp-product .el-pdp-pdt-list1 .el-pdp-pdt-list1-item{width:100%;max-width:100%;margin:0}
.pdp-product .el-pdp-pdt-list1 .el-icon-with-text-flex{align-items:flex-start;gap:10px}
.pdp-product .el-pdp-pdt-list1 .el-element-text p{font-size:14px;line-height:1.3}
.pdp-product .el-pdp-pdt-list1 .el-element-text p strong{font-size:14.5px}
@media (max-width:400px){
  .pdp-product .el-pdp-pdt-list1 .el-element-text p{font-size:13px}
  .pdp-product .el-pdp-pdt-list1 .el-element-text p strong{font-size:13.5px}
}



/* ---------- plan heading takes the divider ---------- */
/* The low stock line is gone. The heading keeps its place on the left and the
   rule runs out of it to the right. */
.pdp-product .el-low-stock-text{display:none}
.pdp-product .el-pdp-pdt-heading2 .el-element-heading{
  display:flex;align-items:center;gap:16px;
}
.pdp-product .el-pdp-pdt-heading2 .el-element-heading::after{
  content:"";flex:1 1 auto;min-width:24px;height:1.5px;
  background:linear-gradient(90deg,rgba(133,15,18,.6) 0%,rgba(133,15,18,.12) 100%);
}



/* ---------- feature pills ---------- */
/* One set of metrics for every pill, gold or plain, so the row lines up. */
.pdp-product .rem-pills{
  list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 15px;padding:0;
}
.pdp-product .rem-pills > li{
  display:inline-flex;align-items:center;gap:7px;
  min-height:30px;padding:0 12px;border-radius:999px;box-sizing:border-box;
  font-size:12.5px;line-height:1.15;
}
.pdp-product .rem-pills > li:not(.rem-pill--gold){
  background:#fff;color:#1c1c1c;
  box-shadow:inset 0 0 0 1px rgba(230,225,214,.95),0 6px 14px -12px rgba(59,7,8,.5);
}
.pdp-product .rem-pills > li.rem-pill--gold{
  background:linear-gradient(180deg,#fdf6e6 0%,#f6ead0 100%);
  color:#8a6a1f;font-weight:600;
  box-shadow:inset 0 0 0 1px rgba(201,162,74,.55);
}
.pdp-product .rem-pills svg{width:14px;height:14px;color:var(--rem-red);flex:0 0 auto}
.pdp-product .rem-pills .rem-tag{
  padding:0;background:none;border:0;box-shadow:none;
  color:inherit;font:inherit;letter-spacing:inherit;white-space:nowrap;
}

/* the saved amount carries the weight, the label stays light */
.pdp-product .shop-add-to-cart-button .button-text__saving b{font-weight:700;color:#fff}

/* ---------- sticky bar ---------- */
/* Frosted cream, product thumb, chosen bundle and its price, and one oxblood
   pill that hands off to the real add to cart. */
.el-pdp-sticky{
  background-image:linear-gradient(180deg,rgba(253,252,248,.90) 0%,rgba(250,247,240,.98) 100%);
  border-top:1px solid rgba(230,225,214,.9);
}
.el-pdp-sticky .el-sticky-atc-flex{align-items:center;gap:12px}
.el-pdp-sticky .el-pdp-sticky-img img{
  width:44px;height:44px;object-fit:cover;border-radius:6px;
  box-shadow:inset 0 0 0 1px rgba(230,225,214,.9),0 6px 14px -10px rgba(59,7,8,.5);
}
.el-pdp-sticky .el-pdp-sticky-text1 p{
  margin:0;font-size:13.5px;font-weight:600;color:#1c1c1c;line-height:1.2;
}
.el-pdp-sticky .pdp-sticky__price{font-weight:700;font-size:14.5px;color:#4a2028}
.el-pdp-sticky .el-button{
  position:relative;overflow:hidden;isolation:isolate;
  display:inline-flex;align-items:center;justify-content:center;
  min-height:48px;padding:0 26px;border:0;border-radius:999px;cursor:pointer;
  background-color:#4a2028;
  background-image:linear-gradient(118deg,#2E1219 0%,#6B2B39 34%,#8A3A4A 52%,#5A2430 72%,#2A1016 100%);
  color:#fff;font-size:14.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
  text-shadow:0 1px 2px rgba(0,0,0,.28);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.22),inset 0 1px 0 rgba(255,255,255,.16),
             0 14px 30px -16px rgba(74,32,40,.75);
  transition:box-shadow .3s ease,transform .2s ease,filter .3s ease;
}
.el-pdp-sticky .el-button::after{
  content:"";position:absolute;top:0;bottom:0;left:-60%;width:45%;border-radius:inherit;
  background:linear-gradient(100deg,rgba(255,255,255,0),rgba(255,255,255,.28),rgba(255,255,255,0));
  transform:skewX(-18deg);opacity:0;pointer-events:none;z-index:0;
}
.el-pdp-sticky .el-button:hover::after{animation:rem-atc-sheen .85s ease-out}
@keyframes rem-atc-sheen{0%{left:-60%;opacity:0}18%{opacity:1}100%{left:120%;opacity:0}}
.el-pdp-sticky .el-button:hover{
  transform:translateY(-2px);filter:saturate(1.06) brightness(1.05);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.30),inset 0 1px 0 rgba(255,255,255,.20),
             0 20px 40px -16px rgba(74,32,40,.85);
}
.el-pdp-sticky .el-button:active{transform:translateY(0) scale(.995)}
.el-pdp-sticky .el-button:focus-visible{outline:3px solid #8A3A4A;outline-offset:3px}
@media (prefers-reduced-motion:reduce){
  .el-pdp-sticky .el-button{transition:none}
  .el-pdp-sticky .el-button:hover{transform:none}
  .el-pdp-sticky .el-button:hover::after{animation:none}
}

/* ---------- desktop FAQ ingredient list ---------- */
/* Their script ran a carousel on this list and re-initialised it on every
   click until it exploded. Plain two-column grid instead. */
.pdp-product .el-pdt-slider .el-pdt-faq-item .el-answer ul{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px 18px;list-style:none;margin:0;padding:0;
}
.pdp-product .el-pdt-slider .el-pdt-faq-item .el-answer ul li{width:100%;max-width:100%}
.pdp-product .el-pdt-slider .el-pdt-faq-item .el-answer ul img{
  width:100%;height:auto;display:block;
}

/* ---------- desktop media column flow ---------- */
/* Desktop only: mobile keeps the theme's own full-bleed gallery. These rules
   unscoped were what shrank the photo and left the right gutter on phones. */
@media (min-width:750px){
  .pdp-product .el-pdt-slider{display:block!important}
  .pdp-product .el-pdt-slider .el-media-main-wrapper{width:100%}
  .pdp-product .el-pdt-slider .el-pdt-faq-item{width:100%;max-width:100%}
}

/* ---------- servings pill beside the plan heading (trial) ---------- */
/* Takes the divider's slot. Delete this block and re-add the pill <li> to
   .rem-pills to revert. */
.pdp-product .el-pdp-pdt-heading2 .el-element-heading::after{display:none}
.pdp-product .rem-tag--plan{
  display:inline-flex;align-items:center;flex:0 0 auto;
  min-height:30px;padding:0 12px;border-radius:999px;white-space:nowrap;
  background:linear-gradient(180deg,#fdf6e6 0%,#f6ead0 100%);
  box-shadow:inset 0 0 0 1px rgba(201,162,74,.55);
  color:#8a6a1f;-webkit-text-fill-color:#8a6a1f;
  font-family:var(--el-body-font);font-size:12.5px;font-weight:600;
  letter-spacing:.1px;line-height:1.15;
}

/* ---------- hero benefits on desktop: icon beside text, all left ---------- */
@media (min-width:750px){
  .pdp-product .el-pdp-pdt-list1 .el-icon-with-text-flex{
    flex-direction:row!important;align-items:center!important;
    justify-content:flex-start!important;gap:14px;text-align:left!important;
  }
  .pdp-product .el-pdp-pdt-list1 .el-element-texts,
  .pdp-product .el-pdp-pdt-list1 .el-element-text,
  .pdp-product .el-pdp-pdt-list1 .el-element-text p{text-align:left!important}
  .pdp-product .el-pdp-pdt-list1 .el-element-image{flex:0 0 auto}
}

/* ---------- full formula: swipe strip on mobile ---------- */
/* Six cards is a long wall on a phone. One card per swipe, edges peeking. */
@media (max-width:749px){
  .pdp-formula-sec .el-element-icon-with-text-grid{
    display:flex;flex-wrap:nowrap;gap:14px;
    overflow-x:auto;overflow-y:hidden;
    scroll-snap-type:x proximity;scroll-padding-left:16px;-webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    margin:0 -16px;padding:4px 16px 8px;
  }
  .pdp-formula-sec .el-element-icon-with-text-grid::-webkit-scrollbar{display:none}
  .pdp-formula-sec .el-element-icon-with-text-grid > *{
    flex:0 0 74vw;max-width:74vw;scroll-snap-align:start;
  }
}

/* ---------- plan heading + pill on one line, every phone ---------- */
@media (max-width:749px){
  .pdp-product .el-pdp-pdt-heading2 .el-element-heading{
    justify-content:flex-start;gap:12px;
    white-space:nowrap;
    font-size:clamp(18px,5.6vw,30px)!important;
  }
  .pdp-product .rem-tag--plan{
    min-height:26px;padding:0 10px;
    font-size:clamp(10px,3.2vw,12.5px);
  }
}

/* ---------- formula cards: text inside the image (mobile only) ---------- */
/* The title and line sit in an oxblood burst rising from the bottom of the
   photo. Desktop keeps text below the image. */
@media (max-width:749px){
  .pdp-formula-sec .el-icon-with-text-flex{position:relative;overflow:hidden}
  .pdp-formula-sec .el-element-image,
  .pdp-formula-sec .el-element-image .el-media{width:100%}
  .pdp-formula-sec .el-element-image img{width:100%;height:auto;display:block;mix-blend-mode:normal}
  .pdp-formula-sec .el-element-texts{
    position:absolute;left:0;right:0;bottom:0;
    padding:72px 16px 15px;
    background:linear-gradient(180deg,rgba(59,7,8,0) 0%,rgba(74,10,12,.55) 42%,rgba(59,7,8,.93) 100%);
  }
  .pdp-formula-sec .el-element-text p{
    margin:0;color:rgba(253,244,236,.88);
    font-size:13px;line-height:1.4;
  }
  .pdp-formula-sec .el-element-text p strong{
    display:block;margin-bottom:3px;
    color:#fdfcf8;font-size:15.5px;font-weight:700;letter-spacing:-.1px;
  }
}

/* desktop: the pill sits right after the words, not adrift in the middle */
@media (min-width:750px){
  .pdp-product .el-pdp-pdt-heading2 .el-element-heading{
    justify-content:flex-start;gap:14px;
  }
}

/* air between the formula title and the strip */
@media (max-width:749px){
  .pdp-formula-sec .el-element-heading-main{margin-bottom:18px}
}


/* ---------- plan row on larger phones: full wording, still one line ---------- */
@media (min-width:410px) and (max-width:749px){
  .pdp-product .el-pdp-pdt-heading2 .el-element-heading{font-size:20px!important}
  .pdp-product .rem-tag--plan{font-size:11px;padding:0 10px}
}

/* their list pulled 10px past each edge to pair with slide gutters that our
   slides don't have — it was cropping 10px off both sides of every photo */
.pdp-product .el-media-main-wrapper .slick-list.draggable{margin:0!important}

/* breathing space between the save label and the bold amount */
.pdp-product .shop-add-to-cart-button .button-text__saving b{margin-left:4px}

/* comparison column product shot: his bottles are taller art than the ripped
   webp the offsets were tuned for — size by height and keep it on the column */
.el-pdp-table-img2{width:auto!important;height:220px;margin-left:0!important}
.el-pdp-table-img3{
  width:auto!important;min-width:0!important;height:140px;
  margin-left:0!important;bottom:calc(100% - 30px)!important;
}

/* room for the bottles to pop above the column without touching the title */
@media (max-width:749px){
  .el-pdp-table-box{margin-top:118px!important}
}
@media (min-width:750px){
  .el-pdp-table-box{margin-top:160px!important}
}


/* ---------- proof row ---------- */
/* One slim full-width capsule under the title, the same 30px height as the
   feature pills: faces, gold stars, score, and the subline when there's room. */
.pdp-product .rem-proof{
  display:flex;align-items:center;gap:10px;
  width:100%;box-sizing:border-box;
  min-height:30px;margin:12px 0;padding:3px 14px 3px 4px;
  border-radius:999px;
  background:linear-gradient(180deg,#fffefb 0%,#f7f4ec 100%);
  box-shadow:inset 0 0 0 1px rgba(133,15,18,.10),0 10px 22px -18px rgba(59,7,8,.45);
}
.pdp-product .rem-proof__faces{display:flex;align-items:center;flex:0 0 auto}
.pdp-product .rem-proof__face{
  width:24px;height:24px;border-radius:50%;overflow:hidden;
  border:1.5px solid #fdfcf8;margin-right:-8px;background:#efece2;
}
.pdp-product .rem-proof__face img{width:100%;height:100%;object-fit:cover;display:block}
.pdp-product .rem-proof__check{
  width:15px;height:15px;align-self:center;position:relative;z-index:2;
  border-radius:50%;background:#fdfcf8;padding:1.5px;
}
.pdp-product .rem-proof__check svg{width:100%;height:100%;display:block}
.pdp-product .rem-proof__check svg circle{fill:#4a2028}
.pdp-product .rem-proof__text{
  display:flex;flex-direction:row;align-items:center;gap:8px;
  min-width:0;line-height:1;
}
.pdp-product .rem-proof__text strong{
  display:flex;align-items:center;gap:7px;flex:0 0 auto;
  font-size:13px;font-weight:700;color:#1c1c1c;letter-spacing:-.1px;
}
.pdp-product .rem-proof__text strong::before{
  content:"\2605\2605\2605\2605\2605";
  color:#c9a24a;font-size:11px;letter-spacing:1.2px;line-height:1;
}
.pdp-product .rem-proof__text span{
  font-size:12px;color:#6f6a5f;white-space:nowrap;
  overflow:hidden;text-overflow:ellipsis;
}
@media (max-width:409px){
  .pdp-product .rem-proof__text span{display:none}
}

/* ---------- eyebrow above the title ---------- */
.pdp-product .rem-eyebrow{
  margin:0 0 8px;
  font-family:var(--el-body-font);
  font-size:12.5px;font-weight:800;
  letter-spacing:.15em;text-transform:uppercase;
  color:#4a2028;
}


/* the plan heading carried 25px of padding for the old low-stock line */
.pdp-product .el-pdp-pdt-heading2{padding-bottom:6px!important}


/* one 12px beat through the whole title block */
.pdp-product .rem-titlerow{margin:0}
.pdp-product .el-pdp-pdt-heading{margin:0!important;padding:0!important}
.pdp-product .el-pdp-pdt-heading .el-element-heading{margin:0!important}

/* gallery photos run the full width: the 10px side padding paired with the
   old bleed margin we removed, so it was only shaving the image */
.pdp-product .el-media-main-wrapper img{padding:0!important}

/* ---------- title-to-plan rhythm ---------- */
.pdp-product .el-pdp-pdt-text1{margin:4px 0 16px!important;padding:0!important}
.pdp-product .el-pdp-pdt-text1 p{font-size:15px;line-height:1.45;color:#3f3a33}

/* ---------- trust marquee: a thin ribbon ---------- */
.el-hp-bar [class*="-padding"]{padding-top:8px!important;padding-bottom:8px!important}
.el-hp-bar .el-element-text p{font-size:11.5px;letter-spacing:.12em}
.el-hp-bar .el-media.el-svg{font-size:10px}


/* the menu drawer sits at z-index 3: keep the gallery dots out of its way */
body:has(header details[open]) .pdp-dots,
body.overflow-hidden .pdp-dots{visibility:hidden}

/* ============================================================
   MOIS gradient system
   One wine-to-purple sweep, defined once and reused everywhere a
   brand fill appears. Stops and angles are the same in every
   place so the page reads as one surface, not many.
   ============================================================ */
:root{
  --mois-red:#71203A;          /* wine end */
  --mois-purple:#43244C;       /* purple end */
  --mois-grad:linear-gradient(95deg,#5A1A2C 0%,#71203A 26%,#5B2242 62%,#43244C 100%);
  --mois-grad-band:linear-gradient(118deg,#3A1424 0%,#5A1B31 34%,#48203C 68%,#331C3A 100%);
  --mois-grad-soft:linear-gradient(95deg,#8A2647 0%,#6B2450 100%);
  --mois-rim:inset 0 0 0 1px rgba(255,255,255,.28),inset 0 1px 0 rgba(255,255,255,.14);
  --mois-rim-strong:inset 0 0 0 1px rgba(255,255,255,.40),inset 0 1px 0 rgba(255,255,255,.20);
  --mois-glow:0 0 34px -4px rgba(113,32,58,.50),0 14px 34px -14px rgba(67,36,76,.70);
  --mois-glow-strong:0 0 46px -4px rgba(138,38,71,.62),0 20px 44px -14px rgba(67,36,76,.80);
}

/* Sticky bar CTA — same pill, scaled down. */
.el-pdp-sticky .el-button{
  background-color:#5B2140;
  background-image:var(--mois-grad);
  box-shadow:var(--mois-rim),0 12px 26px -14px rgba(67,36,76,.75);
}
.el-pdp-sticky .el-button::after{content:none}
.el-pdp-sticky .el-button:hover{
  background-image:var(--mois-grad);
  filter:brightness(1.08) saturate(1.04);
  box-shadow:var(--mois-rim-strong),0 18px 36px -14px rgba(67,36,76,.85);
}

/* Science tabs — the selected tab is the same sweep. */
.el-pdp-tab .el-element-text ul li.el-active{
  background-color:#5B2140!important;
  background-image:var(--mois-grad)!important;
  border-color:transparent!important;
  box-shadow:var(--mois-rim),0 10px 20px -12px rgba(67,36,76,.7)!important;
}

/* Timeline week markers. */
.el-pdp-days-list1-item .el-media.el-svg{
  background-color:#5B2140!important;
  background-image:var(--mois-grad)!important;
  box-shadow:var(--mois-rim);
}

/* Comparison table centre column. */
.el-pdp-table-item2,
.el-pdp-table-item2 ul{
  background-color:#5B2140!important;
  background-image:var(--mois-grad-band)!important;
}

/* Guarantee card. */
.el-pdp-risk .el-image-with-text-content{
  background-color:#5B2140!important;
  background-image:var(--mois-grad-band)!important;
}

/* Trust badge tiles. */
.el-pdp-GMP-certified .el-icon-with-text-flex{
  background-color:#5B2140!important;
  background-image:var(--mois-grad)!important;
  box-shadow:var(--mois-rim);
}

/* Selected bundle card keeps its light face; only its accents pick up the ramp. */
.rm-bundle .rm-bundle__card[data-selected="true"]{border-color:var(--mois-red)!important}
.rm-bundle .rm-bundle__badge{background-image:var(--mois-grad)!important;box-shadow:var(--mois-rim)}

/* Headings: the same two hues, so the sweep is legible in text. */
.el-pdp-signs .el-element-heading.el-font-heading,
.el-pdp-solution .el-element-heading.el-font-heading,
.el-pdp-days .el-element-heading.el-font-heading,
.el-pdp-table .el-element-heading.el-font-heading,
.el-pdp-faq-top .el-element-heading.el-font-heading,
.el-pdp-faq-bottom .el-element-heading.el-font-heading,
.el-pdp-review2 .el-element-heading.el-font-heading,
.el-pdp-pdt-heading .el-element-heading.el-font-heading{
  background-image:linear-gradient(95deg,#71203A 0%,#5B2242 52%,#43244C 100%)!important;
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;
}

/* ============================================================
   Centred button labels

   letter-spacing adds its gap AFTER the final character too, so a
   centred label sits visibly left of centre by roughly one space.
   Compensating with a matching text-indent puts the optical centre
   where the geometric centre is. Applied to every tracked-out button
   in the theme so it is fixed once, not per component.
   ============================================================ */
.el-pdp-sticky .el-button,
.mois-hero__cta,
.mois-feat__btn,
.mois-cta__btn,
[id$="__buy"] .button,
[id$="__buy"] .product-form__submit{
  text-indent:.13em;
}
[data-rem-product] .shop-add-to-cart-button .button-text{
  text-indent:.14em;
}
/* The arrow is a trailing glyph, so it must not inherit that nudge. */
.mois-hero__cta::after,
.mois-feat__btn::after,
.mois-cta__btn::after,
[data-rem-product] .shop-add-to-cart-button .button-text::after{
  text-indent:0;
}

/* Subscription box when the chosen bundle is not on a plan. */
.rem-sub--unavailable{opacity:.5}
.rem-sub--unavailable .el-element-sub-option[sub_tab="1"]{cursor:not-allowed}

/* ---------- narrow phones ----------
   At 360px and under the CTA's label, saving chip and arrow together are wider
   than the screen, so the label was being pushed off the left edge. Drop the
   arrow, tighten the tracking and shrink the chip: the button then fits without
   the label ever leaving the button. */
@media screen and (max-width:360px){
  [data-rem-product] .shop-add-to-cart-button{padding:7px 10px!important}
  [data-rem-product] .shop-add-to-cart-button .button-text{
    font-size:14px!important;letter-spacing:.06em!important;gap:6px;
  }
  [data-rem-product] .shop-add-to-cart-button .button-text::after{display:none}
  [data-rem-product] .shop-add-to-cart-button .button-text__saving{
    padding:2px 7px;font-size:10px!important;
  }
  .el-pdp-sticky .el-button{
    padding:0 14px;font-size:12.5px;letter-spacing:.06em;
  }
}
/* Nothing on the page may push the document sideways. */
@media screen and (max-width:749px){
  .el-pdp-sticky .el-sticky-atc-flex{gap:10px}
}

/* ---------- eyebrows ----------
   "The MOIS Approach" and "How We Compare" shipped as 14px, weight 400, with
   NEGATIVE letter-spacing and no caps — so they read as stray body text beside
   every other eyebrow on the page, which are uppercase and tracked out. One set
   of metrics for all of them; only the colour changes with the background. */
.pdp-product .rem-eyebrow,
.el-pdp-number .el-global-sub-heading,
.el-pdp-number .el-global-sub-heading p,
.el-pdp-table .el-global-sub-heading,
.el-pdp-table .el-global-sub-heading p{
  font-size:11.5px!important;
  font-weight:700!important;
  letter-spacing:.2em!important;
  text-transform:uppercase!important;
  line-height:1.3!important;
  margin:0 0 10px!important;
}
.pdp-product .rem-eyebrow{color:#6B5157!important}
.el-pdp-table .el-global-sub-heading,
.el-pdp-table .el-global-sub-heading p{color:#6B5157!important}
.el-pdp-number .el-global-sub-heading,
.el-pdp-number .el-global-sub-heading p{color:rgba(255,255,255,.72)!important}
