/* Собственные стили: промо-блок, адаптивные переключатели, имитация живых элементов.
   Базовые стили — в musor.css (генерируется, руками не править). */

:root {
  --promo-color: #a060fe;
}

/* --- Плашка-уведомление (партиал src/templates/partials/disclaimer.html), сейчас не подключена. --- */
.site-notice {
  background: #17131d;
  border-bottom: 1px solid rgba(160, 96, 254, 0.35);
  color: #d9d2e6;
  font-family: "SF Pro Rounded", system-ui, -apple-system, sans-serif;
  font-size: 13px;
  line-height: 1.3;
  padding: 8px 16px;
  text-align: center;
}
.site-notice__text { margin: 0; }
.site-notice strong { color: #c8a6ff; font-weight: 700; }

/* --- Блоки, которые оригинал рендерит только на одной ширине (JS-брейкпоинт 768px) --- */
@media screen and (max-width: 48rem) {
  [data-only="desktop"] { display: none !important; }
}
@media screen and (min-width: 48.0625rem) {
  [data-only="mobile"] { display: none !important; }
}

/* --- Лента дропов: статичный ряд (два одинаковых трека заполняют ширину на больших экранах) --- */
.ticker-track {
  display: flex;
  align-items: center;
  gap: var(--gaydev-spacing-1);
  flex-shrink: 0;
}
.ticker-img { display: inline-block; width: 92px; height: 69px; object-fit: contain; }
@media screen and (max-width: 48rem) {
  .ticker-img { width: 72px; height: 54px; }
  .css-1otgfav { display: none; }
}

/* --- Hero: надпись-кикер как в оригинале (SVG-текст с тем же фильтром: внутренняя тень + шум + свечение) --- */
.hero-kicker {
  display: block;
  height: 64px;
  width: 470px;      /* = viewBox, иначе flex-колонка сожмёт SVG и текст уменьшится */
  max-width: none;
  align-self: flex-start;
  flex-shrink: 0;
  overflow: visible;
  filter: drop-shadow(rgba(255, 255, 255, 0.6) 0px 0px 100px);
}
.hero-kicker text {
  font-family: "Santa Maria Sans", "SF Pro Rounded", sans-serif;
  font-weight: 900;
  font-size: 64px;
  letter-spacing: 0;
}
@media screen and (max-width: 48rem) {
  .hero-kicker { height: 40px; width: 294px; }
}

/* --- Карточки кейсов: картинка без обрезки, цены на одной высоте --- */
.css-z7jjfv { object-fit: contain; width: 100%; }
.css-1b9ejki { justify-content: flex-start; }
.css-17deg6c {
  min-height: 3.75rem; /* две строки названия, чтобы картинки и цены начинались на одной высоте */
  display: flex;
  align-items: flex-end;
  justify-content: center;
}
.css-1b9ejki > div:last-child { margin-top: auto; }

/* --- Футер: три строки вместо реквизитов --- */
.footer-legal { display: flex; flex-direction: column; gap: 4px; }
.footer-promo { color: #c8a6ff; font-weight: 600; }

/* --- Страница «Проверка честности»: аккордеон, табы, тумблер --- */
.faq-toggle {
  width: 100%;
  background: none;
  border: 0;
  padding: 0;
  cursor: pointer;
  text-align: left;
  color: inherit;
  font: inherit;
}
.css-7659ri { transition: transform 0.2s ease; }
.faq-item.is-open .css-7659ri { transform: rotate(180deg); }
.faq-answer { padding: 12px 0 4px; }
.faq-answer[hidden] { display: none; }
.css-11uz7w8.is-on .css-147c5gg { transform: translateX(20px); background: var(--promo-color); }
.css-147c5gg { transition: transform 0.2s ease, background 0.2s ease; }

/* --- Юридические страницы: заголовки разделов вместо сплошного pre-wrap текста --- */
.legal-body { white-space: normal; display: flex; flex-direction: column; gap: 12px; }
.legal-body h2 { font-weight: 700; margin-top: 12px; color: var(--gaydev-colors-white); }
.legal-body p { margin: 0; }
.legal-body .legal-updated { color: var(--gaydev-colors-text-tretiary); }
