/* Общие элементы всех экранов стелы: постоянная шапка (логотипы), переключатель языка,
   хелпер центрирования текста. Пиксель-в-пиксель по Figma (позиции одинаковы на экранах). */

/* Постоянная шапка поверх всех экранов */
.brandhead { position: absolute; left: 0; top: 0; z-index: 100; }
.bh-vef { position: absolute; left: 589px; top: 32px; width: 459px; height: 128px; overflow: hidden; }
.bh-vef-a { position: absolute; left: 0; top: 0; width: 220.75px; height: 115.57px; }      /* текст ВЭФ */
.bh-vef-b { position: absolute; left: 241.3px; top: 35.44px; width: 217.8px; height: 72.9px; } /* лотос ВЭФ */
.bh-ros { position: absolute; left: 32px; top: 51px; width: 458px; height: 90.1px; cursor: pointer; }

/* Переключатель языка RU · EN (обновлённый макет — без 中文, правее) */
.lang {
  position: absolute; left: 927px; top: 176px; z-index: 100;
  display: flex; gap: 14px; align-items: flex-start;
  font-size: 30px; white-space: nowrap;
}
.lang .ru, .lang .en { font-weight: 500; color: rgba(255,255,255,0.55); cursor: pointer; }
.lang .ru.on, .lang .en.on { font-weight: 700; color: #90d9f4; }
.lang .dot { font-weight: 500; color: rgba(255,255,255,0.4); }

/* Время и дата — по макету: справа у заголовка экрана, крупно (Inter), не в шапке.
   Экраны без своего заголовка часов не показывают (класс no-clock на body). */
.clock { position: absolute; right: 32px; top: 248px; z-index: 100;
  display: flex; flex-direction: column; align-items: flex-end; gap: 4px;
  font-family: 'Inter', sans-serif; white-space: nowrap; }
.clock-t { font-weight: 700; font-size: 44px; line-height: 1; color: #fff; }
.clock-d { font-weight: 400; font-size: 20px; line-height: 1; color: rgba(255,255,255,0.65); }
body.no-clock .clock { display: none; }

/* Выпадающий блок: заголовок-строка + раскрываемое тело (профиль, описание сессии) */
.acc { background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.16);
  border-radius: 18px; overflow: hidden; }
.acc-head { position: relative; padding: 22px 72px 22px 32px; cursor: pointer; }
.acc-h { font-family: 'Inter', sans-serif; font-weight: 600; font-size: 20px;
  letter-spacing: 1.5px; color: #90d9f4; }
.acc-sub { margin-top: 8px; font-weight: 400; font-size: 23px; line-height: 1.2;
  color: rgba(255,255,255,0.72); }
/* Стрелка раскрытия — иконка, а не типографский символ: «⌄» в кружке выглядел кустарно.
   Тот же шеврон используется в списках (класс .chev), только повёрнутый вправо. */
.acc-arr { position: absolute; right: 32px; top: 50%; margin-top: -26px;
  width: 52px; height: 52px; border-radius: 50%; font-size: 0;
  background: rgba(255,255,255,0.12); border: 1px solid rgba(255,255,255,0.18);
  display: flex; align-items: center; justify-content: center; transition: transform 0.25s; }
.acc-arr::before, .chev::before { content: ''; width: 26px; height: 26px; display: block;
  background: rgba(255,255,255,0.92);
  -webkit-mask: url('../assets/nd/chevron.svg') center / contain no-repeat;
  mask: url('../assets/nd/chevron.svg') center / contain no-repeat; }
.acc.open .acc-arr { transform: rotate(180deg); }
/* Шеврон-указатель строки списка: тот же значок, повёрнут вправо */
.chev { display: flex; align-items: center; justify-content: center; font-size: 0; }
.chev::before { transform: rotate(-90deg); background: var(--nd-accent); }
/* Свёрнут — тело схлопнуто полностью (padding тоже, иначе выглядывает первая строка);
   раскрыт — до потолка блока, дальше своя прокрутка */
.acc-body { max-height: 0; overflow: hidden; padding-top: 0; padding-bottom: 0;
  transition: max-height 0.3s ease; scrollbar-width: none; -ms-overflow-style: none; }
.acc-body::-webkit-scrollbar { width: 0; height: 0; }
.acc.open .acc-body { max-height: 640px; overflow-y: auto; }

/* Центрированный по X=540 текстовый блок шириной 968 (частый паттерн макета) */
.ctr { position: absolute; left: 56px; width: 968px; text-align: center; }

/* Часы стоят справа у заголовка — заголовки сужаем, иначе бокс лезет под них */
.s5-title { max-width: 700px; }
