/**
    Joomla Site CSS Template
    by ak@virtech.kz
**/

/* body and html main things */

html, body{
    min-width: 760px;

    font-family: 'ProximaNovaRegular', sans-serif;
		font-size: 16px;
}


/* style for main page */

address{
	margin: 0;
}

.title{
	padding: 0 10px;
	margin: 80px 0 50px 0;

	font-family: ProximaNovaRegular;
	text-transform: uppercase;
	text-align: center;
	font-size: 35px;
	color: #0067A3;
}

h1.logo{
    margin: 0;
    padding: 0;
}
h1.logo a{
    display: inline-block;
    width: 200px;
    height: 109px;
    background: url(img/logo.png) no-repeat center center;
    background-size: 86%;
    text-indent: -9999px;
    transition: .35s ease filter;
}
h1.logo a:hover{
    filter: contrast(1.3);
    -webkit-filter: contrast(1.3);
    -moz-filter: contrast(1.3);
    transition: .35s ease filter;
}

.title--bold{
	font-family: ProximaNovaBold;
}

.headerInfo{
	padding: 10px 0;

	background-color: #3B3B3B;
	font-family: ProximaNovaRegular;
	color: #fff;
	text-align: center;
}

.headerInfo__phoneLink,
.headerInfo__phoneLink:focus{
	font-family: ProximaNovaRegular;
	color: #fff;
	text-decoration: none;
}

.headerInfo__phoneLink:hover{
	color: #FF8421;
	text-decoration: none;
	transition-property: color;
	transition-duration: 0.1s;
}

.inBlock{
	display: inline-block;

	padding: 0 10px;
	vertical-align: middle;
}

.headerPhone__block{
	display: inline-block;

	padding-left: 5px;
	vertical-align: middle;
}

.headerAddress__text{
	display: inline-block;

	padding-left: 5px;
	text-align: left;

	vertical-align: middle;
}

.headerLogo{
	padding: 0 20px;

	border-left: 1px solid #fff;
	border-right: 1px solid #fff;

	font-size: 30px;
}

.headerLogo__text{
  vertical-align: middle;
}

.headerLogo__text--color{
	font-family: ProximaNovaBold;
	color: #FF8421;
}

/* menu */
.headerMenu{
	background-image: url('img/backgroundMenu.jpg');
	background-position: center center;
}

.headerMenu ul{
	display: table;

	margin: 0 auto;
	padding: 0;

	list-style-type: none;
}

.headerMenu li{
	display: table-cell;

	margin: 0 30px;
}

.headerMenu li a{
	position: relative;

	padding: 15px;

	font-family: ProximaNovaLight;
	font-size: 20px;
	color: #fff;

	transition-property: color;
	transition-duration: 0.2s;
}

.headerMenu li a:before{
	content: "";

	position: absolute;
	bottom: 0;
	left: 0;

	width: 100%;
	height: 4px;
	background-color: #FF8421;

	opacity: 0;

	transition-property: opacity;
	transition-duration: 0.2s;
}

.headerMenu li a:hover{
	background-color: inherit;
	color: #FF8421;
}

.headerMenu li a:focus{
	background-color: inherit;
}

.headerMenu li a:hover:before{
	opacity: 1;
}

.headerMenu .current a{
  color: #FF8421;
}

.footerMenu .current a{
  color: #FF8421;
}

.headerMenu .current a::before{
  opacity: 1;
}

.decorationBackground{
	display: table;

	width: 100%;
	height: calc(100vh - 120px);
  max-height: 700px;

	background-image: url('img/backgroundHeaderText.jpg');
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	color: #fff;
	text-align: center;
}

.decorationBackgroundWrap{
	display: table-cell;
	vertical-align: middle;
}

.decorationBackground__container{
	margin: 0 auto;

	width: 560px;

	font-size: 16px;
	display: none;
}

.decorationBackground__title{
	margin: 10px 0;

	font-family: ProximaNovaRegular;
	font-size: 3.5em;
	text-transform: uppercase;
	opacity: 0;

	animation-name: smoothly;
	animation-delay: 0.8s;
	animation-duration: 1s;
	animation-fill-mode: forwards;
}

.decorationBackground__text{
	margin: 0 auto;

	width: 500px;

	opacity: 0;
	font-family: ProximaNovaRegular;
	font-size: 1em;

	animation-name: smoothly;
	animation-delay: 1.2s;
	animation-duration: 1s;
	animation-fill-mode: forwards;
}

.ourService__item{
	position: relative;

	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
  color: #fff;
  text-align: center;
}

.ourServices{
	max-width: 1920px;

	margin: 0 auto;

	overflow: hidden;
	font-size: 14px;
	color: #fff;
	text-align: center;
}

.ourService__item{
	height: 200px;

	overflow: hidden;
}

.ourService__item.up:hover .ourServicesContainer{
	top: 290px;
	overflow:auto;
}
.ourService__item:hover .ourServices__text{
	opacity:1;
}
.ourService__item.up:hover .ourServices__title.long-ttl{
	margin-top:0;
}
.ourServicesContainer{
	position: absolute;
	top: 500px;
	height:350px;
	width: 100%;

	padding: 80px 10px 20px 10px;

	/* background-image: linear-gradient(to top, rgba(5,5,5,0), rgba(10,10,10,0.7),rgba(10,10,10,0.8),rgba(10,10,10,0.7), rgba(5,5,5,0)); */
	background: -moz-linear-gradient(top, rgba(0,0,0,0) 0%, rgba(0,0,0,0.75) 32%, rgba(0,0,0,0.75) 100%);
	background: -webkit-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.75) 32%,rgba(0,0,0,0.75) 100%);
	background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,0.75) 32%,rgba(0,0,0,0.75) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#a6000000',GradientType=0 );

	transform: translateY(-100%);
	transition:all .5s ease;
	overflow:visible;
}

.ourServices__title{
	margin: 0 0 5px 0;
	
	font-size: 1.5em;
	font-weight: bold;
	color:#fff;
}
.ourServices__title.long-ttl{
	margin-top:-20px;
	color:#fff;
}
.ourService__item .ttl-link:hover{
	color:yellow;
}
.ourService__item .ttl-link:hover >.ourServices__title{
	color:yellow;
}
.ourServices__text{
	margin: 5px 0;
	
	line-height: 0.9em;
	opacity:0;
	transition:all .5s ease;
}
.ourServices__text ul{
	text-align:left;
}
.ourServices__text ul a{
	color:#fff;
}
.ourServices__text ul a:hover{
	color:yellow;
}
.service-item{
	margin-bottom:30px;
}

.ourServices__link{
	display: inline-block;

	padding: 5px 10px;

	opacity: 0;
	background-color: #0067A3;
	font-family: ProximaNovaRegular;
	color: #fff;

	transition-property: opacity, background-color;
	transition-duration: 0.3s, 0.2s;
}

.ourServices__link:hover{
	text-decoration: none;
	background-color: #004167;
	color: #fff;
}

.ourServices__link:focus{
	text-decoration: none;
	color: #fff;
}

.ourService__item:hover .ourServices__link{
	opacity: 1;
}

.ourAdvantages{
	margin-top: 80px;
	padding: 80px 0 170px 0;

	background-image:url('img/backgroundourwork.jpg');
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
}

.ourAdvantagesWrap{
	max-width: 1920px;

	margin: 0 auto;
}

.ourAdvantages__title{
	padding: 0;
	margin: 0;

	font-family: ProximaNovaRegular;
	text-transform: uppercase;
	text-align: center;
	font-size: 35px;
	color: #fff;
}

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

.ourAdvantagesItem{
	display: table;

	width: 250px;
	height: 250px;

	margin: 90px auto auto;
	padding: 0 15px;

	border: 2px solid #fff;
	border-radius: 50%;

	text-align: center;
	color: #fff;
	font-size: 16px;
}

.ourAdvantagesItemWrap{
	display: table-cell;
	vertical-align: middle;
}

.ourAdvantagesItem__number{
	font-family: ProximaNovaBold;
	font-size: 1.6em;
  line-height: 0.9;

	transition-property: transform;
	transition-duration: 0.4s;
}

.ourAdvantagesItem__text{
  margin-top: 4px;

	font-size: 0.8em;

	transition-property: transform;
	transition-duration: 0.4s;
}

.ourAdvantagesItem__text--bold{
	font-family: ProximaNovaBold;
}

.ourAdvantagesItem:hover .ourAdvantagesItem__number,
.ourAdvantagesItem:hover .ourAdvantagesItem__text{
	transform: rotateX(380deg);
}

.reviews{
	max-width: 1920px;

	margin: 0 auto;

	overflow: hidden;
}

.reviewsItem{
  height: 300px;

	padding: 8px;

  overflow-y: scroll;
	border: 3px solid #0067A3;
  background-image: url('img/commentBackground.png');
  background-repeat: no-repeat;
  background-position: 95% 0;
	font-size: 16px;
}

.reviewsItem::-webkit-scrollbar-button,
.ourServicesContainer::-webkit-scrollbar-button {
background-image:url('');
background-repeat:no-repeat;
width:5px;
height:0px
}

.reviewsItem::-webkit-scrollbar-track,
.ourServicesContainer::-webkit-scrollbar-track {
background-color:transparent;
}

.reviewsItem::-webkit-scrollbar-thumb,
.ourServicesContainer::-webkit-scrollbar-thumb {
-webkit-border-radius: 0px;
border-radius: 0px;
background-color:#45a5dc;
}

.reviewsItem::-webkit-scrollbar-thumb:hover,
.ourServicesContainer::-webkit-scrollbar-thumb:hover{
background-color:#45a5dc;
}

.reviewsItem::-webkit-resizer,
.ourServicesContainer::-webkit-resizer{
background-image:url('');
background-repeat:no-repeat;
width:4px;
height:0px
}

.reviewsItem::-webkit-scrollbar,
.ourServicesContainer::-webkit-scrollbar{
width: 4px;
}

.reviewsItem__author{
	margin: 0;

  line-height: 0.9;
	font-family: ProximaNovaBlack;
	font-size: 1.4em;
	color: #0067A3;
}

.reviewsItem__team{
	margin: 5px 0 0;

	font-family: ProximaNovaBold;
	font-size: 1.2em;
	color: #0067A3;
}

.reviewsItem__date{
	font-size: 0.9em;
	color: #696969;
}

.reviewsItem__text{
	margin-top: 10px;

	color: #696969;
}

.buttonStdWrap{
	margin-top: 40px;

	text-align: center;
}

.buttonStd,
.btn{
	display: inline-block;

	padding: 5px 10px;

	border: 1px solid #0067A3;
    border-radius: 0;
	background-color: #0067A3;
	font-size: 20px;
	color: #fff;

	transition-property: color, background-color;
	transition-duration: 0.2s;
}

.buttonStd:hover,
.btn:hover{
	background-color: inherit;
	text-decoration: none;
	color: #0067A3;
}

.buttonStd:focus,
.btn:focus,
.btn:active{
	text-decoration: none;
	color: #fff;
    outline: none;
}

.footer{
	margin-top: 40px;
	padding: 40px 0;

	background-color: #3B3B3B;
	text-align: center;
}

.companyLogo__text{
	padding-left: 5px;

	vertical-align: middle;
	color: #fff;
	font-size: 30px;
}

.companyLogo__text--bold{
	font-family: ProximaNovaBold;
	color: #FF8421;
}

.companyInfo{
	margin: 15px 0 20px 0;

	font-size: 16px;
	color: #fff;
}

.companyInfo__link{
	color: #fff;

	transition-property: color;
	transition-duration: 0.2s;
}

.companyInfo__link:hover{
	text-decoration: none;
	color: #FF8421;
}

.companyInfo__link:focus{
	text-decoration: none;
	color: #fff;
}

.companyInfo__address{
	margin-top: 5px;
}

.footerMenu{
	background-color: #656565;
}

.footerMenu ul{
	margin: 0;
	padding: 0;

	list-style-type: none;
}

.footerMenu li{
	display: inline-block;

	font-size: 18px;
	text-transform: uppercase;
}

.footerMenu li a{
	margin: 0 5px;
  padding: 10px 15px;

	color: #fff;

	transition-property: color;
	transition-duration: 0.2s;
}

.footerMenu li a:hover{
	background-color: inherit;
	color: #FF8421;
}

.footerMenu li a:focus{
	background-color: inherit;
	color: #fff;
}

.developed{
	margin-top: 15px;

	font-size: 16px;
	color: #fff;
}

.developed__logo{
	width: 100px;
}

/* single post */

.pageTitle{
  margin: 0 0 20px 0;
	padding-top: 50px;

	font-family: ProximaNovaBold;
  font-size: 35px;
	text-align: center;
	text-transform: uppercase;
	color: #0067A3;
}

.articleContent{
  max-width: 1920px;

  margin: 50px auto 0 auto;
  padding: 0 20px;

  line-height: 1;
  font-size: 16px;
  text-indent: 15px;
}
article img{
	max-width: 100%;
}
/* contacts */

.wrapContants{
	margin: 0 10px;
}

.contacts{
	position: relative;

  max-width: 1920px;

	height: 350px;

  margin: 80px auto 0 auto;

  font-size: 13px;
}

.contacts__maps{
	position: absolute;
	top: 0;

	width: 100%;
	height: 100%;
}

#map {
    width: 100%;
    height: 100%;
}

.contacts__infoWrap{
	max-width: 1100px;

	margin: 0 auto;
  padding-left: 100px;
}

.contacts__info{
	display: inline-block;

  line-height: 1.3;
	background-color: #0067A3;
	color: #fff;
}

.contacts__info{
  position: relative;

  padding: 20px 10px;

  transform: translateY(-30px);
}

.contacts__info::after{
  content: "";
  position: absolute;
  top: 0;
  left: 0;

  transform: translateX(-100%);

  border-bottom: 30px solid #1E4252;
	border-left: 28px solid transparent;
}

.contacts__link{
  text-decoration: none;
  color: #fff;
}

.contacts__link:hover{
  text-decoration: none;
  color: #FF8421;
}

.contacts__link:focus{
  text-decoration: none;
  color: #fff;
}

.contacts__infoText:not(:nth-child(1)){
  margin-top: 10px;
}

.contacts__infoText{
  margin-bottom: 0;

  font-family: ProximaNovaBold;
}

.popup{
  padding: 20px 10px 0 10px;

  color: #fff;
}

/* style for formAddComment */

.formAddComment{
  font-size: 16px;
}

.formAddComment__nameField{
  font-size:0.9em;
}

.formAddComment__nameField__input input{
  width: 95%;
}

.formAddComment__textArea textarea{
  width: 95%;
  max-width: 95%;

  margin: 0;
}

.formAddComment__error--main{
  font-size: 1.1em;
  color: red;
}

.formAddComment__Button button[type="submit"]{
  margin-top: 10px;

  background-color: #0067A3;
}

.formResponsive .formAddComment__error .formError{
  margin: 0 0 5px 0;
  padding: 0;
}

.rsform-block-phone-mail3,
.rsform-block-answer3{
	display: none !important;
}
.formResponsive *{
	box-sizing: border-box !important;
}
.formResponsive h2{
	text-align: center;
	margin: 0 0 30px 0;
}
.formResponsive .formHorizontal p.formDescription,
.formResponsive .formHorizontal .formValidation{
	display: none;
}
.formResponsive .formHorizontal .formControls{
	margin: 0;
}
.formResponsive .formHorizontal .formControlLabel{
	float: none;
	width: 100%;
	color: #444;
	font-weight: normal;
	text-align: left;
}
.formResponsive textarea, 
.formResponsive input[type="text"]{
	width: 100%;
}
.formResponsive textarea{
	resize: none;
	max-width: 100%;
}
.formResponsive input[type="text"]{
	height: 28px;
}
.formResponsive .formHorizontal .rsform-block {
    margin-bottom: 0;
}
.thanks{
	padding: 20px 0;
	text-align: center;
}


/* media screen */

@media screen and ( min-width: 1300px){
	.ourService__item{
		height: 290px;
	}
}

@media screen and ( max-width: 991px ){
	.ourService__item{
		height: 300px;

		margin: 10px 0;
	}
	.reviewsItem{
		margin-top: 20px;
	}
	.ourServicesContainer{
		top: 115%;
	}
	.ourAdvantagesItem{
		margin-top: 50px;
	}
}

@media screen and ( max-width: 768px ){
  .headerLogo{
    padding: 0 5px;
  }
	.ourService__item{
		height: 450px;
	}
	.ourServicesContainer{
		top: 100%;

		font-size: 18px;
	}
	.ourServices__link{
		margin-top: 10px;

		opacity: 1;
	}
  .reviewsItem{
    height: auto;

    overflow-y: auto;
  }
}

/*animation */
@keyframes smoothly {
	0%{
		opacity: 0;
	}
	100%{
		opacity: 1;
	}
}


/* entries */
.aq-sign,
.aq-view{
    text-align: center;
}
.entries{
    
}
.entries .item{
    padding: 15px;
}
.entries .item > div{
    padding: 15px;
}
.entries .item .question{
    border: 3px solid #0068a1;
    margin-right: 5%;
}
.entries .item .question .name{
    font-size: 22px;
    font-family: ProximaNovaBold;
    text-transform: uppercase;
    color: #0068a1;
    padding: 10px 10px 10px 50px;
    background: url(img/question.png) no-repeat left center;
    display: inline-block;
}
.entries .item .question .date{
    display: inline-block;
    font-size: 14px;
    color: #666;
}
.entries .item .question .text{
    
}

.entries .item .answer{
    border: 3px solid #fd8900;
    margin-left: 5%;
    margin-top: 15px;
}
.entries .item .answer .name{
    font-size: 22px;
    font-family: ProximaNovaBold;
    text-transform: uppercase;
    color: #fd8900;
    padding: 10px 10px 10px 50px;
    background: url(img/answer.png) no-repeat left center;
}
.entries .item .answer .text{
    
}

.entry-form{
    text-align: center;
    padding: 15px 15px;
}
.entry-form .small{
    color: red;
}
.entry-form .control-group{
    margin-bottom: 15px;
}
.entry-form .control-label{
    display: none;
}
.entry-form input[type="text"],
.entry-form textarea{
    padding: 10px 15px;
    width: 351px;
    text-align: center;
}

/* vacancy */
.vacancy .items{
    display: table;
    width: 100%;
    padding: 0 15px;
}
.vacancy .items .item{
    padding: 15px;
    margin-bottom: 15px;
}
.vacancy .items .item .vacancy-title a{
    font-size: 22px;
    font-family: ProximaNovaBold;
    text-transform: uppercase;
    padding: 10px 10px 10px 50px;
}
.vacancy .items .item .intro{
    
}
.vacancy .items .item:nth-child(odd){
    border: 3px solid #0068a1;
    margin-right: 5%;
}
.vacancy .items .item:nth-child(even){
    border: 3px solid #fd8900;
    margin-left: 5%;
}
.vacancy .items .item:nth-child(odd) .vacancy-title a{
    background: url(img/profile-blue.png) no-repeat left top;
    background-size: 40px;
    color: #0068a1;
}
.vacancy .items .item:nth-child(even) .vacancy-title a{
    background: url(img/profile-orange.png) no-repeat left top;
    background-size: 40px;
    color: #fd8900;
}
.vacancy .items .item a.readmore{
    display: inline-block;
	padding: 5px 10px;
	border: 1px solid #0067A3;
    border-radius: 0;
	background-color: #0067A3;
	font-size: 20px;
	color: #fff;
	transition-property: color, background-color;
	transition-duration: 0.2s;
}
.vacancy .items .item a.readmore:hover{
	background-color: inherit;
	text-decoration: none;
	color: #0067A3;
}
.vacancy .items .item a.readmore:focus,
.vacancy .items .item a.readmore:active{
	text-decoration: none;
	color: #fff;
    outline: none;
}

.vacancy .items .item:nth-child(even) a.readmore{
    background: #fd8900;
    border: 1px solid #fd8900;
}
.vacancy .items .item:nth-child(even) a.readmore:hover{
    background-color: inherit;
	text-decoration: none;
    border: 1px solid #fd8900;
	color: #fd8900;
}

.moduletable h2,
.moduletable h3{
	display: none;
}
.moduletable .rsform{
	width: 500px;
	margin: 0 auto;
}
.moduletable .rsform input[type="text"],
.moduletable .rsform textarea{
	padding: 15px 10px;
}
/*price*/
.itemid173 table td,
.itemid173 table th,
.itemid176 table td,
.itemid176 table th{
	padding:5px;
	border:none;
	text-indent:0;
}
.itemid173 table th,
.itemid176 table th{
	padding:20px 5px;
}
.itemid173 table th span a,
.itemid176 table th span a{
	color: black;
}
.itemid173 table th span,
.itemid176 table th span{
	font-size: 14px;
	font-weight: normal;
}
.itemid173 table tr,
.itemid176 table tr{
	border-bottom:1px solid #d1d1d1;
}
.itemid173 table tr:first-child,
.itemid176 table tr:first-child{
	border:none;
}
.itemid173 table td:last-child,
.itemid176 table td:last-child:not(:first-child){
	text-align:right;
}
.footer-seo{
    font-size: 12px;
    color: #999;
    text-align: center;
    padding: 10px 0 10px;
    background: #3B3B3B;
}
.header-seo{
    display: none;
    font-size: 12px;
    color: #999;
    text-align: center;
    padding: 10px 0 10px;
    background: #3B3B3B;
}
/*price*/