/* События на телефоне (≤767px) — по правилам docs/mobile-design.md: всё по левому краю
   и на всю ширину, факты строками в одной карточке, прошедшие — строки «фото 96×96 · текст»,
   кликается вся карточка. Подключается после events.css. */

@media (max-width: 767px) {
  .ev-section-title { margin-bottom: 18px; font-size: 22px; }

  /* шапка: вкладки на всю ширину */
  .ev-head { margin: 12px 0 28px; }
  .ev-head__lead { margin-bottom: 22px; font-size: 16px; line-height: 1.6; }
  .ev-tabs { display: flex; width: 100%; padding: 4px; }
  a.ev-tabs__tab { flex: 1 1 0; justify-content: center; padding: 11px 8px; font-size: 15px; }
  a.ev-tabs__tab[aria-current="page"] { background: #272727; color: #fff; box-shadow: none; }

  .ev-btn, a.ev-btn { width: 100%; }
  .ev-buttons { flex-direction: column; gap: 10px; width: 100%; }

  /* главная карточка */
  .ev-showcase { gap: 16px; }
  .ev-featured { gap: 16px; padding: 12px 12px 16px; border-radius: 22px; }
  .ev-featured__media { border-radius: 16px; }
  .ev-featured__body { gap: 14px; padding: 0 4px; }
  .ev-featured__desc { -webkit-line-clamp: 3; font-size: 15px; }
  .ev-badge { top: 10px; left: 10px; min-width: 56px; padding: 7px 10px; border-radius: 12px; }
  .ev-badge__day { font-size: 20px; }
  .ev-badge__month { font-size: 12px; }
  .ev-facts { padding: 2px 14px; border-radius: 16px; }
  .ev-facts__row { grid-template-columns: 92px minmax(0, 1fr); column-gap: 16px; padding: 11px 0; }
  .ev-facts dt { font-size: 13px; }
  .ev-facts dd { font-size: 15px; }

  /* сетка: одна колонка */
  .ev-grid { grid-template-columns: minmax(0, 1fr); gap: 12px; }
  .ev-tile { border-radius: 18px; }
  .ev-tile__body { padding: 16px; }

  /* прошедшие — строка: фото 96×96 слева, текст справа */
  a.ev-tile--past { display: grid; grid-template-columns: 96px minmax(0, 1fr); column-gap: 16px; align-items: center; padding: 12px; }
  a.ev-tile--past:hover { transform: none; box-shadow: none; }
  .ev-tile--past .ev-tile__media { width: 96px; height: 96px; aspect-ratio: auto; border-radius: 14px; }
  .ev-tile--past .ev-tile__body { gap: 4px; padding: 0; }
  .ev-tile--past .ev-tile__date { font-size: 13px; }
  .ev-tile--past .ev-tile__title {
    display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; font-size: 16px; line-height: 1.3;
  }
  .ev-tile--past .ev-tile__org { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 1; overflow: hidden; font-size: 13px; }

  /* архив: факты строками в одной карточке (число слева, подпись справа) */
  .ev-stats { display: grid; grid-template-columns: max-content minmax(0, 1fr); gap: 0; padding: 4px 16px; border-radius: 18px; background: #f3f9f5; }
  .ev-stats__item {
    display: grid; grid-column: 1 / -1; grid-template-columns: subgrid; align-items: center;
    column-gap: 16px; /* у строки: свой gap в subgrid перебивает gap карточки */
    padding: 14px 0; border-radius: 0; background: none;
  }
  .ev-stats__item + .ev-stats__item { border-top: 1px solid #dcebe2; }
  .ev-stats__value { font-size: 22px; }
  .ev-stats__label { font-size: 14px; }
  .ev-years { gap: 6px; }
  a.ev-years__chip { padding: 8px 13px; font-size: 14px; }
  .ev-archive__group { margin-top: 32px; }
  .ev-archive__year { margin-bottom: 14px; font-size: 22px; }

  .ev-empty__box { margin-bottom: 40px; padding: 22px 20px; border-radius: 20px; }
  .ev-empty__title { font-size: 22px; }
  .ev-empty__box p { flex-basis: 100%; }

  .ev-cta { flex-direction: column; align-items: stretch; margin: 52px 0 16px; padding: 26px 22px; border-radius: 22px; }

  /* страница события */
  .ev-page__hero { gap: 16px; margin: 12px 0 44px; }
  .ev-page__media { border-radius: 18px; }
  .ev-page__card { gap: 16px; padding: 20px 16px; border-radius: 20px; }
  .ev-page__about { gap: 24px; margin-bottom: 44px; }
  .ev-prose { font-size: 16px; line-height: 1.65; }
  .ev-prose .ev-prose__lead { font-size: 18px; }
  .ev-prose-card { padding: 18px; border-radius: 18px; }
  .ev-prose-card > h3 { margin: -18px -18px 14px; padding: 12px 18px; border-radius: 17px 17px 0 0; font-size: 16px; }
  .ev-prose-kv__row { grid-template-columns: minmax(0, 1fr); row-gap: 2px; }
  .ev-aside { flex-direction: column; align-items: stretch; padding: 20px 16px; border-radius: 20px; }
  .ev-aside .ev-buttons { flex-direction: column; }
  .ev-aside .ev-btn { width: 100%; }
  a.ev-aside__link { align-self: center; }
  .ev-page__others-head { flex-direction: column; gap: 0; }
  .ev-page__others-head .ev-link { margin: -8px 0 16px; }
}
