/*
 * Раскладка лендингов переноса — одна на все источники. Страницы статичные и
 * друг про друга не знают, поэтому инлайновый блок стилей в каждой разъехался
 * бы молча: правка отступа на одной оставляла бы вторую прежней. Палитры здесь
 * нет вовсе — цвета приезжают токенами из `acquisition.css` (его сверяет с
 * бандлом `legal-palette.test.ts`), а этот файл добавляет только формы и сетку.
 */
body { margin: 0; background: var(--brand-bg); }
.imp-transfer { padding: var(--space-8); border: 1px solid var(--brand-border); border-radius: 20px; background: var(--brand-highlight); scroll-margin-top: 24px; min-width: 0; }
.imp-transfer h2 { font-size: var(--text-xl); line-height: 1.2; letter-spacing: -.6px; margin: var(--space-4) 0; }
.imp-form { display: grid; gap: var(--space-3); margin-top: var(--space-6); }
.imp-form label { font-weight: 600; font-size: var(--text-sm); }
.imp-form input { min-width: 0; width: 100%; min-height: 56px; border: 1px solid var(--brand-border); border-radius: 12px; padding: var(--space-4); background: var(--gm-paper); color: var(--gm-ink); font: inherit; }
.imp-form button { border: 0; cursor: pointer; font-family: inherit; text-align: left; }
.imp-form input:focus-visible, .imp-form button:focus-visible { outline: 3px solid var(--gm-accent); outline-offset: 3px; }
.imp-help { font-size: var(--text-sm); color: var(--gm-muted); }
.imp-transfer .imp-help { margin-top: var(--space-4); }
.imp-actions { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-3) var(--space-6); }
.imp-actions .gm-text-link { margin-top: 0; }
.imp-context { max-width: 760px; margin-top: var(--space-6) !important; color: var(--gm-muted); }
.imp-context + .imp-help { max-width: 760px; margin-top: var(--space-2); }
.imp-included { padding: var(--space-6); border-radius: 16px; background: var(--brand-highlight); }
.imp-included p + p { margin-top: var(--space-3); }
.imp-final-actions { justify-content: center; }
@media (max-width: 760px) { .imp-transfer { padding: var(--space-6) var(--space-4); } .imp-actions .gm-button { width: 100%; } }

/* Лендинг для бизнеса: цель переноса у него одна — подборка, — поэтому выбора на
 * странице нет вовсе, а источников три, и каждый со своей формой. Hero там без
 * колонки с формой (формы стоят своей секцией ниже), иначе вторая колонка сетки
 * осталась бы пустой ровно на половину первого экрана. */
.imp-hero-solo { grid-template-columns: minmax(0, 760px); }
.imp-sources { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-4); margin-top: var(--space-12); }
.imp-sources .imp-transfer h3 { font-size: var(--text-xl); line-height: 1.2; letter-spacing: -.6px; margin: 0 0 var(--space-3); }
.imp-sources .imp-form { margin-top: var(--space-4); }
@media (max-width: 1080px) { .imp-sources { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 860px) { .imp-sources { grid-template-columns: minmax(0, 1fr); } }

.gm-refresh .imp-transfer { background: var(--brand-highlight); }
.gm-refresh .imp-transfer h2 { margin-top: 0; font-size: var(--text-2xl); }
.gm-refresh .imp-transfer .imp-help { margin-top: 0; }
.gm-refresh .imp-transfer > .imp-help { margin-top: var(--space-4); }
.gm-refresh .imp-form { gap: var(--space-3); margin-top: var(--space-6); }
.imp-journey { display: flex; align-items: center; flex-wrap: wrap; gap: var(--space-4); margin-top: var(--space-8); font-size: var(--text-lg); }
.imp-journey > span:first-child, .imp-journey > strong { padding: var(--space-4); border: 1px solid var(--brand-border); border-radius: 12px; }
.imp-journey > strong { background: var(--brand-highlight); }
.imp-switch { margin-top: var(--space-6) !important; padding-top: var(--space-4); border-top: 1px solid var(--brand-border); font-size: var(--text-sm); }
.imp-switch a { display: inline-block; padding-block: var(--space-2); text-decoration: underline; text-underline-offset: 4px; }
.imp-business-transfer { padding-block: 0 64px; }
.imp-business-transfer .gm-section-heading > p { color: var(--gm-muted); margin-top: var(--space-4); }
.gm-refresh .imp-sources { margin-top: var(--space-6); }
@media (max-width: 760px) {
  .gm-refresh .imp-hero { gap: var(--space-6); }
  .imp-journey { display: none; }
  .gm-refresh .imp-transfer h2 { font-size: var(--text-xl); }
  .gm-refresh .imp-transfer { padding: var(--space-6) var(--space-4); }
  .imp-business-transfer { padding-bottom: var(--space-8); }
}

/* These three pages own their layout rather than relying on retired home sections. */
.imp-migration .imp-hero { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: center; gap: 64px; padding-block: var(--space-12) 72px; }
.imp-migration .gm-title-accent { color: var(--gm-ink); }
.imp-migration .imp-moving-visual { margin-top: var(--space-6); }
.imp-migration .imp-moving-visual img { width: min(100%, 520px); height: auto; }
.imp-migration .imp-moving-caption { display: flex; justify-content: center; align-items: center; gap: var(--space-4); margin-top: var(--space-2); color: var(--gm-muted); font-size: var(--text-sm); }
.imp-migration .imp-moving-caption strong { color: var(--gm-ink); font-weight: 650; }
.imp-migration .imp-transfer { position: relative; isolation: isolate; overflow: hidden; padding: var(--space-8); background: var(--gm-peach); border-color: var(--gm-line); }
.imp-migration .imp-transfer > :not(.gm-magic-stars) { position: relative; }
.imp-migration .imp-transfer h2 { margin: 0; font-size: var(--text-2xl); letter-spacing: -.04em; line-height: 1.2; }
.imp-migration .imp-form { gap: var(--space-3); margin-top: var(--space-6); }
.imp-migration .imp-form input { border-color: var(--gm-line); font-size: var(--text-md); }
.imp-migration .imp-form .gm-button { width: 100%; justify-content: space-between; font-size: var(--text-md); }
.imp-migration .imp-transfer .imp-help { line-height: 1.65; }
.imp-migration .imp-transfer .imp-form .imp-help { margin-top: 0; }
.imp-migration .imp-switch { border-color: var(--gm-line); line-height: 1.7; }
.imp-migration .imp-transfer .gm-final-star { opacity: .35; font-size: var(--text-sm); }
.imp-migration .imp-transfer .gm-final-star:nth-child(1) { top: 5%; left: auto; right: 5%; bottom: auto; font-size: var(--text-xl); }
.imp-migration .imp-transfer .gm-final-star:nth-child(2) { top: 25%; left: 1%; }
.imp-migration .imp-transfer .gm-final-star:nth-child(3) { top: 14%; left: auto; right: 2%; }
.imp-migration .imp-transfer .gm-final-star:nth-child(4) { top: auto; bottom: 2%; left: 23%; }
.imp-migration .imp-transfer .gm-final-star:nth-child(5) { bottom: 2%; right: 4%; font-size: var(--text-lg); }
.imp-migration .imp-transfer .gm-final-star:nth-child(6) { top: 42%; right: 1%; }
.imp-migration .imp-transfer .gm-final-star:nth-child(7) { bottom: 17%; right: 1%; }
.imp-migration .imp-transfer .gm-final-star:nth-child(8) { bottom: 3%; left: 3%; }
.imp-migration .imp-transfer .gm-final-star:nth-child(9) { top: 2%; right: 37%; font-size: var(--text-xs); }
.imp-migration .imp-transfer .gm-final-star:nth-child(10) { top: 2%; left: 5%; }
.imp-migration .imp-transfer .gm-final-star:nth-child(11) { top: 65%; left: 1%; }
.imp-migration .imp-transfer .gm-final-star:nth-child(12) { top: 70%; right: 1%; }
.imp-migration .gm-how { padding-block: var(--space-8) 64px; }
.imp-migration .gm-section-heading h2 { margin: 0; font-size: var(--text-display); line-height: 1.15; letter-spacing: -.04em; }
.imp-migration .gm-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-6); padding: 0; margin: var(--space-8) 0 0; list-style: none; }
.imp-migration .gm-steps li { padding: var(--space-6); border: 1px solid var(--gm-line); border-radius: 20px; }
.imp-migration .gm-steps li > span { color: var(--gm-muted); font-size: var(--text-sm); }
.imp-migration .gm-steps h3 { font-size: var(--text-lg); font-weight: 650; line-height: 1.3; margin: var(--space-4) 0 var(--space-3); letter-spacing: -.4px; }
.imp-migration .gm-steps p { color: var(--gm-muted); font-size: var(--text-sm); line-height: 1.65; }
.imp-migration .gm-benefits { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-8); padding-block: var(--space-8); border-block: 1px solid var(--gm-line); }
.imp-migration .gm-benefits article { display: grid; grid-template-columns: 44px minmax(0, 1fr); align-content: start; gap: var(--space-1) var(--space-4); }
.imp-migration .gm-benefit-icon { grid-row: span 2; width: 44px; height: 44px; display: grid; place-items: center; border-radius: 14px; background: var(--gm-peach); font-size: var(--text-xl); }
.imp-migration .gm-benefits h2 { font-size: var(--text-md); font-weight: 650; line-height: 1.3; letter-spacing: -.3px; }
.imp-migration .gm-benefits p { color: var(--gm-muted); font-size: var(--text-sm); line-height: 1.65; }
.imp-migration .gm-final .gm-button { margin-top: var(--space-8); }
.imp-migration .gm-final .gm-signup-note a { display: inline-flex; align-items: center; min-height: 44px; text-decoration: underline; text-underline-offset: 4px; }
.imp-migration .gm-business-banner { display: flex; justify-content: space-between; align-items: center; gap: var(--space-6); padding-block: var(--space-8); }
.imp-migration .gm-business-banner h2 { font-size: var(--text-lg); letter-spacing: -.3px; }
.imp-migration .gm-business-banner p { margin-top: var(--space-2); color: var(--gm-muted); font-size: var(--text-sm); }
.imp-migration .gm-business-banner > a { display: inline-flex; gap: var(--space-3); align-items: center; min-height: 44px; font-size: var(--text-sm); font-weight: 650; white-space: nowrap; }
@media (max-width: 1050px) {
  .imp-migration .imp-hero { gap: var(--space-8); }
  .imp-migration .gm-benefits { gap: var(--space-6); }
  .imp-migration .gm-benefits article { grid-template-columns: minmax(0, 1fr); gap: var(--space-3); }
  .imp-migration .gm-benefit-icon { grid-row: auto; }
}
@media (max-width: 760px) {
  .imp-migration .imp-hero { grid-template-columns: minmax(0, 1fr); gap: var(--space-8); padding-block: var(--space-8) var(--space-12); }
  .imp-migration .imp-moving-visual { max-width: 460px; margin: var(--space-6) auto 0; }
  .imp-migration .imp-transfer { padding: var(--space-6); }
  .imp-migration .imp-transfer h2 { font-size: var(--text-xl); }
  .imp-migration .imp-transfer .gm-final-star:nth-child(n + 9) { display: none; }
  .imp-migration .gm-how { padding-block: 0 var(--space-12); }
  .imp-migration .gm-steps { grid-template-columns: minmax(0, 1fr); gap: var(--space-4); margin-top: var(--space-6); }
  .imp-migration .gm-benefits { grid-template-columns: minmax(0, 1fr); gap: var(--space-6); }
  .imp-migration .gm-benefits article { grid-template-columns: 44px minmax(0, 1fr); gap: var(--space-1) var(--space-4); }
  .imp-migration .gm-benefit-icon { grid-row: span 2; }
  .imp-migration .gm-business-banner { flex-direction: column; align-items: flex-start; gap: var(--space-3); }
}
