/* ==========================================================================
   ИНАКО — обновлённые экраны (макет Figma, сентябрь 2026)
   Экраны: hero и «Результаты клиник-партнёров» не затрагиваются.
   ========================================================================== */

:root {
  --rs-title: #5D5979;
  --rs-title-2: #6D6981;
  --rs-body: #8A96AF;
  --rs-dark: #403C61;
  --rs-muted: #BBC1D7;
  --rs-accent: #008CFF;
  --rs-accent-soft: #CCE8FF;
  --rs-danger: #D50035;
  --rs-line: #DDE1EC;
  --rs-line-soft: #F3F7FA;
  --rs-surface: #FFFFFF;
  --rs-surface-alt: #F7FAFC;
  --rs-shadow: 0 0 40px rgba(64, 60, 97, 0.10);
}

/* --------------------------------------------------------------- каркас -- */
.rs-section {
  padding: 60px 0 110px;
}

.rs-section--tight {
  padding: 0 0 80px;
}

.rs-section--flush {
  padding: 0 0 60px;
}

.rs-container {
  max-width: 1180px;
  width: 100%;
  margin: 0 auto;
  padding: 0 20px;
}

.rs-panel {
  background: var(--rs-surface);
  border-radius: 30px;
  box-shadow: var(--rs-shadow);
  padding: 70px 50px;
  display: flex;
  flex-direction: column;
  gap: 60px;
}

.rs-panel--accent {
  background: var(--rs-accent);
}

.rs-stack {
  display: flex;
  flex-direction: column;
  gap: 50px;
}

.rs-group {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.rs-group--sm {
  gap: 10px;
}

/* ------------------------------------------------------------- типографика */
.rs-h1,
.rs-h2,
.rs-h3,
.rs-h4 {
  color: var(--rs-title);
  font-weight: 600;
  text-align: center;
  margin: 0;
}

.rs-h1 {
  font-size: 40px;
  line-height: 40px;
  letter-spacing: -0.8px;
}

.rs-h2 {
  font-size: 35px;
  line-height: 35px;
}

.rs-h3 {
  font-size: 30px;
  line-height: 38px;
}

.rs-h4 {
  font-size: 25px;
  line-height: 32px;
}

.rs-lead {
  font-size: 25px;
  line-height: 25px;
  font-weight: 500;
  color: var(--rs-body);
  text-align: center;
  margin: 0;
  max-width: 780px;
  margin-inline: auto;
}

.rs-lead--wide {
  max-width: none;
}

.rs-lead--left {
  text-align: left;
}

.rs-text {
  font-size: 16px;
  line-height: 20px;
  letter-spacing: -0.08px;
  color: var(--rs-title);
  margin: 0;
}

.rs-small {
  font-size: 14px;
  line-height: 15px;
  letter-spacing: 0.14px;
  margin: 0;
}

.rs-ac {
  color: var(--rs-accent);
}

.rs-strong {
  color: var(--rs-title-2);
}

.rs-white {
  color: #FFFFFF;
}

.rs-panel--accent .rs-h1,
.rs-panel--accent .rs-h2,
.rs-panel--accent .rs-h3 {
  color: var(--rs-line);
}

.rs-panel--accent .rs-lead {
  color: var(--rs-accent-soft);
}

/* Вертикальная линия слева от абзаца (как в макете) */
.rs-quote-line {
  border-left: 1px solid var(--rs-line);
  padding-left: 0;
  max-width: 780px;
  margin-inline: auto;
}

.rs-rule-right {
  max-width: 780px;
  margin-inline: auto;
  border-right: 1px solid var(--rs-line);
  padding-right: 20px;
}

/* ------------------------------------------------------------------ кнопки */
.rs-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  min-height: 80px;
  border: 0;
  border-radius: 25px;
  background: var(--rs-accent);
  color: #FFFFFF;
  font-size: 18px;
  line-height: 20px;
  font-weight: 600;
  text-align: center;
  padding: 20px 30px;
  cursor: pointer;
  transition: transform 0.15s ease, filter 0.15s ease;
  box-shadow:
    0 4px 10px rgba(0, 140, 255, 0.30),
    0 3px 0 rgba(255, 255, 255, 0.53),
    0 4px 20px rgba(255, 255, 255, 0.40),
    0 -4px 40px rgba(0, 0, 0, 0.20);
}

.rs-btn:hover {
  filter: brightness(1.05);
}

.rs-btn:active {
  transform: translateY(1px);
}

.rs-btn--light {
  background: #FFFFFF;
  color: var(--rs-accent);
  box-shadow:
    0 4px 10px rgba(255, 255, 255, 0.30),
    0 3px 0 rgba(0, 122, 222, 0.50),
    0 4px 20px rgba(255, 255, 255, 0.40),
    0 -4px 40px rgba(0, 0, 0, 0.20);
}

.rs-btn img {
  width: 30px;
  height: 30px;
  flex: 0 0 30px;
}

/* -------------------------------------------------------------- бейдж-чек */
.rs-check {
  width: 20px;
  height: 20px;
  flex: 0 0 20px;
  border-radius: 35px;
  background: var(--rs-accent);
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow:
    0 4px 5px rgba(0, 140, 255, 0.20),
    0 2px 0 rgba(255, 255, 255, 0.53),
    0 2px 15px rgba(255, 255, 255, 0.45),
    0 -1px 10px rgba(15, 30, 200, 0.45);
}

.rs-check svg {
  display: block;
}

/* ------------------------------------------------------- карточка-опция -- */
.rs-cards {
  display: grid;
  gap: 20px;
}

.rs-cards--2 {
  grid-template-columns: repeat(2, 1fr);
}

.rs-cards--3 {
  grid-template-columns: repeat(3, 1fr);
}

.rs-cards--4 {
  grid-template-columns: repeat(4, 1fr);
}

.rs-cards--narrow {
  max-width: 780px;
  margin-inline: auto;
}

.rs-option {
  background: var(--rs-surface);
  border-radius: 20px;
  box-shadow: var(--rs-shadow);
  padding: 20px;
  display: flex;
  align-items: flex-start;
  gap: 15px;
}

.rs-option--alt {
  background: var(--rs-surface-alt);
}

.rs-option__body {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding-top: 2px;
}

.rs-option__title {
  font-size: 14px;
  line-height: 15px;
  letter-spacing: 0.14px;
  font-weight: 600;
  color: var(--rs-title);
  text-transform: uppercase;
  margin: 0;
}

/* ------------------------------------------------------------- таблицы --- */
.rs-table {
  background: var(--rs-surface);
  border: 1px solid var(--rs-line);
  border-radius: 20px;
  box-shadow: var(--rs-shadow);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  max-width: 1080px;
  margin-inline: auto;
}

.rs-row {
  display: grid;
}

.rs-table--split .rs-row {
  grid-template-columns: 290fr 290fr 500fr;
}

.rs-table--duo {
  max-width: 780px;
}

.rs-table--duo .rs-row {
  grid-template-columns: 1fr 1fr;
}

.rs-table .rs-row:last-child .rs-cell {
  border-bottom: 0;
}

.rs-cell {
  padding: 20px 28px;
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 14px;
  line-height: 15px;
  letter-spacing: 0.14px;
  color: var(--rs-dark);
  border-bottom: 1px solid var(--rs-line);
  min-height: 55px;
}

.rs-cell--wide {
  grid-column: span 2;
  gap: 10px;
}

/* в строках со стрелкой правый отступ минимальный — как в макете */
.rs-row--split .rs-cell {
  padding-right: 8px;
}

.rs-cell--head {
  font-size: 20px;
  line-height: 20px;
  letter-spacing: 0;
  font-weight: 500;
  color: var(--rs-body);
  align-items: flex-start;
}

.rs-cell--th {
  color: var(--rs-body);
}

/* заголовки столбцов в таблице «дуо» — крупнее и жирнее текста строк */
.rs-table--duo .rs-cell--head {
  align-items: center;
  font-weight: 600;
}

.rs-cell--blue {
  background: var(--rs-accent-soft);
  color: var(--rs-accent);
}

.rs-cell--blue.rs-cell--head {
  color: var(--rs-accent);
}

.rs-cell--accent {
  color: var(--rs-accent);
}

.rs-cell--danger {
  color: var(--rs-danger);
}

.rs-cell img {
  width: 25px;
  height: 25px;
  flex: 0 0 25px;
}

.rs-cell__arrow {
  margin-left: auto;
  color: var(--rs-accent);
  padding-left: 8px;
}

/* ------------------------------------------------------- «стеклянные» карты */
.rs-glass-wrap {
  position: relative;
  display: flex;
  justify-content: center;
}

/* пунктирная окружность из макета: 1px, штрих 2/6, #8A96AF */
.rs-glass-wrap::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 200px;
  height: 200px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'%3E%3Ccircle cx='100' cy='100' r='99.5' fill='none' stroke='%238A96AF' stroke-width='1' stroke-dasharray='2 6'/%3E%3C/svg%3E") center / 100% 100% no-repeat;
  pointer-events: none;
}

.rs-glass-wrap--lg::before {
  width: 400px;
  height: 400px;
}

.rs-glass-list {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  width: 100%;
}

.rs-glass {
  background: rgba(255, 255, 255, 0.50);
  border: 2px solid #FFFFFF;
  border-radius: 20px;
  padding: 20px;
  box-shadow:
    0 34px 15px rgba(255, 255, 255, 0.25),
    0 10px 15px rgba(0, 140, 255, 0.10);
  text-align: center;
  color: var(--rs-title);
  font-size: 16px;
  line-height: 20px;
  letter-spacing: -0.08px;
  backdrop-filter: blur(2px);
}

.rs-glass--1 {
  max-width: 383px;
}

.rs-glass--2 {
  max-width: 487px;
}

/* --------------------------------------------------- фича-карточки (4 шт) */
.rs-feature {
  background: var(--rs-surface);
  border-radius: 25px;
  box-shadow: var(--rs-shadow);
  padding: 30px 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 15px;
  text-align: center;
}

.rs-feature img {
  width: 40px;
  height: 40px;
}

.rs-feature p {
  margin: 0;
  font-size: 15px;
  line-height: 19px;
  letter-spacing: 0.15px;
  font-weight: 500;
  color: var(--rs-muted);
}

/* --------------------------------------------- этапы сотрудничества (2x2) */
.rs-stages {
  position: relative;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
  max-width: 1080px;
  margin-inline: auto;
}

.rs-stages::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 400px;
  height: 400px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'%3E%3Ccircle cx='100' cy='100' r='99.5' fill='none' stroke='%238A96AF' stroke-width='1' stroke-dasharray='2 6'/%3E%3C/svg%3E") center / 100% 100% no-repeat;
  pointer-events: none;
}

.rs-stage {
  position: relative;
  background: rgba(255, 255, 255, 0.50);
  border: 2px solid #FFFFFF;
  border-radius: 25px;
  padding: 20px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 15px;
  box-shadow:
    0 10px 15px rgba(0, 140, 255, 0.10),
    0 34px 15px rgba(255, 255, 255, 0.25);
  backdrop-filter: blur(2px);
}

.rs-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: flex-start;
  padding: 5px 25px;
  border-radius: 5px;
  font-size: 14px;
  line-height: 15px;
  letter-spacing: 0.14px;
  color: #FFFFFF;
}

.rs-badge--green {
  background: #25D366;
}

.rs-badge--blue {
  background: #008CFF;
}

.rs-badge--orange {
  background: #FFA600;
}

.rs-badge--dark {
  background: #2E475B;
}

.rs-stage__name {
  font-size: 14px;
  line-height: 15px;
  letter-spacing: 0.14px;
  font-weight: 600;
  color: var(--rs-title);
  text-transform: uppercase;
  margin: 0 0 5px;
}

.rs-stage__desc p {
  margin: 0;
  font-size: 14px;
  line-height: 15px;
  letter-spacing: 0.14px;
  color: var(--rs-body);
}

.rs-stage__desc p.rs-note {
  color: var(--rs-muted);
}

.rs-stage__foot {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.rs-stage__row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  font-size: 14px;
  line-height: 15px;
  letter-spacing: 0.14px;
  color: var(--rs-accent);
}

.rs-stage__next {
  display: flex;
  align-items: center;
  gap: 15px;
  font-size: 14px;
  line-height: 15px;
  letter-spacing: 0.14px;
  color: var(--rs-accent);
  flex-wrap: wrap;
}

.rs-stage__next span {
  color: #2E475B;
}

.rs-stage__next .rs-arrow {
  color: #2E475B;
}

.rs-stage__row--end {
  justify-content: flex-end;
}

/* ------------------------------------------------------- модель работы --- */
.rs-model {
  /* width обязателен: без него flex-трек слайдера растягивает контейнер по контенту */
  width: 100%;
  min-width: 0;
  max-width: 1080px;
  margin-inline: auto;
}

.rs-model__track {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}

.rs-model .swiper-slide {
  height: auto;
}

.rs-model-pagination {
  display: none;
}

/* на десктопе Swiper не инициализируется — тени карточек не должны обрезаться */
.rs-model.swiper {
  overflow: visible;
}

.rs-model__card {
  background: var(--rs-surface);
  border-radius: 25px;
  box-shadow: var(--rs-shadow);
  padding: 30px 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 15px;
  text-align: center;
  transition: background 0.3s ease;
}

.rs-num {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: var(--rs-accent);
  color: #FFFFFF;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  line-height: 20px;
  font-weight: 600;
  box-shadow:
    0 4px 10px rgba(0, 140, 255, 0.30),
    0 3px 0 rgba(255, 255, 255, 0.53),
    0 4px 20px rgba(255, 255, 255, 0.40),
    0 -4px 40px rgba(0, 0, 0, 0.20);
}

.rs-model__title {
  font-size: 18px;
  line-height: 20px;
  font-weight: 600;
  color: var(--rs-title);
  margin: 0;
}

.rs-model__sub {
  font-size: 14px;
  line-height: 15px;
  letter-spacing: 0.14px;
  font-weight: 600;
  color: var(--rs-body);
  text-transform: uppercase;
  margin: 0;
}

.rs-model__note {
  border-left: 1px solid var(--rs-line);
  padding-left: 15px;
  text-align: left;
  display: flex;
  flex-direction: column;
  gap: 5px;
  width: 100%;
}

.rs-model__note p {
  margin: 0;
  font-size: 14px;
  line-height: 15px;
  letter-spacing: 0.14px;
  color: var(--rs-body);
}


/* инверсия карточки при наведении: белая -> синяя */
@media (hover: hover) {
  .rs-model__card,
  .rs-model__card .rs-num,
  .rs-model__card .rs-model__title,
  .rs-model__card .rs-model__sub,
  .rs-model__card .rs-model__note p {
    transition: background 0.3s ease, color 0.3s ease, box-shadow 0.3s ease;
  }

  .rs-model__card:hover {
    background: var(--rs-accent);
  }

  .rs-model__card:hover .rs-num {
    background: #FFFFFF;
    color: var(--rs-accent);
    box-shadow:
      0 4px 10px rgba(255, 255, 255, 0.30),
      0 3px 0 #8A96AF,
      0 4px 20px rgba(0, 122, 222, 0.40),
      0 -4px 40px rgba(0, 0, 0, 0.20);
  }

  .rs-model__card:hover .rs-model__title {
    color: #FFFFFF;
  }

  .rs-model__card:hover .rs-model__sub,
  .rs-model__card:hover .rs-model__note p {
    color: #F7FAFC;
  }

  .rs-model__card:hover .rs-model__note {
    border-left-color: rgba(255, 255, 255, 0.35);
  }

  .rs-model__card:hover .rs-model__note p.rs-note {
    color: var(--rs-line);
  }
}

/* ------------------------------------------------------------- отзыв ----- */
.rs-proof {
  display: grid;
  grid-template-columns: 400fr 660fr;
  gap: 20px;
  max-width: 1080px;
  margin-inline: auto;
  align-items: center;
}

.rs-proof__quote {
  background: var(--rs-surface);
  border-radius: 20px;
  box-shadow: var(--rs-shadow);
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.rs-proof__quote p {
  margin: 0;
  font-size: 16px;
  line-height: 20px;
  letter-spacing: -0.08px;
  color: var(--rs-title);
}

.rs-proof__quote cite {
  font-style: normal;
  font-size: 16px;
  line-height: 20px;
  letter-spacing: -0.08px;
  color: var(--rs-body);
}

.rs-logos {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}

.rs-logos img {
  width: 150px;
  height: auto;
  flex: 0 1 150px;
}

/* ------------------------------------ переключатели десктоп / мобильный -- */
.rs-only-mobile {
  display: none;
}

/* ---- отступы секций (десктоп), значения из макета Figma ---------------- */
/* Loses 60/110 · Functions 0/80 · Diagnostic 0/80 · Cooperation 0/70
   · Work Model 0/0 · Conditions 70/0 · CTA 80/60 */
/* в макете между 1-м экраном и следующим блоком 60px */
.hero-section {
  margin-bottom: 60px;
}

.rs-s-loses {
  padding-top: 0;
}

.rs-s-cooperation {
  padding: 0 0 70px;
}

.rs-s-model {
  padding: 0;
}

.rs-s-functions .rs-panel {
  padding-bottom: 110px;
}

.rs-s-diagnostic .rs-panel,
.rs-s-cooperation .rs-panel {
  padding-bottom: 50px;
}

.rs-s-loses .rs-container,
.rs-loses-panel {
  display: flex;
  flex-direction: column;
  gap: 60px;
}

.rs-s-conditions {
  padding: 70px 0 0;
}

.rs-s-cta {
  padding: 80px 0 60px;
}

/* ---------------------------------------------- защита от переполнения --- */
.rs-model,
.rs-row,
.rs-cell,
.rs-option,
.rs-option__body,
.rs-feature,
.rs-stage,
.rs-model__card,
.rs-model__note,
.rs-proof__quote {
  min-width: 0;
}

.rs-cell,
.rs-text,
.rs-lead,
.rs-h1,
.rs-h2,
.rs-h3,
.rs-h4 {
  overflow-wrap: break-word;
}

/* ======================================================= ПЛАНШЕТ ≤ 1180px */
@media (max-width: 1180px) {
  .rs-panel {
    padding: 50px 30px;
    gap: 45px;
  }

  .rs-h1 {
    font-size: 34px;
    line-height: 36px;
  }

  .rs-h2 {
    font-size: 30px;
    line-height: 32px;
  }

  .rs-h3 {
    font-size: 26px;
    line-height: 32px;
  }

  .rs-h4 {
    font-size: 22px;
    line-height: 28px;
  }

  .rs-lead {
    font-size: 20px;
    line-height: 24px;
  }

  .rs-logos img {
    width: 110px;
  }

  /* таблица «до / после»: на планшете строки остаются в одну строку */
  .rs-cell {
    padding: 14px 12px;
    font-size: 13px;
    line-height: 16px;
  }

  .rs-cell--head {
    font-size: 17px;
    line-height: 22px;
  }

  .rs-table--split .rs-row {
    grid-template-columns: 1fr 1fr 0.8fr;
  }

  .rs-cell__arrow {
    padding-left: 8px;
  }

  .rs-cell img {
    width: 22px;
    height: 22px;
    flex: 0 0 22px;
  }

  .rs-panel .rs-table--duo,
  .rs-cards--narrow {
    max-width: none;
  }
}

/* ============================================================ ≤ 992px === */
@media (max-width: 992px) {
  .rs-cards--3,
  .rs-cards--4 {
    grid-template-columns: repeat(2, 1fr);
  }

  .rs-stages,
  .rs-proof {
    grid-template-columns: 1fr;
  }

  .rs-stages::before {
    display: none;
  }

  .rs-proof {
    gap: 25px;
  }

  .rs-logos {
    justify-content: center;
    flex-wrap: wrap;
  }

  .rs-cell--head {
    font-size: 15px;
    line-height: 20px;
  }

  /* «Наша модель работы» — слайдер, как в мобильном макете */
  .rs-model.swiper {
    overflow: hidden;
  }

  .rs-model__track {
    display: flex;
    gap: 0;
  }

  .rs-model-pagination {
    display: block;
    position: static;
    margin-top: 30px;
    text-align: center;
  }

  .rs-model-pagination {
    display: flex;
    justify-content: center;
    gap: 5px;
  }

  .rs-model-pagination .swiper-pagination-bullet {
    width: 5px;
    height: 5px;
    margin: 0;
    background: var(--rs-accent-soft);
    opacity: 1;
    border-radius: 1000px;
    transition: all 0.3s ease;
  }

  .rs-model-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
    width: 35px;
    background: var(--rs-accent);
  }
}

/* ===================== МОБИЛЬНЫЙ ≤ 768px — по мобильному макету Figma === */
@media (max-width: 768px) {
  .rs-only-desktop {
    display: none;
  }

  .rs-only-mobile {
    display: block;
  }

  /* ---------------------------- типографика мобильного макета ---------- */
  .rs-h1,
  .rs-h2 {
    font-size: 25px;
    line-height: 30px;
    letter-spacing: -0.5px;
  }

  .rs-h3,
  .rs-h4 {
    font-size: 18px;
    line-height: 20px;
    letter-spacing: 0;
  }

  .rs-lead {
    font-size: 16px;
    line-height: 20px;
    letter-spacing: -0.08px;
    font-weight: 400;
    max-width: none;
  }

  .rs-text {
    font-size: 16px;
    line-height: 20px;
  }

  .rs-option__title {
    font-size: 16px;
    line-height: 20px;
    letter-spacing: -0.08px;
    text-transform: none;
  }

  .rs-btn {
    font-size: 16px;
    line-height: 20px;
    min-height: 80px;
    padding: 20px;
    border-radius: 25px;
  }

  /* кнопка нижнего блока на мобильном — строго в одну строку */
  .rs-s-cta .rs-btn {
    white-space: nowrap;
    font-size: min(4vw, 16px);
    gap: 8px;
    padding: 20px 12px;
  }

  .rs-s-cta .rs-btn img {
    width: 24px;
    height: 24px;
    flex: 0 0 24px;
  }

  .rs-glass {
    font-size: 14px;
    line-height: 15px;
    letter-spacing: 0.14px;
  }

  /* переносы строк на мобильном расставляет сам поток текста */
  .rs-h1 br,
  .rs-h2 br,
  .rs-h3 br,
  .rs-h4 br,
  .rs-lead br,
  .rs-text br,
  .rs-model__title br,
  .rs-model__sub br {
    display: none;
  }

  /* ---------------------------------- секции, панели, отступы ---------- */
  .rs-section,
  .rs-section--tight,
  .rs-section--flush {
    padding: 0;
  }

  /* панели на мобильном — во всю ширину экрана */
  .rs-panel {
    margin-left: -20px;
    margin-right: -20px;
    padding: 60px 20px;
    gap: 40px;
    border-radius: 30px;
  }

  /* на мобильном у этих блоков панели нет — контент лежит на фоне страницы */
  .rs-panel--plain-mobile {
    background: none;
    box-shadow: none;
    border-radius: 0;
    margin-left: 0;
    margin-right: 0;
    padding: 60px 0 0;
  }

  .rs-s-functions .rs-panel--plain-mobile {
    padding-bottom: 80px;
  }

  /* дальше идёт блок «Результаты клиник-партнёров» — его отступ сверху 60px */
  .rs-s-cooperation .rs-panel--plain-mobile {
    padding-bottom: 60px;
  }

  .rs-s-conditions {
    padding: 60px 0 80px;
  }

  .rs-s-cta {
    padding: 0 0 60px;
  }

  .rs-stack {
    gap: 40px;
  }

  .rs-group {
    gap: 15px;
  }

  /* --------------------- §2 «Что мешает росту клиники» ---------------- */
  .rs-s-loses .rs-container {
    gap: 0;
  }

  .rs-loses__head {
    padding: 0 0 40px;
  }

  .rs-loses-panel {
    display: flex;
    flex-direction: column;
    gap: 40px;
    margin-left: -20px;
    margin-right: -20px;
    padding: 60px 20px;
    border-radius: 30px;
    background: var(--rs-surface);
    box-shadow: var(--rs-shadow);
  }

  /* ------------------------------- абзацы с линейкой справа ----------- */
  .rs-rule-mobile,
  .rs-rule-right {
    border-right: 2px solid var(--rs-line);
    padding-right: 15px;
    max-width: none;
  }

  .rs-rule-mobile .rs-lead,
  .rs-rule-right .rs-lead {
    text-align: left;
  }

  .rs-quote-line {
    border: 0;
    padding: 0;
  }

  /* --------------------------------------------------- таблицы -------- */
  .rs-table {
    background: none;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    overflow: visible;
    max-width: none;
  }

  .rs-table--split .rs-row {
    grid-template-columns: 121fr 121fr 110fr;
  }

  /* таблица «Каждый отвечает за свою часть работы» — на светлой карточке */
  .rs-table--duo {
    background: var(--rs-surface-alt);
    border-radius: 30px;
    box-shadow: var(--rs-shadow);
    padding: 0 5px;
  }

  .rs-cell {
    padding: 20px 5px;
    gap: 10px;
    font-size: 14px;
    line-height: 15px;
    align-items: flex-start;
  }

  .rs-cell--blue {
    padding: 20px 10px;
  }

  .rs-cell--head {
    font-size: 16px;
    line-height: 20px;
    letter-spacing: -0.08px;
    font-weight: 600;
  }

  .rs-cell img {
    width: 20px;
    height: 20px;
    flex: 0 0 20px;
  }

  .rs-cell__arrow {
    display: none;
  }

  /* у мобильной таблицы нет внешней рамки — нижняя линия последней строки видима */
  .rs-table .rs-row:last-child .rs-cell {
    border-bottom: 1px solid var(--rs-line);
  }

  .rs-table .rs-row:last-child .rs-cell:not(.rs-cell--blue) {
    border-bottom-color: var(--rs-line);
  }

  /* ------------------------------------------- карточки --------------- */
  .rs-cards {
    gap: 10px;
  }

  .rs-cards--2,
  .rs-cards--3,
  .rs-cards--4 {
    grid-template-columns: 1fr;
  }

  .rs-option {
    background: var(--rs-surface-alt);
    align-items: center;
  }

  /* фича-карточки превращаются в строки с иконкой слева */
  .rs-feature {
    flex-direction: row;
    align-items: center;
    text-align: left;
    background: var(--rs-surface-alt);
    border-radius: 20px;
    padding: 20px;
    gap: 15px;
  }

  .rs-feature img {
    width: 20px;
    height: 20px;
    flex: 0 0 20px;
  }

  .rs-feature p {
    font-size: 16px;
    line-height: 20px;
    letter-spacing: -0.08px;
    font-weight: 400;
    color: var(--rs-title);
    text-align: left;
  }

  /* этапы сотрудничества */
  .rs-stages {
    gap: 10px;
  }

  .rs-stage {
    background: var(--rs-surface-alt);
  }

  /* модель работы */
  .rs-model__card {
    padding: 30px 20px;
  }

  /* стеклянные карточки «В результате» */
  .rs-glass--1,
  .rs-glass--2 {
    max-width: 300px;
  }

  .rs-glass-list {
    gap: 20px;
  }

  /* отзыв и логотипы клиник */
  .rs-proof__quote {
    background: var(--rs-surface-alt);
  }

  .rs-logos {
    gap: 10px;
    flex-wrap: nowrap;
  }

  .rs-logos img {
    width: 64px;
    flex: 0 1 64px;
  }
}
