/* Alimentation : lecture, navigation et références dans la charte commune. */
.lot8-food-page .food-eyebrow { color: var(--sdo-orange); font-size: .875rem !important; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; }
.lot8-food-page .lot8-food-intro figcaption { padding: .75rem 1.25rem; color: var(--sdo-text-muted); font-size: .875rem; line-height: 1.6; }
.lot8-food-page .food-nav { display: flex; flex-wrap: wrap; justify-content: center; gap: .5rem 1.5rem; margin: 0 0 2rem; padding: 1rem 1.25rem; border: 1px solid var(--sdo-border); border-radius: 4px; background: var(--sdo-surface-deep); }
.lot8-food-page .food-nav a { display: inline-flex; align-items: center; gap: .4rem; min-height: 44px; }
.lot8-food-page .food-nav a { color: var(--sdo-orange); text-decoration: none; }
.lot8-food-page .food-nav a:hover, .lot8-food-page .food-nav a:focus-visible { color: var(--sdo-orange); text-decoration: underline; text-underline-offset: .2em; }
.lot8-food-page .food-nav a:focus-visible { outline: 3px solid var(--sdo-orange); outline-offset: 3px; }
.lot8-food-page .lot8-food-section > p { margin-bottom: 1.5rem; }
.lot8-food-page .food-anatomy { margin: 2.5rem 0; padding: clamp(1.25rem, 2.5vw, 2rem); border: 1px solid var(--sdo-border); border-left: 3px solid var(--sdo-orange); border-radius: 4px; background: var(--sdo-surface-deep); }
.lot8-food-page .food-anatomy p { max-width: 85ch; }
.lot8-food-page .food-end { margin: 2.5rem 0; padding: clamp(1.25rem, 2.5vw, 2rem); border: 1px solid var(--sdo-border); border-top: 3px solid var(--sdo-orange); border-radius: 4px; background: var(--sdo-surface); }
.lot8-food-page .food-end .btn { margin: .5rem 0 0; white-space: normal; }
html.sdo-public .lot8-food-page .food-sources { padding: 1.25rem; border: 1px solid var(--sdo-border); border-radius: 4px; background: var(--sdo-surface); font-size: 14px; line-height: 1.6; }
html.sdo-public .lot8-food-page .food-sources h2 { padding: 0; border: 0; font-size: 16px; }
html.sdo-public .lot8-food-page .food-sources :is(p, li, a) { font-size: 14px !important; line-height: 1.6; }
.lot8-food-page .food-sources ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .65rem 1.5rem; margin: 1rem 0 0; padding: 0; list-style: none; }
.lot8-food-page .food-sources li { min-width: 0; }
.lot8-food-page .food-sources a { overflow-wrap: anywhere; }
.lot8-food-page .lot8-food-layout :is(section, aside)[id] { scroll-margin-top: 80px; }
@media (max-width: 767px) {
    .lot8-food-page .food-nav { justify-content: flex-start; gap: .25rem 1rem; margin-bottom: 1.5rem; }
    .lot8-food-page .food-anatomy, .lot8-food-page .food-end { margin-block: 1.5rem; }
    .lot8-food-page .food-sources ul { grid-template-columns: minmax(0, 1fr); }
}

/* Trois matières premières : images entières et textes regroupés. */
.lot8-food-page .food-ingredients { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2rem; margin: 2.5rem 0; }
.lot8-food-page .food-ingredient { display: flex; flex-direction: column; min-width: 0; overflow: hidden; border: 1px solid var(--sdo-border); border-top: 3px solid var(--sdo-orange); border-radius: 4px; background: var(--sdo-surface); }
.lot8-food-page .food-ingredient figure { min-width: 0; margin: 0; }
.lot8-food-page .food-ingredient img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; }
.lot8-food-page .food-ingredient figcaption { min-height: 4.5rem; padding: .75rem 1.5rem; color: var(--sdo-text-muted); font-size: 14px; line-height: 1.6; }
.lot8-food-page .food-ingredient__body { flex: 1; min-width: 0; padding: .5rem 1.5rem 1.5rem; }
html.sdo-public .lot8-food-page .food-ingredient h2 { min-height: 2.8em; font-size: 1.35rem; }
.lot8-food-page .food-ration-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (min-width: 768px) and (max-width: 1199px) {
    .lot8-food-page .food-ingredients { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .lot8-food-page .food-ingredient--oil { display: grid; grid-column: 1 / -1; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: center; }
    .lot8-food-page .food-ingredient--oil figcaption { min-height: 0; }
    .lot8-food-page .food-ingredient--oil .food-ingredient__body { padding-top: 1.5rem; }
    html.sdo-public .lot8-food-page .food-ingredient--oil h2 { min-height: 0; }
}
@media (max-width: 991px) {
    .lot8-food-page .food-ration-grid { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 767px) {
    .lot8-food-page .food-ingredients { grid-template-columns: minmax(0, 1fr); gap: 1rem; margin-block: 1.5rem; }
    .lot8-food-page .food-ingredient figcaption { min-height: 0; padding-inline: 1.25rem; }
    .lot8-food-page .food-ingredient__body { padding-inline: 1.25rem; }
    html.sdo-public .lot8-food-page .food-ingredient h2 { min-height: 0; }
}

/* Petits repères de croissance et d’organisation, sans données chiffrées. */
.lot8-food-page .food-card-heading { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: 1.25rem; }
html.sdo-public .lot8-food-page .food-card-heading h3 { min-width: 0; margin: 0; }
.lot8-food-page .food-mini-visual { display: block; flex: 0 0 112px; width: 112px; height: auto; color: var(--sdo-orange); }
.lot8-food-page .food-mini-visual__muted { stroke: var(--sdo-text-muted); opacity: .55; }
.lot8-food-page .food-mini-visual__point { fill: var(--sdo-surface); stroke: currentColor; stroke-width: 3; }
@media (max-width: 479px) {
    .lot8-food-page .food-mini-visual { flex-basis: 80px; width: 80px; }
}
