/* === Two-column feature — homepage Culture | Tips =====================
 *
 * Side-by-side homepage block: a Culture-Desk column and a Notebook
 * column, each with a Manrope eyebrow, a 16:9 background-image lead, a
 * Cormorant title, an excerpt, and a "Read the …" CTA. One curated post
 * per side (latest from the `culture` / `baking-tips` categories) with a
 * defensive de-dup so a dual-categorised post never wins both columns.
 * Collapses to a single column under 800 px with a horizontal divider
 * between the two cards instead of the vertical one.
 *
 * Class rename (slice 5.7): `.sb-twocol*` → `.sb-two-col-feature*`. The
 * pattern is rendered entirely server-side via this PHP, so no saved
 * post content references the old class names — but the rename is logged
 * as `[REFACTOR-020]` in REDIRECT-TODO.md for posterity.
 */
.sb-two-col-feature {
    display: grid;
    grid-template-columns: 1fr 1fr;
    border-top: 1px solid var(--sb-ink-light);
    border-bottom: 1px solid var(--sb-ink-light);
    background: var(--wp--preset--color--paper);
}
.sb-two-col-feature__col {
    padding: var(--wp--preset--spacing--lg) var(--wp--preset--spacing--lg);
}
.sb-two-col-feature__col + .sb-two-col-feature__col {
    border-left: 1px solid var(--sb-ink-light);
}
.sb-two-col-feature__eyebrow {
    font-family: var(--wp--preset--font-family--manrope);
    font-size: var(--wp--preset--font-size--eyebrow);
    text-transform: uppercase;
    letter-spacing: 0.3em;
    color: var(--wp--preset--color--saddle);
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0 0 var(--wp--preset--spacing--sm-plus);
}
.sb-two-col-feature__eyebrow::after {
    content: "";
    flex: 1;
    height: 1px;
    background: var(--wp--preset--color--saddle);
    opacity: 0.4;
}
.sb-two-col-feature__pic {
    display: block;
    aspect-ratio: 16/9;
    background-size: cover;
    background-position: center;
    background-color: var(--wp--preset--color--sugar);
    margin-bottom: var(--wp--preset--spacing--sm);
    border: 1px solid var(--sb-ink-light);
}
.sb-two-col-feature__title {
    font-family: var(--wp--preset--font-family--cormorant);
    font-size: var(--wp--preset--font-size--subhead);
    font-weight: 500;
    line-height: 1.15;
    margin: 0 0 calc(var(--wp--preset--spacing--xs) + var(--wp--preset--spacing--xxs) / 2);
    text-wrap: balance;
}
.sb-two-col-feature__title a {
    color: var(--wp--preset--color--ink);
    text-decoration: none;
}
.sb-two-col-feature__excerpt {
    font-family: var(--wp--preset--font-family--lora);
    font-size: var(--wp--preset--font-size--aside-body);
    line-height: 1.65;
    color: var(--wp--preset--color--ink);
    margin: 0 0 calc(var(--wp--preset--spacing--sm) - var(--wp--preset--spacing--xxs) / 2);
}
.sb-two-col-feature__read {
    font-family: var(--wp--preset--font-family--manrope);
    font-size: var(--wp--preset--font-size--meta);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.25em;
    color: var(--wp--preset--color--saddle);
    text-decoration: none;
}

@media (max-width: 800px) {
    .sb-two-col-feature {
        grid-template-columns: 1fr;
    }
    .sb-two-col-feature__col + .sb-two-col-feature__col {
        border-left: 0;
        border-top: 1px solid var(--sb-ink-light);
    }
}
