    /* ── Переменные из исходника ─────────────────────────────── */
    :root {
        --zb:#0f1117;--zb2:#161922;--zb3:#1e2330;
        --zbr:#2a3040;--zbr2:#3a4560;
        --za:#c8a96e;--za2:#e8c98e;
        --zt:#f0f2f8;--zt2:#aab4c8;--zt3:#6a7a94;
    }

    /* ── Мобильное меню ────────────────────────────────────────── */
    .mmenu-bar { display:none;position:fixed;top:0;left:0;right:0;height:56px;background:#000;z-index:9000;align-items:stretch;justify-content:space-between;box-sizing:border-box; }
    .mmenu-btn { background:none;border:none;cursor:pointer;width:56px;height:56px;display:flex;align-items:center;justify-content:center;flex-shrink:0;-webkit-tap-highlight-color:transparent;outline:none; }
    .mmenu-btn:focus,.mmenu-btn:active,.mmenu-btn:focus-visible,.mmenu-btn:focus-within { background:none !important;outline:none !important;box-shadow:none !important;border:none !important; }
    .mmenu-call { color:#fff;font-weight:600;font-size:14px;text-decoration:none;text-transform:uppercase;background:#69BB60;padding:0 15px;outline:none;display:block;height:56px;line-height:56px;box-sizing:border-box;white-space:nowrap;flex-shrink:0; }
    .mmenu-call:hover  { color:#fff;background:#71C967;text-decoration:none; }
    .mmenu-call:active { color:#fff;background:#53A14A;text-decoration:none; }
    .mmenu-list { display:none;position:fixed;top:56px;left:0;right:0;background:#000;z-index:8999;flex-direction:column;max-height:calc(100vh - 56px);overflow-y:auto; }
    .mmenu-list.is-open { display:flex; }
    .mmenu-list a { display:block;padding:14px 20px;color:#fff;text-decoration:none;font-size:14px;font-family:Helvetica,Arial,sans-serif;text-transform:uppercase;letter-spacing:.04em;font-weight:400;border-bottom:1px solid #1a1a1a;-webkit-tap-highlight-color:transparent; }
    .mmenu-list a:hover { background:#69BB60;color:#fff;text-decoration:none; }

    /* ── Прилипающее и основное меню ──────────────────────────── */
    .sticky-menu { position:fixed;top:0;left:0;right:0;background:#000;z-index:1001;transform:translateY(-100%);transition:transform 0.3s ease;height:56px;display:flex;align-items:stretch;width:100%; }
    .sticky-menu.visible { transform:translateY(0); }
    nav.desktop-menu { display:flex;justify-content:flex-start;align-items:stretch;background:#000;padding:0;margin:0;height:56px;flex-wrap:nowrap;position:relative;z-index:1; }
    nav.desktop-menu span { margin:0;padding:0; }
    nav.desktop-menu span a { color:white;text-decoration:none;transition:background 0.3s;white-space:nowrap;height:56px;line-height:56px;display:inline-block;box-sizing:border-box; }
    nav.desktop-menu span a:hover { background:#69BB60; }
    nav.desktop-menu .block-btn { margin-left:auto;margin-right:0; }
    nav.desktop-menu .block-btn a { background:#69BB60;color:white;border-radius:0;text-decoration:none;transition:background 0.3s;height:56px;line-height:56px;display:block;box-sizing:border-box; }
    nav.desktop-menu .block-btn a:hover { background:#71C967; }
    body header nav.desktop-menu .block-btn a { border-radius:0; }
    body header nav.desktop-menu span a:hover { background:#69BB60; }
    body .sticky-menu .desktop-menu span { margin:0;padding:0;border:0;vertical-align:baseline; }
    body .sticky-menu .desktop-menu { margin:0;padding:0;border:0;font-size:0;display:block; }
    body .sticky-menu .desktop-menu span a { font-size:14px; }
    body .sticky-menu .desktop-menu .block-btn a,
    body .sticky-menu .desktop-menu .block-btn a.btn-green,
    body .sticky-menu .block-btn a.btn-green,
    body .sticky-menu a.btn-green { border-radius:0;margin:0; }

    /* ── Соцдок-футер ──────────────────────────────────────────── */
    .social-proof-footer { background:linear-gradient(135deg,#69BB60 0%,#5da552 100%);padding:30px 0;color:white;margin:0; }
    .social-proof-footer .container { max-width:1240px !important;margin:0 auto !important;padding:0 20px !important;width:100% !important;box-sizing:border-box !important; }
    .social-proof-content { display:flex;align-items:center;justify-content:space-between;gap:40px; }
    .stats-compact { display:flex;gap:30px;flex-shrink:0; }
    .stat-mini { display:flex;flex-direction:column;gap:4px; }
    .stat-mini strong { font-size:54px;font-weight:700;line-height:1; }
    .stat-mini span { font-size:14px;opacity:.95;white-space:nowrap; }
    .reviews-slider { position:relative;min-height:110px;overflow:hidden;padding:12px 20px;background:rgba(255,255,255,.25);border-radius:6px;flex:0 1 550px; }
    .review-slide { position:absolute;top:12px;left:20px;right:20px;opacity:0;transition:opacity .6s ease; }
    .review-slide.active { opacity:1; }
    .review-slide .stars { font-size:16px;margin-bottom:8px;line-height:1; }
    .review-text { font-size:14px;line-height:1.4;margin:0 0 6px;font-style:italic; }
    .review-author { font-size:12px;opacity:.9; }
    .cta-compact { flex-shrink:0;display:flex;flex-direction:column;gap:10px;align-items:center; }
    .btn-compact,.btn-reviews { background:transparent;color:white;border:2px solid white;padding:12px 24px;border-radius:6px;font-size:14px;font-weight:700;text-transform:uppercase;text-decoration:none;display:inline-block;transition:all .3s;white-space:nowrap;text-align:center;min-width:220px; }
    .btn-compact:hover,.btn-reviews:hover { background:white;color:#69BB60;text-decoration:none;transform:translateY(-2px); }

    /* ── Медиа ─────────────────────────────────────────────────── */
    @media (max-width:1300px) {
        .mmenu-bar { display:flex; }
        header .header { display:none; }
        nav.desktop-menu { display:none !important; }
        .sticky-menu { display:none !important; }
        body { padding-top:56px; }
    }
    @media (min-width:1301px) {
        .mmenu-bar { display:none !important; }
        .mmenu-list { display:none !important; }
        body { padding-top:0; }
    }
    @media (max-width:768px) {
        .social-proof-content { flex-direction:column;gap:20px;text-align:center; }
        .stats-compact { justify-content:space-around;width:100%;padding-bottom:15px;border-bottom:1px solid rgba(255,255,255,.2); }
        .stat-mini { align-items:center; }
        .reviews-slider { width:100%;flex:none;min-height:120px; }
    }

    /* ══════════════════════════════════════════════════════════════
       HERO — общий для листинга и детальных страниц
    ══════════════════════════════════════════════════════════════ */
    .ev-hero {
        position:relative;
        overflow:hidden;
        background:linear-gradient(135deg,#f8fdf9 0%,#e8f5e9 50%,#fff8e1 100%);
        margin:0;
        padding:0;
    }
    .ev-hero::before {
        content:'';
        position:absolute;top:-50%;right:-20%;
        width:80%;height:150%;
        background:radial-gradient(circle,rgba(105,187,96,.12) 0%,transparent 70%);
        pointer-events:none;
    }
    .ev-hero::after {
        content:'';
        position:absolute;bottom:-30%;left:-10%;
        width:50%;height:100%;
        background:radial-gradient(circle,rgba(240,200,8,.08) 0%,transparent 60%);
        pointer-events:none;
    }
    .ev-hero-inner {
        position:relative;z-index:2;
        padding:56px 25px 108px;
        box-sizing:border-box;
        display:flex; align-items:flex-start; justify-content:space-between; gap:24px; flex-wrap:wrap;
    }
    .ev-hero h1 {
        font-size:clamp(22px,3.8vw,46px);
        font-weight:300;
        color:#2e3440;
        margin:0;
        line-height:1.2;
        letter-spacing:-.02em;
        max-width:760px;
    }
    .ev-hero h1 strong { font-weight:700; }
    .ev-hero-cta {
        display:inline-block;
        flex-shrink:0;
        padding:14px 28px;
        background:transparent;
        color:#1a2330;
        border:2px solid #1a2330;
        border-radius:6px;
        font-size:13px;
        font-weight:600;
        text-transform:uppercase;
        letter-spacing:.05em;
        text-decoration:none;
        white-space:nowrap;
        transition:all .2s;
        margin-top:4px;
    }
    .ev-hero-cta:hover { background:#1a2330; color:#fff; text-decoration:none; }
    .ev-hero-wave {
        position:absolute;bottom:0;left:0;right:0;z-index:3;
        height:88px;overflow:hidden;pointer-events:none;
    }
    .ev-hero-wave svg { width:100%;height:100%;display:block; }

    @media (max-width:768px) {
        .ev-hero-inner { padding:36px 20px 90px; }
        .ev-hero h1 { font-size:clamp(20px,6vw,30px); }
        .ev-hero-wave { height:60px; }
    }
    @media (max-width:480px) {
        .ev-hero-inner { padding:28px 16px 76px; }
    }

    /* ══════════════════════════════════════════════════════════════
       БЕЛАЯ ЗОНА С НАПЛЫВАЮЩИМ ФОТО (паттерн со страницы /poisk/)
       Используется на детальных страницах мероприятий — фото лектора.
    ══════════════════════════════════════════════════════════════ */
    .ev-zone-outer { background:transparent; }
    .ev-zone {
        max-width:1240px;
        margin:0 auto;
        background:#ffffff;
        box-sizing:border-box;
        padding:48px 25px 90px;
        position:relative;
    }
    .ev-zone-photo-link {
        position:absolute !important;
        right:0 !important;
        bottom:0 !important;
        top:auto !important;
        left:auto !important;
        width:380px !important;
        max-width:38% !important;
        display:block;
        z-index:50;
        pointer-events:auto;
        margin:0 !important;
        float:none !important;
        line-height:0;
    }
    .ev-zone-photo { display:block;width:100%;height:auto;margin:0;border-radius:4px 4px 0 0; }
    .ev-zone-photo-caption {
        position:absolute;
        left:0; right:0; bottom:0;
        background:rgba(255,255,255,.94);
        padding:14px 16px;
        text-align:center;
        font-family:system-ui,sans-serif;
    }
    .ev-zone-photo-caption .name {
        font-size:19px; font-weight:700; color:#c8a96e;
        display:block; line-height:1.3;
    }
    .ev-zone-photo-caption .role {
        font-size:14px; font-weight:400; color:#5a6472;
        display:block; line-height:1.3; margin-top:2px;
    }
    .ev-zone-content { max-width:640px; }
    @media (max-width:900px) {
        .ev-zone-photo-link { position:static !important; width:220px !important; max-width:60% !important; margin:0 auto 28px !important; }
        .ev-zone-content { max-width:100%; }
    }
    @media (max-width:768px) {
        .ev-zone-outer { padding:0; }
        .ev-zone { padding:28px 16px 60px; }
    }

    /* ══════════════════════════════════════════════════════════════
       ДВУХКОЛОНОЧНАЯ РАСКЛАДКА — общая для /seminar/ и /seminar/{slug}/
       ЛЕВАЯ колонка меняется: список мероприятий (index.php) ИЛИ
       цены/условия конкретного мероприятия (event.php).
       ПРАВАЯ колонка тоже общая: фото лектора + форма заявки.
    ══════════════════════════════════════════════════════════════ */
    .ev-split { display:flex; align-items:flex-start; gap:44px; }
    .ev-split-left { flex:1; min-width:0; }
    .ev-split-right { width:480px; flex-shrink:0; position:sticky; top:24px; }
    .ev-split-heading {
        font-weight:300; font-size:clamp(20px,2.6vw,28px); letter-spacing:-.02em;
        color:#2e3440; margin:0 0 22px; text-align:center;
    }
    @media (max-width:1100px) {
        .ev-split { flex-direction:column; }
        .ev-split-right { width:100%; position:static; }
    }

    /* ── Слот с большим фото лектора (справа). На /seminar/ — Евсташенков
       (из партиала), на /seminar/{slug}/ — лектор конкретного мероприятия.
       Один и тот же view-transition-name на обеих страницах даёт браузеру
       (десктопный Chrome/Edge) анимировать переход между ними как единое
       фото при обычной ссылочной навигации — без единой строчки JS. ── */
    .ev-photo-slot {
        position:relative;
        border-radius:10px 10px 0 0;
        overflow:hidden;
        line-height:0;
        view-transition-name: ev-lecturer-photo;
    }
    .ev-photo-slot img { display:block; width:100%; height:auto; }
    .ev-photo-slot-caption {
        position:absolute; left:0; right:0; bottom:0;
        background:rgba(255,255,255,.94);
        padding:14px 16px;
        text-align:center;
        font-family:system-ui,sans-serif;
    }
    .ev-photo-slot-caption .name { display:block; font-size:19px; font-weight:700; color:#c8a96e; line-height:1.3; }
    .ev-photo-slot-caption .role { display:block; font-size:15px; font-weight:400; color:#5a6472; line-height:1.3; margin-top:2px; }

    /* ── Синяя подложка с формой заявки, под фото ── */
    .ev-form-section { margin-top:0; background:#185FA5; border-radius:10px; padding:24px; }

    /* ══════════════════════════════════════════════════════════════
       ФОРМА ЗАЯВКИ — синяя тема (общий партиал application-form.php)
    ══════════════════════════════════════════════════════════════ */
    .ev-app-card { background:#fff; border-radius:10px; overflow:hidden; }
    .ev-app-header { background:#123f6e; padding:16px 22px; text-align:center; }
    .ev-app-header h3 { margin:0 0 4px; font-size:18px; font-weight:700; color:#fff; text-transform:uppercase; letter-spacing:.03em; }
    .ev-app-header p { margin:0; font-size:13px; color:rgba(255,255,255,.8); }
    .ev-app-body { padding:20px; }
    .ev-app-form { display:flex; flex-direction:column; gap:14px; }
    .ev-app-field { display:flex; flex-direction:column; gap:6px; }
    .ev-app-label { font-size:13px; font-weight:700; color:#1a2330; }
    .ev-app-select, .ev-app-input {
        all:revert;
        display:block; width:100% !important; box-sizing:border-box !important;
        padding:10px 12px !important; border:2px solid #185FA5 !important; border-radius:6px !important;
        font-size:14px !important; font-family:inherit !important; color:#1a2330 !important; background:#fff !important;
        line-height:1.4 !important; margin:0 !important;
    }
    .ev-app-select:focus, .ev-app-input:focus { outline:none !important; border-color:#123f6e !important; box-shadow:0 0 0 3px rgba(24,95,165,.15); }
    .ev-app-input::placeholder { color:#9aa5b1; opacity:1; }
    .ev-app-events { display:flex; flex-direction:column; gap:8px; border:1px solid #d9e6f2; border-radius:8px; padding:10px 12px; background:#f4f8fc; }
    .ev-app-check { display:flex; align-items:flex-start; gap:8px; font-size:13.5px; color:#1a2330; cursor:pointer; line-height:1.4; }
    .ev-app-check-name { flex:1; min-width:0; }
    .ev-app-date { color:#185FA5; font-weight:600; flex-shrink:0; text-align:right; white-space:nowrap; }
    .ev-app-check input[type="checkbox"] {
        all:revert;
        appearance:none; -webkit-appearance:none; -moz-appearance:none;
        display:inline-block !important;
        margin:2px 0 0 0 !important; flex-shrink:0;
        width:19px !important; height:19px !important;
        border:2px solid #185FA5 !important; border-radius:4px !important;
        background:#fff !important; cursor:pointer;
        position:relative; transition:background .15s, border-color .15s;
        box-sizing:border-box;
    }
    .ev-app-check input[type="checkbox"]:checked { background:#185FA5 !important; border-color:#185FA5 !important; }
    .ev-app-check input[type="checkbox"]:checked::after {
        content:''; position:absolute; left:5px; top:1px;
        width:5px; height:10px;
        border:solid #fff; border-width:0 2px 2px 0;
        transform:rotate(45deg);
    }
    .ev-app-check input[type="checkbox"]:focus-visible { outline:2px solid #123f6e; outline-offset:2px; }
    .ev-app-hint { font-size:12px; color:#5a6472; }
    .ev-app-conflict-note { background:#fff4e5; border:1px solid #f0c808; border-radius:6px; padding:10px 12px; font-size:12.5px; color:#8a5a00; line-height:1.5; }
    .ev-app-price-box { border:2px solid #185FA5; border-radius:8px; padding:14px 16px; background:#f4f8fc; }
    .ev-app-price-box h4 { margin:0 0 10px; font-size:14px; color:#1a2330; }
    .ev-app-price-line { display:flex; justify-content:space-between; align-items:flex-start; font-size:13px; color:#3a4560; margin:4px 0; gap:10px; }
    .ev-app-price-line > span:first-child { flex:1; min-width:0; }
    .ev-app-price-line > span:last-child { flex-shrink:0; white-space:nowrap; text-align:right; }
    .ev-app-price-line .ev-app-price-date { color:#185FA5; font-weight:600; }
    .ev-app-price-line.total { border-top:2px solid #d9e6f2; margin-top:8px; padding-top:8px; font-size:16px; font-weight:700; color:#1a2330; }
    .ev-app-price-line.total .ev-app-amount { color:#185FA5; font-size:19px; }
    .ev-app-muted { color:#999; font-size:13px; }
    .ev-app-consent { display:flex; align-items:flex-start; gap:10px; font-size:13px; color:#5a6472; cursor:pointer; }
    .ev-app-consent input[type="checkbox"] {
        all:revert;
        appearance:none; -webkit-appearance:none; -moz-appearance:none;
        display:inline-block !important;
        margin:3px 0 0 0 !important; flex-shrink:0;
        width:18px !important; height:18px !important;
        border:2px solid #185FA5 !important; border-radius:4px !important;
        background:#fff !important; cursor:pointer;
        position:relative; box-sizing:border-box;
    }
    .ev-app-consent input[type="checkbox"]:checked { background:#185FA5 !important; border-color:#185FA5 !important; }
    .ev-app-consent input[type="checkbox"]:checked::after {
        content:''; position:absolute; left:5px; top:2px;
        width:4px; height:9px;
        border:solid #fff; border-width:0 2px 2px 0;
        transform:rotate(45deg);
    }
    .ev-app-consent a { color:#185FA5; text-decoration:underline; }
    .ev-app-submit {
        background:rgb(212,75,56); color:#fff; border:1px solid rgb(212,75,56); border-radius:6px; padding:14px;
        font-size:13px; font-weight:700; text-transform:uppercase; letter-spacing:.05em;
        cursor:pointer; transition:all .2s ease;
    }
    .ev-app-submit:hover:not(:disabled) { background:rgb(232,95,76); border-color:rgb(232,95,76); }
    .ev-app-submit:active:not(:disabled) { background:rgb(152,15,0); border-color:rgb(152,15,0); }
    .ev-app-submit:disabled { opacity:.5; cursor:not-allowed; }
    .ev-app-status { font-size:13px; text-align:center; min-height:16px; }

    /* ══════════════════════════════════════════════════════════════
       МЕСТО ПРОВЕДЕНИЯ — общий блок (partials/venue-section.php)
    ══════════════════════════════════════════════════════════════ */
    .ev-venue-section { margin:36px 0 0; }
    /* ── Единый стиль подзаголовков секций: «Программа мероприятия»,
       «Место проведения» — без подложек и подчёркивания. ── */
    .ev-program-heading, .ev-venue-heading {
        font-size:clamp(20px,2.4vw,26px);
        font-weight:300;
        color:#1a2330;
        margin:0 0 20px;
        text-align:center;
        letter-spacing:-.01em;
    }
    .ev-venue-card { background:#fff; border:2px solid #e8f5e9; border-radius:12px; overflow:hidden; display:flex; flex-direction:column; }
    .ev-venue-photo { width:100%; height:auto; max-height:400px; object-fit:contain; object-position:center; display:block; flex-shrink:0; background:#f0f4f0; }
    .ev-venue-info { padding:18px 22px; display:flex; flex-wrap:wrap; align-items:center; gap:14px; }
    .ev-venue-name { font-size:19px; font-weight:700; color:#2e3440; flex-basis:100%; margin:0; }
    .ev-venue-address, .ev-venue-metro { display:flex; align-items:center; gap:7px; font-size:15px; color:#555; }
    .ev-venue-address svg, .ev-venue-metro svg { color:#69BB60; flex-shrink:0; }
    .ev-venue-map-link { display:inline-flex; align-items:center; gap:6px; color:#69BB60; text-decoration:none; font-size:14px; font-weight:600; margin-left:auto; }
    .ev-venue-map-link:hover { color:#5aa850; }
    .ev-venue-note { padding:0 22px 18px; font-size:13px; color:#888; }
    .ev-venue-tbd { border:2px dashed #d9e6f2; border-radius:12px; padding:40px 24px; text-align:center; background:#f4f8fc; }
    .ev-venue-tbd p { font-size:15px; color:#3a4560; margin:0 0 8px; }
    .ev-venue-tbd .note { font-size:13px; color:#888; }
    @media (max-width:640px) {
        .ev-venue-map-link { margin-left:0; }
    }

