/*!
Theme Name:    FK Web Theme
Author:        FK Web Consulting
Author URI:    https://www.fkwebconsulting.com/
Description:   FK Web Theme
Version:       1.0.0
License:       GNU General Public License v3 or later
License URI:   https://www.gnu.org/licenses/gpl-3.0.html
Template:      page-builder-framework
Text Domain:   page-builder-framework-child
*/


@font-face {
    font-family: 'Everett';
    src: url('fonts/Everett-Regular.eot');
    src: url('fonts/Everett-Regular.eot?#iefix') format('embedded-opentype'),
        url('fonts/Everett-Regular.woff2') format('woff2'),
        url('fonts/Everett-Regular.woff') format('woff'),
        url('fonts/Everett-Regular.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
} 
@font-face {
      font-family: 'Canela Web';
      src: url('fonts/Canela-Light-Web.woff2') format('woff2'),
           url('fonts/Canela-Light-Web.woff') format('woff');
      font-weight:  300;
      font-style:   normal;
      font-stretch: normal; 
    }

body{ font-family: 'Everett' !important;  font-size:17px; line-height:1.5; letter-spacing:0.8px; font-weight: 500;}  
h1, h2, h3{font-family: 'Everett' !important;  font-weight: 500;} 
h1 { font-size: 72px;  letter-spacing: 3px; }
h2 { font-size: 46px;  letter-spacing: 2px; } 
h3, .h3 .elementor-heading-title { font-size: 22px;  letter-spacing: 1px; } 
.font2, .font2 * { font-family: 'Canela Web' !important; font-weight: 300;}  
ul.own_list {margin-top:-16px;margin-left:-20px;list-style-type: none;}
.own_list li:before { content: '-'; margin-left: -16px; margin-right: 10px; } 
.elementor-widget-image a {display: block !important;}


/* Cookie Banner */
#cookie-notice { margin-bottom: 0px; } 
.cn-button.wp-default {color: #484846;background: #fff; }  

.ft-time label {width: 7vw;display: inline-block;} 
.wir-banner-bg { background:linear-gradient(45.58deg, #E6E6E6 24.7%, #E0D3CE 64.6%, #DDCAC3 94.2%)}
.wir-dr-img img {height: 35vw; object-fit: cover;}


.mtech-menu a:hover{ font-weight: 600;}
.wir .elementor-widget-image a:after { content: ""; height: 100%;width: 100%;background: rgb(181 178 168 / 39%);position: absolute;top: 0; right: 0;opacity:0;transition: all 0.2s ease-in-out;}
.wir.hover .elementor-widget-image a:after {opacity:1;}
 
.mtech-menu a {padding: 0.5vw 0 0.5vw 1.5vw !important; transition: none !important; display: inline-block;}
.mtech-menu a:after { content: "";display: block; height: 0.05vw;width: 0.8vw;background: #000; position: absolute;top: 50%;left: 0;opacity: 1 !important;}
.elementor-button {transition: all 0.1s ease-in-out !important;   font-family: 'Canela Web';} 
 
.elementor-button:hover, .hover .elementor-button, header .elementor-nav-menu--dropdown a:hover {
    font-weight: 600 !important;
}  
 
.coimbra-row:before {content: "";height: 82%;width: 75%;background: #eceaeb;display: block;position: absolute;bottom: 0;right: 0;}
.course-row .elementor-widget-divider {height: 50%;}
.course-row .elementor-widget-divider * {height: 100%;background: #a4b0b0;width: 4%;float: right;}
.home-slider .swiper-slide-contents * {margin: 0 !important;}
.home-slider .swiper-slide-contents {display: flex;align-items: center;}
.home-slider .elementor-slide-description:before {content: "";height: 0.1vw; width: 1.8vw;background: #000;margin: 0 0.7vw 0.7vw;display: inline-block;}

div#map {height: 36.5vw;margin-bottom: -6vw;z-index: 4;}
.on-off { width: 14vw !important;position: absolute;right: 0;font-size: 0.8vw;padding: 1vw;} 
 
 
.on-off a.close {cursor: pointer;width: 0.8vw;height: 0.8vw;background: url(images/close-icon.svg) no-repeat center center;background-size: contain;display: block;
position: absolute;right: 2vw;top: 1.2vw;} 
.elementor-swiper-button-next {top: 0;bottom: 0;transform: none;right: 0;width: 10vw; background: rgb(255,255,255);background: linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(0,0,0,0.3757878151260504) 100%);opacity:0;transition: all 0.2s ease-in-out; cursor: inherit;}
.elementor-swiper-button-next i { cursor: pointer; width: 3vw;height: 1.7vw;position: absolute; top: 50%; right: 30%;background: url(images/slider-arrow.svg) no-repeat center;} 
.elementor-swiper-button-next:hover{opacity:1;} 
ul.header-bttn {list-style: none;padding: 0;margin: 0;display: flex;font-size: 0.9vw;justify-content: flex-end; }
ul.header-bttn a {color: inherit;border-bottom: 1px solid #000;cursor: pointer;position: relative;z-index: 15;padding-bottom:2px;}
ul.header-bttn li {padding-left: 2.5vw;}
.header-bttn .content { background: #B5B2A8;position: absolute;z-index: 12;right: -5vw;padding: 8vw 8vw 1vw 2vw;line-height: 1.6; font-size: 0.8vw;top: -4vw;display: none;}
.header-bttn i.close, .banner-bttn i.close {width: 1vw;height: 1vw;display: block;cursor: pointer;position: absolute;right: 5vw;background: url(images/close-icon2.svg) no-repeat;background-size: 0.7vw; } 
.header-bttn .content span, .banner-bttn .content span {width: 5vw;display: inline-block;}

.header-bttn .online-termin a {
	background-color: #8F7B7C;
	color: white;
	padding: 0px 13px;
	text-decoration: none;
	display: inline-block;
}

.header-bttn .online-termin a:hover {
	background-color: #CABCBA;
}


.elementor-menu-toggle i {opacity: 0;}
.elementor-menu-toggle { position: relative;width: 2.2vw; padding: 0;height: 1.2vw;border-top: 2px solid #000 !important;}
.elementor-menu-toggle:after, .elementor-menu-toggle:before {content: "";height: 2px;width: 100%;background: #000;right: 0;left: 0;bottom: 0;transition: all 0.1s ease-in-out;position: absolute;} 
.elementor-menu-toggle:before {bottom: 50%;} 
.elementor-menu-toggle.elementor-active {border: 0 !important;}
.elementor-menu-toggle.elementor-active:after {transform: rotate(45deg);top: 0.6vw;}
.elementor-menu-toggle.elementor-active:before {transform: rotate(-45deg);top: 0.6vw;} 
header nav {transform: none !important;transition: none !important;width: 50% !important; max-width: 50% !important;min-width: 50% !important;position: fixed !important;bottom: 0 !important;
top: auto !important;height: calc(100% - 5.1vw);z-index: 5 !important; }
header nav > ul > li > a {font-size: 1.1vw;letter-spacing: 0.05vw;line-height: 1.5 !important;margin-bottom: 0.8vw;}
header nav ul.sub-menu > li > a {font-size: 0.9vw !important;letter-spacing: 0.05vw;border: 0 !important; line-height: 1.5 !important; margin-bottom: 0.4vw; padding-left: 1.4vw !important;}
header nav > ul { padding: 6% !important; } 
ul.sub-menu {padding: 0vw 0vw 0.6vw 0;} 
header nav ul.sub-menu > li > a:before {content: "";height: 0.05vw;width: 0.8vw;background: #000;position: absolute;left: 0;}
/* .submenu-open + .sub-menu{display:block !important;} */

.home:not(.header-visible) header {background-color: transparent !important;}  
.home:not(.header-visible) header:after{opacity:0;}
.home:not(.header-visible) header .logo, .home:not(.header-visible) header .header-bttn{opacity:0; visibility:hidden;}
body.home header.elementor-sticky__spacer { display: none;}

.banner-bttn {margin: 0;padding: 0;list-style: none;font-size: 0.85vw;position: absolute;z-index: 99;left: 3vw; top: 5vw;}
.banner-bttn a { color: inherit;white-space: nowrap;writing-mode: vertical-lr;transform: rotate(180deg);margin: 1vw 0;cursor: pointer;}
.banner-bttn li.bttn { display: flex;align-items: center;} 
.banner-bttn .content {
    padding: 0 40px 0 20px;
}
.banner-bttn .content p {margin: 0;} 
.banner-bttn .content{display:none;}
.banner-bttn.active li.bttn {background: #B5B2A8;position: relative;} 
.banner-bttn.active li.bttn:before {content: "";height: 100%;width: 20%;display: block;position: absolute;background: #b5b2a8;left: -20%;}
.banner-bttn i.close {right: 0.5vw;top: 0.7vw;} 	
nav ul li a.highlighted { font-weight: 600 !important;}
.banner-bttn li > a {/* font-family: 'Canela Web'; */ font-size: 1.3vw; }

.banner-bttn .online-termin a {
	background-color: #8F7B7C;
	color: white;
	padding: 1vw 0;
	text-decoration: none;
	display: inline-block;
	writing-mode: vertical-lr;
	transform: rotate(180deg);
	margin: 1vw 0;
	text-align: center;
}

.banner-bttn .online-termin a:hover {
	background-color: #CABCBA;
}

.online-termin-button {
	background-color: #8F7B7C;
	text-transform: uppercase;
	color: white;
	padding: 10px 20px;
	text-decoration: none;
	display: inline-block;
	border: none;
	cursor: pointer;
	font-family: inherit;
	font-size: 16px; 
}
a.online-termin-button {
	color: #fff !important;
}

.online-termin-button:hover {
	background-color: #CABCBA;
}


body header{transition:none !important;}
.home.menu-toggle header .logo, .home.menu-toggle header .header-bttn{opacity: 1 !important;visibility: visible !important;}
.home.menu-toggle header {background-color: #fff !important;}
.home.menu-toggle header:after {opacity: 1 !important;}
.home.menu-toggle .on-off{display:none;}

.gefunden img {height: 30vw;object-fit: cover;}
.werte img {object-fit: cover;height: 40vw;}
.coimbra img {height: 41vw;object-fit: cover;object-position: 33%;}
.kursangebot img {width: 100%;height: 35vw;object-fit: cover;object-position: 37%;}




/* MEDIA CSS */ 

@media(min-width:1025px){ 
	.headerpic img {min-height: 700px;}
	
	.subs_headerpic img {height: 40vw;object-fit: cover;}
	.wpbf-impressum .subs_headerpic img {object-position: right center;}
}
 
@media(min-width:768px){ 

	header:after {	content: ""; height: 11px;	width: 52%;	background: #fff;	display: block;	position: absolute;	bottom: 0;	left: -5px;	z-index: 99;	}
	.on-off{ top: 0.5vw;}
	.home.header-visible .on-off{ z-index: 9 !important;}
	
 

}
@media(min-width:1600px){ 

	body { font-size:1vw; line-height:1.5; letter-spacing: 0.03vw;}   
	.elementor-button {font-size: 0.9vw !important;line-height: 1.5 !important;} 
	footer { font-size:1vw; }    
	h1 { font-size: 4.5vw;  letter-spacing: 0.2vw; }
	h2 { font-size: 2.3vw;  letter-spacing: 0.15vw; } 
	h3, .h3 .elementor-heading-title { font-size: 1.3vw;  letter-spacing: 0.10vw; }  
	.xl h2 { font-size: 2.7vw;}  
	.elementor-button:hover, .hover .elementor-button {padding-bottom: 0.1vw; margin-bottom: -0.1vw;}
	.num-infolist h2 {font-size: 2vw !important;}
	.num-infolist h3 {font-size: 1.1vw !important;} 
	.home-slider .swiper-slide-contents * {font-size: 2vw !important;}  
	#home_info_box {width: 22vw !important; max-width: 22vw !important; }
 
}   
 

@media(max-width:1590px){ 
 
	footer { font-size:16px; }   
	h1 { font-size: 68px; } 
	h2 { font-size: 38px; } 
	.xl h2 { font-size: 44px;} 
	.ft-time label { width: 100px; }  
	.mtech-menu a {padding: 9px 0px 9px 23px !important;} 
	.mtech-menu a:after {height: 1px;width: 13px;}
	.elementor-button:hover, .hover .elementor-button {padding-bottom: 2px; margin-bottom:-2px;} 
	.home-slider .elementor-slide-description:before {width: 40px;height: 2px;margin: 0 20px 15px 20px;}
	div#map {height: 38.50vw; }
	.on-off { width: 280px !important;font-size: 15px;}
	.on-off a.close {width: 14px;height: 16px;top: 10px;}  
	
	.elementor-swiper-button-next i {width: 60px; height:30px;}
	.header-bttn .content, ul.header-bttn, .banner-bttn .content, ul.banner-bttn { font-size: 14px; } 
	
	.header-bttn i.close, .banner-bttn i.close { width: 17px;	height: 17px; background-size: 11px; background-position: right; } 
	ul.header-bttn li {	padding-left: 45px;}
	.header-bttn .content {	padding: 110px 110px 10px 45px;	right: -72px;}
	.header-bttn .content span, .banner-bttn .content span { width: 85px; }

	header nav > ul > li > a {font-size: 22px;letter-spacing: 0.5px; margin-bottom: 12px;}
	header nav ul.sub-menu > li > a {font-size: 18px !important;letter-spacing: 0.05px;border: 0 !important;margin-bottom: 6px;padding-left: 25px !important;}
	header nav ul.sub-menu > li > a:before {height: 1px;width: 15px;}
 	.elementor-menu-toggle {margin-top: 4px;}
	.elementor-menu-toggle {margin-top: 4px;width: 35px;height: 19px;}
 
	.banner-bttn a {font-size: 15px; margin: 30px 0;}
	.banner-bttn i.close { right: 15px;	top: 20px; }
	.banner-bttn .content {	padding: 0 50px 0 30px;	} 
	.banner-bttn {margin-top: 30px;}
	
}
 
 
@media(max-width:1300px){ 

	h1 { font-size: 46px; }
	h2 { font-size: 30px; } 
	h3, .h3 .elementor-heading-title { font-size: 20px; }  
	.xl h2 { font-size: 36px;}  
	footer { font-size:15px; }    
	.wir-dr-img img {height: 40vw;} 
	.on-off br + br {display: none;} 
	
} 

@media(max-width:1024px){ 
	
	.wir-dr-img img {height: 50vw;}
	.home-slider .elementor-slide-description:before {width: 30px;height: 2px;margin: 0 15px 10px 15px;}
	.elementor-swiper-button-next {width: 100px;}
	.elementor-swiper-button-next i {right: 20px;} 
 
	ul.header-bttn li {	padding-left: 25px;	}
	.header-bttn .content {	padding: 75px 50px 0px 25px; right: -35px; }
	.header-bttn i.close, .banner-bttn i.close { right: 25px; }
	
	.banner-bttn li > a {/* font-family: 'Canela Web'; */ font-size: 18px; }
	.banner-bttn .online-termin {
		display: none;
	}
 
	header nav{ height: calc(100% - 60px);}
	.elementor-menu-toggle {margin-top: 4px;width: 30px;height: 17px;} 
	header nav > ul > li > a {line-height: 1.3 !important;font-size: 16px; margin-bottom: 17px;}
	header nav > ul {padding: 35px 25px !important;} 
	header nav ul.sub-menu > li > a {font-size: 14px !important;margin-bottom: 2px;padding-left: 20px !important;}
	header nav ul.sub-menu > li > a:before{ width: 10px;} 
	ul.sub-menu {padding: 0 0 15px 0;} 
 
 	.gefunden img {height: 42vw;object-fit: cover;}
	 .coimbra img {height: 52vw;object-fit: cover;object-position: 33%;}
} 
 

@media(max-width:767px){ 

	body, .elementor-button * { font-size:16px;} 
	h1 { font-size: 36px; }
	h2 { font-size: 26px; }  
	h3, .h3 .elementor-heading-title { font-size: 18px; } 
	.xl h2 { font-size: 32px;}  
	.wir-dr-img img {height: 350px;} 
	.mtech-menu a {padding: 5px 0px 5px 15px !important;font-size: 15px !important;}
	.mtech-menu a:after { width: 8px;}
   .home-slider .elementor-slide-description:before {width: 22px;height: 1px;margin: 0 10px 8px 10px;}
 	div#map {height: 70vw; } 
	.on-off { width: 255px !important; font-size: 12px; line-height: 1.3;	padding: 10px;	}
	.elementor-swiper-button-next i {right: 10px; width: 35px;height: 20px;background-size: 32px;} 
	.header-bttn .content {right: -23px;padding: 20px 20px 0px 30px;width: calc(100% + 48px);top: 60px;}
	.header-bttn i.close, .banner-bttn i.close {right: 20px;top: 10px;}
	
	ul.header-bttn {
		flex-wrap: wrap;
		justify-content: flex-end;
	}
	
	ul.header-bttn li.online-termin {
		flex-basis: 100%;
		margin-bottom: 10px;
		text-align: right;
	}
	
	ul.header-bttn li:not(.online-termin) {
		flex: 0 0 auto;
		padding-left: 0;
		text-align: right;
		margin-left: 10px;
	}
	
	header nav { height: calc(100% - 67px);	width: 85% !important; max-width: 85% !important; min-width: 85% !important; }
	header nav > ul { padding: 20px 15px !important; }
	header nav > ul > li > a{ font-size: 15px; line-height: 1.2 !important;}
	header nav ul.sub-menu > li > a {font-size: 13px !important;line-height: 1.4 !important;}
	.elementor-menu-toggle {top: 5px;}.elementor-menu-toggle.elementor-active {top: 10px;}

	.banner-bttn a { font-size: 14px; margin: 10px 0; }
	.banner-bttn { margin-top: 70px; }
	.banner-bttn .content {	padding: 0 10px 0  10px; font-size: 13px; }
	.banner-bttn i.close { top: 5px; right: 5px; }
	.header-visible .on-off {z-index: 9 !important;}
	.num-infolist h3 br {display: none;}
	
	.gefunden img {height: 100vw;object-fit: cover;}
	.werte img {object-fit: cover;height: 100vw;}
	.coimbra img {height: 100vw;object-fit: cover;object-position: 33%;}
	
	#home_info_box {position: relative !important; width: 100% !important; max-width: 100%; right: auto; top: auto;text-align: center;}
	#home_info_box .elementor-widget-container {margin: 0;}
} 


