/* Puori M3 export, isolated to productId 51. */
:is(html, body).m3-product .m3-scope {
  color-scheme: light;
  --m3-accent: #006460;
  --m3-accent-dark: #004f4c;
  --m3-accent-soft: #e7f3f1;
  --m3-ink: #172321;
  --m3-muted: #667471;
  --m3-line: #d9e4e1;
  --m3-surface: #ffffff;
  --m3-soft: #f3f7f6;
  --m3-promo: #a53c2f;
  --m3-radius: 8px;
  --m3-content: 1220px;
}

:is(html, body).m3-product .m3-scope,
:is(html, body).m3-product .m3-scope * { box-sizing: border-box; }
:is(html, body).m3-product .m3-scope button { font: inherit; }
:is(html, body).m3-product .m3-scope a { color: inherit; }
:is(html, body).m3-product .m3-scope img { display: block; max-width: 100%; }
:is(html, body).m3-product .m3-scope button,
:is(html, body).m3-product .m3-scope a { -webkit-tap-highlight-color: transparent; }
:is(html, body).m3-product .content-nav { display: flex; justify-content: center; gap: 8px; overflow-x: auto; margin-top: 42px; padding: 14px; border: 1px solid var(--m3-line); border-radius: var(--m3-radius); background: var(--m3-soft); scrollbar-width: none; }
:is(html, body).m3-product .content-nav::-webkit-scrollbar { display: none; }
:is(html, body).m3-product .content-nav a { flex: 0 0 auto; padding: 9px 13px; border: 1px solid var(--m3-line); border-radius: 6px; background: var(--m3-surface); color: var(--m3-accent); font-size: 14px; font-weight: 800; text-decoration: none; }
:is(html, body).m3-product .content-nav a.is-active { border-color: var(--m3-accent); background: var(--m3-accent); color: #fff; }
:is(html, body).m3-product .m3-scope .stars { color: #d58a14; letter-spacing: 1px; }
:is(html, body).m3-product .m3-scope .audience-tags { display: flex; flex-wrap: wrap; gap: 7px; margin: -10px 0 24px; }
:is(html, body).m3-product .m3-scope .audience-tags-intro { display: flex; flex: 0 0 100%; flex-direction: column; gap: 2px; margin: 0 0 5px; color: var(--m3-muted); font-size: 14px; line-height: 1.35; }
:is(html, body).m3-product .m3-scope .audience-tags-intro strong { color: var(--m3-ink); font-size: 15px; }
:is(html, body).m3-product .m3-scope .audience-tags a { padding: 5px 9px; border: 1px solid var(--m3-line); border-radius: 4px; color: var(--m3-accent); font-size: 14px; font-weight: 700; text-decoration: none; transition: border-color 160ms ease, background-color 160ms ease; }
:is(html, body).m3-product .m3-scope .audience-tags a:hover,
:is(html, body).m3-product .m3-scope .audience-tags a:focus-visible { border-color: var(--m3-accent); background: var(--m3-accent-soft); }
:is(html, body).m3-product .m3-scope .quick-proof { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); border: 1px solid var(--m3-line); border-radius: var(--m3-radius); }
:is(html, body).m3-product .m3-scope .quick-proof a { display: flex; flex-direction: column; min-height: 86px; padding: 15px 16px; text-decoration: none; }
:is(html, body).m3-product .m3-scope .quick-proof a:nth-child(2n + 1) { border-right: 1px solid var(--m3-line); }
:is(html, body).m3-product .m3-scope .quick-proof a:nth-child(-n+2) { border-bottom: 1px solid var(--m3-line); }
:is(html, body).m3-product .m3-scope .quick-proof strong { color: var(--m3-accent); font-size: 16px; }
:is(html, body).m3-product .m3-scope .quick-proof span { margin-top: 4px; color: var(--m3-muted); font-size: 14px; line-height: 1.35; }
:is(html, body).m3-product .m3-scope .women-insight { display: grid; grid-template-columns: 82px 1fr auto; gap: 14px; align-items: center; min-height: 82px; margin-top: 12px; overflow: hidden; border: 1px solid var(--m3-line); border-radius: var(--m3-radius); background: var(--m3-surface); text-decoration: none; }
:is(html, body).m3-product .m3-scope .women-insight img { width: 82px; height: 82px; object-fit: cover; object-position: 54% center; }
:is(html, body).m3-product .m3-scope .women-insight > span { display: flex; flex-direction: column; padding-block: 10px; }
:is(html, body).m3-product .m3-scope .women-insight strong { color: var(--m3-accent); font-size: 16px; }
:is(html, body).m3-product .m3-scope .women-insight small { margin-top: 3px; color: var(--m3-muted); font-size: 14px; line-height: 1.3; }
:is(html, body).m3-product .m3-scope .women-insight > b { padding-right: 16px; color: var(--m3-accent); font-size: 20px; }
:is(html, body).m3-product .m3-scope .batch-link-row { display: grid; grid-template-columns: 1fr auto; gap: 16px; align-items: center; margin: 14px 0 24px; padding: 14px 16px; border-radius: var(--m3-radius); background: var(--m3-accent-soft); }
:is(html, body).m3-product .m3-scope .batch-link-row div { display: flex; flex-direction: column; }
:is(html, body).m3-product .m3-scope .batch-link-row strong { font-size: 15px; }
:is(html, body).m3-product .m3-scope .batch-link-row span { margin-top: 2px; color: var(--m3-muted); font-size: 14px; }
:is(html, body).m3-product .m3-scope .batch-link-row a { color: var(--m3-accent); font-weight: 800; text-underline-offset: 3px; }
:is(html, body).m3-product .m3-scope .story-section { margin-top: 18px; padding-top: 54px; border-top: 1px solid var(--m3-line); }
:is(html, body).m3-product .m3-scope .story-intro { display: grid; gap: 16px; margin-bottom: 30px; }
:is(html, body).m3-product .m3-scope .story-intro h2 { max-width: 18ch; margin: 0; font-size: clamp(38px, 5.5vw, 68px); line-height: .98; letter-spacing: -.05em; }
:is(html, body).m3-product .m3-scope .story-intro p { max-width: 60ch; margin: 0; color: var(--m3-muted); font-size: 18px; }
:is(html, body).m3-product .m3-scope .story-grid { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(330px, .65fr); gap: 14px; }
:is(html, body).m3-product .m3-scope .performance-card { position: relative; overflow: hidden; min-height: 620px; border-radius: var(--m3-radius); color: #fff; }
:is(html, body).m3-product .m3-scope .performance-card img { width: 100%; height: 100%; object-fit: cover; object-position: 54% center; }
:is(html, body).m3-product .m3-scope .performance-card-scrim { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(3,20,18,.08) 20%, rgba(3,20,18,.88) 100%); }
:is(html, body).m3-product .m3-scope .performance-card-copy { position: absolute; z-index: 2; right: clamp(24px, 4vw, 48px); bottom: clamp(26px, 4vw, 48px); left: clamp(24px, 4vw, 48px); }
:is(html, body).m3-product .m3-scope .performance-card-copy h3 { max-width: 14ch; margin: 0 0 14px; color: #fff; font-size: clamp(34px, 4.5vw, 56px); line-height: 1; letter-spacing: -.045em; }
:is(html, body).m3-product .m3-scope .performance-card-copy p { max-width: 52ch; margin: 0 0 10px; font-size: 17px; }
:is(html, body).m3-product .m3-scope .performance-card-copy small { display: block; max-width: 55ch; color: rgba(255,255,255,.78); font-size: 14px; }
:is(html, body).m3-product .m3-scope .story-facts { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 14px; }
:is(html, body).m3-product .m3-scope .story-fact { display: flex; flex-direction: column; justify-content: flex-end; min-height: 250px; padding: 24px; border-radius: var(--m3-radius); background: var(--m3-soft); }
:is(html, body).m3-product .m3-scope .story-fact-primary { min-height: 250px; background: var(--m3-accent); color: #fff; }
:is(html, body).m3-product .m3-scope .story-fact-wide { grid-column: 1 / -1; min-height: 190px; }
:is(html, body).m3-product .m3-scope .story-fact > span { color: var(--m3-muted); font-size: 14px; font-weight: 700; }
:is(html, body).m3-product .m3-scope .story-fact-primary > span { color: #cbe5e2; }
:is(html, body).m3-product .m3-scope .story-fact > strong { margin: 8px 0 4px; color: var(--m3-accent); font-size: clamp(54px, 7vw, 84px); line-height: .9; letter-spacing: -.06em; }
:is(html, body).m3-product .m3-scope .story-fact-primary > strong { color: #fff; }
:is(html, body).m3-product .m3-scope .story-fact p { margin: 6px 0 0; color: var(--m3-muted); }
:is(html, body).m3-product .m3-scope .story-fact-primary p { color: #d8ecea; }
:is(html, body).m3-product .m3-scope .section-heading { display: grid; gap: 15px; margin-bottom: 30px; }
:is(html, body).m3-product .m3-scope .section-heading h2 { max-width: 18ch; margin: 0; font-size: clamp(38px, 5vw, 64px); line-height: 1; letter-spacing: -.05em; }
:is(html, body).m3-product .m3-scope .section-heading p { max-width: 64ch; margin: 0; color: var(--m3-muted); font-size: 18px; }

:is(html, body).m3-product .m3-scope .comparison-section,
:is(html, body).m3-product .m3-scope .routine-section,
:is(html, body).m3-product .m3-scope .audience-section,
:is(html, body).m3-product .m3-scope .research-voices,
:is(html, body).m3-product .m3-scope .video-section,
:is(html, body).m3-product .m3-scope .faq-section,
:is(html, body).m3-product .m3-scope .reviews-section,
:is(html, body).m3-product .m3-scope .final-cta { margin-top: 72px; }
:is(html, body).m3-product .m3-scope .comparison-section { margin-top: 18px; padding: 54px 0 0; border-top: 1px solid var(--m3-line); }
:is(html, body).m3-product .m3-scope .comparison-table { display: grid; grid-template-columns: minmax(190px,.7fr) repeat(2,minmax(260px,1fr)); overflow: hidden; border: 1px solid var(--m3-line); border-radius: var(--m3-radius); }
:is(html, body).m3-product .m3-scope .comparison-head { display: flex; flex-direction: column; justify-content: flex-end; align-items: center; min-height: 220px; padding: 20px; border-bottom: 1px solid var(--m3-line); text-align: center; }
:is(html, body).m3-product .m3-scope .comparison-head:not(:last-child),
:is(html, body).m3-product .m3-scope .comparison-label,
:is(html, body).m3-product .m3-scope .comparison-value-puori { border-right: 1px solid var(--m3-line); }
:is(html, body).m3-product .m3-scope .comparison-head-puori { background: var(--m3-accent-soft); }
:is(html, body).m3-product .m3-scope .comparison-head-puori img { width: 112px; height: 112px; margin-bottom: 12px; object-fit: contain; }
:is(html, body).m3-product .m3-scope .comparison-head-other { background: var(--m3-soft); }
:is(html, body).m3-product .m3-scope .comparison-head-other img { width: 112px; height: 112px; margin-bottom: 12px; object-fit: contain; }
:is(html, body).m3-product .m3-scope .comparison-head strong { max-width: 20ch; }
:is(html, body).m3-product .m3-scope .comparison-label,
:is(html, body).m3-product .m3-scope .comparison-value { display: flex; align-items: center; min-height: 70px; padding: 15px 18px; border-bottom: 1px solid var(--m3-line); }
:is(html, body).m3-product .m3-scope .comparison-label { font-weight: 800; }
:is(html, body).m3-product .m3-scope .comparison-value { color: var(--m3-muted); }
:is(html, body).m3-product .m3-scope .comparison-value-puori { background: #f5faf9; color: var(--m3-accent); font-weight: 800; }
:is(html, body).m3-product .m3-scope .comparison-note { margin: 12px 0 0; color: var(--m3-muted); font-size: 14px; }
:is(html, body).m3-product .m3-scope .comparison-scroll-hint { display: none; margin: 10px 0 0; color: var(--m3-accent); font-size: 14px; font-weight: 800; }
:is(html, body).m3-product .m3-scope .creapure-explainer { display: grid; grid-template-columns: minmax(220px,.65fr) minmax(0,1.35fr); gap: clamp(28px,5vw,68px); margin-top: 22px; padding: clamp(24px,4vw,42px); border: 1px solid var(--m3-line); border-radius: var(--m3-radius); background: var(--m3-soft); }
:is(html, body).m3-product .m3-scope .creapure-explainer span { color: var(--m3-accent); font-size: 14px; font-weight: 800; }
:is(html, body).m3-product .m3-scope .creapure-explainer h3 { max-width: 15ch; margin: 8px 0 0; font-size: clamp(28px,3vw,42px); line-height: 1.05; letter-spacing: -.035em; }
:is(html, body).m3-product .m3-scope .creapure-explainer p { max-width: 68ch; margin: 0; color: var(--m3-muted); }
:is(html, body).m3-product .m3-scope .creapure-explainer p + p { margin-top: 16px; }
:is(html, body).m3-product .m3-scope .creapure-explainer p strong { color: var(--m3-ink); }

:is(html, body).m3-product .m3-scope .testing-section { margin-top: 18px; padding: clamp(30px,5vw,58px); border-radius: var(--m3-radius); background: var(--m3-accent); color: #fff; }
:is(html, body).m3-product .m3-scope .testing-header { display: grid; grid-template-columns: 1fr auto; gap: 28px; align-items: start; }
:is(html, body).m3-product .m3-scope .testing-header p { margin: 0 0 8px; color: #bfe4df; font-weight: 800; }
:is(html, body).m3-product .m3-scope .testing-header h2 { max-width: 16ch; margin: 0; color: #fff; font-size: clamp(38px,5vw,64px); line-height: 1; letter-spacing: -.05em; }
:is(html, body).m3-product .m3-scope .testing-header img { width: 148px; height: 148px; object-fit: contain; border-radius: 6px; background: #dff1ee; }
:is(html, body).m3-product .m3-scope .testing-lead { max-width: 66ch; margin: 24px 0 30px; color: #d7ece9; font-size: 18px; }
:is(html, body).m3-product .m3-scope .test-results { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1px; overflow: hidden; border: 1px solid rgba(255,255,255,.28); border-radius: 6px; background: rgba(255,255,255,.25); }
:is(html, body).m3-product .m3-scope .test-results div { display: flex; flex-direction: column; min-height: 110px; padding: 18px; background: rgba(0,46,43,.64); }
:is(html, body).m3-product .m3-scope .test-results span { color: #cde7e4; }
:is(html, body).m3-product .m3-scope .test-results strong { margin-top: auto; color: #fff; font-size: 22px; }
:is(html, body).m3-product .m3-scope .testing-footer { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 24px; align-items: end; margin-top: 28px; }
:is(html, body).m3-product .m3-scope .testing-actions { display: flex; align-items: center; gap: 22px; }
:is(html, body).m3-product .m3-scope .testing-actions > a:not(.button) { color: #fff; font-weight: 800; text-underline-offset: 4px; }
:is(html, body).m3-product .m3-scope .testing-batches { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; margin-top: 14px; }
:is(html, body).m3-product .m3-scope .testing-batches article { display: flex; min-height: 104px; flex-direction: column; padding: 15px 16px; border: 1px solid rgba(255,255,255,.26); border-radius: 6px; background: rgba(0,46,43,.48); }
:is(html, body).m3-product .m3-scope .testing-batches article span,
:is(html, body).m3-product .m3-scope .testing-batches article small { color: #d8efec; }
:is(html, body).m3-product .m3-scope .testing-batches article strong { margin: auto 0 3px; color: #fff; font-size: 21px; }
:is(html, body).m3-product .m3-scope .testing-batches > p { grid-column: 1 / -1; margin: 0; color: #cfe7e4; font-size: 13px; }
:is(html, body).m3-product .m3-scope .testing-batches > p strong { color: #fff; }
:is(html, body).m3-product .m3-scope .testing-ai { display: grid; grid-template-columns: minmax(0,190px) auto; gap: 12px; align-items: center; padding: 10px 12px 10px 16px; border: 1px solid rgba(255,255,255,.28); border-radius: 6px; background: rgba(0,46,43,.48); }
:is(html, body).m3-product .m3-scope .testing-ai p { margin: 0; color: #fff; font-size: 13px; font-weight: 800; line-height: 1.25; }
:is(html, body).m3-product .m3-scope .testing-ai-actions { display: flex; gap: 8px; }
:is(html, body).m3-product .m3-scope .testing-ai-actions a { --provider-color: #111; --provider-surface: #fff; display: grid; width: 44px; height: 44px; place-items: center; border: 1px solid rgba(255,255,255,.22); border-radius: 6px; background: rgba(255,255,255,.08); text-decoration: none; transition: background-color 160ms cubic-bezier(.23,1,.32,1), transform 140ms cubic-bezier(.23,1,.32,1); }
:is(html, body).m3-product .m3-scope .testing-ai-actions a[data-ai-provider="chatgpt"] { --provider-color: #111; --provider-surface: #f4f4f4; }
:is(html, body).m3-product .m3-scope .testing-ai-actions a[data-ai-provider="google-ai"] { --provider-color: #7558e8; --provider-surface: #f3efff; }
:is(html, body).m3-product .m3-scope .testing-ai-actions a:hover,
:is(html, body).m3-product .m3-scope .testing-ai-actions a:focus-visible { background: rgba(255,255,255,.18); outline: none; }
:is(html, body).m3-product .m3-scope .testing-ai-actions a:focus-visible { box-shadow: 0 0 0 3px #9fd9d3; }
:is(html, body).m3-product .m3-scope .testing-ai-actions a:active { transform: translateY(1px); }
:is(html, body).m3-product .m3-scope .ai-provider-icon { display: block; width: 32px; height: 32px; box-sizing: border-box; padding: 6px; border: 1px solid color-mix(in srgb, var(--provider-color) 24%, transparent); border-radius: 50%; background: var(--provider-surface); object-fit: contain; }
:is(html, body).m3-product .m3-scope .ai-provider-name { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
:is(html, body).m3-product .m3-scope .button { display: inline-flex; min-height: 50px; align-items: center; justify-content: center; padding: 0 18px; border-radius: 6px; font-weight: 800; text-decoration: none; }
:is(html, body).m3-product .m3-scope .button-light { background: #fff; color: var(--m3-accent); }

:is(html, body).m3-product .m3-scope .routine-section { display: grid; grid-template-columns: minmax(0,.9fr) minmax(420px,1.1fr); min-height: 720px; overflow: hidden; border-radius: var(--m3-radius); background: var(--m3-soft); }
:is(html, body).m3-product .m3-scope .routine-photo img { width: 100%; height: 100%; object-fit: cover; }
:is(html, body).m3-product .m3-scope .routine-content { display: flex; flex-direction: column; justify-content: center; padding: clamp(32px,6vw,76px); }
:is(html, body).m3-product .m3-scope .routine-content h2 { max-width: 11ch; margin: 0 0 18px; font-size: clamp(42px,5vw,66px); line-height: 1; letter-spacing: -.05em; }
:is(html, body).m3-product .m3-scope .routine-content > p { max-width: 50ch; margin: 0 0 28px; color: var(--m3-muted); font-size: 17px; }
:is(html, body).m3-product .m3-scope .routine-steps { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1px; overflow: hidden; border: 1px solid var(--m3-line); border-radius: 6px; background: var(--m3-line); }
:is(html, body).m3-product .m3-scope .routine-steps article { display: flex; flex-direction: column; min-height: 112px; padding: 17px; background: var(--m3-surface); }
:is(html, body).m3-product .m3-scope .routine-steps strong { color: var(--m3-accent); }
:is(html, body).m3-product .m3-scope .routine-steps span { margin-top: 5px; color: var(--m3-muted); font-size: 14px; }
:is(html, body).m3-product .m3-scope .routine-content > a { align-self: flex-start; margin-top: 24px; color: var(--m3-accent); font-weight: 800; text-underline-offset: 4px; }

:is(html, body).m3-product .m3-scope .situations-panel { display: grid; grid-template-columns: minmax(260px,.68fr) minmax(0,1.32fr); gap: clamp(28px,5vw,66px); padding: clamp(28px,5vw,58px); border-radius: var(--m3-radius); background: var(--m3-accent); color: #fff; }
:is(html, body).m3-product .m3-scope .situations-panel-copy { display: flex; flex-direction: column; justify-content: center; }
:is(html, body).m3-product .m3-scope .situations-panel-copy p { margin: 0 0 10px; color: #a9dfda; font-size: 14px; font-weight: 800; }
:is(html, body).m3-product .m3-scope .situations-panel-copy h2 { max-width: 12ch; margin: 0 0 18px; color: #fff; font-size: clamp(38px,4.6vw,60px); line-height: .98; letter-spacing: -.05em; }
:is(html, body).m3-product .m3-scope .situations-panel-copy span { max-width: 42ch; color: #d3e9e6; }
:is(html, body).m3-product .m3-scope .audience-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1px; align-self: stretch; overflow: hidden; background: rgba(255,255,255,.3); }
:is(html, body).m3-product .m3-scope .audience-grid a { display: flex; min-height: 190px; flex-direction: column; justify-content: flex-end; padding: 20px; background: rgba(0,51,48,.82); color: #fff; text-decoration: none; transition: background-color 160ms ease, transform 160ms ease; }
:is(html, body).m3-product .m3-scope .audience-grid a:hover,
:is(html, body).m3-product .m3-scope .audience-grid a:focus-visible { background: rgba(0,43,40,.96); }
:is(html, body).m3-product .m3-scope .audience-grid a:active { transform: translateY(1px); }
:is(html, body).m3-product .m3-scope .audience-grid small { margin-bottom: auto; color: #9edbd5; font-size: 14px; font-weight: 800; }
:is(html, body).m3-product .m3-scope .audience-grid strong { max-width: 26ch; margin-top: 14px; color: #fff; font-size: 20px; line-height: 1.18; }
:is(html, body).m3-product .m3-scope .audience-grid span { max-width: 38ch; margin-top: 8px; color: #d3e9e6; font-size: 14px; line-height: 1.42; }
:is(html, body).m3-product .m3-scope .audience-grid b { margin-top: 14px; color: #9edbd5; font-size: 14px; }

:is(html, body).m3-product .m3-scope .research-voices { margin-top: 18px; padding-top: 54px; border-top: 1px solid var(--m3-line); }
:is(html, body).m3-product .m3-scope .research-voice-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
:is(html, body).m3-product .m3-scope .research-voice-grid article { display: grid; grid-template-columns: 200px 1fr; min-height: 360px; overflow: hidden; border: 1px solid var(--m3-line); border-radius: var(--m3-radius); background: var(--m3-soft); }
:is(html, body).m3-product .m3-scope .research-voice-grid img { width: 100%; height: 100%; object-fit: cover; object-position: center top; }
:is(html, body).m3-product .m3-scope .research-voice-grid .research-voice-rhonda { object-position: 78% center; }
:is(html, body).m3-product .m3-scope .research-voice-grid article > div { display: flex; flex-direction: column; padding: 28px; }
:is(html, body).m3-product .m3-scope .research-voice-grid span { color: var(--m3-accent); font-size: 14px; font-weight: 800; }
:is(html, body).m3-product .m3-scope .research-voice-grid blockquote { margin: 20px 0; font-size: clamp(21px,2.2vw,29px); line-height: 1.18; letter-spacing: -.025em; }
:is(html, body).m3-product .m3-scope .research-voice-message { margin: 20px 0; color: var(--m3-ink); font-size: clamp(21px,2.2vw,29px); line-height: 1.18; letter-spacing: -.025em; }
:is(html, body).m3-product .m3-scope .research-voice-grid strong { margin-top: auto; }
:is(html, body).m3-product .m3-scope .research-voice-grid small { margin-top: 5px; color: var(--m3-muted); font-size: 14px; }
:is(html, body).m3-product .m3-scope .research-voice-grid a { margin-top: 13px; color: var(--m3-accent); font-weight: 800; text-underline-offset: 4px; }

:is(html, body).m3-product .m3-scope .video-grid { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(260px,31%); gap: 12px; overflow-x: auto; padding-bottom: 10px; scroll-snap-type: x mandatory; overscroll-behavior-inline: contain; scrollbar-color: var(--m3-accent) var(--m3-line); }
:is(html, body).m3-product .m3-scope .video-card { position: relative; overflow: hidden; min-height: 500px; padding: 0; border: 0; border-radius: var(--m3-radius); background: var(--m3-ink); color: #fff; cursor: pointer; scroll-snap-align: start; text-align: left; }
:is(html, body).m3-product .m3-scope .video-card img { width: 100%; height: 100%; object-fit: cover; opacity: .72; transition: transform 240ms cubic-bezier(.22,1,.36,1); }
:is(html, body).m3-product .m3-scope .video-card:first-child img,
:is(html, body).m3-product .m3-scope .video-card:last-child img { object-position: center; transform: scale(1.35); }
:is(html, body).m3-product .m3-scope .video-card:first-child:hover img,
:is(html, body).m3-product .m3-scope .video-card:last-child:hover img { transform: scale(1.38); }
:is(html, body).m3-product .m3-scope .video-card:hover img { transform: scale(1.02); }
:is(html, body).m3-product .m3-scope .video-card::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg,transparent 35%,rgba(3,20,18,.88) 100%); }
:is(html, body).m3-product .m3-scope .play-icon { position: absolute; z-index: 2; top: 22px; right: 22px; display: grid; width: 52px; height: 52px; place-items: center; border: 1px solid rgba(255,255,255,.64); border-radius: 50%; background: rgba(0,50,47,.6); font-size: 18px; }
:is(html, body).m3-product .m3-scope .video-copy { position: absolute; z-index: 2; right: 22px; bottom: 24px; left: 22px; display: flex; flex-direction: column; }
:is(html, body).m3-product .m3-scope .video-copy strong { color: #fff; font-size: 22px; line-height: 1.15; }
:is(html, body).m3-product .m3-scope .video-copy small { margin-top: 6px; color: rgba(255,255,255,.76); font-size: 14px; }
:is(html, body).m3-product .video-dialog { width: min(94vw,520px); margin: auto; padding: 0; border: 0; border-radius: var(--m3-radius); background: #081a18; color: #fff; box-shadow: 0 28px 90px rgba(0,0,0,.35); }
:is(html, body).m3-product .video-dialog::backdrop { background: rgba(4,16,15,.78); }
:is(html, body).m3-product .m3-scope .video-dialog-header { display: flex; justify-content: space-between; align-items: center; gap: 14px; padding: 14px 16px; }
:is(html, body).m3-product .m3-scope .video-dialog-header button { min-height: 40px; padding: 0 12px; border: 1px solid rgba(255,255,255,.35); border-radius: 5px; background: transparent; color: #fff; cursor: pointer; }
:is(html, body).m3-product .video-dialog video,
:is(html, body).m3-product .video-dialog iframe { display: block; width: 100%; max-height: 78vh; border: 0; background: #000; }
:is(html, body).m3-product .video-dialog iframe { aspect-ratio: 9 / 16; max-height: 78vh; margin-inline: auto; }
:is(html, body).m3-product .video-dialog [hidden] { display: none; }

:is(html, body).m3-product .m3-scope .faq-section { display: grid; grid-template-columns: minmax(280px,.7fr) minmax(0,1.3fr); gap: clamp(36px,7vw,90px); align-items: start; margin-top: 18px; padding-top: 54px; border-top: 1px solid var(--m3-line); }
:is(html, body).m3-product .m3-scope .faq-side { position: sticky; top: 24px; }
:is(html, body).m3-product .m3-scope .faq-side h2 { max-width: 11ch; margin: 0 0 16px; font-size: clamp(42px,5vw,64px); line-height: 1; letter-spacing: -.05em; }
:is(html, body).m3-product .m3-scope .faq-side p { max-width: 32ch; color: var(--m3-muted); }
:is(html, body).m3-product .m3-scope .faq-side a { color: var(--m3-accent); font-weight: 800; text-underline-offset: 4px; }
:is(html, body).m3-product .m3-scope .faq-list details { border-bottom: 1px solid var(--m3-line); }
:is(html, body).m3-product .m3-scope .faq-list summary { position: relative; padding: 20px 42px 20px 0; font-size: 18px; font-weight: 800; cursor: pointer; list-style: none; }
:is(html, body).m3-product .m3-scope .faq-list summary::-webkit-details-marker { display: none; }
:is(html, body).m3-product .m3-scope .faq-list summary::after { content: "+"; position: absolute; top: 18px; right: 4px; color: var(--m3-accent); font-size: 24px; line-height: 1; }
:is(html, body).m3-product .m3-scope .faq-list details[open] summary::after { content: "−"; }
:is(html, body).m3-product .m3-scope .faq-list details p { max-width: 68ch; margin: -3px 0 20px; color: var(--m3-muted); }

:is(html, body).m3-product .m3-scope .reviews-section { display: grid; grid-template-columns: .42fr 1.58fr; gap: clamp(38px,7vw,86px); padding: clamp(32px,5vw,58px); border-radius: var(--m3-radius); background: var(--m3-accent-soft); }
:is(html, body).m3-product .m3-scope .reviews-summary { display: flex; flex-direction: column; justify-content: center; }
:is(html, body).m3-product .m3-scope .reviews-summary > strong { margin: 0 0 4px; color: var(--m3-accent); font-size: clamp(54px,7vw,84px); line-height: .9; letter-spacing: -.06em; }
:is(html, body).m3-product .m3-scope .reviews-summary p { margin: 8px 0 0; color: var(--m3-muted); }
:is(html, body).m3-product .m3-scope .reviews-summary-stars { margin-bottom: 14px; font-size: 26px; line-height: 1; letter-spacing: .12em; }
:is(html, body).m3-product .m3-scope .reviews-content h2 { margin: 0 0 24px; font-size: clamp(38px,4vw,54px); line-height: 1; letter-spacing: -.045em; }
:is(html, body).m3-product .m3-scope .review-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; }
:is(html, body).m3-product .m3-scope .review-grid blockquote { display: flex; flex-direction: column; min-height: 220px; margin: 0; padding: 20px; border-radius: 6px; background: #fff; }
:is(html, body).m3-product .m3-scope .review-stars { display: block; margin-bottom: 14px; color: #d58a14; font-size: 18px; line-height: 1; letter-spacing: .08em; }
:is(html, body).m3-product .m3-scope .review-grid p { margin: 0; color: #33403e; font-size: 16px; font-weight: 600; }
:is(html, body).m3-product .m3-scope .review-grid footer { display: flex; flex-direction: column; align-items: flex-start; margin-top: auto; padding-top: 18px; color: var(--m3-muted); font-size: 14px; }
:is(html, body).m3-product .m3-scope .review-grid footer a { color: var(--m3-muted); font-weight: 700; text-underline-offset: 3px; }
:is(html, body).m3-product .m3-scope .review-grid footer small { margin-top: 3px; color: var(--m3-muted); font-size: 13px; }
:is(html, body).m3-product .m3-scope .reviews-all-link { display: inline-flex; width: fit-content; margin-top: 18px; color: var(--m3-accent); font-weight: 800; text-underline-offset: 3px; }

:is(html, body).m3-product .m3-scope .faq-awards { margin-top: 30px; padding: 18px; border: 1px solid var(--m3-line); border-radius: var(--m3-radius); background: var(--m3-soft); }
:is(html, body).m3-product .m3-scope .faq-awards > p { margin: 0 0 14px; color: var(--m3-muted); font-size: 14px; font-weight: 800; letter-spacing: .03em; }
:is(html, body).m3-product .m3-scope .faq-awards-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; align-items: center; }
:is(html, body).m3-product .m3-scope .faq-awards-grid img { width: 100%; max-height: 70px; object-fit: contain; }
:is(html, body).m3-product .m3-scope .faq-awards-grid .vegan-award { grid-column: 1 / -1; justify-self: center; width: min(100%, 118px); max-height: 72px; }

:is(html, body).m3-product .m3-scope .methodology-note { margin-top: 18px; padding: 0 18px; border: 1px solid #dbe6e3; border-radius: 6px; background: #f8faf9; }
:is(html, body).m3-product .m3-scope .methodology-note summary { position: relative; padding: 14px 34px 14px 0; color: #315e5b; font-size: 14px; font-weight: 700; cursor: pointer; list-style: none; }
:is(html, body).m3-product .m3-scope .methodology-note summary::-webkit-details-marker { display: none; }
:is(html, body).m3-product .m3-scope .methodology-note summary::after { content: "+"; position: absolute; top: 12px; right: 2px; font-size: 20px; line-height: 1; }
:is(html, body).m3-product .m3-scope .methodology-note details[open] summary::after { content: "−"; }
:is(html, body).m3-product .m3-scope .methodology-note details > div { padding: 0 0 15px; }
:is(html, body).m3-product .m3-scope .methodology-note p { max-width: none; margin: 6px 0; color: var(--m3-muted); font-size: 12px; line-height: 1.42; }
:is(html, body).m3-product .m3-scope .methodology-links { display: flex; flex-wrap: wrap; gap: 6px 16px; margin-top: 10px; }
:is(html, body).m3-product .m3-scope .methodology-links a { color: var(--m3-accent); font-size: 12px; font-weight: 700; text-underline-offset: 3px; }
:is(html, body).m3-product .m3-scope .methodology-note small { display: block; margin-top: 10px; color: var(--m3-muted); font-size: 11px; }

@media (min-width: 861px) {
  :is(html, body).m3-product .m3-scope .reviews-summary > strong { font-size: clamp(48px, 4.6vw, 66px); white-space: nowrap; }}

:is(html, body).m3-product .m3-scope .final-cta { position: relative; display: flex; align-items: center; overflow: hidden; min-height: 620px; border-radius: var(--m3-radius); color: #fff; }
:is(html, body).m3-product .m3-scope .final-cta > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 42%; }
:is(html, body).m3-product .m3-scope .final-cta-scrim { position: absolute; inset: 0; background: linear-gradient(90deg,rgba(3,27,25,.94) 0%,rgba(3,27,25,.72) 48%,rgba(3,27,25,.12) 100%); }
:is(html, body).m3-product .m3-scope .final-cta-copy { position: relative; z-index: 2; width: min(620px,62%); padding: clamp(30px,6vw,72px); }
:is(html, body).m3-product .m3-scope .final-cta-copy h2 { margin: 0 0 18px; color: #fff; font-size: clamp(42px,5vw,68px); line-height: .98; letter-spacing: -.05em; }
:is(html, body).m3-product .m3-scope .final-cta-copy p { margin: 0 0 26px; color: rgba(255,255,255,.82); font-size: 18px; }

@media (max-width: 860px) {
  :is(html, body).m3-product .content-nav { justify-content: flex-start; margin: 32px 16px 0; }
  :is(html, body).m3-product .m3-scope .quick-proof a { min-height: 82px; padding: 13px; }
  :is(html, body).m3-product .m3-scope .women-insight { grid-template-columns: 78px 1fr auto; }
  :is(html, body).m3-product .m3-scope .women-insight img { width: 78px; height: 100%; min-height: 92px; }
  :is(html, body).m3-product .m3-scope .batch-link-row { margin-bottom: 21px; }
  :is(html, body).m3-product .m3-scope .story-section { margin: 16px 16px 0; padding-top: 36px; }
  :is(html, body).m3-product .m3-scope .story-intro { margin-bottom: 22px; }
  :is(html, body).m3-product .m3-scope .story-intro h2 { font-size: 42px; }
  :is(html, body).m3-product .m3-scope .story-intro p { font-size: 16px; }
  :is(html, body).m3-product .m3-scope .story-grid { grid-template-columns: 1fr; }
  :is(html, body).m3-product .m3-scope .performance-card { min-height: 560px; }
  :is(html, body).m3-product .m3-scope .story-facts { grid-template-columns: 1fr; }
  :is(html, body).m3-product .m3-scope .story-fact-primary,
:is(html, body).m3-product .m3-scope .story-fact-wide { grid-column: auto; }
  :is(html, body).m3-product .m3-scope .story-fact-primary { min-height: 260px; }
  :is(html, body).m3-product .m3-scope .story-fact { min-height: 190px; padding: 20px; }
  :is(html, body).m3-product .m3-scope .story-fact-wide { min-height: 180px; }
  :is(html, body).m3-product .m3-scope .story-fact > strong { font-size: 60px; }
  :is(html, body).m3-product .m3-scope .comparison-section,
:is(html, body).m3-product .m3-scope .routine-section,
:is(html, body).m3-product .m3-scope .audience-section,
:is(html, body).m3-product .m3-scope .research-voices,
:is(html, body).m3-product .m3-scope .video-section,
:is(html, body).m3-product .m3-scope .faq-section,
:is(html, body).m3-product .m3-scope .reviews-section,
:is(html, body).m3-product .m3-scope .final-cta { margin: 52px 16px 0; }
  :is(html, body).m3-product .m3-scope .comparison-section { margin-top: 16px; padding-top: 36px; }
  :is(html, body).m3-product .m3-scope .section-heading { margin-bottom: 22px; }
  :is(html, body).m3-product .m3-scope .section-heading h2 { font-size: 42px; }
  :is(html, body).m3-product .m3-scope .section-heading p { font-size: 16px; }
  :is(html, body).m3-product .m3-scope .comparison-table { grid-template-columns: minmax(116px,.7fr) repeat(2,minmax(142px,1fr)); overflow-x: auto; }
  :is(html, body).m3-product .m3-scope .comparison-scroll-hint { display: block; }
  :is(html, body).m3-product .m3-scope .comparison-head { min-height: 180px; padding: 14px 10px; font-size: 14px; }
  :is(html, body).m3-product .m3-scope .comparison-head-puori img,
:is(html, body).m3-product .m3-scope .comparison-head-other img { width: 92px; height: 92px; margin-bottom: 10px; }
  :is(html, body).m3-product .m3-scope .comparison-label,
:is(html, body).m3-product .m3-scope .comparison-value { min-height: 78px; padding: 12px 10px; font-size: 14px; line-height: 1.3; }
  :is(html, body).m3-product .m3-scope .creapure-explainer { grid-template-columns: 1fr; gap: 20px; padding: 24px 20px; }
  :is(html, body).m3-product .m3-scope .creapure-explainer h3 { font-size: 32px; }
  :is(html, body).m3-product .m3-scope .testing-section { margin-top: 14px; padding: 28px 20px; }
  :is(html, body).m3-product .m3-scope .testing-header { grid-template-columns: 1fr 70px; gap: 14px; }
  :is(html, body).m3-product .m3-scope .testing-header h2 { font-size: 40px; }
  :is(html, body).m3-product .m3-scope .testing-header img { width: 70px; height: 70px; }
  :is(html, body).m3-product .m3-scope .testing-lead { font-size: 16px; }
  :is(html, body).m3-product .m3-scope .test-results { grid-template-columns: repeat(2,minmax(0,1fr)); }
  :is(html, body).m3-product .m3-scope .test-results div { min-height: 100px; padding: 14px; }
  :is(html, body).m3-product .m3-scope .testing-footer { grid-template-columns: 1fr; gap: 18px; }
  :is(html, body).m3-product .m3-scope .testing-actions { align-items: stretch; flex-direction: column; gap: 14px; }
  :is(html, body).m3-product .m3-scope .testing-actions > a:not(.button) { text-align: center; }
  :is(html, body).m3-product .m3-scope .testing-ai { grid-template-columns: 1fr auto; padding: 10px 12px 10px 14px; }
  :is(html, body).m3-product .m3-scope .routine-section { grid-template-columns: 1fr; min-height: 0; }
  :is(html, body).m3-product .m3-scope .routine-photo { height: 430px; }
  :is(html, body).m3-product .m3-scope .routine-content { padding: 30px 22px; }
  :is(html, body).m3-product .m3-scope .routine-content h2 { font-size: 43px; }
  :is(html, body).m3-product .m3-scope .situations-panel { grid-template-columns: 1fr; gap: 26px; margin-bottom: 18px; padding: 28px 20px; }
  :is(html, body).m3-product .m3-scope .situations-panel-copy h2 { font-size: 42px; }
  :is(html, body).m3-product .m3-scope .audience-grid { grid-template-columns: 1fr; }
  :is(html, body).m3-product .m3-scope .audience-grid a { min-height: 150px; padding: 20px; }
  :is(html, body).m3-product .m3-scope .video-grid { grid-auto-columns: minmax(250px,82vw); margin-right: -16px; }
  :is(html, body).m3-product .m3-scope .video-card { min-height: 470px; }
  :is(html, body).m3-product .m3-scope .research-voices { margin-top: 16px; padding-top: 36px; }
  :is(html, body).m3-product .m3-scope .research-voice-grid { grid-template-columns: 1fr; }
  :is(html, body).m3-product .m3-scope .research-voice-grid article { grid-template-columns: 126px 1fr; min-height: 330px; }
  :is(html, body).m3-product .m3-scope .research-voice-grid article > div { padding: 22px 18px; }
  :is(html, body).m3-product .m3-scope .faq-section { grid-template-columns: 1fr; gap: 28px; margin-top: 16px; padding-top: 36px; }
  :is(html, body).m3-product .m3-scope .faq-side { position: static; }
  :is(html, body).m3-product .m3-scope .faq-awards { display: none; }
  :is(html, body).m3-product .m3-scope .reviews-section { grid-template-columns: 1fr; padding: 28px 20px; }
  :is(html, body).m3-product .m3-scope .review-grid { grid-template-columns: 1fr; }
  :is(html, body).m3-product .m3-scope .review-grid blockquote { min-height: 0; }
  :is(html, body).m3-product .m3-scope .review-grid footer { margin-top: 10px; padding-top: 0; }
  :is(html, body).m3-product .m3-scope .methodology-note { margin: 16px 16px 0; padding: 0 15px; }
  :is(html, body).m3-product .m3-scope .final-cta { min-height: 590px; }
  :is(html, body).m3-product .m3-scope .final-cta-scrim { background: linear-gradient(180deg,rgba(3,27,25,.18) 15%,rgba(3,27,25,.94) 100%); }
  :is(html, body).m3-product .m3-scope .final-cta-copy { align-self: flex-end; width: 100%; padding: 28px 22px; }
  :is(html, body).m3-product .m3-scope .final-cta-copy h2 { font-size: 43px; }}

@media (max-width: 430px) {
  :is(html, body).m3-product .m3-scope .performance-card { min-height: 500px; }
  :is(html, body).m3-product .m3-scope .performance-card-copy h3 { font-size: 38px; }
  :is(html, body).m3-product .m3-scope .performance-card-copy p { font-size: 15px; line-height: 1.42; }
  :is(html, body).m3-product .m3-scope .performance-card-copy small { font-size: 14px; }
  :is(html, body).m3-product .m3-scope .story-facts { grid-template-columns: 1fr; }
  :is(html, body).m3-product .m3-scope .story-fact-primary,
:is(html, body).m3-product .m3-scope .story-fact-wide { grid-column: auto; }
  :is(html, body).m3-product .m3-scope .story-fact { min-height: 178px; }
  :is(html, body).m3-product .m3-scope .story-fact-primary { min-height: 230px; }
  :is(html, body).m3-product .m3-scope .routine-steps { grid-template-columns: 1fr; }
  :is(html, body).m3-product .m3-scope .routine-steps article { min-height: 0; padding: 18px 20px; }
  :is(html, body).m3-product .m3-scope .comparison-table { grid-template-columns: 96px 148px 160px; overflow-x: auto; overscroll-behavior-inline: contain; }
  :is(html, body).m3-product .m3-scope .comparison-head { min-height: 148px; padding: 10px 6px; font-size: 13px; line-height: 1.22; }
  :is(html, body).m3-product .m3-scope .comparison-head-puori img,
:is(html, body).m3-product .m3-scope .comparison-head-other img { width: 64px; height: 64px; margin-bottom: 7px; }
  :is(html, body).m3-product .m3-scope .comparison-label,
:is(html, body).m3-product .m3-scope .comparison-value { min-width: 0; min-height: 82px; padding: 9px 7px; font-size: 13px; overflow-wrap: anywhere; }
  :is(html, body).m3-product .m3-scope .testing-header h2 { font-size: 36px; }
  :is(html, body).m3-product .m3-scope .testing-lead { margin-top: 18px; }
  :is(html, body).m3-product .m3-scope .testing-batches { grid-template-columns: 1fr; }
  :is(html, body).m3-product .m3-scope .testing-batches > p { grid-column: auto; }
  :is(html, body).m3-product .m3-scope .video-card { min-height: 440px; }
  :is(html, body).m3-product .m3-scope .research-voice-grid article { grid-template-columns: 1fr; }
  :is(html, body).m3-product .m3-scope .research-voice-grid img { height: 260px; }
  :is(html, body).m3-product .m3-scope .reviews-section { gap: 22px; padding: 23px 17px; }
  :is(html, body).m3-product .m3-scope .reviews-content h2 { margin-bottom: 17px; font-size: 36px; }
  :is(html, body).m3-product .m3-scope .review-grid blockquote { padding: 17px; }
  :is(html, body).m3-product .m3-scope .final-cta-copy h2 { font-size: 38px; }}
:is(html, body).m3-product .m3-scope .m3-local-proof img { object-position: 50% 28%; }
:is(html, body).m3-product .m3-scope .m3-performance-card img { object-position: 57% center; }
:is(html, body).m3-product .m3-scope .m3-formula-fact { justify-content: center; }
:is(html, body).m3-product .m3-scope .formula-dose-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1px; margin-top: 18px; overflow: hidden; border: 1px solid var(--m3-line); border-radius: 6px; background: var(--m3-line); }
:is(html, body).m3-product .m3-scope .formula-dose-grid > div { display: flex; min-width: 0; flex-direction: column; padding: 15px; background: var(--m3-surface); }
:is(html, body).m3-product .m3-scope .formula-dose-grid strong { color: var(--m3-accent); font-size: clamp(19px,2vw,25px); line-height: 1; }
:is(html, body).m3-product .m3-scope .formula-dose-grid small { margin-top: 6px; color: var(--m3-muted); font-size: 13px; }
:is(html, body).m3-product .m3-scope .m3-generic-pack > span { display: grid; width: 96px; height: 112px; margin-bottom: 12px; place-items: center; border-radius: 10px 10px 18px 18px; background: linear-gradient(180deg,#f9fbfb,#dfe8e6); color: #75827f; font-size: 30px; font-weight: 800; box-shadow: inset 0 0 0 1px #d3dddb; }
:is(html, body).m3-product .m3-scope .m3-forms-explainer { background: var(--m3-soft); }
:is(html, body).m3-product .m3-scope .section-kicker { margin: 0 0 10px; color: var(--m3-accent); font-size: 14px; font-weight: 800; }
:is(html, body).m3-product .m3-scope .m3-term { display: inline-block !important; color: inherit; font: inherit; font-weight: inherit; line-height: inherit; text-decoration: underline dotted currentColor; text-decoration-thickness: 1px; text-underline-offset: 3px; white-space: nowrap; cursor: help; }
:is(html, body).m3-product .m3-scope .comparison-value-text { min-width: 0; }
:is(html, body).m3-product .m3-scope .m3-term:focus-visible { border-radius: 2px; outline: 2px solid var(--m3-accent); outline-offset: 2px; }
:is(html, body).m3-product .m3-scope .video-card:first-child img { object-position: center; transform: none; }
:is(html, body).m3-product .m3-scope .video-card:first-child:hover img { transform: scale(1.02); }
:is(html, body).m3-product .m3-scope .video-card:nth-child(3) img { object-position: 50% 25%; }
:is(html, body).m3-product .m3-scope .video-card:nth-child(4) img { object-position: 62% center; }

@media (max-width: 860px) {
  :is(html, body).m3-product .m3-scope .formula-dose-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  :is(html, body).m3-product .m3-scope .m3-performance-card img { object-position: 62% center; }}

@media (max-width: 430px) {
  :is(html, body).m3-product .m3-scope .formula-dose-grid > div { padding: 13px; }
  :is(html, body).m3-product .m3-scope .m3-generic-pack > span { width: 58px; height: 64px; margin-bottom: 7px; border-radius: 7px 7px 11px 11px; font-size: 20px; }}

:is(html, body).m3-product {
  --m3-ink: #172321;
  --m3-muted: #667471;
  --m3-line: #d9e4e1;
  --m3-line-strong: #b7cfca;
  --m3-surface: #ffffff;
  --m3-soft: #f3f7f6;
  --m3-tint: #e7f3f1;
  --m3-accent: #006460;
  --m3-positive: #16874b;
}

:is(html, body).m3-product .p-short-description .vice-info,
:is(html, body).m3-product .social-buttons-wrapper {
  display: none !important;
}

:is(html, body).m3-product #m3-short,
:is(html, body).m3-product #m3-long,
:is(html, body).m3-product .m3-content-nav,
:is(html, body).m3-product #m3-video-dialog {
  font-family: inherit !important;
}

:is(html, body).m3-product #m3-short {
  margin: 22px 0 6px;
  background: transparent;
}

:is(html, body).m3-product #m3-short .audience-tags { margin: 0 0 12px; }
:is(html, body).m3-product #m3-short .audience-tags-intro { margin-bottom: 6px; }
:is(html, body).m3-product #m3-short .quick-proof { margin-top: 0; }
:is(html, body).m3-product #m3-short .women-insight,
:is(html, body).m3-product #m3-short .batch-link-row { margin-top: 12px; }

:is(html, body).m3-product #m3-short .audience-tags a,
:is(html, body).m3-product #m3-short .quick-proof a,
:is(html, body).m3-product #m3-short .women-insight,
:is(html, body).m3-product #m3-short .batch-link-row a,
:is(html, body).m3-product .m3-content-nav a,
:is(html, body).m3-product #m3-long .audience-grid a,
:is(html, body).m3-product #m3-long .video-card,
:is(html, body).m3-product #m3-long .button {
  text-decoration: none !important;
}

:is(html, body).m3-product .p-detail > .m3-content-nav {
  box-sizing: border-box;
  width: 100%;
  max-width: none;
  margin: 34px 0 18px;
}

:is(html, body).m3-product .m3-content-nav .content-nav-inner {
  display: flex;
  justify-content: center;
  gap: 8px;
  overflow-x: auto;
  scrollbar-width: none;
}

:is(html, body).m3-product .m3-content-nav .content-nav-inner::-webkit-scrollbar { display: none; }
:is(html, body).m3-product .p-detail-tabs-wrapper .shp-tabs-row { display: none !important; }
:is(html, body).m3-product #description > .description-inner > h3:first-child { display: none; }
:is(html, body).m3-product #description .description-inner { max-width: none; padding-top: 0; }

:is(html, body).m3-product #m3-long {
  width: min(1220px, 100%);
  margin-inline: auto;
  background: transparent;
}

@media (min-width: 992px) {
  :is(html, body).m3-product #m3-long section[id],
  :is(html, body).m3-product #m3-long [id="ingredients"],
  :is(html, body).m3-product #m3-long [id="testing"],
  :is(html, body).m3-product #m3-long [id="reviews"],
  :is(html, body).m3-product #m3-long [id="videos"],
  :is(html, body).m3-product #m3-long [id="experts"],
  :is(html, body).m3-product #m3-long [id="faq"] {
    scroll-margin-top: 154px;
  }
}

:is(html, body).m3-product #product-detail-form .tpmove-variant-ui { scroll-margin-top: 96px; }
:is(html, body).m3-product #product-detail-form .m3-variant-ui {
  margin: 18px 0 20px;
  padding: 18px;
  border: 1px solid var(--m3-line-strong);
  border-radius: 8px;
  background: var(--m3-soft);
  box-shadow: none;
}

:is(html, body).m3-product #product-detail-form .m3-variant-ui .tpmove-variant-ui-title {
  margin-bottom: 4px;
  color: var(--m3-ink);
  font-size: 20px;
  font-weight: 800;
}

:is(html, body).m3-product #product-detail-form .m3-variant-ui .tpmove-variant-ui-subtitle {
  margin-bottom: 14px;
  color: var(--m3-muted);
  font-size: 14px;
}

:is(html, body).m3-product #product-detail-form .m3-variant-ui .tpmove-variant-cards {
  grid-template-columns: 1fr;
  gap: 18px;
}
:is(html, body).m3-product #product-detail-form .m3-variant-card {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 4px 12px;
  min-height: 116px;
  padding: 16px;
  border: 1px solid var(--m3-line-strong);
  border-radius: 7px;
  background: var(--m3-surface);
  box-shadow: none;
}

:is(html, body).m3-product #product-detail-form .m3-variant-card:hover { transform: none; }
:is(html, body).m3-product #product-detail-form .m3-variant-card.is-active {
  border-color: var(--m3-accent);
  background: var(--m3-tint);
  box-shadow: 0 0 0 2px rgb(0 100 96 / .08);
}

:is(html, body).m3-product #product-detail-form .m3-variant-card.is-active::after {
  display: none !important;
  content: none !important;
}

:is(html, body).m3-product #product-detail-form .m3-variant-card .tpmove-variant-card-badge {
  position: absolute;
  top: -11px;
  left: 12px;
  margin: 0;
  border-radius: 4px;
  background: var(--m3-accent);
  color: #fff;
}

:is(html, body).m3-product #product-detail-form .m3-variant-card .tpmove-variant-card-name {
  margin: 0;
  color: var(--m3-ink);
  font-size: 18px;
  font-weight: 800;
}

:is(html, body).m3-product #product-detail-form .m3-variant-card .tpmove-variant-card-meta {
  grid-column: 1;
  margin: 0;
  color: var(--m3-muted);
  font-size: 14px;
}

:is(html, body).m3-product #product-detail-form .m3-variant-price {
  display: flex;
  grid-column: 2;
  grid-row: 1 / span 2;
  flex-direction: column;
  align-items: flex-end;
}

:is(html, body).m3-product #product-detail-form .m3-variant-total {
  color: var(--m3-ink);
  font-size: 18px;
  font-weight: 800;
  line-height: 1.2;
}

:is(html, body).m3-product #product-detail-form .m3-variant-daily {
  margin-top: 3px;
  color: var(--m3-muted);
  font-size: 14px;
}

:is(html, body).m3-product #product-detail-form .m3-variant-benefits {
  display: flex;
  grid-column: 1 / -1;
  flex-wrap: wrap;
  gap: 5px 14px;
  margin-top: 7px;
  padding-top: 9px;
  border-top: 1px solid var(--m3-line);
  color: var(--m3-positive);
  font-size: 14px;
  font-weight: 800;
}

:is(html, body).m3-product #m3-long .performance-card-copy h3,
:is(html, body).m3-product #m3-long .testing-header h2,
:is(html, body).m3-product #m3-long .situations-panel-copy h2,
:is(html, body).m3-product #m3-long .video-copy strong,
:is(html, body).m3-product #m3-long .final-cta-copy h2 {
  color: #fff !important;
}

:is(html, body).m3-product #m3-video-dialog[open] {
  position: fixed !important;
  inset: 0 !important;
  z-index: 100000 !important;
  width: min(520px, calc(100vw - 32px)) !important;
  max-width: none !important;
  max-height: calc(100dvh - 32px) !important;
  margin: auto !important;
  overflow: auto;
}

:is(html, body).m3-product #m3-video-dialog video,
:is(html, body).m3-product #m3-video-dialog iframe {
  width: 100% !important;
  height: min(78dvh, 780px) !important;
  max-height: min(78dvh, 780px) !important;
  object-fit: contain;
}

:is(html, body).m3-product.m3-video-open { overflow: hidden; }

@media (min-width: 768px) {
  :is(html, body).m3-product #product-detail-form .p-short-description {
    margin-bottom: 10px !important;
    padding-bottom: 0 !important;
  }

  :is(html, body).m3-product .m3-benefit-banner {
    display: grid !important;
    grid-template-columns: repeat(2,minmax(0,1fr));
    width: 100% !important;
    margin: 24px 0 0 !important;
    padding: 0 !important;
    border-top: 1px solid var(--m3-line);
    border-bottom: 1px solid var(--m3-line);
    background: transparent !important;
  }

  :is(html, body).m3-product .m3-benefit-banner .benefitBanner__item {
    width: auto !important;
    min-width: 0;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
  }

  :is(html, body).m3-product .m3-benefit-banner .benefitBanner__item:nth-child(even) { border-left: 1px solid var(--m3-line) !important; }
  :is(html, body).m3-product .m3-benefit-banner .benefitBanner__item:nth-child(n+3) { border-top: 1px solid var(--m3-line) !important; }

  :is(html, body).m3-product .m3-benefit-banner .benefitBanner__link {
    display: grid !important;
    grid-template-columns: 44px minmax(0,1fr);
    gap: 12px;
    align-items: center;
    min-height: 94px;
    padding: 15px 13px !important;
    color: var(--m3-ink) !important;
    text-decoration: none !important;
  }

  :is(html, body).m3-product .m3-benefit-banner .benefitBanner__picture {
    display: grid !important;
    width: 44px !important;
    min-width: 44px !important;
    height: 44px !important;
    place-items: center;
    margin: 0 !important;
    background-size: contain !important;
  }

  :is(html, body).m3-product .m3-benefit-banner .benefitBanner__content { min-width: 0; }
  :is(html, body).m3-product .m3-benefit-banner .benefitBanner__title {
    display: block;
    color: var(--m3-ink);
    font-size: 15px;
    line-height: 1.25;
  }

:is(html, body).m3-product .m3-benefit-banner .benefitBanner__data {
    margin-top: 4px;
    color: var(--m3-muted);
    font-size: 14px;
    line-height: 1.35;
  }

  :is(html, body).m3-product .m3-amazon-score {
    display: grid;
    width: 44px;
    height: 44px;
    place-items: center;
    border: 1px solid #f0aa18;
    border-radius: 50%;
    background: #fffaf0;
    color: #e29400;
    font-size: 12px;
    font-weight: 900;
    line-height: 1;
  }
}

:is(html, body).m3-product .m3-term-tooltip {
  position: fixed;
  z-index: 100050;
  width: max-content;
  max-width: min(310px, calc(100vw - 24px));
  padding: 9px 12px;
  border: 1px solid rgba(0,100,96,.24);
  border-radius: 6px;
  background: #123f3c;
  box-shadow: 0 8px 24px rgba(8,36,34,.18);
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4;
  opacity: 0;
  visibility: hidden;
  transform: translateY(3px);
  transition: opacity 80ms ease, transform 80ms ease, visibility 80ms;
  pointer-events: none;
}

:is(html, body).m3-product .m3-term-tooltip.is-visible {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

@media (max-width: 767px) {
  :is(html, body).m3-product #product-detail-form .p-short-description {
    margin-bottom: 10px !important;
    padding-bottom: 0 !important;
  }

  :is(html, body).m3-product .m3-content-nav .content-nav-inner { justify-content: flex-start; }
  :is(html, body).m3-product .m3-benefit-banner {
    display: grid !important;
    grid-template-columns: repeat(2,minmax(0,1fr));
    width: 100% !important;
    margin: 18px 0 0 !important;
    padding: 0 !important;
    border-top: 1px solid var(--m3-line);
    border-bottom: 1px solid var(--m3-line);
    background: transparent !important;
  }
  :is(html, body).m3-product .m3-benefit-banner .benefitBanner__item {
    display: block !important;
    width: auto !important;
    min-width: 0;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
  }
  :is(html, body).m3-product .m3-benefit-banner .benefitBanner__item:nth-child(even) { border-left: 1px solid var(--m3-line) !important; }
  :is(html, body).m3-product .m3-benefit-banner .benefitBanner__item:nth-child(n+3) { border-top: 1px solid var(--m3-line) !important; }
  :is(html, body).m3-product .m3-benefit-banner .benefitBanner__link {
    display: grid !important;
    grid-template-columns: 38px minmax(0,1fr);
    gap: 9px;
    align-items: center;
    min-height: 92px;
    padding: 11px 8px !important;
    color: var(--m3-ink) !important;
    text-decoration: none !important;
  }
  :is(html, body).m3-product .m3-benefit-banner .benefitBanner__picture {
    display: grid !important;
    width: 38px !important;
    min-width: 38px !important;
    height: 38px !important;
    place-items: center;
    margin: 0 !important;
    background-size: contain !important;
  }
  :is(html, body).m3-product .m3-benefit-banner .benefitBanner__content { min-width: 0; }
  :is(html, body).m3-product .m3-benefit-banner .benefitBanner__title {
    display: block;
    color: var(--m3-ink);
    font-size: 13px;
    line-height: 1.25;
  }
  :is(html, body).m3-product .m3-benefit-banner .benefitBanner__data {
    margin-top: 3px;
    color: var(--m3-muted);
    font-size: 12px;
    line-height: 1.3;
  }
  :is(html, body).m3-product .m3-amazon-score {
    display: grid;
    width: 38px;
    height: 38px;
    place-items: center;
    border: 1px solid #f0aa18;
    border-radius: 50%;
    background: #fffaf0;
    color: #e29400;
    font-size: 11px;
    font-weight: 900;
    line-height: 1;
  }
  :is(html, body).m3-product #product-detail-form .m3-variant-ui { margin-bottom: 18px; padding: 14px; }
  :is(html, body).m3-product #product-detail-form .m3-variant-ui .tpmove-variant-cards { grid-template-columns: 1fr; }
  :is(html, body).m3-product #product-detail-form .m3-variant-card { min-height: 104px; }
}

@media (max-width: 390px) {
  :is(html, body).m3-product #product-detail-form .m3-variant-card {
    grid-template-columns: 1fr;
  }
  :is(html, body).m3-product #product-detail-form .m3-variant-price {
    grid-column: 1;
    grid-row: auto;
    align-items: flex-start;
  }
}

@media (prefers-reduced-motion: reduce) {
  :is(html, body).m3-product #product-detail-form .m3-variant-card { transition-duration: .01ms !important; }
}

