@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;600&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans:wght@400;600&display=swap');
@import url('../icons/icofont.min.css');
@import url('font-awesome.min.css');

body {
	font-size: 16px;
	font-family: 'Montserrat', sans-serif;
	font-weight: regular;
}

a,
a:hover {
	text-decoration: none;
}

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
	font-weight: 600;
}

.blue {
	color: #2f5597;
}

.red {
	color: #ff0000;
}

.gray {
	color: #595959;
}

.white {
	color: #fff;
}

.position-relative {
	position: relative;
}

.spg {
	padding: 50px 0;
}

.wrapper {
	max-width: 100%;
	margin: 0 auto;
	overflow: hidden;
}

header {
	padding: 15px 0;
	position: relative;
}

header .navs {
	width: 100%;
	height: 100%;
}

header .navs ul {
	margin: 0;
	padding: 0;
	display: table;
	height: 100%;
	float: right;
}

header .navs ul li {
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	padding: 0px 20px;
}

header .navs ul li a {
	text-decoration: none;
	color: #595959;
	font-size: 16px;
	padding: 10px 0;
	position: relative;
	font-weight: 600;
}

header .navs ul li a:hover {
	color: #000;
}

header .navs ul li a::before {
	content: '';
	display: block;
	position: absolute;
	bottom: 2px;
	left: 0;
	height: 2px;
	width: 100%;
	background-color: #2f5597;
	transform-origin: left center;
	transform: scale(0, 1);
	transition: color .1s, transform .2s ease-out;
}

header .navs ul li.active a::before {
	content: '';
	display: block;
	position: absolute;
	bottom: 2px;
	left: 0;
	height: 2px;
	width: 100%;
	background-color: #2f5597;
	transform-origin: left center;
	transform: scale(1, 1);
	transition: color .1s, transform .2s ease-out;
}

header .navs ul li.active a {
	color: #000;
}

header .navs ul li a:hover::before {
	transform-origin: left center;
	transform: scale(1, 1);
}

.menu-btn {
	cursor: pointer;
	background: #2f5597;
	border: none;
	outline: none;
	height: 36px;
	position: absolute;
	width: 37px;
	right: 15px;
	top: 18px;
	outline: none;
	display: none;
}

.header-section.affix .menu-btn {
	top: 22px;
}

.menu-btn:focus {
	outline: none;
}

.menu-btn span {
	display: block;
	height: 3px;
	width: 26px;
	background-color: #fff;
	border-radius: 2px;
	position: absolute;
	left: 6px;
	-webkit-transition: -webkit-transform 0.3s;
	-webkit-transition: all 300ms ease-in-out;
	transition: all 300ms ease-in-out;
}

.menu-btn span:first-child {
	top: 8px;
}

.menu-btn span:nth-child(2) {
	top: 17px;
}

.menu-btn span:last-child {
	top: 26px;
}

.menu-btn.icon--active span:first-child {
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: 16px;
}

.menu-btn.icon--active span:nth-child(2) {
	opacity: 0;
}

.menu-btn.icon--active span:last-child {
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
	position: absolute;
	top: 16px;
}

header .logo {
	text-align: left;
}

header .logo a {
	display: inline-block;
}

header .logo img {
	height: 60px;
	width: auto;
}

.header-st.affix {
	position: fixed;
	box-shadow: 0 0 5px rgba(0, 0, 0, .3);
	-webkit-animation: fadeInDown 0.9s ease;
	-moz-animation: fadeInDown 0.9s ease;
	animation: fadeInDown 0.9s ease;
	z-index: 9999;
	background: #fff;
	top: 0;
	width: 100%;
	padding: 10px 0;
}

.header_space {
	display: none
}

.header-st.affix ~ .header_space {
	display: block;
}

@keyframes fadeInDown {
	0% {
		transform: translate3d(0, -100%, 0);
	}

	to {
		transform: none;
	}
}

@-webkit-keyframes fadeInDown {
	0% {
		transform: translate3d(0, -100%, 0);
	}

	to {
		transform: none;
	}
}

/* ------------------------ end of header ----------------------- */
.slider {
	position: relative;
	line-height: 0;
}

.slider .main-slider {
	margin-bottom: 0;
}

.slider .main-slider .slide-item img {
	position: relative;
	width: 100%;
}

.slider .main-slider .slide-item img.small-device {
	display: none;
}

.slider .main-slider .slide-item {
	position: relative;
}

.slide-item .page_first_bg {
	height: 100%;
	width: 43%;
	background-color: rgba(36, 34, 34, 0.69);
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	display: block;
}

.slide-item .page_first_bg span {
	height: 100px;
	display: inline-block;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	opacity: 0.07;
	padding-top: 20px;
	left: 0px;
	color: #9c969e;
	font-weight: 500;
	line-height: 70px;
	text-transform: uppercase;
	font-size: 170px;
	letter-spacing: 3px;
}

.slider .main-slider .slide-item::before {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	/*background-color: rgba(0, 0, 0, 0.5);*/
	z-index: 1;
}

.slider .main-slider .slide-item .caption {
	position: absolute;
	left: 9%;
	right: 9%;
	top: 30%;
	z-index: 2;
}

.slider .main-slider .slide-item .caption .desc h2 {
	max-width: 620px;
	font-size: 35px;
	font-weight: 400;
	line-height: 1.5;
	color: #fff;
	position: relative;
}

.slider .main-slider .slide-item .caption .desc p {
	max-width: 620px;
	font-size: 22px;
	color: #fff;
	line-height: 1.5;
	position: relative;
	margin-bottom: 60px;
}


.slider .main-slider .slide-item .caption .desc p::after {
	content: ;
	content: '';
	height: 2px;
	display: block;
	width: 120px;
	background: #ff0000;
	bottom: -30px;
	position: absolute;
}

.slider .main-slider .slide-item .caption .desc .get-started {
	color: #fff;
	font-size: 12px;
	font-weight: 400;
	display: inline-block;
}

.slider .main-slider .slide-item .caption .desc a::after {
	content: '';
	display: inline-block;
	width: 25px;
	height: 7px;
	background: url(../images/icons/arrow_red.png) 0 0 no-repeat;
	margin-left: 10px;
}



.main-slider .slick-dots {
	position: absolute;
	bottom: 30px;
	display: block;
	width: 100%;
	padding: 0;
	margin: 0;
	list-style: none;
	text-align: left;
	margin-left: 33%;
}

.main-slider .slick-dots li button::before {
	font-family: 'slick';
	font-size: 40px;
	line-height: 20px;
	position: absolute;
	top: 0;
	left: 0;
	width: 20px;
	height: 20px;
	content: '•';
	text-align: center;
	opacity: .25;
	color: #fff;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.main-slider .slick-dots li.slick-active button::before {
	opacity: 1;
	color: #fff;
}

.main-slider .slide-item .quote {
	position: absolute;
	z-index: 3;
	width: 550px;
	height: 278px;
	border: 12px solid rgba(255, 255, 255, 0.1);
	padding-top: 45px;
	left: 30%;
	top: 30%;
}

.main-slider .slide-item .wpt_rotate_left {
	display: inline-block;
	position: absolute;
	top: 45%;
	left: 0;
}

.main-slider .slide-item .wpt_rotate_left span {
	width: 100%;
	text-align: center;
	display: inline-block;
	-webkit-transform: rotate(270deg);
	-ms-transform: rotate(270deg);
	transform: rotate(270deg);
	color: #fff;
	font-size: 14px;
	font-weight: 400;
	text-transform: uppercase;
	z-index: 4;
	position: relative;
}

.main-slider .slide-item .wpt_rotate_right {
	display: inline-block;
	position: absolute;
	top: 45%;
	right: 0;
}

.main-slider .slide-item .wpt_rotate_right span {
	width: 100%;
	text-align: center;
	display: inline-block;
	-webkit-transform: rotate(270deg);
	-ms-transform: rotate(270deg);
	transform: rotate(270deg);
	color: #fff;
	font-size: 14px;
	font-weight: 400;
	text-transform: uppercase;
	z-index: 4;
	position: relative;
}

/* --------------------- end of slider ---------------------*/
.about-sec .about_text {
	padding-right: 55px;
	position: relative;
}

.about-sec .about_text h2 {
	font-size: 60px;
	font-weight: 600;
	line-height: 70px;
	text-transform: uppercase;
	color: #000;
	position: relative;
	font-weight: 600;
	margin-bottom: 0px;
	padding-bottom: 75px;
	display: inline-block;
}

.about-sec .about_text h2::after {
	position: absolute;
	margin-top: -85px;
	left: 20px;
	content: '';
	display: inline-block;
	width: 266px;
	height: 182px;
	border: 12px solid rgba(0, 0, 0, 0.1);
	margin-left: 20px;
	z-index: 1;
}

.about-sec .about_text p {
	color: #6f6d70;
	font-size: 16px;
	font-weight: 400;
	line-height: 26px;
	padding-bottom: 25px;
	font-family: 'Noto Sans', sans-serif;
}

.about-sec .about_text::after {
	content: '';
	display: inline-block;
	width: 85px;
	height: 2px;
	background-color: #f00;
	margin-top: 10px;
	position: absolute;
	bottom: 5px;
	left: 0;
}

.about-slider-section .slick-dots {
	position: absolute;
	bottom: 30px;
	display: block;
	width: 100%;
	padding: 0;
	margin: 0;
	list-style: none;
	text-align: center;
	z-index: 5;
}

.about-slider-section .slick-dots li button::before {
	font-family: 'slick';
	font-size: 40px;
	line-height: 20px;
	position: absolute;
	top: 0;
	left: 0;
	width: 20px;
	height: 20px;
	content: '•';
	text-align: center;
	opacity: .6;
	color: #fff;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.about-slider-section .slick-dots li.slick-active button::before {
	opacity: 1;
	color: #fff;
}

.about-slider-section .promo_text {
	position: absolute;
	bottom: 60px;
	right: -510px;
	opacity: 0.07;
	color: black;
	font-size: 170px;
	font-weight: 600;
	text-transform: uppercase;
}

/*------------------------ end of about-sec -------------------*/
.service-sec {
	background-image: url(../images/services_bg.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	min-height: 668px;
}

.service-sec::before {
	content: '';
	display: block;
	width: 43%;
	height: 100%;
	position: absolute;
	background: rgba(36, 34, 34, 0.69);
	overflow: hidden;
}

.service-sec .service-block {
	padding: 50px;
	position: relative;
}

.service-sec .service-block .desc .service-head {
	margin-bottom: 50px;
	display: inline-block;
	width: 100%;
	border: 12px solid rgba(255, 255, 255, 0.07);
}

.service-sec .service-block .desc .service-head h2 {
	font-size: 45px;
	font-weight: 600;
	text-transform: uppercase;
	padding-top: 15px;
	line-height: 1.3;
	color: #fff;
}

.service-sec .service-block .desc p {
	color: #bdb2c3;
	font-size: 16px;
	font-weight: 400;
	line-height: 26px;
	display: inline-block;
	position: relative;
}

.service-sec .service-block .desc p::after {
	margin-top: 25px;
	content: '';
	display: block;
	width: 86px;
	height: 2px;
	background-color: #f00;
}

.service-sec .service-block .service-box {
	padding: 60px 100px;
	background-image: url(../images/service_info_bg.jpg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}

.service-sec .service-block .service-box h5 {
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
	text-transform: uppercase;
	color: #000;
	padding-top: 10px;
}

.service-sec .service-block .service-box h5::after {
	content: '';
	display: block;
	width: 30px;
	height: 2px;
	background: #ff0000;
	margin-top: 10px;
	margin-bottom: 20px;
}

.service-sec .service-block .service-box p {
	color: #6f6d70;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.5;
	padding-bottom: 10px;
}

.service-sec .service-block .service-box .icon img {
	margin-bottom: 10px;
	height: 60px;
}

/* ------------------ end of service section -------------------------- */
/* start slider arrow */
.client-testimonial .slider-arrow {
	position: absolute;
	top: 40%;
	width: 100%;
	display: block;
}

.client-testimonial .slider-arrow .main_prev,
.client-testimonial .slider-arrow .main_next {
	display: inline-block;
	color: #000;
	font-size: 25px;
	cursor: pointer;
	opacity: 1;
	transition: 300ms;
}

.client-testimonial .slider-arrow .main_prev:hover,
.client-testimonial .slider-arrow .main_next:hover {
	opacity: 1;
	color: #2f5597;
	transition: 300ms;
}

.client-testimonial .slider-arrow .main_prev {
	left: 0;
	position: absolute;
}

.client-testimonial .slider-arrow .main_next {
	right: 30px;
	position: absolute;
}

/* end of slider arrow */
/* start dots */
.client-testimonial .slick-dots {
	position: absolute;
	bottom: -10px;
	display: block;
	width: 100%;
	padding: 0;
	margin: 0;
	list-style: none;
	text-align: center;
	z-index: 9;
}

.client-testimonial .slick-dots li button::before {
	font-family: 'slick';
	font-size: 40px;
	line-height: 20px;
	position: absolute;
	top: 0;
	left: 0;
	width: 20px;
	height: 20px;
	content: '•';
	text-align: center;
	opacity: .6;
	color: #000;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.client-testimonial .slick-dots li.slick-active button::before {
	opacity: 1;
	color: #000;
}

/* end  dots */

.client-sec {
	padding: 100px 0 50px;
}

.client-sec .client-left {
	position: relative;
}

.client-sec .client-left h2 {
	font-size: 60px;
	font-weight: 600;
	line-height: 70px;
	text-transform: uppercase;
	color: #000;
	position: relative;
	font-weight: 600;
	margin-bottom: 0px;
	padding-bottom: 75px;
}

.client-sec .client-left h2::after {
	position: absolute;
	margin-top: -160px;
	left: 60px;
	content: '';
	display: inline-block;
	width: 316px;
	height: 250px;
	border: 12px solid rgba(0, 0, 0, 0.1);
	margin-left: 20px;
	z-index: 1;
}

.client-sec .client-left p {
	color: #6f6d70;
	font-size: 16px;
	font-weight: 400;
	line-height: 26px;
	padding-bottom: 25px;
	font-family: 'Noto Sans', sans-serif;
}

.client-sec .client-left::after {
	content: '';
	display: inline-block;
	width: 85px;
	height: 2px;
	background-color: #f00;
	margin-top: 10px;
	position: absolute;
	bottom: 5px;
	left: 0;
}

/* end of client-left */
.client-testimonial .slide-item {
	padding: 50px 30px 20px;

}


.client-testimonial .slide-item .test-card {
	text-align: center;
	position: relative;
	background: #222;
	border-radius: 10px;
	padding: 15px;
	min-height: 265px;
}

.client-testimonial .slide-item .test-card .icon {
	position: absolute;
	left: 0;
	right: 0;
	display: block;
	text-align: center;
	width: 100%;
	top: -50px;
}

.client-testimonial .slide-item .test-card .icon img {
	height: 100px;
	width: auto;
	border: 5px solid #222;
	border-radius: 100%;
	display: inline-block;
}

.client-testimonial .slide-item .test-card .description {
	padding-top: 60px;
	padding-bottom: 20px;
}

.client-testimonial .slide-item .test-card .description h3 {
	color: #fff;
	margin-bottom: 15px;
	font-size: 22px;
}

.client-testimonial .slide-item .test-card .description p {
	color: #e5e5e5;
	line-height: 1.5;
}

/*---------------------------- end of client section ----------------------------*/
.contacts {
	background-image: url(../images/Kontakt.png);
	background-repeat: no-repeat;
	background-size: cover;
	min-height: 750px;
}

.contacts::before {
	content: 'Kontakt';
	text-align: left;
	color: #fff;
	font-size: 100px;
	display: block;
	width: 43%;
	z-index: 1;
	height: 100%;
	position: absolute;
	background: rgba(36, 34, 34, 0.69);
	padding-top: 25%;
	color: rgba(255, 255, 255, 0.1);
	font-size: 170px;
	font-weight: 600;
	text-transform: uppercase;
}

.contacts .contact-left {
	position: relative;
	z-index: 2;
}

.contacts .contact-left .cont-head {
	padding-top: 50px;
	padding-bottom: 50px;
}

.contacts .contact-left .cont-head h2 {
	font-size: 45px;
	font-weight: 600;
	text-transform: uppercase;
	padding-top: 15px;
	line-height: 1.5;
	color: #fff;
}

.contacts .contact-left .cont-head h2::after {
	position: absolute;
	margin-top: -90px;
	left: 60px;
	content: '';
	display: inline-block;
	width: 316px;
	height: 180px;
	border: 12px solid rgba(156, 150, 158, 0.07);
	margin-left: 20px;
	z-index: 9999;
}

.contacts .email-box {
	padding-left: 30%;
	padding-top: 30px;
	padding-bottom: 20p;
}

.contacts .email-box ul {
	padding: 0;
	margin: 0;
}

.contacts .email-box ul li {
	list-style: none;
	display: block;
}

.contacts .email-box ul li span {
	color: #fff;
	font-size: 16px;
	font-weight: 400;
	text-transform: uppercase;
	display: block;
}

.contacts .email-box ul li a {
	text-decoration: none;
	display: block;
	color: #ff0000;
	font-size: 16px;
}

.contacts .contact-right {
	padding: 120px 20px 50px;
	position: relative;
	z-index: 4;
}

.contacts .form-row {
	margin-bottom: 40px;
}

.contacts .form-row .form-control {
	padding: 10px 15px;
	margin-bottom: 5px;
	display: inline-block;
	width: 100%;
	color: #fff;
	background: transparent;
	border: none;
	border-bottom-color: currentcolor;
	border-bottom-style: none;
	border-bottom-width: medium;
	border-bottom: 2px solid #fff;
	outline: none;
	color: white;
	font-size: 16px;
	font-weight: 400;
	line-height: 25px;
	border-radius: 0;
}

.contacts .form-control::placeholder {
	color: #cccaca;
}

.contacts .form-row .form-control:focus {
	outline: none;
	box-shadow: none;
}

.contacts .submit-btn {
	background: transparent;
	outline: none;
	border: 1px solid rgba(191, 196, 206, 0.8);
	padding: 0 45px 0 50px;
	color: white;
	float: right;
	font-size: 12px;
	font-weight: 400;
	line-height: 45px;
	text-transform: uppercase;
	border-radius: 2px;
	margin-left: auto;
}

.contacts .submit-btn:hover {
	background: rgba(52, 46, 54, 0.55);
	cursor: pointer;
}

.contacts .bg_arrow {
	margin-left: 10px;
	display: inline-block;
	width: 25px;
	height: 7px;
	background: url("../images/icons/arrow_red.png") 0 0 no-repeat;
}

.copyright {
	padding: 15px;
	background: #000;
}

.copyright p {
	color: #fff;
	margin: 0;
}

.copyright p a {
	color: #ff0000;
}

.wpc-go-home {
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 15px 20px 15px;
	border-color: transparent transparent #ff0000 transparent;
	position: fixed;
	bottom: 45px;
	right: 40px;
	z-index: 999;
	-webkit-animation-name: wpc-go-home;
	animation-name: wpc-go-home;
	-webkit-animation-duration: .5s;
	animation-duration: .5s;
	-webkit-animation-timing-function: ease;
	animation-timing-function: ease;
	-webkit-animation-delay: 0;
	animation-delay: 0;
	-webkit-animation-direction: alternate;
	animation-direction: alternate;
	-webkit-animation-iteration-count: infinite;
	animation-iteration-count: infinite;
	-webkit-animation-fill-mode: none;
	animation-fill-mode: none;
	-webkit-animation-play-state: running;
	animation-play-state: running;
}

@-webkit-keyframes wpc-go-home {
	0% {
		margin-bottom: 0;
	}

	50% {
		margin-bottom: 5px;
	}

	100% {
		margin-bottom: 10px;
	}
}

@keyframes wpc-go-home {
	0% {
		margin-bottom: 0;
	}

	50% {
		margin-bottom: 5px;
	}

	100% {
		margin-bottom: 10px;
	}
}

/*---------------------------- end of cotacts ----------------------------*/
.cookie-notice {
	background: #464646;
	padding: 15px 15px;
	color: #ddd;
	position: fixed;
	display: flex;
	justify-content: center;
	align-items: center;
	bottom: 0;
	width: 100%;
	z-index: 999;
	transition: .35s ease;
}

.cookie-notice p {
	margin: 0;
	text-align: center;
}

.cookie-notice p a {
	font-size: 13px;
	color: #fff;
}

.cookie-notice p a:hover {
	text-decoration: underline;
}

.cookie-notice p .accept-cookies {
	padding: 6px 9px;
	border-radius: 3px;
	margin: 0 0 0 20px;
	outline: none;
	border: none;
	font-size: 13px;
	cursor: pointer;
	background: #fff !important;
}

.copy-txt {
	position: absolute;
	z-index: 1;
	color: #afabab;
	bottom: 10px;
	font-size: 14px;
	left: 15px;
}

.privacy-links {
	position: absolute;
	left: 52%;
	bottom: 10px;
}

.privacy-links a {
	margin-right: 25px;
	/*color: #afabab;*/
	color: #fff;
	text-transform: uppercase;
	font-size: 14px;
	display: inline-block;
}

.privacy-links a:hover {
	color: #fff;
}

.datenschutz {
	padding: 60px 0;
	color: #595959;
}

.datenschutz p {
	line-height: 1.6;
	margin-bottom: 0;
	font-weight: 600;
	font-size: 15px;
}

.datenschutz h2 {
	font-size: 32px;
	color: #595959;
	margin-bottom: 20px;
}
