.b2b-container {
  max-width: var(--container-size);
}
.b2b-brand-color-text {
  color: var(--brand-color)
}
.b2b-container {
  max-width: var(--container-size);
  margin: 0 auto;
}
.b2b-section {
  padding: var(--section-vertical-padding) var(--section-horizontal-padding);
}
.b2b-full-bg {
  position: relative;
}
.b2b-full-bg::before {
  content: '';
  position: absolute;
  top: 0;
  left: 50%;
  width: 100vw;
  height: 100%;
  transform: translateX(-50%);
  z-index: 0;
}
.b2b-full-bg-wrapper {
  position: relative;
  z-index: 1;
}
.b2b-fixed-up {
  opacity: 0;
  pointer-events: none;
  position: fixed;
  bottom: 2%;
  right: 13px;
  width: calc(var(--rem) * 29);
  height: calc(var(--rem) * 31);
  background: url(/local/templates/rebranding/assets/img/icons/up_button.svg) no-repeat center / contain;
  cursor: pointer;
  z-index: 10;
  transition: opacity .2s ease-in-out;
}
.b2b-fixed-up.show {
  opacity: 1;
  pointer-events: all;
  transition: opacity .2s ease-in-out;
}
.button {
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  box-shadow: none;
  border: none;
  background-color: rgba(0, 0, 0, 0);
}
.b2b-button,
.content__btn {
  display: flex;
  align-items: center;
  border: 1px solid var(--brand-color);
  border-radius: var(--border-radius);
  color: #fff;
  background-color: var(--brand-color);
  text-decoration: none;
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  box-shadow: none;
  padding: 0.5em 2.5em;
  font-size: var(--button-text-size);
  font-weight: 700;
  transition: background-color .2s ease-in-out, color .2s ease-in-out;
  cursor: pointer;
  justify-content: center;
}
.b2b-button:hover,
.content__btn:hover {
  background-color: #fff;
  color: var(--brand-color);
  transition: background-color .2s ease-in-out, color .2s ease-in-out;
}
.b2b-button--white,
.content__btn--gray {
  background-color: #fff;
  color: var(--brand-color);
}
.b2b-button--white:hover,
.content__btn--gray:hover {
  background-color: var(--brand-color);
  color: #fff;
  transition: background-color .2s ease-in-out, color .2s ease-in-out;
}
.content__btn--gray {
  background-color: #fff0;
}
.b2b-input {
  appearance: none;
  border: none;
  border-bottom: 2px solid var(--brand-color);
  padding: 1em 0 .2em;
  display: block;
  width: 100%;
  background-color: transparent;
  transition: box-shadow .2s ease-in-out;
  font-size: var(--button-text-size);
}
.b2b-input:focus-visible {
  outline: none;
  box-shadow: 0px 1px 0 0 var(--brand-color);
  transition: box-shadow .2s ease-in-out;
}
.b2b-input::placeholder {
  font-size: var(--button-text-size);
  color: var(--grey-color);
}
.b2b-checkbox-label {
  position: relative;
}
.b2b-checkbox-label__text {
  position: relative;
  padding-left: 1.6em;
  padding-right: 1.6em;
  cursor: pointer;
  font-size: var(--small-text-size);
}
.b2b-hidden-input:focus-visible ~ .b2b-checkbox-label__text {
  text-decoration: underline;
  text-underline-offset: .1em;
  text-decoration-color: var(--brand-color);
}
.b2b-checkbox-label__text::before,
.b2b-checkbox-label__text::after {
  content: '';
  position: absolute;
  --size: 1em;
  width: var(--size);
  height: var(--size);
}
.b2b-checkbox-label__text::before {
  top: 0;
  left: 0;
  border: 1px solid var(--grey-color);
  border-radius: .2em;
  transition: background-color .2s ease-in-out;
}
.b2b-checkbox-label__text::after {
  background: url(/local/templates/rebranding/assets/img/icons/check.svg) no-repeat center / contain;
  left: .1em;
  top: .1em;
  opacity: 0;
  transition: opacity .2s ease-in-out;
  --size: 0.7em;
}
.b2b-link {
  color: var(--brand-color);
  font-weight: 600;
}
.b2b-link:hover {
  text-decoration: underline;
  text-underline-offset: .1em;
}
.b2b-input[data-autoheight] {
  resize: vertical;
  height: calc(var(--rem) * 55);
  transition: height .3s ease-in-out;
  padding-bottom: 2em;
}
@media (max-width: 768px) {
  .b2b-input[data-autoheight] {
    resize: none;
    overflow: hidden;
  }
  .b2b-input[data-autoheight].b2b-auto-height {
    padding-bottom: 1em;
  }
}
.b2b-input[data-autoheight].b2b-auto-height {
  height: calc(var(--rem) * 100);
  transition: height .3s ease-in-out;
}
.b2b-hidden-input:checked + .b2b-checkbox-label__text::before {
  background-color: var(--grey-color);
  transition: background-color .2s ease-in-out;
}
.b2b-hidden-input:checked + .b2b-checkbox-label__text::after {
  opacity: 1;
  transition: opacity .2s ease-in-out;
}
.b2b-hidden-input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
  
}
.b2b-form__message {
  text-align: center;
  font-size: var(--h2-text-size);
  padding: 2em;
}
.b2b-form__message {
  margin: 0;
}
.b2b-checkbox-link {
  text-decoration: underline;
  text-underline-offset: .1em;
  padding: 0 6px;
}
ol {
  padding: 0;
  margin: 1em 0;
  counter-reset: number;
}
ol>li {
  padding-left: 1.5em;
  position: relative;
  font-size: var(--bigger-text-size);
  counter-increment: number;
}
ol>li>h3 {
  margin: 1.5em 0 .5em;
}
ol>li:not(:last-child) {
  margin-bottom: 1em;
}
ol>li::before {
  content: counter(number) '.';
  position: absolute;
  top: .2em;
  left: 0;
  font-size: var(--bigger-text-size);
  color: var(--brand-color);
  line-height: 1;
}
.b2b-circle-list {
  padding: 0;
  margin: 1.5em 0 1em;
}
.b2b-circle-list>li {
  position: relative;
  padding-left: 1.3em;
  list-style: none;
  font-size: var(--bigger-text-size);
}
.b2b-circle-list>li:not(:last-child) {
  margin-bottom: 1em;
}
.b2b-circle-list>li::before {
  content: '';
  position: absolute;
  top: 0.7em;
  left: 0;
  --size: 0.4em;
  width: var(--size);
  height: var(--size);
  border-radius: 50%;
  background-color: var(--brand-color);
}
.b2b-circle-list--black>li::before {
  background-color: #000;
}
/* two columns block */
.b2b-two-columns__title {
  max-width: calc(var(--rem) * 1000);
}
.b2b-two-columns::before {
  background-color: var(--bg-color);
}
.b2b-two-columns__outer {
  position: relative;
  z-index: 1;
}
.b2b-two-columns__item-title {
  margin: 0 0 0.3em;
}
.b2b-two-columns__wrapper {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0 var(--columng-gap);
  font-size: var(--bigger-text-size);
}

.b2b-two-columns__wrapper--flex {
  display: flex;
  flex-direction: column;
}
.b2b-two-columns__after-wrapper {
  font-size: var(--bigger-text-size);
}
.b2b-two-columns__list {
  margin: 1em 0;
}

.b2b-two-columns__list--grid,
.b2b-two-columns__wrapper-img {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1em;
}
.b2b-two-columns__list--grid {
  grid-template-areas: 
  'item-1 item-2'
  'item-3 item-4'
  ;
}
.b2b-two-columns__list[data-number='1'] {grid-area: item-1;}
.b2b-two-columns__list[data-number='2'] {grid-area: item-2;}
.b2b-two-columns__list[data-number='3'] {grid-area: item-3;}
.b2b-two-columns__list[data-number='4'] {grid-area: item-4;}
.b2b-two-columns__list li::before {
  content: attr(data-number) '.';
}
.b2b-two-columns__item-img {
  margin-bottom: 1em;
}
@media (max-width: 600px) {
  .b2b-two-columns__wrapper {
    grid-template-columns: 1fr;
  }
  .b2b-two-columns__item-img--mobile-hide {
    display: none;
  }
}

/* one column block */
.b2b-one-column::before {
  background-color: var(--bg-color);
}
.b2b-one-column__title {
  max-width: calc(var(--rem) * 1000);
}
.b2b-one-column__outer {
  position: relative;
  z-index: 1;
}
.b2b-one-column__item-img {
  margin-bottom: 1em;
}
.b2b-one-column__item-text {
  font-size: var(--bigger-text-size);
}
.b2b-one-column__images {
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: var(--columng-gap);
}

/* buttons block */
.b2b-intro__actions {
  margin-top: calc(var(--rem) * 80);
  display: flex;
  column-gap: 2em;
}
@media (max-width: 600px) {
  .b2b-intro__actions {
    flex-direction: column;
    width: max-content;
    row-gap: 1em;
    margin-top: calc(var(--rem) * 40);
  }
}

/* UX */
input.b2b_separate-invalid:-webkit-autofill,
input.b2b_separate-invalid:-webkit-autofill:hover, 
input.b2b_separate-invalid:-webkit-autofill:focus,
input.b2b_separate-invalid {
  -webkit-text-fill-color: var(--brand-color);
  color: var(--brand-color) !important;
}


label.label--valid {
  background-image: url(/local/templates/rebranding/assets/img/icons/b2b_check_mark.svg);
  background-repeat: no-repeat;
  background-size: 25px;
  background-position: 100% 10%;
  width: 100%;
  display: inline-block;
}

/* components >> */
.b2b-button--min {
  max-width: max-content;
}
.b2b-grey-block {
  background-color: var(--biege-color);
  padding: calc(var(--rem) * 70);
}
.b2b-brand-text {
  color: var(--brand-color);
}

.b2b-t_size-28 {
  font-size: calc(var(--rem) * 28);
}
.b2b-text-center {
  text-align: center;
}

.b2b-m-t--100 {
  margin-top: calc(var(--rem) * 100);
}
.b2b-m-t--70 {
  margin-top: calc(var(--rem) * 70);
}
.b2b-m-t--50 {
  margin-top: calc(var(--rem) * 50);
}
.b2b-m-b--50 {
  margin-bottom: calc(var(--rem) * 50);
}
.b2b-m-b--0 {
  margin-bottom: 0;
}

.b2b-full-bg--blue::before {
  background-color: var(--lighter-blue-color);
}
.b2b-full-bg--brown::before {
  background-color: var(--black-color);
}
.b2b-full-bg--brown {
  color: #fff;
}
.b2b-full-bg__wrapper {
  position: relative;
}

.b2b-flex-col-center {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.b2b-col--2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
}
.b2b-gap--40 {
  gap: calc(var(--rem) * 40);
}

@media (max-width: 600px) {
  .b2b-col--2 {
    grid-template-columns: auto;
  }
  .b2b-mbl-row--1-auto {
    grid-template-rows: 1fr auto;
  }
  .b2b-mbl-row--auto-1 {
    grid-template-rows: auto 1fr;
  }

  .b2b-mbl-m-t--100 {
    margin-top: calc(var(--rem) * 100);
  }
}

.b2b-anchor {
  position: relative;
  top: -150px;
}

@media (max-width: 600px) {
  .b2b-anchor {
    position: relative;
    top: 0;
  }
}

/* << components */

/* dropdown >>*/
.b2b-dropdown__btn {
  cursor: pointer;
  user-select: none
}
.b2b-dropdown__content {
  max-height: 0;
  overflow: hidden;
  transition: all 0.4s ease-in-out;

  /* display: grid;
  min-height: 0;
  grid-template-rows: 0fr; */
}
/* .b2b-dropdown__content_active {
  grid-template-rows: 1fr;
  transition: all 0.4s ease-in-out;
  -webkit-transition: all 0.4s ease-in-out;
}
.b2b-faq__info {
  min-height: 0;
} */
/* << dropdown */

/* dropdown conspicuous >> */
.b2b-dropdown--conspicuous .b2b-dropdown__content {
  max-height: 100px /* должно совпадать с content.style.maxHeight в js */
}
.b2b-dropdown--conspicuous :not(.b2b-dropdown__btn--active) + .b2b-dropdown__content {
  position: relative
}
.b2b-dropdown--conspicuous :not(.b2b-dropdown__btn--active) + .b2b-dropdown__content:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background: linear-gradient(0deg, #fff, #ffffff00)
}
.b2b-full-bg--blue .b2b-dropdown--conspicuous :not(.b2b-dropdown__btn--active) + .b2b-dropdown__content:after {
  background: linear-gradient(0deg, #E2EEF0, #E2EEF000)
}
.b2b-full-bg--brown .b2b-dropdown--conspicuous :not(.b2b-dropdown__btn--active) + .b2b-dropdown__content:after {
  background: linear-gradient(0deg, #31171F, #31171F00)
}
/* << dropdown conspicuous */

.b2b-border-block {
  border: 1px solid var(--brand-color);
  padding: calc(var(--rem) * 25) calc(var(--rem) * 50);
}
.mobile-hidden {
  display: none;
}
@media (min-width: 1121px) {
  .mobile-hidden {
      display: block;
  }
}
.desktop-hidden {
  display: none;
}
@media (max-width: 1120px) {
  .desktop-hidden {
      display: block;
  }
}

.b2b-slider {
  position: relative;
  overflow-x: hidden;
  padding-bottom: 50px;
}
.b2b-slider::-webkit-scrollbar {
  width: 0;
}
.b2b-slider-autoHeight_active {
  overflow-y: clip;
}
.b2b-slider-autoHeight_active::-webkit-scrollbar {
  width: 0;
}
.b2b-slider-pagination {
  position: absolute;
  display: flex;
  gap: 15px;
  align-items: center;
  justify-content: center;
  bottom: 0 !important;
}
.b2b-slider-pagination .swiper-pagination-bullet {
  width: 16px;
  height: 16px;
  background-color: var(--lighter-blue-color);
  opacity: 1;
  margin: 0 !important;
}
.b2b-slider-pagination_white .swiper-pagination-bullet {
  background-color: #fff;
}
.b2b-slider-pagination .swiper-pagination-bullet-active {
  background-color: var(--brand-color);
}