/*
 * Лендинг — макет 3б «Сводный, светлый» (docs/design/pencil/s22-directions.pen),
 * правила — design-system.md §3.6 и §3.9. Токены — ../tokens.css, компоненты — ../components.css.
 * Раскладка: < 1024 — мобильные паттерны (768–1023 — по центру до 720), ≥ 1024 — desktop.
 * Числа без токена (64, 28, 18, 17…) взяты из макета: в .pen они тоже стоят числами.
 */

/* Onest 400/600, OFL — fonts/OFL.txt (@fontsource/onest 5.3.1) */
@font-face {
  font-family: "Onest";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/onest-cyrillic-400-normal.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: "Onest";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("fonts/onest-cyrillic-600-normal.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: "Onest";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/onest-latin-ext-400-normal.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: "Onest";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("fonts/onest-latin-ext-600-normal.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: "Onest";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/onest-latin-400-normal.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "Onest";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("fonts/onest-latin-600-normal.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ---------- Основа ---------- */

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  -webkit-text-size-adjust: 100%;
  scroll-behavior: smooth;
}

body.landing {
  margin: 0;
  background: var(--color-page);
  color: var(--color-text);
  font-family: var(--font-sans);
  font-size: var(--type-body);
  font-weight: var(--font-weight-regular);
  line-height: var(--line-height-normal);
}

.landing :where(h1, h2, h3, p, ul, ol, dl, dd, figure) {
  margin: 0;
  padding: 0;
}

.landing :where(ul, ol) {
  list-style: none;
}

.landing b {
  font-weight: var(--font-weight-semibold);
}

.l-container {
  width: min(720px, 100% - 2 * var(--gutter-mobile));
  margin-inline: auto;
}

.btn--hero {
  min-height: 56px;
  padding-inline: 28px;
  font-size: 17px;
}

.section-title {
  font-size: var(--type-display-mobile);
  font-weight: var(--font-weight-semibold);
  line-height: 1.1;
  letter-spacing: -0.8px;
  text-align: center;
}

/* ---------- Шапка ---------- */

.l-header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 56px;
}

.l-brand {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--color-text);
  text-decoration: none;
  font-size: var(--type-brand);
  font-weight: var(--font-weight-semibold);
  line-height: var(--line-height-tight);
  letter-spacing: -0.01em;
}

.l-brand__mark {
  width: 1.4em;
  height: 1.4em;
  color: var(--color-action);
  flex: none;
}

.l-brand b {
  font-weight: inherit;
  color: var(--color-action);
}

.l-anchors {
  display: none;
  gap: var(--space-16);
}

.l-anchor {
  display: inline-flex;
  align-items: center;
  min-height: var(--size-control);
  padding: 0 var(--space-8);
  border-radius: var(--radius-md);
  color: var(--color-text-secondary);
  font-weight: var(--font-weight-semibold);
  line-height: var(--line-height-tight);
  text-decoration: none;
}

.l-anchor:hover {
  color: var(--color-text);
}

/* ---------- Первый экран и пример сравнения ---------- */

.hero {
  padding-inline: var(--gutter-mobile);
}

.hero__plane {
  display: flex;
  flex-direction: column;
  gap: 28px;
  max-width: 720px;
  margin-inline: auto;
  padding: var(--space-32) var(--space-8) var(--space-24);
  border-radius: var(--landing-radius-xl);
  background: linear-gradient(180deg, var(--indigo-100), var(--landing-sand-soft));
  overflow: clip;
}

.hero__text {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-16);
  text-align: center;
}

.hero__title {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-4);
  font-size: var(--landing-display-mobile);
  font-weight: var(--font-weight-semibold);
  line-height: 1.1;
  letter-spacing: -0.8px;
}

.hero__marker {
  max-width: 100%;
  padding: 0 6px;
  border-radius: 12px;
  background: var(--landing-sand-strong);
}

.hero__lead {
  color: var(--color-text-secondary);
  font-size: 17px;
  line-height: 1.45;
}

/* На телефоне главная кнопка — только в закреплённой панели (§3.1.1) */
.hero__action {
  display: none;
}

.hero__limits {
  color: var(--color-text-secondary);
  font-size: var(--type-small);
}

.hero__scene {
  display: flex;
  flex-direction: column;
  gap: var(--space-8);
}

.sticker {
  display: flex;
  flex-direction: column;
  gap: var(--space-8);
  padding: 14px;
  border: var(--border-width) solid var(--color-border);
  border-radius: 16px;
  background: var(--color-surface);
  box-shadow: 0 8px 24px #1E202814;
  font-size: var(--type-caption);
  transform-origin: top left;
}

.sticker--task {
  position: relative;
  z-index: 1;
  width: min(270px, 100%);
  transform: rotate(-3deg);
}

.sticker--replied {
  display: none;
}

.sticker__title {
  display: flex;
  align-items: center;
  gap: var(--space-8);
  font-weight: var(--font-weight-semibold);
}

.sticker__title .icon {
  width: 16px;
  height: 16px;
  color: var(--color-text-secondary);
}

.sticker__row,
.sticker__reply {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-8);
}

.poster {
  border-radius: 20px;
  box-shadow: 0 16px 40px #0B0D1F33;
  overflow: hidden;
}

.poster__head {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-8);
  padding: var(--space-16);
}

.poster__items {
  font-size: var(--type-small);
  font-weight: var(--font-weight-semibold);
}

.poster__rule {
  color: var(--color-text-secondary);
  font-size: var(--type-caption);
}

.poster__table {
  display: none;
}

.poster__card {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  padding: var(--space-12) var(--space-16);
  border-top: var(--border-width) solid var(--color-border);
}

.poster__supplier {
  font-size: var(--type-heading);
  font-weight: var(--font-weight-semibold);
}

.poster__positions {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}

.poster__position {
  display: flex;
  justify-content: space-between;
  gap: var(--space-8);
  font-size: var(--type-small);
}

.poster__position dt {
  min-width: 0;
  color: var(--color-text-secondary);
}

.poster__position dd {
  font-weight: var(--font-weight-semibold);
  text-align: right;
  white-space: nowrap;
}

.poster .poster__empty {
  color: var(--color-text-secondary);
  font-weight: var(--font-weight-regular);
}

.poster__note {
  padding: var(--space-12) var(--space-16);
  border-top: var(--border-width) solid var(--color-border);
  color: var(--color-text-secondary);
  font-size: var(--type-caption);
}

/* ---------- Как это работает и доверие ---------- */

.how {
  padding-block: var(--space-48);
}

.how .section-title {
  margin-bottom: var(--space-40);
}

.steps,
.trust,
.tariffs__grid {
  grid-template-columns: minmax(0, 1fr);
}

.steps {
  display: grid;
  gap: var(--space-16);
}

.step {
  display: flex;
  flex-direction: column;
  gap: var(--space-20);
  padding: var(--space-16);
  border-radius: 28px;
}

.step--describe {
  background: var(--indigo-100);
}

.step--send {
  background: var(--landing-sand);
}

.step--compare {
  border: var(--border-width) solid var(--color-border);
  background: var(--color-surface);
}

.step__num {
  color: var(--indigo-500);
  font-size: 48px;
  font-weight: var(--font-weight-semibold);
  line-height: 1;
  letter-spacing: -2px;
}

.step__text {
  display: flex;
  flex-direction: column;
  gap: var(--space-8);
}

.step__title {
  font-size: var(--type-title);
  font-weight: var(--font-weight-semibold);
  line-height: 1.2;
  letter-spacing: -0.3px;
}

.step__desc {
  color: var(--color-text-secondary);
  font-size: var(--type-heading);
}

.step__art {
  display: flex;
  flex-direction: column;
  gap: var(--space-12);
  min-height: 200px;
  padding: var(--space-16);
  border: var(--border-width) solid var(--color-border);
  border-radius: 18px;
  background: var(--color-surface);
  box-shadow: 0 12px 32px #1E202814;
  font-size: var(--type-small);
}

.step__art-caption {
  color: var(--color-text-secondary);
  font-size: var(--type-caption);
  font-weight: var(--font-weight-semibold);
}

.step__art-row {
  display: flex;
  justify-content: space-between;
  gap: var(--space-12);
  padding: var(--space-8) 0;
  border-top: var(--border-width) solid var(--color-border);
}

.step__art-chips {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-8);
}

.step__art-recipient {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-4) var(--space-12);
}

/* На самых узких экранах плашка уходит на следующую строку, а не наезжает на имя */
.step__art-recipient b {
  flex: 1 1 0;
  min-width: min-content;
}

.step__art-recipient .status-badge {
  margin-left: auto;
}

.step__art-grid {
  display: grid;
  grid-template-columns: minmax(0, 110px) minmax(0, 1fr) minmax(0, 1fr);
  gap: var(--space-12);
  padding: var(--space-8) 0;
  border-top: var(--border-width) solid var(--color-border);
}

.step__art-grid--head {
  padding: 0;
  border-top: 0;
  color: var(--color-text-secondary);
  font-size: var(--type-caption);
  font-weight: var(--font-weight-semibold);
}

.step__art-empty {
  color: var(--color-text-secondary);
}

.promise {
  display: flex;
  flex-direction: column;
  gap: var(--space-20);
  margin-top: var(--space-16);
  padding: var(--space-32) var(--space-24);
  border-radius: 28px;
  background:
    radial-gradient(60% 120% at 100% 0%, var(--landing-glow), #4A55A200),
    var(--landing-ink);
  color: var(--landing-on-ink);
  font-size: var(--type-display-mobile);
  font-weight: var(--font-weight-semibold);
  line-height: 1.15;
  letter-spacing: -0.6px;
}

.promise__lock {
  display: flex;
  flex: none;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  border: var(--border-width) solid #FFFFFF33;
  border-radius: var(--radius-full);
  background: #FFFFFF1F;
}

.trust {
  display: grid;
  gap: var(--space-16);
  margin-top: var(--space-16);
}

.trust__item {
  display: flex;
  align-items: center;
  gap: var(--space-16);
  padding: var(--space-20);
  border: var(--border-width) solid var(--color-border);
  border-radius: 28px;
  background: var(--color-surface);
  font-size: var(--type-brand);
  font-weight: var(--font-weight-semibold);
  line-height: 1.35;
}

.trust__circle {
  display: flex;
  flex: none;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: var(--radius-full);
}

.trust__item--source .trust__circle {
  background: var(--indigo-100);
}

.trust__item--choice .trust__circle {
  background: var(--landing-sand);
}

.trust__item--history .trust__circle {
  background: var(--color-surface-subtle);
}

/* ---------- Форма на индиго-плоскости (§3.9.3) ---------- */

.request {
  padding-inline: var(--gutter-mobile);
}

.request__plane {
  display: flex;
  flex-direction: column;
  gap: var(--space-32);
  max-width: 720px;
  margin-inline: auto;
  padding: var(--space-32) var(--space-20);
  border-radius: var(--landing-radius-xl);
  background:
    radial-gradient(55% 80% at 5% 10%, #6570B680, #6570B600),
    var(--indigo-800);
}

.request__intro {
  display: flex;
  flex-direction: column;
  gap: var(--space-20);
}

.request__title {
  color: var(--neutral-0);
  font-size: var(--type-display-mobile);
  font-weight: var(--font-weight-semibold);
  line-height: 1.1;
  letter-spacing: -0.8px;
}

.request__pills {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-8);
}

.request__pills li {
  padding: var(--space-8) var(--space-12);
  border: var(--border-width) solid #FFFFFF33;
  border-radius: var(--radius-full);
  background: #FFFFFF1A;
  color: var(--neutral-0);
  font-size: var(--type-small);
  font-weight: var(--font-weight-semibold);
}

.request-form {
  display: flex;
  flex-direction: column;
  gap: var(--space-20);
  min-width: 0;
  padding: var(--space-20);
  border: 0;
  border-radius: var(--landing-radius-xl);
  box-shadow: var(--landing-shadow-hero);
}

.request-form__fields {
  display: flex;
  flex-direction: column;
  gap: var(--space-16);
}

.field--lg .field__input {
  min-height: var(--size-control-lg);
}

.request-form__tariff {
  display: flex;
  align-items: center;
  gap: var(--space-12);
  min-height: var(--size-control);
  padding: 0 var(--space-16);
  border-radius: var(--radius-md);
  background: var(--color-surface-subtle);
}

.request-form__tariff-name {
  flex: 1;
  font-weight: var(--font-weight-semibold);
}

.request-form__tariff-remove {
  display: inline-flex;
  align-items: center;
  min-height: var(--size-control);
}

.request-form__submit {
  width: 100%;
}

/* Ловушка для ботов: вне экрана, не display:none — его простые боты пропускают. */
.request-form__trap {
  position: absolute;
  left: -10000px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

/* Подтверждение на месте карточки формы (макет «Заявка принята», не общий Notice). */
.request-accepted {
  padding: var(--space-20);
  border-radius: var(--landing-radius-xl);
  gap: var(--space-16);
}

.request-accepted .notice__title {
  font-size: var(--type-heading);
}

.request-accepted__contact {
  font-size: var(--type-body);
  overflow-wrap: anywhere;
}

/* ---------- Тарифы (§3.9.2) ---------- */

.tariffs {
  padding-block: var(--space-48);
}

.tariffs .section-title {
  margin-bottom: var(--space-24);
}

.tariffs__grid {
  display: grid;
  gap: var(--space-16);
}

.tariff {
  display: flex;
  flex-direction: column;
  border: var(--border-width) solid var(--color-border);
  border-radius: var(--landing-radius-xl);
  background: var(--color-surface);
  overflow: hidden;
}

.tariff__head {
  display: flex;
  flex-direction: column;
  gap: var(--space-12);
  padding: var(--space-32);
  background: var(--color-surface-subtle);
}

.tariff__name {
  font-size: var(--type-title);
  font-weight: var(--font-weight-semibold);
  line-height: var(--line-height-tight);
}

.tariff__price {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 0 var(--space-8);
}

.tariff__sum {
  font-size: 40px;
  font-weight: var(--font-weight-semibold);
  line-height: 1;
  letter-spacing: -1px;
  white-space: nowrap;
}

.tariff__term {
  color: var(--color-text-secondary);
  font-size: var(--type-heading);
}

.tariff__body {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: var(--space-24);
  padding: var(--space-8) var(--space-32) var(--space-32);
}

.tariff__limit {
  display: flex;
  justify-content: space-between;
  gap: var(--space-12);
  padding: var(--space-12) 0;
  font-size: var(--type-small);
}

.tariff__limit + .tariff__limit {
  border-top: var(--border-width) solid var(--color-border);
}

.tariff__limit dt {
  color: var(--color-text-secondary);
}

.tariff__limit dd {
  font-weight: var(--font-weight-semibold);
  white-space: nowrap;
}

.tariff__note {
  color: var(--color-text-secondary);
  font-size: var(--type-small);
}

.tariff__choose {
  width: 100%;
  margin-top: auto;
}

/* ---------- Подвал ---------- */

.l-footer {
  padding: var(--space-32) 0 calc(122px + var(--space-24));
  border-top: var(--border-width) solid var(--color-border);
}

.l-footer .l-brand {
  line-height: var(--line-height-normal);
}

/* ---------- Закреплённая панель на телефоне (§3.6, §3.9.6–7) ---------- */

.sticky-cta {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 10;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-8);
  padding: var(--space-12) var(--gutter-mobile) max(var(--space-32), env(safe-area-inset-bottom));
  border-top: var(--border-width) solid var(--color-border);
  background: var(--color-surface);
  box-shadow: var(--shadow-sticky);
  transition: transform 0.2s ease, visibility 0.2s;
}

.sticky-cta.is-hidden {
  visibility: hidden;
  transform: translateY(100%);
}

.sticky-cta__button {
  width: 100%;
  max-width: 688px;
  padding-inline: var(--space-12);
}

.sticky-cta__limits {
  color: var(--color-text-secondary);
  font-size: var(--type-caption);
  text-align: center;
}

/* ---------- Desktop ≥ 1024 ---------- */

@media (min-width: 1024px) {
  .l-container {
    width: min(var(--container-width), 100% - 2 * var(--space-32));
  }

  .section-title {
    font-size: var(--landing-title);
  }

  .l-header__inner {
    min-height: 80px;
  }

  .l-anchors {
    display: flex;
  }

  .hero,
  .request {
    padding-inline: var(--space-24);
  }

  .hero__plane {
    --plane-pad: max(var(--space-32), calc((100vw - 48px - var(--container-width)) / 2));
    gap: 56px;
    max-width: none;
    padding: 88px max(var(--space-32), calc((100% - var(--container-width)) / 2)) 72px;
    border-radius: var(--landing-radius-2xl);
    background:
      radial-gradient(45% 45% at 90% 10%, #FFFFFFB3, #FFFFFF00),
      linear-gradient(180deg, var(--indigo-100), var(--landing-sand-soft));
  }

  .hero__text {
    gap: var(--space-24);
  }

  .hero__title {
    gap: 6px;
    font-size: var(--landing-display);
    line-height: 1.08;
    letter-spacing: -1.5px;
  }

  .hero__marker {
    padding: 0 18px;
    border-radius: 18px;
  }

  .hero__lead {
    max-width: 640px;
    font-size: var(--landing-lead);
  }

  .hero__action {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--space-12);
    padding-top: var(--space-16);
  }

  .hero__scene {
    position: relative;
    display: block;
    padding: var(--space-24) 0 56px;
  }

  .poster {
    position: relative;
    width: min(820px, 100%);
    margin-inline: auto;
    border-radius: var(--landing-radius-xl);
    box-shadow: 0 24px 64px #1E20281F;
  }

  .sticker {
    position: absolute;
    z-index: 1;
    gap: var(--space-12);
    padding: var(--space-20);
    border-radius: 20px;
    box-shadow: 0 16px 48px #1E202814;
    font-size: var(--type-small);
  }

  .sticker__title .icon {
    width: 18px;
    height: 18px;
  }

  /* Наклейки — от центра постера (820 в сцене 1120); у края плоскости не вылезают за неё */
  .sticker--task {
    top: 320px;
    left: max(calc(50% - 688px), calc(var(--space-16) - var(--plane-pad)));
    width: 290px;
    transform: rotate(-4deg);
  }

  .sticker--task .sticker__row {
    padding-top: var(--space-8);
    border-top: var(--border-width) solid var(--color-border);
  }

  .sticker--replied {
    top: 150px;
    left: min(calc(50% + 390px), calc(100% - 240px + var(--plane-pad) - var(--space-16)));
    display: flex;
    width: 240px;
    transform: rotate(3deg);
  }

  .sticker__reply {
    min-height: 26px;
  }

  .poster__head {
    padding: var(--space-24) 28px var(--space-20);
  }

  .poster__items {
    font-size: var(--type-body);
  }

  .poster__rule {
    font-size: var(--type-small);
  }

  .poster__cards {
    display: none;
  }

  .poster__table {
    display: table;
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
    font-size: 17px;
  }

  .poster__table th,
  .poster__table td {
    padding: 18px var(--space-12);
    text-align: left;
    vertical-align: middle;
  }

  .poster__table :is(th, td):first-child {
    width: calc(220px + 28px + var(--space-12));
    padding-left: 28px;
  }

  .poster__table :is(th, td):last-child {
    padding-right: 28px;
  }

  .poster__table thead th {
    padding-block: var(--space-12);
    border-block: var(--border-width) solid var(--color-border);
    background: var(--color-surface-subtle);
    color: var(--color-text-secondary);
    font-size: var(--type-caption);
    font-weight: var(--font-weight-semibold);
  }

  .poster__table tbody tr + tr {
    border-top: var(--border-width) solid var(--color-border);
  }

  .poster__table tbody th,
  .poster__price {
    font-weight: var(--font-weight-semibold);
  }

  .poster__price,
  .poster__term {
    display: block;
  }

  .poster__term {
    margin-top: var(--space-2);
    color: var(--color-text-secondary);
    font-size: var(--type-small);
  }

  .poster__note {
    padding: var(--space-12) 28px;
    background: var(--color-surface-subtle);
  }

  .how {
    padding-block: var(--landing-section);
  }

  .how .section-title {
    margin-bottom: 56px;
  }

  .steps,
  .trust,
  .tariffs__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .step {
    gap: var(--space-24);
    padding: var(--space-32);
  }

  .step__num {
    font-size: 64px;
  }

  .step__title {
    font-size: 24px;
  }

  .step__art {
    padding: var(--space-20);
  }

  /* Как в макете: строки иллюстраций в одну строку, плашка может зайти в поле карточки */
  .step__art-recipient b,
  .step__art-grid > * {
    white-space: nowrap;
  }

  .promise {
    flex-direction: row;
    align-items: center;
    gap: 28px;
    padding: var(--space-48) 56px;
    font-size: 36px;
  }

  .promise__lock {
    width: 72px;
    height: 72px;
  }

  .trust {
    align-items: start;
  }

  .trust__item {
    flex-direction: column;
    align-items: flex-start;
    gap: 28px;
    padding: var(--space-32);
    font-size: var(--landing-lead);
  }

  .trust__circle {
    width: 52px;
    height: 52px;
  }

  .request__plane {
    flex-direction: row;
    align-items: center;
    gap: 80px;
    max-width: none;
    padding: 96px max(var(--space-32), calc((100% - var(--container-width)) / 2));
    border-radius: var(--landing-radius-2xl);
  }

  .request__intro {
    flex: 1;
    gap: 36px;
    min-width: 0;
  }

  .request__title {
    font-size: var(--landing-title);
  }

  .request__pills li {
    padding: 10px 18px;
    font-size: var(--type-heading);
  }

  .request-form,
  .request-accepted {
    flex: 0 0 560px;
    padding: var(--space-40);
  }

  .request-form__fields {
    flex-direction: row;
  }

  .request-form__fields .field {
    flex: 1;
  }

  .tariffs {
    padding-block: var(--landing-section);
  }

  .tariffs .section-title {
    margin-bottom: var(--space-48);
  }

  .l-footer {
    padding: var(--space-40) 0 56px;
  }

  .sticky-cta {
    display: none;
  }
}
