/* A food-first editorial composition; scoped to the eating-pattern collection. */
.diets-page { --diet-clay: #b9bc91; --diet-sage: #e6e9dc; }
.diets-page :is(h1,h2,h3,p,li,a) { overflow-wrap: anywhere; }
.diets-page p a { text-decoration: underline; text-underline-offset: 3px; }
.diet-hero { padding: 20px 0 54px; }
.diet-hero-grid { display: grid; grid-template-columns: minmax(0,1.08fr) minmax(0,1fr); align-items: center; gap: clamp(28px,5vw,76px); }
.diet-hero-copy { padding-block: 18px; }
.diet-hero h1 { max-width: 13ch; margin: 20px 0 25px; font-family: var(--display); font-weight: 400; font-size: clamp(2.8rem,5.5vw,5.4rem); line-height: .99; letter-spacing: -.035em; }
.diet-hero h1 em { color: var(--accent-strong); font-weight: 400; }
.diet-hero .page-lead { max-width: 46ch; font-size: clamp(1.1rem,1.45vw,1.25rem); line-height: 1.6; }
.diet-hero-copy > p:not(.page-lead) { max-width: 48ch; color: var(--ink-soft); }
.diet-jump { display: inline-flex; align-items: center; gap: 24px; padding: 14px 0 10px; color: var(--ink); border-block-end: 1px solid currentColor; font-weight: 700; text-decoration: none; }
.diet-jump span { font-size: 1.6rem; }
.diet-byline { display: flex; flex-wrap: wrap; gap: 6px 18px; margin-block-start: 28px; color: var(--muted); font-size: .77rem; }
.diet-byline a { color: inherit; }
.diet-hero-photo { min-width: 0; margin: 0; position: relative; }
.diet-hero-photo picture { display: block; border-radius: 44% 44% 4px 4px; overflow: hidden; background: #e6e6df; }
.diet-hero-photo img { width: 100%; height: auto; display: block; }
.diet-hero-photo figcaption { display: flex; justify-content: space-between; gap: 8px 18px; flex-wrap: wrap; margin-block-start: 12px; color: var(--muted); font-size: .72rem; }
.diet-hero-photo figcaption span:first-child { color: var(--ink); font-weight: 600; }
.diet-body { max-width: 1180px; }
.diet-contents { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 25px; padding-block: 22px; border-block: 1px solid var(--line-strong); font-size: .8rem; }
.diet-contents > span { color: var(--muted); font: .7rem var(--font-mono); text-transform: uppercase; letter-spacing: .09em; }
.diet-contents a { color: var(--ink); text-underline-offset: 5px; }
.diets-page :is(.diet-section,.diet-topic-group) { scroll-margin-top: 110px; }
.diet-section { padding-block: clamp(40px,6vw,78px); border-block-end: 1px solid var(--line); }
.diet-section-heading { max-width: 720px; margin-block-end: 30px; }
.diet-section-heading h2 { margin: 13px 0 16px; font-family: var(--display); font-size: clamp(2rem,3.2vw,3.1rem); font-weight: 400; line-height: 1.12; letter-spacing: -.025em; }
.diet-section-heading > p { margin: 0; max-width: 62ch; color: var(--ink-soft); }
.diet-start-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; }
.diet-start-card { display: flex; flex-direction: column; padding: 26px; border: 1px solid var(--line-strong); border-radius: 3px; color: var(--ink); text-decoration: none; background: #f9f9f3; transition: background-color .15s; }
.diet-start-card:hover { background: var(--diet-sage); }
.diet-card-number { font-family: var(--display); color: var(--accent-strong); font-size: 2.5rem; line-height: 1; }
.diet-start-card h3 { margin: 22px 0 12px; font-size: 1.17rem; line-height: 1.4; font-weight: 600; }
.diet-start-card p { color: var(--ink-soft); margin: 0 0 25px; font-size: .93rem; }
.diet-card-action { display: flex; justify-content: space-between; gap: 12px; margin-block-start: auto; font-size: .79rem; font-weight: 700; }
.diet-evidence-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 45px; }
.diet-note-label,.diet-group-label { color: var(--accent-strong); font: .7rem/1.5 var(--font-mono); text-transform: uppercase; letter-spacing: .07em; }
.diet-research-note h3 { font-family: var(--display); font-weight: 400; font-size: clamp(1.6rem,2.3vw,2rem); line-height: 1.2; margin: 12px 0 18px; }
.diet-research-note p { max-width: 58ch; }
.diet-research-note p:last-child { color: var(--ink-soft); }
.diet-citation { color: var(--accent-strong); font: 700 .8em var(--font-mono); text-underline-offset: 3px; white-space: nowrap; }
.diet-takeaway { display: flex; align-items: start; gap: 20px; padding: 24px 28px; margin-block-start: 28px; background: var(--diet-sage); border-inline-start: 3px solid var(--accent-strong); }
.diet-takeaway > span { font-size: 2rem; line-height: 1.3; }
.diet-takeaway p { margin: 0; max-width: 74ch; }
.diet-topic-group { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1.3fr); gap: 50px; padding-block: 32px; border-block-start: 1px solid var(--line); }
.diet-topic-group h3 { font-family: var(--display); font-size: 2rem; font-weight: 400; margin: 9px 0 12px; line-height: 1.15; }
.diet-topic-group p { max-width: 45ch; color: var(--ink-soft); margin-block-end: 0; }
.diet-topic-list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 24px; align-content: start; }
.diet-topic-list li { padding-block: 13px; border-block-end: 1px solid var(--line); font-size: .92rem; }
.diet-topic-list :is(a,span) { color: var(--ink); }
.diet-topic-list [data-planned-url] { border: 0; cursor: default; }
.diet-meal-grid { display: grid; grid-template-columns: minmax(0,1.3fr) minmax(0,1fr); align-items: start; gap: 60px; }
.diet-meal-grid > div > p:first-child { margin-block-start: 0; }
.diet-meal-grid > div > p { max-width: 58ch; }
.diet-meal-card { background: var(--diet-sage); padding: 30px; border-radius: 3px; }
.diet-meal-card h3 { font-family: var(--display); font-size: 1.8rem; font-weight: 400; line-height: 1.2; margin: 10px 0 20px; }
.diet-meal-card ol { padding-inline-start: 20px; }
.diet-meal-card li { padding-inline-start: 5px; margin-block: 11px; }
.diet-meal-card a { display: inline-block; color: var(--accent-strong); font-weight: 700; font-size: .88rem; text-underline-offset: 4px; margin-block-start: 12px; }
.diet-sources { padding-block: 42px; }
.diet-sources .diet-section-heading h2 { font-size: 2rem; }
.diet-sources .sources-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 22px 48px; padding-inline-start: 20px; font-size: .83rem; }
.diet-sources li { padding-inline-start: 7px; scroll-margin-top: 110px; }
.diet-sources a { color: var(--ink); text-underline-offset: 3px; }
.diet-next { display: flex; flex-wrap: wrap; align-items: baseline; gap: 18px 36px; padding-block: 38px 65px; }
.diet-next > span { flex-basis: 100%; }
.diet-next p { margin: 0 auto 0 0; font-family: var(--display); font-size: 1.8rem; line-height: 1.2; }
.diet-next a { color: var(--accent-strong); font-weight: 600; }
@media (max-width: 1050px) {
  .diet-start-grid { gap: 12px; }
  .diet-start-card { padding: 21px; }
  .diet-hero-grid { gap: 30px; }
  .diet-topic-group,.diet-meal-grid { gap: 30px; }
}
@media (max-width: 767px) {
  .diet-hero { padding-block: 4px 32px; }
  .diet-hero-grid { grid-template-columns: minmax(0,1fr); gap: 30px; }
  .diet-hero-copy { padding-block: 10px 0; }
  .diet-hero h1 { font-size: clamp(2.6rem,9vw,4rem); max-width: 15ch; margin-block: 16px 22px; }
  .diet-hero-photo { max-width: 480px; width: 100%; margin-inline: auto; }
  .diet-hero-photo picture { border-radius: 40% 40% 3px 3px; }
  .diet-byline { margin-block-start: 22px; }
  .diet-start-grid { grid-template-columns: minmax(0,1fr); gap: 14px; }
  .diet-start-card { display: grid; grid-template-columns: 38px minmax(0,1fr); gap: 10px 15px; padding: 22px; }
  .diet-card-number { grid-row: 1 / 3; }
  .diet-start-card h3 { margin: 2px 0 0; }
  .diet-start-card p { margin: 0; }
  .diet-card-action { grid-column: 2; margin-block-start: 7px; }
  .diet-evidence-grid,.diet-topic-group,.diet-meal-grid { grid-template-columns: minmax(0,1fr); gap: 24px; }
  .diet-takeaway { padding: 20px; gap: 12px; }
  .diet-topic-group { padding-block: 28px; }
  .diet-section-heading { margin-block-end: 24px; }
  .diet-sources .sources-list { grid-template-columns: minmax(0,1fr); }
}
@media (max-width: 420px) {
  .diet-topic-list { grid-template-columns: minmax(0,1fr); }
  .diet-meal-card { padding: 24px; }
  .diet-contents { gap: 13px 21px; }
  .diet-contents > span { flex-basis: 100%; }
}
@media (prefers-reduced-motion: reduce) { .diet-start-card { transition: none; } }
@media print {
  .diet-contents,.diet-jump { display: none; }
  .diet-hero-grid,.diet-start-grid,.diet-evidence-grid,.diet-topic-group,.diet-meal-grid { display: block; }
  .diet-hero-photo { width: 180px; float: right; }
  .diet-section { padding-block: 20px; }
  .diet-start-card,.diet-research-note,.diet-meal-card { break-inside: avoid; margin-block: 12px; }
}
