html {
  box-sizing: border-box;
  font-size: 10px;

  scroll-behavior: smooth;
  scroll-padding-top: min(6.3vw, 120px);
}

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

@font-face {
  font-family: "Nunito";
  font-weight: 700;
  font-style: normal;

  src: local("NunitoSans"), url("../fonts/NunitoSans-Bold.woff") format("woff"), url("../fonts/NunitoSans-Bold.woff2") format("woff2");
  font-display: swap;
}

@font-face {
  font-family: "NunitoSans";
  font-weight: 400;
  font-style: normal;

  src: local("NunitoSans"), url("../fonts/NunitoSans-Regular.woff") format("woff"), url("../fonts/NunitoSans-Regular.woff2") format("woff2");
  font-display: swap;
}

@font-face {
  font-family: "Actay";
  font-weight: 700;
  font-style: normal;

  src: local("Actay-WideBold"), url("../fonts/Actay-WideBold.woff") format("woff"), url("../fonts/Actay-WideBold.woff2") format("woff2");
  font-display: swap;
}

@font-face {
  font-family: "Actay";
  font-weight: 400;
  font-style: normal;

  src: local("Actay-Regular"), url("../fonts/Actay-Regular.woff") format("woff"), url("../fonts/Actay-Regular.woff2") format("woff2");
  font-display: swap;
}

body {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 360px;
  min-height: 100vh;
  font-family: "NunitoSans", "Actay";
}

section {
  max-width: 1920px;
  margin: 0 auto;
}

main {
  flex-grow: 1;
}

footer {
  flex-shrink: 0;
}

a {
  text-decoration: none;
  outline: none;
  cursor: pointer;
}

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

button {
  padding: 0;
  border: none;
  outline: none;
  background-color: transparent;
  cursor: pointer;
}

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

input {
  border: none;
  outline: none;
  background-color: transparent;
}

address {
  font-style: normal;
}

select {
  outline: none;
  cursor: pointer;

  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.container {
  max-width: 1920px;
  margin: 0 auto;
}

.flex {
  display: flex;
}

.grid {
  display: grid;
}

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

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

.container {
  padding-right: min(1vw, 20px);
  padding-left: min(1vw, 20px);
}

.mainBlock {
  max-width: min(97.9vw, 1880px);
}

h1,
h2,
h4,
.rate__price,
.hero__titleDescr,
.footer__contactBlock a {
  font-family: "Actay" !important;
}

.header {
  position: fixed;
  z-index: 1000000;
  top: min(1vw, 20px);
  right: 0;
  left: 0;
}

.header__mainBlock {
  position: relative;
  align-items: center;
  min-height: min(5.2vw, 100px);
  padding-top: min(1.4vw, 27px);
  padding-right: min(2.1vw, 40px);
  padding-bottom: min(1.4vw, 27px);
  padding-left: min(2.1vw, 40px);
  border-radius: min(1.4vw, 27px);
  background-color: rgb(227, 228, 255);
}

.header__imgBlock {
  width: min(22.8vw, 437px);
  height: min(2vw, 38px);
  margin-left: auto;
}

.header__img {
  width: 100%;
  height: 100%;

  -o-object-fit: cover;
  object-fit: cover;
}

.header ul {
  display: flex;
  align-items: center;

  -moz-column-gap: min(2.6vw, 50px);
  column-gap: min(2.6vw, 50px);
}

.header ul a,
.header ul address {
  font-size: min(1vw, 20px);
  font-weight: 400;
  line-height: min(1.3vw, 25px);
  color: rgb(19, 21, 33);
}

.header__tel {
  position: relative;
  display: flex;
  align-items: center;
  padding-left: min(3.3vw, 64px);
}

.header__tel::after {
  content: "";
  position: absolute;
  left: 0;
  width: min(2.1vw, 40px);
  height: min(2.1vw, 40px);
  background-image: url(../img/tel_icon.png?v=1);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.header__address {
  position: relative;
  display: flex;
  align-items: center;
  padding-left: min(3.3vw, 64px);
}

.header__address::after {
  content: "";
  position: absolute;
  left: 0;
  width: min(2.1vw, 40px);
  height: min(2.1vw, 40px);
  background-image: url(../img/loc_icon.png?v=1);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.navBlock {
  position: absolute;
  top: 0;
  left: 0;
  overflow-y: auto;
  width: 100%;
  height: -moz-max-content;
  height: max-content;
  max-height: calc(100vh - min(1.3vw, 25px));
  border-radius: min(1.5vw, 28px);
  background-color: rgb(19, 21, 33);
  transition: transform .3s ease-in-out;
  transform: translateX(-500%);
}

.navBlock__cross {
  position: sticky;
  top: min(2.3vw, 45px);
  left: min(2.3vw, 45px);
  width: min(1.9vw, 36px);
  height: min(1.9vw, 36px);
  background-image: url(../img/cross.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.navBlock nav {
  margin-bottom: min(3.6vw, 70px);
}

.navBlock nav ul {
  align-items: flex-start;
  flex-direction: column;
  width: -moz-max-content;
  width: max-content;
  margin-top: min(3.5vw, 68px);
  padding-left: min(5.2vw, 100px);

  row-gap: min(1vw, 20px);
}

.navBlock nav a {
  font-size: min(1.5vw, 28px);
  font-weight: 700;
  line-height: min(2.5vw, 48px);
  color: white;
}

.navBlock__tel {
  display: block;
  margin-bottom: min(3.6vw, 70px);
  padding-left: min(5.2vw, 100px);
  font-size: min(2.7vw, 52px);
  font-weight: 700;
  line-height: min(4.2vw, 80px);
  color: rgb(158, 255, 0);
}

.navBlock__img {
  display: block;
  width: min(42vw, 806px);
  height: min(9.8vw, 189px);
  padding-left: min(5.2vw, 100px);
  background-image: url(../img/navBlock_img.png);
  background-repeat: no-repeat;
  background-position: center right;
  background-size: contain;
}

.burger {
  position: relative;
  align-items: center;
  width: min(1.7vw, 33px);
  height: min(1.3vw, 24px);
  margin-right: min(2.9vw, 55px);
}

.burger::after,
.burger::before {
  content: "";
  position: absolute;
}

.burger__line,
.burger::after,
.burger::before {
  width: 100%;
  height: min(.2vw, 4px);
  border-radius: min(3.2vw, 61px);
  background-color: rgb(19, 21, 33);
}

.burger::after {
  top: 0;
}

.burger::before {
  bottom: 0;
}

.hero {
  margin-top: min(7.3vw, 140px);
  padding-bottom: min(1vw, 20px);
}

.hero__container {
  justify-content: center;
  min-height: 100%;
}

.hero__mainBlock {
  align-items: center;
  flex-direction: column;
  width: 100%;
  min-height: min(51.5vw, 989px);
  border-radius: min(2.1vw, 40px);
  background-color: rgb(227, 228, 255);
}

.hero__main {
  position: relative;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: min(42.3vw, 813px);
  border-radius: min(2.1vw, 40px);
  background-image: url(../img/hero_back.jpg);
  background-repeat: no-repeat;
  background-position: center;
}

.hero__main::after {
  content: "";
  position: absolute;
  width: min(30.9vw, 593px);
  height: min(19.5vw, 374px);
  background-image: url(../img/hero_center.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.hero__mainContent {
  position: relative;
  align-items: center;
  flex-direction: column;
  min-height: min(36vw, 692px);
  padding-top: min(4.8vw, 92px);
}

.hero__line {
  position: absolute;
  width: min(16.2vw, 311px);
  height: min(12.4vw, 239px);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.hero__line_tl {
  top: 0;
  left: 0;
  background-image: url(../img/t_l.png);
}

.hero__line_tr {
  top: 0;
  right: 0;
  background-image: url(../img/t_r.png);
}

.hero__line_bl {
  bottom: 0;
  left: 0;
  background-image: url(../img/b_l.png);
}

.hero__line_br {
  right: 0;
  bottom: 0;
  background-image: url(../img/b_r.png);
}

.hero__rec {
  position: absolute;
  top: min(1.8vw, 34px);
  left: min(1.8vw, 34px);
  align-items: center;
  font-size: min(1.5vw, 28px);
  font-weight: 400;
  line-height: min(1.8vw, 35px);
  color: white;
  text-transform: uppercase;

  -moz-column-gap: min(.5vw, 10px);
  column-gap: min(.5vw, 10px);
}

.hero__rec span {
  width: min(1.7vw, 32px);
  height: min(1.7vw, 32px);
  border-radius: 100%;
  background-color: rgb(255, 9, 27);
  transform: translateY(max(-.2vw, -3px));
  animation: rec 1s infinite linear;
}

.hero__mainLogo {
  z-index: 1000;
  display: block;
  width: min(68.2vw, 1310px);
  height: min(18.2vw, 350px);
  margin-bottom: min(.3vw, 6px);
  background-image: url(../img/hero_img.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.hero h1 {
  z-index: 1000;
  display: flex;
  margin-bottom: min(1.6vw, 30px);
  font-size: min(3.3vw, 64px);
  font-weight: 700;
  line-height: min(3.6vw, 70px);
  color: rgb(255, 255, 255);

  -moz-column-gap: min(.6vw, 11px);
  column-gap: min(.6vw, 11px);
}

.hero h1 div {
  padding: 3px min(1.9vw, 36px);
  border-radius: min(4.8vw, 92px);
  font-size: min(3.3vw, 64px);
  font-weight: 700;
  line-height: min(3.6vw, 70px);
  color: rgb(255, 255, 255);
  background-color: rgb(19, 21, 33);
  transform: translateY(max(-1.3vw, -25px));

  rotate: -5deg;
}

.hero__titleDescr {
  margin-bottom: min(1.1vw, 21px);
  font-size: min(2.5vw, 48px);
  font-weight: 400;
  line-height: min(3.1vw, 60px);
  color: white;
}

.hero h3 {
  margin-bottom: min(.7vw, 14px);
  font-size: min(1.3vw, 24px);
  font-weight: 700;
  line-height: min(1.6vw, 30px);
  color: rgb(19, 21, 33);
}

.hero__listMain {
  padding-block: min(1.7vw, 32px) min(1.9vw, 37px);
}

.hero__socList {
  -moz-column-gap: min(1vw, 20px);
  column-gap: min(1vw, 20px);
}

.hero__socList li {
  position: relative;
  display: flex !important;
  align-items: center;
  padding: min(1vw, 19px) min(1.9vw, 36px);
  border: 2px solid rgb(19, 21, 33);
  border-radius: min(4vw, 77px);
  font-size: min(1vw, 20px);
  font-weight: 400;
  line-height: min(1.3vw, 25px);
  color: rgb(19, 21, 33);
}

.hero__socList li:not(:last-child) {
  padding-left: min(3.6vw, 70px);
}

.hero__socList li::after {
  content: "";
  position: absolute;
  left: min(1.9vw, 36px);
  width: min(1.3vw, 24px);
  height: min(1.3vw, 24px);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.hero__soc1::after {
  background-image: url(../img/soc_1.png);
}

.hero__soc2::after {
  background-image: url(../img/soc_2.png);
}

.hero__soc3::after {
  background-image: url(../img/soc_3.png);
}

.hero__soc4::after {
  background-image: url(../img/soc_4.png);
}

.hero__soc5::after {
  background-image: url(../img/soc_5.png);
}

.hero__soc6::after {
  background-image: url(../img/soc_6.png);
}

.btnMain {
  align-items: center;
}

.btnMain__arrowBtn {
  width: min(1vw, 20px);
  height: min(.8vw, 16px);
  transition: transform .3s ease-in-out;
}

.btnMain__btnDescr {
  align-items: center;
  justify-content: center;
  padding: min(.9vw, 17px) min(4.9vw, 94px);
  border-radius: min(4.9vw, 94px);
  font-size: min(1vw, 20px);
  font-weight: 700;
  line-height: min(1.3vw, 25px);
  color: black;
  background-color: rgb(158, 255, 0);
  transition: background-color .3s ease-in-out, border-color .3s ease-in-out;
}

.btnMain__btnDescr_soc {
  padding: min(.8vw, 16px) min(2.9vw, 56px);
  border: 2px solid rgba(19, 21, 33, 1);
  background-color: transparent;
}

.btnMain__btnDescr_format {
  width: min(19.4vw, 372px);
}

.btnMain__btnDescr_port {
  padding: min(.8vw, 16px) min(2.3vw, 44px);
}

.btnMain__btnIco {
  align-items: center;
  justify-content: center;
  width: min(3.1vw, 60px);
  height: min(3.1vw, 60px);
  border-radius: 100%;
  background-color: rgb(158, 255, 0);
  transition: background-color .3s ease-in-out, border-color .3s ease-in-out;
}

.btnMain__btnIco_soc {
  border: 2px solid rgba(19, 21, 33, 1);
  background-color: rgba(19, 21, 33, 1);
}

.btnMain__btnIcoSvg {
  transition: fill .3s ease-in-out;

  fill: white;
}

.rate {
  padding-bottom: min(1vw, 20px);
}

.rate__mainBlock {
  padding: min(3.8vw, 72px) min(8.3vw, 160px);
  border-radius: min(2.1vw, 40px);
  background-image: url(../img/rate_back.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.rate h2 {
  margin-bottom: min(1.7vw, 33px);
  font-size: min(4.2vw, 80px);
  font-weight: 700;
  line-height: min(4.6vw, 88px);
  color: rgb(255, 255, 255);
}

.rate__blockList {
  justify-content: space-between;

  -moz-column-gap: min(1.1vw, 22px);
  column-gap: min(1.1vw, 22px);
}

.rate__blockItem {
  position: relative;
  flex-direction: column;
  width: min(26.1vw, 502px);
  min-height: min(34.5vw, 662px);
  margin-bottom: min(1.1vw, 21px);
  padding: min(1.6vw, 30px) min(2vw, 38px) min(.9vw, 17px) min(2vw, 38px);
  border: 2px solid rgb(19, 21, 33);
  border-radius: min(1.9vw, 37px);
  background-color: rgb(255, 255, 255);
}

.rate__blockItem::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: min(11.1vw, 214px);
  border-radius: 0 0 min(1.9vw, 37px) min(1.9vw, 37px);
  background-image: url(../img/rate_sky.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.rate__blockItem h4 {
  margin-bottom: min(.5vw, 10px);
  font-size: min(3.3vw, 64px);
  font-weight: 700;
  line-height: min(4.2vw, 80px);
  color: rgb(0, 62, 225);
  text-align: center;
}

.rate__blockItem ul {
  flex-direction: column;
}

.rate__blockItem ul li {
  position: relative;
  display: flex;
  align-items: center;
  padding-left: min(2.1vw, 40px);
  font-size: min(1vw, 20px);
  font-weight: 400;
  line-height: min(1.3vw, 25px);
  color: rgb(19, 21, 33);

  padding-block: min(.8vw, 15px);
}

.rate__blockItem ul li:not(:last-child) {
  border-bottom: 1px solid rgb(209, 210, 213);
}

.rate__blockItem ul li::after {
  content: "";
  position: absolute;
  left: 0;
  width: min(1.3vw, 25px);
  height: min(1.3vw, 25px);
  background-image: url(../img/rate_star.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.rate__blockItem ul .bold {
  font-weight: 700;
}

.rate__price {
  z-index: 1000;
  margin-top: auto;
  font-size: min(3.3vw, 64px);
  font-weight: 700;
  line-height: min(4.2vw, 81px);
  color: rgb(19, 21, 33);
  text-align: center;
}

.rate__btnMain {
  width: -moz-max-content;
  width: max-content;
  margin: 0 auto;
}

.anim {
  position: relative;
}

.anim>span {
  position: absolute;
  z-index: 1001;
  top: max(-1vw, -20px);
  right: min(.3vw, 5px);
  font-size: min(.8vw, 16px);
  font-weight: 700;
  line-height: min(1vw, 20px);
  color: rgb(19, 21, 33);
  text-align: center;

  rotate: 35deg;
}

.anim::before {
  content: "";
  position: absolute;
  z-index: 1000;
  top: max(-3.6vw, -70px);
  right: max(-1.3vw, -25px);
  width: min(7.1vw, 137px);
  height: min(7.1vw, 137px);
  background-image: url(../img/rate_profit.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  animation: moves 10s infinite linear;
}

.format {
  padding-bottom: min(1vw, 20px);
}

.format__mainBlock {
  position: relative;
  padding: min(3.8vw, 72px) min(8.3vw, 160px);
  border-radius: min(2.1vw, 40px);
  background-color: rgb(227, 228, 255);
}

.format__mainBlock div:has(form) {
  position: relative;

  -moz-column-gap: min(1vw, 20px);
  column-gap: min(1vw, 20px);
}

.format__mainBlock div:has(form)::after {
  content: "";
  position: absolute;
  top: max(-9.4vw, -180px);
  right: 0;
  width: min(18.1vw, 348px);
  height: min(23.2vw, 445px);
  background-image: url(../img/light_format.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.format__mainBlock::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: min(34.7vw, 666px);
  height: min(16.7vw, 321px);
  background-image: url(../img/format_sky.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.format__wow {
  width: min(26.5vw, 508px);
  height: min(16.8vw, 323px);
  margin-top: auto;
  /*background-image: url(../img/wow.png);*/
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  will-change: background-image;
}

.format h2 {
  max-width: min(40.2vw, 772px);
  margin-bottom: min(1.6vw, 30px);
  font-size: min(4.2vw, 80px);
  font-weight: 700;
  line-height: min(4.6vw, 88px);
  color: rgb(0, 62, 225);
}

.format__form {
  width: -moz-max-content;
  width: max-content;
  max-width: min(26.5vw, 508px);
  height: -moz-max-content;
  height: max-content;
  padding: min(2.1vw, 40px) min(1.6vw, 30px) min(2.1vw, 40px);
  border: 2px solid rgb(19, 21, 33);
  border-radius: min(2.1vw, 40px);
}

.format__imgBlock {
  width: min(26.5vw, 508px);
  height: min(33.7vw, 647px);
}

.format__img {
  width: 100%;
  height: 100%;
  border-radius: min(2.1vw, 40px);

  -o-object-fit: contain;
  object-fit: contain;
}

.form {
  flex-direction: column;

  row-gap: min(.5vw, 10px);
}

.form__title {
  margin-bottom: min(2.4vw, 46px);
  font-size: min(1vw, 20px);
  font-weight: 700;
  line-height: min(1.3vw, 25px);
  color: rgb(19, 21, 33);
  text-align: center;
}

.form__inputBlock {
  flex-direction: column;
  width: -moz-max-content;
  width: max-content;

  row-gap: min(.6vw, 12px);
}

.form__inputBlock_quest {
  flex-direction: row;

  -moz-column-gap: min(.5vw, 10px);
  column-gap: min(.5vw, 10px);
}

.form__tel {
  width: 100%;
  padding: min(.8vw, 16px) min(2.1vw, 40px);
  border: 2px solid rgb(19, 21, 33);
  border-radius: min(2.7vw, 51px);
  font-size: min(1vw, 20px);
  font-weight: 400;
  line-height: min(1.3vw, 25px);
  color: rgb(19, 21, 33);
}

.form__tel::-moz-placeholder {
  font-size: min(1vw, 20px);
  font-weight: 400;
  line-height: min(1.3vw, 25px);
  color: rgb(19, 21, 33);
}

.form__tel::placeholder {
  font-size: min(1vw, 20px);
  font-weight: 400;
  line-height: min(1.3vw, 25px);
  color: rgb(19, 21, 33);
}

.form__tel_compl {
  border-color: white;
  color: white;
}

.form__tel_compl::-moz-placeholder {
  color: white;
}

.form__tel_compl::placeholder {
  color: white;
}

.form__tel_quest {
  min-width: min(19.7vw, 378px);
  border-color: white;
  color: white;
}

.form__tel_quest::-moz-placeholder {
  color: white;
}

.form__tel_quest::placeholder {
  color: white;
}

.checkBlock {
  position: relative;
  align-items: center;
  padding-left: min(1.7vw, 32px);
  cursor: pointer;
}

.checkBlock__check {
  position: absolute;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
}

.checkBlock__checkVis {
  position: absolute;
  left: 0;
  align-items: center;
  justify-content: center;
  width: min(1.1vw, 22px);
  height: min(1.1vw, 22px);
  border: 2px solid rgb(19, 21, 33);
  border-radius: 100%;
}

.checkBlock__checkVis::after {
  content: "";
  position: absolute;
  width: min(.6vw, 12px);
  height: min(.6vw, 12px);
  border-radius: 100%;
  opacity: 0;
  background-color: rgb(0, 62, 225);
  transition: opacity .3s ease-in-out;
}

.checkBlock__checkVis_compl {
  border-color: white;
}

.checkBlock__checkVis_compl::after {
  background-color: white;
}

.checkBlock__descr {
  font-size: min(.7vw, 14px);
  font-weight: 400;
  line-height: min(.9vw, 18px);
  color: rgb(19, 21, 33);
}

.checkBlock__descr a {
  color: rgb(19, 21, 33);
}

.checkBlock__descr_compl {
  color: white;
}

.checkBlock__descr_compl a {
  color: white;
}

.checkBlock__check:checked+.checkBlock__checkVis::after {
  opacity: 1;
}

.compl {
  padding-bottom: min(1vw, 20px);
}

.compl__mianBlock {
  padding: min(3.8vw, 72px) min(8.3vw, 160px);
  border-radius: min(2.1vw, 40px);
  background-image: url(../img/compl_back.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.compl h2 {
  max-width: min(40.2vw, 772px);
  margin-bottom: min(2.1vw, 40px);
  font-size: min(4.2vw, 80px);
  font-weight: 700;
  line-height: min(4.6vw, 88px);
  color: rgb(255, 255, 255);
}

.compl h2+div {
  justify-content: space-between;

  -moz-column-gap: min(5.5vw, 106px);
  column-gap: min(5.5vw, 106px);
}

.compl__descrBlock {
  flex-direction: column;
  justify-content: space-between;
  max-width: min(22.3vw, 428px);
}

.compl__descrBlock p {
  margin-top: min(2.6vw, 49px);
  font-size: min(1vw, 20px);
  font-weight: 700;
  line-height: min(1.3vw, 25px);
  color: white;
}

.compl__advant {
  grid-template-columns: min(26.5vw, 508px) min(26.5vw, 508px);
  grid-template-rows: min(21.5vw, 412px) min(11.5vw, 221px);
  gap: min(.8vw, 15px);
}

.compl__block {
  position: relative;
  padding: min(3.1vw, 60px);
  border: 3px solid rgb(19, 21, 33);
  border-radius: min(2.1vw, 40px);
  background-color: white;
}

.compl__block h4 {
  font-size: min(2vw, 38px);
  font-weight: 700;
  line-height: min(2.5vw, 48px);
  color: rgb(19, 21, 33);
}

.compl__block_prod {
  grid-column: 1/2;
  grid-row: 1/2;
}

.compl__block_prod::after {
  content: "";
  position: absolute;
  right: max(-1.8vw, -35px);
  bottom: max(-.5vw, -10px);
  width: min(25.4vw, 488px);
  height: min(13.3vw, 255px);
  background-image: url(../img/compl_prod.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.compl__block_target {
  grid-column: 2/3;
  grid-row: 1/3;
}

.compl__block_target::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: min(29.4vw, 565px);
  height: min(22.4vw, 431px);
  background-image: url(../img/compl_target.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.compl__block_context {
  grid-column: 1/2;
  grid-row: 2/3;
}

.compl__block_context::after {
  content: "";
  position: absolute;
  right: min(1.3vw, 25px);
  bottom: max(-2.3vw, -45px);
  width: min(9.6vw, 184px);
  height: min(10.5vw, 201px);
  background-image: url(../img/compl_context.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.port {
  padding-bottom: min(1vw, 20px);
}

.port__switchBlock {
  position: relative;
  justify-content: flex-start;
  margin-bottom: min(1.25vw, 24px);
  border: 1px solid #131521;
  border-radius: min(4.01vw, 77px);
}

.port__switchBlock::after {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 50%;
  height: 100%;
  border-radius: inherit;
  background-color: #000000;
  transition: transform .3s ease-in-out;
}

.right_switch.port__switchBlock::after {
  transform: translateX(100%);
}

.port__switch {
  z-index: 2;
  align-items: center;
  justify-content: center;
  width: 50%;
  font-size: min(1.25vw, 24px);
  font-weight: 700;
  line-height: min(1.56vw, 30px);
  color: #131521;
  background-color: transparent;
  transition: color .3s ease-in-out;

  padding-block: min(.99vw, 19px);
}

.port__swiper_hidden {
  display: none !important;
}

.port__switch_active {
  color: #ffffff;
}

.port__mainBlock {
  padding: min(3.8vw, 72px) min(8.3vw, 160px);
  border-radius: min(2.1vw, 40px);
  background-color: rgb(227, 228, 255);
}

.port h2 {
  margin-bottom: min(1.6vw, 30px);
  font-size: min(4.2vw, 80px);
  font-weight: 700;
  line-height: min(4.6vw, 88px);
  color: rgb(0, 62, 225);
}

.port__linkBlock {
  position: relative;
  align-items: center;
  flex-direction: column;
  min-width: min(19.58vw, 376px);
  width: min(19.69vw, 378px);
  min-height: min(45.7vw, 877px);
  /* border: 3px solid rgb(19, 21, 33); */
  border-radius: min(2.08vw, 40px);
  background-color: rgb(0, 62, 225);
}

.port__linkBlock>span {
  position: absolute;
  z-index: 100000;
  width: 100%;
  height: 100%;
  border: 3px solid black;
  border-radius: min(2.08vw, 40px);

  inset: 0;
}

.port__linkBlock::after {
  content: "";
  position: absolute;
  z-index: 1000000;
  top: 0;
  right: max(-1.8vw, -34px);
  width: min(22.1vw, 424px);
  height: min(44.6vw, 857px);
  background-image: url(../img/port_wow.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.port__linkBlock::before {
  content: "";
  position: absolute;
  bottom: 0;
  width: 100%;
  height: min(42.5vw, 816px);
  background-image: url(../img/port_bottom.png);
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: contain;
}

.port__btnMain {
  z-index: 100100000;
  width: -moz-max-content;
  width: max-content;
  margin: 0 auto;
}

.port h4 {
  z-index: 1001;
  margin-top: min(22.1vw, 424px);
  margin-bottom: min(2.6vw, 49px);
  font-size: min(1.3vw, 24px);
  font-weight: 700;
  line-height: min(1.6vw, 30px);
  color: white;
  text-align: center;
}

.port__main {
  justify-content: space-between;
  margin-bottom: min(2.1vw, 40px);
  -moz-column-gap: min(1.2vw, 23px);
  column-gap: min(1.2vw, 23px);
}

.br_mob {
  display: none;
}

.div {
  padding: min(1vw, 20px) min(1vw, 20px) 0 min(1vw, 20px);
  border: 3px solid rgb(19, 21, 33);
  border-radius: min(2.08vw, 40px);
  background-color: white;
}

.port__swiper {
  /*border-radius: min(2.08vw, 40px);*/
}

.port__swiper {
  position: relative;
  overflow: hidden;
  width: min(58.07vw, 1115px);
  height: calc( 100% - 60px );
  /* padding: min(1vw, 20px); */
  /* border: 3px solid rgb(19, 21, 33);
  border-radius: min(2.08vw, 40px); */
  background-color: white;
}


.port__blockSocial h5 {
  margin-bottom: min(.8vw, 16px);
  font-size: min(1.3vw, 24px);
  font-weight: 700;
  line-height: min(1.6vw, 30px);
  color: rgba(19, 21, 33, 1);
}

.port__swiper h5 {
  /* margin-bottom: min(4vw, 77px); */
  font-size: min(1.3vw, 24px);
  font-weight: 700;
  line-height: min(1.6vw, 30px);
  color: rgb(19, 21, 33);
  text-align: center;
  margin-top: min(1vw, 20px);
}

.port__slide {
  border-radius: min(1.9vw, 36px);
  margin-bottom: 20px;
}

.port__content {}

.port__content__wrap {
  position: relative;
  cursor: pointer;
  object-position: top;
  height: min(36.8vw, 706px) !important;
  border-radius: min(1.9vw, 36px);
  overflow: hidden;
}

.port__content__wrap.loaded video {
	display:block !important;
	outline: 3px solid rgb(19, 21, 33);
	outline-offset: -3px;
	border-radius: min(1.9vw, 36px);
}

.port__content__wrap.loaded img {
	/*opacity:0;*/
}

.port__content__wrap:before {
  content: '';
  background: url("../img/video_play.png") center center no-repeat;
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
}


@keyframes aniHide {
  0% {opacity: 0.5;}
  100% {opacity: 0;}
}
@keyframes aniShow {
  0% {opacity: 0;}
  100% {opacity: 0.5;}
}
.port__content__wrap.played:before {
	background: url("../img/video_pause.png") center center no-repeat;
	z-index:4;
	opacity:1;
	animation: aniHide 0.3s forwards;
}

.port__content__wrap.played:hover:before {
	animation: aniShow 0.3s forwards;
}

.port__content__wrap.loaded.paused:before {
	animation: aniShow 0.3s forwards;
	z-index:4;
}


.port__content__wrap:before {
}

/*.port__content__wrap.played:not(:hover):before {
	animation: aniHide 1.5s forwards;
}*/


.port__content__wrap:after {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  outline: 3px solid rgb(19, 21, 33);
  outline-offset: -3px;
  border-radius: min(1.9vw, 36px);
}

.port__content__wrap video {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  display: none;
  z-index: 2;
	pointer-events:none;
}

.port__content__img {
  width: inherit;
  max-width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.port__swiper_reels .port__content {
  object-fit: cover;
}

.port__swiper_inter .port__content {
	width: 100% !important;
	border-radius: min(2.08vw, 40px);
}


.port__swiper__buttons {
	position:static;
	display:flex;
	align-items: center;
	margin-bottom: 20px;
}

.port__swiper__buttons * {
	position:static !important;
}

.port__sliderNav {
  position: absolute;
  z-index: 1000;
  bottom: min(1vw, 20px);
  align-items: center;
  justify-content: center;
  width: min(2.1vw, 40px);
  height: min(2.1vw, 40px);
  border-radius: 100%;
  background-color: rgb(209, 210, 213);
  cursor: pointer;
  transition: background-color .3s ease-in-out;
}

.port__sliderNav_next {
  right: min(1vw, 20px);
}

.port__sliderNav_prev {
  left: min(1vw, 20px);
}

.port__arrow {
  width: min(.8vw, 16px);
  height: min(.6vw, 12px);

  fill: white;
}

.port div:has(.port__swiper) {
  /* min-height: min(48.44vw, 930px); */
}

.port__listSocial {
  column-gap: min(1vw, 20px);
}



.port__swiper1__wrap {
	display:flex;
}

.port__swiper2__wrap {
	display:flex;
}

.port__swiper1__wrap .div {
	/* margin-bottom:20px; */
}





.quest {
  padding-bottom: min(1vw, 20px);
}

.quest__mainBlock {
  position: relative;
  align-items: center;
  flex-direction: column;
  justify-content: center;
  min-height: min(43.4vw, 834px);
  border-radius: min(2.1vw, 40px);
  background-image: url(../img/quest_back.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.quest__mainBlock::after {
  content: "";
  position: absolute;
  width: min(81.2vw, 1559px);
  min-height: min(36vw, 692px);
  background-image: url(../img/cam_back.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.quest h2 {
  z-index: 1000;
  margin-bottom: min(1.3vw, 25px);
  font-size: min(4.2vw, 80px);
  font-weight: 700;
  line-height: min(4.6vw, 88px);
  color: white;
}

.quest p {
  z-index: 1000;
  max-width: min(43.6vw, 837px);
  margin-bottom: min(1.7vw, 33px);
  font-size: min(1vw, 20px);
  font-weight: 700;
  line-height: min(1.3vw, 25px);
  color: white;
  text-align: center;
}

.quest__form {
  z-index: 1000;
}

.footer__bottom li {
  text-align: center;
}

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

.footer__bottom .column a {
	text-decoration:underline;
}

.footer {
  padding-bottom: min(1vw, 20px);
}

.footer__disc,
.footer__yur {
  display: none;
  max-width: 340px;
  margin-top: 30px;
  font-size: 20px;
  font-weight: 700;
  line-height: 25px;
  color: rgb(255, 255, 255);
  text-align: center;
}

.footer__up {
  display: none;
}

.footer__mainBlock {
  padding: min(3.1vw, 60px) min(8.3vw, 160px);
  border-radius: min(2.1vw, 40px);
  background-color: rgb(19, 21, 33);
}

.footer__code {
  width: min(10.8vw, 184px);
  height: min(10.8vw, 184px);
  background-image: url(../img/qr.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.footer__descrBlock {
  align-items: center;
  flex-direction: column;

  row-gap: min(.7vw, 14px);
}

.footer__descrTxt {
  font-size: min(1vw, 20px);
  font-weight: 700;
  line-height: min(1.3vw, 25px);
  color: rgb(118, 119, 128);
}

.footer__contactMain {
  justify-content: space-between;

  row-gap: min(.5vw, 10px);
}

.footer__navList {
  -moz-column-gap: min(1.5vw, 28px);
  column-gap: min(1.5vw, 28px);
}

.footer__navList a {
  font-size: min(1vw, 20px);
  font-weight: 700;
  line-height: min(1.3vw, 25px);
  color: rgb(255, 255, 255);
}

.footer__contactBlock {
  flex-direction: column;

  row-gap: min(.8vw, 16px);
}

.footer__contactBlock a {
  margin-bottom: min(.8vw, 16px);
  font-size: min(1.8vw, 34px);
  font-weight: 700;
  line-height: min(2.2vw, 43px);
  color: white;
}

.footer__contactBlock span {
  font-size: min(1vw, 20px);
  font-weight: 400;
  line-height: min(1.3vw, 25px);
  color: white;
}

.footer__imgMain {
  width: 100%;
  height: min(22vw, 423px);
  margin-bottom: min(1.7vw, 33px);
  background-image: url(../img/img__footer.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.footer__bottom {
  justify-content: space-between;

  row-gap: min(.5vw, 10px);
}

.footer__bottom a {
  font-size: min(1vw, 20px);
  font-weight: 400;
  line-height: min(1.3vw, 25px);
  color: rgb(118, 119, 128);
}

.modal {
  display: none;
  width: 30%;
  max-width: 430px;
}

.modal__formTel {
  width: 100%;
  padding-top: 1.4rem;
  padding-bottom: 1.4rem;
  border: 1px solid #231f20;
  border-radius: 40px;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: normal;
  color: rgba(35, 31, 32, .6);
  text-align: center;
}

.modal__form {
  flex-direction: column;
  width: 420px;
  max-width: 100%;

  row-gap: 1rem;
}

.modal__btn {
  display: block;
  width: 100%;
  margin-bottom: .4rem;
  padding-top: 1.4rem;
  padding-bottom: 1.4rem;
  border-radius: 40px;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: normal;
  color: black;
  text-align: center;
  background-color: rgb(158, 255, 0);
  transition: background-color .3s ease-in-out;
	margin-top:10px;
	margin-bottom:10px;
}

.modal__checkInput {
  position: absolute;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
}

.modal__checkBlock {
  position: relative;
  display: flex !important;
  align-items: center;
  width: -moz-max-content;
  width: max-content;
  padding-left: 1.5rem !important;
  cursor: pointer;
}

.modal__check {
  position: absolute;
  left: 0;
  width: 10px;
  height: 10px;
  border: 1px solid #8a8d8f;
  border-radius: 100%;
}

.modal__check::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 1px solid white;
  border-radius: 100%;
  opacity: 0;
  background-color: #8a8d8f;
  transition: opacity .3s ease-in-out;
}

.modal__title {
  margin-bottom: 2rem;
  font-size: 2.4rem;
  font-weight: 700;
  color: black;
  text-align: center;
}

.containerMin {
  width: min(81.2vw, 1559px);
}


.fancybox-container {
    z-index: 10000001 !important;
}

.fancybox-is-sliding .fancybox-slide,
.fancybox-slide--current,
.fancybox-slide--next,
.fancybox-slide--previous {
  display: flex;
  align-items: center;
  justify-content: center;
}

.swiper-horizontal>.swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-horizontal {
  bottom: min(1.8vw, 35px);
  left: min(3.9vw, 75px);
  width: min(52.2vw, 1003px);
  height: min(.5vw, 10px);
  cursor: pointer;
}

.swiper-scrollbar-drag {
  background: rgb(19, 21, 33);
}

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

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

@keyframes rec {
  0% {
    opacity: 1;
  }

  25% {
    opacity: 0;
  }

  50% {
    opacity: 0;
  }

  75% {
    opacity: 1;
  }

  100% {
    opacity: 1;
  }
}

.navBlock__link {
  transition: color .3s ease-in-out;
}

@media (any-hover: hover) {
  .call:hover {
    text-decoration: underline;
  }

  .navBlock__link:hover {
    color: rgb(141, 228, 0);
  }

  .btnMain:hover .btnMain__arrowBtn {
    transform: rotate(45deg);
  }

  .port__sliderNav:hover {
    background-color: black;
  }

  .modal__btn:hover {
    background-color: rgb(141, 228, 0);
  }

  .btnMain:hover .btnMain__btnDescr {
    background-color: rgb(141, 228, 0);
  }

  .btnMain:hover .btnMain__btnIco {
    background-color: rgb(141, 228, 0);
  }

  .btnMain:hover .btnMain__btnIco_soc,
  .btnMain:hover .btnMain__btnDescr_soc {
    border: 2px solid rgb(141, 228, 0);
    background-color: rgb(141, 228, 0);
  }

  .btnMain:hover .btnMain__btnIcoSvg {
    fill: black;
  }
}


.btnMain__btnIco_soc_1 {
  width: min(1.77vw, 34px);
  height: min(1.77vw, 34px);
}

.btnMain__btnIco_soc_2 {
  width: min(1.25vw, 24px);
  height: min(1.25vw, 24px);
}

.btnMain__btnIco_soc_3 {
  width: min(1.25vw, 24px);
  height: min(1.25vw, 24px);
}

.btnMain__btnIco_soc_4 {
  width: min(1.25vw, 24px);
  height: min(1.25vw, 24px);
}

.btnMain__btnIco_soc_5 {
  width: min(0.89vw, 17px);
  height: min(0.89vw, 17px);
}

.compensate-for-scrollbar {
  margin-right: 0 !important;
}

.has-danger input,
.has-danger select,
.has-danger textarea {
  border-width: 2px;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #eba5a3;
}

#form_popup,
#form_popup2 {
  display: none;
}

.popup_container .agree_field {
  font-size: 10px;
  color: black;
  text-align: left;
}

.popup_container .agree_field a {
  color: black;
}

.popup_container .form_comment {
  padding-bottom: 15px;
  font-size: 20px;
  color: #d6001c;
  text-align: center;
}

.popup_container .form_comment a {
  display: block;
  color: #414141;
  text-decoration: none;
}

.popup_container .close {
  position: absolute;
  top: 10px;
  right: 10px;
  width: 34px;
  height: 34px;
  cursor: pointer;

  /* Aey IE */
  /* Aey Firefox */
  /* Aey Safari, Chrome, iOS */
  /* Aey Opera */
  transform: rotate(45deg);
}

.popup_container .close:before {
  content: "";
  position: absolute;
  top: 16px;
  left: 0;
  display: block;
  width: 34px;
  height: 1px;
  background-color: #a8a8a8;
}

.popup_container .close:after {
  content: "";
  position: absolute;
  top: 0;
  left: 16px;
  display: block;
  width: 1px;
  height: 34px;
  background-color: #a8a8a8;
}

.popup_container .form-group input[type=text] {
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: 56px;
  margin-bottom: 10px;
  padding: 10px;
  border: 1px solid #f3f3f3;
  line-height: 56px;
  color: black;
  text-align: left;
  text-decoration: none;
  outline: none;
  background: #f3f3f3;
}

.popup_container .form-group textarea {
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: 100px;
  margin-bottom: 10px;
  padding: 10px;
  border: 1px solid #c0c6c9;
  font-family: "Montserrat";
  font-size: 16px;
  color: black;
  text-align: left;
  text-decoration: none;
  outline: none;
  background: none;
  resize: none;
}

.popup_container .form-group select {
  width: 100%;
  height: 50px;
  height: 38px;
  padding-left: 10px;
  border: 1px solid white;
  border: 1px solid #c0c6c9;
  border-radius: 5px;
  font-family: "Montserrat";
  font-size: 16px;
  font-weight: 300;
  color: #1d1f20;
  background-color: white;
}

.popup_container .form-group button {
  height: 38px;
  height: 60px;
  font-size: 16px;
  font-weight: 700;
  cursor: pointer;
}

.popup_container .form-group button:before {
  display: none;
}

.popup_container .form-group button:after {
  display: none;
}

.not_agree button {
  color: white !important;
  background-color: #cccccc !important;
  cursor: auto !important;
}

.agree_field {
  position: relative;
  top: 0;
  display: inline-block;
  padding-left: 20px;
  font-size: 10px;
  line-height: 100%;
}

.agree_field input {
  position: absolute;
  top: -1px;
  left: 0;
  margin: 0;
}

.popup_container .form-disclamer {
  padding-top: 10px;
  font-size: 10px;
  color: #b8b8b8;
  text-align: center;
}

.form_tel {
  margin-bottom: 20px;
}

.form_tel a {
  display: block;
  margin-top: 10px;
  font-size: 22px;
  font-weight: 700;
  color: #000000;
  text-decoration: none;
}

.fancybox-button svg {
  pointer-events: none;
}

/*# sourceMappingURL=style.css.map */
.vis {
  display: block;
}

.policy {

}

.policy a {
	font-weight:bold;
	text-decoration:underline;
}





