@charset "UTF-8";
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
}

a {
  text-decoration: none;
}
a:active, a:hover {
  outline: 0;
}

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

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal;
}

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

:focus {
  outline: 0;
}

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

audio, canvas, iframe, video, img, svg {
  vertical-align: middle;
}

iframe {
  border: 0;
}

textarea {
  resize: none;
  overflow: auto;
  vertical-align: top;
  box-shadow: none;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
}

input, textarea, select, button {
  margin: 0;
  padding: 0;
  font-size: 100%;
  background-color: transparent;
  outline: none;
  border: none;
  cursor: pointer;
  appearance: none;
}

button, input {
  line-height: normal;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

td, th {
  padding: 0;
  text-align: left;
}

.container {
  max-width: 1240px;
  margin: 0 auto;
  padding-left: 10px;
  padding-right: 10px;
}
@media (max-width: 1240px) {
  .container {
    max-width: 960px;
  }
  .question .line-wrapper .question-map {
    margin-left: 0;
    max-width: 500px;
    height: 400px;
  }
}
@media (max-width: 991px) {
  .container {
    max-width: 720px;
  }
}
@media (max-width: 768px) {
  .container {
    max-width: 540px;
  }
}
@media (max-width: 576px) {
  .container {
    max-width: 100%;
  }
}

body {
  position: relative;
  max-width: 100%;
  margin: 0 auto !important;
  font-family: "Montserrat", sans-serif;
  font-size: 16px;
  color: #4B4B4B;
  background-color: #ffffff;
}
body.hidden {
  overflow: hidden;
}

.white {
  color: #ffffff;
}

.white-bg {
  background-color: #ffffff;
}

.black {
  color: #202020;
}

.black-bg {
  background-color: #202020;
}

.text {
  color: #4B4B4B;
}

.text-bg {
  background-color: #4B4B4B;
}

.blue {
  color: #46A1E8;
}

.blue-bg {
  background-color: #46A1E8;
}

.blueD {
  color: #2A7DBE;
}

.blueD-bg {
  background-color: #2A7DBE;
}

.gray {
  color: #F4F4F4;
}

.gray-bg {
  background-color: #F4F4F4;
}

.Reg {
  font-weight: 400;
}

.Med {
  font-weight: 500;
}

.SemiBold {
  font-weight: 600;
}

.Bold {
  font-weight: 700;
}

.transition-03 {
  transition: all 0.3s ease;
}

.transition-1 {
  transition: all 1s ease;
}

.pos-r {
  position: relative;
}

.pos-a {
  position: absolute;
}

.pos-f {
  position: fixed;
}

.t-50p {
  top: 50%;
}

.t-0 {
  top: 0;
}

.t-15 {
  top: 15px;
}

.t-25 {
  top: 25px;
}

.r-0 {
  right: 0;
}

.b-0 {
  bottom: 0;
}

.l-0 {
  left: 0;
}

.l-50p {
  left: 50%;
}

.d-none {
  display: none;
}

.d-none-important {
  display: none !important;
}

.d-block {
  display: block;
}

.d-iblock {
  display: inline-block;
}

.df-fs-fs {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
}

.df-fs-ce {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
}

.df-fs-fe {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-end;
}

.df-fs-st {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: stretch;
}

.df-ce-fs {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
}

.df-ce-ce {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}

.df-ce-fe {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-end;
}

.df-ce-st {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
}

.df-fe-fs {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: flex-start;
}

.df-fe-ce {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
}

.df-fe-fe {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: flex-end;
}

.df-sp-fs {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
}

.df-sp-ce {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}

.df-sp-fe {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-end;
}

.df-sp-st {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: stretch;
}

.w-100p {
  width: 100%;
}

.max-w-100p {
  max-width: 100%;
}

.h-100p {
  height: 100%;
}

.m-0-auto {
  margin: 0 auto;
}

.mt-10 {
  margin-top: 10px;
}

.mt-20 {
  margin-top: 20px;
}

.mr-10 {
  margin-right: 10px;
}

.mr-20 {
  margin-right: 20px;
}

.mr-25 {
  margin-right: 25px;
}

.mr-30 {
  margin-right: 30px;
}

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

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

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

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

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

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

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

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

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

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

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

.pt-10 {
  padding-top: 10px;
}

.pt-15 {
  padding-top: 15px;
}

.pt-20 {
  padding-top: 20px;
}

.pr-20 {
  padding-right: 20px;
}

.pb-10 {
  padding-bottom: 10px;
}

.pb-15 {
  padding-bottom: 15px;
}

.pb-20 {
  padding-bottom: 20px;
}

.pb-50 {
  padding-bottom: 50px;
}

.pl-20 {
  padding-left: 20px;
}

.title-h2 {
  position: relative;
  display: block;
  width: 100%;
  margin-bottom: 40px;
}
.title-h2 h2 {
  position: relative;
  display: block;
  width: 100%;
  font-weight: 700;
  font-size: 36px;
  color: #202020;
  z-index: 5;
}
.title-h2 h2.h2-white {
  color: #ffffff;
}
.title-h2.title-h2-line:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: -40px;
  width: 120px;
  height: 18px;
  background-color: #46A1E8;
  z-index: 2;
}
.title-h2.title-h2-line-d:before {
  background-color: #2A7DBE;
}

.fz-10 {
  font-size: 10px;
}

.fz-12 {
  font-size: 12px;
}

.fz-13 {
  font-size: 13px;
}

.fz-14 {
  font-size: 14px;
}

.fz-15 {
  font-size: 15px;
}

.fz-16 {
  font-size: 16px;
}

.fz-17 {
  font-size: 17px;
}

.fz-18 {
  font-size: 18px;
}

.fz-20 {
  font-size: 20px;
}

.fz-22 {
  font-size: 22px;
}

.fz-23 {
  font-size: 23px;
}

.fz-24 {
  font-size: 24px;
}

.lh-1-5 {
  line-height: 1.5;
}

.lh-1-6 {
  line-height: 1.6;
}

.text-uppercase {
  text-transform: uppercase;
}

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

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

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

.op-0 {
  opacity: 0;
}

.border-1-blueD {
  border: 1px solid #2A7DBE;
}

.border-t-1-blueD {
  border-top: 1px solid #2A7DBE;
}

.border-r-1-blueD {
  border-right: 1px solid #2A7DBE;
}

.border-b-1-blueD {
  border-bottom: 1px solid #2A7DBE;
}

.border-l-1-blueD {
  border-left: 1px solid #2A7DBE;
}

.brs-10 {
  border-radius: 10px;
}

.brs-50 {
  border-radius: 50px;
}

.trs--50p {
  transform: translate(-50%, -50%);
}

.trsY--50p {
  transform: translateY(-50%);
}

.z-1 {
  z-index: 1;
}

.z-5 {
  z-index: 5;
}

.z-10 {
  z-index: 10;
}

.z-50 {
  z-index: 50;
}

.z-100 {
  z-index: 100;
}

.z-150 {
  z-index: 150;
}

.z-200 {
  z-index: 200;
}

.z-300 {
  z-index: 300;
}

.z-500 {
  z-index: 500;
}

.overflow {
  overflow: hidden;
}

.overflow-y-s {
  overflow-y: scroll;
}

.scroll-line-none::-webkit-scrollbar {
  width: 0px;
  height: 0px;
}

.scroll-line-none::-webkit-scrollbar-button {
  background-color: transparent;
}

.scroll-line-none::-webkit-scrollbar-track {
  background-color: transparent;
}

.scroll-line-none::-webkit-scrollbar-track-piece {
  background-color: transparent;
}

.scroll-line-none::-webkit-scrollbar-thumb {
  height: 0px;
  background-color: transparent;
  border-radius: 3px;
}

.scroll-line-none::-webkit-scrollbar-corner {
  background-color: transparent;
}

.scroll-line-none::-webkit-resizer {
  background-color: transparent;
}

.overscroll-behavior {
  overscroll-behavior-x: contain;
  scroll-snap-type: x proximity;
  scrollbar-width: none;
}
.overscroll-behavior .scroll-snap {
  scroll-snap-align: start;
}

.page-top {
  padding-top: 160px;
}
.page-top.page-top-page {
  padding-top: 213px;
}

.line-text {
  display: block;
  width: 100%;
  height: 1px;
  background-color: #4B4B4B;
}

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

.btn-blue {
  padding: 12px 18px;
  font-weight: 500;
  font-size: 14px;
  color: #ffffff;
  background-color: #46A1E8;
  border: 1px solid #46A1E8;
  border-radius: 2px;
  transition: all 0.3s ease;
}
.btn-blue:hover {
  color: #2A7DBE;
  background-color: transparent;
  border-color: #2A7DBE;
}
.btn-blue[disabled=disabled] {
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: #202020;
  background-color: #6fd865;
  border-color: #6fd865;
}

.btn-white {
  padding: 12px 18px;
  font-weight: 500;
  font-size: 14px;
  color: #4B4B4B;
  background-color: #ffffff;
  border: 1px solid #ffffff;
  border-radius: 2px;
  transition: all 0.3s ease;
}
.btn-white:hover {
  color: #ffffff;
  background-color: transparent;
  border-color: #ffffff;
}

.hover-blueD {
  transition: all 0.3s ease;
}
.hover-blueD:hover {
  color: #2A7DBE;
}

.form-group {
  display: block;
  width: 282px;
  max-width: 100%;
}
.form-group input {
  display: block;
  width: 100%;
  padding-bottom: 16px;
  padding-left: 10px;
  font-weight: 400;
  font-size: 14px;
  color: #202020;
  background-color: transparent;
  border-bottom: 2px solid #868686;
}
.form-group input::placeholder {
  color: #4B4B4B;
}

.form-btn {
  position: relative;
  display: block;
  width: 100%;
}
.form-btn input {
  display: block;
  padding: 15px 52px;
  font-weight: 600;
  font-size: 14px;
  color: #ffffff;
  background-color: #46A1E8;
  border-radius: 2px;
}
.form-btn .policy {
  display: block;
  font-weight: 400;
  font-size: 13px;
  color: #4B4B4B;
}
.form-btn .policy a {
  text-decoration: underline;
  color: #4B4B4B;
}
.form-btn .wpcf7-spinner {
  position: absolute;
  top: 50%;
  left: 50%;
  margin: 0 !important;
  transform: translate(-50%, -50%);
}

.busked-group {
  display: block;
  width: 100%;
}
.busked-group input {
  display: block;
  width: 100%;
  padding: 10px;
  padding-left: 16px;
  font-weight: 400;
  font-size: 14px;
  color: #202020;
  background-color: transparent;
  border: 1px solid #2A7DBE;
  border-radius: 2px;
}
.busked-group input::placeholder {
  color: #4B4B4B;
}
.busked-group textarea {
  display: block;
  width: 100%;
  padding: 10px;
  padding-left: 16px;
  min-height: 112px;
  font-weight: 400;
  font-size: 14px;
  color: #202020;
  background-color: transparent;
  border: 1px solid #2A7DBE;
  border-radius: 2px;
}
.busked-group textarea::placeholder {
  color: #4B4B4B;
}
.busked-group.busked-group-radio input[type=radio] {
  display: none;
}
.busked-group.busked-group-radio label {
  position: relative;
  display: block;
  width: 100%;
  padding-left: 30px;
  color: #4B4B4B;
  transition: color 0.3s;
  cursor: pointer;
}
.busked-group.busked-group-radio label:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: transparent;
  border: 2px solid #ffffff;
  transition: background-color 0.3s;
  border: 2px solid #2A7DBE;
  transform: translateY(-50%);
}
.busked-group.busked-group-radio label:not(:last-child) {
  margin-bottom: 12px;
}
.busked-group.busked-group-radio input[type=radio]:checked + label:before {
  background-color: #2A7DBE;
}
.busked-group.busked-group-radio input[type=radio]:focus + label {
  color: #4B4B4B;
}
.busked-group.busked-group-radio input[type=radio]:checked + label {
  color: #4B4B4B;
}
.busked-group.busked-group-radio input[type=radio]:hover + label:before {
  background-color: #2A7DBE;
}
.busked-group.busked-group-radio input[type=radio]:focus + label:before {
  background-color: #2A7DBE;
}

@media (max-width: 1240px) {
  .page-top.page-top-page {
    padding-top: 190px;
  }
}
@media (max-width: 768px) {
  .page-top {
    padding-top: 85px;
  }
  .page-top.page-top-page {
    padding-top: 175px;
  }
  .title-h2 {
    margin-bottom: 30px;
  }
  .title-h2.title-h2-line:before {
    left: -26px;
  }
  .title-h2 h2 {
    font-size: 32px;
  }
}
@media (max-width: 576px) {
  .page-top.page-top-page {
    padding-top: 150px;
  }
  .background-blue-right:before {
    display: none;
  }
}
@media (max-width: 400px) {
  .title-h2 h2 {
    font-size: 28px;
  }
}
body.shadow {
  overflow: hidden;
}
body.shadow .header {
  display: none;
}
body.shadow:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.7);
  z-index: 250;
}

.body-background-blue {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  min-height: 850px;
  background-color: #46A1E8;
  z-index: -1;
}

/* ============================================
   HERO CONSTRUCTION ANIMATION - Сборка конструкции
   ============================================ */
.hero-grid,
.main {
  position: relative;
}
.hero-grid:before,
.main:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: repeating-linear-gradient(0deg, transparent, transparent 39px, rgba(0, 0, 0, 0.03) 40px), repeating-linear-gradient(90deg, transparent, transparent 39px, rgba(0, 0, 0, 0.03) 40px);
  background-size: 40px 40px;
  pointer-events: none;
  z-index: 1;
  will-change: opacity, transform;
  opacity: 0;
  transition: opacity 0ms;
}

/* Начальные состояния применяются только если JS работает */
body.js-enabled .site-header,
body.js-enabled .header {
  will-change: opacity;
  opacity: 0;
  transition: opacity 0ms;
}

.hero-media,
.main-slide-calculation {
  position: relative;
  overflow: hidden;
}
body.js-enabled .hero-media,
body.js-enabled .main-slide-calculation {
  will-change: opacity;
}
body.js-enabled .hero-media .main-slider,
body.js-enabled .hero-media .main-slider img,
body.js-enabled .hero-media img,
body.js-enabled .main-slide-calculation .main-slider,
body.js-enabled .main-slide-calculation .main-slider img,
body.js-enabled .main-slide-calculation img {
  opacity: 0.85;
  transition: opacity 0ms;
}
body.js-enabled .hero-media:after,
body.js-enabled .main-slide-calculation:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #F4F4F4;
  z-index: 10;
  will-change: transform;
  transform: translateX(0);
  transition: transform 0ms;
}

/* Начальные состояния применяются только если JS работает */
body.js-enabled .hero-copy,
body.js-enabled .main-content {
  will-change: transform, opacity;
  opacity: 0;
  transform: translateY(8px);
  transition: opacity 0ms, transform 0ms, letter-spacing 0ms;
  letter-spacing: 0.02em;
}

body.js-enabled .hero-accent,
body.js-enabled .main-content__line,
body.js-enabled .body-background-blue {
  will-change: transform, opacity;
  opacity: 0;
  transform: scaleX(0);
  transform-origin: left center;
  transition: opacity 0ms, transform 0ms;
}

body.js-enabled .hero-panel,
body.js-enabled .component-calculation {
  will-change: transform, opacity;
  opacity: 0;
  transform: translateY(12px);
  transition: opacity 0ms, transform 0ms;
}

body.is-loaded .hero-grid:before,
body.is-loaded .main:before {
  opacity: 1;
  transition: opacity 520ms ease-out;
  transition-delay: 160ms;
}
body.is-loaded .site-header,
body.is-loaded .header {
  opacity: 1;
  transition: opacity 600ms ease-out;
  transition-delay: 200ms;
}
body.is-loaded .hero-media:after,
body.is-loaded .main-slide-calculation:after {
  transform: translateX(100%);
  transition: transform 1200ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition-delay: 360ms;
}
body.is-loaded .hero-media .main-slider,
body.is-loaded .hero-media .main-slider img,
body.is-loaded .hero-media img,
body.is-loaded .main-slide-calculation .main-slider,
body.is-loaded .main-slide-calculation .main-slider img,
body.is-loaded .main-slide-calculation img {
  opacity: 1;
  transition: opacity 1000ms ease-out;
  transition-delay: 560ms;
}
body.is-loaded .hero-copy,
body.is-loaded .main-content {
  opacity: 1;
  transform: translateY(0);
  letter-spacing: normal;
  transition: opacity 800ms cubic-bezier(0.22, 1, 0.36, 1), transform 800ms cubic-bezier(0.22, 1, 0.36, 1), letter-spacing 800ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 720ms;
}
body.is-loaded .hero-accent,
body.is-loaded .main-content__line,
body.is-loaded .body-background-blue {
  opacity: 1;
  transform: scaleX(1);
  transition: opacity 480ms ease-out, transform 480ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition-delay: 1040ms;
}
body.is-loaded .hero-panel,
body.is-loaded .component-calculation {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 800ms ease-out, transform 800ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition-delay: 1240ms;
}

body.is-loaded .hero-grid:before,
body.is-loaded .main:before {
  animation: hero-grid-drift 8s ease-in-out infinite;
  animation-delay: 2000ms;
}

@keyframes hero-grid-drift {
  0%, 100% {
    transform: translate(0, 0);
  }
  50% {
    transform: translate(1px, -1px);
  }
}
@media (prefers-reduced-motion: reduce) {
  .hero-grid:before,
  .main:before,
  .site-header,
  .header,
  .hero-media,
  .main-slide-calculation,
  .hero-media:after,
  .main-slide-calculation:after,
  .hero-copy,
  .main-content,
  .hero-accent,
  .main-content__line,
  .body-background-blue,
  .hero-panel,
  .component-calculation {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
    animation: none !important;
  }
  .hero-media:after,
  .main-slide-calculation:after {
    display: none !important;
  }
}

.body-background-gray {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  min-height: 850px;
  background-color: #F4F4F4;
  z-index: -2;
}
/* Сетка только в сером блоке */
.body-background-gray:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: repeating-linear-gradient(0deg, transparent, transparent 39px, rgba(0, 0, 0, 0.03) 40px), repeating-linear-gradient(90deg, transparent, transparent 39px, rgba(0, 0, 0, 0.03) 40px);
  background-size: 40px 40px;
  pointer-events: none;
  z-index: 1;
  opacity: 1;
}

.header .header-wrapper .header-logotype {
  max-width: 340px;
  padding-left: 20px;
}
.header .header-wrapper .header-logotype .header-logotype__svg {
  width: 70px;
  height: 70px;
}
.header .header-wrapper .header-logotype .header-logotype__content {
  width: calc(100% - 81px);
}
.header .header-wrapper .menu-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  max-width: 570px;
}
.header .header-wrapper .menu-list .menu-item a {
  display: inline-block;
  font-size: 15px;
  color: #4B4B4B;
  transition: all 0.3s ease;
}
.header .header-wrapper .menu-list > .menu-item > a {
  padding: 10px 0;
}
.header .header-wrapper .menu-list > .menu-item > a:hover {
  color: #2A7DBE;
}
.header .header-wrapper .menu-list > .menu-item:not(:last-child) {
  margin-right: 25px;
}
.header .header-wrapper .menu-list .menu-item-has-children {
  position: relative;
}
.header .header-wrapper .menu-list .menu-item-has-children:after {
  content: "";
  position: relative;
  top: -2px;
  display: inline-block;
  width: 8px;
  height: 8px;
  margin-left: 5px;
  border-right: 2px solid #4B4B4B;
  border-bottom: 2px solid #4B4B4B;
  transform: rotate(45deg);
  transition: all 0.3s ease;
}
.header .header-wrapper .menu-list .menu-item-has-children .sub-menu {
  position: absolute;
  top: 35px;
  left: 0;
  width: calc(100% + 100px);
  padding: 0px;
  background-color: #ffffff;
  box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.25);
  height: 0;
  overflow: hidden;
  opacity: 0;
  z-index: -1;
  transition: all 0.3s ease;
}
.header .header-wrapper .menu-list .menu-item-has-children .sub-menu .menu-item:not(:last-child) {
  margin-bottom: 8px;
}
.header .header-wrapper .menu-list .menu-item-has-children .sub-menu a:hover {
  color: #2A7DBE;
}
.header .header-wrapper .menu-list .menu-item-has-children:hover:after {
  border-color: #2A7DBE;
}
.header .header-wrapper .menu-list .menu-item-has-children:hover > a {
  color: #2A7DBE;
}
.header .header-wrapper .menu-list .menu-item-has-children:hover .sub-menu {
  height: auto;
  padding: 12px;
  opacity: 1;
  z-index: 1;
  overflow: initial;
}
.header .header-wrapper .header-contacts {
  max-width: 180px;
}

.header-menu {
  left: calc(-100vw - 60px);
  max-width: 320px;
  height: 100vh;
  padding: 12px;
  box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.25);
  transition: all 0.3s ease;
}
.header-menu .menu-close {
  top: 20px;
  right: -60px;
  width: 40px;
  height: 40px;
}
.header-menu .header-menu__top {
  margin-bottom: 22px;
  padding-bottom: 22px;
  border-bottom: 1px solid #202020;
}
.header-menu .header-menu__top .header-menu__top-svg {
  width: 60px;
  height: 60px;
}
.header-menu .header-menu__top .header-menu__top-content {
  width: calc(100% - 68px);
}
.header-menu .menu-list {
  display: block;
  width: 100%;
  margin-bottom: 22px;
  padding-bottom: 22px;
  border-bottom: 1px solid #202020;
}
.header-menu .menu-list .menu-item {
  display: block;
  width: 100%;
}
.header-menu .menu-list .menu-item > a {
  font-weight: 500;
  font-size: 22px;
  color: #4B4B4B;
}
.header-menu .menu-list .menu-item.menu-item-has-children {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
.header-menu .menu-list .menu-item.menu-item-has-children > a {
  display: block;
  width: calc(100% - 40px);
}
.header-menu .menu-list .menu-item.menu-item-has-children .sub-menu__js {
  position: relative;
  display: block;
  width: 26px;
  height: 26px;
}
.header-menu .menu-list .menu-item.menu-item-has-children .sub-menu__js:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 14px;
  height: 14px;
  background: url("../img/icon-plus-text.svg") center/contain no-repeat;
  transform: translate(-50%, -50%);
}
.header-menu .menu-list .menu-item.menu-item-has-children .sub-menu__js.sub-menu__js-active {
  transform: rotate(45deg);
}
.header-menu .menu-list .menu-item.menu-item-has-children .sub-menu {
  width: 100%;
  height: 0;
  opacity: 0;
  z-index: -1;
  overflow: hidden;
}
.header-menu .menu-list .menu-item.menu-item-has-children .sub-menu .menu-item {
  display: block;
  width: 100%;
}
.header-menu .menu-list .menu-item.menu-item-has-children .sub-menu .menu-item a {
  font-size: 16px;
}
.header-menu .menu-list .menu-item.menu-item-has-children .sub-menu.sub-menu__active {
  height: auto;
  padding-top: 6px;
  padding-left: 30px;
  opacity: 1;
  overflow: inherit;
  z-index: 1;
}
.header-menu .menu-list .menu-item:not(:last-child) {
  margin-bottom: 14px;
}
.header-menu.header-menu-active {
  left: 0;
}

.main .line-wrapper .main-slide-calculation {
  width: 860px;
  margin-left: -130px;
}
.main .line-wrapper .main-slide-calculation .main-slider {
  height: 535px;
}
.main .line-wrapper .main-slide-calculation .main-slider .main-slide {
  opacity: 0;
  transition: all 0.3s ease;
}
.main .line-wrapper .main-slide-calculation .main-slider .main-slide.main-slide__active {
  opacity: 1;
}
.main .line-wrapper .main-slide-calculation .main-slider .main-slider__navigation {
  height: 60px;
  display: flex;
  align-items: center;
  gap: 14px;
}
.main .line-wrapper .main-slide-calculation .main-slider .main-slider__navigation .main-slider__nav {
  position: relative;
  width: 16px;
  height: 16px;
  cursor: pointer;
  background-color: rgba(255, 255, 255, 0.5);
  border: 2px solid rgba(255, 255, 255, 0.8);
  border-radius: 50%;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  transform: scale(1);
  opacity: 0;
  animation: fade-in-scale 0.5s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}
.main .line-wrapper .main-slide-calculation .main-slider .main-slider__navigation .main-slider__nav:nth-child(1) {
  animation-delay: 0.1s;
}
.main .line-wrapper .main-slide-calculation .main-slider .main-slider__navigation .main-slider__nav:nth-child(2) {
  animation-delay: 0.2s;
}
.main .line-wrapper .main-slide-calculation .main-slider .main-slider__navigation .main-slider__nav:nth-child(3) {
  animation-delay: 0.3s;
}
.main .line-wrapper .main-slide-calculation .main-slider .main-slider__navigation .main-slider__nav:nth-child(4) {
  animation-delay: 0.4s;
}
.main .line-wrapper .main-slide-calculation .main-slider .main-slider__navigation .main-slider__nav:nth-child(5) {
  animation-delay: 0.5s;
}
.main .line-wrapper .main-slide-calculation .main-slider .main-slider__navigation .main-slider__nav:hover {
  background-color: rgba(255, 255, 255, 0.8);
  border-color: #ffffff;
  transform: scale(1.2);
  box-shadow: 0 0 12px rgba(70, 161, 232, 0.4);
}
.main .line-wrapper .main-slide-calculation .main-slider .main-slider__navigation .main-slider__nav:active {
  transform: scale(0.95);
}
.main .line-wrapper .main-slide-calculation .main-slider .main-slider__navigation .main-slider__nav.main-slider__nav-active {
  position: relative;
  background-color: #46A1E8;
  border: 2px solid #ffffff;
  cursor: default;
  transform: scale(1.3);
  box-shadow: 0 0 20px rgba(70, 161, 232, 0.6);
}
.main .line-wrapper .main-slide-calculation .main-slider .main-slider__navigation .main-slider__nav.main-slider__nav-active:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: calc(100% + 12px);
  height: calc(100% + 12px);
  border: 2px solid #ffffff;
  border-radius: 50%;
  opacity: 0.8;
  animation: pulse-ring 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}
.main .line-wrapper .main-slide-calculation .main-slider .main-slider__navigation .main-slider__nav.main-slider__nav-active:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: calc(100% + 20px);
  height: calc(100% + 20px);
  border: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: 50%;
  animation: pulse-glow 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}
.main .line-wrapper .main-slide-calculation .main-slider .main-slider__navigation .main-slider__nav:not(:last-child) {
  margin-right: 0;
}
@keyframes pulse-ring {
  0% {
    transform: translate(-50%, -50%) scale(1);
    opacity: 0.8;
  }
  50% {
    transform: translate(-50%, -50%) scale(1.3);
    opacity: 0.4;
  }
  100% {
    transform: translate(-50%, -50%) scale(1.5);
    opacity: 0;
  }
}
@keyframes pulse-glow {
  0%, 100% {
    transform: translate(-50%, -50%) scale(1);
    opacity: 0.3;
  }
  50% {
    transform: translate(-50%, -50%) scale(1.4);
    opacity: 0.1;
  }
}
@keyframes fade-in-scale {
  0% {
    opacity: 0;
    transform: scale(0);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
.main .line-wrapper .main-content {
  width: 440px;
  padding-top: 80px;
}
.main .line-wrapper .main-content .main-content__title {
  margin-bottom: 35px;
  font-size: 42px;
}
.main .line-wrapper .main-content .main-content__line {
  max-width: 517px;
  height: 3px;
  margin-bottom: 35px;
  margin-left: -220px;
}
.main .line-wrapper .main-content .main-content__descr {
  margin-bottom: 35px;
}
.main .line-wrapper .main-content .main-content__btn button, .main .line-wrapper .main-content .main-content__btn a {
  display: inline-block;
  min-width: 210px;
  text-align: center;
}

/* ============================================
   PREFERENCES SCROLL ANIMATION - Анимация при скролле
   ============================================ */
.preferences {
  padding-top: 80px;
  padding-bottom: 125px;
}
body.js-enabled .preferences {
  will-change: opacity;
  opacity: 0;
  transition: opacity 0ms;
}
.preferences .line-wrapper {
  border: 2px solid #F4F4F4;
}
/* Декоративные точки - позиционирование всегда */
.preferences .line-wrapper:before {
  bottom: -55px;
  left: -146px;
}
.preferences .line-wrapper:after {
  top: -55px;
  right: -153px;
}
/* Декоративные точки - начальное состояние только если JS работает */
body.js-enabled .preferences .line-wrapper:before,
body.js-enabled .preferences .line-wrapper:after {
  content: "";
  position: absolute;
  width: 96px;
  height: 96px;
  background: url("../img/icon-dots-blue.svg") center/contain no-repeat;
  z-index: 1;
  will-change: transform, opacity;
  opacity: 0;
  transition: opacity 0ms, transform 0ms;
}
.preferences .line-wrapper .preferences-item {
  width: 33%;
  padding: 45px 30px;
}
/* Начальные состояния только если JS работает */
body.js-enabled .preferences .line-wrapper .preferences-item {
  will-change: transform, opacity;
  opacity: 0;
  transform: translateY(3px);
  transition: opacity 0ms, transform 0ms;
}
.preferences .line-wrapper .preferences-item .preferences-item__svg {
  width: 60px;
  height: 60px;
  margin-top: 16px;
  position: relative;
}
body.js-enabled .preferences .line-wrapper .preferences-item .preferences-item__svg {
  will-change: transform, opacity;
  opacity: 0;
  transform: scale(0.85);
  transition: opacity 0ms, transform 0ms;
}
.preferences .line-wrapper .preferences-item .preferences-item__svg:before {
  content: "";
  position: absolute;
  top: -10px;
  left: -6px;
  width: 21px;
  height: 80px;
  background-color: #46A1E8;
  z-index: 1;
}
.preferences .line-wrapper .preferences-item .preferences-item__svg img {
  position: relative;
  z-index: 5;
}
/* Анимация при появлении в viewport - должна перекрывать начальное состояние */
body.js-enabled .preferences.is-visible {
  opacity: 1 !important;
  transition: opacity 1200ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 0ms;
}
body.js-enabled .preferences.is-visible .line-wrapper:before,
body.js-enabled .preferences.is-visible .line-wrapper:after {
  opacity: 1 !important;
  transition: opacity 800ms ease-out;
  transition-delay: 400ms;
}
/* Увеличиваем специфичность для перекрытия начальных состояний */
body.js-enabled .preferences.is-visible .line-wrapper .preferences-item {
  opacity: 1 !important;
  transform: translateY(0);
  transition: opacity 1000ms cubic-bezier(0.22, 1, 0.36, 1), transform 1000ms cubic-bezier(0.22, 1, 0.36, 1);
}
body.js-enabled .preferences.is-visible .line-wrapper .preferences-item:nth-child(1) {
  transition-delay: 600ms;
}
body.js-enabled .preferences.is-visible .line-wrapper .preferences-item:nth-child(1) .preferences-item__svg {
  transition-delay: 900ms;
}
body.js-enabled .preferences.is-visible .line-wrapper .preferences-item:nth-child(2) {
  transition-delay: 800ms;
}
body.js-enabled .preferences.is-visible .line-wrapper .preferences-item:nth-child(2) .preferences-item__svg {
  transition-delay: 1100ms;
}
body.js-enabled .preferences.is-visible .line-wrapper .preferences-item:nth-child(3) {
  transition-delay: 1000ms;
}
body.js-enabled .preferences.is-visible .line-wrapper .preferences-item:nth-child(3) .preferences-item__svg {
  transition-delay: 1300ms;
}
body.js-enabled .preferences.is-visible .line-wrapper .preferences-item:nth-child(4) {
  transition-delay: 1200ms;
}
body.js-enabled .preferences.is-visible .line-wrapper .preferences-item:nth-child(4) .preferences-item__svg {
  transition-delay: 1500ms;
}
body.js-enabled .preferences.is-visible .line-wrapper .preferences-item:nth-child(5) {
  transition-delay: 1400ms;
}
body.js-enabled .preferences.is-visible .line-wrapper .preferences-item:nth-child(5) .preferences-item__svg {
  transition-delay: 1700ms;
}
body.js-enabled .preferences.is-visible .line-wrapper .preferences-item .preferences-item__svg {
  opacity: 1 !important;
  transform: scale(1);
  transition: opacity 600ms cubic-bezier(0.25, 0.46, 0.45, 0.94), transform 600ms cubic-bezier(0.34, 1.56, 0.64, 1);
}
.preferences.is-visible .line-wrapper:before,
.preferences.is-visible .line-wrapper:after {
  animation: preferences-dots-drift 10s ease-in-out infinite;
  animation-delay: 2000ms;
}
@keyframes preferences-dots-drift {
  0%, 100% {
    transform: translate(0, 0);
  }
  25% {
    transform: translate(0.5px, -0.5px);
  }
  50% {
    transform: translate(-0.3px, 0.3px);
  }
  75% {
    transform: translate(0.3px, 0.5px);
  }
}
@media (prefers-reduced-motion: reduce) {
  .preferences,
  .preferences .line-wrapper:before,
  .preferences .line-wrapper:after,
  .preferences .preferences-item,
  .preferences .preferences-item__svg {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
    animation: none !important;
  }
}
.preferences .line-wrapper .preferences-item .preferences-item__content {
  width: calc(100% - 91px);
}
.preferences .line-wrapper .preferences-item .preferences-item__content .preferences-item__content-descr {
  line-height: 1.5;
}
.preferences .line-wrapper .preferences-item:nth-child(2) {
  border-right: 2px solid #F4F4F4;
  border-left: 2px solid #F4F4F4;
}

/* ============================================
   БЛОК 3: КАТАЛОГ - АНИМАЦИЯ ПОЯВЛЕНИЯ
   ============================================ */
.catalog {
  padding-top: 110px;
  padding-bottom: 70px;
  opacity: 0;
  transition: opacity 0ms;
}
.catalog .card .card__image {
  position: relative;
  overflow: hidden;
  will-change: opacity;
}
.catalog .card .card__image img {
  opacity: 0.9;
  transition: opacity 0ms;
  will-change: opacity;
}
.catalog .card .card__image:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #F4F4F4;
  z-index: 10;
  transform: translateY(0);
  transition: transform 0ms;
  will-change: transform;
}
.catalog .card .card__content .card__content-title {
  opacity: 0;
  transform: translateY(3px);
  transition: opacity 0ms, transform 0ms;
  will-change: opacity, transform;
}
/* Анимация при появлении в viewport */
.catalog.is-visible {
  opacity: 1;
  transition: opacity 350ms ease-out;
  transition-delay: 0ms;
}
.catalog .card.is-visible .card__image:after {
  transform: translateY(100%);
  transition: transform 450ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition-delay: 0ms;
}
.catalog .card.is-visible .card__image img {
  opacity: 1;
  transition: opacity 400ms ease-out;
  transition-delay: 0ms;
}
.catalog .card.is-visible .card__content-title {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 350ms ease-out, transform 350ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 140ms;
}
@media (prefers-reduced-motion: reduce) {
  .catalog {
    opacity: 1;
    transition: none;
  }
  .catalog .card .card__image img {
    opacity: 1;
    transition: none;
  }
  .catalog .card .card__image:after {
    display: none;
  }
  .catalog .card .card__content-title {
    opacity: 1;
    transform: translateY(0);
    transition: none;
  }
  .catalog.is-visible .card .card__image img {
    opacity: 1;
  }
  .catalog.is-visible .card .card__content-title {
    opacity: 1;
    transform: translateY(0);
  }
}

.card {
  width: 386px;
  margin-bottom: 30px;
  background-color: #F4F4F4;
  border: 2px solid #F4F4F4;
  transition: all 0.3s ease;
}
.card .card__image {
  position: relative;
  display: block;
  width: 100%;
  padding: 35px 19px 32px 19px;
  background-color: #ffffff;
}
.card .card__image:before {
  content: "";
  position: absolute;
  top: 40px;
  right: 40px;
  width: 160px;
  height: 160px;
  background: url("../img/icon-dots-catalog.svg") center/contain no-repeat;
  z-index: 2;
}
.card .card__content {
  display: flex;
  flex-wrap: wrap;
  align-content: center;
  width: 100%;
  min-height: 81px;
  padding: 12px 30px;
}
.card .card__content .card__content-title {
  display: block;
  width: 100%;
  font-weight: 600;
  font-size: 23px;
  text-align: center;
  color: #202020;
}
.card .card__content .card__content-item .card__content-item__label {
  max-width: 100px;
}
.card .card__content .card__content-item .card__content-item__descr {
  max-width: calc(100% - 120px);
}
.card .card__content .card__content-item:not(:last-child) {
  margin-bottom: 6px;
}
.card .card__content .card__content-btn {
  margin-top: 14px;
}
.card:hover {
  background-color: #46A1E8;
  border-color: #46A1E8;
  box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.25);
}
.card.card-small .card__image {
  height: 280px;
  min-height: 280px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.card.card-small .card__image img {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  object-fit: contain;
}
.card.card-bigger .card__image:before {
  display: none;
}
.card.card-bigger .card__content .card__content-title {
  margin-bottom: 18px;
}
.card.card-bigger .card__content-btn .btn-blue {
  border-color: #ffffff;
}
.card.card-bigger .card__content-btn .btn-blue:hover {
  color: #ffffff;
}

/* ============================================
   БЛОК 4: ORDER-3D - SCROLL ANIMATION
   ============================================ */
.order-3d,
.block-4 {
  padding-top: 70px;
  padding-bottom: 80px;
  background-color: #F4F4F4;
  will-change: opacity, transform;
  opacity: 0;
  transform: scale(0.985);
  transition: opacity 0ms, transform 0ms;
}
.order-3d .line-wrapper:before,
.block-4 .line-wrapper:before {
  content: "";
  position: absolute;
  top: 143px;
  left: -150px;
  width: 160px;
  height: 160px;
  background: url("../img/icon-dots-white-big.svg") center/contain no-repeat;
  z-index: 2;
  will-change: transform;
}
.order-3d .line-wrapper:after,
.block-4 .line-wrapper:after {
  content: "";
  position: absolute;
  top: 120px;
  left: -48px;
  width: 96px;
  height: 96px;
  background: url("../img/icon-dots-blue.svg") center/contain no-repeat;
  z-index: 5;
  will-change: transform;
}
.order-3d .line-wrapper .title-h2,
.block-4 .line-wrapper .title-h2 {
  margin-bottom: 30px;
  will-change: opacity, transform;
  opacity: 0;
  transform: translateY(4px);
  transition: opacity 0ms, transform 0ms;
}
.order-3d .line-wrapper .order-3d__subtitle,
.block-4 .line-wrapper .order-3d__subtitle {
  padding-bottom: 75px;
  will-change: opacity, transform;
  opacity: 0;
  transform: translateY(4px);
  transition: opacity 0ms, transform 0ms;
}
.order-3d .line-wrapper .form,
.block-4 .line-wrapper .form {
  width: 100%;
  max-width: 1010px;
  margin: 0 auto;
}
.order-3d .line-wrapper .form .form-group,
.block-4 .line-wrapper .form .form-group {
  will-change: opacity, transform;
  opacity: 0;
  transform: translateY(4px);
  transition: opacity 0ms, transform 0ms;
}
.order-3d .line-wrapper .form .form-btn,
.block-4 .line-wrapper .form .form-btn {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}
.order-3d .line-wrapper .form .form-btn input,
.block-4 .line-wrapper .form .form-btn input {
  margin-right: 30px;
  will-change: opacity, transform;
  opacity: 0;
  transform: translateY(4px);
  transition: opacity 0ms, transform 0ms;
}
.order-3d .line-wrapper .form .form-btn .policy,
.block-4 .line-wrapper .form .form-btn .policy {
  will-change: opacity;
  opacity: 0;
  transition: opacity 0ms;
}
/* Анимация при появлении в viewport */
.order-3d.is-visible,
.block-4.is-visible {
  opacity: 1;
  transform: scale(1);
  transition: opacity 250ms cubic-bezier(0.22, 1, 0.36, 1), transform 250ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 0ms;
}
.order-3d.is-visible .line-wrapper .title-h2,
.order-3d.is-visible .line-wrapper .order-3d__subtitle,
.block-4.is-visible .line-wrapper .title-h2,
.block-4.is-visible .line-wrapper .order-3d__subtitle {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 400ms cubic-bezier(0.22, 1, 0.36, 1), transform 400ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 120ms;
}
.order-3d.is-visible .line-wrapper .form .form-group:nth-child(1),
.block-4.is-visible .line-wrapper .form .form-group:nth-child(1) {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 400ms cubic-bezier(0.22, 1, 0.36, 1), transform 400ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 240ms;
}
.order-3d.is-visible .line-wrapper .form .form-group:nth-child(2),
.block-4.is-visible .line-wrapper .form .form-group:nth-child(2) {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 400ms cubic-bezier(0.22, 1, 0.36, 1), transform 400ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 330ms;
}
.order-3d.is-visible .line-wrapper .form .form-group:nth-child(3),
.block-4.is-visible .line-wrapper .form .form-group:nth-child(3) {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 400ms cubic-bezier(0.22, 1, 0.36, 1), transform 400ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 420ms;
}
.order-3d.is-visible .line-wrapper .form .form-group:nth-child(n+4),
.block-4.is-visible .line-wrapper .form .form-group:nth-child(n+4) {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 400ms cubic-bezier(0.22, 1, 0.36, 1), transform 400ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 510ms;
}
.order-3d.is-visible .line-wrapper .form .form-btn input,
.block-4.is-visible .line-wrapper .form .form-btn input {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 400ms cubic-bezier(0.22, 1, 0.36, 1), transform 400ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 470ms;
}
.order-3d.is-visible .line-wrapper .form .form-btn .policy,
.block-4.is-visible .line-wrapper .form .form-btn .policy {
  opacity: 1;
  transition: opacity 300ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 550ms;
}
.order-3d.is-visible .line-wrapper:before,
.order-3d.is-visible .line-wrapper:after,
.block-4.is-visible .line-wrapper:before,
.block-4.is-visible .line-wrapper:after {
  animation: order-3d-dots-drift 16s ease-in-out infinite;
  animation-delay: 1000ms;
}
@keyframes order-3d-dots-drift {
  0%, 100% {
    transform: translate(0, 0);
  }
  50% {
    transform: translate(1px, -1px);
  }
}
@media (prefers-reduced-motion: reduce) {
  .order-3d,
  .block-4,
  .order-3d .line-wrapper .title-h2,
  .order-3d .line-wrapper .order-3d__subtitle,
  .order-3d .line-wrapper .form .form-group,
  .order-3d .line-wrapper .form .form-btn input,
  .order-3d .line-wrapper .form .form-btn .policy,
  .block-4 .line-wrapper .title-h2,
  .block-4 .line-wrapper .order-3d__subtitle,
  .block-4 .line-wrapper .form .form-group,
  .block-4 .line-wrapper .form .form-btn input,
  .block-4 .line-wrapper .form .form-btn .policy {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
    animation: none !important;
  }
}

/* ============================================
   БЛОК 5: ABOUT-COMPANY - SCROLL ANIMATION
   ============================================ */
.about-company,
.block-5 {
  padding-top: 110px;
  padding-bottom: 127px;
  will-change: opacity, transform;
  opacity: 0;
  transform: scale(0.99);
  transition: opacity 0ms, transform 0ms;
}
.about-company .line-wrapper:after,
.block-5 .line-wrapper:after {
  content: "";
  position: absolute;
  top: 80px;
  right: -48px;
  width: 96px;
  height: 96px;
  background: url("../img/icon-dots-blue-op.svg") center/contain no-repeat;
  z-index: 2;
  will-change: transform;
}
.about-company .line-wrapper .title-h2.title-h2-line:before,
.block-5 .line-wrapper .title-h2.title-h2-line:before {
  will-change: transform;
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 0ms;
}
.about-company .line-wrapper .about-company__content,
.block-5 .line-wrapper .about-company__content {
  max-width: 386px;
  will-change: opacity, transform;
  opacity: 0;
  transform: translateY(3px);
  transition: opacity 0ms, transform 0ms;
}
.about-company .line-wrapper .about-company__icons,
.block-5 .line-wrapper .about-company__icons {
  max-width: 270px;
}
.about-company .line-wrapper .about-company__icons .about-company__icons-icon,
.block-5 .line-wrapper .about-company__icons .about-company__icons-icon {
  position: relative;
  will-change: opacity, transform;
}
.about-company .line-wrapper .about-company__icons .about-company__icons-icon .about-company__icons-icon__svg,
.block-5 .line-wrapper .about-company__icons .about-company__icons-icon .about-company__icons-icon__svg {
  width: 60px;
  height: 60px;
  position: relative;
}
.about-company .line-wrapper .about-company__icons .about-company__icons-icon .about-company__icons-icon__svg:before,
.block-5 .line-wrapper .about-company__icons .about-company__icons-icon .about-company__icons-icon__svg:before {
  content: "";
  position: absolute;
  top: -10px;
  left: -6px;
  width: 21px;
  height: calc(100% + 20px);
  background-color: #46A1E8;
  z-index: 2;
  will-change: transform, opacity;
  transform: scaleY(0);
  transform-origin: top center;
  opacity: 0;
  transition: transform 0ms, opacity 0ms;
}
.about-company .line-wrapper .about-company__icons .about-company__icons-icon .about-company__icons-icon__svg img,
.block-5 .line-wrapper .about-company__icons .about-company__icons-icon .about-company__icons-icon__svg img {
  will-change: transform, opacity;
  opacity: 0;
  transform: scale(0.92);
  transition: opacity 0ms, transform 0ms;
}
.about-company .line-wrapper .about-company__icons .about-company__icons-icon .about-company__icons-icon__content,
.block-5 .line-wrapper .about-company__icons .about-company__icons-icon .about-company__icons-icon__content {
  will-change: opacity, transform;
  opacity: 0;
  transform: translateX(4px);
  transition: opacity 0ms, transform 0ms;
}
.about-company .line-wrapper .about-company__icons .about-company__icons-icon:not(:last-child),
.block-5 .line-wrapper .about-company__icons .about-company__icons-icon:not(:last-child) {
  margin-bottom: 50px;
}
.about-company .line-wrapper .about-company__image,
.block-5 .line-wrapper .about-company__image {
  max-width: 386px;
  position: relative;
  overflow: hidden;
  will-change: opacity;
}
.about-company .line-wrapper .about-company__image img,
.block-5 .line-wrapper .about-company__image img {
  opacity: 0.9;
  transition: opacity 0ms;
  will-change: opacity;
}
.about-company .line-wrapper .about-company__image:after,
.block-5 .line-wrapper .about-company__image:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #F4F4F4;
  z-index: 10;
  transform: translateY(0);
  transition: transform 0ms;
  will-change: transform;
}
/* Анимация при появлении в viewport - общая длительность ~2 секунды */
.about-company.is-visible,
.block-5.is-visible {
  opacity: 1;
  transform: scale(1);
  transition: opacity 450ms cubic-bezier(0.22, 1, 0.36, 1), transform 450ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 0ms;
}
.about-company.is-visible .line-wrapper .title-h2.title-h2-line:before,
.block-5.is-visible .line-wrapper .title-h2.title-h2-line:before {
  transform: scaleX(1);
  transition: transform 600ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 300ms;
}
.about-company.is-visible .line-wrapper .about-company__content,
.block-5.is-visible .line-wrapper .about-company__content {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 750ms cubic-bezier(0.22, 1, 0.36, 1), transform 750ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 450ms;
}
.about-company.is-visible .line-wrapper .about-company__icons .about-company__icons-icon:nth-child(1),
.block-5.is-visible .line-wrapper .about-company__icons .about-company__icons-icon:nth-child(1) {
  transition-delay: 750ms;
}
.about-company.is-visible .line-wrapper .about-company__icons .about-company__icons-icon:nth-child(2),
.block-5.is-visible .line-wrapper .about-company__icons .about-company__icons-icon:nth-child(2) {
  transition-delay: 885ms;
}
.about-company.is-visible .line-wrapper .about-company__icons .about-company__icons-icon:nth-child(3),
.block-5.is-visible .line-wrapper .about-company__icons .about-company__icons-icon:nth-child(3) {
  transition-delay: 1020ms;
}
.about-company.is-visible .line-wrapper .about-company__icons .about-company__icons-icon:nth-child(4),
.block-5.is-visible .line-wrapper .about-company__icons .about-company__icons-icon:nth-child(4) {
  transition-delay: 1155ms;
}
.about-company.is-visible .line-wrapper .about-company__icons .about-company__icons-icon:nth-child(5),
.block-5.is-visible .line-wrapper .about-company__icons .about-company__icons-icon:nth-child(5) {
  transition-delay: 1290ms;
}
.about-company.is-visible .line-wrapper .about-company__icons .about-company__icons-icon:nth-child(n+6),
.block-5.is-visible .line-wrapper .about-company__icons .about-company__icons-icon:nth-child(n+6) {
  transition-delay: 1425ms;
}
.about-company.is-visible .line-wrapper .about-company__icons .about-company__icons-icon .about-company__icons-icon__svg:before,
.block-5.is-visible .line-wrapper .about-company__icons .about-company__icons-icon .about-company__icons-icon__svg:before {
  transform: scaleY(1);
  opacity: 1;
  transition: transform 450ms cubic-bezier(0.22, 1, 0.36, 1), opacity 450ms cubic-bezier(0.22, 1, 0.36, 1);
}
.about-company.is-visible .line-wrapper .about-company__icons .about-company__icons-icon .about-company__icons-icon__content,
.block-5.is-visible .line-wrapper .about-company__icons .about-company__icons-icon .about-company__icons-icon__content {
  opacity: 1;
  transform: translateX(0);
  transition: opacity 600ms cubic-bezier(0.22, 1, 0.36, 1), transform 600ms cubic-bezier(0.22, 1, 0.36, 1);
}
.about-company.is-visible .line-wrapper .about-company__icons .about-company__icons-icon:nth-child(1) .about-company__icons-icon__svg img,
.block-5.is-visible .line-wrapper .about-company__icons .about-company__icons-icon:nth-child(1) .about-company__icons-icon__svg img {
  opacity: 1;
  transform: scale(1);
  transition: opacity 450ms cubic-bezier(0.22, 1, 0.36, 1), transform 450ms cubic-bezier(0.34, 1.56, 0.64, 1);
  transition-delay: 900ms;
}
.about-company.is-visible .line-wrapper .about-company__icons .about-company__icons-icon:nth-child(2) .about-company__icons-icon__svg img,
.block-5.is-visible .line-wrapper .about-company__icons .about-company__icons-icon:nth-child(2) .about-company__icons-icon__svg img {
  opacity: 1;
  transform: scale(1);
  transition: opacity 450ms cubic-bezier(0.22, 1, 0.36, 1), transform 450ms cubic-bezier(0.34, 1.56, 0.64, 1);
  transition-delay: 1035ms;
}
.about-company.is-visible .line-wrapper .about-company__icons .about-company__icons-icon:nth-child(3) .about-company__icons-icon__svg img,
.block-5.is-visible .line-wrapper .about-company__icons .about-company__icons-icon:nth-child(3) .about-company__icons-icon__svg img {
  opacity: 1;
  transform: scale(1);
  transition: opacity 450ms cubic-bezier(0.22, 1, 0.36, 1), transform 450ms cubic-bezier(0.34, 1.56, 0.64, 1);
  transition-delay: 1170ms;
}
.about-company.is-visible .line-wrapper .about-company__icons .about-company__icons-icon:nth-child(4) .about-company__icons-icon__svg img,
.block-5.is-visible .line-wrapper .about-company__icons .about-company__icons-icon:nth-child(4) .about-company__icons-icon__svg img {
  opacity: 1;
  transform: scale(1);
  transition: opacity 450ms cubic-bezier(0.22, 1, 0.36, 1), transform 450ms cubic-bezier(0.34, 1.56, 0.64, 1);
  transition-delay: 1305ms;
}
.about-company.is-visible .line-wrapper .about-company__icons .about-company__icons-icon:nth-child(5) .about-company__icons-icon__svg img,
.block-5.is-visible .line-wrapper .about-company__icons .about-company__icons-icon:nth-child(5) .about-company__icons-icon__svg img {
  opacity: 1;
  transform: scale(1);
  transition: opacity 450ms cubic-bezier(0.22, 1, 0.36, 1), transform 450ms cubic-bezier(0.34, 1.56, 0.64, 1);
  transition-delay: 1440ms;
}
.about-company.is-visible .line-wrapper .about-company__icons .about-company__icons-icon:nth-child(n+6) .about-company__icons-icon__svg img,
.block-5.is-visible .line-wrapper .about-company__icons .about-company__icons-icon:nth-child(n+6) .about-company__icons-icon__svg img {
  opacity: 1;
  transform: scale(1);
  transition: opacity 450ms cubic-bezier(0.22, 1, 0.36, 1), transform 450ms cubic-bezier(0.34, 1.56, 0.64, 1);
  transition-delay: 1575ms;
}
.about-company.is-visible .line-wrapper .about-company__image:after,
.block-5.is-visible .line-wrapper .about-company__image:after {
  transform: translateY(100%);
  transition: transform 900ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition-delay: 900ms;
}
.about-company.is-visible .line-wrapper .about-company__image img,
.block-5.is-visible .line-wrapper .about-company__image img {
  opacity: 1;
  transition: opacity 750ms ease-out;
  transition-delay: 1200ms;
}
.about-company.is-visible .line-wrapper:after,
.block-5.is-visible .line-wrapper:after {
  animation: about-company-dots-drift 14s ease-in-out infinite;
  animation-delay: 2250ms;
}
@keyframes about-company-dots-drift {
  0%, 100% {
    transform: translate(0, 0);
  }
  50% {
    transform: translate(1px, -1px);
  }
}
@media (prefers-reduced-motion: reduce) {
  .about-company,
  .block-5,
  .about-company .line-wrapper .title-h2.title-h2-line:before,
  .about-company .line-wrapper .about-company__content,
  .about-company .line-wrapper .about-company__icons .about-company__icons-icon,
  .about-company .line-wrapper .about-company__icons .about-company__icons-icon .about-company__icons-icon__svg:before,
  .about-company .line-wrapper .about-company__icons .about-company__icons-icon .about-company__icons-icon__svg img,
  .about-company .line-wrapper .about-company__icons .about-company__icons-icon .about-company__icons-icon__content,
  .about-company .line-wrapper .about-company__image img,
  .block-5 .line-wrapper .title-h2.title-h2-line:before,
  .block-5 .line-wrapper .about-company__content,
  .block-5 .line-wrapper .about-company__icons .about-company__icons-icon,
  .block-5 .line-wrapper .about-company__icons .about-company__icons-icon .about-company__icons-icon__svg:before,
  .block-5 .line-wrapper .about-company__icons .about-company__icons-icon .about-company__icons-icon__svg img,
  .block-5 .line-wrapper .about-company__icons .about-company__icons-icon .about-company__icons-icon__content,
  .block-5 .line-wrapper .about-company__image img {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
    animation: none !important;
  }
  .about-company .line-wrapper .about-company__image:after,
  .block-5 .line-wrapper .about-company__image:after {
    display: none !important;
  }
}

/* ============================================
   БЛОК 6: PROJECT - SCROLL ANIMATION
   ============================================ */
.project,
.block-6 {
  padding-top: 90px;
  background-color: #F4F4F4;
  will-change: opacity, transform;
  opacity: 0;
  transform: scale(0.99);
  transition: opacity 0ms, transform 0ms;
}
.project:before,
.block-6:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 737px;
  max-width: 42%;
  height: 100%;
  background-color: #46A1E8;
  z-index: 2;
  will-change: transform, opacity;
  transform: scaleX(0.97);
  opacity: 0;
  transform-origin: right center;
  transition: transform 0ms, opacity 0ms;
}
.project .line-wrapper .title-h2.title-h2-line:before,
.block-6 .line-wrapper .title-h2.title-h2-line:before {
  will-change: transform;
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 0ms;
}
.project .line-wrapper .title-h2 h2,
.block-6 .line-wrapper .title-h2 h2 {
  will-change: opacity;
  opacity: 0;
  transition: opacity 0ms;
}
.project .line-wrapper .project-content,
.block-6 .line-wrapper .project-content {
  max-width: 420px;
  will-change: opacity, transform;
  opacity: 0;
  transform: translateY(4px);
  transition: opacity 0ms, transform 0ms;
}
.project .line-wrapper .project-content .project-content__items {
  margin-bottom: 90px;
}
.project .line-wrapper .project-content .project-content__items .project-content__item:not(:last-child) {
  margin-bottom: 12px;
}
.project .line-wrapper .project-content .project-content__items.has-descr {
  margin-bottom: 0;
}
.project .line-wrapper .project-content .project-content__descr {
  margin-top: 0;
}
.project .line-wrapper .project-content .project-content__descr p {
  margin-bottom: 12px;
}
.project .line-wrapper .project-content .project-content__descr p:last-child {
  margin-bottom: 0;
}
.project .line-wrapper .project-content .project-content__btn .btn-blue {
  min-width: 264px;
  font-weight: 600;
}
.project .line-wrapper .project-sliders,
.block-6 .line-wrapper .project-sliders {
  width: 594px;
  position: relative;
}
.project .line-wrapper .project-sliders:after,
.block-6 .line-wrapper .project-sliders:after {
  content: "";
  position: absolute;
  top: -37px;
  right: -58px;
  width: 160px;
  height: 160px;
  background: url("../img/icon-dots-white-big.svg") center/contain no-repeat;
  z-index: 2;
  will-change: transform;
}
.project .line-wrapper .project-sliders:before,
.block-6 .line-wrapper .project-sliders:before {
  content: "";
  position: absolute;
  bottom: 310px;
  left: -166px;
  width: 96px;
  height: 96px;
  background: url("../img/icon-dots-blue.svg") center/contain no-repeat;
  z-index: 2;
  will-change: transform;
}
.project .line-wrapper .project-sliders .project-slider,
.block-6 .line-wrapper .project-sliders .project-slider {
  height: 630px;
  position: relative;
  overflow: hidden;
  will-change: opacity, transform;
}
.project .line-wrapper .project-sliders .project-slider .project-slide,
.block-6 .line-wrapper .project-sliders .project-slider .project-slide {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: all 0.3s ease;
}
.project .line-wrapper .project-sliders .project-slider .project-slide:after,
.block-6 .line-wrapper .project-sliders .project-slider .project-slide:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #F4F4F4;
  z-index: 10;
  transform: translateY(0);
  transition: transform 0ms;
  will-change: transform;
}
.project .line-wrapper .project-sliders .project-slider .project-slide img,
.block-6 .line-wrapper .project-sliders .project-slider .project-slide img {
  opacity: 0.99;
  transform: scale(0.99);
  transition: opacity 0ms, transform 0ms;
  will-change: opacity, transform;
}
.project .line-wrapper .project-sliders .project-slider .project-slide.project-slide-active,
.block-6 .line-wrapper .project-sliders .project-slider .project-slide.project-slide-active {
  opacity: 1;
}
.project .line-wrapper .project-sliders .project-slider__navigation,
.block-6 .line-wrapper .project-sliders .project-slider__navigation {
  will-change: opacity, transform;
  opacity: 0;
  transform: translateY(2px);
  transition: opacity 0ms, transform 0ms;
}
.project .line-wrapper .project-sliders .project-slider__navigation .project-slider__navigation-arrows {
  width: 210px;
  height: 120px;
  background-color: #202020;
}
.project .line-wrapper .project-sliders .project-slider__navigation .project-slider__navigation-arrows .project-slider__navigation-arrow {
  position: relative;
  display: block;
  width: 14px;
  height: 14px;
  border-top: 2px solid #ffffff;
  border-right: 2px solid #ffffff;
}
.project .line-wrapper .project-sliders .project-slider__navigation .project-slider__navigation-arrows .project-slider__navigation-arrow.project-slider__navigation-arrows__prev {
  transform: rotate(-135deg);
}
.project .line-wrapper .project-sliders .project-slider__navigation .project-slider__navigation-arrows .project-slider__navigation-arrow.project-slider__navigation-arrows__next {
  transform: rotate(45deg);
}
.project .line-wrapper .project-sliders .project-slider__navigation .project-slider__navigation-arrows .project-slider__navigation-arrows__line {
  display: block;
  width: 2px;
  height: 35px;
  margin: 0 25px;
  background-color: #ffffff;
}
.project .line-wrapper .project-sliders .project-slider__navigation .project-slider__navigation-dots {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  max-width: max-content;
  padding-left: 65px;
}
.project .line-wrapper .project-sliders .project-slider__navigation .project-slider__navigation-dots .project-slider__navigation-dot {
  display: block;
  width: 9px;
  height: 9px;
  background-color: #ffffff;
}
.project .line-wrapper .project-sliders .project-slider__navigation .project-slider__navigation-dots .project-slider__navigation-dot.project-slider__navigation-dot-active {
  width: 17px;
  height: 17px;
  background-color: #202020;
}
.project .line-wrapper .project-sliders .project-slider__navigation .project-slider__navigation-dots .project-slider__navigation-dot:not(:last-child) {
  margin-right: 18px;
}
/* Анимация при появлении в viewport */
.project.is-visible,
.block-6.is-visible {
  opacity: 1;
  transform: scale(1);
  transition: opacity 400ms cubic-bezier(0.22, 1, 0.36, 1), transform 400ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 0ms;
}
.project.is-visible:before,
.block-6.is-visible:before {
  transform: scaleX(1);
  opacity: 1;
  transition: transform 600ms cubic-bezier(0.22, 1, 0.36, 1), opacity 600ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 200ms;
}
.project.is-visible .line-wrapper .title-h2.title-h2-line:before,
.block-6.is-visible .line-wrapper .title-h2.title-h2-line:before {
  transform: scaleX(1);
  transition: transform 500ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 400ms;
}
.project.is-visible .line-wrapper .title-h2 h2,
.block-6.is-visible .line-wrapper .title-h2 h2 {
  opacity: 1;
  transition: opacity 500ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 400ms;
}
.project.is-visible .line-wrapper .project-content,
.block-6.is-visible .line-wrapper .project-content {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 600ms cubic-bezier(0.22, 1, 0.36, 1), transform 600ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 600ms;
}
.project.is-visible .line-wrapper .project-sliders .project-slider .project-slide.project-slide-active:after,
.block-6.is-visible .line-wrapper .project-sliders .project-slider .project-slide.project-slide-active:after {
  transform: translateY(100%);
  transition: transform 700ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition-delay: 800ms;
}
.project.is-visible .line-wrapper .project-sliders .project-slider .project-slide.project-slide-active img,
.block-6.is-visible .line-wrapper .project-sliders .project-slider .project-slide.project-slide-active img {
  opacity: 1;
  transform: scale(1);
  transition: opacity 600ms ease-out, transform 600ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 1000ms;
}
.project.is-visible .line-wrapper .project-sliders .project-slider__navigation,
.block-6.is-visible .line-wrapper .project-sliders .project-slider__navigation {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 500ms cubic-bezier(0.22, 1, 0.36, 1), transform 500ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 1200ms;
}
.project.is-visible .line-wrapper .project-sliders:after,
.project.is-visible .line-wrapper .project-sliders:before,
.block-6.is-visible .line-wrapper .project-sliders:after,
.block-6.is-visible .line-wrapper .project-sliders:before {
  animation: project-dots-drift 16s ease-in-out infinite;
  animation-delay: 2000ms;
}
@keyframes project-dots-drift {
  0%, 100% {
    transform: translate(0, 0);
  }
  50% {
    transform: translate(1px, -1px);
  }
}
@media (prefers-reduced-motion: reduce) {
  .project,
  .block-6,
  .project:before,
  .project .line-wrapper .title-h2.title-h2-line:before,
  .project .line-wrapper .title-h2 h2,
  .project .line-wrapper .project-content,
  .project .line-wrapper .project-sliders .project-slider .project-slide:after,
  .project .line-wrapper .project-sliders .project-slider .project-slide img,
  .project .line-wrapper .project-sliders .project-slider__navigation,
  .block-6:before,
  .block-6 .line-wrapper .title-h2.title-h2-line:before,
  .block-6 .line-wrapper .title-h2 h2,
  .block-6 .line-wrapper .project-content,
  .block-6 .line-wrapper .project-sliders .project-slider .project-slide:after,
  .block-6 .line-wrapper .project-sliders .project-slider .project-slide img,
  .block-6 .line-wrapper .project-sliders .project-slider__navigation {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
    animation: none !important;
  }
  .project .line-wrapper .project-sliders .project-slider .project-slide:after,
  .block-6 .line-wrapper .project-sliders .project-slider .project-slide:after {
    display: none !important;
  }
}
.project .line-wrapper .works-slider-wrapper {
  width: 100%;
  position: relative;
}
.project .line-wrapper .works-slider-wrapper .works-slider {
  position: relative;
}
.project .line-wrapper .works-slider-wrapper .works-slider .work-slide {
  display: none;
  width: 100%;
}
.project .line-wrapper .works-slider-wrapper .works-slider .work-slide.work-slide-active {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 60px;
}
.project .line-wrapper .works-slider-wrapper .works-slider-arrow {
  top: 50%;
  transform: translateY(-50%);
  width: auto;
  height: auto;
  background: none;
  border: none;
  cursor: pointer;
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: center;
}
.project .line-wrapper .works-slider-wrapper .works-slider-arrow svg {
  width: 48px;
  height: 80px;
  animation: pulse-arrow 2s ease-in-out infinite;
}
.project .line-wrapper .works-slider-wrapper .works-slider-arrow svg path {
  transition: all 0.3s ease;
  stroke: #46A1E8;
}
.project .line-wrapper .works-slider-wrapper .works-slider-arrow:hover svg {
  animation: none;
  transform: scale(1.2);
}
.project .line-wrapper .works-slider-wrapper .works-slider-arrow:hover svg path {
  stroke: #2A7DBE;
  stroke-width: 4;
}
.project .line-wrapper .works-slider-wrapper .works-slider-arrow.works-slider-arrow-prev {
  left: -80px;
}
.project .line-wrapper .works-slider-wrapper .works-slider-arrow.works-slider-arrow-next {
  right: -80px;
}
.project .line-wrapper .works-slider-wrapper .works-slider-arrow.works-slider-arrow-next svg path {
  stroke: #ffffff;
}
.project .line-wrapper .works-slider-wrapper .works-slider-arrow.works-slider-arrow-next:hover svg path {
  stroke: #ffffff;
  stroke-width: 4;
  opacity: 0.9;
}
@keyframes pulse-arrow {
  0%, 100% {
    opacity: 1;
    transform: scale(1);
  }
  50% {
    opacity: 0.7;
    transform: scale(1.1);
  }
}

/* ============================================
   БЛОК 7: ABOUT-STAIRS - SCROLL ANIMATION
   ============================================ */
.about-stairs,
.block-7 {
  padding-top: 110px;
  padding-bottom: 110px;
  will-change: opacity, transform;
  opacity: 0;
  transform: scale(0.985);
  transition: opacity 0ms, transform 0ms;
}
.about-stairs .line-wrapper .title-h2.title-h2-line:before,
.block-7 .line-wrapper .title-h2.title-h2-line:before {
  will-change: transform;
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 0ms;
}
.about-stairs .line-wrapper .title-h2 h2,
.block-7 .line-wrapper .title-h2 h2 {
  will-change: opacity;
  opacity: 0;
  transition: opacity 0ms;
}
.about-stairs .line-wrapper .about-stairs__image,
.block-7 .line-wrapper .about-stairs__image {
  max-width: 553px;
  margin-top: 10px;
  position: relative;
  will-change: opacity, transform;
}
.about-stairs .line-wrapper .about-stairs__image img,
.block-7 .line-wrapper .about-stairs__image img {
  opacity: 0;
  transform: scale(0.99);
  transition: opacity 0ms, transform 0ms;
  will-change: opacity, transform;
}
.about-stairs .line-wrapper .about-stairs__image:before,
.block-7 .line-wrapper .about-stairs__image:before {
  content: "";
  position: absolute;
  bottom: -38px;
  left: 180px;
  width: 160px;
  height: 160px;
  background: url("../img/icon-dots-gray-big.svg") center/contain no-repeat;
  z-index: 5;
  will-change: transform;
}
.about-stairs .line-wrapper .about-stairs__image:after,
.block-7 .line-wrapper .about-stairs__image:after {
  content: "";
  position: absolute;
  bottom: -98px;
  left: 318px;
  width: 96px;
  height: 96px;
  background: url("../img/icon-dots-blue.svg") center/contain no-repeat;
  z-index: 5;
  will-change: transform;
}
.about-stairs .line-wrapper .about-stairs__content,
.block-7 .line-wrapper .about-stairs__content {
  max-width: 530px;
  will-change: opacity;
}
.about-stairs .line-wrapper .about-stairs__content .about-stairs__content-item,
.block-7 .line-wrapper .about-stairs__content .about-stairs__content-item {
  will-change: opacity, transform;
  opacity: 0;
  transform: translateY(2px);
  transition: opacity 0ms, transform 0ms;
}
.about-stairs .line-wrapper .about-stairs__content .about-stairs__content-item:not(:last-child),
.block-7 .line-wrapper .about-stairs__content .about-stairs__content-item:not(:last-child) {
  margin-bottom: 40px;
}
/* Анимация при появлении в viewport - общая длительность ~2 секунды */
.about-stairs.is-visible,
.block-7.is-visible {
  opacity: 1;
  transform: scale(1);
  transition: opacity 600ms cubic-bezier(0.22, 1, 0.36, 1), transform 600ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 0ms;
}
.about-stairs.is-visible .line-wrapper .title-h2.title-h2-line:before,
.block-7.is-visible .line-wrapper .title-h2.title-h2-line:before {
  transform: scaleX(1);
  transition: transform 750ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 300ms;
}
.about-stairs.is-visible .line-wrapper .title-h2 h2,
.block-7.is-visible .line-wrapper .title-h2 h2 {
  opacity: 1;
  transition: opacity 750ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 300ms;
}
.about-stairs.is-visible .line-wrapper .about-stairs__image img,
.block-7.is-visible .line-wrapper .about-stairs__image img {
  opacity: 1;
  transform: scale(1);
  transition: opacity 900ms cubic-bezier(0.22, 1, 0.36, 1), transform 900ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 450ms;
}
.about-stairs.is-visible .line-wrapper .about-stairs__content .about-stairs__content-item:nth-child(1),
.block-7.is-visible .line-wrapper .about-stairs__content .about-stairs__content-item:nth-child(1) {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 750ms cubic-bezier(0.22, 1, 0.36, 1), transform 750ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 900ms;
}
.about-stairs.is-visible .line-wrapper .about-stairs__content .about-stairs__content-item:nth-child(2),
.block-7.is-visible .line-wrapper .about-stairs__content .about-stairs__content-item:nth-child(2) {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 750ms cubic-bezier(0.22, 1, 0.36, 1), transform 750ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 1050ms;
}
.about-stairs.is-visible .line-wrapper .about-stairs__content .about-stairs__content-item:nth-child(3),
.block-7.is-visible .line-wrapper .about-stairs__content .about-stairs__content-item:nth-child(3) {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 750ms cubic-bezier(0.22, 1, 0.36, 1), transform 750ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 1200ms;
}
.about-stairs.is-visible .line-wrapper .about-stairs__content .about-stairs__content-item:nth-child(4),
.block-7.is-visible .line-wrapper .about-stairs__content .about-stairs__content-item:nth-child(4) {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 750ms cubic-bezier(0.22, 1, 0.36, 1), transform 750ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 1350ms;
}
.about-stairs.is-visible .line-wrapper .about-stairs__content .about-stairs__content-item:nth-child(5),
.block-7.is-visible .line-wrapper .about-stairs__content .about-stairs__content-item:nth-child(5) {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 750ms cubic-bezier(0.22, 1, 0.36, 1), transform 750ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 1500ms;
}
.about-stairs.is-visible .line-wrapper .about-stairs__content .about-stairs__content-item:nth-child(n+6),
.block-7.is-visible .line-wrapper .about-stairs__content .about-stairs__content-item:nth-child(n+6) {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 750ms cubic-bezier(0.22, 1, 0.36, 1), transform 750ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 1650ms;
}
.about-stairs.is-visible .line-wrapper .about-stairs__image:before,
.about-stairs.is-visible .line-wrapper .about-stairs__image:after,
.block-7.is-visible .line-wrapper .about-stairs__image:before,
.block-7.is-visible .line-wrapper .about-stairs__image:after {
  animation: about-stairs-dots-drift 16s ease-in-out infinite;
  animation-delay: 2250ms;
}
@keyframes about-stairs-dots-drift {
  0%, 100% {
    transform: translate(0, 0);
  }
  50% {
    transform: translate(1px, -1px);
  }
}
@media (prefers-reduced-motion: reduce) {
  .about-stairs,
  .block-7,
  .about-stairs .line-wrapper .title-h2.title-h2-line:before,
  .about-stairs .line-wrapper .title-h2 h2,
  .about-stairs .line-wrapper .about-stairs__image img,
  .about-stairs .line-wrapper .about-stairs__content .about-stairs__content-item,
  .block-7 .line-wrapper .title-h2.title-h2-line:before,
  .block-7 .line-wrapper .title-h2 h2,
  .block-7 .line-wrapper .about-stairs__image img,
  .block-7 .line-wrapper .about-stairs__content .about-stairs__content-item {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
    animation: none !important;
  }
}

/* ============================================
   БЛОК 8: HOW-WORKED - SCROLL ANIMATION
   ============================================ */
.how-worked,
.block-8 {
  padding-top: 110px;
  padding-bottom: 130px;
  will-change: opacity, transform;
  opacity: 0;
  transform: scale(0.985);
  transition: opacity 0ms, transform 0ms;
}
.how-worked:before,
.block-8:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 737px;
  max-width: 42%;
  height: 100%;
  background-color: #46A1E8;
  z-index: 1;
  will-change: opacity;
  opacity: 0;
  transition: opacity 0ms;
}
.how-worked .line-wrapper .title-h2.title-h2-line:before,
.block-8 .line-wrapper .title-h2.title-h2-line:before {
  will-change: transform;
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 0ms;
}
.how-worked .line-wrapper .title-h2 h2,
.block-8 .line-wrapper .title-h2 h2 {
  will-change: opacity;
  opacity: 0;
  transition: opacity 0ms;
}
.how-worked .line-wrapper .how-worked__items:after,
.block-8 .line-wrapper .how-worked__items:after {
  content: "";
  position: absolute;
  top: -49px;
  right: -48px;
  width: 96px;
  height: 96px;
  background: url("../img/icon-dots-white.svg") center/contain no-repeat;
  z-index: 2;
  will-change: transform;
}
.how-worked .line-wrapper .how-worked__items .how-worked__item,
.block-8 .line-wrapper .how-worked__items .how-worked__item {
  max-width: 25%;
  padding: 40px 30px;
  background-color: #ffffff;
  border: 1px solid #F4F4F4;
  will-change: opacity, transform;
  opacity: 0;
  transform: translateY(4px);
  transition: opacity 0ms, transform 0ms;
}
.how-worked .line-wrapper .how-worked__items .how-worked__item .how-worked__item-num,
.block-8 .line-wrapper .how-worked__items .how-worked__item .how-worked__item-num {
  width: 40px;
  position: relative;
  will-change: transform, opacity;
}
.how-worked .line-wrapper .how-worked__items .how-worked__item .how-worked__item-num:before,
.block-8 .line-wrapper .how-worked__items .how-worked__item .how-worked__item-num:before {
  content: "";
  position: absolute;
  top: -15px;
  left: -7px;
  width: 25px;
  height: calc(100% + 30px);
  background-color: #46A1E8;
  z-index: 1;
  will-change: transform, opacity;
  transform: scaleY(0);
  transform-origin: top center;
  opacity: 0;
  transition: transform 0ms, opacity 0ms;
}
.how-worked .line-wrapper .how-worked__items .how-worked__item .how-worked__item-num span,
.block-8 .line-wrapper .how-worked__items .how-worked__item .how-worked__item-num span {
  font-size: 36px;
  position: relative;
  z-index: 5;
  will-change: transform, opacity;
  opacity: 0;
  transform: scale(0.92);
  transition: opacity 0ms, transform 0ms;
}
.how-worked .line-wrapper .how-worked__items .how-worked__item .how-worked__item-content,
.block-8 .line-wrapper .how-worked__items .how-worked__item .how-worked__item-content {
  width: calc(100% - 66px);
  will-change: opacity;
  opacity: 0;
  transition: opacity 0ms;
}
.how-worked .line-wrapper .how-worked__items .how-worked__item .how-worked__item-content .how-worked__item-content__descr,
.block-8 .line-wrapper .how-worked__items .how-worked__item .how-worked__item-content .how-worked__item-content__descr {
  line-height: 1.5;
}
/* Анимация при появлении в viewport */
.how-worked.is-visible,
.block-8.is-visible {
  opacity: 1;
  transform: scale(1);
  transition: opacity 400ms cubic-bezier(0.22, 1, 0.36, 1), transform 400ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 0ms;
}
.how-worked.is-visible:before,
.block-8.is-visible:before {
  opacity: 1;
  transition: opacity 600ms ease-out;
  transition-delay: 200ms;
}
.how-worked.is-visible .line-wrapper .title-h2.title-h2-line:before,
.block-8.is-visible .line-wrapper .title-h2.title-h2-line:before {
  transform: scaleX(1);
  transition: transform 500ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 200ms;
}
.how-worked.is-visible .line-wrapper .title-h2 h2,
.block-8.is-visible .line-wrapper .title-h2 h2 {
  opacity: 1;
  transition: opacity 500ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 200ms;
}
.how-worked.is-visible .line-wrapper .how-worked__items .how-worked__item,
.block-8.is-visible .line-wrapper .how-worked__items .how-worked__item {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 600ms cubic-bezier(0.22, 1, 0.36, 1), transform 600ms cubic-bezier(0.22, 1, 0.36, 1);
}
.how-worked.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(1),
.block-8.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(1) {
  transition-delay: 400ms;
}
.how-worked.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(2),
.block-8.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(2) {
  transition-delay: 530ms;
}
.how-worked.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(3),
.block-8.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(3) {
  transition-delay: 660ms;
}
.how-worked.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(4),
.block-8.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(4) {
  transition-delay: 790ms;
}
.how-worked.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(n+5),
.block-8.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(n+5) {
  transition-delay: 920ms;
}
.how-worked.is-visible .line-wrapper .how-worked__items .how-worked__item .how-worked__item-content,
.block-8.is-visible .line-wrapper .how-worked__items .how-worked__item .how-worked__item-content {
  opacity: 1;
  transition: opacity 600ms cubic-bezier(0.22, 1, 0.36, 1);
}
.how-worked.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(1) .how-worked__item-content,
.block-8.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(1) .how-worked__item-content {
  transition-delay: 400ms;
}
.how-worked.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(2) .how-worked__item-content,
.block-8.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(2) .how-worked__item-content {
  transition-delay: 530ms;
}
.how-worked.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(3) .how-worked__item-content,
.block-8.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(3) .how-worked__item-content {
  transition-delay: 660ms;
}
.how-worked.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(4) .how-worked__item-content,
.block-8.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(4) .how-worked__item-content {
  transition-delay: 790ms;
}
.how-worked.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(n+5) .how-worked__item-content,
.block-8.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(n+5) .how-worked__item-content {
  transition-delay: 920ms;
}
.how-worked.is-visible .line-wrapper .how-worked__items .how-worked__item .how-worked__item-num:before,
.block-8.is-visible .line-wrapper .how-worked__items .how-worked__item .how-worked__item-num:before {
  transform: scaleY(1);
  opacity: 1;
  transition: transform 300ms cubic-bezier(0.22, 1, 0.36, 1), opacity 300ms cubic-bezier(0.22, 1, 0.36, 1);
}
.how-worked.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(1) .how-worked__item-num:before,
.block-8.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(1) .how-worked__item-num:before {
  transition-delay: 400ms;
}
.how-worked.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(2) .how-worked__item-num:before,
.block-8.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(2) .how-worked__item-num:before {
  transition-delay: 530ms;
}
.how-worked.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(3) .how-worked__item-num:before,
.block-8.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(3) .how-worked__item-num:before {
  transition-delay: 660ms;
}
.how-worked.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(4) .how-worked__item-num:before,
.block-8.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(4) .how-worked__item-num:before {
  transition-delay: 790ms;
}
.how-worked.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(n+5) .how-worked__item-num:before,
.block-8.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(n+5) .how-worked__item-num:before {
  transition-delay: 920ms;
}
.how-worked.is-visible .line-wrapper .how-worked__items .how-worked__item .how-worked__item-num span,
.block-8.is-visible .line-wrapper .how-worked__items .how-worked__item .how-worked__item-num span {
  opacity: 1;
  transform: scale(1);
  transition: opacity 300ms cubic-bezier(0.22, 1, 0.36, 1), transform 300ms cubic-bezier(0.34, 1.56, 0.64, 1);
}
.how-worked.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(1) .how-worked__item-num:before,
.block-8.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(1) .how-worked__item-num:before {
  transition-delay: 400ms;
}
.how-worked.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(2) .how-worked__item-num:before,
.block-8.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(2) .how-worked__item-num:before {
  transition-delay: 530ms;
}
.how-worked.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(3) .how-worked__item-num:before,
.block-8.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(3) .how-worked__item-num:before {
  transition-delay: 660ms;
}
.how-worked.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(4) .how-worked__item-num:before,
.block-8.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(4) .how-worked__item-num:before {
  transition-delay: 790ms;
}
.how-worked.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(n+5) .how-worked__item-num:before,
.block-8.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(n+5) .how-worked__item-num:before {
  transition-delay: 920ms;
}
.how-worked.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(1) .how-worked__item-num span,
.block-8.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(1) .how-worked__item-num span {
  opacity: 1;
  transform: scale(1);
  transition: opacity 300ms cubic-bezier(0.22, 1, 0.36, 1), transform 300ms cubic-bezier(0.34, 1.56, 0.64, 1);
  transition-delay: 500ms;
}
.how-worked.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(2) .how-worked__item-num span,
.block-8.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(2) .how-worked__item-num span {
  opacity: 1;
  transform: scale(1);
  transition: opacity 300ms cubic-bezier(0.22, 1, 0.36, 1), transform 300ms cubic-bezier(0.34, 1.56, 0.64, 1);
  transition-delay: 630ms;
}
.how-worked.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(3) .how-worked__item-num span,
.block-8.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(3) .how-worked__item-num span {
  opacity: 1;
  transform: scale(1);
  transition: opacity 300ms cubic-bezier(0.22, 1, 0.36, 1), transform 300ms cubic-bezier(0.34, 1.56, 0.64, 1);
  transition-delay: 760ms;
}
.how-worked.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(4) .how-worked__item-num span,
.block-8.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(4) .how-worked__item-num span {
  opacity: 1;
  transform: scale(1);
  transition: opacity 300ms cubic-bezier(0.22, 1, 0.36, 1), transform 300ms cubic-bezier(0.34, 1.56, 0.64, 1);
  transition-delay: 890ms;
}
.how-worked.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(n+5) .how-worked__item-num span,
.block-8.is-visible .line-wrapper .how-worked__items .how-worked__item:nth-child(n+5) .how-worked__item-num span {
  opacity: 1;
  transform: scale(1);
  transition: opacity 300ms cubic-bezier(0.22, 1, 0.36, 1), transform 300ms cubic-bezier(0.34, 1.56, 0.64, 1);
  transition-delay: 1020ms;
}
.how-worked.is-visible .line-wrapper .how-worked__items:after,
.block-8.is-visible .line-wrapper .how-worked__items:after {
  animation: how-worked-dots-drift 16s ease-in-out infinite;
  animation-delay: 1500ms;
}
@keyframes how-worked-dots-drift {
  0%, 100% {
    transform: translate(0, 0);
  }
  50% {
    transform: translate(1px, -1px);
  }
}
@media (prefers-reduced-motion: reduce) {
  .how-worked,
  .block-8,
  .how-worked:before,
  .how-worked .line-wrapper .title-h2.title-h2-line:before,
  .how-worked .line-wrapper .title-h2 h2,
  .how-worked .line-wrapper .how-worked__items .how-worked__item,
  .how-worked .line-wrapper .how-worked__items .how-worked__item .how-worked__item-num:before,
  .how-worked .line-wrapper .how-worked__items .how-worked__item .how-worked__item-num span,
  .how-worked .line-wrapper .how-worked__items .how-worked__item .how-worked__item-content,
  .block-8:before,
  .block-8 .line-wrapper .title-h2.title-h2-line:before,
  .block-8 .line-wrapper .title-h2 h2,
  .block-8 .line-wrapper .how-worked__items .how-worked__item,
  .block-8 .line-wrapper .how-worked__items .how-worked__item .how-worked__item-num:before,
  .block-8 .line-wrapper .how-worked__items .how-worked__item .how-worked__item-num span,
  .block-8 .line-wrapper .how-worked__items .how-worked__item .how-worked__item-content {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
    animation: none !important;
  }
}

.question {
  padding-top: 110px;
  padding-bottom: 110px;
}
.question .line-wrapper .question-map {
  max-width: 725px;
  height: 560px;
  margin-left: -130px;
  border: 8px solid #46A1E8;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
@media (max-width: 1500px) {
  .question .line-wrapper .question-map {
    margin-left: 0;
  }
}
.question .line-wrapper .question-map .question-tabs {
  display: flex;
  flex-wrap: nowrap;
  width: 100%;
  margin: 0;
  padding: 0;
  flex-shrink: 0;
}
.question .line-wrapper .question-map .question-tabs .question-tab {
  flex: 1;
  width: 50%;
  padding: 20px 24px;
  background-color: #F4F4F4;
  color: #4B4B4B;
  cursor: pointer;
  transition: all 0.3s ease;
  font-weight: 500;
  font-size: 14px;
  text-align: center;
  border: none;
  margin: 0;
}
.question .line-wrapper .question-map .question-tabs .question-tab.active {
  background-color: #46A1E8;
  color: #ffffff;
}
.question .line-wrapper .question-map .question-tabs .question-tab:hover:not(.active) {
  background-color: #e0e0e0;
}
.question .line-wrapper .question-map .question-tabs__content {
  position: relative;
  width: 100%;
  flex: 1;
  margin: 0;
  padding: 0;
  min-height: 0;
}
.question .line-wrapper .question-map .question-tabs__content .tabs-map {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease;
  margin: 0;
  padding: 0;
}
.question .line-wrapper .question-map .question-tabs__content .tabs-map.active {
  opacity: 1;
  visibility: visible;
}
.question .line-wrapper .question-map .question-tabs__content .tabs-map iframe,
.question .line-wrapper .question-map .question-tabs__content .tabs-map script {
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  display: block;
  border: none;
}
.question .line-wrapper .question-form {
  max-width: 490px;
}
.question .line-wrapper .question-form .question-form__subtitle {
  line-height: 1.5;
}
.question .line-wrapper .question-form .form-question .form-group {
  width: 100%;
}
.question .line-wrapper .question-form .form-question .form-btn {
  width: 280px;
}
.question .line-wrapper .question-form .form-question .form-btn input {
  width: 100%;
  margin-bottom: 10px;
}
.question .line-wrapper .question-form .form-question .form-btn .policy {
  text-align: center;
}

.breadcrumbs {
  top: 130px;
}
.breadcrumbs .breadcrumbs-items {
  border-top: 3px solid #2A7DBE;
}
.breadcrumbs .breadcrumbs-items .breadcrumbs-item {
  margin-right: 14px;
}
.breadcrumbs .breadcrumbs-items .breadcrumbs-item:not(:last-child):after {
  content: "";
  display: inline-block;
  width: 7px;
  height: 7px;
  margin-left: 10px;
  border-top: 1px solid #ffffff;
  border-right: 1px solid #ffffff;
  transform: rotate(45deg);
}

/* block-11 base padding — overridden by block-11--home below */
.about .line-wrapper .about-image {
  max-width: 386px;
}
.about .line-wrapper .about-descr {
  max-width: 430px;
}
.about .line-wrapper .about-params {
  max-width: 300px;
}
.about .line-wrapper .about-params .about-params__param:before {
  content: "";
  position: absolute;
  top: -7px;
  left: -7px;
  width: 21px;
  height: calc(100% + 14px);
  background-color: #46A1E8;
}
.about .line-wrapper .about-params .about-params__param .about-params__param-num:before {
  content: attr(data-after);
}
.about .line-wrapper .about-params .about-params__param .about-params__param-num:after {
  content: attr(data-before);
}
.about .line-wrapper .about-params .about-params__param .about-params__param-num:before, .about .line-wrapper .about-params .about-params__param .about-params__param-num:after {
  display: block;
  width: 100%;
  font-weight: 400;
  font-size: 18px;
  color: #4B4B4B;
}
.about .line-wrapper .about-params .about-params__param .about-params__param-num {
  max-width: 60px;
  font-weight: 400;
  font-size: 28px;
  text-align: center;
  color: #202020;
}
.about .line-wrapper .about-params .about-params__param .about-params__param-text {
  max-width: calc(100% - 86px);
}
.about .line-wrapper .about-params .about-params__param:not(:last-child) {
  margin-bottom: 30px;
}

.principles {
  padding-bottom: 110px;
}
.principles .line-wrapper .principles-item {
  max-width: 360px;
}

.projects {
  padding-top: 110px;
  padding-bottom: 110px;
}
.projects .line-wrapper .component-arrows {
  position: absolute;
  top: 8px;
  right: 0;
  z-index: 50;
}
.projects .line-wrapper .projects-slider {
  width: calc(100% + 27px);
  overflow-x: scroll;
  white-space: nowrap;
  transition: all 1s ease;
}
.projects .line-wrapper .projects-slider .projects-slide {
  width: 386px;
  height: 496px;
  margin-right: 27px;
}

.reviews {
  padding-top: 110px;
  padding-bottom: 130px;
}
.reviews .line-wrapper:before {
  content: "";
  position: absolute;
  top: 305px;
  left: 82px;
  width: 96px;
  height: 96px;
  background: url("../img/icon-dots-blue.svg") center/contain no-repeat;
}
.reviews .line-wrapper:after {
  content: "";
  position: absolute;
  top: 80px;
  right: 0;
  width: 96px;
  height: 96px;
  background: url("../img/icon-dots-white.svg") center/contain no-repeat;
}
.reviews .line-wrapper .reviews-slider {
  max-width: 900px;
  padding: 60px 70px;
}
.reviews .line-wrapper .reviews-slider .reviews-slide {
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  opacity: 0;
  overflow: hidden;
  z-index: -1;
  transition: opacity 0.3s ease;
}
.reviews .line-wrapper .reviews-slider .reviews-slide .reviews-slide__avatar {
  width: 120px;
  height: 150px;
}
.reviews .line-wrapper .reviews-slider .reviews-slide .reviews-slide__content {
  max-width: calc(100% - 151px);
}
.reviews .line-wrapper .reviews-slider .reviews-slide .reviews-slide__content .reviews-slide__content-top {
  max-width: calc(100% - 120px);
}
.reviews .line-wrapper .reviews-slider .reviews-slide .reviews-slide__content .reviews-slide__content-descr {
  max-width: 520px;
}
.reviews .line-wrapper .reviews-slider .reviews-slide.reviews-slide-active {
  position: relative;
  width: 100%;
  height: auto;
  opacity: 1;
  z-index: 1;
}
.reviews .line-wrapper .reviews-slider .component-arrows {
  position: absolute;
  top: 60px;
  right: 70px;
  z-index: 50;
}
.reviews .line-wrapper .reviews-slider__navigations {
  bottom: 60px;
  left: 50%;
  width: auto;
  width: 100%;
  max-width: 900px;
  padding-left: 223px;
  transform: translateX(-50%);
}
.reviews .line-wrapper .reviews-slider__navigations .reviews-slider__navigation {
  width: 9px;
  height: 9px;
  background-color: #46A1E8;
}
.reviews .line-wrapper .reviews-slider__navigations .reviews-slider__navigation.reviews-slider__navigation-active {
  width: 17px;
  height: 17px;
  background-color: #2A7DBE;
}
.reviews .line-wrapper .reviews-slider__navigations .reviews-slider__navigation:not(:last-child) {
  margin-right: 18px;
}

.reviews-page .reviews-page__items .reviews-page__item {
  padding: 60px 80px;
  box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.25);
}
.reviews-page .reviews-page__items .reviews-page__item .reviews-page__item-image {
  width: 121px;
  height: 150px;
  margin-right: 40px;
}
.reviews-page .reviews-page__items .reviews-page__item .reviews-page__item-content {
  width: calc(100% - 165px);
}
.reviews-page .reviews-page__items .reviews-page__item:not(:last-child) {
  margin-bottom: 30px;
}

.single-card {
  margin-bottom: 60px;
}
.single-card .line-wrapper .single-card__box .single-card__image {
  max-width: 520px;
}
.single-card .line-wrapper .single-card__box .single-card__image .single-card__gallery {
  height: 402px;
  margin-bottom: 0;
}
.single-card .line-wrapper .single-card__box .single-card__image .single-card__gallery .single-card__img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: all 0.3s ease;
  z-index: -1;
  overflow: hidden;
}
.single-card .line-wrapper .single-card__box .single-card__image .single-card__gallery .single-card__img.single-card__img-active {
  opacity: 1;
  z-index: 1;
}
.single-card .line-wrapper .single-card__box .single-card__image .single-card__gallery .single-card__gallery-dots {
  max-width: max-content;
  padding-right: 20px;
  padding-bottom: 20px;
}
.single-card .line-wrapper .single-card__box .single-card__image .single-card__gallery .single-card__gallery-dots .single-card__gallery-dot {
  width: 16px;
  height: 16px;
  background-color: #ffffff;
  border-radius: 100px;
  cursor: pointer;
}
.single-card .line-wrapper .single-card__box .single-card__image .single-card__gallery .single-card__gallery-dots .single-card__gallery-dot.single-card__gallery-dot-active {
  position: relative;
  background-color: #46A1E8;
  border: 2px solid transparent;
  cursor: no-drop;
}
.single-card .line-wrapper .single-card__box .single-card__image .single-card__gallery .single-card__gallery-dots .single-card__gallery-dot.single-card__gallery-dot-active:before {
  content: "";
  position: absolute;
  top: -6px;
  left: -6px;
  width: calc(100% + 12px);
  height: calc(100% + 12px);
  border: 2px solid #ffffff;
  border-radius: 100px;
}
.single-card .line-wrapper .single-card__box .single-card__image .single-card__gallery .single-card__gallery-dots .single-card__gallery-dot:not(:last-child) {
  margin-right: 14px;
}
.single-card .line-wrapper .single-card__box .single-card__image .component-calculation {
  margin: 0 0 0 auto;
}
.single-card .line-wrapper .single-card__box .single-card__content {
  max-width: 535px;
}
.single-card .line-wrapper .single-card__box .single-card__content:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 160px;
  height: 116px;
  background: url("../img/icon-dots-single.svg") center/contain no-repeat;
  z-index: 1;
}
.single-card .line-wrapper .single-card__box .single-card__content .single-card__content-title:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 70px;
  height: 3px;
  background-color: #46A1E8;
}
.single-card .line-wrapper .single-card__box .single-card__content .single-card__content-params .single-card__content-param .single-card__content-param__label {
  max-width: 100px;
  margin-right: 12px;
}
.single-card .line-wrapper .single-card__box .single-card__content .single-card__content-params .single-card__content-param .single-card__content-param__descr {
  max-width: calc(100% - 115px);
}
.single-card .line-wrapper .single-card__box .single-card__content .single-card__content-params .single-card__content-param:not(:last-child) {
  margin-bottom: 6px;
}
.single-card .line-wrapper .single-card__box .single-card__content .single-card__content-params.single-card__content-params-bigger .single-card__content-param .single-card__content-param__label {
  max-width: 148px;
  margin-right: 12px;
}
.single-card .line-wrapper .single-card__box .single-card__content .single-card__content-params.single-card__content-params-bigger .single-card__content-param .single-card__content-param__descr {
  max-width: calc(100% - 161px);
}
.single-card .line-wrapper .single-card__box .single-card__content .single-card__content-btn .btn-blue {
  min-width: 225px;
}

.contacts .line-wrapper .contacts-map {
  height: 680px;
  margin-bottom: 70px;
}
.contacts .line-wrapper .contacts-items .contacts-items__item {
  flex-grow: 2;
  flex-basis: fit-content;
  max-width: 33.3%;
  padding: 50px;
  border: 2px solid #F4F4F4;
}
.contacts .line-wrapper .contacts-items .contacts-items__item .contacts-items__item-icon {
  width: 60px;
  height: 60px;
}
.contacts .line-wrapper .contacts-items .contacts-items__item .contacts-items__item-icon:before {
  content: "";
  position: absolute;
  top: -10px;
  left: -7px;
  width: 21px;
  height: calc(100% + 20px);
  background-color: #46A1E8;
  z-index: 1;
}
.contacts .line-wrapper .contacts-items .contacts-items__item .contacts-items__item-content {
  max-width: calc(100% - 91px);
  min-width: 210px;
}
.contacts .line-wrapper .contacts-items .contacts-items__item .contacts-items__item-content .contacts-items__item-content__descr:not(:last-child) {
  margin-bottom: 8px;
}

.faq .line-wrapper .faq-items .faq-items__item {
  padding-left: 20px;
}
.faq .line-wrapper .faq-items .faq-items__item .faq-items__item-top {
  cursor: pointer;
}
.faq .line-wrapper .faq-items .faq-items__item .faq-items__item-top .faq-items__item-top__title {
  max-width: 100%;
  padding-top: 20px;
  padding-right: 60px;
  padding-bottom: 20px;
}
.faq .line-wrapper .faq-items .faq-items__item .faq-items__item-top .faq-items__item-top__icon {
  right: 5px;
  width: 34px;
  height: 34px;
}
.faq .line-wrapper .faq-items .faq-items__item .faq-items__item-top .faq-items__item-top__icon:after {
  content: "+";
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  font-weight: 600;
  font-size: 22px;
  line-height: 1;
  color: #202020;
  z-index: 1;
}
.faq .line-wrapper .faq-items .faq-items__item .faq-items__item-content {
  height: 0;
  overflow: hidden;
  transition: all 0.3s ease;
}
.faq .line-wrapper .faq-items .faq-items__item.faq-items__item-active .faq-items__item-top .faq-items__item-top__icon:after {
  content: "-";
}
.faq .line-wrapper .faq-items .faq-items__item.faq-items__item-active .faq-items__item-content {
  max-width: 80%;
  height: min-content;
  padding-bottom: 20px;
  padding-left: 20px;
}
.faq .line-wrapper .faq-items .faq-items__item:first-child .faq-items__item-top .faq-items__item-top__title {
  padding-top: 0;
}
.faq .line-wrapper .faq-items .faq-items__item:last-child .faq-items__item-top .faq-items__item-top__title, .faq .line-wrapper .faq-items .faq-items__item:last-child.faq-items__item-active .faq-items__item-content {
  padding-bottom: 0;
}
.faq .line-wrapper .faq-items .faq-items__item:last-child.faq-items__item-active .faq-items__item-top .faq-items__item-top__title {
  padding-bottom: 20px;
}
.faq .line-wrapper .faq-items .faq-items__item:not(:last-child) {
  border-bottom: 1px solid #202020;
}

.team .line-wrapper .team-item {
  width: 290px;
  margin-bottom: 35px;
  margin-right: 20px;
}
.team .line-wrapper .team-item .team-item__image {
  height: 380px;
}
.team .line-wrapper .team-item .team-item__image .img {
  transition: transform 0.4s ease;
}
.team .line-wrapper .team-item:hover .team-item__image .img {
  transform: scale(1.05);
}
.team .line-wrapper .team-item .team-item__overlay {
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0.3) 60%, transparent 100%);
  padding: 20px 16px 16px;
}
.team .line-wrapper .team-item .team-item__overlay .team-item__content-name {
  margin-bottom: 4px;
}
.team .line-wrapper .team-item:nth-child(4n+1) {
  margin-right: 0px;
}

.guarantee .line-wrapper .guarantee-description .guarantee-description__image .guarantee-description__image-text {
  max-width: calc(100% - 360px);
}
.guarantee .line-wrapper .guarantee-description .guarantee-description__image img {
  max-width: 310px;
}

.news .line-wrapper .news-items .news-item {
  flex-grow: 2;
  flex-basis: fit-content;
  max-width: 390px;
  margin-bottom: 35px;
  padding: 10px;
  border-radius: 8px;
  box-shadow: 0px 4px 4px 0px rgba(32, 32, 32, 0.5);
}
.news .line-wrapper .news-items .news-item .news-item__image {
  height: 230px;
  border-radius: 8px;
  overflow: hidden;
}
.news .line-wrapper .news-items .news-item .news-item__content .news-item__content-top .news-item__content-top__params .news-item__content-top__params-icon {
  width: 18px;
  height: 24px;
}
.news .line-wrapper .news-items .news-item .news-item__content .news-item__content-top .news-item__content-top__params:not(:last-child) {
  margin-right: 30px;
}
.news .line-wrapper .news-items .news-item:nth-child(-n+2) {
  max-width: 590px;
  padding: 20px;
}
.news .line-wrapper .news-items .news-item:nth-child(-n+2) .news-item__image {
  height: 340px;
}
.news .line-wrapper .news-items .news-item:nth-child(-n+2) .news-item__content .news-item__content-title {
  font-size: 18px;
}

.download .line-wrapper .download-items .download-item {
  flex-grow: initial;
  flex-basis: inherit;
  max-width: 390px;
}
.download .line-wrapper .download-items .download-item .download-item__icon {
  width: 48px;
  height: 62px;
}
.download .line-wrapper .download-items .download-item .download-item__label {
  max-width: calc(100% - 70px);
}

.busked .line-wrapper .busked-container .busked-top, .busked .line-wrapper .busked-container .busked-middle {
  padding: 30px;
}
.busked .line-wrapper .busked-container .busked-middle .busked-middle__items .busked-item {
  min-height: 121px;
  border-top: none;
}
.busked .line-wrapper .busked-container .busked-middle .busked-middle__items .busked-item .busked-item__img, .busked .line-wrapper .busked-container .busked-middle .busked-middle__items .busked-item .busked-item__quantity, .busked .line-wrapper .busked-container .busked-middle .busked-middle__items .busked-item .busked-item__quantity, .busked .line-wrapper .busked-container .busked-middle .busked-middle__items .busked-item .busked-item__price, .busked .line-wrapper .busked-container .busked-middle .busked-middle__items .busked-item .busked-item__delete {
  max-width: 165px;
}
.busked .line-wrapper .busked-container .busked-middle .busked-middle__items .busked-item .busked-item__img img {
  width: 104px;
  height: 80px;
}
.busked .line-wrapper .busked-container .busked-middle .busked-middle__items .busked-item .busked-item__title {
  max-width: calc(100% - 660px);
  padding-right: 20px;
  padding-left: 30px;
  text-decoration: underline;
}
.busked .line-wrapper .busked-container .busked-middle .busked-middle__items .busked-item .busked-item__quantity .busked-item__minus, .busked .line-wrapper .busked-container .busked-middle .busked-middle__items .busked-item .busked-item__quantity input, .busked .line-wrapper .busked-container .busked-middle .busked-middle__items .busked-item .busked-item__quantity .busked-item__plus, .busked .line-wrapper .busked-container .busked-middle .busked-middle__items .busked-item .busked-item__quantity .busked-item__num {
  width: 44px;
  height: 40px;
}
.busked .line-wrapper .busked-container .busked-middle .busked-middle__items .busked-item .busked-item__quantity .busked-item__minus, .busked .line-wrapper .busked-container .busked-middle .busked-middle__items .busked-item .busked-item__quantity input, .busked .line-wrapper .busked-container .busked-middle .busked-middle__items .busked-item .busked-item__quantity .busked-item__plus {
  cursor: pointer;
}
.busked .line-wrapper .busked-container .busked-middle .busked-middle__items .busked-item .busked-item__delete {
  cursor: pointer;
}
.busked .line-wrapper .busked-container .busked-middle .busked-middle__items .busked-item .busked-item__delete:after {
  content: "";
  display: block;
  width: 46px;
  height: 40px;
  background: url("../img/icon-delete-blue.svg") center/contain no-repeat;
}
.busked .line-wrapper .busked-container .busked-middle .busked-middle__items .busked-item .busked-item__delete:hover {
  background-color: #fff;
}
.busked .line-wrapper .busked-container .busked-middle .busked-middle__items .busked-item.busked-item-top {
  min-height: 50px;
  border-top: 1px solid #2A7DBE;
}
.busked .line-wrapper .busked-container .busked-middle .busked-middle__items .busked-item.busked-item-top .busked-item__title {
  text-decoration: none;
}
.busked .line-wrapper .busked-container .busked-middle .busked-middle__items .busked-item.busked-item-top .busked-item__delete:after {
  display: none;
}
.busked .line-wrapper .busked-container .busked-middle .busked-middle__result .busked-middle__result-clean {
  max-width: max-content;
}
.busked .line-wrapper .busked-container .busked-middle .busked-middle__result .busked-middle__result-clean .btn-clean {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  padding: 15px 25px 15px 15px;
  font-weight: 400;
  font-size: 16px;
  border: 1px solid #2A7DBE;
  transition: all 0.3s ease;
}
.busked .line-wrapper .busked-container .busked-middle .busked-middle__result .busked-middle__result-clean .btn-clean:before {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  margin-right: 10px;
  background: url("../img/icon-clean-black.svg") center/contain no-repeat;
}
.busked .line-wrapper .busked-container .busked-middle .busked-middle__result .busked-middle__result-clean .btn-clean:hover {
  color: #202020;
  background-color: #46A1E8;
}
.busked .line-wrapper .busked-container .busked-middle .busked-middle__result .busked-middle__result-table {
  max-width: 460px;
}
.busked .line-wrapper .busked-container .busked-middle .busked-middle__result .busked-middle__result-table .busked-middle__result-table__text {
  padding: 15px 20px 15px 10px;
}
.busked .line-wrapper .busked-container .busked-middle .busked-middle__result .busked-middle__result-table .busked-middle__result-table__text:nth-child(odd) {
  max-width: calc(100% - 170px);
}
.busked .line-wrapper .busked-container .busked-middle .busked-middle__result .busked-middle__result-table .busked-middle__result-table__text:nth-child(even) {
  max-width: 170px;
}
.busked .line-wrapper .busked-container .busked-middle .busked-middle__result .busked-middle__result-table .busked-middle__result-table__text:nth-last-child(-n+2) {
  border-bottom: none;
}
.busked .line-wrapper .busked-container .busked-container__wrapper .busked-container__wrapper-right, .busked .line-wrapper .busked-container .busked-container__wrapper .busked-container__wrapper-left {
  max-width: 570px;
}
.busked .line-wrapper .busked-container .busked-container__user .busked-middle {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
}
.busked .line-wrapper .busked-container .busked-container__user .busked-middle .busked-group {
  max-width: 240px;
}
.busked .line-wrapper .busked-container .busked-container__address .busked-middle {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
}
.busked .line-wrapper .busked-container .busked-container__address .busked-middle .busked-group {
  max-width: 240px;
}
.busked .line-wrapper .busked-container .busked-container__address .busked-middle .busked-group.busked-group-full {
  max-width: 100%;
}
.busked .line-wrapper .busked-container .busked-container__payment .busked-middle {
  min-height: 248px;
}
.busked .line-wrapper .busked-container .busked-container__submit .btn-blue {
  width: 100%;
  margin-bottom: 20px;
  padding: 28px;
  font-size: 18px;
  text-transform: uppercase;
  letter-spacing: 1px;
  background-color: #2A7DBE;
}
.busked .line-wrapper .busked-container .busked-container__submit .btn-blue:hover {
  background-color: transparent;
}
.busked .line-wrapper .busked-container .busked-container__submit .busked-container__submit-check {
  padding-left: 30px;
}
.busked .line-wrapper .busked-container .busked-container__submit .busked-container__submit-check .submit-check {
  width: 20px;
  height: 20px;
  margin-right: 10px;
}
.busked .line-wrapper .busked-container .busked-container__submit .busked-container__submit-check .submit-check .submit-check-active:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 8px;
  height: 8px;
  background-color: #46A1E8;
  border-radius: 100px;
  transform: translate(-50%, -50%);
}
.busked .line-wrapper .busked-container .busked-container__submit .busked-container__submit-check .submit-check .check {
  width: 100%;
  height: 100%;
  border: 1px solid #2A7DBE;
  border-radius: 2px;
}
.busked .line-wrapper .busked-container .busked-container__submit .busked-container__submit-check .submit-check .check:checked {
  border: 1px solid #202020;
}
.busked .line-wrapper .busked-container .busked-container__submit .busked-container__submit-check input[type=checkbox] {
  display: none;
}
.busked .line-wrapper .busked-container .busked-container__submit .busked-container__submit-check label {
  position: relative;
  display: block;
  width: 100%;
  padding-left: 30px;
  color: #4B4B4B;
  transition: color 0.3s;
  cursor: pointer;
}
.busked .line-wrapper .busked-container .busked-container__submit .busked-container__submit-check label:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 20px;
  height: 20px;
  border-radius: 2px;
  background-color: transparent;
  border: 2px solid #ffffff;
  transition: background-color 0.3s;
  border: 2px solid #2A7DBE;
}
.busked .line-wrapper .busked-container .busked-container__submit .busked-container__submit-check input[type=checkbox]:checked + label:before {
  background-color: #202020;
  border-color: #202020;
}
.busked .line-wrapper .busked-container .busked-container__submit .busked-container__submit-check input[type=checkbox]:focus + label {
  color: #4B4B4B;
}
.busked .line-wrapper .busked-container .busked-container__submit .busked-container__submit-check input[type=checkbox]:checked + label {
  color: #4B4B4B;
}
.busked .line-wrapper .busked-container .busked-container__submit .busked-container__submit-check input[type=checkbox]:hover + label:before {
  background-color: #202020;
}
.busked .line-wrapper .busked-container .busked-container__submit .busked-container__submit-check input[type=checkbox]:focus + label:before {
  background-color: #2A7DBE;
}
.busked .line-wrapper .busked-container .wpcf7 {
  display: block;
  width: 100%;
}

.footer {
  padding-top: 25px;
  padding-bottom: 30px;
}
.footer .line-wrapper .footer-logotype {
  width: 340px;
}
.footer .line-wrapper .footer-logotype .footer-logotype__svg {
  width: 70px;
  height: 71px;
}
.footer .line-wrapper .footer-logotype .footer-logotype__content {
  width: calc(100% - 81px);
}
.footer .line-wrapper .footer-menu {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  width: 100%;
  max-width: 280px;
}
.footer .line-wrapper .footer-menu .menu-item {
  display: block;
  width: 45%;
  margin-bottom: 7px;
}
.footer .line-wrapper .footer-menu .menu-item a {
  display: block;
  width: 100%;
  font-weight: 400;
  font-size: 14px;
  color: #4B4B4B;
  transition: all 0.3s ease;
}
.footer .line-wrapper .footer-menu .menu-item a:hover {
  color: #46A1E8;
}
.footer .line-wrapper .footer-menu .sub-menu {
  display: none !important;
}
.footer .line-wrapper .footer-contacts {
  max-width: 176px;
}
.footer .line-wrapper .footer-contacts .footer-contacts__tel {
  margin-bottom: 5px;
}
.footer .line-wrapper .footer-contacts .btn-blue {
  min-width: 170px;
  margin-top: 15px;
  text-align: center;
}
.footer .line-wrapper .footer-bottom .footer-bottom__text {
  max-width: 33%;
}

.popup .popup-bg {
  background-color: rgba(0, 0, 0, 0.7);
}
.popup.popup-call .popup-content__close {
  top: 0px;
  right: -39px;
  width: 40px;
  height: 40px;
  background-color: #ffffff;
}
.popup.popup-call .popup-content__details-navigations {
  bottom: 20px;
  left: 326px;
  width: 120px;
  height: 40px;
}
.popup.popup-call .popup-content__details-navigations .popup-content__details-navigation {
  position: relative;
  display: block;
  width: 12px;
  height: 12px;
  margin: 0 8px;
  background-color: #ffffff;
  border-radius: 100px;
  cursor: pointer;
}
.popup.popup-call .popup-content__details-navigations .popup-content__details-navigation.popup-content__details-navigation-active {
  width: 16px;
  height: 16px;
  background-color: #46A1E8;
  cursor: no-drop;
}
.popup.popup-call .popup-content__details-navigations .popup-content__details-navigation.popup-content__details-navigation-active:before {
  content: "";
  position: absolute;
  top: -4px;
  left: -4px;
  width: calc(100% + 8px);
  height: calc(100% + 8px);
  border: 1px solid #ffffff;
  border-radius: 100px;
}
.popup.popup-call .popup-content {
  width: 820px;
}
.popup.popup-call .popup-content .popup-content-wrapper {
  width: 100%;
  min-height: min-content;
  max-height: 90vh;
  border: 20px solid #ffffff;
}
.popup.popup-call .popup-content .popup-content__details {
  width: 420px;
}
.popup.popup-call .popup-content .popup-content__details .popup-content__detail {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  z-index: -1;
  transition: all 0.3s ease;
}
.popup.popup-call .popup-content .popup-content__details .popup-content__detail .popup-content__detail-item {
  padding-left: 6px;
}
.popup.popup-call .popup-content .popup-content__details .popup-content__detail .popup-content__detail-item:before {
  content: "";
  position: absolute;
  top: -10px;
  left: -5px;
  width: 18px;
  height: calc(100% + 20px);
  background-color: #46A1E8;
  z-index: 1;
}
.popup.popup-call .popup-content .popup-content__details .popup-content__detail .popup-content__detail-item .popup-content__detail-item__svg {
  width: 40px;
  height: 40px;
}
.popup.popup-call .popup-content .popup-content__details .popup-content__detail .popup-content__detail-item .popup-content__detail-item__content {
  width: calc(100% - 51px);
}
.popup.popup-call .popup-content .popup-content__details .popup-content__detail .popup-content__detail-item:not(:last-child) {
  margin-bottom: 30px;
}
.popup.popup-call .popup-content .popup-content__details .popup-content__detail .popup-content__detail-socials .popup-content__detail-social {
  width: 36px;
  height: 36px;
}
.popup.popup-call .popup-content .popup-content__details .popup-content__detail .popup-content__detail-socials .popup-content__detail-social:not(:last-child) {
  margin-right: 8px;
}
.popup.popup-call .popup-content .popup-content__details .popup-content__detail.popup-content__detail-active {
  opacity: 1;
  z-index: 1;
}
.popup.popup-call .popup-content .popup-content__form {
  width: calc(100% - 425px);
  padding-left: 20px;
  border-left: 3px solid #4B4B4B;
}
.popup.popup-call .popup-content .popup-content__form .form-group, .popup.popup-call .popup-content .popup-content__form .form-btn input {
  width: 100%;
}
.popup.popup-call .popup-content .popup-content__form .form-btn input {
  margin-bottom: 5px;
}
.popup.popup-call .popup-content .popup-content__form .form-btn .policy {
  width: 100%;
}

.background-blue-right:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 737px;
  max-width: 42%;
  height: 100%;
  background-color: #46a1e8;
  z-index: 2;
}

.background-box {
  padding: 50px 37px;
  background-color: #ffffff;
  border: 2px solid #F4F4F4;
  box-shadow: 0px 4px 26px 0px rgba(0, 0, 0, 0.08);
}
.background-box.background-box-small {
  padding: 20px;
  border: none;
}

.component-arrows {
  width: 100px;
  height: 34px;
}
.component-arrows .component-arrow-line {
  width: 2px;
  margin: 0 10px;
  background-color: #202020;
}
.component-arrows .component-arrow {
  width: 34px;
  height: 34px;
  padding: 8px;
  cursor: pointer;
}
.component-arrows .component-arrow svg path {
  transition: all 0.3s ease;
}
.component-arrows .component-arrow:hover svg path {
  stroke: #46A1E8;
}

.component-paginations {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: max-content;
  margin: 0 auto;
}
.component-paginations .component-paginations__prev, .component-paginations .component-paginations__next {
  display: block;
  width: 50px;
  height: 50px;
  margin: 0 15px;
  border: 1px solid transparent;
  cursor: pointer;
}
.component-paginations .component-paginations__prev svg path, .component-paginations .component-paginations__prev svg rect, .component-paginations .component-paginations__next svg path, .component-paginations .component-paginations__next svg rect {
  transition: all 0.3s ease;
}
.component-paginations .component-paginations__prev:hover, .component-paginations .component-paginations__next:hover {
  border-color: #2A7DBE;
}
.component-paginations .component-paginations__prev:hover svg path, .component-paginations .component-paginations__next:hover svg path {
  stroke: #2A7DBE;
}
.component-paginations .component-paginations__prev:hover svg rect, .component-paginations .component-paginations__next:hover svg rect {
  fill: transparent;
}
.component-paginations .component-paginations__num {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  width: 34px;
  height: 34px;
  margin: 0 10px;
  font-weight: 600;
  font-size: 24px;
  line-height: 1;
  color: #46A1E8;
  background-color: transparent;
  transition: all 0.3s ease;
  cursor: pointer;
}
.component-paginations .component-paginations__num.component-paginations__num-active {
  font-size: 34px;
  color: #202020;
}
.component-paginations .component-paginations__num:hover {
  color: #202020;
}

.component-calculation {
  max-width: max-content;
  padding: 44px 70px;
}
.component-calculation .component-calculation__btn button, .component-calculation .component-calculation__btn a {
  display: inline-block;
  min-width: 190px;
  text-align: center;
}

.component-icons {
  top: 30vh;
  width: 80px;
  padding-top: 8px;
  padding-bottom: 8px;
  padding-left: 8px;
  border-top-left-radius: 8px;
  border-bottom-left-radius: 8px;
  box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.25);
}
.component-icons .component-icon {
  height: 40px;
  padding: 5px;
  border-top: 1px solid #2A7DBE;
  border-bottom: 1px solid #2A7DBE;
  border-left: 1px solid #2A7DBE;
  border-top-left-radius: 8px;
  border-bottom-left-radius: 8px;
  cursor: pointer;
}
.component-icons .component-icon img {
  width: 20px;
}
.component-icons .component-icon .component-icon__num {
  min-width: 30px;
  max-width: max-content;
  padding: 2px 4px;
  background-color: #46A1E8;
  border-radius: 8px;
}

.component-bg {
  background-color: rgba(0, 0, 0, 0.7);
  transition: all 0.3s ease;
}

/* ============================================
   Cookie consent banner
   ============================================ */
.cookie-banner {
  background-color: #ffffff;
  border-top: 2px solid #46A1E8;
  box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.08);
  padding: 40px 0;
  min-height: 160px;
  transition: transform 0.4s ease, opacity 0.4s ease;
}
.cookie-banner__inner {
  gap: 30px;
}
.cookie-banner__text {
  flex: 1;
}
.cookie-banner__text p {
  margin: 0;
  line-height: 1.6;
  color: #4B4B4B;
}
.cookie-banner__link {
  color: #46A1E8;
  text-decoration: underline;
  text-decoration-color: rgba(70, 161, 232, 0.4);
  text-underline-offset: 2px;
  transition: all 0.3s ease;
}
.cookie-banner__link:hover {
  color: #2A7DBE;
  text-decoration-color: #2A7DBE;
}
.cookie-banner__actions {
  flex-shrink: 0;
  gap: 12px;
}
.btn-outline {
  padding: 12px 18px;
  font-weight: 500;
  font-size: 14px;
  color: #2A7DBE;
  background-color: transparent;
  border: 1px solid #2A7DBE;
  border-radius: 2px;
  cursor: pointer;
  transition: all 0.3s ease;
  font-family: "Montserrat", sans-serif;
  white-space: nowrap;
}
.btn-outline:hover {
  color: #ffffff;
  background-color: #2A7DBE;
}
.cookie-banner--hidden {
  transform: translateY(100%);
  opacity: 0;
  pointer-events: none;
}

/* Text page typography */
.text-page h2 {
  font-weight: 600;
  font-size: 28px;
  color: #1A1A1A;
  margin-bottom: 25px;
}
.text-page h3 {
  font-weight: 600;
  font-size: 20px;
  color: #1A1A1A;
  margin-top: 35px;
  margin-bottom: 15px;
}
.text-page h3:first-child {
  margin-top: 0;
}
.text-page p {
  font-weight: 400;
  font-size: 15px;
  line-height: 1.7;
  color: #4B4B4B;
  margin-bottom: 15px;
}
.text-page ul {
  margin: 0 0 20px 0;
  padding-left: 0;
  list-style: none;
}
.text-page ul li {
  font-weight: 400;
  font-size: 15px;
  line-height: 1.7;
  color: #4B4B4B;
  padding-left: 20px;
  position: relative;
  margin-bottom: 8px;
}
.text-page ul li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 10px;
  width: 6px;
  height: 6px;
  background-color: #46A1E8;
  border-radius: 50%;
}
.text-page a {
  color: #46A1E8;
  text-decoration: underline;
  text-decoration-color: rgba(70, 161, 232, 0.4);
  text-underline-offset: 2px;
  transition: all 0.3s ease;
}
.text-page a:hover {
  color: #2A7DBE;
  text-decoration-color: #2A7DBE;
}
.text-page strong {
  font-weight: 600;
  color: #1A1A1A;
}

/* ============================================
   Block 21 — Production Gallery + Lightbox
   ============================================ */
.gallery-21-section {
  padding: 60px 0;
}
.gallery-21 {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  grid-auto-rows: 140px;
  grid-auto-flow: dense;
  gap: 4px;
}
.gallery-21-item {
  position: relative;
  display: flex;
  overflow: hidden;
  cursor: pointer;
  text-decoration: none;
}
.gallery-21-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.gallery-21-item__overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: rgba(70, 161, 232, 0);
  transition: background-color 0.35s ease;
  z-index: 2;
}
.gallery-21-item__overlay svg {
  opacity: 0;
  transform: scale(0.6);
  transition: all 0.35s ease;
}
.gallery-21-item:hover img {
  transform: scale(1.08);
}
.gallery-21-item:hover .gallery-21-item__overlay {
  background-color: rgba(70, 161, 232, 0.4);
}
.gallery-21-item:hover .gallery-21-item__overlay svg {
  opacity: 1;
  transform: scale(1);
}

/* Lightbox */
.gallery-21-lightbox {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 9999;
  background-color: rgba(0, 0, 0, 0.92);
  display: flex;
  align-items: center;
  justify-content: center;
}
.gallery-21-lightbox__content {
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(100% - 160px);
  height: calc(100% - 80px);
}
.gallery-21-lightbox__img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  border-radius: 4px;
  box-shadow: 0 8px 40px rgba(0, 0, 0, 0.4);
  transition: opacity 0.3s ease;
}
.gallery-21-lightbox__close {
  position: absolute;
  top: 20px;
  right: 20px;
  background: none;
  border: none;
  cursor: pointer;
  padding: 8px;
  opacity: 0.6;
  transition: opacity 0.3s ease;
  z-index: 10;
}
.gallery-21-lightbox__close:hover {
  opacity: 1;
}
.gallery-21-lightbox__arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  cursor: pointer;
  padding: 12px;
  opacity: 0.5;
  transition: opacity 0.3s ease;
  z-index: 10;
}
.gallery-21-lightbox__arrow:hover {
  opacity: 1;
}
.gallery-21-lightbox__arrow--prev { left: 16px; }
.gallery-21-lightbox__arrow--next { right: 16px; }
.gallery-21-lightbox__counter {
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  color: #ffffff;
  font-size: 14px;
  font-family: "Montserrat", sans-serif;
  opacity: 0.6;
}
.component-bg.component-bg__active {
  display: block;
}

.component-basket {
  right: -961px;
  width: 960px;
  transition: all 1s ease;
}
.component-basket .component-content {
  width: 100%;
  max-height: 80vh;
  padding-inline: 12px;
}
.component-basket .component-content .component-content__top .component-content__top-title {
  max-width: calc(100% - 100px);
}
.component-basket .component-content .component-content__top .component-content__top-close {
  width: 30px;
  height: 30px;
  cursor: pointer;
}
.component-basket .component-content .component-content__middle .busked-items {
  max-height: 260px;
}
.component-basket .component-content .component-content__middle .busked-items .busked-item {
  border-bottom: none;
}
.component-basket .component-content .component-content__middle .busked-items .busked-item .busked-item__img {
  width: 80px;
  height: 80px;
  padding: 10px;
}
.component-basket .component-content .component-content__middle .busked-items .busked-item .busked-item__title {
  width: 100%;
  max-width: calc(100% - 421px);
  padding: 10px;
}
.component-basket .component-content .component-content__middle .busked-items .busked-item .busked-item__quantity {
  width: 120px;
}
.component-basket .component-content .component-content__middle .busked-items .busked-item .busked-item__quantity .busked-item__num, .component-basket .component-content .component-content__middle .busked-items .busked-item .busked-item__quantity .busked-item__minus, .component-basket .component-content .component-content__middle .busked-items .busked-item .busked-item__quantity .busked-item__plus {
  width: 30px;
  height: 30px;
}
.component-basket .component-content .component-content__middle .busked-items .busked-item .busked-item__quantity .busked-item__minus, .component-basket .component-content .component-content__middle .busked-items .busked-item .busked-item__quantity .busked-item__plus {
  cursor: pointer;
}
.component-basket .component-content .component-content__middle .busked-items .busked-item .busked-item__price {
  width: 140px;
}
.component-basket .component-content .component-content__middle .busked-items .busked-item .busked-item__delete {
  width: 80px;
  cursor: pointer;
}
.component-basket .component-content .component-content__middle .busked-items .busked-item .busked-item__delete:after {
  content: "";
  display: block;
  width: 46px;
  height: 40px;
  background: url("../img/icon-delete-blue.svg") center/contain no-repeat;
}
.component-basket .component-content .component-content__middle .busked-items .busked-item:last-child {
  border-bottom: 1px solid #2A7DBE;
}
.component-basket .component-content .component-content__bottom .busked-middle__result-clean {
  max-width: 210px;
  align-content: space-between;
}
.component-basket .component-content .component-content__bottom .busked-middle__result-clean .btn-clean {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding: 15px 25px 15px 15px;
  font-weight: 400;
  font-size: 16px;
  border: 1px solid #2A7DBE;
  transition: all 0.3s ease;
}
.component-basket .component-content .component-content__bottom .busked-middle__result-clean .btn-clean:before {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  margin-right: 10px;
  background: url("../img/icon-clean-black.svg") center/contain no-repeat;
}
.component-basket .component-content .component-content__bottom .busked-middle__result-clean .btn-clean:hover {
  color: #202020;
  background-color: #46A1E8;
}
.component-basket .component-content .component-content__bottom .busked-middle__result-clean .btn-blue {
  width: 100%;
  text-align: center;
  border-radius: 0;
}
.component-basket .component-content .component-content__bottom .busked-middle__result-table {
  max-width: 460px;
}
.component-basket .component-content .component-content__bottom .busked-middle__result-table .busked-middle__result-table__text {
  padding: 15px 20px 15px 10px;
}
.component-basket .component-content .component-content__bottom .busked-middle__result-table .busked-middle__result-table__text:nth-child(odd) {
  max-width: calc(100% - 170px);
}
.component-basket .component-content .component-content__bottom .busked-middle__result-table .busked-middle__result-table__text:nth-child(even) {
  max-width: 170px;
}
.component-basket .component-content .component-content__bottom .busked-middle__result-table .busked-middle__result-table__text:nth-last-child(-n+2) {
  border-bottom: none;
}
.component-basket.component-basket__active {
  right: 0;
}

@media (max-width: 1240px) {
  .header .header-wrapper .header-logotype {
    order: 1;
  }
  .header .header-wrapper .header-contacts {
    order: 2;
  }
  .header .header-wrapper .header-burger {
    order: 3;
  }
  .header .header-wrapper .header-logotype .header-logotype__svg {
    width: 60px;
    height: 60px;
  }
  .header .header-wrapper .header-logotype .header-logotype__content .header-logotype__content-title {
    font-size: 22px;
  }
  .header .header-wrapper .menu-list {
    display: none;
  }
  .header .header-wrapper .header-burger {
    display: block;
    height: 50px;
  }
  .header .header-wrapper .header-burger:after {
    content: "Меню";
    display: inline-block;
    margin-left: 65px;
    font-size: 26px;
    color: #2A7DBE;
  }
  .header .header-wrapper .header-burger span {
    max-width: 50px;
    height: 3px;
  }
  .header .header-wrapper .header-burger span:before, .header .header-wrapper .header-burger span:after {
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
    height: 3px;
    background-color: #2A7DBE;
  }
  .header .header-wrapper .header-burger span:before {
    top: -12px;
  }
  .header .header-wrapper .header-burger span:after {
    top: 12px;
  }
  .header .header-wrapper .header-contacts {
    max-width: max-content;
  }
  .header .header-wrapper .header-contacts a {
    margin-right: 12px;
  }
  .main .line-wrapper .main-slide-calculation {
    width: 100%;
    margin-left: 0;
    order: 2;
  }
  .main .line-wrapper .main-content {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    width: 100%;
    margin-bottom: 45px;
    padding-top: 0;
    order: 1;
  }
  .main .line-wrapper .main-content .main-content__suptitle {
    color: #4B4B4B;
  }
  .main .line-wrapper .main-content .main-content__line {
    margin-left: 0;
    background-color: #4B4B4B;
  }
  .main .line-wrapper .main-content .main-content__descr {
    width: 60%;
    margin-bottom: 0;
  }
  .main .line-wrapper .main-content .main-content__btn {
    width: 40%;
  }
  .main .line-wrapper .main-content .main-content__btn .btn-blue {
    color: #4B4B4B;
    background-color: transparent;
    border-color: #4B4B4B;
  }
  .preferences {
    padding-bottom: 80px;
  }
  .preferences .line-wrapper .preferences-item {
    padding: 30px 20px;
  }
  .catalog {
    padding-bottom: 50px;
  }
  .card {
    width: 300px;
    margin-bottom: 20px;
  }
  .card .card__content .card__content-title {
    font-size: 21px;
  }
  .card.card-bigger .card__content {
    padding-right: 14px;
    padding-left: 14px;
  }
  .about-company {
    padding-top: 90px;
  }
  .about-company .line-wrapper .about-company__content {
    max-width: 100%;
    margin-bottom: 40px;
  }
  .about-company .line-wrapper .about-company__icons {
    max-width: 300px;
  }
  .project .line-wrapper .project-content {
    max-width: 340px;
  }
  .project .line-wrapper .project-sliders {
    width: 550px;
  }
  .project .line-wrapper .project-sliders:before {
    left: -15%;
  }
  .project .line-wrapper .project-sliders .project-slider {
    height: 580px;
  }
  .about-stairs {
    padding-top: 90px;
  }
  .about-stairs .line-wrapper .about-stairs__image {
    max-width: 440px;
  }
  .about-stairs .line-wrapper .about-stairs__image:before {
    bottom: 0;
    left: 100px;
    width: 100px;
    height: 100px;
  }
  .about-stairs .line-wrapper .about-stairs__image:after {
    bottom: -40px;
    left: 180px;
    width: 80px;
    height: 80px;
  }
  .about-stairs .line-wrapper .about-stairs__content {
    max-width: 490px;
  }
  .how-worked {
    padding-top: 90px;
    padding-bottom: 100px;
  }
  .how-worked .line-wrapper .how-worked__items .how-worked__item {
    max-width: 50%;
  }
  .question .line-wrapper .question-map {
    order: 2;
    width: 100%;
    max-width: 100%;
    margin-left: 0;
  }
  .question .line-wrapper .question-form {
    order: 1;
    max-width: 100%;
    margin-bottom: 40px;
  }
  .breadcrumbs {
    top: 110px;
  }
  .about .line-wrapper .about-descr {
    order: 1;
    max-width: 100%;
    margin-bottom: 40px;
  }
  .about .line-wrapper .about-image {
    order: 2;
    max-width: 420px;
  }
  .about .line-wrapper .about-params {
    order: 3;
    max-width: 380px;
  }
  .principles .line-wrapper .principles-item {
    max-width: 48%;
  }
  .principles .line-wrapper .principles-item:not(:last-child) {
    margin-bottom: 30px;
  }
  .principles .line-wrapper .principles-item:last-child {
    max-width: 100%;
  }
  .principles .line-wrapper .principles-item:last-child br {
    display: none;
  }
  .reviews {
    padding-top: 100px;
    padding-bottom: 110px;
  }
  .reviews .line-wrapper:before {
    left: -30px;
  }
  .reviews-page .reviews-page__items .reviews-page__item {
    padding: 40px 46px;
  }
  .single-card .line-wrapper .single-card__box {
    padding: 26px 20px;
  }
  .single-card .line-wrapper .single-card__box .single-card__image {
    max-width: 420px;
  }
  .single-card .line-wrapper .single-card__box .single-card__image .single-card__gallery {
    height: 320px;
    margin-bottom: 50px;
  }
  .single-card .line-wrapper .single-card__box .single-card__content {
    max-width: 450px;
  }
  .contacts .line-wrapper .contacts-items .contacts-items__item {
    max-width: 50%;
  }
  .team .line-wrapper .team-item {
    width: 298px;
  }
  .team .line-wrapper .team-item:nth-child(4n+1) {
    margin-right: 20px;
  }
  .team .line-wrapper .team-item:nth-child(3n+1) {
    margin-right: 0px;
  }
  .news .line-wrapper .news-items .news-item {
    max-width: 300px;
  }
  .news .line-wrapper .news-items .news-item .news-item__image {
    height: 180px;
    margin-bottom: 15px;
  }
  .news .line-wrapper .news-items .news-item .news-item__content .news-item__content-top {
    margin-bottom: 15px;
  }
  .news .line-wrapper .news-items .news-item:nth-child(-n+2) {
    max-width: 460px;
  }
  .news .line-wrapper .news-items .news-item:nth-child(-n+2) .news-item__image {
    height: 260px;
    margin-bottom: 15px;
  }
  .busked .line-wrapper .busked-container .busked-top, .busked .line-wrapper .busked-container .busked-middle {
    padding: 20px;
  }
  .busked .line-wrapper .busked-container .busked-middle .busked-middle__items .busked-item .busked-item__title {
    padding-right: 10px;
    padding-left: 10px;
  }
  .busked .line-wrapper .busked-container .busked-container__wrapper .busked-container__wrapper-right, .busked .line-wrapper .busked-container .busked-container__wrapper .busked-container__wrapper-left {
    max-width: 440px;
  }
  .busked .line-wrapper .busked-container .busked-container__user .busked-middle .busked-group, .busked .line-wrapper .busked-container .busked-container__address .busked-middle .busked-group {
    max-width: 100%;
  }
  .busked .line-wrapper .busked-container .busked-container__user .busked-middle .busked-group:not(:last-child), .busked .line-wrapper .busked-container .busked-container__address .busked-middle .busked-group:not(:last-child) {
    margin-bottom: 16px;
  }
  .busked .line-wrapper .busked-container .busked-container__payment .busked-middle {
    min-height: 239px;
  }
  .background-box {
    padding: 26px 20px;
  }
  .component-calculation {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    max-width: initial;
  }
  .component-calculation .component-calculation__title {
    max-width: max-content;
  }
  .component-calculation .component-calculation__btn {
    max-width: max-content;
  }
}
@media (max-width: 991px) {
  .header .header-wrapper .header-contacts,
  .preferences .line-wrapper:before, .preferences .line-wrapper:after,
  .order-3d .line-wrapper:before, .order-3d .line-wrapper:after,
  .about-stairs .line-wrapper .about-stairs__image:after,
  .busked .line-wrapper .busked-container .busked-middle .busked-middle__items .busked-item.busked-item-top, .busked .line-wrapper .busked-container .busked-middle .busked-middle__items .busked-item .busked-item__img {
    display: none;
  }
  .main .line-wrapper .main-content .main-content__btn {
    max-width: max-content;
  }
  .main .line-wrapper .main-slide-calculation .main-slider {
    height: 440px;
  }
  .preferences {
    padding-top: 60px;
  }
  .preferences .line-wrapper .preferences-item {
    width: 100%;
  }
  .preferences .line-wrapper .preferences-item:nth-child(2) {
    border-right: 0;
    border-left: 0;
  }
  .preferences .line-wrapper .preferences-item:not(:last-child) {
    border-bottom: 2px solid #F4F4F4;
  }
  .card {
    width: 330px;
  }
  .order-3d .line-wrapper .form .form-group {
    width: 224px;
    margin-bottom: 45px;
  }
  .project {
    padding-top: 70px;
  }
  .project .line-wrapper .project-content {
    max-width: 100%;
    margin-bottom: 40px;
  }
  .project .line-wrapper .project-sliders {
    margin: 0 auto;
  }
  .project .line-wrapper .project-sliders .project-slider__navigation .project-slider__navigation-dots {
    width: calc(100% - 210px);
    max-width: none;
    height: 120px;
    padding-left: 40px;
    background-color: #46A1E8;
  }
  .about-stairs .line-wrapper {
    justify-content: center;
  }
  .about-stairs .line-wrapper .about-stairs__image {
    margin-bottom: 40px;
  }
  .about-stairs .line-wrapper .about-stairs__content {
    max-width: 100%;
  }
  .question {
    padding-bottom: 80px;
  }
  .about .line-wrapper .about-image {
    max-width: 365px;
  }
  .about .line-wrapper .about-params {
    max-width: 300px;
  }
  .principles {
    padding-bottom: 80px;
  }
  .projects {
    padding-top: 80px;
    padding-bottom: 90px;
  }
  .projects .line-wrapper .projects-slider {
    width: calc(100% + 30px);
  }
  .projects .line-wrapper .projects-slider .projects-slide {
    width: 346px;
    height: 460px;
    margin-right: 15px;
  }
  .reviews {
    padding-top: 80px;
    padding-bottom: 90px;
  }
  .reviews .line-wrapper .reviews-slider {
    padding: 30px;
  }
  .reviews .line-wrapper .reviews-slider .component-arrows {
    top: 30px;
    right: 30px;
  }
  .reviews .line-wrapper .reviews-slider__navigations {
    bottom: 30px;
    padding-left: 183px;
  }
  .single-card .line-wrapper .single-card__box .single-card__image {
    max-width: 100%;
    margin-bottom: 40px;
  }
  .single-card .line-wrapper .single-card__box .single-card__image .single-card__gallery {
    height: 420px;
    margin-bottom: 0;
  }
  .single-card .line-wrapper .single-card__box .single-card__content {
    max-width: 100%;
  }
  .faq .line-wrapper .faq-items .faq-items__item .faq-items__item-top .faq-items__item-top__title {
    font-size: 16px;
  }
  .faq .line-wrapper .faq-items .faq-items__item.faq-items__item-active .faq-items__item-content .faq-items__item-content__descr {
    font-size: 15px;
  }
  .contacts .line-wrapper .contacts-items .contacts-items__item {
    max-width: 100%;
  }
  .team .line-wrapper {
    justify-content: space-between;
  }
  .team .line-wrapper .team-item {
    width: 330px;
  }
  .team .line-wrapper .team-item, .team .line-wrapper .team-item:nth-child(3n+1), .team .line-wrapper .team-item:nth-child(4n+1) {
    margin-right: 0;
  }
  .guarantee .line-wrapper .guarantee-description .guarantee-description__image .guarantee-description__image-text {
    max-width: calc(100% - 290px);
  }
  .guarantee .line-wrapper .guarantee-description .guarantee-description__image img {
    max-width: 280px;
  }
  .news .line-wrapper .news-items .news-item, .news .line-wrapper .news-items .news-item:nth-child(-n+2) {
    max-width: 335px;
    margin-bottom: 20px;
  }
  .news .line-wrapper .news-items .news-item:nth-child(-n+2) {
    padding: 10px;
  }
  .news .line-wrapper .news-items .news-item:nth-child(-n+2) .news-item__image {
    height: 180px;
  }
  .news .line-wrapper .news-items .news-item:nth-child(-n+2) .news-item__content .news-item__content-title {
    font-size: 16px;
  }
  .download .line-wrapper .download-items .download-item {
    max-width: 330px;
  }
  .busked .line-wrapper .busked-container .busked-middle .busked-middle__items .busked-item {
    min-height: 85px;
    border-top: 1px solid #2a7dbe;
    border-bottom: none;
  }
  .busked .line-wrapper .busked-container .busked-middle .busked-middle__items .busked-item:last-child {
    border-bottom: 1px solid #2a7dbe;
  }
  .busked .line-wrapper .busked-container .busked-middle .busked-middle__items .busked-item .busked-item__title {
    max-width: calc(100% - 246px);
  }
  .busked .line-wrapper .busked-container .busked-middle .busked-middle__items .busked-item .busked-item__quantity {
    max-width: 115px;
  }
  .busked .line-wrapper .busked-container .busked-middle .busked-middle__items .busked-item .busked-item__quantity .busked-item__minus, .busked .line-wrapper .busked-container .busked-middle .busked-middle__items .busked-item .busked-item__quantity .busked-item__num, .busked .line-wrapper .busked-container .busked-middle .busked-middle__items .busked-item .busked-item__quantity .busked-item__plus {
    width: 35px;
    height: 35px;
  }
  .busked .line-wrapper .busked-container .busked-middle .busked-middle__items .busked-item .busked-item__price {
    max-width: 80px;
  }
  .busked .line-wrapper .busked-container .busked-middle .busked-middle__items .busked-item .busked-item__delete {
    max-width: 50px;
  }
  .busked .line-wrapper .busked-container .busked-middle .busked-middle__result .busked-middle__result-table {
    max-width: 400px;
  }
  .busked .line-wrapper .busked-container .busked-middle .busked-middle__result .busked-middle__result-table .busked-middle__result-table__text {
    padding: 10px 15px 10px 10px;
    font-size: 13px;
  }
  .busked .line-wrapper .busked-container .busked-container__wrapper .busked-container__wrapper-right, .busked .line-wrapper .busked-container .busked-container__wrapper .busked-container__wrapper-left {
    max-width: 100%;
  }
  .busked .line-wrapper .busked-container .busked-container__payment .busked-middle {
    min-height: auto;
  }
  .footer .line-wrapper .footer-logotype {
    order: 1;
  }
  .footer .line-wrapper .footer-contacts {
    order: 2;
  }
  .footer .line-wrapper .footer-menu {
    justify-content: flex-start;
    order: 3;
    max-width: 100%;
    padding: 30px 0;
  }
  .footer .line-wrapper .footer-menu .menu-item {
    width: 33%;
  }
  .footer .line-wrapper .footer-bottom {
    order: 4;
  }
  .footer .line-wrapper .footer-bottom .footer-bottom__text {
    max-width: 50%;
  }
  .popup.popup-call .popup-content {
    width: 690px;
  }
  .popup.popup-call .popup-content .popup-content-wrapper {
    min-height: 410px;
  }
  .popup.popup-call .popup-content .popup-content__details {
    width: 310px;
  }
  .popup.popup-call .popup-content .popup-content__form {
    width: calc(100% - 321px);
  }
  .popup.popup-call .popup-content .popup-content__details-navigations {
    left: 224px;
  }
  .component-basket {
    width: 98vw;
  }
}
@media (max-width: 768px) {
  .body-background-blue,
  .body-background-gray,
  .how-worked .line-wrapper .how-worked__items:after,
  .footer .line-wrapper .footer-menu, .footer .line-wrapper .footer-contacts,
  .component-basket .component-content .component-content__middle .busked-items .busked-item .busked-item__img {
    display: none;
  }
  .main {
    background: #46A1E8;
  }
  .main:before {
    background-image: repeating-linear-gradient(0deg, transparent, transparent 39px, rgba(255, 255, 255, 0.07) 40px), repeating-linear-gradient(90deg, transparent, transparent 39px, rgba(255, 255, 255, 0.07) 40px);
  }
  .main .line-wrapper .main-content {
    padding-top: 25px;
  }
  .main .line-wrapper .main-content .main-content__suptitle {
    color: rgba(255, 255, 255, 0.75);
  }
  .main .line-wrapper .main-content .main-content__title {
    color: #fff;
  }
  .main .line-wrapper .main-content .main-content__line {
    background-color: rgba(255, 255, 255, 0.9);
    margin-left: 0;
  }
  .main .line-wrapper .main-content .main-content__descr {
    color: rgba(255, 255, 255, 0.9);
  }
  .main .line-wrapper .main-content .main-content__btn .btn-blue {
    background-color: #fff;
    color: #46A1E8;
  }
  .main .line-wrapper .main-slide-calculation {
    background: #fff;
    margin-top: 20px;
  }
  .header.header-modern {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    background: #46A1E8;
    z-index: 500;
  }
  .header .header-wrapper .header-logotype .header-logotype__svg svg path:nth-child(-n+6) {
    fill: #fff;
  }
  .header .header-wrapper .header-logotype .header-logotype__content .header-logotype__content-title, .header .header-wrapper .header-logotype .header-logotype__content .header-logotype__content-descr {
    color: #fff;
  }
  .header .header-wrapper .header-burger:after {
    color: #fff;
  }
  .header .header-wrapper .header-burger span, .header .header-wrapper .header-burger span:before, .header .header-wrapper .header-burger span:after {
    background-color: #fff;
  }
  .header.is-sticky {
    background: #f6f6f6;
  }
  .header.is-sticky .header-wrapper .header-logotype .header-logotype__svg svg path:nth-child(-n+6) {
    fill: #202020;
  }
  .header.is-sticky .header-wrapper .header-logotype .header-logotype__content .header-logotype__content-title, .header.is-sticky .header-wrapper .header-logotype .header-logotype__content .header-logotype__content-descr {
    color: #202020;
  }
  .header.is-sticky .header-wrapper .header-burger:after {
    color: #202020;
  }
  .header.is-sticky .header-wrapper .header-burger span, .header.is-sticky .header-wrapper .header-burger span:before, .header.is-sticky .header-wrapper .header-burger span:after {
    background-color: #202020;
  }
  .main .line-wrapper .main-slide-calculation .main-slider {
    height: 320px;
  }
  .main .line-wrapper .main-content .main-content__descr {
    width: 100%;
    margin-bottom: 35px;
  }
  .main .line-wrapper .main-content .main-content__btn {
    width: 100%;
    max-width: none;
  }
  .preferences {
    padding-bottom: 60px;
  }
  .card {
    width: 250px;
  }
  .card .card__content .card__content-title {
    font-size: 18px;
  }
  .card .card__content .card__content-item:not(:last-child) {
    margin-bottom: 12px;
  }
  .card .card__content .card__content-item .card__content-item__label {
    max-width: 100%;
    margin-bottom: 5px;
  }
  .card .card__content .card__content-item .card__content-item__descr {
    max-width: 100%;
  }
  .order-3d {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .order-3d .line-wrapper .title-h2 .h2 {
    font-size: 26px;
  }
  .order-3d .line-wrapper .form .form-group {
    width: 100%;
  }
  .about-company {
    padding-top: 60px;
    padding-bottom: 80px;
  }
  .about-company .line-wrapper .about-company__icons {
    max-width: 100%;
    margin-bottom: 40px;
  }
  .about-company .line-wrapper .about-company__image {
    max-width: 100%;
  }
  .project {
    padding-top: 60px;
  }
  .project .line-wrapper .project-sliders {
    width: 100%;
  }
  .project .line-wrapper .works-slider-wrapper .works-slider-arrow {
    display: none;
  }
  .how-worked .line-wrapper .how-worked__items .how-worked__item {
    max-width: 100%;
  }
  .question {
    padding-top: 80px;
  }
  .breadcrumbs {
    top: 100px;
  }
  .breadcrumbs .breadcrumbs-items, .breadcrumbs .breadcrumbs-items .breadcrumbs-item:not(:last-child):after {
    border-color: #202020;
  }
  .breadcrumbs .breadcrumbs-items .breadcrumbs-item {
    color: #202020;
  }
  .about .line-wrapper .title-h2.title-h2-line-d:before {
    background-color: #46A1E8;
  }
  .about .line-wrapper .title-h2 .h2-white {
    color: #202020;
  }
  .about .line-wrapper .about-image {
    max-width: 100%;
    margin-bottom: 40px;
  }
  .about .line-wrapper .about-params {
    max-width: 100%;
  }
  .about .line-wrapper .about-params .about-params__param {
    padding-left: 7px;
  }
  .about .line-wrapper .about-params .about-params__param:before {
    left: 0;
  }
  .principles .line-wrapper .principles-item {
    max-width: 100%;
  }
  .projects {
    padding-top: 80px;
    padding-bottom: 90px;
  }
  .projects .line-wrapper .projects-slider {
    width: calc(100% + 10px);
  }
  .projects .line-wrapper .projects-slider .projects-slide {
    width: 253px;
    height: 320px;
    margin-right: 8px;
  }
  .reviews-page .reviews-page__items .reviews-page__item {
    padding: 22px 20px;
  }
  .reviews-page .reviews-page__items .reviews-page__item .reviews-page__item-image {
    margin-right: 16px;
  }
  .reviews-page .reviews-page__items .reviews-page__item .reviews-page__item-content {
    width: calc(100% - 140px);
  }
  .single-card .line-wrapper .single-card__box .single-card__image .single-card__gallery {
    height: 300px;
  }
  .team .line-wrapper .team-item {
    width: 254px;
  }
  .guarantee .line-wrapper .guarantee-description .guarantee-description__image .guarantee-description__image-text {
    max-width: 100%;
    margin-bottom: 20px;
  }
  .guarantee .line-wrapper .guarantee-description .guarantee-description__image img {
    max-width: 280px;
    margin: 0 auto;
  }
  .news .line-wrapper .news-items .news-item, .news .line-wrapper .news-items .news-item:nth-child(-n+2) {
    max-width: 250px;
  }
  .busked .background-box.background-box-small {
    padding: 0;
  }
  .busked .line-wrapper .busked-container .busked-middle {
    font-size: 14px;
  }
  .busked .line-wrapper .busked-container .busked-middle .busked-middle__result .busked-middle__result-clean {
    margin-bottom: 20px;
  }
  .busked .line-wrapper .busked-container .busked-middle .busked-middle__result .busked-middle__result-table {
    max-width: 100%;
  }
  .busked .line-wrapper .busked-container .busked-container__wrapper .busked-container__wrapper-left .busked-container__submit {
    padding-bottom: 20px;
  }
  .footer .line-wrapper .footer-logotype {
    max-width: 100%;
    margin-bottom: 30px;
  }
  .popup.popup-call .popup-content {
    width: 86vw;
    max-width: 440px;
  }
  .popup.popup-call .popup-content .popup-content__form {
    order: 1;
    width: 100%;
    max-width: 100%;
    margin-bottom: 30px;
    padding-left: 0;
    border: none;
  }
  .popup.popup-call .popup-content .popup-content__details {
    order: 2;
    width: 100%;
    max-width: 100%;
  }
  .popup.popup-call .popup-content .popup-content__details-navigations {
    top: 40px;
    right: -39px;
    left: auto;
    bottom: auto;
    width: 40px;
    min-height: 90px;
  }
  .component-calculation {
    padding: 30px 40px;
  }
  .component-basket .component-content .component-content__middle .busked-items {
    max-height: 200px;
  }
  .component-basket .component-content .component-content__middle .busked-items .busked-item .busked-item__title {
    max-width: calc(100% - 227px);
  }
  .component-basket .component-content .component-content__middle .busked-items .busked-item .busked-item__title span {
    font-size: 18px;
  }
  .component-basket .component-content .component-content__middle .busked-items .busked-item .busked-item__quantity {
    width: 100px;
  }
  .component-basket .component-content .component-content__middle .busked-items .busked-item .busked-item__price {
    width: 80px;
  }
  .component-basket .component-content .component-content__middle .busked-items .busked-item .busked-item__delete {
    width: 46px;
  }
  .component-basket .component-content .component-content__bottom .busked-middle__result-table {
    order: 1;
    max-width: 100%;
    margin-bottom: 30px;
  }
  .component-basket .component-content .component-content__bottom .busked-middle__result-clean {
    order: 2;
    max-width: 100%;
  }
  .component-basket .component-content .component-content__bottom .busked-middle__result-clean .btn-clean, .component-basket .component-content .component-content__bottom .busked-middle__result-clean .btn-blue {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    max-width: 40%;
  }
}
@media (max-width: 576px) {
  .about-company .line-wrapper:after,
  .project:before, .project .line-wrapper .project-sliders:after, .project .line-wrapper .project-sliders:before,
  .about-stairs .line-wrapper .about-stairs__image:before,
  .how-worked:before,
  .reviews .line-wrapper:before, .reviews .line-wrapper:after, .reviews .line-wrapper .reviews-slider__navigations, .reviews .line-wrapper .reviews-slider .reviews-slide .reviews-slide__avatar,
  .single-card .line-wrapper .single-card__box .single-card__content:before {
    display: none;
  }
  .header .header-wrapper .header-logotype {
    align-items: center;
    max-width: 270px;
  }
  .header .header-wrapper .header-logotype .header-logotype__svg {
    width: 50px;
    height: 50px;
  }
  .header .header-wrapper .header-logotype .header-logotype__content .header-logotype__content-title {
    font-size: 28px;
  }
  .header .header-wrapper .header-logotype .header-logotype__content .header-logotype__content-descr {
    display: none;
    font-size: 0px;
  }
  .header .header-wrapper .header-burger {
    width: 50px;
  }
  .header .header-wrapper .header-burger:after {
    display: none;
  }
  .main .line-wrapper .main-content,
  .main .line-wrapper .main-content .main-content__title,
  .main .line-wrapper .main-content .main-content__line,
  .main .line-wrapper .main-content .main-content__descr {
    margin-bottom: 30px;
  }
  .main .line-wrapper .main-content .main-content__title {
    font-size: 34px;
  }
  .main .line-wrapper .main-content .main-content__descr {
    font-size: 15px;
  }
  .main .line-wrapper .main-slide-calculation .main-slider {
    height: 240px;
  }
  .preferences .line-wrapper .preferences-item {
    padding: 20px 12px;
  }
  .catalog .line-wrapper {
    justify-content: center;
  }
  .card {
    width: 100%;
    max-width: 320px;
  }
  .catalog-category .line-wrapper {
    justify-content: center;
  }
  .order-3d .line-wrapper .title-h2 .h2 {
    font-size: 22px;
  }
  .order-3d .line-wrapper .order-3d__subtitle {
    padding-bottom: 60px;
    font-size: 16px;
  }
  .order-3d .line-wrapper .form .form-btn input {
    margin-right: 0;
    margin-bottom: 12px;
  }
  .order-3d .line-wrapper .form .form-btn .policy {
    width: 100%;
    text-align: center;
  }
  .about-company {
    padding-bottom: 60px;
  }
  .about-company .line-wrapper .about-company__content .about-company__content-title {
    margin-bottom: 15px;
    font-size: 21px;
  }
  .project {
    padding-top: 45px;
  }
  .project .line-wrapper .project-sliders .project-slider {
    height: 500px;
  }
  .project .line-wrapper .project-sliders .project-slider__navigation .project-slider__navigation-arrows {
    width: 160px;
    height: 80px;
  }
  .project .line-wrapper .project-sliders .project-slider__navigation .project-slider__navigation-dots {
    width: calc(100% - 160px);
    height: 80px;
    padding-left: 20px;
  }
  .about-stairs {
    padding-top: 60px;
    padding-bottom: 80px;
  }
  .how-worked {
    padding-top: 60px;
    padding-bottom: 80px;
  }
  .how-worked .line-wrapper .how-worked__items .how-worked__item {
    padding: 30px 20px;
  }
  .question {
    padding-top: 60px;
    padding-bottom: 50px;
  }
  .question .line-wrapper .question-map {
    height: 420px;
  }
  .breadcrumbs {
    top: 85px;
  }
  .breadcrumbs .breadcrumbs-items .breadcrumbs-item {
    font-size: 13px;
  }
  .principles .line-wrapper .principles-item .principles-item__title {
    margin-bottom: 15px;
    font-size: 20px;
  }
  .projects {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .projects .line-wrapper .component-arrows {
    top: auto;
    right: -1px;
    bottom: 0;
    background-color: #ffffff;
  }
  .projects .line-wrapper .projects-slider {
    width: 100%;
    margin-bottom: 30px;
  }
  .reviews {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .reviews .line-wrapper .reviews-slider {
    padding: 18px;
  }
  .reviews .line-wrapper .reviews-slider .component-arrows {
    top: auto;
    right: 0;
    bottom: 0;
    background-color: #ffffff;
  }
  .reviews .line-wrapper .reviews-slider .reviews-slide .reviews-slide__content {
    position: relative;
    max-width: 100%;
  }
  .reviews .line-wrapper .reviews-slider .reviews-slide .reviews-slide__content .reviews-slide__content-top {
    max-width: 100%;
  }
  .reviews-page .reviews-page__items .reviews-page__item .reviews-page__item-image {
    display: none;
  }
  .reviews-page .reviews-page__items .reviews-page__item .reviews-page__item-content {
    width: 100%;
  }
  .single-card .line-wrapper .single-card__box {
    padding: 12px;
  }
  .single-card .line-wrapper .single-card__box .single-card__image .single-card__gallery {
    height: 270px;
  }
  .contacts .line-wrapper .contacts-items .contacts-items__item {
    padding: 30px;
  }
  .contacts .line-wrapper .contacts-items .contacts-items__item .contacts-items__item-icon {
    width: 50px;
    height: 50px;
    margin-right: 20px;
  }
  .faq .line-wrapper .faq-items .faq-items__item {
    padding-left: 0;
  }
  .faq .line-wrapper .faq-items .faq-items__item.faq-items__item-active .faq-items__item-content {
    padding-left: 10px;
  }
  .faq .line-wrapper .faq-items .faq-items__item .faq-items__item-top .faq-items__item-top__title {
    padding-top: 10px;
    padding-bottom: 10px;
    font-size: 15px;
  }
  .faq .line-wrapper .faq-items .faq-items__item:last-child.faq-items__item-active .faq-items__item-top .faq-items__item-top__title {
    padding-bottom: 10px;
  }
  .faq .line-wrapper .faq-items .faq-items__item.faq-items__item-active .faq-items__item-content {
    max-width: 100%;
  }
  .faq .line-wrapper .faq-items .faq-items__item.faq-items__item-active .faq-items__item-content .faq-items__item-content__descr {
    font-size: 14px;
  }
  .team .line-wrapper {
    justify-content: center;
  }
  .team .line-wrapper .team-item {
    width: 100%;
    max-width: 390px;
  }
  .team .line-wrapper .team-item .team-item__image {
    height: 420px;
  }
  .guarantee .line-wrapper .guarantee-description .fz-23 {
    margin-bottom: 14px;
    font-size: 19px;
  }
  .guarantee .line-wrapper .guarantee-description .fz-16 {
    font-size: 14px;
  }
  .news .line-wrapper .news-items {
    justify-content: center;
  }
  .news .line-wrapper .news-items .news-item, .news .line-wrapper .news-items .news-item:nth-child(-n+2) {
    max-width: 350px;
  }
  .busked .line-wrapper .busked-container .busked-middle .busked-middle__items .busked-item .busked-item__title {
    max-width: 100%;
    min-height: 52px;
    border-right: none;
  }
  .busked .line-wrapper .busked-container .busked-middle .busked-middle__items .busked-item .busked-item__delete {
    max-width: 46px;
  }
  .busked .line-wrapper .busked-container .busked-middle .busked-middle__items .busked-item .busked-item__quantity, .busked .line-wrapper .busked-container .busked-middle .busked-middle__items .busked-item .busked-item__price {
    max-width: calc(50% - 23px);
    border-right: none;
  }
  .busked .line-wrapper .busked-container .busked-middle .busked-middle__result .busked-middle__result-table .busked-middle__result-table__text:nth-child(odd) {
    max-width: calc(100% - 91px);
  }
  .busked .line-wrapper .busked-container .busked-middle .busked-middle__result .busked-middle__result-table .busked-middle__result-table__text:nth-child(even) {
    max-width: 90px;
  }
  .footer .line-wrapper .footer-bottom .footer-bottom__text {
    max-width: 100%;
    text-align: left;
  }
  .footer .line-wrapper .footer-bottom .footer-bottom__text:not(:last-child) {
    margin-bottom: 8px;
  }
  .background-box {
    padding: 12px;
  }
  .component-calculation .component-calculation__title {
    font-size: 21px;
  }
  .component-paginations .component-paginations__num {
    width: 24px;
    height: 24px;
    font-size: 18px;
  }
  .component-paginations .component-paginations__num.component-paginations__num-active {
    font-size: 22px;
  }
  .component-paginations .component-paginations__prev, .component-paginations .component-paginations__next {
    width: 40px;
    height: 40px;
    margin: 0 10px;
  }
  .component-icons {
    width: 50px;
  }
  .component-icons .component-icon {
    justify-content: center;
    height: auto;
  }
  .component-icons .component-icon img {
    width: 100%;
    max-width: 24px;
    margin-bottom: 8px;
  }
  .component-icons .component-icon .component-icon__num {
    width: 100%;
  }
  .component-basket .component-content {
    max-height: 92vh;
  }
  .component-basket .component-content .component-content__middle .busked-items .busked-item {
    position: relative;
    padding-bottom: 3px;
  }
  .component-basket .component-content .component-content__middle .busked-items .busked-item .busked-item__title {
    max-width: 100%;
    border: none;
  }
  .component-basket .component-content .component-content__middle .busked-items .busked-item .busked-item__quantity {
    width: 40%;
    border: none;
  }
  .component-basket .component-content .component-content__middle .busked-items .busked-item .busked-item__price {
    width: 33%;
    border: none;
  }
  .component-basket .component-content .component-content__middle .busked-items .busked-item .busked-item__delete {
    position: absolute;
    right: -1px;
    bottom: -1px;
  }
  .component-basket .component-content .component-content__bottom .busked-middle__result-clean .btn-clean, .component-basket .component-content .component-content__bottom .busked-middle__result-clean .btn-blue {
    max-width: 50%;
  }
  .component-basket .component-content .component-content__bottom .busked-middle__result-clean .btn-clean {
    padding: 10px 15px 10px 5px;
  }
  .component-basket .component-content .component-content__bottom .busked-middle__result-clean .btn-blue {
    padding: 10px;
  }
  .component-basket .component-content .component-content__bottom .busked-middle__result-table .busked-middle__result-table__text:nth-child(even) {
    max-width: 110px;
  }
  .component-basket .component-content .component-content__bottom .busked-middle__result-table .busked-middle__result-table__text:nth-child(odd) {
    max-width: calc(100% - 111px);
  }
}
@media (max-width: 400px) {
  .header-menu .header-menu__top .header-menu__top-content .header-menu__top-content-descr {
    display: none;
  }
  .header .header-wrapper .header-logotype {
    max-width: 200px;
  }
  .header .header-wrapper .header-logotype .header-logotype__content {
    width: calc(100% - 61px);
  }
  .header-menu .menu-close {
    right: 10px;
  }
  .header-menu .menu-close svg rect {
    fill: #4B4B4B;
  }
  .header-menu .header-menu__top {
    align-items: center;
  }
  .header-menu .header-menu__top .header-menu__top-svg {
    width: 50px;
    height: 50px;
  }
  .header-menu .header-menu__top .header-menu__top-content {
    width: calc(100% - 61px);
  }
  .main .line-wrapper .main-content .main-content__title {
    font-size: 29px;
  }
  .main .line-wrapper .main-content,
  .main .line-wrapper .main-content .main-content__title,
  .main .line-wrapper .main-content .main-content__line,
  .main .line-wrapper .main-content .main-content__descr {
    margin-bottom: 20px;
  }
  .preferences {
    padding-top: 40px;
    padding-bottom: 40px;
  }
  .preferences .line-wrapper .preferences-item .preferences-item__svg {
    width: 50px;
    height: 50px;
    margin-right: 20px;
  }
  .preferences .line-wrapper .preferences-item .preferences-item__svg:before {
    left: -4px;
    width: 16px;
    height: 76px;
  }
  .preferences .line-wrapper .preferences-item .preferences-item__content {
    width: calc(100% - 71px);
  }
  .preferences .line-wrapper .preferences-item .preferences-item__content .preferences-item__content-title {
    font-size: 17px;
  }
  .preferences .line-wrapper .preferences-item .preferences-item__content .preferences-item__content-descr {
    font-size: 13px;
    line-height: 1.3;
  }
  .project .line-wrapper .project-sliders .project-slider {
    height: 450px;
  }
  .project .line-wrapper .project-sliders .project-slider__navigation .project-slider__navigation-dots {
    position: absolute;
    top: -50px;
    left: 0;
    width: 100%;
    height: auto;
    background-color: transparent;
    z-index: 10;
  }
  .project .line-wrapper .project-sliders .project-slider__navigation .project-slider__navigation-dots .project-slider__navigation-dot {
    background-color: #46A1E8;
  }
  .about-stairs {
    padding-bottom: 60px;
  }
  .how-worked {
    padding-top: 50px;
  }
  .how-worked .line-wrapper .how-worked__items .how-worked__item .how-worked__item-num {
    margin-right: 14px;
  }
  .how-worked .line-wrapper .how-worked__items .how-worked__item .how-worked__item-content {
    width: calc(100% - 55px);
  }
  .question .line-wrapper .question-map {
    height: 360px;
  }
  .single-card .line-wrapper .single-card__box .single-card__image {
    margin-bottom: 25px;
  }
  .single-card .line-wrapper .single-card__box .single-card__image .single-card__gallery {
    height: 200px;
  }
  .contacts .line-wrapper .contacts-items .contacts-items__item {
    padding: 18px;
  }
  .contacts .line-wrapper .contacts-items .contacts-items__item .contacts-items__item-icon {
    width: 40px;
    height: 40px;
    margin-right: 15px;
  }
  .contacts .line-wrapper .contacts-items .contacts-items__item .contacts-items__item-content {
    min-width: 200px;
  }
  .team .line-wrapper .team-item .team-item__image {
    height: 390px;
  }
  .component-calculation {
    padding: 18px 24px;
  }
  .component-calculation .component-calculation__title {
    font-size: 18px;
  }
  .component-basket .component-content .component-content__bottom .busked-middle__result-clean .btn-clean, .component-basket .component-content .component-content__bottom .busked-middle__result-clean .btn-blue {
    max-width: 100%;
  }
}

/* Cookie banner mobile */
@media (max-width: 768px) {
  .cookie-banner__inner {
    flex-direction: column;
    gap: 15px;
    text-align: center;
  }
  .cookie-banner__actions {
    width: 100%;
    justify-content: center;
  }
  .cookie-banner__actions .btn-blue,
  .cookie-banner__actions .btn-outline {
    flex: 1;
    max-width: 200px;
    text-align: center;
  }
  .text-page h2 { font-size: 22px; margin-bottom: 20px; }
  .text-page h3 { font-size: 17px; margin-top: 25px; margin-bottom: 12px; }
  .text-page p { font-size: 14px; }
  .text-page ul li { font-size: 14px; margin-bottom: 6px; }
  .gallery-21-section { padding: 30px 0; }
  .gallery-21 {
    grid-template-columns: repeat(3, 1fr);
    grid-auto-rows: 100px;
  }
  .gallery-21-item[style*="grid-column: span 2"] {
    grid-column: span 2 !important;
  }
  .gallery-21-item[style*="grid-row: span 2"] {
    grid-row: span 1 !important;
  }
  .gallery-21-lightbox__arrow--prev { left: 8px; }
  .gallery-21-lightbox__arrow--next { right: 8px; }
  .gallery-21-lightbox__arrow svg { width: 32px; height: 32px; }
  .gallery-21-lightbox__content { width: calc(100% - 80px); }
}
@media (max-width: 520px) {
  .gallery-21-section { padding: 20px 0; }
  .gallery-21 {
    grid-template-columns: repeat(2, 1fr);
    grid-auto-rows: 80px;
  }
  .gallery-21-item[style*="grid-column: span 2"] {
    grid-column: span 1 !important;
  }
  .gallery-21-item[style*="grid-row: span 2"] {
    grid-row: span 1 !important;
  }
}

/* Block-11--home: Diagonal edges + animation (homepage only) */
.block-11--home {
  background: #F4F4F4;
  overflow: visible;
  padding-top: 120px;
  padding-bottom: 120px;
}
.block-11--home::before {
  content: '';
  position: absolute;
  top: -60px;
  left: 0;
  right: 0;
  height: 60px;
  background: #F4F4F4;
  clip-path: polygon(0 100%, 100% 0, 100% 100%);
  z-index: 1;
}
.block-11--home::after {
  content: '';
  position: absolute;
  bottom: -60px;
  left: 0;
  right: 0;
  height: 60px;
  background: #F4F4F4;
  clip-path: polygon(100% 0, 0 0, 100% 100%);
  z-index: 1;
}
.block-11--home .line-wrapper {
  position: relative;
  z-index: 2;
}

/* Mobile fixes for block-11--home diagonals + catalog spacing */
@media (max-width: 768px) {
  .block-11--home {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .block-11--home::before {
    top: -35px;
    height: 35px;
  }
  .block-11--home::after {
    bottom: -35px;
    height: 35px;
  }
  .catalog {
    padding-top: 70px;
  }
}
@media (max-width: 576px) {
  .block-11--home {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .block-11--home::before {
    top: -25px;
    height: 25px;
  }
  .block-11--home::after {
    bottom: -25px;
    height: 25px;
  }
  .catalog {
    padding-top: 50px;
  }
}

/* Block-11--home: Split reveal + counter animation */
body.js-enabled .block-11--home .about-image {
  opacity: 0;
  transform: translateX(-60px);
  transition: opacity 800ms cubic-bezier(0.22, 1, 0.36, 1), transform 800ms cubic-bezier(0.22, 1, 0.36, 1);
}
body.js-enabled .block-11--home .about-descr {
  opacity: 0;
  transform: translateX(60px);
  transition: opacity 800ms cubic-bezier(0.22, 1, 0.36, 1), transform 800ms cubic-bezier(0.22, 1, 0.36, 1);
}
body.js-enabled .block-11--home .about-params {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 600ms cubic-bezier(0.22, 1, 0.36, 1), transform 600ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 400ms;
}
body.js-enabled .block-11--home .about-params__param {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 400ms ease-out, transform 400ms ease-out;
}
/* Visible state */
body.js-enabled .block-11--home.is-visible .about-image {
  opacity: 1;
  transform: translateX(0);
}
body.js-enabled .block-11--home.is-visible .about-descr {
  opacity: 1;
  transform: translateX(0);
  transition-delay: 150ms;
}
body.js-enabled .block-11--home.is-visible .about-params {
  opacity: 1;
  transform: translateY(0);
}
body.js-enabled .block-11--home.is-visible .about-params__param:nth-child(1) { opacity: 1; transform: translateY(0); transition-delay: 500ms; }
body.js-enabled .block-11--home.is-visible .about-params__param:nth-child(2) { opacity: 1; transform: translateY(0); transition-delay: 650ms; }
body.js-enabled .block-11--home.is-visible .about-params__param:nth-child(3) { opacity: 1; transform: translateY(0); transition-delay: 800ms; }
body.js-enabled .block-11--home.is-visible .about-params__param:nth-child(4) { opacity: 1; transform: translateY(0); transition-delay: 950ms; }

@media (prefers-reduced-motion: reduce) {
  body.js-enabled .block-11--home .about-image,
  body.js-enabled .block-11--home .about-descr,
  body.js-enabled .block-11--home .about-params,
  body.js-enabled .block-11--home .about-params__param {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

/*# sourceMappingURL=app.css.map */
