@charset "UTF-8";

@font-face {
    font-family: 'WorkSansMedium';
    src: url('../fonts/WorkSansMedium.eot');
    src: url('../fonts/WorkSansMedium.eot') format('embedded-opentype'),
         url('../fonts/WorkSansMedium.woff2') format('woff2'),
         url('../fonts/WorkSansMedium.woff') format('woff'),
         url('../fonts/WorkSansMedium.ttf') format('truetype'),
         url('../fonts/WorkSansMedium.svg#WorkSansMedium') format('svg');
}
@font-face {
    font-family: 'WorkSansRegular';
    src: url('../fonts/WorkSansRegular.eot');
    src: url('../fonts/WorkSansRegular.eot') format('embedded-opentype'),
         url('../fonts/WorkSansRegular.woff2') format('woff2'),
         url('../fonts/WorkSansRegular.woff') format('woff'),
         url('../fonts/WorkSansRegular.ttf') format('truetype'),
         url('../fonts/WorkSansRegular.svg#WorkSansRegular') format('svg');
}
@font-face {
    font-family: 'WorkSansSemiBold';
    src: url('../fonts/WorkSansSemiBold.eot');
    src: url('../fonts/WorkSansSemiBold.eot') format('embedded-opentype'),
         url('../fonts/WorkSansSemiBold.woff2') format('woff2'),
         url('../fonts/WorkSansSemiBold.woff') format('woff'),
         url('../fonts/WorkSansSemiBold.ttf') format('truetype'),
         url('../fonts/WorkSansSemiBold.svg#WorkSansSemiBold') format('svg');
}

body { font-family:'WorkSansRegular',Arial,Tahoma,Verdana,Helvetica,sans-serif; }
a.nav_next, .title_box, .header, .rslider_content, .eshop_container .eshop_title h3 { font-family:'WorkSansMedium',Arial,Tahoma,Verdana,Helvetica,sans-serif; }
.footer h3 { font-family:'WorkSansSemiBold',Arial,Tahoma,Verdana,Helvetica,sans-serif; }

html {
	font-size:16px;
}
body {
	color:#000;
	-webkit-font-smoothing:antialiased;
	background-color:#fff;
}
h1, h2, h3, h4 {
	line-height:100%;
	font-weight:normal;
	margin:0;
	padding:0;
	margin-bottom: 20px;
}
a:link, a:visited {
	color:#828282;
	-moz-transition:color 0.2s ease-in-out, border-bottom-color 0.2s ease-in-out;
	-webkit-transition:color 0.2s ease-in-out, border-bottom-color 0.2s ease-in-out;
	-ms-transition:color 0.2s ease-in-out, border-bottom-color 0.2s ease-in-out;
	transition:color 0.2s ease-in-out, border-bottom-color 0.2s ease-in-out;
	text-decoration:none;
	border-bottom:dotted 1px;
}
a:hover {
	color:#8e30c0;
	border-bottom-color:transparent;
}
a.nav_next {
	color:#000;
	border:2px solid #000 !important;
}
a.nav_next.invert {
	color:#fff;
	border-color:#fff !important;
}
a.nav_next:hover {
	color:#8e30c0;
	border-color:#8e30c0 !important;
}
ul {
	list-style-type:none;
	margin:0;
	padding:0;
}

.vnutro li {
	border-left: 2px solid #bfbfbf;
}

/* Base-styles ............................. */

.content {
	position:relative;
	overflow:hidden;
}
.box_margin {
	margin-bottom:30px;
}
.box_margin2 {
	margin-bottom:15px;
}
.box_margin3 {
	margin-bottom:60px;
}
.box_padding {
	padding-left:100px;
	padding-right:100px;
}
.box_padding_vertical {
	padding-top:100px;
	padding-bottom:100px;
}
.img-object-fit {
	object-fit:cover;
}
.container_bg__a {
	background-color:#252525;
}
.container_bg__b {
	background-color:#8e30c0;
}
.container_bg__img {
	background-position:center 50%;
	background-repeat:no-repeat;
	background-size:cover;
}

.title_box {
	position:relative;
}
.title_box > * {
	position:relative;
	line-height:1.2em;
}
.title_box h1, .title_box h2 {
	font-size:3rem;
}
.title_box h3 {
	font-size:2.25rem;
}
.title_box small {
	font-size:100%;
	color:inherit;
}

/* animate.css */

@-webkit-keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

/* Header ............................................................... */

.header {
	position:absolute;
	top:0;
	left:0;
	padding-top:45px;
	padding-bottom:45px;
	z-index:1000;
}
.header.scroll {
	position:fixed;
	padding-top:10px;
	padding-bottom:10px;
	background-color:#000;
	-webkit-box-shadow:0 12px 6px -6px rgba(0,0,0,0.05);
	-moz-box-shadow:0 12px 6px -6px rgba(0,0,0,0.05);
	box-shadow:0 12px 6px -6px rgba(0,0,0,0.05);
	animation:animateNav 0.4s linear;
}
@keyframes animateNav {
	0% { transform:translateY(-100%); }
	100% { transform:translateY(0); }
}
.main_logo {
	top:50%;
	left:100px;
	-webkit-transform:translateY(-50%);
	transform:translateY(-50%);	
	z-index:1200;
}
.main_logo img {
	width:120px;
}
.header.scroll .main_logo img {
	width:60px;
}

.mainNavigation {
	font-size:0.93rem;
}
.header_nav_a {
	padding-right:90px;
}
.header_nav_a a {
	width:210px;
	height:46px;
	line-height:46px;
	color:#fff;
	border:2px solid #fff;
	box-sizing:content-box;
}
.header_nav_a a:hover {
	color:#000;
	background-color:#fff;
}
.header_nav_b {
	padding-right:90px;	
}
.header_nav_b a {
	color:#fff;
	border-bottom:0;
}
.header_nav_b a:hover {
	border-bottom:1px solid #fff;
}

.grid-gallery {
	display: grid;
    gap: 10px;
    grid-template-columns: repeat(4, 1fr);
    column-gap: 20px;
    row-gap: 20px;
    margin-bottom: 7rem;
}

.grid-gallery div {
	max-width: 320px;
	max-height: 320px;
}

.mx-300 {
	width: 100%;
}

.map {
	width: 500px;
	height: 500px;
}

.contact-map {
	display: flex;
	justify-content: space-between;
}
/* Rslider ............................................................... */

.rslider_wrapper_in {
	height:300px;
}
.rslider_wrapper_in:before {
	position:absolute;
	top:0;
	left:0;
	content:"";
	width:100%;
	height:100%;
	background-color:rgba(0,0,0,0.45);
}
.rslides, .rslides_li, .rslider_img {
	height:100vh;
	width: 100%;
}
.rslider_img {
	position:absolute;
	top:0;
	left:0;
	width:100%;
}
.rslider_wrapper .image {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background-position:center 50%;
	background-repeat:no-repeat;
	background-size:cover;
	animation:animateZ 2.2s forwards;
	z-index:-1;
	height: 100vh;
}
@keyframes animateZ {
  from {
    transform: scale(1.06);
  }
  to {
    transform: scale(1);
  }
}

.box-content {
	width: 500px;
}

.rslider_content {
    position: absolute;
    bottom: 80px;
    color: #fff;
	padding-left: 60px;
}

.rslider_opacity {
	background-color: rgba(0,0,0,0.45);
}
.rslider_title {
	font-size:4.5rem;	
	line-height:1.2;
}
.rslider_content p {
	font-size:.85rem;	
}

/* Main-Content ............................................................... */

.c_x_bg {
	position:absolute;
	top:0;
	width:calc(50% - 15px);
	height:100%;
	background-position:center 50%;
	background-repeat:no-repeat;
	background-size:cover;
	z-index:-1;
}
.c_x_bg_left {
	left:15px;
}
.c_x_bg_right {
	right:15px;
}

/* Text-Wrapper */

.text_container {
	padding:100px;
}
.text_list li {
	border-left:2px solid #bfbfbf;
}
.text_wrapper .img:before {
	position:absolute;
	bottom:0;
	content:"";
	width:80%;
	height:80%;
	border-bottom:0 !important;
	z-index:10;
}
.text_wrapper__a .img:before {
	left:0;
	border:2px solid #fff;
	border-left:0;
	border-radius:0 200px 0 0;
}
.text_wrapper__b .img:before {
	right:0;
	border:2px solid #fff;
	border-right:0;
	border-radius:200px 0 0 0;
}

/* Video */

.video_container {
	height:820px;
}
.video_container a .img-video {
	opacity:0.55;
}
.video_container a:hover .img-video {
	opacity:1;
}
.video_container .icon {
	top:50%;
	left:50%;
	-webkit-transform:translate(-50%,-50%);
	transform:translate(-50%,-50%);	
}
.video_container .icon img {
	width:160px;
}

/* Advantages */

.advantage_wrapper .title_box a {
	color:#000;
}
.advantage_wrapper .title_box a:hover {
	color:#8e30c0;
}

/* Eshop */

.eshop_wrapper {
	color:#adadad;
}
.eshop_wrapper:before {
	position:absolute;
	bottom:0;
	left:0;
	content:"";
	width:50%;
	height:80%;
	border:2px solid #fff;
	border-left:0;
	border-bottom:0;
	border-radius:0 200px 0 0;
	z-index:10;
}
.eshop_container .text {
	flex:1;
}
.eshop_container .eshop_title {
	border-bottom:2px solid #fff;
}
.eshop_container:nth-child(even) .eshop_title {
	border-bottom-color:#8e30c0;
}
.eshop_container .eshop_title h3 {
	font-size:inherit;
	line-height:inherit;
}
.eshop_img {
	z-index:10;
}

/* Footer ............................................................... */

.footer {
	font-size:0.87rem;
}
.footer a {
	color:#000;
	border-bottom:0;
}
.footer a:hover {
	color:#8e30c0;
}
.footer h3 {
	font-size:inherit;
}

.we_button {
	position: relative;
	z-index: 50;
}

/* Effects ............................. */

a, .header_nav_a a, .video_container a .img-video {
	-webkit-transition:all 300ms linear;
	-moz-transition:all 300ms linear;
	-o-transition:all 300ms linear;
	-ms-transition:all 300ms linear;
	transition:all 300ms linear;
}
::i-block-chrome, div {
	-webkit-transition:initial;
}

/* RESPONSIVE STRUCTURE
--------------------------------------- */

@media screen and (max-width: 1680px) {
	.box_padding { padding-left:70px; padding-right:70px; }
	.main_logo { left:70px; }
	.rslider_content {	padding-bottom:90px; }
	.rslider_title { font-size:3.43rem; }
	.text_container { padding:70px; }

}

@media screen and (max-width: 1366px) {
	.box_margin { margin-bottom:15px; }
	.box_margin3 { margin-bottom:30px; }
	.box_padding { padding-left:45px; padding-right:45px; }
	.box_padding_vertical { padding-top:60px; padding-bottom:60px; }
	.title_box h1, .title_box h2 { font-size:2.5rem; }
	.title_box h3 { font-size:1.87rem; }
	.header { padding-top:30px; padding-bottom:30px; }
	.main_logo { left:45px; }
	.main_logo img { width:100px; }
	.header_nav_a a { width:160px; height:38px; line-height:38px; }
	.text_container { padding:45px; }
	.video_container { height:600px; }
	.video_container .icon img { width:130px; }

}
  
@media screen and (max-width: 1200px) {
	.box_padding { padding-left:30px; padding-right:30px; }
	.box_padding_vertical { padding-top:45px; padding-bottom:45px; }
	.title_box h1, .title_box h2 { font-size:2.25rem; }
	.title_box h3 { font-size:1.62rem; }
	.header { padding-top:20px; padding-bottom:20px; }
	.main_logo { left:30px; }
	.main_logo img { width:80px; }
	.header.scroll .main_logo img { width:50px; }
	.header_nav_a { padding-right:60px; }
	.header_nav_a a { width:140px; height:30px; line-height:30px; }
	.header_nav_b { padding-right:60px; }
	.rslider_wrapper_in { height:250px; }
	.rslider_content {	padding-bottom:60px; }
	.rslider_title { font-size:2.62rem; }
	.text_container { padding:45px 30px; }
	.text_wrapper__a .img:before { border-radius:0 120px 0 0; }
	.text_wrapper__b .img:before { border-radius:120px 0 0 0; }
	.video_container { height:450px; }
	.video_container .icon img { width:90px; }

}

@media screen and (max-width: 991px) {
	.box_margin3 { margin-bottom:15px; }
	.box_padding { padding-left:15px; padding-right:15px; }
	.box_padding_vertical { padding-top:30px; padding-bottom:30px; }
	.eshop_wrapper:before { display:none; }
	.grid-gallery {
		grid-template-columns: repeat(2, 1fr);
	}
	.contact-map {
		flex-direction: column;
		justify-content: flex-start;
	}

	.map {
		width: 100%;
		height: 300px;
	}
 
}
 
@media screen and (max-width: 767px) {
	.header { position:fixed !important; height:60px; background-color:#000; padding-top:10px !important; padding-bottom:10px !important; animation:none !important; }
	.header + div, .header + section { margin-top:60px; }
	.main_logo { left:10px; }
	.main_logo img {width:54px !important; }
	.header_nav_b { padding-top:8px; }
	.rslider_wrapper { height:calc(100vh - 60px); }
	.rslider_wrapper_in { height:150px !important; }
	.rslider_wrapper_in:before { display:none; }
	.rslider_content {	padding-bottom:0; padding-left: 0; }
	.c_x_bg { position:relative; left:0 !important; right:initial; width:100%; height:300px; }
	.text_container { padding:45px 15px; }
 	.video_container { height:300px; }
	
}

@media screen and (max-width: 480px) {
	.mainNavigation { font-size:0.81rem; }
	.header_nav_b { padding-top:10px; padding-right:40px; }
	.rslider_title { font-size:2.25rem; }
	.rslider_content p { font-size:0.85rem; }	
	.grid-gallery {
		grid-template-columns: repeat(1, 1fr);
	}
 
}

@media screen and (max-width: 360px) {
	.c_x_bg { height:220px; }

}

.btn-custom, .btn-outline-custom {
    transition: all 0.3s ease;
}
.btn-custom:hover, .btn-outline-custom:hover {
    transform: translateY(-3px);
    box-shadow: 0 5px 15px rgba(0,0,0,0.3);
}