/* Scoped to the JOYMODE after-45 advertorial. */
.hero-photo img{aspect-ratio:2/1;max-height:340px;object-position:center 8%;border-radius:12px}
.hero-photo figcaption{font-size:.875rem}
.opening{margin:0 0 18px}
.opening+.changes{margin-top:28px}
.changes{margin-bottom:36px}
.changes>li{padding-left:0;border-color:#e1e7ef}
.changes>li:before{content:counter(change);display:grid;place-items:center;width:30px;height:30px;top:1px;border-radius:50%;background:#edf2ff;color:#234cc7;font-family:Arial,Helvetica,sans-serif;font-size:1rem;line-height:1;font-weight:700}
.changes h2{margin-left:44px;min-height:30px}
.daily-routine,.formula-evidence{margin:0 0 36px}
.daily-routine h2,.formula-evidence h2{font-size:1.75rem;line-height:1.25;letter-spacing:-.02em;margin-bottom:14px}
.daily-routine>p,.formula-evidence>p{font-size:1.1875rem;line-height:1.65;margin-bottom:18px}
.preparation-photo{width:100%;max-width:520px;margin:22px auto 0}
.preparation-photo img{width:100%;aspect-ratio:1/1;object-fit:contain;border-radius:12px}
.preparation-photo figcaption{font-size:.875rem;line-height:1.5;color:var(--muted);margin-top:8px}
.formula-evidence .ingredients{font-size:1.125rem;line-height:1.5;margin:0 0 10px;padding:4px 18px;border:1px solid #dce4ee;border-radius:12px;background:#f7f9fc}
.formula-evidence .ingredients>div{padding:12px 0;border-color:#dce4ee}
.formula-evidence .ingredients>div:last-child{border-bottom:0}
.formula-evidence .formula-note{font-size:.875rem;color:var(--muted);margin-bottom:20px}
.formulator{display:grid;grid-template-columns:72px minmax(0,1fr);gap:16px;padding-top:22px;margin-top:24px;border-top:1px solid var(--line)}
.formulator img{width:72px;height:78px;object-fit:cover;border-radius:8px}
.formulator p{font-size:1.0625rem;line-height:1.6}
.formulator .formulator-name{font-size:1rem;font-weight:700}
.formulator .formulator-role{font-size:.875rem;color:var(--muted);margin-bottom:10px}
.quote-source{display:inline-block;font-size:.875rem;line-height:1.5;margin-top:8px}

/* Customer words and attribution carry the review treatment. */
.customer-reviews{margin:0 0 36px}
.customer-reviews h2{font-size:1.75rem;line-height:1.3;letter-spacing:-.02em;margin:0 0 18px}
.review-list{border:1px solid #d8e2ee;border-radius:16px;background:#f5f8fc;overflow:hidden}
.customer-review{margin:0;padding:24px 26px;border-bottom:1px solid #d8e2ee;min-width:0}
.customer-review:last-child{border-bottom:0}
.customer-review blockquote{margin:0 0 16px;font-family:Georgia,'Times New Roman',serif;font-size:1.375rem;line-height:1.5;color:#223348}
.customer-review figcaption{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;font-size:.9375rem;line-height:1.6;color:var(--ink)}
.review-verified{display:inline-flex;align-items:center;gap:7px;font-family:Arial,Helvetica,sans-serif;font-size:.875rem;color:#285941}
.review-verified>span{display:inline-grid;place-items:center;flex-shrink:0;width:18px;height:18px;border-radius:50%;background:#285941;color:#fff;font-size:.75rem;font-weight:700;line-height:1}
.reviews-source{font-size:.875rem;line-height:1.6;color:var(--muted);margin-top:12px}

/* A single, explicit subscription offer with a secondary one-time path. */
.product-section{padding:28px;margin-bottom:28px;background:#f5f8fc;border:1px solid #cad7e7;border-radius:20px;box-shadow:0 6px 24px rgba(26,51,82,.04)}
.offer-header{margin-bottom:20px}
.offer-intro{font-size:.875rem;font-weight:700;line-height:1.5;color:#234cc7;margin-bottom:8px}
.offer-header h2{font-size:2rem;line-height:1.2;letter-spacing:-.025em;margin-bottom:10px}
.offer-description{font-size:1.0625rem;line-height:1.5;color:var(--muted)}
.product-overview{display:grid;grid-template-columns:280px minmax(0,1fr);gap:24px;align-items:center;margin-bottom:24px}
.product-photo{width:280px;justify-self:start;border-radius:12px}
.product-copy{min-width:0;overflow-wrap:anywhere}
.product-copy h3{font-family:Arial,Helvetica,sans-serif;font-size:1.875rem;line-height:1.2;letter-spacing:-.025em;margin:0 0 6px}
.product-copy>p{font-size:1.0625rem;line-height:1.5}
.product-copy .product-format{font-size:.9375rem;color:var(--muted);margin-top:8px}
.subscription-plan{padding:22px;background:#fff;border:2px solid #315bce;border-radius:14px}
.plan-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}
.plan-heading h3{margin:0;font-family:Arial,Helvetica,sans-serif;font-size:1.25rem;line-height:1.35;letter-spacing:-.015em}
.savings-badge{display:inline-block;padding:5px 10px;border-radius:6px;background:#eaf4ed;color:#245638;font-size:.875rem;font-weight:700;line-height:1.4;white-space:nowrap}
.subscription-plan .price{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;line-height:1.15;margin:0 0 8px;font-variant-numeric:tabular-nums}
.subscription-plan .price strong{font-family:Arial,Helvetica,sans-serif;font-size:2.75rem;letter-spacing:-.045em;line-height:1.1}
.subscription-plan .price>span{font-size:1rem;color:var(--muted)}
.subscription-plan .serving-price{font-size:.9375rem;line-height:1.5;color:var(--muted);margin:0 0 14px}
.subscription-saving{font-size:.9375rem;line-height:1.55;margin:0 0 18px}
.plan-benefits{list-style:none;padding:16px 0 0;margin:0 0 16px;border-top:1px solid #e1e7ef;display:grid;gap:8px}
.plan-benefits li{display:flex;align-items:baseline;gap:9px;font-size:1rem;line-height:1.45}
.plan-benefits li>span{flex-shrink:0;color:#285941;font-weight:700}
.subscription-terms{font-size:.875rem;line-height:1.5;color:var(--muted);margin:0 0 12px}
.product-section .button{min-height:56px;padding:15px 12px;border-radius:9px;font-size:1.0625rem;line-height:1.4}
.one-time-option{margin-top:18px;padding:0 2px;text-align:left}
.one-time-option p{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 12px;font-size:1rem;line-height:1.6}
.one-time-option p strong{font-size:1.125rem;font-variant-numeric:tabular-nums}
.one-time-option a{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:.9375rem;line-height:1.5}
.offer-reassurance{margin-top:8px;padding-top:18px;border-top:1px solid #d4dfea}
.offer-reassurance p{font-size:.875rem;line-height:1.6;color:var(--muted)}
.offer-reassurance strong{color:var(--ink)}
.offer-reassurance p+p{margin-top:10px}
.product-section .price-note{font-size:.875rem;line-height:1.5;margin-top:16px}
.mobile-cta .button{border-radius:9px}

@media(max-width:620px){
  .hero-photo img{max-height:260px}
  .changes h2{margin-left:42px}
  .daily-routine h2,.formula-evidence h2,.customer-reviews h2{font-size:1.5rem}
  .daily-routine>p,.formula-evidence>p{font-size:1.125rem}
  .formulator{grid-template-columns:60px minmax(0,1fr);gap:14px}
  .formulator img{width:60px;height:65px}
  .formulator p{font-size:1rem}
  .formulator .formulator-role,.formula-evidence .formula-note{font-size:.875rem}
  .customer-review{padding:22px 20px}
  .customer-review blockquote{font-size:1.25rem;line-height:1.55}
  .product-section{padding:22px 18px;border-radius:16px}
  .offer-header h2{font-size:1.75rem}
  .product-overview{grid-template-columns:minmax(0,1fr);gap:16px;margin-bottom:24px}
  .product-photo{width:100%;max-width:320px;justify-self:center}
  .product-copy{text-align:center}
  .product-copy h3{font-size:1.625rem}
  .product-copy>p{font-size:1rem}
  .product-copy .product-format{font-size:.875rem}
  .subscription-plan{padding:18px 16px}
  .plan-heading h3{font-size:1.125rem}
  .subscription-plan .price strong{font-size:2.5rem}
}
@media(max-width:360px){
  .subscription-plan{padding:16px 12px}
}
