:root{
	--accent-color: #007CA7;
	--accent-color-dark: #085772;
	--fontsize: 16px;
	--textcolor: #333;
	--dark: #192847;
	--lightendark: #323e57;
	--deep: #0c1a36;
	--lightendeep: #27385a;
	--lineheight: 1.7;
	--userfont: raleway, sans-serif;
	--size: 75px;
	--size-plus: 95px;
	--size-sm: 58px;
	--border-opacity: .1;
	--border-opacity2: .2;

	--grid-gutter-width: 30px;
	--gutter: var(--grid-gutter-width);
}

::placeholder{
	color: #666;
}
h1, h2, h3, h4, h5, h6{
	color: #fff;
}

::selection{
	background-color: var(--accent-color);
	color: #000;
}
input, textarea {
  outline: none; 
}
input:focus:required:invalid, textarea:focus:required:invalid {
	border-color: red; 
}
input:required:valid, textarea:required:valid {
	border-color: green; 
}

#cursor{
	position: absolute;
	width: 17px;
	height: 17px;
	background-color: var(--accent-color);
	z-index: 10000;
	border-radius: 100%;
	user-select: none;
	pointer-events: none;
	margin: -8.5px 0 0 -8.5px;
	transform: scale(1);
	transition: transform .65s cubic-bezier(.75,-1.27,.3,2.33);
	&.active{
		transform: scale(3.4);
		background-color: rgba(255,255,255, .1);
		border: .1px solid var(--accent-color);
	}
	@media (max-width: 768px) {		
		display: none;		
	}
	&.hiden{
		transform: scale(.001);
	}
}
.micromodal-slide__category ul{
	padding: 0 15px 0;
}

.micromodal-slide__category li{
	list-style-type: none;
}

.micromodal-slide__category li a{
	text-transform: uppercase;
	color: #fff;
	transition: .25s ease-out;
	padding: 10px 0;
	display: block;
}
.micromodal-slide__category li a:hover{
	color: #ccc;
}

body{
	font-family: var(--userfont);
	font-size: var(--fontsize);
	line-height: var(--lineheight);
	color: #fff;
	min-width: 320px;
	position: relative;
	overflow-x: hidden;
}

.home-header{
	background-color: var(--dark);
	height: 100vh;
	color: #fff;
	padding-top: var(--size);	
	@media (max-width: 768px) {		
		padding-top: var(--size-sm);		
	}
}
.top-home{
	border-bottom: none !important;
	position: absolute;
	z-index: 6;
	width: 100%;
	height: var(--size);
	display: flex;
	align-items: center;
	background-color: transparent !important;
	@media (max-width: 768px) {		
		height: var(--size-sm);		
	}
}
.top-line{
	position: absolute;
	height: var(--size);
	top: 0;
	width: 100%;
	border-bottom: 1px solid rgba(255, 255,255, var(--border-opacity));
	z-index: 10;
	background-color: var(--deep);
	display: flex;
	align-items: center;
	@media (max-width: 768px) {		
		height: var(--size-sm);		
	}
}
.logo{
	color: #fff;
	flex: 0 0 300px;
	display: flex;
	align-items: center;
	text-transform: uppercase;
	font-size: 13px;
	font-weight: 800;
	letter-spacing: .5em;
	@media (max-width: 768px) {		
		flex: 1 0 0;		
	}
	@media (max-width: 992px) {		
		flex: 1 0 0;		
	}
	@media (max-width: 1200px) {		
		flex: 1 0 0;		
	}
	@media (min-width: 1200px) {		
		flex: 1 0 0;		
	}
}
.logo__text{
	@media (max-width: 768px) {		
		display: none;		
	}
	@media (max-width: 992px) {		
		display: none;		
	}
}
.logo:hover, .logo:focus{
	color: var(--accent-color); 
	text-decoration: none;
	outline: none;
}
.logo__images{
	display: inline;
}
.logo__img-wrapper{
	width: var(--size);
	height: var(--size);
	display: flex;
	align-items: center;
	justify-content: center;
	@media (max-width: 768px) {		
		width: var(--size-sm);		
		height: var(--size-sm);		
	}
}
.top-line__decoration{
	flex: 1 0 0;
	text-align: center;	
	@media (max-width: 768px) {		
		display: none;		
	}
}
.top-line__decoration::before{
	content: '';
	height: 1px;
	width: 50px; 
	background-color: #000;
	display: inline-block;
	opacity: var(--border-opacity2); 
}
.menu-button-container{
	flex: 0 0 200px;
	text-align: right;
	height: var(--size);
	@media (max-width: 768px) {		
		height: var(--size-sm);
		flex: 1 0 0;		
	}
	@media (max-width: 992px) {			
		flex: 1 0 0;		
	}
	@media (max-width: 1200px) {			
		flex: 1 0 0;		
	}
	@media (min-width: 1200px) {			
		flex: 1 0 0;		
	}
}
.menu-button{
	border: none;
	position: absolute;
	top: 0;
	right: 0;
	width: var(--size);
	height: var(--size);
	background-color: var(--deep);
	background-image: url(../images/bar-solid.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 24px;
	transition: background .25s ease-out;		
	@media (max-width: 768px) {		
		width: var(--size-sm);		
		height: var(--size-sm);		
	}
}
.menu-button:hover{	
	background-color: var(--dark);
}
.top-line__contacts{
	text-transform: uppercase;
	font-size: 12px;
	font-weight: 500;
	letter-spacing: .4em;
	display: flex;
	align-items: center;
	
}	

.top-line__numbers{
	color: var(--accent-color);
}
.top-line__separator{
	width: 1px;
	height: 30px;
	background-color: rgba(255, 255,255, var(--border-opacity2));
	margin: 0 20px;
}
.top-line__numbers, .top-line__text{
	font-family: roboto, sans-serif; 
	margin-left: 5px;	
}
@media (max-width: 768px) {		
	.top-line__text, .top-line__address, .top-line__separator{
		display: none;
	}		
}
@media (max-width: 992px) {		
	.top-line__text, .top-line__address, .top-line__separator{
		display: none;
	}		
}


/* aside */

.home-header__content{
	height: 100%;
	position: relative;
}
.home-aside{
	background-color: var(--dark);
	width: var(--size);
	height: 100%;
	position: absolute;
	top: 0;
	padding-top: var(--size);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	z-index: 5;
	@media (max-width: 768px) {		
		padding-top: var(--size-sm);	
		width: var(--size-sm);	
	}
	

}

.home-aside__header{
	left: 0;
	@media (max-width: 576px) {		
		display: none;	
	}
}
.home-aside__header .home-aside__decoration{
	background-image: url(../images/decoration_2.svg);
}

.home-aside__decoration{
	flex: 1 0 0;
	background-image: url(../images/decoration_.svg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	width: 100%;	
	opacity: .4;
	@media (max-width: 576px) {		
		display: none;		
	}
}

.home-aside__soc{ 
	flex: 1 0 0;
	@media (max-width: 576px) {		
		margin-top: 50px;		
	}
}
.soc-item{
	width: var(--size);
	height: var(--size);
	display: flex;
	justify-content: center;
	align-items: center;
	border: 1px solid rgba(255,255,255, .2);
	margin-top: -1px;
	border-bottom: 1px solid transparent;
	transition: background .25s ease-out;
	@media (max-width: 768px) {		
		width: var(--size-sm);
		height: var(--size-sm);				
	}
}
.soc-item:last-child{
	border: 1px solid rgba(255,255,255, .2);
}
.soc-item img{
	width: 20px;
	height: auto;
	max-height: 20px;
	opacity: .46;
	transition: opacity .25s ease-out;
}
.soc-item:hover{
	background-color: var(--deep);
}
.soc-item img:hover{
	opacity: 1;
}

.home-aside__share-icon{
	background-color: var(--accent-color);   
	width: var(--size);
	flex: 0 0 var(--size);
	background-image: url(../images/share2.svg);
	background-size: 15px;
	background-repeat: no-repeat;
	background-position: center;
	@media (max-width: 768px) {		
		width: var(--size-sm);
		flex: 0 0 var(--size-sm);		
	}
}




/* slider */

.slider-container{
	padding-left: var(--size);
	width: 100%;
	height: 100%;
	overflow: hidden;
	position: relative;
	@media (max-width: 768px) {		
		padding-left: var(--size-sm);				
	}
	@media (max-width: 768px) {		
					
	}
}
.slider-bottom{
	position: absolute;	
	width: calc(75% - var(--size));
	bottom: 0;
	height: var(--size);
	border-bottom: 1px solid rgba(255, 255,255, var(--border-opacity));
	display: flex;
	align-items: center;
	left: var(--size);
	z-index: 5;
	color: rgba(255, 255,255, .6);
	@media (max-width: 768px) {		
		width: calc(75% - var(--size-sm));	
		height: var(--size-sm);
		left: var(--size-sm);			
	}
}


.slider-share{
	flex: 0 1 auto;
}




.slider-share__items{
	display: flex;
	position: relative;
	bottom: -0.5px;
}
.slider-share__item{
	width: var(--size);
	height: var(--size);
	border: none;
	background-color: var(--dark);
	border-right: 1px solid rgba(255, 255,255, var(--border-opacity));	
	@media (max-width: 768px) {		
		width: var(--size-sm);	
		height: var(--size-sm);				
	}
	
}
.slider-share__item:last-child{
	border: none;
}


.slider-img{
	height: 100%;
	width: 75%;
	overflow: hidden;
	position: relative;
	&::before{
		content: '';
		position: absolute;
		width: 100%;
		height: 100%;
		/*background-color: rgba(0,0,0, .25);*/
		z-index: 2;
	}
	@media (max-width: 768px) {		
		width: 100%;	
					
	}
}
.slider-img__slide{
	height: 100%;
	overflow: hidden;
}
.slider-img__bg{
	height: 100%;
	background-position: center;
	background-size: cover;
}

.slider-text{
	position: absolute;
	z-index: 3;
	width: 100%;
	height: 100%;
}

.slider-text__slide{
	display: flex !important;
	justify-content: center;
	flex-direction: column;
}

.slider-text__content{
	text-align: right;
	padding-right: 22%;
	@media (max-width: 768px) {		
		padding-left: 20px;				
	}
}

.slider-text__heading{
	text-transform: uppercase;
	font-size: 60px;
	line-height: 120%;
	font-family: oswald, serif;
	font-weight: bold;
	max-width: 780px;
	float: right;
	span{
		color: var(--accent-color);
		white-space: nowrap;
	}
	@media (max-width: 992px) {		
		font-size: 50px;
		max-width: 500px;				
	}
	@media (max-width: 768px) {		
		font-size: 35px;				
	}
	@media (max-width: 576px) {		
		font-size: 24px;				
	}
}

.slider-text__desc{
	float: right;
	clear: both;
	max-width: 500px;
	font-size: 15px;
	margin-top: 15px;
	margin-bottom: 20px;
	@media (max-width: 576px) {		
		font-size: 12px;				
	}
}

.button{
	display: inline-block;
	background-color: var(--accent-color);
	border: none;
	font-size: 11px;
	letter-spacing: 2px;
	text-transform: uppercase;
	position: relative;
	padding: 14px 25px;
	font-weight: 800;
	&::before{
		content: '';
		position: absolute;
		width: 0;
		height: 100%;
		background-color: var(--dark);
		border: none;
		top: 0;
		left: 0;
		transition: width .5s ease-out;
	}
	&:hover, &:focus{
		&::before{
			width: 100%;
		}
	}
	span{
		position: relative;
		z-index: 2;
	}
}

.slider-text__button{
	float: right;
	clear: both;
}
.slider-text__button__product{
	float: left;
	clear: both;
	margin: 15px 0;
}

.slider-pagination{
	flex: 0 0 140px;
	display: flex;
	justify-content: center;
	height: var(--size);
	align-items: center;
	position: relative;
	@media (max-width: 768px) {			
		height: var(--size-sm);				
	}
	.swiper-pagination-bullet{
		width: 6px;
		height: 6px;
		opacity: 1;
		background-color: #fff;
		margin: 0 7px;		
	}
	.swiper-pagination-bullet-active{
		background-color: var(--accent-color);
		position: relative;
		&::before{
			content: '';
			width: 14px;
			height: 14px;
			border: 1px solid var(--accent-color);
			position: absolute;
			border-radius: 100%;
			top: -4px;
			left: -4px;
		}		
	}
	@media (max-width: 768px) {		
		display: none;		
	}
	
}


.swiper-pagination {
	bottom: auto !important;
}

.slider-scrollbar{
	flex: 1 0 0;
	position: relative;
	.swiper-scrollbar{
		height: 1px !important;
		background-color: rgba(255,255,255, .2);
		bottom: auto !important;
	}
	.swiper-scrollbar-drag{
		height: 3px;
		background-color: var(--accent-color);
		top: -1px;
	}
	@media (max-width: 768px) {		
		display: none;		
	}
}

.slider-navigation{
	flex: 0 0 140px;
	position: relative;
	left: 10px;	
	.swiper-button-prev, .swiper-button-next {
		width: 32px;
		height: 32px;
		color: var(--accent-color);
		background-color: #3c3c3c;
		border-radius: 100%;
		border: 2px solid var(--accent-color); 
		top: 5px;
		&::after{
			font-size: 10px;
		}		
	}	
	.swiper-button-disabled{
		opacity: 1;
		background-color: #3c3c3c;
		border: 2px solid #8a8a8a;
		&::after{
			color: #8a8a8a;
		}
	}
	.swiper-button-prev{
		left: 0;
	}
	.swiper-button-next{
		right: 0;
	}
	.slider-navigation__container{
		max-width: 70px;
		position: relative;
		margin: auto;
	}
	@media (max-width: 768px) {		
		left: -20px;			
	}
}

.slider-gear{
	width: 600px;
	height: 600px;
	position: absolute;
	background-image: url(../images/gear.svg);
	z-index: 2;
	top: 50%;
	right: calc(21% - 250px);
	margin-top: -290px;
	background-size: cover;
	background-position: center;
	@media (max-width: 768px) {		
		display: none;		
	}
}

.slider-pagination-count{
	position: absolute;
	right: 20px; 
	top: 30px;
	width: 120px;
	height: 80px;
	font-family: oswald, sans-serif;
	font-weight: 500;
	font-size: 24px;
	z-index: 100;
	.current{
		font-size: 40px;
		color: var(--accent-color);
		display: inline-block;
		min-width: 42px;		
	}
	@media (max-width: 992px) {		
		top: 0;
		right: 0;	
		transform: scale(.6);	
	}
	@media (max-width: 768px) {		
		display: none;
	}
}

.slider-pagination-current{
	position: absolute;
	right: 40px;
	bottom: 40px;
	font-size: 100px;
	font-family: oswald, sans-serif;
	color: var(--dark);
	-webkit-text-stroke: 1px #7f7f7f;
	.slider-paginationcurrent__dot{
		color: var(--accent-color);
		-webkit-text-stroke: 1px transparent;
	}
	@media (max-width: 992px) {		
		font-size: 50px;
		bottom: 0;
		right: 20px;
	}
}

.modal{
	z-index: 10000000;
	position: absolute;
	color: var(--textcolor);
	font-family: Ralway, sans-serif;
}

.modal__container{
	background-color: var(--lightendeep);
	box-shadow: 0 0 0 8px rgba(255, 255,255, .1);
	border-radius: 0;
	padding: 0 15px;
}

.modal__title{
	font-family: Oswald, sans-serif;
	text-transform: uppercase;
	color: #fff;
	font-weight: 400;
	font-size: 20px;
	display: block;
	width: 100%;
}

.modal__close{
	color: #fff;
	opacity: .25;
	border: none;
	background-color: transparent;
	transition: opacity .25s ease-in;
	&:hover{
		opacity: 1;
	}
}

.modal__header{
	text-align: center;
}

.form-input{
	display: block;
	background-color: var(--dark);
	border: 1px solid var(--lightendark);
	padding: 12px 20px;
	min-width: 280px;
	color: #fff;
	font-size: 15px;
}
.modal__input{
	margin-bottom: 10px;
}

textarea.form-input{
	min-height: 100px;
}

.modal__footer{
	background-color: var(--lightendeep);
	text-align: center;
}

.product-popup{
	background-color: #fff;		
	max-width: 320px;
	position: relative;
	margin: auto;
	padding: 15px;
	display: none;
}
.success {
	position: absolute;
	z-index: 1;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	background-color: #fff;
	text-align: center;
	text-transform: uppercase;
	padding: 60% 10% 10%;
	display: none;
}



.common-home__container .list-group a{
	display: inline-block;
	min-width: 100px;
}

.common-home__container{
	padding-top: 50px;
	text-align: center;
	.list-group .list-group-item{
		padding: 10px 30px;
	}
}





@font-face {
  font-family: "oswald";
  font-style: normal;
  font-weight: 700;
  src: local("oswald"), url("../fonts/Oswald-Bold.woff") format("woff2"); }

@font-face {
  font-family: "oswald";
  font-style: normal;
  font-weight: 500;
  src: local("oswald"), url("../fonts/Oswald-Medium.woff") format("woff2"); }

@font-face {
  font-family: "raleway";
  font-style: normal;
  font-weight: 800;
  src: local("raleway"), url("../fonts/Raleway-ExtraBold.woff") format("woff2"); }

@font-face {
  font-family: "raleway";
  font-style: normal;
  font-weight: 500;
  src: local("raleway"), url("../fonts/Raleway-Medium.woff") format("woff2"); }

@font-face {
  font-family: "raleway";
  font-style: normal;
  font-weight: 400;
  src: local("raleway"), url("../fonts/Raleway-Regular.woff") format("woff2"); }

@font-face {
  font-family: "raleway";
  font-style: normal;
  font-weight: 600;
  src: local("raleway"), url("../fonts/Raleway-SemiBold.woff") format("woff2"); }

@font-face {
  font-family: "roboto";
  font-style: normal;
  font-weight: 500;
  src: local("roboto"), url("../fonts/Roboto-Medium.woff") format("woff2"); }

@font-face {
  font-family: "myriad";
  font-style: normal;
  font-weight: 600;
  src: local("myriad"), url("../fonts/MyriadSetProSemiBold.woff") format("woff2"); }

@font-face {
  font-family: "myriad";
  font-style: normal;
  font-weight: 400;
  src: local("myriad"), url("../fonts/MyriadSetProText.woff") format("woff2"); }

@font-face {
  font-family: "myriad";
  font-style: normal;
  font-weight: 100;
  src: local("myriad"), url("../fonts/MyriadSetProThin.woff") format("woff2"); }






