@charset "UTF-8";

* {
   padding: 0;
   margin: 0;
   border: 0;
   -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
   -webkit-tap-highlight-color: transparent;
   scrollbar-color: #f51515 #444;
   scrollbar-width: thin;
}

*::-webkit-scrollbar-thumb {
   background-color: #f51515;
}

*::-webkit-scrollbar-track {
   background-color: #444;
}

*::-webkit-scrollbar-button {
   display: none;
   background-color: #f51515;
}

*::-webkit-scrollbar {
   width: 8px;
}

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

:focus,
:active {
   outline: none;
}

a:focus,
a:active {
   outline: none;
}

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

html,
body {
   height: auto;
   min-height: 100%;
   width: 100%;
   font-size: 100%;
   -ms-text-size-adjust: 100%;
   -moz-text-size-adjust: 100%;
   -webkit-text-size-adjust: 100%;
}

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

button {
   cursor: pointer;
}

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

a,
a:visited {
   text-decoration: none;
}

a:hover {
   text-decoration: none;
}

a,
button {
   -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
   -webkit-tap-highlight-color: transparent;
   background: transparent;
   font-family: inherit;
}

ul li {
   list-style: none;
}

img {
   vertical-align: top;
   max-width: 100%;
}

@font-face {
   font-family: coolvetica;
   font-display: swap;
   src: url("../fonts/coolvetica-regular.woff2") format("woff2"), url("../fonts/coolvetica-regular.woff") format("woff");
   font-weight: 400;
   font-style: normal;
}

@font-face {
   font-family: Inter;
   font-display: swap;
   src: url("../fonts/Inter-Regular.woff2") format("woff2"), url("../fonts/Inter-Regular.woff") format("woff");
   font-weight: 400;
   font-style: normal;
}

@font-face {
   font-family: Inter;
   font-display: swap;
   src: url("../fonts/Inter-SemiBold.woff2") format("woff2"), url("../fonts/Inter-SemiBold.woff") format("woff");
   font-weight: 600;
   font-style: normal;
}

html {
   scroll-behavior: smooth;
}

.wrapper {
   min-height: 100%;
   display: flex;
   flex-direction: column;
   font-family: Inter;
   font-size: 16px;
   color: #000;
   overflow: hidden;
   width: 100%;
}

main {
   flex: 1 1 auto;
}

body._lock {
   overflow: hidden;
   position: relative;
}

body._lock::after {
   content: "";
   display: block;
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   background: rgba(0, 0, 0, 0.6);
   z-index: 1;
}

.container {
   width: min(100% - 80px, 1660px);
   margin-inline: auto;
}

@media (max-width: 1200px) {
   .container {
      width: min(100% - 32px, 1660px);
   }
}

/*------------------------------Прелоадер---------------------------*/
.preloader {
   position: fixed;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   z-index: 999;
   background: #414141;
   display: flex;
   align-items: center;
   overflow: hidden;
   justify-content: center;
}

.preloader p {
   text-transform: uppercase;
   font-size: 22px;
   letter-spacing: 2px;
   text-align: center;
   margin-top: 20px;
   color: #fff;
}

.preloader__item {
   width: 200px;
   height: 200px;
}

@media (max-width: 500px) {
   .preloader__item {
      width: 100px;
      height: 100px;
   }
}

.preloader__bg {
   position: relative;
   width: 200px;
   padding: 15px;
   height: 200px;
}

@media (max-width: 500px) {
   .preloader__bg {
      width: 100px;
      height: 100px;
   }
}

.preloader__bg::after {
   content: "";
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   border-radius: 50%;
   background: -webkit-linear-gradient(15deg, #f05205, #ff9600, #ffd000);
   background: linear-gradient(15deg, #f05205, #ff9600, #ffd000);
   z-index: 1;
   animation: rotating 1s linear infinite 0s, shadowed 10s linear infinite 0s;
}

.preloader__img img {
   width: 100%;
   height: 100%;
   object-fit: cover;
   border-radius: 50%;
   z-index: 2;
   position: relative;
}

@keyframes rotating {
   0% {
      transform: rotate(0deg);
   }

   100% {
      transform: rotate(360deg);
   }
}

@keyframes shadowed {
   0% {
      box-shadow: 0 0 10px #ff9600;
   }

   50% {
      box-shadow: 10px 10px 50px #ff9600;
   }

   100% {
      box-shadow: 0 0 10px #ff9600;
   }
}

/*-----------------------------------------Header------------------------------------------------*/
.header {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   z-index: 99;
   overflow: hidden;
}

.header__body {
   display: flex;
   align-items: center;
   justify-content: space-between;
   gap: calc(20px + 100 * ((100vw - 320px) / 1600));
   padding: 20px 0;
}

@media (max-width: 1440px) {
   .header__body {
      gap: 30px;
   }
}

.header__logo {
   flex: 0 1 96px;
   position: relative;
   z-index: 3;
   transition: all 0.5s ease 0s;
   transform: translateY(-100px);
}

.header__logo.element-animation.element-show {
   transform: translateY(0);
}

.header__logo-link a {
   width: 100%;
   height: 100%;
}

.header__logo-link a img {
   width: 100%;
   height: 100%;
   object-fit: contain;
}

.header__menu {
   flex: 1;
}

.header__contacts {
   display: flex;
   align-items: center;
   gap: 20px;
}

@media (max-width: 1300px) {
   .header__contacts {
      gap: 10px;
      margin-left: auto;
      position: relative;
      z-index: 3;
   }
}

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

.header__contact {
   flex: 0 0 34px;
   width: 34px;
   height: 34px;
   padding: 5px;
   transition: all 0.5s ease 0.8s;
   transform: translateY(-100%);
   opacity: 0;
}

.header__contact svg {
   width: 100%;
   height: 100%;
   object-fit: contain;
   color: #fff;
   transition: all 0.3s ease 0s;
}

.header__contact.element-animation.element-show {
   transform: translateY(0);
   opacity: 1;
}

@media (max-width: 500px) {
   .header__contact {
      transition: all 0.5s ease 0.1s;
   }
}

.header__contact:nth-child(1):hover svg {
   color: #25d366;
   transform: scale(1.1);
}

.header__contact:nth-child(2):hover svg {
   color: #0088cc;
   transform: scale(1.1);
}

.header__telephone {
   color: rgb(255, 255, 255);
   font-family: Inter;
   font-size: 18px;
   font-weight: 600;
   line-height: 150%;
   letter-spacing: -2%;
   transition: all 0.3s ease 0s;
   text-align: left;
   white-space: nowrap;
   transition: all 0.5s ease 0.9s;
   transform: translateY(-100%);
   opacity: 0;
}

.header__telephone span {
   transition: all 0.3s ease 0s;
}

.header__telephone:hover span {
   color: #f51515;
}

.header__telephone.element-animation.element-show {
   transform: translateY(0);
   opacity: 1;
}

.header__telephone svg {
   width: 24px;
   height: 24px;
   color: #fff;
   display: none;
}

@media (max-width: 1300px) {
   .header__telephone span {
      display: none;
   }

   .header__telephone svg {
      display: block;
   }
}

@media (max-width: 500px) {
   .header__telephone {
      transition: all 0.5s ease 0.2s;
   }
}

@media (max-width: 1200px) {
   .menu {
      order: 1;
      flex: 0 0 50px;
   }
}

.menu__icon {
   display: none;
   will-change: transform;
   transition: all 0.5s ease 0.3s;
   transform: translateX(100%);
   opacity: 0;
}

@media (max-width: 1200px) {
   .menu__icon {
      display: block;
      width: 50px;
      height: 50px;
      position: relative;
      z-index: 3;
   }

   .menu__icon::before,
   .menu__icon::after,
   .menu__icon span {
      height: 2px;
      position: absolute;
      background-color: #fff;
      border-radius: 3px;
      transition: all 0.3s ease 0s;
      width: 100%;
   }

   .menu__icon::before,
   .menu__icon::after {
      content: "";
      left: 0;
   }

   .menu__icon::before {
      top: 10px;
   }

   .menu__icon::after {
      bottom: 10px;
   }

   .menu__icon span {
      top: 23px;
      right: 0;
      width: 70%;
   }

   .menu__icon._active::before {
      top: 23px;
      transform: rotate(45deg);
      background-color: #fff;
   }

   .menu__icon._active::after {
      top: 23px;
      transform: rotate(-45deg);
      background-color: #fff;
   }

   .menu__icon._active span {
      display: none;
   }
}

.menu__icon.element-animation.element-show {
   transform: translateX(0);
   opacity: 1;
}

@media (max-width: 1200px) {
   .menu__body {
      display: flex;
      flex-direction: column-reverse;
      position: fixed;
      width: 100%;
      top: 0;
      left: 0;
      padding: 150px 15px 10px 15px;
      transition: all 0.3s ease 0s;
      overflow: auto;
      background-color: rgba(34, 34, 34, 0.9294117647);
      opacity: 0;
      pointer-events: none;
      transform: translateY(-30px);
      z-index: 2;
      backdrop-filter: blur(3px);
      -webkit-backdrop-filter: blur(3px);
      -moz-backdrop-filter: blur(3px);
      -ms-backdrop-filter: blur(3px);
      height: 100%;
      justify-content: flex-end;
   }

   .menu__body._active {
      opacity: 1;
      pointer-events: visible;
      transform: translateY(0);
   }
}

.menu__list {
   display: flex;
   align-items: center;
   justify-content: space-between;
   gap: 10px;
}

@media (max-width: 1200px) {
   .menu__list {
      flex-direction: column;
      gap: 30px;
   }
}

.menu__list li:nth-child(1) {
   transition: all 0.5s ease 0.2s;
   transform: translateY(-100%);
   opacity: 0;
}

.menu__list li:nth-child(1).element-animation.element-show {
   transform: translateY(0);
   opacity: 1;
}

.menu__list li:nth-child(2) {
   transition: all 0.5s ease 0.3s;
   transform: translateY(-100%);
   opacity: 0;
}

.menu__list li:nth-child(2).element-animation.element-show {
   transform: translateY(0);
   opacity: 1;
}

.menu__list li:nth-child(3) {
   transition: all 0.5s ease 0.4s;
   transform: translateY(-100%);
   opacity: 0;
}

.menu__list li:nth-child(3).element-animation.element-show {
   transform: translateY(0);
   opacity: 1;
}

.menu__list li:nth-child(4) {
   transition: all 0.5s ease 0.5s;
   transform: translateY(-100%);
   opacity: 0;
}

.menu__list li:nth-child(4).element-animation.element-show {
   transform: translateY(0);
   opacity: 1;
}

.menu__list li:nth-child(5) {
   transition: all 0.5s ease 0.6s;
   transform: translateY(-100%);
   opacity: 0;
}

.menu__list li:nth-child(5).element-animation.element-show {
   transform: translateY(0);
   opacity: 1;
}

.menu__list li:nth-child(6) {
   transition: all 0.5s ease 0.7s;
   transform: translateY(-100%);
   opacity: 0;
}

.menu__list li:nth-child(6).element-animation.element-show {
   transform: translateY(0);
   opacity: 1;
}

.menu__link {
   color: rgb(255, 255, 255);
   font-family: Inter;
   font-size: 18px;
   font-weight: 400;
   line-height: 122.222222%;
   /* 22px/18 */
   letter-spacing: -2%;
   white-space: nowrap;
   display: flex;
   align-items: center;
   gap: 6px;
   transition: all 0.3s ease 0s;
}

@media (min-width: 1000px) {
   .menu__link:hover {
      color: #f51515;
   }

   .menu__link:hover .menu__link-arrow {
      max-width: 20px;
   }
}

.menu__link-arrow {
   max-width: 0;
   transition: all 0.3s ease 0s;
   width: 20px;
   height: 20px;
   color: #f51515;
}

/*------------------------------Home---------------------------*/
.home {
   background: url(../img/main-bg.png) center/cover no-repeat;
   min-height: 100svh;
}

.home__body {
   padding: 170px 0 0;
   position: relative;
   z-index: 2;
}

.home-go {
   position: absolute;
   top: 80vh;
   left: 50%;
   transform: translateX(-50%);
   font-size: 12px;
   color: #fff;
   display: flex;
   flex-direction: column;
   justify-content: center;
   align-items: center;
   animation: jumpedArrow 6s ease 1s infinite;
}

.home-go-icon {
   display: block;
   width: 60px;
   height: 60px;
   border-radius: 50%;
   background: rgba(0, 0, 0, 0.2);
   backdrop-filter: blur(3px);
   display: flex;
   align-items: center;
   justify-content: center;
}


@media (min-width: 1000px) {
   .home-go-icon:hover svg {
      color: #c40c0c;
   }
}


@keyframes jumpedArrow {

   0%,
   100% {
      transform: translateY(0) translateX(-50%);
   }

   50% {
      transform: translateY(30%) translateX(-50%);
   }

}

.home-go-icon svg {
   width: 32px;
   height: 32px;
   object-fit: contain;
   color: #fff;
   transform: rotate(90deg);
   transition: all 0.3s ease 0s;
}

@media (max-width: 550px) {
   .home-go {
      top: 90svh;
   }

   .home-go span {
      display: none;
   }

   .home-go-icon {
      width: 40px;
      height: 40px;
   }

   .home-go-icon svg {
      width: 26px;
      height: 26px;
   }
}

@media (max-width: 1500px) {
   .home__body {
      padding: 135px 0 0;
   }
}

@media (max-width: 500px) {
   .home__body {
      padding: 135px 0 20px;
      min-height: 100svh;
   }
}

.home__title {
   color: rgb(255, 255, 255);
   font-family: Coolvetica;
   font-weight: 400;
   line-height: 100%;
   letter-spacing: 0%;
   text-align: center;
   max-width: 953px;
   margin-inline: auto;
   margin-bottom: 20px;
   font-size: calc(30px + 60 * ((100vw - 320px) / 1600));
   transition: all 0.5s ease 1s;
   opacity: 0;
   transform: translateY(30px);
}

.home__title.element-animation.element-show {
   transform: translateY(0);
   opacity: 1;
}

@media (max-width: 500px) {
   .home__title {
      transition: all 0.5s ease 0.5s;
      opacity: 0;
      transform: translateY(30px);
   }

   .home__title.element-animation.element-show {
      transform: translateY(0);
      opacity: 1;
   }
}

.home__subtitle {
   color: rgb(255, 255, 255);
   font-family: Coolvetica;
   font-weight: 400;
   line-height: 100%;
   letter-spacing: 0%;
   text-align: center;
   max-width: 953px;
   margin-inline: auto;
   font-size: calc(20px + 34 * ((100vw - 320px) / 1600));
   transition: all 0.5s ease 1.1s;
   opacity: 0;
   transform: translateY(30px);
}

.home__subtitle.element-animation.element-show {
   transform: translateY(0);
   opacity: 1;
}

@media (max-width: 500px) {
   .home__subtitle {
      transition: all 0.5s ease 0.6s;
      opacity: 0;
      transform: translateY(30px);
   }

   .home__subtitle.element-animation.element-show {
      transform: translateY(0);
      opacity: 1;
   }
}

.home__image {
   max-width: 1400px;
   width: 72.7%;
   /* 1396px/1920 */
   margin-inline: auto;
   position: relative;
   padding-bottom: 48%;
   margin-top: -50px;
}

.home__image img {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   object-fit: contain;
}

.home__image .container-img {
   perspective: 1000px;
}

.home__image .animated-image {
   transition: all 0.2s ease 0s;
}

@media (max-width: 1000px) {
   .home__image {
      margin-top: 0;
   }
}

@media (max-width: 700px) {
   .home__image {
      width: 100%;
      margin: 30px 0;
   }
}

@media (max-width: 500px) {
   .home__image {
      padding-bottom: 60%;
   }
}

.home__circle {
   position: absolute;
   top: 22%;
   right: 0;
   width: 21.428571%;
   aspect-ratio: 1/1;
   max-width: 300px;
   border-radius: 50%;
   background: #f51515;
   display: flex;
   align-items: center;
   justify-content: center;
   text-align: center;
   color: rgb(255, 255, 255);
   font-family: Coolvetica;
   font-weight: 400;
   line-height: 100%;
   letter-spacing: -2%;
   text-align: center;
   min-width: 130px;
   font-size: calc(14px + 14 * ((100vw - 320px) / 1600));
   transition: all 0.8s ease 1.2s;
   transform: scale(0) rotate(180deg);
}

@media (max-width: 700px) {
   .home__circle {
      top: 10px;
   }
}

.home__circle.element-animation.element-show {
   transform: scale(1) rotate(360deg);
}

@media (max-width: 500px) {
   .home__circle {
      aspect-ratio: unset;
      border-radius: 20px;
      text-align: left;
      padding: 8px 20px;
      width: auto;
      gap: 20px;
      right: unset;
      left: 50%;
      top: unset;
      bottom: 0;
      transform: translateX(0);
      transition: all 0.8s ease 1.2s;
      transform: scale(0);
   }

   .home__circle.element-animation.element-show {
      transform: scale(1) translateX(-50%);
   }
}

.home__circle-icon {
   background: rgb(255, 255, 255);
   color: #000;
   width: 30%;
   aspect-ratio: 1/1;
   border-radius: 50%;
   display: flex;
   align-items: center;
   justify-content: center;
   position: absolute;
   bottom: 0;
   right: 0;
   transition: all 0.8s ease 1.3s;
   transform: scale(0) rotate(0deg);
}

.home__circle-icon.element-animation.element-show {
   transform: scale(1) rotate(360deg);
}

.home__circle-icon svg {
   width: 40%;
   aspect-ratio: 1/1;
   object-fit: contain;
   transition: all 0.3s ease 0s;
}

@media (max-width: 500px) {
   .home__circle-icon {
      position: static;
      width: 40px;
   }
}

.home__circle-icon:hover svg {
   color: #f51515;
   transform: scale(1.1);
}

.home__advantages {
   display: flex;
   gap: 20px;
   position: absolute;
   bottom: 0;
   left: 0;
   width: 100%;
   overflow-x: hidden;
}

@media (max-width: 1000px) {
   .home__advantages {
      position: static;
   }
}

@media (max-width: 860px) {
   .home__advantages {
      display: grid;
      grid-template-columns: 1fr 1fr;
      grid-template-rows: 1fr 1fr;
   }
}

@media (max-width: 500px) {
   .home__advantages {
      gap: 10px;
   }
}

.home__advantages-item {
   flex: 0 1 25%;
   border-radius: 20px 20px 0px 0px;
   backdrop-filter: blur(30px);
   background: rgba(0, 0, 0, 0.2);
   padding: 23px 40px;
}

@media (max-width: 1200px) {
   .home__advantages-item {
      padding: 20px 20px;
   }
}

@media (max-width: 860px) {
   .home__advantages-item {
      border-radius: 20px;
   }
}

.home__advantages-item:nth-child(1) {
   transition: all 0.5s ease 0s;
   opacity: 0;
   transform: translateX(-50px) skewX(-20deg);
}

.home__advantages-item:nth-child(1).element-animation.element-show {
   transform: translateX(0) skewX(0);
   opacity: 1;
}

.home__advantages-item:nth-child(2) {
   transition: all 0.5s ease 0.1s;
   opacity: 0;
   transform: translateX(-50px) skewX(-20deg);
}

.home__advantages-item:nth-child(2).element-animation.element-show {
   transform: translateX(0) skewX(0);
   opacity: 1;
}

.home__advantages-item:nth-child(3) {
   transition: all 0.5s ease 0s;
   opacity: 0;
   transform: translateX(50px) skewX(20deg);
}

.home__advantages-item:nth-child(3).element-animation.element-show {
   transform: translateX(0) skewX(0);
   opacity: 1;
}

.home__advantages-item:nth-child(4) {
   transition: all 0.5s ease 0.1s;
   opacity: 0;
   transform: translateX(50px) skewX(20deg);
}

.home__advantages-item:nth-child(4).element-animation.element-show {
   transform: translateX(0) skewX(0);
   opacity: 1;
}

.home__advantages-name {
   color: rgb(255, 255, 255);
   font-family: Coolvetica;
   font-weight: 400;
   line-height: 100%;
   letter-spacing: 0%;
   text-align: left;
   margin-bottom: 20px;
   font-size: calc(20px + 40 * ((100vw - 320px) / 1600));
}

@media (max-width: 500px) {
   .home__advantages-name {
      margin-bottom: 10px;
   }
}

.home__advantages-text {
   color: rgb(255, 255, 255);
   font-family: Inter;
   font-weight: 400;
   line-height: 150%;
   letter-spacing: -2%;
   text-align: left;
   font-size: calc(14px + 4 * ((100vw - 320px) / 1600));
}

/*------------------------------Services---------------------------*/
.services {
   max-width: 100vw;
}

.services__body {
   padding: 120px 0 60px;
   position: relative;
   z-index: 1;
}

@media (max-width: 767px) {
   .services__body {
      padding: 40px 0;
   }
}

.services__body .decore-arrow-1 {
   position: absolute;
   top: -120px;
   z-index: -1;
   max-width: 100%;
}

.services__body .decore-arrow-1 svg {
   max-width: 100%;
}

@media (max-width: 600px) {
   .services__body .decore-arrow-1 {
      top: -200px;
   }

   .services__body .decore-arrow-1 svg {
      max-width: 100%;
      transform: rotate(10deg);
   }
}

.services__body .decore-arrow-2 {
   position: absolute;
   top: 100%;
   left: 16%;
   max-width: 100%;
}

.services__body .decore-arrow-2 svg {
   max-width: 100%;
}

@media (max-width: 600px) {
   .services__body .decore-arrow-2 {
      top: 95%;
      left: 0;
   }

   .services__body .decore-arrow-2 svg {
      max-width: 60%;
   }
}

.services__title {
   margin-bottom: 60px;
}

@media (max-width: 767px) {
   .services__title {
      margin-bottom: 30px;
   }
}

.services__items {
   display: flex;
   gap: 20px;
}

@media (max-width: 1280px) {
   .services__items {
      flex-direction: column;
   }
}

.services__item {
   flex: 0 1 33.333%;
   width: 100%;
}

.line {
   stroke-dasharray: 16, 16;
   /* Длина сегмента и пробела */
   stroke-dashoffset: 10000;
   /* Длина пути линии (должна быть достаточно большой) */
   animation: draw 250s linear infinite;
   /* Настройте длительность анимации по вашему усмотрению */
}

@keyframes draw {
   to {
      stroke-dashoffset: 0;
   }
}

.service {
   border-radius: 40px;
   background: url(../img/serv-cards-bg.png) 0 0/100% 100% no-repeat;
   display: flex;
   flex-direction: column;
}

.service__icon {
   width: 150px;
   height: 150px;
   margin: 40px 40px 130px 40px;
}

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

@media (max-width: 1280px) {
   .service__icon {
      margin: 20px 20px 40px 20px;
   }
}

.service__text {
   margin-top: auto;
}

.service__name {
   padding: 0 40px;
   color: rgb(17, 19, 39);
   font-family: Coolvetica;
   font-size: 36px;
   font-weight: 400;
   line-height: 100%;
   margin-bottom: 20px;
}

@media (max-width: 1500px) {
   .service__name {
      padding: 0 20px;
   }
}

.service__description {
   padding: 0 40px;
   color: rgb(86, 86, 86);
   font-family: Inter;
   font-size: 18px;
   font-weight: 400;
   line-height: 150%;
   letter-spacing: -2%;
   margin-bottom: 20px;
}

@media (max-width: 1500px) {
   .service__description {
      padding: 0 20px;
   }
}

.service__info {
   padding: 40px;
   display: flex;
   align-items: center;
   gap: 2px;
}

@media (max-width: 1500px) {
   .service__info {
      padding: 20px;
   }
}

.service__info-item {
   border-radius: 500px;
   background: rgb(255, 255, 255);
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 20px;
   padding: 10px 20px;
}

.service__info-item:hover svg {
   color: #f51515;
}

.service__info-item svg {
   width: 32px;
   height: 32px;
   object-fit: contain;
   color: #bcbcbc;
   transition: all 0.3s ease 0s;
}

.service__info-item span {
   color: rgb(17, 19, 39);
   font-size: 18px;
   font-weight: 600;
   line-height: 150%;
   letter-spacing: -2%;
   text-align: left;
   font-size: 18px;
}

@media (max-width: 1660px) {
   .service__info-item span {
      font-size: calc(14px + 4 * ((100vw - 320px) / 1340));
   }
}

@media (max-width: 550px) {
   .service__info-item {
      gap: 10px;
   }

   .service__info-item svg {
      width: 26px;
      height: 26px;
   }
}

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

.service__routes {
   padding: 0 0 29px 40px;
}

@media (max-width: 1500px) {
   .service__routes {
      padding: 0 0 29px 20px;
   }
}

@media (max-width: 500px) {
   .service__routes {
      padding: 0 0 10px 20px;
   }
}

.service__routes-link {
   display: flex;
   align-items: center;
   gap: 20px;
   color: rgb(17, 19, 39);
   font-family: Coolvetica;
   font-weight: 400;
   line-height: 100%;
   font-size: calc(16px + 6 * ((100vw - 320px) / 1600));
   cursor: pointer;
}

.service__routes-link span {
   border-bottom: 1px dashed #f51515;
   line-height: 120%;
}

.service__routes-link svg {
   width: 27px;
   height: 32px;
   object-fit: contain;
   color: #f51515;
}

.service__routes-link:hover span {
   color: #c40c0c;
}

@media (max-width: 1500px) {
   .service__routes-link {
      gap: 10px;
   }
}

.service__calc {
   display: flex;
   align-items: center;
   width: 54.730983%;
   align-self: end;
}

.service__calc-link {
   flex: 1;
   padding: 24px !important;
}

@media (max-width: 1680px) {
   .service__calc-link {
      text-align: center !important;
   }
}

@media (max-width: 767px) {
   .service__calc-link {
      padding: 14px !important;
   }
}

.service__calc-link-icon {
   flex: 0 0 70px;
   width: 70px;
   height: 70px;
   border-radius: 50%;
   display: flex;
   align-items: center;
   justify-content: center;
   background: #f51515;
   transition: all 0.3s ease 0s;
}

.service__calc-link-icon:hover {
   background-color: #c40c0c;
}

.service__calc-link-icon:active {
   background-color: #ff6363;
}

.service__calc-link-icon:disabled {
   background: #e6e6e6;
}

.service__calc-link-icon svg {
   width: 32px;
   height: 32px;
   color: #fff;
}

@media (max-width: 1680px) {
   .service__calc-link-icon {
      display: none;
   }
}

.service:nth-child(1) {
   transition: all 0.5s ease 0s;
   transform: scaleX(0);
}

.service:nth-child(1).element-animation.element-show {
   transform: scaleX(1);
}

.service:nth-child(2) {
   transition: all 0.5s ease 0.1s;
   transform: scaleX(0);
}

.service:nth-child(2).element-animation.element-show {
   transform: scaleX(1);
}

.service:nth-child(3) {
   transition: all 0.5s ease 0.2s;
   transform: scaleX(0);
}

.service:nth-child(3).element-animation.element-show {
   transform: scaleX(1);
}

.title {
   color: rgb(17, 19, 39);
   font-family: Coolvetica;
   font-weight: 400;
   line-height: 100%;
   letter-spacing: 0%;
   text-align: left;
   font-size: calc(26px + 64 * ((100vw - 320px) / 1600));
   transition: all 0.5s ease 0s;
   transform: scaleY(0);
}

.title span {
   display: block;
   padding-left: 15%;
}

.title.element-animation.element-show {
   transform: scaleY(1);
}

.link {
   padding: 24px 44px;
   background-color: #f51515;
   color: rgb(255, 255, 255);
   font-family: Coolvetica;
   font-weight: 400;
   line-height: 100%;
   letter-spacing: -2%;
   text-align: left;
   border-radius: 500px;
   transition: all 0.3s ease 0s;
   font-size: calc(16px + 6 * ((100vw - 320px) / 1600));
   white-space: nowrap;
}

.link:hover {
   background-color: #c40c0c;
}

.link:active {
   background-color: #ff6363;
}

.link:disabled {
   background: #e6e6e6;
}

/*------------------------------Benefits---------------------------*/
.benefits {
   margin-top: 60px;
   background: url(../img/stroke-bg.svg) center/cover no-repeat, #f3f3f3;
}

@media (max-width: 1000px) {
   .benefits {
      margin-top: 0;
   }
}

.benefits__body {
   position: relative;
   display: flex;
   flex-direction: column;
   align-items: center;
   justify-content: center;
   padding-top: calc(40px + 360 * ((100vw - 320px) / 1600));
   padding-bottom: calc(40px + 208 * ((100vw - 320px) / 1600));
}

@media (max-width: 1200px) {
   .benefits__body {
      padding: 40px 0;
   }
}

.benefits__title {
   color: rgb(17, 19, 39);
   font-family: Coolvetica;
   font-weight: 400;
   line-height: 100%;
   letter-spacing: 0%;
   text-align: center;
   font-size: calc(26px + 64 * ((100vw - 320px) / 1600));
   max-width: 1160px;
}

.benefits__title span {
   color: #f51515;
}

@media (max-width: 1200px) {
   .benefits__cards {
      display: grid;
      grid-template-columns: 1fr 1fr 1fr;
      gap: 20px;
   }
}

@media (max-width: 820px) {
   .benefits__cards {
      grid-template-columns: 1fr 1fr;
   }
}

.benefit {
   position: absolute;
   width: 21%;
   min-width: 260px;
   border-radius: 40px;
   backdrop-filter: blur(20px);
   background: linear-gradient(0deg, rgb(255, 255, 255), rgba(255, 255, 255, 0.1) 100%);
   padding: 40px;
   z-index: 2;
}

@media (max-width: 1500px) {
   .benefit {
      padding: 30px;
   }
}

@media (max-width: 1200px) {
   .benefit {
      position: static;
      transform: none !important;
      animation: none;
      width: 100%;
      min-width: unset;
   }
}

@media (max-width: 600px) {
   .benefit {
      padding: 16px;
      text-align: center;
      transition: all 0.5s ease 0s;
      transform: scale(0.4) !important;
      opacity: 0;
   }

   .benefit.element-animation.element-show {
      transform: scale(1) !important;
      opacity: 1;
   }
}

.benefit__icon {
   width: 55px;
   height: 55px;
   margin-bottom: 50px;
}

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

@media (max-width: 600px) {
   .benefit__icon {
      margin-bottom: 20px;
      margin-inline: auto;
   }
}

.benefit__text {
   color: rgb(17, 19, 39);
   font-weight: 400;
   line-height: 150%;
   font-size: 18px;
}

@media (max-width: 1660px) {
   .benefit__text {
      font-size: calc(14px + 4 * ((100vw - 320px) / 1340));
   }
}

.benefit-1 {
   top: 10%;
   animation: jumped 6s ease 1s infinite;
   left: 5%;
}

.benefit-2 {
   left: 50%;
   top: 5%;
   transform: translateX(-50%);
   animation: jumpedx 6s ease 0s infinite;
}

.benefit-3 {
   top: 10%;
   right: 5%;
   animation: jumped 6s ease 1s infinite;
}

.benefit-4 {
   bottom: 30%;
   left: 0;
   animation: jumped 6s ease 1s infinite;
}

.benefit-5 {
   left: 50%;
   bottom: 10%;
   transform: translateX(-50%);
   animation: jumpedx 6s ease 0s infinite;
}

.benefit-6 {
   bottom: 30%;
   right: 0;
   animation: jumped 6s ease 1s infinite;
}

@media (max-width: 1500px) {
   .benefit-1 {
      top: 5%;
      animation: jumped 6s ease 1s infinite;
      left: 5%;
   }

   .benefit-2 {
      left: 50%;
      top: 2%;
      transform: translateX(-50%);
      animation: jumpedx 6s ease 0s infinite;
   }

   .benefit-3 {
      top: 5%;
      right: 5%;
      animation: jumped 6s ease 1s infinite;
   }

   .benefit-4 {
      bottom: 30%;
      left: 0;
      animation: jumped 6s ease 1s infinite;
   }

   .benefit-5 {
      left: 50%;
      bottom: 10%;
      transform: translateX(-50%);
      animation: jumpedx 6s ease 0s infinite;
   }

   .benefit-6 {
      bottom: 30%;
      right: 0;
      animation: jumped 6s ease 1s infinite;
   }
}

@keyframes jumped {

   0%,
   90%,
   100% {
      transform: translateY(0);
   }

   50% {
      transform: translateY(-30px);
   }
}

@keyframes jumpedx {

   0%,
   90%,
   100% {
      transform: translateY(0) translateX(-50%);
   }

   50% {
      transform: translateY(-30px) translateX(-50%);
   }
}

/*------------------------------Simple text---------------------------*/
.simple {
   position: relative;
}

.simple__body {
   padding: 120px 0;
   display: flex;
   align-items: flex-start;
}

.simple__body p {
   color: #f51515;
   font-family: Coolvetica;
   font-size: 60px;
   font-weight: 400;
   line-height: 100%;
}

@media (max-width: 600px) {
   .simple__body p {
      font-size: 40px;
   }
}

@media (max-width: 1550px) {
   .simple__body {
      flex-direction: column;
      gap: 20px;
   }
}

@media (max-width: 1300px) {
   .simple__body {
      padding: 70px 0;
   }
}

.simple__title {
   color: rgb(17, 19, 39);
   font-family: Coolvetica;
   font-weight: 400;
   line-height: 100%;
   letter-spacing: 0%;
   text-align: left;
   font-size: 50px;
   max-width: 1240px;
   margin-left: auto;
   position: relative;
   z-index: 2;
}

@media (max-width: 1300px) {
   .simple__title {
      font-size: 70px;
   }
}

@media (max-width: 767px) {
   .simple__title {
      font-size: 50px;
   }
}

@media (max-width: 550px) {
   .simple__title {
      font-size: 30px;
      max-width: 90%;
      margin-inline: 0;
      line-height: 130%;
   }
}

.simple .scroll-text span {
   display: inline;
   color: transparent;
   transition: color 0.8s linear;
   color: #f1f1f1;
}

.simple .decore-arrow-3 {
   position: absolute;
   top: -10%;
   left: 0;
   width: 100%;
   height: auto;
   z-index: 1;
}

.simple .decore-arrow-3 svg {
   width: 100%;
}

@media (max-width: 920px) {
   .simple .decore-arrow-3 {
      width: 900px;
      top: -150px;
   }
}

@media (max-width: 600px) {
   .simple .decore-arrow-3 {
      top: -200px;
      width: 700px;
   }
}

@media (max-width: 500px) {
   .simple .decore-arrow-3 {
      width: 750px;
   }
}

.simple .pekin {
   position: absolute;
   top: 43.5%;
   left: 20%;
   text-align: center;
}

.simple .pekin span {
   display: block;
   width: 22px;
   height: 22px;
   border-radius: 50%;
   background: #f51515;
   margin-inline: auto;
}

.simple .pekin p {
   color: rgb(17, 19, 39);
   font-size: 18px;
   font-weight: 600;
}

.simple .moscow {
   display: flex;
   align-items: center;
   gap: 10px;
   position: absolute;
   bottom: 10%;
   right: 27.5%;
   z-index: 2;
}

.simple .moscow span {
   display: block;
   width: 22px;
   height: 22px;
   border-radius: 50%;
   background: #f51515;
}

.simple .moscow p {
   color: rgb(17, 19, 39);
   font-size: 18px;
   font-weight: 600;
}

@media (max-width: 1850px) {
   .simple .pekin {
      top: 44.5%;
      left: 20%;
   }

   .simple .moscow {
      bottom: 9%;
      right: 27.5%;
   }
}

@media (max-width: 1680px) {
   .simple .pekin {
      top: 43.5%;
      left: 15%;
   }

   .simple .moscow {
      bottom: 7%;
      right: 27.5%;
   }
}

@media (max-width: 1580px) {
   .simple .pekin {
      top: 43.5%;
      left: 13%;
   }

   .simple .moscow {
      bottom: 7%;
      right: 27.5%;
   }
}

@media (max-width: 1550px) {
   .simple .pekin {
      top: 5%;
      left: 13%;
   }

   .simple .moscow {
      bottom: 7%;
      right: 44.5%;
   }
}

@media (max-width: 1500px) {
   .simple .pekin {
      top: 5%;
      left: 12%;
   }

   .simple .moscow {
      bottom: 7%;
      right: 44.5%;
   }
}

@media (max-width: 1440px) {
   .simple .pekin {
      top: 5%;
      left: 10%;
   }

   .simple .moscow {
      bottom: 7%;
      right: 44.5%;
   }
}

@media (max-width: 1370px) {
   .simple .pekin {
      top: 5%;
      left: 8%;
   }

   .simple .moscow {
      bottom: 7%;
      right: 44.5%;
   }
}

@media (max-width: 1310px) {
   .simple .pekin {
      top: 5%;
      left: 5%;
   }

   .simple .moscow {
      bottom: 18%;
      right: 44.5%;
   }
}

@media (max-width: 1300px) {
   .simple .pekin {
      display: none;
   }

   .simple .moscow {
      display: none;
   }
}

/*------------------------------About---------------------------*/
.about__body {
   display: grid;
   grid-template-columns: 1fr 1fr;
   grid-template-rows: 1fr 1fr 1fr;
   gap: 20px;
   position: relative;
}

.about__body .decore-arrow-4 {
   position: absolute;
   max-width: 100%;
   bottom: -150px;
   left: 35%;
}

.about__body .decore-arrow-4 svg {
   max-width: 100%;
}

@media (max-width: 1360px) {
   .about__body {
      position: relative;
      z-index: 2;
   }
}

@media (max-width: 800px) {
   .about__body {
      grid-template-columns: 1fr;
      grid-template-rows: auto;
   }
}

.about__block-text {
   border-radius: 0px 40px 40px 0px;
   padding: 30px;
   background: rgb(243, 243, 243);
   background: url(../img/stroke.svg) center/cover no-repeat, #f3f3f3;
   display: flex;
   flex-direction: column;
   justify-content: center;
   align-items: center;
}

.about__name {
   color: rgb(17, 19, 39);
   font-family: Coolvetica;
   font-weight: 400;
   line-height: 100%;
   font-size: calc(24px + 30 * ((100vw - 320px) / 1600));
   margin-bottom: calc(20px + 40 * ((100vw - 320px) / 1600));
   max-width: 700px;
}

.about__description {
   color: rgb(17, 19, 39);
   font-weight: 400;
   line-height: 150%;
   max-width: 700px;
   font-size: calc(15px + 3 * ((100vw - 320px) / 1600));
   margin-bottom: calc(20px + 40 * ((100vw - 320px) / 1600));
}

.about__description p {
   margin-bottom: 16px;
}

.about__description ul {
   margin-bottom: 16px;
}

.about__description ul li {
   padding-left: 26px;
   position: relative;
}

.about__description ul li:not(:last-child) {
   margin-bottom: 10px;
}

.about__description ul li::before {
   content: "-";
   display: inline-block;
   position: absolute;
   left: 0;
   color: #f51515;
   font-size: 30px;
}

.about__block:nth-child(4) {
   border-radius: 40px 0px 0px 40px;
}

.about__block:nth-child(3) {
   border-radius: 0px 40px 40px 0px;
}

.about__block:nth-child(1).element-animation,
.about__block:nth-child(3).element-animation,
.about__block:nth-child(5).element-animation {
   transition: all 0.3s ease 0s;
   transform: translateX(-50%);
}

.about__block:nth-child(1).element-animation.element-show,
.about__block:nth-child(3).element-animation.element-show,
.about__block:nth-child(5).element-animation.element-show {
   transform: translateX(0);
}

.about__block:nth-child(2).element-animation,
.about__block:nth-child(4).element-animation,
.about__block:nth-child(6).element-animation {
   transition: all 0.3s ease 0s;
   transform: translateX(50%);
}

.about__block:nth-child(2).element-animation.element-show,
.about__block:nth-child(4).element-animation.element-show,
.about__block:nth-child(6).element-animation.element-show {
   transform: translateX(0);
}

@media (max-width: 800px) {
   .about__block:nth-child(1) {
      order: 1;
   }

   .about__block:nth-child(2) {
      order: 2;
   }

   .about__block:nth-child(3) {
      order: 4;
   }

   .about__block:nth-child(4) {
      order: 3;
   }

   .about__block:nth-child(5) {
      order: 5;
   }

   .about__block:nth-child(6) {
      order: 6;
   }
}

.about__links {
   display: flex;
   align-items: center;
   text-align: left;
   max-width: 700px;
   width: 100%;
}

.about__link-icon {
   flex: 0 0 70px;
   width: 70px;
   height: 70px;
   border-radius: 50%;
   display: flex;
   align-items: center;
   justify-content: center;
   background: #f51515;
   transition: all 0.3s ease 0s;
}

.about__link-icon:hover {
   background-color: #c40c0c;
}

.about__link-icon:active {
   background-color: #ff6363;
}

.about__link-icon:disabled {
   background: #e6e6e6;
}

.about__link-icon svg {
   width: 32px;
   height: 32px;
   color: #fff;
}

.about__block-image {
   border-radius: 40px 0px 0px 40px;
   overflow: hidden;
   width: 100%;
   height: 100%;
}

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

/*------------------------------Document---------------------------*/
.document__body {
   padding: 120px 0;
}

@media (max-width: 900px) {
   .document__body {
      padding: 80px 0;
   }
}

@media (max-width: 550px) {
   .document__body {
      padding: 40px 0;
   }
}

.document__title {
   margin-bottom: calc(20px + 40 * ((100vw - 320px) / 1600));
}

.document__subtitle {
   display: flex;
   align-items: center;
   justify-content: space-between;
   color: rgb(17, 19, 39);
   font-family: Coolvetica;
   font-weight: 400;
   line-height: 100%;
   font-size: calc(18px + 18 * ((100vw - 320px) / 1600));
   margin-bottom: calc(20px + 40 * ((100vw - 320px) / 1600));
   transition: all 0.5s ease 0.2s;
   transform: scaleY(0);
}

.document__subtitle p {
   margin-left: 15%;
   max-width: 500px;
}

.document__subtitle.element-animation.element-show {
   transform: scaleY(1);
}

@media (max-width: 1000px) {
   .document__subtitle {
      margin-left: 0;
   }
}

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

.document__slide {
   user-select: none;
   position: relative;
   border-radius: 40px;
   overflow: hidden;
}

.document__name {
   position: absolute;
   bottom: 40px;
   left: 40px;
   color: rgb(255, 255, 255);
   font-family: Coolvetica;
   font-weight: 400;
   line-height: 100%;
   font-size: calc(18px + 18 * ((100vw - 320px) / 1600));
}

@media (max-width: 600px) {
   .document__name {
      bottom: 20px;
      left: 20px;
   }
}

.document__date {
   position: absolute;
   top: 40px;
   left: 40px;
   border-radius: 500px;
   backdrop-filter: blur(20px);
   background: rgba(17, 19, 39, 0.2);
   color: rgb(255, 255, 255);
   font-family: Inter;
   font-weight: 600;
   line-height: 150%;
   font-size: calc(14px + 4 * ((100vw - 320px) / 1600));
   padding: 12px 20px;
   display: flex;
   align-items: center;
   gap: 20px;
}

.document__date svg {
   width: 26px;
   height: 26px;
   color: #fff;
}

@media (max-width: 600px) {
   .document__date {
      top: 20px;
      left: 20px;
      padding: 6px 12px;
   }

   .document__date svg {
      width: 20px;
      height: 20px;
   }
}

.prev-slide,
.next-slide {
   width: 70px;
   height: 70px;
   border-radius: 50%;
   user-select: none;
   background: #f51515;
   display: flex;
   align-items: center;
   justify-content: center;
   color: #fff;
   cursor: pointer;
}

.prev-slide svg,
.next-slide svg {
   width: 32px;
   height: 32px;
   color: #fff;
}

.prev-slide:active,
.next-slide:active {
   background-color: #ff6363;
}

.prev-slide:active svg,
.next-slide:active svg {
   transform: scale(0.9);
}

@media (min-width: 1000px) {

   .prev-slide:hover,
   .next-slide:hover {
      background-color: #c40c0c;
   }
}

@media (max-width: 600px) {

   .prev-slide,
   .next-slide {
      width: 40px;
      height: 40px;
   }

   .prev-slide svg,
   .next-slide svg {
      width: 20px;
      height: 20px;
   }
}

.prev-slide {
   transition: transform 1s ease 0.2s, background-color 0.1s ease 0s;
   transform: translateX(50%) rotate(0);
}

.prev-slide.element-animation.element-show {
   transform: translateX(0) rotate(-180deg);
}

.next-slide {
   transition: transform 1s ease 0.3s, background-color 0.1s ease 0s;
   transform: translateX(50%) rotate(0);
}

.next-slide.element-animation.element-show {
   transform: translateX(0) rotate(-360deg);
}

/*------------------------------price---------------------------*/
.price {
   background: url(../img/container2.png) 0 90%/55% auto no-repeat, url(../img/stroke-bg.svg) center/cover no-repeat, #f3f3f3;
   position: relative;
}

.price .decore-arrow-5 {
   position: absolute;
   top: -160px;
   left: 30%;
}

@media (max-width: 1000px) {
   .price .decore-arrow-5 {
      max-width: 40%;
   }

   .price .decore-arrow-5 svg {
      width: 100%;
   }
}

@media (max-width: 600px) {
   .price .decore-arrow-5 {
      max-width: 60%;
   }

   .price .decore-arrow-5 svg {
      width: 100%;
   }
}

.price .decore-arrow-6 {
   position: absolute;
   bottom: -160px;
   left: 50%;
}

@media (max-width: 1000px) {
   .price .decore-arrow-6 {
      max-width: 30%;
   }

   .price .decore-arrow-6 svg {
      width: 100%;
   }
}

@media (max-width: 600px) {
   .price .decore-arrow-6 {
      max-width: 40%;
   }

   .price .decore-arrow-6 svg {
      width: 100%;
   }
}

@media (max-width: 1500px) {
   .price {
      background: url(../img/container2.png) 0 80%/40% auto no-repeat, url(../img/stroke-bg.svg) center/cover no-repeat, #f3f3f3;
   }
}

@media (max-width: 1200px) {
   .price {
      background: url(../img/stroke-bg.svg) center/cover no-repeat, #f3f3f3;
   }
}

.price__body {
   padding: 120px 0;
}

@media (max-width: 900px) {
   .price__body {
      padding: 80px 0;
   }
}

@media (max-width: 1200px) {
   .price__body {
      padding: 40px 0;
   }
}

.price__title {
   display: flex;
   align-items: center;
   justify-content: space-between;
   margin-bottom: 60px;
}

@media (max-width: 600px) {
   .price__title {
      margin-bottom: 30px;
   }
}

.price__title span {
   color: #f51515;
}

@media (max-width: 1200px) {
   .price__title {
      flex-direction: column;
      gap: 20px;
   }
}

.price__subtitle {
   color: rgb(0, 0, 0);
   font-family: Inter;
   font-size: 18px;
   font-weight: 400;
   line-height: 150%;
   letter-spacing: -2%;
   text-align: left;
   font-size: calc(16px + 2 * ((100vw - 320px) / 1600));
   max-width: 400px;
}

@media (max-width: 1200px) {
   .price__subtitle {
      max-width: 600px;
   }
}

.price__types {
   display: flex;
   justify-content: flex-end;
   gap: 20px;
}

@media (max-width: 1200px) {
   .price__types {
      justify-content: center;
   }
}

@media (max-width: 767px) {
   .price__types {
      flex-wrap: wrap;
   }
}

.price__type {
   position: relative;
   max-width: 260px;
   width: 100%;
   cursor: pointer;
   transition: transform 0.5s ease 0s;
   transform: scaleX(0);
}

.price__type:not(.active):hover .price__type-check {
   background: #ff6363;
}

.price__type:not(.active):hover .price__type-name {
   color: #f51515;
}

.price__type.element-animation.element-show {
   transform: scaleX(1);
}

.price__type.active .price__type-check {
   background: #f51515;
}

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

.price__type:nth-child(1) {
   transition: transform 0.5s ease 0s;
   transform: scaleX(0);
}

.price__type:nth-child(1).element-animation.element-show {
   transform: scaleX(1);
}

.price__type-img img {
   width: 100%;
   height: 100%;
   object-fit: cover;
   transition: all 0.3s ease 0s;
}

.price__type-name {
   text-align: center;
   transition: all 0.3s ease 0s;
   margin-top: 10px;
   color: rgb(17, 19, 39);
   font-family: Inter;
   font-size: 18px;
   font-weight: 600;
   line-height: 150%;
   letter-spacing: -2%;
   text-align: center;
}

.price__type-check {
   position: absolute;
   top: 0;
   left: 0;
   width: 32px;
   height: 32px;
   background: #d3d3d3;
   border-radius: 5px;
   display: flex;
   align-items: center;
   justify-content: center;
   transition: all 0.3s ease 0s;
}

.price__type-check svg {
   width: 12px;
   color: #fff;
}

@media (max-width: 550px) {
   .price__type-check {
      width: 12vw;
      height: 12vw;
   }
}

.price__buttons {
   display: flex;
   align-items: center;
   justify-content: flex-end;
   margin-top: calc(30px + 50 * ((100vw - 320px) / 1600));
}

.price__buttons .service__calc-link {
   flex: 0 1 auto;
}

@media (max-width: 550px) {
   .price__buttons .service__calc-link {
      min-height: 50px;
      padding: 14px 18px !important;
   }
}

@media (max-width: 1700px) {
   .price__buttons .service__calc-link-icon {
      display: flex;
   }
}

@media (max-width: 1200px) {
   .price__buttons {
      justify-content: center;
   }
}

@media (max-width: 550px) {
   .price__buttons .service__calc-link-icon {
      width: 50px;
      height: 50px;
      flex: 0 0 50px;
   }

   .price__buttons .service__calc-link-icon svg {
      width: 22px;
      height: 22px;
   }
}

/*------------------------------Testimonials---------------------------*/
.testimonials__body {
   padding: 120px 0;
}

@media (max-width: 1200px) {
   .testimonials__body {
      padding: 80px 0;
   }
}

@media (max-width: 600px) {
   .testimonials__body {
      padding: 40px 0;
   }
}

.testimonials__tabs {
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 20px;
   margin-bottom: 30px;
}

.testimonials__tab {
   color: #000;
   font-weight: 500;
   transition: all 0.3s ease 0s;
   cursor: pointer;
   border-bottom: 1px dashed #000;
}

.testimonials__tab.active {
   color: #c40c0c;
   border: none;
}

.testimonials__contents {}

.testimonials__content {
   display: none;
}

.testimonials__content.active {
   display: block;
}

.testimonial {
   background: #f9f9f9;
   padding: 20px 16px;
   border-radius: 20px;
   height: auto;
   display: flex;
   flex-direction: column;
}

.testimonial__author {
   display: flex;
   align-items: flex-start;
   gap: 6px;
   color: #fff;
   padding-left: 10px;
   flex: 1;
}

@media (max-width: 600px) {
   .testimonial {
      padding: 16px 10px;
   }

   .testimonial__author {
      flex-direction: column;
      padding-left: 0;
   }
}

.testimonial__name {
   color: rgb(0, 0, 0);
   font-weight: 600;
   margin-bottom: 7px;
}

.testimonial__message {
   color: rgb(0, 0, 0);
   font-size: 0.875rem;
   font-weight: 400;
   line-height: 128%;
}

.testimonial__audio {
   width: 100%;
   margin-top: 25px;
}

.testimonial__audio audio {
   width: 100%;
}

.testimonials__title {
   margin-bottom: calc(30px + 30 * ((100vw - 320px) / 1600));
}

.testimonials__title span {
   color: #f51515;
}

.testimonials__slide {
   width: 100%;
   height: 100%;
}

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

.testimonials__buttons {
   display: flex;
   align-items: center;
   gap: 10px;
   justify-content: center;
   margin-top: calc(20px + 20 * ((100vw - 320px) / 1600));
}

/*------------------------------Contacts---------------------------*/
.contacts__body {
   position: relative;
   display: flex;
   gap: 20px;
}

@media (max-width: 1000px) {
   .contacts__body {
      flex-direction: column;
      gap: 0;
   }
}

.contacts__body .decore-arrow-7 {
   position: absolute;
   left: 30%;
   top: -260px;
   width: 13%;
}

.contacts__body .decore-arrow-7 svg {
   max-width: 100%;
}

@media (max-width: 1000px) {
   .contacts__body .decore-arrow-7 {
      width: 20%;
   }
}

@media (max-width: 500px) {
   .contacts__body .decore-arrow-7 {
      top: -300px;
      width: 27%;
      left: 60%;
   }
}

.contacts__info {
   flex: 0 1 50%;
   border-radius: 0 40px 40px 0;
   overflow: hidden;
   background: #000;
   background: url(../img/stroke.svg) center/cover no-repeat, #f3f3f3;
   display: flex;
   flex-direction: column;
   padding: 40px;
}

@media (max-width: 1000px) {
   .contacts__info {
      border-radius: 0;
   }
}

@media (max-width: 767px) {
   .contacts__info {
      padding: 20px;
   }
}

.contacts__address {
   display: flex;
   align-items: center;
   gap: 40px;
}

@media (max-width: 767px) {
   .contacts__address {
      gap: 20px;
      margin-bottom: 20px;
   }
}

.contacts__address a {
   color: rgb(0, 0, 0);
   line-height: 150%;
   transition: color 0.3s ease 0s;
}

.contacts__address a span {
   font-size: calc(16px + 2 * ((100vw - 320px) / 1600));
   display: block;
}

@media (max-width: 550px) {
   .contacts__address a span {
      font-size: 14px;
   }
}

.contacts__address a:hover {
   color: #f51515;
}

.contacts__address svg {
   width: 60px;
   height: 60px;
   color: #f51515;
}

@media (max-width: 600px) {
   .contacts__address svg {
      width: 40px;
      height: 40px;
      flex: 0 0 40px;
   }
}

.contacts__address span:nth-child(1) {
   transition: transform 0.5s ease 0s;
   transform: translateY(30px);
   opacity: 0;
}

.contacts__address span:nth-child(1).element-animation.element-show {
   transform: translateY(0);
   opacity: 1;
}

.contacts__address span:nth-child(2) {
   transition: transform 0.5s ease 0.05s;
   transform: translateY(30px);
   opacity: 0;
}

.contacts__address span:nth-child(2).element-animation.element-show {
   transform: translateY(0);
   opacity: 1;
}

.contacts__links {
   margin-top: auto;
}

.contacts__telephone {
   margin-bottom: calc(20px + 20 * ((100vw - 320px) / 1600));
}

.contacts__telephone a,
.contacts__email a {
   color: rgb(17, 19, 39);
   font-family: Coolvetica;
   font-weight: 400;
   line-height: 100%;
   font-size: calc(24px + 30 * ((100vw - 320px) / 1600));
   display: flex;
   align-items: center;
   gap: 40px;
   transition: color 0.3s ease 0s;
}

.contacts__telephone a:hover,
.contacts__email a:hover {
   color: #f51515;
}

@media (max-width: 767px) {

   .contacts__telephone a,
   .contacts__email a {
      gap: 20px;
   }
}

.contacts__telephone svg,
.contacts__email svg {
   width: 60px;
   height: 60px;
   color: #f51515;
}

@media (max-width: 600px) {

   .contacts__telephone svg,
   .contacts__email svg {
      width: 40px;
      height: 40px;
      flex: 0 0 40px;
   }
}

.contacts__telephone span {
   transition: transform 0.5s ease 0.1s, opacity 0.5s ease 0.1s;
   transform: translateY(30px);
   opacity: 0;
}

.contacts__telephone span.element-animation.element-show {
   transform: translateY(0);
   opacity: 1;
}

.contacts__email span {
   transition: transform 0.5s ease 0.2s, opacity 0.5s ease 0.2s;
   transform: translateY(30px);
   opacity: 0;
}

.contacts__email span.element-animation.element-show {
   transform: translateY(0);
   opacity: 1;
}

.contacts__buttons {
   margin-top: 60px;
   display: flex;
   align-items: center;
}

@media (max-width: 767px) {
   .contacts__buttons {
      margin-top: 20px;
   }
}

.contacts__buttons .service__calc-link {
   flex: 0 1 auto;
}

.contacts__buttons .service__calc-link-icon {
   display: flex !important;
}

@media (max-width: 767px) {
   .contacts__buttons .service__calc-link-icon {
      width: 45px;
      height: 45px;
      flex: 0 0 45px;
   }

   .contacts__buttons .service__calc-link-icon svg {
      width: 24px;
      height: 24px;
   }
}

.contacts__map {
   flex: 0 1 50%;
   border-radius: 40px 0 0 40px;
   overflow: hidden;
}

@media (max-width: 1000px) {
   .contacts__map {
      border-radius: 0;
   }
}

@media (max-width: 767px) {
   .contacts__map iframe {
      width: 100%;
      height: 100%;
      min-height: 400px;
   }
}

/*------------------------------Footer---------------------------*/
.footer__body {
   padding: 60px 0;
   display: flex;
   align-items: flex-start;
   justify-content: space-between;
   gap: 30px;
}

@media (max-width: 767px) {
   .footer__body {
      flex-direction: column;
      align-items: flex-start;
      justify-content: flex-start;
      padding: 40px 0;
   }
}

@media (max-width: 550px) {
   .footer__body {
      padding: 20px 0;
      gap: 10px;
   }
}

.footer__req {
   color: rgb(0, 0, 0);
   font-family: Inter;
   font-weight: 400;
   line-height: 150%;
   font-size: calc(14px + 4 * ((100vw - 320px) / 1600));
   opacity: 0.5;
}

.footer__sv {
   color: rgb(0, 0, 0);
   font-family: Inter;
   font-weight: 400;
   line-height: 150%;
   font-size: calc(14px + 4 * ((100vw - 320px) / 1600));
   opacity: 0.5;
   border-bottom: 2px dashed #f51515;
}

@media (max-width: 550px) {
   .footer__sv p {
      padding-bottom: 10px;
   }
}

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

.footer__socials-title {
   color: rgb(0, 0, 0);
   font-family: Coolvetica;
   font-weight: 400;
   line-height: 100%;
   font-size: calc(16px + 6 * ((100vw - 320px) / 1600));
   margin-bottom: 20px;
}

@media (max-width: 550px) {
   .footer__socials-title {
      text-align: center;
   }
}

.footer__socials-links {
   display: flex;
   align-items: center;
   justify-content: flex-end;
   gap: 10px;
}

.footer__socials-links a {
   display: inline-flex;
   width: 60px;
   height: 60px;
   justify-content: center;
   align-items: center;
   border-radius: 50%;
   background: #f51515;
   transition: all 0.3s ease 0s;
}

.footer__socials-links a:hover {
   background: #c40c0c;
}

.footer__socials-links a svg {
   width: 32px;
   height: 32px;
   object-fit: contain;
   color: #fff;
}

@media (max-width: 767px) {
   .footer__socials-links {
      justify-content: flex-start;
   }
}

@media (max-width: 550px) {
   .footer__socials-links {
      justify-content: center;
      text-align: center;
   }
}

/*------------------------------Попап---------------------------*/
.callback {
   position: fixed;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   overflow-x: hidden;
   z-index: 999;
   background: rgba(19, 19, 19, 0.8);
   display: flex;
   align-items: center;
   justify-content: center;
   max-height: 100vh;
   overflow-y: auto;
   display: none;
   cursor: url("../img/close-cursor.svg"), auto;
}

.callback.open {
   display: flex;
}

.callback.open .callback__body {
   animation: visibled 0.4s ease-out 0s forwards;
}

.callback__body {
   padding: calc(20px + 80 * ((100vw - 320px) / 1600));
   border-radius: 40px;
   background: rgb(243, 243, 243);
   width: min(100% - 40px, 724px);
   margin-inline: auto;
   transform: scale(0.5);
   cursor: auto;
}

.callback__body.sended .callback__title,
.callback__body.sended .callback__subtitle,
.callback__body.sended form {
   display: none;
}

.callback__body.sended .message {
   display: block;
}

.callback__body .message {
   display: none;
}

@media (max-width: 550px) {
   .callback__body {
      padding: 30px 20px;
   }
}

.callback__title {
   color: rgb(17, 19, 39);
   font-family: Coolvetica;
   font-weight: 400;
   line-height: 100%;
   font-size: calc(24px + 30 * ((100vw - 320px) / 1600));
   margin-bottom: 10px;
   text-align: center;
}

.callback__subtitle {
   color: rgb(17, 19, 39);
   font-family: Coolvetica;
   font-weight: 400;
   line-height: 100%;
   font-size: calc(18px + 18 * ((100vw - 320px) / 1600));
   text-align: center;
}

.callback__form {
   margin-top: 40px;
   display: flex;
   flex-direction: column;
   gap: 10px;
}

.callback__form-item {
   position: relative;
   width: 100%;
   height: 80px;
   cursor: pointer;
}

.callback__form-item:is(:focus, :focus-within) label,
.callback__form-item.added label {
   top: 20%;
   font-size: 14px;
}

@media (max-width: 550px) {
   .callback__form-item {
      height: 70px;
   }

   .callback__form-item:is(:focus, :focus-within) label,
   .callback__form-item.added label {
      top: 20%;
      font-size: 12px;
   }
}

.callback__form-item input {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   border: 1px solid rgb(231, 231, 231);
   border-radius: 500px;
   background: rgb(255, 255, 255);
   z-index: 1;
   padding: 24px 40px 16px;
   text-align: center;
   color: #000;
   font-size: 18px;
}

.callback__form-item label {
   position: absolute;
   top: 50%;
   left: 50%;
   transform: translate(-50%, -50%);
   color: rgb(86, 86, 86);
   font-family: Inter;
   font-size: 16px;
   z-index: 2;
   transition: all 0.3s ease 0s;
}

.callback__form-buttons {
   display: flex;
   align-items: center;
   min-height: 70px;
}

.submit {
   width: 100%;
   height: 100%;
   display: flex;
   align-items: center;
   background: transparent;
   min-height: 70px;
   border-radius: 500px;
   transition: all 0.3s ease 0s;
}

@media (max-width: 550px) {
   .submit {
      height: 60px;
      min-height: 60px;
   }
}

.submit:hover .submit__icon {
   background: #c40c0c;
}

.submit:hover .link {
   background: #c40c0c;
}

.submit__text {
   background: #f51515;
   display: inline-flex;
   justify-content: center;
   align-items: center;
   width: 100%;
   height: 100%;
   flex: 1;
   min-height: 70px;
   border-radius: 500px;
}

@media (max-width: 550px) {
   .submit__text {
      min-height: 60px;
   }
}

.submit__icon {
   background: #f51515;
   height: 70px;
   aspect-ratio: 1/1;
   border-radius: 50%;
   display: inline-flex;
   justify-content: center;
   transition: all 0.3s ease 0s;
   align-items: center;
}

@media (max-width: 550px) {
   .submit__icon {
      min-height: 60px;
      width: 60px;
      height: 60px;
   }
}

.submit__icon svg {
   width: 32px;
   height: 32px;
   color: #fff;
}

@media (max-width: 550px) {
   .submit__icon svg {
      width: 26px;
      height: 26px;
   }
}

.message {
   text-align: center;
}

.message__img {
   margin-inline: auto;
   margin-bottom: 55px;
   max-width: 200px;
}

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

@media (max-width: 550px) {
   .message__img {
      max-width: 120px;
   }
}

.message__title {
   color: rgb(17, 19, 39);
   font-family: Coolvetica;
   font-size: calc(30px + 24 * ((100vw - 320px) / 1600));
   margin-bottom: 10px;
}

.message__subtitle {
   color: rgb(17, 19, 39);
   font-family: Coolvetica;
   font-size: calc(22px + 14 * ((100vw - 320px) / 1600));
}

@keyframes visibled {
   0% {
      transform: scale(0.5);
   }

   100% {
      transform: scale(1);
   }
}

.open-callback {
   cursor: pointer;
}