/* =====================================================================
 * UIUX-008R editorial family (owner correction)
 *
 * One system, four compositions: /editorial/ (publication + discovery,
 * incl. topic archives and article detail), /buying-guides/ (practical
 * guide discovery), a Buying Guide detail (focused long-form reading) and
 * /organic-farming/ (educational knowledge gateway). Loaded on those routes
 * only, after the UIUX-008R surfaces layer. Shared pieces: the canonical
 * container (no route-local max-width wrapper), a restrained type scale,
 * neutral surfaces, rounded geometry, the canonical story card
 * (components/story-card.css) and the canonical related-destination card
 * (pages/uiux-008r-convergence.css). Long-form measure is 40rem (640px, 68ch
 * at 17px Inter), aligned to the page's left content line, never container width.
 * ===================================================================== */

body:not(.aanya-admin) .editorial-family {
    --ef-measure: 40rem;
    --ef-section-gap: clamp(2.5rem, 5vw, 4rem);
    padding: clamp(1.25rem, 2.5vw, 2rem) 0 clamp(3rem, 6vw, 4.5rem);
    background: transparent;
    color: var(--u8r-ink);
}

/* ---------------------------------------------------------------------
 * Opening (Editorial home, topic archives, Organic Farming)
 * ------------------------------------------------------------------- */
body:not(.aanya-admin) .editorial-family .ef-intro {
    max-width: 50rem;
    margin: 0 0 clamp(1.5rem, 3vw, 2.25rem);
}

body:not(.aanya-admin) .editorial-family .ef-eyebrow {
    margin: 0 0 .625rem;
    color: var(--u8r-muted);
    font-size: .75rem;
    font-weight: 700;
    letter-spacing: .08em;
    line-height: 1.3;
    text-transform: uppercase;
}

body:not(.aanya-admin) .editorial-family .ef-eyebrow a {
    color: inherit;
    text-decoration: underline;
    text-underline-offset: .2em;
}

body:not(.aanya-admin) .editorial-family :is(.ef-intro__title, .hero-editorial__title) {
    max-width: 24ch;
    margin: 0;
    color: var(--u8r-ink);
    font-family: var(--font-heading-sans, var(--font-body));
    font-size: clamp(2rem, 1.4rem + 1.6vw, 2.625rem);
    font-weight: 700;
    letter-spacing: -.02em;
    line-height: 1.12;
    overflow-wrap: anywhere;
    text-wrap: balance;
}

body:not(.aanya-admin) .editorial-family :is(.ef-intro__lede, .hero-editorial__excerpt) {
    max-width: 60ch;
    margin: .875rem 0 0;
    color: var(--u8r-muted);
    font-size: clamp(1rem, .95rem + .25vw, 1.125rem);
    line-height: 1.6;
}

body:not(.aanya-admin) .editorial-family .ef-intro__status {
    display: flex;
    flex-wrap: wrap;
    gap: .375rem 1.25rem;
    margin: 1rem 0 0;
    color: var(--u8r-muted);
    font-size: .875rem;
    line-height: 1.5;
}

body:not(.aanya-admin) .editorial-family .ef-intro__status a,
body:not(.aanya-admin) .editorial-family .ef-note a,
body:not(.aanya-admin) .editorial-family .ef-prose a {
    color: var(--u8r-ink);
    font-weight: 600;
    text-decoration: underline;
    text-underline-offset: .2em;
}

/* ---------------------------------------------------------------------
 * Sections, links, grids, notes
 * ------------------------------------------------------------------- */
body:not(.aanya-admin) .editorial-family .ef-section {
    margin-top: var(--ef-section-gap);
}

/* The first section follows its opening closely (no dead band). */
body:not(.aanya-admin) .editorial-family :is(.ef-intro, .ef-topics, .directory-page-header, .ef-gateway) + .ef-section {
    margin-top: clamp(1.5rem, 3vw, 2.5rem);
}

body:not(.aanya-admin) .editorial-family .ef-section__head {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    justify-content: space-between;
    gap: .75rem 1.5rem;
    margin-bottom: 1.25rem;
}

body:not(.aanya-admin) .editorial-family .ef-section__title,
body:not(.aanya-admin) .editorial-family .buying-guide-products > h2 {
    margin: 0;
    color: var(--u8r-ink);
    font-family: var(--font-heading-sans, var(--font-body));
    font-size: clamp(1.25rem, 1.05rem + .6vw, 1.5rem);
    font-weight: 700;
    letter-spacing: -.01em;
    line-height: 1.25;
}

body:not(.aanya-admin) .editorial-family .ef-section__lede {
    max-width: 60ch;
    margin: .375rem 0 0;
    color: var(--u8r-muted);
    font-size: .9375rem;
    line-height: 1.55;
}

body:not(.aanya-admin) .editorial-family .ef-link {
    display: inline-flex;
    align-items: center;
    gap: .375rem;
    min-height: 2.75rem;
    color: var(--u8r-ink);
    font-size: .9375rem;
    font-weight: 700;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: .25em;
}

body:not(.aanya-admin) .editorial-family .ef-link :is(svg, .aanya-icon) {
    width: 1rem;
    height: 1rem;
}

body:not(.aanya-admin) .editorial-family :is(a, button):focus-visible {
    outline: 3px solid var(--u8r-focus);
    outline-offset: 3px;
}

body:not(.aanya-admin) .editorial-family .story-card__link:focus-visible {
    outline-offset: -3px;
}

body:not(.aanya-admin) .editorial-family .ef-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(1rem, 2vw, 1.5rem);
    margin: 0;
    padding: 0;
    list-style: none;
}

body:not(.aanya-admin) .editorial-family .ef-grid--rows {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

/* List items are layout cells here, not prose (the global 75ch li measure
   would leave grid columns short of the page edge). */
body:not(.aanya-admin) .editorial-family :is(.ef-grid, .ef-records, .ef-topics ul, .ef-principles ul, .related-destinations) > li {
    min-width: 0;
    max-width: none;
    margin: 0;
}

body:not(.aanya-admin) .editorial-family .ef-note {
    max-width: 50rem;
    margin: 0;
    padding: 1rem 1.25rem;
    border: 1px solid var(--u8r-rule);
    border-radius: var(--u8r-radius-tile);
    background: #fff;
    color: var(--u8r-muted);
    font-size: .9375rem;
    line-height: 1.6;
}

body:not(.aanya-admin) .editorial-family .ef-note h2 {
    margin: 0 0 .375rem;
    color: var(--u8r-ink);
    font-size: 1.0625rem;
}

body:not(.aanya-admin) .editorial-family .ef-note p {
    margin: 0;
}

/* Topic / format / knowledge-theme selector: one compact row. */
body:not(.aanya-admin) .editorial-family .ef-topics {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .5rem .875rem;
    margin: 0 0 clamp(1.5rem, 3vw, 2rem);
}

body:not(.aanya-admin) .editorial-family .ef-topics__label {
    color: var(--u8r-muted);
    font-size: .8125rem;
    font-weight: 700;
}

body:not(.aanya-admin) .editorial-family .ef-topics ul {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

body:not(.aanya-admin) .editorial-family .ef-topics a {
    display: inline-flex;
    align-items: center;
    min-height: 2.5rem;
    padding: 0 1rem;
    border: 1px solid var(--u8r-rule-strong);
    border-radius: var(--radius-pill);
    background: #fff;
    color: var(--u8r-ink);
    font-size: .875rem;
    font-weight: 600;
    text-decoration: none;
}

body:not(.aanya-admin) .editorial-family .ef-topics a:hover {
    border-color: var(--u8r-ink);
}

body:not(.aanya-admin) .editorial-family .ef-topics a[aria-current="page"] {
    border-color: var(--u8r-ink);
    background: var(--u8r-ink);
    color: #fff;
}

/* WordPress core pagination (Editorial + topic archives). */
body:not(.aanya-admin) .editorial-family .ef-pagination .nav-links {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    margin-top: 2rem;
}

body:not(.aanya-admin) .editorial-family .ef-pagination .page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 2.75rem;
    min-height: 2.75rem;
    padding: 0 .875rem;
    border: 1px solid var(--u8r-rule);
    border-radius: var(--radius-pill);
    background: #fff;
    color: var(--u8r-ink);
    font-weight: 600;
    text-decoration: none;
}

body:not(.aanya-admin) .editorial-family .ef-pagination .page-numbers.current {
    border-color: var(--u8r-ink);
    background: var(--u8r-ink);
    color: #fff;
}

body:not(.aanya-admin) .editorial-family .ef-related .related-destinations {
    margin: 0;
}

body:not(.aanya-admin) .editorial-family .ef-related .ef-section__title {
    margin-bottom: 1.25rem;
}

/* ---------------------------------------------------------------------
 * Long-form opening (article + Buying Guide detail): hero-editorial.
 * Replaces the legacy ruled, 96px, half-empty grid hero at source-level
 * specificity; one declaration set for both routes.
 * ------------------------------------------------------------------- */
body:not(.aanya-admin) .editorial-family .ef-article {
    max-width: none;
    margin: 0;
}

body:not(.aanya-admin) .editorial-family .hero-editorial {
    display: block;
    margin: 0 0 clamp(1.75rem, 3.5vw, 2.75rem);
    padding: 0;
    border: 0;
    background: transparent;
}

body:not(.aanya-admin) .editorial-family .hero-editorial__copy {
    max-width: 50rem;
}

body:not(.aanya-admin) .editorial-family .hero-editorial__kicker {
    display: block;
    margin: 0 0 .625rem;
    color: var(--u8r-muted);
    font-size: .75rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
}

body:not(.aanya-admin) .editorial-family .hero-editorial__kicker a {
    color: inherit;
    text-decoration: underline;
    text-underline-offset: .2em;
}

/* One compact metadata line: "Published May 2, 2025 · 5 min read · 3
   products in this guide". Items never break internally; the separator
   travels with the item before it, so a wrapped line never starts with "·". */
body:not(.aanya-admin) .editorial-family .hero-editorial__metadata {
    display: block;
    margin: 1rem 0 0;
    color: var(--u8r-muted);
    font-size: .875rem;
    line-height: 1.7;
}

body:not(.aanya-admin) .editorial-family .hero-editorial__metadata > span {
    display: inline;
    white-space: nowrap;
}

body:not(.aanya-admin) .editorial-family .hero-editorial__metadata > span:not(:last-child)::after {
    content: "\00B7";
    margin-inline: .5rem;
}

/* Restrained in-opening notice (demo disclosure): text + icon, neutral. */
body:not(.aanya-admin) .editorial-family .hero-editorial__notice {
    display: flex;
    align-items: flex-start;
    gap: .5rem;
    max-width: 34rem;
    margin: 1rem 0 0;
    padding: .625rem .875rem;
    border: 1px solid var(--u8r-rule);
    border-radius: var(--u8r-radius-tile);
    background: var(--u8r-surface-muted);
    color: var(--u8r-muted);
    font-size: .8125rem;
    line-height: 1.5;
}

body:not(.aanya-admin) .editorial-family .hero-editorial__notice strong {
    color: var(--u8r-ink);
    font-weight: 700;
    letter-spacing: .04em;
    text-transform: uppercase;
}

body:not(.aanya-admin) .editorial-family .hero-editorial__notice :is(svg, .aanya-icon) {
    flex: 0 0 auto;
    width: 1rem;
    height: 1rem;
    margin-top: .125rem;
    color: var(--u8r-ink);
}


body:not(.aanya-admin) .editorial-family .hero-editorial__image {
    grid-column: auto;
    grid-row: auto;
    max-width: 60rem;
    margin: clamp(1.25rem, 2.5vw, 2rem) 0 0;
}

body:not(.aanya-admin) .editorial-family .hero-editorial__image img {
    display: block;
    width: 100%;
    height: auto;
    max-height: none;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    border: 0;
    border-radius: var(--u8r-radius-card);
    box-shadow: none;
}

body:not(.aanya-admin) .editorial-family .hero-editorial__image figcaption,
body:not(.aanya-admin) .editorial-family .editorial-context-image figcaption {
    margin-top: .5rem;
    color: var(--u8r-muted);
    font-size: .8125rem;
    line-height: 1.45;
}

/* Split opening (Buying Guide detail): ONE composition. Copy and image share
   a single rounded panel; the photograph bleeds to the panel edge and crops
   to the height of the copy (floor 16rem, ceiling 24rem), so the copy never
   floats beside a taller picture and the image is not an independent block.
   Content starts at the top, never vertically centred. Phones: copy first,
   then the image across the panel's foot. */
body:not(.aanya-admin) .editorial-family .hero-editorial--split {
    overflow: hidden;
    border: 1px solid var(--u8r-rule);
    border-radius: var(--u8r-radius-panel);
    background: #fff;
}

body:not(.aanya-admin) .editorial-family .hero-editorial--split .hero-editorial__copy {
    padding: clamp(1.25rem, 3vw, 2.25rem);
}

body:not(.aanya-admin) .editorial-family .hero-editorial--split .hero-editorial__image {
    max-width: none;
    margin: 0;
}

body:not(.aanya-admin) .editorial-family .hero-editorial--split .hero-editorial__image img {
    border-radius: 0;
}

@media (min-width: 768px) {
    body:not(.aanya-admin) .editorial-family .hero-editorial--split {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(0, 46%);
        align-items: stretch;
    }

    body:not(.aanya-admin) .editorial-family .hero-editorial--split .hero-editorial__copy {
        align-self: start;
    }

    body:not(.aanya-admin) .editorial-family .hero-editorial--split .hero-editorial__image {
        display: flex;
        flex-direction: column;
        min-height: 16rem;
        max-height: 24rem;
    }

    body:not(.aanya-admin) .editorial-family .hero-editorial--split .hero-editorial__image img {
        flex: 1 1 0;
        min-height: 0;
        height: 100%;
        aspect-ratio: auto;
    }
}

/* ---------------------------------------------------------------------
 * Reading column + prose (article body, Buying Guide body)
 * ------------------------------------------------------------------- */
body:not(.aanya-admin) .editorial-family .ef-reading {
    max-width: var(--ef-measure);
}

body:not(.aanya-admin) .editorial-family .ef-prose {
    max-width: var(--ef-measure);
    margin: 0;
    color: var(--u8r-ink);
    font-size: 1.0625rem;
    line-height: 1.75;
    overflow-wrap: break-word;
}

body:not(.aanya-admin) .editorial-family .ef-prose > * {
    margin-block: 0;
}

body:not(.aanya-admin) .editorial-family .ef-prose > * + * {
    margin-top: 1.1em;
}

body:not(.aanya-admin) .editorial-family .ef-prose :is(h2, h3, h4) {
    color: var(--u8r-ink);
    font-family: var(--font-heading-sans, var(--font-body));
    font-weight: 700;
    letter-spacing: -.01em;
    scroll-margin-top: calc(var(--header-height-sticky, 5rem) + 1rem);
}

body:not(.aanya-admin) .editorial-family .ef-prose h2 {
    margin-top: 2.25rem;
    font-size: 1.5rem;
    line-height: 1.3;
}

body:not(.aanya-admin) .editorial-family .ef-prose h3 {
    margin-top: 1.75rem;
    font-size: 1.1875rem;
    line-height: 1.35;
}

body:not(.aanya-admin) .editorial-family .ef-prose :is(ul, ol) {
    padding-left: 1.25rem;
}

body:not(.aanya-admin) .editorial-family .ef-prose ul {
    list-style: disc;
}

body:not(.aanya-admin) .editorial-family .ef-prose ol {
    list-style: decimal;
}

body:not(.aanya-admin) .editorial-family .ef-prose li + li {
    margin-top: .4em;
}

body:not(.aanya-admin) .editorial-family .ef-prose blockquote {
    margin-inline: 0;
    padding: .25rem 0 .25rem 1.25rem;
    border: 0;
    border-left: 3px solid var(--u8r-rule-strong);
    background: transparent;
    color: var(--u8r-ink);
    font-family: inherit;
    font-size: 1.125rem;
}

body:not(.aanya-admin) .editorial-family .ef-prose :is(img, figure) {
    max-width: 100%;
    height: auto;
    border-radius: var(--u8r-radius-tile);
}

body:not(.aanya-admin) .editorial-family .ef-prose figcaption {
    margin-top: .5rem;
    color: var(--u8r-muted);
    font-size: .875rem;
}

body:not(.aanya-admin) .editorial-family .ef-prose table {
    display: block;
    max-width: 100%;
    overflow-x: auto;
    border-collapse: collapse;
    font-size: .9375rem;
}

body:not(.aanya-admin) .editorial-family .ef-prose :is(th, td) {
    padding: .625rem .75rem;
    border: 1px solid var(--u8r-rule);
    text-align: left;
}

body:not(.aanya-admin) .editorial-family .ef-contents,
body:not(.aanya-admin) .editorial-family .editorial-toc {
    margin: 0 0 1.75rem;
    padding: 0;
    border: 0;
    font-size: .9375rem;
}

body:not(.aanya-admin) .editorial-family :is(.ef-contents, .editorial-toc) strong {
    display: block;
    margin-bottom: .5rem;
    color: var(--u8r-muted);
    font-size: .75rem;
    letter-spacing: .08em;
    text-transform: uppercase;
}

body:not(.aanya-admin) .editorial-family :is(.ef-contents, .editorial-toc) ol {
    margin: 0;
    padding-left: 1.25rem;
}

body:not(.aanya-admin) .editorial-family :is(.ef-contents, .editorial-toc) li + li {
    margin-top: .375rem;
}

body:not(.aanya-admin) .editorial-family :is(.ef-contents, .editorial-toc) a {
    color: var(--u8r-ink);
    text-underline-offset: .2em;
}

/* Article: reading column + "In this article" rail (rail first in DOM so it
   precedes the body on narrow screens; beside it from 1024px). */
body:not(.aanya-admin) .editorial-family .editorial-article-layout {
    display: block;
    padding: 0;
}

@media (min-width: 1024px) {
    body:not(.aanya-admin) .editorial-family .editorial-article-layout {
        display: grid;
        grid-template-columns: minmax(0, var(--ef-measure)) minmax(12rem, 15rem);
        gap: clamp(2.5rem, 5vw, 4.5rem);
        justify-content: start;
    }

    body:not(.aanya-admin) .editorial-family .editorial-article-rail {
        position: sticky;
        top: calc(var(--header-height-sticky, 5rem) + 1rem);
        grid-column: 2;
        grid-row: 1;
        align-self: start;
    }

    body:not(.aanya-admin) .editorial-family .editorial-body {
        grid-column: 1;
        grid-row: 1;
    }
}

body:not(.aanya-admin) .editorial-family .editorial-share {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    margin: 0 0 1.75rem;
}

body:not(.aanya-admin) .editorial-family .editorial-share :is(a, button) {
    display: inline-flex;
    align-items: center;
    min-height: 2.5rem;
    padding: 0 .875rem;
    border: 1px solid var(--u8r-rule-strong);
    border-radius: var(--radius-pill);
    background: #fff;
    color: var(--u8r-ink);
    font: inherit;
    font-size: .875rem;
    font-weight: 600;
    text-decoration: none;
    cursor: pointer;
}

body:not(.aanya-admin) .editorial-family .editorial-callout {
    margin: 1.75rem 0;
    padding: 1.125rem 1.25rem;
    border: 1px solid var(--u8r-rule);
    border-radius: var(--u8r-radius-tile);
    background: #fff;
}

body:not(.aanya-admin) .editorial-family .editorial-callout--warnings {
    border-left: 3px solid var(--u8r-ink);
}

body:not(.aanya-admin) .editorial-family .editorial-callout h2 {
    margin: 0 0 .5rem;
    font-size: 1.0625rem;
}

body:not(.aanya-admin) .editorial-family :is(.editorial-author, .editorial-disclosure) {
    max-width: var(--ef-measure);
    margin-top: 2rem;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--u8r-muted);
    font-size: .9375rem;
    line-height: 1.6;
}

body:not(.aanya-admin) .editorial-family .editorial-author h2 {
    margin: 0 0 .25rem;
    color: var(--u8r-ink);
    font-size: 1rem;
}

body:not(.aanya-admin) .editorial-family .editorial-disclosure strong {
    color: var(--u8r-ink);
}

body:not(.aanya-admin) .editorial-family .editorial-disclosure p {
    margin: .25rem 0 0;
}

body:not(.aanya-admin) .editorial-family .editorial-relationships {
    margin-top: var(--ef-section-gap);
    padding: 0;
    border: 0;
}

body:not(.aanya-admin) .editorial-family .ef-pathway {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .25rem 1rem;
    max-width: 50rem;
    margin: var(--ef-section-gap) 0 0;
    padding: .75rem 1.25rem;
    border: 1px solid var(--u8r-rule);
    border-radius: var(--u8r-radius-tile);
    background: #fff;
    color: var(--u8r-muted);
}

body:not(.aanya-admin) .editorial-family .editorial-adjacent {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
    margin-top: 2rem;
    padding: 0;
    border: 0;
    font-size: .9375rem;
}

body:not(.aanya-admin) .editorial-family .editorial-adjacent a {
    color: var(--u8r-ink);
}

body:not(.aanya-admin) .editorial-family .editorial-adjacent > div:last-child {
    text-align: right;
}

/* ---------------------------------------------------------------------
 * Buying Guides hub + detail
 * ------------------------------------------------------------------- */
/* Article "Related products" still uses the shared buying-guide products block. */
body:not(.aanya-admin) .editorial-family .buying-guide-products > h2 {
    margin-bottom: 1.25rem;
}

body:not(.aanya-admin) .editorial-family .buying-guide-products__grid {
    margin-top: 0;
}

body:not(.aanya-admin) .editorial-family .buying-guide-single__back {
    margin: 2rem 0 0;
}

/* Buying Guide detail anatomy: opening -> (In this guide) -> guide text in
   open space -> products panel -> factual context callout -> more guides ->
   Related on AANYA -> back to the hub. */
body:not(.aanya-admin) .editorial-family.buying-guide-single {
    padding-bottom: clamp(2rem, 4vw, 3rem);
}

body:not(.aanya-admin) .editorial-family .ef-contents--inline {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: .375rem 1rem;
    margin: 0 0 1.75rem;
    padding: .75rem 0;
    border-block: 1px solid var(--u8r-rule);
}

body:not(.aanya-admin) .editorial-family .ef-contents--inline strong {
    display: inline;
    margin: 0;
}

body:not(.aanya-admin) .editorial-family .ef-contents--inline ol {
    display: flex;
    flex-wrap: wrap;
    gap: .25rem 1.25rem;
    padding: 0;
    list-style: none;
}

body:not(.aanya-admin) .editorial-family .ef-contents--inline li + li {
    margin-top: 0;
}

body:not(.aanya-admin) .editorial-family :is(#guide-overview, #guide-products, #guide-context) {
    scroll-margin-top: calc(var(--header-height-sticky, 5rem) + 1rem);
}

body:not(.aanya-admin) .editorial-family .ef-guide__body .ef-prose > p:first-child {
    font-size: 1.125rem;
}

body:not(.aanya-admin) .editorial-family .ef-guide__products {
    margin-top: clamp(2rem, 4vw, 3rem);
    padding: clamp(1.25rem, 2.5vw, 1.75rem);
    border: 1px solid var(--u8r-rule);
    border-radius: var(--u8r-radius-panel);
    background: #fff;
}

body:not(.aanya-admin) .editorial-family .ef-guide__products .ef-section__head {
    margin-bottom: 1rem;
}

body:not(.aanya-admin) .editorial-family .ef-guide-products {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .75rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

body:not(.aanya-admin) .editorial-family .ef-guide-products > li {
    min-width: 0;
    max-width: none;
    margin: 0;
}

body:not(.aanya-admin) .editorial-family .guide-product {
    display: grid;
    grid-template-columns: 4.5rem minmax(0, 1fr);
    gap: .875rem;
    height: 100%;
    padding: .75rem;
    border: 1px solid var(--u8r-rule);
    border-radius: var(--u8r-radius-tile);
    background: var(--u8r-section);
    color: var(--u8r-ink);
    text-decoration: none;
    transition: border-color .18s ease;
}

body:not(.aanya-admin) .editorial-family .guide-product:hover {
    border-color: var(--u8r-rule-strong);
}

body:not(.aanya-admin) .editorial-family .guide-product:focus-visible {
    outline-offset: 2px;
}

body:not(.aanya-admin) .editorial-family .guide-product__media {
    display: grid;
    width: 4.5rem;
    height: 4.5rem;
    overflow: hidden;
    place-items: center;
    border-radius: 10px;
    background: #fff;
    color: var(--u8r-muted);
}

body:not(.aanya-admin) .editorial-family .guide-product__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

body:not(.aanya-admin) .editorial-family .guide-product__media :is(svg, .aanya-icon) {
    width: 1.25rem;
    height: 1.25rem;
}

body:not(.aanya-admin) .editorial-family .guide-product__body {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: .2rem;
}

body:not(.aanya-admin) .editorial-family .guide-product__brand {
    color: var(--u8r-muted);
    font-size: .75rem;
    font-weight: 700;
    letter-spacing: .05em;
    text-transform: uppercase;
}

body:not(.aanya-admin) .editorial-family .guide-product__title {
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.3;
}

body:not(.aanya-admin) .editorial-family .guide-product__excerpt {
    display: -webkit-box;
    overflow: hidden;
    color: var(--u8r-muted);
    font-size: .875rem;
    line-height: 1.45;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

body:not(.aanya-admin) .editorial-family .guide-product__foot {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: .25rem .75rem;
    margin-top: auto;
    padding-top: .25rem;
    font-size: .8125rem;
}

body:not(.aanya-admin) .editorial-family .guide-product__action {
    display: inline-flex;
    align-items: center;
    gap: .3rem;
    font-weight: 700;
}

body:not(.aanya-admin) .editorial-family .guide-product__action :is(svg, .aanya-icon) {
    width: .9rem;
    height: .9rem;
}

/* Compact factual callout: catalogue facts, visibly separate from guidance. */
body:not(.aanya-admin) .editorial-family .ef-guide__context {
    margin-top: 1rem;
    padding: clamp(1rem, 2vw, 1.25rem) clamp(1.25rem, 2.5vw, 1.75rem);
    border-radius: var(--u8r-radius-panel);
    background: var(--u8r-surface-muted);
}

body:not(.aanya-admin) .editorial-family .ef-guide__context-title {
    margin: 0;
    font-size: 1rem;
    line-height: 1.35;
}

body:not(.aanya-admin) .editorial-family .ef-guide__context-lede {
    max-width: 60ch;
    margin: .25rem 0 .75rem;
    color: var(--u8r-muted);
    font-size: .875rem;
}

body:not(.aanya-admin) .editorial-family .ef-guide__context dl {
    display: grid;
    gap: .5rem;
    margin: 0;
}

body:not(.aanya-admin) .editorial-family .ef-guide__context dl > div {
    display: grid;
    grid-template-columns: minmax(0, 14rem) minmax(0, 1fr);
    gap: .25rem 1rem;
    align-items: baseline;
}

body:not(.aanya-admin) .editorial-family .ef-guide__context dt {
    color: var(--u8r-muted);
    font-size: .8125rem;
    font-weight: 700;
}

body:not(.aanya-admin) .editorial-family .ef-guide__context dd {
    margin: 0;
}

body:not(.aanya-admin) .editorial-family .ef-guide__context dd ul {
    display: flex;
    flex-wrap: wrap;
    gap: .375rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

body:not(.aanya-admin) .editorial-family .ef-guide__context dd li {
    max-width: none;
}

body:not(.aanya-admin) .editorial-family .ef-guide__context dd a {
    display: inline-flex;
    align-items: center;
    min-height: 2rem;
    padding: 0 .75rem;
    border: 1px solid var(--u8r-rule-strong);
    border-radius: var(--radius-pill);
    background: #fff;
    color: var(--u8r-ink);
    font-size: .8125rem;
    font-weight: 600;
    text-decoration: none;
}

body:not(.aanya-admin) .editorial-family .buying-guide-archive__pagination {
    margin-top: 2rem;
}

body:not(.aanya-admin) .editorial-family .buying-guide-archive__pagination-current {
    background: var(--u8r-ink);
}

/* ---------------------------------------------------------------------
 * Organic Farming gateway
 * ------------------------------------------------------------------- */
body:not(.aanya-admin) .editorial-family .ef-gateway {
    display: grid;
    gap: clamp(1.25rem, 3vw, 2rem);
    margin: 0 0 clamp(1.5rem, 3vw, 2.25rem);
}

@media (min-width: 768px) {
    body:not(.aanya-admin) .editorial-family .ef-gateway {
        grid-template-columns: minmax(0, 1fr) minmax(0, min(35rem, 46%));
        gap: clamp(2rem, 4vw, 4rem);
        align-items: stretch;
    }

    /* Same composition rule as the guide opening: copy starts at the top and
       the photograph crops to the copy's height (bounded), never a centred
       block beside a taller image. */
    body:not(.aanya-admin) .editorial-family .ef-gateway__copy {
        align-self: start;
    }

    body:not(.aanya-admin) .editorial-family .ef-gateway .ef-gateway__copy + .editorial-context-image {
        display: flex;
        flex-direction: column;
        min-height: 16rem;
        max-height: 24rem;
    }

    body:not(.aanya-admin) .editorial-family .ef-gateway .ef-gateway__copy + .editorial-context-image img {
        flex: 1 1 0;
        min-height: 0;
        height: 100%;
        aspect-ratio: auto;
    }
}

body:not(.aanya-admin) .editorial-family .ef-gateway .editorial-context-image {
    float: none;
    width: 100%;
    max-width: none;
    margin: 0;
    border-radius: 0;
    overflow: visible;
}

body:not(.aanya-admin) .editorial-family .ef-gateway .editorial-context-image img {
    aspect-ratio: 4 / 3;
    object-fit: cover;
    border-radius: var(--u8r-radius-card);
}

body:not(.aanya-admin) .editorial-family .ef-gateway__boundary {
    max-width: 60ch;
    margin: 1.25rem 0 0;
    padding-left: .875rem;
    border-left: 3px solid var(--u8r-rule-strong);
    color: var(--u8r-muted);
    font-size: .875rem;
    line-height: 1.55;
}

body:not(.aanya-admin) .editorial-family .ef-records {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

body:not(.aanya-admin) .editorial-family .ef-records a {
    display: flex;
    flex-direction: column;
    gap: .375rem;
    height: 100%;
    padding: 1.125rem 1.25rem;
    border: 1px solid var(--u8r-rule);
    border-radius: var(--u8r-radius-tile);
    background: #fff;
    color: var(--u8r-ink);
    text-decoration: none;
}

body:not(.aanya-admin) .editorial-family .ef-records__type {
    color: var(--u8r-muted);
    font-size: .75rem;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
}

body:not(.aanya-admin) .editorial-family .ef-records__title {
    font-weight: 700;
    line-height: 1.3;
}

body:not(.aanya-admin) .editorial-family .ef-records__summary {
    color: var(--u8r-muted);
    font-size: .9375rem;
    line-height: 1.55;
}

body:not(.aanya-admin) .editorial-family .ef-principles ul {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.25rem clamp(1.5rem, 3vw, 2.5rem);
    margin: 1.25rem 0 0;
    padding: 0;
    list-style: none;
}

body:not(.aanya-admin) .editorial-family .ef-principles h3 {
    margin: 0 0 .375rem;
    color: var(--u8r-ink);
    font-size: 1rem;
    line-height: 1.35;
}

body:not(.aanya-admin) .editorial-family .ef-principles p {
    margin: 0;
    color: var(--u8r-muted);
    font-size: .9375rem;
    line-height: 1.6;
}

body:not(.aanya-admin) .editorial-family .ef-participant {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 1rem 2rem;
    padding: clamp(1.25rem, 2.5vw, 1.75rem);
    border: 1px solid var(--u8r-rule);
    border-radius: var(--u8r-radius-panel);
    background: #fff;
}

body:not(.aanya-admin) .editorial-family .ef-participant p {
    max-width: 60ch;
    margin: .375rem 0 0;
    color: var(--u8r-muted);
    line-height: 1.55;
}

/* ---------------------------------------------------------------------
 * Responsive
 * ------------------------------------------------------------------- */
@media (max-width: 1023px) {
    body:not(.aanya-admin) .editorial-family :is(.ef-grid, .ef-records, .ef-guide-products) {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 899px) {
    body:not(.aanya-admin) .editorial-family .ef-grid--rows,
    body:not(.aanya-admin) .editorial-family .ef-principles ul {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    body:not(.aanya-admin) .editorial-family :is(.ef-grid, .ef-records, .ef-guide-products) {
        grid-template-columns: 1fr;
    }

    body:not(.aanya-admin) .editorial-family .ef-guide__context dl > div {
        grid-template-columns: 1fr;
    }

    body:not(.aanya-admin) .editorial-family .editorial-adjacent {
        grid-template-columns: 1fr;
    }

    body:not(.aanya-admin) .editorial-family .editorial-adjacent > div:last-child {
        text-align: left;
    }

    body:not(.aanya-admin) .editorial-family .ef-participant .btn {
        width: 100%;
    }
}
