/* Добавлено при реставрации. Тему не трогаем — только дополняем. */

/* Заголовок конгресса в шапке был <h1>; ради единственного осмысленного H1
   на странице тег заменён на <div>. Правила скопированы из main.min.css
   (.c-header__conf-title h1) вместе с брейкпоинтами — вид не меняется. */
.c-header__conf-title .c-conf-name { font-family: CasperBold; color: #0081a8;
  font-size: 2.5rem; line-height: 2.5rem; margin: 0; }
@media (min-width: 768px) {
  .c-header__conf-title .c-conf-name { font-size: 4rem; line-height: 4rem; }
}

/* Подзаголовок конгресса в шапке был <h2> и стоял до <h1> страницы.
   Правила скопированы из main.min.css (.c-header__conf-title h2). */
.c-header__conf-title .c-conf-sub { font-family: CasperBold; color: #232429;
  font-size: 2.5rem; line-height: 2.5rem; margin: 0; }
@media (min-width: 768px) {
  .c-header__conf-title .c-conf-sub { font-size: 3rem; line-height: 4rem; }
}

/* Аккордеон Useful Info: тема скрывает описание, открывал его пропавший скрипт. */
.b-useful-info__accordion > li.is-active > .b-useful-info__description {
  display: block;
}
.b-useful-info__accordion > li:focus-visible { outline: 2px solid #0081a8; }

/* Копирайт: в оригинальном подвале строки не было, добавлена при реставрации. */
.c-footer__copyright { clear: both; padding: 2rem 1rem; text-align: center;
  font-family: Casper; font-size: 1.4rem; line-height: 1.6;
  color: #fff; opacity: .75; }
@media (min-width: 768px) { .c-footer__copyright { font-size: 1.6rem; } }

/* Ссылки в тексте различались только цветом (провал link-in-text-block).
   Подчёркиваем только внутри контента — меню и логотипы не трогаем. */
.b-homepage-content a[href], .b-useful-info__description a[href],
.b-venue__section-info a[href], .b-accomm-travel__section-info a[href],
.b-lecturers__article-bio a[href], .b-contributions a[href],
.b-registration-info a[href], .b-sponsorship-info a[href],
.b-ems-scholarships a[href] { text-decoration: underline; }

/* FAQ (добавлен при реставрации). Секция клирит обе колонки и идёт во всю ширину. */
.b-faq { clear: both; padding: 0 1.5rem 5rem; }
@media (min-width: 768px) { .b-faq { padding: 0 8rem 8rem; } }
.b-faq__inner { max-width: 100rem; margin: 0 auto; }
.b-faq__title { font-family: CasperBold; color: #232429; text-transform: uppercase;
  text-align: center; margin-bottom: 3rem; font-size: 2.6rem; line-height: 2.6rem; }
@media (min-width: 768px) { .b-faq__title { font-size: 4rem; line-height: 4rem; } }
.b-faq__item { border: 2px solid #232429; border-bottom: none; background-color: #ccc; }
.b-faq__item:last-child { border-bottom: 2px solid #232429; }
.b-faq__q { font-family: CasperBold; color: #0081a8; cursor: pointer;
  padding: 1rem 2rem 1.3rem; font-size: 2rem; line-height: 2.4rem; list-style: none; }
@media (min-width: 768px) { .b-faq__q { font-size: 2.6rem; line-height: 3rem; } }
.b-faq__q::-webkit-details-marker { display: none; }
.b-faq__q::after { content: "A"; float: right; transition: transform .15s ease-in-out; }
.b-faq__item[open] .b-faq__q::after { transform: rotate(90deg); }
.b-faq__item[open] .b-faq__q { text-decoration: underline; }
.b-faq__a { background-color: #f5f7fa; color: #232429; font-family: Casper;
  padding: .5rem 2rem; font-size: 1.6rem; line-height: 1.6; }
@media (min-width: 768px) { .b-faq__a { font-size: 2rem; line-height: 2rem; } }
.b-faq__a p { margin: 1.5rem 0; }

/* Форма регистрации: возвращаем нативные списки вместо несохранившегося виджета. */
.b-registration-form__form-field--select select.is-restored {
  display: block; width: 100%; box-sizing: border-box;
  font-family: Casper; font-size: 1.6rem; line-height: 1.6;
  padding: .6rem .8rem; border: 2px solid #232429; background-color: #fff;
  color: #232429;
}
@media (min-width: 768px) {
  .b-registration-form__form-field--select select.is-restored { font-size: 2rem; }
}

/* Клон правил темы для заголовков, поднятых с h5/h6 до h2/h3
   ради корректного порядка уровней. Сгенерировано build_astro.py. */
.b-homepage-content__topics h2,.b-homepage-content__topics h3{font-family:CasperBold}
.b-homepage-content__topics h2{color:#fff;background-color:#0081a8;display:inline-block;padding:.5rem 1rem;margin-bottom:2.5rem}
@media (max-width:767px){.b-homepage-content__topics h2{font-size:2rem}}
@media (min-width:768px){.b-homepage-content__topics h2{font-size:2.6rem}}
@media (max-width:767px){.b-homepage-content__topics h2{line-height:2rem}}
@media (min-width:768px){.b-homepage-content__topics h2{line-height:2.6rem}}
@media (min-width:768px){.b-homepage-content__topics h2{margin-bottom:4rem}}
.b-homepage-content__topics h3{margin-bottom:1rem}
@media (max-width:767px){.b-homepage-content__topics h3{font-size:1.8rem}}
@media (min-width:768px){.b-homepage-content__topics h3{font-size:2.2rem}}
@media (max-width:767px){.b-homepage-content__topics h3{line-height:1.8rem}}
@media (min-width:768px){.b-homepage-content__topics h3{line-height:2.2rem}}
@media (min-width:768px){.b-homepage-content__topics h3{margin-bottom:2rem}}
.b-homepage-content__topics.news-h h2{margin-bottom:0}
.b-venue__section-info h2,.b-venue__section-info h3{font-family:CasperBold}
.b-venue__section-info h2{margin-bottom:2rem;text-transform:uppercase;text-decoration:underline}
@media (max-width:767px){.b-venue__section-info h2{font-size:2rem}}
@media (min-width:768px){.b-venue__section-info h2{font-size:2.6rem}}
.b-venue__section-info h3{margin-bottom:.5rem}
@media (max-width:767px){.b-venue__section-info h3{font-size:1.8rem}}
@media (min-width:768px){.b-venue__section-info h3{font-size:2.4rem}}
.b-accomm-travel__section-info h2,.b-accomm-travel__section-info h3{font-family:CasperBold}
.b-accomm-travel__section-info h2{margin-bottom:2rem;text-transform:uppercase;text-decoration:underline}
@media (max-width:767px){.b-accomm-travel__section-info h2{font-size:2rem}}
@media (min-width:768px){.b-accomm-travel__section-info h2{font-size:2.6rem}}
.b-accomm-travel__section-info h3{margin-bottom:.5rem}
@media (max-width:767px){.b-accomm-travel__section-info h3{font-size:1.8rem}}
@media (min-width:768px){.b-accomm-travel__section-info h3{font-size:2.4rem}}
.b-accomm-travel__section--contact h3{margin-top:1rem}
.b-lecturers__article-bio h3{font-family:CasperBold;margin-bottom:.5rem}
@media (max-width:767px){.b-lecturers__article-bio h3{font-size:1.6rem}}
@media (min-width:768px){.b-lecturers__article-bio h3{font-size:2rem}}
@media (min-width:768px){.b-lecturers__article-bio h3{margin-bottom:1rem}}
