html {
  overflow-x: hidden; }

body {
  font-family: "Raleway", sans-serif;
  line-height: 1.8;
  font-size: 16px;
  background: #fff;
  color: #859196; }

a {
  -webkit-transition: .3s all ease;
  -o-transition: .3s all ease;
  transition: .3s all ease;
  color: #4586FF; }
  a:hover {
    text-decoration: none;
    color: #4586FF; }

h1, h2, h3, h4, h5,
.h1, .h2, .h3, .h4, .h5 {
  line-height: 1.45;
  font-weight: normal;
  color: #000; }


/* По умолчанию скрываем изображение на больших экранах */
.mobile-only {
  display: none;
}

/* На мобильных устройствах показываем изображение */
@media (max-width: 768px) {
  .mobile-only {
    display: block;
  }
}



.jb.cookie {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    background: #222;
    color: #fff;
    padding: 20px 30px;
    box-shadow: 0 -10px 30px rgba(0,0,0,0.4);
    transform: translateY(100%);
    opacity: 0;
    transition: 0.4s ease;
    z-index: 9999;
}

/* показать */
.jb.cookie.show {
    transform: translateY(0);
    opacity: 1;
}

/* фон */
.jb.cookie-bg {
    position: absolute;
    inset: 0;
    background: #000;
    opacity: 0.08;
    pointer-events: none;
}

/* контент */
.cookie-content {
    position: relative;
    max-width: 1100px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    gap: 20px;
    justify-content: space-between;
    flex-wrap: wrap;
}

/* заголовок */
.cookie-content h2 {
    margin: 0;
    font-size: 18px;
	    color: #9797c9;
}

/* текст */
.cookie-content p {
    flex: 1;
    margin: 0;
    font-size: 14px;
    opacity: 0.9;
    min-width: 250px;
}

/* кнопка */
.jb.accept {
    background: #4caf50;
    padding: 10px 18px;
    border-radius: 8px;
    cursor: pointer;
    font-weight: bold;
    white-space: nowrap;
    transition: 0.2s;
}

.jb.accept:hover {
    background: #45a049;
}




.text-primary {
  color: #4586FF !important; }

.ftco-navbar-light {
  background: transparent !important;
  position: absolute;
  left: 0;
  right: 0;
  z-index: 3; }
  @media screen and (max-width: 991px) {
    .ftco-navbar-light {
      background: #000 !important;
      top: 0;
      position: relative; } }
  .ftco-navbar-light .navbar-nav > .nav-item > .nav-link {
    font-size: 16px;
    padding-top: 30px;
    padding-bottom: 30px;
    padding-left: 20px;
    padding-right: 20px; }
    @media screen and (max-width: 960px) {
      .ftco-navbar-light .navbar-nav > .nav-item > .nav-link {
        padding-top: 10px;
        padding-bottom: 10px;
        padding-left: 0px;
        padding-right: 0px; } }
  .ftco-navbar-light .navbar-nav > .nav-item.ftco-cta a {
    color: #fff; }
  .ftco-navbar-light .navbar-nav > .nav-item.ftco-seperator {
    position: relative;
    margin-left: 20px;
    padding-left: 20px; }
    @media screen and (max-width: 960px) {
      .ftco-navbar-light .navbar-nav > .nav-item.ftco-seperator {
        padding-left: 0;
        margin-left: 0; } }
    .ftco-navbar-light .navbar-nav > .nav-item.ftco-seperator:before {
      position: absolute;
      content: "";
      top: 10px;
      bottom: 10px;
      left: 0;
      width: 2px;
      background: rgba(255, 255, 255, 0.05); }
      @media screen and (max-width: 960px) {
        .ftco-navbar-light .navbar-nav > .nav-item.ftco-seperator:before {
          display: none; } }
  .ftco-navbar-light .navbar-toggler {
    border: none;
    color: rgba(255, 255, 255, 0.5) !important;
    cursor: pointer;
    padding-right: 0;
    text-transform: uppercase;
    font-size: 16px;
    letter-spacing: .1em; }
  .ftco-navbar-light.scrolled {
    position: fixed;
    right: 0;
    left: 0;
    top: 0;
    margin-top: -130px;
    background: #fff !important; }
    @media screen and (max-width: 768px) {
      .ftco-navbar-light.scrolled .navbar-nav {
        background: none;
        border-radius: 0px;
        padding-left: 0rem !important;
        padding-right: 0rem !important; } }
    @media screen and (max-width: 576px) {
      .ftco-navbar-light.scrolled .navbar-nav {
        background: none;
        padding-left: 0 !important;
        padding-right: 0 !important; } }
    .ftco-navbar-light.scrolled .navbar-toggler {
      border: none;
      color: rgba(0, 0, 0, 0.5) !important;
      border-color: rgba(0, 0, 0, 0.5) !important;
      cursor: pointer;
      padding-right: 0;
      text-transform: uppercase;
      font-size: 16px;
      letter-spacing: .1em; }
    .ftco-navbar-light.scrolled .nav-link {
      padding-top: 0.7rem !important;
      padding-bottom: 0.7rem !important;
      color: #000 !important; }
      .ftco-navbar-light.scrolled .nav-link.active {
        color: #4586FF !important; }
    .ftco-navbar-light.scrolled.awake {
      margin-top: 0px;
      -webkit-transition: .3s all ease-out;
      -o-transition: .3s all ease-out;
      transition: .3s all ease-out; }
    .ftco-navbar-light.scrolled.sleep {
      -webkit-transition: .3s all ease-out;
      -o-transition: .3s all ease-out;
      transition: .3s all ease-out; }
    .ftco-navbar-light.scrolled .navbar-brand {
      color: #000; }

.navbar-brand {
  text-transform: uppercase;
  letter-spacing: .1em; }

.bg-image, .ftco-cover {
  background-size: cover;
  background-repeat: no-repeat; }

.ftco-cover {
  background-position: center center; }
  .ftco-cover .ftco-heading {
    font-size: 45px;
    line-height: 1.34;
    color: #fff; }
    @media screen and (max-width: 768px) {
      .ftco-cover .ftco-heading {
        font-size: 37px;
        line-height: 1.3; } }
  .ftco-cover .ftco-subheading, .ftco-cover p {
    color: rgba(255, 255, 255, 0.5); }
  @media screen and (max-width: 768px) {
    .ftco-cover .btn {
      width: 100% !important;
      border: 1px solid red; } }
  .ftco-cover a {
    position: relative;
    color: #fff; }
    .ftco-cover a:before {
      position: absolute;
      bottom: 0;
      left: 0;
      right: 0;
      background: #4586FF;
      height: 2px;
      content: " "; }
  .ftco-cover.overlay {
    position: relative; }
    .ftco-cover.overlay:before {
      content: "";
      background: rgba(0, 0, 0, 0.6);
      position: absolute;
      top: 0;
      left: 0;
      bottom: 0;
      right: 0; }
  .ftco-cover .ftco-vh-100 {
    min-height: 700px !important; }

.ftco-slant {
  position: relative;
  overflow: hidden; }
  .ftco-slant:after {
    width: 120%;
    height: 200px;
    left: -10%;
    background: #f2f2f2;
    -webkit-transform: rotate(-5deg);
    -ms-transform: rotate(-5deg);
    transform: rotate(-5deg);
    content: "";
    position: absolute;
    bottom: -100px; }
    @media screen and (max-width: 960px) {
      .ftco-slant:after {
        bottom: -150px; } }
    @media screen and (max-width: 768px) {
      .ftco-slant:after {
        bottom: -170px; } }
  .ftco-slant.ftco-slant-white:after {
    background: #fff; }
  .ftco-slant.ftco-slant-dark:after {
    background: #263135; }

.ftco-uppercase {
  letter-spacing: .1em;
  font-size: 30px; }

.btn {
  border-radius: 4px;
  padding: 20px 30px;
  font-size: 14px;
  letter-spacing: .1em;
  text-transform: uppercase;
  font-weight: bold;
  cursor: pointer; }
  .btn.btn-sm {
    padding: 10px 20px;
    font-size: 12px; }
  .btn:before {
    display: none; }
  .btn:hover, .btn:active, .btn:focus {
    outline: none;
    -webkit-box-shadow: none;
    box-shadow: none; }
  .btn.btn-primary {
    background: #4586FF;
    border-color: #4586FF;
    color: #fff; }
    .btn.btn-primary:hover, .btn.btn-primary:focus, .btn.btn-primary:active {
      border-color: #1265ff;
      background: #1265ff; }
  .btn.btn-outline-white {
    border-color: rgba(255, 255, 255, 0.2);
    background: none; }
    .btn.btn-outline-white:hover, .btn.btn-outline-white:focus, .btn.btn-outline-white:active {
      background: #fff;
      border-color: #fff;
      color: #000; }

.form-control {
  border: 1px solid rgba(0, 0, 0, 0.2);
  height: 55px;
  background: none !important;
  color: #000 !important;
  font-size: 18px; }
  .form-control:focus, .form-control:active {
    border: 1px solid #000; }

textarea {
  height: inherit !important; }

.ftco-vh-100 {
  height: 100vh; }
  @media screen and (max-width: 960px) {
    .ftco-vh-100 {
      height: inherit;
      padding-top: 5em;
      padding-bottom: 5em; } }

.ftco-vh-75 {
  height: 75vh; }
  @media screen and (max-width: 960px) {
    .ftco-vh-75 {
      height: inherit;
      padding-top: 5em;
      padding-bottom: 5em; } }

.ftco-animate {
  opacity: 0;
  visibility: hidden; }

.bg-primary {
  background: #4586FF !important; }

.ftco-section,
.ftco-footer {
  padding: 7em 0 7em 0; }
  .ftco-section.ftco-slant,
  .ftco-footer.ftco-slant {
    padding: 7em 0 7em 0; }
  .ftco-section .ftco-heading,
  .ftco-footer .ftco-heading {
    font-size: 40px;
    line-height: 1.5; }
    @media screen and (max-width: 768px) {
      .ftco-section .ftco-heading,
      .ftco-footer .ftco-heading {
        font-size: 30px; } }
  .ftco-section.bg-light,
  .ftco-footer.bg-light {
    background: #f2f2f2 !important; }

.ftco-bg-dark {
  background: #263135; }

.ftco-footer {
  font-size: 16px; }
  .ftco-footer .ftco-footer-logo {
    text-transform: uppercase;
    letter-spacing: .1em; }
  .ftco-footer .ftco-footer-widget h2 {
    font-weight: normal; }
  .ftco-footer p {
    color: rgba(255, 255, 255, 0.3); }
  .ftco-footer a {
    color: rgba(255, 255, 255, 0.3); }
    .ftco-footer a:hover {
      color: #4586FF; }
  .ftco-footer .ftco-heading {
    font-size: 24px; }
  .ftco-footer .ftco-heading-2 {
    font-size: 14px;
    font-weight: bold;
    letter-spacing: .05em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.6); }

.ftco-pricing-popular {
  position: relative; }
  .ftco-pricing-popular .popular-text {
    text-transform: uppercase;
    font-size: 14px;
    margin-top: -16px;
    right: 0;
    background: #4586FF;
    color: #fff;
    padding: 2px 10px;
    position: absolute;
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    letter-spacing: .1em; }

.ftco-pricing h2 {
  font-size: 17px;
  text-transform: uppercase; }

.ftco-pricing .ftco-price-per {
  font-size: 50px; }
  .ftco-pricing .ftco-price-per sup {
    font-size: 20px;
    top: -1.5em; }
  .ftco-pricing .ftco-price-per strong {
    color: #000;
	font-size: 40px;}
  .ftco-pricing .ftco-price-per span {
    font-size: 20px; }

.ftco-pricing ul li {
  margin-bottom: 10px; }

.ftco-footer-social li {
  list-style: none;
  margin: 0 10px 10px 0;
  display: inline-block; }
  .ftco-footer-social li a {
    height: 60px;
    width: 60px;
    display: block;
    float: left;
    background: rgba(255, 255, 255, 0.05);
    border-radius: 50%;
    position: relative; }
    .ftco-footer-social li a span {
      position: absolute;
      font-size: 26px;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%); }
    .ftco-footer-social li a:hover {
      color: #fff; }

.footer-small-nav > li {
  display: inline-block; }
  .footer-small-nav > li a {
    margin: 0 10px 10px 0; }
    .footer-small-nav > li a:hover, .footer-small-nav > li a:focus {
      color: #4586FF; }

.media .ftco-icon {
  width: 100px; }
  .media .ftco-icon span {
    color: #4586FF; }

.ftco-media {
  background: #fff;
  border-radius: 5px; }
  .ftco-media.text-center .ftco-icon {
    margin: 0 auto; }

.ftco-overflow-hidden {
  overflow: hidden; }

.padding-top-bottom {
  padding-top: 120px;
  padding-bottom: 120px; }

.ftco-owl {
  position: relative;
  z-index: 1; }
  .ftco-owl .owl-nav {
    position: absolute;
    top: 50%;
    margin-top: -50px;
    z-index: 10;
    left: 0;
    right: 0;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: .3s all ease;
    -o-transition: .3s all ease;
    transition: .3s all ease; }
    .ftco-owl .owl-nav .owl-prev,
    .ftco-owl .owl-nav .owl-next {
      position: absolute;
      font-size: 30px;
      background: #4586FF;
      color: #fff;
      padding: 10px;
      line-height: 0; }
    .ftco-owl .owl-nav .owl-prev {
      left: 0; }
    .ftco-owl .owl-nav .owl-next {
      right: 0; }
  .ftco-owl .owl-dots {
    position: relative;
    text-align: center;
    margin-top: 30px; }
    .ftco-owl .owl-dots .owl-dot {
      display: inline-block;
      zoom: 1; }
      .ftco-owl .owl-dots .owl-dot span {
        width: 10px;
        height: 10px;
        background: #ccc;
        border-radius: 50%;
        display: inline-block;
        margin: 5px 7px; }
      .ftco-owl .owl-dots .owl-dot.active span {
        background: #4586FF; }
  .ftco-owl:hover .owl-nav {
    visibility: visible;
    opacity: 1; }

@media screen and (max-width: 768px) {
  #map {
    height: 400px; } }

.ftco-counter .ftco-number {
  display: block;
  font-size: 72px;
  font-weight: bold;
  color: #4586FF; }

.ftco-counter .ftco-label {
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .1em;
  color: #b3b3b3; }

#ftco-loader {
  position: fixed;
  width: 96px;
  height: 96px;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  background-color: rgba(255, 255, 255, 0.9);
  -webkit-box-shadow: 0px 24px 64px rgba(0, 0, 0, 0.24);
  box-shadow: 0px 24px 64px rgba(0, 0, 0, 0.24);
  border-radius: 16px;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity .2s ease-out, visibility 0s linear .2s;
  -o-transition: opacity .2s ease-out, visibility 0s linear .2s;
  transition: opacity .2s ease-out, visibility 0s linear .2s;
  z-index: 1000; }


/* Плавающая кнопка */

.signup-btn {

    position: fixed;

    right: 30px;
    bottom: 30px;

    width: 96px;
    height: 90px;

    border-radius: 50%;

    border: none;

    background: linear-gradient(
        135deg,
        #096fd480, 
		#5954a59c
    );

    color: white;

    font-size: 16px;
    font-weight: bold;

    cursor: pointer;

    box-shadow:
        0 8px 25px rgba(0,0,0,.25);

    z-index: 999;

    transition: .3s;
}


.signup-btn:hover {

    transform: scale(1.1);

    box-shadow:
        0 12px 35px rgba(255,80,0,.4);

}



/* Модальное окно */

.modal {

    display:none;

    position:fixed;

    inset:0;

    background:
        rgba(0,0,0,.55);

    justify-content:center;

    align-items:center;

    z-index:1000;

}



/* Окно формы */

.modal-content {

    width:350px;

    background:white;

    padding:35px;

    border-radius:20px;

    position:relative;

    box-shadow:
        0 15px 40px rgba(0,0,0,.3);

    animation:
        show .3s ease;

}



@keyframes show {

    from {

        opacity:0;
        transform:translateY(50px);

    }

    to {

        opacity:1;
        transform:translateY(0);

    }

}



/* Кнопка закрытия */

.close {

    position:absolute;

    right:20px;
    top:15px;

    font-size:30px;

    cursor:pointer;

    color:#555;

}



/* Заголовок */

.modal-content h2 {

    text-align:center;

    margin-bottom:25px;

}



/* Поля */

input[type="text"],
input[type="tel"] {

    width:100%;

    padding:14px;

    margin-bottom:15px;

    box-sizing:border-box;

    border-radius:10px;

    border:1px solid #ddd;

    font-size:16px;

}



/* Чекбокс */

.checkbox {

    display:flex;

    gap:10px;

    font-size:14px;

    margin-bottom:20px;

}



/* Кнопка отправки */

.submit-btn {

    width:100%;

    padding:14px;

    border:none;

    border-radius:12px;

    background:#ff5a00;

    color:white;

    font-size:16px;

    cursor:pointer;

    transition:.3s;

}



.submit-btn:hover {

    background:#e64d00;

}



/* Адаптация для телефона */

@media(max-width:480px){

    .signup-btn {

        width:86px;
        height:75px;

        right:20px;
        bottom:20px;

        font-size:14px;

    }


    .modal-content {

        width:85%;

        padding:25px;

    }

}




#ftco-loader.fullscreen {
  padding: 0;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  -webkit-transform: none;
  -ms-transform: none;
  transform: none;
  background-color: #fff;
  border-radius: 0;
  -webkit-box-shadow: none;
  box-shadow: none; }

#ftco-loader.show {
  -webkit-transition: opacity .4s ease-out, visibility 0s linear 0s;
  -o-transition: opacity .4s ease-out, visibility 0s linear 0s;
  transition: opacity .4s ease-out, visibility 0s linear 0s;
  visibility: visible;
  opacity: 1; }

#ftco-loader .circular {
  -webkit-animation: loader-rotate 2s linear infinite;
  animation: loader-rotate 2s linear infinite;
  position: absolute;
  left: calc(50% - 24px);
  top: calc(50% - 24px);
  display: block;
  -webkit-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  transform: rotate(0deg); }

#ftco-loader .path {
  stroke-dasharray: 1, 200;
  stroke-dashoffset: 0;
  -webkit-animation: loader-dash 1.5s ease-in-out infinite;
  animation: loader-dash 1.5s ease-in-out infinite;
  stroke-linecap: round; }

@-webkit-keyframes loader-rotate {
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }

@keyframes loader-rotate {
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }

@-webkit-keyframes loader-dash {
  0% {
    stroke-dasharray: 1, 200;
    stroke-dashoffset: 0; }
  50% {
    stroke-dasharray: 89, 200;
    stroke-dashoffset: -35px; }
  100% {
    stroke-dasharray: 89, 200;
    stroke-dashoffset: -136px; } }

@keyframes loader-dash {
  0% {
    stroke-dasharray: 1, 200;
    stroke-dashoffset: 0; }
  50% {
    stroke-dasharray: 89, 200;
    stroke-dashoffset: -35px; }
  100% {
    stroke-dasharray: 89, 200;
    stroke-dashoffset: -136px; } }
