@font-face {
	font-family: 'Marcellus';
	src: url('/fonts/Marcellus_SC/MarcellusSC-Regular.ttf') format('truetype');
}

/* @font-face {
	font-family: 'imfell';
	src:url('/fonts/IM_Fell_English_SC/IMFellEnglishSC-Regular.ttf') format('truetype');
}
@font-face {
	font-family: 'Corben';
	src:url('/fonts/Corben/Corben-Regular.ttf') format('truetype');
} 
@font-face {
	font-family: 'Yanone';
	src:url('/fonts/Yanone_Kaffeesatz/static/YanoneKaffeesatz-Regular.ttf') format('truetype');
}
@font-face {
	font-family: 'Playfair Display';
	src:url('/fonts/Playfair_Display/static/PlayfairDisplay-Regular.ttf') format('truetype');
}
*/

@font-face {
	font-family: 'SegoeUI';
	/* src: url('/fonts/SegoeUI/Segoeuisl.ttf') format('truetype'); */
	src: url('/fonts/SegoeUI/segoeuil.ttf') format('truetype');
}

@font-face {
	font-family: 'Josefin_Sans';
	src: url('/fonts/Josefin_Sans/static/JosefinSans-Regular.ttf') format('truetype');
}

@font-face {
	font-family: 'Cormorant';
	src: url('/fonts/Cormorant/static/Cormorant-Regular.ttf') format('truetype');
}

@font-face {
	font-family: 'Open Sans';
	src: url('/fonts/Open_Sans/static/OpenSans-Regular.ttf') format('truetype');
}

@font-face {
	font-family: 'Lato';
	src: url('/fonts/Lato/Lato-Regular.ttf') format('truetype');
}

@font-face {
	font-family: 'Raleway';
	src: url('/fonts/Raleway/static/Raleway-Regular.ttf') format('truetype');
}

@font-face {
	font-family: 'RobotoCondensed';
	src: url('/fonts/Roboto_Condensed/static/RobotoCondensed-Light.ttf') format('truetype');
	/* src:url('/fonts/Roboto_Condensed/static/RobotoCondensed-Medium.ttf') format('truetype'); */
	/* src:url('/fonts/Roboto_Condensed/static/RobotoCondensed-Regular.ttf') format('truetype'); */
}

@font-face {
	font-family: 'NotoSans';
	/* src: url('/fonts/Noto_Sans/static/NotoSans_Condensed-Light.ttf') format('truetype'); */
	src: url('/fonts/Noto_Sans/static/NotoSans-Light.ttf') format('truetype');
	/* src: url('/fonts/Noto_Sans/static/NotoSans-ExtraLight.ttf') format('truetype'); */
}

*,
*::after,
*::before {
	box-sizing: border-box;
}


body {
	--color-green: #31cd1c;
	--color-green_hover: #2ab119;

	--color-text: rgb(64, 65, 47);
	--color-hover: rgb(46, 47, 33);
	/* --color-hover: rgba(0, 0, 0, 0.5); */
	--color-h1: rgb(105, 105, 57);

	/* --color-bg: #ffffff; */
	/* https://octet.design/colors/palette/sunflower-in-color-palette-1732873931/ */
	--color-bg: #cbcaba;
	--color-bg: #e4e4db;

	--color-button: var(--color-text);
	--color-button-hover: var(--color-h1);
	--color-link: var(--color-text);
	--color-link-hover: var(--color-hover);

	/* Footer */
	--color-footer-bg-oben: #a8a88f;
	--color-footer-bg-unten: var(--color-text);

	/* Kontakt Seite */
	--color-bg-view-1: #f3efe6;
	--color-bg-view-2: #ffffff;

	/* --color-menu: #7ec59d;
	--color-menu-hover: #128b47;
	--color-bg-menu: #000;
	--color-button-menu: #000;
	--color-button-menu-hover: #79a18a;
	--color-button-close: #fff;
	--color-button-close-hover: #79a18a; */
	/* --font_text: 'Josefin_Sans', 'RobotoCondensed', 'NotoSans', 'Raleway', 'Lato', 'Open Sans', Helvetica, Arial, sans-serif; */
	--font_text: 'SegoeUI', 'NotoSans', 'Raleway', 'Lato', 'Open Sans', Helvetica, Arial, sans-serif;
	--font_titel: 'Cormorant', 'Marcellus', 'Playfair Display', serif;

	color: var(--color-text);
	background-color: var(--color-bg);
	font-family: var(--font_text);
	font-size: 16px;
	font-weight: 300;
	line-height: 1.5;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	overflow-x: hidden;
	margin: 0;
}

html {
	font-family: var(--font_text);
	font-size: 16px;
	font-weight: 300;
	line-height: 1.5;
	background: var(--color-bg);
	color: var(--color-text);
}

.uk-h1,
.uk-h2,
.uk-h3,
.uk-h4,
.uk-h5,
.uk-h6,
.uk-heading-2xlarge,
.uk-heading-large,
.uk-heading-medium,
.uk-heading-small,
.uk-heading-xlarge,
h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: var(--font_titel);
	color: var(--color-h1);
}


.uk-card-default .uk-card-title,
.uk-card-default,
.uk-card-title {
	color: var(--color-h1);
}

.uk-card-default {
	overflow: hidden;
	border-radius: 4px;
	margin-bottom: 2em;
}

.uk-text-meta {
	color: var(--color-text);
}

.uk-hr,
hr {
	border-top: 1px solid #cbcaba;
}

b,
strong {
	font-weight: bold;
}

a {
	text-decoration: none;
	color: var(--color-link);
	outline: none;
	cursor: pointer;
}

a:hover {
	color: var(--color-link-hover);
	outline: none;
}

/* Better focus styles from https://developer.mozilla.org/en-US/docs/Web/CSS/:focus-visible */
/* a:focus {
	/* Provide a fallback style for browsers that don't support :focus-visible 
	outline: none;
	background: lightgrey;
}

a:focus:not(:focus-visible) {
	/* Remove the focus indicator on mouse-focus for browsers that do support :focus-visible 
	background: transparent;
}

a:focus-visible {
	/* Draw a very noticeable focus style for keyboard-focus on browsers that do support :focus-visible 
	outline: 2px solid #fff;
	background: transparent;
} */


/* ==========================================================================
UI-Kit Abpassungen
========================================================================== */
.uk-checkbox.uk-form-danger,
.uk-radio.uk-form-danger {
	border: 1px solid #d41212;
}

.uk-button-primary {
	background-color: var(--color-button);
	color: #fff;
	border: 1px solid transparent;
}

.uk-button-primary:hover {
	background-color: var(--color-button-hover);
	color: #fff;
}

.uk-input,
.uk-select,
.uk-textarea {
	background: #fff;
	color: #666;
	border: 1px solid #e5e5e5;
	border: 1px solid #d7d7d7;
}

.uk-input:focus,
.uk-select:focus,
.uk-textarea:focus {
	outline: 0;
	background-color: #fff;
	color: #666;
	border-color: var(--color-bg);
}

.uk-select:not([multiple]):not([size]) option {
	color: var(--color-text);
}

select option:enabled:hover {
	background-color: var(--color-hover);
}

select:hover option:hover {
	background-color: var(--color-hover);
}

.uk-select option:hover {
	background-color: var(--color-hover);
}

/********************************************************
/* Buttons
/********************************************************/
.uk-button,
.uk-button.button_slide {
	position: relative;
	-webkit-transition: color .25s ease-out, background-color .25s ease-out, border-color .25s ease-out;
	-o-transition: color .25s ease-out, background-color .25s ease-out, border-color .25s ease-out;
	transition: color .25s ease-out, background-color .25s ease-out, border-color .25s ease-out;
	-webkit-transition-delay: .1s;
	-o-transition-delay: .1s;
	transition-delay: .1s;
}

.uk-button.button_slide:hover {
	color: #fff;
	/* background-color: transparent; */
	background-color: var(--color-button);
}

.uk-button.button_slide .btn-text {
	position: relative;
	z-index: 1;
}

.uk-button.button_slide .background-holder {
	position: absolute;
	top: -1px;
	left: -1px;
	width: calc(100% + 2px);
	height: calc(100% + 2px);
	background-color: #7f4b3c;
	background-color: var(--color-button-hover);
	-webkit-transform: scaleX(0);
	-ms-transform: scaleX(0);
	transform: scaleX(0);
	-webkit-transition: 0.5s cubic-bezier(.75, .01, .13, 1.01);
	-o-transition: 0.5s cubic-bezier(.75, .01, .13, 1.01);
	transition: 0.5s cubic-bezier(.75, .01, .13, 1.01);
	-webkit-transform-origin: left;
	-ms-transform-origin: left;
	transform-origin: left;
}

.uk-button.button_slide:hover .background-holder {
	-webkit-transform: scaleX(1);
	-ms-transform: scaleX(1);
	transform: scaleX(1);
}

/* ==========================================================================
Olox allgemeine Classes
========================================================================== */
.display_no {
	display: none;
	visibility: hidden;
	opacity: 0;
}

.display_hidden {
	visibility: hidden;
	opacity: 0;
}

.nicht_aktiv {
	opacity: 0.5;
}

.opacity_50 {
	opacity: 0.5;
}

.olox_fehler {
	font-size: 2.5em;
	color: red;
	text-align: center;
	line-height: 1em;
}

.full_height {
	height: 100%;
}


.rot {
	color: var(--color-rot);
}

.color_titel {
	color: var(--color-rot);
}

.color_hell {
	color: var(--color-text_hell);
}

.list_item {
	border-top: 1px solid #ccc;
	padding: 30px 30px;
}

.text-lead {
	font-size: 1.3rem;
	line-height: 1.5;
}




/* ==========================================================================
Page Loader
========================================================================== */
.loading main {
	opacity: 0;
}

main {
	opacity: 1;
}

.js .loading::before,
.js .loading::after {
	content: '';
	position: fixed;
	z-index: 1000;
}

.js .loading::before {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: var(--color-bg);
}

.js .loading::after {
	top: 50%;
	left: 50%;
	width: 60px;
	height: 60px;
	margin: -30px 0 0 -30px;
	border-radius: 50%;
	opacity: 0.4;
	background: var(--color-link);
	animation: loaderAnim 0.7s linear infinite alternate forwards;
}


@keyframes loaderAnim {
	to {
		opacity: 1;
		transform: scale3d(0.5, 0.5, 1);
	}
}




/* ==========================================================================
Kontakt SVG
========================================================================== */
.view--2 {
	background: var(--color-bg-view-2);
	color: #f0506e;
	pointer-events: none;
	opacity: 0;
	display: none;
	display: flex;
	justify-content: center;
	align-items: center;
}

.view.view--open {
	pointer-events: auto;
	opacity: 1;
	display: block;
	position: absolute;
	z-index: 2200;
	width: 100%;
	height: 100%;
	/* top: 0px; */
	overflow: hidden;
}

.kontakt_overlay {
	position: absolute;
	z-index: 3000;
	pointer-events: none;
	width: 100%;
	height: 100%;
	top: 0px;
}

.view--kontakt {
	position: absolute;
	z-index: 2000;
	width: 100%;
	height: 100%;
	display: none;
}

.view--kontakt.open {
	display: block;
}

.frame--view-open {
	overflow: hidden;
}

.button--close {
	position: absolute;
	right: 20px;
	top: 20px;
}

.kontakt_div {
	padding: 25px;
	flex-direction: column;
}

.kontakt_titel {
	font-family: var(--schrift_logo);
	font-size: 2.5rem;
}

.kontakt_untertitel {
	font-size: 1.5rem;
}

.kontakt_text {
	font-size: 1.0rem;
	line-height: 1.5;
}

.moin_logo_kontakt {
	width: 50vW;
	margin-bottom: 20px;
	padding-right: 20px;
}

@media (min-width: 800px) {
	.kontakt_div {
		padding: 0px;
		flex-direction: row;
	}

	.kontakt_titel {
		font-size: 5.5rem;
	}

	.kontakt_untertitel {
		font-size: 2.5rem;
	}

	.kontakt_text {
		font-size: 1.0rem;
		line-height: 1.5;
	}

	.moin_logo_kontakt {
		width: 20vW;
		margin-bottom: 0;
	}
}



/* ==========================================================================
Google maps marker styles 
https://developers.google.com/maps/documentation/javascript/advanced-markers/html-markers?hl=de#maps_advanced_markers_html-css 
========================================================================== */
/* ==========================================================================
map
========================================================================== */
#map {
	height: 50vh;
	max-width: 100%;
}

.showmap {
	height: 100%;
	width: 100%;
	background-color: #31cd1c;
	background-color: #c9c9c9;
}

.showmap .uk-button {
	background-color: #646c74;
	color: #fff;
	border: 1px solid transparent;
}

@media screen and (min-width:960px) {
	#map {
		width: 50vw;
	}
}

.maps_marker {
	background-color: #4285F4;
	background-color: #1e87f0;
	border-radius: 8px;
	color: #FFFFFF;
	font-size: 14px;
	padding: 10px 15px;
	position: relative;
}

.maps_marker::after {
	content: "";
	position: absolute;
	left: 50%;
	top: 100%;
	transform: translate(-50%, 0);
	width: 0;
	height: 0;
	border-left: 8px solid transparent;
	border-right: 8px solid transparent;
	border-top: 8px solid #1e87f0;
}

#map_content #firstHeading {
	margin-top: -0.1em;
}

#map_content .map_link {
	margin-top: 0.5em;
}

/* set the default transition time */
:root {
	--delay-time: .5s;
}

@keyframes drop {
	0% {
		transform: translateY(-200px) scaleY(0.9);
		opacity: 0;
	}

	5% {
		opacity: 0.7;
	}

	50% {
		transform: translateY(0px) scaleY(1);
		opacity: 1;
	}

	65% {
		transform: translateY(-17px) scaleY(0.9);
		opacity: 1;
	}

	75% {
		transform: translateY(-22px) scaleY(0.9);
		opacity: 1;
	}

	100% {
		transform: translateY(0px) scaleY(1);
		opacity: 1;
	}
}

.drop {
	animation: drop 0.3s linear forwards var(--delay-time);
}

.bounce {
	animation: bounce 2s infinite;
	-webkit-animation: bounce 2s infinite;
	-moz-animation: bounce 2s infinite;
	-o-animation: bounce 2s infinite;
}

@-webkit-keyframes bounce {

	0%,
	20%,
	50%,
	80%,
	100% {
		-webkit-transform: translateY(0);
	}

	40% {
		-webkit-transform: translateY(-30px);
	}

	60% {
		-webkit-transform: translateY(-15px);
	}
}

@-moz-keyframes bounce {

	0%,
	20%,
	50%,
	80%,
	100% {
		-moz-transform: translateY(0);
	}

	40% {
		-moz-transform: translateY(-30px);
	}

	60% {
		-moz-transform: translateY(-15px);
	}
}

@-o-keyframes bounce {

	0%,
	20%,
	50%,
	80%,
	100% {
		-o-transform: translateY(0);
	}

	40% {
		-o-transform: translateY(-30px);
	}

	60% {
		-o-transform: translateY(-15px);
	}
}

@keyframes bounce {

	0%,
	20%,
	50%,
	80%,
	100% {
		transform: translateY(0);
	}

	40% {
		transform: translateY(-30px);
	}

	60% {
		transform: translateY(-15px);
	}
}

/* Google maps marker styles Ende */