@charset "UTF-8";

/* Reset and base styles  */

* {
  padding: 0px;
  margin: 0px;
  border: none;
  box-sizing: border-box;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

/* Links */

a,
a:link,
a:visited {
  text-decoration: none;
  color: inherit;
}

/* Common */

aside,
nav,
footer,
header,
section,
main {
  display: block;
}

h1,
h2,
h3,
h4,
h5,
h6,
p {
  font-size: inherit;
  font-weight: inherit;
}

ul,
ul li {
  list-style: none;
}

img {
  vertical-align: top;
}

address {
  font-style: normal;
}

/* Form */

input,
textarea,
button,
select {
  font-family: inherit;
  font-size: inherit;
  color: inherit;
  background-color: transparent;
}

input::-ms-clear {
  display: none;
}

button,
input[type=submit] {
  display: inline-block;
  box-shadow: none;
  background-color: transparent;
  background: none;
  cursor: pointer;
}

input:focus,
input:active,
button:focus,
button:active {
  outline: none;
}

button::-moz-focus-inner {
  padding: 0;
  border: 0;
}

label {
  cursor: pointer;
}

legend {
  display: block;
}

@font-face {
  font-family: "ALS Hauss";
  src: url("../assets/fonts/ALSHauss.eot");
  src: local("ALS Hauss"), local("ALSHauss"), url("../assets/fonts/ALSHauss.eot?#iefix") format("embedded-opentype"), url("../assets/fonts/ALSHauss.woff2") format("woff2"), url("../assets/fonts/ALSHauss.woff") format("woff"), url("../assets/fonts/ALSHauss.ttf") format("truetype"), url("../assets/fonts/ALSHauss.svg#ALSHauss") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

:root {
  --container-width: 1560px;
  --font-main: "ALS Hauss";
  --color-accent: #e5c184;
  --color-blue: #444444;
  --color-black: #0a101a;
  --color-darkgray: #5a5a5a;
  --color-gray: #6d6d6d;
  --color-bg: #f1f3f6;
  --color-white: #ffffff;
  --color-bg-2: #f3f7ff;
  --gradient-accent: linear-gradient(323.38deg, #715018 3.19%, #e2bb78 94.8%);
  --gradient-accent-hover: linear-gradient(323.38deg, #50370b 3.19%, #c79238 94.8%);
  --marquee-speed: 30s;
  --header-height: clamp(85px, (95 * var(--mixin-middle-coef)) / 1920, 95px);
  --mixin-middle-coef: 100vw;
}

html {
  scrollbar-gutter: stable;
  scroll-behavior: smooth;
  height: 100%;
}

html.no-scroll,
html:has(.header__burger input:checked) {
  overflow: hidden;
}

body {
  background-color: var(--color-bg);
  color: var(--color-blue);
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-direction: column;
  min-height: 100%;
  font-family: var(--font-main);
}

main {
  flex-grow: 1;
}

img {
  pointer-events: none;
}

.container {
  max-width: var(--container-width);
  width: 87.5vw;
  margin: 0 auto;
  position: relative;
}

* {
  caret-color: var(--color-accent);
}

*::-webkit-scrollbar {
  width: 6px;
  height: 6px;
  /* ширина scrollbar */
}

*::-webkit-scrollbar-track {
  background: var(--color-bg);
  /* цвет дорожки */
}

*::-webkit-scrollbar-thumb {
  background-color: var(--color-accent);
  /* цвет плашки */
}

.section {
  margin-bottom: clamp(135px * 0.33, 135 * var(--mixin-middle-coef) / 1920, 135px);
}

.section-title {
  font-weight: bold;
  font-size: clamp(65px * 0.33, 65 * var(--mixin-middle-coef) / 1920, 65px);
  line-height: 100%;
  margin-bottom: clamp(70px * 0.33, 70 * var(--mixin-middle-coef) / 1920, 70px);
  padding-left: clamp(10px * 0.33, 10 * var(--mixin-middle-coef) / 1920, 10px);
}

.section-title.pre-hidden {
  opacity: 0;
  -moz-transform: translate(-50px, 0);
  -ms-transform: translate(-50px, 0);
  -webkit-transform: translate(-50px, 0);
  -o-transform: translate(-50px, 0);
  transform: translate(-50px, 0);
}

.link {
  background: var(--gradient-accent);
  background-size: 200% 200%;
  background-clip: text;
  -webkit-background-clip: text;
  color: var(--color-blue) !important;
  transition: color 0.2s ease-in-out;
  opacity: 0.87;
}

.btn {
  border-radius: clamp(20px * 0.33, 20 * var(--mixin-middle-coef) / 1920, 20px);
  line-height: 120%;
  font-weight: bold;
  overflow: hidden;
  -webkit-transition: all 0.2s ease-out 0s;
  -moz-transition: all 0.2s ease-out 0s;
  -ms-transition: all 0.2s ease-out 0s;
  -o-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
  display: inline-block;
  text-align: center;
}

.btn:not(.btn_outline) {
  min-width: clamp(334px * 0.33, 334 * var(--mixin-middle-coef) / 1920, 334px);
  font-size: clamp(20px * 0.33, 20 * var(--mixin-middle-coef) / 1920, 20px);
  padding: clamp(22px * 0.33, 22 * var(--mixin-middle-coef) / 1920, 22px) clamp(40px * 0.33, 40 * var(--mixin-middle-coef) / 1920, 40px);
}

.btn:not(.btn_outline)::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  opacity: 0;
  -webkit-transition: all 0.2s ease-out 0s;
  -moz-transition: all 0.2s ease-out 0s;
  -ms-transition: all 0.2s ease-out 0s;
  -o-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}

.btn span {
  z-index: 1;
  position: relative;
}

.btn_outline {
  border: 1px solid var(--color-blue);
  padding: clamp(16px * 0.33, 16 * var(--mixin-middle-coef) / 1920, 16px) clamp(40px * 0.33, 40 * var(--mixin-middle-coef) / 1920, 40px);
  font-size: clamp(15px * 0.33, 15 * var(--mixin-middle-coef) / 1920, 15px);
}

.btn_outline.btn_inversed {
  border: 1px solid var(--color-white);
}

.btn_primary {
  background: var(--gradient-accent);
  color: var(--color-white) !important;
  position: relative;
}

.btn_primary::before {
  background: var(--gradient-accent-hover);
}

.btn_secondary {
  background-color: var(--color-gray);
  color: var(--color-white);
  position: relative;
}

.btn_secondary::before {
  background: var(--gradient-accent-hover);
}

.swiper-navigation {
  position: relative;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
}

.swiper-navigation .swiper-pagination {
  position: absolute;
  top: 50%;
  left: 50%;
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.swiper-navigation .swiper-pagination.pre-hidden {
  -moz-transform: translate(-50%, calc(-50% + 50px));
  -ms-transform: translate(-50%, calc(-50% + 50px));
  -webkit-transform: translate(-50%, calc(-50% + 50px));
  -o-transform: translate(-50%, calc(-50% + 50px));
  transform: translate(-50%, calc(-50% + 50px));
  opacity: 0;
}

.swiper-navigation .swiper-pagination-bullet {
  background-color: var(--color-blue);
  opacity: 0.36;
  -webkit-transition: opacity 0.2s ease-out 0s;
  -moz-transition: opacity 0.2s ease-out 0s;
  -ms-transition: opacity 0.2s ease-out 0s;
  -o-transition: opacity 0.2s ease-out 0s;
  transition: opacity 0.2s ease-out 0s;
  width: clamp(12px * 0.33, 12 * var(--mixin-middle-coef) / 1920, 12px);
  height: clamp(12px * 0.33, 12 * var(--mixin-middle-coef) / 1920, 12px);
  margin: 0 clamp(7px * 0.33, 7 * var(--mixin-middle-coef) / 1920, 7px) !important;
  flex-shrink: 0;
}

.swiper-navigation .swiper-pagination-bullet-active {
  opacity: 1;
}

.swiper-navigation .swiper-buttons {
  margin-left: auto;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  gap: clamp(12px * 0.33, 12 * var(--mixin-middle-coef) / 1920, 12px);
  z-index: 10;
}

.swiper-navigation .swiper-buttons.pre-hidden {
  -moz-transform: translate(50px, 0);
  -ms-transform: translate(50px, 0);
  -webkit-transform: translate(50px, 0);
  -o-transform: translate(50px, 0);
  transform: translate(50px, 0);
  opacity: 0;
}

.swiper-navigation .swiper-button {
  margin: 0;
  border-radius: clamp(20px * 0.33, 20 * var(--mixin-middle-coef) / 1920, 20px);
  background-color: var(--color-blue);
  padding: clamp(25px * 0.33, 25 * var(--mixin-middle-coef) / 1920, 25px) clamp(44px * 0.33, 44 * var(--mixin-middle-coef) / 1920, 44px);
  position: static;
  -webkit-transition: opacity 0.2s ease-out 0s;
  -moz-transition: opacity 0.2s ease-out 0s;
  -ms-transition: opacity 0.2s ease-out 0s;
  -o-transition: opacity 0.2s ease-out 0s;
  transition: opacity 0.2s ease-out 0s;
  width: auto;
}

.swiper-navigation .swiper-button::after {
  content: none;
}

.swiper-navigation .swiper-button svg {
  width: clamp(46px * 0.33, 46 * var(--mixin-middle-coef) / 1920, 46px);
  height: clamp(17px * 0.33, 17 * var(--mixin-middle-coef) / 1920, 17px);
  flex-shrink: 0;
}

.swiper-navigation .swiper-button-disabled {
  cursor: not-allowed !important;
}

.swiper-slide {
	height: auto;	
}

.swiper-slide.pre-hidden {
  opacity: 0;
  -moz-transform: translate(0, 100px);
  -ms-transform: translate(0, 100px);
  -webkit-transform: translate(0, 100px);
  -o-transform: translate(0, 100px);
  transform: translate(0, 100px);
}

.popup-overlay {
  background-color: rgba(0, 0, 0, 0.4);
  position: fixed;
  top: 0;
  left: 0;
  width: 100dvw;
  height: 100dvh;
  z-index: 1000;
  overflow: hidden;
  display: none;
}

.popup-overlay__wrapper {
  overflow: auto;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 50px 0;
}

.popup {
  background-color: var(--color-white);
  border-radius: clamp(20px * 0.33, 20 * var(--mixin-middle-coef) / 1920, 20px);
  padding: clamp(95px * 0.33, 95 * var(--mixin-middle-coef) / 1920, 95px) clamp(60px * 0.33, 60 * var(--mixin-middle-coef) / 1920, 60px) clamp(80px * 0.33, 80 * var(--mixin-middle-coef) / 1920, 80px);
  width: clamp(764px * 0.33, 764 * var(--mixin-middle-coef) / 1920, 764px);
  position: relative;
  display: none;
  -moz-transform: translate(0, -100px);
  -ms-transform: translate(0, -100px);
  -webkit-transform: translate(0, -100px);
  -o-transform: translate(0, -100px);
  transform: translate(0, -100px);
  -webkit-transition: transform 0.2s ease-out 0s;
  -moz-transition: transform 0.2s ease-out 0s;
  -ms-transition: transform 0.2s ease-out 0s;
  -o-transition: transform 0.2s ease-out 0s;
  transition: transform 0.2s ease-out 0s;
  overflow: hidden;
  flex-shrink: 0;
  margin-block: auto;
}

.popup.shown {
  -moz-transform: translate(0, 0px);
  -ms-transform: translate(0, 0px);
  -webkit-transform: translate(0, 0px);
  -o-transform: translate(0, 0px);
  transform: translate(0, 0px);
}

.popup:has(form[data-status="submitting"]) .popup__loader{
  opacity: 1;
  pointer-events: auto;
} 

.popup__loader {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background-color: rgba(0, 0, 0, 0.6);
  z-index: 90;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  pointer-events: none;
  -webkit-transition: opacity 0.2s ease-out 0s;
  -moz-transition: opacity 0.2s ease-out 0s;
  -ms-transition: opacity 0.2s ease-out 0s;
  -o-transition: opacity 0.2s ease-out 0s;
  transition: opacity 0.2s ease-out 0s;
}

.popup__loader .wpcf7-spinner {
  visibility: visible;
}

.popup__close {
  z-index: 100;
  position: absolute;
  top: clamp(45px * 0.33, 45 * var(--mixin-middle-coef) / 1920, 45px);
  right: clamp(45px * 0.33, 45 * var(--mixin-middle-coef) / 1920, 45px);
}

.popup__close svg {
  width: clamp(33px * 0.33, 33 * var(--mixin-middle-coef) / 1920, 33px);
  height: clamp(33px * 0.33, 33 * var(--mixin-middle-coef) / 1920, 33px);
}

.popup__close svg path {
  -webkit-transition: all 0.2s ease-out 0s;
  -moz-transition: all 0.2s ease-out 0s;
  -ms-transition: all 0.2s ease-out 0s;
  -o-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}

.popup__title {
  font-size: clamp(45px * 0.33, 45 * var(--mixin-middle-coef) / 1920, 45px);
  line-height: 120%;
  color: var(--color-blue);
  font-weight: bold;
}

.popup-bid .popup__title,
.popup-kp .popup__title {
  margin-bottom: clamp(40px * 0.33, 40 * var(--mixin-middle-coef) / 1920, 40px);
}

.popup-request-price .popup__title {
  margin-bottom: clamp(40px * 0.33, 40 * var(--mixin-middle-coef) / 1920, 40px);
}

.popup-request-price__info {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  gap: clamp(15px * 0.33, 15 * var(--mixin-middle-coef) / 1920, 15px);
  padding-bottom: clamp(65px * 0.33, 65 * var(--mixin-middle-coef) / 1920, 65px);
  margin-bottom: clamp(40px * 0.33, 40 * var(--mixin-middle-coef) / 1920, 40px);
  position: relative;
}

.popup-request-price__info::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  height: 1px;
  width: 100%;
  background-color: var(--color-blue);
  opacity: 0.24;
}

.popup-request-price__img {
  width: clamp(240px * 0.33, 240 * var(--mixin-middle-coef) / 1920, 240px);
  height: clamp(230px * 0.33, 230 * var(--mixin-middle-coef) / 1920, 230px);
  overflow: hidden;
  flex-shrink: 0;
}

.popup-request-price__img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.popup-request-price__title {
  font-size: clamp(38px * 0.33, 38 * var(--mixin-middle-coef) / 1920, 38px);
  line-height: 120%;
  margin-bottom: clamp(25px * 0.33, 25 * var(--mixin-middle-coef) / 1920, 25px);
  padding-left: clamp(30px * 0.33, 30 * var(--mixin-middle-coef) / 1920, 30px);
  font-weight: bold;
}

.popup-request-price__params ul {
  padding-left: clamp(30px * 0.33, 30 * var(--mixin-middle-coef) / 1920, 30px);
  opacity: 0.77;
  line-height: 140%;
  font-size: clamp(20px * 0.33, 20 * var(--mixin-middle-coef) / 1920, 20px);
}

.popup-request-price__params ul li {
  list-style: disc;
}

.popup-form__inputs {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-direction: column;
  gap: clamp(20px * 0.33, 20 * var(--mixin-middle-coef) / 1920, 20px);
  margin-bottom: clamp(30px * 0.33, 30 * var(--mixin-middle-coef) / 1920, 30px);
}

.popup-form__submit {
  width: 100%;
  display: block;
  border-radius: clamp(10px * 0.33, 10 * var(--mixin-middle-coef) / 1920, 10px);
  margin-bottom: clamp(35px * 0.33, 35 * var(--mixin-middle-coef) / 1920, 35px);
}

.popup-form__policy label {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  gap: clamp(20px * 0.33, 20 * var(--mixin-middle-coef) / 1920, 20px);
}

.popup-form__policy input {
  appearance: none;
  width: clamp(26px * 0.33, 26 * var(--mixin-middle-coef) / 1920, 26px);
  height: clamp(26px * 0.33, 26 * var(--mixin-middle-coef) / 1920, 26px);
  border-radius: clamp(7px * 0.33, 7 * var(--mixin-middle-coef) / 1920, 7px);
  border: 1px solid var(--color-blue);
  cursor: pointer;
  -webkit-transition: background-color 0.2s ease-out 0s;
  -moz-transition: background-color 0.2s ease-out 0s;
  -ms-transition: background-color 0.2s ease-out 0s;
  -o-transition: background-color 0.2s ease-out 0s;
  transition: background-color 0.2s ease-out 0s;
}

.popup-form__policy input:checked {
  background-color: var(--color-blue);
}

.popup-form__policy span {
  color: var(--color-blue);
  font-size: clamp(16px * 0.33, 16 * var(--mixin-middle-coef) / 1920, 16px);
  line-height: 120%;
}

.popup-form__policy span .link {
  text-decoration: underline;
}

.wpcf7-form-control-wrap .wpcf7-not-valid-tip:not(:first-of-type) {
  display: none;
}

.input-group br {
  display: none;
}

.input-group label {
  font-size: clamp(16px * 0.33, 16 * var(--mixin-middle-coef) / 1920, 16px);
  line-height: 120%;
  margin-bottom: clamp(10px * 0.33, 10 * var(--mixin-middle-coef) / 1920, 10px);
  display: block;
}

.input-group input {
  font-size: clamp(16px * 0.33, 16 * var(--mixin-middle-coef) / 1920, 16px);
  line-height: 120%;
  color: var(--color-blue);
  padding: clamp(24px * 0.33, 24 * var(--mixin-middle-coef) / 1920, 24px) clamp(33px * 0.33, 33 * var(--mixin-middle-coef) / 1920, 33px);
  border-radius: clamp(20px * 0.33, 20 * var(--mixin-middle-coef) / 1920, 20px);
  display: block;
  width: 100%;
  background-color: var(--color-bg-2);
}

.input-group input::placeholder {
  color: #92a1bb;
}

.hidden-input {
  opacity: 0;
  position: absolute;
  z-index: -100;
  pointer-events: none;
  width: 0;
  height: 0;
}

.product-card {
  cursor: pointer;
  padding: clamp(20px * 0.33, 20 * var(--mixin-middle-coef) / 1920, 20px) clamp(20px * 0.33, 20 * var(--mixin-middle-coef) / 1920, 20px) clamp(30px * 0.33, 30 * var(--mixin-middle-coef) / 1920, 30px);
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-direction: column;
  gap: clamp(40px * 0.33, 40 * var(--mixin-middle-coef) / 1920, 40px);
  border-radius: clamp(20px * 0.33, 20 * var(--mixin-middle-coef) / 1920, 20px);
  background-color: #fff;
}

.product-card__img {
  background-color: var(--color-bg-2);
  width: 100%;
  height: clamp(411px * 0.33, 411 * var(--mixin-middle-coef) / 1920, 411px);
  border-radius: clamp(20px * 0.33, 20 * var(--mixin-middle-coef) / 1920, 20px);
  overflow: hidden;
}

.product-card__img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  -webkit-transition: transform 0.2s ease-out 0s;
  -moz-transition: transform 0.2s ease-out 0s;
  -ms-transition: transform 0.2s ease-out 0s;
  -o-transition: transform 0.2s ease-out 0s;
  transition: transform 0.2s ease-out 0s;
}

.product-card__desc {
  padding: 0 clamp(30px * 0.33, 30 * var(--mixin-middle-coef) / 1920, 30px) 0 clamp(14px * 0.33, 14 * var(--mixin-middle-coef) / 1920, 14px);
  overflow: hidden;
}

.product-card__title {
  font-weight: bold;
  font-size: clamp(38px * 0.33, 38 * var(--mixin-middle-coef) / 1920, 38px);
  line-height: 120%;
  margin-bottom: clamp(20px * 0.33, 20 * var(--mixin-middle-coef) / 1920, 20px);
}

.product-card__params {
  padding-left: clamp(26px * 0.33, 26 * var(--mixin-middle-coef) / 1920, 26px);
  opacity: 0.77;
  line-height: 140%;
  font-size: clamp(20px * 0.33, 20 * var(--mixin-middle-coef) / 1920, 20px);
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
}

.product-card__params li {
  list-style: disc;
}

.product-card .btn {
  width: 100%;
  border-radius: clamp(10px * 0.33, 10 * var(--mixin-middle-coef) / 1920, 10px);
  margin-top: auto;
}

.cert-card {
  cursor: pointer;
  border-radius: clamp(15px * 0.33, 15 * var(--mixin-middle-coef) / 1920, 15px);
  overflow: hidden;
  background-color: #fff;
}

.cert-card a {
  padding: clamp(15px * 0.33, 15 * var(--mixin-middle-coef) / 1920, 15px);
  display: block;
  width: 100%;
  height: 100%;
}

.cert-card img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  -webkit-transition: transform 0.2s ease-out 0s;
  -moz-transition: transform 0.2s ease-out 0s;
  -ms-transition: transform 0.2s ease-out 0s;
  -o-transition: transform 0.2s ease-out 0s;
  transition: transform 0.2s ease-out 0s;
}

.review-card {
  padding: clamp(20px * 0.33, 20 * var(--mixin-middle-coef) / 1920, 20px) clamp(20px * 0.33, 20 * var(--mixin-middle-coef) / 1920, 20px) clamp(30px * 0.33, 30 * var(--mixin-middle-coef) / 1920, 30px);
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-direction: column;
  gap: clamp(40px * 0.33, 40 * var(--mixin-middle-coef) / 1920, 40px);
  border-radius: clamp(20px * 0.33, 20 * var(--mixin-middle-coef) / 1920, 20px);
  background-color: #fff;
  min-height: clamp(430px * 0.33, 430 * var(--mixin-middle-coef) / 1920, 430px);
}

.review-card__head {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: start;
  gap: clamp(23px * 0.33, 23 * var(--mixin-middle-coef) / 1920, 23px);
}

.review-card__img {
  width: clamp(107px * 0.33, 107 * var(--mixin-middle-coef) / 1920, 107px);
  height: clamp(127px * 0.33, 127 * var(--mixin-middle-coef) / 1920, 127px);
  border-radius: clamp(20px * 0.33, 20 * var(--mixin-middle-coef) / 1920, 20px);
  overflow: hidden;
  flex-shrink: 0;
}

.review-card__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.review-card__crumb {
  padding: clamp(7px * 0.33, 7 * var(--mixin-middle-coef) / 1920, 7px) clamp(72px * 0.33, 72 * var(--mixin-middle-coef) / 1920, 72px);
  color: var(--color-white);
  font-weight: bold;
  border-radius: clamp(10px * 0.33, 10 * var(--mixin-middle-coef) / 1920, 10px);
  background-color: var(--color-gray);
  font-size: clamp(20px * 0.33, 20 * var(--mixin-middle-coef) / 1920, 20px);
  line-height: 120%;
}

.review-card__desc {
  padding: 0 clamp(30px * 0.33, 30 * var(--mixin-middle-coef) / 1920, 30px) 0 clamp(14px * 0.33, 14 * var(--mixin-middle-coef) / 1920, 14px);
}

.review-card__title {
  font-weight: bold;
  font-size: clamp(38px * 0.33, 38 * var(--mixin-middle-coef) / 1920, 38px);
  line-height: 120%;
  margin-bottom: clamp(20px * 0.33, 20 * var(--mixin-middle-coef) / 1920, 20px);
}

.review-card__text {
  opacity: 0.77;
  line-height: 140%;
  font-size: clamp(20px * 0.33, 20 * var(--mixin-middle-coef) / 1920, 20px);
}

.faq-item {
  border-radius: clamp(20px * 0.33, 20 * var(--mixin-middle-coef) / 1920, 20px);
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(180px * 0.33, 180 * var(--mixin-middle-coef) / 1920, 180px);
  background-color: var(--color-white);
  -webkit-transition: all 0.2s ease-out 0s;
  -moz-transition: all 0.2s ease-out 0s;
  -ms-transition: all 0.2s ease-out 0s;
  -o-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
  cursor: pointer;
  padding: clamp(15px * 0.33, 15 * var(--mixin-middle-coef) / 1920, 15px) clamp(32px * 0.33, 32 * var(--mixin-middle-coef) / 1920, 32px);
  position: relative;
}

.faq-item.opened {
  background-color: var(--color-blue);
  color: var(--color-white);
  cursor: auto;
  padding: clamp(32px * 0.33, 32 * var(--mixin-middle-coef) / 1920, 32px) clamp(32px * 0.33, 32 * var(--mixin-middle-coef) / 1920, 32px);
}

.faq-item.opened .faq-item__answer {
  opacity: 0.65;
}

.faq-item.opened .faq-item__icon span {
  background-color: var(--color-blue);
}

.faq-item.opened .faq-item__icon span:last-of-type {
  -moz-transform: translate(-50%, -50%) rotate(0deg);
  -ms-transform: translate(-50%, -50%) rotate(0deg);
  -webkit-transform: translate(-50%, -50%) rotate(0deg);
  -o-transform: translate(-50%, -50%) rotate(0deg);
  transform: translate(-50%, -50%) rotate(0deg);
}

.faq-item.opened .faq-item__icon::before {
  opacity: 0;
}

.faq-item:not(:last-of-type) {
  margin-bottom: clamp(20px * 0.33, 20 * var(--mixin-middle-coef) / 1920, 20px);
}

.faq-item__question {
  font-size: clamp(25px * 0.33, 25 * var(--mixin-middle-coef) / 1920, 25px);
  line-height: 120%;
  font-weight: bold;
  cursor: pointer;
}

.faq-item__answer {
  padding-top: clamp(25px * 0.33, 25 * var(--mixin-middle-coef) / 1920, 25px);
  font-size: clamp(20px * 0.33, 20 * var(--mixin-middle-coef) / 1920, 20px);
  line-height: 140%;
  display: none;
  opacity: 0;
  -webkit-transition: opacity 0.2s ease-out 0s;
  -moz-transition: opacity 0.2s ease-out 0s;
  -ms-transition: opacity 0.2s ease-out 0s;
  -o-transition: opacity 0.2s ease-out 0s;
  transition: opacity 0.2s ease-out 0s;
}

.faq-item__icon {
  cursor: pointer;
  width: clamp(68px * 0.33, 68 * var(--mixin-middle-coef) / 1920, 68px);
  height: clamp(68px * 0.33, 68 * var(--mixin-middle-coef) / 1920, 68px);
  background-color: var(--color-white);
  position: relative;
  flex-shrink: 0;
  border-radius: 100%;
  overflow: hidden;
  -webkit-transition: transform 0.2s ease-out 0s;
  -moz-transition: transform 0.2s ease-out 0s;
  -ms-transition: transform 0.2s ease-out 0s;
  -o-transition: transform 0.2s ease-out 0s;
  transition: transform 0.2s ease-out 0s;
}

.faq-item__icon::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  -webkit-transition: all 0.2s ease-out 0s;
  -moz-transition: all 0.2s ease-out 0s;
  -ms-transition: all 0.2s ease-out 0s;
  -o-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
  background: var(--gradient-accent);
}

.faq-item__icon span:first-of-type,
.faq-item__icon span:last-of-type {
  position: absolute;
  top: 50%;
  left: 50%;
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: clamp(23px * 0.33, 23 * var(--mixin-middle-coef) / 1920, 23px);
  height: clamp(4px * 0.33, 4 * var(--mixin-middle-coef) / 1920, 4px);
  background-color: var(--color-white);
  -webkit-transition: all 0.2s ease-out 0s;
  -moz-transition: all 0.2s ease-out 0s;
  -ms-transition: all 0.2s ease-out 0s;
  -o-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}

.faq-item__icon span:last-of-type {
  -moz-transform: translate(-50%, -50%) rotate(90deg);
  -ms-transform: translate(-50%, -50%) rotate(90deg);
  -webkit-transform: translate(-50%, -50%) rotate(90deg);
  -o-transform: translate(-50%, -50%) rotate(90deg);
  transform: translate(-50%, -50%) rotate(90deg);
}

.header {
  position: fixed;
  width: 100%;
  top: 0;
  left: 50%;
  z-index: 1000;
  height: var(--header-height);
  background-color: var(--color-white);
  max-width: calc(var(--container-width) + clamp(40px * 0.33, 40 * var(--mixin-middle-coef) / 1920, 40px));
  border-radius: clamp(20px * 0.33, 20 * var(--mixin-middle-coef) / 1920, 20px);
  box-shadow: 0px 4px 28.7px 0px rgba(0, 0, 0, 0.0509803922);
  -moz-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  -webkit-transform: translate(-50%, 0);
  -o-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  -webkit-transition: background-color 0.2s ease-out 0s, transform 0.4s ease-out 0s, opacity 0.2s ease-out 0.2s !important;
  -moz-transition: background-color 0.2s ease-out 0s, transform 0.4s ease-out 0s, opacity 0.2s ease-out 0.2s !important;
  -ms-transition: background-color 0.2s ease-out 0s, transform 0.4s ease-out 0s, opacity 0.2s ease-out 0.2s !important;
  -o-transition: background-color 0.2s ease-out 0s, transform 0.4s ease-out 0s, opacity 0.2s ease-out 0.2s !important;
  transition: background-color 0.2s ease-out 0s, transform 0.4s ease-out 0s, opacity 0.2s ease-out 0.2s !important;
}

.header.pre-hidden {
  opacity: 0;
  -moz-transform: translate(-50%, -100%);
  -ms-transform: translate(-50%, -100%);
  -webkit-transform: translate(-50%, -100%);
  -o-transform: translate(-50%, -100%);
  transform: translate(-50%, -100%);
}

.header .container {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(20px * 0.33, 20 * var(--mixin-middle-coef) / 1920, 20px);
  height: 100%;
}

.header__logo {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  gap: clamp(30px * 0.33, 30 * var(--mixin-middle-coef) / 1920, 30px);
}

.header__logo-icon svg {
  width: clamp(63px * 0.33, 63 * var(--mixin-middle-coef) / 1920, 63px);
  height: clamp(53px * 0.33, 53 * var(--mixin-middle-coef) / 1920, 53px);
}

.header__logo-icon svg .chars {
  -webkit-transition: all 0.2s ease-out 0s;
  -moz-transition: all 0.2s ease-out 0s;
  -ms-transition: all 0.2s ease-out 0s;
  -o-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}

.header__logo-desc {
  font-size: clamp(12px * 0.33, 12 * var(--mixin-middle-coef) / 1920, 12px);
  line-height: 163%;
}

.header__nav ul {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  gap: clamp(38px * 0.33, 38 * var(--mixin-middle-coef) / 1920, 38px);
}

.header__nav ul .link {
  font-size: clamp(15px * 0.33, 15 * var(--mixin-middle-coef) / 1920, 15px);
}

.header__additional {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  gap: clamp(70px * 0.33, 70 * var(--mixin-middle-coef) / 1920, 70px);
}

.header__address {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  gap: clamp(23px * 0.33, 23 * var(--mixin-middle-coef) / 1920, 23px);
  font-size: clamp(15px * 0.33, 15 * var(--mixin-middle-coef) / 1920, 15px);
}

.header__address svg {
  width: clamp(16px * 0.33, 16 * var(--mixin-middle-coef) / 1920, 16px);
  height: clamp(23px * 0.33, 23 * var(--mixin-middle-coef) / 1920, 23px);
}

.header__contacts {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-direction: column;
  align-items: end;
}

.header__contacts .popup-trigger {
  text-decoration: underline;
  font-size: clamp(13px * 0.33, 13 * var(--mixin-middle-coef) / 1920, 13px);
  line-height: 140%;
  opacity: 0.87;
}

.header__tel {
  font-weight: bold;
  line-height: 140%;
  font-size: clamp(20px * 0.33, 20 * var(--mixin-middle-coef) / 1920, 20px);
}

.header__burger {
  display: none;
  width: 60px;
  height: 60px;
  border-radius: 10px;
  flex-direction: column;
  gap: 5px;
  align-items: center;
  justify-content: center;
  background-color: var(--color-black);
}

.header__burger input {
  pointer-events: none;
  opacity: 0;
  position: absolute;
  z-index: -100;
}

.header__burger span {
  display: block;
  height: 2px;
  border-radius: 2px;
  width: 27px;
  background-color: var(--color-white);
  -webkit-transition: transform 0.2s ease-out 0s;
  -moz-transition: transform 0.2s ease-out 0s;
  -ms-transition: transform 0.2s ease-out 0s;
  -o-transition: transform 0.2s ease-out 0s;
  transition: transform 0.2s ease-out 0s;
}

.burger-menu {
  z-index: -1;
  position: relative;
  background-color: var(--color-black);
  color: var(--color-white);
  height: calc(100dvh - (var(--header-height) - 10px));
  padding-bottom: 10px;
  width: 100%;
  display: none;
  flex-direction: column;
  align-items: center;
  margin-top: -5px;
  -moz-transform: translate(0, -150%);
  -ms-transform: translate(0, -150%);
  -webkit-transform: translate(0, -150%);
  -o-transform: translate(0, -150%);
  transform: translate(0, -150%);
  -webkit-transition: transform 0.2s ease-out 0s;
  -moz-transition: transform 0.2s ease-out 0s;
  -ms-transition: transform 0.2s ease-out 0s;
  -o-transition: transform 0.2s ease-out 0s;
  transition: transform 0.2s ease-out 0s;
  overflow: auto;
}

.burger-menu__nav {
  flex-grow: 1;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
}

.burger-menu__nav ul {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: clamp(21.45px, 65 * (100dvh - var(--header-height)) / 812, 65px);
}

.burger-menu__nav ul a {
  color: var(--color-white) !important;
  font-size: 26px;
  line-height: 140%;
}

.burger-menu__bottom .btn {
  display: block;
  width: 310px;
  padding: 22px 40px;
  font-size: 15px;
  margin-bottom: 18px;
  border-radius: 20px;
}

.burger-menu__contacts {
  margin-bottom: 35px;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  opacity: 0.87;
}

.burger-menu__tel {
  opacity: 0.87;
  color: var(--color-white) !important;
  font-size: 30px;
  line-height: 140%;
  font-weight: bold;
}

.burger-menu__address {
  font-size: 14px;
  line-height: 140%;
}

.hero {
  margin-bottom: 0;
  overflow: hidden;
}

.hero__promo {
  padding-top: var(--header-height);
  padding-bottom: clamp(10px * 0.33, 10 * var(--mixin-middle-coef) / 1920, 10px);
  margin: 0px auto;
  max-width: calc(var(--container-width) + clamp(40px * 0.33, 40 * var(--mixin-middle-coef) / 1920, 40px));
  background-color: var(--color-white);
  border-radius: 0 0 clamp(50px * 0.33, 50 * var(--mixin-middle-coef) / 1920, 50px) clamp(50px * 0.33, 50 * var(--mixin-middle-coef) / 1920, 50px);
}

.hero__svg-name {
  --mixin-middle-coef: 100vw;
  --translate-x: clamp(10px * 0.33, 10 * var(--mixin-middle-coef) / 1920, 10px);
  --translate-y: clamp(60px * 0.33, 60 * var(--mixin-middle-coef) / 1920, 60px);
  -moz-transform: translate(var(--translate-x), var(--translate-y));
  -ms-transform: translate(var(--translate-x), var(--translate-y));
  -webkit-transform: translate(var(--translate-x), var(--translate-y));
  -o-transform: translate(var(--translate-x), var(--translate-y));
  transform: translate(var(--translate-x), var(--translate-y));
  display: block;
  margin: 0px auto;
  width: clamp(1440px * 0.33, 1440 * var(--mixin-middle-coef) / 1920, 1440px);
  height: clamp(340px * 0.33, 340 * var(--mixin-middle-coef) / 1920, 340px);
  -webkit-transition: all 0.4s ease-out 0s;
  -moz-transition: all 0.4s ease-out 0s;
  -ms-transition: all 0.4s ease-out 0s;
  -o-transition: all 0.4s ease-out 0s;
  transition: all 0.4s ease-out 0s;
}

.hero__svg-name.pre-hidden {
  opacity: 0;
  -moz-transform: scale(0.9) translate(var(--translate-x), var(--translate-y));
  -ms-transform: scale(0.9) translate(var(--translate-x), var(--translate-y));
  -webkit-transform: scale(0.9) translate(var(--translate-x), var(--translate-y));
  -o-transform: scale(0.9) translate(var(--translate-x), var(--translate-y));
  transform: scale(0.9) translate(var(--translate-x), var(--translate-y));
}

.hero__svg-circle {
  --mixin-middle-coef: 100vw;
  --translate-x: clamp(85px * 0.33 - 50%, 85 * var(--mixin-middle-coef) / 1920 - 50%, 85px - 50%);
  --translate-y: 0px;
  position: absolute;
  width: clamp(340px * 0.33, 340 * var(--mixin-middle-coef) / 1920, 340px);
  height: clamp(340px * 0.33, 340 * var(--mixin-middle-coef) / 1920, 340px);
  top: clamp(60px * 0.33, 60 * var(--mixin-middle-coef) / 1920, 60px);
  left: 50%;
  -moz-transform: translate(var(--translate-x), var(--translate-y));
  -ms-transform: translate(var(--translate-x), var(--translate-y));
  -webkit-transform: translate(var(--translate-x), var(--translate-y));
  -o-transform: translate(var(--translate-x), var(--translate-y));
  transform: translate(var(--translate-x), var(--translate-y));
  -webkit-transition: all 0.4s ease-out 0s;
  -moz-transition: all 0.4s ease-out 0s;
  -ms-transition: all 0.4s ease-out 0s;
  -o-transition: all 0.4s ease-out 0s;
  transition: all 0.4s ease-out 0s;
}

.hero__svg-circle.pre-hidden {
  opacity: 0;
  -moz-transform: scale(0.9) translate(var(--translate-x), var(--translate-y));
  -ms-transform: scale(0.9) translate(var(--translate-x), var(--translate-y));
  -webkit-transform: scale(0.9) translate(var(--translate-x), var(--translate-y));
  -o-transform: scale(0.9) translate(var(--translate-x), var(--translate-y));
  transform: scale(0.9) translate(var(--translate-x), var(--translate-y));
}

.hero__bottom {
  margin-top: clamp(40px * 0.33, 40 * var(--mixin-middle-coef) / 1920, 40px);
  padding-bottom: clamp(100px * 0.33, 100 * var(--mixin-middle-coef) / 1920, 100px);
  font-size: clamp(20px * 0.33, 20 * var(--mixin-middle-coef) / 1920, 20px);
  line-height: 140%;
  position: relative;
}

.hero__bottom .container {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  justify-content: space-between;
  padding: 0 clamp(40px * 0.33, 40 * var(--mixin-middle-coef) / 1920, 40px) 0 clamp(65px * 0.33, 65 * var(--mixin-middle-coef) / 1920, 65px);
}

.hero__desc{
  -webkit-transition: all 0.4s ease-out 0s;
  -moz-transition: all 0.4s ease-out 0s;
  -ms-transition: all 0.4s ease-out 0s;
  -o-transition: all 0.4s ease-out 0s;
  transition: all 0.4s ease-out 0s;
}

.hero__desc.pre-hidden {
  opacity: 0;
}
.hero__desc.pre-hidden:first-child {
  -moz-transform: translate(-15px, 50px);
  -ms-transform: translate(-15px, 50px);
  -webkit-transform: translate(-15px, 50px);
  -o-transform: translate(-15px, 50px);
  transform: translate(-15px, 50px);
}
.hero__desc.pre-hidden:last-child {
  -moz-transform: translate(15px, 50px);
  -ms-transform: translate(15px, 50px);
  -webkit-transform: translate(15px, 50px);
  -o-transform: translate(15px, 50px);
  transform: translate(15px, 50px);
}
.hero__desc .btn.pre-hidden {
  opacity: 0;
  -moz-transform: translate(15px, 50px);
  -ms-transform: translate(15px, 50px);
  -webkit-transform: translate(15px, 50px);
  -o-transform: translate(15px, 50px);
  transform: translate(15px, 50px);
}

.hero__desc p {
  margin-bottom: clamp(30px * 0.33, 30 * var(--mixin-middle-coef) / 1920, 30px);
}

.hero__img {
  --mixin-middle-coef: 100vw;
  position: absolute;
  bottom: calc(clamp(385px * 0.33, 385 * var(--mixin-middle-coef) / 1920, 385px) * -1);
  left: clamp(65px * 0.33, 65 * var(--mixin-middle-coef) / 1920, 65px);
  width: clamp(1025px * 0.33, 1025 * var(--mixin-middle-coef) / 1920, 1025px);
  height: clamp(885px * 0.33, 885 * var(--mixin-middle-coef) / 1920, 885px);
  -webkit-transition: all 0.4s ease-out 0s;
  -moz-transition: all 0.4s ease-out 0s;
  -ms-transition: all 0.4s ease-out 0s;
  -o-transition: all 0.4s ease-out 0s;
  transition: all 0.4s ease-out 0s;
}
.hero__img.pre-hidden {
  opacity: 0;
  -moz-transform: translate(-35px, 20px);
  -ms-transform: translate(-35px, 20px);
  -webkit-transform: translate(-35px, 20px);
  -o-transform: translate(-35px, 20px);
  transform: translate(-35px, 20px);
}

.hero__img.parallax, 
.hero__svg-name.parallax,
.hero__svg-circle.parallax {
  -webkit-transition: none !important;
  -moz-transition: none !important;
  -ms-transition: none !important;
  -o-transition: none !important;
  transition: none !important;
}

.utp {
  color: var(--color-white);
}

.utp .container {
  background-color: var(--color-black);
  border-radius: clamp(20px * 0.33, 20 * var(--mixin-middle-coef) / 1920, 20px);
  overflow: hidden;
}

.utp__img {
  position: absolute;
  width: clamp(895px * 0.33, 895 * var(--mixin-middle-coef) / 1920, 895px);
  height: clamp(895px * 0.33, 895 * var(--mixin-middle-coef) / 1920, 895px);
  border-radius: 100%;
  overflow: hidden;
}

.utp__img:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.utp__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.utp__title {
  font-weight: bold;
  font-size: clamp(65px * 0.33, 65 * var(--mixin-middle-coef) / 1920, 65px);
  line-height: 111%;
}

.utp__desc p {
  font-size: clamp(20px * 0.33, 20 * var(--mixin-middle-coef) / 1920, 20px);
  line-height: 140%;
  opacity: 0.74;
}

.utp__subtitle {
  font-size: clamp(28px * 0.33, 28 * var(--mixin-middle-coef) / 1920, 28px);
  line-height: 120%;
  font-weight: bold;
}

.utp_1 {
  margin-bottom: 0;
}
.utp_1 .container {
  -webkit-transition: all 0.4s ease-out 0s;
  -moz-transition: all 0.4s ease-out 0s;
  -ms-transition: all 0.4s ease-out 0s;
  -o-transition: all 0.4s ease-out 0s;
  transition: all 0.4s ease-out 0s;
}

.utp_1 .container.pre-hidden {
  background-color: var(--color-bg);
  -moz-transform: translate(0, 100px);
  -ms-transform: translate(0, 100px);
  -webkit-transform: translate(0, 100px);
  -o-transform: translate(0, 100px);
  transform: translate(0, 100px);
}

.utp_1 .utp__wrapper {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: clamp(125px * 0.33, 125 * var(--mixin-middle-coef) / 1920, 125px) clamp(86px * 0.33, 86 * var(--mixin-middle-coef) / 1920, 86px) clamp(134px * 0.33, 134 * var(--mixin-middle-coef) / 1920, 134px) clamp(133px * 0.33, 133 * var(--mixin-middle-coef) / 1920, 133px);
  position: relative;
  z-index: 1;
  gap:  clamp(180px * 0.33, (180 * var(--mixin-middle-coef)) / 1920, 180px);
}

.utp_1 .utp__img {
  top: calc(clamp(155px * 0.33, 155 * var(--mixin-middle-coef) / 1920, 155px) * -1);
  left: calc(clamp(155px * 0.33, 155 * var(--mixin-middle-coef) / 1920, 155px) * -1);
  -webkit-transition: all 0.4s ease-out 0s;
  -moz-transition: all 0.4s ease-out 0s;
  -ms-transition: all 0.4s ease-out 0s;
  -o-transition: all 0.4s ease-out 0s;
  transition: all 0.4s ease-out 0s;
  transform-origin: top left;
}

.utp_1 .utp__img.pre-hidden {
  opacity: 0;
  -moz-transform: scale(0.8);
  -ms-transform: scale(0.8);
  -webkit-transform: scale(0.8);
  -o-transform: scale(0.8);
  transform: scale(0.8);
}

.utp_1 .utp__img:after {
  background-color: rgba(54, 54, 54, 0.8901960784);
}

.utp_1 .utp__title {
  -webkit-transition: all 0.4s ease-out 0s;
  -moz-transition: all 0.4s ease-out 0s;
  -ms-transition: all 0.4s ease-out 0s;
  -o-transition: all 0.4s ease-out 0s;
  transition: all 0.4s ease-out 0s;
}

.utp_1 .utp__title.pre-hidden {
  opacity: 0;
  -moz-transform: translate(-50px, 0);
  -ms-transform: translate(-50px, 0);
  -webkit-transform: translate(-50px, 0);
  -o-transform: translate(-50px, 0);
  transform: translate(-50px, 0);
}

.utp_1 .utp__subtitle {
  margin-bottom: clamp(24px * 0.33, 24 * var(--mixin-middle-coef) / 1920, 24px);
}

.utp_1 .utp__subtitle.pre-hidden, .utp_1 .utp__desc p.pre-hidden {
  opacity: 0;
  -moz-transform: translate(50px, 0);
  -ms-transform: translate(50px, 0);
  -webkit-transform: translate(50px, 0);
  -o-transform: translate(50px, 0);
  transform: translate(50px, 0);
}

.utp_2 .utp__wrapper {
  padding: clamp(142px * 0.33, 142 * var(--mixin-middle-coef) / 1920, 142px) clamp(114px * 0.33, 114 * var(--mixin-middle-coef) / 1920, 114px);
  position: relative;
  z-index: 1;
}

.utp_2 {
  margin-bottom: 0;
}

.utp_2.pre-hidden {
  opacity: 0;
  -moz-transform: translate(0, 100px);
  -ms-transform: translate(0, 100px);
  -webkit-transform: translate(0, 100px);
  -o-transform: translate(0, 100px);
  transform: translate(0, 100px);
}

.utp_2 .utp__img {
  bottom: calc(clamp(122px * 0.33, 122 * var(--mixin-middle-coef) / 1920, 122px) * -1);
  right: calc(clamp(285px * 0.33, 285 * var(--mixin-middle-coef) / 1920, 285px) * -1);
  opacity: 0.38;
  transform-origin: top right;
}

.utp_2 .utp__img.pre-hidden {
  opacity: 0;
  -moz-transform: scale(0.8);
  -ms-transform: scale(0.8);
  -webkit-transform: scale(0.8);
  -o-transform: scale(0.8);
  transform: scale(0.8);
}

.utp_2 .utp__img:after {
  background-color: rgba(28, 112, 228, 0.2);
}

.utp_2 .utp__title {
  margin-bottom: clamp(24px * 0.33, 24 * var(--mixin-middle-coef) / 1920, 24px);
}

.utp_2 .utp__title.pre-hidden, 
.utp_2 .utp__desc p.pre-hidden,
.utp_2 .btn.pre-hidden {
  opacity: 0;
  -moz-transform: translate(-50px, 0);
  -ms-transform: translate(-50px, 0);
  -webkit-transform: translate(-50px, 0);
  -o-transform: translate(-50px, 0);
  transform: translate(-50px, 0);
}

.utp_2 .utp__desc p {
  margin-bottom: clamp(40px * 0.33, 40 * var(--mixin-middle-coef) / 1920, 40px);
}

.advantages {
  position: relative;
  overflow: hidden;
  padding-top: clamp(135px * 0.33, 135 * var(--mixin-middle-coef) / 1920, 135px);;
}

.advantages .container {
  position: static;
}

.advantages__cards {
  display: -ms-grid;
  display: -moz-grid;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(2, auto);
  align-items: center;
  gap: clamp(15px * 0.33, 15 * var(--mixin-middle-coef) / 1920, 15px);
}

.advantages__card {
  border-radius: clamp(20px * 0.33, 20 * var(--mixin-middle-coef) / 1920, 20px);
  overflow: hidden;
  background: var(--color-white);
}

.advantages__card.pre-hidden {
  opacity: 0;
}
.advantages__card.pre-hidden:nth-of-type(1) {
  -moz-transform: translate(-50px, 0);
  -ms-transform: translate(-50px, 0);
  -webkit-transform: translate(-50px, 0);
  -o-transform: translate(-50px, 0);
  transform: translate(-50px, 0);
}
.advantages__card.pre-hidden:nth-of-type(2) {
  -moz-transform: translate(0, -50px);
  -ms-transform: translate(0, -50px);
  -webkit-transform: translate(0, -50px);
  -o-transform: translate(0, -50px);
  transform: translate(0, -50px);
}
.advantages__card.pre-hidden:nth-of-type(3) {
  -moz-transform: translate(0, 50px);
  -ms-transform: translate(0, 50px);
  -webkit-transform: translate(0, 50px);
  -o-transform: translate(0, 50px);
  transform: translate(0, 50px);
}
.advantages__card.pre-hidden:nth-of-type(4) {
  -moz-transform: translate(50px, 0);
  -ms-transform: translate(50px, 0);
  -webkit-transform: translate(50px, 0);
  -o-transform: translate(50px, 0);
  transform: translate(50px, 0);
}

.advantages__card:first-of-type {
  grid-area: 1/1/3/2;
}

.advantages__card:last-of-type {
  grid-area: 1/3/3/4;
}

.advantages__card:not(.advantages__card_img) {
  padding: clamp(22px * 0.33, 22 * var(--mixin-middle-coef) / 1920, 22px) clamp(22px * 0.33, 22 * var(--mixin-middle-coef) / 1920, 22px) clamp(55px * 0.33, 55 * var(--mixin-middle-coef) / 1920, 55px);
}

.advantages__card-index {
  display: block;
  width: clamp(112px * 0.33, 112 * var(--mixin-middle-coef) / 1920, 112px);
  height: clamp(112px * 0.33, 112 * var(--mixin-middle-coef) / 1920, 112px);
  border-radius: clamp(20px * 0.33, 20 * var(--mixin-middle-coef) / 1920, 20px);
  font-weight: bold;
  font-size: clamp(50px * 0.33, 50 * var(--mixin-middle-coef) / 1920, 50px);
  line-height: 120%;
  margin-bottom: clamp(45px * 0.33, 45 * var(--mixin-middle-coef) / 1920, 45px);
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #eef3fa;
}

.advantages__card-title {
  font-weight: bold;
  font-size: clamp(38px * 0.33, 38 * var(--mixin-middle-coef) / 1920, 38px);
  line-height: 140%;
  margin-bottom: clamp(15px * 0.33, 15 * var(--mixin-middle-coef) / 1920, 15px);
  padding-left: clamp(10px * 0.33, 10 * var(--mixin-middle-coef) / 1920, 10px);
}

.advantages__card-desc {
  font-size: clamp(20px * 0.33, 20 * var(--mixin-middle-coef) / 1920, 20px);
  opacity: 0.77;
  line-height: 140%;
  padding-left: clamp(10px * 0.33, 10 * var(--mixin-middle-coef) / 1920, 10px);
}

.advantages__card-bg {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.advantages__card_img {
  height: clamp(385px * 0.33, 385 * var(--mixin-middle-coef) / 1920, 385px);
}

.advantages__card_grey {
  background-color: var(--color-darkgray);
  color: var(--color-white);
}

.advantages__card_grey .advantages__card-index {
  background-color: var(--color-gray);
}

.advantages__card_primary {
  background: var(--gradient-accent);
  color: var(--color-white);
}

.advantages__card_primary .advantages__card-index {
  background-color: var(--color-accent);
}

.advantages__bg {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: -1;
  overflow: hidden;
}

.advantages__bg.pre-hidden {
  opacity: 0;
  -moz-transform: scale(0.8);
  -ms-transform: scale(0.8);
  -webkit-transform: scale(0.8);
  -o-transform: scale(0.8);
  transform: scale(0.8);
}

.advantages__bg svg {
  position: absolute;
}

.advantages__bg-circle {
  bottom: clamp(32px * 0.33, 32 * var(--mixin-middle-coef) / 1920, 32px);
  width: clamp(817px * 0.33, 817 * var(--mixin-middle-coef) / 1920, 817px);
  height: clamp(817px * 0.33, 817 * var(--mixin-middle-coef) / 1920, 817px);
  left: 50%;
  -moz-transform: translate(calc(-50% - clamp(128px * 0.33, 128 * var(--mixin-middle-coef) / 1920, 128px)), 0);
  -ms-transform: translate(calc(-50% - clamp(128px * 0.33, 128 * var(--mixin-middle-coef) / 1920, 128px)), 0);
  -webkit-transform: translate(calc(-50% - clamp(128px * 0.33, 128 * var(--mixin-middle-coef) / 1920, 128px)), 0);
  -o-transform: translate(calc(-50% - clamp(128px * 0.33, 128 * var(--mixin-middle-coef) / 1920, 128px)), 0);
  transform: translate(calc(-50% - clamp(128px * 0.33, 128 * var(--mixin-middle-coef) / 1920, 128px)), 0);
  transform-origin: left !important;
}

.advantages__bg-tape {
  width: 100vw;
  height: auto;
  top: clamp(196px * 0.33, 196 * var(--mixin-middle-coef) / 1920, 196px);
}

.products {
  padding-top: clamp(135px * 0.33, 135 * var(--mixin-middle-coef) / 1920, 135px);
}

.products .section-title {
  margin-bottom: 0;
}

.products__wrapper {
  position: relative;
  padding-block: clamp(90px * 0.33, 90 * var(--mixin-middle-coef) / 1920, 90px);
}

.products__bg {
  position: absolute;
  width: auto;
  height: 100%;
  top: 50%;
  left: 50%;
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  transform-origin: top left !important;
}

.products__bg.pre-hidden {
  opacity: 0;
  -moz-transform: scale(0.8) translate(-50%, -50%);
  -ms-transform: scale(0.8) translate(-50%, -50%);
  -webkit-transform: scale(0.8) translate(-50%, -50%);
  -o-transform: scale(0.8) translate(-50%, -50%);
  transform: scale(0.8) translate(-50%, -50%);
}

.products .btn {
  display: block;
  width: fit-content;
  margin: 0px auto;
}
.products__bg.pre-hidden {
  opacity: 0;
  -moz-transform: scale(0.8) translate(-50%, -50%);
  -ms-transform: scale(0.8) translate(-50%, -50%);
  -webkit-transform: scale(0.8) translate(-50%, -50%);
  -o-transform: scale(0.8) translate(-50%, -50%);
  transform: scale(0.8) translate(-50%, -50%);
}
.products .btn.pre-hidden {
  opacity: 0;
  -moz-transform: scale(0.8);
  -ms-transform: scale(0.8);
  -webkit-transform: scale(0.8);
  -o-transform: scale(0.8);
  transform: scale(0.8);
}

.bestsellers {
  overflow: hidden;
  padding-top: clamp(190px * 0.33, 190 * var(--mixin-middle-coef) / 1920, 190px);
}

.bestsellers__bg {
  position: absolute;
  width: clamp(974px * 0.33, 974 * var(--mixin-middle-coef) / 1920, 974px);
  height: clamp(1100px * 0.33, 1100 * var(--mixin-middle-coef) / 1920, 1100px);
  bottom: clamp(92px * 0.33, 92 * var(--mixin-middle-coef) / 1920, 92px);
  right: calc(clamp(70px * 0.33, 70 * var(--mixin-middle-coef) / 1920, 70px) * -1);
}

.bestsellers__bg.pre-hidden {
  opacity: 0;
  -moz-transform: translate(100px, 0);
  -ms-transform: translate(100px, 0);
  -webkit-transform: translate(100px, 0);
  -o-transform: translate(100px, 0);
  transform: translate(100px, 0);
}

.bestsellers__slider .swiper-navigation {
  margin-top: clamp(30px * 0.33, 30 * var(--mixin-middle-coef) / 1920, 30px);
}

.certs__bg {
  position: absolute;
  width: clamp(638px * 0.33, 638 * var(--mixin-middle-coef) / 1920, 638px);
  height: clamp(638px * 0.33, 638 * var(--mixin-middle-coef) / 1920, 638px);
  bottom: calc(clamp(35px * 0.33, 35 * var(--mixin-middle-coef) / 1920, 35px) * -1);
  left: calc(clamp(310px * 0.33, 310 * var(--mixin-middle-coef) / 1920, 310px) * -1);
}

.certs__bg.pre-hidden {
  opacity: 0;
  -moz-transform: scale(0.8);
  -ms-transform: scale(0.8);
  -webkit-transform: scale(0.8);
  -o-transform: scale(0.8);
  transform: scale(0.8);
}

.certs__slider .swiper-navigation {
  margin-top: clamp(30px * 0.33, 30 * var(--mixin-middle-coef) / 1920, 30px);
}

.partners{
  overflow: hidden;
}

.partners__marquee {
  --marquee-animation: marquee-animation;
  overflow: hidden;
  position: relative;
}

.partners__marquee.pre-hidden:nth-of-type(odd) {
  opacity: 0;
  -moz-transform: translate(100px, 0);
  -ms-transform: translate(100px, 0);
  -webkit-transform: translate(100px, 0);
  -o-transform: translate(100px, 0);
  transform: translate(100px, 0);
}
.partners__marquee.pre-hidden:nth-of-type(even) {
  opacity: 0;
  -moz-transform: translate(-100px, 0);
  -ms-transform: translate(-100px, 0);
  -webkit-transform: translate(-100px, 0);
  -o-transform: translate(-100px, 0);
  transform: translate(-100px, 0);
}

.partners__marquee::after,
.partners__marquee:first-of-type::before {
  content: "";
  position: absolute;
  width: var(--container-width);
  height: 1px;
  background-color: #d9d9d9;
}

.partners__marquee::after {
  bottom: 0;
}

.partners__marquee::before {
  top: 0;
}

.partners__marquee:not(:last-of-type)::after {
  left: 50%;
  -moz-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  -webkit-transform: translate(-50%, 0);
  -o-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
}

.partners__marquee:first-of-type::before {
  right: 0;
}

.partners__marquee:last-of-type::after {
  left: 0;
}

.partners__marquee_reversed {
  --marquee-animation: marquee-animation-reversed;
}

.partners__marquee_reversed .partners__marquee-container {
  -moz-transform: translate(-100%, 0);
  -ms-transform: translate(-100%, 0);
  -webkit-transform: translate(-100%, 0);
  -o-transform: translate(-100%, 0);
  transform: translate(-100%, 0);
}

.partners__marquee.mobile-only:not(.partners__marquee_reversed) .partners__marquee-container {
  -moz-transform: translate(-300px, 0);
  -ms-transform: translate(-300px, 0);
  -webkit-transform: translate(-300px, 0);
  -o-transform: translate(-300px, 0);
  transform: translate(-300px, 0);
}

.partners__marquee_reversed.mobile-only .partners__marquee-container {
  -moz-transform: translate(calc(-100% + 300px), 0);
  -ms-transform: translate(calc(-100% + 300px), 0);
  -webkit-transform: translate(calc(-100% + 300px), 0);
  -o-transform: translate(calc(-100% + 300px), 0);
  transform: translate(calc(-100% + 300px), 0);
}

.partners__marquee-container {
  white-space: nowrap;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  width: fit-content;
}

.partners__marquee-wrapper {
  animation: var(--marquee-animation) var(--marquee-speed) linear infinite;
  mix-blend-mode: luminosity;
  height: clamp(150px * 0.33, 150 * var(--mixin-middle-coef) / 1920, 150px);
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  gap: clamp(120px * 0.33, 120 * var(--mixin-middle-coef) / 1920, 120px);
  padding-right: clamp(120px * 0.33, 120 * var(--mixin-middle-coef) / 1920, 120px);
}

.partners__marquee-wrapper img {
  max-height: clamp(75px * 0.33, 75 * var(--mixin-middle-coef) / 1920, 75px);
  width: auto;
}

@keyframes marquee-animation {
  0% {
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -webkit-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0);
  }

  100% {
    -moz-transform: translate(-100%, 0);
    -ms-transform: translate(-100%, 0);
    -webkit-transform: translate(-100%, 0);
    -o-transform: translate(-100%, 0);
    transform: translate(-100%, 0);
  }
}

@keyframes marquee-animation-reversed {
  0% {
    -moz-transform: translate(100%, 0);
    -ms-transform: translate(100%, 0);
    -webkit-transform: translate(100%, 0);
    -o-transform: translate(100%, 0);
    transform: translate(100%, 0);
  }

  100% {
    -moz-transform: translate(200%, 0);
    -ms-transform: translate(200%, 0);
    -webkit-transform: translate(200%, 0);
    -o-transform: translate(200%, 0);
    transform: translate(200%, 0);
  }
}

.reviews {
  overflow: hidden;
  position: relative;
  margin-bottom: 0;
  padding-bottom: clamp(135px * 0.33, 135 * var(--mixin-middle-coef) / 1920, 135px);
}

.reviews__bg {
  position: absolute;
  top: calc(clamp(75px * 0.33, 75 * var(--mixin-middle-coef) / 1920, 75px) * -1);
  left: calc(clamp(100px * 0.33, 100 * var(--mixin-middle-coef) / 1920, 100px) * -1);
  -moz-transform: rotate(155deg) scale(-1);
  -ms-transform: rotate(155deg) scale(-1);
  -webkit-transform: rotate(155deg) scale(-1);
  -o-transform: rotate(155deg) scale(-1);
  transform: rotate(155deg) scale(-1);
  width: 105vw;
  height: auto;
}

.reviews__bg.pre-hidden {
  opacity: 0;
  -moz-transform: rotate(155deg) scale(-0.8);
  -ms-transform: rotate(155deg) scale(-0.8);
  -webkit-transform: rotate(155deg) scale(-0.8);
  -o-transform: rotate(155deg) scale(-0.8);
  transform: rotate(155deg) scale(-0.8);
}

.reviews__slider .swiper-slide {
  height: auto;
}

.reviews__slider .swiper-navigation {
  margin-top: clamp(30px * 0.33, 30 * var(--mixin-middle-coef) / 1920, 30px);
}

.faq {
  margin-bottom: 0;
}

.faq-item.pre-hidden {
  opacity: 0;
  -moz-transform: translate(-50px, 0);
  -ms-transform: translate(-50px, 0);
  -webkit-transform: translate(-50px, 0);
  -o-transform: translate(-50px, 0);
  transform: translate(-50px, 0);
}

.contacts {
  padding-top: clamp(135px * 0.33, 135 * var(--mixin-middle-coef) / 1920, 135px);
  margin-bottom: clamp(85px * 0.33, 85 * var(--mixin-middle-coef) / 1920, 85px);
  position: relative;
  overflow: hidden;
}

.contacts__wrapper {
  border-radius: clamp(20px * 0.33, 20 * var(--mixin-middle-coef) / 1920, 20px);
  padding: clamp(25px * 0.33, 25 * var(--mixin-middle-coef) / 1920, 25px) clamp(25px * 0.33, 25 * var(--mixin-middle-coef) / 1920, 25px) clamp(25px * 0.33, 25 * var(--mixin-middle-coef) / 1920, 25px) clamp(70px * 0.33, 70 * var(--mixin-middle-coef) / 1920, 70px);
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(40px * 0.33, 40 * var(--mixin-middle-coef) / 1920, 40px);
  background-color: var(--color-black);
  color: var(--color-white);
  position: relative;
}

.contacts__wrapper.pre-hidden {
  opacity: 0;
  -moz-transform: translate(0, 100px);
  -ms-transform: translate(0, 100px);
  -webkit-transform: translate(0, 100px);
  -o-transform: translate(0, 100px);
  transform: translate(0, 100px);
}

.contacts__content {
  width: clamp(475px * 0.33, 475 * var(--mixin-middle-coef) / 1920, 475px);
}

.contacts__content .btn {
  width: 100%;
}

.contacts__content .btn.pre-hidden {
  opacity: 0;
  -moz-transform: translate(-50px, 0);
  -ms-transform: translate(-50px, 0);
  -webkit-transform: translate(-50px, 0);
  -o-transform: translate(-50px, 0);
  transform: translate(-50px, 0);
}

.contacts__row {
  padding-bottom: clamp(44px * 0.33, 44 * var(--mixin-middle-coef) / 1920, 44px);
}

.contacts__row:last-of-type {
  position: relative;
  margin-bottom: clamp(44px * 0.33, 44 * var(--mixin-middle-coef) / 1920, 44px);
}

.contacts__row h3 {
  font-weight: bold;
  font-size: clamp(38px * 0.33, 38 * var(--mixin-middle-coef) / 1920, 38px);
  line-height: 120%;
  margin-bottom: clamp(25px * 0.33, 25 * var(--mixin-middle-coef) / 1920, 25px);
}

.contacts__row p,
.contacts__row .link {
  color: var(--color-white) !important;
  font-size: clamp(20px * 0.33, 20 * var(--mixin-middle-coef) / 1920, 20px);
  opacity: 0.77;
  line-height: 140%;
}

.contacts__row h3.pre-hidden,
.contacts__row p.pre-hidden {
  opacity: 0;
  -moz-transform: translate(-50px, 0);
  -ms-transform: translate(-50px, 0);
  -webkit-transform: translate(-50px, 0);
  -o-transform: translate(-50px, 0);
  transform: translate(-50px, 0);
}


.contacts__map {
  background-color: var(--color-bg);
  width: clamp(848px * 0.33, 848 * var(--mixin-middle-coef) / 1920, 848px);
  height: clamp(588px * 0.33, 588 * var(--mixin-middle-coef) / 1920, 588px);
  border-radius: clamp(20px * 0.33, 20 * var(--mixin-middle-coef) / 1920, 20px);
  overflow: hidden;
}

.contacts__map.pre-hidden {
  opacity: 0;
  -moz-transform: translate(50px, 0);
  -ms-transform: translate(50px, 0);
  -webkit-transform: translate(50px, 0);
  -o-transform: translate(50px, 0);
  transform: translate(50px, 0);
}

.contacts__bg-circle {
  position: absolute;
  width: clamp(802px * 0.33, 802 * var(--mixin-middle-coef) / 1920, 802px);
  height: clamp(802px * 0.33, 802 * var(--mixin-middle-coef) / 1920, 802px);
  top: calc(clamp(68px * 0.33, 68 * var(--mixin-middle-coef) / 1920, 68px) * -1);
  right: calc(clamp(74px * 0.33, 74 * var(--mixin-middle-coef) / 1920, 74px) * -1);
}

.contacts__bg-circle.pre-hidden {
  opacity: 0;
  -moz-transform: scale(0.8);
  -ms-transform: scale(0.8);
  -webkit-transform: scale(0.8);
  -o-transform: scale(0.8);
  transform: scale(0.8);
}


.contacts__bg-inner {
  position: absolute;
  width: clamp(527px * 0.33, 527 * var(--mixin-middle-coef) / 1920, 527px);
  height: clamp(595px * 0.33, 595 * var(--mixin-middle-coef) / 1920, 595px);
  top: 50%;
  left: 50%;
  -moz-transform: translate(calc(-50% - clamp(40px * 0.33, 40 * var(--mixin-middle-coef) / 1920, 40px)), -50%);
  -ms-transform: translate(calc(-50% - clamp(40px * 0.33, 40 * var(--mixin-middle-coef) / 1920, 40px)), -50%);
  -webkit-transform: translate(calc(-50% - clamp(40px * 0.33, 40 * var(--mixin-middle-coef) / 1920, 40px)), -50%);
  -o-transform: translate(calc(-50% - clamp(40px * 0.33, 40 * var(--mixin-middle-coef) / 1920, 40px)), -50%);
  transform: translate(calc(-50% - clamp(40px * 0.33, 40 * var(--mixin-middle-coef) / 1920, 40px)), -50%);
}

.contacts__bg-inner.pre-hidden {
  opacity: 0;
}

.footer {
  width: 100%;
  background-color: var(--color-white);
  max-width: calc(var(--container-width) + clamp(40px * 0.33, 40 * var(--mixin-middle-coef) / 1920, 40px));
  border-radius: clamp(50px * 0.33, 50 * var(--mixin-middle-coef) / 1920, 50px);
  margin: 0px auto;
}


.footer.pre-hidden {
  opacity: 0;
  -moz-transform: translate(0, 50px);
  -ms-transform: translate(0, 50px);
  -webkit-transform: translate(0, 50px);
  -o-transform: translate(0, 50px);
  transform: translate(0, 50px);
}

.footer .container {
  padding: clamp(35px * 0.33, 35 * var(--mixin-middle-coef) / 1920, 35px) clamp(25px * 0.33, 25 * var(--mixin-middle-coef) / 1920, 25px);
}

.footer__wrapper {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.footer__left {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: start;
  gap: clamp(95px * 0.33, 95 * var(--mixin-middle-coef) / 1920, 95px);
}

.footer__logo {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  gap: clamp(55px * 0.33, 55 * var(--mixin-middle-coef) / 1920, 55px);
}

.footer__logo-icon svg {
  width: clamp(122px * 0.33, 122 * var(--mixin-middle-coef) / 1920, 122px);
  height: clamp(102px * 0.33, 102 * var(--mixin-middle-coef) / 1920, 102px);
}

.footer__logo-desc {
  font-size: clamp(20px * 0.33, 20 * var(--mixin-middle-coef) / 1920, 20px);
  line-height: 140%;
}

.footer__nav {
  background-color: var(--color-bg-2);
  border-radius: clamp(20px * 0.33, 20 * var(--mixin-middle-coef) / 1920, 20px);
  padding: clamp(20px * 0.33, 20 * var(--mixin-middle-coef) / 1920, 20px) clamp(35px * 0.33, 35 * var(--mixin-middle-coef) / 1920, 35px);
}

.footer__nav li a {
  font-size: clamp(15px * 0.33, 15 * var(--mixin-middle-coef) / 1920, 15px);
}

.footer__nav li:not(:last-of-type) {
  margin-bottom: clamp(24px * 0.33, 24 * var(--mixin-middle-coef) / 1920, 24px);
}

.footer__right {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  gap: clamp(85px * 0.33, 85 * var(--mixin-middle-coef) / 1920, 85px);
}

.footer__tel {
  opacity: 0.87;
  font-weight: bold;
  line-height: 140%;
  font-size: clamp(27px * 0.33, 27 * var(--mixin-middle-coef) / 1920, 27px);
}

.footer__contacts {
  position: relative;
}

.footer__contacts-row {
  margin-bottom: clamp(23px * 0.33, 23 * var(--mixin-middle-coef) / 1920, 23px);
}

.footer__contacts-row h3 {
  font-size: clamp(17px * 0.33, 17 * var(--mixin-middle-coef) / 1920, 17px);
  line-height: 140%;
  font-weight: bold;
  margin-bottom: clamp(12px * 0.33, 12 * var(--mixin-middle-coef) / 1920, 12px);
  opacity: 0.87;
}

.footer__contacts-row p,
.footer__contacts-row .link {
  font-size: clamp(15px * 0.33, 15 * var(--mixin-middle-coef) / 1920, 15px);
  opacity: 0.87;
  line-height: 140%;
}

.footer__bottom {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: clamp(30px * 0.33, 30 * var(--mixin-middle-coef) / 1920, 30px);
}

.footer__policy.link {
  font-size: clamp(14px * 0.33, 14 * var(--mixin-middle-coef) / 1920, 14px);
  line-height: 140%;
  text-decoration: underline;
}

.footer__poweredby {
  cursor: pointer;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  align-items: center;
  gap: clamp(15px * 0.33, 15 * var(--mixin-middle-coef) / 1920, 15px);
  font-size: clamp(14px * 0.33, 14 * var(--mixin-middle-coef) / 1920, 14px);
  font-weight: bold;
}

.footer__poweredby svg {
  width: clamp(72px * 0.33, 72 * var(--mixin-middle-coef) / 1920, 72px);
  height: clamp(20px * 0.33, 20 * var(--mixin-middle-coef) / 1920, 20px);
}

.footer__poweredby path {
  -webkit-transition: all 0.2s ease-out 0s;
  -moz-transition: all 0.2s ease-out 0s;
  -ms-transition: all 0.2s ease-out 0s;
  -o-transition: all 0.2s ease-out 0s;
  transition: all 0.2s ease-out 0s;
}

.error-404 {
  height: 100vh;
}
.error-404 .container {
  height: 100%;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.error-404 h1 {
  font-size:  clamp(240px * 0.33, (240 * var(--mixin-middle-coef)) / 1920, 240px);
  font-weight: bold;
}
.error-404 p {
  font-size:  clamp(28px * 0.33, (28 * var(--mixin-middle-coef)) / 1928, 20px);
  opacity: 0.77;
}
.wpcf7-response-output {
  border-radius:  clamp(20px * 0.33, (20 * var(--mixin-middle-coef)) / 1920, 20px);
}

@media only screen and (min-width: 601px) {
  .mobile-only {
    display: none;
  }
}

@media only screen and (max-width: 1260px) {
  :root {
    --mixin-middle-coef: 115vw;
    --container-width: 1024px;
  }
}

@media only screen and (max-width: 1024px) {
  :root {
    --mixin-middle-coef: 125vw;
    --container-width: 928px;
  }

  .container {
    width: 90.75vw;
  }
}

@media only screen and (max-width: 756px) {
  .popup {
    padding: 35px 30px 45px;
    width: 100%;
    max-width: 365px;
    border-radius: 20px;
  }

  .popup__close {
    top: 20px;
    right: 20px;
  }

  .popup__close svg {
    width: 15px;
    height: 15px;
  }

  .popup__title {
    font-size: 30px;
  }

  .popup-bid .popup__title,
  .popup-kp .popup__title  {
    margin-bottom: 45px;
  }

  .popup-request-price .popup__title {
    margin-bottom: 20px;
  }

  .popup-request-price__info {
    gap: 10px;
    padding-bottom: 25px;
    margin-bottom: 30px;
  }

  .popup-request-price__img {
    width: 122px;
    height: 122px;
  }

  .popup-request-price__title {
    font-size: 20px;
    margin-bottom: 13px;
    padding-left: 10px;
  }

  .popup-request-price__params ul {
    font-size: 10px;
    padding-left: 10px;
  }

  .popup-form__inputs {
    gap: 30px;
    margin-bottom: 30px;
  }

  .popup-form__submit {
    border-radius: 20px;
    padding: 22px 40px !important;
    font-size: 16px !important;
    margin-bottom: 45px;
  }

  .popup-form__policy {
    gap: 20px;
  }

  .popup-form__policy input {
    width: 26px;
    height: 26px;
    border-radius: 7px;
    flex-shrink: 0;
  }

  .popup-form__policy span {
    font-size: 14px;
    line-height: 140%;
  }

  .input-group label {
    font-size: 14px;
    margin-bottom: 10px;
  }

  .input-group input {
    font-size: 14px;
    padding: 24px 33px;
    border-radius: 20px;
  }

  .header {
    max-width: 100%;
    border-radius: 0;
  }

  .header .container {
    justify-content: stretch;
    gap: 32px;
  }

  .header__logo-icon svg {
    width: 66px;
    height: 55px;
  }

  .header__logo-desc {
    display: none;
  }

  .header__logo {
    flex-grow: 1;
  }

  .header__nav {
    display: none;
  }

  .header__additional .btn {
    display: none;
  }

  .header__address {
    display: none;
  }

  .header__contacts .popup-trigger {
    display: none;
  }

  .header__tel {
    font-size: 14px;
  }

  .header__burger {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
  }

  .header .burger-menu {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
  }

  .header:has(.header__burger input:checked) {
    background-color: var(--color-black);
  }

  .header:has(.header__burger input:checked) .header__burger span:nth-of-type(1) {
    -moz-transform: translate(0, 7px) rotate(45deg);
    -ms-transform: translate(0, 7px) rotate(45deg);
    -webkit-transform: translate(0, 7px) rotate(45deg);
    -o-transform: translate(0, 7px) rotate(45deg);
    transform: translate(0, 7px) rotate(45deg);
  }

  .header:has(.header__burger input:checked) .header__burger span:nth-of-type(2) {
    -moz-transform: scale(0);
    -ms-transform: scale(0);
    -webkit-transform: scale(0);
    -o-transform: scale(0);
    transform: scale(0);
  }

  .header:has(.header__burger input:checked) .header__burger span:nth-of-type(3) {
    -moz-transform: translate(0, -7px) rotate(-45deg);
    -ms-transform: translate(0, -7px) rotate(-45deg);
    -webkit-transform: translate(0, -7px) rotate(-45deg);
    -o-transform: translate(0, -7px) rotate(-45deg);
    transform: translate(0, -7px) rotate(-45deg);
  }

  .header:has(.header__burger input:checked) .header__tel {
    opacity: 0;
    pointer-events: 0;
  }

  .header:has(.header__burger input:checked) .header__logo-icon .chars {
    fill: var(--color-white);
  }

  .header:has(.header__burger input:checked) .burger-menu {
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -webkit-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0);
  }

  .footer__logo {
    flex-direction: column;
    align-items: start;
  }

  .footer__logo-icon svg {
    width: 122px;
    height: 102px;
  }

  .footer__logo-desc {
    font-size: 16px;
  }
}

@media only screen and (max-width: 640px) {
  .container {
    width: auto;
    margin-inline: 10px;
  }
}

@media only screen and (max-width: 600px) {
  .section {
    margin-bottom: 95px;
  }

  .section-title {
    font-size: 35px;
    margin-bottom: 40px;
    padding-left: 5px;
  }

  .btn {
    display: block;
    width: 100%;
    padding: 22px 40px;
    font-size: 16px;
    border-radius: 20px;
  }

  .btn:not(.btn_outline) {
    min-width: auto;
    font-size: 16px;
    padding: 22px 40px;
  }

  .btn_outline {
    font-size: 16px;
    padding: 22px 40px;
  }

  .swiper-navigation .swiper-pagination {
    position: static;
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -webkit-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0);
    width: fit-content;
    height: fit-content;
  }

  .swiper-navigation .swiper-pagination-bullet {
    width: 9px;
    height: 9px;
    margin: 0px 5px !important;
  }

  .swiper-navigation .swiper-buttons {
    gap: 0;
  }

  .swiper-navigation .swiper-button {
    padding: 17px 20px;
    background-color: transparent;
  }

  .swiper-navigation .swiper-button svg {
    width: 30px;
    height: 10px;
  }

  .swiper-navigation .swiper-button svg path {
    stroke: var(--color-blue);
  }

  .mobile-hidden {
    display: none;
  }

  .product-card {
    border-radius: 20px 20px 10px 10px;
    padding: 10px 10px 0;
    gap: 15px;
  }

  .product-card__img {
    height: 144px;
    border-radius: 10px;
  }

  .product-card__desc {
    padding: 0 0 0 6px;
    margin-bottom: 15px;
  }

  .product-card__title {
    font-size: 17px;
    margin-bottom: 13px;
  }

  .product-card__params {
    font-size: 10px;
    padding-left: 16px;
  }

  .product-card .btn {
    margin-top: auto;
    width: calc(100% + 20px);
    margin-left: -10px;
    border-radius: 20px;
    padding: 22px 24px;
  }

  .product-card .btn::before {
    opacity: 1;
    background: var(--gradient-accent);
  }

  .review-card {
    min-height: 287px;
    gap: 28px;
    border-radius: 13px;
    padding: 13px 13px 60px;
    width: 340px;
  }

  .review-card__head {
    gap: 12px;
  }

  .review-card__img {
    width: 85px;
    height: 85px;
    border-radius: 13px;
  }

  .review-card__crumb {
    padding: 13px 44px;
    border-radius: 10px;
    font-size: 11px;
  }

  .review-card__desc {
    padding: 0 40px 0 0;
  }

  .review-card__title {
    font-size: 25px;
    margin-bottom: 20px;
  }

  .review-card__text {
    font-size: 13px;
  }

  .faq {
    margin-bottom: 0;
  }

  .faq-item {
    border-radius: 20px;
    padding: 37px 25px 42px;
  }

  .faq-item.opened {
    padding: 37px 25px 130px;
  }

  .faq-item.opened .faq-item__icon {
    -moz-transform: translate(-50%, -28px);
    -ms-transform: translate(-50%, -28px);
    -webkit-transform: translate(-50%, -28px);
    -o-transform: translate(-50%, -28px);
    transform: translate(-50%, -28px);
  }

  .faq-item:not(:last-of-type) {
    margin-bottom: 10px;
  }

  .faq-item__question {
    font-size: 20px;
    min-height: 2lh;
  }

  .faq-item__answer {
    font-size: 14px;
    padding-top: 20px;
  }

  .faq-item__icon {
    width: 68px;
    height: 68px;
    position: absolute;
    bottom: 0;
    left: 50%;
    -moz-transform: translate(-50%, 50%);
    -ms-transform: translate(-50%, 50%);
    -webkit-transform: translate(-50%, 50%);
    -o-transform: translate(-50%, 50%);
    transform: translate(-50%, 50%);
    z-index: 10;
  }

  .faq-item__icon span:first-of-type,
  .faq-item__icon span:last-of-type {
    width: 23px;
    height: 4px;
  }

  .hero {
    margin-bottom: 0;
  }

  .hero__promo .container {
    padding-bottom: 170px;
    padding-top: 60px;
  }

  .hero__promo {
    border-radius: 0;
    max-width: 100%;
    border-radius: 0 0 50px 50px;
  }

  .hero__promo .hero__desc.mobile-only br {
    display: none;
  }

  .hero__promo .hero__desc.pre-hidden {
    opacity: 0;
    -moz-transform: translate(0, 50px);
    -ms-transform: translate(0, 50px);
    -webkit-transform: translate(0, 50px);
    -o-transform: translate(0, 50px);
    transform: translate(0, 50px);
  }
  
  .hero .hero__desc.pre-hidden,
  .hero .hero__desc .btn.pre-hidden {
    opacity: 0;
    -moz-transform: translate(0, 50px);
    -ms-transform: translate(0, 50px);
    -webkit-transform: translate(0, 50px);
    -o-transform: translate(0, 50px);
    transform: translate(0, 50px);
  }

  .hero__svg-name {
    width: 100%;
    height: auto;
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -webkit-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0);
    margin-bottom: 24px;
  }

  .hero__svg-circle {
    width: 256px;
    height: 256px;
    top: unset;
    bottom: -97px;
    -moz-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    -webkit-transform: translate(-50%, 0);
    -o-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
	transform-origin: left !important;
  }

  .hero__svg-circle.pre-hidden {
    -moz-transform: scale(0.9) translate(-50%, 0);
    -ms-transform: scale(0.9) translate(-50%, 0);
    -webkit-transform: scale(0.9) translate(-50%, 0);
    -o-transform: scale(0.9) translate(-50%, 0);
    transform: scale(0.9) translate(-50%, 0);
  }

  .hero__bottom {
    margin-top: 120px;
    padding-bottom: 75px;
    font-size: 16px;
  }

  .hero__bottom .container {
    padding: 0;
  }

  .hero__bottom .hero__desc {
    margin-top: clamp(0px, 6.6666666667vw, 40px);
  }

  .hero__desc p {
    margin-bottom: 27px;
  }

  .hero__desc p br {
    display: none;
  }

  .hero__img {
    width: 540px;
    height: auto;
    top: -330px;
    left: 50%;
    -moz-transform: translate(calc(-50% - 155px), 0) rotate(12deg);
    -ms-transform: translate(calc(-50% - 155px), 0) rotate(12deg);
    -webkit-transform: translate(calc(-50% - 155px), 0) rotate(12deg);
    -o-transform: translate(calc(-50% - 155px), 0) rotate(12deg);
    transform: translate(calc(-50% - 155px), 0) rotate(12deg);
  }
  .hero__img.pre-hidden {
    -moz-transform:  translate(calc(-50% - 155px - 35px), 20px) rotate(12deg);
    -ms-transform:  translate(calc(-50% - 155px - 35px), 20px) rotate(12deg);
    -webkit-transform:  translate(calc(-50% - 155px - 35px), 20px) rotate(12deg);
    -o-transform:  translate(calc(-50% - 155px - 35px), 20px) rotate(12deg);
    transform:  translate(calc(-50% - 155px - 35px), 20px) rotate(12deg);
  }

  .utp .container {
    border-radius: 20px;
  }

  .utp__img {
    width: 509px;
    height: 509px;
  }

  .utp__title {
    font-size: 40px;
  }

  .utp__desc p {
    font-size: 16px;
  }

  .utp__desc p br {
    display: none;
  }

  .utp__subtitle {
    font-size: 18px;
    line-height: 130%;
  }

  .utp_1 {
    margin-bottom: 0;
  }
  
  .utp_1 .container.pre-hidden {
    opacity: 0;
  }

  .utp_1 .utp__wrapper {
    padding: 60px 22px;
    flex-direction: column;
    gap: 65px;
  }

  .utp_1 .utp__img {
    left: -154px;
    top: -243px;
  }

  .utp_1 .utp__subtitle {
    margin-bottom: 24px;
  }

  .utp_2{
    margin-bottom: 0;
  }

  .utp_2 .utp__wrapper {
    padding: 66px 30px 188px;
  }

  .utp_2 .utp__img {
    bottom: -171px;
    left: 50%;
    width: 317px;
    height: 317px;
    -moz-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    -webkit-transform: translate(-50%, 0);
    -o-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    transform-origin: bottom center;
  }

  .utp_2 .utp__img.pre-hidden {
    -moz-transform: scale(0.8) translate(-50%, 0);
    -ms-transform: scale(0.8) translate(-50%, 0);
    -webkit-transform: scale(0.8) translate(-50%, 0);
    -o-transform: scale(0.8) translate(-50%, 0);
    transform: scale(0.8) translate(-50%, 0);
  }
  

  .utp_2 .utp__title {
    margin-bottom: 40px;
  }

  .utp_2 .utp__desc p {
    margin-bottom: 30px;
  }

  .advantages {
    overflow: unset;
    padding-top: 95px;
  }

  .advantages__cards {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 20px;
  }

  .advantages__card {
    border-radius: 20px;
    position: sticky;
    top: calc(var(--header-height) + 20px);
  }

  .advantages__cards .advantages__card.pre-hidden {
    -moz-transform:  translate(0, 100px);
    -ms-transform:  translate(0, 100px);
    -webkit-transform:  translate(0, 100px);
    -o-transform:  translate(0, 100px);
    transform:  translate(0, 100px);
  }

  .advantages__card:not(.advantages__card_img) {
    padding: 15px 15px 40px;
  }

  .advantages__card-index {
    width: 84px;
    height: 84px;
    border-radius: 20px;
    margin-bottom: 40px;
    font-size: 34px;
  }

  .advantages__card-title {
    font-size: 27px;
    margin-bottom: 16px;
    padding-left: 5px;
  }

  .advantages__card-desc {
    padding-left: 5px;
    font-size: 16px;
  }

  .advantages__card_img {
    height: 277px;
  }

  .advantages__bg-circle {
    width: 314px;
    height: 314px;
    bottom: unset;
    left: unset;
    top: 32px;
    right: -129px;
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -webkit-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0);
  }

  .advantages__bg-tape {
    display: none;
  }

  .products {
    padding-top: 95px;
    margin-bottom: 95px;
  }

  .products__wrapper {
    padding-block: 80px;
  }

  .bestsellers {
    margin-bottom: 0;
    padding-top: 0;
  }

  .bestsellers__bg {
    display: none;
  }

  .bestsellers__slider .swiper-navigation {
    margin-top: 25px;
  }

  .certs {
    overflow: hidden;
    padding: 90px 0;
    margin-bottom: 0;
  }

  .certs__bg {
    width: 500px;
    height: 500px;
    bottom: unset;
    top: 50%;
    left: 50%;
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }
  
  .certs__bg.pre-hidden {
    -moz-transform: scale(0.8) translate(-50%, -50%);
    -ms-transform: scale(0.8) translate(-50%, -50%);
    -webkit-transform: scale(0.8) translate(-50%, -50%);
    -o-transform: scale(0.8) translate(-50%, -50%);
    transform: scale(0.8) translate(-50%, -50%);
  }

  .certs__slider .swiper-navigation {
    margin-top: 25px;
  }

  .partners__marquee-wrapper {
    height: 90px;
    gap: 70px;
    padding-right: 70px;
  }

  .partners__marquee-wrapper img {
    max-height: 46px;
    width: auto;
  }

  .reviews {
    padding-bottom: 95px;
    margin-bottom: 0;
  }

  .reviews__bg {
    width: 1066px;
    height: 548px;
    left: -50%;
    top: -115px;
  }

  .reviews__slider .swiper-navigation {
    margin-top: 25px;
  }

  .faq-item.pre-hidden {
    -moz-transform: translate(0, 100px);
    -ms-transform: translate(0, 100px);
    -webkit-transform: translate(0, 100px);
    -o-transform: translate(0, 100px);
    transform: translate(0, 100px);
  }

  .contacts {
    padding-top: 95px;
  }

  .contacts__wrapper {
    background-color: transparent;
    border-radius: 20px;
    overflow: hidden;
    padding: 0;
    gap: 0;
    flex-direction: column-reverse;
    align-items: stretch;
  }

  .contacts__content {
    width: auto;
    border-radius: 20px;
    background-color: var(--color-black);
    padding: 37px 25px 25px;
    margin-top: -70px;
    z-index: 1;
  }

  .contacts__row {
    padding-bottom: 44px;
  }

  .contacts__row:last-of-type {
    margin-bottom: 44px;
  }

  .contacts__row h3 {
    font-size: 20px;
    margin-bottom: 17px;
  }

  .contacts__row p,
  .contacts__row .link {
    font-size: 14px;
  }

  .contacts__map {
    width: 100%;
    height: 395px;
    border-radius: 0;
  }
  
  .contacts__map.pre-hidden {
    -moz-transform: translate(0, 100px);
    -ms-transform: translate(0, 100px);
    -webkit-transform: translate(0, 100px);
    -o-transform: translate(0, 100px);
    transform: translate(0, 100px);
  }

  .contacts__bg-circle {
    display: none;
  }

  .contacts__bg-inner {
    display: none;
  }

  .footer {
    max-width: 100%;
    border-radius: 50px;
  }

  .footer .container {
    padding: 40px 30px;
  }

  .footer__wrapper {
    flex-direction: column;
    gap: 40px;
    align-items: start;
  }

  .footer__left {
    flex-direction: column;
    gap: 35px;
  }

  .footer__logo {
    gap: 50px;
  }

  .footer__nav {
    padding: 10px 0;
    background-color: transparent;
  }

  .footer__nav li a {
    font-size: 15px;
  }

  .footer__nav li:not(:last-of-type) {
    margin-bottom: 24px;
  }

  .footer__right {
    flex-direction: column;
    align-items: start;
    gap: 20px;
  }

  .footer__tel {
    font-size: 27px;
  }

  .footer__contacts-row {
    margin-bottom: 20px;
  }

  .footer__contacts-row h3 {
    font-size: 17px;
    margin-bottom: 12px;
  }

  .footer__contacts-row p,
  .footer__contacts-row .link {
    font-size: 15px;
  }

  .footer__bottom {
    margin-top: 25px;
    flex-direction: column;
    align-items: start;
    gap: 15px;
  }

  .footer__policy.link {
    font-size: 14px;
  }

  .footer__poweredby {
    gap: 15px;
    font-size: 14px;
  }

  .footer__poweredby svg {
    width: 72px;
    height: 20px;
  }
    
  .error-404 h1 {
    font-size:  95px;
  }
  .error-404 p {
    font-size:  12px;
    opacity: 0.77;
  }
  .wpcf7-response-output {
    border-radius: 20px;
  }
}

@media only screen and (hover: hover) {
  a:hover {
    text-decoration: none;
  }

  .link:hover,
  .link.active {
    color: transparent !important;
    opacity: 1;
  }

  .btn_outline:hover {
    color: var(--color-white);
    background-color: var(--color-blue);
  }

  .btn_outline.btn_inversed:hover {
    color: var(--color-black);
    background-color: var(--color-white);
  }

  .btn_primary:hover::before {
    opacity: 1;
  }

  .btn_secondary:hover::before {
    opacity: 1;
  }

  .swiper-navigation .swiper-button:hover {
    opacity: 0.9;
  }

  .popup__close:hover path {
    stroke: var(--color-accent);
  }

  .product-card:hover .product-card__img img {
    -moz-transform: scale(1.05);
    -ms-transform: scale(1.05);
    -webkit-transform: scale(1.05);
    -o-transform: scale(1.05);
    transform: scale(1.05);
  }

  .cert-card:hover .product-card__img img {
    -moz-transform: scale(1.05);
    -ms-transform: scale(1.05);
    -webkit-transform: scale(1.05);
    -o-transform: scale(1.05);
    transform: scale(1.05);
  }

  .footer__poweredby:hover path {
    fill: var(--color-accent);
  }
}

.scroll-animation {
  -webkit-transition:all 0.4s ease-out 0s;
  -moz-transition:all 0.4s ease-out 0s;
  -ms-transition:all 0.4s ease-out 0s;
  -o-transition:all 0.4s ease-out 0s;
  transition:all 0.4s ease-out 0s;
}

svg.circle-pulsation{
  animation: circle-pulsation-width 4s ease-in-out 3.2s infinite;
  transform-origin: center;
}

@keyframes circle-pulsation-width {
  0% {
    scale: 1;
  }
  10%{
    scale: 1.1;
  }
  20%{
    scale: 1.08;
  }
  30%{
    scale: 1.1;
  }
  50% {
    scale: 1;
  }
}
svg.circle-pulsation circle {
  opacity: 0.13;
  animation: circle-pulsation 4s ease-in-out infinite;
}
svg.circle-pulsation circle:nth-of-type(1) {
  --circle-index: 6;
  animation-delay: calc(var(--circle-index) * 200ms + 2000ms);
}
svg.circle-pulsation circle:nth-of-type(2) {
  --circle-index: 5;
  animation-delay: calc(var(--circle-index) * 200ms + 2000ms);
}
svg.circle-pulsation circle:nth-of-type(3) {
  --circle-index: 4;
  animation-delay: calc(var(--circle-index) * 200ms + 2000ms);
}
svg.circle-pulsation circle:nth-of-type(4) {
  --circle-index: 3;
  animation-delay: calc(var(--circle-index) * 200ms + 2000ms);
}
svg.circle-pulsation circle:nth-of-type(5) {
  --circle-index: 2;
  animation-delay: calc(var(--circle-index) * 200ms + 2000ms);
}
svg.circle-pulsation circle:nth-of-type(6) {
  --circle-index: 1;
  animation-delay: calc(var(--circle-index) * 200ms + 2000ms);
}

@keyframes circle-pulsation {
  0% {
    opacity: 0.13;
    stroke: #315D9E;
  }
  10%{
    opacity: 0.35;
    stroke: var(--color-blue);
  }
  20%{
    opacity: 0.13;
    stroke: #315D9E;
  }
  30%{
    opacity: 0.35;
    stroke: var(--color-blue);
  }
  40% {
    opacity: 0.13;
    stroke: #315D9E;
  }
}