body {
    font-family: 'Ubuntu';
    background: #F4F8FF;
    position: relative;
}
body *{
    font-family: 'Ubuntu';
}
.btn:focus, .btn.focus {
    outline: 0;
    box-shadow: none;
}
:focus-visible {
    outline: 0;
    box-shadow: none;
}

.btn-primary {
    color: #fff;
    background-color: #6097D0;
    border-color: #6097D0;
}
.shading {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.7);
    z-index: 100;
    display: none;
}
button:focus {
    outline: none;
}
/*HELPERS*/
.mt70 {
    margin-top: 70px;
}
/*HEADER*/
.header {
    padding-bottom: 120px;
    z-index: 200;
}
.header_top-line {
    background: linear-gradient(0deg, #2F3E74, #2F3E74);
    padding: 4px 0;
    position: relative;
}
.header_top-line a {
    color: #fff;
    font-size: 16px;
    line-height: 18px;
    margin-right: 48px;

}

.header_bottom-line {
    background: #FFFFFF;
    box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.15);
    padding: 12px 0;
}
.header_phone {
    font-weight: 500;
    font-size: 24px;
    line-height: 28px;
    color: #000000;

}
.phone-iconed {
    padding-left: 37px;
    background: url("../img/svg/phone-icon.svg") no-repeat left;
    background-size: contain;
}
.header_top-line a.header_phone {
    margin: 0;
    font-size: 16px;
    line-height: 22px;
    right: 0;
    top: 8px
}
.header_top-line .phone-iconed {
    padding-left: 0;
    padding-right: 29px;
    background: url("../img/svg/phone-icon-white.svg") no-repeat right;
    background-size: contain;
}

.navbar-dark .navbar-toggler {border: none}
.navbar-dark .navbar-toggler-icon {
    background-image: url("../img/svg/burger.svg");
}
.navbar-toggler:not(.collapsed) .navbar-toggler-icon {
    background: url("../img/svg/close.svg") no-repeat center;
    background-size: 15.6px 15.6px;

}
.navbar-collapse.show,.navbar-collapse.collapsing {
    position: absolute;
    top: 36px;
    left: -15px;
    right: -15px;
    background: #fff;
    padding: 60px 20px 30px 35px;
}
.navbar-collapse.show a,.navbar-collapse.collapsing a {
    color: #3F6AA9;
    font-size: 21px;
    line-height: 24px;
    margin-bottom: 15px;
    margin-right: 0;
    display: block;
}
/*/HEADER*/

/*FOOTER*/
.footer {
    background: #fff;
    padding: 40px 0 90px;
}
.footer .logo img {
    width: 100px;
}
.footer_phone {
    margin-bottom: 25px;
    margin-top: 10px;
}
.footer_phone a {
    font-weight: 500;
    font-size: 24px;
    line-height: 28px;
    color: #000000;
}
.footer_menu {
    overflow: hidden;
    margin-top: 40px;
    padding-left: 20px;
}
.footer_menu a{
    font-weight: normal;
    font-size: 16px;
    line-height: 160%;
    color: #636F7D;
}
.footer_menu li {
    color: #636F7D;
    width: 30%;
    margin-bottom: 16px;
}
.footer_text {
    margin-top: -30px;
}
.footer_text,.footer_text a, .footer_copyright {
    font-style: normal;
    font-weight: 300;
    font-size: 14px;
    line-height: 160%;
    color: #636F7D;
}
.footer_copyright {
    margin-top: 17px;
}
.text-right .footer_copyright {
    margin-top: 27px;
}
.social-icons {
    margin-top: 27px;
    overflow: hidden;
}
/*/FOOTER*/
.page-content {
    padding-top: 0px;
    padding-bottom: 50px;
}
/*MAIN SLIDER*/
.carousel.main .carousel-caption {
    max-width: 740px;
    bottom: 65px;
}

.carousel.main .title {
    font-weight: bold;
    font-size: 56px;
    line-height: 100%;
    /* or 56px */
    color: #FFFFFF;
}
.carousel.main .description {
    font-weight: 500;
    font-size: 24px;
    line-height: 28px;
    margin-top: 20px;
    color: #FFFFFF;
    margin-bottom: 0;
}
.carousel.main .btn.btn-light {
    margin-top: 80px;
    height: 55px;
    border-radius: 8px;
    background: #FFFFFF;
    font-weight: bold;
    font-size: 18px;
    line-height: 21px;
    /* identical to box height */
    text-align: center;
    display: inline-flex;
    align-items: center;
    padding: 0 75px;
}
.carousel.main  .carousel-indicators {
    visibility: hidden;
}
/*/MAIN SLIDER*/

.block-title {
    display: block;
    padding: 0;
    margin-top: 78px;
    margin-bottom: 50px;
    font-style: normal;
    font-weight: 500;
    font-size: 40px;
    line-height: 130%;
    color: #142438;
}

/*LIST SERVICES*/
.list-services {
    column-width: 33%;
    column-count: 3;
    column-gap: 10px;
}
.list-services, .list-services ul {
    margin: 0;
    padding: 0;
    list-style: none;
}
.list-services > li {
    margin-bottom: 28px;
    font-style: normal;
    font-weight: bold;
    font-size: 21px;
    line-height: 24px;
    color: #3F6AA9;
}
.list-services > li a {
    color: #3F6AA9;
}
.list-services > li > ul {
    margin-left: 18px;
}
.list-services > li > ul li {
    margin-top: 20px;
    font-style: normal;
    font-weight: 500;
    font-size: 18px;
    line-height: 21px;
    color: #3F6AA9;
}
.list-services > li > ul li:last-child {
    margin-top: 0;
}
.list-services > li > ul li a {
    color: #3F6AA9;
}
/*/LIST SERVICES*/
.all-link {
    font-weight: normal;
    font-size: 18px;
    line-height: 130%;
    text-align: right;
    text-decoration-line: underline;
    color: #5F5F5F;
    margin-top: 12px;
}
/*аккордеон*/
.accordion > .card {
    margin-bottom: 10px;
    background: #FFFFFF;
    border: none;
    box-shadow: 0px 4px 14px rgba(0, 0, 0, 0.15);
    border-radius: 10px !important;
}
.accordion > .card > .card-header {
    padding: 0;
    background: none;
    border: none;
}
.accordion > .card > .card-header a {
    display: block;
    padding: 16px 40px 16px 58px;
    font-style: normal;
    font-weight: normal;
    font-size: 21px;
    line-height: 24px;
    position: relative;
    text-decoration: none;
    color: #3F6AA9;
    cursor: pointer;
}
.accordion > .card > .card-header a.collapsed {
    color: #222222;
}
.accordion > .card > .card-header a:before {
    content: "";
    width: 5px;
    height: 5px;
    background: #FA5041;
    border-radius: 50px;
    position: absolute;
    left: 29px;
    top: 50%;
    margin-top: -2.5px;
}
.accordion > .card > .card-header a:after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 4.5px 0 4.5px 5px;
    border-color: transparent transparent transparent #FA5041;
    top: 50%;
    right: 28px;
    margin-top: -4.5px;
    position: absolute;
    transform: rotate(90deg);
    transition: .3s;
}
.accordion > .card > .card-header a.collapsed:after {
    transform: rotate(0deg);
    transition: .3s;
}

.accordion > .card .card-body{
    font-size: 16px;
    line-height: 24px;
    color: #999999;
    padding: 50px 20px 50px 100px;
}
.accordion > .card .card-body ol ::marker {
    color: #3F6AA9;
}
.accordion > .card .card-body ol li {
    margin-bottom: 50px;
}
.main_map {
    position: relative;
    margin-bottom: -6px;
}
.main_map:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 25%;
    background: linear-gradient(180deg, #F4F8FF 0%, rgba(244, 248, 255, 0) 100%);
    top: 0;
    z-index: 1;
}
.main_map .embed-responsive-item{
    width: 100%;
    height: 670px;
    /*pointer-events: none;*/
}

.advantages > div {
    display: flex;
}
.advantage {
    padding: 36px 32px;
    background: #DFEEFB;
    box-shadow: 0px 4px 14px rgba(0, 0, 0, 0.15);
    border-radius: 16px;
    margin-bottom: 30px;
    display: flex;
    flex-direction: column;
    -webkit-transition: .5s;
    transition: .5s;
}
.advantage:hover {
    -webkit-transform: translateY(-5px);
    transform: translateY(-5px);
}
.advantage-ico {
    margin-bottom: 20px;
}
.advantage-ico img{
    max-height: 42px;
    display: flex;
}
.advantage-title {
    font-weight: bold;
    font-size: 21px;
    line-height: 130%;
    color: #222222;
    margin-bottom: 16px;
    display: flex;
}
.advantage-descr {
    font-weight: normal;
    font-size: 18px;
    line-height: 21px;
    color: #142438;
    flex: 1 0 auto;/*Три*/
}

.slider {
    position: relative;
}
.swiper-container {
    margin-left: auto;
    margin-right: auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    z-index: 1;
}

.conditions-slider>.swiper-container {
    overflow: visible;
}
.swiper-button-next:after {
    content: "";
    background: #FFFFFF url("../img/svg/rarr.svg") no-repeat center;
    /* Shadow */
    box-shadow: 0px 8px 20px rgba(25, 46, 80, 0.05);
    border-radius: 16px;
    width: 70px;
    height: 70px;
    flex-shrink: 0;
}
.swiper-button-next {

}
.swiper-button-prev:after {
    content: "";
    background: url("../img/svg/larr.svg") no-repeat center;
    width: 70px;
    height: 70px;
    border: 1px solid #E4EAF0;
    box-sizing: border-box;
    border-radius: 20px;
    position: absolute;
    flex-shrink: 0;
}

.conditions-slider>.swiper-container>.swiper-wrapper>.swiper-slide {
    position: relative;
    z-index: 1;
    opacity: 0;
    -webkit-transition: opacity .6s,-webkit-transform .6s;
    transition: opacity .6s,-webkit-transform .6s;
    transition: opacity .6s,transform .6s;
    transition: opacity .6s,transform .6s,-webkit-transform .6s;
}
.conditions-slider>.swiper-container>.swiper-wrapper>.swiper-slide-active {
    z-index: 2;
    opacity: 1;
    -webkit-transform: scale(1) translateX(0);
    transform: scale(1) translateX(0);
}
.slider-arrows {
    position: absolute;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 115%;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
    height: 0;
    z-index: 5;
}
.condition-item {
    filter: drop-shadow(0px 8px 20px rgba(25, 46, 80, 0.05));
    background: linear-gradient(0deg, #FA5041, #FA5041);
    border-radius: 20px;
    color: #FFFFFF;
    position: relative;
}
.condition-content {
    padding: 20px 20px 72px 100px;
    display: flex;
    flex-direction: column;
    height: 100%;
    align-items: flex-start;
    justify-content: flex-end;
}
.condition-title {
    font-weight: bold;
    font-size: 51.1555px;
    line-height: 100%;
    margin-bottom: 17px;
}
.condition-text {
    font-weight: normal;
    font-size: 24px;
    line-height: 140%;
    margin-bottom: 33px;
}
.condition-item .btn {

}
.condition-item .row{
}
.condition-image {
    /*position: absolute;*/
    /*bottom: 0;*/
    /*right: 30px;*/
}
.condition-item .bg-circle {
    background: url("../img/svg/elipse.svg") no-repeat 110px -110px;
    padding-right: 30px;
    text-align: right;
    border-radius: 0 20px 0 0;
}
.condition-item .bg-circle img {
    max-width: 100%;
}
.slider-pagination {
    text-align: center;
    margin-top: 20px;
    display: none;
}

.how-work {
    background: #DFEEFB;
    padding: 21px 0;
    box-shadow: 0px 4px 14px rgba(0, 0, 0, 0.15);
    border-radius: 20px;
    min-height: 320px;
    position: relative;
    margin-bottom: 15px;
    transition: .5s;
}
.how-work-title {
    font-weight: bold;
    font-size: 23px;
    line-height: 28px;
    color: #142438;
    margin-bottom: 30px;
    padding: 0 5px 0 26px;
}
.how-work-text {
    font-weight: normal;
    font-size: 20px;
    line-height: 23px;
    text-align: right;
    color: #142438;
    padding: 0 26px;
    z-index: 1;
    position: relative;
}
.how-work-number{
    font-weight: bold;
    font-size: 160px;
    line-height: 184px;
    color: #6097D0;
    width: 240px;
    height: 169px;
    position: absolute;
    bottom: 0;
    left: 0;
    background: url("../img/svg/elipse-w.svg") no-repeat right top;
    background-size: 312px;
    padding-left: 26px;
    padding-bottom: 21px;
    border-radius: 0 0 0 20px;
    -webkit-transition: .5s;
    transition: .5s;
}
.how-work-number.blue {
    color: #FFFFFF;
    background: url("../img/svg/elipse.svg") no-repeat right top;
    background-size: 312px;
    -webkit-transition: .5s;
    transition: .5s;
}
.how-work:hover {
    -webkit-transform: translateY(-5px);
    transform: translateY(-5px);
}
/*.how-work:hover .how-work-number {*/
/*    color: #FFFFFF;*/
/*    background: url("../img/svg/elipse.svg") no-repeat right top;*/
/*    background-size: 312px;*/
/*}*/

.services-call {
    position: relative;
    background: linear-gradient(90deg, #FA5041 0%, #3F6AA9 100%), linear-gradient(0deg, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2)), #3F6AA9;
    /* Тень ровно вниз МОБ БК */
    box-shadow: 0px 4px 8px rgba(25, 46, 80, 0.12);
    border-radius: 16px;
    color: #fff;
    display: flex;
    align-items: center;
    padding: 17px 63px 16px 156px;
    margin-top: 50px;
    justify-content:space-between;
}
.services-call:before {
    content: "";
    position: absolute;
    width: 76.02px;
    height: 76px;
    background: url("../img/svg/phone-big.svg") no-repeat;
    left: 30px;
    top: 50%;
    margin-top: -38px;
}
.services-call-title {
    font-weight: bold;
    font-size: 24px;
    line-height: 130%;
    margin-bottom: 10px;
}
.services-call-text {
    font-weight: normal;
    font-size: 21px;
    line-height: 130%;
    max-width: 576px;
}
.services-call .btn {
    white-space: nowrap;
    justify-content: center;
}
.btn-trabsparent {
    border: 2px solid #FFFFFF;
    font-weight: bold;
    font-size: 24px;
    color: #FFFFFF;
    padding-top: 15px;
    padding-bottom: 15px;
    display: flex;
    align-items: center;
}
.btn-trabsparent:hover {
    color: #FFFFFF;
    background: rgba(255,255,255,0.1);
}

/*КАЛЬКУЛЯТОР*/
.main_calc {
    background: #DFEEFB;
    /* Тень ровно вниз ПО БК */
    box-shadow: 0px 4px 14px rgba(0, 0, 0, 0.15);
    border-radius: 20px;
    padding: 30px;
}
.main_calc-title {
    font-weight: bold;
    font-size: 24px;
    line-height: 28px;
    color: #000000;
    margin-bottom: 10px;
}
.main_calc-link {
    font-size: 18px;
    line-height: 21px;
    text-decoration-line: underline;
    color: #8E8E8E;
    float: right;
    margin-bottom: 17px;
}
.main_calc-label {
    font-weight: normal;
    font-size: 14px;
    line-height: 130%;
    color: #3F6AA9;
    margin-bottom: 6px;
}
.main_calc-checkbox {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -30px 0 0;
}
.main_calc-checkbox label {
    background: #3F6AA9;
    border-radius: 4px;
    font-weight: 500;
    font-size: 14px;
    line-height: 16px;
    color: #FFFFFF;
    align-items: center;
    height: 38px;
    margin-right: 30px;
    justify-content:space-between;
    display: flex;
    padding: 13px 8px;
    cursor: pointer;
    border: 1px solid #3F6AA9;
}
.main_calc-checkbox label input {
    display: none;
}
.main_calc-checkbox label input ~ span {
    display: block;
    width: 30px;
    height: 30px;
    background: #FFFFFF;
    border-radius: 4px;
    margin-left: 20px;
    position: relative;

}
.main_calc-checkbox label input:checked ~ span:before {
    content: "";
    background: #2F3E74;
    position: absolute;
    width: 12px;
    height: 12px;
    top: 50%;
    left: 50%;
    margin-top: -6px;
    margin-left: -6px;
    border-radius: 50%;
}
.main_calc hr {
    border-top-color: #3F6AA9;
    margin-bottom: 17px;
}
.main_calc-itogo {
    font-weight: bold;
    font-size: 24px;
    line-height: 28px;
    color: #000000;
}
.main_calc-itogo .meta {
    font-weight: 300;
    font-size: 14px;
    line-height: 120%;
    color: #6A6A6A;
    margin-top: 7px;
}
.main_calc .btn.btn-primary {
    background: #2F3E74;
    font-weight: bold;
    font-size: 18px;
    line-height: 21px;
    text-transform: uppercase;
}


input[type=range] {
    -webkit-appearance: none; /* Скрывает слайдер, чтобы можно было создать свой */
    width: 100%; /* Указание параметра ширины требуется для Firefox. */
}

input[type=range]::-webkit-slider-thumb {
    -webkit-appearance: none;
}

input[type=range]:focus {
    outline: none; /* Убирает голубую границу у элемента. Хотя, возможно, и стоит создавать некоторое оформления для состояния фокуса в целях обеспечения доступности. */
}

input[type=range]::-ms-track {
    width: 100%;
    cursor: pointer;
    background: transparent; /* Скрывает слайдер, чтобы можно было добавить собственные стили. */
    border-color: transparent;
    color: transparent;
}

input[type=range] {
    -webkit-appearance: none; /* Скрывает слайдер, чтобы можно было создать свой */
    width: 100%; /* Указание параметра ширины требуется для Firefox. */
}
input[type=range]::-webkit-slider-thumb {
    -webkit-appearance: none;
}
input[type=range]:focus {
    outline: none; /* Убирает голубую границу у элемента. Хотя, возможно, и стоит создавать некоторое оформления для состояния фокуса в целях обеспечения доступности. */
}
input[type=range]::-ms-track {
    width: 100%;
    cursor: pointer;
    background: transparent; /* Скрывает слайдер, чтобы можно было добавить собственные стили. */
    border-color: transparent;
    color: transparent;
}

input[type=range] {
    -webkit-appearance: none;
    margin: 18px 0;
    width: 100%;
}
input[type=range]:focus {
    outline: none;
}
input[type=range]::-webkit-slider-runnable-track {
    width: 100%;
    height: 4px;
    cursor: pointer;
    animate: 0.2s;
    background: #3F6AA9;
    border-radius: 4px;
}
input[type=range]::-webkit-slider-thumb {
    border: none;
    height: 25px;
    width: 25px;
    border-radius: 50%;
    background: #FA5041;
    cursor: pointer;
    margin-top: -10.5px;
    /*box-shadow: 0px 0px 0px 10.5px #FA5041;*/
}

input[type=range]:focus::-webkit-slider-runnable-track {
    background: #3F6AA9;
    opacity: 0.9;
}
input[type=range]::-moz-range-track {
    width: 100%;
    height: 4px;
    cursor: pointer;
    animate: 0.2s;
    background: #3F6AA9;
    border-radius: 4px;
}
input[type=range]::-moz-range-thumb {
    border: none;
    height: 25px;
    width: 25px;
    border-radius: 50%;
    background: #FA5041;
    cursor: pointer;
    margin-top: -12.5px;
}
input[type=range]::-ms-track {
    width: 100%;
    height: 4px;
    cursor: pointer;
    animate: 0.2s;
    background: transparent;
    border-color: transparent;
    color: transparent;
}
input[type=range]::-ms-fill-lower {
    background: #3F6AA9;
    border-radius: 4px;
}
input[type=range]::-ms-fill-upper {
    background: #3F6AA9;
    border-radius: 4px;

}
input[type=range]::-ms-thumb {
    border: none;
    height: 25px;
    width: 25px;
    border-radius: 50%;
    background: #FA5041;
    cursor: pointer;
    margin-top: -12.5px;
}
input[type=range]:focus::-ms-fill-lower {
    background: #3F6AA9;
}
input[type=range]:focus::-ms-fill-upper {
    background: #3F6AA9;
}
.range-bottom {
    font-weight: normal;
    font-size: 14px;
    line-height: 14px;
    color: #3F6AA9;
    margin-top: -5px;
    display: flex;
    justify-content: space-between;
}
.range-bottom > div {
    padding-top: 14px;
    position: relative;
}
.range-bottom > div:before {
    content: "";
    position: absolute;
    width: 1px;
    background: #3F6AA9;
    border-radius: 2px;
    height: 12px;
    top: 0;
    left: 3px;
}
.range-bottom > div.right:before {
    left: auto;
    right: 3px;
}
.range-bottom > div.left {
    margin-left: 8px;
}
.range-bottom > div.middle {
    margin-right: -27px;
}
.range-bottom > div.right {
    margin-right: 10px;
}
.range-bottom > div.middle:before {
    right: auto;
    left: 50%;
    margin-left: -0.5px;
}
.range-row {
    display: flex;
    justify-content: space-between;
}
.range {
    max-width: 670px;
    flex-grow: 1;
    margin-right: 10px;
}
.range-input .input-group{

}
.range-input input {
    background: #FFFFFF;
    border: 1px solid #3F6AA9;
    border-radius: 4px;
    height: 36px;
    font-weight: 500;
    font-size: 14px;
    line-height: 36px;
    text-align: center;
    color: #000000;
    width: 164px;
}
.range-input input:focus-visible {
    outline: none;
}
.range-input .input-group-text {
    background: none;
    font-weight: 500;
    font-size: 21px;
    line-height: 24px;
    color: #3F6AA9;
    border: none;
    cursor: pointer;
}
.main_calc-row {
    margin-bottom: 18px;
}

.ajax-modal .fancybox-skin {
    background: none;
}
.modal-form {
    background: linear-gradient(77.56deg, #E92716 0%, #FA5041 100%);
    box-shadow: 0px 8px 20px rgba(25, 46, 80, 0.23);
    border-radius: 16px;
    padding: 30px 38px;
    color: #fff;
    width: 740px;
    max-width: 100%;
}
.modal-form h3 {
    font-weight: bold;
    font-size: 30px;
    line-height: 130%;
    text-align: center;
    padding: 0;
    margin-bottom: 23px;
    color: #fff;
}
.modal-form p {
    font-weight: normal;
    font-size: 16px;
    line-height: 130%;
    text-align: center;
    margin-bottom: 27px;
    color: #fff;
}
.modal-form .fields {
    display: flex;
    margin-right: -20px;
    justify-content: center;
    margin-bottom: 14px;
}
.modal-form .fields .field {
    margin-right: 20px;
    flex-grow: 1;
    margin-bottom: 14px;
}
.modal-form .fields .field label {
    font-weight: normal;
    font-size: 14px;
    line-height: 16px;
    display: block;
    margin-bottom: 8px;
}
.modal-form .fields .field input {
    background: #FFFFFF;
    border-radius: 4px;
    height: 40px;
    display: flex;
    align-items: center;
    padding: 12px;
    font-weight: normal;
    font-size: 14px;
    line-height: 16px;
    color: #222222;
    border: none;
    width: 100%;
}
.modal-form  font.errortext {
    color: #fff !important;
}
.form-policy {
    display: flex;
    font-weight: normal;
    font-size: 14px;
    line-height: 160%;
    margin-bottom: 27px;

}
.form-policy a {
    color: #fff;
    text-decoration: underline;
}
.form-policy input {
    display: none;
}
.form-policy input+span {
    display: block;
    margin-right: 16px;
    width: 20px;
    height: 20px;
    background: #DFEEFB;
    flex-shrink: 0;
    margin-top: 5px;
}
.form-policy.error input+span {
    border: 1px solid #951313;
    box-shadow: 0px 0px 2px 0px #951313;
}
.form-policy input:checked+span {
    background: #2F3E74 url("../img/svg/check.svg") no-repeat center;
}

.btn.hover-primary {
    transition: .3s;
}
.btn.hover-primary:hover {
    background: #2F3E74 !important;
    color: #fff;
}
.btn.hover-red {
    transition: .3s;
}
.btn.hover-red:hover {
    background: linear-gradient(77.56deg, #E92716 0%, #FA5041 100%) !important;
    color: #fff;
}

.fancybox-close {
    width: 48px;
    height: 48px;
    background: #DFEEFB url("../img/svg/x.svg") no-repeat center;
    border-radius: 50%;
}
.fancybox-close:hover {
    opacity: 0.9;
}

.inactive .input-group-prepend,.inactive .input-group-append {
    pointer-events: none;
}
.count-workers.inactive {
    opacity: 0.6;
    cursor: not-allowed;
}

h1.page-title {
    color: #142438;
    font-style: normal;
    font-weight: 500;
    font-size: 40px;
    line-height: 130%;
    margin-top: 81px;
    margin-bottom: 50px;
}
h3 {
    font-weight: bold;
    font-size: 21px;
    line-height: 130%;
    color: #142438;
    margin-bottom: 20px;
}
p {
    font-weight: 300;
    font-size: 18px;
    line-height: 24px;
    color: #292929;
    margin-bottom: 20px;
}

.accordion.content {

}
.accordion.content > .card > .card-header a {
    color: #2F3E74;
    font-weight: normal;
    font-size: 21px;
    line-height: 24px;
    padding: 14px 40px 14px 18px;
    cursor: pointer;
}
.accordion.content > .card > .card-header a:before {
    display: none;
}
.accordion.content > .card .card-body {
    padding: 32px;
    font-weight: 300;
    font-size: 18px;
    line-height: 130%;
    color: #656565;
}

/*Каталог услуг*/
.catalog-services-list  ul {
    margin: 0;
    padding: 0;
    list-style: none;
}
.catalog-services-list > ul > li {
    font-style: normal;
    font-weight: bold;
    font-size: 21px;
    line-height: 24px;
    color: #3F6AA9;
}
.catalog-services-list > ul > li:first-child {
    padding-left: 0;
}
.catalog-services-list > ul > li:last-child {
    padding-right: 0;
}

.catalog-services-list > ul > li a {
    color: #3F6AA9;
    display: block;
}
.catalog-services-list > ul > li > ul {
    margin-left: 10px;
    margin-top: 50px;
}
.catalog-services-list > ul > li > ul > li {
    margin-top: 25px;
    font-style: normal;
    font-weight: 500;
    font-size: 21px;
    line-height: 24px;
    color: #3F6AA9;
}
.catalog-services-list > ul > li > ul > li a {
    color: #3F6AA9;
}
.catalog-services-list > ul > li > ul > li > ul li {
    font-style: normal;
    font-weight: 500;
    font-size: 21px;
    line-height: 24px;
    color: #4E4E4E;
    margin-left: 10px;
    margin-top: 25px;
}
.catalog-services-list > ul > li > ul > li > ul li a {
    color: #4E4E4E;
}
.catalog-services > ul.items {
    margin-bottom: 25px;
}
.catalog-services ul li ul li ul.items {
    margin-bottom: 25px;
}
.catalog-services-list > ul.items li a {
    color: #828282;
    font-weight: normal;
    font-size: 18px;
    line-height: 20px;
}

/*В каталоге*/
.catalog-services  ul {
    margin: 0;
    padding: 0;
    list-style: none;
}
.catalog-services > ul > li {
    font-style: normal;
    font-weight: bold;
    font-size: 21px;
    line-height: 24px;
    color: #4E4E4E;
}
.catalog-services > ul > li:first-child {
    padding-left: 0;
}
.catalog-services > ul > li:last-child {
    padding-right: 0;
}

.catalog-services > ul > li a {
    color: #4E4E4E;
    display: block;
}
.catalog-services > ul > li > ul {
    margin-left: 10px;
    margin-top: 50px;
}

.catalog-services > ul > li > ul.items {
    margin-bottom: 0;
}
.catalog-services > ul > li > ul > li {
    margin-top: 25px;
    font-style: normal;
    font-weight: 500;
    font-size: 21px;
    line-height: 24px;
    color: #4E4E4E;
}
.catalog-services > ul > li > ul > li a {
    color: #4E4E4E;
}
.catalog-services > ul > li > ul > li > ul li {
    font-style: normal;
    font-weight: 500;
    font-size: 21px;
    line-height: 24px;
    color: #4E4E4E;
    margin-left: 10px;
    margin-top: 25px;
}
.catalog-services > ul > li > ul > li > ul li a {
    color: #4E4E4E;
}
.catalog-services ul.items li a {
    color: #828282;
    font-weight: normal;
    font-size: 18px;
    line-height: 20px;
}
/*/Каталог услуг*/
.square_blocks {
    margin-top: 130px;
}
.square_block {
    padding: 38px 40px 32px;
    border-radius: 16px;
}
.square_block.red {
    background: linear-gradient(77.56deg, #E92716 0%, #FA5041 100%);
    /* Shadow */
    box-shadow: 0px 8px 20px rgba(25, 46, 80, 0.05);
}
.square_block_title {
    color: #FFFFFF;
    font-weight: bold;
    font-size: 24px;
    line-height: 130%;
}
.square_block_descr {
    color: #FFFFFF;
    font-weight: normal;
    font-size: 21px;
    line-height: 130%;
    margin-top: 20px;
    margin-bottom: 50px;
}
.square_block.red input[type=text] {
    border: 2px solid #FFFFFF;
    box-sizing: border-box;
    border-radius: 8px;
    background: transparent;
    margin-bottom: 11px;
    height: 55px;
    font-size: 21px;
    line-height: 24px;
    display: flex;
    align-items: center;
    color: #FFFFFF;
    width: 100%;
    padding: 0 28px;
}
.square_block font.errortext {
    color: #fff !important;
    font-size: 14px;
    line-height: 14.5px;
}
.square_block.red ::-webkit-input-placeholder { /* WebKit, Blink, Edge */
    color:    #fff;
}
.square_block.red :-moz-placeholder { /* Mozilla Firefox 4 to 18 */
    color:    #fff;
    opacity:  1;
}
.square_block.red ::-moz-placeholder { /* Mozilla Firefox 19+ */
    color:    #fff;
    opacity:  1;
}
.square_block.red :-ms-input-placeholder { /* Internet Explorer 10-11 */
    color:    #fff;
}
.square_block.red ::-ms-input-placeholder { /* Microsoft Edge */
    color:    #fff;
}

.square_block.red ::placeholder { /* Most modern browsers support this now. */
    color:    #fff;
}
.square_block .btn {
    margin-top: 24px;
    padding-left: 58px;
    padding-right: 58px;
    font-size: 24px;
}
.square_block.blue {
    background: linear-gradient(270deg, #132743 0%, #405174 100%);
    box-shadow: 0px 8px 20px rgba(25, 46, 80, 0.05);
}
.square_block.blue img {
    margin-bottom: 30px;
}
.about {
    font-size: 21px;
}
.about p{
    font-style: normal;
    font-weight: normal;
    font-size: 21px;
    line-height: 24px;

    color: #142438;
}
.about small{
    font-size: 16px;
    line-height: 18px;
}
.dir-photo {
    border: 1px solid #5C5C5C;
    filter: drop-shadow(0px 4px 20px rgba(0, 0, 0, 0.15));
    border-radius: 20px;
    max-width: 100%;
}
.pseudo_h1 {
    font-weight: 500;
    font-size: 40px;
    line-height: 130%;
    color: #142438;
    margin-bottom: 30px;
}