/* ─── Fonts ─────────────────────────────────────────────────────────── */
@font-face { font-family: "Disket Mono"; font-weight: 400; src: url("fonts/Disket-Mono-Regular.ttf") format("truetype"); }
@font-face { font-family: "Disket Mono"; font-weight: 700; src: url("fonts/Disket-Mono-Bold.ttf") format("truetype"); }
@font-face { font-family: "Montserrat";  font-weight: 700; src: url("fonts/Montserrat-Bold.ttf") format("truetype"); }

@font-face { font-family: "Inter";       font-weight: 400; src: url("fonts/Inter-Regular.ttf") format("truetype"); }

/* ─── Tokens ────────────────────────────────────────────────────────── */
:root {
  --lime: #c3ff00;
  --lime-2: #cfff34;        /* окраска 3D-объектов в блоке проблем */
  --pink: #f73056;
  --ink: #0f141a;
  --white: #ffffff;
  --black: #000000;
  --s: 1;                 /* масштаб сцены, задаётся скриптом */
}

*, *::before, *::after { box-sizing: border-box; }
html, body { margin: 0; background: var(--white); }
body { overflow-x: hidden; }
a { color: inherit; text-decoration: none; }
img { display: block; }

/* Сцена 1920px, масштабируется целиком.
   Приём: делаем ширину/высоту сцены неизменными в терминах CSS,
   а через zoom (эмулируется scale + компенсация высоты) даём браузеру
   правильно посчитать высоту документа без «пустых полей» под контентом. */
.stage {
  width: 1920px;
  transform: scale(var(--s));
  transform-origin: 0 0;
}
html { --stage-h: calc(92px + 940px + 10px + 1561px + 10px + 1189px + 10px + 940px + 10px + 1226px + 10px + 868px + 176px); }
.stage { height: var(--stage-h); }
body { height: calc(var(--stage-h) * var(--s)); }

/* ─── Кнопки (UI kit) ──────────────────────────────────────────────── */
.btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 35px;
  overflow: hidden;
  white-space: nowrap;
  font: 700 30px/60px "Disket Mono", monospace;
  letter-spacing: -1.5px;
  text-transform: uppercase;
}
.btn > span { position: relative; }
.btn--lime {
  background: var(--lime);
  color: var(--black);
  box-shadow: 0 0 15px 5px rgba(195, 255, 0, .2);
}
.btn--lime::after {                       /* inner shadow поверх содержимого, как в Figma */
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  box-shadow: inset 0 0 30px 5px rgba(255, 255, 255, .6);
  pointer-events: none;
}
.btn--ghost {
  border: 1px solid rgba(255, 255, 255, .2);
  color: var(--lime);
}

/* ─── 128:112 Навигация ────────────────────────────────────────────── */
.nav {
  width: 1920px; height: 92px;
  display: flex; align-items: center; gap: 365px;
  padding: 16px 60px;
  background: var(--white);
}
.nav__logo {                               /* 128:113  281×60 */
  display: flex; align-items: center;
  padding: 11px 40px;
  border-radius: 35px;
  background: var(--ink);
  flex-shrink: 0;
}
.nav__logo-box { position: relative; display: block; width: 201px; height: 38px; }
.nav__logo-box img { position: absolute; left: 0; top: -15px; width: 201px; height: 53px; }

.nav__menu {                               /* 128:126  1148×60 */
  display: flex; align-items: center; gap: 60px;
  height: 60px;
  flex-shrink: 0;
}
.nav__link {
  font: 400 22px/normal "Disket Mono", monospace;
  color: var(--ink);
  white-space: nowrap;
}
.nav__link--bold { font-weight: 700; }
.nav__link-group { position: relative; display: inline-grid; place-items: start; line-height: 0; }
.nav__link-group > * { grid-area: 1 / 1; }
.nav__marker { position: relative; margin: 6.5px 0 0 1px; width: 243px; height: 13px; }  /* Line 15 */
.nav__link-group .nav__link { position: relative; z-index: 1; line-height: normal; }  /* текст поверх маркера, как в Figma */
.nav__cta { height: 60px; padding: 0 30px; }   /* 128:133  353×60 */

/* ─── 128:92 Hero ──────────────────────────────────────────────────── */
.hero {
  position: relative;
  isolation: isolate;                      /* blend-режимы детей считаются против чёрного фона hero */
  width: 1800px; height: 940px;
  margin: 0 60px;
  padding: 129px 120px;
  display: flex; flex-direction: column; align-items: flex-start; gap: 50px;
  background: var(--black);
  border-radius: 35px;
  overflow: hidden;
  box-shadow: 0 8px 12px 6px rgba(0, 0, 0, .15), 0 4px 4px 0 rgba(0, 0, 0, .3);
}

/* 128:93 image 9 */
.hero__bg {
  position: absolute; left: 0; top: 0;
  width: 1733.747px; height: 971px;
  display: flex; align-items: center; justify-content: center;
  pointer-events: none;
}
.hero__bg-rot { width: 971px; height: 1733.747px; transform: rotate(90deg); filter: blur(3px); flex: none; }
.hero__bg-rot img { width: 100%; height: 100%; object-fit: cover; opacity: .2; }

/* 128:94 */
.hero__head { position: relative; display: flex; flex-direction: column; align-items: flex-start; gap: 30px; }
.hero__line { position: relative; display: block; width: 147px; height: 0; }
.hero__line img { position: absolute; left: 0; top: -3px; width: 147px; height: 3px; }
.hero__title {
  margin: 0; width: 817px;
  font: 700 40px/40px "Montserrat", sans-serif;
  text-transform: uppercase;
  color: var(--white);
}

/* 128:97 */
.hero__lead {
  position: relative; margin: 0;
  font: 700 30px/30px "Disket Mono", monospace;
  letter-spacing: -1.5px;
  text-transform: uppercase;
  color: var(--lime);
  white-space: nowrap;
}

/* 128:98 */
.hero__offer { position: relative; display: flex; flex-direction: column; align-items: flex-start; gap: 60px; }
.hero__pitch {
  margin: 0; width: 878px;
  font: 700 30px/40px "Montserrat", sans-serif;
  text-transform: uppercase;
  color: var(--white);
}
.hero__actions { position: relative; width: 819px; height: 102px; }   /* 128:100 */
.hero__cta  { position: absolute; left: 0;     top: 0; padding: 20px 30px; }   /* 128:101  392×100 */
.hero__cta2 { position: absolute; left: 416px; top: 0; padding: 20px 30px; }   /* 128:103  403×102 */

/* 128:105 Frame 10670 — координаты детей относительно этого фрейма */
.hero__art {
  position: absolute; left: 613px; top: 14px;
  width: 1383.605px; height: 1243.854px;
  pointer-events: none;
}
.art__image {                              /* 128:109 image 37 */
  position: absolute; left: 441px; top: 0;
  width: 748px; height: 1496px;
  mix-blend-mode: difference;
}
.art__image img { width: 100%; height: 100%; object-fit: cover; }

.art__vector {                             /* 128:110 Vector 25 */
  position: absolute; left: 424px; bottom: 315.85px;
  width: 1264px; height: 1264px;
  display: flex; align-items: center; justify-content: center;
  mix-blend-mode: color;
}
.art__vector-rot { width: 1264px; height: 1264px; transform: rotate(180deg) scaleY(-1); flex: none; }
.art__vector-rot img { width: 1264px; height: 1264px; }

.art__rect {                               /* 128:111 Rectangle 48 */
  position: absolute; left: 336px; top: -228.38px;
  width: 958.403px; height: 1310.002px;
  display: flex; align-items: center; justify-content: center;
}
.art__rect-rot {
  width: 1310.588px; height: 350px;
  border-radius: 50px;
  transform: rotate(-120deg);
  flex: none;
  background-image: linear-gradient(186.51deg, rgba(217, 217, 217, .01) 8.51%, rgba(115, 115, 115, 0) 65.3%);
}

/* ─── 128:135 Секция «проблемы → решение» ──────────────────────────── */
.s2 {
  position: relative; isolation: isolate;
  width: 1800px; height: 1561px;
  margin: 10px 60px 0;
  padding: 0;                                    /* координаты детей — по системе Figma */
  background: var(--black);
  border-radius: 35px;
  overflow: hidden;
}

/* 128:136 image 10 — фон 1800×3212 сверху при y=-1115, opacity 0.1 */
.s2__bg {
  position: absolute; left: 0; top: -1115px;
  width: 1800px; height: 3212px;
  pointer-events: none;
}
.s2__bg img { width: 100%; height: 100%; object-fit: cover; opacity: .1; }

/* 128:137 заголовок 1301×130, x=249.5, y=60 */
.s2__head {
  position: absolute; left: 249.5px; top: 60px;
  width: 1301px; height: 130px;
  display: flex; flex-direction: column; align-items: center; gap: 10px;
  text-align: center; text-transform: uppercase;
}
.s2__title {                                     /* 128:138  1114×40, x=93.5 */
  margin: 0; width: 1114px;
  font: 700 40px/40px "Montserrat", sans-serif;
  color: var(--white);
}
.s2__subtitle {                                  /* 128:139  1301×80 */
  margin: 0; width: 1301px;
  font: 700 30px/40px "Disket Mono", monospace;
  letter-spacing: -1.5px;
  color: var(--lime);
  white-space: nowrap;
}
.s2__subtitle p { margin: 0; }

/* 128:140 Line 16 — розовый разделитель, x=826.5, y=250 (147×3) */
.s2__accent { position: absolute; left: 826.5px; top: 250px; width: 147px; height: 3px; }

/* 128:141 / 128:576 — строки карточек 1866×244 (внутри контейнера с overflow:hidden) */
.s2__row {
  position: absolute; left: -33px; width: 1866px; height: 244px;
  display: flex; align-items: center; gap: 30px;
}
.s2__row       { top: 310px; }                   /* 128:141 */
.s2__row--2    { top: 614px; }                   /* 128:576 */

/* карточка проблемы 602×244 */
.p-card {
  flex: 0 0 602px; height: 244px;
  display: flex; align-items: center; justify-content: center; gap: 60px;
  padding: 20px 30px;
  background: var(--ink);
  border: 1px solid rgba(255, 255, 255, .2);
  border-radius: 35px;
  overflow: hidden;
  box-shadow: 0 4px 8px 3px rgba(0, 0, 0, .15), 0 1px 3px rgba(0, 0, 0, .3);
}
.p-card__icon { display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.p-card__text { width: 300px; display: flex; flex-direction: column; gap: 10px; color: var(--white); }
.p-card__title {
  margin: 0; width: 100%;
  font: 700 25px/normal "Disket Mono", monospace;
  letter-spacing: -1.25px;
  text-transform: uppercase;
}
.p-card__body {
  margin: 0; width: 100%;
  font: 400 22px/normal "Inter", sans-serif;
  letter-spacing: -1.1px;
}

/* 3D-объект: базовое изображение + маска цветом через mix-blend-mode: hard-light */
.obj {
  position: relative; width: 180px; height: 180px;
  background: var(--obj) center/cover no-repeat;
}
.obj::after {                                    /* mask layer, повторяет прозрачность маски */
  content: "";
  position: absolute; inset: 0;
  -webkit-mask: var(--mask) center/cover no-repeat;
          mask: var(--mask) center/cover no-repeat;
  mix-blend-mode: hard-light;
}
.obj--lime::after { background: var(--lime-2); }
.obj--pink::after { background: var(--pink);   }

/* 128:1010 Frame 10692 — «решение», 1800×643, y=918 */
.s2__solution {
  position: absolute; left: 0; top: 918px;
  width: 1800px; height: 643px;
  padding: 60px 30px;
  display: flex; flex-direction: column; align-items: center; gap: 30px;
  background: var(--ink);
  border: 1px solid rgba(255, 255, 255, .2);
  border-radius: 35px;
  filter: drop-shadow(0 4px 4px rgba(0, 0, 0, .15)) drop-shadow(0 1px 1.5px rgba(0, 0, 0, .3));
  box-sizing: border-box;
}
.sol__head {                                     /* 128:1011  1280×150 */
  display: flex; flex-direction: column; align-items: center; gap: 10px;
  text-align: center; text-transform: uppercase; white-space: nowrap;
}
.sol__title {
  margin: 0;
  font: 700 40px/40px "Montserrat", sans-serif;
  color: var(--white);
}
.sol__flow {
  margin: 0;
  font: 700 30px/60px "Disket Mono", monospace;
  letter-spacing: -1.5px;
  color: var(--lime);
}
.sol__accent { width: 147px; height: 3px; }

/* 128:1015 Frame 10679 — ряд из 5 шагов + 4 стрелок, 1738×311 (px 60/30) */
.sol__steps {
  width: 100%;
  display: flex; align-items: center; justify-content: center; gap: 30px;
  padding: 30px 60px;
  background: var(--black);
  border: 1px solid rgba(255, 255, 255, .2);
  border-radius: 35px;
  box-sizing: border-box;
  overflow: hidden;
}
.step {
  flex: 0 0 235.2px; min-width: 0;             /* фикс. ширина как в Figma */
  display: flex; flex-direction: column; align-items: flex-start; justify-content: center; gap: 10px;
  color: var(--white); text-align: left;
}
.step__title {
  margin: 0; width: 100%;
  font: 700 22px/normal "Disket Mono", monospace;
  letter-spacing: -1.1px;
  text-transform: uppercase;
}
.step__body {
  margin: 0; width: 100%;
  font: 400 22px/normal "Inter", sans-serif;
  letter-spacing: -1.1px;
}
.step__arrow { flex-shrink: 0; width: 50px; height: 11.547px; display: block; }

/* ─── 128:1035 Блок «пилот» ────────────────────────────────────────── */
.s3 {
  position: relative;
  width: 1800px; height: 1189px;
  margin: 10px 60px 0;
  background: var(--white);
  overflow: hidden;
}

/* 128:1040 верхний белый пилл-заголовок 733×149, x=533.5, y=60 */
.s3__badge {
  position: absolute; left: 533.5px; top: 60px;
  width: 733px; height: 149px;
  padding: 30px 120px;
  display: flex; flex-direction: column; align-items: center; gap: 10px;
  background: var(--white);
  border-radius: 35px;
  text-align: center; text-transform: uppercase;
  box-sizing: border-box;
}
.s3__badge-title {
  margin: 0;
  font: 700 40px/40px "Montserrat", sans-serif;
  color: var(--ink);
}
.s3__badge-sub {
  margin: 0;
  font: 700 30px/60px "Disket Mono", monospace;
  letter-spacing: -1.5px;
  color: var(--pink);
}

/* 128:1043 центральная розовая линия под пиллом */
.s3__accent { position: absolute; left: 826.5px; top: 228px; width: 147px; height: 3px; }

/* 128:1044 двухколоночный контейнер, y=269, 1800×920 */
.s3__cols {
  position: absolute; left: 0; top: 269px;
  width: 1800px; height: 920px;
  display: flex; align-items: flex-start;
}

/* левая колонка 895px */
.s3__left       { width: 895px; padding-left: 120px; box-sizing: border-box; padding-top: 200px; }
.s3__left-inner { display: flex; flex-direction: column; gap: 30px; align-items: flex-start; width: 702px; }
.s3__left-accent { width: 147px; height: 3px; }
.s3__lead {
  margin: 0; width: 100%;
  font: 700 30px/40px "Montserrat", sans-serif;
  text-transform: uppercase;
  color: var(--ink);
}
.s3__lead .pink { color: var(--pink); }
.s3__sub {
  margin: 0; width: 100%;
  font: 700 20px/30px "Montserrat", sans-serif;
  text-transform: uppercase;
  color: var(--ink);
}
.s3__cta { height: 100px; padding: 20px 30px; }

.s3__promise { display: flex; align-items: center; gap: 10px; width: 100%; }
.s3__promise-icon { width: 90px; height: 90px; }
.s3__promise-text { flex: 1; display: flex; flex-direction: column; gap: 10px; color: var(--black); }
.s3__promise-title {
  margin: 0;
  font: 700 22px/normal "Inter", sans-serif; letter-spacing: -1.1px;
}
.s3__promise-sub {
  margin: 0;
  font: 400 22px/normal "Inter", sans-serif; letter-spacing: -1.1px;
}

/* правая колонка 895px, x=905, y=60 внутри s3__cols → offset top */
.s3__right {
  width: 895px; padding-right: 120px; padding-top: 60px;
  box-sizing: border-box;
  display: flex; flex-direction: column; gap: 30px;
}

/* 128:1058 горизонтальная лента шагов 775×67 (dark rounded pill) */
.s3__strip {
  width: 100%; height: 67px;
  display: flex; align-items: center; justify-content: center; gap: 30px;
  padding: 10px 60px;
  background: var(--ink);
  border: 1px solid rgba(255, 255, 255, .2);
  border-radius: 35px;
  box-sizing: border-box;
}
.s3__arrow { width: 50px; height: 11.547px; flex-shrink: 0; }

/* пилл с числом */
.pill {
  width: 45px; height: 45px;
  display: inline-flex; align-items: center; justify-content: center;
  background: var(--white);
  border-radius: 50px;
  color: var(--black);
  font: 700 22px/1 "Disket Mono", monospace;
  letter-spacing: -1.1px;
  flex-shrink: 0;
}
.pill--lime { background: var(--lime); }

/* 128:1073 сетка карточек */
.s3__grid { width: 100%; display: flex; flex-direction: column; gap: 10px; }
.s3__row  { display: flex; gap: 10px; }

.s3-card {
  flex: 1 1 0; min-width: 0;
  display: flex; align-items: center; justify-content: center; gap: 30px;
  padding: 20px 30px; height: 281px;
  background: var(--ink);
  border: 1px solid rgba(255, 255, 255, .2);
  border-radius: 35px;
  box-shadow: 0 4px 8px 3px rgba(0, 0, 0, .15), 0 1px 3px rgba(0, 0, 0, .3);
  overflow: hidden;
  box-sizing: border-box;
}
.s3-card--wide { width: 100%; flex: 1 1 100%; height: 121px; }   /* 5-я карточка полной ширины */
.s3-card__num { flex-shrink: 0; }
.s3-card__body { flex: 1; display: flex; flex-direction: column; gap: 10px; }
.s3-card__title {
  margin: 0; width: 100%;
  font: 700 22px/normal "Disket Mono", monospace; letter-spacing: -1.1px;
  color: var(--lime);
  text-transform: uppercase;
}
.s3-card__text {
  margin: 0; width: 100%;
  font: 400 18px/normal "Inter", sans-serif; letter-spacing: -0.9px;
  color: var(--white);
}

/* ─── 128:1111 «Формула эффекта» ───────────────────────────────────── */
.s4 {
  position: relative;
  width: 1800px; height: 940px;
  margin: 10px 60px 0;
}
.s4__card {
  position: relative; isolation: isolate;
  width: 100%; height: 100%;
  padding: 100px 120px;
  display: flex; align-items: center; gap: 60px;
  background: var(--black);
  border: 1px solid rgba(255, 255, 255, .2);
  border-radius: 35px;
  overflow: hidden;
  box-shadow: 0 8px 6px rgba(0, 0, 0, .15), 0 4px 2px rgba(0, 0, 0, .3);
  box-sizing: border-box;
}
.s4__bg {
  position: absolute; left: -1px; top: -162px;
  width: 1830px; height: 1146px;
  display: flex; align-items: center; justify-content: center;
  mix-blend-mode: screen;
  pointer-events: none; z-index: 0;
}
.s4__bg > img { width: 1146px; height: 1830px; transform: rotate(-90deg); opacity: .1; object-fit: cover; }

.s4__col { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; gap: 10px; position: relative; z-index: 1; }

/* левая: форма-значения */
.s4__form {
  padding: 30px 50px;
  background: var(--ink);
  border: 1px solid rgba(255, 255, 255, .2);
  border-radius: 35px;
  display: flex; flex-direction: column; gap: 10px;
}
.metric {
  width: 100%;
  display: flex; align-items: center; gap: 30px;
}
.metric__label {
  flex: 1 1 0; min-width: 0;
  font: 400 18px/30px "Disket Mono", monospace;
  color: var(--white);
  text-transform: uppercase;
}
.metric__value {
  flex: 1 1 0; min-width: 0;
  height: 50px; padding: 10px 20px;
  display: flex; align-items: center; justify-content: flex-end; gap: 20px;
  background: var(--black);
  border-radius: 35px;
}
.metric__num {
  width: 264px; text-align: center;
  font: 700 20px/30px "Inter", sans-serif;
  color: var(--white);
  text-transform: uppercase;
}
.metric__caret { width: 13px; height: 11px; transform: rotate(180deg); }

.s4__note {
  padding: 10px 50px;
  display: flex; flex-direction: column; align-items: center; gap: 100px;
}
.s4__note-text {
  margin: 0; width: 100%;
  font: 400 20px/30px "Inter", sans-serif;
  color: var(--white);
}
.s4__cta { width: 100%; height: 100px; padding: 20px 30px; }

/* правая: заголовок + 4 карточки */
.s4__head { padding: 10px 50px; display: flex; align-items: center; justify-content: center; }
.s4__head-title {
  margin: 0; width: 100%;
  font: 700 40px/40px "Montserrat", sans-serif;
  color: var(--white);
  text-transform: uppercase;
}
.s4-card {
  padding: 20px 30px;
  background: var(--ink);
  border: 1px solid rgba(255, 255, 255, .2);
  border-radius: 35px;
  display: flex; align-items: center; justify-content: center;
  box-shadow: 0 4px 8px 3px rgba(0, 0, 0, .15), 0 1px 3px rgba(0, 0, 0, .3);
  box-sizing: border-box;
}
.s4-card__body { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; gap: 10px; }
.s4-card__title {
  margin: 0; width: 100%;
  font: 700 22px/normal "Disket Mono", monospace; letter-spacing: -1.1px;
  color: var(--white);
}
.s4-card__value {
  margin: 0; width: 100%;
  font: 700 60px/40px "Disket Mono", monospace; letter-spacing: -3px;
  color: var(--lime);
  text-transform: uppercase;
}
.s4-card__sub {
  margin: 0; width: 100%;
  font: 400 18px/normal "Inter", sans-serif; letter-spacing: -0.9px;
  color: var(--white);
}

/* ─── 128:1185 «Эффект в цифрах» ───────────────────────────────────── */
.s5 {
  position: relative; isolation: isolate;
  width: 1800px; height: 1226px;
  margin: 10px 60px 0;
  background: var(--black);
  border-radius: 35px;
  overflow: hidden;
}
.s5__bg {
  position: absolute; inset: 0;
  mix-blend-mode: screen; pointer-events: none;
}
.s5__bg > img { width: 100%; height: 100%; object-fit: cover; opacity: .4; }

.s5__head {
  position: absolute; left: 491.5px; top: 60px;
  width: 817px; height: 80px;
  display: flex; align-items: center; justify-content: center;
}
.s5__title {
  margin: 0; width: 817px;
  font: 700 40px/40px "Montserrat", sans-serif;
  color: var(--white);
  text-align: center; text-transform: uppercase;
}
.s5__accent { position: absolute; left: 826.5px; top: 200px; width: 147px; height: 3px; }

/* ряды карточек по 3 */
.s5__row { position: absolute; left: 399px; width: 1002px; height: 423px; display: flex; align-items: center; gap: 30px; }
.s5__row--1 { top: 260px; }
.s5__row--2 { top: 743px; }

.s5-card {
  flex: 0 0 314px; height: 423px;
  padding: 20px 30px;
  display: flex; flex-direction: column; align-items: flex-start; justify-content: center; gap: 20px;
  background: var(--black);
  border: 1px solid rgba(255, 255, 255, .2);
  border-radius: 35px;
  overflow: hidden;
  box-shadow: 0 4px 8px 3px rgba(0, 0, 0, .15), 0 1px 3px rgba(0, 0, 0, .3);
  box-sizing: border-box;
}
.s5-card__icon { width: 130px; height: 130px; }
.s5-card__pct {
  margin: 0; width: 252px;
  font: 700 50px/40px "Disket Mono", monospace; letter-spacing: -2.5px;
  color: var(--lime);
  text-transform: uppercase;
}
.s5-card__text { display: flex; flex-direction: column; gap: 8px; width: 252px; }
.s5-card__head {
  margin: 0;
  font: 700 18px/normal "Disket Mono", monospace; letter-spacing: -0.9px;
  color: var(--white);
  text-transform: uppercase;
}
.s5-card__body {
  margin: 0;
  font: 400 18px/normal "Inter", sans-serif; letter-spacing: -0.9px;
  color: var(--white);
}

/* ─── 128:1273 CTA + форма ─────────────────────────────────────────── */
.s6 {
  position: relative; isolation: isolate;
  width: 1800px; height: 868px;
  margin: 10px 60px 0;
  background: var(--white);
  border-radius: 35px;
  overflow: hidden;
}
.s6__bg {
  position: absolute; inset: 0;
  pointer-events: none;
}
.s6__bg-image {
  position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);
  width: 2944px; height: 3784px; object-fit: cover;
  opacity: .4; mix-blend-mode: difference;
}
.s6__bg-vector {
  position: absolute;
  left: 300px; top: 100px;
  width: 800px; height: 668px;   /* уменьшено ~на 40% и вписано в блок */
  transform: rotate(90deg) scaleY(-1);
  transform-origin: center;
  opacity: .5;
}

/* два «затемнителя» — маскируют верхнюю часть вектора, как в Figma */
.s6__bg-rect1, .s6__bg-rect2 {
  position: absolute; top: -214px;
  width: 1178.295px; height: 1223.003px;
  display: flex; align-items: center; justify-content: center;
  pointer-events: none;
}
.s6__bg-rect1 { left: 764px; }
.s6__bg-rect2 { left: -56px; }
.s6__bg-rect1::before, .s6__bg-rect2::before {
  content: "";
  width: 1348.825px; height: 350px;
  border-radius: 50px;
  transform: rotate(46.81deg); flex: none;
  background-image: linear-gradient(186.33deg, rgba(217, 217, 217, .01) 8.51%, rgba(115, 115, 115, 0) 65.3%);
}

.s6__left {
  position: absolute; left: 202px; top: 129px;
  width: 817px; height: 610px;
  display: flex; flex-direction: column;
}
.s6__head { display: flex; flex-direction: column; gap: 30px; }
.s6__accent { width: 147px; height: 3px; }
.s6__title {
  margin: 0; width: 817px;
  font: 700 40px/40px "Montserrat", sans-serif;
  color: var(--ink);
  text-transform: uppercase;
}
.s6__lead {
  margin: 100px 0 0; width: 788px;
  font: 700 30px/40px "Disket Mono", monospace; letter-spacing: -1.5px;
  color: var(--ink);
  text-transform: uppercase;
}
.s6__note {
  margin: auto 0 0; width: 788px;
  font: 700 20px/40px "Montserrat", sans-serif; letter-spacing: -1px;
  color: var(--ink);
  text-transform: uppercase;
}

/* форма */
.s6__form {
  position: absolute; left: 1069px; top: 129px;
  width: 529px; height: 610px;
  padding: 60px 50px;
  display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 30px;
  background: var(--ink);
  border-radius: 35px;
  box-sizing: border-box;
}
.field { width: 429px; display: flex; flex-direction: column; gap: 5px; position: relative; }
.field::after { content: ""; position: absolute; left: 0; right: 0; bottom: -15px; height: 2px; background: rgba(255,255,255,.4); }
.field:last-of-type::after { display: none; }
.field__label {
  font: 400 22px/normal "Disket Mono", monospace;
  color: var(--white);
}
.field__input {
  width: 100%; height: 40px; padding: 8px 20px;
  border: 0; border-radius: 15px;
  background: transparent;
  color: var(--white);
  font: 400 20px/1 "Inter", sans-serif;
  outline: none;
}
.field__input::placeholder { color: rgba(255, 255, 255, .6); }
.s6__submit { height: 100px; padding: 20px 30px; width: 353px; }

/* ─── 128:1312 Footer ──────────────────────────────────────────────── */
.site-footer {
  width: 1920px; height: 176px;
  display: flex; align-items: center; gap: 20px;
  padding: 45px 226px;
  background: var(--white);
  box-sizing: border-box;
}
.site-footer__logo {
  display: flex; align-items: center;
  width: 281px; height: 86px;
  padding: 24px 40px;
  background: var(--ink); border-radius: 35px;
  flex-shrink: 0;
}
.site-footer__logo img { width: 201px; height: 38px; }
.site-footer__cols {
  flex: 1;
  height: 50px;
  display: flex; align-items: center; justify-content: flex-end; gap: 87px;
}
.site-footer__social {
  display: flex; align-items: center; gap: 16px;
}
.site-footer__label {
  font: 400 22px/normal "Disket Mono", monospace;
  color: var(--ink);
  margin-right: 8px;
}
.social {
  width: 50px; height: 50px;
  background: var(--ink);
  border-radius: 50%;
  flex-shrink: 0;
}
.site-footer__links {
  display: flex; align-items: center; gap: 32px;
  font: 400 22px/normal "Disket Mono", monospace;
  color: var(--ink);
}
.site-footer__policy { border-bottom: 1px solid rgba(15,20,26,.4); }
