@charset "UTF-8";

/* Catalog bundle: global, noUiSlider, main, resize, mobile. Original sources are preserved in orig/. */

/* media-temp/css/global.css */

/* Fonts */
@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 400;

  font-display: swap;
  src: url("../fonts/montserrat/regular/montserrat-regular.woff2") format('woff2'),
    url("../fonts/montserrat/regular/montserrat-regular.woff") format('woff'),
    url("../fonts/montserrat/regular/montserrat-regular.ttf") format('ttf'),
    url("../fonts/montserrat/regular/montserrat-regular.eot") format('eot'),
    url("../fonts/montserrat/regular/montserrat-regular.eot?#iefix") format('embedded-opentype'),
    url("../fonts/montserrat/regular/montserrat-regular.otf") format('otf'),
    url("../fonts/montserrat/regular/montserrat-regular.svg#montserrat-regular") format('svg');
}

@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 500;

  font-display: swap;
  src: url("../fonts/montserrat/medium/montserrat-medium.woff2") format('woff2'),
    url("../fonts/montserrat/medium/montserrat-medium.woff") format('woff'),
    url("../fonts/montserrat/medium/montserrat-medium.ttf") format('ttf'),
    url("../fonts/montserrat/medium/montserrat-medium.eot") format('eot'),
    url("../fonts/montserrat/medium/montserrat-medium.eot?#iefix") format('embedded-opentype'),
    url("../fonts/montserrat/medium/montserrat-medium.otf") format('otf'),
    url("../fonts/montserrat/medium/montserrat-medium.svg#montserrat-medium") format('svg');
}
@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 600;

  font-display: swap;
  src: url("../fonts/montserrat/semi-bold/montserrat-semi-bold.woff2") format('woff2'),
    url("../fonts/montserrat/semi-bold/montserrat-semi-bold.woff") format('woff'),
    url("../fonts/montserrat/semi-bold/montserrat-semi-bold.ttf") format('ttf'),
    url("../fonts/montserrat/semi-bold/montserrat-semi-bold.eot") format('eot'),
    url("../fonts/montserrat/semi-bold/montserrat-semi-bold.eot?#iefix") format('embedded-opentype'),
    url("../fonts/montserrat/semi-bold/montserrat-semi-bold.otf") format('otf'),
    url("../fonts/montserrat/semi-bold/montserrat-semi-bold.svg#montserrat-semi-bold") format('svg');
}
@font-face {
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 700;

  font-display: swap;
  src: url("../fonts/montserrat/bold/montserrat-bold.woff2") format('woff2'),
    url("../fonts/montserrat/bold/montserrat-bold.woff") format('woff'),
    url("../fonts/montserrat/bold/montserrat-bold.ttf") format('ttf'),
    url("../fonts/montserrat/bold/montserrat-bold.eot") format('eot'),
    url("../fonts/montserrat/bold/montserrat-bold.eot?#iefix") format('embedded-opentype'),
    url("../fonts/montserrat/bold/montserrat-bold.otf") format('otf'),
    url("../fonts/montserrat/bold/montserrat-bold.svg#montserrat-bold") format('svg');
}
@font-face {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 400;

  font-display: swap;
  src: url("../fonts/roboto/regular/roboto-regular.woff2") format('woff2'),
    url("../fonts/roboto/regular/roboto-regular.woff") format('woff'),
    url("../fonts/roboto/regular/roboto-regular.ttf") format('ttf'),
    url("../fonts/roboto/regular/roboto-regular.eot") format('eot'),
    url("../fonts/roboto/regular/roboto-regular.eot?#iefix") format('embedded-opentype'),
    url("../fonts/roboto/regular/roboto-regular.otf") format('otf'),
    url("../fonts/roboto/regular/roboto-regular.svg#roboto-regular") format('svg');
}
@font-face {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 500;

  font-display: swap;
  src: url("../fonts/roboto/medium/roboto-medium.woff2") format('woff2'),
    url("../fonts/roboto/medium/roboto-medium.woff") format('woff'),
    url("../fonts/roboto/medium/roboto-medium.ttf") format('ttf'),
    url("../fonts/roboto/medium/roboto-medium.eot") format('eot'),
    url("../fonts/roboto/medium/roboto-medium.eot?#iefix") format('embedded-opentype'),
    url("../fonts/roboto/medium/roboto-medium.otf") format('otf'),
    url("../fonts/roboto/medium/roboto-medium.svg#roboto-medium") format('svg');
}


/* Variables */
:root {
  --color-default-black: #000000;
  --color-default-white: #ffffff;

  --color-gray-100: #f0f0f0;
  --color-gray-200: #d8d8d8;
  --color-gray-300: #6e7275;
  --color-gray-400: #393d3e;
  --color-gray-500: #1b1d1e;

  --color-blue-0: #eff3f5;
  --color-blue-100: #e6f2f7;
  --color-blue-200: #37c8fa;
  --color-blue-300: #2aa9d5;

  --color-red-0: #fff2f2;
  --color-red-100: #ff9898;
  --color-red-200: #f35151;

  --color-green-100: #40d67c;

  --ff-montserrat: "Montserrat", "Arial", sans-serif;
  --ff-roboto: "Roboto", "Arial", sans-serif;

  --easy: all 0.2s ease-in-out;
  --easy-04: all 0.4s ease-in-out;
}


/* Reboot */
*,
*::before,
*::after {
  box-sizing: border-box;
  outline: none!important;
}

html,
body {
  margin: 0;
  padding: 0;
  min-height: 100vh;
}

html {
  font-family: var(--ff-montserrat);
  font-style: normal;
  font-weight: 400;
  font-size: 14px;
  line-height: 150%;
  color: var(--color-gray-400);
}

body {
  width: 100%;
  height: 100%;
  background-color: var(--color-default-white);
}

h1, h2, h3, h4, h5, h6, p {
  margin: 0;
}

a {
  color: var(--color-gray-400);
  text-decoration: none;
}

ul, ol {
  margin: 0;
  padding: 0;
}

img, video {
  display: block;
  max-width: 100%;
  height: auto;
}

address {
  font-style: normal;
}

input,
textarea {
  padding: 15px 20px;
  width: 100%;
  border-radius: 12px;
  font-family: var(--ff-montserrat);
  font-weight: 400;
  font-size: 14px;
  line-height: 150%;
  color: var(--color-gray-300);
  text-align: center;

  transition: var(--easy);
  -moz-transition: var(--easy);
  -o-transition: var(--easy);
  -webkit-transition: var(--easy);
}
.input-primary {
  background-color: var(--color-blue-0);
  border: 2px solid var(--color-blue-0);
}
.input-secondary {
  background-color: var(--color-default-white);
  border: 2px solid var(--color-default-white);
}
input.error {
  background-color: var(--color-red-0)!important;
  border: 2px solid var(--color-red-100)!important;
}
input.success {
  padding: 15px 62px 15px 20px;
  background-color: var(--color-blue-0)!important;
  border: 2px solid var(--color-blue-200)!important;
  background-image: url('../img/svg/checked-blue.svg');
  background-repeat: no-repeat;
  background-position: 96% 50%;
}

input::-moz-placeholder {
  color: rgba(110, 114, 117, 0.5);
}

input::-webkit-input-placeholder {
  color: rgba(110, 114, 117, 0.5);
}

input[type="number"] {
  -moz-appearance: textfield;
  -webkit-appearance: textfield;
  appearance: textfield;
}

input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
  display: none;
}

textarea {
  resize: none;
}

textarea::-moz-placeholder {
  color: rgba(110, 114, 117, 0.5);
}

textarea::-webkit-input-placeholder {
  color: rgba(110, 114, 117, 0.5);
}

.select-wrapper {
  position: relative;
}
.select-wrapper::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 12px;
  z-index: -2;

  border: 1px solid var(--color-gray-200);
  background-color: var(--color-default-white);

  transition: var(--easy);
  -moz-transition: var(--easy);
  -o-transition: var(--easy);
  -webkit-transition: var(--easy);
}
.select-wrapper-primary::after {
  background-color: var(--color-gray-100);
  border: 2px solid var(--color-gray-100);
}
.select-wrapper-secondary::after {
  background-color: var(--color-default-white);
  border: 2px solid var(--color-default-white);
}
select {
  padding: 15px 42px 15px 24px;
  height: 100%;
  width: 100%;
  border: none;
  background-color: transparent;
  font-family: var(--ff-montserrat);
  font-weight: 400;
  font-size: 14px;
  line-height: 150%;
  color: var(--color-gray-400);
  appearance: none;
  cursor: pointer;
}

.select-button,
.select-arrow {
  position: absolute;
  top: 50%;
  right: 18px;
  transform: translateY(-50%) rotate(90deg);
  width: 24px;
  height: 24px;
  border-radius: 6px;
  z-index: -1;

  transition: var(--easy);
  -moz-transition: var(--easy);
  -o-transition: var(--easy);
  -webkit-transition: var(--easy);
}
.select-button {
  transform: translateY(-50%);
  padding: 2px 0;
  border: none;
  background-color: var(--color-gray-100);
}
.select-wrapper-primary .select-arrow {
  background-color: var(--color-gray-200);
  color: var(--color-gray-300);
}
.select-wrapper-secondary .select-arrow {
  background-color: var(--color-blue-100);
  color: var(--color-gray-300);
}

.table-wrapper {
  border-radius: 12px;
  border: 1px solid var(--color-gray-100);
  overflow-x: scroll;
  overflow-y: hidden;

  -ms-overflow-style: none;
  scrollbar-width: none;
}

.table-wrapper::-webkit-scrollbar {
  display: none;
}

table {
  margin: -0.5px;
  width: 100%;
  border-spacing: 0;
  color: var(--color-gray-500);
}

table tr:first-child,
table tr.thead {
  background-color: var(--color-blue-0);
}

table tr:first-child td,
table tr.thead td {
  padding: 20px 12px;
  border-left: 0.5px solid var(--color-gray-200);
  border-right: 0.5px solid var(--color-gray-200);
  font-weight: 700!important;
  text-transform: uppercase;
}

table td {
  padding: 8.9px 12px;
  border: 0.5px solid var(--color-gray-100);
  font-family: var(--ff-montserrat);
  font-weight: 400;
  font-size: 14px;
  line-height: 150%;
  color: var(--color-gray-500);
}

table tr:last-child td {
  border-bottom: none;
}


/* Utils */
.wrapper {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  overflow-x: hidden;
}

.wrapper header,
.wrapper footer {
  flex-shrink: 0;
}

.wrapper main {
  flex-grow: 1;
}

.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  clip: rect(0 0 0 0);
  clip-path: inset(100%);
  white-space: nowrap;
  overflow: hidden;
}

.screen-lock {
  position: relative;
  overflow: hidden;
}

.no-scrollbar {
  -ms-overflow-style: none;
  scrollbar-width: none;
}

.no-scrollbar::-webkit-scrollbar {
  display: none;
}

.overlay {
  position: absolute;
  top: 164px;
  width: 100vw;
  height: calc(100% - 164px);
  background-color: rgba(27, 29, 30, 0.50);
  backdrop-filter: blur(10px);
  opacity: 0;
  z-index: -1;

  transition: var(--easy);
  -moz-transition: var(--easy);
  -o-transition: var(--easy);
  -webkit-transition: var(--easy);
}

.overlay.is-active {
  opacity: 1;
  z-index: 1;
}

.easy {
  transition: var(--easy);
  -moz-transition: var(--easy);
  -o-transition: var(--easy);
  -webkit-transition: var(--easy);
}

.easy-04 {
  transition: var(--easy-04);
  -moz-transition: var(--easy-04);
  -o-transition: var(--easy-04);
  -webkit-transition: var(--easy-04);
}


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

.flex-c {
  display: flex;
  justify-content: center;
  align-items: center;
}

.flex-sb {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

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

.grid-20 {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
  align-items: start;
}

.mb-30 {
  margin-bottom: 30px;
}


/* Button */
.button {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 17.5px 24px;
  border-radius: 12px;
  cursor: pointer;
  font-family: var(--ff-montserrat);
  font-weight: 700;
  font-size: 14px;
  line-height: 150%;
  text-transform: uppercase;

  transition: var(--easy);
  -moz-transition: var(--easy);
  -o-transition: var(--easy);
  -webkit-transition: var(--easy);
}

.button-primary {
  background-color: var(--color-blue-300);
  border: 2px solid var(--color-blue-300);
  color: var(--color-default-white);
  box-shadow: 0px 2px 5px 0px rgba(22, 183, 234, 0.40);
}
.button-secondary {
  background-color: var(--color-blue-0);
  border: 2px solid var(--color-blue-0);
  color: var(--color-gray-300);
}



/* Counter */
.counter {
  position: relative;
  padding: 15px 20px;
}
.counter::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  border-radius: 20px;
  border: 1px solid var(--color-gray-200);
  background-color: var(--color-default-white);

  transition: var(--easy);
  -moz-transition: var(--easy);
  -o-transition: var(--easy);
  -webkit-transition: var(--easy);
}
.counter input {
  padding: 5px;
  border: none;
  background-color: transparent;
  font-weight: 600;
  color: var(--color-gray-400);
  text-align: center;
}
.counter__toggle {
  flex-shrink: 0;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0;
  width: 16px;
  height: 16px;
  border: none;
  background-color: transparent;
  color: var(--color-gray-300);
  cursor: pointer;

  transition: var(--easy);
  -moz-transition: var(--easy);
  -o-transition: var(--easy);
  -webkit-transition: var(--easy);
}
.counter__toggle--minus::before,
.counter__toggle--plus::before,
.counter__toggle--plus::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 12px;
  height: 1px;
  border-radius: 2px;
  background-color: var(--color-gray-300);

  transition: var(--easy);
  -moz-transition: var(--easy);
  -o-transition: var(--easy);
  -webkit-transition: var(--easy);
}
.counter__toggle--minus::before,
.counter__toggle--plus::before {
  transform: translateX(-50%) translateY(-50%);
}
.counter__toggle--plus::after {
  transform: translateX(-50%) translateY(-50%) rotate(90deg);
}

/* Text */
h1, .h1 {
  font-weight: 700;
  font-size: 34px;
  line-height: 110%;
}

h2, .h2 {
  font-weight: 700;
  font-size: 28px;
  line-height: 110%;
}

h3, .h3 {
  font-weight: 700;
  font-size: 24px;
  line-height: 110%;
}

h4, .h4 {
  font-weight: 700;
  font-size: 20px;
  line-height: 110%;
}

h5, .h5 {
  font-weight: 700;
  font-size: 18px;
  line-height: 110%;
}

.action-bold-14 {
  font-weight: 700;
  font-size: 14px;
  line-height: 150%;
  text-transform: uppercase;
}

.smallTitle-semiBold-14 {
  font-weight: 600;
  font-size: 14px;
  line-height: 130%;
}

.text-regular-14 {
  font-weight: 400;
  font-size: 14px;
  line-height: 150%;
}

.footnote-regular-12 {
  font-weight: 400;
  font-size: 12px;
  line-height: 130%;
}

b {
  font-weight: 700;
}

.not_found {
  padding: 50px;
  font-weight: 700;
  font-size: 28px;
  line-height: 110%;
  color: var(--color-gray-500);
  text-align: center;
}


/* Container */
.container {
  width: 100%;
  max-width: 1460px;
  margin: 0 auto;
  padding: 0 30px;
}


/* Main grid */
.main-grid {
  display: grid;
  grid-template-columns: 272px auto;
  gap: 5px;
  align-items: start;
  padding: 30px 0;
}
.main-content {
  display: grid;
  grid-template-columns: 1fr;
  gap: 60px;
}


/* Top-wrapper */
.top-wrapper {
  position: relative;
  margin: 0 0 30px;
  padding: 0 0 30px;
}
.top-wrapper::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 200%;
  height: 200%;
  box-shadow: inset 0px 2px 100px 0px rgba(69, 75, 72, 0.15);
  z-index: -1;
}


/* Control */
.control {
  position: relative;
  display: block;
  padding: 4px 0 5px 28px;
  cursor: pointer;

  transition: var(--easy);
  -moz-transition: var(--easy);
  -o-transition: var(--easy);
  -webkit-transition: var(--easy);
}
.control-mark {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 18px;
  height: 18px;
  border: 1px solid var(--color-gray-200);
  background-color: var(--color-default-white);

  transition: var(--easy);
  -moz-transition: var(--easy);
  -o-transition: var(--easy);
  -webkit-transition: var(--easy);
}
.control-mark.checkbox {
  border-radius: 3px;
}
.control-mark.radio {
  border-radius: 50%;
}
.control-mark::after {
  content: "";
  position: absolute;
  top: 50%;
  left: -2.5px;
  transform: translateY(-50%);
  width: 21px;
  height: 21px;
  border-radius: 4px;
  border: 2px solid rgba(55, 200, 250, 0.5);
  background-color: transparent;
  opacity: 0;

  transition: var(--easy);
  -moz-transition: var(--easy);
  -o-transition: var(--easy);
  -webkit-transition: var(--easy);
}
.control-input:checked + .control-mark {
  border: 1px solid var(--color-blue-300);
  background-color: var(--color-blue-300);
}
.control-input:checked + .control-mark.checkbox {
  background-image: url('../img/svg/checked.svg');
  background-repeat: no-repeat;
  background-position: 50%;
}
.control-input:checked + .control-mark.radio:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: var(--color-default-white);
}


/* Hover */
@media (min-width: 1280px) {
  @media (hover: hover) {
    .input-primary:hover {
      background-color: var(--color-blue-100);
      border: 2px solid var(--color-blue-100);
    }
    .input-secondary:hover {
      background-color: var(--color-default-white);
      border: 2px solid var(--color-gray-100);
    }
    .select-wrapper-primary:hover .select-arrow,
    .select-wrapper-secondary:hover .select-arrow {
      background-color: var(--color-blue-200);
      color: var(--color-default-white);
    }
    .button-primary:hover {
      background-color: var(--color-blue-200);
      border: 2px solid var(--color-blue-200);
      box-shadow: 0px 2px 5px 0px rgba(22, 183, 234, 0.40);
    }
    .button-secondary:hover {
      background-color: var(--color-blue-100);
      border: 2px solid var(--color-blue-100);
      color: var(--color-blue-300);
    }
    .control:hover {
      color: var(--color-blue-300);
    }
    .control:hover .control-mark {
      border: 1px solid var(--color-blue-200);
      background-color: var(--color-blue-0);
    }
    .control:hover .control-input:checked + .control-mark {
      border: 1px solid var(--color-blue-200);
      background-color: var(--color-blue-200);
    }
  }
}


/* Focus */
.input-primary:focus {
  background-color: var(--color-blue-100);
  border: 2px solid var(--color-blue-200);
}
.input-secondary:focus {
  background-color: var(--color-default-white);
  border: 2px solid var(--color-blue-100);
}
.select-wrapper:focus::after {
  border: 2px solid var(--color-blue-100);
}
.select-wrapper-primary:focus .select-arrow,
.select-wrapper-secondary:focus .select-arrow {
  background-color: var(--color-blue-200);
  color: var(--color-default-white);
}
.button-primary:focus {
  background-color: var(--color-blue-200);
  border: 2px solid var(--color-blue-200);
  box-shadow: 0px 2px 5px 0px rgba(22, 183, 234, 0.40);
}
.button-secondary:focus {
  background-color: var(--color-blue-100);
  border: 2px solid var(--color-blue-100);
  color: var(--color-blue-300);
}
.control:focus {
  color: var(--color-blue-300);
}
.control:focus .control-mark {
  border: 1px solid var(--color-blue-200);
  background-color: var(--color-default-white);
}
.control:focus .control-mark::after {
  opacity: 1;
}
.control:focus .control-input:checked + .control-mark {
  border: 1px solid var(--color-blue-300);
  background-color: var(--color-blue-300);
}
.control:focus .control-input:checked + .control-mark::after {
  border: 2px solid var(--color-blue-100);
}


/* Active */
.button-primary:active {
  background-color: var(--color-blue-200);
  border: 2px solid var(--color-blue-300);
}
.button-secondary:active {
  background-color: var(--color-blue-100);
  border: 2px solid var(--color-blue-200);
  color: var(--color-blue-300);
}


.mob {
  display: none!important;
}
.desc {
  display: block;
}


@media (max-width: 1023px) {
  .mob {
    display: block!important;
  }
  .desc {
    display: none;
  }


  /* Reboot */
  html {
    font-size: 12px;
  }

  table {
    width: max-content;
  }
  table td {
    font-size: 12px;
  }
  table tr:first-child td,
  table tr.thead td {
    padding: 18px 12px;
  }

  .select-arrow {
    right: 13px;
  }

  /* Utils */
  .overlay {
    top: 68px;
    height: calc(100% - 68px);
  }

  /* Main grid */
  .main-grid {
    grid-template-columns: 1fr;
    padding: 0;
  }
  .main-grid--page {
    padding: 30px 0 0;
  }
  .main-content {
    gap: 40px;
    margin: 0 0 24px;
  }
  .main-grid .leftbar {
    display: none;
  }
  .main-grid .leftbar-inner {
    display: grid;
    grid-template-columns: 1fr;
    gap: 60px;
  }


  /* Button */
  .button {
    padding: 12.5px 18px;
    font-size: 12px;
  }


  /* Container */
  .container {
    padding: 0 14px;
  }


  /* Text */
  h1, .h1 {
    font-weight: 700;
    font-size: 24px;
    line-height: 110%;
  }

  h2, .h2 {
    font-weight: 700;
    font-size: 24px;
    line-height: 110%;
  }

  h3, .h3 {
    font-weight: 700;
    font-size: 20px;
    line-height: 110%;
  }

  h4, .h4 {
    font-weight: 600;
    font-size: 14px;
    line-height: 130%;
  }

  h5, .h5 {
    font-weight: 700;
    font-size: 16px;
    line-height: 110%;
  }

  .action_bold_12 {
    font-weight: 700;
    font-size: 12px;
    line-height: 150%;
  }

  .smallTitle_semibold_12 {
    font-weight: 600;
    font-size: 12px;
    line-height: 130%;
  }

  .text_regular_12 {
    font-weight: 400;
    font-size: 12px;
    line-height: 150%;
  }

  .footnote_regular_10 {
    font-weight: 400;
    font-size: 10px;
    line-height: 130%;
  }
}

/* Page: /page/ustanovka. Isolated additions; all custom classes use the spu- prefix. */
.spu-install {
    --spu-white: var(--color-default-white, #ffffff);
    --spu-ink: var(--color-gray-500, #1b1d1e);
    --spu-text: var(--color-gray-400, #393d3e);
    --spu-muted: var(--color-gray-300, #6e7275);
    --spu-line: var(--color-gray-200, #d8d8d8);
    --spu-soft: var(--color-blue-0, #eff3f5);
    --spu-soft-blue: var(--color-blue-100, #e6f2f7);
    --spu-blue: var(--color-blue-300, #2aa9d5);
    --spu-blue-bright: var(--color-blue-200, #37c8fa);
    --spu-red: var(--color-red-200, #f35151);
    --spu-green: var(--color-green-100, #40d67c);
    width: 100%;
    color: var(--spu-text);
    font-family: var(--ff-montserrat, "Montserrat", Arial, sans-serif);
    font-size: 14px;
    line-height: 1.5;
  }

  .spu-install,
  .spu-install * {
    box-sizing: border-box;
  }

  .spu-install section {
    margin: 0;
    padding: 54px 0;
    scroll-margin-top: 110px;
  }

  .spu-install section + section {
    border-top: 1px solid var(--spu-line);
  }

  .spu-install h2,
  .spu-install h3,
  .spu-install p,
  .spu-install ul,
  .spu-install ol {
    margin-top: 0;
  }

  .spu-install h2 {
    margin-bottom: 18px;
    color: var(--spu-ink);
    font-size: 28px;
    line-height: 1.1;
  }

  .spu-install h3 {
    margin-bottom: 10px;
    color: var(--spu-ink);
    font-size: 24px;
    line-height: 1.1;
  }

  .spu-install p:last-child,
  .spu-install ul:last-child,
  .spu-install ol:last-child {
    margin-bottom: 0;
  }

  .spu-lead {

    color: var(--spu-muted);
    font-size: 14px;
    line-height: 1.5;
  }

  .spu-kicker {
    display: inline-block;
    margin-bottom: 14px;
    padding: 7px 11px;
    border-radius: 8px 2px;
    background: var(--spu-red);
    color: var(--spu-white);
    font-size: 12px;
    font-weight: 700;
    line-height: 1.2;
    text-transform: uppercase;
  }

.spu-install .button {
  width: max-content;
  max-width: 100%;
  min-height: 50px;
  text-align: center;
  text-decoration: none !important;
}

.spu-install a.button-primary {
  color: var(--color-default-white) !important;
}

.spu-install a.button-secondary {
  color: var(--color-gray-300) !important;
}

.spu-install .spu-cta-phone {
  border: 2px solid var(--color-green-100);
  background-color: var(--color-green-100);
  color: var(--color-default-white) !important;
}

  .spu-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 24px;
  }

  .spu-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(280px, 0.92fr);
    gap: 28px;
    align-items: stretch;
    margin-top: 6px;
    padding: 34px;
    border-radius: 12px;
    background: var(--spu-soft-blue);
  }

  .spu-hero__content {
    align-self: center;
  }

  .spu-hero__title {
    margin: 0 0 16px;
    color: var(--spu-ink);
    font-size: 28px;
    font-weight: 700;
    line-height: 1.1;
  }

  .spu-hero__text {
    margin-bottom: 22px;
    font-size: 14px;
    line-height: 1.5;
  }

  .spu-facts {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
  }

  .spu-facts li {
    padding: 13px;
    border: 1px solid rgba(42, 169, 213, 0.24);
    border-radius: 12px;
    background: var(--spu-white);
    color: var(--spu-ink);
    font-size: 14px;
    font-weight: 600;
  }

  .spu-facts strong {
    display: block;
    margin-bottom: 2px;
    color: var(--spu-blue);
    font-size: 18px;
  }

  .spu-media-placeholder {
    display: flex;
    min-height: 330px;
    align-items: center;
    justify-content: center;
    padding: 24px;
    border: 2px dashed rgba(42, 169, 213, 0.45);
    border-radius: 12px;
    background: var(--spu-soft);
    color: var(--spu-muted);
    font-size: 12px;
    font-weight: 600;
    line-height: 1.45;
    text-align: center;
  }

  .spu-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
  }

  .spu-card {
    padding: 22px;
    border: 1px solid var(--spu-line);
    border-radius: 12px;
    background: var(--spu-white);
  }

  .spu-card__num {
    display: inline-flex;
    width: 34px;
    height: 34px;
    align-items: center;
    justify-content: center;
    margin-bottom: 14px;
    border-radius: 12px;
    background: var(--spu-blue);
    color: var(--spu-white);
    font-size: 12px;
    font-weight: 700;
  }

  .spu-card p,
  .spu-card li {
    color: var(--spu-muted);
    font-size: 14px;
  }

  .spu-card ul {
    margin-bottom: 0;
    padding-left: 18px;
  }

  .spu-price-banner {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 24px;
    align-items: center;
    margin: 24px 0;
    padding: 24px;
    border-radius: 12px;
    background: var(--spu-blue);
    color: var(--spu-white);
  }

  .spu-price-banner strong {
    display: block;
    font-size: 28px;
    line-height: 1.1;
  }

  .spu-price-banner span {
    display: block;
    margin-top: 6px;
    opacity: 0.9;
  }

  .spu-price-banner .button {
    border-color: var(--spu-white);
    background: var(--spu-white);
    color: var(--spu-blue) !important;
  }

  .spu-table-wrap {
    width: 100%;
    overflow-x: auto;
    border: 1px solid var(--spu-line);
    border-radius: 12px;
  }

  .spu-table {
    width: 100%;
    min-width: 700px;
    border-collapse: collapse;
    background: var(--spu-white);
  }

  .spu-table th,
  .spu-table td {
    padding: 14px 16px;
    border-bottom: 1px solid var(--spu-line);
    text-align: left;
    vertical-align: top;
  }

  .spu-table th {
    background: var(--spu-soft);
    color: var(--spu-ink);
    font-size: 14px;
  }

  .spu-table td {
    font-size: 14px;
  }

  .spu-table tr:last-child td {
    border-bottom: 0;
  }

  .spu-table__price {
    color: var(--spu-red);
    font-weight: 700;
    white-space: nowrap;
  }

  .spu-note {
    margin-top: 14px;
    padding: 14px 16px;
    border-left: 4px solid var(--spu-blue);
    background: var(--spu-soft-blue);
    color: var(--spu-muted);
    font-size: 14px;
  }

  .spu-checks {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px 24px;
    margin: 22px 0 0;
    padding: 0;
    list-style: none;
  }

  .spu-checks li {
    position: relative;
    min-height: 28px;
    padding-left: 34px;
  }

  .spu-checks li::before {
    content: "✓";
    position: absolute;
    top: 0;
    left: 0;
    display: inline-flex;
    width: 24px;
    height: 24px;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    background: var(--spu-green);
    color: var(--spu-white);
    font-size: 12px;
    font-weight: 700;
  }

  .spu-split {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 0.8fr);
    gap: 28px;
    align-items: start;
  }

  .spu-steps {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin: 22px 0 0;
  }

  .spu-step {
    position: relative;
    min-height: 126px;
    padding: 20px 20px 20px 62px;
    border-radius: 12px;
    background: var(--spu-soft);
  }

  .spu-step__num {
    position: absolute;
    top: 20px;
    left: 18px;
    color: var(--spu-blue);
    font-size: 24px;
    font-weight: 700;
    line-height: 1;
  }

  .spu-step p {
    margin-bottom: 0;
    color: var(--spu-muted);
    font-size: 14px;
  }

  .spu-cases {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
  }

  .spu-case {
    overflow: hidden;
    border: 1px solid var(--spu-line);
    border-radius: 12px;
    background: var(--spu-white);
  }

  .spu-case .spu-media-placeholder {
    min-height: 190px;
    border: 0;
    border-bottom: 1px solid var(--spu-line);
    border-radius: 0;
  }

  .spu-case__body {
    padding: 18px;
  }

  .spu-case__body p {
    color: var(--spu-muted);
    font-size: 14px;
  }

  .spu-faq {
    display: grid;
    gap: 8px;
    margin-top: 22px;
  }

  .spu-faq details {
    border: 1px solid var(--spu-line);
    border-radius: 12px;
    background: var(--spu-white);
  }

  .spu-faq summary {
    position: relative;
    padding: 18px 48px 18px 18px;
    color: var(--spu-ink);
    font-weight: 700;
    cursor: pointer;
    list-style: none;
  }

  .spu-faq summary::-webkit-details-marker {
    display: none;
  }

  .spu-faq summary::after {
    content: "+";
    position: absolute;
    top: 50%;
    right: 18px;
    transform: translateY(-50%);
    color: var(--spu-blue);
    font-size: 24px;
    font-weight: 400;
  }

  .spu-faq details[open] summary::after {
    content: "−";
  }

  .spu-faq__answer {
    padding: 0 18px 18px;
    color: var(--spu-muted);
  }

  .spu-cta {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(260px, 0.7fr);
    gap: 28px;
    align-items: center;
    padding: 30px;
    border-radius: 12px;
    background: var(--spu-soft-blue);
  }

  .spu-cta__panel {
    padding: 22px;
    border: 1px solid rgba(42, 169, 213, 0.3);
    border-radius: 12px;
    background: var(--spu-white);
  }

  .spu-cta__panel strong {
    display: block;
    margin-bottom: 8px;
    color: var(--spu-ink);
    font-size: 18px;
  }

  .spu-cta__panel p {
    margin-bottom: 16px;
    color: var(--spu-muted);
    font-size: 14px;
  }

  .spu-links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 20px;
  }

  .spu-links a {
    display: inline-flex;
    padding: 10px 13px;
    border: 1px solid var(--spu-line);
    border-radius: 12px;
    background: var(--spu-white);
    color: var(--spu-blue) !important;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none !important;
  }

  @media (max-width: 900px) {
    .spu-hero,
    .spu-split,
    .spu-cta {
      grid-template-columns: 1fr;
    }

    .spu-grid,
    .spu-cases {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .spu-hero__media {
      order: -1;
    }

    .spu-media-placeholder {
      min-height: 260px;
    }
  }

  @media (max-width: 640px) {
    .spu-install {
      font-size: 14px;
    }

    .spu-install section {
      padding: 38px 0;
    }

    .spu-install h2,
    .spu-hero__title {
      font-size: 24px;
    }

    .spu-lead,
    .spu-hero__text {
      font-size: 14px;
    }

    .spu-hero,
    .spu-cta {
      padding: 20px;
    }

    .spu-facts,
    .spu-grid,
    .spu-cases,
    .spu-checks,
    .spu-steps {
      grid-template-columns: 1fr;
    }

    .spu-price-banner {
      grid-template-columns: 1fr;
    }

    .spu-actions,
    .spu-actions .button {
      width: 100%;
    }

    .spu-media-placeholder {
      min-height: 210px;
    }
  }

.spu-install .spu-subheading {
  margin-top: 30px;
}

/* Visual refinement v2: counters native page selectors and tightens the layout. */
.page__wrapper .spu-install {
  font-size: 14px;
  line-height: 1.5;
}

.page__wrapper .spu-install > section {
  padding-top: 46px;
  padding-bottom: 46px;
}

.page__wrapper .spu-install > section > .spu-kicker {
  display: none;
}

.page__wrapper .spu-install h2,
.page__wrapper .spu-install h3,
.page__wrapper .spu-install h4 {
  padding-top: 0;
}

.page__wrapper .spu-install .spu-hero {
  padding: 30px;
}

.page__wrapper .spu-install .spu-hero__title {
  font-size: 28px;
  line-height: 1.1;
}

.page__wrapper .spu-install .spu-facts {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin: 0;
  padding: 0;
}

.page__wrapper .spu-install .spu-facts li {
  min-width: 0;
  padding: 12px;
}

.page__wrapper .spu-install .spu-facts li::before {
  content: none;
  display: none;
}

.page__wrapper .spu-install .spu-actions {
  align-items: stretch;
  gap: 10px;
}

.page__wrapper .spu-install .spu-actions .button {
  flex: 0 0 auto;
  width: auto;
  min-height: 48px;
}

.page__wrapper .spu-install .spu-card {
  padding: 20px;
}

.page__wrapper .spu-install .spu-card p,
.page__wrapper .spu-install .spu-card li {
  line-height: 1.5;
}

.page__wrapper .spu-install .spu-checks {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 18px;
  margin: 22px 0 0;
  padding: 0;
}

.page__wrapper .spu-install .spu-checks li {
  min-height: 28px;
  padding: 2px 0 0 34px;
}

.page__wrapper .spu-install .spu-checks li::before {
  content: "✓";
  display: inline-flex;
  background-color: var(--spu-green);
  background-image: none;
}

.page__wrapper .spu-install .spu-faq summary {
  min-height: 54px;
  display: flex;
  align-items: center;
}

.page__wrapper .spu-install .spu-links a {
  min-height: 40px;
  align-items: center;
}

@media (max-width: 1100px) {
  .page__wrapper .spu-install .spu-facts {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .page__wrapper .spu-install {
    font-size: 14px;
  }

  .page__wrapper .spu-install > section {
    padding-top: 36px;
    padding-bottom: 36px;
  }

  .page__wrapper .spu-install .spu-hero {
    padding: 20px;
  }

  .page__wrapper .spu-install .spu-checks {
    grid-template-columns: 1fr;
  }

  .page__wrapper .spu-install .spu-actions .button {
    width: 100%;
  }
}

/* Page images: override generic .page__wrapper img rules. */
.page__wrapper .spu-install .spu-hero__image,
.page__wrapper .spu-install .spu-split__image,
.page__wrapper .spu-install .spu-case__image {
  display: block;
  margin: 0;
  width: 100% !important;
  object-fit: cover;
}

.page__wrapper .spu-install .spu-hero__image {
  height: 100%;
  min-height: 330px;
  border-radius: 12px;
}

.page__wrapper .spu-install .spu-split__image {
  aspect-ratio: 4 / 3;
  height: auto;
  border: 1px solid var(--spu-line);
  border-radius: 12px;
}

.page__wrapper .spu-install .spu-case__image {
  height: 190px;
  border-bottom: 1px solid var(--spu-line);
  border-radius: 0;
}

@media (max-width: 900px) {
  .page__wrapper .spu-install .spu-hero__image {
    min-height: 260px;
  }
}

/* Mobile review v5: based on the iPhone XR full-page screenshot. */
@media (max-width: 640px) {
  .page__wrapper .spu-install > section {
    padding-top: 30px;
    padding-bottom: 30px;
  }

  .page__wrapper .spu-install .spu-hero,
  .page__wrapper .spu-install .spu-cta {
    padding: 18px;
  }

  .page__wrapper .spu-install .spu-hero__media {
    order: initial;
    margin-top: 4px;
  }

  .page__wrapper .spu-install .spu-hero__title {
    font-size: 24px;
    line-height: 1.1;
  }

  .page__wrapper .spu-install h2 {
    font-size: 24px;
    line-height: 1.1;
  }

  .page__wrapper .spu-install h3 {
    font-size: 20px;
    line-height: 1.1;
  }

  .page__wrapper .spu-install .spu-lead,
  .page__wrapper .spu-install .spu-hero__text {
    font-size: 14px;
  }

  .page__wrapper .spu-install .spu-card,
  .page__wrapper .spu-install .spu-step,
  .page__wrapper .spu-install .spu-case__body {
    padding: 16px;
  }

  .page__wrapper .spu-install .spu-step {
    min-height: 0;
    padding-left: 56px;
  }

  .page__wrapper .spu-install .spu-step__num {
    top: 17px;
    left: 16px;
  }

  .page__wrapper .spu-install .spu-price-banner {
    gap: 16px;
    padding: 18px;
  }

  .page__wrapper .spu-install .spu-price-banner strong {
    font-size: 22px;
  }

  .page__wrapper .spu-install .spu-table-wrap {
    max-width: 100%;
    -webkit-overflow-scrolling: touch;
  }

  .page__wrapper .spu-install .spu-table {
    min-width: 620px;
  }

  .page__wrapper .spu-install .spu-table th,
  .page__wrapper .spu-install .spu-table td {
    padding: 11px 12px;
    font-size: 14px;
  }

  .page__wrapper .spu-install .spu-hero__image {
    aspect-ratio: 4 / 3;
    height: auto;
    min-height: 0;
  }

  .page__wrapper .spu-install .spu-split__image {
    aspect-ratio: 4 / 3;
  }

  .page__wrapper .spu-install .spu-case__image {
    aspect-ratio: 3 / 2;
    height: auto;
  }

  .page__wrapper .spu-install .spu-faq summary {
    min-height: 50px;
    padding: 14px 42px 14px 14px;
    font-size: 14px;
  }

  .page__wrapper .spu-install .spu-faq__answer {
    padding: 0 14px 14px;
  }

  .page__wrapper .spu-install .spu-cta__panel {
    padding: 16px;
  }
}

/* Mobile overflow v6: contain wide tables inside the content grid. */
@media (max-width: 640px) {
  .main-grid,
  .main-content,
  .page,
  .page__wrapper,
  .page__wrapper .spu-install,
  .page__wrapper .spu-install > section,
  .page__wrapper .spu-install .spu-hero,
  .page__wrapper .spu-install .spu-split,
  .page__wrapper .spu-install .spu-cta,
  .page__wrapper .spu-install .spu-price-banner,
  .page__wrapper .spu-install .spu-grid,
  .page__wrapper .spu-install .spu-cases {
    min-width: 0;
    max-width: 100%;
  }

  .page__wrapper .spu-install {
    width: 100%;
    overflow: visible;
  }

  .page__wrapper .spu-install .spu-table-wrap {
    display: block;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    overflow-x: scroll !important;
    overflow-y: hidden;
    overscroll-behavior-x: contain;
    -webkit-overflow-scrolling: touch;
    touch-action: pan-x pan-y;
    scrollbar-width: auto;
  }

  .page__wrapper .spu-install .spu-table-wrap::-webkit-scrollbar {
    display: block;
    height: 6px;
  }

  .page__wrapper .spu-install .spu-table-wrap::-webkit-scrollbar-thumb {
    border-radius: 6px;
    background-color: var(--spu-blue);
  }

  .page__wrapper .spu-install .spu-table-wrap::-webkit-scrollbar-track {
    background-color: var(--spu-soft);
  }

  .page__wrapper .spu-install .spu-table {
    width: 620px;
    min-width: 620px;
    max-width: none;
  }

  .page__wrapper .spu-install h2,
  .page__wrapper .spu-install h3,
  .page__wrapper .spu-install p,
  .page__wrapper .spu-install .button {
    max-width: 100%;
    overflow-wrap: anywhere;
  }
}

/* Layout spacing v7: hero actions and section intro rhythm. */
.page__wrapper .spu-install .spu-hero .spu-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.page__wrapper .spu-install .spu-hero .spu-actions .button {
  width: 100%;
  min-width: 0;
  margin: 0 !important;
  padding-right: 14px;
  padding-left: 14px;
  font-size: 14px;
}

.page__wrapper .spu-install .spu-lead + .spu-grid,
.page__wrapper .spu-install .spu-lead + .spu-steps,
.page__wrapper .spu-install .spu-lead + .spu-cases,
.page__wrapper .spu-install .spu-lead + .spu-faq,
.page__wrapper .spu-install .spu-lead + .spu-links,
.page__wrapper .spu-install .spu-lead + .spu-table-wrap {
  margin-top: 24px;
}

@media (max-width: 640px) {
  .page__wrapper .spu-install .spu-hero .spu-actions {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .page__wrapper .spu-install .spu-hero .spu-actions .button {
    width: 100%;
    margin: 0 !important;
  }

  .page__wrapper .spu-install .spu-lead + .spu-grid,
  .page__wrapper .spu-install .spu-lead + .spu-steps,
  .page__wrapper .spu-install .spu-lead + .spu-cases,
  .page__wrapper .spu-install .spu-lead + .spu-faq,
  .page__wrapper .spu-install .spu-lead + .spu-links,
  .page__wrapper .spu-install .spu-lead + .spu-table-wrap {
    margin-top: 18px;
  }
}

/* Hero actions v11: works with every saved HTML version, including those without --hero. */
.page__wrapper .spu-install .spu-hero .spu-actions {
  display: flex !important;
  flex-flow: row nowrap !important;
  gap: 12px !important;
  width: 100%;
}

.page__wrapper .spu-install .spu-hero .spu-actions > .button {
  display: flex;
  flex: 1 1 0 !important;
  width: 0 !important;
  min-width: 0;
  margin: 0 !important;
  padding-right: 12px;
  padding-left: 12px;
  font-size: 14px;
}

@media (max-width: 640px) {
  .page__wrapper .spu-install .spu-hero .spu-actions {
    flex-flow: column nowrap !important;
    gap: 14px !important;
  }

  .page__wrapper .spu-install .spu-hero .spu-actions > .button {
    flex: 0 0 auto !important;
    width: 100% !important;
    min-height: 44px;
    padding-right: 12px;
    padding-left: 12px;
    font-size: 14px;
  }
}

/* Hero buttons v20: direct selector, isolated from legacy action rules. */
.spu-hero-buttons-v18 {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  gap: 12px !important;
  width: 512px !important;
  max-width: 100% !important;
  margin-top: 24px !important;
}

.spu-hero-buttons-v18 > .button {
  flex: 0 0 250px !important;
  width: 250px !important;
  min-width: 250px !important;
  box-sizing: border-box !important;
  margin: 0 !important;
}

/* Related links v25: vertical spacing works at every reported viewport width. */
.spu-related-links-v24 > a {
  margin-bottom: 12px !important;
}

/* Related links v27: native catalog service-button appearance. */
.page__wrapper .spu-install .spu-related-links-v24 > p {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 0;
}

.page__wrapper .spu-install .spu-related-links-v24 > p > a {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-height: 57px;
  margin: 0 !important;
  padding: 17.5px 24px;
  border: 2px solid var(--color-blue-0);
  border-radius: 12px;
  background-color: var(--color-blue-0);
  color: var(--color-gray-300) !important;
  font-family: var(--ff-montserrat);
  font-size: 14px;
  font-weight: 600;
  line-height: 1.3;
  text-align: center;
  text-transform: uppercase;
  transition: var(--easy);
}

@media (min-width: 1280px) and (hover: hover) {
  .page__wrapper .spu-install .spu-related-links-v24 > p > a:hover {
    border-color: var(--color-blue-100);
    background-color: var(--color-blue-100);
    color: var(--color-blue-300) !important;
  }
}

@media (max-width: 640px) {
  .page__wrapper .spu-install .spu-related-links-v24 > p {
    gap: 8px;
  }

  .page__wrapper .spu-install .spu-related-links-v24 > p > a {
    width: 100%;
  }

  .page__wrapper .spu-install .spu-price-nowrap {
    display: block;
    white-space: nowrap;
  }
}

/* media-temp/libs/no-ui-slider/nouislider.min.css */

.noUi-target,.noUi-target *{-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;-ms-touch-action:none;touch-action:none;-ms-user-select:none;-moz-user-select:none;user-select:none;-moz-box-sizing:border-box;box-sizing:border-box}.noUi-target{position:relative}.noUi-base,.noUi-connects{width:100%;height:100%;position:relative;z-index:1}.noUi-connects{overflow:hidden;z-index:0}.noUi-connect,.noUi-origin{will-change:transform;position:absolute;z-index:1;top:0;right:0;height:100%;width:100%;-ms-transform-origin:0 0;-webkit-transform-origin:0 0;-webkit-transform-style:preserve-3d;transform-origin:0 0;transform-style:flat}.noUi-txt-dir-rtl.noUi-horizontal .noUi-origin{left:0;right:auto}.noUi-vertical .noUi-origin{top:-100%;width:0}.noUi-horizontal .noUi-origin{height:0}.noUi-handle{-webkit-backface-visibility:hidden;backface-visibility:hidden;position:absolute}.noUi-touch-area{height:100%;width:100%}.noUi-state-tap .noUi-connect,.noUi-state-tap .noUi-origin{-webkit-transition:transform .3s;transition:transform .3s}.noUi-state-drag *{cursor:inherit!important}.noUi-horizontal{height:18px}.noUi-horizontal .noUi-handle{width:34px;height:28px;right:-17px;top:-6px}.noUi-vertical{width:18px}.noUi-vertical .noUi-handle{width:28px;height:34px;right:-6px;bottom:-17px}.noUi-txt-dir-rtl.noUi-horizontal .noUi-handle{left:-17px;right:auto}.noUi-target{background:#FAFAFA;border-radius:4px;border:1px solid #D3D3D3;box-shadow:inset 0 1px 1px #F0F0F0,0 3px 6px -5px #BBB}.noUi-connects{border-radius:3px}.noUi-connect{background:#3FB8AF}.noUi-draggable{cursor:ew-resize}.noUi-vertical .noUi-draggable{cursor:ns-resize}.noUi-handle{border:1px solid #D9D9D9;border-radius:3px;background:#FFF;cursor:default;box-shadow:inset 0 0 1px #FFF,inset 0 1px 7px #EBEBEB,0 3px 6px -3px #BBB}.noUi-active{box-shadow:inset 0 0 1px #FFF,inset 0 1px 7px #DDD,0 3px 6px -3px #BBB}.noUi-handle:after,.noUi-handle:before{content:"";display:block;position:absolute;height:14px;width:1px;background:#E8E7E6;left:14px;top:6px}.noUi-handle:after{left:17px}.noUi-vertical .noUi-handle:after,.noUi-vertical .noUi-handle:before{width:14px;height:1px;left:6px;top:14px}.noUi-vertical .noUi-handle:after{top:17px}[disabled] .noUi-connect{background:#B8B8B8}[disabled] .noUi-handle,[disabled].noUi-handle,[disabled].noUi-target{cursor:not-allowed}.noUi-pips,.noUi-pips *{-moz-box-sizing:border-box;box-sizing:border-box}.noUi-pips{position:absolute;color:#999}.noUi-value{position:absolute;white-space:nowrap;text-align:center}.noUi-value-sub{color:#ccc;font-size:10px}.noUi-marker{position:absolute;background:#CCC}.noUi-marker-sub{background:#AAA}.noUi-marker-large{background:#AAA}.noUi-pips-horizontal{padding:10px 0;height:80px;top:100%;left:0;width:100%}.noUi-value-horizontal{-webkit-transform:translate(-50%,50%);transform:translate(-50%,50%)}.noUi-rtl .noUi-value-horizontal{-webkit-transform:translate(50%,50%);transform:translate(50%,50%)}.noUi-marker-horizontal.noUi-marker{margin-left:-1px;width:2px;height:5px}.noUi-marker-horizontal.noUi-marker-sub{height:10px}.noUi-marker-horizontal.noUi-marker-large{height:15px}.noUi-pips-vertical{padding:0 10px;height:100%;top:0;left:100%}.noUi-value-vertical{-webkit-transform:translate(0,-50%);transform:translate(0,-50%);padding-left:25px}.noUi-rtl .noUi-value-vertical{-webkit-transform:translate(0,50%);transform:translate(0,50%)}.noUi-marker-vertical.noUi-marker{width:5px;height:2px;margin-top:-1px}.noUi-marker-vertical.noUi-marker-sub{width:10px}.noUi-marker-vertical.noUi-marker-large{width:15px}.noUi-tooltip{display:block;position:absolute;border:1px solid #D9D9D9;border-radius:3px;background:#fff;color:#000;padding:5px;text-align:center;white-space:nowrap}.noUi-horizontal .noUi-tooltip{-webkit-transform:translate(-50%,0);transform:translate(-50%,0);left:50%;bottom:120%}.noUi-vertical .noUi-tooltip{-webkit-transform:translate(0,-50%);transform:translate(0,-50%);top:50%;right:120%}.noUi-horizontal .noUi-origin>.noUi-tooltip{-webkit-transform:translate(50%,0);transform:translate(50%,0);left:auto;bottom:10px}.noUi-vertical .noUi-origin>.noUi-tooltip{-webkit-transform:translate(0,-18px);transform:translate(0,-18px);top:auto;right:28px}

/* media-temp/css/main.css */

/* Header */
.header {
  top: -100px;
  background-color: var(--color-default-white);
  box-shadow: 0px 2px 100px 0px rgba(69, 75, 72, 0.15);
}

.header.header-fixed {
  position: fixed;
  transform: translateY(100px);
  width: 100%;
  z-index: 1000;
}

.header::after {
  content: "";
  position: absolute;
  top: 92px;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: var(--color-gray-100);
}

.header__top-wrapper {
  display: flex;
  align-items: center;
  padding: 18px 0;
}

.header__top-left {
  display: grid;
  grid-template-columns: repeat(2, auto);
  gap: 6px;
  align-items: center;
  margin: 0 40px 0 0;
}

.header__logo-text {
  display: grid;
  grid-template-columns: 1fr;
  gap: 6px;
  justify-items: start;
  margin: -9px 0 0;
  font-weight: 600;
  font-size: 10px;
  line-height: 70%;
}

.header__logo-text span:first-child {
  padding: 4px 4px 5px 4px;
  border-radius: 8px 0;
  background-color: var(--color-blue-300);
  color: var(--color-default-white);
}

.header__logo-text span:last-child {
  margin: 0 0 0 3px;
  color: var(--color-gray-300);
}

.header__search {
  position: relative;
  flex-grow: 1;
  margin: 0 40px 0 0;
}

.header__search input {
  padding: 15px 44px 15px 24px;
  text-align: left;
}

.header__search svg {
  position: absolute;
  top: 50%;
  right: 23px;
  transform: translateY(-50%);
  color: var(--color-gray-300);
}

.header__top-right {
  display: grid;
  grid-template-columns: repeat(3, auto);
  gap: 40px;
  align-items: center;
}

.header__top-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  align-items: center;
}

.header__top-grid a {
  font-weight: 600;
  font-size: 18px;
  line-height: 110%;
  color: var(--color-gray-300);
}

.header__top-grid a.h5 {
  color: var(--color-gray-500);
}

.header__phone svg {
  display: none;
}

.header__contacts {
  display: grid;
  grid-template-columns: repeat(3, 56px);
  gap: 5px;
}

.header__contacts a {
  width: 56px;
  height: 56px;
  border-radius: 12px;
  background-color: var(--color-gray-100);
}

.header__wa {
  color: var(--color-green-100);
}

.header__tg {
  color: var(--color-blue-300);
}

.header__cart {
  color: var(--color-gray-300);
}

.header__mob-menu {
  display: none;
}

.header__bottom {
  top: -100px;
}

.header__bottom.header-fixed {
  position: fixed;
  transform: translateY(100px);
  width: 100%;
  z-index: 1000;
  background-color: var(--color-default-white);
  box-shadow: 0px 2px 100px 0px rgba(69, 75, 72, 0.15);
}

.header__bottom-wrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 8px 0;
}

.header__catalog {
  position: relative;
}

.header__catalog-button {
  padding: 15.5px 24px;
}

.header__catalog-button span:first-child,
.header__catalog-button span:first-child::before,
.header__catalog-button span:first-child::after {
  width: 24px;
  height: 2px;
  background-color: var(--color-default-white);
}

.header__catalog-button span:first-child {
  position: relative;
  margin: 0 14px 0 0;
}

.header__catalog-button span:first-child::before,
.header__catalog-button span:first-child::after {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}

.header__catalog-button span:first-child::before {
  top: 5px;
}

.header__catalog-button span:first-child::after {
  bottom: 5px;
}

.header__catalog-menu {
  position: absolute;
  top: calc(100% + 8px);
  left: 0;
  width: calc(100vw - 60px);
  max-width: 1400px;
  height: auto;
  border-radius: 0px 0px 12px 12px;
  border-top: 1px solid var(--color-gray-100);
  background-color: var(--color-default-white);
  overflow: hidden;
  z-index: 100;

  max-height: 0;
}

.header__catalog-menu.is-open {
  max-height: 1000px;
}

.header__catalog-menu-wrapper {
  position: relative;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 5px;
  align-items: start;
  padding: 30px;
  max-height: calc(100vh - 170px);
  overflow-y: scroll;
}

.header__bottom.header-fixed .header__catalog-menu-wrapper {
  max-height: calc(100vh - 80px);
}

.header__catalog-menu-column {
  display: grid;
  grid-template-columns: 1fr;
  gap: 40px;
}

.header__catalog-menu-column-item {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
}

.header__catalog-menu-column-item span {
  color: var(--color-default-black);
}

.header__catalog-menu-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2px;
  margin: -4px 0 0;
  list-style-type: none;
}

.header__catalog-menu-column-item.people .header__catalog-menu-list,
.header__catalog-menu-column-item.efficiency .header__catalog-menu-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  margin: -4px 0 -6px;
  max-width: 280px;
}

.header__catalog-menu-list li {
  display: flex;
  align-items: center;
}

.header__catalog-menu-column-item.people li,
.header__catalog-menu-column-item.efficiency li {
  margin: 0 20px 2px 0;
}

.header__catalog-menu-list a {
  display: inline-block;
  padding: 4px 0;
}

.header__catalog-menu-hit {
  margin: 0 0 0 7px;
  padding: 4px;
  border-radius: 8px 1px;
  background: linear-gradient(142deg, #88aa9a 0%, #3a83ac 100%);
  font-weight: 600;
  font-size: 10px;
  line-height: 110%;
  text-transform: uppercase;
  color: var(--color-default-white) !important;
}

.header__catalog-menu-banner {
  position: relative;
  padding: 20px;
  border-radius: 12px;
  box-shadow: 0px 10px 30px 0px rgba(121, 195, 220, 0.50);
  overflow: hidden;
}

.leftbar .header__catalog-menu-banner {
  padding: 20px 20px 30px;
}

.header__catalog-menu-banner::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(142deg, #88AA9A 0%, #3A83AC 100%);
  z-index: -2;
}

.header__catalog-menu-banner-image {
  position: absolute;
  bottom: -42px;
  right: -125px;
  width: 354px;
  height: 325px;
  z-index: -1;
}

.leftbar .header__catalog-menu-banner-image,
.rightbar-inner .header__catalog-menu-banner-image {
  bottom: -80px;
  width: 274px;
}

.header__catalog-menu-banner-content {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
  max-width: 167px;
  color: var(--color-default-white);
}

.header__catalog-menu-banner-content a {
  color: inherit !important;
  text-decoration: underline;
}

.leftbar .h4 {
  font-size: 18px;
}

.header__catalog-menu-banner-content img {
  opacity: 70%;
}

.header__catalog-menu-banner-content .button {
  max-width: 129px;
  background-color: var(--color-green-100);
  border: none;
  color: var(--color-default-white);
}

.header__catalog-menu-close {
  position: absolute;
  top: 25px;
  right: 30px;
  padding: 0;
  width: 30px;
  height: 30px;
  border: none;
  background-color: transparent;
  cursor: pointer;
}

.header__catalog-menu-close::before,
.header__catalog-menu-close::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 30px;
  height: 3px;
  border-radius: 2px;
  background-color: var(--color-gray-300);
}

.header__catalog-menu-close::before {
  transform: translateX(-50%) translateY(-50%) rotate(45deg);
}

.header__catalog-menu-close::after {
  transform: translateX(-50%) translateY(-50%) rotate(-45deg);
}

.header__parent {
  position: relative;
  cursor: pointer;
}

.header__parent span {
  margin: 0 7px 0 0;
}

.header__parent svg {
  transform: rotate(90deg);
  color: var(--color-gray-300);
}

.header__parent span,
.header__bottom-wrapper a {
  color: var(--color-gray-500);
}

.header__sub-menu {
  position: absolute;
  top: 100%;
  left: -10px;
  display: none;
  grid-template-columns: 1fr;
  gap: 2px;
  padding: 15px;
  min-width: 110px;
  width: max-content;
  height: auto;
  border-radius: 12px;
  background-color: var(--color-default-white);
  box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.10);
  list-style-type: none;
  z-index: 100;
}

.header__sub-menu a {
  display: inline-block;
  padding: 2px 0;
}

.header__free-label {
  margin: 0 0 0 7px;
  padding: 4px 4px 5px 4px;
  border-radius: 8px 1px;
  background-color: var(--color-red-200);
  font-weight: 600;
  font-size: 10px;
  line-height: 110%;
  color: var(--color-default-white);
}

.icon-max-mobile {
  display: none;
}

/* Breadcrumbs */
.breadcrumbs__wrapper {
  padding: 20px 0;
}

.breadcrumbs__list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  list-style-type: none;
}

.breadcrumbs__list li:not(:last-child) {
  margin: 0 12px 0 0;
}

.breadcrumbs__item a {
  display: inline-block;
  padding: 10px 0;
  color: var(--color-blue-300);
}


/* Banners */
.banners__slide {
  position: relative;
  height: 350px;
  border-radius: 12px;
  overflow: hidden;
}

.banners__content-wrapper {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
  align-content: center;
  padding: 40px 60px;
  width: 50%;
  height: 100%;
  color: var(--color-default-white);
}

.banners__title {
  font-weight: 700;
  font-size: 44px;
  line-height: 110%
}

.banners__image-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--color-blue-100);
  z-index: -1;
}

.banners__image-wrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.banners__slider {
  width: calc(100vw - 337px);
  max-width: 1123px;
}

.banners__slider .button-arrow {
  position: absolute;
  bottom: 20px;
  padding: 0;
  width: 36px;
  height: 36px;
  border-radius: 6px;
  border: 1px solid var(--color-gray-100);
  background-color: var(--color-default-white);
  cursor: pointer;
  z-index: 10;
}

.banners__slider .button-arrow-prev {
  right: 61px;
}

.banners__slider:not(.swiper-initialized) .button-arrow {
  display: none;
}
.banners__slider .button-arrow-prev svg {
  transform: rotate(180deg);
}

.banners__slider .button-arrow-next {
  right: 20px;
}

.banners__content-wrapper a {
  color: inherit !important;
  text-decoration: underline;
}


/* Special */
.special {
  display: block;
  margin: 0 0 0 10px;
  padding: 5px 10px;
  width: max-content;
  border-radius: 12px 2px;
  background-color: var(--color-red-200);
  color: var(--color-default-white);
}


.flex-start {
  display: flex;
  justify-content: start;
  align-items: center;
}


/* Benefits */
.benefits {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  margin: -40px 0 0;
}

.benefits1 {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}

.benefits__item {
  align-content: start;
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
  justify-items: center;
  padding: 20px 40px 30px;
  border-radius: 12px;
  background-color: var(--color-blue-0);
}

.benefits__item-top {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  justify-items: center;
}

.benefits__item-img {
  width: 100px;
  height: 100px;
}

.benefits__item-img svg {
  color: var(--color-blue-300);
}

.benefits__item-top span,
.benefits__item p {
  text-align: center;
  color: var(--color-gray-500);
}

.benefits__item p {
  max-width: 270px;
  line-height: 150%;
}


/* About */
.about {
  display: grid;
  grid-template-columns: 1fr 0.7fr;
  gap: 20px;
  align-items: start;
}

.about__content {
  display: grid;
  grid-template-columns: 1fr;
  gap: 30px;
  justify-items: start;
}

.about__image {
  margin: -12px 0 0 -10px;
}


/* Reasons */
.reasons {
  display: grid;
  grid-template-columns: 1fr;
  gap: 30px;
  margin: 20px 0 0;
  padding: 40px;
  border-radius: 12px;
  background-color: var(--color-blue-0);
}

.reasons__item {
  display: grid;
  grid-template-columns: 0.45fr 1fr;
  gap: 20px;
  padding: 30px 0 29px;
  border-bottom: 1px solid var(--color-gray-200);
}

.reasons__item:last-child {
  padding: 30px 0 0;
  border: none;
}


/* Features */
.features {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 5px;
  list-style-type: none;
}

.features__item {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  justify-items: center;
  align-content: space-between;
  padding: 39px 20px;
  border-radius: 12px;
  background-color: var(--color-blue-300);
  color: var(--color-default-white);
}

.features__item span {
  text-align: center;
}

.features__item svg {
  color: var(--color-blue-100);
}


/* Cities */
.cities__wrapper {
  position: relative;
  display: grid;
  grid-template-columns: 1fr;
  gap: 34px;
}

.cities__wrapper .h2 {
  color: var(--color-gray-500);
}

.cities__lists-wrapper {
  display: grid;
  grid-template-columns: 1fr;
  gap: 30px;
}

.cities__list {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 0.5fr;
  grid-auto-flow: column;
  gap: 0 30px;
  justify-content: space-between;
  list-style-type: none;
}

.cities__list:first-child {
  grid-template-rows: repeat(14, 1fr);
}

.cities__list:last-child {
  grid-template-rows: repeat(5, 1fr);
}

.cities__list a {
  display: inline-block;
  padding: 5px 0;

  transition: var(--easy);
  -moz-transition: var(--easy);
  -o-transition: var(--easy);
  -webkit-transition: var(--easy);
}

.cities__image-wrapper {
  position: absolute;
  top: -30px;
  left: calc(50% - 28px);
  transform: translateX(-50%);
  width: 930px;
  height: 523px;
  z-index: -1;
}


/* Catalog */
.catalog__wrapper {
  display: grid;
  grid-template-columns: 1fr;
  gap: 30px;
}

.catalog h1 {
  color: var(--color-gray-500);
}

.catalog__description,
.catalog__description--top-w-img div {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
}

.catalog__description--top-w-img {
  display: grid;
  grid-template-columns: 0.2fr 1fr;
  gap: 40px;
}

.catalog__description--bottom {
  display: grid;
  grid-template-columns: 1fr;
  gap: 60px;
}

.catalog__description * {
  margin-bottom: 0;
}

.catalog__description h3.h2,
.catalog__description h2 {
  font-weight: 700;
  font-size: 28px;
  line-height: 110%;
  color: var(--color-gray-500);
}

.catalog h2.h3,
.catalog__description h3 {
  font-weight: 700;
  font-size: 24px;
  line-height: 110%;
  color: var(--color-gray-500);
}

.catalog__description h4 {
  font-weight: 700;
  font-size: 20px;
  line-height: 110%;
  color: var(--color-gray-500);
}

.catalog__description h5 {
  font-weight: 700;
  font-size: 18px;
  line-height: 110%;
  color: var(--color-gray-500);
}

.catalog__description-text ul,
.catalog__description-text ol {
  padding: 0 0 0 20px;
}

.catalog__description a {
  color: var(--color-blue-300);

  transition: var(--easy);
  -moz-transition: var(--easy);
  -o-transition: var(--easy);
  -webkit-transition: var(--easy);
}

.catalog__description img {
  border-radius: 12px;
}

.catalog__description-block {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
}

.catalog__description-2col {
  display: grid;
  grid-template-columns: 0.5fr 1fr;
  gap: 40px;
}

.opisalovo {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
}

.opisalovo p {
  float: left;
}

.catalog__categories {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 5px;
}

.catalog__categories-item {
  position: relative;
  display: grid;
  grid-template-columns: 46px auto;
  gap: 10px;
  padding: 10px;
  background-color: var(--color-default-white);
  border-radius: 12px;
  box-shadow: 0px 0px 30px 0px rgba(112, 112, 112, 0.20);
}

.catalog__categories-image-wrapper {
  align-self: center;
  width: 46px;
  height: auto;
  border-radius: 6px;
  overflow: hidden;

  opacity: 1;

  transition: var(--easy-04);
  -moz-transition: var(--easy-04);
  -o-transition: var(--easy-04);
  -webkit-transition: var(--easy-04);
}

.catalog__categories-image-wrapper img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.catalog__categories-content {
  display: grid;
  grid-template-columns: 1fr;
  gap: 5px;

  transform: translateX(0);

  transition: var(--easy-04);
  -moz-transition: var(--easy-04);
  -o-transition: var(--easy-04);
  -webkit-transition: var(--easy-04);
}

.catalog__categories-name {
  transition: var(--easy-04);
  -moz-transition: var(--easy-04);
  -o-transition: var(--easy-04);
  -webkit-transition: var(--easy-04);
}

.catalog__categories-price {
  color: var(--color-gray-300);
}

.catalog__categories-item svg {
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-50%);
  width: 24px;
  height: 24px;
  color: var(--color-blue-300);

  opacity: 0;

  transition: var(--easy-04);
  -moz-transition: var(--easy-04);
  -o-transition: var(--easy-04);
  -webkit-transition: var(--easy-04);
}

.catalog__categories-button {
  display: none;
}

.catalog__tags-wrapper,
.works__tags-wrapper {
  position: relative;
}

.catalog__tags {
  display: flex;
  flex-wrap: wrap;
  list-style-type: none;

  width: calc(100% - 159px);
  max-height: 57px;
  overflow: hidden;
}

.catalog__tags.is-open {
  width: 100%;
  max-height: none;
  overflow: visible;
}

.catalog__tags-wrapper>.catalog__tags-button--open,
.works__tags-wrapper>.works__tags-button--open {
  position: absolute;
  top: 0;
  right: 0;
}

.catalog__tags-item {
  margin: 0 5px 5px 0;
}

.catalog__tags-item a.button {
  padding: 16px 24px;
}

.catalog__tags-item.is-active a.button {
  background-color: var(--color-blue-100);
  border: 2px solid var(--color-blue-200);
  color: var(--color-blue-300);
}

.catalog__tags-button,
.works__tags-button {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 19px 24px;
  cursor: pointer;
  background-color: transparent;
  border: none;
  font-family: var(--ff-montserrat);
  font-weight: 600;
  font-size: 14px;
  line-height: 130%;
  color: var(--color-blue-300);

  transition: var(--easy);
  -moz-transition: var(--easy);
  -o-transition: var(--easy);
  -webkit-transition: var(--easy);
}

.catalog__tags-button--open svg,
.works__tags-button--open svg {
  margin: 0 0 0 10px;
  transform: rotate(90deg);
}

.catalog__tags-button--close svg,
.works__tags-button--close svg {
  margin: 0 0 0 10px;
  transform: rotate(-90deg);
}

.catalog__main-content {
  display: grid;
  grid-template-columns: 1fr;
  gap: 30px;
}

.catalog__offer span {
  color: var(--color-gray-300);
}

.catalog__offer a {
  display: inline-block;
  padding: 0 0 5px;
  color: var(--color-blue-300);
  border-bottom: 1px dashed var(--color-blue-300);
}

.catalog__sorting {
  display: grid;
  grid-template-columns: repeat(3, auto);
  gap: 34px;
  align-items: center;
}

.catalog__sorting-item {
  display: grid;
  grid-template-columns: 24px auto;
  gap: 7px;
  align-items: center;
}

.catalog__sorting-item {
  color: var(--color-gray-300);
}

.catalog__sorting-item.is-active svg {
  color: var(--color-blue-300);
}

.catalog__action-mob {
  display: none;
}

.catalog__main-content-grid {
  display: grid;
  grid-template-columns: 272px auto;
  gap: 5px;
  align-items: start;
  padding: 30px 0;
  border-top: 1px solid var(--color-gray-100);
}

.catalog__main-content-right {
  display: grid;
  grid-template-columns: 1fr;
  gap: 60px;
}

.catalog__listing {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
}

.catalog__listing .listing {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  margin: -0.5px 0;
}

.catalog__pagination {
  display: flex;
  justify-content: center;
  list-style-type: none;
}

.catalog__pagination li:not(:last-child) {
  margin: 0 5px 0 0;
}

.catalog__pagination a {
  padding: 20px;
  width: 56px;
  height: 56px;
  border-radius: 12px;
}

.catalog__pagination a.is-active {
  border: 2px solid var(--color-blue-200);
  background-color: var(--color-blue-100);
  color: var(--color-blue-300);
}

.catalog__pagination-dots {
  position: relative;
  width: 42px;
  height: 56px;
}

.catalog__pagination-dots span {
  position: absolute;
  bottom: 5px;
  left: 50%;
  transform: translateX(-50%);
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background-color: var(--color-gray-100);
}

.catalog__pagination-dots span::before,
.catalog__pagination-dots span::after {
  content: "";
  position: absolute;
  top: 0;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background-color: var(--color-gray-100);
}

.catalog__pagination-dots span::before {
  left: 5px;
}

.catalog__pagination-dots span::after {
  right: 5px;
}

.catalog__form {
  display: none;
}

.catalog__gallery {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}

.catalog__gallery a {
  max-height: 176px;
  border-radius: 12px;
  overflow: hidden;
}

.catalog__gallery img {
  width: 100%;
  height: 100%;
  object-fit: cover;

  transition: var(--easy);
  -moz-transition: var(--easy);
  -o-transition: var(--easy);
  -webkit-transition: var(--easy);
}

.catalog__stages {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  list-style-type: none;
  counter-reset: num;
}

.catalog__stages-item {
  position: relative;
  height: 255px;
  border-radius: 12px;
  overflow: hidden;
}

.catalog__stages-item::before {
  content: counter(num);
  counter-increment: num;
  position: absolute;
  top: 15px;
  left: 57px;
  width: auto;
  height: auto;
  font-family: var(--ff-montserrat);
  font-weight: 700;
  font-size: 28px;
  line-height: 110%;
  color: var(--color-default-white);
}

.catalog__stages-item::after {
  content: "";
  position: absolute;
  top: 15px;
  left: 17px;
  width: 30px;
  height: 30px;
  background-image: url('../img/svg/drop.png');
  background-repeat: no-repeat;
}

.catalog__stages-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.catalog__stages-item-content {
  position: absolute;
  bottom: 0;
  left: 0;
  padding: 15px 20px;
  width: 100%;
  height: auto;
  min-height: 66px;
  border-radius: 12px;
  background-color: rgba(112, 112, 112, 0.8);
  color: var(--color-default-white);
}

.catalog__stages-item-content p {
  max-width: 213px;
}

.catalog__stages-item-time {
  padding: 5px 12px;
  border-radius: 12px;
  background-color: var(--color-default-white);
  color: var(--color-gray-400);
}

.catalog__stages-item-time svg {
  padding: 2px 0 0 2px;
  margin: 0 7px 0 0;
  color: var(--color-blue-300);
}

.catalog__banner {
  position: relative;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  padding: 30px 30px 27px;
  border-radius: 12px;
  overflow: hidden;
}

.catalog__banner::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--color-blue-0);
  z-index: -2;
}

.catalog__banner-image {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}

.catalog__banner-left,
.catalog__banner-right {
  display: grid;
  grid-template-columns: 1fr;
  gap: 30px;
}

.catalog__banner-left h3 {
  max-width: 375px;
}

.catalog__banner-left .button {
  padding: 17.5px 20px;
  max-width: 335px;
  color: var(--color-default-white) !important;
}

.catalog__banner-right ul {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px 60px;
  padding: 5px 0 0;
  list-style-type: none;
}

.catalog__banner-right p {
  color: var(--color-gray-300);
}

.catalog__banner-right a {
  border-bottom: 1px dashed;
}

.catalog__we-work-wrapper {
  border-radius: 12px;
  border: 1px solid var(--color-gray-100);
  overflow: hidden;
}

.catalog__we-work {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin: -0.5px;
  list-style-type: none;
  counter-reset: num;
}

.catalog__we-work-item {
  position: relative;
  padding: 20px 20px 20px 106px;
  border: 0.5px solid var(--color-gray-100);
}

.catalog__we-work-item::before {
  content: counter(num);
  counter-increment: num;
  position: absolute;
  top: 50%;
  left: 20px;
  transform: translateY(-50%);
  display: flex;
  justify-content: center;
  align-items: center;
  width: 70px;
  height: 70px;
  border-radius: 12px;
  background-color: var(--color-blue-0);
  font-family: var(--ff-montserrat);
  font-weight: 400;
  font-size: 64px;
  line-height: 110%;
  color: var(--color-gray-300);
}

.catalog__we-work-content {
  display: grid;
  grid-template-columns: 1fr;
  gap: 5px;
}

.catalog__services {
  margin: 3px 0 -4px;
}

.catalog__services-list-wrapper {
  position: relative;
}

.catalog__we-work-item .smallTitle-semiBold-14 {
  color: var(--color-blue-300);
}

.catalog__services-list {
  display: flex;
  flex-wrap: wrap;
  list-style-type: none;
  /* max-height: 183px; */
  overflow: hidden;
}

.catalog__services-list.is-open {
  max-height: none;
  overflow: visible;
}

.catalog__services-list li {
  margin: 0 6px 6px 0;
}

.catalog__services-list li a {
  padding: 16.5px 22px;
  color: var(--color-gray-300);
  text-transform: none;
}

.catalog__services .button-primary {
  margin: -2px 0 0;
  padding: 15.5px 24px;
}

.catalog table td:nth-child(2) {
  width: 151px;
  text-align: center;
}

.catalog table td:last-child {
  width: 280px;
  text-align: right;
  border-right: none;
  font-weight: 600;
  line-height: 130%;
}

.catalog table a {
  display: block;
  margin: -3px 0 0;
  font-weight: 600;
  line-height: 130%
}

.catalog__selection {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1.21fr;
  gap: 5px;
}

.catalog__selection-column {
  display: grid;
  grid-template-columns: 1fr;
  gap: 5px;
}

.catalog__selection-block {
  position: relative;
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
  align-content: start;
  padding: 20px 20px 15px;
  border-radius: 12px;
  overflow: hidden;
}

.catalog__selection-block::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--color-blue-0);
  z-index: -10;
}

.catalog__selection-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1px;
  list-style-type: none;
}

.catalog__selection-block .prices-input {
  grid-template-columns: 1fr 18px 1fr;
  gap: 12px;
}

.catalog__selection-list.with-select {
  margin: 6px 0 0;
  gap: 10px;
}

.catalog__selection-block .select-wrapper {
  width: 90px;
}

.catalog__selection-button {
  margin: 0 auto;
  padding: 13.5px 24px;
  max-width: 252px;
}

.catalog__selection-button svg {
  margin: 0 10px 0 0;
}


/* Advantages */
.advantages {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
}

.advantages h2 {
  color: var(--color-gray-500);
}

.advantages__list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  list-style-type: none;
}

.advantages__item {
  position: relative;
  min-height: 200px;
  cursor: pointer;
}

.advantages__item-container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  min-height: 100%;
  max-height: 200px;
  border-right: 1px solid var(--color-blue-100);
  border-bottom: 1px solid var(--color-blue-100);
  background-color: var(--color-default-white);
  overflow: hidden;
}

.advantages__item:nth-child(1) .advantages__item-container,
.advantages__item:nth-child(2) .advantages__item-container,
.advantages__item:nth-child(3) .advantages__item-container,
.advantages__item:nth-child(4) .advantages__item-container {
  border-top: 1px solid var(--color-blue-100);
}

.advantages__item:nth-child(1) .advantages__item-container,
.advantages__item:nth-child(5) .advantages__item-container {
  border-left: 1px solid var(--color-blue-100);
}

.advantages__item:nth-child(1) .advantages__item-container {
  border-radius: 12px 0 0 0;
}

.advantages__item:nth-child(4) .advantages__item-container {
  border-radius: 0 12px 0 0;
}

.advantages__item:nth-child(5) .advantages__item-container {
  border-radius: 0 0 0 12px;
}

.advantages__item:nth-child(8) .advantages__item-container {
  border-radius: 0 0 12px 0;
}

.advantages__item-visible {
  display: grid;
  grid-template-columns: 1fr;
  gap: 17px;
  justify-items: center;
  padding: 20px;
}

.advantages__item-image {
  width: 100px;
  height: 100px;
  padding: 20px;
  border-radius: 12px;
  background-color: var(--color-blue-0);
  color: var(--color-gray-300);
}

.advantages__item-visible span {
  color: var(--color-gray-500);
  text-align: center;
}

.advantages__item-invisible {
  max-height: 0;
  overflow: hidden;
}

.advantages__item-invisible p {
  padding: 0 20px 20px;
  text-align: center;
}


/* Mini-card */
.mini-card {
  position: relative;
  border: 1px solid var(--color-gray-100);
}

.mini-card::before,
.mini-card::after {
  position: absolute;
  top: 0;
  width: 0.5px;
  height: 100%;
  background-color: var(--color-blue-200);
}

.mini-card::before {
  left: -1px;
}

.mini-card::after {
  right: 0;
}

.mini-card:nth-child(4n-3)::before,
.mini-card:nth-child(4n)::after {
  content: none !important;
}

.mini-card__link {
  display: flex;
  flex-direction: column;
  padding: 20px;
  height: 100%;
  cursor: pointer;
}

.mini-card__image-wrapper {
  position: relative;
  margin: 0 0 10px;
  width: 100%;
  height: auto;
  max-height: 168px;
  overflow: hidden;
}

.mini-card__image-wrapper img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.mini-card__description {
  position: absolute;
  bottom: 0;
  left: 0;
  display: flex;
  align-items: center;
  padding: 10px;
  width: 100%;
  height: auto;
  min-height: 67px;
  border-radius: 12px 12px 0px 0px;
  background: rgba(112, 112, 112, 0.60);
  color: var(--color-default-white);

  transform: translateY(100%);
}

.mini-card__content {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
}

.mini-card__title {
  flex-grow: 1;
  margin: 0 0 20px;
}

.mini-card__specifications {
  margin: 0 0 20px;
  list-style-type: none;
  color: var(--color-gray-300);
}

.mini-card__specifications-item {
  position: relative;
  display: grid;
  grid-template-columns: repeat(2, auto);
  justify-content: space-between;
}

.mini-card__specifications-item::after {
  content: "";
  position: absolute;
  bottom: 4px;
  left: 0;
  width: 100%;
  height: 100%;
  border-bottom: 1px dashed var(--color-gray-200);
  z-index: -1;
}

.mini-card__specifications-item:not(:last-child) {
  margin: 0 0 7px;
}

.mini-card__specifications-item-left {
  position: relative;
  padding: 0 5px 0 0;
  background-color: var(--color-default-white);
}

.mini-card__specifications-item-right {
  position: relative;
  padding: 0 0 0 3px;
  background-color: var(--color-default-white);
  text-align: right;
}

.mini-card__price-block {
  flex-grow: 1;
  align-items: flex-end;
  display: grid;
  grid-template-columns: 1fr;
  gap: 6px;
}

.mini-card__price-actual {
  font-weight: 700;
  font-size: 20px;
  line-height: 110%;
  color: var(--color-gray-500);
}

.mini-card__price-block:has(.mini-card__price-old) .mini-card__price-old {
  order: 1;
  font-weight: 700;
  font-size: 14px;
  line-height: 110%;
  color: var(--color-gray-300);
  text-decoration: line-through;
}

.mini-card__price-block:has(.mini-card__price-old) .mini-card__price-actual {
  order: 2;
  color: var(--color-red-200);
}

.mini-card__art-block {
  display: grid;
  grid-template-columns: 1fr;
  gap: 4px;
}

.mini-card__art {
  color: var(--color-gray-300);
}

.mini-card__sale {
  padding: 4px 4px 5px 4px;
  border-radius: 8px 1px;
  background-color: var(--color-red-200);
  font-weight: 600;
  font-size: 10px;
  line-height: 110%;
  color: var(--color-default-white);
}

.mini-card__buttons {
  display: none;
  position: absolute;
  top: calc(100% - 1px);
  left: -1px;
  grid-template-columns: 1fr;
  gap: 5px;
  padding: 0 20px 20px;
  width: calc(100% + 1.5px);
  height: auto;
  border-radius: 0 0 12px 12px;
  border: 1px solid var(--color-blue-200);
  border-top: none;
  background-color: var(--color-default-white);
  z-index: 10;
}

.mini-card__buttons .button-primary svg {
  margin: 0 10px 0 0;
}

.mini-card__buttons .button-primary svg:nth-child(2),
.mini-card__buttons .button-primary.in-cart svg:nth-child(1),
.mini-card__buttons .button-primary.in-cart span {
  display: none;
}

.mini-card__buttons .button-primary.in-cart svg:nth-child(2) {
  display: flex;
}

.mini-card__buttons .button-primary.in-cart::after {
  content: 'В корзине';
}

.mini-card__button-mob {
  display: none;
}


/* Listing */
.listing .mini-card {
  border: 0.5px solid var(--color-gray-100);
}

.listing .mini-card:nth-child(-n+4) {
  border-top: 1px solid var(--color-gray-100);
}

.listing .mini-card:not(:nth-child(-n+4))::after {
  border-top: 0.5px solid var(--color-blue-200);
}

.listing .mini-card:nth-last-child(-n+4) {
  border-bottom: 1px solid var(--color-gray-100);
}

.listing .mini-card:nth-child(4n-3) {
  border-left: 1px solid var(--color-gray-100);
}

.listing .mini-card:nth-child(4n) {
  border-right: 1px solid var(--color-gray-100);
}

.listing .mini-card:nth-child(4n) .mini-card__buttons {
  width: calc(100% + 2px);
}

.listing .mini-card:nth-child(1) {
  border-radius: 12px 0 0 0;
}

.listing .mini-card:nth-child(4) {
  border-radius: 0 12px 0 0;
}

.listing .mini-card:last-child {
  border-radius: 0 0 12px 0;
}

.listing .mini-card.last-left {
  border-radius: 0 0 0 12px;
}

.listing .mini-card.last-left:last-child {
  border-radius: 0 0 12px 12px;
}


/* Filter */
.filter,
.filter__boxes-wrapper {
  display: grid;
  grid-template-columns: 1fr;
  gap: 30px;
}

.se_filter_box,
.catalog__selection-people {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
}

.se_filter_box:not(:last-child) {
  padding: 0 0 38px;
  border-bottom: 1px solid var(--color-gray-200);
}

.filter__title {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
}

.filter__title .h5 {
  color: var(--color-gray-500);
}

.filter__title .footnote-regular-12 {
  color: var(--color-gray-300);
}

.prices-inputs,
.catalog__selection-people-inputs {
  display: grid;
  grid-template-columns: 1fr 26px 1fr;
  gap: 20px;
  margin: 0 0 29px;
}

.prices-inputs input,
.catalog__selection-people-inputs input {
  padding: 15px 20px;
}

.filter__dash {
  position: relative;
}

.filter__dash::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 100%;
  height: 1px;
  background-color: var(--color-gray-200);
}

.ui-slider {
  margin: 0 0 0 9px;
  width: 92%;
  height: 2px;
  background-color: var(--color-gray-200);
  border: none;
}

.ui-slider-range {
  background-color: var(--color-blue-200);
}

.ui-widget-content .ui-state-default {
  margin-top: -5px;
  width: 20px;
  height: 20px;
  background-color: var(--color-default-white);
  border-radius: 50%;
  border: 2px solid var(--color-blue-200);
  cursor: pointer;
}

.filter .noUi-target,
#people_range.noUi-target {
  margin: 0 0 0 9px;
  width: 92%;
  height: 2px;
  border: none;
  border-radius: 0;
  background-color: var(--color-gray-200);
  box-shadow: none;
}

.filter .noUi-horizontal,
#people_range.noUi-horizontal {
  height: 2px;
}

.filter .noUi-connects,
#people_range .noUi-connects {
  border-radius: 0;
}

.filter .noUi-connect,
#people_range .noUi-connect {
  background-color: var(--color-blue-200);
}

.filter .noUi-handle,
#people_range .noUi-handle {
  width: 20px;
  height: 20px;
  right: -10px;
  top: -9px;
  border: 2px solid var(--color-blue-200);
  border-radius: 50%;
  background-color: var(--color-default-white);
  box-shadow: none;
  cursor: pointer;
}

.filter .noUi-handle::before,
.filter .noUi-handle::after,
#people_range .noUi-handle::before,
#people_range .noUi-handle::after {
  display: none;
}

.filter .noUi-handle:hover,
.filter .noUi-handle:focus,
#people_range .noUi-handle:hover,
#people_range .noUi-handle:focus {
  background-color: var(--color-default-white);
  border-color: var(--color-blue-200);
}

.filter .noUi-active,
#people_range .noUi-active {
  box-shadow: none;
}

.filter .noUi-target>.ui-slider-range,
.filter .noUi-target>.ui-slider-handle,
#people_range.noUi-target>.ui-slider-range,
#people_range.noUi-target>.ui-slider-handle {
  display: none !important;
}

.many_items {
  display: grid;
  grid-template-columns: 1fr;
}

.filter .item_filter:nth-child(n+7) {
  display: none;
}

.many_items.is-open .item_filter:nth-child(n+7) {
  display: block;
}

.item_filter {
  position: relative;
  padding: 3px 0 3px 28px;
  cursor: pointer;

  transition: var(--easy);
  -moz-transition: var(--easy);
  -o-transition: var(--easy);
  -webkit-transition: var(--easy);
}

.item_filter::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 18px;
  height: 18px;
  border-radius: 3px;
  border: 1px solid var(--color-gray-200);
  background-color: var(--color-default-white);

  transition: var(--easy);
  -moz-transition: var(--easy);
  -o-transition: var(--easy);
  -webkit-transition: var(--easy);
}

.item_filter::after {
  content: "";
  position: absolute;
  top: 50%;
  left: -1.5px;
  transform: translateY(-50%);
  width: 21px;
  height: 21px;
  border-radius: 4px;
  border: 2px solid rgba(55, 200, 250, 0.5);
  background-color: transparent;
  opacity: 0;

  transition: var(--easy);
  -moz-transition: var(--easy);
  -o-transition: var(--easy);
  -webkit-transition: var(--easy);
}

.item_filter.checked_item::before {
  border: 1px solid var(--color-blue-300);
  background-color: var(--color-blue-300);
  background-image: url('../img/svg/checked.svg');
  background-repeat: no-repeat;
  background-position: 50%;
}

.show-more-items {
  position: relative;
  padding: 0 0 3px;
  width: max-content;
  border: none;
  background-color: transparent;
  font-family: var(--ff-montserrat);
  color: var(--color-blue-300);
  border-bottom: 1px dashed var(--color-blue-300);
  cursor: pointer;
}

.show-more-items.is-open span {
  display: none;
}

.show-more-items.is-open::after {
  content: "Показать меньше";
}

.filter__button-close,
.filter__button-apply {
  display: none;
}


/* Core-slider */
.core-slider-wrapper {
  margin: 0 auto;
  max-width: calc(100vw - 60px);
}

.core-slider.slick-initialized {
  position: relative;
  display: flex;
  gap: 0;
}

.core-slider-item {
  transition: var(--easy);
  -moz-transition: var(--easy);
  -o-transition: var(--easy);
  -webkit-transition: var(--easy);
}

.core-slider-item::after {
  content: none !important;
}

.core-slider.slick-initialized .core-slider-item:not(:last-child) {
  margin: 0 5px 0 0;
}

.core-slider.slick-initialized .button-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  padding: 0;
  width: 36px;
  height: 36px;
  border-radius: 6px;
  border: 1px solid var(--color-gray-100);
  background-color: var(--color-default-white);
  cursor: pointer;
  z-index: 10;
}

.core-slider.slick-initialized .button-arrow-prev {
  left: -18px;
}

.core-slider.slick-initialized .button-arrow-next {
  right: -18px;
}

.core-slider.slick-initialized .button-arrow svg {
  color: var(--color-gray-300);
}

.core-slider.slick-initialized .button-arrow-prev svg {
  transform: rotate(180deg);
}


/* Viewed */
.viewed__wrapper {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
  padding: 28px 0;
}

.viewed__wrapper .h2 {
  color: var(--color-gray-500);
}

.viewed__slider {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 5px;
}

.viewed__slider.swiper-initialized {
  display: block;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  margin: 0;
  overflow: hidden;
}

.viewed__slider-box {
  position: relative;
}

.viewed__slider-box>.button-arrow,
.viewed__slider.swiper-initialized .button-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  padding: 0;
  width: 36px;
  height: 36px;
  border-radius: 6px;
  border: 1px solid var(--color-gray-100);
  background-color: var(--color-default-white);
  cursor: pointer;
  z-index: 10;
}

.viewed__slider.swiper-initialized .swiper-wrapper {
  padding: 0;
  max-width: none;
}

.viewed__slider.swiper-initialized .mini-card {
  box-sizing: border-box;
  min-width: 0;
  height: auto;
}

.viewed__slider-box>.button-arrow-prev,
.viewed__slider.swiper-initialized .button-arrow-prev {
  left: -18px;
}

.viewed__slider-box>.button-arrow-next,
.viewed__slider.swiper-initialized .button-arrow-next {
  right: -18px;
}

.viewed__slider-box>.button-arrow svg,
.viewed__slider.swiper-initialized .button-arrow svg {
  color: var(--color-gray-300);
}

.viewed__slider-box>.button-arrow-prev svg,
.viewed__slider.swiper-initialized .button-arrow-prev svg {
  transform: rotate(180deg);
}

.viewed__slider .mini-card__description,
.viewed__slider .mini-card__specifications,
.viewed__slider .mini-card__art-block,
.viewed__slider .mini-card__sale {
  display: none;
}

.viewed__slider .mini-card__buttons {
  display: none !important;
}

.viewed__slider .mini-card {
  padding: 16px;
  border-radius: 12px;
}

.viewed__slider .mini-card__link {
  display: grid;
  grid-template-columns: 100px auto;
  gap: 10px;
  align-items: center;
  padding: 0;
}

.viewed__slider .mini-card__image-wrapper {
  margin: 0;
}

.viewed__slider .mini-card__title {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin: 0 0 5px;
  font-weight: 400;
  font-size: 12px;
  line-height: 130%;
}

.viewed__slider .mini-card__price-block {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.viewed__slider .mini-card__price-actual {
  order: 2;
  font-weight: 700;
  font-size: 14px;
  line-height: 150%;
}

.viewed__slider .mini-card__price-block:has(.mini-card__price-old) .mini-card__price-actual {
  order: 1;
}

.viewed__slider .mini-card__price-block:has(.mini-card__price-old) .mini-card__price-old {
  order: 2;
  font-weight: 400;
  font-size: 12px;
  line-height: 130%;
}


/* Similar */
.similar {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
}

.similar h2 {
  color: var(--color-gray-500);
}

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

.similar__list .mini-card {
  border-left: 0.5px solid var(--color-gray-100);
  border-right: 0.5px solid var(--color-gray-100);
}

.similar__list .mini-card:first-child {
  border-radius: 12px 0 0 12px;
  border-left: 1px solid var(--color-gray-100);
}

.similar__list .mini-card:last-child {
  border-radius: 0 12px 12px 0;
  border-right: 1px solid var(--color-gray-100);
}

.similar__list .mini-card:first-child::after {
  border-left: none;
}

.similar__list .mini-card:last-child::after {
  border-right: none;
}

.similar__list .mini-card:last-child .mini-card__buttons {
  width: calc(100% + 2px);
}

.similar__list .mini-card__link {
  padding: 20px;
}


/* Reviews */
.reviews {
  padding: 30px 0;
}

.reviews__wrapper {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
}

.reviews__wrapper h2 {
  color: var(--color-gray-500);
}

.reviews__slider:not(.swiper-initialized) .swiper-wrapper {
  position: relative;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 20px;
  align-items: start;
  padding: 20px 0;
}

.reviews__slider-box:not(:has(.swiper-initialized)) .button-arrow {
  display: none;
}

.reviews__slider-box {
  position: relative;
}

.reviews__slider-box::after {
  content: "";
  position: absolute;
  top: 0;
  left: -30px;
  width: calc(100% + 60px);
  height: 100%;
  background-color: var(--color-blue-0);
  z-index: -1;
}

.reviews__slide {
  display: grid !important;
  grid-template-columns: 1fr;
  gap: 20px;
  padding: 20px;
  border-radius: 12px;
  background-color: var(--color-default-white);
}

.reviews__slide-top,
.reviews__slide-bottom {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
}

.reviews__slide-top {
  position: relative;
}

.reviews__slide-top::after {
  content: "";
  position: absolute;
  bottom: -10px;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: var(--color-gray-100);
}

.reviews__slide-top .flex-sb {
  align-items: flex-start;
}

.reviews__slide-top .smallTitle-semiBold-14 {
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.reviews__slide-stars svg {
  color: var(--color-gray-200);
}

.reviews__slide-stars .reviews__slide-star-full {
  color: #ff9900;
  ;
}

.reviews__slide-bottom span {
  min-height: 36px;
}

.reviews__slide-bottom p {
  display: -webkit-box;
  -webkit-line-clamp: 6;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.reviews__slide.is-open .reviews__slide-top .smallTitle-semiBold-14,
.reviews__slide.is-open .reviews__slide-bottom p {
  display: block;
  overflow: visible;
}

.reviews__slide-button {
  position: relative;
  display: block;
  padding: 0;
  border: none;
  background-color: transparent;
  color: var(--color-blue-300);
  text-transform: none;
  text-decoration: underline;
  text-align: left;
}

.reviews__slide.is-open .reviews__slide-button span {
  display: none;
}

.reviews__slide.is-open .reviews__slide-button::after {
  content: "Скрыть";
}


/* Brands */
.brands {
  padding: 30px 0;
}

.brands__wrapper {
  position: relative;
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
}

.brands__slider-wrapper .h2 {
  color: var(--color-gray-500);
}

.brands__item {
  display: grid !important;
  grid-template-columns: 1fr;
  gap: 16px;
  justify-items: center;
  padding: 20px;
  border-radius: 12px;
  border: 1px solid var(--color-blue-100);
  cursor: pointer;
}

.brands__item-content {
  display: grid;
  grid-template-columns: 1fr;
  gap: 5px;
  justify-items: center;
}

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

.brands__item-content .footnote-regular-12 {
  color: var(--color-grey-300);
}

.brands__item-content .smallTitle-semiBold-14 {
  color: var(--color-blue-300);
}

.brands__slider.swiper-initialized {
  display: block;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  margin: 0;
  overflow: hidden;
}

.brands__slider-box {
  position: relative;
}

.brands__slider-box>.button-arrow,
.brands__slider.swiper-initialized .button-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  padding: 0;
  width: 36px;
  height: 36px;
  border-radius: 6px;
  border: 1px solid var(--color-gray-100);
  background-color: var(--color-default-white);
  cursor: pointer;
  z-index: 10;
}

.brands__slider.swiper-initialized .brands__item {
  box-sizing: border-box;
  min-width: 0;
  height: auto;
}

.brands__slider-box>.button-arrow-prev,
.brands__slider.swiper-initialized .button-arrow-prev {
  left: -18px;
}

.brands__slider-box>.button-arrow-next,
.brands__slider.swiper-initialized .button-arrow-next {
  right: -18px;
}

.brands__slider-box>.button-arrow svg,
.brands__slider.swiper-initialized .button-arrow svg {
  color: var(--color-gray-300);
}

.brands__slider-box>.button-arrow-prev svg,
.brands__slider.swiper-initialized .button-arrow-prev svg {
  transform: rotate(180deg);
}



/* Leftbar & Rightbar */
.leftbar-inner {
  display: grid;
  grid-template-columns: 1fr;
  gap: 60px;
  padding: 0 30px 0 0;
}

.leftbar.is-affixed .leftbar-inner {
  margin: -60px 0 0;
}

.bar__item {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
}

.bar__item .h3 {
  color: var(--color-gray-500);
}

.bar-catalog {
  display: grid;
  grid-template-columns: 1fr;
  gap: 5px;
  list-style-type: none;
}

.bar-catalog__item {
  border-radius: 12px;
  border: 1px solid var(--color-gray-100);
  overflow: hidden;
}

.bar-catalog__item-top {
  display: grid;
  grid-template-columns: 30px auto 14px;
  gap: 16px;
  align-items: center;
  padding: 11px 17px 11px 12px;
  color: var(--color-gray-500);
  cursor: pointer;
}

.bar-catalog__item-top img {
  width: 30px;
  height: 30px;
  object-fit: contain;
}

.bar-catalog__item.is-active .bar-catalog__item-top,
.bar-catalog__item.is-active svg {
  color: var(--color-blue-300);
}

.bar-catalog__item-top svg {
  transform: rotate(90deg);
  color: var(--color-gray-300);
}

.bar-catalog__item.is-active svg {
  transform: rotate(-90deg);
}

.bar-catalog [data-accordion="accordion-bottom"],
.bar-catalog__item-bottom {
  overflow: hidden;
  max-height: 0;
  transition: max-height 0.3s ease;
}

.bar-catalog__item.is-active [data-accordion="accordion-bottom"],
.bar-catalog__item.is-active .bar-catalog__item-bottom {
  max-height: 1000px;
}

.bar-catalog__item-list {
  display: grid;
  grid-template-columns: 1fr;
  padding: 5px 17px 11px 14px;
  list-style-type: none;
  background-color: var(--color-gray-100);
}

.bar-catalog__item-list li {
  position: relative;
}

.bar-catalog__item-list li::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: var(--color-gray-200);
}

.bar-catalog__item-list li:first-child {
  font-weight: 700;
}

.bar-catalog__item-list a {
  display: inline-block;
  padding: 8px 0;

  transition: var(--easy);
  -moz-transition: var(--easy);
  -o-transition: var(--easy);
  -webkit-transition: var(--easy);
}

.bar-blog {
  display: grid;
  grid-template-columns: 1fr;
  gap: 5px;
  list-style-type: none;
}

.bar-blog__item {
  display: grid;
  grid-template-columns: 50px auto;
  gap: 10px;
  align-items: center;
  padding: 8px 10px;
  border-radius: 12px;
  border: 1px solid var(--color-gray-100);
  cursor: pointer;
}

.bar-blog__image-wrapper {
  width: 50px;
  height: 50px;
  border-radius: 6px;
  overflow: hidden;
}

.bar-blog__image-wrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.bar-blog__item a {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.bar__form {
  position: relative;
  padding: 20px;
  border-radius: 12px;
  background-image: image-set(url("../img/content/drop-form.webp") type("image/webp"),
      url("../img/content/drop-form.png") type("image/png"));
  background-repeat: no-repeat;
  background-position: 100% 100%;
  box-shadow: 0px 10px 30px 0px rgba(121, 195, 220, 0.50);
  color: var(--color-default-white);
  overflow: hidden;
}

.bar__form::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(142deg, #88aa9a 0%, #3a83ac 100%);
  z-index: -1;
}

.bar__form .form_all_info {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
}

.bar__form .form_tpl_h3 {
  display: none;
}

.bar__form .form_tpl_pols {
  display: grid;
  grid-template-columns: 1fr;
  gap: 5px;
}

.bar__form input {
  text-align: left;
}

.bar__form .button {
  width: 100%;
  background-color: var(--color-green-100);
  border: none;
  color: var(--color-default-white);
}

.bar__form .p_o {
  font-weight: 400;
  font-size: 10px;
  line-height: 120%;
  opacity: 40%;
}

.bar__form .p_o,
.bar__form .p_o a {
  color: var(--color-blue-0);
}


/* Good */
.good {
  margin: 0 0 22px;
}

.good__main-content-grid {
  display: grid;
  grid-template-columns: auto 272px;
  gap: 60px;
  align-items: start;
}

.good__wrapper {
  display: grid;
  grid-template-columns: 1fr;
  gap: 60px;
}

.good__top {
  display: grid;
  grid-template-columns: auto 328px;
  gap: 60px;
  align-items: start;
}

.good__main-info {
  display: grid;
  grid-template-columns: 1fr;
  gap: 30px;
  padding: 20px 0 0;
}

.good__art {
  color: var(--color-gray-300);
}

.good__mini-desc {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  justify-items: start;
}

.good__mini-desc-text {
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.good__mini-desc a {
  display: inline-block;
  padding: 0 0 5px;
  color: var(--color-blue-300);
  border-bottom: 1px dashed;
}

.good__advantages {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 5px;
  list-style-type: none;
}

.good__advantages-item {
  display: grid;
  grid-template-columns: 1fr;
  gap: 7px;
  justify-items: center;
  margin: -2px 0 0;
  padding: 10px 10px 15px;
  border-radius: 12px;
  border: 1px solid var(--color-gray-100);
}

.good__advantages-item svg {
  color: var(--color-blue-300);
}

.good__advantages-content {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3px;
  justify-items: center;
}

.good__advantages-content .footnote-regular-12 {
  color: var(--color-gray-300);
}

.good__images {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
}

.good__main-photo img {
  display: none;
  width: 100%;
  height: auto;
  object-fit: contain;
  border-radius: 12px;
  cursor: zoom-in;
}

.good__gallery {
  display: flex;
}

.good__gallery img {
  margin: 0 10px 0 0;
  width: 70px;
  height: 48px;
  object-fit: cover;
  border-radius: 6px;
  cursor: pointer;
}

.good__gallery img.is-active {
  opacity: 35%;
}

.good__tabs-block {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
}

.good__tabs-wrapper {
  position: relative;
  overflow: hidden;
}

.good__tabs-wrapper::after {
  /* content: ""; */
  position: absolute;
  top: 0;
  right: -1px;
  width: 123px;
  height: 100%;
  background: linear-gradient(270deg, #fff 0%, rgba(255, 255, 255, 0.00) 100%);
  z-index: 10;
}

.good__tabs-info {
  padding: 40px;
  border-radius: 12px;
  border: 1px solid var(--color-blue-100);
}

.good__tab-info {
  display: none;
  grid-template-columns: 1fr;
  gap: 20px;
}

.good__tab-info h2,
.good__tab-info h3,
.good__tab-info h4,
.good__tab-info h5 {
  color: var(--color-gray-500);
}

.good__tab-info ul,
.good__tab-info ol {
  padding: 0 0 0 20px;
}

.good__tab-info table td:last-child {
  width: 280px;
  text-align: right;
  border-right: none;
  font-weight: 600;
  line-height: 130%;
}

.good__tab-info a {
  color: var(--color-blue-300);
  transition: var(--easy);
  -moz-transition: var(--easy);
  -o-transition: var(--easy);
  -webkit-transition: var(--easy);
}

.good__tab-info img {
  border-radius: 12px;
}

.good__tab-info img,
.good__tab-info iframe {
  max-width: 100% !important;
}

.good__characteristics-list {
  padding: 0 !important;
  max-width: 484px;
  list-style-type: none;
}

.good__characteristics-item {
  display: grid;
  grid-template-columns: max-content auto;
  justify-content: space-between;
  align-items: end;
  border-bottom: 1px dashed var(--color-gray-200);
}

.good__characteristics-item:not(:last-child) {
  margin: 0 0 7px;
}

.good__characteristics-item span {
  position: relative;
  bottom: -5px;
  background-color: var(--color-default-white);
  z-index: 2;
}

.good__characteristics-item-left {
  margin: 0 2em 0 0;
  padding: 0 5px 0 0;
}

.good__characteristics-item-right {
  padding: 0 0 0 5px;
  text-align: right;
}

.good__documents {
  display: grid;
  grid-template-columns: repeat(auto-fit, 286px);
  gap: 10px;
}

.good__document {
  display: grid;
  grid-template-columns: 50px auto;
  gap: 10px;
  align-items: center;
  padding: 10px 20px;
  border-radius: 12px;
  background-color: var(--color-blue-0);
  cursor: pointer;
}

.good__document-content {
  display: grid;
  grid-template-columns: 1fr;
  gap: 5px;
}

.good__document-content a {
  color: var(--color-gray-400);
}

.good__document-content span {
  color: var(--color-gray-300);
}

.good__payment-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 5px;
}

.good__payment-item {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  padding: 20px;
  border-radius: 12px;
  background-color: var(--color-gray-100);
}

.good__payment-item span {
  color: var(--color-gray-500);
}

.good__delivery-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 5px;
}

.good__delivery-item {
  padding: 20px;
  border-radius: 12px;
  background-color: var(--color-gray-100);
}

.good__tab-info .list2a {
  display: grid;
  grid-template-columns: 1fr;
  gap: 5px;
  padding: 0;
  list-style-type: none;
  counter-reset: num;
}

.good__tab-info .list2a li {
  position: relative;
  padding: 10px 20px 10px 40px;
  border-radius: 12px;
  border: 1px solid var(--color-gray-100);

  transition: var(--easy);
  -moz-transition: var(--easy);
  -o-transition: var(--easy);
  -webkit-transition: var(--easy);
}

.good__tab-info .list2a li:after {
  content: counter(num);
  counter-increment: num;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 40px;
  height: auto;
  font-weight: 700;
  font-size: 18px;
  line-height: 110%;
  text-align: center;
  color: var(--color-blue-300);
}

.good__tab-info .list6a {
  display: grid;
  grid-template-columns: 1fr;
  gap: 5px;
  padding: 0;
  list-style-type: none;
}

.good__tab-info .list6a li {
  padding: 2px 0 2px 30px;
  background-image: url('../img/svg/star.svg');
  background-repeat: no-repeat;
  background-position: 0 50%;
}

.good__works {
  display: grid;
  grid-template-columns: 1fr;
  gap: 19px;
}

.good__works h2 {
  color: var(--color-gray-500);
}


.good .rightbar-inner {
  display: grid;
  grid-template-columns: 1fr;
  gap: 30px;
}

.good__order {
  display: grid;
  grid-template-columns: 1fr;
  gap: 40px;
  padding: 20px;
  border-radius: 12px;
  box-shadow: 0px 0px 30px 0px rgba(112, 112, 112, 0.20);
}

.good__order-price {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  justify-items: start;
}

.good__order-price .footnote-regular-12 {
  color: var(--color-gray-300);
}

.good__price {
  display: grid;
  grid-template-columns: 1fr;
  gap: 5px;
}

.good__price-old {
  color: var(--color-gray-300);
  text-decoration: line-through;
}

.good__price-new {
  color: var(--color-gray-500);
}

.good__sale {
  padding: 4px 4px 5px;
  border-radius: 8px 1px;
  background-color: var(--color-red-200);
  font-weight: 600;
  font-size: 10px;
  line-height: 110%;
  color: var(--color-default-white);
}

.good__order-buttons {
  position: relative;
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  margin: 5px 0 0;
}

.good__order-buttons::before,
.good__order-montage::before {
  content: "";
  position: absolute;
  top: -20px;
  left: -20px;
  width: calc(100% + 40px);
  height: 1px;
  background-color: var(--color-gray-100);
}

.good__order-buttons .button {
  padding: 15.5px 24px;
}

.good__order-buttons__container {
  display: grid;
  gap: 10px;
  grid-template-columns: 166px 56px;
}

.good__order-buttons__container button:first-child {
  padding: 15px 10px;
}

.good__order-buttons__container button:first-child span {
  text-wrap: nowrap;
}

.good__order-montage {
  position: relative;
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  justify-items: start;
}

.good__order-montage span:first-child {
  color: var(--color-gray-300);
}

.good__order-montage a {
  display: inline-block;
  padding: 0 0 5px;
  color: var(--color-blue-300);
  border-bottom: 1px dashed;
}

.good__info-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3.5px;
}

.good__info-item {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  padding: 20px 20px 10px;
  border-radius: 12px;
  border: 1px solid var(--color-gray-100);
}

.good__info-item span {
  color: var(--color-gray-300);
}

.good__info-item ul {
  display: flex;
  flex-wrap: wrap;
  list-style-type: none;
}

.good__info-item li {
  margin: 0 10px 10px 0;
}

.good__info-item a {
  color: var(--color-blue-300);

  transition: var(--easy);
  -moz-transition: var(--easy);
  -o-transition: var(--easy);
  -webkit-transition: var(--easy);
}


/* Tab */
.tabs {
  display: flex;
  flex-wrap: nowrap;
  list-style-type: none;
  overflow-x: scroll;
}

.tab {
  flex-shrink: 0;
  padding: 15.5px 22px;
  text-transform: none;
}

.tab:not(:last-child) {
  margin: 0 4px 0 0;
}

.tab.is-active {
  border: 2px solid var(--color-blue-300);
  background-color: var(--color-blue-100);
  color: var(--color-blue-300);
}


/* Works */
.works__list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 28px 20px;
}

.works__item {
  display: flex;
  flex-direction: column;
  cursor: pointer;
}

.works__item-image-wrapper {
  position: relative;
  margin: 0 0 10px;
  height: 170px;
  background-color: var(--color-gray-100);
  border-radius: 12px;
  overflow: hidden;
}

.works__item-image-wrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.works__item-images-count {
  position: absolute;
  bottom: 10px;
  right: 10px;
  width: 44px;
  height: auto;
  padding: 3px 8px 3px 5px;
  border-radius: 6px;
  background-color: var(--color-blue-100);
}

.works__item-images-count span {
  font-weight: 500;
  font-size: 12px;
  line-height: 130%;
}

.works__item p {
  flex-grow: 1;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin: 0 0 10px;
  color: var(--color-gray-500);
}

.works__item a {
  color: var(--color-blue-300);
}


/* Page */
.top-wrapper--page {
  margin: 0;
  padding: 0;
}

.page {
  position: relative;
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
}

.page h1,
.page h2,
.page h3,
.page h4,
.page h5 {
  color: var(--color-gray-500);
}

.page__wrapper {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
}

.page-other p img {
  width: 150px;
}

.page__wrapper ul:not(.mini-card ul),
.page__wrapper ol:not(.mini-card ol) {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  padding: 0;
  list-style-type: none;
}

.page__wrapper li:not(.mini-card li) {
  position: relative;
  padding: 0 0 0 34px;
}

.page__wrapper li:not(.mini-card li)::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 24px;
  height: 24px;
  border-radius: 6px;
}

.page__wrapper ul li:not(.mini-card ul li)::before {
  background-color: var(--color-blue-100);
  background-image: url('../img/svg/checked-blue-small.svg');
  background-repeat: no-repeat;
  background-position: 50%;
}

.page__wrapper ul li:not(.mini-card ul li) ul li:not(.mini-card ul li)::before {
  background-color: transparent;
}

.page__wrapper ol:not(.mini-card ol) {
  counter-reset: num;
}

.page__wrapper ol li:not(.mini-card ol li)::before {
  content: counter(num);
  counter-increment: num;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: var(--color-blue-300);
  font-weight: 700;
  font-size: 14px;
  line-height: 150%;
  color: var(--color-default-white);
}

.page a {
  color: var(--color-blue-300);

  transition: var(--easy);
  -moz-transition: var(--easy);
  -o-transition: var(--easy);
  -webkit-transition: var(--easy);
}

.page__wrapper h2,
.page__wrapper h3,
.page__wrapper h4 {
  padding: 20px 0 0;
}

.page__wrapper h4 {
  color: var(--color-blue-300);
}

.page__wrapper img {
  margin: 20px 0;
  width: 100% !important;
  height: auto;
  border-radius: 12px;
}

.page__wrapper table {
  border: 1px solid var(--color-gray-100);
  border-radius: 12px;
  overflow: hidden;
}

.page__wrapper table * {
  text-align: center;
}

.page__wrapper .color-red {
  color: var(--color-red-200);
}

.page__wrapper blockquote {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
  margin: 0;
  padding: 30px 40px;
  border-radius: 12px;
  border-left: 5px solid var(--color-blue-200);
  background-color: var(--color-blue-100);
  font-weight: 600;
}

.page__contacts {
  display: grid;
  grid-template-columns: repeat(2, 300px);
}

.page__contacts img {
  margin: 0 0 10px;
  width: 150px !important;
  height: 150px;
}

.page__cover {
  position: absolute;
  top: 0;
  left: -15px;
  width: calc(100% + 33px);
  height: 460px;
  z-index: -1;
}

.page__cover img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 12px;
}

.page__intro {
  display: grid;
  grid-template-columns: 1fr;
  gap: 30px;
  margin: 310px 0 0;
  padding: 40px;
  border-radius: 24px;
  background-color: var(--color-default-white);
  box-shadow: 0 10px 30px 0 rgba(187, 207, 214, 0.50);
}

.page__intro-top,
.page__intro-bottom {
  display: flex;
  align-items: center;
  color: var(--color-gray-300);
}

.page__intro-top span:first-child {
  margin: 0 30px 0 0;
}

.page__intro h1 {
  font-size: 44px;
}

.page__toc {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
  padding: 40px;
  border-radius: 24px;
  background-color: var(--color-gray-100);
}

.page__toc li {
  width: fit-content;

  transition: var(--easy);
  -moz-transition: var(--easy);
  -o-transition: var(--easy);
  -webkit-transition: var(--easy);
}

.page__toc li,
.page__toc li a {
  color: var(--color-gray-400);
}

.page:has(.referal__wrapper) h1 {
  text-align: center;
}

.referal__wrapper {
  margin: 0 auto;
  padding: 40px;
  max-width: 700px;
  border-radius: 12px;
  background: linear-gradient(142deg, #88aa9a 0%, #3a83ac 100%);
  color: var(--color-default-white);
}

.referal__wrapper .form_all_info {
  display: grid;
  grid-template-columns: 1fr;
  gap: 30px;
}

.referal__wrapper img {
  margin: 0;
  width: 200px !important;
  height: auto;
}

.referal__wrapper .form_tpl_h2,
.referal__wrapper .form_tpl_h3 {
  display: none;
}

.referal__wrapper .form_tpl_pols {
  display: grid;
  grid-template-columns: 1fr;
  gap: 5px;
}

.referal__wrapper .form_tpl_pols input,
.referal__wrapper .form_tpl_pols textarea {
  text-align: left;
}

.referal__wrapper .form_line:has(input[type="file"]) {
  display: grid;
  grid-template-columns: 1fr;
  gap: 5px;
  padding: 15px 20px;
  border-radius: 12px;
  background-color: var(--color-default-white);
  color: var(--color-gray-300);
}

.referal__wrapper .form_line:has(input[type="file"]) input {
  padding: 0;
  border-radius: 0;
}

.referal__wrapper .button {
  width: 100%;
  background-color: var(--color-green-100);
  border: none;
  color: var(--color-default-white);
}

.referal__wrapper .p_o a {
  text-decoration: underline dashed;
  color: var(--color-blue-100);
}


/* Works page */
.works {
  display: grid;
  grid-auto-columns: 1fr;
  gap: 30px;
}

.works__tags {
  display: flex;
  flex-wrap: wrap;
  list-style-type: none;
  padding: 0 !important;
  width: calc(100% - 159px);
  max-height: 57px;
  overflow: hidden;
}

.works__tags.is-open {
  width: 100%;
  max-height: none;
  overflow: visible;
}

.works__tag {
  margin: 0 5px 5px 0;
}

.works__tag .button {
  color: var(--color-gray-300);
  text-transform: none;
}


/* Work */
.work {
  display: grid;
  grid-template-columns: 1fr;
  gap: 60px;
}

.work h1,
.work .h2 {
  color: var(--color-gray-500);
}

.work__top {
  display: grid;
  grid-template-columns: 1fr;
  gap: 30px;
}

.work__images {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  padding: 50px;
  border-radius: 12px;
  background-color: var(--color-gray-100);
}

.work__images img {
  border-radius: 12px;
}

.work__main-photo img {
  display: none;
  width: 100%;
  height: auto;
  max-height: 600px;
  object-fit: cover;
  cursor: zoom-in;
}

.work__gallery {
  display: flex;
  overflow-x: scroll;
}

.work__gallery img {
  flex-shrink: 0;
  margin: 0 10px 0 0;
  width: 159px;
  height: 100px;
  object-fit: cover;
  cursor: pointer;
}

.work__bottom {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
}

.work .works__list {
  display: grid;
}

.info_page {
  display: grid;
  grid-template-columns: 1fr;
  gap: 30px;
}

.work_desc {
  order: 1;
}

.work_images {
  order: 2;
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 10px;
  padding: 50px;
  border-radius: 12px;
  background-color: var(--color-gray-100);
}

.work_images a:not(:first-child) {
  width: 100%;
  height: 100px;
}

.work_images a:first-child {
  grid-column: span 6;
}

.work_images a img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}


/* Error */
.error__wrapper {
  display: grid;
  grid-template-columns: 1fr;
  gap: 50px;
  justify-items: center;
  padding: 60px 0;
}

.error__wrapper .h1,
.error__wrapper .h2 {
  color: var(--color-default-black);
}

.error__wrapper a {
  color: var(--color-blue-300);
}


/* Modal form */
#modal_form {
  max-width: 400px;
  border-radius: 12px;
  background: linear-gradient(142deg, #88aa9a 0%, #3a83ac 100%);
  color: var(--color-default-white);
  cursor: default;
}

#modal_form img,
#modal_form .form_tpl_h1,
#modal_form .form_tpl_h2,
#modal_form .form_tpl_h3 {
  display: none;
}

#modal_form .form_all_info {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
}

.text_send {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
}

.text_send p {
  text-align: center;
}

.text_send p:first-child {
  font-weight: 700;
  font-size: 20px;
  line-height: 110%;
}

#modal_form .form_tpl_pols {
  display: grid;
  grid-template-columns: 1fr;
  gap: 5px;
}

#modal_form input,
#modal_form textarea {
  text-align: left;
}

#modal_form .button {
  width: 100%;
  min-height: 56px;
  background-color: var(--color-green-100);
  border: none;
  color: var(--color-default-white);
}

.button.is-loading,
#modal_form .button.is-loading {
  position: relative;
}

.button.is-loading::before,
#modal_form .button.is-loading::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 56px;
  height: 56px;
  background-image: url('../img/utils/loader-white.png');
  background-repeat: no-repeat;
  background-position: 50%;
  background-color: transparent;
  animation: spinner 800ms linear infinite;
}

.button.is-loading::after,
#modal_form .button.is-loading::after {
  content: none;
  display: none;
}

.button.is-loading span,
#modal_form .button.is-loading span {
  display: none;
}

#modal_form .p_o {
  font-weight: 400;
  font-size: 10px;
  line-height: 120%;
  opacity: 40%;
}

#modal_form .p_o,
#modal_form .p_o a {
  color: var(--color-blue-0);
}

.fancybox__carousel.is-draggable .fancybox__slide {
  cursor: default !important;
}


/* Footer */
.footer {
  background-color: var(--color-gray-400);
}

.footer,
.footer a {
  color: var(--color-default-white);
}

.footer a {
  transition: var(--easy);
  -moz-transition: var(--easy);
  -o-transition: var(--easy);
  -webkit-transition: var(--easy);
}

.footer__top {
  padding: 60px 0 57px;
}

.footer__top-wrapper {
  display: grid;
  grid-template-columns: 1fr 3fr 1fr;
  gap: 10px;
  align-items: start;
}

.footer__top-grid {
  display: grid;
  grid-template-columns: 1fr;
}

.footer__top-left {
  display: grid;
  grid-template-columns: 1fr;
  gap: 30px;
  justify-items: start;
}

.footer__top-left .footer__top-grid {
  gap: 10px;
}

.footer__top-left span {
  color: var(--color-gray-200);
}

.footer__menu {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 25px 10px;
  align-items: start;
  margin: 8px 0 0 -5px;
}

.footer__menu-item:nth-child(1),
.footer__menu-item:nth-child(4) {
  grid-row: span 2;
}

.footer__menu-item:nth-child(1) {
  order: 1;
}

.footer__menu-item:nth-child(2) {
  order: 2;
}

.footer__menu-item:nth-child(3) {
  order: 4;
}

.footer__menu-item:nth-child(4) {
  order: 3;
}

.footer__menu-item {
  display: grid;
  grid-template-columns: 1fr;
  gap: 28px;
}

.footer__menu-item-top br {
  display: none;
}

.footer__menu-item-top svg {
  display: none;
}

.footer__menu-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 4px;
  list-style-type: none;
}

.footer__menu-list a {
  display: inline-block;
  padding: 3px 0;
}

.footer__top-right {
  display: grid;
  grid-template-columns: 1fr;
  gap: 40px;
  margin: 8px 0 0;
}

.footer__top-right .footer__top-grid {
  gap: 24px;
}

.footer__social {
  display: grid;
  grid-template-columns: repeat(3, 34px);
  gap: 10px;
  list-style-type: none;
}

.footer__social a {
  color: var(--color-gray-200);
}

.footer__bottom {
  padding: 30px 0 60px;
  background-color: rgba(110, 114, 117, 0.20);
}

.footer__bottom-wrapper {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 5px;
  align-items: center;
}

.footer__bottom-wrapper p,
.footer__bottom-wrapper span {
  color: var(--color-gray-200);
}

.footer__copyright {
  grid-column: 5/6;
}

.footer iframe {
  width: 150px;
  height: 50px;
  border: none;
}


/* Remstroy */
.remstroy {
  display: grid;
  grid-template-columns: 1fr;
  gap: 9px;
  padding: 8px;
  border-radius: 5px;
  background-color: var(--color-gray-500);
  font-family: var(--ff-roboto);
}

.remstroy__raiting span {
  font-weight: 500;
  font-size: 14px;
  line-height: normal;
  color: var(--color-default-white);
}

.remstroy__raiting svg {
  margin: 0 4px 0 0;
}

.remstroy__stars {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 2px;
  margin: 0 0 0 15px;
}

.remstroy p {
  font-weight: 400;
  font-size: 8px;
  line-height: normal;
  color: var(--color-gray-200);
}


/* Hover */
@media (min-width: 1024px) {
  @media (hover: hover) {

    .breadcrumbs__item a:hover,
    .catalog__description a:hover,
    .catalog__tags-button:hover,
    .works__tags-button:hover,
    .catalog__offer a:hover,
    .catalog__sorting-item:hover,
    .catalog__sorting-item:hover svg,
    .show-more-items:hover,
    .good__order-montage a:hover,
    .good__info-item a:hover,
    .good__mini-desc a:hover,
    .good__tab-info a:hover,
    .good__document:hover a,
    .works__item:hover a,
    .page a:hover,
    .error__wrapper a:hover,
    .reviews__slide-bottom .button:hover,
    .page__toc li:hover,
    .page__toc li:hover a {
      color: var(--color-blue-200);
    }

    .catalog__categories-item:hover .catalog__categories-image-wrapper {
      opacity: 0;
    }

    .catalog__categories-item:hover .catalog__categories-content {
      transform: translateX(-56px);
    }

    .catalog__categories-item:hover .catalog__categories-name,
    .header__top-grid a:hover,
    .header__top-grid a.h5:hover,
    .header__bottom-wrapper a:hover,
    .footer a:hover,
    .footer__social a:hover,
    .brands__item:hover .brands__item-link,
    .cities__list a:hover,
    .bar-catalog__item:hover .bar-catalog__item-top,
    .bar-catalog__item:hover .bar-catalog__item-top svg,
    .bar-blog__item:hover a,
    .bar-catalog__item-list a:hover {
      color: var(--color-blue-300);
    }

    .header__contacts a:hover {
      background-color: var(--color-blue-100);
    }

    .header__catalog-menu-close:hover::before,
    .header__catalog-menu-close:hover::after {
      background-color: var(--color-blue-300);
    }

    .header__parent:hover svg {
      transform: rotate(-90deg);
    }

    .header__parent:hover .header__sub-menu {
      display: grid;
    }

    .catalog__categories-item:hover svg {
      opacity: 1;
    }

    .mini-card:hover,
    .core-slider-item:hover {
      border-color: var(--color-blue-200) !important;
    }

    .mini-card:hover::before,
    .mini-card:hover::after {
      content: "";
    }

    .listing .mini-card:hover {
      border-bottom: 0.5px solid var(--color-default-white);
    }

    .mini-card:hover .mini-card__description {
      transform: translateY(0);
    }

    .mini-card:hover .mini-card__buttons {
      display: grid;
    }

    .ui-widget-content .ui-state-default:hover {
      background-color: var(--color-blue-200);
    }

    .item_filter:hover {
      color: var(--color-blue-300);
    }

    .item_filter:hover::before {
      border: 1px solid var(--color-blue-200);
      background-color: var(--color-blue-0);
    }

    .item_filter.checked_item:hover::before {
      border: 1px solid var(--color-blue-200);
      background-color: var(--color-blue-200);
    }

    .catalog__gallery a:hover img,
    .works__item:hover img,
    .bar-blog__item:hover img {
      transform: scale(1.1);
    }

    .good__document:hover {
      background-color: var(--color-blue-100);
    }

    .good__tab-info .list2a li:hover {
      border: 1px solid var(--color-blue-100);
      background-color: var(--color-blue-100);
    }

    .advantages__item:hover .advantages__item-container {
      max-height: 1000px;
      border-radius: 0px 0px 12px 12px;
      box-shadow: 0px 10px 30px 0px rgba(112, 112, 112, 0.20);
      z-index: 5;
    }

    .advantages__item:nth-child(1):hover .advantages__item-container {
      border-radius: 12px 0px 12px 12px;
    }

    .advantages__item:nth-child(4):hover .advantages__item-container {
      border-radius: 0px 12px 12px 12px;
    }

    .advantages__item:nth-child(5):hover .advantages__item-container {
      border-radius: 0px 0px 12px 12px;
    }

    .advantages__item:nth-child(8):hover .advantages__item-container {
      border-radius: 0px 0px 12px 12px;
    }

    .advantages__item:hover .advantages__item-invisible {
      max-height: 1000px;
    }

    .slick-initialized .button-arrow:hover {
      border: 1px solid var(--color-blue-200);
      background-color: var(--color-blue-200);
    }

    .slick-initialized .button-arrow:hover svg {
      color: var(--color-default-white);
    }

    .listing .mini-card:last-child:hover,
    .listing .mini-card.last-left:hover,
    .listing .mini-card.last-left:last-child:hover {
      border-radius: 0 0 0 0;
    }

    .similar__list .mini-card:first-child:hover {
      border-radius: 12px 0 0 0;
    }

    .similar__list .mini-card:last-child:hover {
      border-radius: 0 12px 0 0;
    }

    .header__catalog-menu-banner-content .button:hover,
    .bar__form .button:hover,
    #modal_form .button:hover,
    .referal__wrapper .button:hover {
      background-color: #2de978;
    }

    .good__add-to-cart:hover {
      background-color: var(--color-blue-100);
    }
  }
}


/* Focus */
.breadcrumbs__item a:focus,
.catalog__description a:focus,
.catalog__tags-button:focus,
.works__tags-button:focus,
.catalog__offer a:focus,
.catalog__sorting-item:focus,
.catalog__sorting-item:focus svg,
.show-more-items:focus,
.good__order-montage a:focus,
.good__info-item a:focus,
.good__mini-desc a:focus,
.good__tab-info a:focus,
.good__document:focus a,
.works__item:focus a,
.page a:focus,
.error__wrapper a:focus,
.reviews__slide-bottom .button:focus {
  color: var(--color-blue-200);
}

.catalog__categories-item:focus .catalog__categories-image-wrapper {
  opacity: 0;
}

.catalog__categories-item:focus .catalog__categories-content {
  transform: translateX(-56px);
}

.catalog__categories-item:focus .catalog__categories-name,
.header__top-grid a:focus,
.header__top-grid a.h5:focus,
.header__bottom-wrapper a:focus,
.footer a:focus,
.footer__social a:focus,
.brands__item:focus .brands__item-link,
.cities__list a:focus,
.bar-catalog__item:focus .bar-catalog__item-top,
.bar-catalog__item:focus .bar-catalog__item-top svg,
.bar-blog__item:focus a,
.bar-catalog__item-list a:hover {
  color: var(--color-blue-300);
}

.header__contacts a:focus {
  background-color: var(--color-blue-100);
}

.header__catalog-menu-close:focus::before,
.header__catalog-menu-close:focus::after {
  background-color: var(--color-blue-300);
}

.header__parent:focus svg {
  transform: rotate(-90deg);
}

.header__parent:focus .header__sub-menu {
  display: grid;
}

.catalog__categories-item:focus svg {
  opacity: 1;
}

.mini-card:focus,
.core-slider-item:hover {
  border-color: var(--color-blue-200) !important;
}

.mini-card:focus {
  content: "";
}

.listing .mini-card:focus {
  border-bottom: 0.5px solid var(--color-default-white);
}

.mini-card:focus .mini-card__description {
  transform: translateY(0);
}

.mini-card:focus .mini-card__buttons {
  display: grid;
}

.ui-widget-content .ui-state-default:focus {
  background-color: var(--color-blue-200);
}

.item_filter:focus {
  color: var(--color-blue-300);
}

.item_filter:focus::before {
  border: 1px solid var(--color-blue-200);
  background-color: var(--color-default-white);
}

.item_filter.checked_item:focus::before {
  border: 1px solid var(--color-blue-300);
  background-color: var(--color-blue-300);
}

.item_filter:focus::after {
  opacity: 1;
}

.catalog__gallery a:focus img,
.works__item:focus img,
.bar-blog__item:hover img {
  transform: scale(1.1);
}

.good__document:focus {
  background-color: var(--color-blue-100);
}

.good__tab-info .list2a li:focus {
  border: 1px solid var(--color-blue-100);
  background-color: var(--color-blue-100);
}

.advantages__item:focus .advantages__item-container {
  max-height: 1000px;
  border-radius: 0px 0px 12px 12px;
  box-shadow: 0px 10px 30px 0px rgba(112, 112, 112, 0.20);
  z-index: 5;
}

.advantages__item:nth-child(1):focus .advantages__item-container {
  border-radius: 12px 0px 12px 12px;
}

.advantages__item:nth-child(4):focus .advantages__item-container {
  border-radius: 0px 12px 12px 12px;
}

.advantages__item:nth-child(5):focus .advantages__item-container {
  border-radius: 0px 0px 12px 12px;
}

.advantages__item:nth-child(8):focus .advantages__item-container {
  border-radius: 0px 0px 12px 12px;
}

.advantages__item:focus .advantages__item-invisible {
  max-height: 1000px;
}

.slick-initialized .button-arrow:focus {
  border: 1px solid var(--color-blue-200);
  background-color: var(--color-blue-200);
}

.slick-initialized .button-arrow:focus svg {
  color: var(--color-default-white);
}

.listing .mini-card:last-child:focus,
.listing .mini-card.last-left:focus,
.listing .mini-card.last-left:last-child:focus {
  border-radius: 0 0 0 0;
}

.similar__list .mini-card:first-child:focus {
  border-radius: 12px 0 0 0;
}

.similar__list .mini-card:last-child:focus {
  border-radius: 0 12px 0 0;
}

.header__catalog-menu-banner-content .button:focus,
.bar__form .button:focus,
#modal_form .button:focus,
.referal__wrapper .button:focus {
  background-color: #2de978;
}

.good__add-to-cart:focus {
  background-color: var(--color-blue-100);
}

/* .good__add-to-cart.in-cart,
.mini-card__add-to-cart.in-cart {
  background-color: var(--color-blue-300);
} */
/* .good__add-to-cart.in-cart svg {
  color: var(--color-default-white);
} */
.good__add-to-cart {
  position: relative;
}

.button-in-cart__check {
  position: absolute;
  top: 11px;
  right: 8px;
  background: var(--color-blue-300);
  padding: 2px;
  border-radius: 100px;
  display: flex;
  justify-content: center;
  align-items: center;
  display: none;
}

.good__add-to-cart.in-cart .button-in-cart__check {
  display: flex;
}

.good__add-to-cart.in-cart .button-in-cart__check svg {
  color: var(--color-default-white);
}

/* Messengers */
.messengers-button::before,
.messengers-button::after {
  content: "";
  position: absolute;
  left: -20px;
  right: -20px;
  top: -20px;
  bottom: -20px;
  display: block;
  border-radius: 50%;
  border: 1px solid #1da1da;
  opacity: 0;
  animation: border-animate 1.5s linear infinite;
}

.messengers-button {
  position: fixed;
  right: -10px;
  bottom: -10px;
  z-index: 99;
  transform: translateX(-50%) translateY(-50%);
  width: 80px;
  height: 80px;
  border-radius: 50%;
}

.messengers-button__video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
  pointer-events: none;
}

@keyframes border-animate {
  0% {
    transform: scale(0.5);
    opacity: 0;
  }

  50% {
    opacity: 1;
  }

  100% {
    transform: scale(1.2);
    opacity: 0;
  }
}

.messengers-button::after {
  animation-delay: 0.5s;
}

.messengers {
  padding: 60px 50px;
  width: 548px;
  max-width: 100%;
  border-radius: 14px;
  background-color: #fff;
  cursor: default !important;
}

.messengers__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  padding: 0 38px;
}

.messengers p {
  text-align: center;
}

.messengers__title {
  margin: 0 0 30px;
  font-weight: 700;
  font-size: 28px;
  line-height: 120%;
  color: #32312f;
}

.messengers a {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 16px;
  border-radius: 14px;
  font-weight: 600;
  font-size: 15px;
  line-height: 150%;
  color: #fff;
}

.messengers__wa-link {
  background-color: #39bc6c;
}

.messengers__wa-link:hover {
  background-color: #29cc68;
}

.messengers__tg-link {
  background-color: #1da1da;
}

.messengers__tg-link:hover {
  background-color: #05aaf2;
}

.messengers__max-link {
  background: linear-gradient(91deg, #19D1F5 0%, #5F3AEF 100%)
}

.messengers__max-link:hover {
  background: linear-gradient(91deg, #00D0FF 0%, #6A40FF 100%)
}

.messengers a svg {
  margin: 0 5px 0 0;
}

.messengers__text {
  position: relative;
  padding: 20px 0;
}

.messengers__text::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 100%;
  height: 1px;
  background-color: #a1a5ad;
  z-index: -1;
}

.messengers__text p {
  margin: 0 auto;
  padding: 0 7px;
  width: max-content;
  background-color: #fff;
  font-weight: 500;
  font-size: 14px;
  line-height: 150%;
  color: #a1a5ad;
  text-align: center;
}

.messengers__text+picture {
  justify-self: center;
}

.messengers__qr-wrapper {
  /* display: grid; */
  /* grid-template-columns: repeat(2, 1fr); */
  display: flex;
  justify-content: space-evenly;
  align-items: center;
  gap: 30px;
}

.messengers__qr-wrapper svg {
  width: 170px;
  height: 170px;
}


/* Dialogue */
.dialogue {
  position: fixed;
  bottom: 66px;
  right: 130px;
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
  padding: 20px;
  width: 100%;
  max-width: 317px;
  border-radius: 8px;
  background-color: rgba(30, 30, 29, 0.90);
  -webkit-backdrop-filter: blur(15px);
  backdrop-filter: blur(15px);
  color: var(--color-default-white);
  z-index: 100;

  transform: translateY(150%);
  opacity: 0;

  transition: all 0.5s cubic-bezier(.39, .58, .57, 1);
  -moz-transition: all 0.5s cubic-bezier(.39, .58, .57, 1);
  -o-transition: all 0.5s cubic-bezier(.39, .58, .57, 1);
  -webkit-transition: all 0.5s cubic-bezier(.39, .58, .57, 1);
}

.dialogue.is-open {
  transform: translateY(0);
  opacity: 1;
}

.dialogue__top {
  display: grid;
  grid-template-columns: 65px auto 18px;
  gap: 20px;
  align-items: center;
  padding: 0 0 10px;
  border-bottom: 1px solid #656565;
}

.dialogue__image {
  position: relative;
  width: 65px;
  height: 65px;
}

.dialogue__image::after {
  content: "";
  position: absolute;
  bottom: 5px;
  right: 5px;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  box-shadow: 0 0 0 3px rgba(30, 30, 29, 1);
  background-color: #15d234;
}

.dialogue__image img {
  border-radius: 50%;
}

.dialogue__manager {
  display: grid;
  grid-template-columns: 1fr;
}

.dialogue__manager-name {
  font-weight: 600;
  font-size: 18px;
  line-height: 150%;
}

.dialogue__manager-position,
.dialogue__text {
  font-weight: 500;
  font-size: 14px;
  line-height: 150%;
}

.dialogue__close {
  position: relative;
  width: 18px;
  height: 18px;
  padding: 0;
  border: none;
  background-color: transparent;
  cursor: pointer;
}

.dialogue__close::before,
.dialogue__close::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 16px;
  height: 2px;
  border-radius: 2px;
  background-color: #a1a5ad;

  transition: var(--easy);
  -moz-transition: var(--easy);
  -o-transition: var(--easy);
  -webkit-transition: var(--easy);
}

.dialogue__close::before {
  transform: translateX(-50%) translateY(-50%) rotate(45deg);
}

.dialogue__close::after {
  transform: translateX(-50%) translateY(-50%) rotate(-45deg);
}

.dialogue__button {
  background-color: #52b579;
  color: var(--color-default-white);
}

.dialogue__button:hover {
  background-color: #29cc68;
}

.cart-button {
  position: relative;
  width: 56px;
  height: 56px;
  border-radius: 12px;
  background-color: var(--color-gray-100);
}

.header__cart {
  position: relative;
  color: var(--color-gray-300);
}

.header__cart-count {
  position: absolute;
  top: -5px;
  right: -5px;
  z-index: 1;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: var(--color-red-200);
  line-height: 150%;
  color: var(--color-default-white);
}

.header__cart-count {
  position: absolute;
  top: -5px;
  right: -5px;
  background: #f35151;
  border-radius: 100px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  font-weight: 400;
  font-size: 12px;
  line-height: 150%;
  text-align: center;
  color: var(--color-default-white);
  padding-block: 1px;
  width: 20px;
  height: 20px;
}

.good__add-to-cart {
  width: 56px;
  height: 56px;
  border-radius: 12px;
  background-color: var(--color-gray-100);
  border: none;
  color: var(--color-gray-300);
  cursor: pointer;
}



/* Cart */
.cart {
  margin: 0 0 30px;
}

.top-wrapper--cart {
  padding: 0;
}

.cart__wrapper {
  display: grid;
  grid-template-columns: auto 380px;
  gap: 80px;
  align-items: start;
}

.cart__goods {
  position: relative;
  display: grid;
  grid-template-columns: 1fr;
  gap: 40px;
}

.cart__item {
  gap: 40px;
  padding: 20px 0 19px;
  border-bottom: 1px solid var(--color-gray-200);
}

.cart__item-image {
  flex-shrink: 0;
  width: 100px;
  height: 100px;
  border-radius: 20px;
  overflow: hidden;
}

.cart__item-image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.cart__item-info {
  flex-grow: 1;
  display: grid;
  grid-template-columns: 1fr;
  gap: 5px;
}

.cart__item-size {
  color: var(--color-blue-300);
}

.cart__item-count {
  flex-shrink: 0;
  width: 112px;
}

.cart__item-total {
  flex-shrink: 0;
  width: 134px;
}

.cart__item-delete {
  flex-shrink: 0;
  position: relative;
  padding: 0;
  width: 32px;
  height: 32px;
  border: none;
  background-color: transparent;
  cursor: pointer;
}

.cart__item-delete::before,
.cart__item-delete::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 24px;
  height: 2px;
  border-radius: 2px;
  background-color: var(--color-gray-300);

  transition: var(--easy);
  -moz-transition: var(--easy);
  -o-transition: var(--easy);
  -webkit-transition: var(--easy);
}

.cart__item-delete::before {
  transform: translateX(-50%) translateY(-50%) rotate(45deg);
}

.cart__item-delete::after {
  transform: translateX(-50%) translateY(-50%) rotate(-45deg);
}

.cart__list-total {
  margin: 20px 0 0;
}

.cart__list-total .total {
  margin: 0 72px 0 0;
  width: 134px;
  text-align: center;
  white-space: nowrap;
}

.cart__order {
  display: grid;
  grid-template-columns: 1fr;
  gap: 40px;
}

.cart__list {
  position: relative;
}

.cart__list.is-loading::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.65);
  z-index: 10;
}

.cart__list.is-loading::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  width: 50px;
  height: 50px;
  background-image: url('/media-temp/img/utils/loader-blue.png');
  background-repeat: no-repeat;
  background-position: 50%;
  animation: spinner 800ms linear infinite;
  z-index: 11;
  background-size: 100%;
}


/* Order */
.order {
  display: grid;
  grid-template-columns: 1fr;
  gap: 40px;
  padding: 40px;
  border-radius: 20px;
  box-shadow: 0 0 200px 0 rgba(0, 0, 0, 0.1);
}

.order__item {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
}

.order__inputs {
  display: grid;
  grid-template-columns: 1fr;
  gap: 7px;
}

.order__inputs input,
.order__inputs textarea {
  border: 1px solid var(--color-gray-200);
}

.order__item p {
  color: var(--color-gray-300);
}

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

.article__gallery--5 {
  grid-template-columns: repeat(5, 1fr);
}

.article__gallery {
  display: grid;
  gap: 10px;
}

figure.image {
  margin: 0;
  box-shadow: 0 0 8px 0 rgba(102, 118, 138, 0.25);

}

.article__gallery .image {
  cursor: pointer;
}

.faq__list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
}

.faq__item {
  border-radius: 12px;
  border: 1px solid var(--color-blue-100);
  background-color: var(--color-blue-0);
}

.faq__item-top {
  gap: 20px;
  padding: 20px 30px;
  cursor: pointer;
}

.faq__item-top svg {
  transform: rotate(90deg);
  flex-shrink: 0;
}

.faq__item.is-active svg {
  transform: rotate(270deg);
}

.faq__item-bottom {
  padding: 0 30px 20px;
}

.faq [data-accordion="accordion-bottom"] {
  display: grid;
  grid-template-rows: 0fr;
  overflow: hidden;
  transition: grid-template-rows 0.3s ease;
}

.faq [data-accordion="accordion-bottom"]>* {
  min-height: 0;
  overflow: hidden;
}

.faq [data-accordion="accordion-item"].is-active [data-accordion="accordion-bottom"] {
  grid-template-rows: 1fr;
}


/* Animation */
@keyframes border-animate {
  0% {
    transform: scale(0.5);
    opacity: 0;
  }

  50% {
    opacity: 1;
  }

  100% {
    transform: scale(1.2);
    opacity: 0;
  }
}

@keyframes spinner {
  0% {
    transform: translateX(-50%) translateY(-50%) scale(0.6) rotate(0deg);
  }

  100% {
    transform: translateX(-50%) translateY(-50%) scale(0.6) rotate(360deg);
  }
}

/* media-temp/css/resize.css */

@media (min-width: 1441px) {
  /* Banners */
  .banners__slide {
    height: 356px;
  }


  /* Viewed */
  .core-slider-wrapper {
    max-width: 1400px;
  }


  /* Good */
  .good__top {
    grid-template-columns: auto 348px;
  }
}

@media (max-width: 1365px) {
  /* Header */
  .header__search {
    max-width: 238px;
  }


  /* Banners */
  .banners__slide {
    height: 299px;
  }
  .banners__content-wrapper {
    gap: 18px;
    padding: 59px 51px;
  }
  .banners__content-wrapper img {
    width: 126px;
  }
  .banners__title {
    font-size: 37.5px;
    line-height: 105%;
  }
  .banners__slide .smallTitle-semiBold-14 {
    font-size: 12px;
  }


  /* Catalog */
  .catalog__categories {
    grid-template-columns: repeat(5, 1fr);
  }
  .catalog__stages-item-content p {
    max-width: 155px;
  }
  .catalog__banner-right ul {
    gap: 9px 37px;
  }
  .catalog__banner-right li {
    white-space: nowrap;
  }
  .catalog__we-work-item {
    padding: 20px 10px 20px 106px;
  }
  .catalog__we-work-content {
    padding: 8px 0;
  }
  .catalog__we-work-item:nth-child(3) .catalog__we-work-content,
  .catalog__we-work-item:nth-child(5) .catalog__we-work-content {
    margin: -2px 0 0;
    padding: 0;
  }
  .catalog__services {
    margin: 0 0 -7px;
  }
  .catalog__selection {
    grid-template-columns: 1fr 1fr 1fr 1.53fr;
  }
  .advantages__item-visible {
    padding: 20px 10px;
  }
  .catalog__selection-block .prices-inputs input {
    padding: 15px 2px;
  }


  /* Good */
  .good__top {
    grid-template-columns: auto 310px;
  }


  /* Work */
  .work__main-photo img {
    max-height: 555px;
  }


  /* Footer */
  .footer__top {
    padding: 60px 0 38px;
  }
  .footer__menu-item-top br {
    display: block;
  }
}

/* media-temp/css/mobile.css */

@media (max-width: 1023px) {

  /* Header */
  .header__logo-text,
  .header__search:not(.header__mob-menu .header__search),
  .header__mail,
  .header__phone span,
  .header__bottom {
    display: none;
  }

  .header::after {
    content: none;
  }

  .header__top-wrapper {
    justify-content: space-between;
    padding: 10px 0;
  }

  .header__top-left {
    display: block;
    margin: 0;
  }

  .header__top-left img {
    width: 111px;
    height: 42px;
  }

  .header__top-right {
    gap: 3px;
  }

  .header__contacts {
    order: 1;
    grid-template-columns: repeat(2, 48px);
    gap: 3px;
  }

  .header__phone a,
  .header__contacts a {
    width: 48px;
    height: 48px;
    background-color: var(--color-blue-0);
  }

  .header__phone svg,
  .header__contacts svg {
    color: var(--color-gray-300);
  }

  .header__phone {
    order: 2;
  }

  .header__phone a {
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 12px;
  }

  .header__phone svg {
    display: block;
  }

  .header__mob-menu {
    order: 3;
    display: block;
  }

  .header__mob-menu-content {
    position: absolute;
    top: 68px;
    left: 0;
    width: 87%;
    height: calc(100vh - 68px);
    padding: 20px 30px 120px;
    background-color: var(--color-default-white);
    overflow-y: scroll;
    z-index: 100;

    transform: translateX(-100%);
  }

  .header__mob-menu.is-open .header__mob-menu-content {
    transform: translateX(0);
  }

  .header__mob-menu-list {
    list-style-type: none;
  }

  .header__mob-menu-list--top {
    padding: 0 0 10px;
  }

  .header__mob-menu-item-top,
  .header__mob-menu-list--bottom li {
    padding: 10px 0;
  }

  .header__mob-menu-item-top span,
  .header__mob-menu-list--bottom {
    font-weight: 700;
    font-size: 18px;
    line-height: 110%;
  }

  .header__mob-menu-item-top svg {
    transform: rotate(90deg);
    color: var(--color-gray-300);
  }

  .header__mob-menu-item.is-active .header__mob-menu-item-top svg {
    transform: rotate(-90deg);
  }

  .header__mob-menu [data-accordion="accordion-bottom"] {
    display: grid;
    grid-template-rows: 0fr;
    overflow: hidden;
    transition: grid-template-rows 0.3s ease;
  }

  .header__mob-menu [data-accordion="accordion-bottom"]>* {
    min-height: 0;
    overflow: hidden;
  }

  .header__mob-menu [data-accordion="accordion-item"].is-active [data-accordion="accordion-bottom"] {
    grid-template-rows: 1fr;
  }

  .header__mob-menu-list--sub {
    padding: 8px 0 5px;
  }

  .header__mob-menu-list--sub li {
    padding: 6px 0;
    font-size: 14px;
  }

  .header__mob-menu-list--bottom {
    padding: 10px 0 0;
    border-top: 1px solid var(--color-gray-200);
  }

  .header__toggle {
    position: relative;
    padding: 0;
    width: 54px;
    height: 48px;
  }

  .header__toggle span,
  .header__toggle::before,
  .header__toggle::after {
    width: 20px;
    height: 1px;
    background-color: var(--color-default-white);
  }

  .header__toggle::before,
  .header__toggle::after {
    content: "";
    position: absolute;
    left: 50%;
    transform: translateX(-50%);

    transition: var(--easy);
    -moz-transition: var(--easy);
    -o-transition: var(--easy);
    -webkit-transition: var(--easy);
  }

  .header__toggle::before {
    top: calc(50% - 5px);
  }

  .header__toggle::after {
    bottom: calc(50% - 5px);
  }

  .header__toggle.is-open span {
    display: none;
  }

  .header__toggle.is-open::before,
  .header__toggle.is-open::after {
    top: 50%;
  }

  .header__toggle.is-open::before {
    transform: translateX(-50%) translateY(-50%) rotate(45deg);
  }

  .header__toggle.is-open::after {
    transform: translateX(-50%) translateY(-50%) rotate(-45deg);
  }

  .header__mob-menu .header__search {
    max-width: 100%;
    margin: 0 0 10px;
  }

  .icon-max-desktop {
    display: none;
  }

  .icon-max-mobile {
    display: block;
  }


  /* Breadcrumbs */
  .breadcrumbs__wrapper {
    padding: 4px 0 10px;
  }


  /* Banners */
  .banners__slider {
    margin: 0 -14px;
    width: 100vw;
  }

  .banners__slide {
    height: 294px;
    border-radius: 0;
  }

  .banners__content-wrapper {
    gap: 21px;
    padding: 39px 20px;
    width: 60%;
  }

  .banners__content-wrapper img {
    width: 123px;
  }

  .banners__title {
    font-size: 28px;
    line-height: 110%;
  }

  .banners__slide .smallTitle-semiBold-14 {
    font-weight: 400;
  }

  .banners__slider.swiper-initialized {
    width: 100vw;
  }


  /* Special */
  .special {
    margin: 10px 0 0;
  }


  .flex-start {
    display: block;
  }


  /* Benefits */
  .benefits {
    margin: -26px -14px 0;
    padding: 0 14px;
    width: 100vw;
    overflow-x: scroll;
  }

  .benefits__item {
    padding: 14px 20px 30px;
    min-width: 320px;
  }

  .benefits__item-img {
    width: 70px;
    height: 70px;
  }

  .benefits__item-img svg {
    transform: scale(0.8);
  }

  .benefits__item .h4 {
    font-weight: 700;
    font-size: 18px;
    line-height: 110%;
  }

  .benefits__item p {
    max-width: 100%;
  }


  /* About */
  .about {
    grid-template-columns: 1fr;
  }

  .about__content {
    gap: 20px;
    padding: 0 6px;
  }

  .about .h1 {
    font-size: 28px;
  }

  .about__image {
    display: none;
  }


  /* Reasons */
  .reasons {
    gap: 20px;
    margin: 0;
    padding: 20px;
  }

  .reasons__list {
    margin: -10px 0 0;
  }

  .reasons__item {
    grid-template-columns: 1fr;
    padding: 20px 0 19px;
  }

  .reasons__item:last-child {
    padding: 20px 0 0;
  }

  .reasons__item .h5 {
    font-size: 18px;
  }

  .reasons__item p {
    font-size: 14px;
    line-height: 150%;
  }


  /* Features */
  .features-wrapper {
    margin: 0 -14px;
    width: 100vw;
    overflow-x: scroll;
  }

  .features {
    padding: 0 14px;
    display: flex;
    gap: 0;
  }

  .features__item:not(:last-child) {
    margin: 0 5px 0 0;
  }

  .features__item {
    flex-shrink: 0;
    gap: 0;
    align-content: stretch;
    padding: 15px 10px;
    width: 150px;
  }

  .features__item svg {
    width: 70px;
  }


  /* Cities */
  .cities {
    display: none;
  }



  /* Catalog */
  .catalog__wrapper {
    gap: 40px;
  }

  .top-wrapper .catalog__wrapper {
    gap: 30px;
  }

  .catalog .top-wrapper {
    padding: 0 0 40px;
  }

  .catalog__description--top {
    display: none;
  }

  .catalog__description--bottom {
    gap: 40px;
  }

  .catalog__description h3.h2,
  .catalog__description h2 {
    font-size: 24px;
  }

  .catalog h2.h3,
  .catalog__description h3 {
    font-size: 20px;
  }

  .catalog__description h4 {
    font-size: 18px;
  }

  .catalog__description h5 {
    font-size: 16px;
  }

  .catalog__description-text ul,
  .catalog__description-text ol {
    padding: 0 0 0 18px;
  }

  .catalog__categories {
    grid-template-columns: repeat(2, 50%);
  }

  .catalog__categories-item {
    overflow: hidden;
  }

  .catalog__categories-item:nth-child(n+7) {
    display: none;
  }

  .catalog__categories.is-open .catalog__categories-item:nth-child(n+7) {
    display: grid;
  }

  .catalog__categories-button {
    grid-column: span 2;
    display: flex;
  }

  .catalog__categories-button.is-open span {
    display: none;
  }

  .catalog__categories-button.is-open::after {
    content: "Показать меньше";
  }

  .catalog__tags {
    flex-wrap: nowrap;
    margin: 0 -14px;
    width: 100vw;
    max-height: 100%;
    overflow-x: scroll;
  }

  .catalog__tags-item {
    flex-shrink: 0;
    margin: 0 5px 0 0;
  }

  .catalog__tags-item:first-child {
    margin: 0 5px 0 14px;
  }

  .catalog__tags-item:last-child {
    margin: 0 14px 0 0;
  }

  .catalog__tags-item a.button {
    padding: 14px 18px;
    text-transform: none;
  }

  .catalog__main-content {
    gap: 40px;
  }

  .catalog__offer.h2 {
    font-size: 18px;
  }

  .catalog__offer a {
    margin: 0 0 0 5px;
    padding: 0;
  }

  .catalog__sorting {
    display: none;
  }

  .catalog__action-mob {
    display: flex;
  }

  .catalog__filter-open {
    padding: 8px 15px;
  }

  .catalog__filter-open svg {
    margin: 0 5px 0 0;
  }

  .catalog__action-mob .select-wrapper {
    height: 100%;
  }

  .catalog__action-mob select {
    padding: 15px 60px 15px 18px;
  }

  .catalog__main-content-grid {
    grid-template-columns: 1fr;
    gap: 0;
    margin: -20px 0 0;
    padding: 0 0 40px;
    border-top: none;
  }

  .catalog__main-content-grid .leftbar {
    display: none;
  }

  .catalog__main-content-right {
    gap: 40px;
  }

  .catalog__listing .listing {
    grid-template-columns: repeat(2, 1fr);
    margin: -0.5px 0;
  }

  .catalog__listing .listing:has(.search_no_goood) {
    grid-template-columns: 1fr;
  }

  .catalog__pagination a {
    padding: 18px;
    width: 48px;
    height: 48px;
  }

  .catalog__pagination-dots {
    height: 48px;
  }

  .catalog__pagination-dots span::before {
    left: 9px;
  }

  .catalog__pagination-dots span::after {
    right: 9px;
  }

  .catalog__form {
    display: flex;
    width: 100%;
    height: 359px;
    border-radius: 12px;
    background-color: var(--color-gray-100);
  }

  .catalog__gallery {
    display: flex;
    gap: 0;
    margin: 0 -14px;
    width: 100vw;
    overflow-x: scroll;
  }

  .catalog__gallery a {
    flex-shrink: 0;
    margin: 0 10px 0 0;
    width: 120px;
    height: 100px;
  }

  .catalog__gallery a:first-child {
    margin: 0 10px 0 14px;
  }

  .catalog__gallery a:last-child {
    margin: 0 14px 0 0;
  }

  .catalog__stages {
    display: flex;
    gap: 0;
    margin: 0 -14px;
    width: 100vw;
    overflow-x: scroll;
  }

  .catalog__stages-item {
    flex-shrink: 0;
    margin: 0 10px 0 0;
    width: 230px;
    height: 165px;
  }

  .catalog__stages-item:first-child {
    margin: 0 10px 0 14px;
  }

  .catalog__stages-item:last-child {
    margin: 0 14px 0 0;
  }

  .catalog__stages-item::before {
    font-size: 24px;
  }

  .catalog__stages-item::after {
    top: 12px;
  }

  .catalog__stages-item-content {
    align-items: flex-end;
  }

  .catalog__stages-item-content p {
    max-width: 97px;
  }

  .catalog__banner {
    grid-template-columns: 1fr;
    gap: 20px;
    padding: 20px;
  }

  .catalog__banner-left,
  .catalog__banner-right {
    gap: 20px;
  }

  .catalog__banner-left .button {
    padding: 12.5px 18px;
    max-width: 100%;
  }

  .catalog__banner-right ul {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .catalog__banner-right li:nth-child(1) {
    order: 1;
  }

  .catalog__banner-right li:nth-child(3) {
    order: 2;
  }

  .catalog__banner-right li:nth-child(5) {
    order: 3;
  }

  .catalog__banner-right li:nth-child(2) {
    order: 4;
  }

  .catalog__banner-right li:nth-child(4) {
    order: 5;
  }

  .catalog__banner-right p br {
    display: none;
  }

  .catalog__we-work {
    grid-template-columns: 1fr;
  }

  .catalog__we-work-content {
    padding: 4px 0;
  }

  .catalog__we-work-item:nth-child(3) .catalog__we-work-content,
  .catalog__we-work-item:nth-child(5) .catalog__we-work-content {
    padding: 6px 0;
  }

  .catalog__we-work-content .h5 {
    font-weight: 600;
    font-size: 14px;
    line-height: 130%;
  }

  .catalog__services {
    margin: 0 0 1px;
  }

  .catalog__services-list {
    flex-wrap: nowrap;
    margin: 0 -14px;
    width: 100vw;
    overflow-x: scroll;
  }

  .catalog__services-list li {
    flex-shrink: 0;
    margin: 0 5px 0 0;
  }

  .catalog__services-list li:first-child {
    margin: 0 5px 0 14px;
  }

  .catalog__services-list li:nth-last-child(2) {
    margin: 0 14px 0 0;
  }

  .catalog__services-list li:last-child {
    display: none;
  }

  .catalog__services-list li a {
    padding: 13.5px 16px;
  }

  .catalog table a {
    margin: 2px 0 0;
  }

  .catalog__selection {
    grid-template-columns: repeat(2, 1fr);
    gap: 3px;
  }

  .catalog__selection-column {
    gap: 3px;
  }

  .catalog__selection-column:nth-child(3) {
    grid-column: span 2;
    grid-template-columns: repeat(2, 1fr);
  }

  .catalog__selection-column:last-child {
    grid-column: span 2;
  }

  .catalog__selection-block {
    padding: 13px 15px 10px;
  }

  .catalog__selection-block .h5 {
    font-weight: 600;
    font-size: 14px;
    line-height: 130%;
  }

  .catalog__selection-block .prices-inputs {
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
  }

  .catalog__selection-block .prices-inputs input {
    padding: 13px 2px;
    width: 100%;
  }

  /* .filter__dash {
    display: none;
  } */
  .catalog__selection-list.with-select {
    margin: 3px 0 0;
    gap: 5px;
  }

  .catalog__selection-block .select-wrapper {
    width: 114px;
  }

  .catalog__selection-button {
    width: 100%;
    max-width: 100%;
    font-size: 14px;
  }

  .advantages__list {
    display: flex;
    margin: 0 -14px;
    width: 100vw;
    overflow-x: scroll;
  }

  .advantages__item {
    flex-shrink: 0;
    width: 160px;
  }

  .advantages__item:first-child {
    margin: 0 0 0 14px;
  }

  .advantages__item:last-child {
    margin: 0 14px 0 0;
  }

  .advantages__item-container {
    position: static;
    padding: 20px 14px;
    max-height: 100%;
    height: 100%;
    border-top: 1px solid var(--color-blue-100);
  }

  .advantages__item-container .h5 {
    font-weight: 600;
    font-size: 14px;
    line-height: 130%;
    text-align: left;
  }

  .advantages__item-invisible {
    max-height: 1000px;
  }

  .advantages__item:nth-child(5) .advantages__item-container {
    border-left: 0;
  }

  .advantages__item:nth-child(1) .advantages__item-container {
    border-radius: 12px 0 0 12px;
  }

  .advantages__item:nth-child(4) .advantages__item-container {
    border-radius: 0;
  }

  .advantages__item:nth-child(5) .advantages__item-container {
    border-radius: 0;
  }

  .advantages__item:nth-child(8) .advantages__item-container {
    border-radius: 0 12px 12px 0;
  }

  .advantages__item-visible {
    gap: 8px;
    justify-items: start;
    padding: 0 0 10px;
  }

  .advantages__item-image {
    width: 132px;
    padding: 20px;
  }

  .advantages__item-invisible {
    font-size: 12px;
  }

  .advantages__item-invisible p {
    padding: 0;
    text-align: left;
  }


  /* Mini-card */
  .mini-card {
    display: flex;
    flex-direction: column;
  }

  .mini-card__link {
    flex-grow: 1;
    padding: 14px 13px;
  }

  .mini-card__description {
    display: none;
  }

  .mini-card__title {
    margin: 0 0 15px;
  }

  .mini-card__specifications {
    margin: 0 0 15px;
  }

  .mini-card__specifications-item::after {
    bottom: 1px;
  }

  .mini-card__specifications-item-left.efficiency span {
    display: none;
  }

  .mini-card__specifications-item-left.efficiency::after {
    content: "Производ.:";
  }

  .mini-card__price-block {
    gap: 2px;
  }

  .mini-card__price-actual {
    font-size: 14px;
    line-height: 150%;
  }

  .mini-card__price-block:has(.mini-card__price-old) .mini-card__price-old {
    font-size: 10px;
  }

  .mini-card__sale {
    font-size: 8px;
  }

  .mini-card__art-block {
    gap: 2px;
    justify-items: end;
  }

  .mini-card__buttons {
    position: static;
    display: grid;
    padding: 0 14px 14px;
    width: 100%;
    border-radius: 0;
    border: none;
    background-color: transparent;
  }

  .mini-card__buttons .button-primary {
    width: 100%;
    text-wrap: nowrap;
  }

  .mini-card__button-mob {
    display: block;
  }

  .mini-card__button-desk,
  .mini-card__buttons .button-secondary {
    display: none;
  }


  /* Listing */
  .listing .mini-card:nth-child(-n+4) {
    border-top: 0.5px solid var(--color-gray-100);
  }

  .listing .mini-card:nth-child(-n+2) {
    border-top: 1px solid var(--color-gray-100);
  }

  .listing .mini-card:nth-last-child(-n+4) {
    border-bottom: 0.5px solid var(--color-gray-100);
  }

  .listing .mini-card:nth-last-child(-n+2) {
    border-bottom: 1px solid var(--color-gray-100);
  }

  .listing .mini-card:nth-child(4n-3) {
    border-left: 0.5px solid var(--color-gray-100);
  }

  .listing .mini-card:nth-child(odd) {
    border-left: 1px solid var(--color-gray-100);
  }

  .listing .mini-card:nth-child(4n) {
    border-right: 0.5px solid var(--color-gray-100);
  }

  .listing .mini-card:nth-child(even) {
    border-right: 1px solid var(--color-gray-100);
  }

  .listing .mini-card:nth-child(1) {
    border-radius: 12px 0 0 0;
  }

  .listing .mini-card:nth-child(2) {
    border-radius: 0 12px 0 0;
  }

  .listing .mini-card:nth-child(4) {
    border-radius: 0;
  }


  /* Filter */
  .mobile-filter {
    position: fixed;
    top: 0;
    left: 0;
    margin: 0;
    padding: 20px 20px 150px;
    width: 100vw;
    height: 100vh;
    overflow-y: scroll;
    background-color: var(--color-default-white);
    z-index: 1000;

    transform: translateY(-100%);
    transition: var(--easy);
    -moz-transition: var(--easy);
    -o-transition: var(--easy);
    -webkit-transition: var(--easy);
  }

  .mobile-filter.is-open {
    transform: translateY(0);
  }

  .mobile-filter .header__catalog-menu-banner {
    display: none;
  }

  .filter__button-apply {
    display: flex;
    margin: -20px 0 0;
  }

  .filter__button-close {
    position: absolute;
    top: 10px;
    right: 20px;
    display: flex;
    width: 40px;
    height: 40px;
  }

  .filter__button-close::before,
  .filter__button-close::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 20px;
    height: 2px;
    border-radius: 2px;
    background-color: var(--color-gray-300);
  }

  .filter__button-close::before {
    transform: translateX(-50%) translateY(-50%) rotate(45deg);
  }

  .filter__button-close::after {
    transform: translateX(-50%) translateY(-50%) rotate(-45deg);
  }


  /* Core-slider */
  .core-slider-wrapper {
    margin: 0 auto;
    max-width: calc(100vw - 28px);
  }


  /* Viewed */
  .viewed__slider {
    grid-template-columns: repeat(2, 1fr);
  }

  .viewed__slider .mini-card__link {
    display: flex;
    gap: 0;
  }

  .viewed__slider .mini-card__image-wrapper {
    margin: 0 0 10px;
    max-height: 124px;
  }

  .viewed__slider .mini-card__title {
    margin: 0 0 10px;
    text-align: center;
    max-height: 46px;
  }

  .viewed__slider .mini-card__price-block {
    display: grid;
    grid-template-columns: 1fr;
    justify-items: center;
  }

  .viewed__slider-box>.button-arrow-prev {
    left: -8px;
  }

  .viewed__slider-box>.button-arrow-next {
    right: -8px;
  }


  /* Similar */
  .similar__list {
    grid-template-columns: repeat(2, 1fr);
  }

  .similar__list .mini-card:first-child {
    border-radius: 12px 0 0 0;
  }

  .similar__list .mini-card:nth-child(2) {
    border-radius: 0 12px 0 0;
  }

  .similar__list .mini-card:nth-child(3) {
    border-radius: 0 0 0 12px;
  }

  .similar__list .mini-card:last-child {
    border-radius: 0 0 12px 0;
  }

  .similar__list .mini-card__link {
    padding: 14px;
  }


  /* Reviews */
  .reviews__slider {
    display: block;
    max-width: calc(100vw - 28px);
    padding-top: 20px;
  }

  .reviews__slider::after {
    left: -14px;
    width: calc(100% + 28px);
  }

  .reviews__slider.swiper-initialized {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    overflow: hidden;
  }

  .reviews__slider-box {
    position: relative;
    max-width: calc(100vw - 28px);
  }

  .reviews__slider-box>.button-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    padding: 0;
    width: 36px;
    height: 36px;
    border-radius: 6px;
    border: 1px solid var(--color-gray-100);
    background-color: var(--color-default-white);
    cursor: pointer;
    z-index: 10;
  }

  .reviews__slider-box>.button-arrow-prev {
    left: -18px;
  }

  .reviews__slider-box>.button-arrow-next {
    right: -18px;
  }

  .reviews__slider-box>.button-arrow svg {
    color: var(--color-gray-300);
  }

  .reviews__slider-box>.button-arrow-prev svg {
    transform: rotate(180deg);
  }

  .reviews__slide-bottom span {
    min-height: 100%;
  }


  /* Brands */
  .brands.mb-30 {
    margin-bottom: 0;
  }

  .brands {
    padding: 14px 0;
  }

  .brands__item {
    padding: 18px;
  }

  .brands__slider-box>.button-arrow-prev {
    left: -8px;
  }

  .brands__slider-box>.button-arrow-next {
    right: -8px;
  }


  /* Good */
  .good {
    padding: 0 0 56px;
  }

  .good .top-wrapper {
    padding: 0 0 53px;
  }

  .good__main-content-grid {
    position: relative;
    grid-template-columns: 1fr;
    gap: 40px;
  }

  .good__wrapper {
    gap: 40px;
  }

  .good__top {
    grid-template-columns: 1fr;
    gap: 40px;
  }

  .good__art {
    position: absolute;
    top: -64px;
  }

  .good__images {
    max-width: calc(100vw - 28px);
    gap: 10px;
  }

  .good__mini-desc {
    display: none;
  }

  .good__order {
    position: relative;
    display: grid !important;
    grid-template-columns: repeat(2, 1fr);
    gap: 28px 14px;
  }

  .good__order-price {
    order: 1;
  }

  .good__sale {
    font-size: 8px;
  }

  .good__order-montage {
    order: 2;
  }

  .good__order-montage::before {
    content: none;
  }

  .good__order-montage a {
    padding: 0 0 2px;
  }

  .good__order-buttons {
    order: 3;
    grid-column: span 2;
  }

  .good__order-buttons::before {
    top: -15px;
    left: 0;
    width: 100%;
  }

  .good__order-buttons .button {
    padding: 13px 24px;
  }

  .good__main-info {
    margin: -20px 0 0;
    padding: 0;
  }

  .good__tabs-wrapper {
    margin: 0 -14px;
    width: 100vw;
  }

  .good__tabs-wrapper::after {
    content: none;
  }

  .good__tabs-info {
    padding: 20px;
  }

  .good__tab-info img,
  .good__tab-info iframe {
    width: 100% !important;
    height: auto !important;
  }

  .good .rightbar-inner {
    gap: 43px;
  }

  .good .rightbar.mob .bar__form {
    order: 1;
  }

  .good .rightbar.mob .bar__item {
    order: 2;
  }


  /* Tab */
  .tab {
    padding: 13px 16px;
  }

  .tab:first-child {
    margin: 0 4px 0 14px;
    ;
  }

  .tab:last-child {
    margin: 0 14px 0 0;
  }


  /* Works */
  .works__tags {
    flex-wrap: nowrap;
    margin: 0 -14px;
    width: 100vw;
    max-height: 100%;
    overflow-x: scroll;
  }

  .works__tag {
    flex-shrink: 0;
    margin: 0 5px 0 0;
  }

  .works__tag:first-child {
    margin: 0 5px 0 14px;
  }

  .works__tag:last-child {
    margin: 0 14px 0 0;
  }

  .works__list {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }

  .works__item-image-wrapper {
    height: 140px;
  }


  /* Page */
  .page {
    gap: 20px;
    font-size: 14px;
  }

  .page__contacts {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .page__cover {
    left: -14px;
    width: calc(100% + 28px);
    height: 300px;
  }

  .page__cover img {
    border-radius: 0;
  }

  .page__intro {
    gap: 20px;
    margin: 190px 0 0;
    padding: 20px;
  }

  .page__intro-top,
  .page__intro-bottom {
    display: grid;
    grid-template-columns: 1fr;
    gap: 5px;
  }

  .page__intro-top span:first-child {
    margin: 0;
  }

  .page__intro h1 {
    font-size: 24px;
  }

  .page__intro .ya-share2__list {
    padding: 0;
  }

  .page__toc {
    padding: 20px;
  }

  .page__toc .h4 {
    font-size: 16px;
  }

  .page__toc ol {
    padding: 0 0 0 20px;
  }

  .referal__wrapper {
    padding: 20px;
  }

  .referal__wrapper .form_all_info {
    gap: 20px;
  }


  /* Work */
  .work__top {
    gap: 20px;
  }

  .work__images {
    gap: 5px;
    padding: 10px;
  }

  .work__gallery img {
    width: 80px;
    height: 66px;
  }

  .work__main-photo img {
    max-height: 239px;
  }

  .work_images {
    grid-template-columns: repeat(4, 1fr);
    gap: 5px;
    padding: 14px;
  }

  .work_images a:not(:first-child) {
    height: 66px;
  }

  .work_images a:first-child {
    grid-column: span 4;
  }


  /* Error */
  .error__wrapper .h2 {
    font-size: 18px;
  }


  /* Footer */
  .footer__top {
    padding: 30px 2px 25px;
  }

  .footer__top-wrapper {
    grid-template-columns: 1fr;
    gap: 30px;
  }

  .footer__top-left {
    gap: 20px;
  }

  .footer__top-left br {
    display: none;
  }

  .footer__mail {
    margin: 10px 0 0;
  }

  .footer__menu {
    grid-template-columns: 1fr;
    gap: 0;
    margin: 0;
    border-top: 1px solid var(--color-gray-300);
  }

  .footer__menu-item:nth-child(1),
  .footer__menu-item:nth-child(4) {
    grid-row: span 1;
  }

  .footer__menu-item:nth-child(3) {
    order: 3;
  }

  .footer__menu-item:nth-child(4) {
    order: 4;
  }

  .footer__menu-item {
    display: block;
    padding: 20px 0 21px;
    border-bottom: 1px solid var(--color-gray-300);
  }

  .footer__menu-item-top {
    font-weight: 600;
    font-size: 14px;
    font-style: normal;
    line-height: 130%;
  }

  .footer__menu-item-top svg {
    display: block;
    transform: rotate(90deg);
    color: var(--color-gray-200);
  }

  .footer__menu-item.is-active svg {
    transform: rotate(270deg);
  }

  .footer__menu [data-accordion="accordion-bottom"] {
    display: grid;
    grid-template-rows: 0fr;
    overflow: hidden;
    transition: grid-template-rows 0.3s ease;
  }

  .footer__menu [data-accordion="accordion-bottom"]>* {
    min-height: 0;
    overflow: hidden;
  }

  .footer__menu [data-accordion="accordion-item"].is-active [data-accordion="accordion-bottom"] {
    grid-template-rows: 1fr;
  }

  .footer__menu-item-top br {
    display: none;
  }

  .footer__menu-list {
    padding: 10px 0 0;
  }

  .footer__menu-list br {
    display: none;
  }

  .footer__top-right {
    gap: 29px;
    margin: 0;
  }

  .footer__top-right .h5 {
    font-weight: 600;
    font-size: 14px;
    font-style: normal;
    line-height: 130%;
  }

  .footer__bottom {
    padding: 30px 2px;
  }

  .footer__bottom-wrapper {
    grid-template-columns: 1fr;
    gap: 20px;
    justify-items: start;
  }

  .footer__copyright {
    position: relative;
    order: -1;
    grid-column: 1/2;
    margin: 0 0 20px;
  }

  .footer__copyright::after {
    content: "";
    position: absolute;
    bottom: -20px;
    left: 0;
    width: calc(100vw - 32px);
    height: 1px;
    background-color: var(--color-gray-300);
  }


  /* Remstroy */
  .remstroy {
    margin: 9px 0 0;
  }


  /* Messengers */
  .messengers-button {
    right: -15px;
    bottom: -15px;
    width: 60px;
    height: 60px;
  }

  .messengers {
    padding: 30px;
  }

  .messengers__title {
    margin: 0 0 20px;
    font-size: 22px;
  }

  .messengers__grid {
    padding: 0 8px;
  }

  .messengers__wa-link::after {
    content: 'Написать в WhatsApp';
  }

  .messengers__tg-link::after {
    content: 'Написать в Telegram';
  }

  .messengers__max-link::after {
    content: 'Написать в Max';
  }

  .messengers a span,
  .messengers__text,
  .messengers__text+picture,
  .messengers__qr-wrapper {
    display: none;
  }




  /* Cart */
  .cart__wrapper {
    grid-template-columns: 1fr;
    gap: 60px;
  }

  .cart__goods {
    gap: 20px;
  }

  .cart__item {
    flex-wrap: wrap;
    gap: 10px 20px;
  }

  .cart__item-image {
    order: 1;
    width: 92px;
    height: 92px;
  }

  .cart__item-info {
    order: 2;
    width: calc(100% - 156px);
  }

  .cart__item-info .cart__item-size {
    font-size: 12px;
  }

  .cart__item-delete {
    order: 3;
    width: 24px;
    height: 24px;
  }

  .cart__item-count {
    order: 4;
    width: 92px;
  }

  .cart__item-count .counter {
    padding: 11px 10px;
  }

  .cart__item-total {
    order: 5;
    width: auto;
  }

  .cart__item-delete::before,
  .cart__item-delete::after {
    width: 18px;
  }

  .cart__list-total .total {
    margin: 0;
    width: auto;
  }

  .cart__order {
    gap: 30px;
  }



  /* Dialogue */
  .dialogue {
    bottom: 100px;
    right: 20px;
    gap: 15px;
    padding: 15px;
    max-width: 268px;
  }

  .dialogue__top {
    grid-template-columns: 55px auto 18px;
    gap: 10px;
  }

  .dialogue__image {
    width: 55px;
    height: 55px;
  }

  .dialogue__manager-name {
    font-size: 14px;
  }

  .dialogue__manager-position,
  .dialogue__text {
    font-size: 12px;
  }

  .cart-button {
    width: 48px;
    height: 48px;
    border-radius: 12px 0 0 12px;
    position: fixed;
    z-index: 100;
    right: 0;
    top: 80px;
  }

  .cart-button__goods-value {
    left: -4px;
    width: 14px;
    height: 14px;
    background: #37c8fa;
    font-weight: 600;
    font-size: 8px;
    line-height: 110%;
  }

  .header__cart {
    position: absolute;
    top: 67px;
    right: -122px;
    border-radius: 12px 0 0 12px !important;
    z-index: 100;
  }

  .header__contacts {
    position: relative;
  }

  .header__cart-count {
    left: -5px;
    background: var(--color-blue-200);
  }
  .header__cart[data-value="0"] {
    display: none;
  }

  .good__order-buttons__container {
    width: 100%;
    display: grid;
    grid-template-columns: auto 56px;
  }

  .article__gallery {
    display: flex;
    gap: 0;
    margin: 10px -10px;
    padding: 10px;
    width: 100vw;
    overflow-y: scroll;
  }

  .article__gallery figure {
    flex-shrink: 0;
  }

  .article__gallery figure:not(:last-child) {
    margin: 0 10px 0 0;
  }

  .article__gallery img {
    width: 236px !important;
    height: auto !important;
  }

  .faq__item-top {
    padding: 20px 14px;
  }

  .faq__item-bottom {
    padding: 0 14px 20px;
  }
}

@media (min-width: 769px) {

  /* Banners */
  .banners__content-wrapper {
    width: 50%;
  }
}
