.ev-page {
    --ev-accent: var(--secondary-color, #f4c84a);
    --ev-border: var(--theme-border, #dce4ea);
    --ev-heading: var(--navy-900, #0a192f);
    --ev-muted: var(--muted, #66717d);
    color: var(--ev-heading);
    font-family: 'Manrope', sans-serif;
}

.ev-page main {
    background:
        radial-gradient(circle at 92% 12%, rgba(244, 200, 74, .16), transparent 22%),
        linear-gradient(180deg, #f7fafc 0%, #fff 38%, #f7fafc 100%);
}

.ev-page .page-hero { margin-bottom: 0; }
.ev-simple-hero {
    min-height: 240px;
    background:
        linear-gradient(90deg, rgba(18, 105, 81, .96) 0%, rgba(18, 105, 81, .78) 52%, rgba(12, 68, 124, .42) 100%),
        linear-gradient(135deg, #317b65, #8dc7df);
}
.ev-simple-hero::after {
    position: absolute;
    inset: 0 0 0 46%;
    background: linear-gradient(110deg, transparent 0 12%, rgba(255, 255, 255, .1) 12% 44%, transparent 44% 50%, rgba(255, 255, 255, .13) 50% 82%, transparent 82%);
    content: '';
}
.ev-simple-hero .page-hero-overlay { background: transparent; }
.ev-simple-hero .page-hero-body { z-index: 2; }
.ev-simple-hero .page-hero-title { max-width: 920px; }

.ev-feature { padding: 32px 0; }
.ev-feature__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(310px, 370px);
    align-items: start;
    gap: 28px;
}
.ev-banner,
.ev-sidebar-card,
.ev-report-grid a {
    overflow: hidden;
    border: 1px solid var(--ev-border);
    border-radius: var(--theme-border-radius, 5px);
    background: #fff;
    box-shadow: 0 10px 28px rgba(10, 25, 47, .07);
}
.ev-banner {
    display: grid;
    min-height: 430px;
    place-items: center;
    background: #f8fafb;
}
.ev-banner img { width: 100%; height: 100%; max-height: 620px; object-fit: contain; }
.ev-banner__placeholder {
    display: flex;
    min-height: 430px;
    width: 100%;
    flex-direction: column;
    justify-content: flex-end;
    padding: clamp(28px, 5vw, 64px);
    background:
        radial-gradient(circle at 80% 20%, rgba(244, 200, 74, .3), transparent 24%),
        linear-gradient(135deg, var(--primary-color, #0c447c), #317b65);
    color: #fff;
}
.ev-banner__placeholder span { margin-bottom: 12px; color: var(--ev-accent); font-size: .72rem; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }
.ev-banner__placeholder strong { max-width: 720px; color: #fff; font-size: clamp(1.6rem, 4vw, 2.8rem); line-height: 1.2; }

.ev-sidebar { position: sticky; top: 88px; }
.ev-sidebar-card { padding: 24px; }
.ev-card-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding-bottom: 18px; border-bottom: 1px solid var(--ev-border); }
.ev-card-heading .ev-eyebrow { margin: 0; }
.ev-status { flex: 0 0 auto; padding: 5px 9px; border-radius: 999px; font-size: .65rem; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.ev-status--open { background: #e7f7ef; color: #13704a; }
.ev-status--closed, .ev-status--ended { background: #eef2f5; color: #596773; }
.ev-info-rows { padding: 6px 0; }
.ev-info-row { display: grid; grid-template-columns: 32px minmax(0, 1fr); gap: 12px; padding: 15px 0; border-bottom: 1px solid var(--ev-border); }
.ev-info-row:last-child { border-bottom: 0; }
.ev-info-icon { display: grid; width: 32px; height: 32px; place-items: center; border-radius: 50%; background: var(--primary-color-lightest, #eaf4f8); color: var(--primary-color, #0c447c); }
.ev-info-icon svg { width: 15px; height: 15px; }
.ev-info-label { display: block; margin-bottom: 3px; color: var(--ev-muted); font-size: .67rem; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }
.ev-info-row strong { display: block; color: var(--ev-heading); font-size: .86rem; line-height: 1.45; overflow-wrap: anywhere; }
.ev-card-actions { display: grid; gap: 9px; padding-top: 14px; }
.ev-nav {
    position: sticky;
    top: 0;
    z-index: 8;
    overflow-x: auto;
    border-block: 1px solid var(--ev-border);
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 8px 24px rgba(10, 25, 47, .05);
    scrollbar-width: none;
}
.ev-nav::-webkit-scrollbar { display: none; }
.ev-nav .container { display: flex; justify-content: center; gap: 1.65rem; }
.ev-nav a { flex: 0 0 auto; padding: 1rem 0; border-bottom: 3px solid transparent; color: var(--ev-muted); font-size: .78rem; font-weight: 800; white-space: nowrap; }
.ev-nav a:hover { border-color: var(--primary-color, #0c447c); color: var(--primary-color, #0c447c); }

.ev-section { padding: 2.75rem 0; scroll-margin-top: 4rem; }
.ev-muted { background: rgba(247, 250, 252, .72); }
.ev-eyebrow { margin-bottom: .45rem; color: var(--primary-color, #0c447c); font-size: .7rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.ev-section h2 { margin-bottom: 1.5rem; color: var(--ev-heading); font: 700 clamp(1.75rem, 4vw, 2.45rem)/1.2 'Manrope', sans-serif; }
.ev-section h3, .ev-section h4 { font-family: 'Manrope', sans-serif; }
.ev-intro { max-width: 900px; }
.ev-description { color: var(--ev-heading); font-size: 1rem; line-height: 1.75; }
.ev-description > * + * { margin-top: 1rem; }

.ev-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    padding: .8rem 1.2rem;
    border: 1px solid var(--primary-color, #0c447c);
    border-radius: var(--theme-border-radius, 5px);
    background: var(--primary-color, #0c447c);
    color: #fff;
    font-size: .82rem;
    font-weight: 800;
}
.ev-button:hover { background: color-mix(in srgb, var(--primary-color, #0c447c) 88%, #000); color: #fff; }
.ev-button--full { width: 100%; }
.ev-button--light { border-color: var(--ev-border); background: #fff; color: var(--primary-color, #0c447c); }
.ev-button--light:hover { background: var(--primary-color-lightest, #eaf4f8); color: var(--primary-color, #0c447c); }

.ev-report-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.ev-report-grid a { display: flex; min-height: 130px; flex-direction: column; justify-content: space-between; padding: 1.25rem; color: var(--ev-heading); transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease; }
.ev-report-grid a:hover { transform: translateY(-4px); border-color: var(--primary-color, #0c447c); box-shadow: 0 18px 38px rgba(10, 25, 47, .13); }
.ev-report-grid span { display: flex; align-items: center; gap: 6px; margin-top: .5rem; color: var(--primary-color, #0c447c); font-size: .78rem; font-weight: 700; }

.ev-page .panelist-item,
.ev-page .session-card-wrap { border: 1px solid var(--ev-border) !important; border-radius: var(--theme-border-radius, 5px) !important; background: #fff; box-shadow: 0 10px 28px rgba(10, 25, 47, .06); }
.ev-page .panelist-item { margin: 0 0 18px !important; padding: 18px; }
.ev-page .panelist-badge { width: auto; background: var(--primary-color-lightest, #eaf4f8); color: var(--primary-color, #0c447c); }
.ev-page .session-card-wrap { overflow: hidden; }
.ev-page .tabs li.is-active a { border-bottom-color: var(--primary-color, #0c447c) !important; color: var(--primary-color, #0c447c) !important; }

.ev-share-section { padding: 0 0 2.75rem; }
.ev-share-card {
    display: flex;
    width: 50%;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin: 0 auto;
    padding: 24px 28px;
    border: 1px solid var(--ev-border);
    border-radius: var(--theme-border-radius, 5px);
    background: #fff;
    box-shadow: 0 10px 28px rgba(10, 25, 47, .06);
}
.ev-share-card h2 { margin: 0; color: var(--ev-heading); font: 700 1.25rem/1.3 'Manrope', sans-serif; }
.ev-share-card .ev-eyebrow { margin-bottom: 3px; }
.ev-share-links { flex-wrap: nowrap; gap: 6px; }
.ev-share-links > a { min-width: 30px; margin: 0 !important; padding-inline: 8px; }
.ev-share-links .share-button-title { display: none; }

@media (max-width: 900px) {
    .ev-feature__grid { grid-template-columns: 1fr; }
    .ev-sidebar { position: static; }
    .ev-banner { min-height: 320px; }
    .ev-nav .container { justify-content: flex-start; width: max-content; min-width: 100%; }
    .ev-report-grid { grid-template-columns: repeat(2, 1fr); }
    .ev-share-card { width: 70%; }
}

@media (max-width: 600px) {
    .ev-simple-hero { min-height: 210px; }
    .ev-feature { padding: 20px 0 24px; }
    .ev-feature__grid { gap: 18px; }
    .ev-banner { min-height: 220px; }
    .ev-banner__placeholder { min-height: 260px; }
    .ev-sidebar-card { padding: 20px; }
    .ev-nav .container { gap: 1.2rem; }
    .ev-section { padding: 2.1rem 0; }
    .ev-report-grid { grid-template-columns: 1fr; }
    .ev-page .panelist-item { padding: 12px; }
    .ev-share-section { padding-bottom: 2.1rem; }
    .ev-share-card { width: 100%; align-items: flex-start; flex-direction: column; padding: 20px; }
}
