@import url(reset.css);
@import url(layout.css);


:root {
   --red: #E02712;
   --black: #000;
   --blue: #435064;
   --light: #DDE4E9;
}

.container {
   max-width: 1500px;
   padding: 0 15px;
   margin: 0 auto;
   height: 100%;
   position: relative;
}

.section {
   padding: 80px 0;
}

.title {
   color: var(--blue);
}

.header {
   width: 100%;
   height: 100vh;
   background: url(../img/header/bg.jpg) no-repeat center/cover;
   margin-bottom: 20px;
   position: relative;
}

.logo {
   position: absolute;
   top: 50px;
   left: calc(50% - 100px)
}

.header__wrap {
   height: 100%;
   display: flex;
   align-items: center;
   justify-content: end;
}

.header__bullets {
   display: flex;
   flex-direction: column;
   margin-right: 180px;
}

.bullet {
   display: flex;
   align-items: center;
   padding: 20px;
   background: #FFFFFF;
   border: 1px solid #F9FAFF;
   box-shadow: 0px 20px 40px rgba(64, 101, 145, 0.15);
   border-radius: 14px;
   max-width: 306px;
   margin-bottom: 30px;
}

.bullet img {
   margin-right: 30px;
   height: 16px;
}

.bullet h4 {
   font-family: 'Roboto';
   font-style: normal;
   font-weight: 700;
   font-size: 18px;
   line-height: 130%;
   letter-spacing: 0.04em;
   text-transform: uppercase;
}

.form {
   width: 400px;
   background: #fff;
   padding: 44px 34px;
   border: 1px solid #F9FAFF;
   box-shadow: 0px 20px 40px rgba(64, 101, 145, 0.15);
   border-radius: 30px;
   -webkit-border-radius: 30px;
   -moz-border-radius: 30px;
   -ms-border-radius: 30px;
   -o-border-radius: 30px;
}

.form__title {
   margin-bottom: 40px;
   font-size: 30px;
   line-height: 130%;
   font-weight: 700;
   letter-spacing: 0.04em;
   text-transform: uppercase;
   position: relative;
   display: flex;
/*   justify-content: space-between;*/
}

.form__title::before {
   content: '';
   display: block;
   width: 90px;
   height: 3px;
   background: var(--red);
   transform: rotate(-25deg);
   -webkit-transform: rotate(-25deg);
   -moz-transform: rotate(-25deg);
   -ms-transform: rotate(-25deg);
   -o-transform: rotate(-25deg);
   position: absolute;
   bottom: 20px;
   left: -5px;
}

.form__label {
   display: block;
   height: 52px;
/*   background: #FFFFFF;*/
   border: 1px solid #DDE4E9;
   border-radius: 5px;
   -webkit-border-radius: 5px;
   -moz-border-radius: 5px;
   -ms-border-radius: 5px;
   -o-border-radius: 5px;
   position: relative;
   margin-bottom: 25px;
}

.form__label:last-child {
   margin-bottom: 0;
}

.label__title {
   position: absolute;
   font-weight: 500;
   font-size: 12px;
   line-height: 150%;
   color: rgba(67, 80, 100, 0.5);
   padding: 2px 4px;
   background: #fff;
   left: 10px;
   top: -10px;
}

select {
   width: 100%;
   padding: 0 15px;
   height: 100%;
   outline: none;
   color: #45484A;
   border: none;
   cursor: pointer;
   border-radius: 5px;
   -webkit-border-radius: 5px;
   -moz-border-radius: 5px;
   -ms-border-radius: 5px;
   -o-border-radius: 5px;
   font-weight: 400;
   font-size: 15px;
   line-height: 150%;
   cursor: pointer;
   color: #45484A;
   line-height: 200%;
}

select option {
   font-weight: 400;
   font-size: 15px;
   line-height: 150%;
   cursor: pointer;
   color: #45484A;
   line-height: 200%;
}

.form__input {
   width: 100%;
   padding: 0 15px;
   height: 100%;
   outline: none;
   border: none;
   font-size: 15px;
   line-height: 150%;
   cursor: pointer;
   color: #45484A;
}

.form__label button {
   width: 100%;
   height: 100%;
   text-align: center;
   text-transform: uppercase;
   color: #fff;
   background: var(--red);
   border-radius: 5px;
   -webkit-border-radius: 5px;
   -moz-border-radius: 5px;
   -ms-border-radius: 5px;
   -o-border-radius: 5px;
   font-weight: 700;
   font-size: 18px;
   line-height: 21px;
   text-align: center;
   letter-spacing: 0.06em;
   border: transparent;
   cursor: pointer;
}

#down__form::before {
   position: absolute;
   content: '';
   width: 800px;
   height: 800px;
   border: 150px solid var(--red);
   display: block;
   top: -200px;
   right: -400px;
   border-radius: 50%;
   -webkit-border-radius: 50%;
   -moz-border-radius: 50%;
   -ms-border-radius: 50%;
   -o-border-radius: 50%;
}


.animate__row {
   width: 100%;
   background: var(--red);
   padding: 2px 0;
   margin-bottom: 200px;
}

.animate__row-item {
   background: url(../img/line.svg);
   width: 100%;
   height: 50px;
   border-top: 1px solid #fff;
   border-bottom: 1px solid #fff;
   animation: bg-animation 50s linear infinite;
   -webkit-animation: bg-animation 50s linear infinite;
}

@keyframes bg-animation {
   0% {
      background-position: 0 0;
   }

   100% {
      background-position: 100% 0;
   }
}

/* /animate__row */
.footer {
   text-align: center;
}

.footer__wrap {
   background: #F9FAFF;
}

.footer__wrap .container {
   padding: 60px 0;
   display: grid;
   grid-template-columns: 1fr 2fr 1fr;
}

.footer__item:nth-child(odd) {
   margin-top: 60px;
}

.footer__link {
   margin: 0 15px;
}

.footer__item {
   font-family: 'Roboto';
   font-style: normal;
   font-weight: 400;
   font-size: 15px;
   line-height: 18px;
   letter-spacing: 0.04em;
   color: var(--blue);
}

.footer__tel {
   font-family: 'Roboto';
   font-style: normal;
   font-weight: 500;
   font-size: 24px;
   line-height: 150%;
   color: #435064;
}

@media(max-width:1330px) {

   .favor__descr,
   .favor__message {
      margin-left: 0;
      padding-left: 0;
      border: none;
   }

   #favor2 {
      background-position: 30% 50%;
   }

   .opinion {
      background-position: center top;
   }
}

@media(max-width:1200px) {
   .favor .container {
      grid-template-columns: 1fr;
   }

   .favor__item-img {
      display: none;
   }

   .about__item:nth-child(even) {
      margin: 0;
   }

   .about__img,
   .features__item::after,
   .features__item::before {
      display: none;
   }

   .features__item {
      flex-direction: column;
      align-items: start;
   }

   .research__content {
      flex-direction: column;
   }

   .research__title {
      margin-bottom: 40px;
   }

   .research::after {
      right: -500px;
      top: -100px;
   }

   .notice__wrap {
      flex-direction: column;
   }

   .notice__slider {
      width: 100%;
   }

   .notice::before {
      display: none;
   }

   .notice__slider-nav {
      left: calc(50% - 118px);
   }
}

.mob__bg {
   display: none;
}

@media(max-width:950px) {
   .header {
      height: auto;
   }

   .header__wrap {
      flex-direction: column;
      padding-top: 150px;
   }

   .header__bullets {
      margin-right: 0;
      width: 100%;
   }

   .bullet {
      max-width: 100%;
      justify-content: space-between;
   }
   .bullet h4{
      text-align: right;
   }
   .form {
      width: 100%;
   }

   .animate__row-item {
      animation-duration: 30s;
   }

   #favor2 {
      background: transparent;
      padding: 0;
   }

   #favor2 .container {
      grid-template-columns: 1fr;
   }

   .about__wrap {
      grid-template-columns: 1fr 1fr;
      gap: 30px;
   }

   .about__bg {
      display: none;
   }

   .why__wrap {
      grid-template-columns: 1fr;
   }

   .why__item:nth-child(2) {
      border-left: none;
      border-right: none;
      border-top: 2px dashed #fff;
      border-bottom: 2px dashed #fff;
   }

   .opinion::after {
      display: none;
   }

   .mob__bg {
      display: block;
      width: 100%;
      margin-bottom: 40px;
      border-radius: 20px;
      -webkit-border-radius: 20px;
      -moz-border-radius: 20px;
      -ms-border-radius: 20px;
      -o-border-radius: 20px;
   }

   .opinion {
      background: transparent;
   }

   .opinion__content {
      max-width: 100%;
      font-size: 18px;
   }

   .swiper-slide {
      flex-direction: column;
   }

   .slider__img {
      margin: 0 auto 30px;
      width: 40%;
      height: auto;
   }

   .how__wrap {
      flex-direction: column;
   }

   .how__title {
      font-size: 20px;
   }

   .how__arrow {
      transform: rotate(90deg);
      -webkit-transform: rotate(90deg);
      -moz-transform: rotate(90deg);
      -ms-transform: rotate(90deg);
      -o-transform: rotate(90deg);
      padding: 0;
   }

   .how__item {
      width: 100%;
      max-width: 100%;
      margin: 100px 0;
   }

   .how__item:last-child {
      margin-bottom: 0;
   }

   .how__item:first-child {
      margin-top: 0;
   }

   .footer__wrap .container {
      grid-template-columns: 1fr;
   }

   .footer__item:nth-child(odd) {
      margin-top: 0;
   }

   .footer__item {
      margin: 20px 0;
   }
}

@media(max-width:768px) {
   .form {
      width: 100%;
   }

   .bullet {
      max-width: 100%;
   }

   .favor__item-img {
      display: block;
   }

   .favor__item-img::before {
      display: none;
   }

   .features__wrap {
      grid-template-columns: 1fr;
   }

   .features__item {
      align-items: center;
   }

   .features__item-content {
      text-align: center;
   }

   .research::after {
      display: none;
   }

   .research::before {
      position: static;
      width: 100%;
      height: 400px;
      background-position: left center;
      background-size: cover;
      margin-bottom: 20px;
   }

   .research__item p,
   .research__item span {
      font-size: 14px;
      letter-spacing: normal;
   }
   .favor__descr, .favor__message{
      display: none;
   }
   .about{
      display: none;
   }
   .features__item:nth-child(4),
   .features__item:nth-child(5),
   .features__item:nth-child(6){
      display: none;
   }
   .research{
      display: none;
   }
}

@media (max-width:660px) {
   .opinion {
      padding: 50px 0;
   }

   .research__item {
      grid-template-columns: 1fr 1fr 1fr;
   }

   .research__table::before {
      right: 38%;
   }

   .research__table::after {
      right: 9%;
   }

   .slider__img {
      width: 100%;
   }

   #down__form::before {
      display: none;
   }

   .footer__icon {
      width: 100%;
   }
}

@media(max-width:500px) {
   .about__wrap {
      grid-template-columns: 1fr;
   }

   .research__title {
      font-size: 20px;
   }

   .research__item {
      padding: 5px;
   }

   .research__table::before {
      right: 30%;
      font-size: 14px;
      width: 80px;
   }

   .research__table::after {
      right: 0%;
      font-size: 12px;
      width: 80px;
   }

   .footer__link {
      display: inline-block;
      margin: 20px;
   }
}