   
.chbxlabel{
	padding-left: 10px;
}
body {
    font-family: 'Montserrat Medium';
}
h1{
    font-size: 26px;
}
h1, .h1, h2, .h2 {
  font-size: 2rem;
  padding-top: 10px;
}
.descH1{ 
    background-color: #bcbcbc33;
    padding: 40px;}
p{
    text-align: justify;
}
.bold_p{
    font-size: 20px;
    text-align: left;
    font-weight: 900;
    padding: 20px 0px 0px 0px;
}

.icon_lic{
    width: 55px;
    height: 55px;
    fill: rgb(235, 38, 38);
}
.p_head{
    font-size: 24px;
    text-align: left;
    font-weight: 900;
    padding: 20px 0px 0px 0px;
    margin-bottom: 0;
}
.p_grey{
    padding-top: 5px;
    color: grey;
    text-align: left;
}
.p_top25{
    padding-top: 110px;
}
.button_lic{
    color: #fff;
    font-size: 14px;
    background-color: #749ec8;
    border-radius: 40px;
    border: none;
    padding: 15px 60px 15px 60px;
}


.hr_btn {
background-image: linear-gradient(to right, transparent, rgba(0, 0, 0, 0.2), transparent);
border: 0;
height: 1px;
margin: 22px 0 22px 0;box-sizing:
content-box;
display: block;
}
.breadcrumb {
    display: flex;
    flex-wrap: wrap;
    padding: 15px 0px 0px 0px;
    margin-bottom: 1rem;
    list-style: none;
    font-size: 14px;
    color: #8c8c8c;
}
.breadcrumb a{
    color: #898989;
}


* {
    box-sizing: border-box; 
    }
#flex-container {
    display: flex; 
    flex-wrap: wrap; 
    }
#flex-container > div {
    width: 25%; 
    margin: 0px; 
    padding: 30px; 
    text-align: center;
    }
#flex-container p{
    text-align: center;
} 

.qfcapt {
    display: none;
}
.spoiler-block {
    text-align: center;
    margin-top: 50px;
    margin-bottom: 10px;
}
.spoiler-block a {
    text-decoration: none;
    color: #545454;
}
.spoiler-block a:hover {
    color: #828282;
}
.spoiler-block a:visited {
    color: #545454;
}medi
.mb-30 {
    margin-bottom: 30px;
}

.table-head{
    background-color: #efefef;
}

.custom-table {
	width: 100%;
	margin-bottom: 20px;
	border: 1px solid #dddddd;
	border-collapse: collapse; 
}
.custom-table th {
	font-weight: bold;
	padding: 5px;
	background: #efefef;
	border: 1px solid #dddddd;
}
.custom-table td {
	border: 1px solid #dddddd;
	padding: 5px;
}


.header-bg {
    background-color: #f6f9fc;
    width: 100%;
    padding-bottom: 20px;
    padding-top: 30px;
}
.mx-right {
    margin-left: auto !important;
}
.mx-right li {
    padding-left: 30px;
}
.nav-item-top a {
    text-decoration: none;
    color: #333333;
}
.nav-item-top a:hover {
    -webkit-text-decoration: #4075ad;
    text-decoration: #4075ad;
    color: #333333;
}
#image {
    max-width: 100%;
    -webkit-animation: fade 5s linear infinite;
    animation: fade 5s linear infinite;
    -webkit-animation-delay: 2.5s;
    animation-delay: 2.5s;
}
@-webkit-keyframes fade {
    0% { opacity: 1 }
    50% { opacity: 0 }
    100% { opacity: 1 }
}
@keyframes fade {
    0% { opacity: 1 }
    50% { opacity: 0 }
    100% { opacity: 1 }
}
.navbar-header {
    font-size: 14px;
    font-family: 'Montserrat SemiBold';
}
.icon-info-block {
    background-color: #4075ad;
    height: 185px;
    width: 100%;
}
.icon-info-block__el {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    color: white;
    margin-top: 40px;
    font-size: 10px;
    text-transform: uppercase;
}
.icon-info-block__img {
    margin-top: 20px;
}
.logo-block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
}
.logo-tittle {
    font-size: 36px;
    text-transform: uppercase;
    font-family: 'Montserrat SemiBold';
    color: #333333;
    margin-top: 20px;
    margin-left: 10px;
}
.header-time {
    text-align: center;
    font-size: 20px;
    color: #4b4b4b;
    margin-top: 30px;
}
.header-contact a {
    text-decoration: none;
    text-align: right;
}
.header-contact {
    text-align: right;
}
.header-contact__phone {
    font-size: 30px;
    color: #333333;
    font-family: 'Montserrat SemiBold';
}
.slider-tittle {
    color: #4075ad;
    font-size: 30px;
    font-family: 'Montserrat SemiBold';
    margin-top: 100px;
}
.slider {
    margin-top: 40px;
    margin-bottom: 40px;
}
.slider-img_block {
    text-align: right;
}
.slider-img_block img{
    border-radius: 10px 90px 10px 90px;
}
.slider-about {
    font-size: 14px;
    color: #848484;
    margin-top: 75px;
}
.slider-hashtag {
    margin-top: 30px;
}
.slider-hashtag span {
    font-size: 14px;
    color: #4075ad;
    display: block;
}
.slider-btn {
    font-size: 14px;
    color: white;
    background-color: #4075ad;
    padding: 15px 60px 15px 60px;
    border: 0;
    border-radius: 40px;
    margin-top: 40px;
}
.slider-hashtag__block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
}
.work-card {

    display: -webkit-box;

    display: -ms-flexbox;
    background-color: #eff5f5;
    border-radius: 0 30px 30px 0;
    display: flex;
    justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
}

.work-card:hover {
    cursor: pointer;
}

.work-tittle {
    font-family: 'Montserrat Bold';
    font-size: 30px;
    text-align: center;
    margin-top: 45px;
    color: #464646;
}
.work-line_block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-bottom: 40px;
}
.work-line {
    border-bottom: 3px
    solid #4075ad;
    width: 100px;
}
.work-line_block__slider {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: end;
    margin-top: 20px;
}
.work-line__slider {
    border-bottom: 3px
    solid #4075ad;
    width: 430px;
}
.work-line_block__footer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: 20px;
}
.work-line__footer {
    border-bottom: 3px
    solid #ffffff;
    width: 80%;
    font-size: 2px;
}
.work-card__tittle {
    padding-top: 15px;
    padding-left: 30px;
}
.work-card__tittle a {
    color: #5c5c5c;
    font-size: 15px;
    font-family: 'Montserrat Bold';
    text-decoration: none;
}
.work-card__tittle a:hover {
    color: #828282;
}
.work-tittle__hr {
    height: 4px;
    color: #4075ad;
    background-color: #4075ad;
    line-height: 1;
    width: 100px;
}
.work-btn {
    font-size: 14px;
    color: #545454;
    background-color: #ebebeb;
    padding: 15px 50px 15px 50px;
    border: none;
    border-radius: 40px;
    margin-top: 10px;
    margin-bottom: 10px;
}
.hr-tittle_block {
    text-align: center;
}
.hr-tittle_block hr {
    width: 100px;
    -ms-flex-line-pack: center;
    align-content: center;
}
.work-card__about {
    color: #4075ad;
    font-size: 14px;
    font-family: 'Montserrat Medium';
    margin-top: 20px;
    padding-left: 30px;
    text-align: left;
}
.work-card__price {
    font-size: 18px;
    color: #5c5c5c;
    font-family: 'Montserrat Bold';
    padding-left: 30px;
    padding-bottom: 15px;
}
.work-card__text {

    height: 100%;
    padding-right: 15px;
    width: 55%;
}
.work-card__img {
    height: 100%;
    border-radius: 0px 15px 15px 0px;
}
.work-card__row {
    margin-top: 30px;
}
.federal-block__a a,
.federal-block__min a {
    text-decoration: none;
    color: #5c5c5c;
}
.federal-block__a a:hover,
.federal-block__min a:hover {
    color: #111111;
}
.about {
    position: relative;
    background-image: url("../img/map.png");
    background-repeat: no-repeat;
    height: 885px;
    width: auto;
    margin-top: 30px;
      background-position: center;
}
.company-b {
    padding-bottom: 50px;
}

/* Style the tab */
.tab {
    overflow: hidden;
}

/* Style the buttons inside the tab */
.tab button {
    background-color: inherit;
    float: left;
    border: none;
    outline: none;
    cursor: pointer;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    color: white;
    font-size: 28px;
    font-family: 'Montserrat Medium';
}
.form-control{
	margin-bottom: 15px;
}
/* Change background color of buttons on hover */
.tab button:hover {
    color: #dbdbdb;
}

/* Create an active/current tablink class */
.tab button.active {
    color: #dbdbdb;
}

/* Style the tab content */
.tabcontent {
    display: none;
    padding: 6px 12px;
    border-top: none;
}
.dd {
    display: block;
}
.tabcontent {
    -webkit-animation: fadeEffect 1s;
    animation: fadeEffect 1s; /* Fading effect takes 1 second */
}

/* Go from zero to full opacity */
@-webkit-keyframes fadeEffect {
    from {opacity: 0;}
    to {opacity: 1;}
}
@keyframes fadeEffect {
    from {opacity: 0;}
    to {opacity: 1;}
}
.tabcontent-tittle {
    font-family: 'Montserrat Medium';
    font-size: 24px;
    color: white;
    padding-bottom: 110px;
    margin-top: 30px;
}
.tabcontent-tittle



.tabcontent-tittle,
.company-tittle {
    /* чтобы линии не выходили за ширину блока заголовка */
    overflow: hidden;
}

.tabcontent-tittle:after,
.company-tittle__line:after,
.federal-tittle__line:after {
    content: '';
    /* делаем линию строчно-блочной */
    display: inline-block;
    /* выравниваем вертикально по середине */
    vertical-align: middle;
    /* не позволяем ширине превысить 100% (будет добавлен бордюр) */
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    /* установка ширины в 100% делает линию равной ширине тега заголовка
    ** благодаря этому линия заполнит все свободное пространство
    ** слева и справа от текста
    */
    width: 60%;
    height: 3px;
    background: #ffffff;
    /* добавляем к линии левый и правый бордюр цветом основного фона заголовка
    ** благодаря этому создается нужный отступ между линиями и текстом
    */
    border: solid transparent;
    border-width: 0 10px;
}
.tabcontent-tittle:after,
.company-tittle__line:after,
.federal-tittle__line:after {
    /* смещаем правую линию вправо отрицательным отступом, равным 100% ширины
    ** благодаря этому линия встает справа от текста
    */
    margin-right: -100%;
    margin-left: 10px;
}
.company-tittle__line:after {
    width: 500px;
    height: 3px;
    background: #616161;
}
.federal-tittle__line:after {
    width: 500px;
    height: 3px;
    background: #616161;
}



.tabcontent-text {
    font-size: 20px;
    font-family: 'Montserrat Regular';
    margin-top: 50px;
    color: white;
}
.tabcontent-right {
    padding-left: 30px;
    padding-top: 30px;
}
.tablinks-1 {
    padding-top: 120px;
}
.tab-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-top: 40px;
}
.tab-flex hr {
    height: 3px;
    color: white;
    background-color: white;
    text-align: left;
    padding: 0;
    margin: 1px;
}
.tablinks {
    text-align: left;
}

.company-tittle {
    font-family: 'Montserrat Medium';
    font-size: 24px;
    margin-top: 30px;
}
.company-text {
    font-size: 16px;
    font-family: 'Montserrat Regular';
    padding-top: 30px;
    text-align: justify;
}
.company-list {
    text-decoration: none;
    font-size: 16px;
    font-family: 'Montserrat Regular';
    padding-top: 30px;
    padding-left: 0;
    margin-left: 0;
}
.company-list>li {
    list-style-type: none;
}
.federal {
    position: relative;
    background-image: url("../img/federal.png");
    background-repeat: no-repeat;
    height: 535px;
    width: auto;
      background-position: center;
}
.federal-tittle {
    font-size: 24px;
    font-family: 'Montserrat Medium';
    color: #5c5c5c;
    padding: 35px;

}
.federal-block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
}
.federal-block p {
    padding-top: 30px;
    margin-left: 10px;
    font-size: 16px;
    font-family: 'Montserrat Medium';
}
.federal-block__min {
    padding-top: 20px !important;
}
.federal-row {
    margin-top: 50px;
}
footer {
    position: relative;
    background-image: url("../img/footer.jpg");
    background-repeat: no-repeat;
    height: 515px;
    width: auto;
      background-position: center;
}
footer h2 {
    text-transform: uppercase;
    font-size: 36px;
    font-family: 'Montserrat SemiBold';
    text-align: center;
    padding-top: 45px;
    color: white;
}
.footer-left {
    color: white;
    text-transform: uppercase;
    font-size: 10px;
    font-family: 'Montserrat SemiBold';
}
.footer-left span {
    display: block;
    padding-top: 20px;
}
.footer-right {
    color: white;
    text-transform: uppercase;
    font-size: 14px;
    font-family: 'Montserrat SemiBold';
    text-align: right;
    margin-top: 30px;
}
.footer-right span {
    display: block;
    padding-top: 10px;
}
.footer-right a {
    color: white;
    text-decoration: none;
}
.footer-right a:hover {
    color: #e0e0e0;
}
.footer-right p {
    margin-top: 20px;
}
.footer-adress {
    color: white;
    text-transform: uppercase;
    font-size: 12px;
    padding-top: 35px;
    font-family: 'Montserrat SemiBold';
    text-align: center;
}
.footer-btn {
    color: #666666;
    font-size: 14px;
    background-color: white;
    border-radius: 40px;
    border: none;
    padding: 15px 60px 15px 60px;
    margin-top: 55px;
}
.footer-left a{
    color: #fff;
}
.menu-footer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 20px;
    text-align: center;
}
.menu-footer ul {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: normal !important;
    -ms-flex-direction: row !important;
    flex-direction: row !important;
    margin-right: auto !important;
}
.menu-footer a {
    color: white;
    text-transform: uppercase;
    font-size: 10px;
    font-family: 'Montserrat SemiBold';
}
.menu-footer a:hover {
    color: #ececec;
}

.cop-left {
    font-size: 10px;
    color: white;
    text-transform: uppercase;
    font-family: 'Montserrat SemiBold';
}
.cop-right a {
    font-size: 10px;
    color: white;
    text-transform: uppercase;
    text-decoration: none;
    font-family: 'Montserrat SemiBold';
}
.cop-right {
    text-align: right;
}
.cop {
    margin-top: 40px;
}
/*----------------------- Спойлер ---------------------------------*/
.spoiler {
    text-align: center;
    padding-top: 30px;
}
.btn-spoiler{
    color: #fff;
    background-color: #4d69bc;
    border-color: #4d69bc;
    width: 200px;
    font-size: 18px;
    border-radius: 10px
}
.btn-spoiler:hover {
    color: papayawhip;
}
.sp {
    height: 840px;
    overflow: hidden;
}
.openSP {
    height: 100%;
    padding-bottom: 40px;
}


.calc-form-btn {
    margin-top: 20px;
    margin-bottom: 30px;
}
.btn-calc {
    margin-top: 30px;
    margin-bottom: 40px;
}
.form-calc h3 {
    font-size: 20px;
    text-transform: uppercase;
    margin-top: 30px;
    margin-bottom: 20px;
    text-align: center;
    font-family: 'Montserrat SemiBold';
}
.header-contact-2 {
    display: none;
}
.navbar-brand {
    display: none;
}
#phoca-dl-category-box .pd-category h3.pd-ctitle, #phoca-dl-file-box .pd-file h3.pd-ctitle, #phoca-dl-download-box .pd-file h3.pd-ctitle {
  padding: 5px;
  background: #fafafa;
  border: 1px solid #e9e9e9;
  margin-bottom: 7px;
  margin-top: 20px;
}
.pd-float {
  position: relative;
  float: left;
  margin: 0px 3px;
  line-height: 22px;
}


@media (max-width: 1400px) {
    .work-card__tittle {
        padding-top: 5px;
        line-height: 0.8;
    }
    .work-card__price {
        font-size: 14px;
    }
}
@media (max-width: 1200px) {
    .header-contact__phone {
        font-size: 20px;
    }
    .icon-info-block {
        height: auto;
    }
    .work-card-r {
        margin-top: 30px;
    }
    .federal-block-mp {
        margin-top: 40px;
    }
    .federal {
        position: relative;
        background-image: none;
        height: auto;
        width: 100%;
        background-color: #e2e7eb;
        padding-bottom: 30px;
    }
    .federal-block {
        margin-top: 30px;
    }
    .federal-row {
        margin-top: 0;
    }
    .federal-tittle__line::after {
        width: 200px;
    }
    .icon-info-block__img {
        margin-bottom: 20px;
    }
    .slider-btn {
        padding: 10px 40px 10px 40px;
        margin-bottom: 20px;
    }
    .about {
        position: relative;
        /*background-image: none;
        background-repeat: no-repeat;*/
        background-color: #4075ad;
        height: auto;
        width: 100%;
        margin-top: 30px;
        padding-bottom: 30px;
    }
    .tabcontent-right__bg {

        height: auto;
        width: 100%;
        margin-top: 30px;
    }
    .tabcontent-left__bg {

        height: auto;
        width: 100%;
    }
    .tabcontent-right {
        padding-left: 0;
    }
    .tabcontent-tittle {
        padding-bottom: 30px;
    }
    .tablinks-1 {
        padding-top: 5px;
    }
    .tab button {
        font-size: 20px;
    }
    .tab-flex {
        margin-top: 20px;
    }
    .tabcontent-text {
        margin-top: 0;
    }
    .tabcontent-tittle:after,
    .company-tittle__line:after,
    .federal-tittle__line:after {
        /* смещаем правую линию вправо отрицательным отступом, равным 100% ширины
        ** благодаря этому линия встает справа от текста
        */
        margin-right: 0;
        margin-left: 0;
    }
    .header-contact-2 {
        display: block;
    }
}

@media (max-width: 991px) {
   .p_head{
    font-size: 24px;
    text-align: center;
    font-weight: 900;
    padding: 20px 0px 0px 0px;
    margin-bottom: 0;
}
.p_grey{
    padding-top: 5px;
    color: grey;
    text-align: center;
}
.p_top25{
    padding-top: 0px;
    text-align: center;
}
   #flex-container > div {
    width: 100%; 
    margin: 0px; 
    padding: 5px; 
    text-align: center;
    }

    .icon-info-block__img {
        display: none;
    }
    .icon-info-block {
        display: none;
        padding-bottom: 30px;
    }
    footer {
        background-image: none;
        background-repeat: no-repeat;
        background-color: #2e5279;
        height: auto;
        width: 100%;
    }
    .menu-footer ul {
        -webkit-box-orient: vertical !important;
        -webkit-box-direction: normal !important;
        -ms-flex-direction: column !important;
        flex-direction: column !important;
        margin-right: auto !important;
    }
    .menu-footer {
        text-align: center;
    }
    .mx-right li {
        padding-left: 0;
    }
    .navbar-brand {
        display: block;
    }
    .navbar-brand img {
        max-height: 120px;
    }
    .logo-block {
        display: none;
    }
    .header-time {
        display: none;
    }
    .header-contact-2 a {
        display: block;
    }
    .header-contact-1 {
        display: none;
    }
}
@media (max-width: 768px) {
    
    .header-bg{
        padding-top: 0px;
        padding-bottom: 15px;
    }
    body{ 
  		font-size: 14px;
    }
  	h1{
  		font-size: 1.8rem;
    }
    .navbar-brand img {
        max-height: 50px;
    }
    .header-contact-2 {
        text-align: center;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }
    .header-contact__email {
        display: block;
    }
    .header-contact__phone {
        display: block;
    }
    .header-contact a {
        text-align: right;
    }
    .logo-tittle {
        font-size: 28px;
    }
    .slider-tittle {
        margin-top: 5px;
    }
    .work-card__text {
        background-color: transparent;
        height: auto;
        padding-right: 10px;
        width: auto;
    }
    .work-card__img {
        height: auto;
    }
    .work-card__tittle {
        font-size: 15px;
        padding-top: 25px;
    }
    .work-card__price {
        font-size: 12px;
    }
    .work-card-r {
        margin-top: 20px;
    }
    .work-tittle {
        margin-top: 0px;
    }
    .openSP {
      height: 100%;
      padding-bottom: 0px;
    }
    .tabcontent-right {
      padding-top: 0px;
    }
    .federal-tittle__line::after {
        width: auto;
    }
  	.custom-table {
	  font-size: 12px;
	}
 	h2{
  	  font-size: 1.5rem;
  	}
    .footer-left,
    .cop-left {
        text-align: center;
    }
    .footer-right {
        text-align: center;
    }
    .cop-right {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        text-align: center;
        padding-bottom: 20px;
    }
    .cop-right a {
        display: block;
    }
    .cop {
        margin-top: 10px;
    }
    .footer-btn {
        padding: 10px 70px 10px 70px;
    }
    footer h2 {
        font-size: 30px;
    }
    .work-tittle {
        font-size: 25px;
    }
    .about {
        background-color: #4075ad;
        height: auto;
        width: 100%;
        margin-top: 30px;
        padding-bottom: 30px;
        background-size: cover;
    }
}
@media (max-width: 468px) {
    .slider-tittle {
        font-size: 20px;
    }
    .slider-about {
        margin-top: 15px;
    }
    .slider-img_block {
        margin-top: 20px;
    }
    .work-card__img {
        display: none;
    }
    .work-card__text {
        background-color: #eff5f5;
        height: auto;
        width: 100%;
    }
   .custom-table td {
 	 font-size: 12px;
	}
}
.sp-cookie-consent-content{
  font-size: 13px;
}

.chk-polit {
        display: flex;
}
.chk-polit a {
        color: #11648b;
}
.chk-polit-w a {
        color: #333;
       
}

.chk-polit-w {
      padding-left: 15px;
    color: #333;
    font-size: 14px;
}
.chk
.chk-polit-text {
    font-size: 12px;
}
.chk-polit .qfchkbx input {
    width: 20px;
}


