/**
 * Pro layout: pro_magazine — scoped under .evt-layout-pro-magazine
 * Default palette: primary #1c1917 · accent #dc2626 · bg #fafaf9
 * Default fonts:   heading Playfair Display · body DM Sans
 */

/* ── Hero shell ──────────────────────────────────────────────────── */

.evt-layout-pro-magazine .evt-inv-pm-hero-shell {
    margin-bottom: 40px;
}

/* ── Masthead bar ────────────────────────────────────────────────── */

.evt-layout-pro-magazine .evt-inv-pm-masthead {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 16px;
    justify-content: center;
}

.evt-layout-pro-magazine .evt-inv-pm-masthead-line {
    flex: 1;
    max-width: 100px;
    height: 1px;
    background: transparent;
    background: color-mix(in srgb, var(--evt-accent, #dc2626) 45%, transparent);
}

.evt-layout-pro-magazine .evt-inv-pm-masthead-word {
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 0.42em;
    text-transform: uppercase;
    color: var(--evt-accent, #dc2626);
    font-family: var(--evt-font-body, "DM Sans", system-ui, sans-serif);
}

/* ── Cover image ─────────────────────────────────────────────────── */

.evt-layout-pro-magazine .evt-inv-pm-hero .evt-inv-pm-cover {
    max-height: 460px;
    border-radius: 2px 2px 0 0;
    border-width: 0;
    border-bottom: 5px solid var(--evt-accent, #dc2626);
    box-shadow:
        0 28px 72px color-mix(in srgb, var(--evt-primary, #1c1917) 28%, transparent),
        0 1px 0 color-mix(in srgb, white 20%, transparent) inset;
}

.evt-layout-pro-magazine .evt-inv-hero--video .evt-inv-hero-video,
.evt-layout-pro-magazine .evt-inv-hero--video .evt-inv-hero-video-embed,
.evt-layout-pro-magazine .evt-inv-hero-video-scrim {
    border-radius: 2px 2px 0 0;
}

/* ── Details two-column grid ─────────────────────────────────────── */

.evt-layout-pro-magazine .evt-inv-pm-details-shell {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 28px;
}

@media (min-width: 720px) {
    .evt-layout-pro-magazine .evt-inv-pm-details-shell {
        grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
        align-items: start;
        gap: 40px;
    }
}

/* ── Display title ───────────────────────────────────────────────── */

.evt-layout-pro-magazine .evt-inv-pm-display-title {
    font-size: 32px;
    font-size: clamp(32px, 5.5vw, 52px);
    font-weight: 700;
    line-height: 1.06;
    letter-spacing: -0.01em;
    margin-bottom: 0;
    /* Playfair Display renders best with slightly looser optical tracking at large sizes */
    font-family: var(--evt-font-heading, "Playfair Display", Georgia, serif);
}

/* ── Event-type badge ────────────────────────────────────────────── */

.evt-layout-pro-magazine .evt-inv-pm-type {
    margin-bottom: 14px;
    border-radius: 2px;
    letter-spacing: 0.14em;
    font-size: 10px;
    font-weight: 700;
    font-family: var(--evt-font-body, "DM Sans", system-ui, sans-serif);
    text-transform: uppercase;
    background: transparent;
    background: color-mix(in srgb, var(--evt-accent, #dc2626) 10%, transparent);
    border-color: rgba(128, 128, 128, 0.25);
    border-color: color-mix(in srgb, var(--evt-accent, #dc2626) 30%, transparent);
    color: var(--evt-accent, #dc2626);
    padding-inline: 10px;
    padding-block: 5px;
}

/* ── Detail cards list ───────────────────────────────────────────── */

.evt-layout-pro-magazine .evt-inv-pm-detail-cards {
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.evt-layout-pro-magazine .evt-inv-pm-detail-cards li {
    border-radius: 0 8px 8px 0;
    border-left: 3px solid var(--evt-accent, #dc2626);
    padding-left: 14px;
    padding-block: 10px;
    background: var(--evt-background, #fafaf9);
    background: color-mix(in srgb, var(--evt-background, #fafaf9) 60%, white);
    font-family: var(--evt-font-body, "DM Sans", system-ui, sans-serif);
    font-size: 14px;
}

/* ── Countdown ───────────────────────────────────────────────────── */

.evt-layout-pro-magazine .evt-inv-countdown {
    border-radius: 2px 10px 10px 10px;
    border-left: 3px solid var(--evt-accent, #dc2626);
}

/* ── Gallery ─────────────────────────────────────────────────────── */

.evt-layout-pro-magazine .evt-inv-gallery-grid {
    gap: 10px;
}

.evt-layout-pro-magazine .evt-inv-gallery-item {
    border-radius: 2px;
}

