/* «Блок-переход» (block_transition) — tshop_3.
 *   default    (.t3-cta--strip) полоса: фото и подпись · текст · кнопка
 *   one_column (.t3-cta--panel) панель: заголовок, текст, кнопка + изображение
 * Ручки на корне блока: --cta-bg, --cta-text, --cta-radius, --cta-media (размер круглого фото полосы). */
@layer modules {
  /* контейнер — обёртка ширины: @container опрашивает предка полосы/панели */
  .t3-cta > .wrap { container-type: inline-size; }
  .t3-cta { --cta-bg: var(--brand-soft); --cta-text: var(--text); --cta-radius: var(--radius-l); --cta-media: 64px; }
  [data-style="editorial"] .t3-cta { --cta-radius: 0px; }
  .t3-cta__text { color: color-mix(in srgb, var(--cta-text) 78%, transparent); }
  .t3-cta__text > * { margin: 0; }
  .t3-cta__text > * + * { margin-top: .5em; }
  .t3-cta__btn { gap: var(--s-2); }

  /* ── полоса ── */
  .t3-cta__strip {
    display: grid; gap: var(--s-4); align-items: center;
    padding: clamp(20px, 3vw, 36px); border-radius: var(--cta-radius); background: var(--cta-bg); color: var(--cta-text);
  }
  [data-style="editorial"] .t3-cta__strip { border: var(--line-w) solid var(--line); }
  .t3-cta__strip + .t3-cta__strip { margin-top: var(--s-3); }
  .t3-cta__who { display: flex; align-items: center; gap: var(--s-4); }
  .t3-cta__avatar { flex: none; width: var(--cta-media); height: var(--cta-media); border-radius: 50%; overflow: hidden; background: var(--surface); }
  .t3-cta__avatar img { width: 100%; height: 100%; object-fit: cover; }
  .t3-cta__avatar--icon { display: grid; place-items: center; color: var(--brand-text); }
  .t3-cta__name { font-size: var(--fs-xl); color: inherit; text-wrap: balance; }
  .t3-cta__strip .t3-cta__btn { width: 100%; }
  @container (min-width: 760px) {
    .t3-cta__strip { grid-template-columns: minmax(220px, auto) minmax(0, 1fr) auto; gap: var(--s-6); }
    .t3-cta__strip .t3-cta__btn { width: auto; }
  }

  /* ── панель ── */
  .t3-cta__panel {
    display: grid; overflow: hidden;
    border-radius: var(--cta-radius); background: var(--cta-bg); color: var(--cta-text);
  }
  [data-style="editorial"] .t3-cta__panel { border: var(--line-w) solid var(--line); }
  .t3-cta__panel + .t3-cta__panel { margin-top: var(--s-4); }
  .t3-cta__content { display: grid; justify-items: start; align-content: center; gap: var(--s-4); padding: clamp(24px, 5vw, 64px); }
  .t3-cta__title { font-size: var(--title-size, var(--fs-2xl)); color: var(--title-color, inherit); text-wrap: balance; max-width: 18ch; }
  .t3-cta__panel .t3-cta__text { font-size: var(--fs-l); max-width: 56ch; }
  .t3-cta__media { margin: 0; order: -1; aspect-ratio: 16 / 10; }
  .t3-cta__media img { width: 100%; height: 100%; object-fit: cover; }
  @container (min-width: 760px) {
    .t3-cta__panel.has-image { grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); }
    .t3-cta__media { order: 0; aspect-ratio: auto; min-height: 100%; }
  }
}
