@charset "utf-8";
@import "bootstrap.css";
@import "normalize.css";
@import "../node_modules/slick-carousel/slick/slick.css";
@import "../node_modules/magnific-popup/dist/magnific-popup.css";
@import "callback-btn.css";
@import "callback-modal.css";
@import "typography.css";

/* Класс для увеличения картинки */
.zoom-img {}

/* Класс для галлереи */
.gallery {}

/* Класс для формы */
.form-submit-toggle {}

/* Класс для кнопки заказать звонок */
.callback-toggle {}

/******** Magnific-Popup *********/

.mfp-fade.mfp-bg {
    opacity: 0;
    transition: all 0.15s ease-out;
}
.mfp-fade.mfp-bg.mfp-ready {
    opacity: 0.8;
}
.mfp-fade.mfp-bg.mfp-removing {
    opacity: 0;
}
.mfp-fade.mfp-wrap .mfp-content {
    opacity: 0;
    transition: all 0.15s ease-out;
}
.mfp-fade.mfp-wrap.mfp-ready .mfp-content {
    opacity: 1;
}
.mfp-fade.mfp-wrap.mfp-removing .mfp-content {
    opacity: 0;
}

/**********************************/

.main {
    display: flex;
}
.component {
    width: 100%;
}
.left, .right {
    width: 30%;
}

@font-face {
    font-family: 'Roboto-Light'; 
    src: url(../fonts/Roboto-Light.ttf) format('truetype');
}

@font-face {
    font-family: 'Roboto-Regular'; 
    src: url(../fonts/Roboto-Regular.ttf) format('truetype');
}

@font-face {
    font-family: 'Roboto-Bold'; 
    src: url(../fonts/Roboto-Bold.ttf) format('truetype');
}

@font-face {
    font-family: 'Akrobat'; 
    src: url(../fonts/Akrobat.ttf) format('truetype');
}


.all_cnt{
    /*min-height: calc(100vh - 238px);*/
}
.insidepage .item-page{
    min-height: calc(100vh - 502px);
}
body{
}
video{
    max-width: 100%;
    width: 100%;

height: 100%;
}
body p{
    margin-top: 0;
    color: #000;
    font-family: "Roboto-Light";
    font-size: 16px;
    margin-bottom: 10px;
}
p.h1,h1{
    text-align: left;
    font-family: "Roboto-Bold";
    font-size: 24px;
    margin-bottom: 35px;
/*  text-transform: uppercase;*/
}

.wrapper{
    max-width: 1920px;
    margin: 0 auto;
     min-height:100%;
   position:relative;
   overflow: hidden;
   min-width: 1200px;
}

.wrapper .container{
    width: 1170px;
}
.flexSA{
    display: flex;
    justify-content:space-around;
}

.flexSB{
    display: flex;
    justify-content:space-between;
}
.flexCenter{
    display: flex;
    justify-content:center;
}

.flexAI{
    display: flex;
    align-items:center;
}

.flexW{
    display: flex;
    flex-wrap:wrap;
}
.flexColumn{
    display: flex;
    flex-direction:column;
}
.flexStart{
    display: flex;
    justify-content:flex-start;
}
.flexEnd{
    display: flex;
    justify-content:flex-end;
}

/*header*/
header{
    position: relative;
    z-index: 15;
}
.headerWrap a.logo{
    margin-right: 15px;
}
p.slog{
    font-size: 24px;
    color: #666666;
}

.callback-toggle{
    width: 310px;
    text-align: center;
    padding: 16px 0;
    color: #fff;
    font-family: "Roboto-Bold";
    font-size: 16px;
    border: 2px solid #0099ff;
    background: #0099ff;
    transition:all 0.3s;
    position: relative;
    overflow: hidden;
    z-index: 15;
}
.callback-toggle::before, .callback-toggle::after {
    z-index: -1;
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: #fff;
    transition:all 0.3s;

}
.callback-toggle::before {
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
}
.callback-toggle:hover::before {

    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);

}
.callback-toggle::after {
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
}
.callback-toggle:hover::after {

    -webkit-transform: translateY(-50%);
    transform: translateY(50%);

}

.callback-toggle:hover{
  
    color: #0099ff;
}

.infoSite{
    background: #666666;
    padding: 10px 0;

}
.infoHead{
    padding: 0 50px;
}
.infoSite p,.infoSite a{
    font-size: 16px;
    font-family: "Roboto-Bold";
    color: #fff;
    padding-left: 30px;
    margin-bottom: 0;

}
p.phone{
    background: url(../images/phoneIcon.png) no-repeat left center;
}

a.mail{
    background: url(../images/mailIcon.png) no-repeat left center;
}

p.adres{
    background: url(../images/navIcon.png) no-repeat left center;
}

/*End header*/

/*main*/

.mainWrap ul li.parent{
    position: relative;
}

.mainWrap ul li > ul{
    position: absolute;
    left: 0;
    top: 100%;
    display: none;
}
.mainWrap ul li.parent:hover > ul{
    display: block;
}
.mainWrap ul li > ul li{
    border-bottom: 2px solid #009aff;
}

/*End main*/
/*sliderBlock*/

.mainWrap ul{
    display: flex;
    justify-content: space-between;
    margin-bottom: 0;
    background: #fff;
    position: relative;
    z-index: 30;
}
.mainWrap ul li{
    padding: 0 10px;
}
.mainWrap ul li a{
    font-size: 16px;
    font-family: "Roboto-Light";
    color: #000;
    padding: 15px;
    display: block;
    text-transform: uppercase;
    position: relative;
}
.mainWrap > ul > li > span.separator{
    font-size: 16px;
    font-family: "Roboto-Light";
    color: #000;
    padding: 15px;
    display: block;
    text-transform: uppercase;
    position: relative;
}
.mainWrap > ul > li > span.separator:before{
    opacity: 0;
    content: '';
    width: 100%;
    position: absolute;
    height: 4px;
    background: #009aff;
    bottom: 5px;
    left: 0;
    transition:all 0.3s;
}
.mainWrap > ul > li > span.separator:hover:before{
    opacity: 1;
     bottom: -3px;
}
.mainWrap ul li ul li a{
    font-size: 14px;
    padding: 5px 0;
}
.mainWrap > ul > li > a:before{
    opacity: 0;
    content: '';
    width: 100%;
    position: absolute;
    height: 4px;
    background: #009aff;
    bottom: 5px;
    left: 0;
    transition:all 0.3s;
}
.mainWrap ul li a:hover{
    text-decoration: none;
}
.mainWrap ul li a:hover:before,.mainWrap ul li.active a:before{
    opacity: 1;
     bottom: -3px;
}
.wrapMainFoot.mainWrap ul li.parent:hover > ul{
    top: auto;
    bottom: 100%;
}

/*End sliderBlock*/
.sliderBlock,.sliderTop,.topSlide{
    position: relative;
}
.sliderBlock{
    margin-top: -55px;
}
.sliderTop .slick-arrow{
    position: absolute;
    content: '';
    font-size: 0;
    border: none;
    width: 26px;
    height: 46px;
    top: calc(50% - 23px);
    z-index: 15;
}
.sliderTop .slick-prev{
    background: url(../images/arrPrev.png) no-repeat;
    left: 20px;
}

.sliderTop .slick-next{
    background: url(../images/arrNext.png) no-repeat;
    right: 20px;
}
.topSlide .txtBlock{
    position: absolute;
    left: 0;
    top: 100px;
    padding:  25px 100px 25px calc((100% - 1170px) / 2);
    background: linear-gradient(to right, rgba(0,0,0,0),rgba(0,0,0,0.6),rgba(0,0,0,0))
}
.topSlide .txtBlock p{
    font-size: 30px;
    color: #fff;
    margin-bottom: 0;
    text-transform: uppercase;
}
.topSlide .txtBlock p span{
    font-size: 51px;
    font-family: "Roboto-Bold";
}
/*banerMainBlock*/
.banerMainBlock{
    padding: 40px 0;
}
.nucBM{
    display: block;
    position: relative;
    width: 31%;
    margin-bottom: 25px;
    overflow: hidden;
}
.nucBM:before{
    position: absolute;
    content:'';
    bottom: 0;
    right: 100%;
    width: 100%;
    height: 4px;
    background: #0099ff;
    transition:all 0.4s;
}
.nucBM:hover:before{
    right: 0%;
}
.nucBM img{
    width: 100%;
}
.nucBM span{
    position: absolute;
    left: 10px;
    text-align: left;
    transition: all 0.4s;
    color: #fff;
    font-size: 20px;
    font-family: "Roboto-Bold";
    bottom: 15px;
    transition:all 0.4s;
    width: calc(100% - 20px);
}

.nucBM:hover span{
    bottom: calc(50% - 10px);
    
}




/*End banerMainBlock*/


/*aboutUsBlock*/

.aboutUsBlock{
    padding: 15px 0 60px;
}
.aboutUsBlock p{
    margin-bottom: 30px;
    text-align: justify;
}
.aboutUsBlock .txtBlock{
    padding-right: 30px;
}

/*End aboutUsBlock*/


/*preBlock*/
.preBlock{
    padding: 25px 0 30px;
    box-shadow: 0px 0px 13px 0px rgba(0,0,0,0.31);
}
.nucPre{
    text-align: center;
    width: 23%;
}
.nucPre .line{
    width: 100px;
    height: 4px;
    background: #0099ff;
    margin: 20px auto 15px;
}
.nucPre p span{
    font-family: "Roboto-Bold";
}









/*End preBlock*/






/*aboutUs2*/

.aboutUs2{
    padding: 55px 0 50px;
}
.aboutUs2 img{
    border-radius: 5px;
}
.aboutUs2 p{
    margin-bottom: 30px;
    text-align: justify;
}
.aboutUs2 .txtBlock{
    padding-left: 45px;
    padding-right: 15px;
}

/*End aboutUs2*/

/*footer*/
footer{
    padding: 20px 0 35px;
    background: #3b3b3b;
}
footer p,footer a{
    color: #fff;
    font-size: 16px;
    font-family: "Roboto-Light";
    margin-bottom: 0;
}
footer .left a{
text-decoration: underline; 
}
footer a:hover{
    color: #fff;
    
}
footer .callback-toggle{
    margin-bottom: 5px;
}
.right p span{
    font-family: "Roboto-Bold";
}
.wrapMainFoot{
    margin-bottom: 3px;
}
.center{
    display: grid;
    align-items: start;
    grid-template-columns:auto auto;
    justify-items: start;
}
.center span{
    color: #fff;
    font-size: 16px;
    font-family: "Roboto-Light";
}
.nameInfoFoot{
    margin-right: 12px;
    position: relative;
}
.rightInfoFoot{
    position: relative;
    background: #3b3b3b;
}
.nameInfoFoot:before{
    position: absolute;
    content: '';
    width: 100px;
    height: 1px;
    border-bottom: 1px dashed #fff;
    bottom: 4px;
    left: calc(100% + 2px);

}
/*End footer*/
/*modalForm*/
.modalForm.callback-modal{
    min-width: 750px;
    width: 750px;
    border-radius: 5px;
    padding: 35px 30px 20px;
}
.modalForm .callback-modal__headline{
    font-size: 30px;
    font-family: "Roboto-Light";
    color: #000;
    margin-bottom: 20px;
}
.modalForm .callback-modal__headline span{
    font-family: "Roboto-Bold";
    text-transform: uppercase;
     font-size: 28px;
}
#checkMF{
    display: none;
}

.modalForm  input{
    width: 100%;
    border-radius: 5px;
    background: #fff;
    border: 2px solid #e8e8e8;
    font-size: 16px;
    font-family: "Roboto-Regular";
    color: #000;
    margin-bottom: 18px;
    padding: 7px 30px;
}

#checkMF:checked + label::before {

    font-size: 23px;
    color: #000;
    text-align: center;
    content: "\2713";
    line-height: 25px;
    font-family: "Roboto-Bold";

}
.modalForm .callback-modal__concert-label{
    position: relative;
    padding-left:45px;
    margin: 0 0 30px;
    text-align: left;
}
.modalForm .callback-modal__concert-label,.modalForm .callback-modal__concert-label a{
    font-size: 16px;
    font-family: "Roboto-Light";
    color: #000;
}
.modalForm .callback-modal__concert-label a{
    text-decoration: underline;
}
.callback-modal__concert-label::before {

    content: "";
    border-radius: 5px;
    display: inline-block;
    width: 30px;
    height: 30px;
    margin-right: 10px;
    position: absolute;
    left: 0px;
    bottom: calc(50% - 15px);
    border: 2px solid #e8e8e8;

}
.modalForm .callback-modal__button{
    width: 240px;
    text-align: center;
    text-transform: uppercase;
    color: #fff;
    border-radius: 5px;
    border: 2px solid #0099ff;
    background: #0099ff;
    font-size: 16px;
    font-family: "Roboto-Regular";
    padding: 9px 0;
    display: block;
}
.wrapFormM{
    padding: 0 30px;
}
.modalForm .mfp-close{
    font-family: "Roboto-Bold";
    font-size: 48px;
    color: #e8e8e8;
}
/*End modalForm*/

/*pageStyle*/
.insidepage .item-page{
    padding: 15px 0;
}
.insidepage .item-page ul li,.insidepage .item-page ol li{
    font-family: "Roboto-Light";
font-size: 16px;
}
.insidepage .item-page ul,.insidepage .item-page ol{
    margin-bottom: 10px;
    padding-left: 25px;
}
.insidepage .item-page ul li{
    position: relative;
}
.insidepage .item-page ul li::before {

    position: absolute;
    width: 15px;
    content: '';
    height: 15px;
    border-radius: 50%;
    background: #0099ff;
    left: -25px;
    top: 3px;

}
/*End pageStyle*/
/* --- Media styles --- */

@media screen and (min-width:1200px){

}
@media screen and (max-width:1199px){
    

}
@media screen and (max-width:1024px){

    
}
@media screen and (max-width:991px){
    

}

    

@media screen and (max-width:767px){
    

}
    
@media screen and (max-width:675px){
    
}
@media screen and (max-width:640px){
    
}
@media screen and (max-width:600px){
    
}
@media screen and (max-width:485px){
    
}
@media screen and (max-width:425px){}
@media screen and (max-width:400px){
    
}
@media screen and (max-width:370px){
    }