@charset "UTF-8";

/*============= ALIGNES ===============*/
.alignwide {
  width: 100%;
}

.nowrap {
  white-space: nowrap;
}

.hide_top_padding {
  padding-top: 0px;
}

#overflow-content {
  display: none;
  max-width: 1010px;
  background: var(--bg-primary-main);
}

#overflow-content .overflow-content__text {
  max-height: 800px;
  overflow-y: auto;
  color: var(--text-primary-main);
  padding-right: 20px;
}

#overflow-content .overflow-content__text * {
  color: var(--text-primary-main);
}

/* Стилизация всего скролла */
::-webkit-scrollbar {
  width: 4px;
  height: 4px;
  background: var(--bg-primary-second);
  border-radius: 15px;
}

::-webkit-scrollbar-thumb {
  background-color: var(--colors-main);
}

/* FireFox */
::-moz-scrollbar {
  background: var(--bg-primary-second);
  border-radius: 3px;
  border-radius: 15px;
}

::-moz-scrollbar-thumb {
  background-color: var(--colors-main);
}

.is-close-btn {
  top: 10px !important;
  right: 10px !important;
}

.is-close-btn svg path {
  fill: var(--hover-main);
  stroke: var(--hover-main);
}

.alignfull {
  margin-left: calc(-50vw + 50%);
  margin-right: calc(-50vw + 50%);
  max-width: 1920px;
}

.soc-holder * {
  transition: all 0.3s ease-in-out;
}

.side_social {
  position: fixed;
  top: 30%;
  right: clamp(1.25rem, 0.817rem + 1.92vw, 3.125rem);
  z-index: 100;
}

@media (max-width: 620px) {
  .side_social {
    display: none;
  }
}

.side_social .socials-holder {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.side_social .socials-holder .soc {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 60px;
  height: 60px;
  background: var(--bg-primary-main);
  border: 1px solid var(--bg-primary-stroke);
  border-radius: 15px;
  transition: all 0.3s ease-in-out;
}

.side_social .socials-holder .soc svg {
  max-width: 24px;
  max-height: 24px;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.side_social .socials-holder .soc svg path {
  transition: all 0.3s ease-in-out;
}

.side_social .socials-holder .soc:hover {
  background: var(--hover-main) !important;
  border-color: var(--hover-main);
}

.side_social .socials-holder .soc:hover svg path {
  fill: var(--text-alt-head) !important;
}

.soc-holder .soc {
  transition: all 0.3s ease-in-out;
}

.soc-holder .soc svg path {
  transition: all 0.3s ease-in-out;
}

.soc-holder .soc:hover {
  background: var(--hover-main) !important;
}

.soc-holder .soc:hover svg path {
  fill: var(--text-alt-head) !important;
}

.fancybox__backdrop {
  background: #1A6A42 !important;
  opacity: 0.5 !important;
}

.read-more-btn {
  width: fit-content;
  padding-right: 15px;
  position: relative;
  cursor: pointer;
}

.read-more-btn::after {
  position: absolute;
  content: "";
  top: 50%;
  right: 0px;
  transform: translateY(-50%);
  background-image: url("data:image/svg+xml,%3Csvg width='9' height='5' viewBox='0 0 9 5' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.5 0.5L4.5 4.5L8.5 0.5' stroke='%23388860' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  background-size: contain;
  width: 10px;
  height: 5px;
  transition: all 0.3s ease-in-out;
}

.read-more-btn.active::after {
  transform: rotate(180deg);
}

.hide_top_padding {
  padding-top: 0px !important;
}

.read-more-review {
  margin-top: 10px;
  width: fit-content;
  position: relative;
  cursor: pointer;
  font-weight: 500;
  font-size: 16px;
  line-height: 100%;
  letter-spacing: 0%;
  color: var(--colors-main);
}

@media only screen and (min-width: 1920px) {
  .alignfull {
    width: 100vw !important;
    max-width: unset;
  }
}

.top-side {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(1.25rem, 1.106rem + 0.64vw, 1.875rem);
  width: 100%;
}

.top-side .subtitle {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 15px;
}

.top-side .subtitle::after {
  content: "";
  display: inline-block;
  width: 100%;
  padding-right: 15px;
  height: 1px;
  background: var(--bg-primary-stroke);
}

.top-side .block-title {
  grid-column: span 2;
}

.after,
.before {
  position: absolute;
  content: "";
  height: 100%;
  top: 0px;
}

.after::after,
.after::before,
.before::after,
.before::before {
  position: absolute;
  content: "";
  width: 20px;
  height: 20px;
}

.after {
  right: 0px;
}

.after::after {
  bottom: 0px;
  right: 0px;
  border-bottom: 1px solid var(--bg-primary-stroke);
  border-right: 1px solid var(--bg-primary-stroke);
}

.after::before {
  top: 0px;
  right: 0px;
  border-top: 1px solid var(--bg-primary-stroke);
  border-right: 1px solid var(--bg-primary-stroke);
}

.before {
  left: 0px;
}

.before::after {
  bottom: 0px;
  left: 0px;
  border-bottom: 1px solid var(--bg-primary-stroke);
  border-left: 1px solid var(--bg-primary-stroke);
}

.before::before {
  top: 0px;
  left: 0px;
  border-top: 1px solid var(--bg-primary-stroke);
  border-left: 1px solid var(--bg-primary-stroke);
}

/* =========== BASE CONFIG =========== */
html {
  box-sizing: border-box;
}

* {
  margin: 0;
  padding: 0;
  font-family: var(--font-family);
  font-weight: 400;
  box-sizing: border-box;
}

.hidden {
  display: none;
}

body {
  background-color: var(--bg-primary-main);
  min-height: 83vh;
  overflow-x: hidden;
  margin: 0 auto;
  width: auto;
  position: relative;
}

body:has(#header .nav-menu-element.has-childs:hover)::after {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  top: 0px;
  left: 0px;
  background: rgba(26, 106, 66, 0.5019607843);
  z-index: 15;
}

a {
  text-decoration: none;
  color: #121212;
  transition: all 0.3s ease-in;
}

p {
  color: var(--text-primary-main);
  font-size: 18px;
}

h1,
.h1,
.h1 * {
/*   font-size: clamp(2.25rem, 1.947rem + 1.35vw, 3.563rem); */
/* 	font-size:clamp(2.25rem, 1.34rem + 1.85vw, 3.563rem); */
	font-size:clamp(1.75rem, 1.333rem + 0.87vw, 2.375rem);
  	font-weight: 700;
  	line-height: 110%;
  	color: var(--text-primary-head);
}

h2,
.h2,
.h2 * {
/*   font-size: clamp(2rem, 1.813rem + 0.83vw, 2.813rem); */
/* 	font-size:clamp(2rem, 1.437rem + 1.15vw, 2.813rem); */
	font-size:clamp(1.75rem, 1.583rem + 0.35vw, 2rem);
  font-weight: 800;
  line-height: 110%;
  color: var(--text-primary-head);
}

h3,
h3 *,
.h3,
.h3 * {
/*   font-size: clamp(1.75rem, 1.692rem + 0.26vw, 2rem); */
	font-size:clamp(1.625rem, 1.458rem + 0.35vw, 1.875rem);
  font-weight: 800;
  line-height: 110%;
  color: var(--text-primary-head);
}

h4,
.h4,
.h4 * {
  font-size: 20px;
  font-weight: 800;
  line-height: 120%;
  color: var(--text-primary-head);
}

h5,
.h5,
.h5 * {
  font-size: 18px;
  font-weight: 800;
  line-height: 110%;
  color: var(--text-primary-head);
}

h6,
.h6,
.h6 * {
  font-size: 14px;
  font-weight: 500;
  line-height: 120%;
  color: var(--text-primary-head);
}

.ht,
.ht * {
  font-size: 16px;
  font-weight: 800;
  line-height: 110%;
  color: var(--text-primary-head);
}

.numb,
.numb * {
  font-size: 16px;
  font-weight: 500;
  line-height: 100%;
  font-family: "Intertight";
}

.p1,
.p1 * {
  font-size: clamp(1rem, 0.942rem + 0.26vw, 1.25rem);
  line-height: 130%;
  font-weight: 500;
  color: var(--text-primary-main);
}

.p2,
.p2 * {
  font-size: 14px;
  line-height: 130%;
  font-weight: 500;
  color: var(--text-primary-main);
  font-family: "Manrope";
}

.p2_5,
.p2_5 * {
  font-size: 14px;
  line-height: 130%;
  font-weight: 400;
  color: var(--text-primary-main);
  font-family: "Manrope";
}

.p3,
.p3 * {
  font-weight: 500;
  font-size: 14px;
  line-height: 130%;
  color: var(--text-primary-second);
}

.p4,
.p4 * {
  font-size: 12px;
  font-weight: 500;
  line-height: 100%;
}

.numb {
  font-size: clamp(3.25rem, 3.106rem + 0.64vw, 3.875rem);
  font-weight: 600;
  line-height: 100%;
}

.no_select {
  -moz-user-select: none;
  /* Firefox */
  -khtml-user-select: none;
  /* Старый Konqueror */
  -webkit-user-select: none;
  /* Safari, Chrome, Opera */
  -ms-user-select: none;
  /* Internet Explorer */
  user-select: none;
  /* Стандарт */
}

.breadcrumbs {
  padding: 20px 0;
  font-family: var(--font-family);
  font-size: 14px;
  line-height: 150%;
  flex-wrap: wrap;
  color: #000;
  display: flex;
  flex-direction: row;
  gap: 5px;
}

.breadcrumbs span {
  font-size: 16px;
  font-weight: 500;
  line-height: 120%;
  color: var(--text-primary-second);
}

.breadcrumbs span.current-item {
  color: var(--hover-main);
  text-decoration: underline;
}

.breadcrumbs a {
  color: inherit;
}

.breadcrumbs a:hover {
  color: #000;
}

.breadcrumbs .separator {
  color: #FFF;
  opacity: 0.1;
}

input.error {
  border: 1px solid red !important;
}

.b-padding {
/*   padding: clamp(2.5rem, 2.212rem + 1.28vw, 3.75rem) 0px; */
/* 	padding: clamp(1.25rem, -2.917rem + 5.56vw, 3.75rem) 0px; */
	padding:clamp(0.625rem, -2.5rem + 4.17vw, 2.5rem) 0px;
}

@media (max-width: 620px) {
  .b-padding {
    padding-top: 10px;
    padding-bottom: 10px;
  }
}

.b-margin {
/*   margin: clamp(2.5rem, 2.212rem + 1.28vw, 3.75rem) 0px; */
/* 	margin: clamp(1.25rem, -2.917rem + 5.56vw, 3.75rem); */
	margin: clamp(0.625rem, -2.5rem + 4.17vw, 2.5rem) 0px;
}

.container {
  max-width: 1560px;
  width: 100%;
  margin: 0 auto;
  padding: 0 15px;
}

@media (max-width: 1200px) {
  .container {
    overflow: hidden;
  }
}

.btn {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  height: 60px;
  padding: 0px 30px;
  background: var(--bg-primary-main);
  border: 1px solid var(--bg-primary-stroke);
  font-size: 16px;
  font-weight: 500;
  color: var(--colors-main);
  line-height: 100%;
  cursor: pointer;
  transition: all 0.3s ease-in-out;
  width: 100%;
  border-radius: 15px;
}

.btn:hover {
  background-color: var(--hover-main);
  color: var(--text-alt-head);
  border-color: var(--hover-main);
}

.btn.invert {
  background-color: var(--colors-main);
  border: 2px solid var(--colors-main);
  color: var(--text-alt-head);
}

.btn.invert:hover {
  border-color: var(--colors-main);
  background: var(--bg-primary-main);
  color: var(--colors-main);
}

.btn.v1 {
  background-color: var(--colors-main);
  border: 1px solid var(--colors-main);
  color: var(--text-alt-head);
}

.btn.v1:hover {
  border-color: var(--hover-main);
  background: var(--hover-main);
}

.btn.v2 {
  background: var(--bg-primary-second);
  color: var(--colors-main);
  border: none;
}

.btn.v2:hover {
  background: var(--hover-main);
  color: var(--text-alt-head);
}

.btn.v3 {
  background: var(--bg-alt-second);
  color: var(--colors-main);
  border: none;
}

.btn.v3:hover {
  background: var(--hover-main);
  color: var(--text-alt-head);
}

.callback-btn,
.callback-btn-invert {
  position: relative;
  padding-right: 65px;
  height: 60px;
  display: flex;
  align-items: center;
  border-radius: 30px;
  padding-left: 25px;
  transition: all 0.3s ease-in-out;
  cursor: pointer;
  width: fit-content;
}

.callback-btn::before,
.callback-btn-invert::before {
  content: "";
  top: 50%;
  transform: translateY(-50%);
  right: 5px;
  position: absolute;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  z-index: 1;
  transition: all 0.3s ease-in-out;
}

.callback-btn::after,
.callback-btn-invert::after {
  content: "";
  top: 50%;
  transform: translateY(-50%);
  right: 5px;
  position: absolute;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background-size: 16px;
  z-index: 2;
  transition: filter 0.3s ease-in-out;
}

.callback-btn {
  background: var(--bg-primary-second);
  border: 1px solid var(--bg-primary-stroke);
}

.callback-btn-invert {
  background: var(--colors-second);
  color: var(--text-alt-head);
  border: 1px solid var(--colors-second);
}

.callback-btn-invert::before {
  content: "";
  background: var(--hover-main);
}

.callback-btn-invert::after {
  background-image: url("data:image/svg+xml,%3Csvg width='15' height='15' viewBox='0 0 15 15' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M13.7587 10.4467V12.4467C13.7595 12.6324 13.7215 12.8162 13.6471 12.9863C13.5727 13.1564 13.4636 13.3091 13.3268 13.4346C13.19 13.5602 13.0285 13.6557 12.8526 13.7152C12.6767 13.7747 12.4903 13.7968 12.3054 13.7801C10.254 13.5572 8.28341 12.8562 6.55208 11.7334C4.9413 10.7098 3.57564 9.34418 2.55208 7.7334C1.4254 5.9942 0.72424 4.01406 0.505411 1.9534C0.488751 1.76904 0.510661 1.58324 0.569745 1.40781C0.628828 1.23239 0.723792 1.07119 0.848588 0.934479C0.973385 0.797767 1.12528 0.688538 1.29461 0.613746C1.46393 0.538954 1.64697 0.500239 1.83208 0.500065H3.83208C4.15562 0.49688 4.46927 0.61145 4.71459 0.82242C4.9599 1.03339 5.12013 1.32636 5.16541 1.64673C5.24983 2.28678 5.40638 2.91522 5.63208 3.52006C5.72177 3.75868 5.74119 4.01801 5.68802 4.26732C5.63484 4.51663 5.51132 4.74547 5.33208 4.92673L4.48541 5.7734C5.43445 7.44243 6.81638 8.82436 8.48541 9.7734L9.33208 8.92673C9.51334 8.74749 9.74218 8.62396 9.99149 8.57079C10.2408 8.51762 10.5001 8.53703 10.7387 8.62673C11.3436 8.85243 11.972 9.00898 12.6121 9.0934C12.9359 9.13908 13.2317 9.3022 13.4431 9.55173C13.6545 9.80125 13.7669 10.1198 13.7587 10.4467Z' stroke='%23222222' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
}

.callback-btn-invert:hover {
  background: var(--hover-main);
  border-color: var(--bg-primary-stroke);
  color: var(--text-primary-head);
}

.callback-btn-invert:hover::before {
  background: var(--colors-second);
}

.callback-btn-invert:hover::after {
  filter: brightness(0) invert(1);
}

.soc-btn {
  width: 60px;
  height: 60px;
  display: flex;
  justify-content: center;
  align-items: center;
  background: var(--bg-primary-main);
  border-radius: 50%;
  transition: all 0.3s ease-in-out;
}

.soc-btn svg {
  width: 100%;
  height: 100%;
  object-fit: cover;
  max-width: 27px;
  max-height: 27px;
}

.soc-btn svg path {
  fill: var(--colors-second);
}

.soc-btn:hover {
  background: var(--colors-second) !important;
}

.soc-btn:hover svg path {
  fill: var(--hover-main) !important;
}

/* ====== SCROLL BAR ==========*/
.desc::-webkit-scrollbar,
.overflow-content__text::-webkit-scrollbar {
  width: 4px;
  background: var(--bg-primary-stroke);
  scroll-padding-left: 20px;
}

.desc::-webkit-scrollbar-thumb,
.overflow-content__text::-webkit-scrollbar-thumb {
  background-color: var(--colors-main);
  border-radius: 100px;
}

/* ======== mainbanner ======= */
.mainbanner-block {
  position: relative;
}

.mainbanner-block__advantages {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.mainbanner-block__advantages .advantage {
  padding-left: 45px;
  position: relative;
}

.mainbanner-block__advantages .advantage::before {
  position: absolute;
  content: "";
  height: 1px;
  width: 30px;
  left: 0px;
  top: 50%;
  background: var(--bg-primary-stroke);
}

.mainbanner-block__title {
  max-width: 1010px;
}

.mainbanner-block__advantages {
  margin-top: 25px;
  max-width: 1010px;
}

.mainbanner-block__down {
  margin-top: clamp(20px, 4.487rem + 4.487vw, 100px);
  display: flex;
  flex-direction: row;
  gap: 30px;
  align-items: center;
}

.mainbanner-block__down .subtitle_btn {
  text-transform: uppercase;
  color: var(--text-primary-main);
}

.mainbanner-block__down .btn {
  width: fit-content;
}

.mainbanner-block .image_bg {
  position: absolute;
  top: 0px;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
  width: 100vw;
  height: 100%;
}

.mainbanner-block .image_bg::after {
  position: absolute;
  content: "";
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, #F5F6FB 34.3%, rgba(255, 255, 255, 0) 100%);
}

.mainbanner-block .image_bg img {
  width: 100%;
  max-width: 1000px;
  height: 100%;
  object-fit: cover;
  position: absolute;
  right: 0px;
  object-position: top;
}

@media (max-width: 500px) {
  .mainbanner-block__down {
    flex-direction: column;
    background: var(--bg-primary-main);
    width: 100%;
    padding: 5px;
    margin: clamp(20px, 4.487rem + 4.487vw, 100px) auto 0px auto;
    border-radius: 10px;
  }

  .mainbanner-block__down .btn {
    width: 100%;
  }

  .mainbanner-block__down .subtitle_btn {
    padding-bottom: 20px;
  }
}

/*====== NAVIGATION ===========*/
.custom-pagination,
.custom_pagination,
.custom-pagination-review-v2,
.custom-pagination-review-v1 {
  display: flex;
  flex-direction: row;
  gap: 15px;
  justify-content: center;
}

.custom-pagination .disable,
.custom_pagination .disable,
.custom-pagination-review-v2 .disable,
.custom-pagination-review-v1 .disable {
  background: var(--bg-primary-second);
  pointer-events: none;
  border-color: var(--bg-primary-second);
}

.custom-pagination .disable svg path,
.custom_pagination .disable svg path,
.custom-pagination-review-v2 .disable svg path,
.custom-pagination-review-v1 .disable svg path {
  stroke: var(--text-primary-second);
}

.custom-pagination svg,
.custom_pagination svg,
.custom-pagination-review-v2 svg,
.custom-pagination-review-v1 svg {
  width: 14px;
  height: 14px;
}

.custom-pagination__before,
.custom-pagination__after,
.custom_pagination__before,
.custom_pagination__after,
.custom-pagination-review-v2__before,
.custom-pagination-review-v2__after,
.custom-pagination-review-v1__before,
.custom-pagination-review-v1__after {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 60px;
  height: 60px;
  border-radius: 10px;
  background: var(--bg-primary-main);
  border: 1px solid var(--colors-main);
}

.custom-pagination__numbers,
.custom_pagination__numbers,
.custom-pagination-review-v2__numbers,
.custom-pagination-review-v1__numbers {
  display: flex;
  flex-direction: row;
  gap: 5px;
  align-items: center;
  border-radius: 10px;
  flex-wrap: wrap;
  justify-content: center;
}

.custom-pagination__numbers a,
.custom-pagination__numbers span,
.custom_pagination__numbers a,
.custom_pagination__numbers span,
.custom-pagination-review-v2__numbers a,
.custom-pagination-review-v2__numbers span,
.custom-pagination-review-v1__numbers a,
.custom-pagination-review-v1__numbers span {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 60px;
  height: 60px;
  border-radius: 10px;
}

.custom-pagination__numbers span,
.custom_pagination__numbers span,
.custom-pagination-review-v2__numbers span,
.custom-pagination-review-v1__numbers span {
  background: var(--hover-main);
  color: var(--text-alt-head);
}

.custom-pagination__numbers a,
.custom_pagination__numbers a,
.custom-pagination-review-v2__numbers a,
.custom-pagination-review-v1__numbers a {
  background: var(--bg-primary-main);
  color: var(--colors-main);
}

.custom-pagination__numbers a:hover,
.custom_pagination__numbers a:hover,
.custom-pagination-review-v2__numbers a:hover,
.custom-pagination-review-v1__numbers a:hover {
  background: var(--hover-main);
  color: var(--text-alt-head);
}

.pagination {
  width: 100%;
  margin-top: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(1.25rem, 0.385rem + 3.85vw, 5rem);
}

.pagination>.page-numbers {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 60px;
  height: 60px;
  border-radius: 15px;
  background: var(--bg-alt-second);
  transition: all 0.3s ease-in-out;
  cursor: pointer;
}

.pagination>.page-numbers svg {
  width: 13px;
  height: 13px;
}

.pagination>.page-numbers svg path {
  stroke: var(--colors-main);
}

.pagination>.page-numbers:hover {
  background: var(--hover-main);
}

.pagination>.page-numbers:hover svg path {
  stroke: var(--text-alt-head);
}

.pagination>.page-numbers.disabled {
  pointer-events: none;
  background: var(--bg-primary-second);
}

.pagination>.page-numbers.disabled svg path {
  stroke: #C6C6C6;
}

.pagination .pagination__link {
  display: flex;
  flex-direction: row;
  gap: 5px;
}

.pagination .pagination__link *:first-child {
  padding-left: 0px;
  padding-right: 15px;
}

.pagination .pagination__link * {
  margin: 0 !important;
  padding: 0px 15px;
  border-left: 1px solid rgba(255, 255, 255, 0.1019607843);
}

.pagination .pagination__link *:last-child {
  padding-left: 15px;
  padding-right: 0px;
}

.pagination .pagination__link .page-numbers {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 16px;
  line-height: 130%;
  font-weight: 500;
  color: var(--text-primary-second);
  width: 30px;
  height: 30px;
  padding: 0px;
  border-radius: 5px;
  transition: all 0.3s ease-in-out;
}

.pagination .pagination__link .page-numbers.current {
  background: var(--hover-main);
  color: var(--text-alt-head);
}

.pagination .pagination__link .page-numbers:hover {
  background: var(--hover-main);
  color: var(--text-alt-head);
}

.btn-link {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 60px;
  height: 60px;
  border-radius: 50%;
  background: var(--bg-primary-main);
  border: 2px solid var(--bg-primary-second);
  transition: all 0.3s ease-in-out;
  cursor: pointer;
  flex-shrink: 0;
}

.btn-link:hover {
  background: var(--hover-second);
  border: 2px solid var(--hover-second);
}

.btn-link:hover svg path {
  stroke: var(--hover-main);
}

.btn-link svg {
  max-width: 16px;
  max-height: 16px;
}

.btn-link svg path {
  transition: all 0.3s ease-in-out;
}

/*============ Swiper ================ */
.swiper-navigation-btn {
  display: flex;
  flex-direction: row;
  gap: 20px;
  justify-content: space-between;
  padding: 0px 15px;
}

.swiper-navigation-btn .slider-btn {
  width: 60px;
  height: 60px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--colors-main);
  border-radius: 10px;
  cursor: pointer;
  transition: all 0.3s ease-in-out;
}

.swiper-navigation-btn .slider-btn svg {
  max-width: 16px;
  max-height: 16px;
}

.swiper-navigation-btn .slider-btn svg path {
  stroke: var(--colors-main);
  transition: all 0.3s ease-in-out;
}

.swiper-navigation-btn .slider-btn--prev svg {
  transform: rotate(180deg);
}

.swiper-navigation-btn .slider-btn:hover {
  border-color: var(--hover-main);
  background: var(--hover-main);
}

.swiper-navigation-btn .slider-btn:hover svg path {
  stroke: var(--text-alt-head);
}

.nav-holder .block-holder {
  display: flex;
  flex-direction: row;
  gap: 5px;
  padding: 5px;
  width: fit-content;
}

.nav-holder .block-holder .slider-btn {
  width: 60px;
  height: 60px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 10px;
  border: 1px solid var(--colors-main);
  background: var(--bg-primary-main);
  transition: all 0.3s ease-in-out;
  cursor: pointer;
}

.nav-holder .block-holder .slider-btn:hover {
  background: var(--hover-second);
}

.nav-holder .block-holder .slider-btn:hover svg path {
  stroke: var(--hover-main);
}

.nav-holder .block-holder .slider-btn--prev svg {
  transform: rotate(180deg);
}

.nav-holder .block-holder .icon {
  width: 16px;
  height: 16px;
}

.nav-holder .block-holder svg {
  max-width: 16px;
  max-height: 16px;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.nav-holder .block-holder svg path {
  transition: all 0.3s ease-in-out;
  stroke: var(--text-primary-head);
}

.swiper-button-disabled {
  background: var(--bg-primary-second);
  border-color: var(--bg-primary-second) !important;
  pointer-events: none;
}

.swiper-button-disabled svg path {
  stroke: var(--text-primary-second);
}

.swiper {
  display: flex;
  flex-direction: row;
  gap: 20px;
  justify-content: space-between;
}

.swiper-navigation {
  width: 100%;
  display: flex;
  flex-direction: row;
  gap: 20px;
  justify-content: space-between;
}

.swiper .link-btn {
  width: fit-content;
}

.swiper-btn_holder {
  display: flex;
  flex-direction: row;
  gap: 5px;
}

.swiper-btn_holder .slider-btn {
  width: 60px;
  height: 60px;
  border-radius: 10px;
  border: 2px solid var(--colors-main);
  display: flex;
  justify-content: center;
  align-items: center;
  transition: border-color 0.3s ease-in-out, background 0.3s ease-in-out;
  cursor: pointer;
}

.swiper-btn_holder .slider-btn--prev {
  transform: rotate(180deg);
}

.swiper-btn_holder .slider-btn svg {
  max-width: 12px;
  max-height: 12px;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.swiper-btn_holder .slider-btn svg path {
  stroke: var(--colors-main);
  transition: all 0.3s ease-in-out;
}

.swiper-btn_holder .slider-btn:hover {
  border-color: var(--hover-main);
  background: var(--hover-main);
}

.swiper-btn_holder .slider-btn:hover svg path {
  stroke: var(--text-alt-head);
}

@media (max-width: 800px) {
  .swiper-navigation {
    flex-direction: column;
  }

  .swiper-btn_holder {
    justify-content: space-between;
  }
}

/*============ HEADER =================*/
/*================ MOBILE MNU =============*/
#header .burger.open_menu {
  display: none;
  flex-direction: column;
  background-color: transparent;
  height: 40px;
  width: 40px;
  justify-content: space-evenly;
  align-items: center;
  border-radius: 2px;
  flex-shrink: 0;
}

#header .burger.open_menu span {
/*   background-color: var(--text-primary-head); */
	background-color: var(--bg-primary-main);
  width: 30px;
  height: 4px;
  transition: all 0.3s ease-in;
  pointer-events: none;
}

#header .burger.open_menu.clicked {
  background-color: var(--bg-primary-second);
}

#header .burger.open_menu.clicked span {
  background-color: var(--colors-main);
}

#header #mobile-mnu {
  display: flex;
  flex-direction: column;
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 320px;
  background-color: var(--bg-primary-second);
  padding: 30px;
  transition: all 0.3s ease-in;
  transform: translateX(-350px);
  z-index: 9999;
  overflow-y: auto;
  overflow-x: hidden;
  gap: 20px;
}

#header #mobile-mnu #close-mnu {
  font-size: 35px;
  position: absolute;
  right: 15px;
  top: 15px;
  cursor: pointer;
  display: block;
  color: #D12D26;
}

#header #mobile-mnu .menuTop {
  margin-top: 20px;
}

#header #mobile-mnu .logo-holder {
  width: 100%;
  max-width: 150px;
}

#header #mobile-mnu .logo-holder p {
  font-size: 26px;
  font-weight: 800;
  line-height: 110%;
  color: var(--text-primary-head);
}

#header #mobile-mnu .logo-holder span {
  font-size: 20px;
  font-weight: 800;
  line-height: 110%;
  color: var(--text-primary-second);
}

#header #mobile-mnu .logo-holder img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#header #mobile-mnu .moblie_menu {
  display: flex;
  flex-direction: column;
  gap: 10px;
  list-style: none;
}

#header #mobile-mnu .moblie_menu li {
  position: relative;
}

#header #mobile-mnu .moblie_menu li a {
  font-size: 18px;
  font-weight: 800;
}

#header #mobile-mnu .moblie_menu li.has-childs>a::after {
  content: "";
  display: inline-block;
  transition: all 0.3s ease-in-out;
  background-image: url("data:image/svg+xml,%3Csvg width='9' height='5' viewBox='0 0 9 5' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.5 0.5L4.5 4.5L8.5 0.5' stroke='%23282D3C' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
  width: 12px;
  height: 8px;
  margin-left: 5px;
}

#header #mobile-mnu .moblie_menu li.has-childs ul {
  display: none;
}

#header #mobile-mnu .moblie_menu li.has-childs ul {
  margin-top: 10px;
  gap: 10px;
  list-style: none;
  padding-bottom: 10px;
}

#header #mobile-mnu .moblie_menu li.has-childs ul li {
  margin-top: 10px;
}

#header #mobile-mnu .moblie_menu li.has-childs ul li:nth-last-child {
  margin-top: 10px;
}

#header #mobile-mnu .moblie_menu li.has-childs.active>a::after {
  transform: rotate(180deg);
}

#header #mobile-mnu .phones-holder {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

#header #mobile-mnu .soc-holder {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px;
}

#header #mobile-mnu .soc-holder .soc {
  width: 60px;
  height: 60px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 10px;
  border: 2px solid var(--colors-main);
  background: var(--bg-primary-main);
}

#header #mobile-mnu .soc-holder .soc svg path {
  fill: var(--colors-main);
  transition: all 0.3s ease-in-out;
}

#header #mobile-mnu .soc-holder .soc:hover {
  border-color: var(--hover-main);
  background: var(--hover-main);
}

#header #mobile-mnu .soc-holder .soc:hover svg path {
  fill: var(--text-alt-head);
}

#header #mobile-mnu .btn {
  flex-shrink: 0;
}

#header #mobile-mnu.opened {
  transform: translateX(0);
}

/*============ FOOTER ===============*/
.footer {
  overflow: hidden;
  position: relative;
}

.footer a {
  transition: all 0.3s ease-in-out;
}

.footer a:hover {
  color: var(--hover-main);
}

.footer img,
.footer svg {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.footer__logo {
  max-height: 72px;
  max-width: 183px;
}

.footer__contact {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.footer__contact a,
.footer__contact p,
.footer__contact span {
  transition: all 0.3s ease-in-out;
}

.footer__contact a:hover,
.footer__contact span:hover,
.footer__contact p:hover {
  text-decoration: underline;
  color: var(--colors-main);
}

/* ============== MODAL ============= */
.wpcf7 .wpcf7-response-output,
.wpcf7 .wpcf7-not-valid-tip {
  display: none;
}

.wpcf7 .ajax-loader {
  display: none;
}

.wpcf7 .wpcf7-spinner {
  display: none;
}

.theme-modal {
  display: none;
}

.theme-modal.fancybox__content {
  width: 620px;
}

.theme-modal.fancybox__content>.f-button.is-close-btn svg path {
  transition: stroke 0.3s ease-in;
}

.theme-modal.fancybox__content>.f-button.is-close-btn:hover svg path {
  stroke: var(--primary);
}

[form-send][disabled] {
  cursor: not-allowed;
}

/* ============= MEDIA QUERIES =========== */
.header {
  position: sticky;
  top: 0px;
  z-index: 999;
/*   background: var(--bg-primary-main); */
	background-color:var(--colors-main);
  border-bottom: 1px solid var(--bg-primary-second);
}

.header.scrolled {
  background: var(--bg-primary-main);
}

.header .calculator_link {
  display: block;
  /* width:60px; */
  height: 50px;
  width: auto;
	flex-shrink:0;
/*   display: none; */
}

.header .calculator_link svg {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.header__content {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  padding: 10px 0px;
}

.header__content .btn {
  width: fit-content;
}

.header__content .logo-holder {
  display: block;
}

.header__content .logo-holder img {
  width: 100%;
  height: 100%;
  max-height: 60px;
  object-fit: cover;
}

.header__content .logo-holder .logo_text p {
  font-size: clamp(1.188rem, 0.986rem + 0.9vw, 2.063rem);
  font-weight: 800;
  line-height: 110%;
/*   color: var(--text-primary-head); */
  color:var(--text-alt-head);
}

.header__content .logo-holder .logo_text span {
  font-size: clamp(0.813rem, 0.683rem + 0.58vw, 1.375rem);
  font-weight: 800;
  line-height: 110%;
/*   color: var(--text-primary-second); */
	color:#94ea94;
}

.header__content-left {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: clamp(1.25rem, 1.106rem + 0.64vw, 1.875rem);
}

.header__content-left .btn {
  width: fit-content;
}

.header__content-menu {
  display: flex;
  flex-direction: row;
  align-items: center;
	padding:0px 10px;
}

.header__content-left .phones-holder {
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.header__content-menu_list {
  list-style: none;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 20px;
  position: relative;
}

.header__content-menu_list * {
  font-size: clamp(0.875rem, 0.739rem + 0.22vw, 1rem);
  font-weight: 500;
  line-height: 120%;
	color: var(--text-alt-main);
/*   color: var(--text-primary-head); */
  position: relative;
}

.header__content-menu_list ul {
  list-style: none;
}

.header__content-menu_list>li>a {
  height: 38px;
  display: flex;
  flex-direction: row;
  align-items: center;
  transition: all 0.3 ease-in-out;
}

.header__content-menu_list>li>a:hover {
/*   color: var(--hover-main); */
	color:var(--text-alt-head);
}

.header__content-menu_list>li.has-childs ul::before {
  position: absolute;
  content: "";
  height: 70px;
  top: -60px;
  width: 100%;
  transform: translateX(-15%);
}

.header__content-menu_list>li.has-childs>a {
  display: flex;
  flex-direction: row;
  gap: 10px;
  z-index: 100;
}

.header__content-menu_list>li.has-childs>a::after {
  content: "";
  transition: all 0.3s ease-in-out;
  background-image: url("data:image/svg+xml,%3Csvg width='9' height='5' viewBox='0 0 9 5' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.5 0.5L4.5 4.5L8.5 0.5' stroke='%23f3f9f3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
  width: 12px;
  height: 8px;
  top: 50%;
  right: 15px;
}

.header__content-menu_list>li.has-childs ul {
  display: none;
  position: absolute;
  top: 70px;
  left: 0px;
  width: fit-content;
  min-width: 200px;
  padding: 30px;
  padding-top: 20px;
  border-radius: 0px 0px 25px 25px;
	background: var(--colors-main);
/*   background: var(--bg-primary-main); */
  transform: translateX(-5%);
}

.header__content-menu_list>li.has-childs ul li {
  position: relative;
}

.header__content-menu_list>li.has-childs ul li a {
  font-size: 16px;
  line-height: 120%;
  font-weight: 500;
	color:var(--text-alt-head);
/*   color: var(--text-primary-main); */
}

.header__content-menu_list>li.has-childs ul li::before {
  content: "";
  position: absolute;
  width: 30px;
  height: 1px;
  top: 50%;
  left: 0px;
/*   background: var(--bg-primary-stroke); */
}

.header__content-menu_list>li.has-childs:hover>a::after {
  transform: rotate(180deg);
}

.header__content-menu_list>li.has-childs:hover .sub-menu {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.header__content .phones-holder .phone {
  white-space: nowrap;
  font-size: 24px;
  color:var(--text-alt-head);
}

.header__content-contact {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px;
}

.header__content-contact .soc-holder,
.header__content-contact .emails-holder {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px;
}

.header__content-contact .soc-holder .btn,
.header__content-contact .emails-holder .btn {
  border-color: var(--bg-primary-main);
}

.header__content-contact .soc-holder .soc,
.header__content-contact .soc-holder .email,
.header__content-contact .emails-holder .soc,
.header__content-contact .emails-holder .email {
  width: 60px;
  height: 60px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 10px;
  border: 2px solid var(--bg-primary-main);
  background: var(--bg-primary-main);
}

.header__content-contact .soc-holder .soc svg path,
.header__content-contact .soc-holder .email svg path,
.header__content-contact .emails-holder .soc svg path,
.header__content-contact .emails-holder .email svg path {
  fill: var(--colors-main);
  transition: all 0.3s ease-in-out;
}

.header__content-contact .soc-holder .soc:hover,
.header__content-contact .soc-holder .email:hover,
.header__content-contact .emails-holder .soc:hover,
.header__content-contact .emails-holder .email:hover {
  border-color: var(--hover-main);
  background: var(--hover-main);
}

.header__content-contact .soc-holder .soc:hover svg path,
.header__content-contact .soc-holder .email:hover svg path,
.header__content-contact .emails-holder .soc:hover svg path,
.header__content-contact .emails-holder .email:hover svg path {
  fill: var(--text-alt-head);
}

/* ============= MEDIA QUERIES =========== */
@media (max-width: 1400px) {
  .header__content-contact .soc-holder {
    display: none;
  }

  .header__content-contact .btn {
    padding: 0px 15px;
  }

  .header__content .phones-holder {
    padding: 0px 5px 0px 5px;
  }

  .header__content .phones-holder .phone {
    font-size: clamp(1.125rem, -0.958rem + 2.67vw, 1.375rem);
  }
	.header__content-left{
		gap:20px;
	}
}

@media (max-width: 1200px) {
  #header .burger.open_menu {
    display: flex;
    margin-left: 15px;
  }

  .header .calculator_link {
    display: block;
  }

  .header__content-left {
    margin-left: auto;
  }

  .header__content .btn {
    padding: 0px clamp(0.938rem, 0.144rem + 2.31vw, 1.875rem);
  }

  .header__content .phones-holder .phone {
    /* font-size: unset; */
  }

  .header__content-menu_list {
    display: none;
  }
}

.bottom_menu {
  display: none;
  position: fixed;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 10;
  width: 100%;
  padding: 0px 20px;
  overflow: hidden;
}

.bottom_menu-container {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0px;
  padding: 10px 20px;
  background: var(--bg-primary-main);
  border-radius: 10px;
}

.bottom_menu-container>a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.bottom_menu-container>.burger_menu {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.bottom_menu-container .icon {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  height: 25px;
}

.bottom_menu-container .icon svg {
  max-width: 20px;
  max-height: 20px;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.bottom_menu-container .icon svg path {
  fill: var(--text-primary-main);
}

.bottom_menu .burger.open_menu {
  display: flex;
  flex-direction: column;
  background-color: transparent;
  height: 10px;
  width: 15px;
  justify-content: space-evenly;
  align-items: center;
  border-radius: 2px;
  flex-shrink: 0;
}

.bottom_menu .burger.open_menu .icon {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  height: 25px;
}

.bottom_menu .burger.open_menu .icon svg {
  max-width: 20px;
  max-height: 20px;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.bottom_menu .burger.open_menu .icon svg path {
  fill: var(--text-primary-main);
}

.bottom_menu .burger.open_menu span {
  background-color: var(--text-primary-head);
  width: 100%;
  height: 2px;
  transition: all 0.3s ease-in;
  border-radius: 10px;
  pointer-events: none;
}

@media (max-width: 660px) {
  .header__content .btn {
    display: none;
  }

  .header__content .phones-holder .phone {
    font-size: clamp(0.875rem, -0.688rem + 5vw, 1.375rem);
  }

  .header .burger.open_menu {
    display: flex !important;
  }

  .header .bottom_menu {
    display: block;
  }
}

@media (max-width: 550px) {
  .header__content-contact .emails-holder {
    display: none;
  }

  .header__content-contact .btn {
    display: none;
  }

  .header__content .phones-holder {
    font-size: 20px;
    font-weight: 500;
    padding: 0px 10px;
  }

  .header .burger {
    display: none !important;
  }
}

@media (max-width: 400px) {
  .header__content-left {
    gap: 5px;
  }

  #header .burger.open_menu {
    margin-left: 0px;
  }
}

.bottom_menu {
  display: none;
  position: fixed;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 10;
  width: 100%;
  padding: 0px 20px;
}

.bottom_menu-container {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0px;
  padding: 0px 20px;
  background: var(--bg-primary-main);
  border-radius: 10px;
}

.bottom_menu-container>a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 10px 0px;
}

.bottom_menu-container>.burger_menu {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.bottom_menu-container .icon {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  height: 25px;
}

.bottom_menu-container .icon svg {
  max-width: 20px;
  max-height: 20px;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.bottom_menu-container .icon svg path {
  fill: var(--text-primary-main);
}

.bottom_menu .burger.open_menu {
  display: flex;
  flex-direction: column;
  background-color: transparent;
  height: 10px;
  width: 15px;
  justify-content: space-evenly;
  align-items: center;
  border-radius: 2px;
  flex-shrink: 0;
}

.bottom_menu .burger.open_menu .icon {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  height: 25px;
}

.bottom_menu .burger.open_menu .icon svg {
  max-width: 20px;
  max-height: 20px;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.bottom_menu .burger.open_menu .icon svg path {
  fill: var(--text-primary-main);
}

.bottom_menu .burger.open_menu span {
  background-color: var(--text-primary-head);
  width: 100%;
  height: 2px;
  transition: all 0.3s ease-in;
  border-radius: 10px;
  pointer-events: none;
}

.footer {
  position: relative;
  background: var(--bg-primary-second);
}

.footer::after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: -1;
  top: 0px;
  left: 0px;
}

.footer .container {
  display: flex;
  flex-direction: column;
  gap: 15px;
  padding: 30px 10px 15px 10px;
  padding-top: clamp(1.25rem, 0.096rem + 5.13vw, 6.25rem);
}

.footer__contacts {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
  padding-bottom: clamp(1.25rem, 0.673rem + 2.56vw, 3.75rem);
}

.footer__contacts * {
  color: var(--text-alt-head);
}

.footer__contacts-block {
  background: rgba(255, 255, 255, 0.1019607843);
  border-radius: 20px;
  display: flex;
  flex-direction: column;
  gap: clamp(1.25rem, 1.063rem + 0.83vw, 2.063rem);
  justify-content: space-between;
  padding: clamp(1.25rem, 1.106rem + 0.64vw, 1.875rem);
}

.footer__contacts .socials-holder {
  display: flex;
  flex-direction: row;
  gap: 10px;
}

.footer__contacts .socials-holder .soc {
  width: 50px;
  height: 50px;
  border-radius: 10px;
  background: var(--bg-primary-main);
  display: flex;
  justify-content: center;
  align-items: center;
  transition: all 0.3s ease-in-out;
}

.footer__contacts .socials-holder .soc svg,
.footer__contacts .socials-holder .soc svg path {
  width: 100%;
  height: 100%;
  object-fit: cover;
  max-width: 24px;
  max-height: 24px;
  transition: all 0.3s ease-in-out;
}

.footer__contacts .socials-holder .soc:hover {
  background: var(--hover-main);
}

.footer__contacts .socials-holder .soc:hover svg path {
  fill: var(--text-alt-head);
}

.footer__contacts .phones-holder {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.footer__contacts .emails-holder {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.footer__contacts .emails-container {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.footer__contacts .emails .worktimes {
  display: flex;
  flex-direction: column;
  gap: 5px;
  opacity: 0.7;
}

.footer-bot {
  border-top: 1px solid var(--text-alt-head);
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  height: 66px;
}

.footer-bot a {
  color: var(--text-primary-second);
}

.footer-bot .rights {
  color: var(--text-primary-second);
}

.footer-bot .copyright__dev {
  display: flex;
  flex-direction: row;
  gap: 10px;
  color: var(--text-primary-second);
}

.footer-bot .copyright__dev svg {
  max-height: 26px;
}

.footer-bot .copyright__dev svg path {
  fill: var(--text-primary-second);
}

.footer-bot .copyright__dev span {
  width: 111px;
  height: 17px;
  mask-image: url(../images/dev.svg);
  mask-origin: border-box;
  mask-size: contain;
  mask-repeat: no-repeat;
  background-color: var(--color-white-100);
  position: relative;
  cursor: pointer;
  vertical-align: sub;
  overflow: hidden;
}

.footer-bot .copyright__dev span::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: translateX(100%);
  transition: transform 0.7s ease-in;
  background: linear-gradient(90deg, #fe6604 10%, #ee0a76 30%, #ee0a76 60%, #fe6604 101%) repeat-x 0 0;
  background-size: 100px;
  animation-duration: 5s;
  animation-name: slideUp;
  animation-iteration-count: infinite;
  animation-delay: 3s;
  z-index: 2;
}

.footer__wrapper {
  display: flex;
  flex-direction: row;
  gap: clamp(0.625rem, -1.707rem + 2.99vw, 1.875rem);
  justify-content: space-between;
  align-items: center;
  padding-bottom: 60px;
  align-items: flex-start;
}

.footer__wrapper * {
  color: var(--text-alt-head);
}

.footer__wrapper .requisite {
  padding-top: 20px;
  border-top: 1px solid #FFF;
}

.footer__wrapper .requisite p {
  color: var(--text-primary-second);
  font-weight: 800;
}

.footer__wrapper a {
  color: var(--text-alt-head);
  transition: all 0.3s ease-in-out;
}

.footer__wrapper a:hover {
  color: var(--hover-second);
}

.footer__wrapper-left .logo_text p {
  font-size: 33px;
  font-weight: 800;
  line-height: 110%;
  color: var(--text-primary-head);
}

.footer__wrapper-left .logo_text span {
  font-size: 22px;
  font-weight: 800;
  line-height: 110%;
  color: var(--text-primary-second);
}

.footer__wrapper-right {
  display: flex;
  flex-direction: row;
  gap: clamp(0.938rem, -0.812rem + 2.24vw, 1.875rem);
/*   flex-wrap: wrap; */
}

.footer__wrapper-right .contacts {
  display: flex;
  flex-direction: column;
  gap: 20px;
  max-width: 200px;
}

.footer__wrapper-right .contacts * {
  font-weight: 800;
  color: var(--text-primary-second);
}

.footer__wrapper-right .contacts .phones-holder {
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.footer__wrapper-right .menu_list-nav {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.footer__wrapper-right .menu_list-nav p {
  color: var(--text-primary-second);
  font-weight: 800;
}

.footer__wrapper-right .menu_list-nav ul {
  display: flex;
  flex-direction: column;
  gap: 15px;
  list-style: none;
  flex-wrap: wrap;
  max-height: 13rem;
  width: 100%;
  align-content: center;
  overflow: hidden;
}

.footer__wrapper-right .menu_list-nav ul li a {
  color: var(--text-primary-head);
}

.footer__wrapper-right .menu_list {
  display: flex;
  flex-direction: row;
  gap: clamp(1.25rem, 0.673rem + 2.56vw, 3.75rem);
  list-style: none;
}

.footer__wrapper-right .menu_list>li>a {
  color: var(--text-primary-second);
  font-weight: 800;
}

.footer__wrapper-right .menu_list ul {
  list-style: none;
  margin-top: 20px;
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.footer__wrapper-right .menu_list ul li a {
  color: var(--text-primary-head);
}


@media (max-width: 660px) {

  .footer__wrapper-right .menu_list {
    flex-direction: column;
  }

  .footer__wrapper {
    flex-direction: column;
  }
}

@media (max-width:550px) {
  .footer__wrapper-right {
    flex-direction: column;
  }

}

.footer__wrapper-right .soc-holder {
  display: flex;
  flex-direction: row;
  gap: 15px;
}

.footer__wrapper-right .soc-holder .soc {
  display: block;
  width: 60px;
  height: 60px;
  display: flex;
  justify-content: center;
  align-items: center;
  background: var(--bg-primary-main);
  border-radius: 15px;
}

.footer__wrapper-right .soc-holder .soc svg {
  max-width: 27px;
  max-height: 27px;
}

.footer__wrapper .logo-holder {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: clamp(1.25rem, 0.962rem + 1.28vw, 2.5rem);
  flex-shrink: 0;
  padding-bottom: 20px;
}

.footer__wrapper .logo-holder img {
  max-width: 151px;
}

.footer__wrapper-menu_list {
  display: flex;
  flex-direction: column;
  gap: 15px;
  list-style: none;
  max-width: 166px;
  width: 100%;
}

.footer__wrapper-menu_list li a {
  color: var(--text-alt-head);
  font-size: 16px;
  font-weight: 500;
  line-height: 120%;
}

.footer__wrapper-menu_service {
  margin-left: auto;
  max-width: 814px;
  list-style: none;
}

.footer__wrapper-menu_service>li>a {
  font-size: 16px;
  line-height: 120%;
  font-weight: 500;
  color: var(--text-alt-head);
}

.footer__wrapper-menu_service .sub-menu {
  margin-top: 15px;
  column-count: 2;
  column-gap: clamp(1.25rem, 0.817rem + 1.92vw, 3.125rem);
  column-fill: balance;
  width: 100%;
  list-style: none;
}

.footer__wrapper-menu_service .sub-menu li {
  break-inside: avoid;
  page-break-inside: avoid;
}

.footer__wrapper-menu_service .sub-menu li:not(:last-child) {
  margin-bottom: 10px;
}

.footer__wrapper-menu_service .sub-menu li a {
  color: var(--text-alt-head);
  opacity: 0.7;
}

.form-faq-block {
  position: relative;
  display: flex;
  flex-direction: column;
}

.form-faq-block .p2 {
  color: var(--text-primary-main);
}

.form-faq-block * {
  box-sizing: border-box;
}

.form-faq-block::after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100vw;
  height: 100%;
  background: var(--bg-primary-main);
  z-index: -2;
}

.form-faq-block-btn {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 60px;
  padding: 0px 22px;
  color: var(--text-primary-head);
  border: 1px solid var(--colors-main);
  border-radius: 5px;
  background: var(--bg-primary-main);
  white-space: nowrap;
  text-decoration: none;
  transition: all 0.3s ease-in-out;
  font-size: 16px;
  font-weight: 500;
  line-height: 110%;
  width: fit-content;
  margin-top: auto;
  cursor: pointer;
}

.form-faq-block-btn:hover {
  color: var(--bg-primary-main);
  background: var(--colors-main);
}

.form-faq-block__title {
  display: flex;
  flex-direction: row;
  gap: 15px;
  justify-content: space-between;
}

.form-faq-block__title .block-title {
  margin-bottom: 20px;
  max-width: 750px;
}

.form-faq-block__title .block-title span {
  color: var(--colors-second);
}

.form-faq-block__title .info_plate {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  height: 44px;
  padding: 0px 20px;
  background: var(--bg-primary-second);
  border-radius: 100px;
  width: fit-content;
  flex-shrink: 0;
}

.form-faq-block__title .info_plate svg path {
  fill: var(--colors-second);
  stroke: var(--colors-second);
}

.form-faq-block img,
.form-faq-block svg {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.form-faq-block-container {
  display: flex;
  flex-direction: row;
  gap: 20px;
  justify-content: space-between;
  position: relative;
  padding: clamp(1.25rem, 0.529rem + 3.21vw, 4.375rem) clamp(1.25rem, 0.399rem + 3.78vw, 4.938rem) clamp(1.25rem, 0.673rem + 2.56vw, 3.75rem) clamp(1.25rem, 0.399rem + 3.78vw, 4.938rem);
  background: var(--bg-primary-second);
  border-radius: 20px;
  overflow: hidden;
}

.form-faq-block-container::after {
  content: "";
  position: absolute;
  left: 9.15%;
  right: 9.15%;
  top: 15.62%;
  bottom: -179.02%;
  background: rgba(51, 122, 183, 0.2);
  opacity: 0.15;
  border-radius: 2950px;
}

.form-faq-block-container::before {
  content: "";
  position: absolute;
  height: 869.01px;
  left: 22.36%;
  right: 22.32%;
  top: calc(50% - 434.505px + 312px);
  background: rgba(51, 122, 183, 0.2);
  opacity: 0.2;
  border-radius: 2950px;
}

.form-faq-block__left {
  width: 417px;
  height: auto;
  display: flex;
  flex-direction: column;
  z-index: 2;
  gap: 20px;
}

.form-faq-block__left .contacts {
  display: flex;
  flex-direction: row;
  gap: 8px;
  margin-top: auto;
}

.form-faq-block__left .contacts .phones-holder {
  color: var(--colors-main);
  background: var(--bg-primary-main);
  border-radius: 10px;
  transition: all 0.3s ease-in-out;
}

.form-faq-block__left .contacts .phones-holder:hover {
  background: var(--hover-main);
}

.form-faq-block__left .contacts .phones-holder:hover .phone {
  color: var(--text-alt-head);
}

.form-faq-block__left .contacts .phones-holder .phone {
  display: flex;
  align-items: center;
  height: 50px;
  padding: 0px 30px;
  width: fit-content;
  border-radius: 10px;
  font-family: "Intertight";
  color: var(--colors-main);
  font-size: 18px;
  font-weight: 500;
  line-height: 100%;
  transition: all 0.3s ease-in-out;
}

.form-faq-block__left .contacts .soc-holder {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  background: var(--bg-primary-main);
  border-radius: 10px;
  transition: all 0.3s ease-in-out;
}

.form-faq-block__left .contacts .soc-holder .soc {
  display: flex;
}

.form-faq-block__left .contacts .soc-holder svg {
  width: 27px;
  height: 27px;
}

.form-faq-block__left .contacts .soc-holder svg * {
  transition: all 0.3s ease-in-out;
}

.form-faq-block__left .contacts .soc-holder:hover {
  background: var(--hover-main);
}

.form-faq-block__left .contacts .soc-holder:hover svg path {
  fill: var(--text-alt-head);
}

.form-faq-block__center {
  position: absolute;
  top: 0px;
  left: 50%;
  transform: translateX(-50%);
  max-width: 440px;
}

.form-faq-block__right .form {
  display: flex;
  flex-direction: column;
  gap: 24px;
  background: var(--bg-primary-main);
  border-radius: 10px;
  padding: 24px;
  max-width: 404px;
  z-index: 2;
}

.form-faq-block__right .form__holder {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

@keyframes slideUp {
  0% {
    transform: translateX(-100%);
  }

  50% {
    transform: translateX(0);
  }

  100% {
    transform: translateX(100%);
  }
}

@media (max-width: 1000px) {
  .form-faq-block-container::after {
    opacity: 0;
  }

  .form-faq-block-container::before {
    opacity: 0;
  }

  .form-faq-block__center {
    display: none;
  }
}

@media (max-width: 800px) {
  .form-faq-block-container {
    flex-direction: column;
  }

  .form-faq-block__left {
    width: 100%;
  }

  .form-faq-block__left .contacts {
    flex-direction: column;
  }

  .form-faq-block__left .contacts .phones-holder .phone {
    width: 100%;
    justify-content: center;
  }

  .form-faq-block__right .form {
    max-width: unset;
    padding: 10px;
  }
}

/* ============= MEDIA QUERIES =========== */
@media (max-width: 1250px) {
	.footer__wrapper {
        flex-wrap: wrap;
		padding-bottom: 0px;
		flex-direction: column;
        align-items: center;
    }
	.footer__wrapper-right {
        flex-direction: column;
    }
	.footer__wrapper-right .menu_list-nav {
        width: 100%;
        align-items: center;
    }
	.footer__wrapper-right .menu_list {
        width: 100%;
        justify-content: center;
        align-items: center;
        text-align: center;
		flex-direction: column;
    }
	.footer__wrapper-right .menu_list ul{
		        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
	}
	.footer__wrapper-right .menu_list-nav ul{
		align-items: center;
        align-content: center;
        justify-content: center;
		flex-direction: row;
        max-height: unset;
	}
	    .footer__wrapper-right .contacts {
        max-width: unset;
        align-items: center;
        width: 100%;
    }
	.footer__wrapper-left{
		text-align:center;
	}
	.footer__wrapper .requisite{
		padding-top:0px;
	}
	.footer__wrapper-right .contacts *{
		text-align:center;
	}
}

@media (max-width: 1000px) {
  .footer__contacts {
    grid-template-columns: repeat(2, 1fr);
  }

  .footer__wrapper-menu_service .sub-menu {
    column-count: unset;
  }
}

@media (max-width: 800px) {
  .footer__wrapper {
    flex-wrap: wrap;
  }

  .footer__wrapper-menu_service {
    margin-left: unset;
    width: 75%;
  }

  .footer__wrapper-menu_list {
    width: fit-content;
  }

  .footer-bot {
    flex-direction: column;
    height: auto;
    padding-top: 10px;
    gap: 10px;
  }
}

@media (max-width: 620px) {
  .footer {
/*     padding-bottom: 80px; */
  }

  .footer__wrapper {
/*     padding-bottom: 0px; */
  }

  .footer__wrapper-right .menu_list-nav ul {
    align-items: center;
  }
}

@media (max-width: 550px) {
  .bottom_menu {
    display: none;
  }

  .footer__contacts {
    grid-template-columns: repeat(1, 1fr);
  }
  .footer__wrapper-right .menu_list-nav ul{
    flex-direction: row;
    max-height: unset;
  }
  .footer__wrapper-right .menu_list ul{
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
  }
  .footer__wrapper {
    flex-direction: column;
    align-items: center;
  }

  .footer__wrapper .logo-holder {
    width: 100%;
    text-align: center;
  }

  .footer__wrapper .logo-holder img {
    max-width: 300px;
    margin: 0px auto;
  }

  .footer__wrapper-right .menu_list {
    width: 100%;
    justify-content: center;
    align-items: center;
    text-align: center;
  }

  .footer__wrapper-right .menu_list-nav {
    width: 100%;
    align-items: center;
  }
  .footer__wrapper-right .menu_list-nav ul{
    align-items: center;
    align-content: center;
    justify-content: center;
  }

  .footer__wrapper-right .contacts {
    max-width: unset;
    align-items: center;
    width: 100%;
  }

  .footer__wrapper-right .contacts * {
    text-align: center;
  }

  .footer__wrapper-menu_service {
    width: 100%;
  }

  .footer__wrapper-menu_list {
    flex-direction: row;
    width: 100%;
    max-width: unset;
    flex-wrap: wrap;
  }
}

#modal-callback,
#modal-callback-v2,
#modal-review {
  position: relative;
  border-radius: 30px;
  background-color: var(--bg-primary-main);
  display: none;
}

#modal-callback .close-modal,
#modal-callback-v2 .close-modal,
#modal-review .close-modal {
  position: absolute;
  top: 20px;
  left: 20px;
  transform: rotate(45deg);
  color: var(--text-primary-head);
}

#modal-callback .form,
#modal-callback-v2 .form,
#modal-review .form {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

#modal-callback .form-callback__top,
#modal-callback-v2 .form-callback__top,
#modal-review .form-callback__top {
  text-align: left;
  justify-content: center;
  align-items: flex-start;
}

#modal-callback-v2,
#modal-review {
  background-color: var(--bg-primary-main);
}

#modal-success,
#modal-error {
  position: relative;
  background-color: var(--bg-primary-second);
  flex-direction: column;
  justify-content: center;
  text-align: center;
  gap: 15px;
}

.form__inputs {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.form-callback {
  display: flex;
  flex-direction: column;
  gap: 30px;
}

.form-callback__top {
  display: flex;
  flex-direction: column;
  gap: 15px;
  text-align: center;
  justify-content: center;
}

.form-callback .form {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.form-callback .btn {
  width: 100%;
  border: 1px solid var(--colors-main);
  margin-top: clamp(0rem, -0.216rem + 0.96vw, 0.938rem);
}

.form-callback .btn:hover {
  border-color: var(--text-primary-head);
}

.form__inputs .your_name,
.form__inputs .your_tel,
.form__inputs .your_date {
  position: relative;
}

.form__inputs input {
  position: relative;
  color: var(--text-primary-head) !important;
  background: var(--bg-primary-main);
  padding: 22px 0px 16px 30px;
  border-radius: 10px;
  font-size: 16px;
  width: 100%;
  border: 1px solid var(--bg-primary-stroke);
  transition: outline 0.3s ease-in-out, background 0.3s ease-in-out;
  outline: 1px solid var(--bg-primary-second);
}

.form__inputs input:hover {
  color: var(--text-primary-head) !important;
  background: var(--bg-primary-second);
  outline: 1px solid var(--bg-primary-second);
}

.form__inputs label {
  position: absolute;
  color: var(--text-primary-second) !important;
  top: 50%;
  left: 30px;
  transition: all 0.2s ease;
  pointer-events: none;
  transform: translateY(-50%);
}

.form__inputs div:hover label:not(.not) {
  position: absolute !important;
  top: 10px !important;
  font-size: 14px !important;
  /* left: 21px !important; */
}

.form__inputs input:focus,
.form__inputs input:not(:placeholder-shown) {
  background: var(--bg-primary-second);
  outline: 1px solid var(--bg-primary-second);
  color: var(--text-primary-head) !important;
}

.form__inputs input:-webkit-autofill,
.form__inputs input:-webkit-autofill:hover,
.form__inputs input:-webkit-autofill:focus,
.form__inputs input:-webkit-autofill:active {
  -webkit-text-fill-color: var(--text-primary-head) !important;
  -webkit-box-shadow: 0 0 0 1000px var(--bg-primary-second) inset !important;
  transition: background-color 5000s ease-in-out 0s;
  color: var(--text-primary-head) !important;
}

.form__inputs input:-moz-autofill,
.form__inputs input:-moz-autofill:hover,
.form__inputs input:-moz-autofill:focus {
  -webkit-text-fill-color: var(--text-primary-head) !important;
  box-shadow: 0 0 0 1000px var(--bg-primary-second) inset !important;
  color: var(--text-primary-head) !important;
}

.form__inputs input:focus+label,
.form__inputs input:not(:placeholder-shown)+label {
  top: 15px;
  font-size: 14px;
}

#modal-success {
  position: relative;
  border-radius: 30px;
  background-color: var(--bg-primary-second);
}

#modal-success .theme-modal-content {
  display: flex;
  flex-direction: column;
  gap: 15px;
  text-align: left;
  align-items: flex-start;
}

.agreement {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 10px;
}

.agreement .policy {
  color: var(--colors-main);
  text-decoration: underline;
}

.agreement .input_agreement {
  -webkit-appearance: none;
  appearance: none;
  box-sizing: border-box;
  width: 24px;
  height: 24px;
  border-radius: 5px;
  background-color: var(--bg-primary-main);
  border: 1px solid var(--text-primary-head);
  cursor: pointer;
  transition: all 0.3s ease-in-out, outline 0.3s ease-in-out;
  border: 1px solid var(--text-primary-main);
  flex-shrink: 0;
}

.agreement .input_agreement.error {
  outline: 1px solid red;
  border-color: red;
}

.agreement .input_agreement:checked {
  box-sizing: border-box;
  background-color: var(--colors-main);
  border: 1px solid var(--colors-main);
  background-image: url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M33.3337 10L15.0003 28.3333L6.66699 20' stroke='%23ffffff' stroke-width='3.33' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 18px;
}

.is-close-btn {
  width: 60px !important;
  height: 60px !important;
  border-radius: 50% !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: center !important;
  border: 1px solid var(--bg-primary-stroke) !important;
  transition: all 0.3s ease-in-out;
}

.is-close-btn svg {
  max-width: 12px;
  max-height: 12px;
}

.is-close-btn svg path {
  fill: var(--text-primary-head) !important;
  stroke: var(--text-primary-head) !important;
}

.is-close-btn:hover {
  background-color: var(--hover-second) !important;
  border: 1px solid var(--hover-second) !important;
}

.is-close-btn:hover svg path {
  fill: var(--hover-main) !important;
  stroke: var(--hover-main) !important;
}

.form .error {
  border: 1px solid red !important;
}

/* Modal-review */
#modal-review .form .textarea_review,
#modal-review .top_form>div {
  position: relative;
  border-radius: 10px;
  height: 107px;
  /* margin-top: 20px; */
}

#modal-review .form .top_form label {
  position: absolute;
  color: var(--stroke);
  top: 50%;
  left: 30px;
  transition: all 0.2s ease;
  pointer-events: none;
  transform: translateY(-50%);
  /* padding: 0 5px; */
}

#modal-review .form .top_form div:hover label {
  position: absolute !important;
  top: 15px !important;
  font-size: 14px !important;
  /* left: 21px !important; */
}

#modal-review .form .top_form input:focus+label,
#modal-review .form .top_form input:not(:placeholder-shown)+label {
  top: 15px;
  font-size: 14px;
  /* left: 21px; */
}

#modal-review .form .comment_review {
  width: 100%;
  font-size: 20px;
  color: var(--background);
  padding: 35px 20px 20px 30px;
  border: 1px solid #ccc;
  border-radius: 10px;
  resize: vertical;
  min-height: 100px;
}

#modal-review .form .comment_review::placeholder {
  color: var(--background) !important;
}

#modal-review .form .textarea_review label {
  position: absolute;
  color: var(--stroke);
  top: 23px;
  left: 30px;
  transition: all 0.2s ease;
  pointer-events: none;
  padding: 0 5px;
}

#modal-review .form .form__file {
  display: flex;
  flex-direction: column;
  align-items: center;
  height: 100%;
  border: 1px solid var(--bg-primary-second);
  background: var(--bg-primary-second);
  height: 60px;
  justify-content: center;
  border-radius: 10px;
  transition: all 0.3s ease-in-out;
}

#modal-review .form .form__file * {
  transition: all 0.3s ease-in-out;
}

#modal-review .form .form__file label {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  white-space: nowrap;
  gap: 10px;
}

#modal-review .form .form__file label .file__title {
  text-transform: uppercase;
  color: var(--colors-main);
  font-size: 18px;
  font-weight: 500;
  font-family: "InterTight";
}

#modal-review .form .form__file label::after {
  content: "";
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 11px;
  height: 20px;
  background: url("../images/file_add.svg");
  background-position: center;
  background-repeat: no-repeat;
}

#modal-review .form .form__file input {
  display: none;
}

#modal-review .form .form__file:hover {
  background: var(--hover-main);
}

#modal-review .form .form__file:hover .file__title {
  color: var(--bg-primary-main);
}

#modal-review .form .form__file:hover label::after {
  filter: brightness(0) invert(1);
}

/* Состояние когда textarea в фокусе ИЛИ содержит текст */
#modal-review .form .comment_review:focus+label,
#modal-review .form .comment_review:not(:placeholder-shown)+label {
  top: 10px;
  left: 21px;
}

#modal-review .button__holder {
  margin-top: 15px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 15px;
}

#modal-review .button__holder .btn {
  margin-top: 0px;
}

/* Опционально: стиль для фокуса */
#modal-review .form .comment_review:focus {
  outline: none;
}

.fancybox__content>.f-button.is-close-btn {
  border: none !important;
  outline: none !important;
  background: var(--bg-alt-second);
  border-radius: 15px !important;
  transition: all 0.3s ease-in-out;
}

.fancybox__content>.f-button.is-close-btn svg path {
  stroke: var(--colors-main);
}

.fancybox__content>.f-button.is-close-btn:hover {
  background: var(--hover-main) !important;
}

.fancybox__content>.f-button.is-close-btn:hover svg path {
  stroke: var(--text-alt-head) !important;
}

#overflow-content {
  padding: clamp(1.25rem, 1.106rem + 0.64vw, 1.875rem);
  padding-top: 30px;
}

#overflow-content .is-close-btn {
  box-shadow: none;
  background: none;
  width: 20px !important;
  height: 20px !important;
}

#overflow-content .content__text {
  max-height: clamp(25rem, 19.231rem + 25.64vw, 50rem);
}

.simple_card {
  position: relative;
  height: 300px;
  border-radius: 30px;
  overflow: hidden;
}

@media (max-width: 520px) {
  .simple_card {
    height: 200px;
  }
}

.simple_card .link-cat {
  position: absolute;
  bottom: 0px;
  left: 0px;
  width: 100%;
  content: "";
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  margin-top: auto;
  gap: 10px;
  padding: 30px;
  z-index: 3;
}

.simple_card .link-cat .link_button {
  position: relative;
  top: unset;
  bottom: unset;
  left: unset;
  right: unset;
  flex-shrink: 0;
}

.simple_card .link-cat .title {
  position: relative;
  top: unset;
  bottom: unset;
  left: unset;
  right: unset;
}

.simple_card .link-cat .link-text {
  color: var(--text-alt-head);
  font-weight: 800;
}

.simple_card::after {
  position: absolute;
  content: "";
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: linear-gradient(to bottom, rgba(26, 106, 66, 0.5), rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.5) 100%);
  transition: opacity 0.3s ease-in-out;
  z-index: 2;
  opacity: 0;
}

.simple_card::before {
  position: absolute;
  content: "";
  bottom: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  transition: opacity 0.3s ease-in-out;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.5) 100%);
  z-index: 2;
}

.simple_card:has(.link-cat) .gradient-block {
  position: absolute;
  content: "";
  width: 1530px;
  height: 956.25px;
  left: 0px;
  top: -28.12px;
  background: var(--colors-main);
}

.simple_card:has(.link-cat) .gradient-block-contain {
  position: relative;
  width: 100%;
  background: var(--colors-main);
}

.simple_card:has(.link-cat) .gradient-block-contain::after {
  position: absolute;
  content: "";
  width: 2008px;
  height: 1058px;
  left: -226px;
  top: -283.88px;
  background: radial-gradient(56.61% 56.61% at 57.28% 22.1%, #5CAC6D 11.43%, #388860 33.77%, #A0DE80 87.81%);
  filter: blur(265.625px);
  opacity: 1;
  z-index: 1;
}

.simple_card:has(.link-cat) .gradient-block-contain::before {
  position: absolute;
  content: "";
  width: 661.28px;
  height: 194.41px;
  left: 55.25px;
  top: 371.88px;
  background: #8CF555;
  filter: blur(159.375px);
  transform: rotate(-7.11deg);
}

.simple_card:has(.link-cat)::after {
  position: absolute;
  content: "";
  width: 2610.52px;
  height: 1375.68px;
  left: -828.12px;
  top: -442.81px;
  filter: blur(265.625px);
  background: radial-gradient(56.61% 56.61% at 57.28% 22.1%, #5CAC6D 11.43%, #388860 33.77%, #A0DE80 87.81%);
  opacity: 1;
  z-index: 1;
  display: none;
}

.simple_card:has(.link-cat)::before {
  position: absolute;
  content: "";
  width: 661.28px;
  height: 194.41px;
  left: 55.25px;
  top: 371.88px;
  background: #8CF555;
  filter: blur(159.375px);
  transform: rotate(-7.11deg);
  display: none;
}

.simple_card:has(.link-cat):hover::after {
  background: radial-gradient(56.61% 56.61% at 57.28% 22.1%, #5CAC6D 11.43%, #388860 33.77%, #A0DE80 87.81%);
}

.simple_card .title {
  position: absolute;
  padding: 30px;
  z-index: 3;
  font-weight: 800;
  color: var(--text-alt-head);
}

.simple_card .link_button {
  position: absolute;
  z-index: 3;
  width: 60px;
  height: 60px;
  bottom: 30px;
  left: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--bg-alt-second);
  border-radius: 15px;
  transition: all 0.3s ease-in-out;
}

.simple_card .link_button svg path {
  stroke: var(--bg-alt-third);
  transition: all 0.3s ease-in-out;
}

.simple_card .background {
  width: 100%;
  height: 100%;
  position: relative;
}

.simple_card .background img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: all 0.3s ease-in-out;
}

.simple_card:hover::after {
  opacity: 1;
}

.simple_card:hover::before {
  opacity: 0;
}

.simple_card:hover .link_button {
  background: var(--hover-main);
}

.simple_card:hover .link_button svg path {
  stroke: var(--text-alt-head);
}

.simple_card:hover .background img {
  transform: scale(1.2);
}

@media (max-width: 900px) {
  .simple_card .link-cat {
    height: 100%;
    align-items: flex-start;
    flex-direction: column;
  }
}

/* =========== Services Start ============*/
.services-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(1.25rem, 1.106rem + 0.64vw, 1.875rem);
}

.services-cards .service-card {
  display: flex;
  flex-direction: column;
  gap: 0px;
  background: var(--bg-primary-second);
  border-radius: 20px;
  padding: clamp(0.625rem, 0.337rem + 1.28vw, 1.875rem);
  position: relative;
  cursor: pointer;
  transition: all 0.3s ease-in-out;
  border-bottom: 2px solid var(--colors-main);
}

.services-cards .service-card .number_post {
  position: absolute;
  top: 20px;
  right: 20px;
}

.services-cards .service-card:hover {
  border-color: var(--hover-main);
  box-shadow: inset 0px -5px 0px 0px var(--hover-main);
}

.services-cards .service-card:hover a .icon {
  background: var(--hover-main);
}

.services-cards .service-card-title {
  margin-top: 20px;
}

.services-cards .service-card-desc {
  margin-top: 8px;
  color: var(--text-primary-second) !important;
}

.services-cards .service-card-links {
  margin-top: clamp(1.25rem, 1.106rem + 0.64vw, 1.875rem);
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.services-cards .service-card-links a {
  display: flex;
  flex-direction: row;
  gap: 10px;
  align-items: center;
  justify-content: space-between;
  padding: 0px 5px 0px 20px;
  height: 60px;
  border-radius: 15px;
  background: var(--bg-primary-main);
}

.services-cards .service-card-links a .icon {
  width: 50px;
  height: 50px;
  background: var(--colors-main);
  border-radius: 10px;
  transition: all 0.3s ease-in-out;
  flex-shrink: 0;
  display: flex;
  justify-content: center;
  align-items: center;
}

.services-cards .service-card-links a .icon svg {
  max-width: 16px;
  max-height: 16px;
}

.services-cards .service-card-img {
  width: 200px;
  height: 120px;
  overflow: hidden;
  border-radius: 15px;
}

.services-cards .service-card-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media (max-width: 1200px) {
  .services-cards {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 800px) {
  .services-cards {
    grid-template-columns: repeat(1, 1fr);
  }

  .services-cards .service-card {
    align-items: center;
  }

  .services-cards .service-card-img {
    max-width: 360px;
    width: 100%;
    height: auto;
  }

  .services-cards .service-card-links {
    width: 100%;
  }
}

@media (max-width: 500px) {
  .services-cards .service-card .number_post {
    padding: 5px;
    border-radius: 5px;
    background: var(--bg-primary-main);
  }

  .services-cards .service-card-img {
    max-width: unset;
    width: 100%;
  }
}

/* =========== Services end ============*/
.category-page .catalog-banner {
  margin-bottom: clamp(1.25rem, 0.817rem + 1.92vw, 3.125rem);
}

.catalog-banner {
  padding: clamp(1.25rem, 0.817rem + 1.92vw, 3.125rem);
  border-radius: 30px;
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  gap: 30px;
  background: var(--colors-main);
}

.catalog-banner-content {
  position: relative;
  z-index: 4;
  max-width: 780px;
  color: var(--text-alt-head);
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.catalog-banner .min_cost {
  color: var(--text-alt-head);
  z-index: 4;
}

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

.catalog-banner .advantages .advantage {
  display: flex;
  gap: 5px;
  align-items: center;
}

.catalog-banner .advantages .advantage .img {
  width: clamp(4.375rem, 3.798rem + 2.56vw, 6.875rem);
  height: clamp(4.375rem, 3.798rem + 2.56vw, 6.875rem);
  flex-shrink: 0;
}

.catalog-banner .advantages .advantage .img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.catalog-banner .advantages .advantage .content {
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.catalog-banner .advantages .advantage .content .title {
  color: var(--text-alt-head);
}

.catalog-banner .advantages .advantage .content .desc {
  color: var(--text-alt-second);
}

.catalog-banner .page-title,
.catalog-banner .page-title * {
  color: var(--text-alt-head);
/*   font-size: clamp(2.375rem, 2.101rem + 1.22vw, 3.563rem); */
	font-size: clamp(1.75rem, 1.333rem + 0.87vw, 2.375rem);
}

.catalog-banner::after {
  content: "";
  position: absolute;
  width: 2611px;
  height: 1376px;
  left: -843px;
  top: -503px;
  background: radial-gradient(56.61% 56.61% at 57.28% 22.1%, #5CAC6D 11.43%, #388860 33.77%, #A0DE80 87.81%);
  filter: blur(265.625px);
  z-index: 1;
}

.catalog-banner::before {
  content: "";
  position: absolute;
  width: 661px;
  height: 194px;
  left: 40px;
  top: 312.15px;
  background: #8CF555;
  filter: blur(159.375px);
  transform: rotate(-7.11deg);
  z-index: 2;
}

/* 
.catalog-banner .underline {
  white-space: nowrap;
  position: relative;
}

.catalog-banner .underline::after {
  content: "";
  display: block;
  position: absolute;
  width: clamp(10rem, 8.111rem + 8.4vw, 18.188rem);
  height: clamp(1.438rem, 1.207rem + 1.03vw, 2.438rem);
  background-image: url("../images/underline.png");
  background-repeat: no-repeat;
  background-size: contain;
  bottom: 0px;
  left: -13%;
  transform: translateY(10px);
} 
*/

.catalog-banner .colors {
  color: var(--colors-main);
}

.catalog-banner .image {
  position: absolute;
  right: 0px;
  bottom: 0px;
  width: auto;
  max-width: 100%;
  z-index: 3;
  height: 100%;
  object-fit: contain;
  object-position: bottom;
}

/* =========== reviews-v1 Start ============*/
/* =========== reviews-v1 end ============*/
/* =========== reviews-v2 Start ============*/
/* =========== reviews-v2 end ============*/
.archive__holder,
.category__holder {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: clamp(1.25rem, 0.962rem + 1.28vw, 2.5rem);
}

.archive__holder-container,
.category__holder-container {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
}

.portfolio-filter {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
}

.portfolio-filter .filter-tags {
  display: flex;
  flex-direction: row;
  gap: 10px;
  flex-wrap: wrap;
  list-style: none;
}

.portfolio-filter .filter-tags li .filter-tag {
  font-size: 16px;
  font-weight: 500;
  padding: 15px 17px;
  border-radius: 10px;
  color: var(--text-primary-head);
  background: var(--bg-primary-main);
  border: 1px solid var(--bg-primary-stroke);
  cursor: pointer;
}

.portfolio-filter .filter-tags li .filter-tag:hover {
  background: var(--hover-main);
  color: var(--text-alt-head);
}

.portfolio-filter .filter-tags li .filter-tag.active {
  background: var(--hover-main);
  color: var(--text-alt-head);
  pointer-events: none;
}

.portfolio-cards {
  display: flex;
  flex-direction: column;
  gap: clamp(1.25rem, 1.106rem + 0.64vw, 1.875rem);
}

.portfolio-cards .portfolio-block {
  display: flex;
  flex-direction: row;
  gap: clamp(1.25rem, 1.106rem + 0.64vw, 1.875rem);
  height: 330px;
  overflow: hidden;
}

.portfolio-cards .portfolio-block .swiper-pagination-bullet {
  background: var(--bg-primary-main);
  opacity: 1;
}

.portfolio-cards .portfolio-block .swiper-pagination-bullet-active {
  background: var(--colors-main);
}

.portfolio-cards .portfolio-block-date {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  width: clamp(6.25rem, -7.292rem + 18.06vw, 14.375rem);
  padding: 10px;
  border-radius: 10px;
  background: var(--bg-primary-second);
  height: fit-content;
  flex-shrink: 0;
}

.portfolio-cards .portfolio-block-gallery {
  max-width: clamp(27.5rem, 23.333rem + 5.56vw, 30rem);
  width: 100%;
  height: 100%;
  border-radius: 20px;
  overflow: hidden;
  flex-shrink: 0;
}

.portfolio-cards .portfolio-block-gallery .swiper {
  height: 100%;
}

.portfolio-cards .portfolio-block-gallery .swiper .swiper-navigation-btn {
  position: absolute;
  top: 50%;
  left: 0px;
  transform: translateY(-50%);
  height: 60px;
  width: 100%;
  z-index: 2;
}

.portfolio-cards .portfolio-block__info {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: clamp(1.25rem, 1.106rem + 0.64vw, 1.875rem);
  padding: clamp(1.25rem, 1.106rem + 0.64vw, 1.875rem);
  background: var(--bg-primary-second);
  border-radius: 20px;
}

.portfolio-cards .portfolio-block__info-left,
.portfolio-cards .portfolio-block__info-right {
  display: flex;
  flex-direction: column;
  gap: 20px;
  justify-content: space-between;
}

.portfolio-cards .portfolio-block__info-left .btn,
.portfolio-cards .portfolio-block__info-right .btn {
  width: fit-content;
}

.portfolio-cards .portfolio-block__info-right .subtitle {
  color: var(--text-primary-main);
}

.portfolio-cards img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media (max-width: 1200px) {
  .portfolio-cards .portfolio-block__info {
    display: flex;
    flex-direction: column;
    gap: 10px;
    justify-content: space-between;
  }

  .portfolio-cards .portfolio-block__info-left,
  .portfolio-cards .portfolio-block__info-right {
    gap: 10px;
  }
}

@media (max-width: 1000px) {
  .portfolio-cards .portfolio-block {
    flex-wrap: wrap;
    height: 100%;
  }

  .portfolio-cards .portfolio-block .swiper {
    height: 330px;
  }

  .portfolio-cards .portfolio-block-date {
    width: clamp(8.125rem, -6.458rem + 33.33vw, 14.375rem);
  }

  .portfolio-cards .portfolio-block__info {
    display: grid;
  }
}

@media (max-width: 650px) {
  .portfolio-cards {
    width: 100%;
  }

  .portfolio-cards .portfolio-block {
    width: 100%;
    flex-direction: column;
  }

  .portfolio-cards .portfolio-block-gallery {
    max-width: unset;
  }

  .portfolio-cards .portfolio-block-gallery .swiper {
    height: clamp(15.625rem, 9.418rem + 27.59vw, 20.625rem);
  }

  .portfolio-cards .portfolio-block-date {
    width: 100%;
  }

  .portfolio-cards .portfolio-block__info {
    display: grid;
  }
}

@media (max-width: 550px) {
  .portfolio-filter .filter-tags li {
    width: 100%;
  }

  .portfolio-filter .filter-tags li .filter-tag {
    width: 100%;
  }

  .portfolio-cards .portfolio-block__info {
    display: flex;
  }

  .portfolio-cards .portfolio-block__info-left,
  .portfolio-cards .portfolio-block__info-right {
    gap: 20px;
  }

  .portfolio-cards .portfolio-block .btn {
    width: 100%;
  }
}

.archive-news h1.page-title {
  text-transform: lowercase;
}

.archive-news h1.page-title::first-letter {
  text-transform: uppercase;
}

.archive-news__tag-list {
  display: flex;
  flex-direction: row;
  gap: clamp(0.938rem, 0.721rem + 0.96vw, 1.875rem);
  flex-wrap: wrap;
  list-style: none;
}

.archive-news__tag-list li {
  margin-bottom: 0px;
}

.archive-news__holder {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
}

.archive-news__holder .news-item {
  display: flex;
  flex-direction: column;
  gap: clamp(1.25rem, 0.817rem + 1.923vw, 3.125rem);
  background: var(--bg-primary-second);
  padding: 20px;
  border-radius: 20px;
}

.archive-news__holder .news-item p {
  margin-bottom: 0px;
}

.archive-news__holder .news-item__bottom {
  position: relative;
  height: 300px;
  z-index: 1;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.archive-news__holder .news-item__bottom-info {
  display: flex;
  flex-direction: row;
  gap: 10px;
  flex-shrink: 0;
  margin-top: auto;
}

.archive-news__holder .news-item__bottom-info .time_to_read,
.archive-news__holder .news-item__bottom-info .date {
  display: flex;
  flex-direction: row;
  gap: 10px;
  padding: 5px 10px;
  border-radius: 15px;
  background: var(--bg-primary-main);
}

.archive-news__holder .news-item__bottom-info .time_to_read span,
.archive-news__holder .news-item__bottom-info .date span {
  color: var(--text-primary-second);
}

.archive-news__holder .news-item__bottom-image {
  position: relative;
  z-index: -1;
  height: 100%;
  transition: all 0.3s ease-in-out;
  overflow: hidden;
  border-radius: 15px;
}

.archive-news__holder .news-item__bottom-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: all 0.3s ease-in-out;
  border-radius: 15px;
}

.archive-news__holder .news-item__top {
  display: flex;
  flex-direction: column;
  gap: 20px;
  padding: 10px;
  height: 100%;
}

.archive-news__holder .news-item__top-text {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.archive-news__holder .news-item__top-text .short_desc {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.archive-news__holder .news-item__top-text .news-link {
  position: relative;
  color: var(--colors-main);
  width: fit-content;
  padding-right: 20px;
}

.archive-news__holder .news-item__top-text .news-link::after {
  content: "";
  position: absolute;
  background-image: url("data:image/svg+xml,%3Csvg width='11' height='11' viewBox='0 0 11 11' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.5 5.16662H9.83334M9.83334 5.16662L5.16667 0.5M9.83334 5.16662L5.16667 9.83333' stroke='%232FF18B' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  width: 11px;
  height: 11px;
  top: 50%;
  right: 0px;
  transform: translateY(-50%);
}

.archive-news__holder .news-item :hover .news-item__top-image img {
  transform: scale(1.2);
}

/* ============= MEDIA QUERIES =========== */
@media (max-width: 1000px) {

  .archive__holder-container,
  .category__holder-container {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 900px) {
  .archive-news__holder {
    grid-template-columns: repeat(2, 1fr);
  }

  .archive-news__tag-list {
    width: 100%;
  }

  .archive-news__tag-list li {
    width: 100%;
  }

  .archive-news__tag-list li .btn {
    width: 100%;
  }
}

@media (max-width: 700px) {

  .archive__holder-container,
  .category__holder-container {
    grid-template-columns: repeat(1, 1fr);
  }
}

@media (max-width: 600px) {
  .archive-news__holder {
    grid-template-columns: repeat(1, 1fr);
  }
}

.archive-faq__items {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: clamp(1.25rem, 1.106rem + 0.64vw, 1.875rem);
}

.archive-faq__items .item {
  border: 1px solid var(--bg-primary-stroke);
  border-radius: 20px;
  margin-bottom: 20px;
  background: transparent;
  transition: background 0.3s ease-in-out;
  height: fit-content;
}

.archive-faq__items .item__title {
  font-weight: 800;
  font-size: 16px;
  line-height: 120%;
  color: var(--head-primary);
  padding-right: 15px;
  transition: color 0.3s ease;
}

.archive-faq__items .item__status {
  margin-left: auto;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 60px;
  height: 60px;
  background-color: var(--colors-main);
  border-radius: 15px;
  transition: all 0.3s ease-in-out;
  flex-shrink: 0;
}

.archive-faq__items .item__status svg {
  transition: all 0.3s ease-in-out;
}

.archive-faq__items .item__header {
  padding: 8px;
  padding-left: clamp(1.25rem, 1.106rem + 0.64vw, 1.875rem);
  display: flex;
  align-items: center;
  position: relative;
  cursor: pointer;
}

.archive-faq__items .item__header::before {
  content: "";
  position: absolute;
  left: 30px;
  bottom: 0px;
  width: calc(100% - 60px);
  height: 1px;
  background: var(--second);
  opacity: 0;
}

.archive-faq__items .item__content {
  padding: 20px 30px 30px 30px;
  font-weight: 400;
  font-size: 16px;
  line-height: 150%;
  color: var(--main-text-primary);
  display: none;
  border-top: 1px solid var(--bg-primary-stroke);
}

.archive-faq__items .item.active .item__status svg {
  transform: rotate(180deg);
}

@media (max-width: 900px) {
  .archive-faq__items {
    grid-template-columns: repeat(1, 1fr);
  }
}

.archive-portfolio__tags {
  padding: 30px 0px;
  display: flex;
  flex-direction: "row";
  gap: 15px;
  flex-wrap: wrap;
}

.archive-portfolio__tags .tag {
  padding: 17px 30px;
  color: var(--colors-main);
  background: var(--bg-alt-second);
  border-color: var(--bg-alt-second);
  transition: all 0.3s ease-in-out;
  border-radius: 15px;
}

.archive-portfolio__tags .tag:hover {
  background: var(--hover-main);
  color: var(--text-alt-head);
  border-color: var(--hover-main);
}

.archive-portfolio__tags .tag.active {
  background: var(--hover-main);
  color: var(--text-alt-head);
  border-color: var(--hover-main);
  pointer-events: none;
}

.archive-portfolio .portfolio__holder {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 30px;
}

.archive-portfolio .portfolio__item {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  border-radius: 20px;
  background-color: var(--bg-primary-second);
}

.archive-portfolio .portfolio__item-image {
  width: 100%;
  position: relative;
  overflow: hidden;
  display: flex;
  height: 320px;
  border-radius: 30px;
  overflow: hidden;
  flex-shrink: 0;
}

.archive-portfolio .portfolio__item-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.archive-portfolio .portfolio__item-title {
  font-weight: 800;
}

.archive-portfolio .portfolio__item-attributes {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
  grid-gap: 20px;
}

.archive-portfolio .portfolio__item-attribute {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 5px;
}

.archive-portfolio .portfolio__item-attribute-value {
  font-weight: 800;
}

.archive-portfolio .portfolio__item-info {
  padding: 30px 20px;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  gap: clamp(1.25rem, 0.889rem + 1.6vw, 2.813rem);
  justify-content: space-between;
}

@media (max-width: 1000px) {
  .archive-portfolio .portfolio__holder {
    grid-template-columns: repeat(1, 1fr);
    grid-gap: 20px;
  }

  .archive-portfolio .portfolio__item-image {
    height: clamp(13.75rem, 10.234rem + 15.63vw, 20rem);
  }

  .archive-portfolio .portfolio__item-title {
    font-size: clamp(1.125rem, 0.914rem + 0.94vw, 1.5rem);
  }
}

@media (max-width: 769px) {
  .archive-portfolio .portfolio__holder {
    grid-gap: 20px;
  }

  .archive-catalog_product .page-title *,
  .archive-catalog_product .page-title {
    font-size: 32px;
  }
}

@media (max-width: 550px) {
  .archive-portfolio__tags .tag {
    width: 100%;
  }

  .catalog-banner .advantages .advantage .img {
    display: none;
  }
}

@media (max-width: 498px) {
  .archive-portfolio .portfolio__holder {
    grid-template-columns: 1fr;
  }

  .archive-portfolio__item-info {
    padding: 20px;
  }
}

.archive-catalog_product .page-title:not(+ :has(.advantages)) {
  padding-bottom: clamp(1.25rem, 1.106rem + 0.64vw, 1.875rem);
}

.archive-catalog_product .category__holder {
  align-items: flex-start;
}

.archive-catalog_product .catalog_products {
  /* padding: clamp(2.5rem, 2.212rem + 1.28vw, 3.75rem) 0px; */
  padding-bottom: clamp(2.5rem, 2.212rem + 1.28vw, 3.75rem);
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(1.25rem, 1.106rem + 0.64vw, 1.875rem);
  width: 100%;
  margin-top: 20px;
}

@media (max-width: 1000px) {
  .archive-catalog_product .catalog_products {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 768px) {
  .archive-catalog_product .catalog_products {
    grid-template-columns: repeat(1, 1fr);
  }
}

@media (max-width: 520px) {
  .archive-catalog_product .catalog_products .simple_card .link_button {
    display: none;
  }

  .archive-catalog_product .catalog_products .simple_card .title {
    padding: 30px 10px;
    font-size: 18px;
    hyphens: auto;
  }
}

.archive-reviews__holder-wrapper {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: clamp(1.25rem, 1.106rem + 0.64vw, 1.875rem);
}

.archive-reviews .systemReviews {
  display: flex;
  flex-direction: column;
  gap: 20px;
  background-color: var(--bg-primary-second);
  padding: 20px;
  border-radius: 30px;
  height: 100%;
}

.archive-reviews .systemReviews .item-stat {
  border-radius: 30px;
  padding: 30px;
  background-color: var(--bg-primary-main);
  border: 1px solid var(--bg-primary-main);
  transition: border 0.3s ease-in-out;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.archive-reviews .systemReviews .item-stat__arrow {
  width: 20px;
  height: 20px;
  margin-left: auto;
  transform: rotate(-45deg);
  transition: transform 0.3s ease;
}

.archive-reviews .systemReviews .item-stat__arrow svg {
  width: 100%;
  height: 100%;
}

.archive-reviews .systemReviews .item-stat__stars {
  width: 120px;
}

.archive-reviews .systemReviews .item-stat__stars .rating {
  position: relative;
  display: inline-block;
  width: 120px;
  height: 24px;
  background: urlurl("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='40' height='40'%3E%3Cpath d='M12 2 L15 9 H22 L17 14 L19 21 L12 17 L5 21 L7 14 L2 9 H9 Z' fill='none' stroke='gold' stroke-width='2' stroke-linejoin='round'/%3E%3C/svg%3E%0A") repeat-x;
  background-size: 24px 24px;
}

.archive-reviews .systemReviews .item-stat__stars .rating-filled {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='40' height='40'%3E%3Cpath d='M12 2 L15 9 H22 L17 14 L19 21 L12 17 L5 21 L7 14 L2 9 H9 Z' fill='gold' stroke='gold' stroke-width='2' stroke-linejoin='round'/%3E%3C/svg%3E%0A") repeat-x;
  background-size: 24px 24px;
}

.archive-reviews .systemReviews .item-stat__top {
  display: flex;
  align-items: center;
  margin-bottom: 35px;
  width: 100%;
}

.archive-reviews .systemReviews .item-stat__image {
  margin-bottom: 10px;
  max-width: 100%;
  height: 24px;
}

.archive-reviews .systemReviews .item-stat__image img {
  max-width: 100%;
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.archive-reviews .systemReviews .item-stat:hover {
  border: 1px solid var(--colors-main);
}

.archive-reviews .systemReviews .item-stat:hover .item-stat__arrow {
  transform: rotate(0deg);
}

.archive-reviews .review-card__image {
  position: relative;
  border: 1px solid var(--bg-primary-stroke);
  border-radius: 30px;
  overflow: hidden;
  cursor: zoom-in;
  min-height: 400px;
  height: auto;
}

.archive-reviews .review-card__image img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.archive-reviews .review-card__image-hover-btn {
  width: 60px;
  height: 60px;
  border-radius: 15px;
  background-color: var(--hover-main);
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
  opacity: 0;
  transition: all 0.3s ease-in;
}

.archive-reviews .review-card__image-hover-btn svg {
  width: 16px;
  height: 16px;
}

.archive-reviews .review-card__image-hover-btn svg path {
  stroke: var(--text-alt-head);
}

.archive-reviews .review-card__image:after {
  content: "";
  display: block;
  position: absolute;
  background: var(--text-primary-head);
  border-radius: 30px;
  opacity: 0;
  transition: all 0.3s ease-in;
  width: 100%;
  height: 100%;
}

.archive-reviews .review-card__image:hover:after {
  opacity: 0.5;
}

.archive-reviews .review-card__image:hover .review-card__image-hover-btn {
  opacity: 1;
}

.archive-reviews .review-card__default {
  border: 1px solid var(--bg-primary-stroke);
  background-color: var(--bg-primary-second);
  border-radius: 30px;
  padding: 15px;
  min-height: 400px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: auto;
  gap: clamp(1.25rem, 0.846rem + 1.79vw, 3rem);
}

.archive-reviews .review-card__default-top {
  background-color: var(--bg-primary-main);
  display: flex;
  border-radius: 10px;
  overflow: hidden;
  padding: 10px;
  gap: 15px;
}

.archive-reviews .review-card__default-bottom {
  height: fit-content;
}

.archive-reviews .review-card__default-gallery-wrap {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

.archive-reviews .review-card__default-gallery-item {
  width: 60px;
  height: 60px;
  position: relative;
  border-radius: 10px;
  overflow: hidden;
  cursor: zoom-in;
}

.archive-reviews .review-card__default-gallery-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.archive-reviews .review-card__default-text-wrap {
  margin-top: 20px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.archive-reviews .review-card__default-text-description {
  display: -webkit-box;
  -webkit-line-clamp: 7;
  -webkit-box-orient: vertical;
  overflow: hidden;
  height: fit-content;
}

@media (max-width: 1300px) {
  .archive-reviews__holder-wrapper {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 1000px) {
  .archive-reviews__holder-wrapper {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 650px) {
  .archive-reviews__holder-wrapper {
    grid-template-columns: repeat(1, 1fr);
  }
}

.archive-stocks .container {
  padding-bottom: clamp(1.25rem, 0.817rem + 1.92vw, 3.125rem);
}

.archive-stocks .page-title {
  padding-bottom: 30px;
}

/* ======= stock-list start ========= */
.stocks-block-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: clamp(1.25rem, 1.106rem + 0.64vw, 1.875rem);
}

@media (max-width: 1000px) {
  .stocks-block-list {
    grid-template-columns: repeat(1, 1fr);
  }
}

/* ======= stock-list end ========= */
/* ======= stock-card start ========= */
.stock-card {
  padding: clamp(1.25rem, 0.208rem + 1.39vw, 1.875rem);
  border-radius: 30px;
  display: flex;
  gap: clamp(0.625rem, -0.417rem + 1.39vw, 1.25rem);
  background: var(--bg-primary-second);
  justify-content: space-between;
}

.stock-card-left {
  min-height: 200px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.stock-card-left .title {
  font-weight: 800;
  line-height: 110%;
}

.stock-card-left .info {
  display: flex;
  flex-direction: row;
  gap: clamp(0.625rem, -0.417rem + 1.39vw, 1.25rem);
  align-items: center;
  margin-top: auto;
}

.stock-card-left .info .btn {
  width: fit-content;
  border-radius: 15px;
}

.stock-card-right {
  max-width: 200px;
  width: 100%;
  flex-shrink: 0;
}

.stock-card-right .img {
  width: 100%;
  height: 100%;
  border-radius: 20px;
  overflow: hidden;
}

.stock-card-right .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media (max-width: 1300px) {
  .stock-card-left .info {
    flex-direction: column-reverse;
    gap: 5px;
    align-items: flex-start;
  }
}

@media (max-width: 1000px) {
  .stock-card-left .info {
    flex-direction: row;
    gap: 20px;
    align-items: center;
  }

  .stock-card-right {
    max-width: 40%;
  }
}

@media (max-width: 700px) {
  .stock-card-left .info {
    flex-direction: column-reverse;
    gap: 5px;
    align-items: flex-start;
  }
}

@media (max-width: 600px) {
  .stock-card {
    flex-direction: column-reverse;
  }

  .stock-card-left .info {
    flex-direction: row;
    gap: 20px;
    align-items: center;
  }

  .stock-card-right {
    max-width: unset;
    max-height: 200px;
  }
}

@media (max-width: 420px) {
  .stock-card-left .info {
    flex-direction: column-reverse;
    gap: 5px;
    align-items: flex-start;
  }

  .stock-card-left .info .btn {
    width: 100%;
  }
}

/* ======= stock-card end ========= */
.type_product__holder-container {
  width: 100%;
}

.type_product .h5,
.type_product .h5 * {
  font-weight: 800;
}

.type_product-container {
  display: flex;
  gap: 30px;
}

.type_product .filter_button {
  display: none;
  position: fixed;
  bottom: 5%;
  left: 5%;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  border-radius: 15px;
  background: var(--bg-primary-main);
  z-index: 10;
  cursor: pointer;
}

.type_product .filter_button svg {
  width: 100%;
  height: 100%;
  max-width: 30px;
  max-height: 30px;
}

.type_product .catalog-banner {
  padding: clamp(1.25rem, 0.817rem + 1.92vw, 3.125rem);
  border-radius: 30px;
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  gap: 30px;
  background: var(--colors-main);
}

.type_product .catalog-banner-content {
  position: relative;
  z-index: 4;
  max-width: 780px;
  color: var(--text-alt-head);
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.type_product .catalog-banner .min_cost {
  color: var(--text-alt-head);
  z-index: 4;
}

.type_product .catalog-banner .advantages {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}

.type_product .catalog-banner .advantages .advantage {
  display: flex;
  gap: 5px;
  align-items: center;
}

.type_product .catalog-banner .advantages .advantage .content {
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.type_product .catalog-banner .advantages .advantage .content .title {
  color: var(--text-alt-head);
}

.type_product .catalog-banner .advantages .advantage .content .desc {
  color: var(--text-alt-second);
}

.type_product .catalog-banner .page-title,
.type_product .catalog-banner .page-title * {
  color: var(--text-alt-head);
  font-size: clamp(2.375rem, 2.101rem + 1.22vw, 3.563rem);
}

.type_product .catalog-banner::after {
  content: "";
  position: absolute;
  width: 2611px;
  height: 1376px;
  left: -843px;
  top: -503px;
  background: radial-gradient(56.61% 56.61% at 57.28% 22.1%, #5CAC6D 11.43%, #388860 33.77%, #A0DE80 87.81%);
  filter: blur(265.625px);
  z-index: 1;
}

.type_product .catalog-banner::before {
  content: "";
  position: absolute;
  width: 661px;
  height: 194px;
  left: 40px;
  top: 312.15px;
  background: #8CF555;
  filter: blur(159.375px);
  transform: rotate(-7.11deg);
  z-index: 2;
}

/* .type_product .catalog-banner .underline {
  white-space: nowrap;
  position: relative;
}

.type_product .catalog-banner .underline::after {
  content: "";
  display: block;
  position: absolute;
  width: clamp(10rem, 8.111rem + 8.4vw, 18.188rem);
  height: clamp(1.438rem, 1.207rem + 1.03vw, 2.438rem);
  background-image: url("../images/underline.png");
  background-repeat: no-repeat;
  background-size: contain;
  bottom: 0px;
  left: -13%;
  transform: translateY(10px);
} */

.type_product .catalog-banner .colors {
  color: var(--colors-main);
}

.type_product .catalog-banner .image {
  position: absolute;
  right: 0px;
  bottom: 0px;
  width: auto;
  max-width: 100%;
  z-index: 3;
  height: 100%;
  object-fit: contain;
  object-position: bottom;
}

.type_product__tags {
  padding: 30px 0px;
  display: flex;
  flex-direction: "row";
  gap: 15px;
  flex-wrap: wrap;
}

.type_product__tags .tag {
  padding: 17px 30px;
  color: var(--colors-main);
  background: var(--bg-alt-second);
  border-color: var(--bg-alt-second);
  transition: all 0.3s ease-in-out;
  border-radius: 15px;
}

.type_product__tags .tag:hover {
  background: var(--hover-main);
  color: var(--text-alt-head);
  border-color: var(--hover-main);
}

.type_product__tags .tag.active {
  background: var(--hover-main);
  color: var(--text-alt-head);
  border-color: var(--hover-main);
  pointer-events: none;
}

.type_product__holder {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(1.25rem, 1.106rem + 0.64vw, 1.875rem);
}

.type_product__item {
  padding: clamp(0.625rem, -0.734rem + 2.17vw, 1.875rem);
  display: flex;
  flex-direction: column;
  gap: clamp(1.25rem, 1.106rem + 0.64vw, 1.875rem);
  background: var(--bg-primary-second);
  border-radius: 30px;
  justify-content: space-between;
}

.type_product__item-top {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.type_product__item-top .info {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.type_product__item-top .info .characteristics {
  display: flex;
  flex-direction: column;
  gap: 13px;
}

.type_product__item-top .info .characteristics .parameter {
  display: flex;
  justify-content: space-between;
  gap: 10px;
}

.type_product__item-top .image {
  border-radius: 20px;
  overflow: hidden;
  height: clamp(12.5rem, -0.605rem + 16.13vw, 18.75rem);
}

.type_product__item-top .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: all 0.3s ease-in-out;
}

.type_product__item-bottom {
  display: flex;
  flex-direction: column;
  gap: 13px;
  border-radius: 20px;
  padding: 15px;
  background: var(--bg-primary-main);
}

.type_product__item-bottom .price {
  display: flex;
  gap: 10px;
  align-items: flex-start;
}

.type_product__item-bottom .price .no_sale {
  color: var(--text-primary-second);
  text-decoration: line-through;
}

.type_product__item:hover .image img {
  transform: scale(1.2);
}

.type_product__item:hover .btn {
  background: var(--hover-main);
  color: var(--text-alt-head);
}

.catalog_sidebar {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.catalog_sidebar-container {
  width: clamp(18.75rem, 14.674rem + 6.52vw, 22.5rem);
  background: var(--bg-primary-second);
  border-radius: 30px;
  flex-shrink: 0;
  height: fit-content;
}

.catalog_sidebar-content {
  position: relative;
  padding: 30px;
}

.catalog_sidebar .close_filter {
  display: none;
  position: absolute;
  top: 20px;
  right: 15px;
  cursor: pointer;
}

.catalog_sidebar .close_filter svg {
  width: 20px;
  height: 20px;
  object-fit: contain;
}

.catalog_sidebar .cost_filter {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.catalog_sidebar .filter-inputs-container {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.catalog_sidebar .filter-inputs-container .cost_filter-inputs {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  /* Firefox */
}

.catalog_sidebar .filter-inputs-container .cost_filter-inputs input::-webkit-outer-spin-button,
.catalog_sidebar .filter-inputs-container .cost_filter-inputs input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.catalog_sidebar .filter-inputs-container .cost_filter-inputs input[type=number] {
  -moz-appearance: textfield;
}

.catalog_sidebar .filter-inputs-container .cost_filter-inputs input {
  width: 95px;
  height: 35px;
  background: var(--bg-primary-main);
  border-radius: 5px;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  outline: none;
  border: 1px solid var(--bg-primary-stroke);
}

.catalog_sidebar .filter-inputs-container .slider-container {
  position: relative;
  height: 8px;
}

.catalog_sidebar .filter-inputs-container .slider-container .slider-track {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  height: 6px;
  border-radius: 3px;
  transform: translateY(-50%);
}

.catalog_sidebar .filter-inputs-container .slider-container .range-slider {
  position: absolute;
  width: 100%;
  height: 8px;
  margin: 0;
  background: transparent;
  -webkit-appearance: none;
  appearance: none;
  pointer-events: none;
  z-index: 2;
}

.catalog_sidebar .filter-inputs-container .slider-container .range-slider::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--colors-main);
  cursor: pointer;
  pointer-events: all;
  /* box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2); */
}

.catalog_sidebar .filter-inputs-container .slider-container .range-slider::-moz-range-thumb {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--colors-main);
  cursor: pointer;
  pointer-events: all;
  border: 3px solid white;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
}

.catalog_sidebar .filter-inputs-container .slider-container .range-slider::-webkit-slider-runnable-track {
  -webkit-appearance: none;
  height: 6px;
  background: transparent;
}

.catalog_sidebar .characteristic {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.catalog_sidebar .characteristic .name {
  position: relative;
  cursor: pointer;
}

.catalog_sidebar .characteristic .name::after {
  position: absolute;
  content: "";
  background-image: url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8.66406 4.66498L4.66406 0.664978L0.664062 4.66498' stroke='%23636B63' stroke-width='1.33' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  background-size: contain;
  top: 50%;
  right: 0px;
  transform: translateY(-50%);
  transition: all 0.3s ease-in-out;
  width: 12px;
  height: 6px;
  transform: rotate(180deg);
}

.catalog_sidebar .characteristic .list {
  display: flex;
  flex-direction: column;
  gap: 13px;
  max-height: 210px;
  overflow-y: auto;
}

.catalog_sidebar .characteristic .list-container {
  display: none;
}

.catalog_sidebar .characteristic .list .option {
  display: flex;
  gap: 10px;
}

.catalog_sidebar .characteristic .list .option input {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 24px;
  height: 24px;
  border-radius: 5px;
  border: 1px solid var(--text-primary-main);
  transition: all 0.3s ease-in-out;
  cursor: pointer;
}

.catalog_sidebar .characteristic .list .option input:checked {
  background-color: var(--colors-main);
  position: relative;
}

.catalog_sidebar .characteristic .list .option input:checked::after {
  content: "";
  position: absolute;
  background-image: url("data:image/svg+xml,%3Csvg width='12' height='9' viewBox='0 0 12 9' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11.1667 0.5L3.83333 7.83333L0.5 4.5' stroke='white' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
  top: 50%;
  left: 50%;
  width: 12px;
  height: 10px;
  transform: translate(-50%, -50%);
}

.catalog_sidebar .characteristic.active .name::after {
  transform: rotate(360deg);
}

.catalog_sidebar .apply-filter {
  border-radius: 15px;
}

.catalog_sidebar .clear {
  display: flex;
  justify-content: center;
  gap: 5px;
  align-items: center;
  cursor: pointer;
}

@media (max-width: 1400px) {
  .catalog-banner .advantages .advantage .content {
    /* backdrop-filter: blur(5px); */
    border-radius: 15px;
    overflow: hidden;
    padding: 5px;
  }
}

@media (max-width: 1300px) {
  .type_product__item-top .image {
    height: clamp(12.5rem, 8.594rem + 12.5vw, 18.75rem);
  }

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

@media (max-width: 1000px) {
  .catalog_sidebar-container {
    width: clamp(20rem, 18.594rem + 6.25vw, 22.5rem);
    position: fixed;
    top: 15%;
    left: 0px;
    transform: translateX(-110%);
    transition: all 0.3s ease-in-out;
    height: 85%;
    overflow-y: scroll;
    z-index: 100;
  }

  .catalog_sidebar-container.active {
    transform: translateX(0%);
  }

  .type_product .filter_button {
    display: flex;
  }

  .type_product .close_filter {
    display: block;
  }
}

@media (max-width: 900px) {
  .catalog-banner .advantages {
    grid-template-columns: repeat(1, 1fr) !important;
  }

  .catalog-banner .image {
    display: none !important;
  }
}

@media (max-width: 620px) {
  .type_product .filter_button {
    bottom: 11.5%;
    border-radius: 15px;
  }

  .type_product__item-bottom .price {
    flex-direction: column-reverse;
    gap: 0px;
  }

  .bottom_menu {
    display: none;
  }
}

@media (max-width: 500px) {
  .type_product .filter_button {
    left: 7%;
  }

  .type_product__holder {
    grid-template-columns: repeat(1, 1fr);
  }

  .type_product__item-top .image {
    height: clamp(12.5rem, -3.571rem + 71.43vw, 18.75rem);
  }

  .type_product__item-bottom .price {
    gap: 10px;
    flex-direction: row;
  }

  .type_product__tags .tag {
    width: 100%;
  }

  .catalog-banner .image {
    display: none !important;
  }

  .catalog-banner .advantages .advantage {
    /* flex-direction: column !important; */
    /* align-items: center !important; */
  }

  .catalog-banner .min_cost {
    text-align: left !important;
  }
}

.single-news .content {
  display: flex;
  flex-direction: row;
  gap: 30px;
  margin-bottom: clamp(1.25rem, -0.481rem + 7.69vw, 8.75rem);
}

.single-news .go_to_back {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  gap: 20px;
  padding-top: 20px;
  border-top: 1px solid var(--bg-primary-third);
}

.single-news .go_to_back .to_back {
  font-size: 18px;
  font-weight: 500;
  font-family: "InterTight";
  background: none;
  color: var(--colors-main);
  border: none;
  outline: none;
  cursor: pointer;
  position: relative;
  padding-left: 20px;
}

.single-news .go_to_back .to_back::before {
  position: absolute;
  content: "";
  top: 50%;
  transform: translateY(-50%);
  left: 0px;
  width: 16px;
  height: 16px;
  background-image: url("data:image/svg+xml,%3Csvg width='11' height='11' viewBox='0 0 11 11' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9.83334 5.16662H0.5M0.5 5.16662L5.16667 9.83333M0.5 5.16662L5.16667 0.5' stroke='%23337AB7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 10px 10px;
}

.single-news .gallery_before {
  border-radius: 20px 20px 0px 0px;
}

.single-news p,
.single-news li {
  margin-bottom: 0px;
}

.single-news img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 20px;
}

.single-news__sidebar {
  max-width: clamp(25rem, 18.886rem + 9.78vw, 30.625rem);
  width: 100%;
  flex-shrink: 0;
  height: fit-content;
  position: sticky;
  top: 15%;
  background: var(--bg-primary-second);
  border-radius: 20px;
  padding: clamp(1.25rem, 1.106rem + 0.64vw, 1.875rem);
  display: flex;
  flex-direction: column;
  gap: 0px;
}

.single-news__sidebar .p2 {
  color: var(--text-primary-head);
}

.single-news__sidebar .p3 {
  color: var(--text-primary-main);
}

.single-news__sidebar .h4 {
  padding-bottom: clamp(1.25rem, 1.106rem + 0.64vw, 1.875rem);
  border-bottom: 1px solid var(--bg-primary-third);
}

.single-news__sidebar-container {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.single-news__sidebar .similar_post {
  display: flex;
  flex-direction: row;
  gap: 0px;
  background: var(--bg-primary-second);
  transition: all 0.3s ease-in-out;
}

.single-news__sidebar .similar_post * {
  transition: all 0.3s ease-in-out;
}

.single-news__sidebar .similar_post__thumbnail {
  max-width: 130px;
  max-height: 130px;
  overflow: hidden;
}

.single-news__sidebar .similar_post__text {
  display: flex;
  flex-direction: column;
  gap: 5px;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--bg-primary-third);
  width: 100%;
}

.single-news__sidebar .similar_post__text * {
  transition: all 0.3s ease-in-out;
}

.single-news__sidebar .similar_post__text-bottom {
  display: flex;
  flex-direction: row;
  gap: 20px;
  justify-content: space-between;
}

.single-news__sidebar .similar_post__text-time_to_read {
  display: flex;
  flex-direction: row;
  gap: 10px;
}

.single-news__sidebar .similar_post:hover .similar_post__text {
  border-color: var(--colors-main);
}

.single-news__sidebar .similar_post:hover .similar_post__text-title {
  color: var(--colors-main);
}

.single-news__content {
  width: 100%;
  max-width: clamp(34.375rem, 3.125rem + 50vw, 63.125rem);
}

.single-news__content-top {
  margin-bottom: clamp(1.25rem, 0.962rem + 1.28vw, 2.5rem);
  display: flex;
  flex-direction: row;
  gap: 10px;
  justify-content: space-between;
}

.single-news__content-time_to_read {
  display: flex;
  flex-direction: row;
  gap: 10px;
}

.single-news__content-main_img {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.single-news__content-main_img .img {
  height: clamp(20rem, 18.269rem + 7.69vw, 27.5rem);
  overflow: hidden;
}

.single-news__content-blocks {
  margin-top: clamp(1.25rem, 0.962rem + 1.28vw, 2.5rem);
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 0px;
  overflow: hidden;
  border-radius: 20px;
  margin-bottom: clamp(1.25rem, 0.962rem + 1.28vw, 2.5rem);
}

.single-news__content h2,
.single-news__content .h2,
.single-news__content .h2 * {
  margin-bottom: clamp(1.25rem, 1.034rem + 0.96vw, 2.188rem);
}

.single-news__content h3,
.single-news__content .h3,
.single-news__content .h3 * {
  margin-bottom: clamp(1.25rem, 1.034rem + 0.96vw, 2.188rem);
}

.single-news__content h4,
.single-news__content .h4,
.single-news__content .h4 * {
  margin-bottom: clamp(1.25rem, 1.106rem + 0.64vw, 1.875rem);
}

.single-news__content h5,
.single-news__content .h5,
.single-news__content .h5 * {
  margin-bottom: clamp(1.25rem, 1.178rem + 0.32vw, 1.563rem);
}

.single-news__content h6,
.single-news__content .h6,
.single-news__content .h6 * {
  margin-bottom: 20px;
}

.single-news__content .block {
  width: 100%;
  overflow: hidden;
}

.single-news__content .block:has(+ .block-gallery) {
  padding-bottom: 60px;
  border-radius: 0px 0px 20px 20px;
}

.single-news__content .block__text,
.single-news__content .block ul,
.single-news__content .block ol {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.single-news__content .block-gallery {
  margin: clamp(1.25rem, 0.962rem + 1.28vw, 2.5rem) 0px;
}

.single-news__content .block-quote {
  padding: clamp(1.25rem, 0.673rem + 2.56vw, 3.75rem);
  padding-bottom: 0px;
  background: var(--bg-primary-second);
}

.single-news__content .block-quote:last-child {
  padding-bottom: clamp(1.25rem, 0.673rem + 2.56vw, 3.75rem);
}

.single-news__content .block-text {
  padding: clamp(1.25rem, 0.673rem + 2.56vw, 3.75rem);
  padding-bottom: 0px;
  background: var(--bg-primary-second);
}

.single-news__content .block-text:last-child {
  padding-bottom: clamp(1.25rem, 0.673rem + 2.56vw, 3.75rem);
}

.single-news__content .block-text ul {
  list-style: none;
}

.single-news__content .block-text ul li {
  position: relative;
  padding-left: 45px;
}

.single-news__content .block-text ul li::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0px;
  height: 1px;
  width: 30px;
  background: var(--bg-primary-stroke);
}

.single-news__content .block__image {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: clamp(1.25rem, 1.106rem + 0.64vw, 1.875rem);
}

.single-news__content .block__image .swiper {
  width: 100%;
  overflow: hidden;
}

.single-news__content .block__image .swiper-navigation {
  display: flex;
  flex-direction: row;
  gap: 20px;
  justify-content: space-between;
}

.single-news__content .block__image .swiper-custom-pagination {
  width: fit-content;
}

.single-news__content .block__image .swiper-custom-pagination .swiper-pagination-bullet {
  background: var(--bg-primary-second);
  opacity: 1;
}

.single-news__content .block__image .swiper-custom-pagination .swiper-pagination-bullet-active {
  background: var(--colors-main);
}

.single-news__content .block__image .swiper-wrapper {
  box-sizing: border-box;
}

.single-news__content .block__image-slide {
  width: 100%;
  height: auto;
}

.single-news__content .block__image-slide .img {
  max-height: 275px;
  height: 100%;
  width: 100%;
  overflow: hidden;
}

.single-news__content .block__image-slide p {
  margin-top: 15px;
}

.single-news__content .block__quote {
  position: relative;
  padding: 75px 0px 70px 0px;
}

.single-news__content .block__quote::after,
.single-news__content .block__quote::before {
  position: absolute;
  content: "";
  height: 1px;
  width: 50%;
  background: var(--bg-primary-stroke);
}

.single-news__content .block__quote::after {
  right: 0px;
  bottom: 0px;
}

.single-news__content .block__quote::before {
  left: 0px;
  top: 0px;
}

.single-news__content .block__quote-symbol {
  position: absolute;
  top: 30px;
  left: 0px;
  height: 12px;
  width: 10px;
}

.single-news__content .block__quote-author {
  position: absolute;
  bottom: 30px;
  right: 0px;
}

@media (max-width: 1000px) {
  .single-news .content {
    flex-direction: column-reverse;
  }

  .single-news__content {
    max-width: unset;
  }

  .single-news__sidebar {
    max-width: unset;
    position: relative;
  }
}

@media (max-width: 550px) {
  .single-news__sidebar .similar_post {
    flex-direction: column;
  }

  .single-news__sidebar .similar_post__thumbnail {
    max-width: unset;
    max-height: clamp(8.75rem, 4.013rem + 21.05vw, 11.25rem);
  }
}

.single-information_page .content {
  display: flex;
  flex-direction: row;
  gap: 30px;
  margin-bottom: clamp(1.25rem, -0.481rem + 7.69vw, 8.75rem);
}

.single-information_page p,
.single-information_page li {
  margin-bottom: 0px;
}

.single-information_page img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 20px;
}

.single-information_page__sidebar {
  max-width: clamp(25rem, 18.886rem + 9.78vw, 30.625rem);
  width: 100%;
  flex-shrink: 0;
  height: fit-content;
  position: sticky;
  top: 15%;
  background: var(--bg-primary-second);
  border-radius: 20px;
  padding: clamp(1.25rem, 1.106rem + 0.64vw, 1.875rem);
  display: flex;
  flex-direction: column;
  gap: clamp(0.625rem, 0.481rem + 0.64vw, 1.25rem);
}

.single-information_page__sidebar .p2 {
  color: var(--text-primary-head);
}

.single-information_page__sidebar .p3 {
  color: var(--text-primary-main);
}

.single-information_page__sidebar .h4 {
  padding-bottom: clamp(1.25rem, 1.106rem + 0.64vw, 1.875rem);
  border-bottom: 1px solid var(--bg-primary-third);
}

.single-information_page__sidebar-container {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.single-information_page__sidebar .similar_post {
  display: flex;
  flex-direction: row;
  gap: 0px;
  background: var(--bg-primary-second);
  transition: all 0.3s ease-in-out;
  width: 100%;
}

.single-information_page__sidebar .similar_post * {
  transition: all 0.3s ease-in-out;
}

.single-information_page__sidebar .similar_post__thumbnail {
  max-width: 130px;
  max-height: 130px;
  overflow: hidden;
}

.single-information_page__sidebar .similar_post__text {
  display: flex;
  flex-direction: column;
  gap: 5px;
  padding-bottom: clamp(0.625rem, 0.481rem + 0.64vw, 1.25rem);
  border-bottom: 1px solid var(--bg-primary-third);
  width: 100%;
}

.single-information_page__sidebar .similar_post__text-bottom {
  display: flex;
  flex-direction: row;
  gap: 20px;
  justify-content: space-between;
}

.single-information_page__sidebar .similar_post__text-time_to_read {
  display: flex;
  flex-direction: row;
  gap: 10px;
}

.single-information_page__sidebar .similar_post:hover * {
  color: var(--colors-main) !important;
}

.single-information_page__sidebar .similar_post:hover .similar_post__text {
  border-color: var(--colors-main);
}

.single-information_page__content {
  width: 100%;
  max-width: clamp(34.375rem, 3.125rem + 50vw, 63.125rem);
}

.single-information_page__content-top {
  margin-bottom: clamp(1.25rem, 0.962rem + 1.28vw, 2.5rem);
  display: flex;
  flex-direction: row;
  gap: 10px;
  justify-content: space-between;
}

.single-information_page__content-main_img {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.single-information_page__content-main_img .img {
  height: clamp(20rem, 18.269rem + 7.69vw, 27.5rem);
  overflow: hidden;
}

.single-information_page__content-blocks {
  margin-top: clamp(1.25rem, 0.962rem + 1.28vw, 2.5rem);
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: clamp(1.25rem, 0.673rem + 2.56vw, 3.75rem);
  overflow: hidden;
  background: var(--bg-primary-second);
  border-radius: 20px;
  padding: clamp(1.25rem, 0.529rem + 3.21vw, 4.375rem);
}

.single-information_page__content-blocks .block {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.single-information_page__content-blocks .files {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}

.single-information_page__content-blocks .files .file {
  padding: 20px;
  display: flex;
  flex-direction: column;
  border-radius: 20px;
  gap: 20px;
  background: var(--bg-primary-main);
}

.single-information_page__content-blocks .files .file-name {
  position: relative;
  padding-left: 45px;
}

.single-information_page__content-blocks .files .file-name::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 0px;
  width: 30px;
  height: 1px;
  background: var(--bg-primary-stroke);
}

.single-information_page__content-blocks .files .file-dowload {
  padding: 15px 43px 15px 17px;
  border-radius: 10px;
  border: 1px solid var(--bg-primary-stroke);
  color: var(--text-primary-head);
  position: relative;
  width: fit-content;
  font-size: 16px;
  line-height: 120%;
  font-weight: 500;
}

.single-information_page__content-blocks .files .file-dowload::after {
  position: absolute;
  content: "";
  right: 17px;
  background-image: url("data:image/svg+xml,%3Csvg width='13' height='13' viewBox='0 0 13 13' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12.5 8.5V11.1667C12.5 11.5203 12.3595 11.8594 12.1095 12.1095C11.8594 12.3595 11.5203 12.5 11.1667 12.5H1.83333C1.47971 12.5 1.14057 12.3595 0.890524 12.1095C0.640476 11.8594 0.5 11.5203 0.5 11.1667V8.5M3.16667 5.16662L6.5 8.49995M6.5 8.49995L9.83333 5.16662M6.5 8.49995L6.5 0.5' stroke='%23282D3C' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  width: 16px;
  height: 16px;
  background-size: 12px;
  background-position: center;
  transition: all 0.3s ease-in-out;
}

.single-information_page__content-blocks .files .file-dowload:hover {
  background: var(--hover-main);
  border-color: var(--hover-main);
  color: var(--bg-primary-main);
}

.single-information_page__content-blocks .files .file-dowload:hover::after {
  filter: brightness(0) invert(1);
}

.single-information_page__content-blocks .contacts {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px 50px;
}

.single-information_page__content-blocks .contacts .contact {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.single-information_page__content .block {
  width: 100%;
  overflow: hidden;
}

.single-information_page__content .block__text,
.single-information_page__content .block ul,
.single-information_page__content .block ol {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.single-information_page__content .block-gallery {
  margin: clamp(1.25rem, 0.962rem + 1.28vw, 2.5rem) 0px;
}

.single-information_page__content .block-text ul {
  list-style: none;
}

.single-information_page__content .block-text ul li {
  position: relative;
  padding-left: 45px;
}

.single-information_page__content .block-text ul li::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0px;
  height: 1px;
  width: 30px;
  background: var(--bg-primary-stroke);
}

@media (max-width: 1250px) {
  .single-information_page__content-blocks .contacts {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 1000px) {
  .single-information_page__content-blocks .contacts {
    grid-template-columns: repeat(3, 1fr);
  }

  .single-information_page .content {
    flex-direction: column-reverse;
  }

  .single-information_page__content {
    max-width: unset;
  }

  .single-information_page__sidebar {
    max-width: unset;
    position: relative;
  }
}

@media (max-width: 700px) {
  .single-information_page__content-blocks .contacts {
    grid-template-columns: repeat(2, 1fr);
  }

  .single-information_page__content-blocks .files {
    grid-template-columns: repeat(1, 1fr);
  }

  .single-information_page__content-blocks .files .file-name {
    padding-left: clamp(1.25rem, -0.404rem + 7.35vw, 2.813rem);
  }

  .single-information_page__content-blocks .files .file-name::before {
    width: clamp(0.75rem, -0.441rem + 5.29vw, 1.875rem);
  }
}

@media (max-width: 550px) {
  .single-information_page__content-blocks .contacts {
    grid-template-columns: repeat(1, 1fr);
  }

  .single-information_page__sidebar .similar_post {
    flex-direction: column;
  }

  .single-information_page__sidebar .similar_post__thumbnail {
    max-width: unset;
    max-height: clamp(8.75rem, 4.013rem + 21.05vw, 11.25rem);
  }
}

@media (max-width: 450px) {
  .single-information_page__content-blocks .files .file-dowload {
    width: 100%;
  }
}

.single-product .page-title .colors {
  color: var(--colors-main);
}

.single-product-container {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 30px;
  padding: 40px 0px 50px 0px;
}

.single-product .swiper-btn-wrap {
  display: flex;
  gap: 20px;
  justify-content: space-between;
  position: absolute;
  bottom: 30px;
  left: 0px;
  width: 100%;
  padding: 0px 30px;
  z-index: 3;
}

.single-product .swiper-btn-wrap .swiper-btn {
  width: 60px;
  height: 60px;
  background: var(--bg-alt-second);
  border-radius: 15px;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
  transition: all 0.3s ease-in-out;
  cursor: pointer;
}

.single-product .swiper-btn-wrap .swiper-btn.swiper-button-disabled {
  background: var(--bg-primary-second);
}

.single-product .swiper-btn-wrap .swiper-btn.swiper-button-disabled svg path {
  stroke: #A9B1A9;
}

.single-product .swiper-btn-wrap .swiper-btn svg {
  width: 16px;
  height: 16px;
  object-fit: contain;
}

.single-product .swiper-btn-wrap .swiper-btn svg path {
  stroke: var(--colors-main);
  transition: all 0.3s ease-in-out;
}

.single-product .swiper-btn-wrap .swiper-btn:hover {
  background: var(--hover-main);
}

.single-product .swiper-btn-wrap .swiper-btn:hover svg path {
  stroke: var(--text-alt-head);
}

.single-product-gallery {
  display: flex;
  gap: 6px;
  max-height: 528px;
  max-width: 100%;
  overflow: hidden;
}

.single-product-gallery img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.single-product-gallery .gallery-swiper_thumb {
  width: 100px;
  height: 528px;
}

.single-product-gallery .gallery-swiper_thumb .swiper-wrapper {
  max-height: 528px;
}

.single-product-gallery .gallery-swiper_thumb .swiper-slide {
  height: 100px !important;
  border-radius: 20px;
  overflow: hidden;
  flex-shrink: 0;
}

.single-product-gallery .gallery-swiper_main {
  border-radius: 30px;
  width: calc(100% - 106px);
  flex: 1;
}

.single-product-gallery .gallery-swiper_main a {
  display: block;
  width: 100%;
  height: 100%;
}

.single-product-gallery .gallery-swiper_main .swiper-slide {
  width: 100% !important;
  flex-shrink: 0;
}

.single-product-info {
  display: flex;
  flex-direction: column;
  gap: 30px;
}

.single-product-info .description {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.single-product-info .description-text {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  height: fit-content;
  transition: all 0.3s ease-in-out;
  max-height: 4em;
}

.single-product-info .description-text.open {
  -webkit-line-clamp: unset;
}

.single-product-info .working_conditions {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.single-product-info .working_conditions .content {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}

.single-product-info .working_conditions .content .item {
  display: flex;
  gap: 5px;
  padding: 10px 15px;
  background: var(--bg-primary-second);
  border-radius: 12px;
}

.single-product-info .working_conditions .content .item-img {
  width: 24px;
  height: 24px;
}

.single-product-info .cost-block {
  display: flex;
  gap: 20px;
  justify-content: space-between;
  padding: 10px 10px 10px 30px;
  align-items: center;
  background: var(--bg-primary-second);
  border-radius: 30px;
}

.single-product-info .cost-block .cost {
  display: flex;
  gap: 10px;
  align-items: center;
}

.single-product-info .cost-block .cost p {
  font-weight: 800;
}

.single-product-info .cost-block .cost span {
  text-decoration: line-through;
  color: var(--text-primary-second);
}

.single-product-info .cost-block .btn {
  width: fit-content;
}

.single-product-info .characteristics {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.single-product-info .characteristics .list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.single-product-info .characteristics .list .characteristic {
  display: flex;
  justify-content: space-between;
  gap: 15px;
}

.single-product-info .characteristics .list .characteristic .name,
.single-product-info .characteristics .list .characteristic .value {
  width: fit-content;
  flex-shrink: 0;
  color: var(--text-primary-head);
}

.single-product-info .characteristics .list .characteristic .underline {
  width: 100%;
  border-bottom: 1px solid var(--bg-primary-stroke);
}

.single-product .simular_product {
  display: flex;
  flex-direction: column;
  gap: 30px;
}

.single-product .simular_product-container {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: clamp(1.25rem, 1.106rem + 0.64vw, 1.875rem);
}

.single-product .simular_product .more_product {
  width: fit-content;
}

.single-product .simular_product .type_product__item {
  padding: clamp(0.625rem, -0.734rem + 2.17vw, 1.875rem);
  display: flex;
  flex-direction: column;
  gap: clamp(1.25rem, 1.106rem + 0.64vw, 1.875rem);
  background: var(--bg-primary-second);
  border-radius: 30px;
  justify-content: space-between;
}

.single-product .simular_product .type_product__item-top {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.single-product .simular_product .type_product__item-top .info {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.single-product .simular_product .type_product__item-top .info .characteristics {
  display: flex;
  flex-direction: column;
  gap: 13px;
}

.single-product .simular_product .type_product__item-top .info .characteristics .parameter {
  display: flex;
  justify-content: space-between;
  gap: 10px;
}

.single-product .simular_product .type_product__item-top .image {
  border-radius: 20px;
  overflow: hidden;
  height: clamp(12.5rem, -0.605rem + 16.13vw, 18.75rem);
}

.single-product .simular_product .type_product__item-top .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: all 0.3s ease-in-out;
}

.single-product .simular_product .type_product__item-bottom {
  display: flex;
  flex-direction: column;
  gap: 13px;
  border-radius: 20px;
  padding: 15px;
  background: var(--bg-primary-main);
}

.single-product .simular_product .type_product__item-bottom .price {
  display: flex;
  gap: 10px;
  align-items: flex-start;
}

.single-product .simular_product .type_product__item-bottom .price .no_sale {
  color: var(--text-primary-second);
  text-decoration: line-through;
}

.single-product .simular_product .type_product__item:hover .image img {
  transform: scale(1.2);
}

.single-product .simular_product .type_product__item:hover .btn {
  background: var(--hover-main);
  color: var(--text-alt-head);
}

@media (max-width: 1100px) {
  .single-product .simular_product-container {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 1000px) {
  .single-product-container {
    grid-template-columns: repeat(1, 1fr);
  }
}

@media (max-width: 900px) {
  .single-product .simular_product-container {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 600px) {
  .single-product-gallery {
    flex-direction: column-reverse;
    max-height: none;
  }

  .single-product-gallery .gallery-swiper_thumb {
    width: 100%;
    height: auto;
  }

  .single-product-gallery .gallery-swiper_thumb .swiper-slide {
    height: 100px !important;
  }

  .single-product-gallery .gallery-swiper_main {
    width: 100%;
    height: 300px;
  }

  .single-product .simular_product-container {
    grid-template-columns: repeat(1, 1fr);
  }
}

@media (max-width: 500px) {
  .single-product-info .cost-block {
    flex-direction: column;
    align-items: flex-start;
  }

  .single-product-info .cost-block .btn {
    width: 100%;
  }
}

.error-page .container {
  padding: 0px;
}

.error-page-container {
  display: flex;
  padding: 60px 0px;
  position: relative;
  align-items: center;
  justify-content: space-between;
}

.error-page-text {
  display: flex;
  flex-direction: column;
  gap: 30px;
  max-width: 704px;
  width: 100%;
}

.error-page-text .text {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.error-page-text .btn {
  width: fit-content;
}

.error-page_bg {
  position: absolute;
  top: 0px;
  left: 50%;
  transform: translateX(-50%);
  width: 100vw;
  height: 100%;
  z-index: -1;
  display: flex;
  justify-content: flex-end;
  overflow: hidden;
}

.error-page_bg::before {
  content: "";
  width: 80%;
  height: 100%;
  position: absolute;
  left: 0px;
  top: 0px;
  background: url("../images/404_bg.png");
  background-repeat: no-repeat;
  background-position: left;
  background-size: cover;
  transition: all 0.3s ease-in-out;
}

.error-page_bg::after {
  content: "";
  width: 100%;
  max-width: 857px;
  height: 100%;
  max-height: 402px;
  position: absolute;
  right: 0px;
  bottom: 0px;
  background: url("../images/banner_plant.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  transform: translateY(20%);
}

.error-page_404 {
  position: relative;
  color: var(--bg-alt-main);
  font-weight: 700;
  font-size: clamp(9.375rem, 4.102rem + 23.44vw, 18.75rem);
  line-height: 120%;
  letter-spacing: 0%;
}

@media (max-width: 1300px) {
  .error-page_bg::before {
    width: 100%;
  }
}

@media (max-width: 1000px) {
  .error-page-container {
    padding: clamp(1.25rem, -0.156rem + 6.25vw, 3.75rem) 0px;
    flex-direction: column-reverse;
  }

  .error-page_bg::after {
    display: none;
  }

  .error-page-text {
    align-items: center;
    text-align: center;
  }
}

@media (max-width: 420px) {
	.header__content .phones-holder .phone {
		font-size: clamp(0.75rem, 3.33vw, 0.875rem);
	}
	.header__content .logo-holder .logo_text p{
		font-size:clamp(0.938rem, -0.563rem + 6.67vw, 1.188rem); 
	}
	.header .calculator_link{
		height:clamp(2.5rem, -1.25rem + 16.67vw, 3.125rem);
	}
}

/*# sourceMappingURL=main.css.map */