/* События: список /events и страница события /events/<slug> (templates/pages/event*.html).
   Отдельный файл, а не style.css: тот уже за порогом сплита, а стили событий грузятся только
   на своих страницах. Палитра и компоненты — из style.css (--brand, --mint, .btn, .blog-card…),
   стандарт — docs/BRANDING.md. Принцип лёгкости: воздух, короткие блоки, без ярких заливок. */

.event-band { padding: 48px 0; }
.event-narrow { max-width: 880px; }
.event-wide { max-width: 1060px; }

/* Обложка под вводным текстом: края картинки и так растворяются в белом — рамка не нужна */
.event-cover { display: block; width: 100%; height: auto; margin: 26px 0 4px; border-radius: 18px; }

/* Программа по блокам; у блока «взгляда» — своя иллюстрация слева */
.event-block { margin: 0 0 34px; }
.event-block:last-child { margin-bottom: 0; }
.event-block--img { display: grid; grid-template-columns: 280px 1fr; gap: 28px; align-items: start; }
.event-block__img { width: 100%; height: auto; border-radius: 18px; }
/* Блок без картинки — список в той же колонке, что у блоков с картинкой: колонка встреч не «прыгает» */
.event-block:not(.event-block--img) { padding-left: 308px; }
.event-block__title {
    font-size: 14px; letter-spacing: .12em; text-transform: uppercase; font-weight: 600;
    color: var(--brand); margin: 0 0 12px;
}

.event-kicker { text-align: center; margin: 0 0 14px; }
.event-badge {
    display: inline-block; padding: 5px 14px; border-radius: 999px;
    font-size: 13px; letter-spacing: .08em; text-transform: uppercase; font-weight: 600;
    color: var(--muted); background: #fff; border: 1px solid var(--line);
}
.event-badge--open { color: var(--brand); border-color: var(--brand); }
.event-badge--past { color: var(--muted); }

.event-lead { font-size: 19px; line-height: 1.72; color: var(--ink-soft); margin: 0 0 18px; }
.event-text { font-size: 18px; line-height: 1.72; color: var(--ink-soft); margin: 0 0 18px; }
.event-anchor {
    margin: 26px 0 0; padding: 18px 22px; background: #fff; border-left: 3px solid var(--brand);
    border-radius: 10px; font-size: 18px; line-height: 1.6; color: var(--ink); font-weight: 500;
}

.event-h2 { font-size: 30px; font-weight: 500; letter-spacing: .3px; color: var(--ink); margin: 0 0 22px; line-height: 1.25; }
.event-h2--center { text-align: center; }

/* Ключевые факты набора: старт · формат · стоимость */
.event-facts {
    list-style: none; margin: 30px 0 0; padding: 0;
    display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px;
}
.event-facts li {
    background: #fff; border: 1px solid var(--line); border-radius: 14px; padding: 16px 18px;
    font-size: 17px; line-height: 1.45; color: var(--ink);
}
.event-facts span {
    display: block; margin-bottom: 6px; font-size: 12px; letter-spacing: .14em;
    text-transform: uppercase; color: var(--brand); font-weight: 600;
}
.event-cta-row { justify-content: center; margin-top: 30px; }
.event-note { text-align: center; color: var(--muted); font-size: 16px; margin: 14px 0 0; }

/* Принципы — жирный мини-заголовок + короткое пояснение (голос Виктории) */
.event-principles {
    display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px;
    max-width: 1000px; margin: 34px auto 0;
}
.event-principle { background: #fff; border-radius: 16px; padding: 22px 24px; border: 1px solid var(--line); }
.event-principle__head { font-weight: 600; color: var(--ink); font-size: 18px; margin-bottom: 6px; }
.event-principle p { margin: 0; color: var(--ink-soft); font-size: 16px; line-height: 1.55; }

/* Программа: дата слева, тема справа; встречи Виктории отмечены линией бренда */
.event-program { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 12px; }
.event-meeting {
    display: grid; grid-template-columns: 130px 1fr; gap: 18px; align-items: baseline;
    background: #fff; border: 1px solid var(--line); border-radius: 14px; padding: 16px 20px;
}
.event-meeting--self { border-left: 4px solid var(--brand); }
.event-meeting__date { font-weight: 600; color: var(--brand); font-size: 17px; }
.event-meeting__meta { font-size: 13px; letter-spacing: .06em; text-transform: uppercase; color: var(--muted); margin-bottom: 4px; }
.event-meeting__body p { margin: 0; color: var(--ink-soft); font-size: 17px; line-height: 1.55; }

/* Ведущие */
.event-hosts { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; max-width: 1060px; margin: 0 auto; }
.event-host { background: #fff; border: 1px solid var(--line); border-radius: 16px; padding: 24px 26px; }
.event-host__name { font-size: 20px; font-weight: 600; color: var(--ink); margin-bottom: 6px; }
.event-host__name a { color: var(--ink); text-decoration: none; border-bottom: 1px solid var(--line); }
.event-host__name a:hover { color: var(--brand); border-color: var(--brand); }
.event-host__role { font-size: 15px; color: var(--muted); line-height: 1.55; }
.event-host p { margin: 0; color: var(--ink-soft); font-size: 16px; line-height: 1.55; }

/* Финальный призыв */
.event-final { text-align: center; padding-bottom: 90px; }
.event-final h2 { font-size: 32px; font-weight: 500; color: var(--ink); margin: 0 0 16px; }
.event-final p { font-size: 18px; color: var(--ink-soft); max-width: 640px; margin: 0 auto 10px; line-height: 1.65; }
.event-final p.accent { color: var(--brand); font-weight: 600; }
.event-final .cta-row { justify-content: center; margin-top: 24px; }
.event-back { margin-top: 30px !important; font-size: 16px !important; }
.event-back a { color: var(--brand); text-decoration: none; }
.event-back a:hover { text-decoration: underline; }

/* Список событий */
.event-card .event-kicker { text-align: left; margin: 0; }
.event-card__dates { color: var(--muted); font-size: 15px; }

@media (max-width: 900px) {
    .event-facts, .event-principles, .event-hosts { grid-template-columns: 1fr; }
    .event-block--img { grid-template-columns: 1fr; gap: 14px; }
    .event-block__img { max-width: 280px; margin: 0 auto; }
    .event-block:not(.event-block--img) { padding-left: 0; }
}
@media (max-width: 600px) {
    .event-band { padding: 36px 0; }
    .event-h2 { font-size: 25px; }
    .event-final h2 { font-size: 26px; }
    .event-lead { font-size: 17px; }
    .event-meeting { grid-template-columns: 1fr; gap: 4px; padding: 14px 16px; }
}

/* Заголовок карточки события — как в «Материалах»: общее `.section h2` (36px, по центру)
   сильнее одиночного класса, поэтому уточняем родителем. */
.event-card .blog-card__title { font-size: 21px; text-align: left; letter-spacing: 0; line-height: 1.35; margin: 0; }
