/* Hallmark · pre-emit critique: P4 H4 E4 S4 R5 V4
 * Editorial event detail: existing Bobalu typography and red; image beside copy.
 * Scope every rule to single events, including the theme's template elements.
 */
body.single-bblb_events {
    --bblb-event-divider: #dfe3e8;
}

body.single-bblb_events #content.site-content {
    box-sizing: border-box;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: clamp(40px, 6vw, 80px) 24px;
}

body.single-bblb_events #content > article.type-bblb_events {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(0, 3fr);
    align-items: start;
    gap: 40px clamp(28px, 5vw, 64px);
    margin: 0;
}

body.single-bblb_events article.type-bblb_events > .entry-header {
    grid-column: 1 / -1;
    margin: 0;
    padding: 0 0 28px;
    border-bottom: 1px solid var(--bblb-event-divider);
}

body.single-bblb_events article.type-bblb_events .entry-title {
    margin: 0;
    font-size: clamp(30px, 4vw, 52px);
    line-height: 1.15;
    overflow-wrap: anywhere;
}

body.single-bblb_events article.type-bblb_events > .entry-thumbnail {
    width: 100%;
    margin: 0;
    padding: 0;
}

body.single-bblb_events article.type-bblb_events > .entry-thumbnail img {
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 560px;
    margin: 0 auto;
    object-fit: contain;
}

body.single-bblb_events article.type-bblb_events > .entry-content {
    min-width: 0;
    width: 100%;
    margin: 0;
    padding: 0;
    font-size: 18px;
    line-height: 1.7;
    overflow-wrap: anywhere;
}

body.single-bblb_events article.type-bblb_events:not(.has-post-thumbnail) > .entry-content {
    grid-column: 1 / -1;
    max-width: 780px;
}

body.single-bblb_events article.type-bblb_events .entry-content :is(h2, h3, h4) {
    margin: 32px 0 14px;
    font-size: 1.3em;
    line-height: 1.35;
}

body.single-bblb_events article.type-bblb_events .entry-content > :first-child {
    margin-top: 0;
}

body.single-bblb_events article.type-bblb_events .entry-content :is(p, ul, ol) {
    margin-bottom: 20px;
}

body.single-bblb_events article.type-bblb_events .entry-content :is(ul, ol) {
    padding-left: 1.3em;
}

body.single-bblb_events article.type-bblb_events .entry-content li {
    margin-bottom: 10px;
}

body.single-bblb_events #content > .post-navigation {
    margin: 48px 0 0;
    padding: 24px 0 0;
    border-top: 1px solid var(--bblb-event-divider);
}

body.single-bblb_events #content .nav-links {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 20px;
}

body.single-bblb_events #content a:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: 4px;
}

@media (max-width: 767px) {
    body.single-bblb_events #content.site-content {
        padding: 36px 20px;
    }

    body.single-bblb_events #content > article.type-bblb_events {
        grid-template-columns: minmax(0, 1fr);
        gap: 28px;
    }

    body.single-bblb_events article.type-bblb_events > .entry-thumbnail img {
        max-height: 420px;
    }
}
