/* ============================================================
   Мобильная версия — фрейм «2» 241:8 (375×19938), вкладка «Итог».
   1rem = 10px на макете 375: html { font-size: calc(100vw / 37.5) }.
   Отдельный DOM .mob (десктоп на инлайн-координатах — не переиспользуем).
   ============================================================ */

/* по умолчанию (десктоп) мобильный DOM спрятан */
.mob { display: none; }

@media (max-width: 767px) {
  html { font-size: calc(100vw / 37.5); }
  .page { display: none; }
  .mob { display: block; width: 37.5rem; margin: 0 auto; overflow: clip; position: relative; }
  /* аудиты: headless клампит окно к 500px — фиксируем rem и прижимаем макет влево,
     скриншот шириной 375 обрезает лишнее (html.static ставит main.js при ?static=1) */
  html.static { font-size: 10px; }
  html.static .mob { margin: 0; }

  /* ---------- M1: герой (0..1413) ---------- */
  .m-hero { position: relative; width: 37.5rem; height: 141.3rem; background: #fff; }
  .m-hero__bg { position: absolute; left: 0; top: 0; width: 37.5rem; height: 124.6rem; }
  .m-hero__title {
    position: absolute; left: 1.4rem; top: 10rem; width: 33.5rem;
    font-family: var(--f-head); font-weight: 700;
    font-size: 2.3rem; line-height: 3.2rem;
    text-transform: uppercase; color: var(--c-text); z-index: 2;
  }
  .m-hero__title .accent { color: var(--c-accent); }
  .m-hero__sub {
    position: absolute; left: 1.6rem; top: 34.6rem; width: 34.4rem;
    font-size: 1.6rem; line-height: 2.4rem; color: var(--c-text-body); z-index: 2;
  }
  .m-hero__tags { position: absolute; left: 0; top: 43.86rem; width: 100%; z-index: 2; }
  .m-chip {
    position: absolute; top: 0; height: 3.98rem;
    display: flex; align-items: center; justify-content: center;
    padding-top: 0.3rem; /* оптическая центровка Actay, как на десктопе */
    background: var(--c-tag-bg); border-radius: 4.4rem;
    font-family: var(--f-ui); font-size: 1.149rem; line-height: 2.369rem;
    text-transform: uppercase; color: #252016; white-space: nowrap;
  }
  .m-chip--small { height: 3.82rem; font-size: 1.105rem; line-height: 2.279rem; }
  .m-hero__cta {
    position: absolute; left: 1.6rem; top: 55.5rem;
    width: 30.81rem; height: 7.35rem;
    border-radius: 0.81rem; background: var(--grad-gold); z-index: 2;
  }
  .m-hero__cta span {
    font-family: var(--f-ui); font-size: 1.618rem; line-height: 2.225rem;
    text-transform: uppercase; color: #fff;
  }
  .m-hero__arrow { position: absolute; left: 23.94rem; top: 58.6rem; width: 11.65rem; height: 7.2rem; z-index: 2; }
  .m-hero__note {
    position: absolute; left: 1.7rem; top: 66.2rem; width: 31.5rem;
    font-size: 1.4rem; line-height: 1.8rem; color: var(--c-text-muted); z-index: 2;
  }
  .m-hero__note b { font-weight: 400; color: #363636; }

  /* стеклянная карточка-автограф (по нодам 241:30) */
  .m-hero__card {
    position: absolute; left: 1.57rem; top: 115.04rem;
    width: 29.53rem; height: 12.16rem;
    border-radius: 1.18rem;
    background: linear-gradient(199deg, rgba(255,255,255,.35) 10%, rgba(97,167,248,.35) 73%), #fff;
    box-shadow: 0 0.56rem 0.89rem rgba(133,133,133,.1), inset 0 0 0.75rem rgba(255,255,255,.6);
    z-index: 3;
  }
  .m-hero__card-blur {
    position: absolute; left: 2.54rem; top: 115.73rem;
    width: 27.58rem; height: 12.16rem;
    border-radius: 1.18rem;
    background: rgba(255,255,255,.3); backdrop-filter: blur(0.84rem);
    z-index: 2;
  }
  .m-hero__badge {
    position: absolute; left: 1.5rem; top: 114.9rem;
    width: 2.64rem; height: 2.64rem; border-radius: 50%;
    background: #157aee; box-shadow: 0 0.7rem 0.6rem rgba(215,215,215,.35);
    z-index: 4;
  }
  .m-hero__badge-user { position: absolute; left: 2.26rem; top: 115.66rem; width: 1.11rem; height: 1.18rem; z-index: 5; }
  .m-hero__sign {
    position: absolute; left: 4.42rem; top: 116.4rem; width: 22.6rem;
    font-family: var(--f-sign); font-size: 3.2rem; line-height: 6.04rem;
    color: #323232; white-space: nowrap; z-index: 4;
  }
  .m-hero__line1 {
    position: absolute; left: 4rem; top: 121.08rem; width: 25.4rem;
    font-size: 1.2rem; line-height: 1.95rem; color: var(--c-text-soft); z-index: 4;
  }
  .m-hero__line2 {
    position: absolute; left: 4rem; top: 123.03rem; width: 24.9rem;
    font-size: 1.4rem; line-height: 2.29rem; color: var(--c-text-soft); z-index: 4;
  }

  /* соцкнопки — золотые круги (241:42) */
  .m-hero__socials { position: absolute; left: 0; top: 128.67rem; width: 100%; z-index: 2; }
  .m-soc {
    position: absolute; top: 0;
    width: 5.16rem; height: 5.16rem; border-radius: 50%;
    background: #a89775;
    display: flex; align-items: center; justify-content: center;
    transition: transform .2s ease;
  }
  .m-soc:active { transform: scale(0.94); }

  /* ---------- M2: «Я работаю с компаниями» (1413..2919) ---------- */
  .m-s02 { position: relative; width: 37.5rem; height: 150.6rem; background: #fff; }
  .m-s02__quote { position: absolute; left: 26.6rem; top: -0.9rem; width: 10.9rem; height: 9.8rem; }
  .m-s02__title {
    position: absolute; left: 1.5rem; top: 0; width: 33.5rem;
    font-family: var(--f-head); font-weight: 700;
    font-size: 2.3rem; line-height: 3.2rem;
    text-transform: uppercase; color: var(--c-text); z-index: 2;
  }
  .m-s02__title .accent { color: var(--c-accent); }
  .m-s02__rocket { position: absolute; left: 0.35rem; top: 19.75rem; width: 5.4rem; height: 5.4rem; z-index: 2; }
  .m-s02__lead {
    position: absolute; left: 6.5rem; top: 20.2rem; width: 23.7rem;
    font-size: 1.6rem; line-height: 2.4rem; color: #000; z-index: 2;
  }
  .m-s02__card {
    position: absolute; left: 1.5rem;
    width: 34.5rem;
    background: #fff; border: 1px solid #ededed; border-radius: 2rem;
    box-shadow: 0 3rem 3.5rem rgba(202, 202, 202, .1);
    z-index: 2;
  }
  .m-s02__card img { position: absolute; }
  .m-s02__card p {
    position: absolute; left: 7.6rem; top: 2.5rem; width: 24.7rem;
    font-size: 1.4rem; line-height: 2.2rem; color: #2e2e2e;
  }
  .m-s02__photo { position: absolute; left: 0; top: 68.7rem; width: 37.5rem; height: 57rem; z-index: 1; }
  .m-s02__fade {
    position: absolute; left: 0; top: 68.7rem; width: 37.5rem; height: 9rem;
    background: linear-gradient(180deg, #fff 25%, rgba(255,255,255,0)); z-index: 1;
  }

  /* бегущие ряды логотипов */
  .m-logos {
    position: absolute; left: 0; width: 37.5rem; height: 12rem;
    overflow-x: clip; overflow-y: visible;
    z-index: 2;
  }
  .m-logos__track {
    display: flex; gap: 1.07rem; width: max-content;
    animation: logos-marquee 30s linear infinite;
  }
  .m-logos__track--rev { animation-direction: reverse; }
  html.static .m-logos__track { animation: none; }
  .m-lcard {
    flex: none;
    width: 13.62rem; height: 7.56rem;
    background: #fff; border: 1px solid #157aee; border-radius: 1.07rem;
    box-shadow: 0 2.14rem 2.5rem rgba(202, 202, 202, .1);
    display: flex; align-items: center; justify-content: center;
  }


  /* Доп. логотипы (репитер logos2) в нижней строке — вписываются в карточку автоматически */
  .m-lcard img.logo2 { max-width: 11rem; max-height: 4.6rem; width: auto; height: auto; }

  /* ---------- M3: «С какими проблемами я работаю» (2919..4177) ---------- */
  .m-s03 { position: relative; width: 37.5rem; height: 125.8rem; background: #fff; }
  .m-s03__title {
    position: absolute; left: 0.8rem; top: 0; width: 35.8rem;
    text-align: center;
    font-family: var(--f-head); font-weight: 700;
    font-size: 2.3rem; line-height: 3.2rem;
    text-transform: uppercase; color: var(--c-text);
  }
  .m-s03__sub {
    position: absolute; left: 2.6rem; top: 7.9rem; width: 33rem;
    text-align: center;
    font-size: 1.6rem; line-height: 2.4rem; color: #000;
  }
  .m-s03__card {
    position: absolute; left: 1.5rem;
    width: 34.5rem;
    background: #fff; outline: 1px solid #ededed; outline-offset: -1px; border-radius: 2.3rem;
    box-shadow: 0 3rem 3.5rem rgba(202, 202, 202, .1);
    overflow: hidden;
  }
  .m-s03__card--blue { background: #eef6ff; outline-color: #d4e2f3; }
  .m-s03__card img { position: absolute; }
  .m-s03__card h3 {
    position: absolute; left: 2.5rem; top: 8.1rem; width: 30.8rem;
    font-family: var(--f-body); font-weight: 700;
    font-size: 1.6rem; line-height: 2.4rem; color: #000;
  }
  .m-s03__card p {
    position: absolute; left: 2.5rem; width: 29.9rem;
    font-size: 1.4rem; line-height: 2.2rem; color: #2e2e2e;
  }

  /* M3t: ТРИЗ-блок «Помогаю ускорять продажи» (десктопная s04; в макете не было — поток) */
  .m-striz { position: relative; width: 37.5rem; background: #fff; padding: 5.6rem 0 0; }
  .m-striz__title {
    margin: 0 1.5rem;
    font-family: var(--f-head); font-weight: 700;
    font-size: 2.3rem; line-height: 3.2rem;
    text-transform: uppercase; color: var(--c-text);
  }
  .m-striz__title .accent { color: var(--c-accent); }
  .m-striz__sub { margin: 1.7rem 1.5rem 0; font-size: 1.6rem; line-height: 2.4rem; color: #000; }
  .m-striz__plate {
    display: flex; align-items: center; gap: 1.6rem;
    margin: 2.2rem 1.5rem 0; padding: 1.7rem 1.9rem;
    background: #eef6ff; border: 1px solid #d4e2f3; border-radius: 2rem;
    box-shadow: 0 3rem 3.5rem rgba(202,202,202,.1);
  }
  .m-striz__plate img { width: 3.9rem; height: 4.1rem; flex: 0 0 auto; }
  .m-striz__plate p { margin: 0; font-size: 1.5rem; line-height: 2.2rem; color: #000; }
  .m-striz__cta {
    display: flex; align-items: center; justify-content: center;
    margin: 2.4rem auto 0; width: 34.5rem; height: 7.6rem;
    border-radius: 0.84rem; background: var(--grad-gold);
  }
  .m-striz__cta span {
    font-family: var(--f-ui); font-size: 1.7rem; line-height: 2.3rem;
    text-transform: uppercase; color: #fff;
  }
  .m-striz__photo { display: block; width: 37.5rem; height: auto; margin-top: 3rem; }

  /* M3b: второй блок «С какими проблемами» — тот же вид, но поток (в макете блока не было, высоты авто) */
  .m-s03--flow { height: auto; padding: 5.6rem 0 2.6rem; }
  .m-s03--flow .m-s03__title { position: static; margin: 0 auto; }
  .m-s03--flow .m-s03__sub { position: static; width: 33rem; margin: 1.5rem auto 0; }
  .m-s03--flow .m-s03__card { position: static; height: auto; margin: 2.6rem auto 0; padding: 2.1rem 2.5rem 2.4rem; }
  .m-s03--flow .m-s03__card:first-of-type { margin-top: 2.9rem; }
  .m-s03--flow .m-s03__card img { position: static; display: block; }
  .m-s03--flow .m-s03__card h3 { position: static; width: auto; margin: 1.7rem 0 0; }
  .m-s03--flow .m-s03__card p { position: static; width: auto; margin: 0.9rem 0 0; }

  /* ---------- M4: синий блок «15-20 минут» (4177..5158) ---------- */
  .m-s04 { position: relative; width: 37.5rem; height: 98.1rem; }
  .m-s04__bg { position: absolute; left: 0; top: 0; width: 37.5rem; height: 98.1rem; }
  .m-s04__title {
    position: absolute; left: 2.4rem; top: 6.5rem; width: 29.7rem;
    font-family: var(--f-head); font-weight: 700;
    font-size: 2.3rem; line-height: 3.2rem;
    text-transform: uppercase; color: #fff; z-index: 2;
  }
  .m-s04__sub {
    position: absolute; left: 2.4rem; top: 24rem; width: 29.9rem;
    font-size: 1.6rem; line-height: 2.4rem; color: #fff; z-index: 2;
  }
  .m-s04__btn {
    position: absolute; left: 2.4rem; top: 35.7rem;
    width: 29.9rem; height: 7.7rem;
    border-radius: 0.84rem;
    background: linear-gradient(178deg, #fefefe, #e9e9e9);
    z-index: 2;
  }
  .m-s04__btn span {
    font-family: var(--f-ui); font-size: 1.7rem; line-height: 2.32rem;
    text-transform: uppercase; color: #272727;
  }
  .m-s04__note {
    position: absolute; left: 2.4rem; top: 46.7rem; width: 25.6rem;
    font-family: var(--f-ui);
    font-size: 1.4rem; line-height: 2rem; color: #fff; z-index: 2;
  }
  .m-s04__arrow { position: absolute; left: 24.3rem; top: 44.5rem; width: 11.7rem; height: 7.2rem; z-index: 2; }
  .m-s04__photo { position: absolute; left: 4.7rem; top: 56rem; width: 28.1rem; height: 28.1rem; z-index: 2; }

  /* стеклянная карточка на синем (241:241) */
  .m-s04__card {
    position: absolute; left: 2.5rem; top: 80.1rem;
    width: 29.5rem; height: 12.2rem;
    border-radius: 1.18rem;
    background: linear-gradient(199deg, rgba(255,255,255,.35) 10%, rgba(97,167,248,.35) 73%), #fff;
    box-shadow: 0 0.56rem 0.89rem rgba(133,133,133,.1), inset 0 0 0.75rem rgba(255,255,255,.6);
    z-index: 3;
  }
  .m-s04__card-blur {
    position: absolute; left: 3.4rem; top: 80.8rem;
    width: 27.6rem; height: 12.2rem;
    border-radius: 1.18rem;
    background: rgba(255,255,255,.3); backdrop-filter: blur(0.84rem);
    z-index: 2;
  }
  .m-s04__badge {
    position: absolute; left: 2.4rem; top: 80rem;
    width: 2.6rem; height: 2.6rem; border-radius: 50%;
    background: #157aee; box-shadow: 0 0.7rem 0.6rem rgba(0,0,0,.15);
    z-index: 4;
  }
  .m-s04__badge-user { position: absolute; left: 3.2rem; top: 80.8rem; width: 1.1rem; height: 1.2rem; z-index: 5; }
  .m-s04__sign {
    position: absolute; left: 5.3rem; top: 81.5rem; width: 22.6rem;
    font-family: var(--f-sign); font-size: 3.2rem; line-height: 6.04rem;
    color: #323232; white-space: nowrap; z-index: 4;
  }
  .m-s04__line1 {
    position: absolute; left: 4.9rem; top: 86.2rem; width: 25.4rem;
    font-size: 1.2rem; line-height: 1.95rem; color: var(--c-text-soft); z-index: 4;
  }
  .m-s04__line2 {
    position: absolute; left: 4.9rem; top: 88.1rem; width: 24.9rem;
    font-size: 1.4rem; line-height: 2.29rem; color: var(--c-text-soft); z-index: 4;
  }

  /* ---------- M5: «Путь к системным продажам» (5158..6385) ---------- */
  .m-s05 { position: relative; width: 37.5rem; height: 122.7rem; background: #fff; }
  .m-s05__title {
    position: absolute; left: 1.7rem; top: 7.7rem; width: 34rem;
    font-family: var(--f-head); font-weight: 700;
    font-size: 2.3rem; line-height: 3.2rem;
    text-transform: uppercase; color: var(--c-text);
  }
  .m-s05__title .accent { color: var(--c-accent); }
  .m-s05__line { position: absolute; left: 2.6rem; top: 26.1rem; width: 1px; height: 80.9rem; background: #1979ee; }
  .m-s05__dot {
    position: absolute; left: 1.5rem; width: 2.4rem; height: 2.4rem;
    border-radius: 50%; background: #cfe2fa; z-index: 2;
  }
  .m-s05__dot::after {
    content: ''; position: absolute; left: 0.6rem; top: 0.6rem;
    width: 1.2rem; height: 1.2rem; border-radius: 50%; background: #197cee;
  }
  .m-s05__photo { position: absolute; left: 4.4rem; width: 22.5rem; height: 23.6rem; }
  .m-s05__chip {
    position: absolute; left: 4.4rem; height: 4.47rem;
    display: flex; align-items: center; justify-content: center;
    padding-top: 0.3rem;
    background: #e2edfa; border-radius: 4.9rem;
    font-family: var(--f-ui); font-size: 1.2rem; line-height: 2.65rem;
    text-transform: uppercase; color: #24354a; white-space: nowrap;
    z-index: 4;
  }
  .m-s05__h4 {
    position: absolute; left: 4.4rem; width: 30.3rem;
    font-family: var(--f-body); font-weight: 700;
    font-size: 1.6rem; line-height: 2.4rem; color: #000;
  }
  .m-s05__text {
    position: absolute; left: 4.4rem; width: 30.5rem;
    font-size: 1.4rem; line-height: 2.2rem; color: #2e2e2e;
  }
  .m-s05__link {
    position: absolute; left: 4.4rem;
    font-family: var(--f-ui); font-size: 1.2rem; line-height: 3.3rem;
    text-transform: uppercase; color: #197cee; text-decoration: underline;
  }
  .m-s05__fade {
    position: absolute; left: 0.9rem; top: 77.5rem; width: 35.8rem; height: 34.9rem;
    background: linear-gradient(180deg, rgba(255,255,255,0), #fff 92%);
    pointer-events: none; z-index: 3;
  }
  .m-s05__toggle {
    position: absolute; left: 0; width: 37.5rem; text-align: center;
    font-family: var(--f-ui); font-size: 1.6rem; line-height: 3.3rem;
    text-transform: uppercase; color: #197cee; text-decoration: underline;
    z-index: 4;
  }
  .m-s05__more { position: absolute; left: 4.4rem; top: 108.6rem; width: 30.5rem; z-index: 2; }
  .m-s05__stage { position: relative; margin-top: 4rem; }
  .m-s05__stage::before {
    content: ''; position: absolute; left: -2.9rem; top: 0.3rem;
    width: 2.4rem; height: 2.4rem; border-radius: 50%; background: #cfe2fa;
  }
  .m-s05__stage::after {
    content: ''; position: absolute; left: -2.3rem; top: 0.9rem;
    width: 1.2rem; height: 1.2rem; border-radius: 50%; background: #197cee;
  }
  .m-s05__mphoto { display: block; width: 22.5rem; height: 23.6rem; border-radius: 0.95rem; object-fit: cover; }
  .m-s05__more .m-s05__stage .m-s05__chip { position: relative; left: 0; z-index: 2; display: flex; width: fit-content; margin-top: -3.56rem; padding-left: 2.8rem; padding-right: 2.8rem; }
  .m-s05__stage .m-s05__h4 { margin-top: 1.7rem; }
  .m-s05__stage .m-s05__text { margin-top: 0.8rem; }
  /* внутри раскрывашки всё в потоке, absolute-позиции базовых классов гасим */
  .m-s05__more .m-s05__text, .m-s05__more .m-s05__h4, .m-s05__more .m-s05__chip {
    position: static; width: auto; max-width: 30.5rem;
  }
  .m-s05.open .m-s05__fade, .m-s05.open .m-s05__toggle--hide { display: none; }

  /* ---------- M6: «Как меняется ваш бизнес» (6385..7026) ---------- */
  .m-s06 { position: relative; width: 37.5rem; height: 58.3rem; background: #fff; } /* -5.8rem: Aleks 2026-07-21 — стандартный отступ перед M7 вместо макетного */
  .m-s06__title {
    position: absolute; left: 1.5rem; top: 0; width: 37.1rem;
    font-family: var(--f-body); font-weight: 600;
    font-size: 2rem; line-height: 2.6rem; color: #000;
  }
  .m-check {
    position: absolute; left: 1.7rem; width: 2.7rem; height: 2.7rem;
    background: #197cee; border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
  }
  .m-check svg { width: 1.23rem; height: 0.93rem; overflow: visible; fill: none; stroke: #fff; stroke-width: 2; }
  .m-s06__point {
    position: absolute; left: 1.7rem; width: 34.9rem;
    font-size: 1.6rem; line-height: 2.4rem; color: #2e2e2e;
  }
  .m-s06__point b { font-weight: 700; color: #000; }

  /* ---------- M7: «Со мной вы получаете» (7026..8120) ---------- */
  .m-s07 { position: relative; width: 37.5rem; height: 109.4rem; background: #fff; }
  .m-s07__title {
    position: absolute; left: 1.5rem; top: 0; width: 34.5rem;
    font-family: var(--f-head); font-weight: 700;
    font-size: 2.3rem; line-height: 3.2rem;
    text-transform: uppercase; color: var(--c-text);
  }
  .m-s07__title .accent { color: var(--c-accent); }
  .m-s07__photo { position: absolute; left: 0; top: 14.5rem; width: 37.5rem; height: 41rem; }
  .m-s07__text {
    position: absolute; left: 1.5rem; top: 58.8rem; width: 34.5rem;
    font-size: 1.6rem; line-height: 2.4rem; color: #333;
  }
  .m-s07__text b { font-weight: 700; color: #000; }
  .m-s07__plate {
    position: absolute; left: 1.5rem; top: 72.9rem;
    width: 34.5rem; height: 7.85rem;
    background: #eef6ff; outline: 1px solid #d4e2f3; outline-offset: -1px; border-radius: 1.11rem;
    box-shadow: 0 2.22rem 2.59rem rgba(202, 202, 202, .1);
  }
  .m-s07__plate img { position: absolute; left: 1.9rem; top: 2.2rem; width: 3.3rem; height: 3.4rem; }
  .m-s07__plate p {
    position: absolute; left: 7.11rem; top: 1.92rem; width: 26.6rem;
    font-weight: 700; font-size: 1.333rem; line-height: 2rem; color: #000;
  }
  .m-s07__point {
    position: absolute; left: 5.5rem; width: 29.8rem;
    font-size: 1.6rem; line-height: 2.4rem; color: #333;
  }

  /* ---------- M8: 3 карточки результатов (8120..9023) ---------- */
  .m-s08 { position: relative; width: 37.5rem; height: 90.3rem; background: #fff; }
  .m-s08__card {
    position: absolute; left: 1.5rem;
    width: 34.5rem;
    background: #fff; outline: 1px solid #ededed; outline-offset: -1px; border-radius: 2.3rem;
    box-shadow: 0 3rem 3.5rem rgba(202, 202, 202, .1);
    overflow: hidden;
  }
  .m-s08__card h3 {
    position: absolute; left: 2.5rem; top: 6.4rem; width: 31.3rem;
    font-family: var(--f-body); font-weight: 700;
    font-size: 1.6rem; line-height: 2.4rem; color: #000;
  }
  .m-s08__card p {
    position: absolute; left: 2.5rem; top: 14.8rem; width: 28.6rem;
    font-size: 1.4rem; line-height: 2.2rem; color: #2e2e2e;
  }

  /* ---------- M9: тарифы (9023..12162) ---------- */
  .m-s09 { position: relative; width: 37.5rem; height: 309.5rem; background: #fff; }
  .m-s09__title {
    position: absolute; left: 1.5rem; top: 0; width: 34.5rem;
    font-family: var(--f-head); font-weight: 700;
    font-size: 2.3rem; line-height: 3.2rem;
    text-transform: uppercase; color: var(--c-text);
  }
  .m-s09__title .accent { color: var(--c-accent); }
  .m-s09__card {
    position: absolute; left: 1.5rem;
    width: 34.5rem;
    background: #f9f9f9; outline: 1px solid #ededed; outline-offset: -1px; border-radius: 2.5rem;
    color: #333;
  }
  .m-s09__card--dark { background: #383838; }
  .m-s09__card h3 {
    position: absolute; left: 2rem; width: 29.6rem;
    font-family: var(--f-head); font-weight: 700;
    font-size: 1.8rem; line-height: 2.8rem;
    text-transform: uppercase; color: #333;
  }
  .m-s09__card--dark h3 { color: #fff; }
  .m-s09__desc {
    position: absolute; left: 2rem; width: 29.8rem;
    font-size: 1.4rem; line-height: 2.2rem; color: #000;
  }
  .m-s09__card--dark .m-s09__desc { color: #fff; }
  .m-s09__price {
    position: absolute; left: 2rem;
    width: 29.8rem; height: 7.8rem;
    background: #fff; border-radius: 0.9rem;
  }
  .m-s09__card--dark .m-s09__price { background: #4c4c4c; outline: 1px solid rgba(255,255,255,.3); outline-offset: -1px; }
  .m-s09__price span {
    position: absolute; left: 2.2rem; top: 0.5rem;
    font-size: 1.6rem; line-height: 3.2rem; color: #838383;
  }
  .m-s09__card--dark .m-s09__price span { color: #cdcdcd; }
  .m-s09__price img { position: absolute; left: 2.2rem; top: 3.8rem; width: 2.1rem; height: 2.3rem; }
  .m-s09__price b {
    position: absolute; left: 5.1rem; top: 3.7rem;
    font-family: var(--f-head); font-weight: 700;
    font-size: 1.6rem; line-height: 2.8rem; color: #197cee;
    white-space: nowrap; text-transform: uppercase;
  }
  .m-s09__card--dark .m-s09__price b { color: #fff; }
  .m-s09__btn {
    position: absolute; left: 2rem;
    width: 29.6rem; height: 6.4rem;
    border-radius: 0.94rem; background: var(--grad-gold);
  }
  .m-s09__btn span {
    font-family: var(--f-ui); font-size: 1.6rem; line-height: 2.59rem;
    text-transform: uppercase; color: #fff;
  }
  .m-s09__photo { position: absolute; left: 0; width: 34.5rem; height: 22.7rem; }

  /* ---------- M10: кейсы, синий блок (12162..13958) ---------- */
  .m-s10 { position: relative; width: 37.5rem; height: 179.6rem; background: #fff; }
  .m-s10__bg { position: absolute; left: 0; top: 4.6rem; width: 37.5rem; height: 175rem; }
  .m-s10__title {
    position: absolute; left: 1.4rem; top: 11.7rem; width: 34.8rem;
    text-align: center;
    font-family: var(--f-head); font-weight: 700;
    font-size: 2.3rem; line-height: 3.2rem;
    text-transform: uppercase; color: #fff; z-index: 2;
  }
  .m-s10__case {
    position: absolute; left: 1.4rem; top: 27.7rem;
    width: 34.5rem; height: 130.9rem;
    background: #fff; outline: 1px solid #ededed; outline-offset: -1px; border-radius: 2.5rem;
    z-index: 2;
  }
  .m-s10__chip {
    position: absolute; left: 2rem; height: 4.37rem;
    display: flex; align-items: center; justify-content: center;
    border-radius: 0.7rem;
    font-family: var(--f-body); font-weight: 600;
    font-size: 1.4rem; color: #000;
  }
  .m-s10__intro {
    position: absolute; left: 2rem; width: 30.6rem;
    font-size: 1.6rem; line-height: 2.4rem; color: #2e2e2e;
  }
  .m-s10__list { list-style: none; }
  .m-s10__list li {
    position: relative; padding-left: 1.6rem;
    font-size: 1.2rem; line-height: 2.2rem; color: #2e2e2e;
    letter-spacing: 0.01rem; /* Figma даёт чуть больший advance на 12px Raleway */
  }
  .m-s10__list li::before {
    content: '•'; position: absolute; left: 0.4rem; top: 0;
    color: #2e2e2e;
  }
  .m-s10__pre {
    position: absolute; left: 2rem; width: 30.6rem;
    font-size: 1.2rem; line-height: 2.2rem; color: #2e2e2e;
  }
  .m-s10__more-label {
    position: absolute; left: 0; top: 110.3rem; width: 34.5rem;
    text-align: center;
    font-family: var(--f-body); font-weight: 600;
    font-size: 1.8rem; line-height: 2.2rem; color: #000;
  }
  .m-s10__qr { position: absolute; left: 9.2rem; top: 113.2rem; width: 15.3rem; height: 15.3rem; }

  /* компактные мобильные стрелки слайдеров (53px, по нодам 241:463) */
  .m-arr {
    position: absolute; width: 5.3rem; height: 5.3rem;
    border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    z-index: 3; cursor: pointer;
    transition: transform .15s;
  }
  .m-arr:active { transform: scale(0.94); }
  .m-arr svg { width: 2.1rem; height: 2.1rem; }
  .m-arr--gold {
    background: radial-gradient(circle at 50% 42%, #e6ddc8 0%, #c3b28a 35%, #a78f5d 70%, #93794a 100%);
    color: #fff;
    box-shadow: 0 0.66rem 1.47rem rgba(124,124,124,.2);
  }

  /* ---------- M11: письма «Сотни клиентов» (13958..14577) ---------- */
  .m-s11 { position: relative; width: 37.5rem; height: 61.9rem; background: #fff; }
  .m-s11__title {
    position: absolute; left: 0.5rem; top: 9.1rem; width: 36.5rem;
    text-align: center;
    font-family: var(--f-head); font-weight: 700;
    font-size: 2.3rem; line-height: 3.2rem;
    text-transform: uppercase; color: var(--c-text);
  }
  .m-s11__title .accent { color: var(--c-accent); }
  .m-s11__count { color: var(--c-accent); font-weight: 700; white-space: nowrap; }
  .m-s11__sub {
    position: absolute; left: 1.75rem; top: 19.9rem; width: 34rem;
    text-align: center;
    font-size: 1.6rem; line-height: 2.4rem; color: #000;
  }
  .m-s11__slider {
    position: absolute; left: 2.2rem; top: 27rem;
    width: 33.1rem; height: 21.5rem;
    overflow: hidden;
  }
  .m-s11__slider .track { display: flex; gap: 1.3rem; transition: transform .3s ease; }
  .m-s11__slider .slide { position: relative; flex: none; }
  .m-s11__slider .slide img {
    width: 15.8rem; height: 21.5rem;
    border-radius: 1.17rem; border: 1px solid #d6d6d6;
    object-fit: cover;
  }
  .m-s11__zoom {
    position: absolute; left: 5.3rem; top: 8.2rem;
    width: 5.23rem; height: 5.23rem; border-radius: 50%;
    background: #fff; box-shadow: 0 0.7rem 0.58rem rgba(176,176,176,.25);
    display: flex; align-items: center; justify-content: center;
    pointer-events: none; z-index: 2;
  }
  .m-s11__zoom svg { width: 2rem; height: 2rem; }

  /* ---------- M12: публикации (14577..15277) ---------- */
  .m-s12 { position: relative; width: 37.5rem; height: 70rem; background: #fff; }
  .m-s12__title {
    position: absolute; left: 0.7rem; top: 4.4rem; width: 36rem;
    text-align: center;
    font-family: var(--f-head); font-weight: 700;
    font-size: 2.3rem; line-height: 3.2rem;
    text-transform: uppercase; color: var(--c-text);
  }
  .m-s12__text {
    position: absolute; left: 1.5rem; top: 12rem; width: 33.7rem;
    text-align: center;
    font-size: 1.6rem; line-height: 2.4rem; color: #000;
  }
  .m-s12__slider {
    position: absolute; left: 3rem; top: 24.8rem;
    width: 31.3rem; height: 22.5rem;
    overflow: hidden;
  }
  .m-s12__slider .track { display: flex; gap: 2.5rem; transition: transform .3s ease; }
  .m-s12__slider .slide { flex: none; width: 14.4rem; }
  .m-s12__slider .slide img {
    width: 14.4rem; height: 19.5rem;
    border-radius: 1rem; background: #fff;
    border: 1px solid #d6d6d6;
    object-fit: cover;
  }
  .m-s12__slider .slide a {
    display: block; margin-top: 0.7rem; margin-left: 1.2rem;
    font-family: var(--f-body); font-weight: 500;
    font-size: 1.1rem; line-height: 1.39rem;
    color: #197cee; text-decoration: underline;
  }

  /* ---------- M13: «Выступаю как спикер» (15277..16193) ---------- */
  .m-s13 { position: relative; width: 37.5rem; height: 91.6rem; }
  .m-s13__bg { position: absolute; left: 0; top: 0; width: 37.5rem; height: 91.6rem; }
  .m-s13__title {
    position: absolute; left: 1.5rem; top: 5rem; width: 34.4rem;
    font-family: var(--f-head); font-weight: 700;
    font-size: 2.3rem; line-height: 3.2rem;
    text-transform: uppercase; color: #fff; z-index: 2;
  }
  .m-s13__sub {
    position: absolute; left: 1.5rem; top: 16.2rem; width: 31.6rem;
    font-size: 1.6rem; line-height: 2.4rem; color: #fff; z-index: 2;
  }
  .m-check--white { width: 3.5rem; height: 3.5rem; background: #fff; }
  .m-check--white svg { stroke: #157aee; width: 1.6rem; height: 1.2rem; }
  .m-s13__item {
    position: absolute; left: 7.2rem; width: 24rem;
    font-size: 1.6rem; line-height: 2.4rem; color: #fff; z-index: 2;
  }
  .m-s13__cta {
    position: absolute; left: 1.5rem; top: 50.3rem;
    width: 34.5rem; height: 7.6rem;
    border-radius: 0.84rem; background: var(--grad-gold); z-index: 2;
  }
  .m-s13__cta span {
    font-family: var(--f-ui); font-size: 1.7rem; line-height: 2.3rem;
    text-transform: uppercase; color: #fff;
  }

  /* ---------- M14: фото с тренингов (16193..16689) ---------- */
  .m-s14 { position: relative; width: 37.5rem; height: 49.6rem; background: #fff; }
  .m-s14__title {
    position: absolute; left: 0.5rem; top: 6.3rem; width: 36.5rem;
    text-align: center;
    font-family: var(--f-head); font-weight: 700;
    font-size: 2.3rem; line-height: 3.2rem;
    text-transform: uppercase; color: var(--c-text);
  }
  .m-s14__slider {
    position: absolute; left: 0; top: 18rem;
    width: 37.5rem; height: 12.9rem;
    overflow: hidden;
  }
  .m-s14__slider .track { display: flex; gap: 1rem; transition: transform .3s ease; }
  .m-s14__slider .slide { flex: none; }
  .m-s14__slider .slide img {
    width: 18.6rem; height: 12.9rem;
    border-radius: 1rem; border: 2px solid #fff;
    object-fit: cover;
  }
  .m-s14__dots { position: absolute; left: 0; top: 33.2rem; width: 37.5rem; display: flex; justify-content: center; align-items: center; gap: 1.4rem; z-index: 2; }
  .m-s14__dots span.edge { transform: scale(0.6); opacity: 0.55; }
  .m-s14__dots span { width: 0.8rem; height: 0.8rem; border-radius: 50%; background: #d9d9d9; }
  .m-s14__dots span.on { background: #197cee; }

  /* ---------- M15: «Знакомство» (16689..18445), синий ---------- */
  .m-s15 { position: relative; width: 37.5rem; height: 175.6rem; background: #fff; }
  .m-s15__bg { position: absolute; left: 0; top: 0; width: 37.5rem; height: 126.6rem; }
  /* Накладка-кавычка поверх фона (в самом фоне кавычки обрезаны) */
  .m-s15__quote { position: absolute; left: 2rem; top: -3.6rem; width: 12.6rem; height: auto; z-index: 2; }
  .m-s15__title {
    position: absolute; left: 1.5rem; top: 6rem; width: 33.9rem;
    font-family: var(--f-head); font-weight: 700;
    font-size: 2.3rem; line-height: 3.2rem;
    text-transform: uppercase; color: #fff; z-index: 2;
  }
  .m-s15__p1 {
    position: absolute; left: 1.5rem; top: 20.4rem; width: 32.8rem;
    font-size: 1.6rem; line-height: 2.4rem; color: #fff; z-index: 2;
  }
  .m-s15__p2 {
    position: absolute; left: 1.5rem; top: 29.3rem; width: 33.9rem;
    font-size: 1.4rem; line-height: 2.2rem; color: #fff; z-index: 2;
  }
  .m-s15__cta {
    position: absolute; left: 1.5rem; top: 38.2rem;
    width: 34.5rem; height: 7.6rem;
    border-radius: 0.84rem; background: var(--grad-gold); z-index: 2;
  }
  .m-s15__cta span {
    font-family: var(--f-ui); font-size: 1.7rem; line-height: 2.3rem;
    text-transform: uppercase; color: #fff;
  }
  .m-s15__write {
    position: absolute; left: 1.5rem; top: 47.5rem; width: 32.8rem;
    font-weight: 700; font-size: 1.6rem; line-height: 2.4rem; color: #fff; z-index: 2;
  }
  .m-s15__soc {
    position: absolute; top: 51.6rem;
    width: 5.6rem; height: 5.6rem; border-radius: 50%;
    background: #fff;
    display: flex; align-items: center; justify-content: center;
    transition: transform .2s ease; z-index: 2;
  }
  .m-s15__soc:active { transform: scale(0.94); }
  .m-s15__fact {
    position: absolute; left: 1.5rem;
    width: 34.5rem;
    background: #f9f9f9; border-radius: 1.5rem;
    box-shadow: 0 2rem 2.6rem rgba(120, 130, 150, .12);
    z-index: 2;
  }
  .m-s15__fact { display: flex; align-items: center; }
  .m-s15__fact p {
    margin-left: 7.2rem; width: 24.6rem;
    font-size: 1.6rem; line-height: 2.5rem; color: #2e2e2e;
  }
  .m-s15__fact p b { font-weight: 700; color: #000; }

  /* ---------- M16: FAQ (18445..19099) ---------- */
  .m-s16 { position: relative; width: 37.5rem; background: #fff; padding: 11rem 0 3rem; box-sizing: border-box; }
  .m-s16__title {
    position: absolute; left: 2.7rem; top: 0; width: 32.2rem;
    text-align: center;
    font-family: var(--f-head); font-weight: 700;
    font-size: 2.3rem; line-height: 3.2rem;
    text-transform: uppercase; color: var(--c-text);
  }
  .m-s16__title .accent { color: var(--c-accent); }
  .m-s16__row {
    position: relative; margin: 0 1.5rem 1.2rem;
    width: 34.5rem;
    background: #f3f3f3; border-radius: 1.5rem;
    cursor: pointer;
  }
  /* Шапка-вопрос: текст + «+» по центру по вертикали, любой длины */
  .m-s16__q {
    position: relative; display: flex; align-items: center;
    min-height: 9rem; padding: 1.6rem 8rem 1.6rem 2.8rem;
    box-sizing: border-box;
  }
  .m-s16__q p {
    margin: 0;
    font-size: 1.4rem; line-height: 2.2rem; color: #000;
  }
  .m-s16__plus {
    position: absolute; right: 2.5rem; top: 50%; transform: translateY(-50%);
    width: 3.9rem; height: 3.9rem; border-radius: 50%;
    background: #197cee; color: #fff;
    display: flex; align-items: center; justify-content: center;
    font-size: 2.4rem; line-height: 1;
    transition: transform .2s ease;
  }
  .m-s16__row.open .m-s16__plus { transform: translateY(-50%) rotate(45deg); }
  .m-s16__answer { display: none; padding: 0.4rem 2.8rem 2.4rem; }
  .m-s16__row.open .m-s16__answer { display: block; }
  .m-s16__answer p {
    margin: 0 0 1rem;
    font-size: 1.4rem; line-height: 2.2rem; color: #555;
  }
  .m-s16__answer p:last-child { margin-bottom: 0; }
  .m-s16__answer ol, .m-s16__answer ul { margin: 0 0 1rem; padding-left: 2.2rem; font-size: 1.4rem; line-height: 2.2rem; color: #555; }
  .m-s16__answer li { margin: 0 0 0.5rem; }

  /* ---------- M17: контакты (19099..19938), синий ---------- */
  .m-s17 { position: relative; width: 37.5rem; height: 83.9rem; }
  .m-s17__bg { position: absolute; left: 0; top: 0; width: 37.5rem; height: 83.9rem; }
  .m-s17__title {
    position: absolute; left: 1.5rem; top: 5.4rem; width: 31.8rem;
    font-family: var(--f-head); font-weight: 700;
    font-size: 2.3rem; line-height: 3.2rem;
    text-transform: uppercase; color: #fff; z-index: 2;
  }
  .m-s17__sub {
    position: absolute; left: 1.5rem; top: 12.2rem; width: 26.3rem;
    font-size: 1.6rem; line-height: 2.4rem; color: #fff; z-index: 2;
  }
  .m-s17__btn {
    position: absolute;
    height: 7.8rem;
    border-radius: 0.9rem;
    background: linear-gradient(178deg, #f5f5f5, #eaeaea);
    display: flex; align-items: center; justify-content: center; gap: 1rem;
    z-index: 2;
  }
  .m-s17__btn span {
    font-family: var(--f-ui); font-size: 1.6rem; line-height: 2.3rem;
    text-transform: uppercase; color: #272727;
  }
  .m-s17__btn--main { left: 1.5rem; top: 53.3rem; width: 34.5rem; }
  .m-s17__btn--tg img, .m-s17__btn--max img { width: 2.6rem; height: 2.6rem; }
  .m-s17__btn--tg, .m-s17__btn--max { height: 6.5rem; }

  /* ===== Кейсы — мобильный слайдер (потоковая карточка, авто-высота, QR внизу) ===== */
  /* сплошной синий фон вместо растянутой картинки-фрейма (не было бы белых/синих провалов) */
  .m-s10 { height: auto; background: #2573ce; padding: 3.5rem 0 8.5rem; overflow: hidden; }
  .m-s10__bg { display: none; }
  .m-s10__title { position: static; left: auto; top: auto; margin: 0 auto 2rem; }
  .m-s10__slider { position: relative; left: 0; top: auto; margin: 0 auto; width: 34.5rem; height: auto; overflow: hidden; z-index: 2; transition: height 0.35s ease; }
  /* высота слайдера подгоняется под текущий кейс (JS, data-autoheight) → без пустот, смена высоты плавная */
  .m-s10__slider .track { align-items: flex-start; height: auto; }
  .m-s10__slider .slide { width: 34.5rem; height: auto; display: block; }
  .m-s10__case--flow { display: flex; flex-direction: column; position: relative; left: auto; top: auto; width: 34.5rem; height: auto; box-sizing: border-box; padding: 2.4rem 2rem 2.8rem; background: #fff; }
  .m-s10__case--flow .m-s10__chip { position: static; height: auto; display: inline-flex; padding: 0.7rem 1.4rem; margin: 1.6rem 0 0.8rem; }
  .m-s10__case--flow .m-s10__chip:first-child { margin-top: 0; }
  .m-s10__chip--blue { background: #eef6ff; }
  .m-s10__chip--red { background: #ffeeee; }
  .m-s10__chip--green { background: #f0fff0; }
  .m-s10__case--flow .m-s10__intro { position: static; width: auto; margin: 0.4rem 0 0.6rem; }
  .m-s10__case--flow .m-s10__list { position: static; margin: 0.3rem 0 0.6rem; padding-left: 0.6rem; }
  /* QR прижат к низу карточки (margin-top:auto) — всегда виден, не обрезается */
  .m-s10__case--flow .m-s10__more { position: static; margin-top: 2.5rem; padding-top: 1.5rem; text-align: center; background: transparent; }
  .m-s10__case--flow .m-s10__more-label { position: static; left: auto; top: auto; width: auto; }
  .m-s10__slider .slide .m-s10__qr { position: static; left: auto; top: auto; display: block; width: 15.3rem; height: 15.3rem; margin: 0.8rem auto 0; }
  /* стрелки под слайдером */
  .m-s10 > .arr { top: auto; bottom: 3rem; }

}
