:root {
  --blue: #016ec5;
  --blue-dark: #006ec4;
  --blue-soft: #edf7ff;
  --orange: #ff6b1b;
  --text: #545454;
  --heading: #474747;
  --muted: #676767;
  --line: #c7def3;
  --radius-lg: 32px;
  --radius: 18px;
  --shadow: 0 18px 45px rgba(0, 105, 190, .14);
  
  --font: "Inter Tight", Arial, sans-serif;
  --font-alt: "Inter", sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: #fff;
  color: var(--text);
  font-family: var(--font);
  font-size: 19px;
  line-height: 22px;
}
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
button, input, select, textarea { font: inherit; }
svg.icon { display: block; width: 24px; height: 24px; flex: 0 0 auto; }

/* ===== Раскладка / утилиты ===== */
.shell { width: min(1200px, calc(100% - 48px)); margin: 0 auto; }
.section { padding: 0; }
.stats,
.referral,
.chooser,
.process,
.trust,
.budget,
.articles,
.faq,
.footer { margin-top: 32px; }
.lead { max-width: 560px; color: var(--text); }
.lead__accent { display: block; font: 600 19px/119% var(--font); letter-spacing: 0; }
.centered { margin-inline: auto; text-align: center; }
.center-btn { display: flex; justify-content: center; margin-top: 40px; }
.center-btn .btn { width: min(380px, 100%); }
.rays { display: block; width: 30px; height: 30px; overflow: visible; color: var(--blue); }
.rays--blue { color: var(--blue); }
.rays--orange { color: var(--orange); }
.rays--mirrored { transform: scaleX(-1); }
.rays-button {
  position: relative;
  display: flex;
  justify-content: center;
  width: min(520px, 100%);
  overflow: visible;
  background: transparent;
}
.rays-button .btn { width: 100%; }
.rays-button__ray {
  position: absolute;
  top: var(--rays-button-top, -18px);
  width: var(--rays-button-size, 30px);
  height: var(--rays-button-size, 30px);
  z-index: 2;
  pointer-events: none;
}
.rays-button__ray--left { left: var(--rays-button-offset, 18px); }
.rays-button__ray--right { right: var(--rays-button-offset, 18px); }
.side-arrow {
  position: absolute;
  top: 50%;
  width: 64px;
  height: 47px;
  z-index: 2;
  background: var(--orange);
  -webkit-mask: var(--side-arrow-src) center / contain no-repeat;
  mask: var(--side-arrow-src) center / contain no-repeat;
  pointer-events: none;
  user-select: none;
  transform: translateY(-50%);
}
.side-arrow--orange { background: var(--orange); }
.side-arrow--blue { background: var(--blue); }
.side-arrow--left { left: var(--side-arrow-offset, -78px); }
.side-arrow--right { right: var(--side-arrow-offset, -78px); transform: translateY(-50%) scaleX(-1); }
.light-wrapper { position: relative; }
.light-wrapper__ray {
  position: absolute;
  width: 30px;
  height: 30px;
  max-width: none;
  z-index: 2;
  pointer-events: none;
  user-select: none;
}

/* ===== Типографика ===== */
h1, h2, h3, p { margin-top: 0; }
h1 { font: 600 48px/50px var(--font); color: #f7f7f7; margin-bottom: 19px; letter-spacing: 0; }
h2 { font: 600 42px/39px var(--font); color: var(--heading); margin-bottom: 22px; letter-spacing: 0; }
h3 { font: 600 18px/21px var(--font); color: var(--text); }
mark {
  display: inline-block;
  background: var(--orange);
  color: #fff;
  padding: 1px 12px 6px;
  border-radius: 12px;
  transform: rotate(-2deg);
}
.mark--blue {
  background: var(--blue);
}

/* ===== Кнопки ===== */
.btn {
  display: inline-block;
  border-radius: 999px;
  border: 1px solid transparent;
  cursor: pointer;
  padding: 5px;
  white-space: normal;
  text-wrap: wrap;
  overflow-wrap: anywhere;
  text-align: center;
  align-content: center;
  font-weight: 600;
  transition: background-color .18s ease, border-color .18s ease, color .18s ease, transform .12s ease, box-shadow .18s ease;
}
.btn--small { min-height: 36px; padding: 12px 18px; }
.btn--medium { min-height: 56px; padding: 16px 28px; }
.btn--orange { background: var(--orange); color: #fff; }
.btn--ghost { background: var(--blue); color: #fff; }
.btn--white { background: #fff; color: var(--text); box-shadow: none; }
.header__bar .btn--ghost,
.blue-surface .btn--ghost,
.cases .btn--ghost {
  border-color: rgba(255,255,255,.9);
  background: transparent;
  color: #fff;
}
.cases .btn--ghost { background: #fff; color: var(--text); }
.btn--orange:hover { background: #f05e10; box-shadow: 0 10px 22px rgba(255, 107, 27, .25); }
.btn--ghost:hover { background: #005da8; box-shadow: 0 10px 22px rgba(1, 110, 197, .2); }
.btn--white:hover { background: #f3f8fc; }
.header__bar .btn--ghost:hover,
.blue-surface .btn--ghost:hover {
  background: rgba(255,255,255,.14);
  border-color: #fff;
}
.cases .btn--ghost:hover { background: #f3f8fc; }
.btn:active { transform: translateY(1px); box-shadow: none; }
.btn--wide { width: 100%; }

.label--mobile { display: none; }

/* ===== Синяя поверхность (модификатор-микс) ===== */
.blue-surface {
  background: var(--blue);
  color: #fff;
  background-image:
    linear-gradient(120deg, transparent 20%, rgba(255,255,255,.08) 20% 34%, transparent 34% 47%, rgba(255,255,255,.08) 47% 57%, transparent 57%),
    linear-gradient(180deg, #0b83dc, #0470c3);
}

/* ===== Нумерованный «кикер» секции ===== */
.kicker { display: flex; align-items: center; gap: 6px; margin-bottom: 22px; }
.kicker span { display: grid; place-items: center; min-width: 58px; height: 32px; padding: 0 16px; border-radius: 999px; background: var(--orange); font: 500 18px/21px var(--font); color: #fff;}
.kicker i { width: 32px; height: 32px; border-radius: 999px; background: var(--orange); }
.kicker i:nth-of-type(1) { width: 35px; }
.kicker i:nth-of-type(2) { width: 26px; }
.kicker i:nth-of-type(3) { width: 13px; }
.kicker i:nth-of-type(4) { width: 5px; border-radius: 10px; }

/* ===== Шапка ===== */
.header { padding: 14px 0 16px; position: relative; z-index: 20; background: transparent; }
.header__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 10px;
  padding: 0 56px;
  color: var(--text);
}
.header__meta-right { display: flex; align-items: center; gap: 20px; margin-left: auto; }
.header__bar {
  width: 1200px;
  max-width: 100%;
  min-height: 74px;
  border-radius: 999px;
  padding: 0 42px;
  display: flex;
  align-items: center;
  gap: 32px;
  color: #fff;
  background: var(--blue);
}
.logo { font: 600 25px/28px var(--font-alt); letter-spacing: 0; flex: 0 0 auto; }
.header__main { display: flex; flex-direction: column; justify-content: center; gap: 12px; flex: 1; min-width: 0; }
.header__top { display: flex; align-items: center; gap: 20px; width: 100%; }
.search {
  width: 174px;
  height: 28px;
  border-radius: 999px;
  flex: 0 0 auto;
  background: rgba(255,255,255,.25);
  border: 1px solid rgba(255,255,255,.35);
  display: flex;
  align-items: center;
  padding: 0 14px;
  gap: 7px;
  font: 400 13px/14px var(--font);
}
.search svg { width: 15px; height: 15px; color: #fff; opacity: .9; }
.header__phone { font: 500 14px/15px var(--font); white-space: nowrap; }

/* Переключатель городов (нативный <details>) */
.city-switcher { position: relative; }
.city-switcher__toggle {
  list-style: none;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font: 500 14px/15px var(--font);
  color: var(--heading);
  white-space: nowrap;
  user-select: none;
}
.city-switcher__toggle::-webkit-details-marker { display: none; }
.city-switcher__pin { width: 16px; height: 16px; color: var(--blue); }
.city-switcher__chevron { width: 14px; height: 14px; transition: transform .2s ease; }
.city-switcher[open] .city-switcher__chevron { transform: rotate(180deg); }
.city-switcher__menu {
  position: absolute;
  top: calc(100% + 10px);
  right: 0;
  z-index: 30;
  min-width: 190px;
  padding: 8px;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 18px 44px rgba(0,0,0,.14);
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.city-switcher__item {
  padding: 9px 12px;
  border-radius: 10px;
  font: 500 15px/17px var(--font);
  color: var(--heading);
  transition: background .15s ease, color .15s ease;
}
.city-switcher__item:hover { background: var(--blue-soft); }
.city-switcher__item--active { color: var(--blue); background: var(--blue-soft); }
.nav { display: flex; gap: 28px; align-items: center; font: 500 17px/18px var(--font); }
.nav a, .nav button { color: #fff; }
.nav button { border: 0; background: transparent; padding: 0; cursor: pointer; font: inherit; display: inline-flex; align-items: center; gap: 8px; }
.nav button span { width: 8px; height: 8px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg) translateY(-2px); }
.nav__dropdown { position: relative; }
.nav__menu {
  position: absolute;
  top: calc(100% + 12px);
  left: -18px;
  z-index: 25;
  min-width: 220px;
  padding: 12px;
  border-radius: 18px;
  background: #fff;
  box-shadow: var(--shadow);
  display: grid;
  gap: 6px;
  opacity: 0;
  pointer-events: none;
  transform: translateY(8px);
  transition: .18s ease;
}
.nav__menu a { color: var(--text); padding: 10px 12px; border-radius: 10px; font-size: 16px; }
.nav__menu a:hover { background: var(--blue-soft); color: var(--blue); }
.nav__dropdown.is-open .nav__menu { opacity: 1; pointer-events: auto; transform: translateY(0); }
.messengers { display: flex; gap: 10px; flex: 0 0 auto; }
.messengers a {
  width: 29px;
  height: 29px;
  border-radius: 50%;
  background: #fff;
  display: grid;
  place-items: center;
  color: var(--orange);
  box-shadow: 0 8px 18px rgba(15, 42, 68, .12);
}
.messengers svg { width: 16px; height: 16px; }
.header__actions { display: flex; align-items: center; justify-content: center; gap: 14px; flex: 0 0 auto; }
.header__actions .btn {
  font: 600 13px/14px var(--font);
}
.header__proof { display: flex; align-items: center; gap: 8px; font: 400 13px/14px var(--font); }
.header__proof span { width: 18px; height: 18px; border-radius: 50%; background: var(--orange); display: grid; place-items: center; flex: 0 0 auto; }
.header__proof span svg { width: 11px; height: 11px; color: #fff; stroke-width: 3; }
.header__proof b { font-weight: 700; }
.burger { display: none; width: 38px; height: 38px; border: 0; border-radius: 50%; background: #fff; padding: 9px; }
.burger span { display: block; height: 2px; margin: 4px 0; background: var(--blue); }

/* Боковое меню активно только на мобильных/планшетах (см. @media ≤980px). */
.drawer, .drawer-overlay { display: none; }

/* ===== Hero ===== */
.hero { display: grid; grid-template-columns: 700px 500px; gap: 10px; align-items: stretch; }
.hero__panel {
  width: 700px;
  height: 622.22px;
  min-height: 622.22px;
  padding: 40px 56px 41px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  overflow: hidden;
  z-index: 2;
  border-radius: 36px;
  clip-path: path('M 0,0 L 0,36 Q 0,0 36,0 L 664,0 Q 700,0 693.18,35.35 L 586.82,586.87 Q 580,622.22 544,622.22 L 36,622.22 Q 0,622.22 0,586.22 Z');
}
.hero__panel.blue-surface {
  background-image:
    linear-gradient(180deg, rgba(1, 110, 197, .96), rgba(1, 110, 197, .98)),
    url('../img/198ba81ce7e89f855a6da2ecf830aabe0842f393.jpg');
  background-size: cover;
  background-position: center;
}
.hero__panel h1 { max-width: 540px; margin-bottom: 24px; }
.hero__panel mark { color: #f7f7f7; }
.hero__panel p { max-width: 540px; color: #f7f7f7; font: 400 19px/22px var(--font); margin-bottom: 0; }
.hero__features { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px 52px; margin: 38px 0 0; color: #fff; font: 400 18px/20px var(--font); max-width: 510px; }
.hero__features span { display: grid; grid-template-columns: 44px 1fr; align-items: center; gap: 10px; }
.hero__feature-icon { width: 44px; height: 44px; border-radius: 13px; background: rgba(255,255,255,.16); display: grid; place-items: center; }
.hero__feature-icon svg { width: 24px; height: 24px; color: #fff; }
.hero__buttons { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; margin-top: 48px; max-width: 510px; }
.hero__buttons .btn { font: 600 15px/16px var(--font); }
.hero__buttons .btn--wide { min-height: 56px; font-weight: 600; grid-column: 1 / -1; }
.hero__photo {
  position: relative;
  width: 600px;
  height: 622.22px;
  min-height: 622.22px;
  border-radius: 36px;
  overflow: hidden;
  background: #f4eee9;
  z-index: 1;
  margin-left: -120px;
  clip-path: path('M 156,0 L 564,0 Q 600,0 600,36 L 600,586.22 Q 600,622.22 564,622.22 L 36,622.22 Q 0,622.22 6.82,586.87 L 113.18,35.35 Q 120,0 156,0 Z');
}
.hero__photo > img { width: 100%; max-width: none; height: 100%; object-fit: cover; }
.hero__photo--mobile { display: none; }
.badges { position: absolute; left: 43px; right: 31px; bottom: 40px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px; }
.badges span { display: grid; grid-template-columns: 54px 1fr; gap: 10px; min-height: 78px; padding: 12px; border-radius: 12px; background: rgba(255,255,255,.9); font: 600 11px/13px var(--font); color: #606060; align-items: center; backdrop-filter: blur(10px); }
.badges img { grid-row: 1 / span 2; width: 54px; height: 54px; object-fit: contain; }
.badges small { color: var(--muted); font: 400 11px/10px var(--font); }

/* ===== Статистика ===== */
.stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.stats__card, .benefits__card, .articles__card {
  border: 1px solid var(--line);
  background: var(--blue-soft);
  border-radius: 20px;
  padding: 30px 26px;
}
.stats__card { text-align: left; }
.stats__icon {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  background: var(--blue);
  display: grid;
  place-items: center;
  margin: 0 0 20px;
}
.stats__icon svg { width: 38px; height: 38px; color: #fff; }
.benefits__icon { width: 56px; height: 56px; border-radius: 16px; background: var(--orange); border: 1px solid var(--orange); display: grid; place-items: center; margin-bottom: 0; }
.benefits__icon svg { width: 30px; height: 30px; color: #fff; }
.stats__card strong { display: block; color: var(--text); font: 600 35px/42px var(--font); }
.stats__card > span:not(.stats__icon) { display: block; color: var(--text); font: 400 20px/24px var(--font); }

/* ===== Реферальная программа ===== */
.referral { border-radius: var(--radius-lg); background: var(--blue-soft); border: 1px solid var(--line); padding: 52px 40px; }
.referral .kicker, .budget .kicker { color: var(--orange); }
.referral h2 { max-width: 700px; }
.referral .lead, .chooser .lead, .process .lead, .budget .lead, .articles .lead { font: 400 19px/22px var(--font); color: var(--text); }
.referral__box { display: grid; grid-template-columns: 1fr minmax(360px, 520px); gap: 0; border-radius: 34px; margin-top: 48px; overflow: hidden; }
.referral__box.blue-surface {
  background-image:
    url("data:image/svg+xml,%3Csvg width='960' height='957' viewBox='0 0 960 957' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M-238.171 192.475C-259.864 131.804 239.306 681.379 454.425 897.26C623.214 1066.65 231.571 503.478 55.0491 253.045C45.9485 240.134 63.7566 225.034 75.1469 235.978L605.318 745.399C615.685 755.361 632.163 743.611 626.122 730.563L309.543 46.774C303.521 33.7672 319.894 22.0159 330.29 31.8836L940.473 611.084' stroke='%23E9F5FF' stroke-opacity='0.07' stroke-width='56'/%3E%3C/svg%3E"),
    linear-gradient(180deg, #0b83dc, #0470c3);
  background-position: left center, 0 0;
  background-repeat: no-repeat;
  background-size: auto 100%, auto;
}
.referral__text { min-height: 570px; padding: 52px; display: flex; flex-direction: column; justify-content: flex-start; gap: 24px; }
.referral__text h3 { color: #fff; font: 600 36px/95% var(--font); max-width: 540px; }
.referral__text h3 .referral__accent { display: block; color: #BFDAF0; }
.referral__text b { margin-top: auto; color: #fff; font: 600 42px/39px var(--font); }
.form-card { margin: 24px; padding: 38px; border-radius: 28px; background: var(--blue-soft); color: var(--text); display: grid; gap: 18px; }
.form-card label { display: grid; gap: 8px; color: var(--text); font: 500 16px/18px var(--font); }
.form-card__other-status[hidden] { display: none; }
.form-card input, .form-card select, .form-card textarea {
  width: 100%;
  border: 1px solid #c6cbd0;
  border-radius: 10px;
  background: transparent;
  min-height: 52px;
  padding: 0 18px;
  color: var(--text);
  font: 400 16px/18px var(--font);
}
.form-card textarea { min-height: 112px; padding-top: 16px; resize: vertical; }
.form-card p { color: var(--text); font: 400 14px/16px var(--font); }
.form-card .btn { font: 600 17px/20px var(--font); }

/* ===== Выбор страны/программы ===== */
.chooser h2 { max-width: 760px; font: 600 47px/45px var(--font); }
.chooser h2 mark { font: 600 45px/42px var(--font); color: #fff; }
.chooser__panel { position: relative; overflow: hidden; border-radius: var(--radius-lg); padding: 42px; margin-top: 36px; }
.chooser__panel > * { position: relative; z-index: 1; }
.chooser__panel.blue-surface {
  background-image:
    url("data:image/svg+xml,%3Csvg width='1200' height='519' viewBox='0 0 1200 519' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1226.42 109.67L269.535 705.49C256.05 713.887 241.918 695.139 253.696 684.479C546.944 419.079 1303.31 -272.107 1022.19 -88.6482C676.276 137.1 -143.905 724.82 -93.7971 650.035C-31.1622 556.554 791.505 -95.5605 708.172 -197.031C624.84 -298.502 248.679 27.1567 223.342 47.4387L80.5265 186.758L-216.385 478.724' stroke='%23E9F5FF' stroke-opacity='0.05' stroke-width='58'/%3E%3C/svg%3E"),
    linear-gradient(180deg, #0b83dc, #0470c3);
  background-size: cover, auto;
  background-position: center, 0 0;
  background-repeat: no-repeat;
}
.tabs { position: relative; display: flex; justify-content: center; gap: 8px; width: max-content; max-width: 100%; margin: 0 auto 36px; }
.chooser__tab-arrow { display: none; }
.chooser__panel:has([data-tab-panel="countries"].is-active) .chooser__tab-arrow--countries { display: block; }
.chooser__panel:has([data-tab-panel="programs"].is-active) .chooser__tab-arrow--programs { display: block; }
.tabs__tab { width: 270px; height: 52px; border-radius: 999px; border: 0; background: #eaf5ff; color: var(--blue); font: 600 19px/22px var(--font); cursor: pointer; }
.tabs__tab.is-active { background: var(--orange); color: #fff; }
.chooser__grid { display: none; grid-template-columns: repeat(4, 1fr); gap: 10px; }
.chooser__grid.is-active { display: grid; }
.choice-card { position: relative; min-height: 170px; padding: 20px; border-radius: 12px; background: #fff; color: var(--text); }
.choice-card__icon { width: 44px; height: 44px; border-radius: 12px; background: var(--orange); display: grid; place-items: center; margin-bottom: 16px; }
.choice-card__icon svg { width: 24px; height: 24px; color: #fff; }
.choice-card__icon--flag { background: transparent; }
.choice-card__icon--flag img { width: 44px; height: 44px; border-radius: 50%; object-fit: cover; }
.choice-card__icon--image img { width: 24px; height: 24px; object-fit: contain; filter: brightness(0) invert(1); }
.choice-card h3 { margin-bottom: 8px; font: 600 16px/18px var(--font); }
.choice-card p { color: var(--text); font: 400 16px/18px var(--font); margin: 0; }
.card-arrow { position: absolute; top: 16px; right: 16px; display: grid; place-items: center; color: var(--orange); }
.card-arrow svg { width: 30px; height: 30px; }
.choice-card--wide { grid-column: 1 / -1; height: 66px; min-height: 66px; display: flex; align-items: center; gap: 14px; }
.choice-card--wide h3 { margin-bottom: 0px; }
.choice-card--wide .choice-card__icon { margin-bottom: 0; width: 36px; height: 36px; }
.choice-card--wide .choice-card__icon svg { width: 20px; height: 20px; }
.chooser__cta { margin: 36px auto 0; }
/* Вкладка «По программе»: клеточный фон #EDF6FF, синий фон под иконками, синяя кнопка */
.chooser__panel:has([data-tab-panel="programs"].is-active) {
  background-color: #edf6ff;
  background-image: none;
  color: var(--text);
}
.chooser__panel:has([data-tab-panel="programs"].is-active)::before {
  content: "";
  position: absolute;
  inset: -80px;
  z-index: 0;
  background:
    linear-gradient(rgba(237, 246, 255, .82), rgba(237, 246, 255, .82)),
    url('../img/grid-paper-bg.png') center / cover no-repeat;
  transform: rotate(10deg);
  pointer-events: none;
}
.chooser__panel:has([data-tab-panel="programs"].is-active) .choice-card__icon { background: var(--blue); }
.chooser__panel:has([data-tab-panel="programs"].is-active) .card-arrow { color: var(--blue); }
.chooser__panel:has([data-tab-panel="programs"].is-active) .chooser__cta { background: transparent; }
.chooser__panel:has([data-tab-panel="programs"].is-active) .chooser__cta .btn { background: var(--blue); color: #fff; }
.chooser__panel:has([data-tab-panel="programs"].is-active) .chooser__cta .rays { color: var(--blue-dark); }
.popular { margin-top: 32px; border-radius: 26px; background: var(--orange); padding: 38px 44px; color: #fff; }
.popular h3 { color: #fff; font: 600 42px/49px var(--font); }
.popular__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.popular__grid article { position: relative; overflow: hidden; display: grid; grid-template-columns: 112px 1fr; align-items: center; gap: 18px; border-radius: 12px; background: #fff; color: var(--text); padding: 14px 56px 14px 14px; min-height: 110px; }
.popular__grid article::before {opacity: 0.18; content: ""; position: absolute; inset: -40px; z-index: 0; background: linear-gradient(rgba(255,255,255,.5), rgba(255,255,255,.5)), url('../img/grid-paper-bg.png') center / cover no-repeat; transform: rotate(10deg); pointer-events: none; }
.popular__grid article > img, .popular__grid article > strong { position: relative; z-index: 1; }
.popular__grid img { width: 112px; height: 82px; border-radius: 10px; object-fit: cover; }
.popular__grid strong { color: var(--text); font: 600 19px/20px var(--font); }
.popular__grid .card-arrow { position: absolute; top: 14px; right: 14px; color: var(--blue); }
.popular__grid .card-arrow svg { width: 30px; height: 30px; }

/* ===== Процесс поступления ===== */
.process { position: relative; overflow: hidden; }
.process::before { content: ""; position: absolute; inset: 0; z-index: 0; background: url('../img/ps.svg') center / cover no-repeat; pointer-events: none; }
.process > .shell { position: relative; z-index: 1; }
.process h2 { max-width: fit-content; margin-inline: auto; text-align: center; font: 600 42px/39px var(--font); }
.process h2 span { display: block; }
.process h2 mark { display: block; width: fit-content; margin-left: auto; font: 600 42px/38px var(--font); color: #fff; }
.process__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; align-items: start; margin-top: 60px; }
.step {
  position: relative;
  z-index: 2;
  min-height: 293px;
  border-radius: 20px;
  border: 1px solid var(--line);
  background: var(--blue-soft);
  padding: 28px 28px 23px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  justify-content: flex-start;
  overflow: hidden;
}
.step::before {
  content: "";
  position: absolute;
  inset: -30px -40px;
  opacity: 0;
  background: repeating-linear-gradient(62deg, rgba(255,255,255,.12) 0 78px, rgba(255,255,255,0) 78px 156px);
  pointer-events: none;
}
.step:nth-of-type(1) { grid-column: 1; grid-row: 1; }
.step:nth-of-type(2) { grid-column: 2; grid-row: 1; transform: rotate(7deg); background: var(--blue); border-color: transparent; color: #fff; }
.step:nth-of-type(3) { grid-column: 2; grid-row: 2; }
.step:nth-of-type(4) { grid-column: 3; grid-row: 2; background: var(--orange); border-color: transparent; color: #fff; }
.step:nth-of-type(5) { grid-column: 4; grid-row: 2; background: var(--blue); border-color: transparent; color: #fff; transform: rotate(-6deg); }
.step span { width: 40px; height: 40px; border-radius: 50%; background: var(--blue); color: #fff; display: grid; place-items: center; font: 500 17px/20px var(--font); margin-bottom: 10px; }
.step h3 { position: relative; z-index: 1; margin-bottom: 15px; font: 600 18px/17px var(--font); color: var(--text); }
.step p { position: relative; z-index: 1; max-width: 238px; color: var(--text); font: 400 17px/20px var(--font); margin-bottom: 0; }
.step .btn { position: relative; z-index: 1; display: grid; place-items: center; width: 100%; min-height: 57px; align-self: stretch; font: 600 15px/17px var(--font); margin-top: auto; box-shadow: 0 10px 20px rgba(15,129,217,.2); }
.step .btn--white { box-shadow: none; }
.step:nth-of-type(2)::before,
.step:nth-of-type(4)::before,
.step:nth-of-type(5)::before { opacity: 1; }
.step:nth-of-type(2) span,
.step:nth-of-type(4) span,
.step:nth-of-type(5) span { background: #fff; color: var(--text); }
.step:nth-of-type(2) h3,
.step:nth-of-type(2) p,
.step:nth-of-type(4) h3,
.step:nth-of-type(4) p,
.step:nth-of-type(5) h3,
.step:nth-of-type(5) p { color: #fff; }
.step:nth-of-type(2) h3 { max-width: 200px; }
.step:nth-of-type(2) p { max-width: 190px; }
.step--blue, .step--orange { border: 0; }
.step--blue { background: var(--blue); }
.step--orange { background: var(--orange); }
.process .center-btn .btn { width: 370px; padding-block: 22px; font: 600 15px/18px var(--font); }

/* ===== Почему выбирают / преимущества / кейсы / отзывы ===== */
.brand {
  position: relative;
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: 10px;
  margin-bottom: 58px;
}
.brand__line {
  position: absolute;
  inset: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  max-width: none;
  pointer-events: none;
  -webkit-mask-image: linear-gradient(#000 0 0), linear-gradient(#000 0 0);
  -webkit-mask-position: left top, right top;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: calc((100% - 10px) * 2 / 3) 100%, calc((100% - 10px) / 3) 100%;
  mask-image: linear-gradient(#000 0 0), linear-gradient(#000 0 0);
  mask-position: left top, right top;
  mask-repeat: no-repeat;
  mask-size: calc((100% - 10px) * 2 / 3) 100%, calc((100% - 10px) / 3) 100%;
}
.brand__info, .brand__tile { border-radius: 28px; padding: 40px; min-height: 320px; }
.brand__info h2, .brand__info p { color: #fff; max-width: 780px; }
.brand__info h2 { font: 600 42px/39px var(--font); }
.brand__info p { font: 400 19px/22px var(--font); }
.brand__tile { display: flex; align-items: end; justify-content: end; color: #fff; font: 600 42px/39px var(--font); }
.brand__info.blue-surface,
.brand__tile.blue-surface {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background: none;
}
.brand__info.blue-surface::before,
.brand__tile.blue-surface::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: var(--blue);
  background-image:
    linear-gradient(180deg, #0b83dc, #0470c3);
}
/* Скошенный стык brand только на полной ширине */
@media (min-width: 1260px) {
  .brand__line {
    clip-path: path('M 0,0 L 0,28 Q 0,0 28,0 L 765.33,0 Q 793.33,0 788.03,27.49 L 732.48,315.51 Q 727.18,343 699.18,343 L 28,343 Q 0,343 0,315 Z M 837.48,0 L 1172,0 Q 1200,0 1200,28 L 1200,315 Q 1200,343 1172,343 L 771.33,343 Q 743.33,343 748.63,315.51 L 804.18,27.49 Q 809.48,0 837.48,0 Z');
    -webkit-mask-image: none;
    mask-image: none;
  }
  .brand__info.blue-surface,
  .brand__tile.blue-surface {
    height: 343px;
    min-height: 343px;
  }
  .brand__info.blue-surface {
    width: calc(100% + 60px);
    padding-right: 150px;
  }
  .brand__info.blue-surface::before {
    clip-path: path('M 0,0 L 0,28 Q 0,0 28,0 L 765.33,0 Q 793.33,0 788.03,27.49 L 732.48,315.51 Q 727.18,343 699.18,343 L 28,343 Q 0,343 0,315 Z');
  }
  .brand__tile.blue-surface {
    width: calc(100% + 60px);
    margin-left: -60px;
  }
  .brand__tile.blue-surface::before {
    clip-path: path('M 94.15,0 L 428.67,0 Q 456.67,0 456.67,28 L 456.67,315 Q 456.67,343 428.67,343 L 28,343 Q 0,343 5.30,315.51 L 60.85,27.49 Q 66.15,0 94.15,0 Z');
  }
}
.benefits { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; margin: 36px 0 64px; }
.benefits__card { min-height: 260px; padding: 25px; display: flex; flex-direction: column; justify-content: space-between; }
.benefits__card:nth-child(2n) { transform: translateY(20px); }
.benefits__head { display: flex; flex-direction: column; gap: 22px; }
.benefits__card h3 { margin-top: 20px; margin-bottom: 0; font: 600 18px/21px var(--font); }
.benefits__card p { margin-bottom: 0; color: var(--text); font: 400 17px/20px var(--font); }
.cases { position: relative; isolation: isolate; overflow: hidden; display: grid; grid-template-columns: .8fr 1.2fr; gap: 34px; border-radius: 26px; background: var(--orange); color: #fff; padding: 34px 38px; align-items: center; }
.cases__line,
.reviews__line {
  position: absolute;
  z-index: 0;
  width: 980px;
  height: 1113px;
  max-width: none;
  pointer-events: none;
}
.cases__line {
  right: -260px;
  top: 50%;
  transform: translateY(-50%);
}
.cases > :not(.cases__line),
.reviews > :not(.reviews__line) {
  position: relative;
  z-index: 1;
}
.cases h2 { color: #fff; font: 600 42px/49px var(--font); }
.cases p { color: #fff; font: 500 19px/22px var(--font); }
.cases .btn { width: 100%; color: var(--text); font: 600 15px/18px var(--font); }
.cases__gallery { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; align-items: stretch; }
.cases__gallery img { display: block; width: 100%; min-height: 120px; aspect-ratio: 1.24 / 1; border-radius: 10px; object-fit: cover; }
.reviews { position: relative; isolation: isolate; overflow: hidden; margin-top: 62px; border-radius: 28px; padding: 40px; }
.reviews.blue-surface {
  background-image:
    linear-gradient(180deg, #0b83dc, #0470c3);
}
.reviews__line {
  right: -150px;
  top: -350px;
}
.reviews h2, .reviews p { color: #fff; }
.reviews h2 { font: 600 42px/49px var(--font); }
.reviews__title { position: relative; display: inline-block; }
.reviews__title-ray { position: absolute; right: -34px; top: -8px; width: 30px; height: 30px; }
.reviews__intro p { font: 400 19px/23px var(--font); }
.reviews__head { display: flex; align-items: flex-start; justify-content: space-between; gap: 24px; }
.reviews__nav { display: flex; gap: 12px; flex-shrink: 0; }
.reviews__arrow {
  display: inline-flex; align-items: center; justify-content: center;
  width: 48px; height: 48px; border-radius: 50%;
  border: 1px solid var(--orange);
  background: var(--orange); color: #fff;
  cursor: pointer; transition: background .2s;
}
.reviews__arrow:hover { background: #e95c15; }
.reviews__arrow:disabled { opacity: .4; cursor: default; }
.reviews__arrow .icon { width: 32px; height: 32px; }
.reviews__grid {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: calc((100% - 32px) / 3);
  gap: 16px;
  margin-top: 34px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  scrollbar-width: none;
}
.reviews__grid::-webkit-scrollbar { display: none; }
.reviews__card { background: #fff; color: var(--text); border-radius: 18px; padding: 28px; scroll-snap-align: start; }
.reviews__card img { float: left; width: 58px; height: 58px; border-radius: 50%; object-fit: cover; margin: 0 16px 8px 0; }
.reviews__card h3 { font: 500 18px/21px var(--font); }
.reviews__card b { color: var(--orange); font: 400 18px/21px var(--font); }
.reviews__card p { clear: both; color: var(--text); font: 400 18px/20px var(--font); margin-top: 16px; }
.reviews__alert {
  margin-top: 20px;
  border-radius: 14px;
  background: rgba(255,255,255,.16);
  border: 1px solid rgba(255,255,255,.28);
  color: #fff;
  padding: 14px 18px;
  font: 500 16px/18px var(--font);
}
.reviews__alert--error { background: rgba(255,107,27,.22); }

/* ===== Модалка отзыва ===== */
.review-modal {
  position: fixed;
  inset: 0;
  z-index: 100;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 24px;
}
.review-modal.is-open { display: flex; }
.review-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(25, 38, 52, .58);
}
.review-modal__dialog {
  position: relative;
  z-index: 1;
  width: min(560px, 100%);
  max-height: calc(100vh - 48px);
  overflow: auto;
  border-radius: 18px;
  background: #fff;
  padding: 30px;
  box-shadow: 0 28px 70px rgba(0, 61, 110, .24);
}
.review-modal__dialog h2 {
  margin-bottom: 12px;
  color: var(--heading);
  font: 600 32px/34px var(--font);
}
.review-modal__dialog p {
  color: var(--text);
  font: 400 17px/20px var(--font);
}
.review-modal__close {
  position: absolute;
  top: 18px;
  right: 18px;
  width: 38px;
  height: 38px;
  border: 0;
  border-radius: 50%;
  background: var(--blue-soft);
  color: var(--blue);
  cursor: pointer;
  font: 600 28px/28px Arial, sans-serif;
}
.review-form { display: grid; gap: 16px; margin-top: 22px; }
.review-form label { display: grid; gap: 8px; color: var(--text); font: 500 15px/18px var(--font); }
.review-form input,
.review-form textarea {
  width: 100%;
  border: 1px solid #d6e4ef;
  border-radius: 12px;
  background: #fff;
  color: var(--text);
  padding: 13px 15px;
  outline: none;
  font: 400 16px/19px var(--font);
}
.review-form textarea { resize: vertical; min-height: 130px; }
.review-form input:focus,
.review-form textarea:focus { border-color: var(--blue); box-shadow: 0 0 0 3px rgba(1,110,197,.12); }
.review-form small { color: #d9411e; font: 500 13px/15px var(--font); }

/* ===== Бюджет ===== */
.budget__top { display: grid; grid-template-columns: 1fr 1fr; gap: 36px; border-radius: 28px; background: var(--blue-soft); border: 1px solid var(--line); padding: 40px; align-items: center; }
.budget h2 { font: 600 46px/43px var(--font); }
.budget__note { position: relative; margin-top: 48px; max-width: 520px; color: var(--text); font: 400 18px/21px var(--font); transform: rotate(-5deg); }
.budget__note-paper { position: relative; isolation: isolate; overflow: hidden; background: #fff; border: 1px solid #d9e7f3; border-radius: 18px; padding: 28px; }
.budget__note p { position: relative; z-index: 1; margin: 0; }
.budget__note p + p { margin-top: 14px; }
.budget__note-paper::after { content: ""; position: absolute; inset: -34px; z-index: 0; background: url('../img/grid-paper-bg.png') center / cover no-repeat; opacity: .32; transform: rotate(15deg); pointer-events: none; }
.budget__clip { position: absolute; z-index: 2; top: -38px; right: 40px; width: 58px; height: 58px; background-color: var(--orange); -webkit-mask: url('../img/clip.svg') center / contain no-repeat; mask: url('../img/clip.svg') center / contain no-repeat; transform: rotate(180deg); pointer-events: none; }
.budget__list { position: relative; overflow: hidden; isolation: isolate; border-radius: 28px; padding: 46px; }
.budget__list.blue-surface {
  background-image:
    url("data:image/svg+xml,%3Csvg width='224' height='420' viewBox='0 0 224 420' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M535.348 -276.433L49.6415 388.067C41.1789 399.645 22.9555 391.004 26.5646 377.124L238.223 -436.85' stroke='%23E9F5FF' stroke-opacity='0.07' stroke-width='52'/%3E%3C/svg%3E"),
    linear-gradient(180deg, #0b83dc, #0470c3);
  background-position: right top, 0 0;
  background-repeat: no-repeat;
  background-size: auto 100%, auto;
}
.budget__list::after { content: ""; position: absolute; right: 154px; bottom: 115px; z-index: 0; width: 44px; height: 46px; background: url('../img/budget-cursor.svg') center / contain no-repeat; pointer-events: none; }
.budget__list h3,
.budget__list > div,
.budget__list .btn { position: relative; z-index: 1; }
.budget__list h3 { color: #fff; font: 600 33px/39px var(--font); }
.budget__list > div { display: flex; flex-wrap: wrap; gap: 12px; margin: 24px 0 42px; }
.budget__chip { display: inline-flex; align-items: center; gap: 9px; min-height: 44px; padding: 0 18px; background: #fff; color: var(--blue); border-radius: 999px; font: 500 19px/22px var(--font); }
.budget__chip--orange { background: var(--orange); color: #fff; }
.budget__chip svg { width: 20px; height: 20px; color: var(--blue); }
.budget__chip--orange svg { color: #fff; }
.download { position: relative; margin-top: 32px; min-height: 280px; border-radius: 26px; background-color: var(--orange); background-image: linear-gradient(90deg, rgba(255, 107, 27, .96), rgba(255, 107, 27, .82)); background-size: cover; background-position: center; color: #fff; padding: 50px 70px; display: grid; grid-template-columns: 1fr 380px; gap: 30px; overflow: hidden; }
.download::before { content: ""; position: absolute; inset: -80px; z-index: 0; background-image: linear-gradient(rgba(255,255,255,.28) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.28) 1px, transparent 1px); background-size: 42px 42px; transform: rotate(10deg); pointer-events: none; }
.download::after { content: ""; position: absolute; right: 0px; top: 0px; z-index: 0; width: 600px; height: 100%; background: url("data:image/svg+xml,%3Csvg width='331' height='288' viewBox='0 0 331 288' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M123.593 474.468C86.5994 492.081 413.831 193.264 541.774 66.895C638.603 -28.7418 327.275 201.522 170.123 319.174C162.201 325.105 152.59 313.92 159.501 306.836L432.76 26.7227C439.207 20.1139 431.186 9.64729 423.129 14.1544L28.6348 234.816C20.5952 239.313 12.5749 228.896 18.9782 222.273L351.082 -121.194' stroke='white' stroke-opacity='0.14' stroke-width='33'/%3E%3C/svg%3E") center / cover no-repeat; pointer-events: none; }
.download > * { position: relative; z-index: 1; }
.download h2 { color: #fff; font: 600 42px/36px var(--font); }
.download__title { position: relative; display: inline-block; }
.download__title .download__rays { position: absolute; top: -20px; right: -34px; width: 30px; height: 30px; z-index: 2; }
.download p { color: #fff; font: 400 18px/20px var(--font); max-width: 430px; }
.download .btn { font: 600 16px/19px var(--font); }
.download__button { min-width: 300px; margin-top: 20px; }
.download > img { position: absolute; top: -76px; left: 474px; width: 480px; height: 649px; object-fit: cover; transform: rotate(-12deg); z-index: 1; }

/* ===== Статьи ===== */
.articles__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin: 40px 0; }
.articles__card { display: flex; flex-direction: column; padding: 22px; min-height: 470px; }
.articles__card > img { width: 100%; height: 218px; border-radius: 12px; object-fit: cover; margin-bottom: 26px; }
.articles__card h3 { font: 600 20px/20px var(--font); }
.articles__card p {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  color: var(--text);
  font: 400 19px/22px var(--font);
}
.articles__card a { color: var(--blue); font: 600 19px/22px var(--font); }
.articles__link { display: inline-flex; align-items: center; gap: 6px; margin-top: auto; }
.articles__link svg { width: 18px; height: 18px; }

/* ===== FAQ ===== */
.faq__box { border-radius: 28px; padding: 42px; }
.faq__box.blue-surface { background-image: linear-gradient(180deg, #0b83dc, #0470c3); }
.faq__box h2, .faq__box p { color: #fff; }
.faq__box h2 { font: 600 42px/39px var(--font); }
.faq__box > p { font: 400 19px/22px var(--font); }
.faq__grid { display: grid; grid-template-columns: repeat(2, 1fr); align-items: start; gap: 10px; margin-top: 42px; }
.faq__item { background: var(--blue-soft); color: var(--text); border-radius: 10px; overflow: hidden; }
.faq__question {
  width: 100%;
  height: 72px;
  border: 0;
  background: transparent;
  color: inherit;
  cursor: pointer;
  display: grid;
  grid-template-columns: 52px 1fr auto;
  gap: 18px;
  align-items: center;
  padding: 10px 24px;
  text-align: left;
  font: 600 18px/21px var(--font);
}
.faq__icon { width: 44px; height: 44px; border-radius: 50%; background: #fff; display: grid; place-items: center; }
.faq__icon svg { width: 22px; height: 22px; color: var(--blue); }
.faq__chevron { color: var(--blue); display: grid; place-items: center; transition: transform .18s ease; }
.faq__chevron svg { width: 22px; height: 22px; stroke-width: 2.4; }
.faq__answer { display: none; }
.faq__answer p { color: var(--text); padding: 0 24px 22px 94px; margin: 0; font: 400 16px/18px var(--font); }
.faq__item.is-open .faq__answer { display: block; }
.faq__item.is-open .faq__chevron { transform: rotate(180deg); }

/* ===== Подвал ===== */
.footer { border-radius: 28px 28px 0 0; padding: 54px; display: grid; grid-template-columns: 1fr 1fr; gap: 40px; }
.footer p, .footer strong, .footer small, .footer a { color: #fff; }
.footer .logo { position: static; display: inline-block; font: 600 19px/22px var(--font); }
.footer p, .footer a { font: 400 18px/21px var(--font); }
.footer strong { font: 600 17px/21px var(--font); }
.footer .btn { margin-top: 24px; font-weight: 600; }
.footer__contact { display: flex; align-items: center; gap: 9px; }
.footer__contact svg { width: 18px; height: 18px; color: #fff; }
.footer__socials { display: flex; gap: 10px; margin: 16px 0 24px; }
.footer__socials a {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: #fff;
  display: grid;
  place-items: center;
  color: var(--orange);
  flex: 0 0 auto;
  box-shadow: 0 8px 18px rgba(15, 42, 68, .12);
}
.footer__socials svg { width: 17px; height: 17px; }
.footer__cols { display: grid; grid-template-columns: repeat(2, 1fr); gap: 34px 70px; }
.footer__cols nav { display: grid; gap: 10px; align-content: start; }
.footer__cols h3 { color: #fff; font: 600 18px/21px var(--font); margin-bottom: 8px; }
.footer__cols a { font: 400 18px/21px var(--font); }
.footer small { grid-column: 1 / -1; opacity: .7; font: 400 17px/20px var(--font); }

/* ===== Адаптив ===== */
@media (min-width: 981px) {
  .chooser__panel {
    height: 552px;
  }
}

@media (min-width: 640px) and (max-width: 1260px) {
  .shell,
  .header__bar {
    width: min(1120px, calc(100% - 40px));
  }

  .header__meta {
    width: min(1120px, calc(100% - 40px));
    padding: 0 24px;
  }

  .header__bar {
    min-height: 68px;
    padding: 0 28px;
    gap: 22px;
  }

  .logo { font-size: 21px; line-height: 24px; }
  .nav { gap: 18px; font-size: 15px; line-height: 16px; }
  .header__actions { gap: 10px; }
  .header__actions .btn { min-height: 40px; padding-inline: 18px; font-size: 12px; line-height: 13px; }

  .budget__list > div {
    gap: 10px;
  }

  .budget__chip {
    min-height: 40px;
    padding: 0 15px;
    gap: 8px;
    font: 500 17px/20px var(--font);
  }

  .budget__chip svg {
    width: 18px;
    height: 18px;
  }

  .hero {
    grid-template-columns: minmax(0, 59fr) minmax(0, 41fr);
    gap: 0;
    overflow: hidden;
    border-radius: 32px;
  }

  .hero__panel,
  .hero__photo {
    width: auto;
    height: clamp(560px, 49.38vw, 622.22px);
    min-height: clamp(560px, 49.38vw, 622.22px);
    clip-path: none;
  }

  .hero__panel {
    padding: clamp(34px, 3.17vw, 40px) clamp(42px, 4.44vw, 56px) clamp(36px, 3.25vw, 41px);
    border-radius: 32px 0 0 32px;
  }

  .hero__photo {
    margin-left: 0;
    border-radius: 0 32px 32px 0;
  }

  .hero__panel h1 {
    max-width: clamp(500px, 42.86vw, 540px);
    margin-bottom: clamp(18px, 1.9vw, 24px);
    font-size: clamp(40px, 3.81vw, 48px);
    line-height: clamp(42px, 3.97vw, 50px);
  }

  .hero__panel p {
    max-width: clamp(480px, 42.86vw, 540px);
    font-size: clamp(17px, 1.51vw, 19px);
    line-height: clamp(20px, 1.75vw, 22px);
  }

  .hero__features {
    max-width: clamp(480px, 40.48vw, 510px);
    gap: clamp(24px, 2.54vw, 32px) clamp(36px, 4.13vw, 52px);
    margin-top: clamp(30px, 3.02vw, 38px);
    font-size: clamp(16px, 1.43vw, 18px);
    line-height: clamp(18px, 1.59vw, 20px);
  }

  .hero__features span {
    grid-template-columns: clamp(40px, 3.49vw, 44px) 1fr;
    gap: clamp(8px, .79vw, 10px);
  }

  .hero__feature-icon {
    width: clamp(40px, 3.49vw, 44px);
    height: clamp(40px, 3.49vw, 44px);
  }

  .hero__feature-icon svg {
    width: clamp(22px, 1.9vw, 24px);
    height: clamp(22px, 1.9vw, 24px);
  }

  .hero__buttons {
    max-width: clamp(480px, 40.48vw, 510px);
    gap: clamp(12px, 1.43vw, 18px);
    margin-top: clamp(36px, 3.81vw, 48px);
  }

  .hero__buttons .btn {
    min-height: clamp(46px, 4.13vw, 52px);
    padding-inline: clamp(18px, 2.22vw, 28px);
    font-size: clamp(13px, 1.19vw, 15px);
    line-height: clamp(14px, 1.27vw, 16px);
  }

  .badges {
    grid-template-columns: 1fr;
  }

  .badges span {
    font: 600 14px/17px var(--font);
  }

  .badges small {
    font: 400 13px/15px var(--font);
  }
}

@media (max-width: 980px) {
  .chooser__panel .chooser__tab-arrow { display: none !important; }
  .shell { width: min(100% - 28px, 720px); }
  .header { padding: 10px 0 6px; background: transparent; }
  .header__meta {
    width: min(940px, calc(100vw - 40px));
    margin-bottom: 8px;
    padding: 0;
    gap: 8px;
    color: var(--text);
  }
  .header__meta .header__proof {
    display: flex;
    max-width: 52%;
    font-size: 13px;
    line-height: 1.2;
  }
  .header__meta-right { gap: 10px; }
  .header__meta .header__phone { font-size: 13px; line-height: 1.2; }
  .header__bar {
    display: flex;
    align-items: center;
    gap: 10px;
    width: min(940px, calc(100vw - 40px));
    min-height: 48px;
    margin: 0 auto;
    padding: 0 18px;
    border-radius: 999px;
    background: var(--blue);
    color: #fff;
    border: 0;
  }
  .logo {
    font: 600 14px/17px var(--font-alt);
  }
  .header__main { display: none; }
  .header__actions { display: contents; }
  .header__proof { display: none; }
  .header__actions .btn--orange {
    display: inline-block;
    margin-left: auto;
    width: fit-content;
    min-height: 32px;
    padding: 8px 14px;
    border-radius: 999px;
    font: 600 13px/15px var(--font);
  }
  .header__actions .messengers { display: none; }
  .label--desktop { display: none; }
  .label--mobile { display: inline; }
  .burger {
    display: grid;
    width: 23px;
    height: 14px;
    border: 0;
    border-radius: 0;
    background: transparent;
    padding: 0;
    flex: 0 0 auto;
    align-content: space-between;
  }
  .burger span { width: 23px; height: 2px; margin: 0; background: #fff; border-radius: 2px; }
  .menu-open { overflow: hidden; }

  .drawer-overlay {
    display: block;
    position: fixed;
    inset: 0;
    z-index: 60;
    background: rgba(8, 36, 64, .45);
    opacity: 0;
    visibility: hidden;
    transition: opacity .25s ease, visibility .25s ease;
  }
  .menu-open .drawer-overlay { opacity: 1; visibility: visible; }

  .drawer {
    display: flex;
    flex-direction: column;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 70;
    width: min(360px, 86vw);
    padding: 18px 20px 24px;
    background: #fff;
    box-shadow: -18px 0 45px rgba(0, 105, 190, .16);
    overflow-y: auto;
    transform: translateX(100%);
    transition: transform .28s ease;
  }
  .menu-open .drawer { transform: translateX(0); }

  .drawer__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding-bottom: 14px;
    margin-bottom: 6px;
    border-bottom: 1px solid var(--line);
  }
  .drawer__brand { font: 600 22px/26px var(--font-alt); color: var(--blue); }
  .drawer__close {
    position: relative;
    width: 38px;
    height: 38px;
    flex: 0 0 auto;
    border: 0;
    border-radius: 50%;
    background: var(--blue-soft);
    cursor: pointer;
  }
  .drawer__close span {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 18px;
    height: 2px;
    border-radius: 2px;
    background: var(--blue);
  }
  .drawer__close span:first-child { transform: translate(-50%, -50%) rotate(45deg); }
  .drawer__close span:last-child { transform: translate(-50%, -50%) rotate(-45deg); }

  .drawer__nav { display: flex; flex-direction: column; }
  .drawer__link,
  .drawer__toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    width: 100%;
    padding: 14px 4px;
    border: 0;
    border-bottom: 1px solid var(--blue-soft);
    background: transparent;
    color: var(--heading);
    font: 600 17px/20px var(--font);
    text-align: left;
    cursor: pointer;
  }
  .drawer__chevron {
    width: 9px;
    height: 9px;
    flex: 0 0 auto;
    margin-right: 4px;
    border-right: 2px solid var(--blue);
    border-bottom: 2px solid var(--blue);
    transform: rotate(45deg);
    transition: transform .22s ease;
  }
  .drawer__item.is-open .drawer__chevron { transform: rotate(-135deg); }
  .drawer__sub {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows .26s ease;
  }
  .drawer__item.is-open .drawer__sub { grid-template-rows: 1fr; }
  .drawer__sub-inner {
    display: flex;
    flex-direction: column;
    min-height: 0;
    overflow: hidden;
  }
  .drawer__sub-inner a {
    padding: 10px 4px 10px 16px;
    color: var(--muted);
    font: 500 15px/18px var(--font);
  }
  .drawer__sub-inner a:first-child { padding-top: 14px; }
  .drawer__sub-inner a:last-child { padding-bottom: 16px; }
  .drawer__sub-inner a:hover { color: var(--blue); }

  .drawer__foot {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
    margin-top: auto;
    padding-top: 20px;
  }
  .drawer__phone { font: 600 18px/20px var(--font); color: var(--heading); }
  .drawer__foot .messengers { display: flex; }
  .drawer__foot .btn { width: 100%; text-align: center; }
  .drawer__foot .lang-switcher { margin-top: 2px; }
  .drawer__foot .city-switcher { width: 100%; }
  .drawer__foot .city-switcher__toggle { font-size: 16px; }
  .drawer__foot .city-switcher__menu { position: static; box-shadow: none; padding: 6px 0 0; min-width: 0; }
}

@media (min-width: 801px) and (max-width: 980px) {
  .hero.shell {
    width: min(940px, calc(100vw - 40px));
  }
  .hero {
    grid-template-columns: minmax(0, 59fr) minmax(0, 41fr);
    gap: 0;
    overflow: hidden;
    border-radius: 28px;
  }
  .hero__panel,
  .hero__photo {
    width: auto;
    height: 560px;
    min-height: 560px;
    clip-path: none;
  }
  .hero__panel {
    padding: 34px 36px 36px;
    border-radius: 28px 0 0 28px;
  }
  .hero__photo {
    margin-left: 0;
    border-radius: 0 28px 28px 0;
  }
  .hero__panel h1 {
    max-width: 500px;
    font-size: 40px;
    line-height: 42px;
  }
  .hero__panel p {
    max-width: 470px;
    font-size: 17px;
    line-height: 20px;
  }
  .hero__features {
    max-width: 470px;
    gap: 18px 22px;
    font-size: 16px;
    line-height: 18px;
  }
  .hero__features span {
    grid-template-columns: 40px 1fr;
    gap: 12px;
  }
  .hero__feature-icon {
    width: 40px;
    height: 40px;
  }
  .hero__feature-icon svg {
    width: 22px;
    height: 22px;
  }
  .hero__buttons {
    max-width: 470px;
    gap: 12px;
    margin-top: 34px;
  }
  .hero__buttons .btn {
    min-height: 46px;
    padding-inline: 16px;
    font-size: 13px;
    line-height: 15px;
  }
}

@media (min-width: 801px) and (max-width: 870px) {
  .hero__panel.blue-surface h1 {
    font-size: 34px;
    line-height: 37px;
  }
}

@media (max-width: 800px) {
  .hero {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
    height: auto;
    overflow: hidden;
    border-radius: 28px;
    background: var(--blue);
  }
  .hero__panel, .hero__photo { min-height: auto; }
  .hero__panel {
    position: relative;
    left: auto;
    top: auto;
    width: auto;
    height: auto;
    padding: 34px 24px 0;
    clip-path: none;
    -webkit-mask-image: none;
    mask-image: none;
    order: 1;
    z-index: 2;
    border-radius: 28px;
    align-items: flex-start;
    text-align: left;
  }
  .hero__panel h1 {
    max-width: 680px;
    font-size: 42px;
    line-height: 44px;
  }
  .hero__panel p {
    max-width: 640px;
    font-size: 18px;
    line-height: 21px;
  }
  .hero__features {
    max-width: 680px;
    margin-inline: auto;
    gap: 22px 34px;
    font-size: 18px;
    line-height: 20px;
  }
  .hero__features span {
    grid-template-columns: 48px 1fr;
    gap: 14px;
  }
  .hero__feature-icon {
    width: 48px;
    height: 48px;
  }
  .hero__feature-icon svg {
    width: 26px;
    height: 26px;
  }
  .hero__buttons {
    width: min(760px, 100%);
    max-width: none;
    gap: 16px;
    margin-top: 42px;
  }
  .hero__buttons .btn {
    min-height: 52px;
    padding: 16px 28px;
    font: 600 16px/18px var(--font);
  }
  .hero__buttons .btn--wide {
    min-height: 56px;
    font-size: 17px;
    line-height: 20px;
  }
  .hero > .hero__photo {
    display: none;
  }
  .hero__photo--mobile {
    align-self: stretch;
    display: block;
    position: relative;
    left: auto;
    top: auto;
    width: 100%;
    height: 100%;
    min-height: 430px;
    margin: 26px 0 0;
    padding: 10px;
    order: initial;
    clip-path: none;
    -webkit-mask-image: none;
    mask-image: none;
    border-radius: 0 0 22px 22px;
    background: transparent;
  }
  .hero__photo--mobile > img { width: 100%; height: 100%; object-fit: cover; border-radius: 18px; }
}

@media (max-width: 1079px) {
  .reviews__grid { grid-auto-columns: calc((100% - 16px) / 2); }
}

@media (max-width: 980px) {
  .stats, .benefits { grid-template-columns: repeat(2, 1fr); }
  .badges {
    left: 22px;
    right: 22px;
    bottom: 22px;
    grid-template-columns: 1fr;
  }
  .badges span {
    min-height: 58px;
    grid-template-columns: 42px 1fr;
    gap: 8px;
    padding: 8px;
  }
  .badges img {
    width: 42px;
    height: 42px;
  }
  .referral__box, .brand, .budget__top, .download, .cases, .footer { grid-template-columns: 1fr; }
  .brand {
    gap: 0;
  }
  .brand__line {
    -webkit-mask-image: linear-gradient(#000 0 0);
    -webkit-mask-position: 0 0;
    -webkit-mask-size: 100% 100%;
    mask-image: linear-gradient(#000 0 0);
    mask-position: 0 0;
    mask-size: 100% 100%;
  }
  .brand__info.blue-surface,
  .brand__tile.blue-surface {
    width: 100%;
    margin-left: 0;
  }
  .brand__tile.blue-surface {
    min-height: 180px;
  }
  .download {
    min-height: 340px;
    padding: 42px 36px 42px 320px;
    align-items: center;
  }
  .download > div {
    max-width: 430px;
    justify-self: end;
  }
  .download > img {
    top: 50%;
    left: 32px;
    width: 260px;
    height: 350px;
    transform: translateY(-50%) rotate(-10deg);
  }
  .chooser__grid, .popular__grid, .articles__grid, .faq__grid { grid-template-columns: 1fr; }
  .reviews__grid { grid-auto-columns: 100%; }
  .reviews__head { flex-direction: column; }
  .reviews__arrow { width: 42px; height: 42px; }
  .process__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; height: auto; max-width: none; margin-inline: auto; }
  .process::before { display: none; }
  .step,
  .step:nth-of-type(n) { position: relative; grid-column: auto; grid-row: auto; min-height: 250px; transform: none; }
  .step span { margin-bottom: 10px; }
  .step:nth-of-type(n) h3,
  .step:nth-of-type(n) p,
  .step:nth-of-type(n) .btn { transform: none; }
  .process .step .btn,
  .process .step.step--blue .btn,
  .process .step.step--orange .btn {
    width: 100%;
    align-self: stretch;
  }
  .step--blue, .step--orange { transform: none; }
}

@media (min-width: 940px) and (max-width: 980px) {
  .step,
  .step:nth-of-type(n) {
    margin-top: 10px;
  }
}

@media (min-width: 641px) and (max-width: 800px) {
  .hero.shell {
    width: min(940px, calc(100vw - 40px));
  }
  .hero__buttons {
    width: min(820px, 100%);
  }
}

@media (max-width: 800px) {
  .hero__panel h1,
  .hero__panel p {
    width: 100%;
    max-width: none;
  }
  .hero__photo--mobile {
    align-self: stretch;
    width: 100%;
    margin: 26px 0 0;
    padding: 10px;
  }
  .hero__photo--mobile > img {
    height: 100%;
  }
  .badges {
    left: 0;
    right: 0;
    bottom: 16px;
    width: min(390px, calc(100% - 28px));
    margin-inline: auto;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 6px;
  }
  .badges span {
    min-width: 0;
    min-height: 120px;
    grid-template-columns: 1fr;
    grid-template-rows: 42px auto auto;
    justify-items: center;
    align-content: start;
    gap: 4px;
    padding: 8px 6px;
    text-align: center;
    background: #fff;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    filter: none;
    font: 600 12px/14px var(--font);
    overflow: hidden;
  }
  .badges img {
    grid-row: auto;
    width: 42px;
    height: 42px;
  }
  .badges small {
    display: block;
    font: 400 11px/13px var(--font);
  }
  .badges b,
  .badges small {
    max-width: 100%;
    overflow-wrap: normal;
    word-break: normal;
    hyphens: auto;
  }
  .hero__buttons {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }
  .hero__buttons .btn {
    display: grid;
    place-items: center;
    min-height: 38px;
    padding: 10px 8px;
    white-space: normal;
    font: 600 13px/15px var(--font);
  }
  .hero__buttons .btn--wide {
    grid-column: 1 / -1;
    min-height: 56px;
    padding: 12px 16px;
    font: 600 14px/16px var(--font);
  }
}

@media (max-width: 940px) {
  .referral__text {
    min-height: auto;
    justify-content: flex-start;
    gap: 28px;
    padding: 40px 40px 16px;
  }
  .referral__text b {
    margin-top: 0;
  }
  .chooser__grid,
  .chooser__grid.is-active {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .process__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    max-width: none;
    gap: 16px;
  }
  .step,
  .step:nth-of-type(n) {
    min-height: 260px;
  }
  .step .btn,
  .step:nth-of-type(n) .btn {
    margin-top: 20px;
    align-self: flex-start;
  }
  .cases {
    align-items: stretch;
  }
  .cases__line {
    right: -420px;
  }
  .reviews__line {
    right: -360px;
  }
  .cases > div:first-child {
    display: contents;
  }
  .cases h2 {
    order: 1;
    margin-bottom: 0;
  }
  .cases p {
    order: 2;
    margin-bottom: 0;
  }
  .cases__gallery {
    order: 3;
    grid-template-columns: repeat(2, 1fr);
  }
  .cases .btn {
    order: 4;
    justify-self: center;
    width: 100%;
    margin-top: 8px;
    text-align: center;
  }
}

@media (max-width: 840px) {
  .download {
    display: block;
    height: 500px;
    min-height: 500px;
    padding: 34px 32px 230px;
  }
  .download > div {
    max-width: 520px;
    justify-self: auto;
  }
  .download h2,
  .download p {
    max-width: 520px;
  }
  .download__button {
    display: grid;
    margin-inline: auto;
  }
  .download > img {
    top: auto;
    bottom: -120px;
    left: 50%;
    width: 300px;
    height: 390px;
    transform: translateX(-50%) rotate(-10deg);
  }
}

@media (max-width: 640px) {
  body { font-size: 15px; line-height: 18px; }
  .section { padding: 0; }
  .stats,
  .referral,
  .chooser,
  .process,
  .trust,
  .budget,
  .articles,
  .faq,
  .footer { margin-top: 24px; }
  h1 { font: 600 25px/26px var(--font); }
  h2 { font: 600 25px/23px var(--font); }
  h3 { font: 600 18px/20px var(--font); }
  .header {
    padding-top: 8px;
  }
  .header__meta {
    width: min(100% - 28px, 720px);
    justify-content: flex-end;
    margin-bottom: 6px;
  }
  .header__meta .header__proof {
    display: none;
  }
  .header__meta .header__phone {
    font: 500 12px/14px var(--font);
  }
  .lang-switcher {
    gap: 3px;
  }
  .lang-switcher__item {
    min-width: 24px;
    height: 24px;
    font-size: 12px;
    line-height: 24px;
  }
  .header__bar {
    width: min(100% - 28px, 720px);
    min-height: 46px;
    padding: 0 14px 0 16px;
  }
  .header__actions .btn--orange {
    min-height: 30px;
    padding: 7px 12px;
    font-size: 12px;
    line-height: 14px;
  }
  .btn--fit {
    width: fit-content;
    max-width: 100%;
  }
  .hero {
    border-radius: 24px;
  }
  .hero__panel.blue-surface {
    padding: 26px 14px 0;
    border-radius: 24px;
  }
  .hero__panel h1 {
    margin-bottom: 16px;
    font: 600 30px/31px var(--font);
  }
  .hero__panel mark {
    padding: 1px 9px 5px;
    border-radius: 9px;
  }
  .hero__panel p {
    font: 400 16px/18px var(--font);
  }
  .hero__features {
    width: 100%;
    margin: 24px 0 0;
    gap: 16px 14px;
    font: 400 14px/16px var(--font);
  }
  .hero__feature-icon {
    width: 40px;
    height: 40px;
    border-radius: 12px;
  }
  .hero__feature-icon svg {
    width: 22px;
    height: 22px;
  }
  .hero__buttons {
    margin-top: 24px;
  }
  .hero__buttons .btn--wide {
    min-height: 46px;
  }
  .hero__photo--mobile {
    min-height: 360px;
    margin-top: 20px;
    padding: 8px;
  }
  .hero__photo--mobile > img {
    border-radius: 16px;
  }
  .logo { font-size: 17px; }
  .badges { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .badges span {
    min-height: 94px;
    padding: 8px 6px;
    gap: 4px;
    grid-template-columns: 1fr;
    justify-items: center;
    align-content: start;
    text-align: center;
    font: 600 12px/14px var(--font);
    grid-template-rows: 42px auto auto;
  }
  .badges img { grid-row: auto; width: 42px; height: 42px; object-fit: contain; }
  .badges small { display: block; font: 400 11px/13px var(--font); }
  .stats { grid-template-columns: repeat(2, 1fr); gap: 10px; }
  .stats__card { padding: 18px; border-radius: 12px; }
  .stats__icon { width: 52px; height: 52px; margin: 0 0 12px; }
  .stats__icon svg { width: 28px; height: 28px; }
  .stats__card strong { font: 600 18px/22px var(--font); }
  .stats__card > span:not(.stats__icon) { font: 400 14px/16px var(--font); }
  .referral { padding: 22px 14px; border-radius: 18px; }
  .referral h2, .budget h2 { font: 600 25px/23px var(--font); }
  .referral .lead, .chooser .lead, .process .lead, .budget .lead, .articles .lead { font: 400 15px/18px var(--font); }
  .referral__box { gap: 0; }
  .referral__text { display: contents; min-height: 0; padding: 0; }
  .referral__text h3 { order: 1; padding: 24px 24px 0; }
  .referral__text b { order: 3; padding: 0 24px 24px; text-align: center; }
  .form-card { order: 2; margin: 0 12px 18px; }
  .referral__text h3 { font: 600 18px/100% var(--font); }
  .referral__text b { font: 600 19px/18px var(--font); }
  .referral__text h3 span { white-space: normal; }
  .form-card { padding: 18px; }
  .form-card label { font: 500 14px/16px var(--font); }
  .form-card input, .form-card select, .form-card textarea { font: 400 14px/16px var(--font); }
  .form-card .btn { font: 600 14px/16px var(--font); }
  .form-card p { font: 400 13px/15px var(--font); }
  .chooser__panel, .reviews, .faq__box { padding: 18px; border-radius: 18px; }
  .kicker {
    margin-bottom: 16px;
  }
  .kicker span {
    min-width: 56px;
    height: 30px;
    font-size: 16px;
    line-height: 18px;
  }
  .kicker i {
    height: 30px;
  }
  .chooser h2 { font: 600 25px/23px var(--font); }
  .chooser h2 mark { font: 600 25px/23px var(--font); }
  .tabs { width: 100%; gap: 8px; margin-bottom: 22px; }
  .tabs__tab { width: 50%; height: 46px; font: 600 14px/16px var(--font); }
  .choice-card {
    min-height: auto;
    padding: 16px;
  }
  .choice-card h3 { font: 600 15px/17px var(--font); }
  .choice-card p { font: 400 14px/16px var(--font); }
  .chooser__cta { font: 600 15px/17px var(--font); }
  .popular { padding: 22px 18px; border-radius: 18px; }
  .popular h3 { font: 600 25px/23px var(--font); }
  .popular__grid article { grid-template-columns: 82px 1fr auto; min-height: 86px; }
  .popular__grid img { width: 82px; height: 58px; }
  .popular__grid strong { font: 600 15px/17px var(--font); }
  .process h2, .process h2 mark { font: 600 31px/30px var(--font); }
  .process .lead {
    max-width: 340px;
    font: 400 18px/21px var(--font);
  }
  .process__grid {
    grid-template-columns: 1fr;
    max-width: 520px;
  }
  .step .btn,
  .step:nth-of-type(n) .btn {
    width: 100%;
    align-self: stretch;
  }
  .step h3, .benefits__card h3 { font: 600 18px/20px var(--font); }
  .step p, .benefits__card p { font: 400 15px/18px var(--font); }
  .step span { font: 500 15px/18px var(--font); }
  .step .btn { font: 600 15px/18px var(--font); }
  .brand__info, .brand__tile, .budget__top { padding: 24px; border-radius: 18px; }
  .brand__info h2 { font: 600 30px/30px var(--font); }
  .brand__info p { font: 400 15px/18px var(--font); }
  .brand__tile { font: 600 28px/27px var(--font); }
  .cases { padding: 22px; border-radius: 18px; }
  .cases__line,
  .reviews__line {
    width: 720px;
    height: 817px;
  }
  .cases__line {
    right: -340px;
  }
  .reviews__line {
    right: -300px;
    top: -220px;
  }
  .cases h2, .reviews h2 { font: 600 25px/23px var(--font); }
  .cases p, .reviews > p { font: 400 15px/18px var(--font); }
  .cases__gallery { grid-template-columns: repeat(2, 1fr); }
  .cases__gallery img { min-height: 82px; }
  .reviews {
    display: flex;
    flex-direction: column;
  }
  .reviews__head {
    display: contents;
  }
  .reviews__intro {
    order: 1;
  }
  .reviews__alert {
    order: 2;
  }
  .reviews__grid {
    order: 3;
  }
  .reviews__nav {
    order: 4;
    justify-content: center;
    align-self: center;
    margin-top: 18px;
  }
  .reviews .center-btn {
    order: 5;
  }
  .reviews__card h3 { font: 500 14px/16px var(--font); }
  .reviews__card b { font: 400 14px/16px var(--font); }
  .reviews__card p { font: 400 15px/18px var(--font); }
  .review-modal { padding: 14px; }
  .review-modal__dialog { padding: 22px; border-radius: 16px; }
  .review-modal__dialog h2 { font: 600 25px/27px var(--font); }
  .review-modal__dialog p { font: 400 15px/18px var(--font); }
  .review-form input, .review-form textarea { font: 400 14px/16px var(--font); }
  .budget__list { padding: 24px; }
  .budget__top .budget__list::after { display: none; }
  .budget__list h3 { font: 600 16px/18px var(--font); }
  .budget__chip { font: 500 14px/16px var(--font); }
  .budget__note { font: 400 15px/18px var(--font); }
  .download { height: 470px; min-height: 470px; padding: 28px 24px 200px; border-radius: 18px; }
  .download h2 { font: 600 25px/23px var(--font); }
  .download p { font: 400 15px/18px var(--font); }
  .download .btn { font: 600 14px/16px var(--font); }
  .download > img { justify-self: center; }
  .articles__card { min-height: 350px; padding: 16px; }
  .articles__card > img { height: 170px; }
  .articles__card h3 { font: 600 16px/18px var(--font); }
  .articles__card p, .articles__card a { font: 400 15px/18px var(--font); }
  .articles__card p { -webkit-line-clamp: 3; }
  .articles__card a { font-weight: 600; }
  .faq__box h2 { font: 600 25px/23px var(--font); }
  .faq__box > p { font: 400 15px/18px var(--font); }
  .faq__question { height: auto; min-height: 54px; grid-template-columns: 38px 1fr auto; padding: 10px 12px; gap: 10px; font: 600 15px/18px var(--font); }
  .faq__icon { width: 34px; height: 34px; }
  .faq__icon svg { width: 18px; height: 18px; }
  .faq__answer p { font: 400 15px/18px var(--font); }
  .faq__answer p { padding: 0 12px 16px 64px; }
  .footer { padding: 28px 24px; border-radius: 18px 18px 0 0; }
  .footer .logo { font: 600 19px/22px var(--font); }
  .footer p, .footer a, .footer__cols a, .footer__cols h3 { font: 400 15px/18px var(--font); }
  .footer__cols h3 { font-weight: 600; }
  .footer strong { font: 600 15px/18px var(--font); }
  .footer small { font: 400 13px/15px var(--font); }
  .footer__cols { grid-template-columns: 1fr 1fr; gap: 24px; }
}

@media (max-width: 550px) {
  .hero__panel.blue-surface {
    padding: 26px 14px 0;
  }
  .badges {
    width: min(330px, calc(100% - 24px));
    gap: 5px;
  }
  .badges span {
    min-height: 102px;
    grid-template-rows: 34px auto auto;
    padding: 7px 5px;
    gap: 3px;
    font: 600 10px/12px var(--font);
  }
  .badges img {
    width: 34px;
    height: 34px;
  }
  .badges small {
    font: 400 9px/11px var(--font);
  }
  .hero__features span {
    grid-template-columns: 1fr;
    justify-items: center;
    align-content: start;
    gap: 6px;
    text-align: center;
  }
}

@media (max-width: 480px) {
  .benefits {
    grid-template-columns: 1fr;
  }
  .benefits__card:nth-child(2n) {
    transform: none;
  }
  .chooser__grid,
  .chooser__grid.is-active {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 380px) {
  .hero__panel h1 {
    font-size: 28px;
    line-height: 29px;
  }
  .hero__panel p {
    font-size: 15px;
    line-height: 17px;
  }
  .hero__features {
    font-size: 13px;
    line-height: 15px;
  }
  .hero__photo--mobile {
    min-height: 340px;
  }
  .header__actions .btn--orange {
    white-space: normal;
  }
  .referral__text h3 {
    font-size: 17px;
    line-height: 18px;
  }
}

/* ===== Mobile/tablet polish ===== */
html,
body {
  overflow-x: hidden;
}

@media (min-width: 801px) and (max-width: 1100px) {
  .hero__panel {
    padding-left: clamp(32px, 4vw, 48px);
    padding-right: clamp(32px, 4vw, 48px);
  }

  .hero__panel h1 {
    font-size: clamp(31px, 3.45vw, 34px);
    line-height: clamp(33px, 3.65vw, 36px);
  }

  .hero__panel p {
    max-width: 440px;
    font-size: 16px;
    line-height: 19px;
  }

  .hero__features,
  .hero__buttons {
    max-width: 450px;
  }

  .badges {
    left: 22px;
    right: 22px;
    bottom: 22px;
  }
}

@media (min-width: 641px) and (max-width: 800px) {
  .hero__panel.blue-surface {
    padding: 36px 28px 28px;
  }

  .hero__features {
    width: 100%;
  }

  .hero__photo--mobile {
    min-height: 0;
    height: auto;
    aspect-ratio: 16 / 10;
    margin-top: 28px;
  }

  .hero__photo--mobile > img {
    height: 100%;
  }

  .badges {
    width: min(560px, calc(100% - 48px));
  }

  .stats__card {
    min-height: 220px;
  }

  .referral,
  .chooser__panel,
  .popular,
  .brand__info,
  .brand__tile,
  .budget__top,
  .reviews,
  .faq__box,
  .footer {
    border-radius: 24px;
  }
}

@media (max-width: 640px) {
  .shell {
    width: min(100% - 28px, 520px);
  }

  .header__bar {
    gap: 8px;
  }

  .header__actions .btn--orange {
    flex: 0 1 auto;
    max-width: 170px;
  }

  .hero__panel.blue-surface {
    padding: 28px 14px 14px;
  }

  .hero__panel h1 {
    max-width: 100%;
    text-wrap: balance;
  }

  .hero__panel p {
    text-wrap: pretty;
  }

  .hero__features {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;
  }

  .hero__features span {
    min-width: 0;
  }

  .hero__photo--mobile {
    min-height: 0;
    height: auto;
    aspect-ratio: 1 / 1.05;
    margin-top: 22px;
  }

  .hero__photo--mobile > img {
    height: 100%;
    object-position: center top;
  }

  .badges {
    bottom: 14px;
  }

  .stats__card {
    min-height: 140px;
  }

  .referral__box {
    border-radius: 20px;
    overflow: hidden;
  }

  .form-card {
    border-radius: 20px;
  }

  .form-card input,
  .form-card select,
  .form-card textarea,
  .review-form input,
  .review-form textarea {
    min-height: 48px;
  }

  .choice-card,
  .popular__grid article,
  .articles__card,
  .reviews__card,
  .faq__item {
    border-radius: 14px;
  }

  .choice-card--wide {
    align-items: flex-start;
    padding-right: 54px;
  }

  .popular__grid article {
    padding: 12px 46px 12px 12px;
  }

  .process h2 {
    max-width: 360px;
  }

  .step,
  .step:nth-of-type(n) {
    min-height: auto;
    padding: 22px;
  }

  .benefits {
    gap: 12px;
  }

  .benefits__card {
    min-height: auto;
    gap: 24px;
  }

  .cases__gallery img {
    object-fit: cover;
  }

  .reviews__title-ray {
    right: -20px;
    top: -14px;
  }

  .budget__top {
    gap: 24px;
  }

  .budget__note {
    margin-top: 32px;
    transform: rotate(-2deg);
  }

  .budget__note-paper {
    padding: 22px;
  }

  .budget__list > div {
    margin-bottom: 28px;
  }

  .budget__chip {
    min-height: 40px;
    padding: 8px 14px;
  }

  .download {
    height: auto;
    min-height: 0;
    padding-bottom: 250px;
  }

  .download__button {
    width: 100%;
    min-width: 0;
  }

  .download > img {
    bottom: -92px;
    width: min(280px, 76vw);
    height: 360px;
  }

  .articles__grid {
    margin: 28px 0;
  }

  .articles__card {
    min-height: auto;
  }

  .articles__card > img {
    margin-bottom: 18px;
  }

  .faq__grid {
    gap: 8px;
    margin-top: 28px;
  }

  .footer {
    gap: 28px;
  }

  .footer__cols {
    gap: 20px 18px;
  }
}

@media (max-width: 480px) {
  .header__meta {
    min-height: 24px;
  }

  .hero__panel h1 {
    font-size: 29px;
    line-height: 31px;
  }

  .hero__buttons {
    grid-template-columns: 1fr;
  }

  .hero__buttons .btn,
  .hero__buttons .btn--wide {
    min-height: 46px;
  }

  .badges {
    width: min(340px, calc(100% - 24px));
  }

  .stats {
    grid-template-columns: 1fr 1fr;
  }

  .tabs {
    padding: 3px;
    border-radius: 999px;
    background: rgba(255,255,255,.18);
  }

  .tabs__tab {
    height: 42px;
    font-size: 13px;
    line-height: 15px;
  }

  .popular__grid article {
    grid-template-columns: 72px minmax(0, 1fr);
  }

  .popular__grid img {
    width: 72px;
    height: 54px;
  }

  .cases__gallery {
    grid-template-columns: 1fr;
  }

  .footer__cols {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 420px) {
  .header__actions .btn--orange {
    padding-inline: 10px;
    font-size: 11px;
  }

  .hero__features {
    gap: 14px 10px;
  }

  .hero__features span {
    font-size: 13px;
    line-height: 15px;
  }

  .hero__photo--mobile {
    aspect-ratio: 1 / 1.08;
  }

  .badges span {
    min-height: 94px;
  }

  .download {
    padding-inline: 20px;
  }
}

/* ===== Страница "Обучение в Китае" ===== */
.china-hero { display: grid; grid-template-columns: minmax(0, 1.16fr) minmax(360px, .84fr); gap: 10px; align-items: stretch; }
.china-hero__content { min-height: 650px; padding: 52px; border-radius: var(--radius-lg); overflow: hidden; }
.china-hero__label { display: inline-flex; align-items: center; gap: 10px; min-height: 42px; padding: 6px 16px 6px 8px; margin-bottom: 26px; border-radius: 999px; background: rgba(255,255,255,.16); color: #fff; font: 600 16px/18px var(--font); }
.china-hero__label span { width: 30px; height: 30px; border-radius: 50%; overflow: hidden; background: #fff; }
.china-hero__label img { width: 100%; height: 100%; object-fit: cover; }
.china-hero__content h1 { max-width: 650px; margin-bottom: 20px; }
.china-hero__content p { max-width: 650px; color: #fff; font: 400 19px/23px var(--font); }
.china-hero__bullets { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; max-width: 690px; margin-top: 30px; }
.china-hero__bullets span { display: grid; grid-template-columns: 34px 1fr; gap: 10px; align-items: center; min-height: 62px; padding: 12px; border-radius: 14px; background: rgba(255,255,255,.13); color: #fff; font: 500 16px/18px var(--font); }
.china-hero__bullets i { width: 34px; height: 34px; border-radius: 50%; display: grid; place-items: center; background: #fff; color: var(--blue); }
.china-hero__bullets svg { width: 18px; height: 18px; }
.china-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 34px; max-width: 690px; }
.china-hero__actions .btn { min-width: 220px; }
.china-hero__media { position: relative; min-height: 650px; overflow: hidden; border-radius: var(--radius-lg); background: var(--blue-soft); }
.china-hero__media > img { display: block; width: 100%; height: 100%; object-fit: cover; image-rendering: auto; }
.china-hero__note { position: absolute; left: 24px; right: 24px; bottom: 24px; padding: 18px; border-radius: 18px; background: #fff; box-shadow: var(--shadow); }
.china-hero__note b { display: block; color: var(--heading); font: 600 20px/22px var(--font); }
.china-hero__note span { display: block; margin-top: 6px; color: var(--text); font: 400 16px/18px var(--font); }
.china-routes, .china-text-block, .china-universities, .china-process, .china-docs, .china-cost, .china-countries, .china-faq, .china-final { margin-top: 32px; }
.china-routes__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-top: 30px; }
.china-route-card { display: block; min-height: 240px; }
.china-text-block { display: grid; grid-template-columns: minmax(0, 1fr) 360px; gap: 24px; align-items: stretch; }
.china-text-block__main { padding: 42px; border-radius: var(--radius-lg); background: var(--blue-soft); }
.china-text-block__main p { font: 400 18px/23px var(--font); color: var(--text); }
.china-text-block__lead { margin-bottom: 28px; }
.china-text-block__points { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 28px; }
.china-text-block__points article { padding: 22px 0; border-top: 1px solid var(--line); }
.china-text-block__points h3 { margin-bottom: 10px; color: var(--heading); font: 600 22px/24px var(--font); }
.china-text-block__points p { font: 400 16px/20px var(--font); }
.china-text-block__aside { min-height: 360px; padding: 34px; border-radius: var(--radius-lg); }
.china-text-block__aside span { width: 58px; height: 58px; border-radius: 18px; display: grid; place-items: center; margin-top: auto; margin-bottom: 22px; background: rgba(255,255,255,.16); }
.china-text-block__aside svg { width: 34px; height: 34px; color: #fff; }
.china-text-block__aside b { color: #fff; font: 600 25px/27px var(--font); }
.china-text-block__aside p { margin-top: 16px; margin-bottom: 0; color: #fff; font: 400 17px/20px var(--font); }
.china-universities { display: grid; grid-template-columns: minmax(0, 1fr) 410px; gap: 34px; padding: 42px; border-radius: var(--radius-lg); overflow: hidden; }
.china-universities h2, .china-universities p { color: #fff; }
.china-universities p { font: 400 18px/22px var(--font); }
.china-universities .btn { margin-top: 12px; }
.china-universities img { width: 100%; height: 100%; min-height: 360px; border-radius: 22px; object-fit: cover; }
.china-process__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-top: 44px; }
.china-process__grid .step, .china-process__grid .step:nth-of-type(n) { grid-column: auto; grid-row: auto; min-height: 270px; transform: none; }
.china-process__grid .step:nth-of-type(2), .china-process__grid .step:nth-of-type(5) { background: var(--blue); border-color: transparent; color: #fff; }
.china-process__grid .step:nth-of-type(3) { background: var(--orange); border-color: transparent; color: #fff; }
.china-process__grid .step:nth-of-type(3) h3, .china-process__grid .step:nth-of-type(3) p { color: #fff; }
.china-docs { display: grid; grid-template-columns: minmax(0, .95fr) minmax(360px, 1.05fr); gap: 16px; }
.china-docs__content, .china-docs__list { padding: 42px; border-radius: var(--radius-lg); background: var(--blue-soft); }
.china-docs__content p { font: 400 18px/22px var(--font); }
.china-docs__list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; align-content: start; background: #fff; border: 1px solid var(--line); }
.china-docs__list h3 { grid-column: 1 / -1; margin-bottom: 8px; font: 600 25px/27px var(--font); color: var(--heading); }
.china-docs__list span { display: flex; align-items: center; gap: 10px; min-height: 54px; padding: 12px; border-radius: 12px; background: var(--blue-soft); font: 500 16px/18px var(--font); color: var(--text); }
.china-docs__list svg { width: 20px; height: 20px; color: var(--blue); }
.china-links { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 26px; }
.china-links a { display: inline-flex; align-items: center; min-height: 42px; padding: 10px 16px; border-radius: 999px; background: #fff; color: var(--blue); font: 600 15px/17px var(--font); }
.china-links--light a { background: rgba(255,255,255,.14); color: #fff; border: 1px solid rgba(255,255,255,.5); }
.china-cost { display: grid; grid-template-columns: minmax(0, 1fr) 420px; gap: 34px; padding: 42px; border-radius: var(--radius-lg); }
.china-cost h2, .china-cost p { color: #fff; }
.china-cost p { font: 400 18px/22px var(--font); }
.china-cost__cards { display: grid; gap: 10px; align-content: start; }
.china-cost__cards article { display: grid; grid-template-columns: 52px 1fr; align-items: center; gap: 14px; min-height: 86px; padding: 16px; border-radius: 16px; background: #fff; color: var(--text); }
.china-cost__cards span { width: 52px; height: 52px; border-radius: 16px; display: grid; place-items: center; background: var(--blue-soft); color: var(--blue); }
.china-cost__cards b { font: 600 20px/22px var(--font); color: var(--heading); }
.china-countries__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-top: 28px; }
.china-country-card { min-height: 150px; }
.china-final .referral__box { grid-template-columns: minmax(0, .9fr) minmax(420px, 1fr); }
.china-final .referral__text h2, .china-final .referral__text p { color: #fff; }
.china-final .referral__text h2 { font: 600 42px/39px var(--font); }
.china-final .referral__text p { max-width: 480px; font: 400 19px/22px var(--font); }

@media (max-width: 980px) {
  .china-hero, .china-text-block, .china-universities, .china-docs, .china-cost, .china-final .referral__box { grid-template-columns: 1fr; }
  .china-hero__content, .china-hero__media { min-height: auto; }
  .china-hero__media { aspect-ratio: 16 / 10; }
  .china-routes__grid, .china-process__grid, .china-countries__grid { grid-template-columns: 1fr; }
  .china-route-card, .china-country-card { min-height: 180px; }
  .china-text-block__aside { min-height: auto; }
  .china-universities img { min-height: 280px; }
  .china-cost__cards { max-width: none; }
}

@media (max-width: 640px) {
  .china-hero__content, .china-text-block__main, .china-text-block__aside, .china-universities, .china-docs__content, .china-docs__list, .china-cost { padding: 22px; border-radius: 18px; }
  .china-hero__content h1 { font: 600 31px/32px var(--font); }
  .china-hero__content p, .china-text-block__main p, .china-universities p, .china-docs__content p, .china-cost p, .china-final .referral__text p { font: 400 15px/18px var(--font); }
  .china-hero__bullets { grid-template-columns: 1fr; gap: 8px; }
  .china-hero__bullets span { min-height: 54px; font: 500 14px/16px var(--font); }
  .china-hero__actions { display: grid; grid-template-columns: 1fr; }
  .china-hero__actions .btn { width: 100%; min-width: 0; }
  .china-hero__media { aspect-ratio: 1 / 1; border-radius: 18px; }
  .china-hero__note { left: 12px; right: 12px; bottom: 12px; border-radius: 14px; }
  .china-text-block__aside b, .china-docs__list h3 { font: 600 20px/22px var(--font); }
  .china-process__grid .step, .china-process__grid .step:nth-of-type(n) { min-height: 220px; }
  .china-docs__list { grid-template-columns: 1fr; }
  .china-cost__cards article { min-height: 72px; grid-template-columns: 44px 1fr; }
  .china-cost__cards span { width: 44px; height: 44px; }
  .china-cost__cards b { font: 600 17px/19px var(--font); }
  .china-final .referral__text h2 { font: 600 25px/23px var(--font); }
  .china-text-block__lead { margin-bottom: 18px; }
  .china-text-block__points { grid-template-columns: 1fr; }
  .china-text-block__points article { padding: 16px 0; }
  .china-text-block__points h3 { font: 600 18px/20px var(--font); }
  .china-text-block__points p { font: 400 15px/18px var(--font); }
}

/* Улучшенная композиция страницы Китая */
.china-hero { gap: 12px; }
.china-hero__content { min-height: 620px; padding: 56px 52px 46px; }
.china-hero__content h1 { font: 600 52px/52px var(--font); }
.china-hero__content h1 mark { color: #fff; white-space: nowrap; }
.china-hero__content p { max-width: 640px; opacity: .96; }
.china-hero__media { min-height: 620px; }
.china-hero__media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(1,110,197,0) 45%, rgba(1,67,116,.34)); pointer-events: none; }
.china-hero__media > img { object-position: center; }
.china-hero__note { z-index: 1; display: grid; grid-template-columns: 46px 1fr; column-gap: 14px; align-items: center; }
.china-hero__note::before { content: ""; width: 46px; height: 46px; border-radius: 14px; background: var(--orange) url('../img/china_9dt8ldq5f0ek.svg') center / 30px 30px no-repeat; grid-row: 1 / span 2; }
.china-hero__note b, .china-hero__note span { min-width: 0; overflow-wrap: anywhere; }
.china-hero__bullets span { backdrop-filter: blur(6px); box-shadow: inset 0 0 0 1px rgba(255,255,255,.12); }
.china-routes { padding: 42px; border-radius: var(--radius-lg); background: var(--blue-soft); }
.china-routes h2 { max-width: 780px; }
.china-routes .lead { max-width: 720px; }
.china-routes__panel { position: relative; margin-top: 34px; padding: 42px; border-radius: var(--radius-lg); overflow: hidden; }
.china-routes__panel::before { content: ""; position: absolute; inset: auto -80px -130px auto; width: 340px; height: 340px; border-radius: 50%; background: rgba(255,255,255,.1); pointer-events: none; }
.china-routes__panel > * { position: relative; z-index: 1; }
.china-routes__grid { margin-top: 0; }
.china-route-card { min-height: 260px; padding: 26px; border: 1px solid rgba(1,110,197,.08); box-shadow: 0 18px 34px rgba(0, 53, 96, .12); transition: transform .18s ease, box-shadow .18s ease; }
.china-route-card:hover { transform: translateY(-4px); box-shadow: 0 24px 42px rgba(0, 53, 96, .18); }
.china-route-card .choice-card__icon { width: 52px; height: 52px; border-radius: 16px; }
.china-route-card h3 { margin-top: 16px; font: 600 22px/24px var(--font); color: var(--heading); }
.china-route-card p { max-width: 300px; font: 400 17px/20px var(--font); }
.china-route-card .card-arrow { top: 26px; right: 26px; color: var(--orange); }
.china-routes__cta { margin: 34px auto 0; }
.china-text-block__main { background: #fff; border: 1px solid var(--line); box-shadow: var(--shadow); }
.china-text-block__main h2 { max-width: 760px; }
.china-text-block__main p { max-width: 830px; }
.china-text-block__aside { box-shadow: var(--shadow); }
.china-universities { box-shadow: var(--shadow); }
.china-universities img { box-shadow: 0 18px 35px rgba(0, 48, 86, .18); }
.china-process__grid .step { box-shadow: 0 15px 30px rgba(0, 72, 130, .1); }
.china-docs__content { background: #fff; border: 1px solid var(--line); box-shadow: var(--shadow); }
.china-docs__list { box-shadow: var(--shadow); }
.china-cost { box-shadow: var(--shadow); }
.china-countries { padding: 42px; border-radius: var(--radius-lg); background: var(--blue-soft); }
.china-country-card { min-height: 180px; padding: 24px; box-shadow: 0 15px 30px rgba(0, 72, 130, .1); }
.china-final .referral__box { box-shadow: var(--shadow); }

@media (max-width: 980px) {
  .china-hero__content h1 { font: 600 42px/42px var(--font); }
  .china-routes, .china-countries { padding: 28px; }
  .china-routes__panel { padding: 28px; }
}

@media (max-width: 640px) {
  .china-hero__content { padding: 24px; }
  .china-hero__content h1 { font: 600 31px/32px var(--font); }
  .china-hero__content h1 mark { white-space: normal; }
  .china-routes, .china-countries { padding: 22px; border-radius: 18px; }
  .china-routes__panel { padding: 18px; border-radius: 18px; }
  .china-route-card { min-height: 210px; padding: 20px; }
  .china-route-card h3 { font: 600 18px/20px var(--font); }
  .china-route-card p { font: 400 15px/18px var(--font); }
}

@media (min-width: 981px) {
  .china-hero {
    grid-template-columns: 700px 500px;
    gap: 10px;
    align-items: stretch;
  }

  .china-hero__content {
    width: 700px;
    height: 760px;
    min-height: 760px;
    padding: 46px 56px 36px;
    border-radius: 36px;
    z-index: 2;
    clip-path: path('M 0,0 L 0,36 Q 0,0 36,0 L 664,0 Q 700,0 693.18,35.35 L 586.82,724 Q 580,760 544,760 L 36,760 Q 0,760 0,724 Z');
  }

  .china-hero__label {
    margin-bottom: 22px;
  }

  .china-hero__content h1 {
    max-width: 560px;
    margin-bottom: 16px;
    font-size: 44px;
    line-height: 44px;
  }

  .china-hero__content p {
    max-width: 560px;
    margin-bottom: 12px;
    font-size: 16px;
    line-height: 19px;
  }

  .china-hero__bullets {
    max-width: 540px;
    gap: 8px 10px;
    margin-top: 20px;
  }

  .china-hero__bullets span {
    min-height: 52px;
    padding: 9px 10px;
    grid-template-columns: 32px 1fr;
    font-size: 14px;
    line-height: 16px;
  }

  .china-hero__bullets i {
    width: 32px;
    height: 32px;
  }

  .china-hero__actions {
    max-width: 540px;
    margin-top: 22px;
  }

  .china-hero__actions .btn {
    min-height: 50px;
  }

  .china-hero__media {
    width: 600px;
    height: 760px;
    min-height: 760px;
    margin-left: -120px;
    border-radius: 36px;
    z-index: 1;
    clip-path: path('M 156,0 L 564,0 Q 600,0 600,36 L 600,724 Q 600,760 564,760 L 36,760 Q 0,760 6.82,724 L 113.18,35.35 Q 120,0 156,0 Z');
  }
}

@media (max-width: 980px) {
  .china-hero__content,
  .china-hero__media {
    width: auto;
    height: auto;
    margin-left: 0;
    clip-path: none;
  }
}
