/*
Theme Name: Luegensteinmuseum
Theme URI: https://www.luegensteinmuseum-wuerzburg.com/
Author: Web-Publishing Ronge, Thomas Ronge
Author URI: https://www.web-publishing.de/
Description: Theme für luegensteinmuseum-wuerzburg.com
Version: 1.0
License: GNU General Public License v2
License URI: http://www.gnu.org/licenses/gpl-2.0.html
*/

/*

Klassen im Wordpress Backend:
back-dark				Accordion mit dunklem Hintergrund
last						Accordion > border-bottom: 1px solid #fcfcfc;
ul-no-margin-before	UL > kein Abstand davor
no-padding-bottom		Kein Abstand nach unten
white-space-nowrap	Kein Umbruch

Farben:
fcfcfc	Schrift fast weiß, rgb(251, 251, 251)			Lügensteinmuseum Schrift Weiß
																		Lügensteinmuseum Hintergrund Weiß
5f5f5f	Überschrift heller grau, rgb(129, 122, 122)	Lügensteinmuseum Schrift Hellgrau
302b2b	Überschrift dunkel, rgb(52, 46, 46)				Lügensteinmuseum Schrift Dunkelgrau
e8e8e8	Hintergrund hellgrau, rgb(232, 232, 232)		Lügensteinmuseum Hintergrund Hellgrau
342e2e	Hintergrund fast schwarz, rgb(52, 46, 46)		Lügensteinmuseum Hintergrund Dunkelgrau
*/

/* Variables */
/* start - Footer ################################################################################################################################ */
/* start - Navigation ############################################################################################################################ */
/* start - buttons ############################################################################################################################### */
/* start - Kontaktformular mit Plugin contact-form-7 ############################################################################################# */
/* start - Ein-Ausblenden der normalen/mobilen Navigation ######################################################################################## */
/* start - Am Blockelement auswählbar "Gesamte Breite" ########################################################################################### */
/* Tel-Links nur in Smartphones anzeigen: */

/* lora-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Lora';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/lora-v36-latin-regular.eot'); /* IE9 Compat Modes */
  src: url('fonts/lora-v36-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/lora-v36-latin-regular.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('fonts/lora-v36-latin-regular.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
       url('fonts/lora-v36-latin-regular.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
       url('fonts/lora-v36-latin-regular.svg#Lora') format('svg'); /* Legacy iOS */
}

/* lora-italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Lora';
  font-style: italic;
  font-weight: 400;
  src: url('fonts/lora-v36-latin-italic.eot'); /* IE9 Compat Modes */
  src: url('fonts/lora-v36-latin-italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/lora-v36-latin-italic.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('fonts/lora-v36-latin-italic.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
       url('fonts/lora-v36-latin-italic.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
       url('fonts/lora-v36-latin-italic.svg#Lora') format('svg'); /* Legacy iOS */
}

/* lora-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Lora';
  font-style: normal;
  font-weight: 700;
  src: url('fonts/lora-v36-latin-700.eot'); /* IE9 Compat Modes */
  src: url('fonts/lora-v36-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/lora-v36-latin-700.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('fonts/lora-v36-latin-700.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
       url('fonts/lora-v36-latin-700.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
       url('fonts/lora-v36-latin-700.svg#Lora') format('svg'); /* Legacy iOS */
}

/* lora-700italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Lora';
  font-style: italic;
  font-weight: 700;
  src: url('fonts/lora-v36-latin-700italic.eot'); /* IE9 Compat Modes */
  src: url('fonts/lora-v36-latin-700italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/lora-v36-latin-700italic.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('fonts/lora-v36-latin-700italic.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
       url('fonts/lora-v36-latin-700italic.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
       url('fonts/lora-v36-latin-700italic.svg#Lora') format('svg'); /* Legacy iOS */
}

/* Variables */
:root {

	--breite--header: 1240px;
	--breite--content: 1400px;
	--breite--footer: 1400px;

	/* Font Family */
	--global--font-primary: 'Lora', 'Arial', sans-serif;
	--global--font-secondary: 'Lora', 'Arial', sans-serif;

	/* Font Size */
	--global--font-size-xs: 12px;
	--global--font-size-sm: 14px;
	--global--font-size-base: 16px;
	--global--font-size-l: 24px;
	--global--font-size-lg: 26px;
	--global--font-size-xl: 28px;
	--global--font-size-xxl: 40px;
	--global--letter-spacing: normal;

	/* Line Height */
	--global--line-height-body: 1.7;
	--global--line-height-heading: 1.3;
	--global--line-height-page-title: 1.1;

	/* Headings */
	--heading--font-family: var(--global--font-secondary);
	--heading--font-size-h6: 16px;
	--heading--font-size-h5: 21px;
	--heading--font-size-h4: 23px;
	--heading--font-size-h3: 25px;
	--heading--font-size-h2: 27px;/*40px*/
	--heading--font-size-h1: 29px;
	--heading--letter-spacing-h6: 0.05em;
	--heading--letter-spacing-h5: 0.05em;
	--heading--letter-spacing-h4: var(--global--letter-spacing);
	--heading--letter-spacing-h3: var(--global--letter-spacing);
	--heading--letter-spacing-h2: var(--global--letter-spacing);
	--heading--letter-spacing-h1: var(--global--letter-spacing);
	--heading--line-height-h6: var(--global--line-height-heading);
	--heading--line-height-h5: var(--global--line-height-heading);
	--heading--line-height-h4: var(--global--line-height-heading);
	--heading--line-height-h3: var(--global--line-height-heading);
	--heading--line-height-h2: var(--global--line-height-heading);
	--heading--line-height-h1: var(--global--line-height-page-title);
	--heading--font-weight: normal;
	--heading--font-weight-page-title: 300;
	--heading--font-weight-strong: 600;
	--branding--color-text: var(--global--color-primary);
	--branding--color-link: var(--global--color-primary);
	--branding--color-link-hover: var(--global--color-secondary);
	--branding--title--font-family: var(--global--font-primary);
	--branding--title--font-size: var(--global--font-size-lg);
	--branding--title--font-size-mobile: var(--heading--font-size-h4);
	--branding--title--font-weight: normal;
	--branding--title--text-transform: uppercase;
	--branding--description--font-family: var(--global--font-primary);
	--branding--description--font-size: var(--global--font-size-sm);
	--branding--description--font-family: var(--global--font-primary);
	--branding--logo--max-width: 300px;
	--branding--logo--max-height: 100px;
	--branding--logo--max-width-mobile: 96px;
	--branding--logo--max-height-mobile: 96px;

	/* Colors */
	--global--color-text: #5f5f5f;
	--global--color-black: #000;
	--global--color-dark-gray: #28303d;
	--global--color-gray: #39414d;
	--global--color-light-gray: #f0f0f0;
	--global--color-green: #d1e4dd;
	--global--color-blue: #17649a;
	--global--color-red: #a72920;
	--global--color-orange: #e4dad1;
	--global--color-yellow: #eeeadd;
	--global--color-white: #fff;
	--global--color-white-50: rgba(255, 255, 255, 0.5);
	--global--color-white-90: rgba(255, 255, 255, 0.9);
	--global--color-primary: var(--global--color-light-gray);
	--global--color-secondary: var(--global--color-light-gray);

	/* Body text color, site title, footer text color. */
	--global--color-secondary: var(--global--color-text);

	/* Page, Body */
	--global--body-color-background: #fbfbfb;

	/* Main navigation */
	--primary-nav--font-family: var(--global--font-primary);
	--primary-nav--font-family-mobile: var(--global--font-primary);
	--primary-nav--font-size: var(--global--font-size-md);
	--primary-nav--font-size-sub-menu: var(--global--font-size-xs);
	--primary-nav--font-size-mobile: var(--global--font-size-sm);
	--primary-nav--font-size-sub-menu-mobile: var(--global--font-size-sm);
	--primary-nav--font-size-button: var(--global--font-size-xs);
	--primary-nav--font-style: normal;
	--primary-nav--font-style-sub-menu-mobile: normal;
	--primary-nav--font-weight: normal;
	--primary-nav--font-weight-button: 500;
	--primary-nav--color-link: #777777;
	--primary-nav--color-link-hover: #564c4c;
	--primary-nav--color-text: var(--global--color-primary);
	--primary-nav--padding: calc(0.66 * var(--global--spacing-unit));
	--primary-nav--border-color: var(--global--color-primary);

	/* Footer */
	--footer--color-text: var(--global--color-primary);
	--footer--color-link: var(--global--color-primary);
	--footer--color-link-hover: var(--global--color-primary-hover);
	--footer--font-family: var(--global--font-primary);
	--footer--font-size: var(--global--font-size-sm);
}

/*.wp-block-column {
	padding: 10px;
}*/
@media all and (max-width: 767px) {
	
}

/*div[class*='has-luegensteinmuseum'] .wp-block-heading {
	padding: 0 0 10px 0 !important;
	font-size: 30px;
}*/

html {
	width: 100%;
	position: relative;
	margin: 0px !important;
	padding: 0px !important;
	border: 0px !important;
}

body {
	width: 100%;
	height: 100%;
	margin: 0px !important;
	padding: 0px !important;
	border: 0px !important;
	font-family: var(--global--font-primary);
	font-weight: 300;
	color: var(--global--color-text);
	text-align: left;
	font-size: 16px;
	background-color: #fbfbfb;
}

b, strong {
	font-weight: 700;
}

blockquote, pre, p, td, img, ul, li {
	font-size: var(--global--font-size-base);
}

p.blocksatz {
	text-align: justify;
}

img, ul, ul li {
	border: 0;
	margin: 0;
	/*padding: 0;*/
}

.divContent UL,
.divContent OL {
	margin-top: 0px;
	margin-bottom: 15px;
	padding-top: 0px;
	padding-bottom: 0px;
	color: #5f5f5f;
}
.divContent UL LI {
	margin-top: 10px;
	margin-left: 20px;
	padding-top: 10px;
	font-size: var(--global--font-size-base);
}
/*.divContent ul li::marker, 
.divContent ol li::marker {
	color: #5f5f5f;
}*/

img {
	max-width: 100%;
	height: auto;
}

/*
luegensteinmuseum-schrift-weiss
luegensteinmuseum-schrift-hellgrau
luegensteinmuseum-schrift-dunkelgrau
luegensteinmuseum-hintergrund-weiss
luegensteinmuseum-hintergrund-hellgrau
luegensteinmuseum-hintergrund-dunkelgrau
*/
.has-luegensteinmuseum-schrift-weiss-color,
.has-luegensteinmuseum-schrift-weiss-color h1,
.has-luegensteinmuseum-schrift-weiss-color h2,
.has-luegensteinmuseum-schrift-weiss-color h3,
.has-luegensteinmuseum-schrift-weiss-color h4,
.has-luegensteinmuseum-schrift-weiss-color h5,
.has-luegensteinmuseum-schrift-weiss-color h6,
.has-luegensteinmuseum-schrift-weiss-color ul,
.has-luegensteinmuseum-schrift-weiss-color ul li::marker {
	color: #fcfcfc !important;
}
.has-luegensteinmuseum-schrift-hellgrau-color,
.has-luegensteinmuseum-schrift-hellgrau-color h1,
.has-luegensteinmuseum-schrift-hellgrau-color h2,
.has-luegensteinmuseum-schrift-hellgrau-color h3,
.has-luegensteinmuseum-schrift-hellgrau-color h4,
.has-luegensteinmuseum-schrift-hellgrau-color h5,
.has-luegensteinmuseum-schrift-hellgrau-color h6,
.has-luegensteinmuseum-schrift-hellgrau-color ul,
.has-luegensteinmuseum-schrift-hellgrau-color ul li::marker {
	color: #5f5f5f !important;
}
.has-luegensteinmuseum-schrift-dunkelgrau-color,
.has-luegensteinmuseum-schrift-dunkelgrau-color h1,
.has-luegensteinmuseum-schrift-dunkelgrau-color h2,
.has-luegensteinmuseum-schrift-dunkelgrau-color h3,
.has-luegensteinmuseum-schrift-dunkelgrau-color h4,
.has-luegensteinmuseum-schrift-dunkelgrau-color h5,
.has-luegensteinmuseum-schrift-dunkelgrau-color h6,
.has-luegensteinmuseum-schrift-dunkelgrau-color ul,
.has-luegensteinmuseum-schrift-dunkelgrau-color ul li::marker {
	color: #5f5f5f !important;
}
.has-luegensteinmuseum-hintergrund-weiss-background-color {
	background-color: #fbfbfb !important;
}
.has-luegensteinmuseum-hintergrund-hellgrau-background-color {
	background-color: #e8e8e8 !important;
}
.has-luegensteinmuseum-hintergrund-dunkelgrau-background-color {
	background-color: #666666 !important;
}

h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6,
h1.wp-block-heading, h2.wp-block-heading, h3.wp-block-heading, h4.wp-block-heading, h5.wp-block-heading, h6.wp-block-heading {
	margin: 0;
	color: #5f5f5f;
	font-size: var(--heading--font-size-h1);
	font-family: var(--global--font-primary);
	font-weight: 400;
	padding: 0 0 calc(var(--heading--font-size-h1) + 4px) 0 !important;
	line-height: normal;
	letter-spacing: -1.2px;
}
h2,h2.wp-block-heading,.h2 {font-size: var(--heading--font-size-h2);padding: calc(var(--heading--font-size-h2) + 10px) 0 calc(var(--heading--font-size-h2) + 5px) 0 !important;}
h3,h3.wp-block-heading,.h3 {font-size: var(--heading--font-size-h3);padding: calc(var(--heading--font-size-h3) + 8px) 0 calc(var(--heading--font-size-h3) + 4px) 0 !important;}
h4,h4.wp-block-heading,.h4 {font-size: var(--heading--font-size-h4);padding: calc(var(--heading--font-size-h4) + 6px) 0 calc(var(--heading--font-size-h4) + 3px) 0 !important;}
h5,h5.wp-block-heading,.h5 {font-size: var(--heading--font-size-h5);padding: calc(var(--heading--font-size-h5) + 4px) 0 calc(var(--heading--font-size-h5) + 2px) 0 !important;}
h6,h6.wp-block-heading,.h6 {font-size: var(--heading--font-size-h6);padding: calc(var(--heading--font-size-h6) + 2px) 0 calc(var(--heading--font-size-h6) + 1px) 0 !important;font-weight: 700;}

:root :where(p.has-background) {
	padding: 0;
}
h1.wp-block-heading {
	font-family: var(--global--font-primary);
	font-weight: 400;
	padding: 0 0 0 0;
	max-width: var(--breite--content);
	margin: 70px 0 20px 0;
	margin-left: auto;
	margin-right: auto;
	line-height: 32px;
}
@media all and (max-width: 1300px) {
	h1.wp-block-heading {
		padding-right: 35px;
	}
	h1.wp-block-heading:after {
		right: 40px;
	}
}

.em.em-item.em-item-single {
	width: 100%;
}
.wp-block-heading-single-news-wrapper {
	left: calc(-50vw + 50%);
	position: relative;
	max-width: 100vw;
	width: 100vw;
	margin: 40px 0 30px 0;
	box-shadow: 0px 1px 1px rgba(0, 0, 0, .12);
	-moz-box-shadow: 0px 1px 1px rgba(0, 0, 0, .12);
	-webkit-box-shadow: 0px 1px 1px rgba(0, 0, 0, .12);
}
@media all and (max-width: 1300px) {
	.wp-block-heading-single-news-wrapper {
		left: unset;
		position: relative;
	}
}
.em.pixelbones h1 {
	font-size: var(--heading--font-size-h1) !important;
}
@media (min-width:600px) {
	.em.pixelbones h1 {
		font-size: var(--heading--font-size-h1) !important;
		margin-left: auto;
		margin-right: auto;
		line-height: normal !important;
	}
}
h1.wp-block-heading-single-news {
	padding: 0 50px 0 0;
	max-width: var(--breite--content) !important;
	margin-left: auto;
	margin-right: auto;
	background-image: url('images/layout/empty.png');
	background-repeat: no-repeat;
	background-size: contain;
	background-size: 50px;
	background-position: right center;
	font-size: var(--heading--font-size-h1) !important;
}
.em.em-item.em-item-single .em-item-image {
	flex: unset;
	max-width: 30%;
}
@media all and (max-width: 900px) {
	.em.em-item.em-item-single .em-item-image {
		max-width: 50%;
	}
}
@media all and (max-width: 400px) {
	.em.em-item.em-item-single .em-item-image {
		max-width: 100%;
	}
}

a,
a:visited {
	color: var(--primary-nav--color-link);
	text-decoration: underline;
}
a:hover {
	color: var(--primary-nav--color-link-hover);
	text-decoration: none;
}

div.container {
	padding-left: 0px;
	padding-right: 0px;
	width: auto !important;
}

.divCompanyWrapper {
	width: 100%;
	height: 107px;
	box-shadow: 0px 10px 15px rgba(0, 0, 0, .15);
	background-color: #fbfbfb;
}
body.home .startseite-top-gruppe {
	box-shadow: inset 0 10px 15px rgba(0, 0, 0, 0.15);
}
.divCompany {
	width: 100%;
	max-width: var(--breite--header);
	margin: 0 auto;
}
@media all and (max-width: 1400px) {
	.divCompany {
		width: unset;
		max-width: var(--breite--header);
		margin: unset;
		margin-left: 79px;
	}
}
@media all and (max-width: 767px) {
	.divCompany {
		margin-left: 20px;
	}
}
@media all and (max-width: 575px) {
	.divCompany {
		margin-left: 0;
	}
}
@media all and (max-width: 400px) {
	.divCompany {
		margin-left: -20px;
	}
}
.divCompanyName {
	height: 107px;
	vertical-align: middle;
	display: table-cell;
	padding-left: 30px;
	padding-right: 100px;
}
@media all and (max-width: 400px) {
.divCompanyName {
	margin: 35px 0 0 20px;
}
}
.divCompanyName a,
.divCompanyName a:visited {
	color: #5f5f5f;
	text-decoration: none;
	font-size: 27px;
	text-transform: uppercase;
	z-index: 1;
	position: relative;
}
.divCompanyName a:hover {
	opacity: 0.8;
}
.divCompanyName .divCompanyNameSubTitle a,
.divCompanyName .divCompanyNameSubTitle a:visited {
	font-size: 18px;
	text-transform: none;
	white-space: nowrap;
}

/*#wprmenu_bar {
	background-color: transparent !important;
	position: absolute !important;
	top: 67px;
	left: unset;
	right: 10px;
	max-width: 70px;
}*/
.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
	height: 2px;
}

.divContentWrapper {
	width: 100%;
}
.divContent {
	position: relative;
	display: block;
	box-sizing: border-box;
	width: 100%;
	max-width: var(--breite--content);
	margin: 0 auto;
	padding: 0px 0px 20px 0px;
	/*margin-top: 40px;*/
}
@media all and (min-width: 767px) {
	body.sticky_header .divContent {
		margin-top: 0px;
	}
}
.divContent > .container {
	width: 100% !important;
	padding: 0 30px 0 30px;
	display: inline-block;
}

.captcha-image i {
	color: #564c4c !important;
}

/* start - Footer ################################################################################################################################ */

/*.spalten-footer .wp-block-column {
	white-space: nowrap;
}
.spalten-footer .wp-block-column:nth-child(1) {
	flex-basis: 10%;
}
.spalten-footer .wp-block-column:nth-child(2) {
	flex-basis: 90%;
}
@media all and (max-width: 1000px) {
	.spalten-footer .wp-block-column:nth-child(1) {
		flex-basis: 20%;
	}
	.spalten-footer .wp-block-column:nth-child(2) {
		flex-basis: 80%;
	}
}
@media all and (max-width: 800px) {
	.wp-block-columns {
		flex-wrap: nowrap !important;
	}
	.spalten-footer .wp-block-column:nth-child(1) {
		flex-basis: 30% !important;
	}
	.spalten-footer .wp-block-column:nth-child(2) {
		flex-basis: 70% !important;
	}
}
@media all and (max-width: 500px) {
	.spalten-footer .wp-block-column:nth-child(1) {
		flex-basis: 40% !important;
	}
	.spalten-footer .wp-block-column:nth-child(2) {
		flex-basis: 60% !important;
	}
}

.divFooter {
	width: 100%;
	padding: 15px;
}
.divFooter .wp-block-columns {
	margin: 0;
}
.divFooter .copyright {
	font-size: 13px;
	color: #999;
	white-space: nowrap;
}
.divFooter p,
.divFooter a,
.divFooter a:visited {
	color: #999;
}
@media all and (max-width: 781px) {
	.divFooter .wp-block-columns .wp-block-column:nth-child(3) {
		text-align: left;
	}
	.copyright {
		padding-right: unset;
		text-align: left !important;
		margin-bottom: 30px;
	}
}

.copyright {
	font-size: 70%;
	text-align: right;
}*/

/* ende  - Footer ################################################################################################################################ */

/*--------------------------------------------------------------
3.0 Alignments
--------------------------------------------------------------*/

.alignleft {
	display: inline;
	float: left;
	margin-right: 1.5em;
}

.alignright {
	display: inline;
	float: right;
	margin-left: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

span.screen-reader-text {
	display: none;
}

/* start - Navigation ############################################################################################################################ */

.navigation-main {
	display: block;
	color: #999;
	margin: 0;
	min-width: 450px;/*damit bei kleinen Diplay erzwungen wird, den Schriftzug "Lügensteinmuseum Würzburg", umzubrechen*/
	padding: 30px 10px 0 40px;
	z-index: 500;
	text-align: left;
	position: relative;
}
@media all and (min-width: 767px) {
	/*.wprm-wrapper {
		display: none;
	}*/
}
@media all and (max-width: 700px) {
	.navigation-main {
		background-color: transparent;
	}
	.navigation-main .menu-hauptmenue-container {
		display: none;
	}
}

.menu-container {
	display: inline-block;
}
.menu-toggle {
	display: none;
	cursor: pointer;
}
.menu_title {
	display: none !important;
}
.main-small-navigation ul.mobile-menu {
	display: none;
}

/*** ESSENTIAL STYLES ***/
.menu, .menu * {
	display: table;
	margin:	0 auto 0;
	padding: 0;
	list-style:	none;
	width: -webkit-fit-content;
	width: -moz-fit-content;
	width: fit-content;
}
.menu {
	line-height: 1.0;
}
.menu ul {
	margin: 0px;
	padding: 0px;
}
.menu ul ul,
ul.menu ul {
	position: absolute;
	top: -9999px;
	left: -9999px;
	width: 200px; /* left offset of submenus need to match (see below) */
	opacity: 0;
	transition: opacity .15s ease-in-out;
	-moz-transition: opacity .15s ease-in-out;
	-webkit-transition: opacity .15s ease-in-out;
	-o-transition: opacity .15s ease-in-out;
}
.menu ul li ul li,
ul.menu ul li {
	width: 100%;
	margin: 0px;
}
.menu li {
	float: left;
	display: block;
	position: relative;
	margin: 0px;
}
.menu li li {
	float: none;
	display: block;
	position: relative;
	background: none;
	margin: 0px;
}
.menu a {
	display: inline-block;
	position: relative;
}
.menu li:hover ul,
.menu li[aria-expanded="true"] ul {
	left: 0;
	top: 48px; /* match top ul list item height */
	z-index: 99;
	opacity: 1;
}
ul.menu li:hover li ul,
div.menu ul li:hover li ul {
	top: -9999px;
	opacity: 1;
}
ul.menu li li:hover ul,
ul.menu li li[aria-expanded="true"] ul {
	left: 200px; /* match ul width */
	top: 0;
	opacity: 1;
}

/*** SKIN ***/
.navigation-main .menu .current_page_item a:not([href*="#"]), 
.navigation-main .menu .current_page_ancestor a:not([href*="#"]), 
.navigation-main .menu .current-menu-item a:not([href*="#"]), 
.navigation-main .menu .current-cat a:not([href*="#"]) {
	background: none;
}

/* start - damit sich der Pfeil bei mouseover dreht und bei aktivem Navigationspunkt gedreht bleibt ############################################## */
ul.menu .menu-item-has-children > a {
	position: relative;
	padding-left: 25px; /* Platz für den Pfeil */
}

ul.menu .menu-item-has-children > a:before {
	content: '+';/*▸▾⯈⯆*/
	position: absolute;
	left: 15px;
	top: 50%;
	transform: translateY(-50%);
	transition: all 0.2s ease;
	opacity: 1;
}
ul.menu .menu-item-has-children > a:hover:before {
	opacity: 0;
	transform: translateY(-50%) rotate(90deg);
}
ul.menu .menu-item-has-children > a:after {
	content: '−';
	position: absolute;
	left: 15px;
	top: 50%;
	transform: translateY(-50%) rotate(-90deg);
	opacity: 0;
	transition: all 0.2s ease;
}
ul.menu .menu-item-has-children > a:hover:after {
	opacity: 1;
	transform: translateY(-50%) rotate(0);
}
ul.menu .current_page_item.menu-item-has-children > a:before,
ul.menu .current_page_parent.menu-item-has-children > a:before {
	opacity: 0;
	transform: translateY(-50%) rotate(90deg);
}
ul.menu .current_page_item.menu-item-has-children > a:after,
ul.menu .current_page_parent.menu-item-has-children > a:after {
	opacity: 1;
	transform: translateY(-50%) rotate(0);
}
/* ende  - damit sich der Pfeil bei mouseover dreht und bei aktivem Navigationspunkt gedreht bleibt ############################################## */

/* Sicherstellen, dass Anker-Links ohne active-anchor Klasse den zugeklappten Pfeil anzeigen */
ul.menu .menu-item-has-children > a[href*="#"]:not(.active-anchor):before {
	content: '+';/*▸▾⯈⯆*/
	position: absolute;
	left: 15px;
	top: 50%;
	transform: translateY(-50%);
	transition: all 0.2s ease;
	opacity: 1;
}
ul.menu .menu-item-has-children > a[href*="#"]:not(.active-anchor):hover:before {
	opacity: 0;
	transform: translateY(-50%) rotate(90deg);
}
ul.menu .menu-item-has-children > a[href*="#"]:not(.active-anchor):hover:after {
	opacity: 1;
	transform: translateY(-50%) rotate(0);
}
ul.menu .menu-item-has-children > a[href*="#"]:not(.active-anchor):after {
	opacity: 0;
}
/* Richtiger Pfeil, wenn ein Unterpunkt aktiv ist */
.navigation-main div ul.menu li.menu-item.current-menu-ancestor > a:before,
.navigation-main div ul.menu li.menu-item.current-menu-parent > a:before {
	opacity: 0;
	transform: translateY(-50%) rotate(90deg);
}
/* Richtiger Pfeil, wenn ein Unterpunkt aktiv ist */
.navigation-main div ul.menu li.menu-item.current-menu-ancestor > a:after,
.navigation-main div ul.menu li.menu-item.current-menu-parent > a:after {
	opacity: 1;
	transform: translateY(-50%) rotate(0);
}

/* start - Unterstreichung von normalen und Ankerlinks ########################################################################################### */
.menu a,
.menu a:link,
.menu a:visited {
    background: none;
    color: #5f5f5f;
    line-height: 48px;
    text-decoration: none;
    text-shadow: none;
    text-transform: none;
    margin: 0px;
    padding: 0 20px 0 0px;
    border-left: none;
    border-right: none;
    font-size: 14px;
    position: relative;
}
.menu a:focus,
.menu a:active {
    text-decoration: underline !important;
}
/* Standard-Unterstreichung für aktuelle Seiten-Links - aber nur wenn kein Anker aktiv ist */
.navigation-main div ul.menu li.menu-item.current_page_item > a:not(.active-anchor) {
    text-decoration: underline !important;
}
/* Unterstreichung für aktive Anker-Links */
.navigation-main div ul.menu li.menu-item a.active-anchor {
    text-decoration: underline !important;
}
.navigation-main div ul.menu li.menu-item.current_page_item > a[href*="#"]:not(.active-anchor) {
    text-decoration: none !important;
}
/* Hover-Unterstreichung für alle Links */
.navigation-main div ul.menu li.menu-item > a:hover {
    text-decoration: underline !important;
}
/* Unterstreichung für übergeordnete Menüpunkte, wenn ein Unterpunkt aktiv ist */
.navigation-main div ul.menu li.menu-item.current-menu-ancestor > a,
.navigation-main div ul.menu li.menu-item.current-menu-parent > a {
    text-decoration: underline !important;
}
/* Sicherstellen, dass Anker-Links ohne active-anchor Klasse nicht unterstrichen werden */
.navigation-main div ul.menu li.menu-item.current-menu-ancestor > a[href*="#"]:not(.active-anchor),
.navigation-main div ul.menu li.menu-item.current-menu-parent > a[href*="#"]:not(.active-anchor) {
    text-decoration: underline !important;
}
/* ende  - Unterstreichung von normalen und Ankerlinks ########################################################################################### */

.navigation-main .menu li .current_page_item > a, 
.navigation-main .menu li .current_page_item > a:hover,
.navigation-main .menu li .current-menu-item > a, 
.navigation-main .menu li .current-menu-item > a:hover,
.navigation-main .menu li .current-cat > a, 
.navigation-main .menu li .current-cat > a:hover {
	background: none;
	/*text-decoration: underline;*/
}
.navigation-main .menu .current_page_item ul li a,
.navigation-main .menu .current-menu-item ul li a,
.navigation-main .menu .current-menu-ancestor ul li a,
.navigation-main .menu .current_page_ancestor ul li a,
.navigation-main .menu .current-cat ul li a {
	background: none;
	color: #333;
}
/*.navigation-main .menu li.current-menu-ancestor .sub-menu li.current-menu-item a,
.navigation-main .menu .current-menu-ancestor ul.sub-menu li a:hover,
.navigation-main .menu .current_page_ancestor ul.sub-menu li a:hover {
	text-decoration: underline;
}*/
.navigation-main .menu li.current-menu-ancestor a,
.navigation-main .menu li.current_page_ancestor a {
	background-color: transparent;
}
.menu {
	display: block;
	margin: 0 auto;
}
.menu ul.sub-menu {
	background-color: #e8e8e8;
}
.menu ul.sub-menu,
.menu ul.children {
	display: block;
	border-radius: 0px 0px 2px 2px;
	-moz-border-radius: 0px 0px 2px 2px;
	-khtml-border-radius: 0px 0px 2px 2px;
	-webkit-border-radius: 0px 0px 2px 2px;
	box-shadow: 0px 1px 1px rgba(0, 0, 0, .5);
	-moz-box-shadow: 0px 1px 1px rgba(0, 0, 0, .5);
	-webkit-box-shadow: 0px 1px 1px rgba(0, 0, 0, .5);
	transition-delay: .2s;
	-webkit-transition-delay: .2s; /* Safari */
}
body.sticky_header .menu ul.sub-menu,
body.sticky_header .menu ul.children {
}
.menu ul.sub-menu ul.sub-menu,
.menu ul.children ul.children {
	transition-delay: 0s;
	-webkit-transition-delay: 0s; /* Safari */
}
body.sticky_header .menu a,
body.sticky_header .menu a:link,
body.sticky_header .menu a:visited {
	color: #6F6C6D;
}
.menu li:last-child a {
	padding-right: 0;
}
.menu-footer-container .menu a,
.menu-footer-container .menu a:link,
.menu-footer-container .menu a:visited {
	padding: 0px 30px;
	padding-top: 15px !important;
	padding-bottom: 15px !important;
	letter-spacing: unset !important;
	font-size: 18px;
}
.menu a:focus,
.menu a:hover,
.menu a:active {
	background: none;
	text-decoration: underline;
}
.menu li li a,
.menu li li a:link,
.menu li li a:visited {
	display: block;
	color: #333;
	width: 100%;
	background: none;
	text-align: left;
	text-transform: none;
	line-height: normal;
	margin: 0px;
	padding: 10px 12px;
	border-left: none;
	border-right: none;
	border-bottom: none;
	border-top: none;
	box-sizing: border-box;
	font-size: 14px;
}
.menu a:focus, 
.menu li li a:focus {
	outline: normal;
}
.menu li:first-child a {
	border-left: none;
}
.menu li li:first-child a {
	padding-left: 12px;
}
.menu li:last-child a {
	border-right: none;
}
.menu li:first-child,
.menu li:first-child a {
	border-radius: 2px 2px 0px 0px;
	-moz-border-radius: 2px 2px 0px 0px;
	-khtml-border-radius: 2px 2px 0px 0px;
	-webkit-border-radius: 2px 2px 0px 0px;
}
body.sticky_header .menu > li:first-child {
	margin-left: 120px;
	transition: margin 1s ease-in-out;
	-moz-transition: margin 1s ease-in-out;
	-webkit-transition: margin 1s ease-in-out;
	-o-transition: margin 1s ease-in-out;
}
/*body.sticky_header .menu li:first-child ul li {
	margin-left: unset;
}*/
.menu li li:first-child,
.menu li li:first-child a {
	border-radius: 0px;
	-moz-border-radius: 0px;
	-khtml-border-radius: 0px;
	-webkit-border-radius: 0px;
}

html body div.wprm-wrapper {
	overflow: auto;
}

ul#wprmenu_menu_ul li.menu-item.current_page_item > a,
ul#wprmenu_menu_ul li.menu-item.current_page_parent > a,
ul#wprmenu_menu_ul li.menu-item.current_page_parent li.current_page_item > a {
	color: #fff !important;
}
html body #wprmenu_menu_ul li.wprmenu_parent_item_li > ul {
	padding: 0 0 0 0px;
}
#mg-wprm-wrap ul#wprmenu_menu_ul li.menu-item ul li a {
	padding-left: 40px !important;
}
#mg-wprm-wrap ul#wprmenu_menu_ul li.menu-item ul li ul li a {
	padding-left: 60px !important;
}
#mg-wprm-wrap ul#wprmenu_menu_ul > li > span.wprmenu_icon::before {
	font-size: 120%;
}

/* ende  - Navigation ############################################################################################################################ */

@media all and (max-width: 650px) {
	h1, .h1, h2, .h2,
	h1.wp-block-heading, h2.wp-block-heading {
		word-wrap: break-word;
		word-break: normal;
		hyphens: auto !important;
	}
}
@media all and (max-width: 450px) {
	h3, .h3, h4, .h4, h5, .h5, h6, .h6,
	h3.wp-block-heading, h4.wp-block-heading, h5.wp-block-heading, h6.wp-block-heading,
	blockquote, pre, p, td, img, ul, li {
		word-wrap: break-word;
		word-break: normal;
		hyphens: auto !important;
	}
	.divCompanyTable td,
	.divCompanyName a,
	.divCompanyName a:visited {
		word-wrap: unset !important;
		word-break: unset !important;
		hyphens: unset !important;
	}
}

html body div.wprm-wrapper {
	overflow: auto;
}

/* start - buttons ############################################################################################################################### */

.wp-block-button__link, .wp-block-button__link:visited {
	color: #fff;
	background-color: #666;
	text-transform: uppercase;
}
.wp-block-button__link:active, .wp-block-button__link:focus, .wp-block-button__link:hover {
	color: #fff;
	background-color: #777;
}

/* ende  - buttons ############################################################################################################################### */

/* start - Datei Icons ########################################################################################################################### */

/*a[href$='.pdf'] {
	background: url(images/pdf.png) no-repeat 0 3px;
	padding-left: 20px;
	line-height: 16px;
}*/

/* ende  - Datei Icons ########################################################################################################################### */

hr.wp-block-separator {
	clear: both;
	display: block;
	height: 3px;
	border: none;
	padding-bottom: 30px;
	border-bottom: 3px solid #C5C6C6;
	margin-bottom: 30px;
}

figure.wp-block-table table,
figure.wp-block-table table td {
	border: none;
	width: unset;
}
figure.wp-block-table table td {
	padding-right: 15px;
}
figure.wp-block-table table td:last-child {
	padding-right: 0;
}

.captcha-image .cf7ic_instructions span {
	color: #564c4c !important;
	font-weight: 700;
}

/* start - Kontaktformular mit Plugin contact-form-7 ############################################################################################# */

body.home label {
	font-size: 16px;
	font-weight: 300;
}
body.home label .required {
	font-size: 13px;
	font-weight: 300;
	opacity: 0.7;
}
body.home .wpcf7-form-control-wrap input,
body.home .wpcf7-form-control-wrap textarea {
	border-radius: 1em;
	border: 1px solid #777777;
	background: transparent;
	padding: 0 10px;
	line-height: 35px;
}
body.home .wpcf7-form-control-wrap textarea {
	padding-top: 5px;
}
body.home .wpcf7-form-control-wrap input:hover,
body.home .wpcf7-form-control-wrap textarea:hover {
	background-color: #f0f0f0;
}
body.home .wpcf7-form-control-wrap input:focus,
body.home .wpcf7-form-control-wrap textarea:focus {
	border: 1px solid #817a7a;
	background-color: #f0f0f0;
	box-shadow: unset;
	outline: unset;
}
body.home .wpcf7-form-control-wrap textarea {
	line-height: normal;
}
body.home .wpcf7-form-control-wrap input:not([type='checkbox']):not([type='submit']) {
	width: 100%;
}
body.home .wpcf7-form label {
	display: inline-block;
	width: 98%;
}
body.home .wpcf7-form-control-wrap[data-name="your-vorname"] input,
body.home .wpcf7-form-control-wrap[data-name="your-nachname"] input {
	width: 97% !important;
}
body.home .wpcf7-form-control-wrap[data-name="your-vorname"] input {
	margin-right: 3% !important;
}
@media all and (max-width: 767px) {
	.wpcf7-form-control-wrap[data-name="your-vorname"] input,
	.wpcf7-form-control-wrap[data-name="your-nachname"] input {
		width: 100% !important;
		margin-right: 0 !important;
	}
}

.wpcf7-form-control-wrap[data-name="your-message"] textarea {
	padding: 14px 0 5px 10px;
}
.wpcf7-form-control-wrap[data-name="your-message"] textarea {
	border-radius: 5px;
	background: transparent;
	color: #333;
	text-transform: var(--formfieldtexttransform);
	font-weight: var(--formfieldfontweight);
	font-family: var(--global--font-primary);
	font-weight: 300;
	font-size: var(--formfieldfontsize);
	letter-spacing: var(--formfieldletterspacing);
	line-height: var(--formfieldlineheight);
	width: 100%;
	height: 110px;
}
.wpcf7-form-control-wrap textarea:focus {
	border-color: #a99d97;
	-webkit-box-shadow: unset !important;
	box-shadow: unset !important;
}

form select, form select option, form textarea {
	border-color: #abb8c3;
}

.text-color-pflichtfeld {
	color: #aa0000;
}

.wpcf7 p {
	position: relative;
}
.wpcf7 p .fa,
.wpcf7 p .fas {
	position: absolute;
	color: #ccc;
	z-index: 1;
	font-size: 20px;
	top: 13px;
	left: 14px;
}

input[type="checkbox"][name^="acceptance-"] {
	padding: unset;
	margin-top: unset;
	line-height: unset;
	height: unset;
	width: unset;
	border-radius: unset;
	transition: unset;
	color: unset;
}

.wpcf7-form-control.wpcf7-submit {
	font-family: var(--global--font-primary) !important;
	font-weight: 400 !important;
	color: #fff !important;
	background-color: #666 !important;
	padding: 5px 20px 6px 20px !important;
	border: none !important;
	border-radius: 20px !important;
	line-height: 30px;
}
.wpcf7-form-control.wpcf7-submit:hover {
	background-color: #777 !important;
	border: none !important;
}

.captcha-image label > input + * {
	padding: 0;
}
.captcha-image label > input:checked + *, .captcha-image label > input:focus + * {
	padding: 0;
}

/* ende  - Kontaktformular mit Plugin contact-form-7 ############################################################################################# */

/* start - Ein-Ausblenden der normalen/mobilen Navigation ######################################################################################## */

/* WPR Menu > Appearance > Display Menu From Width(px): 9000 */

@media all and (min-width: 767px) {
	.navigation-main {
		display: block !important;
	}
}
@media all and (min-width: var(--breite--header)) {
	#wprmenu_bar {
		display: none;
	}
	body.sticky_header .wp-block-heading-wrapper {
		margin-top: 80px !important;
	}
}

/* Tel-Links nur in Smartphones anzeigen: */
a[href^="tel"]:link,
a[href^="tel"]:visited, 
a[href^="tel"]:hover {
	pointer-events: none !important;
	text-decoration: none !important;
	cursor: unset !important;
}
a[href^="tel"]:hover {
	cursor: text;
}
/* Eingabegerät mit limitierter Präzision (z.B. Touch): */
@media (pointer: coarse) {
	/*.navigation-main {
		display: none !important;
	}
	.wprm-wrapper {
		display: block !important;
	}*/
	a[href^="tel"]:link,
	a[href^="tel"]:visited,
	a[href^="tel"]:hover {
		pointer-events: unset !important;
		text-decoration: underline !important;
		cursor: pointer !important;
	}
	a[href^="tel"]:hover {
		text-decoration: none;
		cursor: pointer;
	}
}

/* ende  - Ein-Ausblenden der normalen/mobilen Navigation ######################################################################################## */

/* start - Bilder in Galerie quadratisch darstellen ############################################################################################## */

.wp-block-gallery .wp-block-image.size-large {
  aspect-ratio: 1 / 1;
  overflow: hidden;
  display: flex;
  width: 100%;
  max-width: 400px;
  /*border-radius: 8px;*/
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

.wp-block-gallery .wp-block-image.size-large a {
  display: flex;
  width: 100%;
  height: 100%;
}

.wp-block-gallery .wp-block-image.size-large img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
}

/* Zoom-Effekt beim Hovern */
.wp-block-gallery .wp-block-image.size-large:hover img {
  transform: scale(1.05);
}

/* ende  - Bilder in Galerie quadratisch darstellen ############################################################################################## */

@media all and (max-width: 600px) {
	.wp-block-image .alignright {
		float: none;
		margin-left: 0;
	}
	.wp-block-image .alignleft {
		float: none;
		margin-right: 0;
	}
}

.clear {
	clear: both;
}

/* Bei nicht so hohen Screens soll der Header nicht sticky sein: */
@media all and (max-height: 600px) {
	#quadmenu.quadmenu-sticky-top {
		position: absolute !important;
	}
}

/* start - Am Blockelement auswählbar "Weite Breite" ########################################################################################### */

.wp-block-group.alignwide {
	max-width: var(--breite--content) !important;
	position: relative !important;
	width: 100% !important;
	margin: 0 auto !important;
	padding: 0 110px 0 110px;
}
@media all and (max-width: 767px) {
	.wp-block-group.alignwide {
		padding: 0 50px 0 50px;
	}
	.alignfull .wp-block-group.alignwide {
		padding: 0 50px 0 50px;
	}
}
@media all and (max-width: 575px) {
	.wp-block-group.alignwide {
		padding: 0 30px 0 30px;
	}
	.alignfull .wp-block-group.alignwide {
		padding: 0 30px 0 30px;
	}
}
@media all and (max-width: 400px) {
	.wp-block-group.alignwide {
		padding: 0 10px 0 10px;
	}
	.alignfull .wp-block-group.alignwide {
		padding: 0 10px 0 10px;
	}
}

/* start - Am Blockelement auswählbar "Gesamte Breite" ########################################################################################### */

.alignfull {
	left: calc(-50vw + 50%);
	position: relative;
	max-width: 100vw;
	width: 100vw;
}

@media all and (max-width: 1269px) {
	/*.alignwide {
		margin: 0 30px 0 30px;
	}*/
}
@media all and (max-width: 575px) {
	/*.alignwide {
		margin: 0 15px 0 15px;
	}*/
}

/* ende  - Am Blockelement auswählbar "Gesamte Breite" ########################################################################################### */

.category-separator {
	display: block;
	width: 100%;
	clear: both;
	padding: 20px 0;
}

.pvc_stats {
	font-size: 10px;
	font-family: var(--global--font-primary);
	display: none;
}
.divFooter .pvc_stats {
	display: none;
}

@media all and (max-width: 781px) {
	figure.kontakt img {
		max-width: 30%;
		height: auto;
	}
}
@media all and (max-width: 700px) {
	figure.kontakt img {
		max-width: 35%;
		height: auto;
	}
}
@media all and (max-width: 600px) {
	figure.kontakt img {
		max-width: 40%;
		height: auto;
	}
}
@media all and (max-width: 500px) {
	figure.kontakt img {
		max-width: 45%;
		height: auto;
	}
}
@media all and (max-width: 400px) {
	figure.kontakt img {
		max-width: 50%;
		height: auto;
	}
}
@media all and (max-width: 350px) {
	figure.kontakt img {
		max-width: 70%;
		height: auto;
	}
}

.wp-block-group {
	clear: both;
}

.n2-ss-widget.n2-ss-control-bullet {
	--widget-offset: 25px !important;
}

a.cd-upload-btn {
	color: var(--primary-nav--color-link) !important;
	pointer-events: unset !important;
	text-decoration: underline !important;
}
a.cd-upload-btn:hover {
	text-decoration: none !important;
	color: var(--primary-nav--color-link-hover) !important;
}
#map a[href$="#"],
#map a[href$="#"]:link,
#map a[href$="#"]:visited,
#map a[href$="#"]:hover {
	pointer-events: unset;
	text-decoration: unset;
	color: #000;
}

.wp-element-caption {
	font-size: var(--global--font-size-sm);
}

mark {
	padding: 0;
}

ol.wp-block-list li {
	margin-bottom: 20px;
}

.radius10 {
	padding: 10px;
	border-radius: 10px;
}

/*menu-item menu-item-type-post_type menu-item-object-page current-menu-item page_item page-item-22 current_page_item menu-item-27*/

.image-shadow img {
	box-shadow: 0px 2px 5px -1px #00000070;
	height: auto;
	display: flex;
	max-width: 100%;
	transition: box-shadow 0.2s ease;
}
/*Schatten bei den Grafiken mit Klasse image-shadow bei mouseover entfernen:*/
.image-shadow figure:hover a img,
figure.image-shadow:hover a img {
	box-shadow: unset !important;
}
figcaption.wp-element-caption {
	color: #5f6366;
}

.wp-block-nk-awb {
	padding: 0px 30px;
}
@media all and (max-width: 767px) {
	.wp-block-nk-awb {
		padding: 0px 0px;
	}
}

/* start - social-icons Startseite bei Kontaktaufnahme ########## */
.social-icons {
	display: flex;
	gap: 20px;
	padding: 15px;
}
.social-icons a {
	color: #5f5f5f; /* Deine Wunschfarbe */
	font-size: 28px;
	transition: transform 0.3s, color 0.3s;
}
.social-icons a:hover {
	color: #474B4F; /* Hellere Variation */
	transform: scale(1.1);
}
/* ende  - social-icons Startseite bei Kontaktaufnahme ########## */

.nk-awb-wrap:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	background-image: url('images/radius-f8fafc-10-top-left.png');
	background-repeat: no-repeat;
	width: 10px;
	height: 10px;
}
.nk-awb-wrap:after {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	background-image: url('images/radius-f8fafc-10-top-right.png');
	background-repeat: no-repeat;
	width: 10px;
	height: 10px;
}
.nk-awb-wrap .nk-awb-inner:before {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	background-image: url('images/radius-f8fafc-10-bottom-left.png');
	background-repeat: no-repeat;
	width: 10px;
	height: 10px;
}
.nk-awb-wrap .nk-awb-inner:after {
	content: '';
	position: absolute;
	bottom: 0;
	right: 0;
	background-image: url('images/radius-f8fafc-10-bottom-right.png');
	background-repeat: no-repeat;
	width: 10px;
	height: 10px;
}
.nk-awb-wrap .nk-awb-overlay {
	border-radius: 10px;
}
.wp-block-group.box-radius {
	border-radius: 10px;
}

.to-top a {
	width: 64px;
	height: 64px;
	display: inline-block;
}
.to-top {
	/*display: none;*/
	position: fixed;
	bottom: -60px;
	right: 23px;
	width: 64px;
	height: 64px;
	background-image: url('images/to-top.png');
	background-repeat: no-repeat;
	opacity: 0;
	transition: opacity 0.5s ease-in-out;
	-moz-transition: opacity .5s ease-in-out;
	-webkit-transition: opacity .5s ease-in-out;
	-o-transition: opacity .5s ease-in-out;
	z-index: 999;
}
.to-top:hover {
	background-image: url('images/to-top-hover.png');
}

/* start - Plugin Lightweight Accordion Von Andy Feliciotti, lightweight-accordion */
/*
Zeigt Plus und bei mouseover ein Minus, funktioniert auch wenn die Accordions verschachtelt sind!
Es gibt auch dunkle Accordions: Klasse="back-dark" direkt im Accordion
Benutzt in:
luegensteinmuseum-wuerzburg.com
*/

/* Normal bzw. heller Hintergrund */
.lightweight-accordion {
	margin: 0;
}

.lightweight-accordion > details > summary.lightweight-accordion-title {
	background-color: #666;
	color: #fcfcfc;
	border-radius: 10px;
	padding: 10px 2px 10px 2px;
}

.lightweight-accordion > details > summary.lightweight-accordion-title:hover {
	background-color: #888;
}

.lightweight-accordion > details > summary.lightweight-accordion-title span {
	font-size: 22px;
}

.lightweight-accordion > details[open] > summary.lightweight-accordion-title {
	background: #888 !important;
	border-bottom: none;
	border-bottom-left-radius: unset;
	border-bottom-right-radius: unset;
}

.lightweight-accordion > details > summary.lightweight-accordion-title::marker {
	content: '+ ';
	font-size: 22px;
}

.lightweight-accordion > details > summary.lightweight-accordion-title:hover::marker,
.lightweight-accordion > details[open] > summary.lightweight-accordion-title::marker {
	content: '− ';
	font-size: 22px;
}

.lightweight-accordion > details > .lightweight-accordion-body {
	border: 1px solid #888;
	border-bottom-left-radius: 10px;
	border-bottom-right-radius: 10px;
}

.lightweight-accordion > details > .lightweight-accordion-body,
.lightweight-accordion > details > .lightweight-accordion-body a,
.lightweight-accordion > details > .lightweight-accordion-body a:visited {
	color: #5f5f5f;
	background-color: transparent;
}

.lightweight-accordion > details > .lightweight-accordion-body a:hover {
	opacity: 0.8;
}

/* Dunkler Hintergrund */
.lightweight-accordion.back-dark {
	margin: 0;
}

.lightweight-accordion.back-dark > details > summary.lightweight-accordion-title {
	background-color: transparent;
	color: #fcfcfc;
	border-radius: unset;
	padding: 10px 2px 10px 2px;
	border-top: 1px solid #fcfcfc;
}

.lightweight-accordion.back-dark.last > details > summary.lightweight-accordion-title {
	border-bottom: 1px solid #fcfcfc;
}

@media all and (max-width: 781px) {
	.lightweight-accordion.back-dark.last > details > summary.lightweight-accordion-title {
		border-bottom: none;
	}
}

.lightweight-accordion.back-dark > details[open] > summary.lightweight-accordion-title {
	background: none !important;
	border-bottom: none;
	border-bottom-left-radius: unset;
	border-bottom-right-radius: unset;
}

.lightweight-accordion.back-dark > details > summary.lightweight-accordion-title span {
	font-size: 22px;
}

.lightweight-accordion.back-dark > details > summary.lightweight-accordion-title::marker {
	content: '+ ';
	font-size: 22px;
}

.lightweight-accordion.back-dark > details > summary.lightweight-accordion-title:hover::marker,
.lightweight-accordion.back-dark > details[open] > summary.lightweight-accordion-title::marker {
	content: '− ';
	font-size: 22px;
}

.lightweight-accordion.back-dark > details > .lightweight-accordion-body,
.lightweight-accordion.back-dark > details > .lightweight-accordion-body a,
.lightweight-accordion.back-dark > details > .lightweight-accordion-body a:visited {
	color: #fcfcfc;
	background-color: transparent;
	border: none;
}

.lightweight-accordion.back-dark > details > .lightweight-accordion-body a:hover {
	opacity: 0.8;
}

.lightweight-accordion.back-dark ul,
.lightweight-accordion.back-dark ol,
.lightweight-accordion.back-dark li {
	color: #fcfcfc;
}

/* ende  - Plugin Lightweight Accordion Von Andy Feliciotti, lightweight-accordion */

.divFooterWrapper {
	width: 100%;
	height: 80px;
	background-color: #fbfbfb;
	clear: both;
}
.divFooter {
	width: 100%;
	max-width: var(--breite--footer);
	margin: 0 auto;
}
.divFooter .wp-block-group.alignfull {
	/*padding-top: 20px;*/
}

.footer-group {
	display: flex;
	flex-wrap: wrap;
	justify-content: left;
	gap: 15px;
}
/* Die p-Tags ohne Zeilenumbruch, aber mit Umbruch bei zu kleinen Bildschirmen */
.footer-group p {
	display: inline-block;
	white-space: nowrap;
	margin: 0;
	padding: 0 10px 10px 0;
	background: rgba(255, 255, 255, 0.1);
}
.footer-group p:not(.copyright):after {
	content: '|';
	padding-left: 10px;
}
.footer-group a,
.footer-group a:visited {
	color: #817a7a;
	text-decoration: none;
}
.footer-group a:hover {
	text-decoration: underline;
}
.footer-group p.copyright {
	margin-bottom: 35px;
}
.footer-group p:not(.copyright):after,
.footer-group p.copyright {
	color: #bababa;
}
@media (max-width: 550px) {
	.footer-group p.copyright {
		margin-bottom: 130px;
	}
}
        
/* Responsives Verhalten */
@media (max-width: 600px) {
	.footer-group {
		flex-direction: column;
		align-items: left;
	}
	.footer-group p {
		white-space: normal;
		text-align: left;
		width: 100%;
		margin-bottom: 20px;
	}
}

.special-background-light {
  position: relative;
  overflow: hidden;
}
.special-background-light::before {
	content: '';
	position: absolute;
	top: 0;
	right: -30%;
	width: 200%;
	height: 100%;
	border-radius: 0 0 100% 60%;
	background: #e8e8e8;
	z-index: -1;
}
@media all and (max-width: 781px) {
	.special-background-light::before {
		right: -90%;
		width: 400%;
		border-radius: 0 0 100% 60%;
	}
}
@media all and (max-width: 400px) {
	.special-background-light::before {
		right: -150%;
		width: 600%;
	}
}
.special-background-dark {
  position: relative;
  overflow: hidden;
}
.special-background-dark::before {
	content: '';
	position: absolute;
	top: 0;
	right: -30%;
	width: 200%;
	height: 100%;
	border-radius: 0 0 100% 60%;
	background: #666666;
	z-index: -1;
}
@media all and (max-width: 781px) {
	.special-background-dark::before {
		right: -90%;
		width: 400%;
		border-radius: 0 0 100% 60%;
	}
}
@media all and (max-width: 400px) {
	.special-background-dark::before {
		right: -150%;
		width: 600%;
	}
}

.divContent a.active-anchor {
	color: rgb(127, 0, 0);
	opacity: 0.6;
}

/* start - damit die Unterpunkte im Mouseover-Menü nach Links statt nach Rechts angezeigt werden ################################################# */

/* Übergeordnetes Menu-Item positionieren */
.navigation-main .menu > li {
	position: relative;
}

/* Submenu standardmäßig nach rechts verschieben und unsichtbar machen */
.navigation-main .menu li ul.sub-menu {
	position: absolute;
	top: 100%;
	left: auto;
	right: 0;
	transform: translateX(200px);
	opacity: 0;
	visibility: hidden;
	transition: transform 0.3s ease, opacity 0.3s ease, visibility 0.3s;
	width: auto; /* Falls Wörter zu lang, dann z.B.: 200px */
	/*hyphens: auto;*/ /* Falls Wörter zu lang, dann: aktivieren */
}

/* Submenu beim Hovern einblenden und zurücksetzen */
.navigation-main .menu > li:hover > ul.sub-menu {
	transform: translateX(0);
	opacity: 1;
	visibility: visible;
}

/* ende  - damit die Unterpunkte im Mouseover-Menü nach Links statt nach Rechts angezeigt werden ################################################# */

.template-xtra #divContentWrapper #divContent {
	margin-bottom: 50px;
}

/*z.B. in der Vereinsseite die Listen wo die Lügensteine zu finden sind*/
.all-tables-on-page-same-width {
	font-size: 16px;
	line-height: 1.5;
}
.all-tables-on-page-same-width .city-item {
	margin-bottom: 8px;
}
.all-tables-on-page-same-width strong {
	display: inline-block;
	min-width: 120px;  /* Feste Breite für Stadtnamen */
	text-align: right; /* Rechtbündige Ausrichtung */
	padding-right: 15px; /* Abstand nach dem Stadtnamen */
	box-sizing: border-box;
}

/* start - Navigation für die Vereinsseite ####################################################################################################### */

/* Hamburger Menu Styles */
.hamburger-menu {
	position: fixed;
	top: 30%;
	right: 0;
	transform: translateY(-50%);
	z-index: 1000;
}
.hamburger-icon {
	width: 60px;
	height: 60px;
	background: #817a7a;
	border-radius: 50% 0 0 50%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	cursor: pointer;
	box-shadow: -2px 0 10px rgba(0, 0, 0, 0.2);
	transition: all 0.3s ease;
	position: relative;
	z-index: 1001;
}
.hamburger-icon span {
	display: block;
	width: 24px;
	height: 3px;
	background: #fcfcfc;
	margin: 3px 0;
	transition: all 0.3s ease;
	border-radius: 2px;
}
.hamburger-menu .menu-container {
	position: absolute;
	top: 0;
	right: -300px;
	/*right: 0;*/
	width: 300px;
	height: auto;
	background: #777777;
	border-radius: 8px 0 0 8px;
	box-shadow: -5px 0 15px rgba(0, 0, 0, 0.2);
	transition: all 0.4s ease;
	padding: 20px 20px 20px 20px;
	z-index: 1000;
	border-top: 1px solid #5b5b5b;
	border-left: 1px solid #5b5b5b;
	border-bottom: 1px solid #5b5b5b;
}
.hamburger-menu:hover .menu-container {
	right: 0;
}
.menu-title {
	position: absolute;
	right: 5px;
	top: -33px;
	line-height: 14px;
	color: #817a7a;
	text-align: right;
	margin: 0px;
	padding: 0px;
	font-size: 13px;
	transition: all 0.4s ease;
}
#menu-verein {
	list-style: none;
	margin: 0;
	padding: 0;
}
#menu-verein li {
	margin: 0;
	padding: 0px;
	border-radius: 4px;
	transition: background 0.3s ease;
	float: unset;
}
#menu-verein li:hover {
	/*background: #34495e;*/
}
#menu-verein a {
	color: #fcfcfc;
	text-decoration: none;
	display: block;
	font-size: 16px;
	transition: color 0.3s ease;
	line-height: normal;
	margin: 0;
	padding: 0 5px 2px 5px;
}

#menu-verein a.active-anchor {
	color: #fcfcfc;
	opacity: 1;
}
#menu-verein a.active-anchor[aria-current="page"][href*="#"] {
	text-decoration: underline !important;
}
#menu-verein a[aria-current="page"]:not([href*="#"]):not(.active-anchor) {
	text-decoration: none !important;
}
#menu-verein li.menu-item.current_page_item > a[aria-current="page"] {
	text-decoration: underline !important;
}

#menu-verein ul ul, #menu-verein ul {
	position: relative;
	top: 0;
	left: 0;
	opacity: 1;
}
#menu-verein .menu-item-has-children > a::before {
	content: '';
	position: unset;
	left: unset;
	top: unset;
	transform: unset;
	transition: unset;
	opacity: 0;
}
#menu-verein .menu-item-has-children > a::after {
	content: '';
	position: unset;
	left: unset;
	top: unset;
	transform: unset;
	transition: unset;
	opacity: 0;
}
#menu-verein .sub-menu {
	-webkit-border-radius: unset;
	-webkit-box-shadow: unset;
	background-color: transparent;
	margin-left: 20px;
}
#menu-verein .sub-menu li a {
	font-size: 15px;
}

#menu-verein a:hover {
	/*color: #3498db;*/
	text-decoration: underline;
}
/* Responsive Design */
@media (max-width: 766px) {
	.hamburger-menu .menu-container {
		width: 250px;
		right: -250px;
	}
	.hamburger-icon {
		width: 50px;
		height: 50px;
	}
}

@media (pointer: coarse) {
	.hamburger-menu {
		display: none;
	}
}
@media (max-width: 766px) {
	.hamburger-menu {
		display: none;
	}
}

/* ende  - Navigation für die Vereinsseite ####################################################################################################### */

div.tel-no-big,
div.tel-no-big p,
div.tel-no-big a,
div.tel-no-big a:visited {
	font-size: 22px;
}

/*für die Animation des Lügensteines:*/
#demo-container.demo,
model-viewer.demo {
	width: 100%;
	min-height: 335px;
}

.navigation-main {
	display: none !important;
}
.wprm-wrapper-outer {
	width: 100%;
	height: 100px;
	position: absolute;
	top: 0;
}
.wprm-wrapper {
	display: block !important;
	width: 100% !important;
	max-width: 1240px !important;
	height: 100px;
	margin: 0 auto !important;
}
#wprmenu_bar {
	background-color: transparent !important;
	position: relative !important;
	top: 40px;
	left: unset;
	right: unset;
	max-width: 70px;
	float: right;
	padding-right: 80px;
}
@media all and (max-width: 430px) {
	#wprmenu_bar {
		/*top: 52px;*/
		padding-right: 50px;
	}
}
#wprmenu_bar.active {
	top: 0;
	left: 0;
	right: unset;
	float: unset;
	position: absolute !important;
}

@media all and (max-width: 781px) {
	:where(.wp-block-columns.is-layout-flex) {
		gap: 0;
	}
}

.slider-ueber-luegensteine-slide1 {
	max-width: 58% !important;
}
@media all and (max-width: 800px) {
	.slider-ueber-luegensteine-slide1 {
		max-width: 61% !important;
	}
}
@media all and (max-width: 700px) {
	.slider-ueber-luegensteine-slide1 {
		max-width: 66% !important;
	}
}
@media all and (max-width: 600px) {
	.slider-ueber-luegensteine-slide1 {
		max-width: 71% !important;
	}
}
@media all and (max-width: 500px) {
	.slider-ueber-luegensteine-slide1 {
		max-width: 75% !important;
	}
}
@media all and (max-width: 400px) {
	.slider-ueber-luegensteine-slide1 {
		max-width: 86% !important;
	}
}

ul.ul-no-margin-before {
	margin-top: -20px;
}
.no-padding-bottom,
h2.no-padding-bottom,h3.no-padding-bottom,h4.no-padding-bottom,h5.no-padding-bottom,h6.no-padding-bottom,
h2.no-padding-bottom.wp-block-heading,h3.no-padding-bottom.wp-block-heading,h4.no-padding-bottom.wp-block-heading,h5.no-padding-bottom.wp-block-heading,h6.no-padding-bottom.wp-block-heading,
.h2.no-padding-bottom,.h3.no-padding-bottom,.h4.no-padding-bottom,.h5.no-padding-bottom,.h6.no-padding-bottom {
	padding-bottom: 0 !important;
}
.white-space-nowrap {
	white-space: nowrap !important;
}

p.button-tel {
	margin: 0;
	padding: 0;
	white-space: nowrap;
}
p.button-tel a,
p.button-tel a:visited {
	background-color: #666;
	padding: 10px 20px;
	color: #fff;
	border-radius: 9999px;
	box-shadow: none;
	text-decoration: none !important;
	font-size: 1.125em;
}
@media (pointer: coarse) {
	p.button-tel a[href^="tel"]:link, 
	p.button-tel a[href^="tel"]:visited {
		text-decoration: none !important;
	}
}
@media all and (max-width: 450px) {
	table.table-form-send-tel td {
		display: block;
		width: 100%;
		min-height: 80px;
	}
}

.center {
	text-align: center;
}