@font-face {
	font-family: 'Inter_18pt-Regular';
	src: url('/wp-content/uploads/fonts/Inter_18pt-Regular.ttf');
}

@font-face {
	font-family: 'PlayfairDisplay';
	src: url('/wp-content/uploads/fonts/PlayfairDisplay-Bold.ttf');
}

@font-face {
	font-family: 'ElMessiri-Bold';
	src: url('/wp-content/uploads/fonts/ElMessiri-Bold.ttf');
}





p,
div,
a,
li,
span {

	font-family: 'Inter_18pt-Regular' !important;
}


h1,
h2,
h3,
h4, 
h5{
	font-family: 'PlayfairDisplay' !important;

}

strong{
	
	font-weight: 600;
}

.def_special_font a,
.def_special_font h1,
.def_special_font h2,
.def_special_font h3, .def_special_font h4, .def_special_font span, .def_special_font p{
	font-family: 'PlayfairDisplay' !important;

}

.def_logo_font a, .def_logo_font span{
	
		font-family: 'ElMessiri-Bold' !important;
}

.def_colored_strong strong{
	
	color: #0531AF;
}

.def_upper_header i{
	
	color: var(--e-global-color-accent);
	margin-right: 3px;
}


.elementor-image-box-title{

line-height: 1.2;
}

.elementor-image-box-title a{
	
		font-family: 'PlayfairDisplay' !important;
	
}

.lang-item a{
	
	justify-content: start !important;
	
}

.lang-item img{
	
	margin-right: 5px;
}

.pll-parent-menu-item .sub-menu{
	
	width: auto !important;
	min-width: 0  !important;; 
	margin-left: 40px;
	background-color: rgba(255,255,255,0.2) !important;
}


.def_border_gradient{
	
	display: inline-block !important;
  padding: 15px !important;
  background: linear-gradient(135deg, #8000807A, #000);
	overflow: hidden; 
	border-radius: 11em 6em 11em 6em !important;
}

.def_border_gradient img{
	
	display: block !important;
	border-radius: 10em 5em 10em 5em  !important;
}

.swal2-html-container {
	
	margin: 0 !important;
}

.def_img_bg_special img{
	
	background-color: #FFAF00;
}

.elementor-slideshow__title{
	
	display: none;
}

.elementor-image-box-content{
	
	padding: 0 !important;
}

.popup_button button{

	background-color: var(--e-global-color-accent) !important;
		padding: 13px 20px 13px !important;
	border-radius: 55px !important;
}


.popup_button button:hover{

	background-color: var(--e-global-color-primary) !important;
}

.popup_button button:active{

	background-color: var(--e-global-color-accent) !important;
}

.popup_button button:focus{

	background-color: var(--e-global-color-accent) !important;
}

.cky-btn-revisit-wrapper {

	background: #1a1a1a !important;
}

.cky-btn-accept{
	
	background-color: var(--e-global-color-accent) !important;
	border-color: var(--e-global-color-accent) !important
}

.cky-btn-preferences, .cky-btn-reject, .cky-btn-customize{

	color: #1a1a1a!important;
	border-color: #1a1a1a !important;
}


.def_text div, .def_text span{
	
	font-family: 'OpenSans' !important;
	
	margin-bottom: 0px;
}

.def_margin_0 p{
	
	margin-bottom: 0;
}

.def_ul ol, .def_ul ul{
	
	margin-bottom: 20px;
}

.def_ul li{
	
	margin-bottom: 5px;
}

.def_link i{
	
	margin-right: 5px;
	color: #303947;
}

.def_link a{
	
	color: #9CD1CB;
}

.def_colored span{
	
	color: var(--e-global-color-accent) !important;
}

.def_img_box {
  position: relative;
  display: inline-block;
}

.def_img_box::before,
.def_img_box::after {
  content: "";
  position: absolute;
  width: 100px; 
  height: 100px;
  border: 6px solid var(--e-global-color-accent); 
}

.def_img_box::before {
  top: 0px;
  left: 0px;
  border-right: none;
  border-bottom: none;
}

.def_img_box::after {
  bottom: 0px;
  right: 0px;
  border-left: none;
  border-top: none;
}



#menu-footer a{
    padding-right: 0;
	margin-left: 10px;
}

#menu-footer .current-menu-item a{
	text-decoration: underline;
}


.hfe-button-wrapper{
	
	margin-left: 35px !important;
}

.elementor-image-box-content{
	
	padding: 10px 20px 20px 20px;
}

.wpcf7-submit{
	
	color: #fff !important;
	background-color: var(--e-global-color-accent) !important;
	border: 1px solid var(--e-global-color-accent) !important;
	font-size: 14px;
	text-transform: normal;
	font-weight: 600;
	padding: 10px 20px;
}

.wpcf7-submit:hover{
	
	color: var(--e-global-color-accent) !important;
	background-color: transparent !important;
		border: 1px solid var(--e-global-color-accent)  !important;
}

.wpcf7 label{
	
	font-size: 12px;
	width: 100%;
	display: block;
	margin-bottom: 20px;
	text-transform: uppercase;
	color: #333;
}

.wpcf7 input:not([type="submit"]), .wpcf7 textarea{
	
	width: 100%;
	font-size: 14px;
	padding: 10px;
	background-color: #f8f8f8;
}


.wpcf7-acceptance .wpcf7-list-item{
	
	margin-left: 0;
}

.wpcf7-acceptance .wpcf7-list-item-label{
	
	line-height: 1.2em;
}

.wpcf7-acceptance .wpcf7-list-item-label a{
	
	color: #333;
	background-color: #FFED00;
}

.wpcf7 form.sent .wpcf7-response-output {
	
	border-color: var(--e-global-color-secondary);
	color: var(--e-global-color-secondary) ;
}

.wpcf7 form.invalid .wpcf7-response-output{
	
		border-color: var(--e-global-color-accent);
	color: var(--e-global-color-accent);
}

.def_form_col{
	
	display: grid;
	grid-template-columns:  repeat(2, 1fr);
	justify-items: stretch;
	align-items: center;
}


.def_form_col div:first-child{
	
	margin-right: 15px;
}

.def_form_col div:last-child{
	
	margin-left: 15px;
}

.def_gal .gallery-item{
	
	padding: 20px !important;
}


.def_kontakt_daten i{
	
	color: #FF7900;
	margin-right: 5px;
}

.def_kontakt_daten a{
	
	color: #fafafa;
}

.def_kontakt_daten h4{
	
	margin-bottom: 10px;
	font-weight: 600;
}


.def_kontakt_html p{
	
	font-size: 20px;
	font-weight: 600;
	margin-bottom: 10px;
	color: #fff;
}

.def_kontakt_html table{
	
	width: auto;
}

.def_kontakt_html table tbody>tr:nth-child(odd)>td, .def_kontakt_html table tbody>tr:nth-child(odd)>th{
	
		background-color: transparent;
}

.def_kontakt_html td, .def_kontakt_html th{
	
	padding: 0;
	font-size: 20px;
	border: none;
	color: #fafafa;
}

.def_kontakt_html th{
	
	padding: 2px 5px 2px 0;
}

.def_kontakt_html td{
	
	padding: 2px 0 2px 0;
}


.def_recht a{
	
	color: var(--e-global-color-accent) !important;
}

.def_footer_address a, .def_footer_address i{
	
	color: var(--e-global-color-accent) !important;
}

			.def_recht h2{
		
		font-size: 30px !important;
				margin: 30px 0 20px !important;
	}
	
		.def_recht h3{
		
		font-size: 24px !important;
			margin: 30px 0 20px !important;
	}
	
.def_seo_text{
	
	opacity: 0;
	visibility: hidden;
	position: absolute;
	left: -9999px;
}

.def_seo_text h1, .def_seo_text h2, .def_seo_text h3, .def_seo_text h4, .def_seo_text p{

	font-size: 1px !important;
	line-height: 1px !important;
}

.def_image_bg{
	
	background-color: #D7B357;
}

.footer_list li{
	
	list-style-type: none;
}

.guest_table td{
	
	font-weight: bold;
}

.guest_table tr td:nth-child(2), .guest_table tr td:nth-child(3){
	
	font-size: 20px;
	color: #2E572F;
	text-align: center;
}

.def_logo_footer .elementor-image-box-img{
	
	padding-right: 15px;
}

@media(max-width: 1500px){
	

/*body > *{
		
		display: none !important;
	}
	
	  body::before {
    content: "Webseiten-Version nicht sichtbar.";
    display: block;
    text-align: center;
    font-size: 20px;
    margin-top: 100px;
			color: #000;
  }*/
	
			.def_image{
		
		position: static !important;
	}
	
	.def_gal .gallery-item img{

  height: 100px;
}
	
}

@media(min-width: 1025px){
	
.def_haeder_menu li:not(:last-child){

    border-right: 1px solid #000;
}
	
.def_haeder_menu a{
	
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}
	
}


@media(max-width: 767px){
	
	.def_border_gradient{
	
  padding: 5px !important;
	border-radius: 8px !important;
}

.def_border_gradient img{
	
	display: block !important;
	border-radius: 8px !important;
}
	
	.def_logo_footer .elementor-image-box-img{
	
	padding-right: 0;
}
	
	.wpcf7 label{
	
	font-size: 14px;
}
	
		.def_form_col{

	grid-template-columns:  repeat(1, 1fr);
}


.def_form_col div:first-child{
	
	margin-right: 0px;
}

.def_form_col div:last-child{
	
	margin-left: 0px;
}
	
	/*.def_logo .elementor-image-box-wrapper {
    text-align: start;
		display:flex;
		flex-direction: row;
		align-items: left;
	
	}
	
	.def_logo .elementor-image-box-content {
		
		margin-left: 10px !important;
	}*/
	
	.def_logo p{
		
		white-space: nowrap;
	}
	

	.menu-item a.hfe-sub-menu-item{

		padding-left: 10px !important;
		padding-right: 10px !important;
	}

	#menu-footer a{

	margin-left: 0px;
}
	
		#menu-footer li:first-child a{

	margin-left: 0px;
			padding-left: 0;
}
	
		.def_recht h2{
		
		font-size: 22px !important;
	}
	
		.def_recht h3{
		
		font-size: 20px !important;
	}
	
			.def_recht h4{
		
		font-size: 18px !important;
	}
	
	
.def_kontakt_html td, .def_kontakt_html th{
	
	padding-right: 5px;
	font-size: 18px;
	border: none;
}
}