@charset "UTF-8";
:root {
  --container-width: 1680px;
  --main-outer-width: 1920px;
  --container-padding: 30px;
  --calculated-padding: calc((100% - var(--container-width)) / 2);
  --theme-color-accent: #c4e45a;
  --theme-color-accent-hover: #b4d64a;
  --theme-color-accent-50: rgb(196, 228, 90, 0.5);
  --theme-color-grey: #afafaf;
  --theme-color-grey-hover: #8f8f8f;
  --theme-color-text-common: #1e1e1e;
  --theme-color-text-common-hover: #111111;
  --theme-color-light: #e8e8e8;
  --theme-color-page: #f4f4f4;
  --theme-border-color: #d6d6d6;
  --theme-duration: 200ms;
}
@media (max-width: 767px) {
  :root {
    --container-padding: 24px;
  }
}
@media (max-width: 575px) {
  :root {
    --container-padding: 16px;
  }
}

@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url("../fonts/Manrope-CyrillicExt.woff2") format("woff2");
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url("../fonts/Manrope-Cyrillic.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url("../fonts/Manrope-Latin.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "Adderley";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/Adderley-Bold.woff2") format("woff2");
}
*,
*::before,
*::after {
  box-sizing: border-box;
}

* {
  margin: 0;
}

input,
button,
textarea {
  padding: 0;
  background: none;
  border: none;
  outline: none;
}

button {
  font: inherit;
}

fieldset,
legend {
  margin: 0;
  border: none;
  padding: 0;
}

html,
body {
  height: 100%;
  padding: 0;
  scroll-behavior: smooth;
}

body {
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
}

p,
h1,
h2,
h3,
h4,
h5,
h6 {
  overflow-wrap: break-word;
}

ul,
ol {
  list-style-type: none;
  padding: 0;
}

a {
  text-decoration: none;
}

img,
picture,
video,
canvas,
svg {
  display: block;
  max-width: 100%;
}

.main-wrapper-outer {
  width: 100%;
  min-height: 100%;
  max-width: var(--main-outer-width);
  margin-left: auto;
  margin-right: auto;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: stretch;
}

.header {
  flex-grow: 0;
  flex-shrink: 0;
}

.footer {
  flex-grow: 0;
  flex-shrink: 0;
}

.main {
  flex-grow: 1;
  flex-shrink: 1;
}

.container {
  padding-left: max(var(--calculated-padding), var(--container-padding));
  padding-right: max(var(--calculated-padding), var(--container-padding));
}
.container__inner {
  width: 100%;
  position: relative;
}

.container.container_extract-l {
  padding-left: 0;
}

.container.container_extract-lp {
  padding-left: var(--container-padding);
}

.container.container_extract-r {
  padding-right: 0;
}

.container.container_extract-rp {
  padding-right: var(--container-padding);
}

.container.container_extract-lr {
  padding-left: 0;
  padding-right: 0;
}

.container.container_extract-lrp {
  padding-left: var(--container-padding);
  padding-right: var(--container-padding);
}

.container.container_blog {
  --calculated-padding: calc((100% - 1195px) / 2);
}

.form-grid1 {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  grid-template-rows: auto;
  gap: 20px 24px;
}
.form-grid1__row {
  grid-column: span 12;
}
.form-grid1__row_2 {
  grid-column: span 6;
}
.form-grid1__row_4 {
  grid-column: span 3;
}

/*
Псевдоэлемент-расширитель для кнопок:
1. Помогает попадать по небольшим кнопкам
2. Помогает отлавливать событие нажатия на кнопку при наличии в ней различных элементов
*/
.btn {
  --height: 60px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  text-decoration: none;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.25;
  text-transform: uppercase;
  padding: 5px 24px;
  border-radius: 999px;
  min-height: var(--height);
  border: 1px transparent solid;
  transition: background-color var(--theme-duration), border-color var(--theme-duration), color var(--theme-duration), opacity var(--theme-duration);
}
.btn_xsmall {
  --height: 38px;
  font-size: 14px;
  border-radius: 5px;
}
.btn_small {
  --height: 42px;
  font-size: 12px;
}
.btn_big {
  --height: 70px;
  font-size: 16px;
  padding-left: 34px;
  padding-right: 34px;
}
.btn_wide {
  display: flex;
  width: 100%;
}
.btn_accent {
  background-color: var(--theme-color-accent);
  color: var(--theme-color-text-common);
}
.btn_accent:hover, .btn_accent:focus-visible {
  background-color: var(--theme-color-accent-hover);
}
.btn_accent.btn_hollow {
  background: none;
  border: 1px var(--theme-color-accent) solid;
  color: var(--theme-color-accent);
}
.btn_accent.btn_hollow:hover, .btn_accent.btn_hollow:focus-visible {
  background-color: var(--theme-color-accent);
  color: var(--theme-color-text-common);
}
.btn_white {
  background-color: #fff;
  color: inherit;
}
.btn_white:hover, .btn_white:focus-visible {
  background-color: var(--theme-color-accent);
}
.btn_light {
  background-color: var(--theme-color-light);
  color: inherit;
}
.btn_light:hover, .btn_light:focus-visible {
  background-color: var(--theme-color-accent);
}
.btn_black {
  background-color: var(--theme-color-text-common);
  color: #fff;
}
.btn_black:hover, .btn_black:focus-visible {
  background-color: var(--theme-color-accent);
  color: var(--theme-color-text-common);
}
.btn_black.btn_hollow {
  background: none;
  border-color: var(--theme-color-text-common);
  color: var(--theme-color-text-common);
}
.btn_black.btn_hollow:hover, .btn_black.btn_hollow:focus-visible {
  background-color: var(--theme-color-text-common);
  color: #fff;
}
.btn_grey {
  background-color: var(--theme-color-grey);
  color: #fff;
}
.btn_grey:hover, .btn_grey:focus-visible {
  background-color: var(--theme-color-grey-hover);
}
.btn_grey.btn_hollow {
  background: none;
  border: 1px var(--theme-color-grey) solid;
  color: var(--theme-color-grey);
}
.btn_grey.btn_hollow:hover, .btn_grey.btn_hollow:focus-visible {
  background-color: var(--theme-color-grey);
  color: #fff;
}
.btn_grey:disabled {
  opacity: 0.5;
}
.btn:disabled {
  cursor: default;
  opacity: 0.5;
  pointer-events: none;
}

.btn-text {
  font-size: 16px;
  font-weight: 700;
  display: inline-flex;
  justify-content: flex-start;
  align-items: center;
  gap: 0 10px;
  transition: color var(--theme-animation-duration-fast);
}
.btn-text_primary {
  color: var(--theme-color-accent);
  text-transform: uppercase;
}
.btn-text_primary .btn-text__icon {
  fill: var(--theme-color-accent);
}
.btn-text:focus-visible {
  outline: 3px rgba(0, 0, 0, 0.3) solid;
}

.field-input1 {
  width: 100%;
  height: 60px;
  border-radius: 999px;
  border: 1px transparent solid;
  background-color: #fff;
  padding: 18px 25px;
  font-size: 16px;
  line-height: 1.25;
  color: var(--theme-color-text-common);
  transition: border-color var(--theme-duration), opacity var(--theme-duration);
}
.field-input1:hover, .field-input1:focus-visible {
  border-color: var(--theme-color-accent);
  outline: none;
}
.field-input1::-moz-placeholder {
  color: #A8A8AA;
}
.field-input1::placeholder {
  color: #A8A8AA;
}
.field-input1:focus::-moz-placeholder {
  color: transparent;
}
.field-input1:focus::placeholder {
  color: transparent;
}

.form-group1,
.form-group2 {
  position: relative;
}
.form-group1__label,
.form-group2__label {
  display: block;
  color: #313C41;
  font-size: 16px;
  line-height: 1.25;
  margin-bottom: 8px;
}
.form-group1__label_req::after,
.form-group2__label_req::after {
  content: "*";
  color: red;
  margin-left: 5px;
}
.form-group1_error .field-input1,
.form-group2_error .field-input1 {
  border-color: red;
}

.form-group2 {
  position: relative;
}
.form-group2__field {
  padding-top: 20px;
  padding-bottom: 10px;
}
.form-group2 textarea.form-group2__field {
  padding-top: 26px;
}
.form-group2__label {
  pointer-events: none;
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 25px;
  margin-bottom: 0;
  color: #A8A8AA;
  transform: translateY(-50%);
  transition: top var(--theme-duration), color var(--theme-duration), font-size var(--theme-duration), transform var(--theme-duration);
}
.form-group2__label_hidden {
  opacity: 0;
}
.form-group_error .form-group2__label {
  top: calc(50% - 10px);
}
.form-group2__placeholder {
  pointer-events: none;
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 25px;
  color: #A8A8AA;
  font-size: 16px;
  line-height: 1.25;
  transform: translateY(-50%);
  transition: color var(--theme-duration), opacity var(--theme-duration);
}
.form-group_error .form-group2__placeholder {
  top: calc(50% - 11px);
}
.form-group2__placeholder span {
  color: var(--theme-color-text-common);
}
.form-group2 textarea + .form-group2__label {
  top: 18px;
  transform: none;
}
.form-group2__field:not(:-moz-placeholder) + .form-group2__label {
  top: 10px;
  opacity: 1;
  font-size: 11px;
  line-height: 1.2;
  color: var(--theme-color-accent);
  transform: none;
}
.form-group2__field:focus-visible + .form-group2__label, .form-group2__field:focus + .form-group2__label, .form-group2__field:not(:placeholder-shown) + .form-group2__label {
  top: 10px !important;
  opacity: 1;
  font-size: 11px;
  line-height: 1.2;
  color: var(--theme-color-accent);
  transform: none;
}
.form-group2__field:not(:-moz-placeholder) + .form-group2__label + .form-group2__placeholder {
  opacity: 0;
}
.form-group2__field:focus-visible + .form-group2__label + .form-group2__placeholder, .form-group2__field:focus + .form-group2__label + .form-group2__placeholder, .form-group2__field:not(:placeholder-shown) + .form-group2__label + .form-group2__placeholder {
  opacity: 0;
}

.form-group__error {
  font-size: 14px;
  line-height: 1;
}

.form-group2_captcha {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 0 20px;
  align-items: center;
  position: relative;
}

.form-group2_captcha_popup {
   grid-template-columns: auto 1fr;
    grid-column: 1 / -1;
}

.form-group2__captcha_img img {
  display: block;
  max-width: 180px;
  height: auto;
}

.form-group2__captcha_entry {
  position: relative;
}

.form-group2_captcha.form-group_error .form-group__error,
.form-group__error_captcha {
  width: 100%;
  position: absolute;
  bottom: -20px;
  left: 200px;
}

 .form-group2_captcha.form-group_error .form-group2__label {
    top: 50%;
}

.form-group2_captcha_consult {
    margin-bottom: 20px;
}

.captcha__update {
    display: flex;
    align-items: center;
    gap: 3px;
    margin-top: 5px;
    /*color: var(--theme-color-grey-hover);*/
    cursor: pointer;
}

.captcha__update span {
    font-family: Manrope, Arial, sans-serif;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.5;
    text-decoration-line: underline;
    text-decoration-style: dotted;
    text-decoration-thickness: 12%;
    text-underline-offset: 3px;
}

.captcha__update svg {
    fill: transparent;
    transform: scale(0.8);
}
@media (max-width: 1199px) {
  .form-group2_captcha_consult {
      grid-column: 1 / -1;
  }
  .form-group2_captcha_popup {
    grid-template-columns: auto 1fr;
    grid-column: 1 / -1;
}
}
@media (max-width: 575px) {
  .form-group2_captcha {
      grid-template-columns: initial;
      gap: 20px;
  }
  .form-group2__captcha_img img {
      margin: 0 auto;
  }
  .form-group2_captcha.form-group_error .form-group__error, .form-group__error_captcha {
      left: 0;
  }
  .checkbox-text .form-group__error {
      display: none!important;
  }
  .form-group__error {
      font-size: 12px;
  }
  .captcha__update {
    justify-content: center;
  }
}


textarea.field-input1 {
  height: 136px;
  border-radius: 30px;
  resize: none;
}

textarea.field-input1 {
  height: 136px;
  border-radius: 30px;
  resize: none;
}

.checklist {
  font-size: 0;
}
.checklist__item:not(:last-child) {
  margin-bottom: 14px;
}
.checklist[data-item-expandable=collapsed] .checklist__item[data-item-expandable-item] {
  display: none;
}

.checkbox {
  position: relative;
  font-size: 0;
}
.checkbox__input {
  pointer-events: none;
  position: absolute;
  left: 0;
  top: 0;
  opacity: 0;
}
.checkbox__visual {
  cursor: pointer;
  display: inline-flex;
  width: 20px;
  height: 20px;
  border: 1px var(--theme-color-text-common) solid;
  border-radius: 4px;
  background-color: #fff;
  justify-content: center;
  align-items: center;
}
.checkbox__visual svg {
  fill: var(--theme-color-accent);
  opacity: 0;
}
.checkbox__input:checked + .checkbox__visual {
  border-color: var(--theme-color-accent);
}
.checkbox__input:checked + .checkbox__visual svg {
  opacity: 1;
}
.checkbox__input:not(:disabled):focus-visible + .checkbox__visual, .checkbox__input:not(:disabled):hover + .checkbox__visual {
  border-color: var(--theme-color-accent);
}
.checkbox__input:disabled + .checkbox__visual {
  cursor: default;
  opacity: 0.5;
}
.form-group_error .checkbox__input:not([aria-invalid="false"]) ~.checkbox__visual {
  border-color: red!important;
  border-width: 2px;
}

.radio {
  position: relative;
  font-size: 0;
}
.radio__input {
  pointer-events: none;
  position: absolute;
  left: 0;
  top: 0;
  opacity: 0;
}
.radio__visual {
  cursor: pointer;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 20px;
  height: 20px;
  border: 1px var(--theme-color-accent) solid;
  border-radius: 50%;
}
.radio__input:checked + .radio__visual {
  border-width: 6px;
}
.radio__input:disabled + .radio__visual {
  cursor: default;
  opacity: 0.5;
}

.checkbox-text {
  position: relative;
  display: inline-flex;
  justify-content: flex-start;
  align-items: flex-start;
  cursor: pointer;
}
.checkbox-text .checkbox,
.checkbox-text .radio {
  margin-right: 10px;
}
.checkbox-text:has(input:disabled) {
  cursor: default;
}
.checkbox-text:has(input:disabled) .checkbox-text__label {
  opacity: 0.5;
}
.checkbox-text__label {
  font-size: 13px;
  line-height: 1.35;
  color: var(--theme-color-text-common);
  min-height: 20px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.checkbox-text__label a {
  color: var(--theme-color-accent);
}
.checkbox-text__content {
  display: block;
  min-width: 0;
}
.checkbox-text .form-group__error {
    position: absolute;
    top: 25px;
    left: 0;
}

.consult-form .field-input1 {
  border-color: transparent;
  background-color: rgba(255, 255, 255, 0.2);
  color: #fff;
}
.consult-form .field-input1:hover, .consult-form .field-input1:focus-visible {
  border-color: rgba(255, 255, 255, 0.5);
}
.consult-form .form-group2__label,
.consult-form .form-group2__placeholder {
  left: 24px;
  color: #fff;
  font-weight: 500;
  line-height: 1;
}
.consult-form .form-group2__placeholder span {
  color: #fff;
}
.consult-form .form-group2__placeholder {
  color: rgba(255, 255, 255, 0.5);
}
.consult-form .form-group2__field:not(:-moz-placeholder) + .form-group2__label {
  color: #fff;
}
.consult-form .form-group2__field:focus-visible + .form-group2__label,
.consult-form .form-group2__field:focus + .form-group2__label,
.consult-form .form-group2__field:not(:placeholder-shown) + .form-group2__label {
  color: #fff;
}
.consult-form .checkbox__visual {
  border-color: #fff;
  border-radius: 5px;
  background-color: #fff;
}
.consult-form .checkbox__mark {
  fill: var(--theme-color-text-common);
}
.consult-form .checkbox__input:checked + .checkbox__visual {
  border-color: #fff;
}
.consult-form .checkbox-text__label {
  min-height: 20px;
  color: #fff;
  font-size: 16px;
  line-height: 1.3;
}
.consult-form .checkbox-text__label a {
  color: inherit;
  text-decoration: underline;
  text-decoration-thickness: 8%;
  text-underline-offset: 2px;
}

.callback-form .field-input1 {
  width: 100%;
  height: 60px;
  border-color: transparent;
  border-radius: 60px;
  background-color: #fff;
  padding-right: 24px;
  padding-left: 24px;
  color: var(--theme-color-text-common);
}
.callback-form .field-input1:hover, .callback-form .field-input1:focus-visible {
  border-color: rgba(30, 30, 30, 0.25);
}
.callback-form textarea.field-input1 {
  height: 121px;
  min-height: 121px;
  border-radius: 30px;
  resize: none;
}
.callback-form .form-group2__field {
  padding-top: 20px;
  padding-bottom: 10px;
}
.callback-form textarea.form-group2__field {
  padding-top: 28px;
}
.callback-form .form-group2__label,
.callback-form .form-group2__placeholder {
  left: 24px;
  color: #afafaf;
  font-size: 16px;
  font-weight: 500;
  line-height: 1;
}
.callback-form .form-group2__placeholder span {
  color: var(--theme-color-text-common);
}
.callback-form .form-group2__field:not(:-moz-placeholder) + .form-group2__label {
  color: #afafaf;
}
.callback-form .form-group2__field:focus-visible + .form-group2__label,
.callback-form .form-group2__field:focus + .form-group2__label,
.callback-form .form-group2__field:not(:placeholder-shown) + .form-group2__label {
  color: #afafaf;
}
.callback-form .callback-form__submit {
  width: 100%;
  min-height: 60px;
  border-radius: 60px;
}
.callback-form .checkbox-text {
  align-self: flex-start;
}
.callback-form .checkbox__visual {
  border-color: var(--theme-color-text-common);
  border-radius: 3px;
  background-color: transparent;
}
.callback-form .checkbox__mark {
  fill: var(--theme-color-text-common);
}
.callback-form .checkbox__input:checked + .checkbox__visual {
  border-color: var(--theme-color-text-common);
  background-color: #fff;
}
.callback-form .checkbox-text__label {
  min-height: 20px;
  color: var(--theme-color-text-common);
  font-size: 16px;
  line-height: 1.3;
}
.callback-form .checkbox-text__label a {
  color: inherit;
  text-decoration: underline;
  text-decoration-thickness: 8%;
  text-underline-offset: 2px;
}

.select {
  display: inline-block;
  position: relative;
  z-index: 100;
}
.select__handle {
  cursor: pointer;
  position: relative;
  height: 44px;
  border-radius: 30px;
  border: 1px solid rgba(30, 30, 30, 0.3);
  display: inline-flex;
  padding: 5px 50px 5px 20px;
  justify-content: flex-start;
  align-items: center;
  font-size: 14px;
  line-height: 1;
  color: var(--theme-color-text-common);
  transition: border-color var(--theme-animation-duration-fast);
}
.select__handle:focus-visible {
  outline: none;
  border-color: var(--theme-color-accent);
}
.select__handle:hover {
  border-color: #1e1e1e;
}
.select__chevron {
  position: absolute;
  top: 50%;
  right: 25px;
  transform: translate(0, -35%);
}
.select.dropdown-active .select__chevron {
  transform: translate(0, -35%) rotate(180deg);
}
.select.dropdown-active {
  z-index: 101;
}
.select__option {
  padding-top: 10px;
  padding-bottom: 10px;
}
.select__dropdown .ts-dropdown-content {
  margin-top: -10px;
  margin-bottom: -10px;
}
.select__dropdown.dropdown {
  width: 100%;
  min-width: 244px;
  left: 0;
  top: calc(100% + 4px);
  font-size: 14px;
  line-height: 1.2;
  padding: 22px 20px;
}
.select__dropdown.dropdown a {
  color: var(--theme-color-text-common);
}
.select__dropdown.dropdown a:hover {
  color: var(--theme-color-accent);
}
.select__dropdown.dropdown li:not(:last-child) {
  margin-bottom: 20px;
}
.select_active .select__handle {
  border-color: var(--theme-color-accent);
}
.select_active .select__chevron {
  transform: translate(0, -35%) rotate(180deg);
}
.select_1 .select__handle {
  border-radius: 4px;
  padding-right: 40px;
}
.select_1 .select__handle:focus-visible {
  border-color: var(--theme-color-text-common);
}
.select_1 .select__chevron {
  right: 18px;
}
.select_1 .dropdown {
  box-shadow: none;
  border-radius: 4px;
  border: 1px solid rgba(30, 30, 30, 0.3);
  color: #82879A;
}
.select_wide {
  width: 100%;
}
.select_wide .select__handle {
  width: 100%;
}

.tomselected {
  display: none !important;
}

.ts-wrapper {
  position: relative;
  z-index: 1;
  display: inline-block;
}
.ts-wrapper_wide {
  display: block;
  width: 100%;
}
.ts-wrapper_wide .ts-control {
  width: 100%;
  display: flex;
}
.ts-wrapper.dropdown-active {
  z-index: 5;
}

.ts-control {
  width: 100%;
  height: 50px;
  border: 1px #ECECEC solid;
  border-radius: 10px;
  background-color: transparent;
  padding: 0 50px 0 20px;
  display: inline-flex;
  justify-content: flex-start;
  align-items: center;
  cursor: pointer;
  outline: none;
}
.ts-control svg {
  position: absolute;
  top: 50%;
  right: 18px;
  transform: translateY(-50%);
  fill: var(--theme-color-text-common);
}
.ts-control .item {
  color: var(--theme-color-text-common);
  font-size: 14px;
  overflow: hidden;
  text-overflow: ellipsis;
  width: 100%;
  white-space: nowrap;
}

.ts-wrapper.focus .ts-control {
  border-color: #acacac;
}

.ts-wrapper.disabled,
.ts-wrapper.ts-disabled,
.ts-wrapper.is-disabled {
  background-color: #F5F5F5;
  opacity: 0.5;
  pointer-events: none;
}

.ts-wrapper.disabled .ts-control,
.ts-wrapper.ts-disabled .ts-control,
.ts-wrapper.is-disabled .ts-control {
  cursor: default;
}

.ts-wrapper.disabled .ts-control svg,
.ts-wrapper.ts-disabled .ts-control svg,
.ts-wrapper.is-disabled .ts-control svg {
  opacity: 0.5;
}

.ts-wrapper.dropdown-active .ts-control svg {
  transform: translateY(-50%) scale(-1);
}

.ts-dropdown {
  border: none;
  position: absolute;
  left: 0;
  top: calc(100% + 4px);
  background-color: #fff;
  min-width: 100%;
  padding: 22px 20px;
  overflow-x: visible;
  overflow-y: auto;
  max-height: 375px;
  border-radius: 4px;
  box-shadow: 0 6px 26px 4px rgba(30, 30, 30, 0.1);
}

.ts-dropdown-content {
  margin-top: -10px;
  margin-bottom: -10px;
}

.ts-dropdown .option {
  font-size: 14px;
  line-height: 1.25;
  padding: 10px 0;
  cursor: pointer;
  color: var(--theme-color-text-common);
}
.ts-dropdown .option.selected {
  color: var(--theme-color-accent);
}
.ts-dropdown .option:not([aria-disabled=true]):hover {
  color: var(--theme-color-accent);
}
.ts-dropdown .option[aria-disabled=true] {
  opacity: 0.5;
  cursor: default;
}

.input-group1 {
  display: flex;
  justify-content: flex-start;
  align-items: stretch;
  gap: 0 8px;
}
.input-group1__field {
  flex-shrink: 1;
  flex-grow: 1;
}
.input-group1__field::-moz-placeholder {
  color: #82879A;
  -moz-transition: color var(--theme-animation-duration-fast);
  transition: color var(--theme-animation-duration-fast);
}
.input-group1__field::placeholder {
  color: #82879A;
  transition: color var(--theme-animation-duration-fast);
}
.input-group1__field:focus::-moz-placeholder {
  color: transparent;
}
.input-group1__field:focus::placeholder {
  color: transparent;
}
.input-group1__btn {
  width: 156px;
  font-size: 14px;
  flex-shrink: 0;
  flex-grow: 0;
}
.input-group1__btn-arr {
  width: 60px;
  flex-shrink: 0;
  flex-grow: 0;
}
.input-group1__btn-arr svg {
  width: 16px;
  height: 14px;
  fill: #fff;
}

.pagination {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px 12px;
}
.pagination__item {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  font-size: 14px;
  color: var(--theme-color-text-common);
  outline: none;
  transition: background-color var(--theme-animation-duration-fast) 100ms, color var(--theme-animation-duration-fast);
}
.pagination__item:not(.pagination__item_active, .pagination__item_disabled):hover, .pagination__item:not(.pagination__item_active, .pagination__item_disabled):focus-visible {
  color: var(--theme-color-accent);
  background-color: #F4F7FB;
}
.pagination__item:not(.pagination__item_active, .pagination__item_disabled):hover svg, .pagination__item:not(.pagination__item_active, .pagination__item_disabled):focus-visible svg {
  fill: var(--theme-color-accent);
}
.pagination__item_active {
  background-color: var(--theme-color-accent);
  color: #fff;
}
.pagination__item_nav {
  background-color: #F4F7FB;
}
.pagination__item_nav svg {
  fill: #1E1E1E;
}
.pagination__item_nav-prev {
  transform: rotate(180deg);
}
.pagination__item_disabled svg {
  fill: #82879A;
}

.expandable [data-expandable-handle] {
  cursor: pointer;
}
.expandable [data-expandable-handle]:hover .expandable__label {
  color: var(--theme-color-accent);
}
.expandable [data-expandable-handle]:hover .expandable__chevron {
  fill: var(--theme-color-accent);
}
.expandable__top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 0 20px;
  margin: 0;
  transition: 250ms margin ease;
}
.expandable__label {
  font-size: 16px;
  font-weight: 700;
  color: var(--theme-color-text-common);
  transition: color var(--theme-animation-duration-fast);
}
.expandable__chevron {
  display: block;
  width: 8px;
  height: 13px;
  transform: rotate(90deg);
  position: relative;
  top: 1px;
  right: 5.27px;
  transition: fill var(--theme-animation-duration-fast);
}
.expandable__bottom {
  display: grid;
  grid-template-rows: 0fr;
  opacity: 0;
  transition: grid-template-rows var(--theme-animation-duration), opacity var(--theme-animation-duration);
}
.expandable__bottom-inner {
  overflow: hidden;
}
.expandable[data-expandable=expanded] .expandable__bottom {
  grid-template-rows: 1fr;
  opacity: 1;
}
.expandable[data-expandable=expanded] .expandable__chevron {
  transform: rotate(270deg);
}
.expandable[data-expandable=expanded] .expandable__top {
  margin: 0 0 25px 0;
}

.header {
  width: 100%;
  z-index: 50;
  transition: background-color var(--theme-duration);
  position: sticky;
  top: 0;
}
.header_fixed {
  position: fixed;
  left: 0;
}
.header_fixed.header_scrolled, .header_fixed.header_menu-open {
  background-color: #111;
}
.header_dark {
  background-color: #111;
}
.header__inner {
  position: relative;
  padding: 30px 0;
  border-bottom: 1px rgba(255, 255, 255, 0.2) solid;
  display: grid;
  grid-template-columns: 70px max-content minmax(0, 1fr) max-content 206px 60px;
  align-items: center;
  gap: 20px;
  transition: border-color var(--theme-duration);
}
.header_scrolled .header__inner {
  border-bottom-color: transparent;
}
.header_menu-open .header__inner {
  border-bottom-color: rgba(255, 255, 255, 0.2);
}
.header_dark .header__inner {
  border-bottom-color: transparent;
}

.header-logo {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 70px;
  height: 70px;
  border-radius: 50%;
  background-color: #fff;
  flex-shrink: 0;
}
.header-logo img {
  display: block;
  width: 52px;
  height: 52px;
  border-radius: 10px;
  -o-object-fit: cover;
     object-fit: cover;
}

.header-catalog {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 13px;
  width: -moz-max-content;
  width: max-content;
  height: 60px;
  border-radius: 30px;
  padding: 0 24px;
  background-color: var(--theme-color-accent);
  font-weight: 700;
  font-size: 16px;
  line-height: 1;
  text-decoration: none;
  white-space: nowrap;
}
.header-catalog__icon {
  flex-shrink: 0;
  fill: currentcolor;
}

.header-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(20px, 2.083vw, 40px);
  min-width: 0;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
}
.header-nav a {
  text-decoration: none;
  white-space: nowrap;
  line-height: 1.3;
  transition: color var(--theme-duration);
}
.header-nav a:hover, .header-nav a:focus-visible {
  color: var(--theme-color-accent-hover);
}
.header-nav__accent {
  color: var(--theme-color-accent);
  line-height: 1.5;
  text-decoration-line: underline !important;
  text-decoration-style: dotted !important;
  text-decoration-thickness: 12%;
  text-underline-offset: 4px;
}

.header-nav .header-nav__socials {
  display: none;
}

.header-actions {
  display: contents;
}

.header__socials {
  width: -moz-max-content;
  width: max-content;
  height: 50px;
}

.header-phone {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  width: 206px;
  height: 60px;
  padding: 0 19px;
  color: var(--theme-color-accent);
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
  white-space: nowrap;
  border: 1px var(--theme-color-accent) solid;
  border-radius: 50px;
  cursor: pointer;
}

.header-phone__icon {
  display: none;
  flex-shrink: 0;
  fill: currentcolor;
}

.header-phone__arrow {
  flex-shrink: 0;
  width: 8px;
  height: 8px;
  border-right: 2px currentcolor solid;
  border-bottom: 2px currentcolor solid;
  transform: rotate(45deg) translateY(-2px);
}

.header-phone.active .header-phone__arrow {
  transform: rotate(-135deg) translateY(-2px);
}

.header-phone__dropdown {
  position: absolute;
  top: calc(100% + 10px);
  left: 0;
  right: 0;
  z-index: 100;
  padding: 12px 0;
  background: var(--theme-color-text-common-hover);
  border: 1px var(--theme-color-accent) solid;
  border-radius: 50px;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-10px);
  transition: all 0.3s ease;
}

body.mp .header-phone__dropdown {
  background: var(--theme-color-text-common);
}

.header_fixed.header_scrolled .header-phone__dropdown {
  background: var(--theme-color-text-common-hover);
}

.header-phone.active .header-phone__dropdown {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.header-phone__dropdown-item {
  display: block;
  padding: 8px 20px;
  transition: background-color 0.2s ease;
}

.header-phone__dropdown-item.none {
    display: none;
}

.header-search {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  background-color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.header-search svg {
  display: block;
}

.header-burger {
  display: none;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background-color: var(--theme-color-accent);
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 5px;
}
.header-burger span {
  width: 20px;
  height: 2px;
  border-radius: 2px;
  background-color: var(--theme-color-text-common);
  transition: transform var(--theme-duration), opacity var(--theme-duration);
}
.header_menu-open .header-burger span:nth-child(1) {
  transform: translateY(7px) rotate(45deg);
}
.header_menu-open .header-burger span:nth-child(2) {
  opacity: 0;
}
.header_menu-open .header-burger span:nth-child(3) {
  transform: translateY(-7px) rotate(-45deg);
}

@media (max-width: 1799px) {
  .header__inner {
    grid-template-columns: 50px max-content minmax(0, 1fr) max-content 206px 50px;
    gap: 14px;
  }
  .header-logo {
    width: 50px;
    height: 50px;
  }
  .header-logo img {
    width: 38px;
    height: 38px;
    border-radius: 8px;
  }
  .header-catalog {
    height: 50px;
    padding: 0 20px;
  }
  .header-phone {
    height: 50px;
  }
  .header-search {
    width: 50px;
    height: 50px;
  }
  .header-nav {
    gap: clamp(18px, 2vw, 32px);
    font-size: 15px;
  }
}
@media (max-width: 1540px) {
  .header__inner {
    grid-template-columns: 50px max-content minmax(0, 1fr) max-content 50px 50px;
  }
  .header-phone {
    width: 50px;
    padding: 0;
    justify-content: center;
  }
  .header-phone__icon {
    display: block;
  }
  .header-phone__text,
  .header-phone__arrow {
    display: none;
  }
  .header-phone__dropdown-item.none {
    display: block;
  }
  .header-phone__dropdown {
      width: 200px;
      left: calc(100% - 200px);
  }
}
@media (max-width: 1439px) {
  .header__inner {
    grid-template-columns: 50px max-content 1fr max-content 50px 50px;
  }
  .header__socials {
    grid-column: 4;
  }
}
@media (min-width: 1281px) and (max-width: 1400px) {
  .header-catalog__full-text {
    display: none;
  }
}
@media (max-width: 1280px) {
  .header__inner {
    grid-template-columns: 50px max-content 1fr max-content;
  }
  .header-nav {
    position: fixed;
    top: 110px;
    left: 0;
    right: 0;
    width: 100%;
    height: calc(100dvh - 110px);
    padding: 34px var(--container-padding) 40px;
    border: 0;
    border-radius: 0;
    background-color: #111;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.25);
    flex-direction: column;
    align-items: flex-end;
    gap: 18px;
    text-align: right;
    overflow-y: auto;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(-8px);
    transition: opacity var(--theme-duration), visibility var(--theme-duration), transform var(--theme-duration);
  }
  .header-nav a {
    font-size: 22px;
    line-height: 1.15;
  }
  .header_menu-open .header-nav {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
  }
  .header-actions {
    grid-column: 4;
    display: flex;
    align-items: center;
    justify-self: end;
    gap: 14px;
  }
  .header-burger {
    display: inline-flex;
  }
}
@media (max-width: 1199px) {
  .header__inner {
    grid-template-columns: 50px max-content 1fr max-content;
  }
}
@media (max-width: 767px) {
  .header__inner {
    grid-template-columns: 54px max-content 1fr max-content;
    gap: 12px;
    padding: 16px 0;
  }
  .header-logo {
    width: 54px;
    height: 54px;
  }
  .header-logo img {
    width: 40px;
    height: 40px;
  }
  .header-catalog {
    width: -moz-max-content;
    width: max-content;
    height: 50px;
    padding: 0 18px;
  }
  .header-phone {
    display: none;
  }
  .socials.header__socials {
    display: none;
  }
  .header-nav .header-nav__socials {
    display: flex;
    justify-content: flex-end;
    margin-top: 8px;
  }
  .header-actions {
    gap: 10px;
  }
  .header-nav {
    top: 86px;
    height: calc(100dvh - 86px);
  }
  .header-search {
    width: 50px;
    height: 50px;
  }
}
@media (max-width: 575px) {
  .header__inner {
    grid-template-columns: 48px max-content 1fr max-content;
    gap: 10px;
    padding: 12px 0;
  }
  .header-logo {
    width: 48px;
    height: 48px;
  }
  .header-logo img {
    width: 36px;
    height: 36px;
    border-radius: 8px;
  }
  .header-burger {
    width: 50px;
    height: 50px;
  }
  .header-search {
    width: 50px;
    height: 50px;
  }
  .header-catalog {
    height: 48px;
    padding: 0 14px;
    gap: 8px;
    font-size: 14px;
  }
  .header-nav {
    top: 72px;
    height: calc(100dvh - 72px);
    padding-top: 28px;
    padding-bottom: 34px;
  }
  .header-catalog__icon {
    width: 16px;
    height: 16px;
  }
  .header-search svg {
    width: 22px;
    height: 22px;
  }
}
@media (max-width: 400px) {
  .header-catalog__full-text {
    display: none;
  }
}
body {
  color: var(--theme-color-text-common);
  font-family: Manrope, Arial, sans-serif;
  font-weight: 400;
  font-size: 16px;
}

body.noscroll {
  overflow: hidden;
}

input,
button,
textarea {
  font-family: inherit;
  font-weight: 400;
  font-size: 16px;
}

button {
  cursor: pointer;
}

a {
  outline: none;
  color: currentcolor;
}

.text-center {
  text-align: center;
}

.preload * {
  transition: none !important;
}

.v-h {
  position: absolute;
  left: -10000px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.h2-cols {
  width: 100%;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  margin-bottom: 48px;
}
.h2-cols .title2 {
  flex-grow: 1;
  margin-right: 20px;
  min-height: 60px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
@media (max-width: 767px) {
  .h2-cols .title2 {
    min-height: 50px;
  }
}

.title1 {
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: clamp(44px, 4.48vw, 86px);
  font-weight: 700;
  line-height: 1.05;
  text-transform: uppercase;
  letter-spacing: 0;
  margin: 0;
}
@media (max-width: 768px) {
  .title1 {
    font-size: clamp(38px, 10vw, 56px);
  }
}

.title2 {
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: clamp(36px, 3.125vw, 60px);
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
  letter-spacing: 0;
  margin: 0;
}
@media (max-width: 767px) {
  .title2 {
    font-size: clamp(32px, 9vw, 36px);
  }
}
@media (max-width: 425px) {
  .title2 {
    font-size: clamp(28px, 9vw, 28px);
  }
}
.title2 span {
  color: var(--theme-color-accent);
}

.title-accent {
  color: var(--theme-color-accent);
}

.section-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 30px;
  margin-bottom: 40px;
}
.section-head__actions {
  display: flex;
  align-items: center;
  gap: 20px;
}
@media (max-width: 767px) {
  .section-head {
    align-items: flex-start;
    flex-direction: column;
    gap: 20px;
    margin-bottom: 28px;
  }
}

.socials {
  display: flex;
  align-items: center;
  gap: 10px;
}

.social {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  border: 1px #fff solid;
  color: #fff;
  background-color: transparent;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  transition: border-color var(--theme-duration), color var(--theme-duration);
}
.social svg {
  display: block;
  fill: currentcolor;
}
.social:hover, .social:focus-visible {
  border-color: var(--theme-color-accent);
  color: var(--theme-color-accent);
}

.spinner {
  display: inline-block;
}
.spinner svg {
  width: 26px;
  height: 22px;
  fill: #1E1E1E;
}
.spinner_active svg {
  transform-origin: 15px 11px;
  animation: spinner-rotation 750ms infinite linear;
}
@keyframes spinner-rotation {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(-360deg);
  }
}

.btn-load {
  display: inline-flex;
  justify-content: flex-start;
  align-items: center;
  gap: 0 15px;
  font-size: 16px;
  font-weight: 700;
  color: inherit;
  text-transform: uppercase;
  border-radius: 4px;
  transition-timing-function: ease;
  transition-property: color;
  transition-duration: 100ms;
}
.btn-load svg {
  fill: currentcolor;
}
.btn-load:hover {
  color: var(--theme-color-accent);
}

.nav-bottom .btn-load {
  display: flex;
  margin: 0 auto 40px auto;
}

.textblock1 {
  font-size: 16px;
  line-height: 1.5;
}
.textblock1 h2, .textblock1 h3, .textblock1 h4, .textblock1 h5, .textblock1 h6 {
  text-transform: uppercase;
  font-size: inherit;
  margin-bottom: 1.5em;
}
.textblock1 p, .textblock1 ul, .textblock1 ol, .textblock1 img {
  margin-bottom: 1.5em;
}
.textblock1 a {
  color: var(--theme-color-accent);
  text-decoration: underline;
  text-decoration-thickness: 0.5px;
  text-underline-offset: 1px;
}
.textblock1 img {
  max-width: 100%;
}
.textblock1 p > span {
  color: var(--theme-color-accent);
}
.textblock1 > *:last-child {
  margin-bottom: 0;
}
@media (max-width: 575px) {
  .textblock1 {
    font-size: 14px;
  }
  .textblock1 h2, .textblock1 h3, .textblock1 h4, .textblock1 h5, .textblock1 h6 {
    margin-bottom: 1.25em;
  }
  .textblock1 p, .textblock1 ul, .textblock1 ol, .textblock1 img {
    margin-bottom: 1.25em;
  }
}
.textblock1_page {
  font-size: 18px;
  color: var(--theme-color-text-common);
}
.textblock1_page h2,
.textblock1_page h3,
.textblock1_page h4,
.textblock1_page h5,
.textblock1_page h6 {
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
}
.textblock1_page h2 {
  margin: -0.15em 0 32px;
  font-size: 50px;
}
.textblock1_page h3,
.textblock1_page h4,
.textblock1_page h5,
.textblock1_page h6 {
  margin: 32px 0 35px;
  font-size: 30px;
}
.textblock1_page p,
.textblock1_page ul,
.textblock1_page ol {
  margin-bottom: 40px;
}
.textblock1_page ul {
  display: flex;
  flex-direction: column;
  gap: 20px;
  padding: 0;
  list-style: none;
}
.textblock1_page li {
  position: relative;
  padding-left: 20px;
}
.textblock1_page li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.5em;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: var(--theme-color-accent);
}
@media (max-width: 767px) {
  .textblock1_page {
    font-size: 16px;
  }
  .textblock1_page h2 {
    font-size: 36px;
  }
  .textblock1_page h3,
  .textblock1_page h4,
  .textblock1_page h5,
  .textblock1_page h6 {
    font-size: 26px;
  }
}
.textblock1_document {
  color: var(--theme-color-text-common);
  font-size: 16px;
  line-height: 1.5;
}
.textblock1_document h2,
.textblock1_document h3,
.textblock1_document h4,
.textblock1_document h5,
.textblock1_document h6 {
  margin: -0.15em 0 -0.15em;
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: 40px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0;
  text-transform: uppercase;
}
.textblock1_document p,
.textblock1_document ul,
.textblock1_document ol {
  margin: -0.25em 0;
}
.textblock1_document h2 + p,
.textblock1_document h3 + p,
.textblock1_document h4 + p,
.textblock1_document h5 + p,
.textblock1_document h6 + p {
  margin-top: 21px;
}
.textblock1_document p + p,
.textblock1_document ul + p,
.textblock1_document ol + p,
.textblock1_document p + ul,
.textblock1_document p + ol {
  margin-top: 16px;
}
.textblock1_document p + h2,
.textblock1_document p + h3,
.textblock1_document p + h4,
.textblock1_document p + h5,
.textblock1_document p + h6,
.textblock1_document ul + h2,
.textblock1_document ul + h3,
.textblock1_document ul + h4,
.textblock1_document ul + h5,
.textblock1_document ul + h6,
.textblock1_document ol + h2,
.textblock1_document ol + h3,
.textblock1_document ol + h4,
.textblock1_document ol + h5,
.textblock1_document ol + h6 {
  margin-top: 42px;
}
@media (max-width: 767px) {
  .textblock1_document h2,
  .textblock1_document h3,
  .textblock1_document h4,
  .textblock1_document h5,
  .textblock1_document h6 {
    font-size: 32px;
  }
  .textblock1_document h2 + p,
  .textblock1_document h3 + p,
  .textblock1_document h4 + p,
  .textblock1_document h5 + p,
  .textblock1_document h6 + p {
    margin-top: 17px;
  }
  .textblock1_document p + h2,
  .textblock1_document p + h3,
  .textblock1_document p + h4,
  .textblock1_document p + h5,
  .textblock1_document p + h6,
  .textblock1_document ul + h2,
  .textblock1_document ul + h3,
  .textblock1_document ul + h4,
  .textblock1_document ul + h5,
  .textblock1_document ul + h6,
  .textblock1_document ol + h2,
  .textblock1_document ol + h3,
  .textblock1_document ol + h4,
  .textblock1_document ol + h5,
  .textblock1_document ol + h6 {
    margin-top: 34px;
  }
}
@media (max-width: 500px) {
  .textblock1_document {
    font-size: 14px;
  }
  .textblock1_document h2,
  .textblock1_document h3,
  .textblock1_document h4,
  .textblock1_document h5,
  .textblock1_document h6 {
    font-size: 28px;
  }
  .textblock1_document h2 + p,
  .textblock1_document h3 + p,
  .textblock1_document h4 + p,
  .textblock1_document h5 + p,
  .textblock1_document h6 + p,
  .textblock1_document p + p,
  .textblock1_document ul + p,
  .textblock1_document ol + p,
  .textblock1_document p + ul,
  .textblock1_document p + ol {
    margin-top: 13px;
  }
  .textblock1_document p + h2,
  .textblock1_document p + h3,
  .textblock1_document p + h4,
  .textblock1_document p + h5,
  .textblock1_document p + h6,
  .textblock1_document ul + h2,
  .textblock1_document ul + h3,
  .textblock1_document ul + h4,
  .textblock1_document ul + h5,
  .textblock1_document ul + h6,
  .textblock1_document ol + h2,
  .textblock1_document ol + h3,
  .textblock1_document ol + h4,
  .textblock1_document ol + h5,
  .textblock1_document ol + h6 {
    margin-top: 27px;
  }
}

.video {
  position: relative;
}
.video__play {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media (max-width: 768px) {
  .video__play {
    width: 54px;
    height: 54px;
  }
}

.breadcrumbs {
  position: relative;
}
.breadcrumbs__list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.breadcrumbs__item {
  position: relative;
  color: var(--theme-color-grey);
  line-height: 1.2;
}
.breadcrumbs__item:not(:last-child) {
  margin-right: 16px;
}
.breadcrumbs__item:not(:last-child)::after {
  margin-left: 16px;
  content: "/";
}
.breadcrumbs__item.is-active {
  color: inherit;
}
.breadcrumbs__item > a {
  color: inherit;
  text-decoration: none;
  transition: all 0.25s ease;
}
.breadcrumbs__item > a:hover {
  color: var(--theme-color-accent);
}
@media (max-width: 768px) {
  .breadcrumbs {
    font-size: 14px;
  }
  .breadcrumbs__item:not(:last-child) {
    margin-right: 10px;
  }
  .breadcrumbs__item:not(:last-child)::after {
    margin-left: 10px;
  }
}

.block-hero {
  position: relative;
  overflow: hidden;
  background-color: #1e1e1e;
  color: #fff;
}
.block-hero__bg {
  position: absolute;
  inset: 0;
}
.block-hero__bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.block-hero .container {
  position: relative;
  z-index: 1;
}
.block-hero__inner {
  position: relative;
  display: grid;
  grid-template-columns: 5fr 7fr;
  -moz-column-gap: 132px;
       column-gap: 132px;
  align-items: center;
  padding-top: 191px;
  padding-bottom: 80px;
}
.block-hero__content {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 100%;
}
.block-hero__title {
  font-size: clamp(58px, 5.119vw - 3.071px, 86px);
  line-height: 1;
}
.block-hero__title span {
  display: block;
  color: var(--theme-color-accent);
}
.block-hero__text {
  margin-top: 40px;
  color: #fff;
  font-size: 20px;
  line-height: 1.3;
}
.block-hero__buttons {
  margin-top: 80px;
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}
.block-hero__btn {
  min-height: 60px;
  border-radius: 60px;
  padding: 0 30px;
  gap: 12px;
  color: var(--theme-color-text-common);
  font-size: 16px;
  line-height: 1.1;
  font-weight: 700;
}
.block-hero__btn svg {
  display: block;
  flex-shrink: 0;
  fill: currentcolor;
}
.block-hero__visual {
  position: relative;
  min-width: 0;
}
.block-hero__circle {
  position: absolute;
  top: calc(50% - 159px);
  right: 69px;
  width: 700px;
  height: 700px;
}
.block-hero__machine {
  position: absolute;
  top: 50%;
  right: -90px;
  transform: translateY(-50%);
  width: 74%;
  border-radius: 30% 0 0 30%/30% 0 0 30%;
  max-width: none;
  overflow: hidden;
  pointer-events: auto;
}
.block-hero__machine .swiper-slide {
  display: flex;
  align-items: center;
  justify-content: center;
}
.block-hero__machine-link {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  color: var(--theme-color-text-common);
  text-decoration: none;
}
.block-hero__machine-link:hover img, .block-hero__machine-link:focus-visible img {
  opacity: 0.6;
}
.block-hero__machine-link:hover .block-hero__machine-btn, .block-hero__machine-link:focus-visible .block-hero__machine-btn {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1);
}
.block-hero__machine img {
  display: block;
  width: 100%;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  transition: opacity var(--theme-duration);
}
.block-hero__machine-label {
  display: none;
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  color: #fff;
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: 32px;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  text-transform: uppercase;
  white-space: nowrap;
}
.block-hero__machine-btn {
  position: absolute;
  left: calc(50% + 0.5px);
  top: 50%;
  transform: translate(-50%, -50%) scale(0.96);
  min-height: 60px;
  border-radius: 60px;
  padding: 0 30px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  background-color: #fff;
  color: var(--theme-color-text-common);
  font-size: 16px;
  line-height: 1.1;
  font-weight: 700;
  text-transform: uppercase;
  white-space: nowrap;
  opacity: 0;
  pointer-events: none;
  transition: opacity var(--theme-duration), transform var(--theme-duration);
}
.block-hero__machine-btn svg {
  display: block;
  flex-shrink: 0;
  fill: currentcolor;
}

.about-hero {
  position: relative;
  height: 100dvh;
  min-height: 972px;
  overflow: hidden;
  color: #fff;
}
.about-hero__bg {
  position: absolute;
  inset: 0;
}
.about-hero__bg img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.about-hero .container {
  position: relative;
  z-index: 1;
}
.about-hero__breadcrumbs {
  padding-top: 156px;
  color: #fff;
  font-size: 16px;
  line-height: 1;
}
.about-hero__breadcrumbs .breadcrumbs__item {
  color: #fff;
}
.about-hero__breadcrumbs .breadcrumbs__item.is-active {
  color: var(--theme-color-grey);
}
.about-hero__inner {
  display: grid;
  grid-template-columns: minmax(0, 824px) minmax(360px, 682px);
  justify-content: space-between;
  gap: 60px;
  padding-top: 87px;
  padding-bottom: 130px;
}
.about-hero__title {
  max-width: 824px;
  color: #fff;
  font-size: clamp(58px, 5.119vw - 3.071px, 86px);
  line-height: 0.9;
}
.about-hero__title span {
  display: block;
  color: var(--theme-color-accent);
}
.about-hero__content {
  padding-top: 0;
}
.about-hero__text {
  max-width: 682px;
  margin: 0;
  color: var(--theme-color-grey);
  font-size: 20px;
  line-height: 1.3;
}
.about-hero__video {
  width: -moz-max-content;
  width: max-content;
  max-width: 100%;
  min-height: 68px;
  margin-top: 80px;
  padding: 6px 24px 6px 6px;
  border-radius: 60px;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  background-color: var(--theme-color-accent);
  color: var(--theme-color-text-common);
  font-size: 16px;
  line-height: 1.1;
  font-weight: 700;
  text-decoration: none;
  text-transform: uppercase;
  transition: background-color var(--theme-duration);
}
.about-hero__video:hover, .about-hero__video:focus-visible {
  background-color: var(--theme-color-accent-hover);
}
.about-hero__video-icon {
  position: relative;
  width: 56px;
  height: 56px;
  border-radius: 50%;
  flex: 0 0 auto;
  background-color: var(--theme-color-text-common);
}
.about-hero__video-icon::before {
  position: absolute;
  left: 23px;
  top: 19px;
  width: 0;
  height: 0;
  border-top: 9px solid transparent;
  border-bottom: 9px solid transparent;
  border-left: 12px solid #fff;
  content: "";
}
@media (max-width: 1200px) {
  .about-hero {
    min-height: 860px;
  }
  .about-hero__breadcrumbs {
    padding-top: 136px;
  }
  .about-hero__inner {
    grid-template-columns: minmax(0, 1fr) minmax(320px, 520px);
    gap: 40px;
    padding-top: 72px;
    padding-bottom: 96px;
  }
  .about-hero__text {
    font-size: 18px;
  }
  .about-hero__video {
    margin-top: 56px;
  }
}
@media (max-width: 991px) {
  .about-hero {
    height: auto;
    min-height: 760px;
  }
  .about-hero__bg img {
    -o-object-position: 42% 50%;
       object-position: 42% 50%;
  }
  .about-hero__breadcrumbs {
    padding-top: 124px;
  }
  .about-hero__inner {
    grid-template-columns: 1fr;
    padding-top: 56px;
    padding-bottom: 88px;
  }
  .about-hero__content {
    max-width: 682px;
  }
  .about-hero__video {
    margin-top: 48px;
  }
}
@media (max-width: 575px) {
  .about-hero {
    min-height: 680px;
  }
  .about-hero__bg img {
    -o-object-position: 44% 50%;
       object-position: 44% 50%;
  }
  .about-hero__breadcrumbs {
    padding-top: 104px;
    font-size: 14px;
  }
  .about-hero__inner {
    padding-top: 44px;
    padding-bottom: 70px;
    gap: 32px;
  }
  .about-hero__title {
    font-size: clamp(34px, 9.7vw, 48px);
  }
  .about-hero__text {
    font-size: 16px;
  }
  .about-hero__video {
    min-height: 58px;
    margin-top: 36px;
    padding-right: 18px;
    gap: 10px;
    font-size: 14px;
  }
  .about-hero__video-icon {
    width: 46px;
    height: 46px;
  }
  .about-hero__video-icon::before {
    left: 19px;
    top: 15px;
  }
}
@media (max-width: 380px) {
  .about-hero__video {
    font-size: 12px;
  }
}

.about-stats {
  overflow: hidden;
  padding-top: 120px;
  padding-bottom: 120px;
}
.about-stats__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 30px;
}
.about-stats__title {
  max-width: 300px;
}
.about-stats__title span {
  display: block;
}
@media (max-width: 991px) {
  .about-stats {
    padding-top: 88px;
    padding-bottom: 88px;
  }
  .about-stats__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 767px) {
  .about-stats {
    padding-top: 70px;
    padding-bottom: 70px;
  }
  .about-stats__grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}
@media (max-width: 575px) {
  .about-stats {
    padding-top: 56px;
    padding-bottom: 50px;
  }
}

.about-stats-card {
  min-height: 200px;
  padding: 40px;
  border-radius: 30px;
  background-color: rgba(232, 232, 232, 0.6);
}
.about-stats-card__text {
  max-width: 460px;
  margin: -0.34em 0 0;
  color: var(--theme-color-text-common);
  font-size: 18px;
  line-height: 1.4;
  font-weight: 500;
}
.about-stats-card__value {
  margin-top: 41px;
  margin-bottom: -0.15em;
  color: var(--theme-color-accent);
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: 70px;
  line-height: 1;
  font-weight: 700;
  text-transform: uppercase;
}
.about-stats-card__value small {
  font: inherit;
  font-size: 50px;
}
@media (max-width: 1200px) {
  .about-stats-card {
    padding: 32px;
  }
}
@media (max-width: 767px) {
  .about-stats-card {
    min-height: unset;
    padding: 28px;
    border-radius: 24px;
  }
  .about-stats-card__text {
    font-size: 16px;
  }
  .about-stats-card__value {
    font-size: 56px;
  }
  .about-stats-card__value small {
    font-size: 40px;
  }
}
@media (max-width: 575px) {
  .about-stats-card {
    padding: 24px;
  }
  .about-stats-card__value {
    margin-top: 34px;
    font-size: 48px;
  }
  .about-stats-card__value small {
    font-size: 34px;
  }
}

.about-stats-photo {
  position: relative;
  min-height: 200px;
  border-radius: 30px;
}
.about-stats-photo img {
  position: absolute;
  left: -22%;
  top: -15.5%;
  width: 130%;
  aspect-ratio: 740/395;
  height: auto;
  max-width: none;
  -o-object-fit: contain;
     object-fit: contain;
  pointer-events: none;
}
@media (max-width: 1280px) {
  .about-stats-photo img {
    top: -4.5%;
  }
}
@media (max-width: 767px) {
  .about-stats-photo img {
    position: static;
    display: block;
    width: 100%;
    aspect-ratio: auto;
  }
}

.about-gallery {
  position: relative;
  padding-top: 120px;
  padding-bottom: 120px;
  overflow: hidden;
}
.about-gallery::before {
  position: absolute;
  left: 50%;
  top: 0;
  width: 100vw;
  height: 2px;
  background-image: repeating-linear-gradient(90deg, var(--theme-color-accent) 0 10px, transparent 10px 20px);
  transform: translateX(-50%);
  content: "";
}
.about-gallery__title {
  margin-bottom: 60px;
}
@media (max-width: 1280px) {
  .about-gallery::before {
    top: 0;
  }
}
@media (max-width: 991px) {
  .about-gallery {
    padding-top: 88px;
    padding-bottom: 88px;
  }
  .about-gallery::before {
    top: 0;
  }
}
@media (max-width: 767px) {
  .about-gallery {
    padding-top: 70px;
    padding-bottom: 70px;
  }
  .about-gallery::before {
    top: 0;
  }
  .about-gallery__title {
    margin-bottom: 40px;
  }
}
@media (max-width: 575px) {
  .about-gallery {
    padding-top: 70px;
    padding-bottom: 56px;
  }
  .about-gallery::before {
    top: 0;
  }
}

.about-gallery-slider {
  position: relative;
  width: 100%;
}

.about-geo {
  --about-geo-map-offset: 270px;
  position: relative;
  padding-top: 120px;
  padding-bottom: 280px;
  overflow: hidden;
  background-image: linear-gradient(47.4deg, #1d3b70 13.2%, #66b08a 55.39%, #b8d94d 100.95%);
  color: #fff;
}
.about-geo .container {
  position: relative;
  z-index: 2;
}
.about-geo__title {
  color: #fff;
}
.about-geo__pin {
  position: absolute;
  border-radius: 50%;
}
.about-geo__info {
  position: relative;
  margin-top: 93px;
  min-height: 101px;
  padding-left: 64px;
}
.about-geo__map {
  position: absolute;
  left: 50%;
  top: calc(var(--about-geo-map-offset) * -1);
  z-index: 1;
  display: block;
  width: auto;
  height: 664px;
  max-width: none;
  transform: translateX(-50%);
  pointer-events: none;
}
.about-geo__pin {
  left: 0;
  top: 50%;
  z-index: 2;
  width: 14px;
  height: 14px;
  background-color: #fff;
  transform: translate(-50%, -50%);
}
.about-geo__pin::before, .about-geo__pin::after {
  position: absolute;
  left: 50%;
  top: 50%;
  border-radius: 50%;
  transform: translate(-50%, -50%);
  content: "";
}
.about-geo__pin::before {
  z-index: -1;
  width: 28px;
  height: 28px;
  background-color: rgba(255, 255, 255, 0.22);
}
.about-geo__pin::after {
  z-index: -2;
  width: 44px;
  height: 44px;
  background-color: rgba(255, 255, 255, 0.14);
}
.about-geo__line {
  position: absolute;
  left: 22px;
  top: 55px;
  z-index: 2;
  width: calc(100% - 344px);
  max-width: 1216px;
  height: 2px;
  background-color: #fff;
}
.about-geo__line::after {
  position: absolute;
  right: 0;
  top: 50%;
  width: 48px;
  height: 48px;
  border: 12px solid var(--theme-color-text-common);
  border-radius: 50%;
  background-color: #fff;
  transform: translate(50%, -50%);
  content: "";
}
.about-geo__content {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 100%;
}
.about-geo__subtitle {
  margin: -0.15em 0 57px;
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: 30px;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
}
.about-geo__text {
  margin: 0 0 -0.3em;
  font-size: 20px;
  line-height: 1.3;
}
@media (max-width: 1440px) and (min-width: 1201px) {
  .about-geo__line {
    width: 75dvw;
    max-width: none;
  }
}
@media (max-width: 1280px) {
  .about-geo__line {
    width: 82dvw;
  }
}
@media (max-width: 1200px) {
  .about-geo {
    padding-top: 70px;
    padding-bottom: 230px;
  }
  .about-geo__map {
    right: -386px;
    left: auto;
    transform: none;
  }
  .about-geo__line {
    width: calc(100% - 180px);
  }
}
@media (max-width: 1100px) {
  .about-geo__content {
    padding-right: 340px;
  }
}
@media (max-width: 1000px) {
  .about-geo {
    padding-bottom: 120px;
  }
  .about-geo__map {
    height: 580px;
  }
  .about-geo__line {
    width: calc(100% - 120px);
  }
  .about-geo__content {
    padding-right: 250px;
  }
}
@media (max-width: 991px) {
  .about-geo__info {
    margin-top: 88px;
  }
}
@media (max-width: 767px) {
  .about-geo {
    --about-geo-map-offset: 195px;
    padding-top: 70px;
    padding-bottom: 58px;
  }
  .about-geo__info {
    margin-top: 72px;
    padding-left: 48px;
  }
  .about-geo__map {
    right: -260px;
    height: 400px;
  }
  .about-geo__content {
    padding-right: 180px;
  }
  .about-geo__line {
    left: 17px;
    top: 51px;
    width: calc(100vw - 132px);
  }
  .about-geo__line::after {
    width: 38px;
    height: 38px;
    border-width: 10px;
  }
  .about-geo__pin {
    width: 12px;
    height: 12px;
  }
  .about-geo__pin::before {
    width: 22px;
    height: 22px;
  }
  .about-geo__pin::after {
    width: 34px;
    height: 34px;
  }
  .about-geo__subtitle {
    margin-bottom: 42px;
    font-size: 24px;
  }
  .about-geo__text {
    max-width: 420px;
    font-size: 16px;
  }
}
@media (max-width: 575px) {
  .about-geo {
    padding-top: 50px;
  }
  .about-geo__info {
    margin-top: 64px;
    padding-left: 0;
  }
  .about-geo__line {
    left: 17px;
    top: 46px;
    width: calc(100vw - 130px);
  }
  .about-geo__subtitle {
    margin-bottom: 55px;
    font-size: 20px;
  }
}
@media (max-width: 460px) {
  .about-geo {
    --about-geo-map-offset: 160px;
  }
  .about-geo__map {
    right: -260px;
    height: 360px;
  }
  .about-geo__content {
    padding-right: 120px;
  }
  .about-geo__line {
    left: 17px;
    top: 46px;
    width: calc(100vw - 85px);
  }
}

.about-benefits {
  padding: 120px 0;
  position: relative;
}
.about-benefits::before {
  position: absolute;
  left: 50%;
  top: 0;
  width: 100vw;
  height: 2px;
  background-image: repeating-linear-gradient(90deg, var(--theme-color-accent) 0 10px, transparent 10px 20px);
  transform: translateX(-50%);
  content: "";
}
.about-benefits__title {
  margin: -0.15em auto 76px;
}
.about-benefits__title span {
  color: var(--theme-color-accent);
}
.about-benefits__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 30px;
}
@media (max-width: 991px) {
  .about-benefits {
    padding: 88px 0;
  }
  .about-benefits__title {
    margin-bottom: 56px;
  }
  .about-benefits__grid {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 767px) {
  .about-benefits {
    padding: 70px 0;
  }
  .about-benefits__title {
    margin-bottom: 40px;
    text-align: left;
  }
  .about-benefits__grid {
    gap: 20px;
  }
}
@media (max-width: 575px) {
  .about-benefits {
    padding: 56px 0;
  }
}

.about-benefit-card {
  min-height: 230px;
  padding: 50px;
  border: 1px solid var(--theme-color-accent);
  border-radius: 30px;
  background-color: #fff;
}
.about-benefit-card__title {
  margin: -0.15em 0 31px;
  color: var(--theme-color-text-common);
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: 30px;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
}
.about-benefit-card__lead {
  margin: -0.39em 0 11px;
  color: var(--theme-color-text-common);
  font-size: 18px;
  line-height: 1.5;
}
.about-benefit-card__list {
  margin: -0.39em 0 -0.39em;
  padding: 0;
  list-style: none;
  color: var(--theme-color-text-common);
  font-size: 18px;
  line-height: 1.5;
}
.about-benefit-card__list li {
  position: relative;
  padding-left: 20px;
}
.about-benefit-card__list li::before {
  position: absolute;
  left: 0;
  top: 0.45em;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: var(--theme-color-accent);
  content: "";
}
.about-benefit-card__list li:not(:last-child) {
  margin-bottom: 6px;
}
@media (max-width: 1200px) {
  .about-benefit-card {
    padding: 40px;
  }
}
@media (max-width: 767px) {
  .about-benefit-card {
    min-height: 0;
    padding: 30px;
    border-radius: 24px;
  }
  .about-benefit-card__title {
    margin-bottom: 24px;
    font-size: 24px;
  }
  .about-benefit-card__lead, .about-benefit-card__list {
    font-size: 16px;
  }
}
@media (max-width: 575px) {
  .about-benefit-card {
    padding: 24px;
  }
  .about-benefit-card__title {
    font-size: 22px;
  }
}

.hero-address {
  margin-bottom: 40px;
  display: flex;
  align-items: flex-start;
  gap: 14px;
  color: #fff;
  font-size: 18px;
  line-height: 1.3;
  font-weight: 600;
}
.hero-address svg {
  flex: 0 0 auto;
  fill: var(--theme-color-accent);
}

.hero-cats {
  position: absolute;
  left: 744px;
  top: calc(50% - 99px);
  width: 315px;
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 50px;
}
.hero-cats li {
  min-height: 40px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 20px;
  color: #fff;
  font-size: 16px;
  line-height: 1.1;
  font-weight: 700;
  text-align: right;
  text-transform: uppercase;
}
.hero-cats li.active {
  color: var(--theme-color-accent);
}
.hero-cats svg {
  flex: 0 0 auto;
}

.hero-counter {
  position: absolute;
  right: 0;
  top: 96%;
  width: 196px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  pointer-events: auto;
}
.hero-counter__btn {
  width: 18px;
  height: 18px;
  border: 0;
  padding: 0;
  color: #fff;
  background-color: transparent;
}
.hero-counter__btn svg {
  display: block;
  fill: currentcolor;
}
.hero-counter__btn_prev svg {
  transform: rotate(180deg);
}
.hero-counter__value {
  display: flex;
  align-items: baseline;
  gap: 12px;
  color: var(--theme-color-grey);
  font-size: 20px;
  line-height: 1.3;
  font-weight: 500;
}
.hero-counter__value > span {
  width: 70px;
  color: var(--theme-color-accent);
  font-size: 50px;
  font-weight: 700;
  line-height: 1;
}
.hero-counter small {
  font: inherit;
}

.block-catalog,
.block-models,
.block-offers,
.block-reviews,
.block-callback {
  padding: 120px 0 120px 0;
}

.block-catalog .section-head {
  margin-bottom: 41px;
}
.block-catalog__btn {
  margin-top: -9px;
  min-height: 60px;
  padding: 0 30px;
  gap: 12px;
  background-color: #e8e8e8;
  color: var(--theme-color-text-common);
  font-size: 16px;
  line-height: 1.1;
}
.block-catalog__btn svg {
  display: block;
  flex-shrink: 0;
  fill: currentcolor;
}

.block-models .section-head {
  align-items: center;
  margin-bottom: 50px;
}
.block-models__btn {
  min-width: 175px;
  min-height: 60px;
  padding: 0 30px;
  gap: 12px;
  background-color: var(--theme-color-light);
  color: var(--theme-color-text-common);
  font-size: 16px;
  line-height: 1.1;
}
.block-models__btn svg {
  display: block;
  flex-shrink: 0;
  fill: currentcolor;
}

.catalog-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(325px, 1fr));
  grid-auto-rows: 300px;
  gap: 30px;
}

.catalog-page {
  padding-top: 30px;
}
.catalog-page__breadcrumbs {
  margin-bottom: 37px;
}
.catalog-page__title {
  margin-bottom: 41px;
}
.catalog-page__grid {
  margin-bottom: 120px;
}
.catalog-page__separator {
  height: 2px;
  background-image: repeating-linear-gradient(to right, rgba(196, 228, 90, 0.5) 0, rgba(196, 228, 90, 0.5) 10px, transparent 10px, transparent 20px);
}

.vacancies-page {
  padding-top: 30px;
}
.vacancies-page__breadcrumbs {
  margin-bottom: 50px;
  color: var(--theme-color-text-common);
}
.vacancies-page__breadcrumbs .breadcrumbs__item {
  color: inherit;
  line-height: 1;
}
.vacancies-page__breadcrumbs .breadcrumbs__item.is-active {
  color: var(--theme-color-grey);
}
.vacancies-page__title {
  margin-bottom: 50px;
}
.vacancies-page__list {
  margin-bottom: 120px;
}

.vacancy-list {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.policy-page {
  padding-top: 30px;
  padding-bottom: 120px;
}
.policy-page__breadcrumbs {
  margin-bottom: 39px;
  color: var(--theme-color-text-common);
}
.policy-page__breadcrumbs .breadcrumbs__item {
  color: inherit;
  line-height: 1;
}
.policy-page__breadcrumbs .breadcrumbs__item.is-active {
  color: var(--theme-color-grey);
}
.policy-page__title {
  margin-bottom: 35px;
}
@media (max-width: 767px) {
  .policy-page {
    padding-bottom: 80px;
  }
  .policy-page__breadcrumbs {
    margin-bottom: 31px;
  }
  .policy-page__title {
    margin-bottom: 30px;
  }
}
@media (max-width: 500px) {
  .policy-page {
    padding-bottom: 60px;
  }
  .policy-page__breadcrumbs {
    margin-bottom: 26px;
  }
}

.partners-page {
  padding-top: 30px;
}
.partners-page__breadcrumbs {
  margin-bottom: 37px;
  color: var(--theme-color-text-common);
}
.partners-page__breadcrumbs .breadcrumbs__item {
  color: inherit;
  line-height: 1;
}
.partners-page__breadcrumbs .breadcrumbs__item.is-active {
  color: var(--theme-color-grey);
}
.partners-page__title {
  margin-bottom: 41px;
}
.partners-page__grid {
  margin-bottom: 120px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 30px;
}

.contacts-page {
  padding-top: 30px;
}
.contacts-page__breadcrumbs {
  margin-bottom: 37px;
  color: var(--theme-color-text-common);
}
.contacts-page__breadcrumbs .breadcrumbs__item {
  color: inherit;
  line-height: 1;
}
.contacts-page__breadcrumbs .breadcrumbs__item.is-active {
  color: var(--theme-color-grey);
}
.contacts-page__title {
  margin-bottom: 41px;
}
.contacts-page__top {
  margin-bottom: 30px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 390px;
  gap: 30px;
  align-items: start;
}
@media (max-width: 1100px) {
  .contacts-page__top {
    grid-template-columns: 1fr;
  }
}

.contacts-address {
  min-height: 102px;
  padding-top: 31px;
  display: grid;
  grid-template-columns: 33px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  color: var(--theme-color-text-common);
}
.contacts-address svg {
  display: block;
  fill: var(--theme-color-accent);
}
.contacts-address span {
  margin-top: -0.15em;
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: 30px;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
}

.contacts-download {
  min-height: 102px;
  border: 1px solid var(--theme-color-accent);
  border-radius: 30px;
  padding: 20px 20px 20px 19px;
  display: grid;
  grid-template-columns: 50px minmax(0, 1fr);
  gap: 20px;
  align-items: center;
  color: var(--theme-color-text-common);
  text-decoration: none;
  transition: border-color var(--theme-duration), background-color var(--theme-duration);
}
.contacts-download:hover, .contacts-download:focus-visible {
  border-color: var(--theme-color-accent-hover);
  background-color: rgba(196, 228, 90, 0.12);
}
.contacts-download__icon {
  display: block;
  width: 50px;
  height: 50px;
}
.contacts-download__icon img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.contacts-download__text {
  margin-top: -0.1em;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.3;
}

.contacts-map {
  position: relative;
  height: 500px;
  margin-bottom: 120px;
  border-radius: 30px;
  overflow: hidden;
}
.contacts-map__image {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.contacts-map__marker {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 86px;
  height: 86px;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: translate(-50%, -50%);
}
.contacts-map__marker-bg {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  background-color: #fff;
}
.contacts-map__marker img {
  position: relative;
  z-index: 1;
  display: block;
  width: 52px;
  height: 52px;
  border-radius: 10px;
}

.contacts-request {
  padding: 120px 0;
}
.contacts-request__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 30px;
}
.contacts-request__info, .contacts-request__form {
  min-height: 621px;
}
@media (max-width: 1100px) {
  .contacts-request__grid {
    grid-template-columns: 1fr;
  }
}

.used-equipment-page {
  padding-top: 30px;
}
.used-equipment-page__breadcrumbs {
  margin-bottom: 37px;
  color: var(--theme-color-text-common);
}
.used-equipment-page__breadcrumbs .breadcrumbs__item {
  color: inherit;
  line-height: 1;
}
.used-equipment-page__breadcrumbs .breadcrumbs__item.is-active {
  color: var(--theme-color-grey);
}
.used-equipment-page__title {
  margin-bottom: 41px;
}
.used-equipment-page__list {
  margin-bottom: 120px;
  display: flex;
  flex-direction: column;
  gap: 30px;
}

.error404 {
  position: relative;
  min-height: 100vh;
  background-color: var(--theme-color-text-common);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  color: #fff;
}
.error404__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  mix-blend-mode: overlay;
  opacity: 0.6;
  pointer-events: none;
}
.error404__ellipses {
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 1;
  width: 791px;
  max-width: calc(100vw - 32px);
  aspect-ratio: 791/700;
  transform: translate(-50%, -50%);
  pointer-events: none;
}
.error404__content {
  position: relative;
  z-index: 2;
  width: min(100% - 32px, 610px);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 30px;
  text-align: center;
}
.error404__code {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  color: #fff;
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: 280px;
  font-weight: 700;
  line-height: 0.69;
}
.error404__code span {
  display: block;
}
.error404__zero {
  width: 217px;
  height: 259px;
  display: block;
  -o-object-fit: contain;
     object-fit: contain;
}
.error404__body {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 30px;
}
.error404__title {
  margin: -0.14em 0 0;
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: 50px;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
}
.error404__text {
  max-width: 585px;
  margin: -0.22em 0 0;
  color: var(--theme-color-grey);
  font-size: 18px;
  line-height: 1.3;
}
.error404__btn {
  min-height: 60px;
  padding: 0 30px;
  border-radius: 60px;
  gap: 12px;
  color: var(--theme-color-text-common);
  font-size: 16px;
  line-height: 1.1;
}
.error404__btn svg {
  display: block;
  flex-shrink: 0;
  fill: currentcolor;
}
@media (max-width: 800px) {
  .error404__code {
    gap: clamp(6px, 1.25vw, 10px);
    font-size: clamp(140px, 35vw, 280px);
  }
  .error404__zero {
    width: clamp(108px, 27.125vw, 217px);
    height: clamp(129px, 32.375vw, 259px);
  }
}
@media (max-width: 767px) {
  .error404__content {
    padding-right: 40px;
    padding-left: 40px;
  }
  .error404__code {
    gap: clamp(5px, 1vw, 8px);
    font-size: clamp(100px, 30vw, 230px);
  }
  .error404__zero {
    width: clamp(78px, 23.25vw, 178px);
    height: clamp(93px, 27.75vw, 213px);
  }
  .error404__text {
    font-size: 16px;
  }
  .error404__title {
    font-size: 44px;
  }
}
@media (max-width: 500px) {
  .error404__content, .error404__body {
    gap: 20px;
  }
  .error404__title {
    font-size: 36px;
  }
  .error404__text {
    margin-top: -0.18em;
  }
  .error404__btn {
    min-height: 52px;
    padding-right: 24px;
    padding-left: 24px;
  }
}
@media (max-width: 400px) {
  .error404__ellipses {
    display: none;
  }
  .error404__content {
    padding-right: 0;
    padding-left: 0;
  }
}

.catalog-text {
  padding-top: 120px;
  padding-bottom: 120px;
}
@media (max-width: 767px) {
  .catalog-text {
    padding-top: 70px;
    padding-bottom: 70px;
  }
  .catalog-listing {
    padding: 70px 0!important;
  }
}
@media (max-width: 500px) {
/*  .catalog-text {
    padding-top: 40px;
    padding-bottom: 40px;
  }*/
}

.calculator-page {
  padding-top: 30px;
  padding-bottom: 120px;
}
.calculator-page__breadcrumbs {
  margin-bottom: 37px;
  color: var(--theme-color-text-common);
}
.calculator-page__breadcrumbs .breadcrumbs__item {
  color: inherit;
  line-height: 1;
}
.calculator-page__breadcrumbs .breadcrumbs__item.is-active {
  color: var(--theme-color-grey);
}
.calculator-page__title {
  margin-bottom: 41px;
}
.calculator-page__hero {
  display: grid;
  grid-template-columns: minmax(0, 998px) minmax(0, 652px);
  gap: 30px;
  align-items: stretch;
}
.calculator-page__media {
  overflow: hidden;
  min-height: 685px;
  border-radius: 20px;
  background-color: var(--theme-color-light);
}
.calculator-page__media picture,
.calculator-page__media img {
  display: block;
  width: 100%;
  height: 100%;
}
.calculator-page__media img {
  -o-object-fit: cover;
     object-fit: cover;
}
@media (max-width: 1000px) {
  .calculator-page__hero {
    grid-template-columns: 1fr;
  }
  .calculator-page__media {
    min-height: 420px;
  }
}
@media (max-width: 767px) {
  .calculator-page {
    padding-bottom: 80px;
  }
  .calculator-page__breadcrumbs {
    margin-bottom: 28px;
  }
  .calculator-page__title {
    margin-bottom: 32px;
  }
  .calculator-page__media {
    min-height: 300px;
    border-radius: 18px;
  }
}

.rent-calculator {
  padding: 40px;
  border: 1px solid var(--theme-color-text-common);
  border-radius: 30px;
  background-color: #fff;
}
.rent-calculator__params {
  display: grid;
  grid-template-columns: 630fr 261fr max-content;
  gap: 40px;
  align-items: start;
}
.rent-calculator__group {
  min-width: 0;
  position: relative;
}
.rent-calculator__group_equipment {
  display: grid;
  grid-template-columns: 400px 220px;
  gap: 20px 10px;
  align-items: end;
}
.rent-calculator__group_place {
  display: grid;
  gap: 20px;
  min-width: 220px;
}
.rent-calculator__group_payment {
  align-self: stretch;
}
.rent-calculator__group:not(:first-child)::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: -21px;
  width: 2px;
  background-image: linear-gradient(to bottom, var(--theme-color-accent) 0 10px, transparent 10px 20px);
  background-size: 2px 20px;
  background-repeat: repeat-y;
}
.rent-calculator__separator {
  margin: 40px 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: center;
  gap: 20px;
  color: var(--theme-color-text-common);
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: 30px;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
}
.rent-calculator__separator::before, .rent-calculator__separator::after {
  content: "";
  height: 2px;
  background-image: linear-gradient(to right, var(--theme-color-accent) 0 10px, transparent 10px 20px);
  background-size: 20px 2px;
  background-repeat: repeat-x;
}
.rent-calculator__results {
  display: grid;
  grid-template-columns: 630fr 522fr;
  gap: 80px;
  align-items: start;
  max-width: 1232px;
}
.rent-calculator__result-list, .rent-calculator__totals {
  display: grid;
  gap: 12px;
}
.rent-calculator__totals {
  position: relative;
  min-width: 370px;
}
.rent-calculator__totals::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: -41px;
  width: 2px;
  background-image: linear-gradient(to bottom, var(--theme-color-accent) 0 10px, transparent 10px 20px);
  background-size: 2px 20px;
  background-repeat: repeat-y;
}
.rent-calculator__actions {
  margin-top: 40px;
  display: flex;
  gap: 16px;
  align-items: center;
}
.rent-calculator__btn {
  min-width: 144px;
  min-height: 56px;
  padding-right: 20px;
  padding-left: 20px;
  font-size: 16px;
  line-height: 1.1;
  text-transform: none;
}
@media (max-width: 1280px) {
  .rent-calculator__params, .rent-calculator__results {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  .rent-calculator__group:not(:first-child)::before {
    top: -20px;
    right: 0;
    bottom: auto;
    left: 0;
    width: auto;
    height: 2px;
    background-image: linear-gradient(to right, var(--theme-color-accent) 0 10px, transparent 10px 20px);
    background-size: 20px 2px;
    background-repeat: repeat-x;
  }
  .rent-calculator__totals::before {
    top: -20px;
    right: 0;
    bottom: auto;
    left: 0;
    width: auto;
    height: 2px;
    background-image: linear-gradient(to right, var(--theme-color-accent) 0 10px, transparent 10px 20px);
    background-size: 20px 2px;
    background-repeat: repeat-x;
  }
}
@media (max-width: 767px) {
  .rent-calculator {
    padding: 24px;
    border-radius: 24px;
  }
  .rent-calculator__group_equipment {
    grid-template-columns: minmax(0, 1fr);
  }
  .rent-calculator__actions {
    align-items: stretch;
    flex-direction: column;
  }
  .rent-calculator__btn {
    width: 100%;
  }
  .rent-calculator__totals {
    min-width: 0;
  }
  .rent-calculator__group_place {
    min-width: 0;
  }
}
@media (max-width: 500px) {
  .rent-calculator {
    padding: 20px;
  }
  .rent-calculator__separator {
    grid-template-columns: 1fr;
    gap: 12px;
    font-size: 26px;
    text-align: center;
  }
  .rent-calculator__separator::before {
    display: none;
  }
}
.rent-calculator_page {
  min-height: 685px;
  padding: 30px;
}
.rent-calculator_page .rent-calculator__params {
  grid-template-columns: 466fr 261fr max-content;
  gap: 20px;
}
.rent-calculator_page .rent-calculator__group_equipment {
  grid-template-columns: minmax(0, 1fr) 166px;
  gap: 20px 10px;
}
.rent-calculator_page .rent-calculator__group:not(:first-child)::before {
  left: -11px;
}
.rent-calculator_page .rent-calculator__group_place {
  gap: 16px;
}
.rent-calculator_page .rent-calculator__separator {
  grid-template-columns: auto minmax(0, 1fr);
  margin: 26px 0;
}
.rent-calculator_page .rent-calculator__separator::before {
  display: none;
}
.rent-calculator_page .rent-calculator__results {
  grid-template-columns: minmax(0, 60fr) minmax(370px, 40fr);
  gap: 40px;
  max-width: none;
}
.rent-calculator_page .rent-calculator__totals::before {
  left: -21px;
}
.rent-calculator_page .rent-calculator__actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 40px;
}
.rent-calculator_page .rent-calculator__btn {
  width: 100%;
  min-width: 0;
}
@media (max-width: 1600px) {
  .rent-calculator_page .rent-calculator__params {
    grid-template-columns: minmax(220px, 60fr) minmax(0, 40fr);
    gap: 40px;
  }
  .rent-calculator_page .rent-calculator__results {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  .rent-calculator_page .rent-calculator__group_equipment {
    position: relative;
    grid-column: 1/-1;
    grid-template-columns: minmax(0, 1fr) 166px;
  }
  .rent-calculator_page .rent-calculator__group_equipment::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: -21px;
    left: 0;
    height: 2px;
    background-image: linear-gradient(to right, var(--theme-color-accent) 0 10px, transparent 10px 20px);
    background-size: 20px 2px;
    background-repeat: repeat-x;
  }
  .rent-calculator_page .rent-calculator__group_place {
    grid-column: 1;
  }
  .rent-calculator_page .rent-calculator__group_payment {
    grid-column: 2;
  }
  .rent-calculator_page .rent-calculator__group_place::before {
    display: none;
  }
  .rent-calculator_page .rent-calculator__group_payment::before {
    top: 0;
    bottom: 0;
    left: -21px;
    width: 2px;
    height: auto;
    background-image: linear-gradient(to bottom, var(--theme-color-accent) 0 10px, transparent 10px 20px);
    background-size: 2px 20px;
    background-repeat: repeat-y;
  }
  .rent-calculator_page .rent-calculator__totals::before {
    top: -20px;
    right: 0;
    bottom: auto;
    left: 0;
    width: auto;
    height: 2px;
    background-image: linear-gradient(to right, var(--theme-color-accent) 0 10px, transparent 10px 20px);
    background-size: 20px 2px;
    background-repeat: repeat-x;
  }
}
@media (max-width: 1280px) {
  .rent-calculator_page {
    min-height: 0;
  }
}
@media (max-width: 767px) {
  .rent-calculator_page {
    padding: 24px;
  }
  .rent-calculator_page .rent-calculator__params {
    grid-template-columns: minmax(0, 1fr);
  }
  .rent-calculator_page .rent-calculator__group_equipment {
    grid-column: auto;
    grid-template-columns: minmax(0, 1fr);
  }
  .rent-calculator_page .rent-calculator__group_equipment::after {
    display: none;
  }
  .rent-calculator_page .rent-calculator__group_place,
  .rent-calculator_page .rent-calculator__group_payment {
    grid-column: auto;
  }
  .rent-calculator_page .rent-calculator__group:not(:first-child)::before {
    top: -20px;
    right: 0;
    bottom: auto;
    left: 0;
    display: block;
    width: auto;
    height: 2px;
    background-image: linear-gradient(to right, var(--theme-color-accent) 0 10px, transparent 10px 20px);
    background-size: 20px 2px;
    background-repeat: repeat-x;
  }
  .rent-calculator_page .rent-calculator__actions {
    margin-top: 28px;
  }
  .rent-calculator_page .rent-calculator__btn {
    min-width: 0;
  }
}

.calc-field {
  min-width: 0;
  width: 100%;
}
.calc-field_full {
  grid-column: 1/-1;
  width: 100%;
}
.calc-field_wide {
  width: 100%;
}
.calc-field_short {
  width: 220px;
}
.calc-field__label,
.calc-field .calc-choice__legend {
  display: block;
  margin: -0.1em 0 13px;
  color: #3967b9;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.2;
}
.calc-field__input {
  width: 100%;
  height: 42px;
  padding: 0 16px;
  border: 0;
  border-radius: 60px;
  background-color: rgba(232, 232, 232, 0.6);
  color: var(--theme-color-text-common);
  font-size: 16px;
  font-weight: 500;
  line-height: 1;
}
.calc-field__select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.calc-field_short {
  align-self: end;
}
.calc-field .ts-wrapper {
  display: block;
  width: 100%;
  height: 42px;
  padding: 0;
}
.calc-field .ts-control {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  height: 42px;
  min-height: 42px;
  border: 1px solid #e8e8e8;
  border-radius: 60px;
  background-color: #fff;
  padding: 0 44px 0 16px;
  color: var(--theme-color-text-common);
  font-size: 16px;
  font-weight: 500;
  line-height: 1;
  cursor: pointer;
  outline: none;
}
.calc-field .ts-control input {
  display: none !important;
}
.calc-field .ts-wrapper_city-search .ts-control input {
  display: block !important;
  flex: 1 1 auto;
  width: auto !important;
  min-width: 24px;
  padding: 0;
  color: inherit;
  font: inherit;
  cursor: text;
}
.calc-field .ts-wrapper_city-search .ts-control .item {
  flex: 1 1 100%;
  width: 100%;
}
.calc-field .ts-wrapper_city-search.has-items:not(.focus) .ts-control input {
  display: none !important;
}
.calc-field .ts-wrapper_city-search.focus .ts-control .item {
  display: none;
}
.calc-field .ts-control .item {
  width: 100%;
  color: var(--theme-color-text-common);
  font-size: 16px;
  line-height: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.calc-field .ts-control svg {
  right: 16px;
  width: 16px;
  height: 9px;
  color: var(--theme-color-text-common);
  fill: currentcolor;
}
.calc-field .ts-wrapper.focus .ts-control {
  border-color: var(--theme-color-accent);
}
.calc-field .ts-dropdown {
  min-width: 100%;
  border-radius: 18px;
}
.calc-field .ts-dropdown .option {
  font-size: 15px;
}
@media (max-width: 767px) {
  .calc-field {
    width: 100%;
  }
  .calc-field_wide, .calc-field_short {
    width: 100%;
  }
}

.calc-output,
.calc-result__value {
  display: flex;
  align-items: center;
  min-width: 0;
  height: 42px;
  border-radius: 60px;
  background-color: rgba(232, 232, 232, 0.6);
  padding: 0 16px;
  color: var(--theme-color-text-common);
  font-size: 16px;
  font-weight: 500;
  line-height: 1;
}

.rent-calculator_page .calc-field__label,
.rent-calculator_page .calc-choice__legend {
  margin-top: -0.225em;
}
.rent-calculator_page .calc-choice__item:not(:last-child) {
  margin-bottom: 10px;
}
.rent-calculator_page .calc-field_short,
.rent-calculator_page .calc-output_field {
  width: 166px;
}
.rent-calculator_page .calc-result {
  grid-template-columns: minmax(150px, 212px) minmax(0, 1fr);
  gap: 40px;
}
.rent-calculator_page .calc-result_total {
  grid-template-columns: minmax(104px, 144px) minmax(0, 1fr);
}
@media (max-width: 1600px) {
  .rent-calculator_page .calc-field_wide,
  .rent-calculator_page .calc-field_short,
  .rent-calculator_page .calc-output_field {
    width: 100%;
  }
}
@media (max-width: 767px) {
  .rent-calculator_page .calc-result,
  .rent-calculator_page .calc-result_total {
    grid-template-columns: minmax(0, 1fr);
    gap: 10px;
  }
}

.calc-choice {
  margin: 0;
  padding: 0;
  border: 0;
}
.calc-choice__legend {
  margin: -0.1em 0 15px;
  padding: 0;
  color: #3967b9;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.2;
}
.calc-choice__item {
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--theme-color-text-common);
  font-size: 16px;
  font-weight: 500;
  line-height: 1;
  cursor: pointer;
}
.calc-choice__item:not(:last-child) {
  margin-bottom: 14px;
}
.calc-choice__item input {
  flex-shrink: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 20px;
  height: 20px;
  margin: 0;
  border: 1px solid var(--theme-color-text-common);
  border-radius: 50%;
  background-color: #fff;
  cursor: pointer;
}
.calc-choice__item input:checked {
  border: 6px solid #b8d94d;
}

.calc-checkbox {
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--theme-color-text-common);
  font-size: 16px;
  line-height: 1;
  cursor: pointer;
}
.calc-checkbox input {
  flex: 0 0 16px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 16px;
  height: 16px;
  margin: 0;
  border: 1px solid var(--theme-color-text-common);
  border-radius: 4px;
  background-color: #fff;
  background-origin: border-box;
  background-position: 3px 4px;
  background-repeat: no-repeat;
  background-size: 10px 8px;
  cursor: pointer;
}
.calc-checkbox span {
  min-width: 0;
}
.calc-checkbox input:checked {
  background-image: url("data:image/svg+xml,%3Csvg width='10' height='8' viewBox='0 0 10 8' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3.72 7.53 0 3.8l1.06-1.06 2.66 2.66L8.94.18 10 1.24 3.72 7.53Z' fill='%231e1e1e'/%3E%3C/svg%3E");
}

.calc-result {
  display: grid;
  grid-template-columns: 212px minmax(0, 378px);
  gap: 40px;
  align-items: center;
}
.calc-result__label {
  color: #3967b9;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.2;
}
.calc-result_total {
  grid-template-columns: 104px minmax(0, 378px);
  gap: 40px;
}
@media (max-width: 767px) {
  .calc-result {
    grid-template-columns: minmax(0, 1fr);
    gap: 10px;
  }
  .calc-result_total {
    grid-template-columns: minmax(0, 1fr);
    gap: 10px;
  }
}

.calculator-steps {
  overflow: hidden;
  padding: 120px 0;
  background-image: linear-gradient(53deg, #1d3b70 12.882%, #66b08a 52.055%, #b8d94d 94.362%);
  color: #fff;
}
.calculator-steps__inner {
  position: relative;
}
.calculator-steps__top {
  display: grid;
  grid-template-columns: minmax(0, 594px) minmax(0, 800px);
  justify-content: space-between;
  gap: 40px;
  margin-bottom: 80px;
}
.calculator-steps__title {
  margin: -0.15em 0;
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: 60px;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
}
.calculator-steps__docs {
  display: flex;
  justify-content: flex-end;
  gap: 20px;
  align-items: flex-start;
}
.calculator-steps__list {
  position: relative;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 30px;
  margin: 0;
  padding: 116px 0 0;
  list-style: none;
  counter-reset: steps;
}
.calculator-steps__list::before {
  content: "";
  position: absolute;
  top: 62px;
  left: 50%;
  width: 100vw;
  transform: translateX(-50%);
  border-top: 1px dashed rgba(255, 255, 255, 0.35);
}
.calculator-steps__list li {
  position: relative;
  counter-increment: steps;
  max-width: 398px;
  margin: 0 auto;
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.1;
  text-align: center;
  text-transform: uppercase;
}
.calculator-steps__list li::before {
  content: counter(steps, decimal-leading-zero);
  position: absolute;
  left: 50%;
  top: -116px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 72px;
  height: 72px;
  border-radius: 18px;
  transform: translateX(-50%);
  background-color: #fff;
  color: #66b08a;
  font-size: 42px;
  line-height: 1;
}
.calculator-steps__list li::after {
  content: "";
  position: absolute;
  left: 50%;
  top: -63px;
  width: 16px;
  height: 16px;
  border: 4px solid rgba(255, 255, 255, 0.35);
  border-radius: 50%;
  transform: translateX(-50%);
  background-color: #fff;
}
@media (max-width: 1280px) {
  .calculator-steps__top {
    grid-template-columns: 1fr;
  }
  .calculator-steps__docs {
    justify-content: flex-start;
  }
}
@media (max-width: 900px) {
  .calculator-steps {
    padding: 80px 0;
  }
  .calculator-steps__title {
    font-size: 44px;
  }
  .calculator-steps__docs, .calculator-steps__list {
    grid-template-columns: 1fr;
  }
  .calculator-steps__docs {
    flex-direction: column;
  }
  .calculator-steps__list {
    display: grid;
    gap: 36px;
    padding-top: 0;
  }
  .calculator-steps__list::before {
    display: none;
  }
  .calculator-steps__list li {
    display: grid;
    grid-template-columns: 72px minmax(0, 1fr);
    gap: 18px;
    align-items: center;
    max-width: none;
    margin: 0;
    text-align: left;
  }
  .calculator-steps__list li::before {
    position: static;
    transform: none;
  }
  .calculator-steps__list li::after {
    display: none;
  }
}
@media (max-width: 500px) {
  .calculator-steps__title {
    font-size: 36px;
  }
  .calculator-steps__list li {
    font-size: 22px;
  }
}

.calculator-doc {
  display: flex;
  align-items: center;
  gap: 20px;
  width: 390px;
  min-height: 102px;
  padding: 20px;
  border: 1px solid #fff;
  border-radius: 30px;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.3;
  text-decoration: none;
}
.calculator-doc__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 50px;
  height: 50px;
  border: 2px solid currentcolor;
  border-radius: 6px;
  font-size: 12px;
  font-weight: 800;
  line-height: 1;
  text-transform: uppercase;
}
@media (max-width: 500px) {
  .calculator-doc {
    width: 100%;
    min-height: 88px;
    border-radius: 24px;
    font-size: 16px;
  }
}

.calculator-request {
  padding: 120px 0;
}
.calculator-request__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 30px;
}
.calculator-request__info, .calculator-request__form {
  min-height: 621px;
  border-radius: 30px;
}
.calculator-request__info {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 50px;
  padding: 60px;
  border: 1px solid var(--theme-color-text-common);
}
.calculator-request__title {
  margin: -0.15em 0 24px;
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: 60px;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
}
.calculator-request__text {
  max-width: 374px;
  margin: -0.15em 0;
  font-size: 18px;
  line-height: 1.3;
}
.calculator-request__phones {
  display: grid;
  gap: 20px;
}
.calculator-request__phones a {
  color: inherit;
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: 30px;
  font-weight: 700;
  line-height: 1.1;
  text-decoration: none;
}
.calculator-request__form {
  padding: 60px;
  background-color: rgba(232, 232, 232, 0.6);
}
.calculator-request__fields {
  display: grid;
  gap: 20px;
  margin-bottom: 40px;
}
.calculator-request__submit {
  min-height: 60px;
  margin-bottom: 20px;
}
@media (max-width: 1100px) {
  .calculator-request__grid {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 767px) {
  .calculator-request {
    padding: 80px 0;
  }
  .calculator-request__info, .calculator-request__form {
    min-height: 0;
    padding: 32px;
    border-radius: 24px;
  }
  .calculator-request__title {
    font-size: 42px;
  }
}
@media (max-width: 500px) {
  .calculator-request__info, .calculator-request__form {
    padding: 24px;
  }
  .calculator-request__title {
    font-size: 36px;
  }
  .calculator-request__phones a {
    font-size: 26px;
  }
}

.product-page {
  padding-top: 30px;
}
.product-page__breadcrumbs {
  color: var(--theme-color-text-common);
}
.product-page__breadcrumbs .breadcrumbs__item {
  color: inherit;
  line-height: 1;
}
.product-page__breadcrumbs .breadcrumbs__item.is-active {
  color: var(--theme-color-grey);
}

.product-detail {
  margin-top: 42px;
  margin-bottom: 60px;
}
.product-detail__layout {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 30px;
  align-items: start;
}
.product-detail__gallery-wrap {
  min-width: 0;
  display: grid;
  grid-template-columns: 120px minmax(0, 1fr);
  gap: 12px;
}
.product-detail__gallery {
  position: relative;
  grid-column: 2;
  grid-row: 1;
  min-width: 0;
  height: 478px;
  border-radius: 30px;
  overflow: hidden;
  background-color: var(--theme-color-light);
}
.product-detail__gallery-arrow {
  position: absolute;
  top: 50%;
  z-index: 2;
  transform: translateY(-50%);
  background-color: #fff;
}
.product-detail__gallery-arrow_prev {
  left: 20px;
}
.product-detail__gallery-arrow_next {
  right: 20px;
}
.product-detail .swiper-nav.product-detail__gallery-arrow {
  position: absolute;
}
.product-detail__photo {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.product-detail__thumb {
  position: relative;
  width: 100%;
  aspect-ratio: 120/86;
  border-radius: 20px;
  overflow: hidden;
  background-color: var(--theme-color-light);
  cursor: pointer;
  transition: box-shadow var(--theme-duration);
}
.product-detail__thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  opacity: 0.3;
  transition: opacity var(--theme-duration);
}
.product-detail__main {
  min-width: 0;
}
.product-detail__title {
  margin: -0.15em 0 17px;
  color: var(--theme-color-text-common);
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: 50px;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
}
.product-detail__lead {
  max-width: 825px;
  margin: 0;
  font-size: 16px;
  line-height: 1.5;
}
.product-detail__more {
  margin-top: 10px;
  padding: 0;
  border: 0;
  background: none;
  color: var(--theme-color-text-common);
  font-size: 16px;
  font-weight: 600;
  line-height: 1.3;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.product-detail__cols {
  margin-top: 39px;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 305px), 1fr));
  gap: 30px;
}

.product-specs-card,
.product-price-card {
  min-height: 315px;
  border-radius: 30px;
  padding: 29px;
  background-color: #fff;
}

.product-specs-card {
  border: 1px #e8e8e8 solid;
}
.product-specs-card__title {
  margin: -0.225em 0 16px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.2;
}
.product-specs-card__link {
  display: inline-flex;
  margin-top: 17px;
  color: var(--theme-color-text-common);
  font-size: 16px;
  font-weight: 600;
  line-height: 1.3;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.product-specs {
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 7px;
}
.product-specs div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  color: var(--theme-color-grey);
  font-size: 16px;
  line-height: 1.3;
}
.product-specs dt,
.product-specs dd {
  margin: 0;
}
.product-specs dd {
  color: var(--theme-color-text-common);
  font-weight: 500;
  text-align: right;
}
.product-specs sup {
  font-size: 0.645em;
  line-height: 0;
}

.product-price-card {
  border: 1px var(--theme-color-text-common) solid;
}
.product-price-card__price {
  margin: -0.2em 0 0;
  color: var(--theme-color-text-common);
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: 30px;
  font-weight: 700;
  line-height: 1.1;
}
.product-price-card__price + .product-price-card__price {
  margin-top: 8px;
}
.product-price-card__price span {
  color: #3967b9;
}
.product-price-card__btn {
  width: 100%;
  min-height: 56px;
  margin-top: 58px;
  font-size: 16px;
  line-height: 1.1;
  text-transform: none;
}
.product-price-card__btn + .product-price-card__btn {
  margin-top: 12px;
}

.product-tabs {
  margin-bottom: 120px;
}
.product-tabs__nav {
  display: flex;
  flex-wrap: nowrap;
  gap: 10px;
  margin-bottom: 60px;
  overflow-x: auto;
  scrollbar-width: none;
  margin-right: calc(-1 * var(--container-padding));
  margin-left: calc(-1 * var(--container-padding));
  padding-right: var(--container-padding);
  padding-left: var(--container-padding);
}
.product-tabs__nav::-webkit-scrollbar {
  display: none;
}
.product-tabs__btn {
  flex-shrink: 0;
  min-height: 60px;
  border-radius: 50px;
  box-shadow: inset 0 0 0 1px #e8e8e8;
  padding: 0 20px;
  color: var(--theme-color-text-common);
  font-size: 16px;
  font-weight: 700;
  line-height: normal;
  text-transform: uppercase;
  transition: box-shadow var(--theme-duration), background-color var(--theme-duration), color var(--theme-duration);
}
.product-tabs__btn.active {
  background: linear-gradient(65deg, #1d3b70 9.08%, #66b08a 48.34%, #b8d94d 110.35%);
  box-shadow: none;
  color: #fff;
}
.product-tabs__content {
  display: none;
}
.product-tabs__content.active {
  display: block;
}

.product-description {
  max-width: 1253px;
  font-size: 18px;
}
.product-description h2 {
  margin: -0.2em 0 17px;
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: 30px;
  font-weight: 700;
  line-height: 1.1;
  text-transform: none;
}
.product-description ul {
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
  list-style: none;
}
.product-description li {
  position: relative;
  padding-left: 20px;
}
.product-description li::before {
  content: "";
  position: absolute;
  top: 9px;
  left: 0;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: var(--theme-color-accent);
}

.product-params {
  margin: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 90px;
  color: var(--theme-color-text-common);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.3;
}
.product-params__col {
  min-width: 0;
}
.product-params__row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) max-content;
  gap: 16px;
  padding-bottom: 16px;
  margin-bottom: 16px;
  border-bottom: 1px #e8e8e8 solid;
}
.product-params__row_last {
  padding-bottom: 0;
  margin-bottom: 0;
  border-bottom: 0;
}
.product-params dt,
.product-params dd {
  min-width: 0;
  margin: 0;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.product-params dt {
  color: var(--theme-color-grey);
}
.product-params dd {
  text-align: right;
}
.product-params sup {
  font-size: 0.645em;
  line-height: 0;
}
@media (max-width: 767px) {
  .product-params {
    grid-template-columns: 1fr;
    gap: 0;
  }
  .product-params__col:not(:last-child) .product-params__row_last {
    padding-bottom: 16px;
    margin-bottom: 16px;
    border-bottom: 1px #e8e8e8 solid;
  }
}
@media (max-width: 480px) {
  .product-params__row {
    grid-template-columns: 1fr;
    gap: 4px;
  }
  .product-params dd {
    text-align: left;
  }
}

.block-models_product {
  padding-top: 120px;
  padding-bottom: 120px;
}

.catalog-hero {
  position: relative;
  padding-bottom: 74px;
  overflow: hidden;
  background-color: var(--theme-color-text-common);
  color: #fff;
}
.catalog-hero__bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
}
.catalog-hero__bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  opacity: 0.6;
  mix-blend-mode: overlay;
}
.catalog-hero .container {
  position: relative;
  z-index: 1;
}
.catalog-hero__breadcrumbs {
  padding-top: 160px;
  color: #fff;
}
.catalog-hero__breadcrumbs .breadcrumbs__item.is-active {
  color: var(--theme-color-grey);
}
.catalog-hero__inner {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 80px;
  align-items: center;
  padding-top: 40px;
}
.catalog-hero__title {
  color: #fff;
}
.catalog-hero__text {
  margin: 30px 0 0;
  color: var(--theme-color-grey);
  font-size: 20px;
  line-height: 1.3;
}
.catalog-hero__btn {
  margin-top: 50px;
  min-height: 60px;
  padding: 0 30px;
  gap: 12px;
  color: var(--theme-color-text-common);
  font-size: 16px;
  line-height: 1.1;
}
.catalog-hero__btn svg {
  fill: currentcolor;
}
.catalog-hero__photo {
  justify-self: end;
  width: 100%;
  max-width: 742px;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
}

.catalog-listing {
  padding: 80px 0 120px;
}
.catalog-listing__grid {
  display: grid;
  grid-template-columns: 378px minmax(0, 1fr);
  gap: 50px;
  align-items: start;
}

.catalog-sidebar {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.catalog-toolbar {
  display: none;
  margin-bottom: 24px;
}

.catalog-filter-open {
  min-height: 56px;
  padding: 0 40px;
  font-size: 16px;
}

body.catalog-filter-opened {
  overflow: hidden;
}

.catalog-back {
  min-height: 81px;
  border: 1px var(--theme-color-text-common) solid;
  border-radius: 30px;
  padding: 0 30px;
  display: flex;
  align-items: center;
  gap: 70px;
  background-color: transparent;
  color: var(--theme-color-text-common);
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: 30px;
  font-weight: 700;
  line-height: 1.1;
  text-transform: uppercase;
}
.catalog-back svg {
  transform: rotate(180deg);
  fill: currentcolor;
}

.catalog-filter {
  border-radius: 30px;
  padding: 30px;
  background-color: rgba(232, 232, 232, 0.6);
}
.catalog-filter__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}
.catalog-filter__title {
  margin: -0.1em 0 22px;
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.1;
  text-transform: uppercase;
}
.catalog-filter__close {
  display: none;
  width: 40px;
  height: 40px;
  align-items: center;
  justify-content: center;
  color: var(--theme-color-text-common);
}
.catalog-filter__close svg {
  fill: currentcolor;
}
.catalog-filter__body {
  min-height: 0;
}
.catalog-filter__scroll {
  min-height: 0;
}
.catalog-filter__more {
  margin-top: 20px;
  padding: 0;
  border: 0;
  background: none;
  color: var(--theme-color-text-common);
  font-size: 16px;
  font-weight: 600;
  line-height: 1.3;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.catalog-filter__buttons {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  padding-top: 30px;
}
.catalog-filter__submit, .catalog-filter__reset {
  min-height: 56px;
  padding: 0 22px;
  font-size: 16px;
  text-transform: none;
}

.filter-group {
  border: 0;
  margin: 0;
  padding: 20px 0;
  background-image: linear-gradient(#e6e6e6, #e6e6e6);
  background-repeat: no-repeat;
  background-position: left top;
  background-size: 100% 1px;
}
.filter-group__title {
  width: 100%;
  border: 0;
  padding: 0;
  background: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  color: var(--theme-color-text-common);
  font-size: 18px;
  font-weight: 700;
  line-height: 1.2;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.filter-group__title span:first-child {
  min-width: 0;
}
.filter-group__chevron {
  flex-shrink: 0;
  width: 12px;
  height: 12px;
  border-right: 2px currentcolor solid;
  border-bottom: 2px currentcolor solid;
  transform: rotate(45deg) translateY(-2px);
  transition: transform var(--theme-duration);
}
.filter-group[data-expandable=collapsed] .filter-group__chevron {
  transform: rotate(-135deg) translateY(-2px);
}
.filter-group.is-show-all .filter-checks__item_hidden {
  display: inline-flex;
}
.filter-group_last {
  padding-bottom: 20px;
  background-image: linear-gradient(#e6e6e6, #e6e6e6), linear-gradient(#e6e6e6, #e6e6e6);
  background-position: left top, left bottom;
  background-size: 100% 1px, 100% 1px;
}
.filter-group__body-inner {
  padding-top: 20px;
}

.filter-checks {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.filter-checks .checkbox-text {
  align-self: flex-start;
}
.filter-checks__item_hidden {
  display: none;
}
.filter-checks .checkbox__visual {
  width: 16px;
  height: 16px;
  border-color: var(--theme-color-text-common);
  border-radius: 4px;
  background-color: transparent;
}
.filter-checks .checkbox__mark {
  fill: var(--theme-color-text-common);
}
.filter-checks .checkbox__input:checked + .checkbox__visual {
  border-color: var(--theme-color-text-common);
}
.filter-checks .checkbox__input:not(:disabled):focus-visible + .checkbox__visual,
.filter-checks .checkbox__input:not(:disabled):hover + .checkbox__visual {
  border-color: var(--theme-color-text-common);
}
.filter-checks .checkbox-text__label {
  min-height: 16px;
  color: var(--theme-color-text-common);
  font-size: 16px;
  line-height: 1;
}

.catalog-results {
  min-width: 0;
}
.catalog-results__grid {
  display: grid;
  /*grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr));*/
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 30px;
}

.pagination1 {
  margin-top: 60px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
}
.pagination1__item, .pagination1__btn {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--theme-color-text-common);
  text-decoration: none;
  font-weight: 600;
  transition: background-color var(--theme-duration), color var(--theme-duration);
}
.pagination1__item.active, .pagination1__item:hover, .pagination1__item:focus-visible, .pagination1__btn.active, .pagination1__btn:hover, .pagination1__btn:focus-visible {
  background-color: var(--theme-color-text-common);
  color: #fff;
}
.pagination1__btn svg {
  fill: currentcolor;
}
.pagination1__btn_prev svg {
  transform: rotate(180deg);
}
.pagination1__dots {
  width: 60px;
  text-align: center;
}

.block-consult {
  padding: 120px 0;
  color: #fff;
  background: linear-gradient(40deg, #1d3b70 9.63%, #66b08a 66.11%, #b8d94d 107.73%);
}
.block-consult__inner {
  display: grid;
  grid-template-columns: 348px minmax(0, 1252px);
  gap: 80px;
  align-items: start;
}
.block-consult__title {
  margin: 0;
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: 60px;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
}

.consult-form {
  width: 100%;
}
.consult-form__title {
  margin-bottom: 34px;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.3;
}
.consult-form__row {
  display: grid;
  /*grid-template-columns: minmax(0, 515px) minmax(0, 514px) max-content;*/
  grid-template-columns: minmax(0, 515px) minmax(0, 514px);
  align-items: center;
  gap: 20px;
  margin-bottom: 20px;
}
.consult-form__submit {
  min-width: 175px;
  padding: 0 30px;
  gap: 12px;
  color: var(--theme-color-text-common);
  font-size: 16px;
  line-height: 1.1;
}
.consult-form__submit svg {
  display: block;
  flex-shrink: 0;
  fill: currentcolor;
}
.consult-form .checkbox-text {
  color: #fff;
}

.block-why {
  position: relative;
  margin-top: 120px;
  padding: 100px 0 60px;
  overflow: hidden;
  color: #fff;
  background-color: var(--theme-color-text-common);
}
.block-why__bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
}
.block-why__bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  opacity: 0.6;
  mix-blend-mode: overlay;
}
.block-why .container {
  position: relative;
  z-index: 1;
}
.block-why .title2 {
  text-align: center;
}

.why-scheme {
  position: relative;
  min-height: 670px;
}
.why-scheme__decor1 {
  position: absolute;
  top: 50%;
  left: 22.083%;
  transform: translateY(-50%);
  pointer-events: none;
}
.why-scheme__decor2 {
  position: absolute;
  top: 50%;
  right: 22.083%;
  transform: translateY(-50%) scale(-1, 1);
  pointer-events: none;
}
.why-scheme__machine {
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 2;
  width: 40.476%;
  height: auto;
  transform: translate(-50%, -30%);
  -o-object-fit: contain;
     object-fit: contain;
}

.why-point {
  position: absolute;
  z-index: 3;
  width: 270px;
  max-width: none;
  color: #fff;
}
.why-point b {
  display: block;
  margin: -0.08em 0 3px;
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: 32px;
  font-weight: 700;
  line-height: 1;
  color: var(--theme-color-accent);
}
.why-point span {
  display: block;
  margin-bottom: -0.2em;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.1;
  text-transform: uppercase;
}
.why-point_2 span {
  padding-right: 30px;
}
.why-point_5 span {
  padding-left: 30px;
}
.why-point_1, .why-point_2, .why-point_3 {
  text-align: right;
}
.why-point_1 {
  right: 71.667%;
  top: 35px;
  width: 240px;
}
.why-point_2 {
  right: 76%;
  top: 289px;
  width: 250px;
}
.why-point_3 {
  right: 73.036%;
  top: 555px;
  width: 230px;
}
.why-point_4 {
  left: 69.226%;
  top: 35px;
  width: 320px;
}
.why-point_5 {
  left: 75.655%;
  top: 289px;
  width: 360px;
}
.why-point_6 {
  left: 73.036%;
  top: 555px;
  width: 300px;
}
.why-point_1 b {
  max-width: none;
  margin-left: auto;
  white-space: nowrap;
}
.why-point_2 b,
.why-point_3 b,
.why-point_4 b,
.why-point_5 b,
.why-point_6 b {
  white-space: nowrap;
}

.block-steps {
  position: relative;
  padding: 120px 0;
  overflow: hidden;
  background: linear-gradient(52.93deg, #1d3b70 12.88%, #66b08a 52.06%, #b8d94d 94.36%);
  color: #fff;
}
.block-steps__head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 390px 390px;
  gap: 20px;
  align-items: start;
  margin-bottom: 80px;
}
.block-steps__head h2 {
  margin: -0.08em 0 0;
  max-width: 594px;
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: 60px;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
}
.block-steps__docs {
  display: contents;
}

.doc-link {
  min-height: 102px;
  border: 1px #fff solid;
  border-radius: 30px;
  padding: 25px 29px 25px 19px;
  display: grid;
  grid-template-columns: 50px minmax(0, 1fr);
  gap: 20px;
  align-items: center;
  color: #fff;
  text-decoration: none;
}
.doc-link__icon {
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
}
.doc-link__icon img {
  width: 100%;
  height: 100%;
  display: block;
}
.doc-link__text {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.3;
}

.steps-list {
  position: relative;
  display: flex;
  align-items: stretch;
  justify-content: center;
  gap: 30px;
}
.steps-list::before {
  content: "";
  position: absolute;
  left: calc(-1 * (100vw - 100%) / 2);
  right: calc(-1 * (100vw - 100%) / 2);
  top: 50%;
  height: 2px;
  background-image: repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.3) 0 10px, transparent 10px 20px);
  transform: translateY(-50%);
}
.steps-list__item {
  position: relative;
  width: 398px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 104px;
  text-align: center;
}
.steps-list__item:nth-child(1) .steps-list__text, .steps-list__item:nth-child(3) .steps-list__text {
  margin-top: 0;
}
.steps-list__item:nth-child(2), .steps-list__item:nth-child(4) {
  padding-top: 50px;
}
.steps-list__item:nth-child(2) .steps-list__icon, .steps-list__item:nth-child(4) .steps-list__icon {
  order: 2;
}
.steps-list__item:nth-child(2) .steps-list__icon::before, .steps-list__item:nth-child(4) .steps-list__icon::before {
  top: auto;
  bottom: 100px;
}
.steps-list__item:nth-child(2) .steps-list__text, .steps-list__item:nth-child(4) .steps-list__text {
  order: 1;
  margin-top: 0;
}
.steps-list__icon {
  position: relative;
  width: 100px;
  height: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
}
.steps-list__icon::before {
  content: "";
  position: absolute;
  left: 49px;
  top: 100px;
  width: 2px;
  height: 46px;
  background-color: #fff;
}
.steps-list__icon img {
  position: relative;
  z-index: 1;
  display: block;
  width: 100px;
  height: 100px;
}
.steps-list__dot {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 44px;
  height: 44px;
  transform: translate(-50%, -50%);
}
.steps-list__dot img {
  width: 100%;
  height: 100%;
  display: block;
}
.steps-list__text {
  margin-top: 43px;
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.1;
}

.faq-list {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.block-faq {
  position: relative;
  padding: 120px 0;
}
.block-faq::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 0;
  width: 100vw;
  height: 2px;
  background-image: repeating-linear-gradient(90deg, var(--theme-color-accent) 0 10px, transparent 10px 20px);
  transform: translateX(-50%);
}
.block-faq .title2 {
  margin-bottom: 50px;
}

.block-portfolio {
  padding: 120px 0;
  background-color: var(--theme-color-text-common);
  overflow: hidden;
}
.block-portfolio .title2 {
  position: relative;
  z-index: 2;
  margin: 0 auto 60px;
  color: #fff;
}

.portfolio-slider {
  position: relative;
  width: 100%;
}

/* .about-reviews {
  margin-bottom: 120px;
}
@media (max-width: 991px) {
  .about-reviews {
    margin-bottom: 88px;
  }
}
@media (max-width: 767px) {
  .about-reviews {
    margin-bottom: 70px;
  }
}
@media (max-width: 575px) {
  .about-reviews {
    margin-bottom: 56px;
  }
} */

.block-callback {
  padding-bottom: 120px;
}
.block-callback__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 30px;
}

.callback-info {
  border: 1px var(--theme-color-text-common) solid;
  border-radius: 30px;
  padding: 59px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  color: var(--theme-color-text-common);
}
.callback-info__title {
  max-width: 405px;
  margin: -0.12em 0 22px;
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: 60px;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
  letter-spacing: 0;
}
.callback-info__text {
  margin: 0;
  font-size: 18px;
  line-height: 1.3;
}

.callback-phones {
  display: flex;
  flex-direction: column;
  gap: 20px;
  margin-top: 49px;
  margin-bottom: 50px;
}
.callback-phones a {
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: 30px;
  font-weight: 700;
  line-height: 1.1;
  color: inherit;
  text-decoration: none;
}

.callback-socials {
  display: flex;
  gap: 10px;
  margin-top: 0;
}
.callback-socials a {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background-color: var(--theme-color-text-common);
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  transition: background-color var(--theme-duration), color var(--theme-duration);
}
.callback-socials a:hover, .callback-socials a:focus-visible {
  background-color: var(--theme-color-accent);
  color: var(--theme-color-text-common);
}
.callback-socials a svg {
  display: block;
  fill: currentcolor;
}

.callback-form {
  min-height: 621px;
  border-radius: 30px;
  background-color: rgba(232, 232, 232, 0.6);
  padding: 60px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 40px;
}
.callback-form__fields {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.callback-form__bottom {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

@media (max-width: 1739px) {
  .block-hero__inner {
    -moz-column-gap: 66px;
         column-gap: 66px;
  }
}
@media (max-width: 1400px) {
  .block-steps__head {
    grid-template-columns: minmax(0, 1fr) minmax(0, 390px);
    align-items: center;
  }
  .block-steps__head h2 {
    max-width: 700px;
  }
  .block-steps__docs {
    display: grid;
    grid-template-columns: minmax(0, 390px);
    gap: 20px;
  }
}
@media (max-width: 1400px) {
  .product-detail__layout {
    grid-template-columns: minmax(0, 0.85fr) minmax(0, 1fr);
  }
  .product-detail__gallery-wrap {
    grid-template-columns: 1fr;
  }
  .product-detail__gallery {
    grid-column: 1;
    grid-row: 1;
  }
}
@media (max-width: 1280px) {
  .product-detail__layout {
    grid-template-columns: minmax(0, 0.85fr) minmax(0, 1fr);
  }
  .product-detail__title {
    font-size: 42px;
  }
  .block-hero__inner {
    grid-template-columns: 6fr 7fr;
    -moz-column-gap: 33px;
         column-gap: 33px;
  }
  .block-hero__machine {
    right: -45px;
  }
  .hero-counter {
    width: 170px;
  }
  .hero-counter__value {
    gap: 10px;
    font-size: 18px;
  }
  .hero-counter__value > span {
    font-size: 64px;
  }
  .hero-address {
    font-size: 16px;
  }
  .block-hero__text {
    font-size: 18px;
  }
  .catalog-hero__text {
    font-size: 18px;
  }
  .why-scheme__decor1 {
    left: 15.5%;
    transform: translateY(-50%) scale(0.75);
  }
  .why-scheme__decor2 {
    right: 15.5%;
    transform: translateY(-50%) scale(-0.75, 0.75);
  }
  .why-point b {
    font-size: 28px;
  }
  .why-point span {
    font-size: 14px;
  }
  .why-scheme {
    min-height: 500px;
  }
  .why-point_1,
  .why-point_4 {
    top: 25px;
  }
  .why-point_2,
  .why-point_5 {
    top: 200px;
  }
  .why-point_3,
  .why-point_6 {
    top: 390px;
  }
  .why-point_1 {
    width: 210px;
  }
  .why-point_2 {
    width: 220px;
  }
  .why-point_3 {
    width: 205px;
  }
  .why-point_4 {
    width: 280px;
  }
  .why-point_5 {
    width: 310px;
  }
  .why-point_6 {
    width: 270px;
  }
  .steps-list__icon {
    width: 80px;
    height: 80px;
  }
  .steps-list__icon::before {
    left: 39px;
    top: 80px;
    height: 66px;
  }
  .steps-list__icon img {
    width: 80px;
    height: 80px;
  }
  .steps-list__item:nth-child(2) .steps-list__icon::before,
  .steps-list__item:nth-child(4) .steps-list__icon::before {
    top: auto;
    bottom: 80px;
  }
  .steps-list__text {
    font-size: 24px;
  }
}
@media (max-width: 1180px) {
  .block-hero__inner {
    grid-template-columns: 1fr 1fr;
  }
  .hero-counter {
    width: 150px;
  }
  .hero-counter__value {
    gap: 8px;
    font-size: 16px;
  }
  .hero-counter__value > span {
    font-size: 54px;
  }
}
@media (max-width: 1500px) {
  .catalog-listing__grid {
    grid-template-columns: 330px minmax(0, 1fr);
    gap: 30px;
  }
}
@media (max-width: 1100px) {
  .partners-page__grid {
    grid-template-columns: 1fr;
  }
  .catalog-listing__grid {
    grid-template-columns: 1fr;
  }
  .catalog-toolbar {
    display: flex;
    align-items: center;
  }
  .catalog-sidebar {
    position: fixed;
    inset: 0;
    z-index: 200;
    display: flex;
    justify-content: flex-start;
    align-items: stretch;
    background-color: rgba(0, 0, 0, 0.45);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity var(--theme-duration), visibility var(--theme-duration);
  }
  .catalog-sidebar.is-open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }
  .catalog-back {
    display: none;
  }
  .catalog-filter {
    width: min(100%, 378px);
    height: 100%;
    border-radius: 0;
    background-color: #e8e8e8;
    display: flex;
    flex-direction: column;
    overflow: hidden;
  }
  .catalog-filter__head {
    flex-shrink: 0;
    margin-bottom: 16px;
  }
  .catalog-filter__title {
    margin: 0;
  }
  .catalog-filter__close {
    display: inline-flex;
    flex-shrink: 0;
  }
  .catalog-filter__body {
    min-height: 0;
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
  }
  .catalog-filter__scroll {
    min-height: 0;
    overflow-x: hidden;
    overflow-y: auto;
    flex: 1 1 auto;
  }
  .catalog-filter .filter-group__chevron {
    margin-right: 4px;
  }
  .catalog-filter__buttons {
    flex-shrink: 0;
    margin-top: auto;
  }
  .catalog-hero__inner {
    gap: 40px;
  }
  .block-hero__inner {
    grid-template-columns: 1fr;
    align-items: start;
  }
  .block-hero__content {
    display: contents;
  }
  .hero-address {
    order: 1;
  }
  .block-hero__title {
    order: 2;
  }
  .block-hero__text {
    order: 3;
  }
  .block-hero__visual {
    order: 4;
    width: 100%;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 44px;
  }
  .hero-counter {
    top: 88%;
  }
  .block-hero__buttons {
    order: 5;
    justify-content: center;
    margin-top: 44px;
  }
  .why-scheme {
    min-height: 0;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 34px 24px;
    align-items: start;
    margin-top: 50px;
  }
  .why-scheme__decor1,
  .why-scheme__decor2 {
    display: none;
  }
  .why-scheme__machine {
    position: relative;
    grid-column: 1/-1;
    grid-row: 3;
    justify-self: center;
    left: auto;
    top: auto;
    width: min(620px, 100%);
    transform: none;
  }
  .why-point {
    position: relative;
    left: auto;
    right: auto;
    top: auto;
    width: auto;
    max-width: none;
    text-align: center;
  }
  .why-point b {
    white-space: normal;
  }
  .why-point_2 span,
  .why-point_5 span {
    padding: 0;
  }
  .why-point_1 b {
    max-width: none;
    margin-left: 0;
  }
  .why-point_1,
  .why-point_2,
  .why-point_3 {
    grid-row: 1;
    text-align: center;
  }
  .why-point_4,
  .why-point_5,
  .why-point_6 {
    grid-row: 2;
  }
  .why-point_1 {
    grid-column: 1;
  }
  .why-point_2 {
    grid-column: 2;
  }
  .why-point_3 {
    grid-column: 3;
  }
  .why-point_4 {
    grid-column: 1;
  }
  .why-point_5 {
    grid-column: 2;
  }
  .why-point_6 {
    grid-column: 3;
  }
  .steps-list__icon {
    width: 60px;
    height: 60px;
  }
  .steps-list__icon::before {
    left: 29px;
    top: 60px;
    height: 66px;
  }
  .steps-list__icon img {
    width: 60px;
    height: 60px;
  }
  .steps-list__item:nth-child(2) .steps-list__icon::before,
  .steps-list__item:nth-child(4) .steps-list__icon::before {
    top: auto;
    bottom: 60px;
  }
  .steps-list__text {
    font-size: 22px;
  }
}
@media (max-width: 1100px) {
  .why-point span {
    font-size: 12px;
  }
}
@media (max-width: 1000px) {
  .product-detail__layout {
    grid-template-columns: 1fr;
    gap: 0;
  }
  .product-detail__main {
    display: contents;
  }
  .product-detail__title {
    order: 1;
  }
  .product-detail__lead {
    order: 2;
  }
  .product-detail__more {
    order: 3;
    justify-self: start;
  }
  .product-detail__gallery-wrap {
    order: 4;
    width: 100%;
    max-width: 693px;
    margin-top: 30px;
    margin-right: auto;
    margin-left: auto;
  }
  .product-detail__cols {
    order: 5;
    margin-top: 30px;
  }
}
@media (max-width: 900px) {
  .product-detail__title {
    font-size: 36px;
  }
  .product-detail__cols {
    margin-top: 30px;
  }
}
@media (max-width: 700px) {
  .why-scheme {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .why-scheme__machine {
    grid-row: 4;
  }
  .why-point_1,
  .why-point_2 {
    grid-row: 1;
  }
  .why-point_3,
  .why-point_4 {
    grid-row: 2;
  }
  .why-point_5,
  .why-point_6 {
    grid-row: 3;
  }
  .why-point_1,
  .why-point_3,
  .why-point_5 {
    grid-column: 1;
  }
  .why-point_2,
  .why-point_4,
  .why-point_6 {
    grid-column: 2;
  }
}
@media (max-width: 400px) {
  .why-scheme {
    -moz-column-gap: 12px;
         column-gap: 12px;
  }
}
@media (max-width: 500px) {
  .circle-visual {
    display: none;
  }
  .block-hero__visual {
    max-width: 100%;
    margin-top: 10px;
  }
  .block-hero__text {
    margin-top: 20px;
    font-size: 16px;
  }
  .hero-address {
    font-size: 14px;
    margin-bottom: 25px;
  }
  .block-hero__machine {
    position: relative;
    top: auto;
    right: auto;
    left: 50%;
    width: 100%;
    border-radius: 0;
    transform: translateX(-50%);
  }
  .block-hero__machine-link {
    padding-bottom: 54px;
  }
  .block-hero__machine-label {
    display: block;
  }
  .hero-cats {
    display: none;
  }
  .hero-counter {
    position: relative;
    top: auto;
    right: auto;
    margin: 18px auto 0;
  }
}
@media (max-width: 1199px) {
  .block-consult__inner,
  .block-callback__grid {
    grid-template-columns: 1fr;
  }
  .block-consult__inner {
    gap: 40px;
  }
  .consult-form__row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .consult-form__submit {
    grid-column: 1/-1;
    justify-self: flex-start;
  }
  .block-steps__head {
    grid-template-columns: 1fr;
  }
  .block-steps__head h2 {
    font-size: 50px;
  }
  .block-steps__docs {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .doc-link {
    padding-right: 19px;
    gap: 14px;
  }
  .block-portfolio .title2 {
    margin-left: auto;
    margin-right: auto;
  }
  .callback-info {
    padding: 44px;
  }
  .callback-form {
    padding: 44px;
  }
  .callback-info__title {
    font-size: 50px;
  }
}
@media (max-width: 600px) {
  .product-detail {
    margin-top: 30px;
  }
  .product-detail__gallery-wrap {
    grid-template-columns: 1fr;
  }
  .product-detail__gallery {
    height: 320px;
    grid-row: 1;
  }
  .swiper-product-thumbs {
    grid-row: 2;
    height: auto;
    min-height: 0;
  }
  .product-tabs__nav {
    margin-bottom: 32px;
  }
  .product-tabs__btn {
    min-height: 50px;
    font-size: 14px;
  }
  .block-steps__docs {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 767px) {
  .block-hero__inner {
    padding-top: 120px;
    padding-bottom: 40px;
  }
  .catalog-hero__breadcrumbs {
    padding-top: 110px;
  }
  .catalog-hero__inner {
    grid-template-columns: 1fr;
    gap: 24px;
  }
  .catalog-hero__content {
    display: contents;
  }
  .catalog-hero__title {
    order: 1;
  }
  .catalog-hero__photo {
    order: 2;
    justify-self: start;
    max-width: 500px;
  }
  .catalog-hero__text {
    order: 3;
  }
  .catalog-hero__btn {
    order: 4;
  }
  .catalog-filter-open {
    width: 100%;
  }
  .block-catalog,
  .block-models,
  .block-offers,
  .block-reviews,
  .block-callback,
  .block-portfolio,
  body.mp .block-offers {
    padding-top: 70px;
    padding-bottom: 70px;
  }
  .partners-page__grid,
  .vacancies-page__list,
  .product-tabs {
    margin-bottom: 70px;
  }
  .block-why {
    margin-top: 60px;
    padding: 100px 0;
  }
  .block-faq {
    padding: 70px 0;
  }
  .block-consult {
    padding: 70px 0;
  }
  .block-consult__inner {
    gap: 32px;
  }
  .block-consult__title {
    font-size: clamp(38px, 10vw, 50px);
  }
  .callback-info {
    border-radius: 28px;
    padding: 34px 22px;
  }
  .callback-form {
    border-radius: 28px;
    padding: 34px 22px;
  }
  .callback-info__title {
    font-size: clamp(38px, 10vw, 46px);
  }
  .consult-form__row {
    grid-template-columns: 1fr;
    gap: 14px;
    margin-bottom: 24px;
  }
  .consult-form__title {
    margin-bottom: 24px;
    font-size: 18px;
  }
  .consult-form__submit {
    justify-self: stretch;
  }
  .block-catalog .section-head {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
  }
  .block-offers .section-head {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
  }
  .block-reviews .section-head {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
  }
  .block-offers .swiper-nav {
    width: 50px;
    height: 50px;
  }
  .block-offers .swiper-nav_prev {
    margin-right: 8px;
  }
  .block-steps {
    padding: 70px 0;
  }
  .steps-list {
    flex-direction: column;
    align-items: stretch;
    gap: 20px;
  }
  .steps-list::before {
    display: none;
  }
  .steps-list__item {
    width: 100%;
    display: grid;
    grid-template-columns: 60px minmax(0, 1fr);
    gap: 18px;
    align-items: center;
    padding-top: 0 !important;
    text-align: left;
  }
  .steps-list__icon {
    order: 0 !important;
    width: 60px;
    height: 60px;
    margin: 0;
  }
  .steps-list__icon::before {
    display: none;
  }
  .steps-list__icon img {
    width: 60px;
    height: 60px;
  }
  .steps-list__dot {
    display: none;
  }
  .steps-list__text,
  .steps-list__item:nth-child(1) .steps-list__text,
  .steps-list__item:nth-child(2) .steps-list__text,
  .steps-list__item:nth-child(3) .steps-list__text,
  .steps-list__item:nth-child(4) .steps-list__text {
    order: 0;
    margin-top: 0;
    font-size: 24px;
  }
  .steps-list__text br {
    display: none;
  }
  .block-catalog__btn {
    min-height: 48px;
    padding: 0 18px;
    gap: 8px;
    font-size: 14px;
    white-space: nowrap;
  }
  .catalog-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .catalog-page__grid {
      margin-bottom: 40px;
  }
  .catalog-page .catalog-page__grid {
      margin-bottom: 70px;
  }
  .catalog-grid .card-category_big {
    grid-column: auto;
  }
  .catalog-grid .card-category_big .card-category__photo {
    right: -35px;
    top: 78px;
    width: 73%;
    max-width: 290px;
    max-height: 200px;
  }
  .catalog-grid .card-category_big .card-category__decor {
    top: -140px;
    width: 84.42%;
    max-width: 336px;
  }
  .catalog-grid .card-category_big .card-category__name {
    line-height: 1.1;
  }
  .block-callback__grid {
    border-radius: 28px;
    padding: 0 22px;
    gap: 32px;
  }
  .portfolio-slider {
    grid-template-columns: 1fr;
  }
  .portfolio-slider > .swiper-nav {
    display: none;
  }
}
@media (max-width: 575px) {
  .block-callback__grid {
    padding: 0;
  }
  .catalog-hero__breadcrumbs {
    padding-top: 96px;
  }
  .catalog-hero__text {
    font-size: 16px;
  }
  .catalog-hero__btn {
    margin-top: 25px;
  }
  .pagination1 {
    gap: 6px;
  }
  .pagination1__item,
  .pagination1__btn {
    width: 40px;
    height: 40px;
  }
}
@media (max-width: 500px) {
  .block-hero__inner {
    padding-top: 100px;
  }
  .block-catalog {
    padding-bottom: 0;
  }
  .block-offers {
    padding-bottom: 0;
  }
  .block-why {
    margin-top: 0;
    padding: 70px 0;
  }
  .block-callback__grid {
    padding: 0;
  }
}
.circle-visual {
  width: 866px;
  height: unset;
}
.circle-visual__item {
  display: block;
  outline: none;
}
.circle-visual__hitarea {
  fill: transparent;
  cursor: pointer;
  pointer-events: all;
}
.circle-visual__circles, .circle-visual__label {
  pointer-events: none;
}
.circle-visual__label > * {
  fill: #fff;
  transition: fill var(--duration, var(--theme-duration));
}
.circle-visual__circle-big {
  fill: rgba(255, 255, 255, 0.1);
  transform-box: fill-box;
  transform-origin: center;
  transition: transform var(--duration, var(--theme-duration));
}
.circle-visual__circle-middle {
  fill: rgba(255, 255, 255, 0);
  transition: fill var(--duration, var(--theme-duration));
}
.circle-visual__circle-small {
  fill: #fff;
  transition: fill var(--duration, var(--theme-duration));
}
.circle-visual__item.active .circle-visual__label > * {
  fill: var(--theme-color-accent);
}
.circle-visual__item.active .circle-visual__circle-small {
  fill: var(--theme-color-accent);
}
.circle-visual__item.active .circle-visual__circle-middle {
  fill: rgba(255, 255, 255, 0.3);
}
.circle-visual__item.active .circle-visual__circle-big {
  transform: scale(1.1);
}

.card-category {
  position: relative;
  min-height: 300px;
  border-radius: 30px;
  background-color: #e8e8e8;
  padding: 40px;
  display: block;
  overflow: hidden;
  color: #fff;
  text-decoration: none;
  --card-category-duration: 600ms;
}
.card-category:hover .card-category__arrow, .card-category:focus-visible .card-category__arrow {
  left: 40px;
}
.card-category:hover .card-category__decor, .card-category:focus-visible .card-category__decor {
  transform: translateY(-10%) rotate(35.14deg);
}
.card-category:hover .card-category__photo, .card-category:focus-visible .card-category__photo {
  transform: scale(0.9);
}
.card-category__decor {
  position: absolute;
  left: -45px;
  top: -140px;
  z-index: 0;
  width: 84.42%;
  max-width: 336px;
  aspect-ratio: 336/360;
  height: auto;
  transform: rotate(35.14deg);
  transition: transform var(--card-category-duration);
  pointer-events: none;
}
.card-category__name {
  position: relative;
  z-index: 1;
  display: block;
  max-width: 250px;
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: 30px;
  font-weight: 700;
  line-height: 1.1;
  text-transform: uppercase;
}
.card-category__photo {
  position: absolute;
  right: -35px;
  top: 78px;
  z-index: 1;
  width: 73%;
  max-width: 290px;
  height: auto;
  max-height: 200px;
  -o-object-fit: contain;
     object-fit: contain;
  transform-origin: right bottom;
  transition: transform var(--card-category-duration);
  pointer-events: none;
}
.card-category__arrow {
  position: absolute;
  left: -71px;
  top: 200px;
  z-index: 2;
  width: 60px;
  height: 60px;
  border-radius: 40px;
  background-color: var(--theme-color-text-common);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: left var(--card-category-duration);
}
.card-category__arrow svg {
  display: block;
  fill: currentcolor;
}
.card-category_big {
  grid-column: span 2;
}
.card-category_big .card-category__name {
  line-height: 1;
}
.card-category_big .card-category__photo {
  right: -14px;
  top: 30px;
  width: 54%;
  max-width: 445px;
  max-height: 240px;
}
.card-category_big .card-category__decor {
  top: -185px;
  width: 54.3%;
  max-width: 448px;
}

.card-model {
  container-type: inline-size;
  height: 100%;
  min-height: 585px;
  border: 1px #e8e8e8 solid;
  border-radius: 30px;
  background-color: #fff;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: border-color var(--theme-duration);
}
.card-model:hover, .card-model:focus-within {
  border-color: var(--theme-color-accent);
}
.card-model__photo {
  display: block;
  height: 240px;
  border-radius: 30px;
  overflow: hidden;
}
.card-model__photo img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.card-model__content {
  min-height: 343px;
  padding: 20px 29px 29px;
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
}
.card-model__content_vn {
  display: flex;
  flex-direction: column;
  cursor: pointer;
  height: 100%;
}
.card-model__name {
  margin: -0.2em 0 10px;
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.1;
  text-decoration: none;
  text-transform: none;
}
.card-model__props {
  margin: 0 0 30px;
  display: flex;
  flex-direction: column;
  gap: 5px;
  color: var(--theme-color-grey);
  font-size: 16px;
  line-height: 1.3;
}
.card-model__props div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: baseline;
}
.card-model__props dt,
.card-model__props dd {
  margin: 0;
}
.card-model__props dd {
  min-width: 32px;
  color: var(--theme-color-text-common);
  font-weight: 500;
  text-align: right;
}
.card-model__props sup {
  font-size: 0.645em;
  line-height: 0;
}
.card-model__price {
  margin-top: auto;
  margin-bottom: 26px;
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: 30px;
  font-weight: 700;
  line-height: 1.1;
}
.card-model__buttons {
  display: grid;
  grid-template-columns: auto 142px;
  gap: 12px;
  align-items: center;
}
.card-model__buttons .btn {
  min-height: 56px;
  border-radius: 60px;
  padding: 0 26px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.1;
  text-transform: none;
  white-space: nowrap;
}
@container (max-width: 393px) {
  .card-model .card-model__buttons {
    grid-template-columns: 1fr;
  }
}
@container (max-width: 330px) {
  .card-model .card-model__content {
    padding-right: 19px;
    padding-left: 19px;
  }
}

.catalog-results .card-model {
  min-height: 585px;
}
.catalog-results .card-model__photo {
  height: 240px;
}
.catalog-results .card-model__content {
  min-height: 343px;
}

.card-offer {
  position: relative;
  container-type: inline-size;
  min-height: 413px;
  border: 1px #e8e8e8 solid;
  border-radius: 30px;
  background-color: #fff;
  overflow: hidden;
  color: var(--theme-color-text-common);
}
.card-offer__photo {
  position: relative;
  display: block;
  height: 320px;
  border-radius: 30px;
  overflow: hidden;
}
.card-offer__photo > img:not(.card-offer__decor) {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.card-offer__decor {
  position: absolute;
  right: -34.1%;
  top: -18.9%;
  width: 73.8%;
  aspect-ratio: 398.521/404.874;
  height: auto;
  transform: rotate(35.14deg);
  pointer-events: none;
}
.card-offer__badge {
  position: absolute;
  right: 29px;
  top: 29px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 65px;
  border-radius: 24px;
  padding: 12px 26px;
  background-color: #fff;
  color: var(--theme-color-text-common);
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: 30px;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
}
.card-offer__name {
  display: block;
  margin: 25px 29px 0;
  max-width: 480px;
  color: inherit;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.1;
  text-decoration: none;
}
@container (max-width: 399px) {
  .card-offer .card-offer__badge {
    min-height: 52px;
    border-radius: 19px;
    padding: 9px 18px;
    font-size: 24px;
  }
}

.card-review {
  min-height: 271px;
  border: 1px var(--theme-color-text-common) solid;
  border-radius: 30px;
  background-color: #fff;
  padding: 39px;
  color: var(--theme-color-text-common);
}
.card-review__name {
  margin: -0.12em 0 13px;
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.1;
}
.card-review__stars {
  display: flex;
  align-items: center;
  width: 100px;
  height: 20px;
  margin-bottom: 18px;
  color: var(--theme-color-accent);
}
.card-review__stars svg {
  display: block;
  width: 20px;
  height: 20px;
  flex: 0 0 auto;
  fill: currentColor;
}
.card-review__text {
  max-width: 745px;
  margin: 0;
  color: inherit;
  font-size: 18px;
  line-height: 1.5;
}

.card-faq {
  border-radius: 30px;
  background-color: rgba(232, 232, 232, 0.6);
  overflow: hidden;
}
.card-faq__q {
  width: 100%;
  min-height: 90px;
  padding: 20px 18px 20px 30px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  text-align: left;
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.1;
  color: var(--theme-color-text-common);
}
.card-faq__q-text {
  display: block;
  margin-top: -0.18em;
  margin-bottom: -0.18em;
}
.card-faq__icon {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background-color: var(--theme-color-text-common);
  color: #fff;
  flex-shrink: 0;
  position: relative;
  transition: background-color var(--theme-duration), color var(--theme-duration);
}
.card-faq__icon::before, .card-faq__icon::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 16px;
  height: 2px;
  background-color: currentcolor;
  transform: translate(-50%, -50%);
}
.card-faq__icon::after {
  transform: translate(-50%, -50%) rotate(90deg);
}
.card-faq[data-expandable=expanded] .card-faq__icon {
  background-color: var(--theme-color-accent);
  color: var(--theme-color-text-common);
}
.card-faq[data-expandable=expanded] .card-faq__icon::after {
  display: none;
}
.card-faq__a {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows var(--theme-duration);
  overflow: hidden;
}
.card-faq[data-expandable=expanded] .card-faq__a {
  grid-template-rows: 1fr;
}
.card-faq__a-inner {
  min-height: 0;
  padding: 0 30px;
  overflow: hidden;
  transition: padding-bottom var(--theme-duration);
}
.card-faq[data-expandable=expanded] .card-faq__a-inner {
  padding-bottom: 20px;
}
.card-faq__a-text {
  min-height: 100px;
  border-radius: 30px;
  background-color: #fff;
  padding: 30px;
  color: var(--theme-color-text-common);
  font-size: 18px;
  line-height: 1.5;
}

.card-vacancy {
  border-radius: 30px;
  background-color: rgba(232, 232, 232, 0.6);
  overflow: hidden;
}
.card-vacancy__head {
  width: 100%;
  min-height: 110px;
  padding: 30px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 50px;
  gap: 24px;
  align-items: start;
  color: var(--theme-color-text-common);
  text-align: left;
}
.card-vacancy__head-text {
  min-width: 0;
  display: block;
}
.card-vacancy__date {
  display: block;
  margin: -0.275em 0 7px;
  font-size: 16px;
  line-height: 1.3;
}
.card-vacancy__title {
  display: block;
  margin: 0;
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: 30px;
  font-weight: 700;
  line-height: 1.1;
  text-transform: uppercase;
}
.card-vacancy__icon {
  position: relative;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background-color: var(--theme-color-text-common);
  color: #fff;
  transition: background-color var(--theme-duration), color var(--theme-duration), transform var(--theme-duration);
}
.card-vacancy__icon::before, .card-vacancy__icon::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 16px;
  height: 2px;
  background-color: currentcolor;
  transform: translate(-50%, -50%);
}
.card-vacancy__icon::after {
  transform: translate(-50%, -50%) rotate(90deg);
}
.card-vacancy[data-expandable=expanded] .card-vacancy__icon {
  background-color: var(--theme-color-accent);
  color: var(--theme-color-text-common);
  transform: rotate(45deg);
}
.card-vacancy__body {
  display: grid;
  grid-template-rows: 0fr;
  overflow: hidden;
  transition: grid-template-rows var(--theme-duration);
}
.card-vacancy[data-expandable=expanded] .card-vacancy__body {
  grid-template-rows: 1fr;
}
.card-vacancy__body-inner {
  min-height: 0;
  padding: 0 30px;
  overflow: hidden;
  transition: padding-bottom var(--theme-duration);
}
.card-vacancy[data-expandable=expanded] .card-vacancy__body-inner {
  padding-bottom: 30px;
}
.card-vacancy__content {
  min-height: 648px;
  border-radius: 30px;
  padding: 40px;
  background-color: #fff;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 2px minmax(0, 1fr);
  gap: 40px;
  color: var(--theme-color-text-common);
}
.card-vacancy__main {
  max-width: 570px;
  display: flex;
  flex-direction: column;
  gap: 34px;
}
.card-vacancy__divider {
  width: 2px;
  min-height: 568px;
  background-image: repeating-linear-gradient(to bottom, var(--theme-color-accent) 0 10px, transparent 10px 20px);
}
.card-vacancy__aside {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.card-vacancy__btn {
  width: 100%;
  min-height: 60px;
  margin-top: auto;
  border-radius: 60px;
  font-size: 16px;
  line-height: 1.25;
  text-align: center;
}

.vacancy-info__title {
  margin: -0.24em 0 10px;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.2;
}
.vacancy-info__list {
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
  list-style: none;
  font-size: 16px;
  line-height: 1.5;
}
.vacancy-info li {
  position: relative;
  padding-left: 20px;
}
.vacancy-info li::before {
  content: "";
  position: absolute;
  top: 8px;
  left: 0;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: var(--theme-color-accent);
}

.card-partner {
  border: 1px solid #e8e8e8;
  border-radius: 30px;
  padding: 29px;
  display: grid;
  grid-template-columns: minmax(120px, min(32.68%, 250px)) minmax(0, 1fr);
  gap: 30px;
  background-color: #fff;
  overflow: hidden;
}
.card-partner__photo {
  aspect-ratio: 5/4;
  border-radius: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.card-partner__photo img {
  display: block;
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.card-partner__content {
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  color: var(--theme-color-text-common);
}
.card-partner__title {
  margin: 0 0 16px;
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: 30px;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
}
.card-partner__text {
  max-width: 460px;
  margin: 0;
  font-size: 14px;
  line-height: 1.5;
}
.card-partner__link {
  margin-top: auto;
  font-weight: 600;
  font-size: 16px;
  line-height: 1.5;
  color: inherit;
  text-decoration-line: underline;
  text-decoration-style: dotted;
  text-underline-offset: 0.18em;
  transition: color var(--theme-duration);
}
.card-partner__link:hover, .card-partner__link:focus-visible {
  color: var(--theme-color-accent-hover);
}

.card-used {
  min-height: 242px;
  border: 1px solid #e8e8e8;
  border-radius: 30px;
  padding-right: 30px;
  display: grid;
  grid-template-columns: 395fr 340fr 375fr 140px fit-content(184px);
  gap: var(--card-used-gap);
  align-items: center;
  background-color: #fff;
  overflow: hidden;
  --card-used-gap: 60px;
}
.card-used__photo {
  grid-column: 1;
  align-self: stretch;
  min-height: 240px;
  border-radius: 30px;
  overflow: hidden;
}
.card-used__photo img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.card-used__title {
  grid-column: 2;
  margin: -0.12em 0;
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: 30px;
  font-weight: 700;
  line-height: 1.1;
  text-transform: uppercase;
  color: var(--theme-color-text-common);
}
.card-used__params {
  position: relative;
  grid-column: 3;
  margin: 0;
  display: flex;
  flex-direction: column;
  color: var(--theme-color-text-common);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.3;
}
.card-used__params::before, .card-used__params::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 2px;
  height: 182px;
  background-image: repeating-linear-gradient(to bottom, rgba(196, 228, 90, 0.5) 0, rgba(196, 228, 90, 0.5) 10px, transparent 10px, transparent 20px);
  transform: translateY(-50%);
}
.card-used__params::before {
  left: calc(var(--card-used-gap) / -2);
}
.card-used__params::after {
  right: calc(var(--card-used-gap) / -2);
}
.card-used__param {
  min-height: 42px;
  border-bottom: 1px solid #e8e8e8;
  padding: 0 0 10px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: start;
}
.card-used__param + .card-used__param {
  padding-top: 10px;
}
.card-used__param:last-child {
  min-height: 0;
  border-bottom: 0;
  padding-bottom: 0;
}
.card-used__param dt,
.card-used__param dd {
  margin: -0.24em 0 0;
}
.card-used__param dt {
  color: var(--theme-color-grey);
}
.card-used__price {
  position: relative;
  grid-column: 4;
  margin-top: -0.12em;
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: 30px;
  font-weight: 700;
  line-height: 1.1;
  color: var(--theme-color-text-common);
  text-align: center;
  white-space: nowrap;
}
.card-used__btn {
  position: relative;
  grid-column: 5;
  width: 100%;
  max-width: 184px;
  min-height: 60px;
  border-radius: 60px;
  padding: 0 26px;
  font-size: 16px;
  line-height: 1.1;
  white-space: nowrap;
}
.card-used__btn::before {
  content: "";
  position: absolute;
  left: calc(var(--card-used-gap) / -2);
  top: 50%;
  width: 2px;
  height: 182px;
  background-image: repeating-linear-gradient(to bottom, rgba(196, 228, 90, 0.5) 0, rgba(196, 228, 90, 0.5) 10px, transparent 10px, transparent 20px);
  transform: translateY(-50%);
  pointer-events: none;
}
@media (max-width: 1400px) {
  .card-used {
    padding-right: 15px;
    --card-used-gap: 30px;
  }
}
@media (max-width: 1280px) {
  .card-used {
    grid-template-columns: 320fr 340fr 375fr fit-content(184px);
    grid-template-rows: 1fr auto auto 1fr;
  }
  .card-used__photo, .card-used__title, .card-used__params {
    grid-row: 1/-1;
  }
  .card-used__price, .card-used__btn {
    grid-column: 4;
  }
  .card-used__price {
    grid-row: 2;
    align-self: end;
    margin-bottom: 0;
  }
  .card-used__btn {
    grid-row: 3;
    align-self: start;
  }
  .card-used__btn::before {
    display: none;
  }
}
@media (max-width: 1000px) {
  .card-used {
    padding-bottom: 20px;
    grid-template-columns: 280px minmax(0, auto) minmax(184px, max-content);
    grid-template-rows: auto auto auto auto;
    gap: 16px 30px;
    align-items: start;
  }
  .card-used__photo {
    grid-column: 1;
    grid-row: 1/-1;
    align-self: start;
    min-height: 0;
    aspect-ratio: 395/240;
  }
  .card-used__title {
    grid-column: 2/-1;
    grid-row: 1;
    padding-top: 20px;
  }
  .card-used__params {
    grid-column: 2/-1;
    grid-row: 2;
    margin-top: 20px;
  }
  .card-used__params::before, .card-used__params::after {
    display: none;
  }
  .card-used__price {
    grid-column: 2;
    grid-row: 3;
    justify-self: end;
    align-self: center;
    margin-top: 20px;
  }
  .card-used__btn {
    grid-column: 3;
    grid-row: 3;
    justify-self: end;
    align-self: center;
    margin-top: 20px;
  }
  .card-used__btn::before {
    display: none;
  }
}
@media (max-width: 767px) {
  .used-equipment-page__list,
  .contacts-map {
      margin-bottom: 70px;
  }
}
@media (max-width: 640px) {
  .card-used {
    padding: 0 0 20px;
    grid-template-columns: minmax(0, 1fr) max-content;
    grid-template-rows: auto;
    -moz-column-gap: 0;
         column-gap: 0;
  }
  .card-used__photo, .card-used__title, .card-used__params {
    grid-column: 1/-1;
    grid-row: auto;
  }
  .card-used__title, .card-used__params, .card-used__price, .card-used__btn {
    margin-right: 20px;
    margin-left: 20px;
  }
  .card-used__title {
    padding-top: 0;
  }
  .card-used__price {
    grid-column: 1;
    grid-row: auto;
    align-self: center;
    margin-right: 0;
  }
  .card-used__btn {
    grid-column: 2;
    grid-row: auto;
    align-self: center;
    max-width: 184px;
    margin-top: 20px;
    margin-left: 16px;
  }
  .card-used__params::before, .card-used__params::after, .card-used__btn::before {
    display: none;
  }
  .card-used__price, .card-used__btn {
    justify-self: end;
  }
}
@media (max-width: 400px) {
  .card-used {
    grid-template-columns: 1fr;
  }
  .card-used__price, .card-used__btn {
    grid-column: 1;
  }
  .card-used__price {
    margin-right: 20px;
  }
  .card-used__btn {
    margin-left: 20px;
    margin-top: 0;
  }
}

.portfolio-photo {
  display: block;
  height: 480px;
  border-radius: 30px;
  overflow: hidden;
}
.portfolio-photo img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

@media (max-width: 900px) {
  .card-vacancy__head {
    min-height: 96px;
    padding: 24px;
    grid-template-columns: minmax(0, 1fr) 44px;
  }
  .card-vacancy__icon {
    width: 44px;
    height: 44px;
  }
  .card-vacancy__title {
    font-size: 24px;
  }
  .card-vacancy__body-inner {
    padding-right: 20px;
    padding-left: 20px;
  }
  .card-vacancy[data-expandable=expanded] .card-vacancy__body-inner {
    padding-bottom: 20px;
  }
  .card-vacancy__content {
    min-height: 0;
    padding: 24px;
    grid-template-columns: 1fr;
    gap: 30px;
  }
  .card-vacancy__main {
    max-width: none;
    gap: 28px;
  }
  .card-vacancy__divider {
    display: none;
  }
  .card-vacancy__btn {
    margin-top: 30px;
  }
}
@media (max-width: 767px) {
  .card-partner {
    min-height: 0;
    border-radius: 24px;
    padding: 23px;
    grid-template-columns: 1fr;
    gap: 24px;
  }
  .card-partner__photo {
    width: 100%;
    max-width: 250px;
  }
  .card-partner__content {
    padding-top: 0;
  }
  .card-partner__title {
    font-size: 26px;
  }
  .card-partner__link {
    margin-top: 28px;
  }
  .card-model__buttons {
    grid-template-columns: 1fr;
  }
  .card-faq__q {
    min-height: 74px;
    padding: 18px 20px;
    font-size: 18px;
  }
  .card-faq__a-inner {
    padding: 0 20px;
  }
  .card-faq[data-expandable=expanded] .card-faq__a-inner {
    padding-bottom: 22px;
  }
  .card-faq__a-text {
    font-size: 16px;
  }
  .portfolio-photo {
    height: 360px;
    border-radius: 28px;
  }
}
@media (max-width: 500px) {
  .card-partner {
    justify-items: center;
  }
  .card-partner__content {
    align-items: center;
    text-align: center;
  }
  .card-category {
    padding: 30px;
  }
  .card-model__content {
    padding-left: 19px;
    padding-right: 19px;
  }
  .card-vacancy {
    border-radius: 24px;
  }
  .card-vacancy__head {
    padding: 20px;
    grid-template-columns: minmax(0, 1fr) 40px;
  }
  .card-vacancy__icon {
    width: 40px;
    height: 40px;
  }
  .card-vacancy__date {
    font-size: 14px;
  }
  .card-vacancy__title {
    font-size: 20px;
  }
  .card-vacancy__body-inner {
    padding-right: 14px;
    padding-left: 14px;
  }
  .card-vacancy[data-expandable=expanded] .card-vacancy__body-inner {
    padding-bottom: 14px;
  }
  .card-vacancy__content {
    border-radius: 22px;
    padding: 20px;
  }
  .vacancy-info__list {
    font-size: 15px;
  }
}
.swiper-nav {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  background-color: var(--theme-color-light);
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  transition: background-color var(--theme-duration), opacity var(--theme-duration);
}
.swiper-nav::before {
  content: "";
  width: 12px;
  height: 12px;
  border-top: 2px currentcolor solid;
  border-right: 2px currentcolor solid;
  transform: rotate(45deg);
}
.swiper-nav_next{
  margin-right: 15px;
}

.swiper-nav_next::before {
  margin-left: -4px;
}
.swiper-nav_prev {
  margin-right: 12px;
}
.swiper-nav_prev::before {
  margin-left: 4px;
  transform: rotate(-135deg);
}
.swiper-nav svg {
  fill: var(--theme-color-text-common);
}
.swiper-nav:not(:disabled):hover svg {
  fill: var(--theme-color-accent);
}
.swiper-nav:not(:disabled):hover {
  background-color: var(--theme-color-accent);
}
.swiper-nav_disabled, .swiper-nav.swiper-button-disabled {
  cursor: default;
  opacity: 0.45;
}

.swiper-navs {
  display: flex;
  align-items: center;
}

.swiper-models {
  overflow: visible;
}
.swiper-models .swiper-slide {
  width: 397.5px;
  height: auto;
}

.swiper-offers {
  overflow: visible;
}
.swiper-offers .swiper-slide {
  width: 540px;
  height: auto;
}

.swiper-reviews {
  overflow: visible;
}
.swiper-reviews .swiper-slide {
  width: 825px;
  height: auto;
}

.swiper-portfolio,
.swiper-about-gallery {
  overflow: visible;
}
.swiper-portfolio .swiper-slide,
.swiper-about-gallery .swiper-slide {
  width: 825px;
  height: auto;
  opacity: 0.3;
  transition: opacity var(--theme-duration);
}
.swiper-portfolio .swiper-slide-active,
.swiper-about-gallery .swiper-slide-active {
  opacity: 1;
}

.swiper-product-thumbs {
  grid-column: 1;
  grid-row: 1;
  width: 100%;
  height: 478px;
}
.swiper-product-thumbs .swiper-slide {
  height: 86px;
  cursor: pointer;
}
.swiper-product-thumbs .swiper-slide.swiper-slide-thumb-active .product-detail__thumb::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  box-shadow: inset 0 0 0 2px var(--theme-color-accent);
  pointer-events: none;
}
.swiper-product-thumbs .swiper-slide.swiper-slide-thumb-active .product-detail__thumb img {
  opacity: 1;
}

@media (max-width: 1400px) {
  .swiper-product-thumbs {
    grid-column: 1;
    grid-row: 2;
    height: auto;
  }
  .swiper-product-thumbs .swiper-slide {
    height: auto;
  }
}
.swiper-product-gallery {
  width: 100%;
  height: 100%;
}
.swiper-product-gallery .swiper-slide {
  height: 100%;
}

.product-detail__gallery-arrow.swiper-nav {
  background-color: #fff;
  color: var(--theme-color-text-common);
}

@media (max-width: 1280px) {
  .product-detail__gallery-arrow.swiper-nav {
    width: 50px;
    height: 50px;
  }
}
.block-reviews {
  overflow: hidden;
}
.block-reviews .section-head {
  margin-bottom: 50px;
}
.block-reviews .swiper-nav {
  background-color: var(--theme-color-text-common);
  color: #fff;
}
.block-reviews .swiper-nav:not(:disabled):hover {
  background-color: var(--theme-color-accent);
  color: var(--theme-color-text-common);
}
.block-reviews__add {
  cursor: pointer;
}


.modal-review__label {
  display: block;
  margin: 0 0 8px 25px;
  color: #313C41;
  font-size: 16px;
  line-height: 1.25;
}
.modal-review__label_req::after {
  content: "*";
  margin-left: 5px;
  color: red;
}
.modal-review__rating .field-input1 {
  padding-top: 10px;
  padding-bottom: 10px;
}
@media (max-width: 575px) {
  .block-reviews .swiper-navs {
    flex-wrap: wrap;
    gap: 10px;
  }
  .block-reviews__add {
    max-width: 155px;
    width: 100%;
    margin-left: 0;
    margin-top: 10px;
  }
}

.block-portfolio .swiper-nav,
.about-gallery .swiper-nav {
  position: absolute;
  z-index: 3;
  top: 50%;
  transform: translateY(-50%);
}
.block-portfolio .swiper-nav:not(:disabled):hover,
.about-gallery .swiper-nav:not(:disabled):hover {
  background-color: var(--theme-color-accent);
  color: var(--theme-color-text-common);
}
.block-portfolio .swiper-nav_prev,
.about-gallery .swiper-nav_prev {
  left: calc(50% - 533px);
}
.block-portfolio .swiper-nav_next,
.about-gallery .swiper-nav_next {
  right: calc(50% - 533px);
}

.block-portfolio .swiper-nav {
  background-color: #fff;
  color: var(--theme-color-text-common);
}

.about-gallery .swiper-nav {
  background-color: var(--theme-color-text-common);
  color: #fff;
}

@media (max-width: 1080px) {
  .swiper-portfolio .swiper-slide,
  .swiper-about-gallery .swiper-slide {
    width: 85vw;
  }
  .block-portfolio .swiper-nav_prev,
  .about-gallery .swiper-nav_prev {
    left: var(--container-padding);
  }
  .block-portfolio .swiper-nav_next,
  .about-gallery .swiper-nav_next {
    right: var(--container-padding);
  }
}
.block-offers {
  overflow: hidden;
}
.block-offers .swiper-nav {
  background-color: var(--theme-color-text-common);
  color: #fff;
}
.block-offers .swiper-nav:not(:disabled):hover {
  background-color: var(--theme-color-accent);
  color: var(--theme-color-text-common);
}

.block-models {
  overflow: hidden;
}
body.mp .block-models {
    padding-bottom: 0;
}
.block-models .swiper-nav {
  background-color: var(--theme-color-text-common);
  color: #fff;
}
.block-models .swiper-nav:not(:disabled):hover {
  background-color: var(--theme-color-accent);
  color: var(--theme-color-text-common);
}

@media (max-width: 767px) {
  .about-gallery-slider > .swiper-nav {
    display: none;
  }
  .swiper-models .swiper-slide {
    width: min(398px, 88vw);
  }
  .swiper-offers .swiper-slide {
    width: min(540px, 88vw);
  }
  .swiper-reviews .swiper-slide {
    width: min(825px, 88vw);
  }
  .swiper-about-gallery .swiper-slide {
    width: min(825px, 88vw);
  }
}
@media (max-width: 500px) {
  .swiper-models .swiper-slide {
    width: 80vw;
  }
  body.mp .block-models,
  body.mp .block-catalog  {
    padding-bottom: 70px;
  }
}
@media (max-width: 400px) {
  .swiper-models .swiper-slide {
    width: 85vw;
  }
}
.hystmodal {
  padding: var(--container-padding);
}
.hystmodal__window {
  background-color: #fff;
  border-radius: 4px;
  padding: 40px 50px;
  width: 100%;
  max-width: 580px;
}
.hystmodal__close {
  background: none;
  outline: none;
  position: absolute;
  right: 30px;
  top: 30px;
  width: 20px;
  height: 20px;
  cursor: pointer;
  z-index: 1;
}
.hystmodal__close svg {
  fill: rgba(130, 135, 154, 0.5);
}
.hystmodal__close:hover svg, .hystmodal__close:focus-visible svg {
  fill: #82879A;
}
.hystmodal__close:active svg {
  fill: var(--theme-color-accent);
}
.hystmodal__title {
  font-size: 32px;
  line-height: 1.2;
  font-weight: 700;
  margin: 0 0 20px 0;
}
.hystmodal__notification1 {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
}
.hystmodal__notification1 a {
  color: var(--theme-color-accent);
}
.hystmodal__buttons .btn {
  text-transform: uppercase;
  display: flex;
  width: 100%;
}
.hystmodal__buttons .btn:not(:last-child) {
  margin-bottom: 16px;
}
.hystmodal__buttons_horizontal {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px;
}
.hystmodal__buttons_horizontal .btn {
  flex-grow: 1;
  width: 100%;
  min-width: 0;
}
.hystmodal__buttons_horizontal .btn:not(:last-child) {
  margin-bottom: 0;
}
.hystmodal__text1 {
  font-size: 16px;
  line-height: 1.5;
  padding-bottom: 11px;
}
.hystmodal__text1 a {
  color: var(--theme-color-accent);
  border-radius: 2px;
}
.hystmodal__text1 p:not(:last-child) {
  margin-bottom: 10px;
}
.hystmodal__text2 {
  color: #82879A;
  font-size: 14px;
  line-height: 1.5;
  padding-top: 9px;
}
.hystmodal__text2 a {
  color: var(--theme-color-accent);
  border-radius: 2px;
}
.hystmodal__text2 p:not(:last-child) {
  margin-bottom: 8px;
}
@media (max-width: 768px) {
  .hystmodal {
    padding: 0;
    display: block;
  }
  .hystmodal__wrap {
    min-height: 100dvh;
  }
  .hystmodal__window {
    -webkit-mask: unset;
            mask: unset;
    padding: 0;
    min-height: 100dvh;
  }
  .hystmodal__inner {
    padding: 0 15px 64px 15px;
  }
  .hystmodal__title {
    height: 70px;
    border-bottom: 1px var(--theme-border) solid;
    padding: 0 85px 0 15px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    font-size: 22px;
    margin: 0 -15px 20px -15px;
  }
  .hystmodal__close {
    right: 0;
    top: 0;
    width: 70px;
    height: 70px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-left: 1px var(--theme-border) solid;
  }
}
@media (max-width: 575px) {
  .hystmodal__title {
    font-size: 20px;
  }
}
@media (max-width: 400px) {
  .hystmodal__buttons_horizontal {
    display: block;
  }
  .hystmodal__buttons_horizontal .btn:not(:last-child) {
    margin-bottom: 16px;
  }
}

.modal-notification {
  text-align: center;
}
.modal-notification__title {
  margin-bottom: 15px;
}
.modal-notification .textblock1 {
  margin-bottom: 20px;
}
.modal-notification .btn {
  min-width: 200px;
}

.modal-vacancy__close {
  position: absolute;
  top: 30px;
  right: 30px;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background-color: var(--theme-color-text-common);
  color: #fff;
  cursor: pointer;
  transition: background-color 0.2s ease;
}
.modal-vacancy__close svg {
  fill: currentcolor;
}
.modal-vacancy__close:hover, .modal-vacancy__close:focus-visible {
  background-color: var(--theme-color-accent);
  color: var(--theme-color-text-common);
}
.modal-vacancy__fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
  margin-bottom: 40px;
}
.modal-vacancy__field_wide {
  grid-column: 1/-1;
}
.modal-vacancy__bottom {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.modal-vacancy__form {
  display: block;
  min-height: 0;
  padding: 0;
  border-radius: 0;
  background-color: transparent;
}
.modal-vacancy .hystmodal__window {
  width: 100%;
  max-width: 825px;
  border-radius: 30px;
  padding: 40px;
}
.modal-vacancy .hystmodal__title {
  max-width: 650px;
  margin: -0.15em 80px 40px 0;
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: 50px;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
}
.modal-vacancy .hystmodal__title.hystmodal__title_this_text {
  margin-bottom: 10px;
}
.modal-vacancy .hystmodal__text1 {
  margin-bottom: 20px;
}
.hystmodal__text1 {
    font-size: 16px;
    line-height: 1.5;
    padding-bottom: 11px;
    margin-bottom: 10px;
}
.modal-vacancy .field-input1 {
  border-color: var(--theme-color-light);
}
.modal-vacancy .modal-vacancy__submit {
  min-height: 60px;
}
@media (max-width: 900px) {
  .modal-vacancy {
    height: 100dvh;
    padding: 0;
    overflow: hidden;
  }
  .modal-vacancy .hystmodal__wrap {
    grid-row: 1/-1;
    width: 100%;
    min-height: 100dvh;
  }
  .modal-vacancy .hystmodal__window {
    width: 100%;
    max-width: none;
    margin: 0;
    height: 100dvh;
    min-height: 100dvh;
    border-radius: 0;
    padding: 24px;
    overflow-y: auto;
  }
  .modal-vacancy .hystmodal__inner {
    padding: 0;
  }
  .modal-vacancy .hystmodal__title {
    max-width: none;
    display: block;
    height: auto;
    margin: -0.15em 70px 40px 0;
    border-bottom: 0;
    padding: 0;
    font-size: 38px;
  }
  .modal-vacancy__close {
    top: 20px;
    right: 20px;
    width: 44px;
    height: 44px;
    border-left: 0;
  }
}
@media (max-width: 575px) {
  .modal-vacancy .hystmodal__window {
    padding: 20px 16px;
  }
  .modal-vacancy .hystmodal__title {
    font-size: 32px;
  }
  .modal-vacancy__fields {
    display: flex;
    flex-direction: column;
  }
  .modal-vacancy .checkbox-text__label {
    font-size: 14px;
  }
}

.modal-rent-application__line {
  height: 2px;
  background-image: linear-gradient(to right, var(--theme-color-accent) 0 10px, transparent 10px 20px);
  background-size: 20px 2px;
  background-repeat: repeat-x;
}
.modal-rent-application__close {
  position: absolute;
  top: 30px;
  right: 30px;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background-color: var(--theme-color-text-common);
  color: #fff;
  cursor: pointer;
  transition: background-color 0.2s ease;
}
.modal-rent-application__close svg {
  fill: currentcolor;
}
.modal-rent-application__close:hover, .modal-rent-application__close:focus-visible {
  background-color: var(--theme-color-accent);
  color: var(--theme-color-text-common);
}
.modal-rent-application__product {
  margin-bottom: 40px;
}
.modal-rent-application__product-row {
  display: grid;
  grid-template-columns: 140px minmax(0, 260px) 112px minmax(0, 1fr) max-content 26px;
  gap: 16px;
  align-items: center;
  min-height: 140px;
}
.modal-rent-application__photo {
  grid-column: 1;
  overflow: hidden;
  width: 140px;
  aspect-ratio: 7/5;
  border-radius: 20px;
}
.modal-rent-application__photo img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.modal-rent-application__name, .modal-rent-application__price {
  margin-top: -0.15em;
  margin-bottom: -0.15em;
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.1;
  text-transform: uppercase;
}
.modal-rent-application__name {
  grid-column: 2;
}
.modal-rent-application__price {
  grid-column: 5;
  white-space: nowrap;
}
.modal-rent-application__counter {
  grid-column: 3;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 112px;
  height: 48px;
  padding: 0 16px;
  border-radius: 50px;
  background-color: rgba(232, 232, 232, 0.6);
  color: var(--theme-color-text-common);
}
.modal-rent-application__counter-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  color: inherit;
  cursor: pointer;
}
.modal-rent-application__counter-btn svg {
  fill: currentcolor;
}
.modal-rent-application__counter-btn:hover, .modal-rent-application__counter-btn:focus-visible {
  color: var(--theme-color-accent-hover);
}
.modal-rent-application__counter-value {
  font-size: 18px;
  font-weight: 500;
  line-height: 1;
}
.modal-rent-application__delete {
  grid-column: 6;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  color: var(--theme-color-text-common);
  cursor: pointer;
}
.modal-rent-application__delete svg {
  fill: currentcolor;
}
.modal-rent-application__delete:hover, .modal-rent-application__delete:focus-visible {
  color: var(--theme-color-accent-hover);
}
.modal-rent-application__fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
  margin-bottom: 40px;
}
.modal-rent-application__field_wide {
  grid-column: 1/-1;
}
.modal-rent-application__bottom {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.modal-rent-application__form {
  display: block;
  min-height: 0;
  padding: 0;
  border-radius: 0;
  background-color: transparent;
}
.modal-rent-application .hystmodal__window {
  width: 100%;
  max-width: 825px;
  border-radius: 30px;
  padding: 40px;
}
.modal-rent-application .hystmodal__title {
  margin: -0.15em 80px 32px 0;
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: 50px;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
}
.modal-rent-application .field-input1 {
  border-color: var(--theme-color-light);
}
.modal-rent-application .modal-rent-application__submit {
  min-height: 60px;
}
@media (max-width: 900px) {
  .modal-rent-application {
    height: 100dvh;
    padding: 0;
    overflow: hidden;
  }
  .modal-rent-application .hystmodal__wrap {
    grid-row: 1/-1;
    width: 100%;
    min-height: 100dvh;
  }
  .modal-rent-application .hystmodal__window {
    width: 100%;
    max-width: none;
    margin: 0;
    height: 100dvh;
    min-height: 100dvh;
    border-radius: 0;
    padding: 24px;
    overflow-y: auto;
  }
  .modal-rent-application .hystmodal__inner {
    padding: 0;
  }
  .modal-rent-application .hystmodal__title {
    display: block;
    height: auto;
    margin: -0.15em 70px 28px 0;
    border-bottom: 0;
    padding: 0;
    font-size: 38px;
  }
  .modal-rent-application__close {
    top: 20px;
    right: 20px;
    width: 44px;
    height: 44px;
    border-left: 0;
  }
}
@media (max-width: 700px) {
  .modal-rent-application__product-row {
    grid-template-columns: 140px 112px minmax(0, 1fr) max-content 26px;
    grid-template-rows: auto 48px;
    -moz-column-gap: 16px;
         column-gap: 16px;
    row-gap: 16px;
    align-items: center;
    align-content: center;
    min-height: 0;
    padding: 20px 0;
  }
  .modal-rent-application__photo {
    grid-column: 1;
    grid-row: 1/3;
    align-self: start;
  }
  .modal-rent-application__name {
    grid-column: 2/-1;
    grid-row: 1;
    align-self: center;
  }
  .modal-rent-application__counter {
    grid-column: 2;
    grid-row: 2;
    align-self: center;
  }
  .modal-rent-application__price {
    grid-column: 4;
    grid-row: 2;
    align-self: center;
  }
  .modal-rent-application__delete {
    grid-column: 5;
    grid-row: 2;
    align-self: center;
  }
}
@media (max-width: 575px) {
  .modal-rent-application .hystmodal__window {
    padding: 20px 16px;
  }
  .modal-rent-application .hystmodal__title {
    font-size: 32px;
  }
  .modal-rent-application__product {
    margin-bottom: 32px;
  }
  .modal-rent-application__fields {
    display: flex;
    flex-direction: column;
  }
  .modal-rent-application .checkbox-text__label {
    font-size: 14px;
  }
}
@media (max-width: 500px) {
  .modal-rent-application__product-row {
    grid-template-columns: 140px 112px minmax(0, 1fr) max-content 26px;
    grid-template-rows: auto 48px auto;
    row-gap: 12px;
  }
  .modal-rent-application__photo {
    grid-row: 1/4;
  }
  .modal-rent-application__counter {
    grid-column: 2;
    grid-row: 2;
  }
  .modal-rent-application__name {
    font-size: 24px;
  }
  .modal-rent-application__price {
    grid-column: 2/5;
    grid-row: 3;
    align-self: center;
  }
  .modal-rent-application__delete {
    grid-column: 5;
    grid-row: 3;
  }
}

.modal-purchase-application__line {
  height: 2px;
  background-image: linear-gradient(to right, var(--theme-color-accent) 0 10px, transparent 10px 20px);
  background-size: 20px 2px;
  background-repeat: repeat-x;
}
.modal-purchase-application__close {
  position: absolute;
  top: 30px;
  right: 30px;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background-color: var(--theme-color-text-common);
  color: #fff;
  cursor: pointer;
  transition: background-color 0.2s ease;
}
.modal-purchase-application__close svg {
  fill: currentcolor;
}
.modal-purchase-application__close:hover, .modal-purchase-application__close:focus-visible {
  background-color: var(--theme-color-accent);
  color: var(--theme-color-text-common);
}
.modal-purchase-application__product {
  margin-bottom: 40px;
}
.modal-purchase-application__product-row {
  display: grid;
  grid-template-columns: 140px minmax(0, 1fr) max-content;
  gap: 16px;
  align-items: center;
  min-height: 140px;
}
.modal-purchase-application__photo {
  overflow: hidden;
  width: 140px;
  aspect-ratio: 7/5;
  border-radius: 20px;
}
.modal-purchase-application__photo img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.modal-purchase-application__name, .modal-purchase-application__price {
  margin-top: -0.15em;
  margin-bottom: -0.15em;
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.1;
  text-transform: uppercase;
}
.modal-purchase-application__price {
  white-space: nowrap;
}
.modal-purchase-application__fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
  margin-bottom: 40px;
}
.modal-purchase-application__field_wide {
  grid-column: 1/-1;
}
.modal-purchase-application__bottom {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.modal-purchase-application__form {
  display: block;
  min-height: 0;
  padding: 0;
  border-radius: 0;
  background-color: transparent;
}
.modal-purchase-application .hystmodal__window {
  width: 100%;
  max-width: 825px;
  border-radius: 30px;
  padding: 40px;
}
.modal-purchase-application .hystmodal__title {
  margin: -0.15em 80px 32px 0;
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: 50px;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
}
.modal-purchase-application .field-input1 {
  border-color: var(--theme-color-light);
}
.modal-purchase-application .modal-purchase-application__submit {
  min-height: 60px;
}
@media (max-width: 900px) {
  .modal-purchase-application {
    height: 100dvh;
    padding: 0;
    overflow: hidden;
  }
  .modal-purchase-application .hystmodal__wrap {
    grid-row: 1/-1;
    width: 100%;
    min-height: 100dvh;
  }
  .modal-purchase-application .hystmodal__window {
    width: 100%;
    max-width: none;
    margin: 0;
    height: 100dvh;
    min-height: 100dvh;
    border-radius: 0;
    padding: 24px;
    overflow-y: auto;
  }
  .modal-purchase-application .hystmodal__inner {
    padding: 0;
  }
  .modal-purchase-application .hystmodal__title {
    display: block;
    height: auto;
    margin: -0.15em 70px 28px 0;
    border-bottom: 0;
    padding: 0;
    font-size: 38px;
  }
  .modal-purchase-application__close {
    top: 20px;
    right: 20px;
    width: 44px;
    height: 44px;
    border-left: 0;
  }
}
@media (max-width: 700px) {
  .modal-purchase-application__product-row {
    grid-template-columns: 140px minmax(0, 1fr);
    grid-template-rows: auto auto;
    -moz-column-gap: 16px;
         column-gap: 16px;
    row-gap: 16px;
    align-items: center;
    align-content: center;
    min-height: 0;
    padding: 20px 0;
  }
  .modal-purchase-application__photo {
    grid-column: 1;
    grid-row: 1/3;
    align-self: start;
  }
  .modal-purchase-application__name {
    grid-column: 2;
    grid-row: 1;
    align-self: center;
  }
  .modal-purchase-application__price {
    grid-column: 2;
    grid-row: 2;
    align-self: center;
  }
}
@media (max-width: 575px) {
  .modal-purchase-application .hystmodal__window {
    padding: 20px 16px;
  }
  .modal-purchase-application .hystmodal__title {
    font-size: 32px;
  }
  .modal-purchase-application__product {
    margin-bottom: 32px;
  }
  .modal-purchase-application__fields {
    display: flex;
    flex-direction: column;
  }
  .modal-purchase-application .checkbox-text__label {
    font-size: 14px;
  }
}
@media (max-width: 500px) {
  .modal-purchase-application__name {
    font-size: 24px;
  }
}

.modal-calculator__close {
  position: absolute;
  top: 30px;
  right: 30px;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background-color: var(--theme-color-text-common);
  color: #fff;
  cursor: pointer;
  transition: background-color 0.2s ease;
}
.modal-calculator__close svg {
  fill: currentcolor;
}
.modal-calculator__close:hover, .modal-calculator__close:focus-visible {
  background-color: var(--theme-color-accent);
}
.modal-calculator__hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(360px, 480px);
  gap: 20px;
  align-items: stretch;
}
.modal-calculator__media {
  overflow: hidden;
  min-height: 100%;
  border-radius: 30px;
}
.modal-calculator__media img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.modal-calculator .hystmodal__window {
  width: 100%;
  max-width: 1680px;
  border-radius: 30px;
  padding: 40px;
}
.modal-calculator .hystmodal__title {
  margin: -0.15em 80px 30px 0;
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: 50px;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
}
.modal-calculator .rent-calculator {
  padding: 0;
  border: 0;
  border-radius: 0;
}
.modal-calculator .rent-calculator_modal .rent-calculator__group_equipment {
  grid-template-columns: minmax(0, 1fr) 166px;
}
.modal-calculator .rent-calculator_modal .calc-field__label,
.modal-calculator .rent-calculator_modal .calc-choice__legend {
  margin-top: -0.225em;
}
.modal-calculator .rent-calculator_modal .calc-choice__item:not(:last-child) {
  margin-bottom: 10px;
}
.modal-calculator .rent-calculator_modal .calc-field_short,
.modal-calculator .rent-calculator_modal .calc-output_field {
  width: 166px;
}
.modal-calculator .rent-calculator_modal .calc-result {
  grid-template-columns: 212px minmax(0, 214px);
  gap: 40px;
}
.modal-calculator .rent-calculator_modal .calc-result_total {
  grid-template-columns: 104px minmax(0, 288px);
}
@media (max-width: 1500px) {
  .modal-calculator__hero {
    grid-template-columns: minmax(0, 1fr) 380px;
  }
}
@media (max-width: 1400px) {
  .modal-calculator__hero {
    grid-template-columns: minmax(0, 1fr) minmax(300px, 380px);
  }
  .modal-calculator .rent-calculator_modal .rent-calculator__params {
    grid-template-columns: minmax(220px, 60fr) minmax(0, 40fr);
    gap: 40px;
  }
  .modal-calculator .rent-calculator_modal .rent-calculator__group_equipment {
    position: relative;
    grid-column: 1/-1;
    grid-template-columns: minmax(0, 1fr) minmax(140px, 166px);
  }
  .modal-calculator .rent-calculator_modal .rent-calculator__group_equipment::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: -21px;
    left: 0;
    height: 2px;
    background-image: linear-gradient(to right, var(--theme-color-accent) 0 10px, transparent 10px 20px);
    background-size: 20px 2px;
    background-repeat: repeat-x;
  }
  .modal-calculator .rent-calculator_modal .rent-calculator__group_place {
    grid-column: 1;
  }
  .modal-calculator .rent-calculator_modal .rent-calculator__group_place::before {
    display: none;
  }
  .modal-calculator .rent-calculator_modal .rent-calculator__group_payment {
    grid-column: 2;
  }
  .modal-calculator .rent-calculator_modal .rent-calculator__group_payment::before {
    top: 0;
    bottom: 0;
    left: -21px;
    width: 2px;
    height: auto;
    background-image: linear-gradient(to bottom, var(--theme-color-accent) 0 10px, transparent 10px 20px);
    background-size: 2px 20px;
    background-repeat: repeat-y;
  }
  .modal-calculator .rent-calculator_modal .calc-field_wide,
  .modal-calculator .rent-calculator_modal .calc-field_short,
  .modal-calculator .rent-calculator_modal .calc-output_field {
    width: 100%;
  }
}
@media (max-width: 1100px) {
  .modal-calculator__hero {
    grid-template-columns: minmax(0, 1fr);
  }
  .modal-calculator__media {
    display: none;
  }
}
@media (max-width: 768px) {
  .modal-calculator {
    padding: 0;
  }
  .modal-calculator .hystmodal__window {
    max-width: none;
    border-radius: 0;
    padding: 24px;
  }
  .modal-calculator .hystmodal__inner {
    padding: 0;
  }
  .modal-calculator .hystmodal__title {
    display: block;
    height: auto;
    margin: -0.15em 70px 24px 0;
    border-bottom: 0;
    padding: 0;
    font-size: 38px;
  }
  .modal-calculator__hero {
    gap: 16px;
  }
  .modal-calculator__media {
    min-height: 240px;
    border-radius: 20px;
  }
  .modal-calculator .rent-calculator_modal .rent-calculator__params {
    grid-template-columns: minmax(0, 1fr);
  }
  .modal-calculator .rent-calculator_modal .rent-calculator__group_equipment {
    grid-column: auto;
    grid-template-columns: minmax(0, 1fr);
  }
  .modal-calculator .rent-calculator_modal .rent-calculator__group_equipment::after {
    display: none;
  }
  .modal-calculator .rent-calculator_modal .rent-calculator__group_place,
  .modal-calculator .rent-calculator_modal .rent-calculator__group_payment {
    grid-column: auto;
  }
  .modal-calculator .rent-calculator_modal .rent-calculator__group:not(:first-child)::before {
    top: -20px;
    right: 0;
    bottom: auto;
    left: 0;
    width: auto;
    height: 2px;
    background-image: linear-gradient(to right, var(--theme-color-accent) 0 10px, transparent 10px 20px);
    background-size: 20px 2px;
    background-repeat: repeat-x;
  }
  .modal-calculator .rent-calculator_modal .calc-result,
  .modal-calculator .rent-calculator_modal .calc-result_total {
    grid-template-columns: minmax(0, 1fr);
    gap: 10px;
  }
  .modal-calculator__close {
    top: 20px;
    right: 20px;
    width: 44px;
    height: 44px;
    border-left: 0;
  }
}
@media (max-width: 500px) {
  .modal-calculator .hystmodal__window {
    padding: 20px;
  }
  .modal-calculator .hystmodal__title {
    font-size: 32px;
  }
  .modal-calculator__media {
    min-height: 200px;
  }
}

.footer {
  width: 100%;
  min-height: 545px;
  position: relative;
  overflow: hidden;
  background-color: var(--theme-color-text-common);
  color: #fff;
}
.footer__bg {
  position: absolute;
  inset: 0;
  mix-blend-mode: overlay;
  opacity: 0.6;
}
.footer__bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.footer .container {
  position: relative;
  z-index: 1;
}
.footer__top {
  min-height: 372px;
  padding: 80px 0;
  display: grid;
  grid-template-columns: 102px minmax(180px, 194px) minmax(180px, 195px) minmax(360px, 542px);
  justify-content: space-between;
  gap: 60px;
}
.footer__bottom {
  min-height: 92px;
  border-top: 1px rgba(255, 255, 255, 0.2) solid;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.3;
}
.footer__bottom a {
  color: inherit;
  text-decoration: underline;
  text-decoration-thickness: 6.5%;
  text-underline-offset: 2px;
}

.footer__logo {
  align-self: start;
}

.footer__logo .logo__icon {
  width: 102px;
  height: 102px;
  border-radius: 50%;
  background-color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.footer__logo .logo__icon img {
  width: 76px;
  height: 76px;
  border-radius: 50%;
  -o-object-fit: cover;
     object-fit: cover;
}

.footer-title {
  margin: -0.12em 0 26px;
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: 26px;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
}

.footer-list,
.footer-menu {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.footer-list {
  gap: 20px;
}

.footer-menu {
  gap: 30px;
}
.footer-menu a {
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: 26px;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
}

.footer-list a,
.footer-menu a,
.footer-mail {
  text-decoration: none;
  color: #fff;
}
.footer-list a:hover, .footer-list a:focus-visible,
.footer-menu a:hover,
.footer-menu a:focus-visible,
.footer-mail:hover,
.footer-mail:focus-visible {
  color: var(--theme-color-accent);
}

.footer-list__accent {
  color: var(--theme-color-accent) !important;
  font-weight: 600;
  line-height: 1.5 !important;
  text-decoration-line: underline !important;
  text-decoration-style: dotted !important;
  text-decoration-thickness: 12%;
  text-underline-offset: 3px;
}

.footer-address {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 40px;
  font-style: normal;
  color: #fff;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.3;
}
.footer-address svg {
  flex: 0 0 auto;
  fill: var(--theme-color-accent);
}

.footer-phones {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 20px;
  margin-bottom: 40px;
}
.footer-phones a {
  font-family: Adderley, "Arial Narrow", Arial, sans-serif;
  font-size: 30px;
  font-weight: 700;
  line-height: 1.1;
  color: #fff;
  text-decoration: none;
}

.footer-mail {
  display: inline-flex;
  margin-bottom: 0;
  color: var(--theme-color-accent);
  font-size: 16px !important;
  font-family: Manrope, Arial, sans-serif !important;
  font-weight: 600 !important;
  line-height: 1.5 !important;
  text-decoration-line: underline !important;
  text-decoration-style: dotted !important;
  text-decoration-thickness: 12%;
  text-underline-offset: 3px;
}

.footer__socials {
  gap: 10px;
}

@media (max-width: 1439px) {
  .footer__top {
    gap: 40px;
  }
  .footer-title,
  .footer-menu a {
    font-size: 24px;
  }
  .footer-address {
    font-size: 18px;
  }
  .footer-phones a {
    font-size: 28px;
  }
}
@media (max-width: 1199px) {
  .footer__top {
    min-height: 0;
    grid-template-columns: 102px minmax(180px, 1fr) minmax(180px, 1fr);
    gap: 48px 36px;
    padding: 64px 0;
  }
  .footer-contacts {
    grid-column: 2/4;
  }
  .footer-address {
    max-width: 620px;
    margin-bottom: 28px;
  }
  .footer-phones {
    margin-bottom: 28px;
  }
  .footer__bottom {
    min-height: 78px;
    font-size: 15px;
  }
}
@media (max-width: 767px) {
  .footer {
    min-height: 0;
  }
  .footer__top {
    grid-template-columns: 1fr;
    justify-items: center;
    gap: 34px;
    padding: 48px 0 42px;
    text-align: center;
  }
  .footer-contacts {
    grid-column: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .footer__logo .logo__icon {
    width: 86px;
    height: 86px;
  }
  .footer__logo .logo__icon img {
    width: 64px;
    height: 64px;
  }
  .footer-title {
    margin-bottom: 20px;
  }
  .footer-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px 18px;
    justify-items: center;
  }
  .footer-menu {
    align-items: center;
    gap: 20px;
  }
  .footer-title,
  .footer-menu a {
    font-size: 22px;
  }
  .footer-address {
    align-items: center;
    width: min(440px, 100%);
    gap: 10px;
    margin-bottom: 24px;
    font-size: 16px;
    text-align: left;
  }
  .footer-address svg {
    width: 21px;
    height: 25px;
  }
  .footer-phones {
    align-items: center;
    gap: 14px;
    margin-bottom: 26px;
  }
  .footer-phones a {
    font-size: 24px;
  }
  .footer-mail {
    font-size: 15px !important;
  }
  .footer__socials .social {
    width: 46px;
    height: 46px;
  }
  .footer__bottom {
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    min-height: 0;
    padding: 26px 0 30px;
    gap: 14px;
    font-size: 14px;
    text-align: center;
  }
}
@media (max-width: 575px) {
  .footer__top {
    gap: 30px;
    padding-top: 40px;
  }
  .footer-list {
    grid-template-columns: 1fr;
    gap: 14px;
  }
  .footer-title,
  .footer-menu a {
    font-size: 20px;
  }
  .footer-menu {
    gap: 18px;
  }
  .footer-phones a {
    font-size: 22px;
  }
}

.swiper-about-history {
  width: 100%;
  overflow: visible;
}
.swiper-about-history .swiper-slide {
  transition: opacity 300ms;
}
.swiper-about-history .swiper-slide:not(.swiper-slide-visible) {
  opacity: 0;
}
.about-history__nav {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 10px;
}
.about-history__nav .swiper-nav_prev {
  margin-right: 0;
}
.about-history {
  padding-top: 120px;
  padding-bottom: 190px;
  position: relative;
  overflow: hidden;
}
.about-history::before {
  /* position: absolute;
  left: 50%;
  bottom: 0;
  width: 100vw;
  height: 2px;
  background-image: repeating-linear-gradient(90deg, var(--theme-color-accent) 0 10px, transparent 10px 20px);
  transform: translateX(-50%);
  content: ""; */
}
.about-history__head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 90px;
}
.about-history__title span {
  display: block;
}
.about-history__item {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 200px;
  align-items: center;
}
.about-history__years {
  font-family: 'Adderley', sans-serif;
  font-style: normal;
  font-weight: 700;
  font-size: 190px;
  font-size: clamp(100px, 12vw, 190px);
  line-height: 1;
  color: var(--theme-color-text-common);
  margin-bottom: -0.1em;
}
.about-history__years span {
  color: #3967B9;
}
.about-history__data.textblock1 {
  font-size: 20px;
}
.about-history__data.textblock1 h3 {
  margin-bottom: 0.5em;
  color: var(--theme-color-text-common);
  font-family: 'Adderley', sans-serif;
  font-size: 30px;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
}
.about-history__years-nav {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 50px;
}
.about-history__years-nav > * {
  font-size: 16px;
  font-weight: 700;
  color: var(--theme-color-text-common);
  cursor: pointer;
}
.about-history__years-nav .active {
  color: #3967B9;
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 8px;
  cursor: unset;
}
@media (max-width: 1400px) {
  .about-history__item {
    gap: 100px;
  }
}
@media (max-width: 1280px) {
  .about-history {
    padding-bottom: 120px;
  }
  .about-history__item {
    gap: 60px;
  }
  .about-history__data.textblock1 {
    font-size: 18px;
  }
  .about-history__data.textblock1 h3 {
    font-size: 26px;
  }
}
@media (max-width: 1000px) {
  .about-history__years-nav {
    gap: 30px;
  }
}
@media (max-width: 991px) {
  .about-history {
    padding-top: 70px;
    padding-bottom: 70px;
  }
}
@media (max-width: 900px) {
  .about-history__head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 30px;
  }
  .about-history__nav {
    display: none;
  }
  .about-history__item {
    display: block;
  }
  .about-history__years {
    text-align: right;
    margin-bottom: 20px;
  }
}
@media (max-width: 700px) {
  .about-history__head {
    display: block;
  }
  .about-history__years-nav {
    margin-top: 20px;
    justify-content: center;
  }
  .about-history__title,
  .about-history__data.textblock1,
  .about-history__years {
    text-align: center;
  }
}
@media (max-width: 575px) {
  .about-history__years-nav {
    gap: 20px;
  }
  .about-history__years-nav > * {
    font-size: 14px;
  }
  .about-history__years-nav .active {
    text-underline-offset: 5px;
  }
  .about-history__data.textblock1 {
    font-size: 16px
  }

  .about-history__years {
    font-size: 80px;
  }
}

@media (max-width: 440px) {
  .about-history__years-nav {
    gap: 10px;
    flex-wrap: wrap;
  }
}

#cookieBlock{
  display: none;
  width: 100%;
  position: fixed;
  z-index: 10000;
  bottom: 20px;
  text-align: center;
}
#cookieBlock.active-cookie{
  display:block;
}
.cookie__container{
  background: #fff;
  padding: 10px 30px;
  display: inline-block;
  box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.1), 0 2px 4px rgba(0, 0, 0, 0.02);
  border-radius: 30px;
}
.cookie__content{
  display:flex;
  align-items: center;
  gap: 20px;
}
.close_cookie_btn{
  min-width: 160px;
}
.cookie__text{
  line-height: 1.4em;
  font-weight: 700;
}
.cookie__text a{
  color: var(--theme-color-accent);
  text-decoration: underline;
  text-decoration-line: underline;
  text-decoration-style: dotted;
  text-decoration-thickness: 12%;
  text-underline-offset: 3px;
}

@media (max-width: 1000px) {
  .cookie__container {
      padding: 10px 15px;
      margin-left: max(var(--calculated-padding), var(--container-padding));
      margin-right: max(var(--calculated-padding), var(--container-padding));
  }
  .cookie__text {
      text-align: left;
  }
}

@media (max-width: 768px) {
.cookie__content {
      gap: 10px;
      flex-direction: column;
      font-size: 14px;
  }
  .close_cookie_btn {
      --height: 56px;
      width: 100%;
      font-size: 14px;
  }
}


.header__backdrop {
    position: absolute;
    inset: 100% 0 auto 0;
    width: 100%;
    height: calc(100dvh - 100%);
    background: rgba(0, 0, 0, 0.6);
    visibility: hidden;
    opacity: 0;
    transition: opacity var(--header-duration, 0.3s);
}

.search-active .header__backdrop {
    visibility: visible;
    opacity: 1;
}

.search-active .header {
    background-color: #111;
}

.header-search-panel {
    --search-height: 89px;
    position: absolute;
    inset: 100% 0 auto 0;
    width: 100%;
    background-color: #fff;
    z-index: 1;
    border-top: 1px var(--border-color) solid;
    opacity: 0;
    visibility: hidden;
    transition: opacity var(--header-duration, 0.3s);
}

.search-active .header-search-panel {
    opacity: 1;
    visibility: visible;
}

.header-search-panel form {
    display: grid;
    grid-template-columns: 400px 199px 1fr 98px 116px 202px;
    border-left: 1px var(--border-color) solid;
    border-right: 1px var(--border-color) solid;
    position: relative;
}

.header-search__cell-field {
    grid-column: span 4;
    border-right: 1px var(--border-color) solid;
    position: relative;
}

.header-search__cell-field input {
    height: var(--search-height);
    background-color: #f2f2f2;
    border-radius: inherit;
    font-size: 18px;
    padding-right: 72px;
}

.header-search__cell-field input::placeholder {
    color: #898989;
}

.header-search__cell-field input:focus-visible::placeholder {
    color: transparent;
}

.header-search__clear {
    position: absolute;
    right: 24px;
    top: 50%;
    transform: translateY(-50%);
    width: 24px;
    height: 24px;
    opacity: 0;
    visibility: hidden;
    transition: opacity var(--header-duration, 0.3s), visibility var(--header-duration, 0.3s);
}

.header-search_filled .header-search__clear {
    opacity: 1;
    visibility: visible;
}

.header-search__cell-close {
    border-right: 1px var(--border-color) solid;
}

.header-search__close {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.header-search__cell-btn .btn {
    --height: var(--search-height);
    min-width: 100%;
    border-radius: inherit;
}

.header-search__cell-btn .btn.hover-effect1:not(:disabled):hover::after {
    transform: translateX(160px) scale(1, 1);
}

#search-result,
#search-menu {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: #fff;
    z-index: 1000;
    max-height: 400px;
    overflow-y: auto;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

#search-menu span,
#search-menu ul {
    display: block;
    padding: 12px 16px;
}

#search-result_count {
    font-weight: bold;
    color: var(--theme-color-accent);
}

.search-result_list {
    padding: 40px;
}

.search-result_list-item {
    display: flex;
    align-items: center;
    gap: 30px;
    padding: 20px 0;
    border-bottom: 1px solid #e0e0e0;
    cursor: pointer;
}

.search-result_list-item:last-child {
    border-bottom: 0;
    padding: 20px 0 0;
}

.search-result_list-item img {
    width: 80px;
    height: 60px;
    object-fit: contain;
}

.search-result_list-item__l a {
    margin-bottom: 10px;
}

.search-result_list-item__l > :last-child {
    margin-bottom: 0;
}

.search-result_list-url {
    display: block;
    font-size: 16px;
    font-weight: 600;
    line-height: 120%;
    color: #333;
    text-decoration: none;
}

.search-result_list-desk {
    font-size: 14px;
    line-height: 120%;
}

.search-result_list-desk mark,
.search-result_list-url mark {
    background: transparent;
    color: #3967b9;
    border-radius: 0;
}

.search-result_list-item_error {
    color: red;
}

.search-result_list-item.search-result-empty {
    padding: 0;
    font-size: 16px;
    font-weight: 600;
    line-height: 120%;
}

.search-result_categories {
    margin-bottom: 30px;
}

.search-result_categories:last-of-type {
    margin-bottom: 0;
}

.search-result_categories .title {
    font-weight: 700;
    font-size: 16px;
    line-height: 120%;
    letter-spacing: 0%;
    text-transform: uppercase;
}

.search-result_title {
    padding: 12px 16px;
    background: #f8f9fa;
    border-bottom: 1px solid #e0e0e0;
    font-size: 14px;
    font-weight: 500;
}

@media (max-width: 1380px) {
    .header-search-panel form {
        grid-template-columns: 1fr 1fr 89px 98px 98px;
    }

    .header-search__cell-field,
    .header-search__cell-btn {
      grid-column: span 2;
    }
}

@media (max-width: 768px) {
    .header-search-panel {
        --search-height: 70px;
    }
    .header-search-panel form {
      grid-template-columns: 1fr 98px 98px;
    }
    .header-search__cell-field {
      grid-column: auto;
    }

    .header-search__cell-close {
      display: none;
    }
    .header-search__cell-field input {
      font-size: 16px;
    }
    .header-search__cell-close {
        display: none;
    }
}

@media (max-width: 500px) {
    .header-search__cell-field input {
        font-size: 14px;
                padding-right: 30px;
    }
    .header-search-panel form {
      grid-template-columns: 1fr 107px;
    }
    .header-search__cell-btn {
      grid-column: auto;
    }
    .header-search__cell-btn .btn {
      font-size: 14px;
       text-transform: none;
    }
    .header-search__clear {
      right: 5px;
    }
    .search-result_categories .title,
    .search-result_list-url {
      font-size: 14px;
    }
    .search-result_list-desk {
      display: none;
    }
    .search-result_list-item {
      gap: 20px;
      padding: 15px 0;
    }
    .search-result_categories {
      margin-bottom: 20px;
    }
    .search-result_list-item:last-child {
      padding: 15px 0 0;
    }
    .search-result_list {
      padding: 20px;
    }
}


/* Header navigation phones: mobile menu only */
.header-nav__phones {
  display: none;
}
@media (max-width: 1280px) {
  .header-nav__phones {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 12px;
    margin-top: 8px;
  }
  .header-nav__phone {
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--theme-color-accent);
    font-size: 18px;
    font-weight: 600;
  }
  .header-nav__phone svg {
    flex-shrink: 0;
    fill: currentcolor;
  }
}

/* About hero presentation button */
.about-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: 80px;
}
.about-hero__actions .about-hero__video {
  flex: 1 1 0;
  justify-content: center;
  min-width: 0;
  margin-top: 0;
}
.about-hero__video--pdf .about-hero__video-icon::before {
  left: 50%;
  top: 50%;
  width: 20px;
  height: 26px;
  border: 2px solid #fff;
  border-radius: 2px;
  box-sizing: border-box;
  transform: translate(-50%, -50%);
}
.about-hero__video--pdf .about-hero__video-icon::after {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 10px;
  height: 2px;
  background-color: #fff;
  box-shadow: 0 5px 0 #fff, 0 10px 0 #fff;
  transform: translate(-50%, -3px);
  content: "";
}
@media (max-width: 1200px) {
  .about-hero__actions { margin-top: 56px; }
}
@media (max-width: 991px) {
  .about-hero__actions { margin-top: 48px; }
}
@media (max-width: 575px) {
  .about-hero__actions { margin-top: 36px; }
}