/* 1. Создаем контейнер для кнопок и центрируем его */
.js-store-prod-text {
    display: flex;
    flex-direction: column;
    align-items: center;
}

/* 2. Сбрасываем стандартные стили Тильды для родительских блоков ссылок */
.js-store-prod-text p:has(a) {
    display: inline-block;
    margin: 0;
}

/* 3. Создаем ряд для кнопок и центрируем его */
.js-store-prod-text p:has(a) {
    display: flex;
    justify-content: center;
    flex-wrap: wrap; /* Если кнопки не помещаются, они перенесутся на новую строку */
    gap: 15px; /* Современный способ задать отступ между кнопками вместо margin-right */
    margin-top: 20px; /* Общий отступ группы кнопок от текста */
}

/* 4. Настройки у кнопок (убираем margin-top, т.к. он теперь у группы) */
.js-store-prod-text a {
  display: inline-block;
  padding: 10px 15px;
  border-radius: 15px;
  font-weight: 700;
  font-size: 20px;
  text-decoration: none !important;
  text-transform: uppercase;
  text-box: auto;
}

/* 5. Настройки цвета и фона первой кнопки */
.js-store-prod-text a:first-of-type {
    background-color: #a73afd;
    color: #ffffff !important;
}

/* 6. Настройки цвета и фона последней кнопки */
.js-store-prod-text a:last-of-type {
  background-color: #005bff;
  color: #ffffff !important;
}

/* 7. Опционально: плавный эффект при наведении на кнопку */
.js-store-prod-text a:hover {
  opacity: 0.92;
  transition: opacity 0.2s ease;
}

.t706__cartwin_showed {
  z-index:9999999;
}


.t-store__tabs.t-store__tabs_accordion.t-col.t-col_12 {
    margin-top: 20px !important;
}

@media screen and (min-width: 1200px) {
.t-store__tabs.t-store__tabs_accordion.t-col.t-col_12 {
        margin-left: 0px !important;
}
}


/* ==============================
   HERO — DESKTOP + TABLET
   full-bleed + container gutter
================================ */

#rb-contract-hero-d{
  font-family: FreeSet;
  color: #0B0D10;
  width: 100%;
  padding: clamp(36px, 4.2vw, 78px) 0 clamp(26px, 3.4vw, 58px);
  background:
    radial-gradient(900px 520px at 8% 0%, rgba(33,149,95,.18), transparent 60%),
    radial-gradient(900px 520px at 92% 0%, rgba(255,99,9,.14), transparent 60%),
    #F9FCFD;
}

/* full-bleed как в STM секциях */
#rb-contract-hero-d{
  width: 100vw;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
}

#rb-contract-hero-d .rb-container{
  width: 100%;
  padding-inline: clamp(22px, 3.6vw, 84px); /* как “те, что корректировали” */
  box-sizing: border-box;
}

#rb-contract-hero-d .rb-inner{
  max-width: 1440px; /* под STM-логику */
  margin: 0 auto;
}

/* glass */
#rb-contract-hero-d .glass{
  position: relative;
  border-radius: 26px;
  background: rgba(255,255,255,.58);
  border: 1px solid rgba(255,255,255,.45);
  box-shadow: 0 18px 24px rgba(11,13,16,.10);
  backdrop-filter: blur(18px) saturate(1.25);
  -webkit-backdrop-filter: blur(18px) saturate(1.25);
  overflow: hidden;
}

/* layout */
#rb-contract-hero-d .hero{
  display: grid;
  grid-template-columns: 1.08fr .92fr;
  gap: clamp(14px, 2.2vw, 22px);
  align-items: stretch;
  margin-top: 100px;
}

#rb-contract-hero-d .hero-left{
  padding: clamp(22px, 2.2vw, 34px);
  display: flex;
  flex-direction: column;
  justify-content: center;
}

/* kicker */
#rb-contract-hero-d .kicker{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 9px 12px;
  border-radius: 999px;
  border: 1px solid rgba(11,13,16,.10);
  background: rgba(249,252,253,.75);
  font-size: 14px;
  color: rgba(11,13,16,.72);
  margin-bottom: 18px;
  white-space: nowrap;
  max-width: 100%;
}

#rb-contract-hero-d .dot{
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #21955f;
  box-shadow: 0 0 0 4px rgba(33,149,95,.14);
  flex: 0 0 auto;
}

#rb-contract-hero-d h1{
  margin: 0 0 18px;
  font-size: clamp(30px, 3.2vw, 58px);
  line-height: 1.04;
  letter-spacing: -0.8px;
}

/* text */
#rb-contract-hero-d .sub{
  margin: 0 0 22px;
  font-size: clamp(14px, 1.05vw, 18px);
  line-height: 1.65;
  color: rgba(11,13,16,.68);
}
#rb-contract-hero-d .sub p{ margin: 0; }
#rb-contract-hero-d .sub p + p{ margin-top: 10px; }

/* pills */
#rb-contract-hero-d .pills{
  display: flex;
  flex-wrap: wrap;             /* на десктопе можно без скролла */
  gap: 8px;
  padding: 0;
  margin: 0;
  list-style: none;
}

#rb-contract-hero-d .pill{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  border-radius: 999px;
  border: 1px solid rgba(11,13,16,.10);
  background: rgba(255,255,255,.62);
  font-size: 14px;
  line-height: 1.2;
  white-space: nowrap;
}

/* media */
#rb-contract-hero-d .hero-right{
  min-height: clamp(360px, 26vw, 520px);
}

#rb-contract-hero-d .media{
  height: 100%;
  min-height: inherit;
  background-image: url("https://static.tildacdn.com/tild3039-3230-4235-b832-336664386336/prot-bar-manif-1.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  filter: saturate(1.02) contrast(1.02);
}

#rb-contract-hero-d .badge{
  position: absolute;
  left: 14px;
  right: 14px;
  bottom: 14px;
  border-radius: 20px;
  background: rgba(255,255,255,.55);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  padding: 12px;
  font-size: 14px;
  line-height: 1.35;
}

/* планшет: если узко — складываем в одну колонку */
@media (max-width: 980px){
  #rb-contract-hero-d .hero{
    grid-template-columns: 1fr;
  }
  #rb-contract-hero-d .hero-right{
    min-height: 320px;
  }
}

/* ==============================
   SHOW / HIDE
   mobile hero = #rb-contract-hero
   desktop+tablet hero = #rb-contract-hero-d
================================ */

/* показываем мобильный только до 679 */
@media (max-width: 679px){
  #rb-contract-hero{ display: block; }
  #rb-contract-hero-d{ display: none; }
}

/* показываем десктоп/планшет от 680 и выше */
@media (min-width: 680px){
  #rb-contract-hero{ display: none; }
  #rb-contract-hero-d{ display: block; }
}


/* RUSBEST HERO — Liquid Glass (scoped) - mobile */
#rb-contract-hero{
  font-family: FreeSet;
  color: #0B0D10;
  width: 100%;
  padding: clamp(42px, 6vw, 96px) 0 clamp(38px, 5.2vw, 78px);
  background:
    radial-gradient(900px 520px at 8% 0%, rgba(33,149,95,.18), transparent 60%),
    radial-gradient(900px 520px at 92% 0%, rgba(255,99,9,.14), transparent 60%),
    #F9FCFD;
}

.hero-title{
  font-size: clamp(24px, 3.4vw, 58px);
  font-weight: 800;
  line-height: 1.04;
  letter-spacing: -0.8px;
}

#rb-contract-hero .rb-container{
  width: 100%;
  padding-inline: clamp(16px, 3.5vw, 84px);
  box-sizing: border-box;
}

#rb-contract-hero .rb-inner{
  max-width: 1520px;
  margin: 0 auto;
}

/* Glass */
#rb-contract-hero .glass{
  position: relative;
  border-radius: 26px;
  background: rgba(255,255,255,.58);
  border: 1px solid rgba(255,255,255,.45);
  box-shadow: 0 18px 24px rgba(11,13,16,.10);
  backdrop-filter: blur(18px) saturate(1.25);
  -webkit-backdrop-filter: blur(18px) saturate(1.25);
  overflow: hidden;
}

#rb-contract-hero .hero{
  display: grid;
  grid-template-columns: 1.08fr .92fr;
  gap: clamp(14px, 2.2vw, 22px);
  align-items: stretch;
}

#rb-contract-hero .hero-left{
  padding: clamp(22px, 3.2vw, 40px);
  margin-top: 64px;
}

/* Kicker */
#rb-contract-hero .kicker{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 9px 12px;
  border-radius: 999px;
  border: 1px solid rgba(11,13,16,.10);
  background: rgba(249,252,253,.75);
  font-size: 14px;
  color: rgba(11,13,16,.72);
  margin-bottom: 18px;
  white-space: nowrap;
  max-width: 100%;
}

#rb-contract-hero .dot{
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #21955f;
  box-shadow: 0 0 0 4px rgba(33,149,95,.14);
  flex: 0 0 auto;
}

#rb-contract-hero h1{
  margin: 0 0 18px;
  font-size: clamp(28px, 3.4vw, 58px);
  line-height: 1.04;
  letter-spacing: -0.8px;
}

/* Text */
#rb-contract-hero .sub{
  margin: 0 0 22px;
  font-size: clamp(14px, 1.05vw, 18px);
  line-height: 1.65;
  color: rgba(11,13,16,.68);
  max-width: none;
  text-align: left;
  word-spacing: normal;
  letter-spacing: normal;
}
#rb-contract-hero .sub p{ margin: 0; }
#rb-contract-hero .sub p + p{ margin-top: 10px; }

/* Pills — one row + scroll */
#rb-contract-hero .pills{
  display: flex;
  flex-wrap: nowrap;
  gap: 8px;
  padding: 0 2px 6px;
  margin: 0;
  list-style: none;
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  max-width: 100%;
}
#rb-contract-hero .pills::-webkit-scrollbar{ display: none; }

#rb-contract-hero .pill{
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  border-radius: 999px;
  border: 1px solid rgba(11,13,16,.10);
  background: rgba(255,255,255,.62);
  font-size: 14px;
  line-height: 1.2;
  white-space: nowrap;
}

/* Image */
#rb-contract-hero .hero-right{
  min-height: 380px;
}

#rb-contract-hero .media{
  height: 100%;
  min-height: 380px;
  background: center / cover no-repeat;
  filter: saturate(1.02) contrast(1.02);
}

#rb-contract-hero .badge{
  position: absolute;
  left: 14px;
  right: 14px;
  bottom: 14px;
  border-radius: 20px;
  background: rgba(255,255,255,.55);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  padding: 12px;
  font-size: 14px;
  line-height: 1.35;
}

/* Tablet & down */
@media (max-width: 980px){
  #rb-contract-hero .hero{ grid-template-columns: 1fr; }
  #rb-contract-hero .hero-right{ min-height: 320px; }
  #rb-contract-hero .media{ min-height: 320px; }
}

/* Mobile polish */
@media (max-width: 520px){
  #rb-contract-hero{
    padding: 18px 0 26px;
  }
  #rb-contract-hero .rb-container{
    padding-inline: 14px;
  }
  #rb-contract-hero .hero-left{
    padding: 18px;
  }
  #rb-contract-hero .glass{
    border-radius: 22px;
  }
  #rb-contract-hero .kicker{
    white-space: normal;
    line-height: 1.25;
    font-size: 13.5px;
    margin-bottom: 14px;
  }
  #rb-contract-hero h1{
    font-size: clamp(26px, 9.2vw, 40px);
    line-height: 1.05;
    margin-bottom: 12px;
  }
  #rb-contract-hero .sub{
    font-size: 14px;
    line-height: 1.6;
    margin-bottom: 14px;
  }
  #rb-contract-hero .sub p + p{ margin-top: 8px; }
  #rb-contract-hero .pills{
    gap: 8px;
    padding-bottom: 8px;
    margin-inline: -2px;
  }
  #rb-contract-hero .pill{
    font-size: 13.5px;
    padding: 8px 10px;
  }
  #rb-contract-hero .hero-right{ min-height: 220px; }
  #rb-contract-hero .media{ min-height: 220px; }
  #rb-contract-hero .badge{
    left: 12px; right: 12px; bottom: 12px;
    padding: 10px;
    font-size: 13.5px;
    line-height: 1.35;
    border-radius: 18px;
  }
}



@media (max-width: 980px){

  /* ========== PART 1 (rb-m-stm) ========== */
  #rb-m-stm{
    font-family: FreeSet;
    color:#0B0D10;
    width:100%;
    padding:18px 0 0;
    background: linear-gradient(180deg, #F9FCFD 0%, #F1F1F1 50%, #F9FCFD 100%);
  }
  #rb-m-stm .rbm-container{
    width:100%;
    padding-inline: clamp(14px, 3.5vw, 26px);
    box-sizing:border-box;
  }
  #rb-m-stm .rbm-inner{
    max-width: 720px;
    margin: 0 auto;
  }

  #rb-m-stm .rbm-card{
    border:1px solid rgba(11,13,16,.10);
    border-radius:26px;
    background: rgba(255,255,255,.62);
    box-shadow: 0 18px 55px rgba(11,13,16,.08);
    backdrop-filter: blur(18px) saturate(1.2);
    -webkit-backdrop-filter: blur(18px) saturate(1.2);
    padding:16px;
    position:relative;
    overflow:hidden;
  }
  #rb-m-stm .rbm-card:before{
    content:"";
    position:absolute;
    inset:-2px;
    background:
      radial-gradient(520px 260px at 0% 0%, rgba(33,149,95,.10), transparent 60%),
      radial-gradient(520px 260px at 100% 20%, rgba(255,99,9,.08), transparent 60%);
    opacity:.9;
    pointer-events:none;
  }
  #rb-m-stm .rbm-card > *{ position:relative; }

  #rb-m-stm .rbm-stack{ display:grid; gap:12px; margin-top:12px; }

  #rb-m-stm .rbm-h2{
    margin:0 0 10px;
    font-size:18px;
    line-height:1.2;
    letter-spacing:-0.2px;
  }
  #rb-m-stm .rbm-sub{
    margin:0 0 14px;
    font-size:14px;
    line-height:1.5;
    color: rgba(11,13,16,.68);
    max-width:62ch;
  }

  #rb-m-stm .rbm-mini{
    border:1px solid rgba(11,13,16,.10);
    border-radius:18px;
    background: rgba(249,252,253,.80);
    padding:14px;
    position: relative;
    overflow: hidden;
  }
  #rb-m-stm .rbm-mini h3{
    margin:0 0 6px;
    font-size:15px;
    letter-spacing:.1px;
  }
  #rb-m-stm .rbm-mini p{
    margin:0;
    font-size:13.6px;
    line-height:1.5;
    color: rgba(11,13,16,.68);
  }

  #rb-m-stm .rbm-list{
    margin:0;
    padding:0;
    list-style:none;
    display:grid;
    gap:10px;
  }
  #rb-m-stm .rbm-li{
    display:grid;
    grid-template-columns:24px 1fr;
    gap:10px;
    padding:12px;
    border-radius:18px;
    border:1px solid rgba(11,13,16,.10);
    background: rgba(249,252,253,.80);
  }
  #rb-m-stm .rbm-li b{
    display:block;
    font-size:13.8px;
    margin-bottom:3px;
    letter-spacing:.1px;
  }
  #rb-m-stm .rbm-li span{
    display:block;
    font-size:13px;
    line-height:1.45;
    color: rgba(11,13,16,.68);
  }

  #rb-m-stm .rbm-ic{
    width:24px;height:24px;border-radius:9px;
    display:grid;place-items:center;
    color:#fff;font-weight:900;font-size:12px;
    background: linear-gradient(135deg, #21955f, #2BCB7D);
    box-shadow: 0 10px 22px rgba(33,149,95,.16);
  }
  #rb-m-stm .rbm-ic--o{
    background: linear-gradient(135deg, #FF6309, #FF8A45);
    box-shadow: 0 10px 22px rgba(255,99,9,.16);
  }

  #rb-m-stm .rbm-mt{ margin-top:12px; }

  @media (min-width: 680px) and (max-width: 980px){
    #rb-m-stm .rbm-inner{ max-width: 860px; }
    #rb-m-stm .rbm-card{ padding:18px; }
    #rb-m-stm .rbm-stack{ gap:14px; }
  }
  @media (max-width: 520px){
    #rb-m-stm{ padding-top:14px; }
    #rb-m-stm .rbm-card{ padding:14px; border-radius:22px; }
    #rb-m-stm .rbm-h2{ font-size:17px; }
  }


  /* ========== PART 2 (rb-m-stm-p2) ========== */
  #rb-m-stm-p2{
    font-family: FreeSet;
    color:#0B0D10;
    width:100%;
    padding:12px 0 32px;
    background: #F9FCFD;
  }
  #rb-m-stm-p2 .rbm-container{
    width:100%;
    padding-inline: clamp(14px, 3.5vw, 26px);
    box-sizing:border-box;
  }
  #rb-m-stm-p2 .rbm-inner{
    max-width: 720px;
    margin: 0 auto;
  }

  #rb-m-stm-p2 .rbm-media-card{
    border:1px solid rgba(11,13,16,.10);
    border-radius:26px;
    background: rgba(255,255,255,.62);
    box-shadow: 0 18px 55px rgba(11,13,16,.08);
    backdrop-filter: blur(18px) saturate(1.15);
    -webkit-backdrop-filter: blur(18px) saturate(1.15);
    overflow:hidden;
    position:relative;
    margin-top:12px;
  }
  #rb-m-stm-p2 .rbm-media1,
  #rb-m-stm-p2 .rbm-media2{
    width:100%;
    height:240px;
    background-size:cover;
    background-position:center;
    filter:saturate(1.02) contrast(1.02);
  }

  #rb-m-stm-p2 .rbm-card{
    border:1px solid rgba(11,13,16,.10);
    border-radius:26px;
    background: rgba(255,255,255,.62);
    box-shadow: 0 18px 55px rgba(11,13,16,.08);
    backdrop-filter: blur(18px) saturate(1.2);
    -webkit-backdrop-filter: blur(18px) saturate(1.2);
    padding:16px;
    position:relative;
    overflow:hidden;
    margin-top:12px;
  }
  #rb-m-stm-p2 .rbm-card:before{
    content:"";
    position:absolute;
    inset:-2px;
    background:
      radial-gradient(520px 260px at 0% 0%, rgba(33,149,95,.10), transparent 60%),
      radial-gradient(520px 260px at 100% 20%, rgba(255,99,9,.08), transparent 60%);
    opacity:.9;
    pointer-events:none;
  }
  #rb-m-stm-p2 .rbm-card > *{ position:relative; }

  #rb-m-stm-p2 .rbm-h2{
    margin:0 0 10px;
    font-size:18px;
    line-height:1.2;
    letter-spacing:-0.2px;
  }
  #rb-m-stm-p2 .rbm-sub{
    margin:0 0 14px;
    font-size:14px;
    line-height:1.5;
    color: rgba(11,13,16,.68);
  }

  #rb-m-stm-p2 .rbm-list{
    margin:0;
    padding:0;
    list-style:none;
    display:grid;
    gap:10px;
  }
  #rb-m-stm-p2 .rbm-li{
    display:grid;
    grid-template-columns:24px 1fr;
    gap:10px;
    padding:12px;
    border-radius:18px;
    border:1px solid rgba(11,13,16,.10);
    background: rgba(249,252,253,.80);
  }
  #rb-m-stm-p2 .rbm-li b{
    display:block;
    font-size:13.8px;
    margin-bottom:3px;
    letter-spacing:.1px;
  }
  #rb-m-stm-p2 .rbm-li span{
    display:block;
    font-size:13px;
    line-height:1.45;
    color: rgba(11,13,16,.68);
  }

  #rb-m-stm-p2 .rbm-ic{
    width:24px;height:24px;border-radius:9px;
    display:grid;place-items:center;
    color:#fff;font-weight:900;font-size:12px;
    background: linear-gradient(135deg, #21955f, #2BCB7D);
    box-shadow: 0 10px 22px rgba(33,149,95,.16);
  }
  #rb-m-stm-p2 .rbm-ic--o{
    background: linear-gradient(135deg, #FF6309, #FF8A45);
    box-shadow: 0 10px 22px rgba(255,99,9,.16);
  }

  #rb-m-stm-p2 .rbm-steps{ display:grid; gap:10px; }
  #rb-m-stm-p2 .rbm-step{
    border-radius:18px;
    border:1px solid rgba(11,13,16,.10);
    background: rgba(249,252,253,.80);
    padding:14px;
    position:relative;
    overflow:hidden;
  }
  #rb-m-stm-p2 .rbm-step:before{
    content:"";
    position:absolute;
    inset:-2px;
    background:
      radial-gradient(520px 240px at 0% 0%, rgba(33,149,95,.08), transparent 60%),
      radial-gradient(520px 240px at 100% 70%, rgba(255,99,9,.06), transparent 60%);
    opacity:.9;
    pointer-events:none;
  }
  #rb-m-stm-p2 .rbm-step > *{ position:relative; }

  #rb-m-stm-p2 .rbm-step-head{
    display:grid;
    grid-template-columns:24px 1fr;
    gap:10px;
    align-items:center;
    margin-bottom:8px;
  }
  #rb-m-stm-p2 .rbm-step-num{
    width:24px;height:24px;border-radius:9px;
    display:grid;place-items:center;
    background: rgba(11,13,16,.06);
    border:1px solid rgba(11,13,16,.10);
    font-weight:900;font-size:12px;
    color: rgba(11,13,16,.85);
  }
  #rb-m-stm-p2 .rbm-step-title{
    font-size:13.8px;
    font-weight:800;
    letter-spacing:.1px;
    line-height:1.25;
  }
  #rb-m-stm-p2 .rbm-step p{
    margin:0;
    font-size:13px;
    line-height:1.45;
    color: rgba(11,13,16,.68);
  }

  @media (min-width: 680px) and (max-width: 980px){
    #rb-m-stm-p2 .rbm-inner{ max-width: 860px; }
    #rb-m-stm-p2 .rbm-steps{ grid-template-columns: 1fr 1fr; gap:12px; }
    #rb-m-stm-p2 .rbm-card{ padding:18px; }
  }
  @media (max-width: 520px){
    #rb-m-stm-p2 .rbm-card{ padding:14px; border-radius:22px; }
    #rb-m-stm-p2 .rbm-h2{ font-size:17px; }
    #rb-m-stm-p2 .rbm-media1,
    #rb-m-stm-p2 .rbm-media2{ height:220px; }
  }

}


@media (min-width: 980px){

  /* ========== DESKTOP PART 1 (rb-d-stm) ========== */
  #rb-d-stm{
    font-family: FreeSet;
    color:#0B0D10;
    width:100%;
    padding: clamp(36px, 4vw, 64px) 0 clamp(18px, 2.2vw, 32px);
    background: linear-gradient(180deg, #F9FCFD 0%, #F3F6F7 60%, #F2F5F6 100%);
  }
  #rb-d-stm .rbd-container{
    width:100%;
    padding-inline: clamp(22px, 3.6vw, 84px);
    box-sizing:border-box;
  }
  #rb-d-stm .rbd-inner{
    max-width: 1440px;
    margin: 0 auto;
  }

  #rb-d-stm .rbd-card{
    border:1px solid rgba(11,13,16,.10);
    border-radius:28px;
    background: rgba(255,255,255,.62);
    box-shadow: 0 18px 55px rgba(11,13,16,.08);
    backdrop-filter: blur(18px) saturate(1.2);
    -webkit-backdrop-filter: blur(18px) saturate(1.2);
    padding: clamp(18px, 2vw, 26px);
    position:relative;
    overflow:hidden;
  }
  #rb-d-stm .rbd-card:before{
    content:"";
    position:absolute;
    inset:-2px;
    background:
      radial-gradient(680px 320px at 0% 0%, rgba(33,149,95,.10), transparent 60%),
      radial-gradient(680px 320px at 100% 18%, rgba(255,99,9,.08), transparent 60%);
    opacity:.9;
    pointer-events:none;
  }
  #rb-d-stm .rbd-card > *{ position:relative; }

  #rb-d-stm .rbd-h2{
    margin:0 0 10px;
    font-size: clamp(20px, 1.4vw, 26px);
    line-height:1.15;
    letter-spacing:-0.25px;
  }
  #rb-d-stm .rbd-sub{
    margin:0 0 16px;
    font-size:15px;
    line-height:1.55;
    color: rgba(11,13,16,.68);
    max-width:80ch;
  }

  #rb-d-stm .rbd-mini-grid{
    display:grid;
    grid-template-columns: repeat(3, 1fr);
    gap:12px;
  }
  #rb-d-stm .rbd-mini{
    border:1px solid rgba(11,13,16,.10);
    border-radius:18px;
    background: rgba(249,252,253,.82);
    padding:16px;
    height:100%;
  }
  #rb-d-stm .rbd-mini h3{
    margin:0 0 6px;
    font-size:15px;
    letter-spacing:.1px;
  }
  #rb-d-stm .rbd-mini p{
    margin:0;
    font-size:13.8px;
    line-height:1.5;
    color: rgba(11,13,16,.68);
  }

  #rb-d-stm .rbd-cols{
    display:grid;
    grid-template-columns: 1.05fr .95fr;
    gap:14px;
    align-items:stretch;
    margin-top:14px;
  }

  #rb-d-stm .rbd-list{
    margin:0;
    padding:0;
    list-style:none;
    display:grid;
    gap:10px;
  }
  #rb-d-stm .rbd-li{
    display:grid;
    grid-template-columns:26px 1fr;
    gap:10px;
    padding:14px;
    border-radius:18px;
    border:1px solid rgba(11,13,16,.10);
    background: rgba(249,252,253,.82);
  }
  #rb-d-stm .rbd-li b{
    display:block;
    font-size:14px;
    margin-bottom:3px;
    letter-spacing:.1px;
  }
  #rb-d-stm .rbd-li span{
    display:block;
    font-size:13.2px;
    line-height:1.45;
    color: rgba(11,13,16,.68);
  }

  #rb-d-stm .rbd-ic{
    width:26px;height:26px;border-radius:10px;
    display:grid;place-items:center;
    color:#fff;font-weight:900;font-size:12px;
    background: linear-gradient(135deg, #21955f, #2BCB7D);
    box-shadow: 0 10px 22px rgba(33,149,95,.16);
  }
  #rb-d-stm .rbd-ic--o{
    background: linear-gradient(135deg, #FF6309, #FF8A45);
    box-shadow: 0 10px 22px rgba(255,99,9,.16);
  }

  #rb-d-stm .rbd-media-card{
    border:1px solid rgba(11,13,16,.10);
    border-radius:28px;
    background: rgba(255,255,255,.62);
    box-shadow: 0 18px 55px rgba(11,13,16,.08);
    backdrop-filter: blur(18px) saturate(1.15);
    -webkit-backdrop-filter: blur(18px) saturate(1.15);
    overflow:hidden;
    position:relative;
    margin-top:14px;
  }
  #rb-d-stm .rbd-media{
    width:100%;
    height: clamp(280px, 22vw, 420px);
    background-size:cover;
    background-position:center;
    filter:saturate(1.02) contrast(1.02);
  }

  #rb-d-stm .rbd-mt{ margin-top:14px; }

  @media (max-width: 1120px){
    #rb-d-stm .rbd-mini-grid{ grid-template-columns: 1fr; }
    #rb-d-stm .rbd-cols{ grid-template-columns: 1fr; }
  }
  @media (min-width: 2000px){
    #rb-d-stm .rbd-inner{ max-width: 1680px; }
  }


  /* ========== DESKTOP PART 2 (rb-d-stm-p2) ========== */
  #rb-d-stm-p2{
    font-family: FreeSet;
    color:#0B0D10;
    width:100%;
    padding: 18px 0 clamp(40px, 5vw, 74px);
    background: linear-gradient(180deg, #F2F5F6 0%, #F9FCFD 100%);
  }
  #rb-d-stm-p2 .rbd-container{
    width:100%;
    padding-inline: clamp(22px, 3.6vw, 84px);
    box-sizing:border-box;
  }
  #rb-d-stm-p2 .rbd-inner{
    max-width: 1440px;
    margin: 0 auto;
  }

  #rb-d-stm-p2 .rbd-card{
    border:1px solid rgba(11,13,16,.10);
    border-radius:28px;
    background: rgba(255,255,255,.62);
    box-shadow: 0 18px 55px rgba(11,13,16,.08);
    backdrop-filter: blur(18px) saturate(1.2);
    -webkit-backdrop-filter: blur(18px) saturate(1.2);
    padding: clamp(18px, 2vw, 26px);
    position:relative;
    overflow:hidden;
    margin-top:14px;
  }
  #rb-d-stm-p2 .rbd-card:before{
    content:"";
    position:absolute;
    inset:-2px;
    background:
      radial-gradient(680px 320px at 0% 0%, rgba(33,149,95,.10), transparent 60%),
      radial-gradient(680px 320px at 100% 18%, rgba(255,99,9,.08), transparent 60%);
    opacity:.9;
    pointer-events:none;
  }
  #rb-d-stm-p2 .rbd-card > *{ position:relative; }

  #rb-d-stm-p2 .rbd-h2{
    margin:0 0 10px;
    font-size: clamp(20px, 1.4vw, 26px);
    line-height:1.15;
    letter-spacing:-0.25px;
  }
  #rb-d-stm-p2 .rbd-sub{
    margin:0 0 16px;
    font-size:15px;
    line-height:1.55;
    color: rgba(11,13,16,.68);
    max-width:80ch;
  }

  #rb-d-stm-p2 .rbd-cols{
    display:grid;
    grid-template-columns: 1fr 1fr;
    gap:12px;
    align-items:start;
  }

  #rb-d-stm-p2 .rbd-list{
    margin:0;
    padding:0;
    list-style:none;
    display:grid;
    gap:10px;
  }
  #rb-d-stm-p2 .rbd-li{
    display:grid;
    grid-template-columns:26px 1fr;
    gap:10px;
    padding:14px;
    border-radius:18px;
    border:1px solid rgba(11,13,16,.10);
    background: rgba(249,252,253,.82);
  }
  #rb-d-stm-p2 .rbd-li b{
    display:block;
    font-size:14px;
    margin-bottom:3px;
    letter-spacing:.1px;
  }
  #rb-d-stm-p2 .rbd-li span{
    display:block;
    font-size:13.2px;
    line-height:1.45;
    color: rgba(11,13,16,.68);
  }

  #rb-d-stm-p2 .rbd-ic{
    width:26px;height:26px;border-radius:10px;
    display:grid;place-items:center;
    color:#fff;font-weight:900;font-size:12px;
    background: linear-gradient(135deg, #21955f, #2BCB7D);
    box-shadow: 0 10px 22px rgba(33,149,95,.16);
  }
  #rb-d-stm-p2 .rbd-ic--o{
    background: linear-gradient(135deg, #FF6309, #FF8A45);
    box-shadow: 0 10px 22px rgba(255,99,9,.16);
  }

  #rb-d-stm-p2 .rbd-media-card{
    border:1px solid rgba(11,13,16,.10);
    border-radius:28px;
    background: rgba(255,255,255,.62);
    box-shadow: 0 18px 55px rgba(11,13,16,.08);
    backdrop-filter: blur(18px) saturate(1.15);
    -webkit-backdrop-filter: blur(18px) saturate(1.15);
    overflow:hidden;
    position:relative;
    margin-top:14px;
  }
  #rb-d-stm-p2 .rbd-media{
    width:100%;
    height: clamp(280px, 22vw, 420px);
    background-size:cover;
    background-position:center;
    filter:saturate(1.02) contrast(1.02);
  }

  #rb-d-stm-p2 .rbd-steps{
    display:grid;
    grid-template-columns: repeat(4, 1fr);
    gap:12px;
  }
  #rb-d-stm-p2 .rbd-step{
    border-radius:18px;
    border:1px solid rgba(11,13,16,.10);
    background: rgba(249,252,253,.82);
    padding:16px;
    position:relative;
    overflow:hidden;
  }
  #rb-d-stm-p2 .rbd-step:before{
    content:"";
    position:absolute;
    inset:-2px;
    background:
      radial-gradient(620px 260px at 0% 0%, rgba(33,149,95,.08), transparent 60%),
      radial-gradient(620px 260px at 100% 70%, rgba(255,99,9,.06), transparent 60%);
    opacity:.9;
    pointer-events:none;
  }
  #rb-d-stm-p2 .rbd-step > *{ position:relative; }

  #rb-d-stm-p2 .rbd-step-head{
    display:grid;
    grid-template-columns:26px 1fr;
    gap:10px;
    align-items:center;
    margin-bottom:10px;
  }
  #rb-d-stm-p2 .rbd-step-num{
    width:26px;height:26px;border-radius:10px;
    display:grid;place-items:center;
    background: rgba(11,13,16,.06);
    border:1px solid rgba(11,13,16,.10);
    font-weight:900;
    font-size:12px;
    color: rgba(11,13,16,.85);
  }
  #rb-d-stm-p2 .rbd-step-title{
    font-size:14px;
    font-weight:900;
    letter-spacing:.1px;
    line-height:1.25;
  }
  #rb-d-stm-p2 .rbd-step p{
    margin:0;
    font-size:13.2px;
    line-height:1.45;
    color: rgba(11,13,16,.68);
  }

  @media (max-width: 1240px){
    #rb-d-stm-p2 .rbd-steps{ grid-template-columns: 1fr 1fr; }
  }
  @media (max-width: 1120px){
    #rb-d-stm-p2 .rbd-cols{ grid-template-columns: 1fr; }
  }
  @media (min-width: 2000px){
    #rb-d-stm-p2 .rbd-inner{ max-width: 1680px; }
  }

}



/* === MEDIA BACKGROUNDS === */

/* HERO */
.hero-right .media{
  background-image:
    url("https://static.tildacdn.com/tild3039-3230-4235-b832-336664386336/prot-bar-manif-1.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

/* STM PART 1 / GENERAL MEDIA */
.rbm-media{
  background-image:
    radial-gradient(720px 420px at 70% 10%, rgba(33,149,95,.14), transparent 60%),
    radial-gradient(720px 420px at 25% 90%, rgba(255,99,9,.10), transparent 60%),
    url("https://static.tildacdn.com/tild3039-3230-4235-b832-336664386336/prot-bar-manif-1.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

/* STM PART 2 — IMAGE 1 */
.rbm-media1{
  background-image:
    radial-gradient(720px 420px at 70% 10%, rgba(33,149,95,.14), transparent 60%),
    radial-gradient(720px 420px at 25% 90%, rgba(255,99,9,.10), transparent 60%),
    url("https://static.tildacdn.com/tild3534-3731-4430-b138-663464626531/prot-bar-manif-4.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

/* STM PART 2 — IMAGE 2 */
.rbm-media2{
  background-image:
    radial-gradient(720px 420px at 70% 10%, rgba(33,149,95,.14), transparent 60%),
    radial-gradient(720px 420px at 25% 90%, rgba(255,99,9,.10), transparent 60%),
    url("https://static.tildacdn.com/tild6463-3861-4936-b538-636336623566/prot-bar-manif-2.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

/* =========================================
   RUSBEST / STM — DESKTOP+LANDSCAPE (980+)
   Works with HTML blocks:
   #rb-d-stm  and  #rb-d-stm-p2
========================================= */
@media (min-width: 980px){

  :root{
    --rbd-text:#0B0D10;
    --rbd-muted: rgba(11,13,16,.68);
    --rbd-border: rgba(11,13,16,.10);

    --rbd-green:#21955f;
    --rbd-orange:#FF6309;

    --rbd-radius2: 28px;
    --rbd-shadow: 0 18px 55px rgba(11,13,16,.08);

    --rbd-gutter: clamp(22px, 3.6vw, 84px);
    --rbd-max: 1440px;

    --rbd-font: FreeSet;
  }

  /* PART 1: заканчивается #F2F5F6 */
  #rb-d-stm{
    font-family: var(--rbd-font);
    color: var(--rbd-text);
    width: 100%;
    padding: clamp(36px, 4vw, 64px) 0 clamp(18px, 2.2vw, 32px);
    background: linear-gradient(180deg, #F9FCFD 0%, #F3F6F7 60%, #F2F5F6 100%);
  }

  /* PART 2: начинается #F2F5F6 и уходит в #F9FCFD */
  #rb-d-stm-p2{
    font-family: var(--rbd-font);
    color: var(--rbd-text);
    width: 100%;
    padding: 18px 0 clamp(40px, 5vw, 74px);
    background: linear-gradient(180deg, #F2F5F6 0%, #F9FCFD 100%);
  }

  /* containers: autoscale to window width */
  #rb-d-stm .rbm-container,
  #rb-d-stm-p2 .rbm-container{
    width: 100%;
    padding-inline: var(--rbd-gutter);
    box-sizing: border-box;
  }

  #rb-d-stm .rbm-inner,
  #rb-d-stm-p2 .rbm-inner{
    max-width: var(--rbd-max);
    margin: 0 auto;
  }

  /* glass card */
  #rb-d-stm .rbm-card,
  #rb-d-stm-p2 .rbm-card{
    border: 1px solid var(--rbd-border);
    border-radius: var(--rbd-radius2);
    background: rgba(255,255,255,.62);
    box-shadow: var(--rbd-shadow);
    backdrop-filter: blur(18px) saturate(1.2);
    -webkit-backdrop-filter: blur(18px) saturate(1.2);
    padding: clamp(18px, 2vw, 26px);
    position: relative;
    overflow: hidden;
  }

  #rb-d-stm .rbm-card:before,
  #rb-d-stm-p2 .rbm-card:before{
    content:"";
    position:absolute;
    inset:-2px;
    background:
      radial-gradient(680px 320px at 0% 0%, rgba(33,149,95,.10), transparent 60%),
      radial-gradient(680px 320px at 100% 18%, rgba(255,99,9,.08), transparent 60%);
    opacity:.9;
    pointer-events:none;
  }
  #rb-d-stm .rbm-card > *,
  #rb-d-stm-p2 .rbm-card > *{ position: relative; }

  /* spacing between sections */
  #rb-d-stm .rbm-mt{ margin-top: 14px; }
  #rb-d-stm-p2 .rbm-card{ margin-top: 14px; }

  /* headings */
  #rb-d-stm .rbm-h2,
  #rb-d-stm-p2 .rbm-h2{
    margin: 0 0 10px;
    font-size: clamp(20px, 1.4vw, 26px);
    line-height: 1.15;
    letter-spacing: -0.25px;
  }

  #rb-d-stm .rbm-sub,
  #rb-d-stm-p2 .rbm-sub{
    margin: 0 0 16px;
    font-size: 15px;
    line-height: 1.55;
    color: var(--rbd-muted);
    max-width: 85ch;
  }

  /* PART 1: quick benefits — 3 columns */
  #rb-d-stm .rbm-stack{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    margin-top: 14px;
  }

  #rb-d-stm .rbm-mini{
    border: 1px solid rgba(11,13,16,.10);
    border-radius: 18px;
    background: rgba(249,252,253,.82);
    padding: 16px;
    height: 100%;
  }
  #rb-d-stm .rbm-mini h3{ margin:0 0 6px; font-size: 15px; letter-spacing: .1px; }
  #rb-d-stm .rbm-mini p{ margin:0; font-size: 13.8px; line-height:1.5; color: var(--rbd-muted); }

  /* lists default */
  #rb-d-stm .rbm-list,
  #rb-d-stm-p2 .rbm-list{
    margin: 0;
    padding: 0;
    list-style: none;
    display: grid;
    gap: 10px;
  }

  #rb-d-stm .rbm-li,
  #rb-d-stm-p2 .rbm-li{
    display: grid;
    grid-template-columns: 26px 1fr;
    gap: 10px;
    padding: 14px;
    border-radius: 18px;
    border: 1px solid rgba(11,13,16,.10);
    background: rgba(249,252,253,.82);
  }

  #rb-d-stm .rbm-li b,
  #rb-d-stm-p2 .rbm-li b{
    display:block;
    font-size: 14px;
    margin-bottom: 3px;
    letter-spacing: .1px;
  }

  #rb-d-stm .rbm-li span,
  #rb-d-stm-p2 .rbm-li span{
    display:block;
    font-size: 13.2px;
    line-height: 1.45;
    color: var(--rbd-muted);
  }

  /* icons */
  #rb-d-stm .rbm-ic,
  #rb-d-stm-p2 .rbm-ic{
    width:26px;height:26px;border-radius:10px;
    display:grid;place-items:center;
    color:#fff;font-weight:900;font-size:12px;
    background: linear-gradient(135deg, var(--rbd-green), #2BCB7D);
    box-shadow: 0 10px 22px rgba(33,149,95,.16);
  }
  #rb-d-stm .rbm-ic--o,
  #rb-d-stm-p2 .rbm-ic--o{
    background: linear-gradient(135deg, var(--rbd-orange), #FF8A45);
    box-shadow: 0 10px 22px rgba(255,99,9,.16);
  }

  /* PART 1: "Что производим" — 2 колонки списков */
  #rb-d-stm .rbm-two-cols{
    display: grid;
    grid-template-columns: 1.05fr .95fr;
    gap: 14px;
    align-items: start;
    margin-top: 14px;
  }

  /* media cards */
  #rb-d-stm-p2 .rbm-media-card,
  #rb-d-stm .rbm-media-card{
    border: 1px solid var(--rbd-border);
    border-radius: var(--rbd-radius2);
    background: rgba(255,255,255,.62);
    box-shadow: var(--rbd-shadow);
    backdrop-filter: blur(18px) saturate(1.15);
    -webkit-backdrop-filter: blur(18px) saturate(1.15);
    overflow: hidden;
    position: relative;
    margin-top: 14px;
  }

  #rb-d-stm-p2 .rbm-media1,
  #rb-d-stm-p2 .rbm-media2{
    width: 100%;
    height: clamp(280px, 22vw, 420px);
    background-size: cover;
    background-position: center;
    filter: saturate(1.02) contrast(1.02);
  }

  /* images (ВАЖНО: ссылки на картинки тут, а не в HTML) */
  #rb-d-stm-p2 .rbm-media1{
    background-image:
      radial-gradient(840px 520px at 70% 10%, rgba(33,149,95,.14), transparent 60%),
      radial-gradient(840px 520px at 25% 90%, rgba(255,99,9,.10), transparent 60%),
      url("https://static.tildacdn.com/tild3534-3731-4430-b138-663464626531/prot-bar-manif-4.png");
  }

  #rb-d-stm-p2 .rbm-media2{
    background-image:
      radial-gradient(840px 520px at 70% 10%, rgba(33,149,95,.14), transparent 60%),
      radial-gradient(840px 520px at 25% 90%, rgba(255,99,9,.10), transparent 60%),
      url("https://static.tildacdn.com/tild6463-3861-4936-b538-636336623566/prot-bar-manif-2.png");
  }

  /* PART 2: quality list — 2 колонки */
  #rb-d-stm-p2 .rbm-quality-grid{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
  }

  /* PART 2: steps — 4 колонки */
  #rb-d-stm-p2 .rbm-steps{
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
    margin-top: 14px;
  }

  #rb-d-stm-p2 .rbm-step{
    border-radius: 18px;
    border: 1px solid rgba(11,13,16,.10);
    background: rgba(249,252,253,.82);
    padding: 16px;
    position: relative;
    overflow: hidden;
  }

  #rb-d-stm-p2 .rbm-step:before{
    content:"";
    position:absolute;
    inset:-2px;
    background:
      radial-gradient(620px 260px at 0% 0%, rgba(33,149,95,.08), transparent 60%),
      radial-gradient(620px 260px at 100% 70%, rgba(255,99,9,.06), transparent 60%);
    opacity:.9;
    pointer-events:none;
  }
  #rb-d-stm-p2 .rbm-step > *{ position: relative; }

  #rb-d-stm-p2 .rbm-step-head{
    display:grid;
    grid-template-columns:26px 1fr;
    gap:10px;
    align-items:center;
    margin-bottom:10px;
  }

  #rb-d-stm-p2 .rbm-step-num{
    width:26px;height:26px;border-radius:10px;
    display:grid;place-items:center;
    background: rgba(11,13,16,.06);
    border: 1px solid rgba(11,13,16,.10);
    font-weight: 900;
    font-size: 12px;
    color: rgba(11,13,16,.85);
  }

  #rb-d-stm-p2 .rbm-step-title{
    font-size: 14px;
    font-weight: 900;
    letter-spacing: .1px;
    line-height: 1.25;
  }

  #rb-d-stm-p2 .rbm-step p{
    margin: 0;
    font-size: 13.2px;
    line-height: 1.45;
    color: var(--rbd-muted);
  }

  /* small desktop adjustments */
  @media (max-width: 1240px){
    #rb-d-stm .rbm-stack{ grid-template-columns: 1fr; }
    #rb-d-stm .rbm-two-cols{ grid-template-columns: 1fr; }
    #rb-d-stm-p2 .rbm-steps{ grid-template-columns: 1fr 1fr; }
    #rb-d-stm-p2 .rbm-quality-grid{ grid-template-columns: 1fr; }
  }
}


/* показываем mobile до 980, desktop после 980 */
@media (max-width: 980px){
  #rb-d-stm, #rb-d-stm-p2{ display:none; }
}
@media (min-width: 980px){
  #rb-m-stm, #rb-m-stm-p2{ display:none; }
}

/* FIX: rbm-stack на десктопе (если этот блок вдруг показывается на 980+) */
@media (min-width: 980px){
  #rb-m-stm .rbm-stack{
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-top: 14px;
    align-items: stretch;
  }

}


/* === Tilda T123 full-bleed секции (как ZeroBlock autoscale) === */
#rb-m-stm, #rb-m-stm-p2, #rb-d-stm, #rb-d-stm-p2{
  width: 100vw;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  padding-top: 25px;
}

/* чтобы внутренний контент оставался аккуратно ограничен как и было */
#rb-m-stm .rbm-container,
#rb-m-stm-p2 .rbm-container,
#rb-d-stm .rbd-container,
#rb-d-stm-p2 .rbd-container{
  width: 100%;
}

/* ===== PATCH: fixes only for 980px+ (desktop) ===== */
@media (min-width: 980px){

  /* 1) rbm-mini: НЕ задаём height:100% (ломает автосреду у grid) */
  #rb-d-stm .rbm-stack{
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: stretch;
  }

  #rb-d-stm .rbm-mini{
    height: auto !important;         /* ключевой фикс */
    align-self: stretch;
    min-width: 0;                    /* чтобы текст не раздвигал колонку */
    display: flex;                   /* чтобы внутренности вели себя стабильно */
    flex-direction: column;
  }

  /* 2) запрет “одной длинной строки” */
  #rb-d-stm .rbm-li b,
  #rb-d-stm .rbm-li span,
  #rb-d-stm-p2 .rbm-li b,
  #rb-d-stm-p2 .rbm-li span{
    white-space: normal !important;
    overflow-wrap: anywhere;
    word-break: normal;
  }

  /* 3) минимальная высота под 2 строки описания */
  #rb-d-stm .rbm-li span,
  #rb-d-stm-p2 .rbm-li span{
    display: block;
    min-height: calc(1.45em * 2);  /* 2 строки при line-height 1.45 */
  }
}

/* ===== HERO show/hide под Zero брейкпоинты Тильды ===== */
/* mobile hero показываем до 979 включительно */
@media (max-width: 979px){
  #rb-contract-hero{ display:block !important; }
  #rb-contract-hero-d{ display:none !important; }
}

/* desktop hero показываем с 980 */
@media (min-width: 980px){
  #rb-contract-hero{ display:none !important; }
  #rb-contract-hero-d{ display:block !important; }
}

