/*
Theme Name: Djwiesel
Theme URI: https://www.djwiesel.de/
Author: Web-Publishing Ronge, Thomas Ronge
Author URI: https://www.web-publishing.de/
Description: Theme für djwiesel.de
Version: 1.0
License: GNU General Public License v2
License URI: http://www.gnu.org/licenses/gpl-2.0.html
*/

/*

Klassen im Wordpress Backend:
form-kontakt			Icons beim Button anhängen welche zum Kontaktformular verlinken
back-dark				Accordion mit dunklem Hintergrund
slider					Macht aus einem Galerie-Block einen Bilderslider
slider-full-images	Macht aus einem Galerie-Block einen Bilderslider, nur das man hier die Bilder komplett sieht
ul-no-margin-before	UL > kein Abstand davor
no-padding-top			Überschriften: Kein Innen-Abstand nach Oben
no-padding-bottom		Überschriften: Kein Innen-Abstand nach unten
no-margin-bottom		Kein Außen-Abstand nach unten
padding-5				Padding 5px
white-space-nowrap	Kein Umbruch
reihenfolge-1			Reihenfolge ändern bis Breite von 781 Pixel
reihenfolge-2			Reihenfolge ändern bis Breite von 781 Pixel
tbl-grid-2x2			Spalten als Tabelle: zwei Zeilen mit je zwei Spalten
tbl-grid-2x3			Spalten als Tabelle: zwei Zeilen mit je drei Spalten
tbl-grid-2x4			Spalten als Tabelle: zwei Zeilen mit je vier Spalten
tbl-grid-2x5			Spalten als Tabelle: zwei Zeilen mit je fünf Spalten
tbl-grid-2x6			Spalten als Tabelle: zwei Zeilen mit je sechs Spalten
spalten-pakete-back-hell	Spalten bei den Paketen mit hellem Hintergrund
spalten-pakete-back-dunkel	Spalten bei den Paketen mit dunklem Hintergrund

Farben:
005d6f	Logo Wiesel Türkis	rgba(0, 93, 111, 1)
4fb0bf	Helle Version von Logo Wiesel Türkis
6f1200	Komplementär zu Logo Wiesel Türkis
b68207	Buttonfarbe
9c6f06	Buttonfarbe mouseover

ffffff	Schrift weiß, rgb(251, 251, 251)				DJ-Wiesel Schrift Weiß
ffffff	Überschrift weiß, rgb(251, 251, 251)		DJ-Wiesel Schrift Weiß
fefefe	Hintergrund weiß, rgb(232, 232, 232)		DJ-Wiesel Hintergrund Weiß

e7e7e7	Schrift hellgrau, rgb(232, 232, 232)		DJ-Wiesel Schrift Hellgrau
e7e7e7	Überschrift hellgrau, rgb(232, 232, 232)	DJ-Wiesel Schrift Hellgrau
e8e8e8	Hintergrund hellgrau, rgb(232, 232, 232)	DJ-Wiesel Hintergrund Hellgrau

2c2d2a	Schrift dunkelgrau, rgb(52, 46, 46)			DJ-Wiesel Schrift Dunkelgrau
2c2d2a	Überschrift dunkelgrau, rgb(52, 46, 46)	DJ-Wiesel Schrift Dunkelgrau
2d2e2b	Hintergrund dunkelgrau, rgb(52, 46, 46)	DJ-Wiesel Hintergrund Dunkelgrau
*/

/* Variables */
/* start - page fade ############################################################################################################################# */
/* start - Wrapper für alle Navigations-Einstellungen ############################################################################################ */
/* start - Navigation ############################################################################################################################ */
/* start - damit die Unterpunkte im Mouseover-Menü nach Links statt nach Rechts angezeigt werden ################################################# */
/* start - Ein-Ausblenden der normalen/mobilen Navigation ######################################################################################## */
/* start - buttons ############################################################################################################################### */
/* start - table ################################################################################################################################# */
/* start - Kontaktformular mit Plugin contact-form-7 ############################################################################################# */
/* start - Am Blockelement auswählbar "Gesamte Breite" ########################################################################################### */
/* Tel-Links nur in Smartphones anzeigen: */

/* playfair-display-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: 'Playfair Display';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/playfair-display-v40-latin-regular.eot'); /* IE9 Compat Modes */
  src: url('fonts/playfair-display-v40-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/playfair-display-v40-latin-regular.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('fonts/playfair-display-v40-latin-regular.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
       url('fonts/playfair-display-v40-latin-regular.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
       url('fonts/playfair-display-v40-latin-regular.svg#PlayfairDisplay') format('svg'); /* Legacy iOS */
}

/* playfair-display-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: 'Playfair Display';
  font-style: italic;
  font-weight: 400;
  src: url('fonts/playfair-display-v40-latin-italic.eot'); /* IE9 Compat Modes */
  src: url('fonts/playfair-display-v40-latin-italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/playfair-display-v40-latin-italic.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('fonts/playfair-display-v40-latin-italic.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
       url('fonts/playfair-display-v40-latin-italic.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
       url('fonts/playfair-display-v40-latin-italic.svg#PlayfairDisplay') format('svg'); /* Legacy iOS */
}

/* playfair-display-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: 'Playfair Display';
  font-style: normal;
  font-weight: 700;
  src: url('fonts/playfair-display-v40-latin-700.eot'); /* IE9 Compat Modes */
  src: url('fonts/playfair-display-v40-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/playfair-display-v40-latin-700.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('fonts/playfair-display-v40-latin-700.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
       url('fonts/playfair-display-v40-latin-700.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
       url('fonts/playfair-display-v40-latin-700.svg#PlayfairDisplay') format('svg'); /* Legacy iOS */
}

/* playfair-display-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: 'Playfair Display';
  font-style: italic;
  font-weight: 700;
  src: url('fonts/playfair-display-v40-latin-700italic.eot'); /* IE9 Compat Modes */
  src: url('fonts/playfair-display-v40-latin-700italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/playfair-display-v40-latin-700italic.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('fonts/playfair-display-v40-latin-700italic.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
       url('fonts/playfair-display-v40-latin-700italic.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
       url('fonts/playfair-display-v40-latin-700italic.svg#PlayfairDisplay') format('svg'); /* Legacy iOS */
}

/* Variables */
:root {

	--breite--header: 1240px;
	--breite--content: 1240px;
	--breite--footer: 1240px;

	/* Font Family */
	--global--font-primary: 'Playfair Display', 'Times', 'Times New Roman', serif;
	--global--font-secondary: 'Playfair Display', 'Times', 'Times New Roman', serif;

	/* Font Size */
	--global--font-size-xs: 14px;
	--global--font-size-sm: 16px;
	--global--font-size-base: 18px;
	--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: 42px;
	--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: 400;
	--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: 400;
	--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: #2d2e2b;
	--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;

	/* 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);
}

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: #fff;
}

/* start - page fade ############################################################################################################################# */

/* Start: unsichtbar, damit beim initialen Laden schön eingefadet wird */
.divContent {
  opacity: 0;
  transition: opacity 220ms ease;
}

/* Einblenden */
.divContent.is-ready {
  opacity: 1;
}

/* Ausblenden */
.divContent.is-leaving {
  opacity: 0;
}

/* Barrierefreiheit: bei reduced motion keine Animation */
@media (prefers-reduced-motion: reduce) {
  .divContent {
    transition: none;
  }
}

/* ende  - page fade ############################################################################################################################# */

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: #2d2e2b;
}
.divContent UL LI {
	margin-top: 10px;
	margin-left: 20px;
	padding-top: 10px;
	font-size: var(--global--font-size-base);
}

img {
	max-width: 100%;
	height: auto;
}

.header-hotline-wrapper {
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
.header-hotline {
	max-width: var(--breite--header);
	margin: 0 auto;
	text-align: right;
}
.header-hotline a,
.header-hotline a:visited {
	font-family: 'Arial';
	font-size: 18px;
	color: #fff;
	font-weight: 700;
	line-height: 30px;
	display: inline-block;
	padding: 0 10px;
	border-radius: 5px;
	text-decoration: none;
	float: right;
	margin: 10px 10px 0 10px;

	/* Basis + Hover-Animation */
	background-image: linear-gradient(to right, #9c6f06 50%, #b68207 50%);
	background-size: 200% 100%;
	background-position: 100% 0;          /* Start: rechts -> wirkt wie #b68207 */
	transition: background-position 300ms ease;
}
.header-hotline a:hover,
.header-hotline a:focus-visible {
	background-position: 0 0;             /* Hover: dunkler “wischt” von links rein */
}
@media (max-width: 900px) {
	.header-hotline.mail a, .header-hotline.mail a:visited {
		position: absolute;
		top: 28px;
		right: -5px;
	}
	.header-hotline.phone a, .header-hotline.phone a:visited {
		position: absolute;
		top: 63px;
		right: -5px;
	}
}
.header-hotline.phone a span {
	font-size: 32px;
	position: absolute;
}
@media (max-width: 370px) {
	.header-hotline.mail a, .header-hotline.mail a:visited {
		font-size: 14px;
	}
	.header-hotline.phone a, .header-hotline.phone a:visited {
		font-size: 14px;
	}
	.header-hotline.phone a span {
		font-size: 26px;
		margin-left: -2px;
	}
}

body.home .divBeitragsbild {
	display: none;
}
:root {
	--hoehe-beitragsbild-normal: 400px;
	--hoehe-beitragsbild-klein: 300px;
	--hoehe-beitragsbild-kleiner: 200px;
}
.divBeitragsbild {
	position: relative;
	height: var(--hoehe-beitragsbild-normal);
	max-height: var(--hoehe-beitragsbild-normal);
	background-position: center center;
	background-size: cover;
	color: #fff;
}
.divBeitragsbild::before{
	content: "";
	position: absolute;
	inset: 0;
	background: #005d6f;
	opacity: .8;              /* Stärke des Filters */
	pointer-events: none;
	mix-blend-mode: multiply;    /* schöner Tint-Look */
	z-index: 0;
}
@media (max-width: 767px) {
	.divBeitragsbild {
		height: var(--hoehe-beitragsbild-klein);
		max-height: var(--hoehe-beitragsbild-klein);
	}
	div#n2-ss-2 .n2-ss-slider-1 {
		min-height: var(--hoehe-beitragsbild-klein) !important;
	}
	div#n2-ss-2 .n2-ss-slider-1{
		min-height: var(--hoehe-beitragsbild-klein) !important;
		
	}
}
@media (max-width: 479px) {
	.divBeitragsbild {
		height: var(--hoehe-beitragsbild-kleiner);
		max-height: var(--hoehe-beitragsbild-kleiner);
	}
	div#n2-ss-2 .n2-ss-slider-1 {
		min-height: var(--hoehe-beitragsbild-kleiner) !important;
	}
	div#n2-ss-2 .n2-ss-slider-1{
		min-height: var(--hoehe-beitragsbild-kleiner) !important;
		
	}
}
.headline-wrapper {
	width: 100%;
	position: absolute;
}
.headline {
	max-width: var(--breite--header);
	margin: 0 auto;
	padding: 250px 0px 0px 30px;
	text-align: left;
	position: relative;
}
.headline h1 {
	color: #fff;
	font-size: 60px;
}
.headline-big {
	width: calc(100% + 50px);
	color: #fff;
	font-size: 256px;
	position: absolute;
	left: -50px;
	top: 110px;
	opacity: 0.1;
	white-space: nowrap;
	overflow: hidden;
}
@media (max-width: 767px) {
	.headline h1 {
		font-size: 50px;
	}
	.headline {
		padding-top: 200px;
		padding-left: 20px;
	}
	.headline-big {
		font-size: 156px;
		left: -25px;
		top: 125px;
	}
}
@media (max-width: 479px) {
	.headline h1 {
		font-size: 40px;
	}
	.headline {
		padding-top: 100px;
		padding-left: 10px;
	}
	.headline-big {
		font-size: 90px;
		left: -15px;
		top: 100px;
	}
}

.has-djwiesel-schrift-weiss-color,
.has-djwiesel-schrift-weiss-color h1,
.has-djwiesel-schrift-weiss-color h2,
.has-djwiesel-schrift-weiss-color h3,
.has-djwiesel-schrift-weiss-color h4,
.has-djwiesel-schrift-weiss-color h5,
.has-djwiesel-schrift-weiss-color h6,
.has-djwiesel-schrift-weiss-color ul,
.has-djwiesel-schrift-weiss-color ul li::marker {
	color: #fff !important;
}
.has-djwiesel-schrift-weiss-color a,
.has-djwiesel-schrift-weiss-color a:visited {
	color: #fff !important;
}
.has-djwiesel-schrift-weiss-color figcaption.wp-element-caption {
	color: #a1a8ad !important;
}
.has-djwiesel-schrift-hellgrau-color,
.has-djwiesel-schrift-hellgrau-color h1,
.has-djwiesel-schrift-hellgrau-color h2,
.has-djwiesel-schrift-hellgrau-color h3,
.has-djwiesel-schrift-hellgrau-color h4,
.has-djwiesel-schrift-hellgrau-color h5,
.has-djwiesel-schrift-hellgrau-color h6,
.has-djwiesel-schrift-hellgrau-color ul,
.has-djwiesel-schrift-hellgrau-color ul li::marker {
	color: #e7e7e7 !important;
}
.has-djwiesel-schrift-dunkelgrau-color,
.has-djwiesel-schrift-dunkelgrau-color h1,
.has-djwiesel-schrift-dunkelgrau-color h2,
.has-djwiesel-schrift-dunkelgrau-color h3,
.has-djwiesel-schrift-dunkelgrau-color h4,
.has-djwiesel-schrift-dunkelgrau-color h5,
.has-djwiesel-schrift-dunkelgrau-color h6,
.has-djwiesel-schrift-dunkelgrau-color ul,
.has-djwiesel-schrift-dunkelgrau-color ul li::marker {
	color: #2c2d2a !important;
}
.has-djwiesel-schrift-dunkelgrau-color h1,
.has-djwiesel-schrift-dunkelgrau-color h1.wp-block-heading,
.has-djwiesel-schrift-dunkelgrau-color h2,
.has-djwiesel-schrift-dunkelgrau-color h2.wp-block-heading,
.has-djwiesel-schrift-dunkelgrau-color h3,
.has-djwiesel-schrift-dunkelgrau-color h3.wp-block-heading,
.has-djwiesel-schrift-dunkelgrau-color h4,
.has-djwiesel-schrift-dunkelgrau-color h4.wp-block-heading,
.has-djwiesel-schrift-dunkelgrau-color h5,
.has-djwiesel-schrift-dunkelgrau-color h5.wp-block-heading,
.has-djwiesel-schrift-dunkelgrau-color h6,
.has-djwiesel-schrift-dunkelgrau-color h6.wp-block-heading {
	color: #005d6f !important;
}
.has-djwiesel-hintergrund-weiss-background-color {
	background-color: #fefefe !important;
}
.has-djwiesel-hintergrund-hellgrau-background-color {
	background-color: #e8e8e8 !important;
}
.has-djwiesel-hintergrund-dunkelgrau-background-color {
	background-color: #2d2e2b !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: rgba(0, 93, 111, 1);
	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: rgba(0, 93, 111, 0.5);
	text-decoration: underline;
}
a:hover {
	color: rgba(0, 93, 111, 1);
	text-decoration: none;
}

div.container {
	padding-left: 0px;
	padding-right: 0px;
	width: auto !important;
}

.divCompanyWrapper {
	width: 100%;
	height: 107px;
	border-bottom: 1px solid rgba(0, 93, 111, .1);
	background-color: #fff;
}
.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;
	text-align: right;
	display: table-cell;
	padding-left: 28px;
	/*padding-right: 100px;*/
}
@media all and (max-width: 400px) {
	.divCompanyName {
		margin: 35px 0 0 20px;
	}
}
.divCompanyName a,
.divCompanyName a:visited {
	color: #2d2e2b;
	text-decoration: none;
	font-size: 27px;
	text-transform: uppercase;
	z-index: 1;
	position: relative;
}
.divCompanyName a:hover {
	/*opacity: 0.8;*/
}
.divCompanyName img {
	max-width: unset;
}

.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;
}
@media all and (max-width: 600px) {
	.divContent > .container {
		padding: 0 10px 0 10px;
	}
}
@media all and (max-width: 400px) {
	.divContent > .container {
		padding: 0 5px 0 5px;
	}
}

.captcha-image i {
	color: #564c4c !important;
}

/*--------------------------------------------------------------
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 - Wrapper für alle Navigations-Einstellungen ############################################################################################ */

/* start - Navigation ############################################################################################################################ */

:root {
	/* 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: 400;
	--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);
}

.navigation-main {
	display: block;
	color: #999;
	margin: 0;
	min-width: 450px;/*damit bei kleinen Diplay erzwungen wird, den Schriftzug "DJ-Wiesel", umzubrechen*/
	padding: 48px 10px 0 40px;
	z-index: 500;
	text-align: left;
	position: relative;
}

.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: #2d2e2b;
    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: 16px;
    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;
	 color: rgba(0, 93, 111, 1) !important;
}*/
/* Unterstreichung für aktive Anker-Links */
/*.navigation-main div ul.menu li.menu-item a.active-anchor {
    text-decoration: underline !important;
	 color: rgba(0, 93, 111, 1) !important;
}*/
/*.navigation-main div ul.menu li.menu-item.current_page_item > a[href*="#"]:not(.active-anchor) {
    text-decoration: none !important;
}*/

/* Standard-Unterstreichung für aktuelle Seiten-Links */
.navigation-main div ul.menu li.menu-item.current_page_item > a {
    text-decoration: underline !important;
	 color: rgba(0, 93, 111, 1) !important;
}

/* Hover-Unterstreichung für alle Links */
.navigation-main div ul.menu li.menu-item > a:hover {
    text-decoration: underline !important;
	 color: rgba(0, 93, 111, 1) !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;
	 color: rgba(0, 93, 111, 1) !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: rgba(255, 255, 255, .95);*/
	background: linear-gradient(
		to bottom, 
		rgba(255, 255, 255, 1) 0%, 
		rgba(255, 255, 255, 1) 20%, 
		rgba(255, 255, 255, 0.95) 100%
	);
}
.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 */
}
.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 10px 25px;
	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;
}

/* Bei nicht so hohen Screens soll der Header nicht sticky sein: */
@media all and (max-height: 600px) {
	#quadmenu.quadmenu-sticky-top {
		position: absolute !important;
	}
}

/* ende  - Navigation ############################################################################################################################ */

/* start - damit die Unterpunkte im Mouseover-Menü nach Links statt nach Rechts angezeigt werden ################################################# */

.navigation-main .menu li ul.sub-menu {
	position: absolute;
	top: 100%;
	right: 0;
	clip-path: inset(0 100% 0 0); /* komplett nach rechts ausgeblendet */
	-webkit-clip-path: inset(0 100% 0 0);
	opacity: 0;
	visibility: hidden;
	transition: clip-path 0.28s ease, opacity 0.18s ease;
	pointer-events: none;
	border: 1px solid #f0f0f0;
}

/* reveal */
.navigation-main .menu > li:hover > ul.sub-menu {
	clip-path: inset(0 0 0 0);
	-webkit-clip-path: inset(0 0 0 0);
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}

/* ende  - damit die Unterpunkte im Mouseover-Menü nach Links statt nach Rechts angezeigt werden ################################################# */

/* start - Ein-Ausblenden der normalen/mobilen Navigation ######################################################################################## */

/* WPR Menu > Appearance > Display Menu From Width(px): 9000 */

@media all and (max-width: 900px) {
	.navigation-main {
		display: none !important;
	}
}
@media all and (min-width: var(--breite--header)) {
	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) {
	a[href^="tel"]:link,
	a[href^="tel"]:visited,
	a[href^="tel"]:hover {
		pointer-events: unset !important;
		text-decoration: underline !important;
		cursor: pointer !important;
	}
	.header-hotline a[href^="tel"]:link,
	.header-hotline a[href^="tel"]:visited,
	.header-hotline a[href^="tel"]:hover {
		text-decoration: none !important;
	}
	a[href^="tel"]:hover {
		text-decoration: none;
		cursor: pointer;
	}
}

/* ende  - Ein-Ausblenden der normalen/mobilen Navigation ######################################################################################## */

/* start - WPR Menu Farben ####################################################################################################################### */
/* Plugin "WP Responsive Menu", wp-responsive-menu von MagniGenie */
/* siehe auch in djwiesel.de */

/* Untermenüs immer offen! */
ul.sub-menu {
	display: block !important;
}

html body #wprmenu_menu_ul li.wprmenu_parent_item_li > ul {
	padding: 0;
	margin: 0;
}

.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: 0;
	left: unset;
	right: unset;
	max-width: 70px;
	float: right;
	padding-right: 80px;
}
.header-hotline.phone {
	display: none;
}
@media (pointer: coarse) {
	.header-hotline.phone {
		display: block;
	}
	.navigation-main {
		display: none;
	}
	#wprmenu_bar, #mg-wprm-wrap {
		display: block;
		top: 50px;
	}
	@media all and (max-width: 900px) {
		#wprmenu_bar {
			top: 0;
		}
	}
}
@media all and (max-width: 430px) {
	#wprmenu_bar {
		padding-right: 50px;
	}
}
#wprmenu_bar.active {
	top: 0;
	left: -15px;
	right: unset;
	float: unset;
	position: absolute !important;
}

.wprmenu_bar .hamburger-inner, 
.wprmenu_bar .hamburger-inner::before, 
.wprmenu_bar .hamburger-inner::after {
	background: #2d2e2b !important;
}
.wprmenu_bar .hamburger--slider:hover .hamburger-box .hamburger-inner, 
.wprmenu_bar .hamburger--slider:hover .hamburger-box .hamburger-inner::before, 
.wprmenu_bar .hamburger--slider:hover .hamburger-box .hamburger-inner::after, 
.wprmenu_bar .hamburger-inner:hover, 
.wprmenu_bar .hamburger-inner:hover::before, 
.wprmenu_bar .hamburger-inner:hover::after {
	background: #005d6f !important;
}
.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
	height: 2px;
}

#mg-wprm-wrap {
	background-color: #fbfbfb;
}

#mg-wprm-wrap li.menu-item-has-children ul.sub-menu a {
	font-size: 15px;
	text-transform: unset;
	font-weight: 400;
}

#mg-wprm-wrap ul#wprmenu_menu_ul li.menu-item a, 
div#mg-wprm-wrap ul>li:hover>span.wprmenu_icon, 
div#mg-wprm-wrap li.current-menu-item span.wprmenu_icon, 
div#mg-wprm-wrap ul li span.wprmenu_icon, 
div#mg-wprm-wrap ul li span.wprmenu_icon:hover, 
div#mg-wprm-wrap ul li span.wprmenu_icon:focus, 
div#mg-wprm-wrap ul li span.wprmenu_icon:active,
#mg-wprm-wrap li.current-menu-item > a {
	color: #2d2e2b !important;
}

#mg-wprm-wrap ul#wprmenu_menu_ul li.menu-item ul li a {
	padding-left: 30px !important;
}
#mg-wprm-wrap ul#wprmenu_menu_ul li.menu-item ul li ul li a {
	padding-left: 50px !important;
}

#mg-wprm-wrap ul#wprmenu_menu_ul li.menu-item.current_page_parent > a {
	color: #2d2e2b !important;
	background: #e6e6e6;
}

#mg-wprm-wrap li.current-menu-item > a {
	background: #e6e6e6;
}

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: #2d2e2b !important;
	text-decoration: underline;
}

#mg-wprm-wrap ul#wprmenu_menu_ul li.menu-item a:hover {
	background: #dcdcdc;
	color: #2d2e2b !important;
}

/* ende  - WPR Menu Farben ####################################################################################################################### */

/* ende  - Wrapper für alle Navigations-Einstellungen ############################################################################################ */

@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;
	}
}

/* start - buttons ############################################################################################################################### */

.wp-block-button__link, .wp-block-button__link:visited {
	color: #fff;
	background-color: #b68207;
	text-transform: unset;
	padding: 8px 20px;
	border-radius: 5px !important;
}
.wp-block-button__link:active, .wp-block-button__link:focus, .wp-block-button__link:hover {
	color: #fff;
	background-color: #9c6f06;
}

/* 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;
}

/* start - table ################################################################################################################################# */

figure.wp-block-table table,
figure.wp-block-table table td {
	border: none;
	width: unset;
}
figure.wp-block-table table td {
	vertical-align: top;
	padding: 0;
	margin: 0;
}
figure.wp-block-table table td:last-child {
	padding-right: 0;
}
figure.wp-block-table table tr:nth-child(3) td {
	/*font-size: 64px;*/
}

.table-buchung-schritte {
	margin: 0;
}
.table-buchung-schritte table {
	width: 100%;
	border-collapse: collapse;
	table-layout: fixed; /* bleibt wie WP es vorgibt */
}
.table-buchung-schritte td {
	word-break: break-word;
	overflow-wrap: anywhere;
}
.table-buchung-schritte table tr:nth-child(3) td {
	padding-bottom: 10px !important;
}
figure.wp-block-table.table-buchung-schritte table tr:first-child td {
	padding-bottom: 20px !important;
	font-size: 28px;
	color: #4fb0bf;
}
.has-djwiesel-schrift-dunkelgrau-color figure.wp-block-table.table-buchung-schritte table tr:first-child td {
	padding-bottom: 20px !important;
	font-size: 28px;
	color: #005d6f;
}
figure.wp-block-table.table-buchung-schritte table tr td {
	text-align: center;
	border-right: 1px solid #fff;
	padding: 0 20px 0 20px;
}
figure.wp-block-table.table-buchung-schritte table tr td:first-child {
	padding: 0 20px 0 0;
}
figure.wp-block-table.table-buchung-schritte table tr td:last-child {
	padding: 0 0 0 20px;
}
.has-djwiesel-schrift-dunkelgrau-color figure.wp-block-table.table-buchung-schritte table tr td {
	border-right: 1px solid #2d2e2b;
}
figure.wp-block-table.table-buchung-schritte table tr td:last-child {
	border: none;
}
figure.wp-block-table.table-buchung-schritte table tr td,
figure.wp-block-table.table-buchung-schritte table tr td a,
figure.wp-block-table.table-buchung-schritte table tr td a:visited {
	color: #fff;
}
.has-djwiesel-schrift-dunkelgrau-color figure.wp-block-table.table-buchung-schritte table tr td,
.has-djwiesel-schrift-dunkelgrau-color figure.wp-block-table.table-buchung-schritte table tr td a,
.has-djwiesel-schrift-dunkelgrau-color figure.wp-block-table.table-buchung-schritte table tr td a:visited {
	color: #2c2d2a;
}
@media all and (max-width: 991px) {
	.has-djwiesel-schrift-dunkelgrau-color figure.wp-block-table.table-buchung-schritte table tr td {
		border: none;
	}
	figure.wp-block-table.table-buchung-schritte table tr td {
		text-align: left;
		border: none;
		padding: 0;
	}
	figure.wp-block-table.table-buchung-schritte table tr:first-child td {
		padding-bottom: 0 !important;
	}
	figure.wp-block-table.table-buchung-schritte table tr:first-child td:first-child {
		padding-top: 50px !important;
		border-top: 1px solid #fff;
	}
	.has-djwiesel-schrift-dunkelgrau-color figure.wp-block-table.table-buchung-schritte table tr:first-child td:first-child {
		border-top: 1px solid #2d2e2b;
	}
	figure.wp-block-table.table-buchung-schritte table tr:last-child td {
		margin-bottom: 50px;
		padding-bottom: 50px;
		border-bottom: 1px solid #fff;
	}
	.has-djwiesel-schrift-dunkelgrau-color figure.wp-block-table.table-buchung-schritte table tr:last-child td {
		border-bottom: 1px solid #2d2e2b;
	}
	.table-buchung-schritte table{
		width: 100%;
	}
	/* TR "auflösen", damit TDs direkt sortierbar sind */
	.table-buchung-schritte tbody{
		display: flex;
		flex-direction: column;
	}
	.table-buchung-schritte tr{
		display: contents;
	}
	.table-buchung-schritte td{
		display: block;
		width: 100%;
		box-sizing: border-box;
		word-break: break-word;
		overflow-wrap: anywhere;
	}
	/* --- Reihenfolge: col1 (row1-4), col2 (row1-4), col3, col4 --- */
	.table-buchung-schritte tbody td:nth-child(1)  { order: 1;  } /* Schritt 1 */
	.table-buchung-schritte tbody td:nth-child(5)  { order: 2;  }
	.table-buchung-schritte tbody td:nth-child(9)  { order: 3;  }
	.table-buchung-schritte tbody td:nth-child(13) { order: 4;  }

	.table-buchung-schritte tbody td:nth-child(2)  { order: 5;  } /* Schritt 2 */
	.table-buchung-schritte tbody td:nth-child(6)  { order: 6;  }
	.table-buchung-schritte tbody td:nth-child(10) { order: 7;  }
	.table-buchung-schritte tbody td:nth-child(14) { order: 8;  }

	.table-buchung-schritte tbody td:nth-child(3)  { order: 9;  } /* Schritt 3 */
	.table-buchung-schritte tbody td:nth-child(7)  { order: 10; }
	.table-buchung-schritte tbody td:nth-child(11) { order: 11; }
	.table-buchung-schritte tbody td:nth-child(15) { order: 12; }

	.table-buchung-schritte tbody td:nth-child(4)  { order: 13; } /* Schritt 4 */
	.table-buchung-schritte tbody td:nth-child(8)  { order: 14; }
	.table-buchung-schritte tbody td:nth-child(12) { order: 15; }
	.table-buchung-schritte tbody td:nth-child(16) { order: 16; }
	/* --- Card-Optik pro Schritt (je 4 TDs) --- */
	/* Kopf (Schritt 1-4) */
	/* Zwischenzeilen (Row2 + Row3) sollen nahtlos aneinander */
	.table-buchung-schritte tbody td:nth-child(n+5):nth-child(-n+12){
		border: none;
	}
	/* Footer (Row4) -> Card unten abrunden + Abstand zur nächsten Card */
	.table-buchung-schritte tbody td:nth-child(n+13){
		border: none;
	}
}

/* ende  - table ################################################################################################################################# */

.captcha-image .cf7ic_instructions span {
	color: #564c4c !important;
	font-weight: 700;
}

/* start - Kontaktformular mit Plugin contact-form-7 ############################################################################################# */

.table-contact-form {
	width: 100%;
}
@media all and (max-width: 930px) {
	.table-contact-form td {
		display: block;
	}
}
.table-contact-form tr td p select.wpcf7-select {
	height: 37px;
}

label {
	display: inline-block;
	width: 98%;
	font-size: 16px;
	font-weight: 300;
}
label .required {
	font-size: 13px;
	font-weight: 300;
	opacity: 0.7;
}
.wpcf7-form-control-wrap input,
.wpcf7-form-control-wrap textarea {
	border-radius: unset;
	border: 1px solid #777777;
	background: transparent;
	padding: 0 10px;
	line-height: 35px;
}
.wpcf7-form-control-wrap input[type='text'],
.wpcf7-form-control-wrap input[type='email'],
.wpcf7-form-control-wrap textarea {
	width: 90%;
	max-width: 90%;
}
@media all and (max-width: 600px) {
	.wpcf7-form-control-wrap input[type='text'],
	.wpcf7-form-control-wrap input[type='email'],
	.wpcf7-form-control-wrap textarea {
		width: 100%;
		max-width: 100%;
	}
}
.wpcf7-form-control-wrap textarea {
	padding-top: 5px;
}
.wpcf7-form-control-wrap input:hover,
.wpcf7-form-control-wrap textarea:hover {
	background-color: #f0f0f0;
}
.wpcf7-form-control-wrap input:focus,
.wpcf7-form-control-wrap textarea:focus {
	border: 1px solid #817a7a;
	background-color: #f0f0f0;
	box-shadow: unset;
	outline: unset;
}
.wpcf7-form-control-wrap textarea {
	line-height: normal;
}

.wpcf7-form-control-wrap[data-name="your-message"] textarea {
	padding: 14px 0 5px 10px;
	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: unset;
	letter-spacing: unset;
	line-height: unset;
}
.wpcf7-form-control-wrap textarea:focus {
	border-color: #a99d97;
	-webkit-box-shadow: unset !important;
	box-shadow: unset !important;
}

.wpcf7-form-control-wrap .wpcf7-checkbox .wpcf7-list-item {
	display: block;
}

.wpcf7-list-item {
	margin: 0;
	display: block;
}

form select, form select option, form textarea {
	border-color: #abb8c3;
}

.text-color-pflichtfeld {
	color: #6f1200;
	font-weight: 400;
}

.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;
}

/* Textarea anfangs versteckt (JS schaltet sie dann um) */
.wpr-msg-toggle {
  cursor: pointer;
  user-select: none;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-left: 10px;
  font-weight: 700;
}

.wpr-msg-toggle .wpr-icon {
  display: inline-block;
  width: 22px;
  height: 22px;
  line-height: 22px;
  text-align: center;
  border: 1px solid rgba(0,0,0,.25);
  border-radius: 4px;
}

.wpr-msg-toggle:focus-visible {
  outline: 2px solid rgba(0,0,0,.35);
  outline-offset: 3px;
}

/* ende  - Kontaktformular mit Plugin contact-form-7 ############################################################################################# */

/* 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;
  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.02);
}*/

/* 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;
}

/* 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: 1199px) {
	.wp-block-group.alignwide,
	.alignfull .wp-block-group.alignwide {
		padding-left: 70px;
	}
}
@media all and (max-width: 991px) {
	.wp-block-group.alignwide,
	.alignfull .wp-block-group.alignwide {
		padding-left: 50px;
	}
}
@media all and (max-width: 767px) {
	.wp-block-group.alignwide,
	.alignfull .wp-block-group.alignwide {
		padding-left: 30px;
	}
}
@media all and (max-width: 575px) {
	.wp-block-group.alignwide,
	.alignfull .wp-block-group.alignwide {
		padding-left: 15px;
		padding-right: 15px;
	}
}
@media all and (max-width: 479px) {
	.wp-block-group.alignwide,
	.alignfull .wp-block-group.alignwide {
		padding-left: 0px;
		padding-right: 0px;
	}
}

/* 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: #777777 !important;
	pointer-events: unset !important;
	text-decoration: underline !important;
}
a.cd-upload-btn:hover {
	text-decoration: none !important;
	color: #564c4c !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;
}

.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;
	font-size: 12px;
}

.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: #2d2e2b; /* 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 - Heller Hintergrund > 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
rsagrar.de
*/

/* Normal bzw. heller Hintergrund */
:root {
	--accordion-back-light-color-background: #666;/* var(--accordion-back-light-color-background) */
	--accordion-back-light-color-background-title: #888;/* var(--accordion-back-light-color-background-title) */
	--accordion-back-light-color-border-and-title: #fcfcfc;/* var(--accordion-back-light-color-border-and-title) */
	--accordion-back-light-color-content: #2d2e2b;/* var(--accordion-back-light-color-content) */
}
.lightweight-accordion {
	margin: 0;
}
.lightweight-accordion > details {
	margin: 0 0 20px 0;
}

/* Titel-Bereich */
.lightweight-accordion > details > summary.lightweight-accordion-title {
	background-color: var(--accordion-back-light-color-background);
	color: var(--accordion-back-light-color-border-and-title);
	border-radius: 10px;
	padding: 10px 2px 10px 2px;
	position: relative;
	padding-left: 34px; /* Platz für das Plus/Minus-Symbol links */
	cursor: pointer;
}

/* Standard-Marker ausblenden */
.lightweight-accordion > details > summary.lightweight-accordion-title::-webkit-details-marker {
	display: none;
}
.lightweight-accordion > details > summary.lightweight-accordion-title::marker {
	content: '';
}

/* Hover-Farbe */
.lightweight-accordion > details > summary.lightweight-accordion-title:hover {
	background-color: var(--accordion-back-light-color-background-title);
}

.lightweight-accordion > details > summary.lightweight-accordion-title span {
	font-size: 22px;
}

/* Wenn geöffnet */
.lightweight-accordion > details[open] > summary.lightweight-accordion-title {
	background: var(--accordion-back-light-color-background-title) !important;
	border-bottom: none;
	border-bottom-left-radius: unset;
	border-bottom-right-radius: unset;
}

/* Plus/Minus-Icon als zwei Balken */

/* Waagerechter Balken (bleibt immer gleich – das Minus) */
.lightweight-accordion > details > summary.lightweight-accordion-title::before {
	content: "";
	position: absolute;
	left: 14px;
	top: 50%;
	width: 14px;
	height: 2px;
	background-color: currentColor;
	transform: translateY(-50%);
}

/* Senkrechter Balken (dreht sich weg) */
.lightweight-accordion > details > summary.lightweight-accordion-title::after {
	content: "";
	position: absolute;
	left: 20px;
	top: 50%;
	width: 2px;
	height: 14px;
	background-color: currentColor;
	transform-origin: center;
	transform: translateY(-50%) rotate(0deg); /* Plus */
	transition: transform 0.2s ease;
}

/* Beim Hover und im offenen Zustand: senkrechter Balken drehen -> Minus */
.lightweight-accordion > details > summary.lightweight-accordion-title:hover::after,
.lightweight-accordion > details[open] > summary.lightweight-accordion-title::after {
	transform: translateY(-50%) rotate(90deg); /* wird zur waagerechten Linie */
}

/* Body-Bereich */
.lightweight-accordion > details > .lightweight-accordion-body {
	border: 1px solid var(--accordion-back-light-color-background-title);
	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: var(--accordion-back-light-color-content);
	background-color: transparent;
}

.lightweight-accordion > details > .lightweight-accordion-body a:hover {
	opacity: 0.8;
}

/* ende  - Heller Hintergrund > Plugin Lightweight Accordion Von Andy Feliciotti, lightweight-accordion ########################################## */

/* start - Dunkler Hintergrund > Plugin Lightweight Accordion Von Andy Feliciotti, lightweight-accordion ######################################### */

:root {
	--accordion-back-dark-color-border-and-title: #888;/* var(--accordion-back-dark-color-border-and-title) */
	--accordion-back-dark-color-content: #fcfcfc;/* var(--accordion-back-dark-color-content) */
}
.lightweight-accordion.back-dark {
	margin: 0;
}
.lightweight-accordion.back-dark > details {
	margin: 0 0 20px 0;
}

/* Titel-Bereich */
.lightweight-accordion.back-dark > details > summary.lightweight-accordion-title {
	background-color: transparent;
	color: var(--accordion-back-dark-color-content);
	border-radius: 10px;
	border: 1px solid var(--accordion-back-dark-color-border-and-title);
	padding: 10px 2px 10px 2px;
	position: relative;
	padding-left: 34px; /* Platz für das Plus/Minus-Symbol links */
	cursor: pointer;
}

/* Standard-Marker ausblenden */
.lightweight-accordion.back-dark > details > summary.lightweight-accordion-title::-webkit-details-marker {
	display: none;
}
.lightweight-accordion.back-dark > details > summary.lightweight-accordion-title::marker {
	content: '';
}

/* Hover-Farbe */
.lightweight-accordion.back-dark > details > summary.lightweight-accordion-title:hover {
	background-color: var(--accordion-back-dark-color-border-and-title);
}

.lightweight-accordion.back-dark > details > summary.lightweight-accordion-title span {
	font-size: 22px;
}

/* Wenn geöffnet */
.lightweight-accordion.back-dark > details[open] > summary.lightweight-accordion-title {
	background: var(--accordion-back-dark-color-border-and-title) !important;
	border-bottom: none;
	border-bottom-left-radius: unset;
	border-bottom-right-radius: unset;
}

/* Plus/Minus-Icon als zwei Balken */

/* Waagerechter Balken (bleibt immer gleich – das Minus) */
.lightweight-accordion.back-dark > details > summary.lightweight-accordion-title::before {
	content: "";
	position: absolute;
	left: 14px;
	top: 50%;
	width: 14px;
	height: 2px;
	background-color: currentColor;
	transform: translateY(-50%);
}

/* Senkrechter Balken (dreht sich weg) */
.lightweight-accordion.back-dark > details > summary.lightweight-accordion-title::after {
	content: "";
	position: absolute;
	left: 20px;
	top: 50%;
	width: 2px;
	height: 14px;
	background-color: currentColor;
	transform-origin: center;
	transform: translateY(-50%) rotate(0deg); /* Plus */
	transition: transform 0.2s ease;
}

/* Beim Hover und im offenen Zustand: senkrechter Balken drehen -> Minus */
.lightweight-accordion.back-dark > details > summary.lightweight-accordion-title:hover::after,
.lightweight-accordion.back-dark > details[open] > summary.lightweight-accordion-title::after {
	transform: translateY(-50%) rotate(90deg); /* wird zur waagerechten Linie */
}

/* Body-Bereich */
.lightweight-accordion.back-dark > details > .lightweight-accordion-body {
	border: 1px solid var(--accordion-back-dark-color-border-and-title);
	border-bottom-left-radius: 10px;
	border-bottom-right-radius: 10px;
}

.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: var(--accordion-back-dark-color-content);
	background-color: transparent;
}

.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: var(--accordion-back-dark-color-content);
}

/* ende  - Dunkler Hintergrund > Plugin Lightweight Accordion Von Andy Feliciotti, lightweight-accordion ######################################### */

.divFooterWrapper {
	width: 100%;
	clear: both;
	position: relative; 
	z-index: 2;
}
.divFooterWrapper:before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 1;
	background-image:
	linear-gradient(to top,
		rgba(255,255,255,0) 0%,
		rgba(255,255,255,0) 75%,
		rgba(255,255,255,1) 100%
	),
	url('images/layout/logo-dj-wiesel.png');
	background-repeat: no-repeat, no-repeat;
	background-position: 0 0, -100px -400px;
	opacity: 0.03;
}
.divFooter {
	width: 100%;
	max-width: var(--breite--footer);
	margin: 0 auto;
	padding: 60px 30px 0 30px;
}

.divFooter nav {
	padding-bottom: 10px;
}

@media (max-width: 1350px) {
	.divFooter .wp-block-columns .wp-block-column:last-child {
		padding-right: 50px;
	}
}
@media (max-width: 575px) {
	.divFooter .wp-block-columns .wp-block-column:last-child {
		padding-right: 0;
	}
}

.divFooterWrapper .divFooter .wp-block-group {
	z-index: 3;
}

.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: rgba(0, 93, 111, .5) !important;
	text-decoration: underline;
}
.footer-group a:hover {
	text-decoration: none;
	color: rgba(0, 93, 111, 1) !important;
}
.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;
	}
}

.wp-block-group.footer-gruppe-kontakt {
	border-top: 2px solid #005d6f;
	padding-top: 30px !important;
	margin-top: 30px !important;
	position: relative;
}
.wp-block-group.footer-gruppe-kontakt::before {
	content: 'Kontakt zu mir';
	position: absolute;
	top: -34px;
	left: 0;
	color: #fff;
	background-color: #005d6f;
	line-height: 30px;
	padding: 1px 20px 1px 10px;
	border-top-left-radius: 5px;
	border-top-right-radius: 30px;
}
.wp-block-group.footer-gruppe-kontakt p {
	display: inline-block;
}
/*.wp-block-group.footer-gruppe-kontakt p::after {
	content: ', ';
	margin-right: 10px;
}
.wp-block-group.footer-gruppe-kontakt p:last-child::after {
	content: '';
	margin-right: 0;
}*/
@media (max-width: 1240px) {
	.wp-block-group.footer-gruppe-kontakt::before {
		left: 30px;
	}
	.wp-block-group.footer-gruppe-kontakt p {
		display: block;
	}
	.wp-block-group.footer-gruppe-kontakt p::after {
		content: '';
		margin-right: 0;
	}
}
.wp-block-group.footer-gruppe-links {
	border-top: 2px solid #005d6f;
	padding-top: 30px !important;
	margin-top: 30px !important;
}
.wp-block-group.footer-gruppe-links p {
	font-size: 14px;
}

.wp-block-group.footer-gruppe-oeffnungszeiten {
	position: relative;
}
.wp-block-group.footer-gruppe-oeffnungszeiten p {
	display: inline-block;
}
.wp-block-group.footer-gruppe-oeffnungszeiten p::after {
	content: ', ';
	margin-right: 10px;
}
.wp-block-group.footer-gruppe-oeffnungszeiten p:first-child::after,
.wp-block-group.footer-gruppe-oeffnungszeiten p:last-child::after {
	content: '';
}
@media (max-width: 700px) {
	.wp-block-group.footer-gruppe-oeffnungszeiten {
		margin-top: 30px !important;
	}
	.wp-block-group.footer-gruppe-oeffnungszeiten p:first-child {
		font-weight: 700;
	}
	.wp-block-group.footer-gruppe-oeffnungszeiten p {
		display: block;
	}
	.wp-block-group.footer-gruppe-oeffnungszeiten p::after {
		content: '';
	}
}

/* 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: #9c6f06;
	opacity: 1;
}*/

.template-xtra #divContentWrapper #divContent {
	margin-bottom: 50px;
}

div.tel-no-big,
div.tel-no-big p,
div.tel-no-big a,
div.tel-no-big a:visited {
	font-size: 22px;
}

@media all and (max-width: 781px) {
	:where(.wp-block-columns.is-layout-flex) {
		gap: 0;
	}
}

ul.ul-no-margin-before {
	margin-top: -20px;
}
.no-margin-bottom {
	margin-bottom: 0 !important;
}
.no-padding-bottom,
h1.no-padding-bottom,h2.no-padding-bottom,h3.no-padding-bottom,h4.no-padding-bottom,h5.no-padding-bottom,h6.no-padding-bottom,
h1.no-padding-bottom.wp-block-heading,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,
.h1.no-padding-bottom,.h2.no-padding-bottom,.h3.no-padding-bottom,.h4.no-padding-bottom,.h5.no-padding-bottom,.h6.no-padding-bottom {
	padding-bottom: 0 !important;
}
.no-padding-top,
h1.no-padding-top,h2.no-padding-top,h3.no-padding-top,h4.no-padding-top,h5.no-padding-top,h6.no-padding-top,
h1.no-padding-top.wp-block-heading,h2.no-padding-top.wp-block-heading,h3.no-padding-top.wp-block-heading,h4.no-padding-top.wp-block-heading,h5.no-padding-top.wp-block-heading,h6.no-padding-top.wp-block-heading,
.h1.no-padding-top,.h2.no-padding-top,.h3.no-padding-top,.h4.no-padding-top,.h5.no-padding-top,.h6.no-padding-top {
	padding-top: 0 !important;
}
.padding-5 {
	padding: 5px;
}
.white-space-nowrap {
	white-space: nowrap !important;
}

@media all and (max-width: 781px) {
	.reihenfolge-1 {
		order: 1;
	}
	.reihenfolge-2 {
		order: 2;
	}
}

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;
}

.center {
	text-align: center;
}

.startseite-slider-text {
}


.gruppe-kategorien > .wp-block-group__inner-container {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
:root {
	--hoehe-breite--categorie-element: 206px;
	--hover-backcolor--categorie-element: #f0f0f0;
}
.wp-block-lazyblock-cat-element {
	width: calc(var(--hoehe-breite--categorie-element) + 10px);
	height: calc(var(--hoehe-breite--categorie-element) + 10px);
	margin: 0 20px 20px 0;
	padding: 4px;
	border: 1px solid #ccc;
	display: inline-block;
	float: left;
}
.cat_wrapper {
	width: var(--hoehe-breite--categorie-element);
	height: var(--hoehe-breite--categorie-element);
	display: inline-block;
	border: 1px solid #f0f0f0;
	position: relative;
	overflow: hidden;
}
.cat_wrapper {
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
}
.cat_text_link {
	position: absolute;
	top: 0px; /* Oben mit 5px Abstand */
	left: 0px;
	right: 25px;
	background-color: #fff;
	padding: 0; /* Mehr Platz rechts für den Pfeil */
	font-size: 16px;
	font-weight: 700;
	cursor: pointer;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	z-index: 2;
	transition: 0.2s ease-in-out;
}
.cat_text_link::after {
	content: '';
	position: absolute;
	right: -15px;
	top: 0;
	width: 15px;
	height: 100%; /* Gleiche Höhe wie der Button */
	background-color: #fff;
	clip-path: polygon(0 0, 100% 50%, 0 100%); /* Spitze mit 35 Grad */
}
.cat_text_link:hover {
	background-color: var(--hover-backcolor--categorie-element);
}
.cat_text_link:hover::after {
	background-color: var(--hover-backcolor--categorie-element);
}
.cat_text_link a {
	display: block;
	padding: 5px;
	width: 100%;
	text-decoration: none;
	color: #005d6f;
}
.cat_wrapper:hover .cat_text_link,
.cat_wrapper:hover .cat_text_link::after,
.wp-block-lazyblock-cat-element:hover {
	background-color: var(--hover-backcolor--categorie-element);
}
.cat_img img {
	/*transition: 0.2s ease-in-out;*/ /* Transition auf Normalzustand setzen */
}
cat_wrapper .cat_img img {
	z-index: 0;
}
.cat_wrapper:hover .cat_img img {
}
.wp-block-group__inner-container .cat_img {
    position: relative;
    overflow: hidden; /* Wichtig für den Shine-Effekt */
    display: inline-block; /* Stellt sicher dass der Container nur Bildgröße hat */
}

.wp-block-group__inner-container .cat_img a {
    display: block; /* Stellt sicher dass der Link den Container füllt */
}

.wp-block-group__inner-container .cat_img img {
    display: block;
    position: relative; /* Bild bekommt eigene Positionierungsebene */
    z-index: 1; /* Bild unter dem Shine-Effekt */
}

.wp-block-group__inner-container .cat_img::before {
    position: absolute;
    top: 0;
    left: -75%;
    z-index: 2; /* Muss höher sein als das Bild */
    display: block;
    content: '';
    width: 50%;
    height: 100%;
    background: linear-gradient(
        to right,
        rgba(255, 255, 255, 0) 0%,
        rgba(255, 255, 255, 0.3) 100%
    );
    transform: skewX(-25deg);
    pointer-events: none; /* Verhindert dass der Effekt Klicks blockiert */
}

.wp-block-group__inner-container .cat_img:hover::before {
    animation: shine 0.75s;
}

@keyframes shine {
    100% {
        left: 125%;
    }
}

.wp-block-buttons.form-kontakt a.wp-block-button__link::after {
	content: ' ➨ 🖆';
}
.wp-block-buttons.form-kontakt:hover a.wp-block-button__link::after {
	color: #f3c418;
}

/* start - Galerie-Block in Bilder-Slider umwandeln ############################################################################################## */

:root {
	--galerie-block-max-breite: 800px;/* var(--galerie-block-max-breite) */
	--galerie-block-max-hoehe: 300px;/* var(--galerie-block-max-hoehe) */
}

/* Jedes Slide und das Bild füllen den kompletten Wrapper aus */
.wp-block-gallery.slider .slides figure,
.wp-block-gallery.slider .slides img {
  width: 100% !important;
  height: 100% !important;
}

/* Bild skaliert proportional und füllt den Bereich – Überschüsse werden abgeschnitten */
.wp-block-gallery.slider .slides img {
  object-fit: cover !important;
}

/* Galerie‑Container: responsive Breite mit Maximalwert */
.wp-block-gallery.slider {
  position: relative;
  width: 100% !important;
  max-width: var(--galerie-block-max-breite) !important; /* hier eigene Maximalbreite definieren */
  overflow: hidden;
  margin: 0 auto;
}

/* Liste der Bilder: nebeneinander anordnen */
.wp-block-gallery.slider .slides {
  display: flex;
  padding: 0;
  margin: 0;
  list-style: none;
  transition: transform 0.5s ease; /* Standard‑Animation */
}

/* Jedes Bild nimmt die volle Breite des Containers ein */
.wp-block-gallery.slider .slides figure {
  flex: 0 0 100%;
  margin: 0;
  display: block;
  text-align: center;
}

/* Bilder beschränken und zuschneiden */
.wp-block-gallery.slider img {
  width: 100% !important;
  height: auto !important;
}
.wp-block-gallery.slider .slides figure,
.wp-block-gallery.slider img {
  max-height: var(--galerie-block-max-hoehe) !important; /* eigene Maximalhöhe */
}

/* Navigationspfeile */
.slider-nav {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  display: flex;
  justify-content: space-between;
  transform: translateY(-50%);
  pointer-events: none; /* damit Klicks nur auf Pfeile gehen */
}

.slider-nav span {
  background: transparent;
  border: none;
  color: #fff;
  width: 40px;
  height: 40px;
  line-height: 40px;
  text-align: center;
  font-size: 26px;
  cursor: pointer;
  pointer-events: all;
  user-select: none;
  text-shadow: 0 2px 6px rgba(0,0,0,.8);
}

.wp-block-gallery.slider figure.wp-block-image:not(#individual-image) a,
.wp-block-gallery.slider figure.wp-block-image:not(#individual-image) img {
	/*flex: unset !important;
	height: unset !important;
	object-fit: none !important;
	width: unset !important;*/
}

/* ende  - Galerie-Block in Bilder-Slider umwandeln ############################################################################################## */

/* start - Galerie-Block in Bilder-Slider umwandeln: Bilder werden komplett angezeigt ############################################################ */

:root {
	--galerie-block-max-breite: 800px;/* var(--galerie-block-max-breite) */
	--galerie-block-max-hoehe: 300px;/* var(--galerie-block-max-hoehe) */
}

/* Jedes Slide und das Bild füllen den kompletten Wrapper aus */
.wp-block-gallery.slider-full-images .slides figure,
.wp-block-gallery.slider-full-images .slides img {
  width: 100% !important;
  height: 100% !important;
}

/* Bild skaliert proportional und füllt den Bereich – Überschüsse werden abgeschnitten */
.wp-block-gallery.slider-full-images .slides img {
  object-fit: cover !important;
}

/* Galerie‑Container: responsive Breite mit Maximalwert */
.wp-block-gallery.slider-full-images {
  position: relative;
  width: 100% !important;
  max-width: var(--galerie-block-max-breite) !important; /* hier eigene Maximalbreite definieren */
  overflow: hidden;
  margin: 0 auto;
}

/* Liste der Bilder: nebeneinander anordnen */
.wp-block-gallery.slider-full-images .slides {
  display: flex;
  padding: 0;
  margin: 0;
  list-style: none;
  transition: transform 0.5s ease; /* Standard‑Animation */
}

/* Jedes Bild nimmt die volle Breite des Containers ein */
.wp-block-gallery.slider-full-images .slides figure {
  flex: 0 0 100%;
  margin: 0;
  display: block;
  text-align: center;
}

/* Bilder beschränken und zuschneiden */
.wp-block-gallery.slider-full-images img {
  width: 100% !important;
  height: auto !important;
}
.wp-block-gallery.slider-full-images .slides figure,
.wp-block-gallery.slider-full-images img {
  max-height: var(--galerie-block-max-hoehe) !important; /* eigene Maximalhöhe */
}

/* Navigationspfeile */
.slider-nav {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  display: flex;
  justify-content: space-between;
  transform: translateY(-50%);
  pointer-events: none; /* damit Klicks nur auf Pfeile gehen */
}
.slider-nav span {
  background: transparent;
  border: none;
  color: #fff;
  width: 40px;
  height: 40px;
  line-height: 40px;
  text-align: center;
  font-size: 26px;
  cursor: pointer;
  pointer-events: all;
  user-select: none;
  text-shadow: 0 2px 6px rgba(0,0,0,.8);
}

.wp-block-gallery.slider-full-images figure.wp-block-image:not(#individual-image) a,
.wp-block-gallery.slider-full-images figure.wp-block-image:not(#individual-image) img {
	flex: unset !important;
	object-fit: contain !important;
	/*height: unset !important;
	width: unset !important;*/
}

/* ende  - Galerie-Block in Bilder-Slider umwandeln: Bilder werden komplett angezeigt ############################################################ */

.wp-block-gallery.has-nested-images figure.wp-block-image figcaption {
	box-sizing: border-box;
	color: #000;
	font-size: 14px;
	margin: 0;
	overflow: auto;
	padding: 1em;
	text-align: center;
	/*text-shadow: 0 0 1.5px #000;*/
	text-shadow: unset;
}

/* start - social-sidebar ######################################################################################################################## */
/* Social-Sidebar (rechts, mittig) */

.social-sidebar {
	position: fixed;
	right: 0;
	bottom: 90px;
	transform: translateY(-50%);
	display: flex;
	flex-direction: column;
	gap: 3px;
	z-index: 1000;
	padding-right: 0px; /* Abstand zum rechten Rand */
	align-items: flex-end; /* Icons rechts ausrichten (verhindert "Wackeln") */
}
@media all and (max-width: 575px) {
	.social-sidebar {
		display: none;
	}
}
/* Icon-Container (Standardzustand: Nur Icon sichtbar) */
.social-icon {
	display: flex;
	align-items: center;
	background: rgba(255, 255, 255, 0.9);
	color: white;
	text-decoration: none;
	border-radius: 10px 0 0 10px;
	padding: 5px;

	/* Statt per JS von 35px auf 160px zu animieren */
	width: 160px;
	box-sizing: border-box;

	overflow: hidden;
	position: relative;
	flex-shrink: 0;
	box-shadow: 0px 1px 1px rgba(0, 0, 0, .4);

	/* Im Ruhezustand nach rechts rausgeschoben */
	transform: translateX(125px);

	/* Nur transform/opacity animieren, keine width */
	transition:
		transform 300ms ease,
		background 200ms ease;
}

.social-icon:hover,
.social-icon:focus {
	background: rgba(255, 255, 255, 1);
	transform: translateX(0);
}

.social-label {
	white-space: nowrap;
	opacity: 0;
	margin-left: 10px;
	transition: opacity 200ms ease;
}

.social-icon:hover .social-label,
.social-icon:focus .social-label {
	opacity: 1;
}
/* Icon (Font Awesome) */
.social-icon i {
	font-size: 24px;
	min-width: 35px; /* Fester Platz für das Icon */
}
/* Text-Label (Standardzustand: unsichtbar) */
.social-label {
	white-space: nowrap;
	opacity: 0;
	transition: none;
	margin-left: 10px;
}
.social-icon i,
.social-label {
	color: #b68207 !important;
}
/* ende  - social-sidebar ######################################################################################################################## */

.hotlineWrapper {
	position: fixed;
	bottom: -83px; /* Endposition */
	right: 7px;
	opacity: 0;
	transform: translateY(100%); /* Startet außerhalb des sichtbaren Bereichs */
	animation: slideIn 1s ease-in-out 2s forwards; /* Animation nach 10s Verzögerung */
	z-index: 1;
	border-radius: 10px;
	border: 3px solid #e1e1e1;
	background: #b68207;
	transition: background .1s ease-in-out;
}
.hotlineWrapper a {
	color: #fff;
	text-align: center;
	text-decoration: none;
	padding: 10px;
	display: block;
}
.hotlineWrapper:hover {
	background: #9c6f06;
}
@keyframes slideIn {
	to {
		opacity: 1;
		transform: translateY(0); /* Bewegt das Element nach oben */
	}
}

.spalten-gesamte-breite {
	gap: 0 !important;
}
.spalten-gesamte-breite .wp-block-column {
	padding: 0 30px;
}
.spalten-gesamte-breite .wp-block-column.padding-0 {
	padding: 0;
}


:root {
	--breite-social-media-icon: 80px;
	--hoehe-social-media-icon: 90px;
}
.social-media-icon,
.social-media-icon svg {
	width: var(--breite-social-media-icon);
	height: var(--hoehe-social-media-icon);
}
.social-media-icon a,
.social-media-icon a:visited {
	display: block;
	color: #b68207;
	width: var(--breite-social-media-icon);
	height: var(--hoehe-social-media-icon);
}
.social-media-icon a:hover {
	color: #9c6f06;
}
.social-media-icon-name {
	text-align: center;
}
@media (max-width: 781px){
	.social-media-icon {
		margin: 0 auto;
		margin-bottom: 50px;
	}
}

body.ort div.divBeitragsbild {
	display: none;
}

#form-generator.form-horizontal {
	background: transparent !important;
	padding: 0px !important;
	position: relative;
}
.form-container #form-generator.form-horizontal {
	color: #2c2d2a !important;
	font-size: unset !important;
	text-align: left !important;
}
#form-generator.form-horizontal .react-form-builder-form .rfb-item label span {
	background: inherit !important;
	font-weight: 300;
	padding: 0px 5px;
}
#form-generator.form-horizontal .form-control {
	color: rgba(37, 38, 43, 1) !important;
	background: unset !important;
	font-size: 16px;
	font-weight: 400 !important;
	letter-spacing: unset !important;
	height: 40px;
	padding: 6px 12px !important;
	border-radius: unset !important;
	border: 1px solid rgba(134, 142, 150, 1) !important;
	box-shadow: none !important;
}
.form-container #form-generator .react-form-builder-form form .btn-toolbar .btn.btn-big {
	color: #fff !important;
	font-weight: 700 !important;
	background-color: #b68207 !important;
}
.form-container #form-generator .react-form-builder-form form .btn-toolbar .btn.btn-big:hover {
	background-color: #9c6f06 !important;
}
.form-container #form-generator .form-group {
	padding-right: 20px !important;
}

/* Kalender-Popup wirklich größer machen */
.react-datepicker-popper .react-datepicker {
  transform: scale(1.6);
  transform-origin: top left;
}

/* damit er nicht hinter Bootstrap/Modals verschwindet */
.react-datepicker-popper {
  z-index: 9999;
}

/* falls irgendwo was clippt */
.react-datepicker-popper,
.react-datepicker {
  overflow: visible;
}
#root-portal div .react-datepicker__tab-loop .react-datepicker-popper[data-placement^="bottom"] .react-datepicker__triangle::before, 
#root-portal div .react-datepicker__tab-loop .react-datepicker-popper[data-placement^="top"] .react-datepicker__triangle::before, 
#root-portal div .react-datepicker__tab-loop .react-datepicker-popper[data-placement^="bottom"] .react-datepicker__triangle::after, 
#root-portal div .react-datepicker__tab-loop .react-datepicker-popper[data-placement^="top"] .react-datepicker__triangle::after {
	left: -78px;
}

/*toogle textarea*/
.wpr-msg-toggle{
  cursor:pointer;
  user-select:none;
  display:inline-flex;
  align-items:center;
  margin-left:10px;
  font-weight:bold;
}

.wpr-msg-toggle .wpr-icon{
  display:inline-block;
  width:22px;
  height:22px;
  line-height:22px;
  text-align:center;
  border:1px solid rgba(0,0,0,.25);
  border-radius:4px;
}

/*Button zur Seite Musik brauche ich nicht auf der Seite Musik:*/
body.page-id-17 .button-musikwuensche {
	display: none;
}

/* start - Spalten als Tabelle: zwei Zeilen mit je zwei Spalten ################################################################################## */

/* =========================
   2 Zeilen x 2 Spalten GRID
   ========================= */
.tbl-grid-2x2{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0; /* wie Tabelle */
}

.tbl-grid-2x2 > .wp-block-columns{
  display: contents;
  margin: 0;
  padding: 0;
}

.tbl-grid-2x2 .wp-block-column{
  margin: 0 !important;
  padding: 14px;
  min-width: 0;
  display: flex;
  flex-direction: column;
}

/* ===== Desktop: wir setzen die 2 Zeilen sauber ===== */
/* Row 1 */
.tbl-grid-2x2 > .wp-block-columns:nth-child(1) > .wp-block-column:nth-child(1){ grid-column: 1; grid-row: 1; }
.tbl-grid-2x2 > .wp-block-columns:nth-child(1) > .wp-block-column:nth-child(2){ grid-column: 2; grid-row: 1; }

/* Row 2 */
.tbl-grid-2x2 > .wp-block-columns:nth-child(2) > .wp-block-column:nth-child(1){ grid-column: 1; grid-row: 2; }
.tbl-grid-2x2 > .wp-block-columns:nth-child(2) > .wp-block-column:nth-child(2){ grid-column: 2; grid-row: 2; }


/* ===== Mobile: spaltenweise untereinander ===== */
@media (max-width: 781px){

  .tbl-grid-2x2{
    grid-template-columns: 1fr !important;
    width: 100%;
  }

  .tbl-grid-2x2 .wp-block-column{
    grid-column: 1 / -1 !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .tbl-grid-2x2 .wp-block-column:last-child{
    border-bottom: none;
  }

  /* Reihenfolge: (1,2), (3,4) */
  .tbl-grid-2x2 > .wp-block-columns:nth-child(1) > .wp-block-column:nth-child(1){ grid-row: 1; }
  .tbl-grid-2x2 > .wp-block-columns:nth-child(2) > .wp-block-column:nth-child(1){ grid-row: 2; border-bottom: 1px solid #5f6366; margin-bottom: 40px !important; padding-bottom: 40px !important; }

  .tbl-grid-2x2 > .wp-block-columns:nth-child(1) > .wp-block-column:nth-child(2){ grid-row: 3; }
  .tbl-grid-2x2 > .wp-block-columns:nth-child(2) > .wp-block-column:nth-child(2){ grid-row: 4; }
}

/* ende  - Spalten als Tabelle: zwei Zeilen mit je zwei Spalten ################################################################################## */



/* start - Spalten als Tabelle: zwei Zeilen mit je drei Spalten ################################################################################## */

/* =========================
   2 Zeilen x 3 Spalten GRID
   ========================= */
.tbl-grid-2x3{
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0; /* wie Tabelle */
}

.tbl-grid-2x3 > .wp-block-columns{
  display: contents;
  margin: 0;
  padding: 0;
}

.tbl-grid-2x3 .wp-block-column{
  margin: 0 !important;
  padding: 14px;
  min-width: 0;
  display: flex;
  flex-direction: column;
}

/* ===== Desktop: wir setzen die 2 Zeilen sauber ===== */
/* Row 1 */
.tbl-grid-2x3 > .wp-block-columns:nth-child(1) > .wp-block-column:nth-child(1){ grid-column: 1; grid-row: 1; }
.tbl-grid-2x3 > .wp-block-columns:nth-child(1) > .wp-block-column:nth-child(2){ grid-column: 2; grid-row: 1; }
.tbl-grid-2x3 > .wp-block-columns:nth-child(1) > .wp-block-column:nth-child(3){ grid-column: 3; grid-row: 1; }

/* Row 2 */
.tbl-grid-2x3 > .wp-block-columns:nth-child(2) > .wp-block-column:nth-child(1){ grid-column: 1; grid-row: 2; }
.tbl-grid-2x3 > .wp-block-columns:nth-child(2) > .wp-block-column:nth-child(2){ grid-column: 2; grid-row: 2; }
.tbl-grid-2x3 > .wp-block-columns:nth-child(2) > .wp-block-column:nth-child(3){ grid-column: 3; grid-row: 2; }


/* ===== Mobile: spaltenweise untereinander ===== */
@media (max-width: 781px){

  .tbl-grid-2x3{
    grid-template-columns: 1fr !important;
    width: 100%;
  }

  .tbl-grid-2x3 .wp-block-column{
    grid-column: 1 / -1 !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .tbl-grid-2x3 .wp-block-column:last-child{
    border-bottom: none;
  }

  /* Reihenfolge: (1,2), (3,4), (5,6) */
  .tbl-grid-2x3 > .wp-block-columns:nth-child(1) > .wp-block-column:nth-child(1){ grid-row: 1; }
  .tbl-grid-2x3 > .wp-block-columns:nth-child(2) > .wp-block-column:nth-child(1){ grid-row: 2; border-bottom: 1px solid #5f6366; margin-bottom: 40px !important; padding-bottom: 40px !important; }

  .tbl-grid-2x3 > .wp-block-columns:nth-child(1) > .wp-block-column:nth-child(2){ grid-row: 3; }
  .tbl-grid-2x3 > .wp-block-columns:nth-child(2) > .wp-block-column:nth-child(2){ grid-row: 4; border-bottom: 1px solid #5f6366; margin-bottom: 40px !important; padding-bottom: 40px !important; }

  .tbl-grid-2x3 > .wp-block-columns:nth-child(1) > .wp-block-column:nth-child(3){ grid-row: 5; }
  .tbl-grid-2x3 > .wp-block-columns:nth-child(2) > .wp-block-column:nth-child(3){ grid-row: 6; }
}

/* ende  - Spalten als Tabelle: zwei Zeilen mit je drei Spalten ################################################################################## */

/* start - Spalten als Tabelle: zwei Zeilen mit je vier Spalten ################################################################################## */

/* =========================
   2 Zeilen x 4 Spalten GRID
   ========================= */
.tbl-grid-2x4{
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0; /* wie Tabelle */
}

/* Die beiden WP-"Spalten"-Zeilen sollen kein eigenes Layout mehr machen */
.tbl-grid-2x4 > .wp-block-columns{
  display: contents;
  margin: 0;
  padding: 0;
}

/* Jede WP-Spalte ist genau eine Tabellenzelle */
.tbl-grid-2x4 .wp-block-column{
  margin: 0 !important;
  padding: 14px;
  min-width: 0;

  /* Damit Inhalte ordentlich drin bleiben */
  display: flex;
  flex-direction: column;
}

/* ===== Desktop: wir setzen die 2 Zeilen sauber ===== */

/* Row 1 */
.tbl-grid-2x4 > .wp-block-columns:nth-child(1) > .wp-block-column:nth-child(1){ grid-column: 1; grid-row: 1; }
.tbl-grid-2x4 > .wp-block-columns:nth-child(1) > .wp-block-column:nth-child(2){ grid-column: 2; grid-row: 1; }
.tbl-grid-2x4 > .wp-block-columns:nth-child(1) > .wp-block-column:nth-child(3){ grid-column: 3; grid-row: 1; }
.tbl-grid-2x4 > .wp-block-columns:nth-child(1) > .wp-block-column:nth-child(4){ grid-column: 4; grid-row: 1; }

/* Row 2 */
.tbl-grid-2x4 > .wp-block-columns:nth-child(2) > .wp-block-column:nth-child(1){ grid-column: 1; grid-row: 2; }
.tbl-grid-2x4 > .wp-block-columns:nth-child(2) > .wp-block-column:nth-child(2){ grid-column: 2; grid-row: 2; }
.tbl-grid-2x4 > .wp-block-columns:nth-child(2) > .wp-block-column:nth-child(3){ grid-column: 3; grid-row: 2; }
.tbl-grid-2x4 > .wp-block-columns:nth-child(2) > .wp-block-column:nth-child(4){ grid-column: 4; grid-row: 2; }


/* ===== Mobile: spaltenweise untereinander ===== */
@media (max-width: 781px){

  .tbl-grid-2x4{
    grid-template-columns: 1fr !important;
    width: 100%;
  }

  /* ALLE Zellen auf volle Breite zwingen */
  .tbl-grid-2x4 .wp-block-column{
    grid-column: 1 / -1 !important;
    width: 100% !important;
    max-width: 100% !important;
	 
  }
  .tbl-grid-2x4 .wp-block-column:last-child{
	 border-bottom: none;
  }

  /* Reihenfolge: (1,2), (3,4), (5,6), (7,8) */
  .tbl-grid-2x4 > .wp-block-columns:nth-child(1) > .wp-block-column:nth-child(1){ grid-row: 1; }
  .tbl-grid-2x4 > .wp-block-columns:nth-child(2) > .wp-block-column:nth-child(1){ grid-row: 2;border-bottom: 1px solid #5f6366;margin-bottom: 40px !important;padding-bottom: 40px !important; }

  .tbl-grid-2x4 > .wp-block-columns:nth-child(1) > .wp-block-column:nth-child(2){ grid-row: 3; }
  .tbl-grid-2x4 > .wp-block-columns:nth-child(2) > .wp-block-column:nth-child(2){ grid-row: 4;border-bottom: 1px solid #5f6366;margin-bottom: 40px !important;padding-bottom: 40px !important; }

  .tbl-grid-2x4 > .wp-block-columns:nth-child(1) > .wp-block-column:nth-child(3){ grid-row: 5; }
  .tbl-grid-2x4 > .wp-block-columns:nth-child(2) > .wp-block-column:nth-child(3){ grid-row: 6;border-bottom: 1px solid #5f6366;margin-bottom: 40px !important;padding-bottom: 40px !important; }

  .tbl-grid-2x4 > .wp-block-columns:nth-child(1) > .wp-block-column:nth-child(4){ grid-row: 7; }
  .tbl-grid-2x4 > .wp-block-columns:nth-child(2) > .wp-block-column:nth-child(4){ grid-row: 8; }
}

/* ende  - Spalten als Tabelle: zwei Zeilen mit je vier Spalten ################################################################################## */

/* start - Spalten als Tabelle: zwei Zeilen mit je fünf oder sechs Spalten ####################################################################### */

/* =========================================================================================
   2 Zeilen x 5 Spalten GRID
   ========================================================================================= */
.tbl-grid-2x5{
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0; /* wie Tabelle */
}

.tbl-grid-2x5 > .wp-block-columns{
  display: contents;
  margin: 0;
  padding: 0;
}

.tbl-grid-2x5 .wp-block-column{
  margin: 0 !important;
  padding: 14px;
  min-width: 0;
  display: flex;
  flex-direction: column;
}

/* ===== Desktop: wir setzen die 2 Zeilen sauber ===== */
/* Row 1 */
.tbl-grid-2x5 > .wp-block-columns:nth-child(1) > .wp-block-column:nth-child(1){ grid-column: 1; grid-row: 1; }
.tbl-grid-2x5 > .wp-block-columns:nth-child(1) > .wp-block-column:nth-child(2){ grid-column: 2; grid-row: 1; }
.tbl-grid-2x5 > .wp-block-columns:nth-child(1) > .wp-block-column:nth-child(3){ grid-column: 3; grid-row: 1; }
.tbl-grid-2x5 > .wp-block-columns:nth-child(1) > .wp-block-column:nth-child(4){ grid-column: 4; grid-row: 1; }
.tbl-grid-2x5 > .wp-block-columns:nth-child(1) > .wp-block-column:nth-child(5){ grid-column: 5; grid-row: 1; }

/* Row 2 */
.tbl-grid-2x5 > .wp-block-columns:nth-child(2) > .wp-block-column:nth-child(1){ grid-column: 1; grid-row: 2; }
.tbl-grid-2x5 > .wp-block-columns:nth-child(2) > .wp-block-column:nth-child(2){ grid-column: 2; grid-row: 2; }
.tbl-grid-2x5 > .wp-block-columns:nth-child(2) > .wp-block-column:nth-child(3){ grid-column: 3; grid-row: 2; }
.tbl-grid-2x5 > .wp-block-columns:nth-child(2) > .wp-block-column:nth-child(4){ grid-column: 4; grid-row: 2; }
.tbl-grid-2x5 > .wp-block-columns:nth-child(2) > .wp-block-column:nth-child(5){ grid-column: 5; grid-row: 2; }

/* ===== Mobile: spaltenweise untereinander ===== */
@media (max-width: 781px){

  .tbl-grid-2x5{
    grid-template-columns: 1fr !important;
    width: 100%;
  }

  /* ALLE Zellen auf volle Breite zwingen */
  .tbl-grid-2x5 .wp-block-column{
    grid-column: 1 / -1 !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  /* Reihenfolge: (1,2), (3,4), (5,6), (7,8), (9,10) */
  .tbl-grid-2x5 > .wp-block-columns:nth-child(1) > .wp-block-column:nth-child(1){ grid-row: 1; }
  .tbl-grid-2x5 > .wp-block-columns:nth-child(2) > .wp-block-column:nth-child(1){ grid-row: 2; border-bottom: 1px solid #5f6366; margin-bottom: 40px !important; padding-bottom: 40px !important; }

  .tbl-grid-2x5 > .wp-block-columns:nth-child(1) > .wp-block-column:nth-child(2){ grid-row: 3; }
  .tbl-grid-2x5 > .wp-block-columns:nth-child(2) > .wp-block-column:nth-child(2){ grid-row: 4; border-bottom: 1px solid #5f6366; margin-bottom: 40px !important; padding-bottom: 40px !important; }

  .tbl-grid-2x5 > .wp-block-columns:nth-child(1) > .wp-block-column:nth-child(3){ grid-row: 5; }
  .tbl-grid-2x5 > .wp-block-columns:nth-child(2) > .wp-block-column:nth-child(3){ grid-row: 6; border-bottom: 1px solid #5f6366; margin-bottom: 40px !important; padding-bottom: 40px !important; }

  .tbl-grid-2x5 > .wp-block-columns:nth-child(1) > .wp-block-column:nth-child(4){ grid-row: 7; }
  .tbl-grid-2x5 > .wp-block-columns:nth-child(2) > .wp-block-column:nth-child(4){ grid-row: 8; border-bottom: 1px solid #5f6366; margin-bottom: 40px !important; padding-bottom: 40px !important; }

  .tbl-grid-2x5 > .wp-block-columns:nth-child(1) > .wp-block-column:nth-child(5){ grid-row: 9; }
  .tbl-grid-2x5 > .wp-block-columns:nth-child(2) > .wp-block-column:nth-child(5){ grid-row: 10; }
}


/* =========================================================================================
   2 Zeilen x 6 Spalten GRID
   ========================================================================================= */
.tbl-grid-2x6{
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 0; /* wie Tabelle */
}

.tbl-grid-2x6 > .wp-block-columns{
  display: contents;
  margin: 0;
  padding: 0;
}

.tbl-grid-2x6 .wp-block-column{
  margin: 0 !important;
  padding: 14px;
  min-width: 0;
  display: flex;
  flex-direction: column;
}

/* ===== Desktop: wir setzen die 2 Zeilen sauber ===== */
/* Row 1 */
.tbl-grid-2x6 > .wp-block-columns:nth-child(1) > .wp-block-column:nth-child(1){ grid-column: 1; grid-row: 1; }
.tbl-grid-2x6 > .wp-block-columns:nth-child(1) > .wp-block-column:nth-child(2){ grid-column: 2; grid-row: 1; }
.tbl-grid-2x6 > .wp-block-columns:nth-child(1) > .wp-block-column:nth-child(3){ grid-column: 3; grid-row: 1; }
.tbl-grid-2x6 > .wp-block-columns:nth-child(1) > .wp-block-column:nth-child(4){ grid-column: 4; grid-row: 1; }
.tbl-grid-2x6 > .wp-block-columns:nth-child(1) > .wp-block-column:nth-child(5){ grid-column: 5; grid-row: 1; }
.tbl-grid-2x6 > .wp-block-columns:nth-child(1) > .wp-block-column:nth-child(6){ grid-column: 6; grid-row: 1; }

/* Row 2 */
.tbl-grid-2x6 > .wp-block-columns:nth-child(2) > .wp-block-column:nth-child(1){ grid-column: 1; grid-row: 2; }
.tbl-grid-2x6 > .wp-block-columns:nth-child(2) > .wp-block-column:nth-child(2){ grid-column: 2; grid-row: 2; }
.tbl-grid-2x6 > .wp-block-columns:nth-child(2) > .wp-block-column:nth-child(3){ grid-column: 3; grid-row: 2; }
.tbl-grid-2x6 > .wp-block-columns:nth-child(2) > .wp-block-column:nth-child(4){ grid-column: 4; grid-row: 2; }
.tbl-grid-2x6 > .wp-block-columns:nth-child(2) > .wp-block-column:nth-child(5){ grid-column: 5; grid-row: 2; }
.tbl-grid-2x6 > .wp-block-columns:nth-child(2) > .wp-block-column:nth-child(6){ grid-column: 6; grid-row: 2; }

/* ===== Mobile: spaltenweise untereinander ===== */
@media (max-width: 781px){

  .tbl-grid-2x6{
    grid-template-columns: 1fr !important;
    width: 100%;
  }

  /* ALLE Zellen auf volle Breite zwingen */
  .tbl-grid-2x6 .wp-block-column{
    grid-column: 1 / -1 !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  /* Reihenfolge: (1,2), (3,4), (5,6), (7,8), (9,10), (11,12) */
  .tbl-grid-2x6 > .wp-block-columns:nth-child(1) > .wp-block-column:nth-child(1){ grid-row: 1; }
  .tbl-grid-2x6 > .wp-block-columns:nth-child(2) > .wp-block-column:nth-child(1){ grid-row: 2; border-bottom: 1px solid #5f6366; margin-bottom: 40px !important; padding-bottom: 40px !important; }

  .tbl-grid-2x6 > .wp-block-columns:nth-child(1) > .wp-block-column:nth-child(2){ grid-row: 3; }
  .tbl-grid-2x6 > .wp-block-columns:nth-child(2) > .wp-block-column:nth-child(2){ grid-row: 4; border-bottom: 1px solid #5f6366; margin-bottom: 40px !important; padding-bottom: 40px !important; }

  .tbl-grid-2x6 > .wp-block-columns:nth-child(1) > .wp-block-column:nth-child(3){ grid-row: 5; }
  .tbl-grid-2x6 > .wp-block-columns:nth-child(2) > .wp-block-column:nth-child(3){ grid-row: 6; border-bottom: 1px solid #5f6366; margin-bottom: 40px !important; padding-bottom: 40px !important; }

  .tbl-grid-2x6 > .wp-block-columns:nth-child(1) > .wp-block-column:nth-child(4){ grid-row: 7; }
  .tbl-grid-2x6 > .wp-block-columns:nth-child(2) > .wp-block-column:nth-child(4){ grid-row: 8; border-bottom: 1px solid #5f6366; margin-bottom: 40px !important; padding-bottom: 40px !important; }

  .tbl-grid-2x6 > .wp-block-columns:nth-child(1) > .wp-block-column:nth-child(5){ grid-row: 9; }
  .tbl-grid-2x6 > .wp-block-columns:nth-child(2) > .wp-block-column:nth-child(5){ grid-row: 10; border-bottom: 1px solid #5f6366; margin-bottom: 40px !important; padding-bottom: 40px !important; }

  .tbl-grid-2x6 > .wp-block-columns:nth-child(1) > .wp-block-column:nth-child(6){ grid-row: 11; }
  .tbl-grid-2x6 > .wp-block-columns:nth-child(2) > .wp-block-column:nth-child(6){ grid-row: 12; }
}

/* ende  - Spalten als Tabelle: zwei Zeilen mit je fünf oder sechs Spalten ####################################################################### */

#n2-ss-1 h1,
#n2-ss-1 h2,
#n2-ss-1 h3,
#n2-ss-1 h4,
#n2-ss-1 h5,
#n2-ss-1 h6 {
	padding: 0 !important;
}

/* start - Spalten der Pakete mit hellem Hintergrund ############################################################################################# */

/* Container: mehr Luft zwischen den Spalten */
.spalten-pakete-back-hell.wp-block-columns{
  gap: 18px;                 /* Abstand zwischen Spalten */
  align-items: stretch;      /* gleiche Höhe wirkt "sauber" */
}

/* Jede Spalte als Card */
.spalten-pakete-back-hell .wp-block-column{
  background: #f5f5f5;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 16px;
  padding: 22px 20px;
  box-shadow: 0 10px 30px rgba(0,0,0,.08);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
  overflow: hidden; /* falls innen irgendwas übersteht */
}

/* Hover: subtil “hochkommen” */
.spalten-pakete-back-hell .wp-block-column:hover{
  transform: translateY(-3px);
  box-shadow: 0 16px 40px rgba(0,0,0,.12);
  border-color: rgba(0,0,0,.14);
}

/* Optional: Überschrift im Card-Header “absetzen” */
.spalten-pakete-back-hell .wp-block-column > :first-child{
  margin-top: 0;
}

.spalten-pakete-back-hell .wp-block-column h2,
.spalten-pakete-back-hell .wp-block-column h3{
  margin-top: 0;
  margin-bottom: 12px;
}

/* Mobile: weniger Padding, damit’s nicht gequetscht aussieht */
@media (max-width: 781px){
  .spalten-pakete-back-hell .wp-block-column{
    padding: 18px 16px;
    border-radius: 14px;
  }
}

/* ende  - Spalten der Pakete mit hellem Hintergrund ############################################################################################# */

/* start - Spalten der Pakete mit dunklem Hintergrund ############################################################################################ */

/* Container: mehr Luft zwischen den Spalten */
.spalten-pakete-back-dunkel.wp-block-columns{
  gap: 18px;                 /* Abstand zwischen Spalten */
  align-items: stretch;      /* gleiche Höhe wirkt "sauber" */
}

/* Jede Spalte als Card */
.spalten-pakete-back-dunkel .wp-block-column{
  background: #545650;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 16px;
  padding: 22px 20px;
  box-shadow: 0 10px 30px rgba(0,0,0,.08);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
  overflow: hidden; /* falls innen irgendwas übersteht */
}

/* Hover: subtil “hochkommen” */
.spalten-pakete-back-dunkel .wp-block-column:hover{
  transform: translateY(-3px);
  box-shadow: 0 16px 40px rgba(0,0,0,.12);
  border-color: rgba(0,0,0,.14);
}

/* Optional: Überschrift im Card-Header “absetzen” */
.spalten-pakete-back-dunkel .wp-block-column > :first-child{
  margin-top: 0;
}

.spalten-pakete-back-dunkel .wp-block-column h2,
.spalten-pakete-back-dunkel .wp-block-column h3{
  margin-top: 0;
  margin-bottom: 12px;
}

/* Mobile: weniger Padding, damit’s nicht gequetscht aussieht */
@media (max-width: 781px){
  .spalten-pakete-back-dunkel .wp-block-column{
    padding: 18px 16px;
    border-radius: 14px;
  }
}

/* ende  - Spalten der Pakete mit dunklem Hintergrund ############################################################################################ */
