/* ============================================================
   CTA — оранжевая КАРТОЧКА с отступом от краёв (кремовый фон вокруг).
   Десктоп: текст слева (паддинг), фото справа вплотную к краям.
   Мобилка: фото сверху, текст и кнопки снизу.
   ============================================================ */
.cta { background: var(--c-bg); padding: var(--pad-inline); }

.cta__card {
  position: relative;
  max-width: var(--container);
  margin-inline: auto;
  display: flex;
  flex-direction: column;                 /* mobile: фото сверху, контент снизу */
  background: var(--c-accent);            /* #f08342 */
  overflow: hidden;
}

.cta__visual img { width: 100%; height: auto; display: block; }

.cta__content {
  display: flex;
  flex-direction: column;
  gap: var(--space-2xl);
  padding: var(--space-xl) var(--pad-inline);
}
.cta__text-block { display: flex; flex-direction: column; gap: var(--space-lg); color: var(--c-white); }
.cta__title {
  font-family: var(--ff-display);
  font-weight: 400;
  font-size: clamp(2.25rem, 1.6rem + 2.5vw, 3.9375rem);   /* 36 → 63 */
  line-height: .9;
  letter-spacing: -0.02em;
}
.cta__text { font-size: var(--fs-base); font-weight: 500; line-height: 1.3; max-width: 670px; }

.cta__actions {
  display: grid;                          /* мобилка: два столбца */
  grid-template-columns: 1fr 1fr;
  gap: var(--space-2xs);
}
.cta__btn {
  grid-column: 1 / -1;                    /* мобилка: во всю ширину сверху */
  display: inline-flex; align-items: center; justify-content: center;
  height: 64px; padding-inline: 30px;
  background: var(--c-white); color: var(--c-primary);
  font-size: var(--fs-lg); font-weight: 500;
  transition: opacity .2s ease;
}
.cta__btn:hover { opacity: .9; }
.cta__icon-btn {
  display: grid; place-items: center;
  width: 100%; height: 64px;             /* мобилка: половина ширины, ряд ниже */
  background: var(--c-white); color: var(--c-primary);
  transition: opacity .2s ease;
}
.cta__icon-btn:hover { opacity: .9; }
.cta__icon-btn svg { width: 24px; height: 24px; }

@media (min-width: 1024px) {
  .cta__actions { display: flex; flex-wrap: wrap; }
  .cta__btn { grid-column: auto; width: auto; height: 60px; }
  .cta__icon-btn { width: 60px; height: 60px; }   /* совпадает по высоте с кнопкой */
}

/* Десктоп: сетка — текст слева, фото справа вплотную к краям карточки */
@media (min-width: 1024px) {
  .cta__card {
    display: grid;
    grid-template-columns: 1fr clamp(360px, 38%, 526px);
    align-items: stretch;
    min-height: 520px;
  }
  .cta__content {
    grid-column: 1; grid-row: 1;
    justify-content: space-between;        /* заголовок+текст сверху, кнопки снизу */
    gap: var(--space-lg);
    padding: var(--space-xl);
  }
  .cta__visual { grid-column: 2; grid-row: 1; }
  .cta__visual img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
}
