/* 04a — Ads and Contact strip. Переписан с нуля.
   Структура из макета (1600): ряд контактов 33 → 12 → линия 2px/24% →
   40 → лента 72 → 40 → линия → 12 → нижний ряд 33. Итого 246.
   Фон общий (у слайда в фигме своего фона нет). Лента едет из scene.js. */

.ads {
  background: transparent;
  padding: 0 24px;                /* поля страницы */
  display: flex;
  flex-direction: column;
  gap: 12px;
  overflow: hidden;               /* ничего не вылезает за секцию */
}

/* --- ряды контактов --- */
.ads-contacts {
  display: flex;
  justify-content: space-between;
  align-items: center;
  min-height: 33px;
}

.ads-chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px;
  border-radius: 8px;
  font-family: "Inter", sans-serif;
  font-size: 14px;
  font-weight: 500;
  font-style: italic;
  line-height: normal;
  text-transform: uppercase;
  text-decoration: none;
  color: #eaeaea;
  white-space: nowrap;
  background: transparent;
  transition: background-color .18s ease;
}
.ads-chip:hover { background: rgba(164, 164, 164, 0.28); }  /* вариант из макета */
.ads-chip:focus-visible { outline: 2px solid #8B5CF6; outline-offset: 2px; }
.ads-chip--action { text-decoration: underline; }

.ads-only-tablet { display: none; }

/* --- лента --- */
.ads-band {
  display: flex;
  flex-direction: column;
  gap: 40px;
  margin: 0 -24px;                /* линии и лента — во всю ширину */
}

.ads-rule {
  height: 2px;
  background: #eaeaea;
  opacity: 0.24;
}

.ads-viewport { overflow: hidden; }

.ads-belt {
  display: flex;
  align-items: center;
  gap: 32px;                      /* шаг между словами из макета */
  width: max-content;
  font-family: "Iwona Cond Medium Italic", "Iwona Bold", serif;
  font-weight: 500;
  font-style: italic;
  font-size: 72px;
  line-height: 72px;
  text-transform: uppercase;
  color: #eaeaea;
  white-space: nowrap;
  will-change: transform;
  backface-visibility: hidden;
}
.ads-belt > span { display: block; }

/* --- 1200 / 1024 / 768 --- */
@media (max-width: 1200px) {
  .ads { padding: 0 16px; }
  .ads-band { margin: 0 -16px; }
  .ads-only-desktop { display: none; }
  .ads-only-tablet { display: inline-flex; }
}

/* --- 430 / 375 / 320 --- */
@media (max-width: 430px) {
  .ads { padding: 0 12px; }
  .ads-band { margin: 0 -12px; gap: 24px; }
  .ads-belt { font-size: 44px; line-height: 44px; gap: 20px; }
  .ads-only-tablet { display: none; }
  .ads-chip { font-size: 12px; padding: 6px; }
}
