/*
Theme Name:		Kulturweg
Version: 		1.13
Author: 		mohnrot
Author URI: 	http://mohnrot.ch
*/

@import "https://use.typekit.net/uvy1pin.css";



* {
	font-smoothing: antialiased;
	-webkit-font-smoothing: antialiased;
	box-sizing: border-box;
}

body {
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
}

a {
	text-underline-offset: 0.2em;
}

/*
 * Text and navigation link styles.
 * Necessary until the following issue is resolved in Gutenberg:
 * https://github.com/WordPress/gutenberg/issues/27075
 */
.wp-block-cover {
    max-width: 1300px; /* Ersetze 1200px durch die gewünschte maximale Breite */
    margin-left: auto;
    margin-right: auto;
}

	@media (max-width: 599px) {
		.wp-block-cover {
			min-height: 50vw !important;
		}
	}
.entry-content,
footer {
	margin-block-start: 0 !important;
}
 .entry-content > * {
	margin-block-start: 0 !important;
 }

 .entry-content > .wp-block-group.has-background {
	 padding-top: 4.5em;
	 padding-bottom: 4.5em;
 }

 *:first-child {
	 margin-block-start: 0;
	 margin-top: 0;
 }

 *:last-child {
	 margin-block-end: 0;
	 margin-bottom: 0;
 }

body {
	padding-top: 4em !important;
}

header {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 9999;
}


	.is-scrolling header {
		box-shadow: 0 0 1em rgba(0,0,0,0.2);
	}


	header .custom-logo-link {
		width: 15rem;
		height: auto;
		position: absolute;
		top: 0;
		transform: translateX(-5%) translateY(-18%);
		transition: all 0.3s ease-out;
	}

		header .custom-logo-link img {
			width: 100% !important;
			height: auto !important;
		}

		@media (max-width: 599px) {
			body {
				padding-top: 6em !important;
			}
			header {
				height: 6em !important;
				background: #fff;
			}
			header .custom-logo-link {
				width: 8rem;
			}

			header .wp-block-navigation__responsive-container-open  {
				position: absolute;
				top: 0;
				color: var(--wp--preset--color--foreground) !important;
				transform: scaleX(1.5) translateY(-2.5em);
			}

			header .wp-block-navigation__responsive-container-close {
				position: absolute;
				top: 0;
				right: 0;
				color: #fff !important;
				transform: translateX(1.25em) translateY(-1.25em);

			}
		}

		@media (min-width: 600px) {
			.is-scrolling header .custom-logo-link {
				width: 8rem;
				height: auto;
				position: absolute;
				top: 0;
				transform: translateY(-18%);
			}
		}

	header nav {
		font-size: 1.1em;
		line-height: 1;
		font-weight: bold;
		margin-top: 2em !important;
		color: #000;
	}

	header .current-menu-ancestor,
	header .current-menu-item {
		color: var(--wp--preset--color--foreground) !important;
	}


	@media (min-width: 600px) {
		.subheader-background {
			height: 0;
			background: rgba(61, 51, 41, 0.97);
			transition: all 0.2s ease-out;
			overflow: hidden;
		}

		.subheader-background.is-active {
			height: calc(100vh - 4em);
		}

		.subheader-background::before {
			content: "";
			display: block;
			width: 30em;
			height: 30em;
			background: url(assets/images/lotus.svg) no-repeat center;
			background-size: contain;
			opacity: 0;
			transform: translateX(-25%);
			transition: all 0.2s ease-out;
			margin-top: 15em;
		}

		.subheader-background.is-active::before {
			opacity: 0.5;
		}


		header nav,
		header nav ul,
		header nav ul li {
			position: static !important;
		}


		header nav ul ul.wp-block-navigation__submenu-container {
			padding-top: 3em;
			font-size: 2em;
			line-height: 1;
			position: absolute !important;
			left: 0;
			width: calc(100vw - 6em) !important;
			max-width: 1160px !important;
			background: transparent !important;
			border: 0 !important;
			box-shadow: none !important;
			color: var(--wp--preset--color--tertiary) !important;
			display: flex !important;
			flex-flow: row wrap !important;
			gap: 0 1em;
		}

		header nav ul ul.wp-block-navigation__submenu-container li a {
			padding-left: 0 !important;
			padding-right: 0 !important;
		}

		@media (min-width: 1000px) {
			header nav ul ul.wp-block-navigation__submenu-container {
				padding-top: 3em;
				font-size: 1.1em;
				line-height: 1;
			}
		}

		@media (min-width: 1100px) {
			header nav ul ul.wp-block-navigation__submenu-container {
				padding-top: 3em;
				font-size: 1.25em;
				line-height: 1;
			}
		}

			@media (min-width: 1300px) {
				header nav ul ul.wp-block-navigation__submenu-container {
					padding-top: 3em;
					font-size: 1.5em;
					line-height: 1;
				}
			}

			header nav ul ul.wp-block-navigation__submenu-container li {
				width: calc(33.33% - 0.67em);
			}

			@media (max-width: 800px) {
				header nav ul ul.wp-block-navigation__submenu-container li {
					width: calc(50% - 1em);
				}
			}

			header nav ul ul .current-menu-item {
				color: #fff !important;
			}
	}

	@media (max-width: 599px) {
		.wp-block-navigation__responsive-container {
			padding: 2em !important;
		}

		.wp-block-navigation__responsive-container ul {
			gap: 0.5em !important;
		}

		.wp-block-navigation__responsive-container .wp-block-navigation__responsive-container-content {
			margin-top: 0 !important;
			padding-top: 0 !important;
		}

		.wp-block-navigation__responsive-container .wp-block-navigation__responsive-container-content > ul {
			font-size: 2em;
			color: #fff !important;
		}

		.wp-block-navigation__responsive-container .wp-block-navigation__responsive-container-content > ul ul {
			font-size: 0.75em;
		}

		.wp-block-navigation__responsive-container .wp-block-navigation__responsive-container-content a {
			color: #fff !important
		}
	}

.hero-gallery {
	gap: 0 !important;
	margin-left: 2.375em;
	position: relative;
}

.hero-gallery.logo-cover {
	align-items: stretch !important;
}

	.hero-gallery::before {
		content: "";
		display: block;
		position: absolute;
		background: var(--wp--preset--color--primary);
		top: 0;
		right: 100%;
		width: 2.375em;
		height: 100%;
	}

	.entry-content > .hero-gallery:first-child::before { background: #69465e; }
	.hero-gallery.has-foreground-background-color::before { background: var(--wp--preset--color--foreground); }
	.hero-gallery.has-secondary-background-color::before { background: var(--wp--preset--color--secondary); }
	.hero-gallery.has-tertiary-background-color::before { background: var(--wp--preset--color--tertiary); }

	@media (min-width: 1236px) {
		.hero-gallery {
			margin-left: calc((100vw - 1160px) / 2);
		}

		.hero-gallery::before {
			width: calc((100vw - 1160px) / 2);
		}
	}

.hero-gallery > * {
	width: 54% !important;
}

	@media (max-width: 700px) {
		.hero-gallery > * {
			display: none;
		}
	}

	.hero-gallery > * > img {
		width: 100%;
		height: auto;
	}

	.hero-gallery.logo-cover figure > img {
		height: 100%;
		object-fit: cover;
	}

.hero-gallery > *.is-small {
	width: 46% !important;
}

	@media (max-width: 700px) {
		.hero-gallery > *.is-small {
			width: 100% !important;
			display: block;
		}
	}

	.hero-gallery > *.is-small > img {
		width: 100%;
		height: auto;
	}

	.hero-gallery.logo-cover .header-logo-holder {
		padding-top: 2em;
		padding-bottom: 2em;
		height: 100%;
		display: flex;
		flex-flow: column wrap;
		justify-content: space-between;
	}

	.hero-gallery.logo-cover .wp-block-site-logo.is-default-size {
		width: 100%;
	}

	.hero-gallery.logo-cover .wp-block-site-logo.is-default-size a {
		display: block;
		width: 70%;
		margin: 0 auto;
	}

		.hero-gallery.logo-cover .wp-block-site-logo.is-default-size img {
			width: 100%;
			height: auto;
		}



footer p {
	margin: 0 !important;
	line-height: 1.2;
}

footer > .wp-block-group {
	padding-top: 3em;
	padding-bottom: 1em;
}

footer .imprint {
	gap: 2em;
	margin-top: 4em;
}

footer .imprint > p {
	position: relative;
}

footer .imprint > p:not(:first-child)::before {
	content: "|";
	display: block;
	position: absolute;
	left: -1em;
}


form {

		display: flex;
		flex-flow: row wrap;
		margin-left: 0;
		position: relative;
		margin-bottom: 4em;
	}


	form .form-row {
		width: 100% !important;
		margin-bottom: 0.5rem;
	}

	form .form-row.double {
		gap: 10px;
		display: flex;
	}

		form .form-row.double > *  {
			flex: 1
		}

	.form-row.checkbox-row {

	}

	.form-row.space-up {
		margin-top: 1.5em;
	}

	.form-row:not(.checkbox-row) label {
		display: flex;
		background: #EAE6DE;
		width: 100%;
		padding: 0.7em 1em;
	}

		.form-row label > span:first-child {
			white-space: nowrap;
			margin-right: 0.5em;
		}

		.form-row label input {
			flex: 1 !important;
			display: block;
			width: auto;
		}

	.wpcf7-form-control-wrap {
		display: block;
		flex: 1;
	}

	form select,
	form textarea,
	form input[type='text'],
	form input[type='email'],
	form input[type='tel'],
	form input[type='number'],
	form input[type='submit'] {
		box-sizing: border-box;
		background: #EAE6DE;
		color: #333;
		appearance: none;
		-webkit-appearance: none;
		border: 2px solid #EAE6DE;
		border-radius: 0;
		padding: 0;
		font: inherit;
		line-height: 100%;
		width: 100%;
		outline: none;
		transition: all 0.2s ease-in-out;
	}

	form textarea {
		height: 8.2em;
	}

	form input::placeholder,
	form textarea::placeholder {
		color: var(--wp--preset--color--foreground);
	}

	form input[type='checkbox'] {
		border: 2px solid #EAE6DE;
		background: #EAE6DE;
		width: 1.25em;
		height: 1.25em;
		appearance: none;
		-webkit-appearance: none;
		margin: 0 !important;
		display: inline-block;
		transform: translateY(2px);
		border-radius: 0;
	}


		form input[type='checkbox']:checked {
			background: #C60C0E;
			border-color: #C60C0E;
		}

		.wpcf7-checkbox .wpcf7-list-item {
			display: block;
			margin-top: 0.5em;
		}

		.double-checkboxes .wpcf7-checkbox {
			display: flex;
			flex-flow: row wrap;
			gap: 1em;
		}

		.double-checkboxes .wpcf7-checkbox .wpcf7-list-item {
			width: calc(50% - 1em);
			margin-top: 0;
		}

	form .wpcf7-list-item {
		margin-left: 0 !important
	}




	form select:focus,
	form input[type='text']:focus,
	form input[type='email']:focus,
	form input[type='tel']:focus,
	form input[type='number']:focus,
	form input[type='submit']:focus {
		border: 2px solid #EAE6DE;
	}

	form select {
		background: #EAE6DE url(assets/images/arrow-down-white.svg) no-repeat center right 0.75em;
		background-size: 1em auto;
		border: 2px solid #EAE6DE;
		color: #fff;
		font-weight: bold;
	}

	form input[type='submit'] {
		background: var(--wp--preset--color--secondary);
		color: #fff;
		border: 0 !important;
		padding: 0.7em 1em;
		font-weight: bold;
		width: auto;
		font-size: 1.2rem;
		line-height: 120%;
		padding-left: 2.5rem;
		padding-right: 2.5rem;
		cursor: pointer;
		background-repeat: no-repeat;
		background-position: center right 1em;
		background-size: 1.1em;
		overflow: hidden;
		margin-top: 1em !important;
		font-family: var(--wp--preset--font-family--headlines);
		text-transform: uppercase;
	}

	.hidden {
		display: none;
	}

	@media (min-width: 700px){

	.flex-form {
		display: flex;
		flex-flow: row wrap;
		gap: 3em;
	}

	.flex-form > .half {
		width: calc(50% - 1.5em);
	}
}



iframe[src*="maps"] {
	width: 100% !important;
	max-width: 100% !important;
}


.grecaptcha-badge {
    visibility: hidden !important;
}

footer .wp-block-cover {
	min-height: 0 !important;
}

#rmOrganism,
#rmOrganism div,
#rmOrganism form {
	background: none !important;
}

#rmOrganism * {
	font: inherit !important;
}

.rmBase__content,
.rmBase__content div {
	background: none !important
}

	.rmBase__container {
		padding: 0 !important
	}

	.rmBase__section:nth-child(1),
	.rmBase__section:nth-child(2) {
		display: none;
	}

#rmOrganism input[type='text'] {
	border-radius: 0 !important;
	border: 0 !important;
	outline: none !important;
	box-shadow: none !important;
	width: 100% !important;
	background: rgba(255,255,255,0.5) !important;
}

#rmOrganism button[type='submit'] {
	font-weight: bold !important;
	width: fit-content !important;
	background: var(--wp--preset--color--primary) !important;
	font-size: 1.2em !important;
	line-height: 1.2 !important;
	border-radius: 0 !important;
	border: 0 !important;
	outline: none !important;
	box-shadow: none !important;
}

#rmOrganism .rmSubscription .rmBase__content,
#rmOrganism form,
#rmOrganism form .rmBase__container {
	width: 100% !important;
}

.is-imprint {
	margin-top: 6em !important;
}
