/* Шрифты */

@font-face {
    font-family: "Gilroy";
    src: url("/templates/rostsayt/fonts/Gilroy-Bold.ttf");
    font-weight: 700;
}

@font-face {
    font-family: "Gilroy";
    src: url("/templates/rostsayt/fonts/Gilroy-Regular.ttf");
    font-weight: 400;
}

@font-face {
    font-family: "Gilroy";
    src: url("/templates/rostsayt/fonts/Gilroy-Light.ttf");
    font-weight: 300;
}


/* Настройки шаблона */

:root,
body {
    font-size: 14px;
}

@media screen and (min-width: 1200px) {
     :root,
    body {
        font-size: 16px;
    }
}


/* Элементы */

html {
    width: calc(100% + calc(100vw - 100%));
    overflow-x: hidden;
}

body {
    display: flex;
    flex-direction: column;
    margin: 0 auto;
    max-width: 1920px;
    font-family: 'Gilroy', sans-serif;
    font-weight: 400;
    line-height: 150%;
    color: #000;
}

h1,
.h1 {
    font-size: 60px;
    font-weight: 300;
    line-height: 93%;
}

h2,
.h2 {
    font-size: 50px;
    font-weight: 700;
    line-height: 130%;
}

h3,
.h3 {
    font-size: 30px;
    font-weight: 700;
    line-height: 130%;
}

h4,
.h4 {
    font-size: 20px;
    font-weight: 700;
    line-height: 130%;
}

h4.s1,
.h4.s1 {
    font-weight: 400;
}

h5,
.h5 {
    font-size: 14px;
    font-weight: 400;
}

a {
    text-decoration: none;
    font-weight: 700;
    color: #399BE5;
}

a:hover {
    color: #1281D6;
}

a.text-white:hover {
    color: #1281D6 !important;
}

i.fa.fa-angle-up {
    background: url('/images/icons/angle-up.svg') no-repeat center;
    width: 100%;
    height: 100%;
}

ul:not(.menu):not(.nav-child):not(.breadcrumb) {
    padding-inline-start: 13px;
    list-style: none;
}

ul:not(.menu):not(.nav-child):not(.breadcrumb) li {
    margin-bottom: .5rem;
    position: relative;
}

ul:not(.menu):not(.nav-child):not(.breadcrumb) li::before {
    content: '';
    position: absolute;
    left: -13px;
    top: 10px;
    width: 5px;
    height: 5px;
    background: #399BE5;
    border-radius: 50%;
}


/* Общие классы */

.z-1 {
    z-index: 1;
}

.font-weight-normal {
    font-weight: 400;
}

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

.text-light-black {
    color: #2A2A2B;
}

.text-black {
    color: #000;
}

.text-dark-white {
    color: #F7F7F7;
}

.text-light-gray {
    color: #E0E0E0;
}

.text-gray {
    color: #BDBDBD;
}

.text-dark-gray {
    color: #4F4F4F;
}

.text-light-blue {
    color: #CDEDF7;
}

.text-blue {
    color: #399BE5;
}

.text-gray-blue {
    color: #788DA0;
}

.text-gray2 {
    color: #828282;
}

.transparent-text {
    font-size: 98px;
    line-height: 93%;
    text-transform: uppercase;
    position: absolute;
    bottom: 10px;
    left: 0;
    z-index: -1;
    opacity: .5;
    text-shadow: 0px 1px 0 rgb(189, 189, 189), 0px -1px 0 rgb(189, 189, 189), 1px 0px 0 rgb(189, 189, 189), -1px 0px 0 rgb(189, 189, 189), 1px 1px 0 rgb(189, 189, 189), 1px -1px 0 rgb(189, 189, 189), -1px 1px 0 rgb(189, 189, 189), -1px -1px 0 rgb(189, 189, 189);
    -webkit-text-shadow: 0px 1px 0 rgb(189, 189, 189), 0px -1px 0 rgb(189, 189, 189), 1px 0px 0 rgb(189, 189, 189), -1px 0px 0 rgb(189, 189, 189), 1px 1px 0 rgb(189, 189, 189), 1px -1px 0 rgb(189, 189, 189), -1px 1px 0 rgb(189, 189, 189), -1px -1px 0 rgb(189, 189, 189);
    -moz-text-shadow: 0px 1px 0 rgb(189, 189, 189), 0px -1px 0 rgb(189, 189, 189), 1px 0px 0 rgb(189, 189, 189), -1px 0px 0 rgb(189, 189, 189), 1px 1px 0 rgb(189, 189, 189), 1px -1px 0 rgb(189, 189, 189), -1px 1px 0 rgb(189, 189, 189), -1px -1px 0 rgb(189, 189, 189);
}

.modal-content {
    background: #2A2A2B;
}

.modal-header {
    border-bottom: none;
}

.modal-body {
    padding: 0 59px 80px 59px;
}

.breadcrumb {
    background: transparent;
    margin-bottom: 0;
    padding-top: 3rem;
}

.breadcrumb span {
    color: #fff;
    font-weight: 400;
}

.breadcrumb a:hover span {
    color: #1281D6;
}

.right-line {
    position: relative;
}

.right-line::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    right: 5px;
    height: 100%;
    width: 1px;
    background: #BDBDBD;
}

.slider .owl-stage {
    display: flex;
}

.slider .owl-stage .owl-item {
    display: flex;
    flex: 1 0 auto;
}

.slider .owl-stage .owl-item>.item {
    flex: 1;
}

.owl-carousel .owl-nav>button {
    width: 50px;
    height: 50px;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.04), 0px 0px 2px rgba(0, 0, 0, 0.06), 0px 0px 1px rgba(0, 0, 0, 0.04);
    border-radius: 6px;
    background: #fff !important;
}

.owl-carousel .owl-nav>button.owl-next>span {
    content: url('/images/icons/arrow-right.png');
}

.owl-carousel .owl-nav>button.owl-prev>span {
    content: url('/images/icons/arrow-left.png');
}

.owl-carousel .owl-nav>button>span {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.link {
    position: relative;
    border: none;
    background: transparent;
    color: #399BE5;
    font-weight: 700;
    padding-left: 0;
    padding-right: 36px;
    padding-bottom: 5px;
    transition: padding-right ease .7s;
}

.link:hover {
    color: #1281D6;
    padding-right: 44px;
}

.link::before {
    content: url('/images/icons/arrow-link.png');
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
}

.link:hover::before {
    filter: invert(39%) sepia(65%) saturate(1259%) hue-rotate(178deg) brightness(90%) contrast(98%);
    -webkit-filter: invert(39%) sepia(65%) saturate(1259%) hue-rotate(178deg) brightness(90%) contrast(98%);
}

canvas {
    position: absolute;
    top: 50%;
    left: 250px;
    z-index: -1;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
}

.canvas-slider {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    height: 700px;
    width: 100vw;
    overflow: hidden;
}

.slider_video {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 50%;
    margin-left: -50vw;
    width: calc(100% + calc(100vw - 100%));
    height: 100%;
    object-fit: cover;
    z-index: -1;
}


/* Переопределения Bootstrap */

.btn {
    color: #2D9CDB;
    font-weight: 700;
    border: 1px solid #2D9CDB;
    border-radius: 8px;
    padding: 16px 32px;
    position: relative;
    overflow: hidden;
    z-index: 1;
    -webkit-transition: 1s ease-out;
    transition: 1s ease-out;
}

.btn-primary {
    color: #fff;
    background-color: #399BE5;
    border-color: #399BE5;
}

.btn-transparent {
    border-color: transparent;
}

.btn:hover {
    color: #fff !important;
    background-color: #1281D6;
    border-color: #1281D6;
    box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.04), 0px 2px 6px rgba(0, 0, 0, 0.13), 0px 0px 1px rgba(0, 0, 0, 0.04);
}

.btn:hover::before {
    -webkit-transform: scale(8.3);
    transform: scale(8.3);
}

.btn::before {
    content: '';
    position: absolute;
    top: -20px;
    left: 50%;
    -webkit-transform: translate(-50%, -50%) scale(1);
    transform: translate(-50%, -50%) scale(1);
    display: block;
    width: 40px;
    height: 40px;
    background: #1281D6;
    border-radius: 50px;
    -webkit-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
    z-index: -1;
}

.btn-max::before {
    width: 80px;
    height: 80px;
    top: -40px;
}

.btn-close {
    filter: brightness(323) invert(1);
    -webkit-filter: brightness(323) invert(1);
}


/* Шапка */

header ul.menu {}

header ul.menu a {
    color: #232323;
    padding: 8px 27px;
}

header ul.menu a:hover {
    color: #399BE5;
}

header ul.menu li.parent {
    position: relative;
}

header ul.menu li.parent::before {
    content: url('/images/icons/arrow-menu.png');
    position: absolute;
    right: 27px;
    top: 45%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
}

header ul.menu li.parent:hover::before {
    filter: invert(54%) sepia(54%) saturate(1513%) hue-rotate(180deg) brightness(93%) contrast(93%);
    -webkit-filter: invert(54%) sepia(54%) saturate(1513%) hue-rotate(180deg) brightness(93%) contrast(93%);
}

header ul.menu li.parent>a {
    padding-right: 42px;
}

header ul.menu li.parent>ul {
    transition: .3s;
    list-style: none;
    display: block;
    min-width: 250px;
    background: #fff;
    position: absolute;
    top: 100%;
    z-index: 10;
    padding: 10px 0;
    font-size: 100%;
    font-weight: 500;
}

header ul.menu li.parent:hover>ul {
    visibility: visible;
    opacity: 1;
}

header ul.menu li.parent>ul li {
    padding: 10px 0;
}

@media (min-width: 1199px) {
    header ul.menu li.parent>ul {
        opacity: 0;
        visibility: hidden;
    }
}

@media (min-width: 1200px) and (max-width: 1399px) {
    header ul.menu {
        margin-left: 0;
    }
    header ul.menu a {
        padding: 8px 22px;
    }
}


/* Подвал */

footer::before {
    background: #2A2A2B !important;
}

footer a {
    color: #fff;
}

footer a:hover {
    color: #1281D6;
}

footer .footer_menu li a {
    padding: 15px 40px;
}

footer .footer_menu li:nth-child(1) a {
    padding-left: 0;
}

footer .footer_menu2 li a {
    padding: 15px 28px;
    font-weight: 400;
}

footer .footer_menu2 li:nth-child(1) a {
    padding-left: 0;
}

footer .mod-contact-footer .img {
    width: 30px;
    height: 30px;
    text-align: center;
    margin-right: 16px;
    border: 1px solid #FFFFFF;
    border-radius: 5px;
}

footer .mod-contact-footer .img:nth-last-child(1) {
    margin-right: 0;
}

footer .mod-contact-footer .img a {
    padding: 7px;
    filter: brightness(100);
    -webkit-filter: brightness(100);
}

footer .mod-contact-footer .img a:hover {
    filter: none;
    -webkit-filter: none;
}

footer .mod-contact-footer .img img {
    width: 48%;
}


/* Модули */

.mod-home-slide::before {
    background: #111111;
}

.mod-home-slide .introtext>p {
    margin-bottom: 1rem;
}

.mod-home-slide .img {
    width: 30px;
    height: 30px;
    text-align: center;
    margin-right: 16px;
    border: 1px solid #FFFFFF;
    border-radius: 5px;
}

.mod-home-slide .img a {
    padding: 7px;
    filter: brightness(100);
    -webkit-filter: brightness(100);
}

.mod-home-slide .img a:hover {
    filter: none;
    -webkit-filter: none;
}

.mod-home-slide .img img {
    width: 48%;
}

.mod-about::before {
    background: #F7F7F7;
}

.mod-about .design-title {
    font-size: 97px;
    line-height: 130%;
    border-bottom: 1px solid #232323;
}

.mod-about .design0 .design-title {
    color: #399BE5;
    border-bottom: 1px solid #399BE5;
}

.mod-about .design-title>span {
    font-size: 60px;
    line-height: 130%;
}

.mod-services .plate {
    color: #232323;
    background: #fff;
    border-radius: 15px;
    overflow: hidden;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.04), 0px 0px 2px rgba(0, 0, 0, 0.06), 0px 0px 1px rgba(0, 0, 0, 0.04);
}

.mod-services .plate:hover {
    color: #399BE5;
}

.mod-services .plate .design-title {
    padding-left: 32px;
    padding-right: 11px;
    transition: padding ease 1s;
}

.mod-services .plate:hover .design-title {
    padding-left: 60px;
    padding-right: 55px;
}

.mod-services .plate .design-title .title-arrow {
    position: relative;
}

.mod-services .plate .design-title .title-arrow::before {
    content: '';
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    height: 55px;
    width: 55px;
    background: #399BE5 url('/images/icons/arrow.png') center no-repeat;
    border-radius: 50%;
}

.mod-tariffs::before {
    background: #F7F7F7;
}

.mod-tariffs .more {
    margin-top: -1.5rem;
    font-size: 30px;
}

.mod-tariffs .plate {
    background: #FFFFFF;
    box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.04), 0px 2px 6px rgba(0, 0, 0, 0.04), 0px 0px 1px rgba(0, 0, 0, 0.04);
    border-radius: 10px;
}

.mod-map::before {
    background: #2A2A2B;
}

.mod-map .image_intro img {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    width: auto;
    max-width: none;
}

.mod-map .item-design::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: -40px;
    width: 4px;
    background: #fff;
}

.mod-map .design {
    position: relative;
}

.mod-map .design::before {
    content: '';
    position: absolute;
    left: -53px;
    top: -2px;
    width: 30px;
    height: 30px;
    background: linear-gradient(180deg, #ABDCFF 0%, #0996FC 100%);
    border-radius: 50%;
}

.mod-map .design:nth-child(2)::before {
    background: linear-gradient(180deg, #7666F3 0%, #CEA0FB 100%);
}

.mod-map .design:nth-child(3)::before {
    background: linear-gradient(180deg, #DD5858 0%, #FCB496 100%);
}

.mod-map .design:nth-child(4)::before {
    background: linear-gradient(180deg, #2BC772 0%, #80FAB8 100%);
}

.mod-map .design:nth-child(5)::before {
    background: linear-gradient(89.36deg, #FFC853 0.9%, #FFBB54 41.22%, #FFA157 99.28%);
}

.mod-soc-network .design {
    margin: 30px;
}

.mod-soc-network .img {
    width: 78px;
    height: 78px;
    border: 1px solid #2A2A2B;
    border-radius: 5px;
    position: relative;
}

.mod-soc-network .img img {
    filter: brightness(100) invert(1);
    -webkit-filter: brightness(100) invert(1);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
}

.mod-soc-network .img:hover img {
    filter: none;
    -webkit-filter: none;
}

.mod-faq .accordion .card {
    border: 0;
    border-bottom: 1px solid #BDBDBD;
    border-radius: 0;
}

.mod-faq .accordion .card-header {
    position: relative;
    background: transparent;
    border: 0;
    padding: 24px 0;
}

.mod-faq .accordion .card-header:hover {
    cursor: pointer;
}

.mod-faq .accordion .card-header .title {
    position: relative;
    padding-right: 100px;
    margin-bottom: 0;
    color: #232323;
}

.mod-faq .accordion .card-header .title.collapsed {
    color: #4F4F4F;
}

.mod-faq .accordion .title::after {
    content: '';
    position: absolute;
    top: 50%;
    right: 9px;
    width: 12.5px;
    height: 1.5px;
    border-radius: 25px;
    background: #4F4F4F;
    transform: scale(1) translateY(-50%);
    -webkit-transform: scale(1) translateY(-50%);
    transition: all .3s ease;
}

.mod-faq .accordion .title::before {
    content: '';
    position: absolute;
    top: 50%;
    right: 14.5px;
    width: 1.5px;
    height: 12.5px;
    border-radius: 25px;
    background: #4F4F4F;
    transform: rotate(0deg) translateY(-50%);
    -webkit-transform: rotate(0deg) translateY(-50%);
    transition: all .3s ease;
}

.mod-faq .accordion .title:not(.collapsed)::before {
    transform: rotate(90deg) translateX(-200%);
    -webkit-transform: rotate(90deg) translateX(-200%);
}

.mod-faq .accordion .title:not(.collapsed)::after {
    transform: scale(0) translateY(-50%);
    -webkit-transform: scale(0) translateY(-50%);
}

.mod-faq .accordion .card-body {
    padding: 8px 100px 10px 0;
}

.mod-objects .slider {
    margin-left: 16.6666667%;
}

.mod-objects .what {
    padding-right: 38px;
}

.mod-objects .place {
    position: relative;
    padding-left: 28px;
}

.mod-objects .place::before {
    content: url('/images/icons/place.png');
    position: absolute;
    left: 0;
    top: 2px;
}

.mod-objects .owl-carousel .owl-nav {
    top: 25px;
    width: 116px;
    transform: none;
    left: -15%;
}

.mod-objects .owl-carousel .owl-nav>button:hover {
    box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.04), 0px 2px 6px rgba(0, 0, 0, 0.13), 0px 0px 1px rgba(0, 0, 0, 0.04);
    margin-top: -.1rem;
}

.mod-objects .owl-carousel .owl-nav>button.owl-next {
    background: #399BE5 !important;
    transition: background ease .5s;
}

.mod-objects .owl-carousel .owl-nav>button.owl-next:hover {
    background: #1281D6 !important;
}

.mod-objects .owl-carousel .owl-nav>button:hover>span {
    filter: brightness(100) invert(0);
    -webkit-filter: brightness(100) invert(0);
}

.mod-objects .owl-carousel .owl-nav>button.owl-prev>span {
    filter: invert(49%) sepia(97%) saturate(780%) hue-rotate(180deg) brightness(93%) contrast(92%);
    -webkit-filter: invert(49%) sepia(97%) saturate(780%) hue-rotate(180deg) brightness(93%) contrast(92%);
}

.mod-objects .owl-carousel .owl-nav>button.owl-prev:hover>span {
    filter: invert(37%) sepia(53%) saturate(5295%) hue-rotate(189deg) brightness(97%) contrast(86%);
    -webkit-filter: invert(37%) sepia(53%) saturate(5295%) hue-rotate(189deg) brightness(97%) contrast(86%);
}

.mod-reviews::before {
    background: #2A2A2B;
}

.mod-reviews .item {
    padding: 64px 38px 47px 72px;
    background: #FFFFFF;
    box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.04), 0px 2px 6px rgba(0, 0, 0, 0.04), 0px 0px 1px rgba(0, 0, 0, 0.04);
    position: relative;
}

.mod-reviews .item::before {
    content: url('/images/icons/quote.png');
    position: absolute;
    top: 27px;
    left: 24px;
}

.mod-reviews .owl-carousel .owl-nav {
    max-width: 1440px;
}

.mod-reviews .owl-carousel .owl-nav>button:hover {
    background: #1281D6 !important;
    ;
}

.mod-reviews .owl-carousel .owl-nav>button>span {
    filter: invert(80%) sepia(4%) saturate(8%) hue-rotate(331deg) brightness(101%) contrast(81%);
    -webkit-filter: invert(80%) sepia(4%) saturate(8%) hue-rotate(331deg) brightness(101%) contrast(81%);
}

.mod-reviews .owl-carousel .owl-nav>button:hover>span {
    filter: none;
    -webkit-filter: none;
}

.mod-reviews .transparent-text {
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
}

.mod-integrator-slide::before {
    background: url('/images/modules/integrator-slide/001.jpg') center no-repeat;
    background-size: cover;
}

.mod-integrator-slide .slider_video {
    transform: scale(-1, 1);
    -webkit-transform: scale(-1, 1);
}

.mod-dop-slide::before {
    background: url('/images/modules/dop-slide/001.jpg') center no-repeat;
    background-size: cover;
}

.mod-contact-slide::before {
    background: url('/images/modules/contact-slide/001.jpg') center no-repeat;
    background-size: cover;
}

.mod-contact-slide .slider_video {
    transform: scale(-1, 1);
    -webkit-transform: scale(-1, 1);
}

.mod-benefits .introtext ul {
    margin-left: 8%;
}

.mod-benefits .introtext ul li {
    margin-bottom: 1.5rem !important;
}

.mod-benefits .introtext ul li::before {
    left: -23px !important;
    width: 7px !important;
    height: 7px !important;
}

.mod-benefits .introtext ul li:nth-child(2) {
    margin-left: 23px;
}

.mod-benefits .introtext ul li:nth-child(3) {
    margin-left: calc(2 * 23px);
}

.mod-benefits .introtext ul li:nth-child(4) {
    margin-left: calc(3 * 23px);
}

.mod-benefits .introtext ul li:nth-child(5) {
    margin-left: calc(4 * 23px);
}

.mod-benefits .introtext ul li::after {
    content: '';
    position: absolute;
    top: 13px;
    right: calc(100% + 23px);
    width: 50vw;
    height: 1px;
    background: #BDBDBD;
}

.mod-benefits .design {
    margin-top: -9rem;
    position: relative;
    z-index: 1;
    flex-wrap: wrap;
}

.mod-benefits .design .item {
    margin-right: 43px;
    padding: 36px 54px;
    width: 245px;
    background: #2A2A2B;
    border-radius: 10px;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.04), 0px 0px 2px rgba(0, 0, 0, 0.06), 0px 0px 1px rgba(0, 0, 0, 0.04);
}

.mod-benefits .design .item:nth-last-child(1) {
    margin-right: 0;
}

.mod-installation .item {
    padding: 48px 60px;
    background: #F7F7F7;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.04), 0px 0px 2px rgba(0, 0, 0, 0.06), 0px 0px 1px rgba(0, 0, 0, 0.04);
}

.mod-installation .item:hover {
    box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.04), 0px 2px 6px rgba(0, 0, 0, 0.13), 0px 0px 1px rgba(0, 0, 0, 0.04);
}

.mod-installation .item .title {
    padding-left: 42px;
    position: relative;
}

.mod-installation .item .title::before {
    content: url('/images/icons/check.png');
    position: absolute;
    top: 0;
    left: 0;
}

.mod-legal .design {
    position: absolute;
    top: 78px;
    left: -112px;
    z-index: 1;
}

.mod-legal .design .item {
    margin-bottom: 20px;
    padding: 36px 31px;
    text-align: center;
    width: 245px;
    min-height: 185px;
    background: #2A2A2B;
    border-radius: 10px;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.04), 0px 0px 2px rgba(0, 0, 0, 0.06), 0px 0px 1px rgba(0, 0, 0, 0.04);
}

.mod-legal .design .item .h2 {
    line-height: 100%;
}

.mod-cloud .introtext ul li::before {
    left: -23px !important;
    width: 7px !important;
    height: 7px !important;
    top: 50% !important;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
}

.mod-cloud .introtext ul li::after {
    content: '';
    position: absolute;
    right: calc(100% + 23px);
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    width: 300px;
    height: 1px;
    background: #BDBDBD;
    z-index: -1;
}

.mod-questions::before {
    background: url('/images/modules/questions/001.jpg') center;
    background-position: bottom;
    background-repeat: repeat-x;
}

.mod-contact div:not(.img)>a {
    color: #232323;
    margin-bottom: 16px;
    display: block;
}

.mod-contact div:not(.img)>a:hover {
    color: #1281D6;
}

.mod-contact .img {
    width: 30px;
    height: 30px;
    text-align: center;
    margin-right: 16px;
    border: 1px solid #2A2A2B;
    border-radius: 5px;
}

.mod-contact .img a {
    padding: 7px;
    filter: brightness(100) invert(1);
    -webkit-filter: brightness(100) invert(1);
}

.mod-contact .img a:hover {
    filter: none;
    -webkit-filter: none;
}

.mod-contact .img img {
    width: 48%;
}

.mod-home-slide .d-lg-flex div:nth-child(1) {
    display: none;
}

.mod-home-slide .d-lg-flex div:nth-child(2) {
    display: none;
}

.mod-home-slide .d-lg-flex div:nth-child(3) {
    display: none;
}

.mod-home-slide .d-lg-flex div:nth-child(4) {
    display: none;
}


/*
.mod-contact-footer .justify-content-lg-end div:nth-child(1){display:none;}
.mod-contact-footer .justify-content-lg-end div:nth-child(2){display:none;}
.mod-contact-footer .justify-content-lg-end div:nth-child(3){display:none;}
.mod-contact-footer .justify-content-lg-end div:nth-child(4){display:none;}
*/

.mod-contact-footer div:nth-child(31) {
    position: relative;
}

.mod-contact-footer div:nth-child(31)::before {
    content: '8 (800) 511-68-45';
    color: #fff;
    font-weight: 600;
    text-size: 2rem;
    position: absolute;
    top: -3rem;
}

body:not(.dopolnitelno) .dopolnitelno {
    display: none;
}


/* Адаптация */

@media (max-width: 1919px) {
    body {
        overflow: hidden;
    }
    .mod-map {
        padding-bottom: 0 !important;
    }
    .mod-map .image_intro img {
        top: auto;
        width: 100%;
    }
}

@media (max-width: 1199px) {
    .canvas-slider {
        height: 555px !important;
    }
    header ul.menu {
        margin-left: 0;
    }
    header #top_menu ul {
        flex-direction: column;
        width: 100%;
    }
    header #top_menu ul li {
        padding: .8rem 0;
        border-bottom: 1px solid #dee2e6;
        margin-bottom: 0;
        margin-left: 0;
        display: block;
        position: relative;
    }
    header #top_menu ul li.active {
        background: transparent;
        border-bottom: 2px solid #399BE5;
    }
    header #top_menu>ul>li a {
        padding: 0.8rem;
    }
    header #top_menu ul li.active a::before {
        display: none;
    }
    header #top_menu ul.menu li.parent::before {
        display: none;
    }
    header #top_menu ul.menu li.parent>ul {
        padding: 0;
    }
    header #top_menu ul.menu li.parent.active>ul {
        padding: 5px 0 5px 20px;
    }
    header #top_menu ul li.parent ul.nav-child li {
        display: none;
    }
    header #top_menu ul li.parent ul.nav-child {
        display: block;
        top: 0;
        position: relative;
        background: transparent;
    }
    header #top_menu ul li.parent ul.nav-child::before {
        content: url('/images/icons/down.svg');
        position: absolute;
        top: -37px;
        right: 15px;
        height: 2.5rem;
        background: #399BE5;
        border-radius: 0.3rem;
        padding: .7rem 1rem;
        width: 3rem;
        z-index: 100;
    }
    header #top_menu ul li.parent.active ul.nav-child li {
        display: block;
        border-bottom: none;
        border-top: 1px solid #dee2e6;
        margin-top: 0.5rem;
        margin-bottom: -.5rem;
    }
    header #top_menu ul li.parent.active ul.nav-child::before {
        transform: rotate(-180deg);
    }
    footer .footer_menu li a {
        padding: 15px 30px;
    }
    .mod-about .design-title {
        font-size: 60px;
    }
    .mod-map .image_intro img {
        position: relative;
    }
    .mod-reviews {
        padding-bottom: 10rem !important;
    }
    .mod-reviews .owl-carousel .owl-nav {
        top: 120%;
        width: 116px;
        transform: none;
        left: 0;
    }
    .mod-reviews .owl-carousel .owl-dots {
        bottom: -25px;
    }
    .mod-benefits .design {
        margin-top: 0 !important;
    }
    .mod-benefits .design .item {
        margin-right: 19px;
        padding: 36px 35px;
        width: 220px;
    }
}

@media (max-width: 991px) {
    h1,
    .h1 {
        font-size: 35px;
    }
    h2,
    .h2 {
        font-size: 30px;
    }
    h3,
    .h3 {
        font-size: 24px;
    }
    h4,
    .h4 {
        font-size: 16px;
    }
    .transparent-text {
        display: none;
    }
    canvas {
        position: relative !important;
        left: 50% !important;
        transform: translate(-50%, -50%) !important;
        -webkit-transform: translate(-50%, -50%) !important;
    }
    .canvas-slider {
        position: relative !important;
        height: 400px !important;
        left: 50% !important;
        margin-left: -50vw;
        width: calc(100% + calc(100vw - 100%));
    }
    footer .footer_menu {
        display: block;
        text-align: center;
    }
    footer .footer_menu li {
        padding: 10px;
    }
    footer .footer_menu li:nth-child(1) a {
        padding-left: 30px;
    }
    .mod-home-slide .item {
        padding-top: 0 !important;
    }
    .mod-home-slide .item .btn-primary {
        width: 100%;
    }
    .mod-benefits .introtext ul li:nth-child(2) {
        margin-left: 0;
    }
    .mod-benefits .introtext ul li:nth-child(3) {
        margin-left: 0;
    }
    .mod-benefits .introtext ul li:nth-child(4) {
        margin-left: 0;
    }
    .mod-benefits .introtext ul li:nth-child(5) {
        margin-left: 0;
    }
    .mod-benefits .design {
        margin-top: 0;
        justify-content: space-between;
    }
    .mod-benefits .design .item {
        margin-right: 0;
        width: 48%;
        padding: 30px 30px;
    }
    .mod-objects {
        padding-bottom: 55px;
    }
    .mod-objects .slider {
        margin-left: 0;
    }
    .mod-objects .owl-carousel .owl-nav {
        top: 108%;
        left: 0;
    }
    .mod-about .pt-100 {
        padding-top: 0 !important;
    }
    .mod-services .plate .design-title .title-arrow::before {
        content: unset;
    }
    .mod-map .image_intro img {
        width: 130%;
    }
    .mod-map .item-design {
        margin-left: 50px;
    }
    .mod-reviews .item {
        padding: 80px 24px 40px 24px;
    }
    .mod-installation {
        padding-top: 0 !important;
    }
    .mod-installation .item {
        padding: 30px;
    }
    .mod-contact-slide .title {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }
    .mod-legal {
        padding-bottom: 0 !important;
    }
    .mod-legal .design {
        position: relative;
        top: 0;
        left: 0;
        flex-wrap: wrap;
        justify-content: space-between;
    }
    .mod-legal .design .item {
        width: 32%;
        padding: 30px 30px;
        min-height: auto;
    }
}

@media (max-width: 767px) {
    .selectCity-container {
        text-align: center;
        margin-top: 20px;
    }
    .right-line::before {
        content: unset;
    }
    .mod-services .img {
        height: 166px;
    }
    .mod-services .img img {
        height: 100%;
        object-fit: cover;
    }
    .mod-services .plate .design-title {
        padding-left: 11px;
    }
    .mod-soc-network .design {
        margin: 12px;
    }
    .mod-soc-network .img {
        width: 61px;
        height: 61px;
    }
    .mod-soc-network .img img {
        width: 50%;
    }
    .mod-soc-network .design-title {
        font-size: 12px;
    }
    .mod-legal .design .item .h2 {
        font-size: 25px;
    }
}

@media (max-width: 575px) {
    canvas {
        height: 300px !important;
    }
    .canvas-slider {
        height: 200px !important;
    }
    .mod-legal .design .item {
        width: 48%;
    }
    .mod-legal .design .item:nth-last-child(1) {
        width: 100%;
    }
}


/* Анимации */

[data-aos="fade-in-left"].aos-animate {
    -webkit-animation: fade-in-left 0.8s cubic-bezier(0.390, 0.575, 0.565, 1.000) both, opacity 0.8s linear both;
    animation: fade-in-left 0.8s cubic-bezier(0.390, 0.575, 0.565, 1.000) both, opacity 0.8s linear both;
}

[data-aos="fade-in-right"].aos-animate {
    -webkit-animation: fade-in-right 0.8s cubic-bezier(0.390, 0.575, 0.565, 1.000) both, opacity 0.8s linear both;
    animation: fade-in-right 0.8s cubic-bezier(0.390, 0.575, 0.565, 1.000) both, opacity 0.8s linear both;
}

[data-aos="fade-in-bottom"].aos-animate {
    -webkit-animation: fade-in-bottom 0.8s cubic-bezier(0.390, 0.575, 0.565, 1.000) both, opacity 0.8s linear both;
    animation: fade-in-bottom 0.8s cubic-bezier(0.390, 0.575, 0.565, 1.000) both, opacity 0.8s linear both;
}

.aos-animate.delay-1 {
    -webkit-animation-delay: 200ms;
    animation-delay: 200ms
}

.aos-animate.delay-2 {
    -webkit-animation-delay: 400ms;
    animation-delay: 400ms
}

.aos-animate.delay-3 {
    -webkit-animation-delay: 600ms;
    animation-delay: 600ms
}

.aos-animate.delay-4 {
    -webkit-animation-delay: 800ms;
    animation-delay: 800ms
}

.aos-animate.delay-5 {
    -webkit-animation-delay: 1000ms;
    animation-delay: 1000ms
}

.aos-animate.delay-6 {
    -webkit-animation-delay: 1200ms;
    animation-delay: 1200ms
}

.aos-animate.delay-7 {
    -webkit-animation-delay: 1400ms;
    animation-delay: 1400ms
}

.aos-animate.delay-8 {
    -webkit-animation-delay: 1600ms;
    animation-delay: 1600ms
}

.aos-animate.delay-9 {
    -webkit-animation-delay: 1800ms;
    animation-delay: 1800ms
}

.aos-animate.delay-10 {
    -webkit-animation-delay: 2000ms;
    animation-delay: 2000ms
}

@-webkit-keyframes fade-in-left {
    0% {
        -webkit-transform: translateX(-50px);
        transform: translateX(-50px);
    }
    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

@keyframes fade-in-left {
    0% {
        -webkit-transform: translateX(-50px);
        transform: translateX(-50px);
    }
    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

@-webkit-keyframes fade-in-right {
    0% {
        -webkit-transform: translateX(50px);
        transform: translateX(50px);
    }
    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

@keyframes fade-in-right {
    0% {
        -webkit-transform: translateX(50px);
        transform: translateX(50px);
    }
    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
}

@-webkit-keyframes fade-in-bottom {
    0% {
        -webkit-transform: translateY(50px);
        transform: translateY(50px);
    }
    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@keyframes fade-in-bottom {
    0% {
        -webkit-transform: translateY(50px);
        transform: translateY(50px);
    }
    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@keyframes opacity {
    0% {
        opacity: 0;
    }
    50% {
        opacity: 0.5;
    }
    100% {
        opacity: 1;
    }
}

.selectCity {
    font-size: 14px;
    font-weight: bold;
}

.btn.selectCity-btn {
    padding: 1px 10px;
    font-size: 13px;
    margin-top: 5px;
}

ul.selectCity-list {
    -webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2;
    -webkit-column-gap: 40px;
    -moz-column-gap: 40px;
    column-gap: 40px;
}


@media screen and (max-width: 1400px) {
    #header_items > div.moduletable.mod-tel.px-4.my-3.pt-3.my-xl-0.pt-xl-0.text-center.font-weight-bold {white-space: nowrap; font-size: 0.7rem;}

}

#navbar-content > div.selectCity-container {text-align: center;}
#top_menu {font-size: 0.7rem;}