/* Self-contained mobile-first card. Variables are the theme integration API. */
.oelcr-card {
    --oelcr-accent: #963d2c;
    --oelcr-ink: #29231f;
    --oelcr-paper: #f6f2eb;
    --oelcr-surface: #fff;
    --oelcr-border: #d8cec0;
    --oelcr-radius: .7rem;
    --oelcr-gap: 1.25rem;
    --oelcr-heading-font: Georgia, serif;
    --oelcr-body-font: inherit;
    box-sizing: border-box;
    width: 100%; max-width: 72rem; min-width: 0;
    margin: 1.5rem auto;
    padding: clamp(.85rem, 3vw, 2rem);
    color: var(--oelcr-ink); background: var(--oelcr-surface);
    border: 1px solid var(--oelcr-border);
    border-inline-start: 5px solid var(--oelcr-accent);
    border-radius: var(--oelcr-radius);
    font-family: var(--oelcr-body-font); line-height: 1.6;
    overflow-wrap: anywhere;
    scroll-margin-top: 6rem;
}
.oelcr-card *, .oelcr-card *::before, .oelcr-card *::after { box-sizing: border-box; }
.oelcr-card h2, .oelcr-card h3, .oelcr-card h4 { color: inherit; font-family: var(--oelcr-heading-font); line-height: 1.25; }
.oelcr-card h2 { font-size: clamp(1.5rem, 4vw, 2.3rem); margin: 0 0 1rem; }
.oelcr-card h3 { font-size: 1.35rem; margin: 0 0 .8rem; }
.oelcr-card h4 { font-size: 1.1rem; margin: 1.2rem 0 .6rem; }
.oelcr-card__facts { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 8rem), 1fr)); gap: .6rem; margin: 0 0 var(--oelcr-gap); }
.oelcr-card__facts > div { min-width: 0; padding: .7rem; background: var(--oelcr-paper); border-radius: .3rem; }
.oelcr-card__facts dt { font-size: .9rem; }
.oelcr-card__facts dd { margin: .15rem 0 0; font-weight: 700; }
.oelcr-card__columns { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--oelcr-gap); }
.oelcr-card__columns > div { min-width: 0; }
.oelcr-card ul, .oelcr-card ol { margin: 0 0 1rem; padding-inline-start: 1.5rem; }
.oelcr-card ul { list-style: disc outside; }
.oelcr-card ol { list-style: decimal outside; }
.oelcr-card li { margin: 0 0 .7rem; scroll-margin-top: 6rem; }
.oelcr-card p { margin: .5rem 0; }
.oelcr-card__image { display: block; max-width: 100%; height: auto; margin: .75rem 0; border-radius: .3rem; }
.oelcr-card__note { margin-block-start: var(--oelcr-gap); padding: 1rem; background: var(--oelcr-paper); border-radius: .3rem; }
.oelcr-card a { color: var(--oelcr-accent); text-decoration: underline; }
.oelcr-card a:focus-visible { outline: 3px solid var(--oelcr-accent); outline-offset: 4px; }
.oelcr-card__print { font: inherit; color: var(--oelcr-accent); background: var(--oelcr-surface); border: 1px solid currentColor; border-radius: .3rem; padding: .5rem .85rem; margin: 0 0 1rem; cursor: pointer; }
.oelcr-card__print:focus-visible { outline: 3px solid var(--oelcr-accent); outline-offset: 4px; }
.oelcr-card__source { display: none; }
@media (min-width: 56rem) {
    .oelcr-card__columns { grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); }
}
