/* ============================================================
   bufet — акцентная CTA-полоса с контактами.
   Перенос из docs/02/design_2/assets/home-c.css (строки 327–340).
   Инлайновые стили кнопок из разметки макета (белая главная кнопка,
   светлая обводка у второй) перенесены сюда — в теме инлайнов не держим.
   ============================================================ */
.ctaband { padding-block: clamp(80px, 10vw, 150px); background: var(--accent); color: #fff; position: relative; overflow: hidden; }
.ctaband__ring { position: absolute; right: -6%; top: 50%; transform: translateY(-50%); width: 44vw; max-width: 640px; aspect-ratio: 1; border-radius: 50%; background: radial-gradient(circle at 40% 35%, rgba(255,255,255,.22), transparent 60%); pointer-events: none; }
.ctaband__in { position: relative; z-index: 1; max-width: 760px; }
/* Две колонки: слева приглашение и контакты, справа форма. Раскладка —
   из варианта A того же раунда макетов (design_2/assets/home.css, .cta__grid).
   Ниже 1025px колонки складываются в одну, как и весь остальной сайт. */
@media (min-width: 1025px) {
  .ctaband__in { max-width: var(--maxw); display: grid; grid-template-columns: 1.05fr .95fr; gap: clamp(40px, 5vw, 88px); align-items: start; }
  .ctaband__text { max-width: 620px; }
}
.ctaband__form { margin-top: 44px; }
@media (min-width: 1025px) { .ctaband__form { margin-top: 0; } }
/* Кнопка раскрытия формы нужна только на телефоне; открывает и закрывает <details> form.js. */
.ctaband__more-sum { display: none; cursor: pointer; list-style: none; }
.ctaband__more-sum::-webkit-details-marker { display: none; }
.ctaband__more-sum::marker { content: ""; }
@media (max-width: 767px) {
  .ctaband__more-sum { display: inline-flex; width: 100%; justify-content: center; margin-top: 14px; }
  .ctaband__more-sum svg { transition: transform var(--dur-fast) var(--ease); }
  .ctaband__more[open] .ctaband__more-sum svg { transform: rotate(180deg); }
}
.ctaband__eyebrow { color: rgba(255,255,255,.78); }
.ctaband__eyebrow::before { background: rgba(255,255,255,.78); }
.ctaband__t { font-family: var(--font-display); font-weight: 800; font-size: var(--fs-h2); line-height: var(--lh-snug); letter-spacing: var(--ls-display); margin: 20px 0 24px; }
.ctaband__t .accent { color: #fff; text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 6px; }
.ctaband__p { color: rgba(255,255,255,.86); font-size: var(--fs-lead); max-width: 44ch; margin: 0 0 40px; }
.ctaband__row { display: flex; align-items: center; gap: 24px; flex-wrap: wrap; }
.ctaband__row .cta-main, .ctaband__row .btn { min-height: 76px; padding-top: 0; padding-bottom: 0; }

/* на акцентном фоне цвета кнопок инвертируются */
.ctaband .cta-main { background: #fff; color: var(--accent-deep); box-shadow: 0 18px 44px rgba(0,0,0,.22); }
.ctaband .cta-main:hover { box-shadow: 0 26px 60px rgba(0,0,0,.28); }
.ctaband .cta-main__arrow { background: var(--accent); color: #fff; }
.ctaband .btn--ghost { color: #fff; box-shadow: inset 0 0 0 1.5px rgba(255,255,255,.5); }
.ctaband .btn--ghost:hover { box-shadow: inset 0 0 0 1.5px #fff; }

.ctaband__contacts { display: flex; gap: 32px; flex-wrap: wrap; margin-top: 44px; padding-top: 28px; border-top: 1px solid rgba(255,255,255,.24); }
.ctaband__contacts a, .ctaband__contacts span { font-family: var(--font-display); font-weight: 600; color: rgba(255,255,255,.9); font-size: .96rem; }
.ctaband__contacts a { transition: color var(--dur) var(--ease); }
.ctaband__contacts a:hover { color: #fff; }
