/* September 15 editorial refinement; loaded after existing styles. */
body[data-refinement] { --reading-width: 68ch; }
body[data-refinement] .page-view p { text-wrap: pretty; }
body[data-refinement] .page-view :is(h2,h3,h4) { text-wrap: balance; }
body[data-refinement] .page-view img { max-width: 100%; }
body[data-refinement] :is(a,button,summary,input,select,textarea):focus-visible { outline: 3px solid #a16a35; outline-offset: 5px; }
.care-section-nav { display:flex; flex-wrap:wrap; gap:12px 26px; margin:-12px 0 44px; padding-bottom:20px; border-bottom:1px solid #d6e1d9; }
.care-section-nav a { min-height:44px; display:inline-flex; align-items:center; color:#285442; text-decoration:none; font-size:.9375rem; }
.care-section-nav a:hover { text-decoration:underline; text-underline-offset:6px; }
.ai-care-intro { grid-template-columns:1fr 1fr; gap:clamp(28px,5vw,72px); align-items:start; margin-bottom:48px; }
.ai-care-intro > div > p:not(.chapter-eyebrow) { max-width:48ch; }
body .ai-care-intro .chapter-eyebrow { font-size:.75rem!important; letter-spacing:.12em; }
.ai-care-preview { padding:28px; border-radius:12px; box-shadow:0 12px 36px #193f3510; }
.ai-care-preview header { align-items:center; gap:16px; }
.ai-care-preview header small { max-width:180px; line-height:1.6; color:#52675e; }
.ai-care-preview p { margin-bottom:0; }
.ai-care-question { margin:20px 0 16px 8%; }
.ai-care-answer { margin-right:6%; }
.ai-care-caption { margin-top:20px!important; }
.photo-pair { grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px; align-items:stretch; margin:0 0 52px; }
.photo-pair figure { display:flex; flex-direction:column; border-radius:8px; overflow:hidden; background:#fffefb; }
.photo-pair figure:nth-child(2) { margin-top:0; }
.photo-pair img { aspect-ratio:auto; height:auto; object-fit:contain; }
.photo-pair figcaption { flex:1; padding:24px 28px; }
.photo-pair h3 { line-height:1.5; margin-bottom:10px; }
.ai-care-features { gap:0 32px; margin:0 0 40px; }
.ai-care-features article { border-top:1px solid #bfd0c1; padding:24px 0 28px; }
.ai-feature-no { display:inline-block; margin-bottom:8px; color:#9a6c34; font-size:.8rem; letter-spacing:.12em; }
.ai-care-features h3 { line-height:1.5; margin:4px 0 12px; }
body .ai-care-features p { font-size:1rem!important; line-height:1.8; margin:0; }
.ai-care-review-title { margin-top:52px; }
.ai-care-timeline { gap:24px; }
.ai-care-timeline h3 { font-size:1.1rem; line-height:1.5; }
body .ai-care-timeline p { font-size:1rem!important; }
.ai-care-onboarding { margin:36px 0; border:1px solid #dfd9c9; border-left:3px solid #a17943; border-radius:0 8px 8px 0; padding:30px 34px; }
.ai-care-onboarding p { max-width:var(--reading-width); }
.care-reference { margin:36px 0; border-block:1px solid #cddbcf; }
.care-reference summary { cursor:pointer; padding:22px 8px; font-size:1.05rem; font-weight:600; color:#234b3b; }
.care-reference summary::marker { color:#9a6c34; }
.care-reference[open] summary { border-bottom:1px solid #d6e1d9; }
.care-reference .ai-care-local { border:0; background:transparent; padding:28px 8px 16px; margin:0; }
.care-reference .ai-care-local > p { max-width:var(--reading-width); }
.care-reference .ai-care-evidence { margin:0 8px; padding:24px 0; }
.care-reference .ai-care-markets { gap:24px 40px; }
.care-reference .ai-care-markets article { padding-top:18px; border-top:1px solid #d6e1d9; }
.care-reference .ai-care-markets h4 { margin-bottom:8px; }
body[data-refinement] img[src="/exhibition-product.jpg"],
body[data-refinement] img[src="/exhibition-evidence.jpg"],
body[data-refinement] img[src="/exhibition-family.jpg"],
body[data-refinement] img[src="/life-data-flow.png"] { width:100%; height:auto; object-fit:contain; }
body[data-refinement] .photo-hero { border-radius:8px; overflow:hidden; }
body[data-refinement] .photo-hero figcaption { padding:16px 22px; }
#daily-life-photos,#care-followup { scroll-margin-top:calc(var(--header-h,106px) + 28px); }
@media(max-width:1000px) {
 .ai-care-intro { grid-template-columns:1fr; gap:28px; }
 .ai-care-intro > div > p:not(.chapter-eyebrow) { max-width:68ch; }
 .ai-care-preview { max-width:640px; width:100%; box-sizing:border-box; }
 .ai-care-timeline { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:700px) {
 .care-section-nav { gap:4px 20px; margin-bottom:28px; }
 .photo-pair { grid-template-columns:1fr; gap:24px; margin-bottom:36px; }
 .photo-pair figcaption { padding:20px; }
 .ai-care-features { grid-template-columns:1fr; }
 .ai-care-preview { padding:20px; }
 .ai-care-question { margin-left:5%; }
 .ai-care-answer { margin-right:0; }
 .ai-care-onboarding { padding:24px; }
 .ai-care-timeline { grid-template-columns:1fr; }
 .care-reference .ai-care-markets { grid-template-columns:1fr; gap:20px; }
}

/* A calmer editorial pass for the glucose and weight education pages. */
body[data-refinement] .care-page .db-page-hero {
  background:linear-gradient(112deg,#f4f7ef 0%,#edf2e7 55%,#e7eee1 100%);
}
body[data-refinement] .care-page .db-page-hero>div { max-width:58rem; }
body[data-refinement] .care-page .db-page-hero h1 { max-width:13ch; }
body[data-refinement] .care-page .db-page-hero p { max-width:39ch; font-size:1.08rem; }
body[data-refinement] .care-page .db-page-hero>img {
  padding:clamp(20px,3vw,44px); box-sizing:border-box; object-fit:contain;
}
body[data-refinement] .care-page .care-inner { max-width:1120px; }
body[data-refinement] .care-page .glp-feature {
  padding-top:clamp(50px,7vw,90px); padding-bottom:clamp(42px,6vw,72px);
}
body[data-refinement] .care-page .glp-feature>p:not(.glp-eyebrow):not(.glp-deck):not(.glp-small),
body[data-refinement] .care-page .care-block>p:not(.db-kicker):not(.glp-small),
body[data-refinement] .care-page .care-research>p { max-width:64ch; }
body[data-refinement] .care-page .glp-deck { max-width:24ch; }
body[data-refinement] .care-page .ingredient-feature::before,
body[data-refinement] .care-page #glp1-diabetes::before {
  content:""; display:block; width:100%; aspect-ratio:3/1; margin:0 0 34px;
  border-radius:8px; background-color:#eef3e9; background-repeat:no-repeat;
  background-position:center; background-size:contain;
}
body[data-refinement] .care-page .ingredient-feature::before { background-image:url('/botanical-dew.jpg'); }
body[data-refinement] .care-page #glp1-diabetes::before { background-image:url('/nutrition-table.jpg'); }
body[data-refinement] .care-page .ingredient-path { margin:28px 0 34px; }
body[data-refinement] .care-page .ingredient-path li { padding:20px; }
body[data-refinement] .care-page .glp-reading { gap:0; margin:32px 0 12px; }
body[data-refinement] .care-page .glp-reading article {
  padding:4px 32px 10px; border-left:1px solid #cbd5bf;
}
body[data-refinement] .care-page .glp-reading article:first-child { padding-left:0; border-left:0; }
body[data-refinement] .care-page .glp-reading h3 { margin-bottom:8px; }
body[data-refinement] .care-page .ingredient-formula,
body[data-refinement] .care-page .glp-practical,
body[data-refinement] .care-page .glp-product-evidence {
  border-radius:0 8px 8px 0; margin-block:34px; padding:30px 34px;
}
body[data-refinement] .care-page .glp-creators { border-radius:8px; }
body[data-refinement] .care-page .care-block { padding-block:clamp(46px,6vw,76px); }
body[data-refinement] .care-page .care-block .db-grid { margin-top:24px; }
body[data-refinement] .care-page .care-block .db-card { padding-top:14px; padding-bottom:14px; }
body[data-refinement] .care-page .care-block .db-card h3 { margin:7px 0 10px; }
body[data-refinement] .care-page .care-block .db-card p { margin:0; }
body[data-refinement] .care-page .db-ratio { box-shadow:inset 0 0 0 1px #d8e2ca; }
body[data-refinement] .care-page .db-recorded-story { background:#f3f5ed; padding-inline:clamp(24px,4vw,48px); }
body[data-refinement] .care-page .video-testimonials { padding-top:48px; }
body[data-refinement] .care-page .care-ending { padding-top:26px; }
@media(max-width:760px) {
  body[data-refinement] .care-page .db-page-hero>img { height:auto; padding:16px 6% 0; }
  body[data-refinement] .care-page .ingredient-feature::before,
  body[data-refinement] .care-page #glp1-diabetes::before { aspect-ratio:3/2; margin-bottom:25px; }
  body[data-refinement] .care-page .glp-reading { grid-template-columns:1fr; }
  body[data-refinement] .care-page .glp-reading article,
  body[data-refinement] .care-page .glp-reading article:first-child {
    padding:20px 0; border-left:0; border-top:1px solid #cbd5bf;
  }
  body[data-refinement] .care-page .glp-reading article:first-child { padding-top:0; border-top:0; }
  body[data-refinement] .care-page .ingredient-formula,
  body[data-refinement] .care-page .glp-practical,
  body[data-refinement] .care-page .glp-product-evidence { padding:24px; }
  body[data-refinement] .care-page .db-recorded-story { padding-inline:24px; }
}

/* Align Science and AI care with the glucose/weight hero rhythm. */
body[data-refinement] .page-view[data-page="science"] > .science-hero {
  min-height:0; height:auto; grid-template-columns:1.15fr 1fr;
  align-items:stretch; background:linear-gradient(112deg,#f4f7ef 0%,#edf2e7 55%,#e7eee1 100%);
}
body[data-refinement] .page-view[data-page="science"] .science-hero .page-hero-copy {
  padding:clamp(64px,8vw,118px) 7vw; align-self:start;
}
body[data-refinement] .page-view[data-page="science"] .science-hero h1 { max-width:13ch; margin-bottom:22px; }
body[data-refinement] .page-view[data-page="science"] .science-hero .page-number { margin-bottom:18px; }
body[data-refinement] .page-view[data-page="science"] .science-hero .exhibit-journal {
  width:auto; max-width:none; min-width:0; margin:clamp(26px,4vw,58px) 7vw clamp(26px,4vw,58px) 0;
  align-self:start; transform:none;
}
/* The home has its botanical hero already. Removing this repeated band lets the AI title
   begin at the same position as the glucose and weight page titles. */
body[data-refinement] .narrative-home .botanical-pause { display:none; }
body[data-refinement] .page-view[data-page="home"] .journey-chapter {
  padding-top:0; padding-bottom:clamp(64px,8vw,110px);
  background:linear-gradient(112deg,#f4f7ef 0%,#edf2e7 55%,#e7eee1 100%);
}
body[data-refinement] .journey-chapter .chapter-inner { max-width:1240px; }
body[data-refinement] .journey-chapter .chapter-heading {
  margin:0; padding-top:clamp(64px,8vw,118px); padding-bottom:22px;
  border-bottom:0;
}
body[data-refinement] .journey-chapter .chapter-heading h2 { max-width:13ch; }
body[data-refinement] .journey-chapter .care-section-nav {
  margin:0 0 38px; padding:0 0 20px; max-width:100%;
}
body[data-refinement] .journey-chapter .ai-care-intro { margin-bottom:44px; }
/* AI care follows the same title system as glucose and weight support. */
body[data-refinement] .care-page .db-page-hero h1,
body[data-refinement] .journey-chapter .chapter-heading h2 {
  font-family:Georgia,"Noto Serif TC","Songti TC",serif;
  font-size:clamp(2.125rem,4vw,3.5rem)!important;
  font-weight:500; line-height:1.25; letter-spacing:-.025em;
}
body[data-refinement] .journey-chapter .chapter-number {
  padding-top:.4rem; font-size:.875rem; letter-spacing:.08em;
}
body[data-refinement] .journey-chapter .ai-care-intro h3 {
  font-family:Georgia,"Noto Serif TC","Songti TC",serif;
  font-size:clamp(1.75rem,2.65vw,2.55rem); font-weight:500;
  line-height:1.35; letter-spacing:-.02em;
}
body[data-refinement] .journey-chapter :is(.ai-care-features h3,.ai-care-onboarding h3,.ai-care-review-title) {
  font-family:Georgia,"Noto Serif TC","Songti TC",serif;
  font-size:1.35rem; font-weight:600; line-height:1.45;
}
body[data-refinement] .journey-chapter :is(p,.ai-care-tags>span,.care-section-nav a) {
  font-size:1rem!important; line-height:1.8;
}
body[data-refinement] .journey-chapter .care-section-nav a { font-weight:550; }
@media(max-width:900px) {
  body[data-refinement] .page-view[data-page="science"] > .science-hero { grid-template-columns:1fr; }
  body[data-refinement] .page-view[data-page="science"] .science-hero .page-hero-copy { padding:48px 6% 26px; }
  body[data-refinement] .page-view[data-page="science"] .science-hero .exhibit-journal { width:88%; margin:16px auto 46px; }
}
@media(max-width:700px) {
  body[data-refinement] .journey-chapter .chapter-heading { padding-top:48px; padding-bottom:16px; }
  body[data-refinement] .journey-chapter .care-section-nav { margin-bottom:28px; }
  body[data-refinement] .journey-chapter .chapter-heading h2 { font-size:2.125rem!important; }
}

/* Distinct service imagery: AI care, genetics, collaboration and company use one
   editorial system without repeating a single botanical image everywhere. */
body[data-refinement] .ai-care-hero-art {
  margin:0 0 clamp(34px,5vw,56px); overflow:hidden; border-radius:10px;
  background:#e9f0e8; box-shadow:0 18px 48px rgba(23,61,51,.10);
}
body[data-refinement] .ai-care-hero-art img {
  display:block; width:100%; height:clamp(320px,31vw,460px); object-fit:cover;
  object-position:center; filter:saturate(1.02) contrast(1.01);
}
body[data-refinement] .ai-care-hero-art figcaption {
  padding:13px 20px; background:#f8faf5; color:#496358; font-size:.8rem;
  letter-spacing:.05em;
}
body[data-refinement] .genetics-hero .photo-hero img { object-position:center; }
body[data-refinement] .page-view[data-page="genetics"].is-active {
  display:flex; flex-direction:column;
}
body[data-refinement] .page-view[data-page="genetics"] .genetics-hero { order:-1; }
body[data-refinement] .partners-hero {
  background:linear-gradient(130deg,#7a4836 0%,#a76648 47%,#7b513b 100%);
}
body[data-refinement] .partners-hero .ecosystem-map {
  isolation:isolate; overflow:hidden; border-radius:50%; background:#315b4b;
  box-shadow:0 26px 70px rgba(56,30,20,.27);
}
body[data-refinement] .partners-hero-art {
  position:absolute; inset:0; z-index:0; width:100%; height:100%; object-fit:cover;
  opacity:.58; filter:saturate(.9) contrast(1.05) brightness(.68);
}
body[data-refinement] .partners-hero .ecosystem-caption { z-index:1; }
body[data-refinement] .polished-company .warm-hero>img {
  object-position:center; background:#e7eee3;
}
@media(max-width:700px) {
  body[data-refinement] .ai-care-hero-art { margin-bottom:30px; border-radius:7px; }
  body[data-refinement] .ai-care-hero-art img { height:auto; min-height:0; object-fit:contain; }
  body[data-refinement] .ai-care-hero-art figcaption { padding:12px 16px; }
}

/* One opening composition for glucose, weight, evidence and every later service.
   The subjects change by page; typography, spacing and hierarchy do not. */
body[data-refinement] :is(.care-page .db-page-hero, .service-hero-surface) {
  min-height:0; height:auto; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);
  align-items:center; background:linear-gradient(112deg,#f4f7ef 0%,#edf2e7 55%,#e7eee1 100%);
}
body[data-refinement] :is(.care-page .db-page-hero h1, .service-hero-surface h1, .ai-care-top .chapter-heading h2) {
  font-family:Georgia,"Noto Serif TC","Songti TC",serif;
  font-size:clamp(2.125rem,4vw,3.5rem)!important; font-weight:500;
  line-height:1.25; letter-spacing:-.025em;
}
body[data-refinement] :is(.care-page .db-page-hero h1, .service-hero-surface h1) {
  max-width:13ch; margin-bottom:22px;
}
body[data-refinement] :is(.service-hero-surface .page-hero-copy, .partners-hero.service-hero-surface .partners-hero-copy) {
  padding:clamp(64px,8vw,118px) 7vw;
}
body[data-refinement] .service-hero-surface .page-number { margin-bottom:18px; }
body[data-refinement] :is(.service-hero-surface .page-hero-copy>div>p, .partners-hero-copy>.lang>p) {
  max-width:39ch; font-size:1.08rem!important; line-height:1.8;
}
body[data-refinement] .service-hero-surface :is(.photo-hero, .exhibit-journal) {
  margin:clamp(26px,4vw,58px) 7vw clamp(26px,4vw,58px) 0; align-self:center;
}
body[data-refinement] .science-hero.service-hero-surface .exhibit-journal {
  width:auto; max-width:none; min-width:0; transform:none;
}
body[data-refinement] .polished-company .warm-hero.service-hero-surface {
  padding:0; gap:0;
}
body[data-refinement] .polished-company .warm-hero.service-hero-surface>img {
  width:calc(100% - clamp(26px,4vw,58px)); height:auto; margin:clamp(26px,4vw,58px) clamp(26px,4vw,58px) clamp(26px,4vw,58px) 0;
  box-shadow:14px 14px 0 #dbe6d8;
}
body[data-refinement] .partners-hero.service-hero-surface {
  padding:0; gap:0; color:var(--forest-2);
}
body[data-refinement] .partners-hero.service-hero-surface :is(h1,h1 em,.page-number,.partners-hero-copy>.lang>p) { color:inherit; }
body[data-refinement] .partners-hero.service-hero-surface h1 em { color:var(--clay); }
body[data-refinement] .partners-hero.service-hero-surface .ecosystem-map {
  margin:clamp(26px,4vw,58px) 7vw clamp(26px,4vw,58px) 0; justify-self:stretch;
}
body[data-refinement] .ai-care-top {
  display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); align-items:center;
  margin:0 0 clamp(44px,6vw,76px); overflow:hidden;
}
body[data-refinement] .ai-care-top .chapter-heading {
  grid-column:1; grid-row:1; margin:0; padding:clamp(64px,8vw,118px) 7vw 18px;
}
body[data-refinement] .ai-care-top .care-section-nav {
  grid-column:1; grid-row:2; margin:0; padding:0 7vw clamp(64px,8vw,118px);
  border:0;
}
body[data-refinement] .ai-care-top .ai-care-hero-art {
  grid-column:2; grid-row:1 / span 2; margin:clamp(26px,4vw,58px) 7vw clamp(26px,4vw,58px) 0;
  align-self:center;
}
body[data-refinement] .ai-care-top .ai-care-hero-art img { height:auto; aspect-ratio:3/2; object-fit:cover; }
/* AI care is a route of its own, not a scroll position within the homepage. */
body[data-refinement] .ai-care-page .journey-chapter {
  padding-top:0; padding-bottom:clamp(64px,8vw,110px);
  background:linear-gradient(112deg,#f4f7ef 0%,#edf2e7 55%,#e7eee1 100%);
}
@media(max-width:900px) {
  body[data-refinement] :is(.care-page .db-page-hero, .service-hero-surface, .ai-care-top) { grid-template-columns:1fr; }
  body[data-refinement] :is(.service-hero-surface .page-hero-copy, .partners-hero.service-hero-surface .partners-hero-copy) { padding:48px 6% 26px; }
  body[data-refinement] .service-hero-surface :is(.photo-hero, .exhibit-journal),
  body[data-refinement] .polished-company .warm-hero.service-hero-surface>img,
  body[data-refinement] .partners-hero.service-hero-surface .ecosystem-map { width:88%; margin:16px auto 46px; }
  body[data-refinement] .ai-care-top .chapter-heading { grid-column:1; grid-row:auto; padding:48px 6% 16px; }
  body[data-refinement] .ai-care-top .care-section-nav { grid-column:1; grid-row:auto; padding:0 6% 28px; }
  body[data-refinement] .ai-care-top .ai-care-hero-art { grid-column:1; grid-row:auto; width:88%; margin:0 auto 46px; }
}

/* Dibifree180 label-first formula guide. */
body[data-refinement] .care-page .formula-label-note { margin:28px 0 34px; padding:20px 24px; border:1px solid #cbd8c0; background:#f1f5ed; color:#274d40; }
body[data-refinement] .care-page .formula-label-note strong { display:block; margin-bottom:6px; font-size:14px; letter-spacing:.11em; text-transform:uppercase; }
body[data-refinement] .care-page .formula-label-note p { margin:0; font-size:18px; line-height:1.7; }
body[data-refinement] .care-page .formula-ingredient-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; margin:30px 0 38px; }
body[data-refinement] .care-page .formula-ingredient-card { position:relative; min-height:250px; padding:27px 28px 24px; border:1px solid #d4deca; background:#fffefa; }
body[data-refinement] .care-page .formula-ingredient-card > span { display:block; margin-bottom:16px; color:#a16f43; font:500 14px/1 Georgia,serif; letter-spacing:.12em; }
body[data-refinement] .care-page .formula-ingredient-card h3 { margin:0 0 7px; color:#17483e; font-family:Georgia,"Noto Serif TC","Songti TC",serif; font-size:25px; font-weight:500; line-height:1.25; }
body[data-refinement] .care-page .formula-ingredient-card .ingredient-focus { margin:0 0 13px; color:#687d5a; font-size:14px; font-weight:700; line-height:1.6; }
body[data-refinement] .care-page .formula-ingredient-card p:not(.ingredient-focus) { margin:0; color:#405b50; font-size:15px; line-height:1.8; }
body[data-refinement] .care-page .formula-ingredient-card a { display:inline-block; margin-top:14px; color:#9b6a41; font-size:14px; font-weight:700; text-decoration:none; border-bottom:1px solid currentColor; }
body[data-refinement] .care-page .formula-reading-note { margin-top:0; }
@media(max-width:760px) {
  body[data-refinement] .care-page .formula-ingredient-grid { grid-template-columns:1fr; gap:12px; }
  body[data-refinement] .care-page .formula-ingredient-card { min-height:0; padding:23px; }
  body[data-refinement] .care-page .formula-label-note { padding:20px; }
}
