@charset "UTF-8";

.container {
  display: block;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: 15px;
  padding-right: 15px;
  display: -ms-flex;
  display: flex;
  flex-flow: row wrap
}

@media (min-width:480px) {
  .container {
    width: 100%
  }
}

@media (min-width:768px) {
  .container {
    width: 100%
  }
}

@media (min-width:992px) {
  .container {
    width: 962px
  }
}

@media (min-width:1200px) {
  .container {
    width: 1170px
  }
}

@media (min-width:1400px) {
  .container {
    width: 1380px
  }
}

@media (min-width:1580px) {
  .container {
    width: 1200px
  }
}

section {
  width: 100%;
  display: inline-block;
  position: relative
}

.swiper-slide {
  cursor: pointer
}

.section-title {
  font-size: 36px;
  color: #fff;
  font-weight: 400;
  text-transform: uppercase;
  margin: 0;
  position: relative;
  display: inline-block
}

@media (min-width:992px) {
  .section-title {
    font-size: 42px
  }
}

.section-title span {
  width: 100%;
  display: inline-block
}

.section-title::before {
  line-height: 140px;
  font-size: 150px;
  bottom: 150px;
  line-height: 140px
}

@media (min-width:992px) {
  .section-title::before {
    bottom: 90px;
    font-size: 222px;
    line-height: 172px
  }
}

.btn-box {
  margin: 0 auto;
  display: -ms-flex;
  display: flex;
  flex-flow: row wrap;
  align-content: flex-start;
  align-items: flex-start;
  position: relative
}

.btn-box .btn {
  background-color: #18101c
}

.btn {
  text-decoration: none;
  cursor: pointer;
  border-radius: 40px;
  padding: 10px 42px;
  box-sizing: border-box;
  border: 2px solid #c94627;
  height: 48px;
  transition: .3s;
  z-index: 2;
  position: relative;
  overflow: hidden;
  display: -ms-flex;
  display: flex;
  flex-flow: row wrap;
  align-content: center;
  align-items: center;
  justify-content: center
}

.btn span {
  font-size: 16px;
  color: #c94627;
  font-family: MontserratSemiBold, sans-serif;
  text-transform: uppercase;
  z-index: 5;
  position: relative
}

.btn:hover span {
  -webkit-animation: MoveScaleUpInitial .3s forwards, MoveScaleUpEnd .3s forwards .3s;
  animation: MoveScaleUpInitial .3s forwards, MoveScaleUpEnd .3s forwards .3s;
  color: #fff
}

@-webkit-keyframes MoveScaleUpInitial {
  to {
    transform: translate3d(0, -105%, 0) scale3d(1, 2, 1);
    opacity: 0
  }
}

@keyframes MoveScaleUpInitial {
  to {
    transform: translate3d(0, -105%, 0) scale3d(1, 2, 1);
    opacity: 0
  }
}

@-webkit-keyframes MoveScaleUpEnd {
  from {
    transform: translate3d(0, 100%, 0) scale3d(1, 2, 1);
    opacity: 0
  }

  to {
    transform: translate3d(0, 0, 0);
    opacity: 1
  }
}

@keyframes MoveScaleUpEnd {
  from {
    transform: translate3d(0, 100%, 0) scale3d(1, 2, 1);
    opacity: 0
  }

  to {
    transform: translate3d(0, 0, 0);
    opacity: 1
  }
}

.btn::before {
  content: '';
  background: #c94627;
  width: 120%;
  height: 0;
  padding-bottom: 120%;
  top: -183%;
  left: -10%;
  border-radius: 50%;
  transform: translate3d(0, 68%, 0) scale3d(0, 0, 0);
  position: absolute
}

.btn:hover::before {
  transform: translate3d(0, 0, 0) scale3d(1, 1, 1);
  transition: transform .4s cubic-bezier(.1, 0, .3, 1)
}

.btn::after {
  content: '';
  background: #c94627;
  transform: translate3d(0, -100%, 0);
  transition: transform .4s cubic-bezier(.1, 0, .3, 1);
  position: absolute
}

.btn:hover::after {
  transform: translate3d(0, 0, 0);
  transition-duration: 50ms;
  transition-delay: .4s;
  transition-timing-function: linear
}

.line-from {
  width: 2px;
  height: 0;
  background: linear-gradient(180deg, #c94627 0, rgba(201, 70, 39, 0) 100%);
  margin: 5px auto 0;
  z-index: -1;
  position: absolute;
  top: 0;
  left: calc(50% - (2px/2));
  transition: 2.5s ease
}

.line-from--front {
  top: 61px
}

.line-from--front.show,
.line-from.show {
  height: 192px
}

.page-pagination {
  position: fixed;
  right: 40px;
  top: 0;
  height: 100%;
  display: -ms-flex;
  display: flex;
  flex-flow: row wrap;
  height: 100%;
  align-content: center;
  align-items: center;
  justify-content: center;
  width: 20px
}

.page-pagination__link {
  text-decoration: none;
  display: inline-block;
  margin: 5px 0;
  width: 100%
}

.page-pagination__link.active .page-pagination__bullet {
  border: 2px solid #c94627
}

#fp-nav {
  display: none
}

@media (min-width:992px) {
  #fp-nav {
    display: block
  }
}

#fp-nav ul li {
  margin: 4px 0;
  list-style-type: none;
  display: table;
  position: initial
}

#fp-nav ul li:hover .fp-tooltip {
  opacity: 0
}

#fp-nav ul li a.active {
  border: 2px solid #c94627
}

#fp-nav ul li a,
.page-pagination__bullet {
  border: 2px solid transparent;
  transform: rotate(45deg);
  width: 20px;
  height: 20px;
  position: relative;
  transition: .5s;
  margin: 5px 0
}

#fp-nav ul li a::after,
.page-pagination__bullet::after {
  content: "";
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background-color: #c4c4c4;
  position: absolute;
  left: calc(50% - (4px/2));
  top: calc(50% - (4px/2))
}

#fp-nav ul li a span,
.page-pagination__bullet span {
  display: none
}

.page-pagination__label {
  color: #7c717d;
  font-size: 12px;
  text-transform: uppercase;
  font-family: MontserratRegular, sans-serif;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl
}

.page-pagination__label span {
  display: inline-block;
  margin-bottom: 24px
}

.fp-tooltip {
  color: #7c717d !important;
  font-size: 12px !important;
  text-transform: uppercase;
  font-family: MontserratRegular, sans-serif !important;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  right: 2px !important;
  bottom: 284px;
  top: initial !important
}

.services .fp-tooltip {
  bottom: 358px
}

.form-wrap {
  width: 350px;
  display: -ms-flex;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  position: relative
}

@media (min-width:768px) {
  .form-wrap {
    top: 70px
  }
}

@media (min-width:992px) {
  .form-wrap {
    width: 62%;
    top: 0
  }
}

.form-wrap .btn {
  width: 100%
}

@media (min-width:768px) {
  .form-wrap .btn {
    width: 196px
  }
}

.form-row {
  width: 100%;
  display: -ms-flex;
  display: flex;
  flex-flow: row wrap
}

.form-field {
  background: linear-gradient(154.49deg, rgba(113, 103, 139, .2) 5.35%, rgba(61, 52, 98, .2) 83.85%), rgba(61, 55, 68, .2);
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
  border: none;
  width: 100%;
  height: 48px;
  display: inline-block;
  padding: 0 15px;
  color: #fff;
  font-size: 16px;
  font-family: MontserratRegular, sans-serif;
  margin-bottom: 30px
}

@media (min-width:992px) {
  .form-field {
    width: 230px;
    margin-right: 20px;
    margin-bottom: 0
  }
}

.form-field::-moz-placeholder {
  color: #fff;
  font-size: 16px;
  font-family: MontserratRegular, sans-serif
}

.form-field:-ms-input-placeholder {
  color: #fff;
  font-size: 16px;
  font-family: MontserratRegular, sans-serif
}

.form-field::placeholder {
  color: #fff;
  font-size: 16px;
  font-family: MontserratRegular, sans-serif
}

.rect-btn {
  border: 2px solid #c94627;
  width: 32px;
  height: 32px;
  transform: rotate(-45deg);
  filter: drop-shadow(0 0 10px rgba(201, 70, 39, .5));
  position: relative;
  margin: 30px auto 0;
  transition: .5s;
  z-index: 3
}

.rect-btn::before {
  content: "";
  background-image: url(../img/chev-case.svg);
  width: 10px;
  height: 15px;
  transform: rotate(-45deg);
  position: absolute;
  background-repeat: no-repeat;
  background-size: 100%;
  left: 8px;
  top: 7px
}

@font-face {
  font-family: OpenSans;
  font-display: swap;
  src: url(../fonts/OpenSansRegular.woff2) format("woff2");
  font-weight: 400
}

@font-face {
  font-family: OpenSans;
  font-display: swap;
  src: url(../fonts/OpenSansSemibold.woff2) format("woff2");
  font-weight: 600
}

@font-face {
  font-family: OpenSans;
  font-display: swap;
  src: url(../fonts/OpenSansExtraBold.woff2) format("woff2");
  font-weight: 800
}

@font-face {
  font-family: MontserratRegular;
  font-display: swap;
  src: url(../fonts/MontserratRegular.woff2) format("woff2");
  font-weight: 400
}

@font-face {
  font-family: MontserratBold;
  font-display: swap;
  src: url(../fonts/MontserratBold.woff2) format("woff2");
  font-weight: 700
}

@font-face {
  font-family: MontserratSemiBold;
  font-display: swap;
  src: url(../fonts/MontserratSemiBold.woff2) format("woff2");
  font-weight: 600
}

@-ms-viewport {
  width: device-width
}

.page {
  box-sizing: border-box;
  font-size: 10px;
  -webkit-tap-highlight-color: transparent;
  -ms-overflow-style: scrollbar;
  -ms-text-size-adjust: 100%;
  min-width: 320px;
  min-height: 100%
}

.page__inner {
  min-height: 100vh;
  display: flex;
  flex-direction: column
}

.page__content {
  flex-grow: 1
}

.page__footer-wrapper {
  flex-shrink: 0
}

*,
:after,
:before {
  box-sizing: inherit
}

body {
  background-color: #130915;
  margin: 0;
  min-height: 100%;
  font-family: OpenSans, sans-serif;
  font-size: 16px;
  line-height: 1.4;
  color: #000;
  scroll-behavior: smooth
}

[tabindex='-1']:focus {
  outline: 0 !important
}

[role=button] {
  cursor: pointer
}

input[type=search] {
  -webkit-appearance: textfield
}

[role=button],
a,
button,
input,
label,
select,
textarea {
  touch-action: manipulation
}

a svg,
button svg {
  pointer-events: none
}

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

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

[type=button],
[type=reset],
[type=submit],
button {
  -webkit-appearance: button
}

[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner,
button::-moz-focus-inner {
  padding: 0;
  border-style: none
}

[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring,
button:-moz-focusring {
  outline: 1px dotted ButtonText
}

textarea {
  overflow: auto;
  resize: vertical
}

svg {
  fill: currentColor
}

a svg,
button svg {
  pointer-events: none
}

svg:not(:root) {
  overflow: hidden
}

p {
  line-height: 24px;
  font-size: 16px;
  color: #fff;
  font-family: MontserratRegular, sans-serif
}

.front {
  padding: 40px 0 200px;
  background-image: url(../img/front-fon-new.png);
  background-size: 100%;
  background-repeat: no-repeat
}

.front::before {
  content: "";
  background-image: url(../img/mountain.svg);
  position: absolute;
  left: 0;
  top: calc(50% - (700px/2));
  width: 645px;
  height: 500px;
  background-repeat: no-repeat;
  background-size: 100%;
  display: none
}

@media (min-width:768px) {
  .front::before {
    display: block
  }
}

@media (min-width:1200px) {
  .front::before {
    left: -300px
  }
}

@media (min-width:1580px) {
  .front::before {
    left: 0
  }
}

.front-content {
  width: 100%;
  display: -ms-flex;
  display: flex;
  flex-flow: row wrap;
  align-content: flex-start;
  align-items: flex-start
}

@media (min-width:992px) {
  .front-content {
    margin-left: 80px
  }
}

@media (min-width:1580px) {
  .front-content {
    padding: 0 0 0 40px
  }
}

.front__label {
  width: 100%;
  display: inline-block;
  text-align: left;
  font-size: 26px;
  color: #7c717d;
  font-weight: 400
}

@media (min-width:768px) {
  .front__label {
    font-size: 36px
  }
}

.front__label--services {
  font-size: 20px;
  margin: 0 0 10px
}

@media (min-width:768px) {
  .front__label--services {
    font-size: 28px
  }
}

.front__title {
  font-size: 60px;
  line-height: 50px;
  font-weight: 600;
  margin: 0 0 20px;
  color: #fff;
  margin: 0;
  width: 100%;
  text-align: left;
  display: inline-block;
  position: relative
}

@media (min-width:768px) {
  .front__title {
    font-size: 96px;
    line-height: 90px;
    left: -5px;
    margin: 0 0 15px
  }
}

.front__title span {
  font-size: 40px
}

@media (min-width:768px) {
  .front__title span {
    font-size: 60px
  }
}

.front__descr {
  font-size: 18px;
  color: #fff;
  font-family: MontserratRegular, sans-serif;
  line-height: 30px;
  display: inline-block;
  margin-bottom: 30px;
  width: 100%
}

@media (min-width:768px) {
  .front__descr {
    font-size: 24px;
    line-height: 40px
  }
}

.front__descr span {
  color: #c94627
}

.front-advantages {
  width: 100%;
  display: -ms-flex;
  display: flex;
  flex-flow: row wrap;
  box-sizing: border-box;
  justify-content: space-between;
  margin: 40px 0 0
}

@media (min-width:992px) {
  .front-advantages {
    margin: 60px 0 0;
    padding: 0 80px
  }
}

@media (min-width:1580px) {
  .front-advantages {
    padding: 0 120px
  }
}

.advantages__item {
  width: 100%;
  margin: 0 0 15px;
  display: -ms-flex;
  display: flex;
  flex-flow: row wrap;
  align-content: flex-start;
  align-items: flex-start;
  background: linear-gradient(154.49deg, rgba(53, 46, 71, .2) 5.35%, rgba(61, 52, 98, .2) 83.85%), rgba(49, 48, 54, .2);
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
  border-radius: 3px;
  padding: 20px 10px 20px 20px;
  box-sizing: border-box
}

@media (min-width:768px) {
  .advantages__item {
    width: 32%;
    margin: 0
  }
}

.advantages__item .advantages__descr {
  width: calc(100% - 33px);
  font-size: 13px;
  font-family: MontserratRegular, sans-serif;
  color: #fff;
  line-height: 18px;
  padding-left: 10px;
  box-sizing: border-box
}

@media (min-width:992px) {
  .advantages__item .advantages__descr {
    width: calc(100% - 36px);
    padding-left: 18px;
    font-size: 16px;
    line-height: 20px
  }
}

.advantages__pic {
  width: 32px
}

@media (min-width:992px) {
  .advantages__pic {
    width: 36px
  }
}

.competence {
  padding: 0 0 200px;
  position: relative
}

.competence::before {
  content: "";
  position: absolute;
  background-repeat: no-repeat;
  background-size: 100%;
  width: 176px;
  height: 159px;
  top: -60px;
  left: 40%
}

.competence-brain {
  position: relative;
  margin: 0 auto;
  width: 200px;
  height: 190px;
  overflow: hidden;
  display: none
}

@media (min-width:992px) {
  .competence-brain {
    display: block
  }
}

.competence-brain img {
  width: 100%;
  height: 100%
}

.competence-brain::after {
  content: "";
  background-image: url(../img/brain1.png);
  background-repeat: no-repeat;
  background-size: 100%;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  /* top: 0; */
  z-index: 2
}


.competence::after {
  content: "";
  background-image: url(../img/competence-fon.png);
  width: 100%;
  position: absolute;
  height: 760px;
  background-size: 100%;
  background-repeat: no-repeat;
  left: 0;
  top: 45%
}

.competence-head {
  width: 100%;
  display: -ms-flex;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between
}

.competence-head .section-title {
  width: 100%
}

@media (min-width:768px) {
  .competence-head .section-title {
    width: 20%
  }
}

.competence-head .section-title::before {
  content: "К";
  color: transparent;
  -webkit-text-stroke: 1px #7c717d;
  opacity: .4;
  position: absolute;
  left: 0;
  text-transform: uppercase;
  font-weight: 800;
  bottom: 0
}

@media (min-width:992px) {
  .competence-head .section-title::before {
    bottom: 90px
  }
}

.competence--service .section-title::before {
  content: "S"
}

.letter-disable .section-title::before {
  display: none;
}

@media (min-width:992px) {
  .competence--service .section-title::before {
    bottom: 160px
  }
}

.competence-info {
  width: 100%
}

@media (min-width:768px) {
  .competence-info {
    width: 49%
  }
}

@media (min-width:992px) {
  .competence-info {
    width: 40%
  }
}

.competence-info p {
  margin: 0 0 20px
}

.competence-info p:last-of-type {
  margin-bottom: 0
}

.competence-wrap {
  width: 100%;
  display: -ms-flex;
  display: flex;
  flex-flow: row wrap;
  margin: 70px 0 40px;
  justify-content: center
}

.competence-item {
  width: 50%;
  display: inline-block;
  text-align: center
}

@media (min-width:768px) {
  .competence-item {
    width: 18%
  }
}

.competence-descr {
  width: 100%;
  display: inline-block;
  text-transform: uppercase;
  font-size: 12px;
  line-height: 24px;
  font-family: MontserratRegular, sans-serif;
  text-align: center;
  color: #fff;
  margin: 15px 0
}

@media (min-width:992px) {
  .competence-descr {
    font-size: 16px
  }
}

.competence-line {
  background-image: url(../img/competence-line.svg);
  width: 42px;
  height: 252px;
  background-repeat: no-repeat;
  background-size: 100%;
  margin: 0 auto;
  display: none
}

@media (min-width:768px) {
  .competence-line {
    display: inline-block
  }
}

.competence-advantages {
  padding: 0;
  margin: 40px 0 60px
}

.competence-advantages .advantages__descr {
  line-height: 24px
}

.competence-advantages .advantages__descr b {
  font-family: MontserratSemiBold, sans-serif
}

.competence-advantages .advantages__pic {
  width: 36px
}

@media (min-width:992px) {
  .competence-advantages .advantages__pic {
    width: 40px
  }
}

.competence-advantages .advantages__descr {
  width: calc(100% - 36px)
}

@media (min-width:992px) {
  .competence-advantages .advantages__descr {
    width: calc(100% - 40px)
  }
}

.consultation {
  padding: 0 0 200px
}

.consultation .container {
  align-content: flex-end;
  align-items: flex-end;
  justify-content: space-between
}

.consultation .section-title::before {
  content: "б";
  color: transparent;
  -webkit-text-stroke: 1px #7c717d;
  opacity: .4;
  position: absolute;
  left: 0;
  text-transform: uppercase;
  font-weight: 800;
  bottom: 0
}

.consultation-sub {
  width: 100%;
  color: #7c717d;
  font-size: 24px;
  margin: 10px 0 0;
  display: inline-block
}

.checkbox {
  display: inline-block;
  width: 100%
}

@media (min-width:992px) {
  .checkbox {
    width: 70%
  }
}

.checkbox label {
  color: #fff;
  margin: 25px 0 0;
  font-size: 14px;
  font-family: MontserratRegular, sans-serif;
  line-height: 21px;
  display: inline-block;
  position: relative
}

.checkbox label a {
  color: #fff;
  font-size: 14px;
  font-family: MontserratRegular, sans-serif;
  line-height: 21px
}

.checkbox label p {
  margin: 0;
  width: 100%;
  display: inline-block;
  padding-left: 40px;
  box-sizing: border-box;
  font-size: 14px
}

@media (min-width:992px) {
  .checkbox label p {
    font-size: 16px
  }
}

.checkbox input[type=checkbox] {
  display: none
}

.checkbox input[type=checkbox]+label span {
  display: inline-block;
  width: 20px;
  height: 20px;
  background: #fff;
  border: 2px solid #c94627;
  box-sizing: border-box;
  cursor: pointer;
  position: absolute;
  left: 0;
  top: 0
}

.checkbox input[type=checkbox]:checked+label span {
  background-repeat: no-repeat;
  background-size: contain;
  display: inline-block;
  width: 20px;
  height: 20px
}

.checkbox input[type=checkbox]:checked+label span::before {
  content: "";
  background-image: url(../img/check-icon.svg);
  width: 12px;
  height: 10px;
  background-repeat: no-repeat;
  background-size: 100%;
  position: absolute;
  left: 2px;
  top: 4px
}

.advantages {
  padding: 0 0 330px
}

.advantages::after {
  content: "";
  background-image: url(../img/advant-fon2.png);
  background-repeat: no-repeat;
  background-size: 100%;
  position: absolute;
  left: 0;
  top: 120px;
  width: 100%;
  height: 1700px;
  z-index: -1
}

.advantages .section-title::before {
  content: "П";
  color: transparent;
  -webkit-text-stroke: 1px #7c717d;
  opacity: .4;
  position: absolute;
  left: 0;
  text-transform: uppercase;
  font-weight: 800;
  bottom: 0;
  display: none
}

@media (min-width:768px) {
  .advantages .section-title::before {
    display: block
  }
}

.advantages-wrap {
  width: 100%;
  display: -ms-flex;
  display: flex;
  flex-flow: row wrap;
  position: relative;
  margin: 50px 0 0;
  overflow: hidden
}

.advantages-item {
  max-width: 100%;
  display: -ms-flex;
  display: flex;
  flex-flow: row wrap;
  align-content: center;
  align-items: center;
  position: relative;
  opacity: 1
}

@media (min-width:992px) {
  .advantages-item {
    position: absolute;
    max-width: 280px
  }

  .advantages-item:nth-of-type(2) {
    top: 50px;
    left: 20px
  }

  .advantages-item:nth-of-type(3) {
    top: 180px;
    left: 80px
  }

  .advantages-item:nth-of-type(4) {
    top: -10px;
    right: 70px
  }

  .advantages-item:nth-of-type(5) {
    top: 120px;
    right: -10px
  }
}

.advantages-item .advantages__descr {
  font-size: 14px;
  color: #fff;
  font-family: MontserratRegular, sans-serif;
  width: calc(100% - 80px);
  line-height: 24px;
  padding: 0 0 0 8px;
  box-sizing: border-box;
  display: inline-block
}

@media (min-width:992px) {
  .advantages-item .advantages__descr {
    font-size: 16px
  }
}

.advantages__count {
  font-size: 64px;
  color: #c94627;
  font-family: MontserratRegular, sans-serif;
  width: 80px
}

.advantages-hands {
  position: relative;
  margin: 40px auto;
  width: 300px;
  height: 227px;
  display: none
}

@media (min-width:992px) {
  .advantages-hands {
    display: block
  }
}

.advantages-hands img {
  width: 100%;
  height: 100%
}

.advantages-hands::after {
  content: "";
  background-image: url(../img/hands-top5a.png);
  background-repeat: no-repeat;
  background-size: 100%;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  /* top: 0; */
  z-index: 2
}

#particles-js,
.particles-js {
  position: absolute;
  width: 300px;
  height: 148px;
  /* height: 227px; */
  color: #c5c5c5;
  display: none;
  top: 22%;
  left: 0;
  background-size: 1000% 1000%;
  -webkit-animation: gradientAnimation 10s ease infinite;
  animation: gradientAnimation 10s ease infinite
}

.competence-brain .particles-js {
  height: 200px;
  top: 0;
  width: 240px;
  left: -1%;
}

@media (min-width:992px) {
  #particles-js,
  .particles-js {
    display: block
  }
}

.tarifs {
  position: relative;
  padding: 50px 0 300px
}

.tarifs::before {
  content: "";
  background-image: url(../img/tarif-fon2.png);
  background-repeat: no-repeat;
  background-size: 100%;
  position: absolute;
  left: 0;
  top: 400px;
  width: 100%;
  height: 1470px;
  z-index: -1
}

.tarifs .section-title::before {
  content: "Т";
  color: transparent;
  -webkit-text-stroke: 1px #7c717d;
  opacity: .4;
  position: absolute;
  left: 0;
  text-transform: uppercase;
  font-weight: 800;
  bottom: 0
}

.tarifs::after {
  content: "";
  background-image: url(../img/tarif-clock.svg);
  background-repeat: no-repeat;
  width: 223px;
  height: 285px;
  position: absolute;
  right: 15%;
  top: -7%;
  display: none
}

@media (min-width:992px) {
  .tarifs::after {
    display: block
  }
}

.tarifs-sub {
  margin: 0 auto;
  text-align: center;
  display: inline-block;
  position: absolute;
  top: 0;
  left: calc(50% - (335px/2))
}

.tarifs-wrap {
  width: 100%;
  display: -ms-flex;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  margin: 30px 0 0
}

@media (min-width:992px) {
  .tarifs-wrap {
    margin: 80px 0 0
  }
}

.tarifs-plan {
  width: 100%;
  margin-bottom: 30px;
  background: linear-gradient(154.49deg, rgba(53, 46, 71, .2) 5.35%, rgba(61, 52, 98, .2) 83.85%), rgba(49, 48, 54, .2);
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
  border-radius: 3px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  align-content: flex-start;
  border-top: 2px solid transparent;
  transition: .4s;
  min-height: 711px
}

.tarifs-plan:hover {
  border-top: 2px solid #c94627
}

@media (min-width:768px) {
  .tarifs-plan {
    width: 31%;
    margin-bottom: 0
  }
}

.tarifs-header {
  width: 100%;
  padding: 30px 10px;
  box-sizing: border-box;
  display: -ms-flex;
  display: flex;
  flex-flow: row wrap
}

@media (min-width:992px) {
  .tarifs-header {
    padding: 30px
  }
}

.tarifs-icon {
  margin-right: 10px;
  display: inline-block;
  max-width: 36px
}

@media (min-width:992px) {
  .tarifs-icon {
    max-width: 45px;
    margin-right: 25px
  }
}

.tarifs-label {
  margin: 0;
  font-size: 20px;
  line-height: 30px;
  color: #fff;
  font-weight: 400
}

@media (min-width:992px) {
  .tarifs-label {
    font-size: 35px;
    line-height: 45px
  }
}

.tarifs-content {
  padding: 0 10px;
  box-sizing: border-box;
  width: 100%
}

@media (min-width:992px) {
  .tarifs-content {
    padding: 0 30px
  }
}

.tarifs-list {
  margin: 0;
  padding: 0
}

.tarifs-list li {
  list-style-type: none;
  font-size: 14px;
  line-height: 24px;
  color: #fff;
  font-family: MontserratRegular, sans-serif;
  display: inline-block;
  margin: 0 0 15px;
  padding-left: 20px;
  box-sizing: border-box;
  position: relative
}

@media (min-width:1580px) {
  .tarifs-list li {
    font-size: 15px;
    margin: 0 0 15px
  }
}

.tarifs-list li::before {
  content: "";
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background-color: #fff;
  position: absolute;
  left: 0;
  top: 10px
}

.tarifs-note {
  width: 100%;
  background: #1b1622;
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
  display: -ms-flex;
  display: flex;
  flex-flow: row wrap;
  padding: 10px;
  box-sizing: border-box;
  margin: 0 0 30px
}

@media (min-width:992px) {
  .tarifs-note {
    padding: 10px 30px
  }
}

.tarifs-note strong {
  width: 100%;
  color: #fff;
  font-family: MontserratRegular, sans-serif;
  font-size: 14px;
  line-height: 20px;
  display: inline-block;
  font-weight: 400
}

@media (min-width:992px) {
  .tarifs-note strong {
    font-size: 16px;
    line-height: 24px
  }
}

.tarifs-note span {
  width: 100%;
  display: inline-block;
  color: #c94627;
  font-family: MontserratRegular, sans-serif;
  font-size: 24px;
  line-height: 24px;
  font-size: 14px;
  line-height: 20px
}

@media (min-width:992px) {
  .tarifs-note span {
    font-size: 24px;
    line-height: 24px
  }
}

.tarifs-content-wrap {
  flex-grow: 1
}

.tarifs-footer {
  padding: 10px 30px 30px;
  box-sizing: border-box;
  width: 100%;
  display: flex;
  flex-flow: column-reverse wrap;
  justify-content: space-between;
  flex-shrink: 0
}

@media (min-width:992px) {
  .tarifs-footer {
    flex-flow: row wrap
  }
}

.tarifs-footer .btn {
  width: 100%;
  padding: 0 10px;
  margin-top: 15px
}

@media (min-width:992px) {
  .tarifs-footer .btn {
    width: 45%;
    margin-top: 0
  }
}

.tarifs-price {
  font-size: 26px;
  color: #fff;
  font-weight: 400
}

.order {
  padding: 0 0 262px
}

.order .container {
  align-content: flex-end;
  align-items: flex-end;
  justify-content: space-between
}

.order .section-title {
  width: 100%
}

@media (min-width:768px) {
  .order .section-title {
    width: 20%
  }
}

@media (min-width:1200px) {
  .order .section-title {
    width: 100%
  }
}

.order .section-title::before {
  content: "З";
  font-size: 222px;
  color: transparent;
  -webkit-text-stroke: 1px #7c717d;
  opacity: .4;
  position: absolute;
  left: 0;
  line-height: 172px;
  text-transform: uppercase;
  font-weight: 800;
  bottom: 90px;
  height: 172px;
  bottom: 20px;
  z-index: -1
}

.planet {
  position: absolute;
  left: calc(50% - (253px/2));
  top: -130px;
  width: 253px;
  height: 207px;
  transform-style: preserve-3d
}

.planet object {
  width: 100%;
  height: 100%;
  -webkit-animation: infinite;
  animation: infinite
}

.consultation-sub {
  width: 100%;
  color: #7c717d;
  font-size: 24px;
  margin: 10px 0 0;
  display: inline-block
}

.consultation-info {
  width: 100%
}

@media (min-width:768px) {
  .consultation-info {
    width: 49%
  }
}

@media (min-width:992px) {
  .consultation-info {
    width: 36%
  }
}

.consultation-info p {
  width: 100%
}

.faq {
  position: relative;
  padding: 0 0 150px
}

.faq .section-title {
  margin: 0 auto
}

@media (min-width:992px) {
  .faq .section-title {
    margin: 0
  }
}

.faq .section-title::before {
  content: "В";
  font-size: 222px;
  color: transparent;
  -webkit-text-stroke: 1px #7c717d;
  opacity: .4;
  position: absolute;
  left: calc(50% - (150px/2));
  text-transform: uppercase;
  font-weight: 800;
  bottom: 0
}

@media (min-width:992px) {
  .faq .section-title::before {
    left: 0
  }
}

.faq .section-title span {
  width: auto
}

@media (min-width:992px) {
  .faq .section-title span {
    width: 100%
  }
}

.faq .container {
  justify-content: space-between
}

.faq::before {
  content: "";
  background-image: url(../img/airplane.svg);
  background-repeat: no-repeat;
  background-size: 100%;
  width: 236px;
  height: 200px;
  position: absolute;
  left: 10%;
  top: 50%;
  display: none
}

@media (min-width:992px) {
  .faq::before {
    display: block
  }
}

.faq-info {
  width: 100%;
  text-align: center
}

@media (min-width:992px) {
  .faq-info {
    width: 25%;
    text-align: left
  }
}

.faq-wrap {
  width: 100%;
  display: inline-block;
  background: linear-gradient(154.49deg, rgba(53, 46, 71, .2) 5.35%, rgba(61, 52, 98, .2) 83.85%), rgba(49, 48, 54, .2);
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
  border-radius: 3px;
  padding: 60px 34px;
  box-sizing: border-box;
  margin: 15px 0 0 0
}

@media (min-width:992px) {
  .faq-wrap {
    width: 65%;
    margin: 0
  }
}

.faq_row {
  width: 100%;
  display: inline-block;
  margin: 0 0 30px
}

.faq_row:last-of-type {
  margin-bottom: 0
}

.faq_row-title {
  width: 100%;
  cursor: pointer;
  font-size: 16px;
  font-family: MontserratRegular, sans-serif;
  line-height: 30px;
  color: #fff;
  text-align: left;
  position: relative;
  padding-right: 40px
}

@media (min-width:768px) {
  .faq_row-title {
    font-size: 18px
  }
}

@media (min-width:992px) {
  .faq_row-title {
    font-size: 20px
  }
}

.faq_row-hide {
  display: none;
  width: 100%;
  padding: 0 0 0 30px;
  box-sizing: border-box;
  border-left: 1px solid #c94627;
  margin: 20px 0 0
}

.faq_row-hide p {
  color: #c4c4c4;
  margin: 0
}

.plus-icon {
  position: absolute;
  right: 0;
  top: 3px;
  width: 27px;
  height: 27px;
  transition: all .3s ease
}

.plus-icon:after {
  content: "";
  display: inline-block;
  width: 27px;
  position: absolute;
  height: 2px;
  -webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  top: 10px;
  background-color: #c94627
}

.plus-icon:before {
  content: "";
  display: inline-block;
  width: 27px;
  position: absolute;
  height: 2px;
  -webkit-transform: rotate(0);
  -moz-transform: rotate(0);
  -o-transform: rotate(0);
  top: 10px;
  background-color: #c94627
}

.plus-icon__rotate {
  transform: rotate(45deg);
  transition: all .3s ease
}

.header {
  background: linear-gradient(154.49deg, rgba(53, 46, 71, .2) 5.35%, rgba(43, 34, 80, .2) 83.85%), rgba(49, 48, 54, .2);
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
  border-radius: 3px;
  width: 100%;
  padding: 10px 0;
  box-sizing: border-box;
  position: relative;
  z-index: 5
}

.header .container {
  align-content: center;
  align-items: center;
  justify-content: space-between
}

.header-fixed {
  position: fixed;
  left: 0;
  top: -1px;
  z-index: 5;
  padding: 5px 0;
  -webkit-animation: popDown .5s;
  animation: popDown .5s
}

.header-fixed .header-logo {
  height: 40px
}

@-webkit-keyframes popDown {
  0% {
    transform: translateY(-100px)
  }
}

@keyframes popDown {
  0% {
    transform: translateY(-100px)
  }
}

.header-logo {
  height: 53px
}

.header-logo img {
  height: 100%
}

.header-menu {
  flex-grow: 1;
  margin: 0;
  padding: 0;
  justify-content: center;
  position: absolute;
  transition: .5s;
  left: 0;
  top: 73px;
  width: 100%;
  transform: translate(-100%);
  background-color: #1c1424
}

@media (min-width:992px) {
  .header-menu {
    transform: translate(0);
    display: -ms-flex;
    display: flex;
    flex-flow: row wrap;
    width: auto;
    top: 0;
    position: relative;
    background-color: transparent
  }
}

.header-menu li {
  list-style-type: none;
  margin: 20px 30px
}

@media (min-width:992px) {
  .header-menu li {
    margin: 0 20px
  }
}

.header-menu li a {
  text-transform: uppercase;
  color: #fff;
  font-size: 18px;
  font-family: MontserratRegular, sans-serif;
  text-decoration: none;
  position: relative
}

@media (min-width:992px) {
  .header-menu li a {
    font-size: 16px
  }
}

.header-menu li a::before {
  content: "";
  width: 0;
  height: 2px;
  background-color: #c94627;
  position: absolute;
  left: 0;
  transition: .3s;
  bottom: -4px
}

.header-menu li a:hover::before {
  width: 100%
}

.header-menu.animated {
  transform: translate(0);
  opacity: 1;
}

.header-phone {
  font-size: 16px;
  color: #fff;
  font-weight: 600;
  text-decoration: none
}

@media (min-width:768px) {
  .header-phone {
    font-size: 24px
  }
}

.sandwich {
  width: 40px;
  z-index: 200;
  display: -ms-flex;
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-end
}

@media (min-width:992px) {
  .sandwich {
    display: none
  }
}

.sw-topper {
  position: relative;
  top: 0;
  width: 40px;
  height: 2px;
  background: #fff;
  border: none;
  border-radius: 4px 4px 4px 4px;
  transition: transform .5s, top .2s;
  display: block
}

.sw-bottom {
  position: relative;
  width: 40px;
  height: 2px;
  top: 6.6px;
  background: #fff;
  border: none;
  border-radius: 4px 4px 4px 4px;
  transition: transform .5s, top .2s;
  transition-delay: .2s, 0
}

.sw-footer {
  position: relative;
  width: 25px;
  height: 2px;
  top: 13.5px;
  background: #fff;
  border: none;
  border-radius: 4px 4px 4px 4px;
  transition: all .5s;
  transition-delay: .1s
}

.sandwich.active .sw-topper {
  top: 9px;
  transform: rotate(-45deg)
}

.sandwich.active .sw-bottom {
  top: 6px;
  transform: rotate(45deg)
}

.sandwich.active .sw-footer {
  opacity: 0;
  top: 0;
  transform: rotate(180deg)
}

.case {
  padding: 0 0 200px;
  background-image: url(../img/tarif-fon.png);
  background-repeat: no-repeat;
  background-size: 100%;
  background-position-y: 140%
}

.case .section-title {
  margin: 0 auto
}

.case .section-title::before {
  content: "К";
  color: transparent;
  -webkit-text-stroke: 1px #7c717d;
  opacity: .4;
  position: absolute;
  left: 0;
  text-transform: uppercase;
  font-weight: 800;
  bottom: -10px
}

@media (min-width:992px) {
  .case .section-title::before {
    bottom: 0
  }
}

.case .btn-box {
  margin: 80px auto 0
}

.case-sub {
  width: 100%;
  display: inline-block;
  text-align: center;
  color: #fff;
  font-size: 16px;
  line-height: 24px;
  font-family: MontserratRegular, sans-serif
}

.case-wrap {
  width: 100%;
  display: -ms-flex;
  display: flex;
  flex-flow: row wrap;
  background: linear-gradient(154.49deg, rgba(53, 46, 71, .2) 5.35%, rgba(61, 52, 98, .2) 83.85%), rgba(49, 48, 54, .2);
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
  border-radius: 3px;
  padding: 20px 20px;
  box-sizing: border-box;
  margin: 40px 0 0;
  position: relative
}

@media (min-width:768px) {
  .case-wrap {
    padding: 20px 60px
  }
}

@media (min-width:992px) {
  .case-wrap {
    padding: 20px 100px
  }
}

.case-slider {
  width: 100%;
  display: -ms-flex;
  display: flex;
  flex-flow: row wrap
}

.case-panel {
  width: 100%;
  display: -ms-flex;
  display: flex;
  flex-flow: row wrap
}

.case-panel--top {
  align-items: flex-end;
  align-content: flex-end
}

.case-panel--top .case-label {
  width: 100%;
  border-bottom: 1px solid #7c717d;
  padding-bottom: 10px;
  margin-bottom: 15px
}

@media (min-width:992px) {
  .case-panel--top .case-label {
    width: 270px;
    border: none;
    padding: 0;
    margin-bottom: 0
  }
}

.case-panel--top .case-box {
  padding-left: 45px;
  box-sizing: border-box;
  flex-basis: 100%
}

@media (min-width:768px) {
  .case-panel--top .case-box {
    flex-basis: 10%
  }
}

.case-panel--top .case-label {
  font-size: 18px;
  color: #fff;
  font-family: MontserratRegular, sans-serif;
  font-weight: 500
}

.case-panel--bottom .case-label {
  font-size: 18px;
  line-height: 26px;
  color: #fff;
  font-weight: 600;
  display: inline-block;
  width: 100%;
  text-transform: uppercase;
  margin-bottom: 15px
}

@media (min-width:992px) {
  .case-panel--bottom .case-label {
    margin-bottom: 0;
    text-transform: none;
    max-width: 170px;
    width: auto;
    font-size: 24px
  }
}

.case-panel--bottom .case-box {
  position: relative
}

@media (min-width:768px) {
  .case-panel--bottom .case-box::before {
    content: "";
    background-image: url(../img/chev-arrow.svg);
    background-size: 100%;
    background-repeat: no-repeat;
    width: 14px;
    height: 100%;
    position: absolute;
    left: -22px;
    bottom: 0
  }
}

.case-chart {
  margin: 16px 0;
  width: 100%;
  display: inline-block
}

.case-chart img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover
}

.case-categoty {
  margin-right: 10px;
  display: inline-block;
  font-size: 30px;
  line-height: 45px;
  color: #fff;
  font-weight: 600
}

@media (min-width:992px) {
  .case-categoty {
    width: 100%;
    margin-right: 0
  }
}

.case-box {
  flex-grow: 1;
  position: relative;
  display: -ms-flex;
  display: flex;
  flex-flow: row wrap;
  flex-basis: 50%;
  position: relative;
  margin: 0 0 10px
}

@media (min-width:768px) {
  .case-box {
    flex-basis: 20%;
    margin: 0
  }
}

.case__descr {
  color: #fff;
  font-size: 14px;
  font-family: MontserratRegular, sans-serif;
  line-height: 24px;
  width: 100%
}

@media (min-width:992px) {
  .case__descr {
    font-size: 16px
  }
}

.case__info {
  color: #c94627;
  font-size: 14px;
  line-height: 24px;
  width: 100%;
  font-weight: 600
}

@media (min-width:992px) {
  .case__info {
    font-size: 16px
  }
}

.case__info a {
  color: #c94627;
  font-size: 16px;
  line-height: 24px;
  width: 100%;
  font-weight: 600
}

.case-box--site::before {
  content: "";
  width: 36px;
  height: 36px;
  background-image: url(../img/site-icon.svg);
  background-repeat: no-repeat;
  background-size: 100%;
  display: inline-block;
  position: absolute;
  left: 0;
  top: calc(50% - (36px/2))
}

.case-box--region::before {
  content: "";
  width: 36px;
  height: 36px;
  background-image: url(../img/region-icon.svg);
  background-repeat: no-repeat;
  background-size: 100%;
  display: inline-block;
  position: absolute;
  left: 0;
  top: calc(50% - (36px/2))
}

.case-box--seo::before {
  content: "";
  width: 36px;
  height: 36px;
  background-image: url(../img/seo-loupe-icon.svg);
  background-repeat: no-repeat;
  background-size: 100%;
  display: inline-block;
  position: absolute;
  left: 0;
  top: calc(50% - (36px/2))
}

.case__next,
.case__prev,
.reviews__next,
.reviews__prev,
.thumb__next,
.thumb__prev {
  border: 2px solid #c94627;
  width: 32px;
  height: 32px;
  transform: rotate(45deg);
  filter: drop-shadow(0 0 10px rgba(201, 70, 39, .5));
  position: absolute;
  top: calc(50% - (20px/2));
  left: 14px;
  transition: .5s;
  z-index: 3
}

@media (min-width:992px) {

  .case__next,
  .case__prev,
  .reviews__next,
  .reviews__prev,
  .thumb__next,
  .thumb__prev {
    left: 30px
  }
}

.case__next::before,
.case__prev::before,
.reviews__next::before,
.reviews__prev::before,
.thumb__next::before,
.thumb__prev::before {
  content: "";
  background-image: url(../img/chev-case.svg);
  width: 10px;
  height: 15px;
  transform: rotate(-45deg);
  position: absolute;
  background-repeat: no-repeat;
  background-size: 100%;
  left: 8px;
  top: 7px
}

.case__next:hover,
.case__prev:hover,
.reviews__next:hover,
.reviews__prev:hover,
.thumb__next:hover,
.thumb__prev:hover {
  background-color: #c94627
}

.thumb__next {
  border: 2px solid #fff;
  filter: drop-shadow(0 0 10px rgba(201, 70, 39, .5))
}

.case__next,
.reviews__next,
.thumb__next {
  left: initial;
  right: 14px
}

@media (min-width:992px) {

  .case__next,
  .reviews__next,
  .thumb__next {
    right: 40px
  }
}

.case__next::before,
.reviews__next::before,
.thumb__next::before {
  transform: rotate(90deg);
  transform: rotate(135deg);
  left: 10px;
  top: 5px
}

.thumb__next {
  left: initial;
  right: 0;
  top: 70px
}

@media (min-width:992px) {
  .thumb__next {
    top: 30px
  }
}

.case-other {
  width: 100%;
  display: none;
  justify-content: space-between;
  margin: 40px 0 0;
  position: relative;
  padding: 0 60px
}

@media (min-width:768px) {
  .case-other {
    display: -ms-flex;
    display: flex;
    flex-flow: row wrap
  }
}

@media (min-width:992px) {
  .case-other {
    padding: 0
  }
}

.case-other__label {
  color: #fff;
  font-size: 18px;
  font-weight: 600;
  width: 100%;
  margin: 0;
  padding: 12px 0 0;
  box-sizing: border-box;
  text-transform: uppercase
}

@media (min-width:992px) {
  .case-other__label {
    text-transform: none;
    font-size: 24px;
    width: 150px
  }
}

.case-thumb {
  width: 100%;
  margin: 0;
  position: relative;
  box-sizing: border-box
}

@media (min-width:992px) {
  .case-thumb {
    width: 75%;
    margin: 0 70px 0 0
  }
}

.case-thumb .case-chart {
  height: 90px;
  width: 100%;
  margin: 0
}

.case-descr {
  width: 100%;
  display: inline-block;
  margin: 10px 0 0;
  color: #fff;
  font-size: 14px;
  line-height: 21px;
  font-family: MontserratRegular, sans-serif;
  font-weight: 500
}

@media (min-width:992px) {
  .case-descr {
    font-size: 18px;
    line-height: 23px
  }
}

.footer {
  padding: 30px 0
}

.footer .container {
  justify-content: space-between
}

.footer-logo {
  display: none
}

@media (min-width:768px) {
  .footer-logo {
    display: block
  }
}

.footer-menu {
  margin: 0;
  padding: 0;
  max-width: 270px;
  display: none
}

@media (min-width:992px) {
  .footer-menu {
    display: -ms-flex;
    display: flex;
    flex-flow: row wrap;
    align-content: flex-start;
    align-items: flex-start
  }
}

.footer-menu li {
  list-style-type: none;
  display: inline-block;
  margin: 0 0 15px;
  width: 50%
}

.footer-menu li a {
  text-decoration: none;
  text-transform: uppercase;
  font-size: 16px;
  color: #fff;
  font-family: MontserratRegular, sans-serif;
  font-weight: 500
}

.footer-menu li a:hover {
  text-decoration: underline
}

.footer-contacts {
  width: 100%;
  text-align: center
}

@media (min-width:768px) {
  .footer-contacts {
    width: 37%;
    text-align: left
  }
}

@media (min-width:992px) {
  .footer-contacts {
    width: 23%
  }
}

.footer-contacts__label {
  width: 100%;
  display: inline-block;
  font-size: 16px;
  color: #fff;
  font-weight: 600
}

.footer-contacts__descr {
  width: 100%;
  display: inline-block;
  font-size: 16px;
  color: #fff;
  font-weight: 400;
  line-height: 24px;
  margin: 7px 0 15px
}

.footer-info {
  width: 100%;
  margin-top: 20px;
  text-align: center
}

@media (min-width:768px) {
  .footer-info {
    width: 36%;
    margin-top: 0;
    text-align: left
  }
}

@media (min-width:992px) {
  .footer-info {
    width: 18%
  }
}

.footer__phone {
  font-size: 24px;
  color: #fff;
  font-weight: 600;
  width: 100%;
  display: inline-block;
  margin: 0 0 7px;
  text-decoration: none
}

.footer__descr {
  font-size: 18px;
  color: #fff;
  font-weight: 600;
  width: 100%;
  display: inline-block;
  margin: 0 0 7px
}

.footer__mail {
  font-size: 18px;
  color: #fff;
  font-weight: 600;
  display: inline-block;
  margin: 7px 0;
  text-decoration: none;
  position: relative
}

.footer__mail::after {
  content: "";
  width: 100%;
  height: 2px;
  background-color: #c94627;
  position: absolute;
  left: 0;
  bottom: 2px;
  z-index: -1
}

.footer__link {
  color: #7c717d;
  font-size: 13px;
  margin: 12px 0 8px;
  text-decoration: none;
  position: relative;
  font-weight: 400;
  width: 100%;
  display: inline-block
}

@media (min-width:992px) {
  .footer__link {
    width: auto
  }

  .footer__link::after {
    content: "";
    width: 100%;
    height: 1px;
    background-color: #c94627;
    position: absolute;
    left: 0;
    bottom: -1px;
    z-index: -1
  }
}

.copyright {
  width: 100%;
  color: #7c717d;
  font-size: 13px;
  text-decoration: none;
  position: relative;
  font-weight: 400
}

@media (min-width:768px) {
  .copyright {
    margin: 12px 0 8px
  }
}

.structure {
  padding: 0 0 200px
}

.structure-info {
  width: 100%
}

@media (min-width:992px) {
  .structure-info {
    width: 30%
  }
}

.structure-service {
  width: 100%
}

@media (min-width:992px) {
  .structure-service {
    width: 70%
  }
}

.structure-list {
  width: 100%;
  display: -ms-flex;
  display: flex;
  flex-flow: row wrap;
  background: linear-gradient(154.49deg, rgba(53, 46, 71, .2) 5.35%, rgba(61, 52, 98, .2) 83.85%), rgba(49, 48, 54, .2);
  padding: 30px 20px 15px 60px;
  box-sizing: border-box;
  border-top: 2px solid #c94627;
  border-radius: 4px
}

.structure-list ul {
  width: 100%;
  margin: 0;
  padding: 0;
  display: -ms-flex;
  display: flex;
  flex-flow: row wrap
}

.structure-list ul li {
  width: 100%;
  list-style-type: none;
  font-size: 14px;
  line-height: 19px;
  font-weight: 400;
  font-family: MontserratRegular, sans-serif;
  color: #fff;
  padding: 0 60px 0 0;
  box-sizing: border-box;
  margin: 0 0 15px;
  display: inline-block;
  position: relative
}

@media (min-width:992px) {
  .structure-list ul li {
    width: 50%
  }
}

.structure-list ul li::before {
  content: "";
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background-color: #fff;
  position: absolute;
  left: -20px;
  top: 6px
}

.structure-result {
  width: 100%;
  border-left: 2px solid #c94627;
  display: -ms-flex;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  background: linear-gradient(154.49deg, rgba(53, 46, 71, .2) 5.35%, rgba(61, 52, 98, .2) 83.85%), rgba(49, 48, 54, .2);
  padding: 30px 20px 15px 60px;
  box-sizing: border-box;
  border-radius: 4px;
  margin: 40px 0 0
}

.structure-result_list {
  width: 100%;
  margin: 20px 0 0;
  padding: 0
}

@media (min-width:992px) {
  .structure-result_list {
    width: 50%;
    margin: 0
  }
}

.structure-result_list li {
  list-style-type: none;
  display: inline-block;
  width: 100%;
  margin: 0 0 20px;
  color: #fff;
  font-family: MontserratRegular, sans-serif;
  font-size: 15px;
  line-height: 19px;
  font-weight: 400;
  position: relative
}

.structure-result_list li::before {
  content: "";
  width: 18px;
  height: 18px;
  transform: rotate(45deg);
  border: 2px solid #c94627;
  position: absolute;
  display: inline-block;
  left: -30px;
  top: 2px
}

.structure-result_list li::after {
  content: "";
  background-image: url(../img/tick-list.png);
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: center;
  position: absolute;
  left: -26px;
  top: 8px;
  width: 9px;
  height: 7px
}

.reviews {
  padding: 70px 0 150px
}

.reviews .section-title {
  text-align: center;
  width: 100%
}

.reviews .section-title::before {
  content: "О";
  font-size: 222px;
  color: transparent;
  -webkit-text-stroke: 1px #7c717d;
  opacity: .4;
  position: absolute;
  left: calc(50% - (176px/2));
  line-height: 172px;
  text-transform: uppercase;
  font-weight: 800;
  bottom: 90px;
  height: 172px;
  bottom: 7px;
  z-index: -1
}

.reviews-box {
  width: 100%;
  display: inline-block;
  position: relative;
  margin: 60px 0 0;
  padding: 100px 30px;
  background: linear-gradient(154.49deg, rgba(53, 46, 71, .2) 5.35%, rgba(61, 52, 98, .2) 83.85%), rgba(49, 48, 54, .2)
}

.reviews-box .swiper-pagination {
  width: 100%;
  display: -ms-flex;
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  position: relative;
  bottom: 0;
  margin: 40px 0 0;
  border-top: 1px solid rgba(180, 180, 180, .308);
  padding: 40px 0 0
}

.reviews-box .swiper-pagination-bullet {
  background-color: #fff;
  opacity: 1;
  margin: 0 12px;
  width: 5px;
  height: 5px;
  position: relative
}

.reviews-box .swiper-pagination-bullet::before {
  content: ""
}

.reviews-box .swiper-pagination-bullet-active::before {
  content: "";
  width: 26px;
  height: 26px;
  border: 2px solid #c94627;
  position: absolute;
  transform: rotate(45deg);
  left: -10px;
  top: -10px
}

.reviews-wrap {
  width: 100%;
  display: -ms-flex;
  display: flex;
  flex-flow: row wrap
}

.reviews-wrap .swiper-slide {
  text-align: center
}


.successModal-title {
  font-size: 18px;
  color: #fff;
  font-weight: 400;
  margin: 0 0 20px;
  position: relative;
  display: inline-block
}

.successModal,
.tarifForm {
  background-color: #130915;
  background: linear-gradient(154.49deg, rgba(53, 46, 71, .5) 5.35%, rgba(61, 52, 98, .5) 83.85%), rgba(49, 48, 54, .5);
  backdrop-filter: blur(5px);
  border-radius: 3px;
  padding: 40px 20px;
  box-sizing: border-box;
  border-top: 2px solid #c94627;
}

.successModal .btn {
  margin: 0 auto;
}
.tarifForm .form-wrap {
  width: 100%;
}

@media (min-width:992px) {
  .successModal-title {
    font-size: 26px;
 
  }

  .successModal {
    width: 600px;
    padding: 50px 30px;
  }
  .tarifForm {
    width: 400px;
    padding: 50px 30px;
  }


  .tarifForm .form-field {
    width: 100%;
    margin: 0 0 20px;
  }
  .tarifForm .checkbox {
    width: 100%;
  }

  .tarifForm .btn {
    margin: 0 auto;
  }
  .tarifForm .checkbox label a,
  .tarifForm .checkbox label p {
    font-size: 12px;
  }
}


.js-modal-close {
  background-image: url('../img/remove.svg');
  width: 30px;
  height: 30px;
  position: absolute;
  right: 15px;
  top: 15px;
  transition: 0.4s linear;
}
.graph-modal__close:hover {
  transform: scale(1.1);
}


.casePage-front {
  width: 100%;
  border-radius: 50px 50px 0px 0px;
  border: 2px solid rgba(0, 0, 0, 0.20);
  background: linear-gradient(154deg, rgba(53, 46, 71, 0.20) 5.35%, rgba(61, 52, 98, 0.20) 83.85%), rgba(49, 48, 54, 0.30);
  backdrop-filter: blur(2.5px);
  padding: 40px 16px;
  box-sizing: border-box;
  margin: 20px 0 0;
  position: relative;
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
}

.casePage-front-content {
  width: 100%;
  display: flex;
  flex-flow: row wrap;
  align-content: flex-start;
  align-items: flex-start;
  position: relative;
  z-index: 3;
}

.casePage-front__descr {
  color: #7C717D;
  font-family: MontserratRegular;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 26px;
  display: inline-block;
  width: 100%;
  margin-bottom: 16px;
}
.casePage-front__title{
  color: #FFF;
  font-family: OpenSans;
  font-size: 24px;
  font-weight: 600;
  line-height: 36px;
  width: 100%;
  display: inline-block;
  margin: 0 0 24px;
}
.casePage-front__info span {
  color: #C94627;
  font-family: OpenSans;
  font-size: 18px;
  font-weight: 400;
  line-height: 30px;
  display: inline-block;
  width: 100%;
  margin-bottom: 10px;
}

.casePage-front__info a {
  color: #C94627;
  font-family: OpenSans;
  font-weight: 400;
  font-size: 18px;
  display: inline-block;
  line-height: 30px;
  text-decoration-line: underline;
}

.casePage-front__info a:hover {
  text-decoration: none;
}

.casePage-front__pic {
  position: relative;
  height: 190px;
  margin: 30px auto;
  display: inline-block;
}

.casePage-front__pic img {
  height: 100%;
  object-fit: contain;
}

.casePage-content {
  width: 100%;
  padding: 40px 16px;
  box-sizing: border-box;
  margin: 24px 0;
  border-radius: 0px 0px 50px 50px;
  background: linear-gradient(111deg, #E9F7FF 9.66%, #E4ECFF 57.52%, #E3F5FF 103.42%);
  color: #463F4F;
  font-family: MontserratRegular;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
}

.casePage-content p {
  color: #463F4F;
  margin: 0 0 4px;
}

.casePage-content em {
  font-style: normal;
  color: #C94627;
}

.casePage-content ul li,
.casePage-content ol li {
  font-size: 16px;
  margin-bottom: 10px;
  position: relative;
  list-style-type: none;
  padding-left: 28px;
}


.casePage-content ul, 
.casePage-content ol {
  padding: 0;
}

.casePage-content ol {
  counter-reset: list 
}

.casePage-content ol li::before {
  counter-increment: list;
  content: counter(list) ". ";
  color: #C94627;
  position: absolute;
  left: 0;
  top: -1px;
}
.casePage-content ul li::before {
  content:"";
  width: 8px;
  height: 8px;
  background: #C94627;
  position: absolute;
  left: 0;
  top: 7px;
}
.casePage-content p b,
.casePage-content p strong {
  font-weight: 700;
  font-family: MontserratBold;
}
.casePage-content p a {
  color: #C94627;
}

.casePage-content h2 {
  width: 100%;
  display: inline-block;
  color: #463F4F;
  font-family: OpenSans;
  font-size: 30px;
  line-height: 45px;
  font-weight: 400;
  text-transform: uppercase;
  display: inline-block;
  margin-bottom: 14px;
  margin-top: 16px;
}
.casePage-content h2:first-of-type {
  margin-top: 0;
}

@media (min-width:760px) { 
  .casePage-front {
    min-height: 300px;
    justify-content: flex-start;
  }
  .casePage-front-content {
    width: 60%;
  }
  .casePage-front__pic {
    position: absolute;
    right: 40px;
    bottom: 24px;
    height: 200px;
    margin: 0;
  }
}

@media (min-width:992px) { 
  .casePage-front {
    padding: 70px 24px;
 
  }
  .casePage-front-content {
    width: 70%;
  }
  .casePage-front__descr {
    font-size: 16px;
    line-height: 28px;
    width: 70%;
  }
  .casePage-front__title {
    font-size: 30px;
    line-height: 46px;
    margin-bottom: 30px;
  }
  .casePage-front__pic {
    position: absolute;
    right: 64px;
    bottom: 24px;
    height: 261px;
    margin: 0;
  }
  .casePage-front__info span {
    font-size: 24px;
    line-height: 34px;
  }
  .casePage-front__info a {
    font-size: 24px;
    line-height: 36px;
  }
  .casePage-content {
    margin: 50px 0;
    padding: 34px 24px;
  }
  .casePage-content h2 {
    font-size: 30px;
    line-height: 45px;
    margin-top: 20px;
  }
}

@media (min-width: 1300px) { 
  .casePage-front {
    margin: 100px 0 0;
    padding: 100px 70px;
    min-height: 500px;

  }
  .casePage-front__descr {
    font-size: 24px;
    line-height: 36px;
  }
  .casePage-front__title {
    font-size: 56px;
    line-height: 80px;
  }
  .casePage-front__pic {
    right: 64px;
    bottom: 30px;
    height: 400px;
  }
  .casePage-front__info span {
    font-size: 30px;
    line-height: 42px;
    margin-bottom: 20px;
  }
  .casePage-front__info a {
    font-size: 30px;
    line-height: 43px;
  }
  .casePage-content{
    padding: 40px 70px;
    font-size: 18px;
    line-height: 27px;
  }
  .casePage-content h2 {
    font-size: 36px;
    line-height: 43.2px;
    margin-bottom: 20px;
    margin-top: 30px;
  }

  .casePage-content p {
    margin: 0 0 14px;
  }
}

@media (min-width: 1800px) { 
  .casePage-content p {
    font-size: 18px;
  }
  .casePage-content ul li,
  .casePage-content p ol li {
    font-size: 18px;

    padding-left: 30px;
  }
}


.achievementsNumbers {
  width: 100%;
  display: flex;
  flex-flow: row wrap;
  margin-bottom: 40px;
}

.achievementsNumbers-item {
  width: 100%;
  display: flex;
  flex-flow: row wrap;
  border-bottom: 2px solid #C94627;
  margin: 10px 0 20px;
}

.achievementsNumbers__descr {
  width: 100%;
  display: inline-block;
  color: #463F4F;
  font-family:MontserratSemiBold;
  font-size: 18px;
  font-style: normal;
  font-weight: 600;
  line-height: 150%; 
  margin-bottom: 10px;
}

.achievementsNumbers__count {
  width: 100%;
  display: inline-block;
  color: #C94627;
  font-family: OpenSans;
  font-size: 24px;
  font-style: normal;
  font-weight: 600;
  line-height: 150%; 
}

@media (min-width: 800px) { 
  .achievementsNumbers-item {
    width: calc(33.3% - 47px);
    margin-right: 70px;
    margin-bottom: 20px;
  }

  .achievementsNumbers__count { 
    font-size: 30px;
  }

  .achievementsNumbers-item:nth-of-type(3n) {
    margin-right: 0;
  }
}

.posts-item__li a {color:#c94627;text-decoration:none;}
.posts-item__li {margin:0 0 50px 0;}

.posts-item {margin:0;padding:0 0 0 20px;}
.posts-item__li {list-style-type: none;}
.posts-item__li h3 {text-decoration:underline;}
.posts-item {margin:40px 0 0 0;}