/*
	eb-zeller.de - Styles
*/


:root {
	
	--farbe-marke:              #003755; /* #262c5c;  /*  rgb:(58, 126, 129)   */
	--farbe-grau:               #eeeeee;
	--farbe-hellgrau:       	#ccccd2;
	--farbe-ganzhellgrau:       #f2f2f2;
	--farbe-beige:              #b8afa2;
	--farbe-gruen:				#42b667;
	--farbe-dunkelgruen:        #2b7844;
	

	--farbe-marke-hell-1:       #b15b6b;
	--farbe-marke-hell-2:       #d2a1aa;
	--farbe-grau-hell:          #E3E4E4;
	--farbe-grau-dunkel:        #505050;
	--farbe-marke-transparent:  rgba(135,4,28,0.8);
	--farbe-marke-dunkelblau:   #00295F;
	--farbe-marke-tuerkis:      #0F83A9;
	
	--farbe-menu-level1-hover-text:   var(--farbe-marke);
	--farbe-menu-level2-text:         #333333;
	--farbe-menu-level2-bg:           rgba(255,255,255,0.9);
	--farbe-menu-level2-hover-text:   #ffffff;
	--farbe-menu-level2-hover-bg:     var(--farbe-marke);


	--farbe-text-standard:                 #333333;
    --farbe-text-standard-link:            var(--farbe-marke);
	--farbe-text-standard-link-hover:      #ffffff;
	--farbe-text-standard-link-hover-bg:   var(--farbe-marke);
	--farbe-text-headline:                 var(--farbe-marke);

	--farbe-button:                var(--farbe-gruen);
	--farbe-button-text:           var(--farbe-marke);
	--farbe-button-border:         var(--farbe-gruen);
	--farbe-button-hover:          var(--farbe-grau);
	--farbe-button-text-hover:     var(--farbe-marke);
	--farbe-button-border-hover:   var(--farbe-marke);

	--content-breite:           1200px;
	--topbar-hoehe:              120px;
	--topbar-hoehe-small:         80px;
	--topbar-hoehe-mobil:        120px;
	--topbar-hoehe-mobil-small:   80px;
	--topbar-meta-hoehe:          60px;
	
	--logo-breite:               300px;
	--logo-breite-small:         200px;
	--logo-breite-mobil:         230px;
	--logo-breite-mobil-small:         190px;

}
/*
	Bootstrap 4 Breakpoints
	xs     <  576px
	sm     >= 576px
	md     >= 768px
	lg     >= 992px
	xl     >= 1200px
*/


@font-face {
	font-family: 'Open Sans';
	font-style: normal;
	font-display: auto;
	font-weight: 400;
	src: url(/files/_tmpl/fonts/os/static/OpenSans_Condensed-Regular.ttf);

}
@font-face {
	font-family: 'Open Sans';
	font-style: normal;
	font-display: auto;
	font-weight: 700;
	src: url(/files/_tmpl/fonts/os/static/OpenSans_Condensed-Bold.ttf);

}
@font-face {
	font-family: 'Open Sans';
	font-style: italic;
	font-display: auto;
	font-weight: 400;
	src: url(/files/_tmpl/fonts/os/static/OpenSans_Condensed-Italic.ttf);

}



.m-0 { margin: 0 !important; } .m-1 { margin: 15px !important; } .m-2 { margin: 30px !important; } .m-3 { margin: 45px !important; } .m-4 { margin: 60px !important; } .m-5 { margin: 75px !important; }
.m-t-0 { margin-top: 0 !important; } .m-t-1 { margin-top: 15px !important; } .m-t-2 { margin-top: 30px !important; } .m-t-3 { margin-top: 45px !important; } .m-t-4 { margin-top: 60px !important; } .m-t-5 { margin-top: 75px !important; }

.m-b-0 { margin-bottom: 0 !important; } .m-b-1 { margin-bottom: 15px !important; } .m-b-2 { margin-bottom: 30px !important; } .m-b-3 { margin-bottom: 45px !important; } .m-b-4 { margin-bottom: 60px !important; } .m-b-5 { margin-bottom: 75px !important; }

.p-0 { margin: 0 !important; } .p-1 { margin: 15px !important; } .p-2 { margin: 30px !important; } .p-3 { margin: 45px !important; } .p-4 { margin: 60px !important; } .p-5 { margin: 75px !important; }
.p-t-0 { padding-top: 0 !important; } .p-t-1 { padding-top: 15px !important; } .p-t-2 { padding-top: 30px !important; } .p-t-3 { padding-top: 45px !important; } .p-t-4 { padding-top: 60px !important; } .p-t-5 { padding-top: 75px !important; }

.p-b-0 { padding-bottom: 0 !important; } .p-b-1 { padding-bottom: 15px !important; } .p-b-2 { padding-bottom: 30px !important; } .p-b-3 { padding-bottom: 45px !important; } .p-b-4 { padding-bottom: 60px !important; } .p-b-5 { padding-bottom: 75px !important; }

.p-l-0 { padding-left: 0 !important; } .p-l-1 { padding-left: 15px !important; } .p-l-2 { padding-left: 30px !important; } .p-l-3 { padding-left: 45px !important; } .p-l-4 { padding-left: 60px !important; } .p-r-5 { padding-left: 75px !important; }

.p-r-0 { padding-right: 0 !important; } .p-r-1 { padding-right: 15px !important; } .p-r-2 { padding-right: 30px !important; } .p-r-3 { padding-right: 45px !important; } .p-r-4 { padding-right: 60px !important; } .p-r-5 { padding-right: 75px !important; }

.m-l-0 { margin-top: 0 !important; } .m-l-1 { margin-top: 15px !important; } .m-l-2 { margin-top: 30px !important; } .m-l-3 { margin-top: 45px !important; } .m-l-4 { margin-top: 60px !important; } .m-l-5 { margin-top: 75px !important; }

.m-r-0 { margin-bottom: 0 !important; } .m-r-1 { margin-bottom: 15px !important; } .m-r-2 { margin-bottom: 30px !important; } .m-r-3 { margin-bottom: 45px !important; } .m-r-4 { margin-bottom: 60px !important; } .m-r-5 { margin-bottom: 75px !important; }


/*  ==========  Korrekturen des Themes  ==========  */
@media screen and (max-width: 480px) {
	.row {
		grid-gap: 1rem !important;
	}
}

figure {
	margin: 0 !important; 
}
/*  ==========  /Korrekturen des Themes  ==========  */


:focus-visible, 
button:focus-visible, [type="button"]:focus-visible, [type="reset"]:focus-visible, [type="submit"]:focus-visible {
  outline: 3px solid var(--farbe-gruen);
  outline-offset: 3px;
}


html {
	box-sizing: border-box;
	scroll-behavior: smooth;
}

body, html {
/*    height: 100%;  */
    color: var(--farbe-marke);
    line-height: 1.5;
	font-family: 'Open Sans', Arial, sans-serif;
	font-weight: 300;
	font-size: 100%;
	font-size: 16px;
	font-size: 1rem;
}
body {
	font-size: 20px;
	font-size: 1.25rem;
}


/*
#main {
	font-size: 18px;
	font-size: 1.125rem;
}
*/
#main a {
	color: var(--farbe-marke);
	text-decoration: underline;
}
#main a:hover {
	color: var(--farbe-marke-hell-1);
}
ul {
	display: block;
	list-style-type: disc;
	padding-left: 40px;
}
li {
	display: list-item;
}

h1, h2, h3, h4, h5, h6 { font-weight: 400; }
h4 { font-size: 20px; color: var(--farbe-marke); }
h5 { font-size: 18px; }
h6 { font-size: 16px; }

h1 {
	font-size: 52px;
	font-size: 3.25rem;
	font-weight: 400;
	line-height: 1.4;
	margin: 0 0 30px 0;
}
h2 {
	font-size: 36px;
	font-size: 2.25rem;
	font-weight: bold;
	margin: 0 0 30px 0;
	color: var(--farbe-marke);
}
h3 { 
	font-size: 24px;
	font-size: 1.5rem;
	font-weight: 600;
	color: var(--farbe-dunkelgruen);
	color: #2b7844;
}
.content-text.hl-gab h1, 
h1.hl-gab, 
.content-text.hl-gab h2, 
h2.hl-gab, 
.content-text.hl-gab h3, 
h3.hl-gab {
	text-transform: none;
	font-weight: 600;
	color: var(--farbe-text-headline);
	font-family: 'Open Sans';
	font-size: 40px;
	font-size: 2.5rem;
}
.content-text.hl-gab h1, 
h1.hl-gab {
	font-size: 46px;
	font-size: 2.875rem;
}
.content-text.hl-gab h3, 
h3.hl-gab {
	font-size: 32px;
	font-size: 2rem;
}
.content-text.overlay.hl-gab h2, 
.content-text.overlay.hl-gab h3 {
	color: #ffffff;
}
@media screen and (max-width: 575px) {
	.content-text.hl-gab h1, 
	h1.hl-gab, 
	.content-text.hl-gab h2, 
	h2.hl-gab, 
	.content-text.hl-gab h3, 
	h3.hl-gab {
		font-size: 32px;
		font-size: 2rem;
	}
	.content-text.hl-gab h1, 
	h1.hl-gab {
		font-size: 32px;
		font-size: 2rem;
	}
	.content-text.hl-gab h3, 
	h3.hl-gab {
		font-size: 28px;
		font-size: 1.75rem;
	}
}


.content-text.overlay {
	position: relative;
}
.content-text.overlay .rte {
	padding: 30px;
	color: #ffffff;
}
.content-text.overlay figure {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
}
p {
	margin: 0 0 15px 0;
}

.w3-button:hover {
  color: #000 !important;
  background-color: var(--farbe-grau) !important;
}



@media screen and (min-width: 576px) and (max-width:767px) {
	h1 { font-size: 28px; line-height: 1.3; }
	h2 { font-size: 24px; }
	h3 { font-size: 20px; }
	h4 { font-size: 18px; }
	h5 { font-size: 16px; }
	h6 { font-size: 16px; }
	.w3-xlarge { font-size: 19px !important; }
}
@media screen and (max-width:575px) {
	h1 { font-size: 28px; line-height: 1.3; hyphens: auto; }
	h2 { font-size: 24px; hyphens: auto; }
	h3 { font-size: 20px; }
	h4 { font-size: 18px; }
	h5 { font-size: 16px; }
	h6 { font-size: 16px; }
	.w3-xlarge { font-size: 19px !important; }
}




#wrapper, #container, #main, #main > .inside {
/*    height: 100%;  */
}
#container {
	margin-top: var(--topbar-hoehe);
}
#main {
	padding-top: 0;	
	transition: padding-top 0.5s;
}
#main > .inside {
/*	padding-top: 138px;	  */
	transition: padding-top 0.5s;
}

.invisible { display: none; }


.w3-content {
	max-width: var(--content-breite) !important;
}
.w3-container::before, .w3-container::before {
	display: none;
}

#main .content-hyperlink.button a, 
#main form button.submit.button, 
#main form .widget-pagebreak button, 
.meta a.button {
	background-color: var(--farbe-button);
	color: var(--farbe-button-text);
	border: 1px solid var(--farbe-button-border);
	border-radius: 5px;
	text-decoration: none;
	display: inline-block;
	padding: 7px 30px;
	width: auto;
	margin: 15px 0;
	transition: all 0.3s;
	cursor: pointer;
}
#main .content-hyperlink.button a:hover, 
#main form button.submit.button:hover, 
#main form .widget-pagebreak button:hover, 
.meta a.button:hover {
	background-color: var(--farbe-button-hover);
	color: var(--farbe-button-text-hover);
	border: 1px solid var(--farbe-button-border-hover);
}


[class*="col-"] {
	position: relative;
	z-index: 0;
}
[class^="col-"] .content-image img {
	width: 100%;
	height: auto;
}

.content-text.media figure img {
	max-width: 100%;
	height: auto;
}
.content-text.media--left figure {
	float: left;
	margin-right: 30px;
}
.zentriert {
	text-align: center;
}
.zweispaltig {
	columns: 2;
	column-gap: 30px;
}
@media screen and (max-width: 575px) {
	.zweispaltig {
		columns: 1;
	}
}

#wrapper .mod_article .article_bg.image {
	z-index: -1;
}
#wrapper .mod_article .article_bg img, 
.article_bg.image img {
	min-height: 0;
	max-height: 100%;
	height: auto;
	width: auto;
	min-width: 0;
	max-width: none;
}
.bg-rechts .article_bg.image .inside {
	text-align: right;
}
#wrapper .mod_article.bg-unten .article_bg.image img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: bottom center;
}


:target::before {
	display: block;
	content: "";
	height:120px;
	margin-top: -120px;
	visibility: hidden;
}





.content-image.image-award {
  position: absolute;
  width: 90px;
  top: -1px;
  left: 250px;
  z-index: 1;
}

.teaser-single--film {
  padding: 40px 0 0;
  height: 450px;
  background-position: 50%;
  background-size: cover;
}


/*  ==========  topbar  ==========  */

#topbar {
	position: fixed;
	top: 0;
	right: 0;
	bottom: auto;
	left: 0;
	height: var(--topbar-hoehe);
	padding: 0;
	z-index:999;
/*	background-color: rgba(255,255,255,0.85);  */
	background-color: #ffffff;
	transition: all 0.5s;
	border-bottom: 1px solid #ffffff;
	box-shadow: 1px 1px 2px rgba(51,51,51,.2);
}

#topbar.small {
	height: var(--topbar-hoehe-small);
}
#topbar > .inside {
	height: 100%;
	padding: 0px 16px;
}

#topbar .w3-content {
	position: relative;
}

@media screen and (min-width: 1350px) {
	#topbar:not(.large) {
	}
}
@media screen and (min-width: 993px) and (max-width: 1350px) {
	#topbar.large {
		height: var(--topbar-hoehe);
	}
	#topbar.small {
		height: var(--topbar-hoehe-small);
		padding-top: 0;
		padding-bottom: 0;
	}
}
#topbar:hover {
	background-color: rgba(255,255,255,1);
	transition: all 0.5s;
}
#topbar .w3-top {
	position: relative;
}
#topbar > .inside > .w3-top {
	height: 100%;
}
/*
	Bootstrap 4 Breakpoints
	xs     <  576px
	sm     >= 576px
	md     >= 768px
	lg     >= 992px
	xl     >= 1200px
*/

@media screen and (min-width: 576px) and (max-width: 992px) {
	#topbar {
		height: var(--topbar-hoehe);
	}
	#topbar.small {
		height: var(--topbar-hoehe-mobil-small) !important;
	}
	#topbar.small > .inside {
		padding-top: 0;
		padding-bottom: 0;
	}
}
@media screen and (max-width: 575px) {
	#topbar {
		height: var(--topbar-hoehe-mobil) !important;
	}
	#topbar.small {
		height: var(--topbar-hoehe-mobil-small) !important;
	}
}

#topbar.small .w3-bar .w3-bar-item {
	padding: 8px 12px 4px 12px;
}

/*  ==========  /topbar  ==========  */

/*  ==========  Logo  ==========  */
/*
	Bootstrap 4 Breakpoints
	xs     <  576px
	sm     >= 576px
	md     >= 768px
	lg     >= 992px
	xl     >= 1200px
*/

#topbar .logo {
	height: 100%;
	width: auto;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: start;
	transition: all 0.3s;
}
#myLogo {
	width: 100%;
	max-width: var(--logo-breite);
	height: auto;
	transition: all 0.3s;
}
#topbar.small #myLogo {
	max-width: var(--logo-breite-small);
	transition: all 0.3s;
}
#myLogo img {
	height: 100%;
	width: 100%;
	object-fit: contain;
	transition: all 0.5s;
}

@media screen and (min-width: 601px) and (max-width: 1280px) {
}

@media screen and (max-width: 576px) {
	#topbar .logo {
		max-width: calc(100% - 90px);
	}
}

/*  ==========  /Logo  ==========  */

/*  ==========  Navigation  ==========  */

#myNavbar {
	position: absolute;
	top: auto;
	right: 0;
	bottom: 0;
	width: calc(100% - var(--logo-breite) - 50px);
	background-color: transparent;
	overflow: visible;
	transition: all 0.5s;
	text-transform: uppercase;
	padding-bottom: 0;
}
@media screen and (min-width: 993px) and (max-width: 1280px) {
	#myNavbar {
		width: calc(100vw - 360px);
	}
	#topbar.small #myNavbar {
		width: calc(100vw - 240px);
	}
}
@media screen and (max-width: 992px) {
	#myNavbar {
		top: 0;
		bottom: auto;
	}
}
/*
@media screen and (max-width: 600px) {
	#myNavbar {
		top: 0;
		bottom: auto;
	}
}
*/



.mod_changelanguage {
	position: absolute;
	top: 0;
	right: 0;
	transition: all 0.3s;
}
.mod_changelanguage ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
}
.mod_changelanguage ul li {
	list-style-type: none;
	float: left;
	margin: 0;
	padding: 0;
	text-transform: lowercase;
}
.mod_changelanguage ul li::before {
	display: inline-block;
	content: '|';
	padding-right: 4px;
}
.mod_changelanguage ul li:first-child::before {
	display: none;
}
.mod_changelanguage ul li strong.active {
	font-weight: bold;
	color: var(--farbe-marke);
	padding: 2px 5px;
}
.mod_changelanguage ul li a {
	padding: 2px 5px;
	transition: all 0.5s;
}
.mod_changelanguage ul li a:hover {
	background-color: var(--farbe-grau);
}
#topbar.small .mod_changelanguage {
	right: auto;
	left: 50%;
	transform: translate(-50%,0);
}



/*  ==========  Hero  ==========  */

.hero .content-text img, 
.hero .content-image img, 
.hero .content-swiper img {
	width: 100%;
	height: auto;
}
.hero .content-text.media--left figure {
	margin-right: 0;
}

.hero .content-text .rte {
	position: absolute;
	color: #ffffff;
	padding: 25px 40px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	top: 0;
	right: 0;
	bottom: 0;
	left: auto;
	height: 100%;
	width: 35%;
	box-sizing: border-box;
	background-color: hsla(0,0%,100%,.65);
}
.hero .content-text .rte::before {
	content: '';
	background-image: url(/files/_tmpl_hk/img/Hake_Flaeche_weiss_Transparent-2.svg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: 2px center;
	position: absolute;
	top: 0;
	left: -35%;
	height: 100%;
	width: 35%;
}
.hero .content-text .rte {
	color: var(--farbe-text-standard);
}
.hero .content-text .rte h1, 
.hero .content-text .rte h2 {
	color: var(--farbe-text-headline);
	font-size: 48px;
	font-size: 3rem;
	font-weight: bold;
	line-height: 1.4;
	font-family: 'Open Sans';
	margin-bottom: 30px;
}
.hero .content-text .rte p {
	margin-bottom: 15px;
	font-size: 22px;
	font-size: 1.375rem;
}
.hero .content-text .rte a {
	background-color: var(--farbe-button);
	color: var(--farbe-button-text) !important;
	border: 1px solid var(--farbe-button-border);
	border-radius: 5px;
	text-decoration: none !important;
	font-size: 18px;
	font-size: 1.125rem;
	padding: 7px 25px;
	margin-top: 15px;
	display: inline-block;
	transition: all 0.3s;
}
.hero .content-text .rte p a:hover {
	background-color: var(--farbe-button-hover);
	color: var(--farbe-button-text-hover) !important;
	border: 1px solid var(--farbe-button-border-hover);
}
@media screen and (max-width: 767px) {
	.hero.content-custom-swiper .content-text .rte {
		position: relative;
		width: 100%;
		background-color: #ffffff;
	}
	.hero .content-text .rte h1, 
	.hero .content-text .rte h2 {
		font-size: 34px;
		font-size: 2.125rem;
	}
	.hero .content-text .rte p {
		font-size: 22px;
		font-size: 1.375rem;
	}
}
@media screen and (min-width: 768px) and (max-width: 992px) {
	.hero .content-text .rte h1, 
	.hero .content-text .rte h2 {
		font-size: 34px;
		font-size: 2.125rem;
	}
	.hero .content-text .rte p {
		font-size: 22px;
		font-size: 1.375rem;
	}
}


.content-text.schraeg .rte, 
.content-text.schraeg-rechts .rte {
	position: relative;
	color: #ffffff;
	padding: 30px;
	background-color: inherit;
	width: 100%;
	height: 100%;
}
.content-text.schraeg-rechts .rte {
	color: var(--farbe-marke);
}
.hero .content-text.schraeg .rte {
	padding: 90px;
}
.row:has(.schraeg), 
.row:has(.schraeg-rechts) {
	min-height: var(--article_min_height);
}
.content-text.schraeg {
	height: 100%;
	background-color: var(--farbe-marke);
}
.content-text.schraeg-rechts {
	height: 100%;
	background-color: var(--farbe-gruen);
}
.content-text.schraeg .rte h1, .content-text.schraeg .rte h2, .content-text.schraeg .rte h3 {
	color: #ffffff;
}
.content-text.schraeg-rechts .rte h1, .content-text.schraeg-rechts .rte h2, .content-text.schraeg-rechts .rte h3 {
	color: var(--farbe-marke);
}
.content-text.schraeg .rte::before {
	background-image: none;
	background-position: unset;
	content: "";
	position: absolute;
	top: 0;
	right: auto;
	bottom: auto;
	left: 0;
	height: 100%;
	background-color: inherit;
	transform: skewX(-12deg);
	transform-origin: left top;
	width: 50%;
}
.content-text.schraeg-rechts .rte::before {
	background-image: none;
	background-position: unset;
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: auto;
	left: auto;
	height: 100%;
	background-color: inherit;
	transform: skewX(-12deg);
	transform-origin: right bottom;
	width: 50%;
}
.content-text.schraeg .rte > *, 
.content-text.schraeg-rechts .rte > * { 
	position: relative; 
	z-index: 1; 
}

/*  @media screen and (max-width: 575px) {  */
/*  @media screen and (max-width: 767px) {  */
/*@media screen and (min-width: 768px) and (max-width: 992px) {  */
@media screen and (max-width: 992px) {
	#wrapper .mod_article.hero {
		min-height: auto;
	}
	#wrapper .mod_article.hero .article_bg.image {
		position: relative;
		height: auto;
	}
	#wrapper .mod_article.hero .article_bg.image .inside {
		min-height: auto;
		height: auto;
	}
	#wrapper .mod_article.hero .article_bg.image img {
		max-width: 100%;
	}
	.row:has(.schraeg), .row:has(.schraeg-rechts) {
		min-height: auto;
		display: block;
	}
	.hero .content-text.schraeg .rte {
		padding: 30px 60px;
	}
	.content-text.schraeg .rte::before, 
	.content-text.schraeg-rechts .rte::before {
		display: none;
	}
}
@media screen and (min-width: 993px) and (max-width: 1199px) {
	#wrapper .mod_article .article_bg img {
		object-fit: cover;
		object-position: -350px 0;
	}
	.hero .content-text.schraeg .rte {
		padding: 30px;
	}
}
@media screen and (min-width: 1200px) and (max-width: 1559px) {
	#wrapper .mod_article .article_bg img {
		object-position: -200px 0;
	}
}
@media screen and (min-width: 1560px) and (max-width: 1920px) {
	#wrapper .mod_article .article_bg img {
		object-position: -50px 0;
	}
}
@media screen and (max-width: 767px) {
	.hero .content-text.schraeg .rte {
		padding: 30px;
	}
}
@media screen and (max-width: 575px) {
	.hero .content-text.schraeg .rte {
		padding: 30px 15px;
	}
}


/*  ==========  /Hero  ==========  */

/*  ==========  Teaser-Overlay  ==========  */

.bg-beige {
	background-color: var(--farbe-beige);
}
.bg-beige h2 {
	color: #ffffff;
}

.bg-blau {
	background-color: var(--farbe-marke) !important;
	color: #ffffff !important;
}
.bg-blau h1, .bg-blau h2, .bg-blau h3, .bg-blau h4  {
	color: #ffffff !important;
}


.bg-hell {
	background-color: var(--farbe-hellgrau);
}
.bg-ganzhellgrau {
	background-color: var(--farbe-ganzhellgrau);
}
.teaser-large {
	height: 600px;
}
.teaser-large.content-image img {
	height: 100%;
	width: auto;
}
.teaser .content-element-group {
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: auto;
	height: 100%;
	padding: 30px;
}
.teaser-overlay-rechts, 
.teaser-overlay-links {
	position: relative;
	overflow: hidden;
	height: 100%;
}
.teaser-overlay-rechts figure, 
.teaser-overlay-links figure {
	height: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}
.bg-hell .teaser-overlay-rechts figure, 
.bg-hell .teaser-overlay-links figure {
	background-color: #ffffff;
}
.teaser-overlay-links figure img {
	position: relative;
	overflow: hidden;
	height: 100%;
	object-fit: cover;
	object-position: 25% center;
}
.teaser-overlay-rechts figure img {
	position: relative;
	overflow: hidden;
	height: 100%;
	object-fit: cover;
	object-position: 75% center;
/*
	width: 100%;
	height: auto;
*/
}
.teaser-overlay-rechts::after {
	position: absolute;
	top: 0;
	right: 0;
	bottom: -1px;
	left: 0;
	background-image: url(/files/_tmpl_kw/img/kantelwerk_kontur_links.svg);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: -1px center;
	z-index: 99;
	content: '';
}
.bg-hell .teaser-overlay-rechts::after {
	background-image: url(/files/_tmpl_kw/img/kantelwerk_kontur_links.svg);
}
.teaser-overlay-links::after {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background-image: url(/files/_tmpl_kw/img/kantelwerk_kontur_links.svg);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: -1px center;
	rotate: 180deg;
	z-index: 99;
	content: '';
}
.bg-hell .teaser-overlay-links::after {
	background-image: url(/files/_tmpl_kw/img/kantelwerk_kontur_links.svg);
	rotate: 180deg;
}

.image-luxuliege-detail-frau {
	position: absolute;
	bottom: 10%;
	width: 220px;
	margin-left: -200px;
	margin-top: 50px;
	z-index: 999;
}


/*  ==========  /Teaser-Overlay  ==========  */








#myNavbar .mod_navigation.w3-bar-item {
	margin: 0;
	padding: 0;
}
.mod_navigation ul, 
.mod_customnav ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
}
.w3-top .mod_navigation ul {
	float: right;
}

#myNavbar li {
	float: left;
	margin: 0;
	padding: 0;
}
@media screen and (min-width: 993px) and (max-width: 1280px) {
	#myNavbar .w3-button {
		padding: 0 16px;
	}
}

/*
#myNavbar ul.level_1 > li {
	position: relative;
}
*/
#myNavbar ul.level_1 > li > a:hover{
	color: var(--farbe-menu-level1-hover-text) !important;
}
#myNavbar ul.level_1 > li > strong {
	cursor: default;
	color: var(--farbe-marke) !important;
	background-color: inherit !important;
}
#myNavbar ul.level_2 {
	position: absolute;
	background-color: var(--farbe-menu-level2-bg);
	color: var(--farbe-menu-level2-text);
	height: auto;
	max-height: 0;
	padding: 0;
	transition: all 0.3s 0s;
	overflow: hidden;
	min-width: 200px;
	box-shadow: 2px 2px 4px #aaaaaa;
	position: absolute;
	top: 39px;
	display: flex;
	flex-wrap: wrap;
	text-transform: none;
	width: auto;
	max-width: 300px;
/*	left: 0;     Megamenu  */
/*	width: 100%;     Megamenu  */
}
#myNavbar ul.level_2 li {
	display: block;
	float: none;
	width: 100%;
/*	width: 20%;     Megamenu  */
}
#myNavbar li:hover ul.level_2 {
	height: auto;
	max-height: 800px;
	padding: 30px 0;
/*	transition: all 0.7s 0.3s;  */
}
#myNavbar ul.level_2 li  .w3-bar-item {
	float: none;
	padding: 12px 25px;
}
#myNavbar ul.level_2 li .w3-button {
	text-align: left;
	display: block;
}
#myNavbar ul.level_2 li  .w3-button:hover {
	color: var(--farbe-menu-level2-hover-text) !important;
	background-color: var(--farbe-menu-level2-hover-bg) !important;
}
#myNavbar ul.level_1 li > strong.active, 
#myNavbar ul.level_1 li > a.trail {
	color: var(--farbe-marke) !important;
	font-weight: bold;
}
#myNavbar li.shop a.w3-button {
	background-color: var(--farbe-marke-tuerkis) !important;
	color: #ffffff !important;
}

#myNavbar li.shop a,
#myNavbar li.shop.active {
	display: block;
	overflow: hidden;
	padding-left: 40px;
}
#myNavbar li.shop.active {
	padding: 8px 16px;
}
#myNavbar li.shop a::before, 
#myNavbar li.shop.active::before {
	font-family: 'Font Awesome 5 Free';
	content: "\f07a";
	font-size: 20px;
	font-size: 1rem;
	font-weight: 900;
	display: block;
	position: absolute;
	top: 8px;
	left: 10px;
}


/*
	Bootstrap 4 Breakpoints
	xs     <  576px
	sm     >= 576px
	md     >= 768px
	lg     >= 992px
	xl     >= 1200px
*/

.meta {
	position: absolute;
	top: 0;
	right: 0;
	left: auto;
	width: calc(100% - var(--logo-breite) - 50px);
	height: var(--topbar-meta-hoehe);
	z-index: 9;
	text-align: right;
	font-size: 18px;
	font-size: 1.125rem;
	transition: all 0.5s;
}
.meta > .inside {
	padding: 5px 16px;
}
.meta .terminbutton {
	margin-left: 30px;
}
.meta a {
	color: var(--farbe-dunkelgruen);
	transition: all 0.5s;
}
.meta a:hover {
	color: var(--farbe-marke);
}
.meta a.button {
	padding: 5px 10px;
	margin: 0;
	color: #000000;
}
.meta em, 
.meta i {
	font-size: 28px;
}
#topbar.small .meta a {
	font-size: 16px;
	font-size: 1rem;
}
#topbar.small .meta a.button {
	padding: 2px 5px;
}
@media screen and (min-width: 993px) and (max-width: 1280px) {
	.meta {
		font-size: 16px !important;
		font-size: 1rem !important;
	}
	.meta em, 
	.meta i {
		font-size: 20px;
	}
}
@media screen and (min-width: 768px) and (max-width: 991px) {
	.meta {
		font-size: 18px;
	}
	.meta > .inside {
		text-align: center;
	}
}

@media screen and (min-width: 993px) and (max-width: 1280px) {
	#myNavbar {
	}
	.mod_navigation ul, 
	.mod_customnav ul {
		font-size: 16px;
		letter-spacing: -0.5px;
	}
	#myNavbar.w3-bar .w3-bar-item {
		padding: 8px 8px;
	}
}
@media screen and (max-width: 768px) {
	#container {
		margin-top: calc(var(--topbar-hoehe) + 40px);
	}
	.meta {
		top: auto;
		bottom: -40px;
		background: #ffffff;
		width: auto;
		left: -16px;
		right: -16px;
		text-align: center;
	}
	.meta > .inside {
		padding: 10px 16px;
	}
}
@media screen and (max-width: 350px) {
	#container {
		margin-top: calc(var(--topbar-hoehe) + 50px);
	}
	.meta {
		bottom: -50px;
	}
	.meta > .inside {
		padding: 5px 16px;
	}
}


/*
	SmallMenu ...
*/

.menu-button {
	position: absolute;
	top: 25px;
	right: 0;
	transition: all 0.3s;
}
@media screen and (min-width: 993px) and (max-width: 1350px) {
	#myNavbar.large .menu-button {
		top: auto;
		bottom: 40px;
	}
	#myNavbar.small .menu-button {
		top: auto;
		bottom: 0;
	}
}
@media screen and (min-width: 768px) and (max-width: 992px) {
	.menu-button {
		top: 40px;
	}
}
@media screen and (max-width: 767px) {
	#myNavbar .menu-button {
/*		right: 10px;  */
		right: 0;
		top: 15px;
		transition: all 0.3s;
	}
	#topbar.small #myNavbar .menu-button {
		top: 0;
	}
}


#myNavbar button i::before {	
	transition: all 0.3s;
}
#myNavbar button.active i::before {
	content: "\f00d";
}
#navSmallMenu {
	position: absolute;
	top: 120px;
	right: -100vw;
	width: calc(100vw - 32px);
	max-width: 320px;
	height: auto;
	transition: left 0.5s;
	display: block;
	border-right: 1px solid #cccccc;
	background-color: #ffffff;
	text-transform: uppercase;
	overflow: auto;
	-ms-overflow-style: none;  /* IE and Edge */
	scrollbar-width: none;  /* Firefox */
	transition: all 0.5s;
}
#navSmallMenu::-webkit-scrollbar {
	display: none;
}
#navSmallMenu.w3-white {
	color: #ffffff !important;
	background-color: var(--farbe-marke) !important;
}
@media (max-width: 600px) {
	#navSmallMenu {
		top: calc(var(--topbar-hoehe-mobil) + 40px);
		padding-top: 0;
	}
	#topbar.small #navSmallMenu {
		top: calc(var(--topbar-hoehe-mobil-small) + 40px);
		padding-top: 0;
	}
	#topbar.small .menu-button {
		
	}
	#topbar.small .w3-padding-large {
		padding-top: 6px;
		padding-bottom: 6px;
	}
	#topbar.small .w3-xxlarge {
		font-size: 32px !important;
	}
}
#navSmallMenu.w3-hide {
	display: block !important;
}
#navSmallMenu.w3-show {
	right: 0;
	transition: all 0.5s;
	box-shadow: 1px 5px 5px #666666;
	max-height: calc(100vh - 120px);
}
@media (max-width:600px) {
	#navSmallMenu.w3-show {
		max-height: calc(100vh - var(--topbar-hoehe-mobil));
		overflow: scroll;
	}
	#topbar.small  #navSmallMenu.w3-show {
		max-height: calc(100vh - var(--topbar-hoehe-mobil-small));
	}
}
#navSmallMenu .w3-bar-block .w3-bar-item {
	padding: 12px 16px 12px 36px;
}
.w3-top #navSmallMenu .mod_navigation ul {
	float: left;
	width: 100%;
}
#navSmallMenu li {
	border-bottom: 1px solid #cccccc;
}
#navSmallMenu li > a:hover {
	background-color: rgba(255,255,255,0.4) !important;
}
#navSmallMenu li:first-child {
	border-top: 1px solid #cccccc;
}
#navSmallMenu li.active strong {
	cursor: default;
}
#navSmallMenu ul.level_1 > li {
	display: block;
}
#navSmallMenu ul.level_2 {
	display: block;
	background-color: transparent;
	position: relative;
	top: auto;
}
#navSmallMenu ul.level_2 li .w3-bar-item {
	padding: 8px 16px 8px 56px;
	font-size: 0.875rem;
}
#navSmallMenu ul li .w3-bar-item {
	padding-top: 12px !important;
	padding-bottom: 12px !important;
}

@media screen and (max-width: 992px) {
/*	.navtop {
		font-size: 1rem;
	}  */
	#navSmallMenu nav.mod_changelanguage {
		display: block;
		text-align: right;
	}
	#navSmallMenu nav.mod_changelanguage ul {
		padding-right: 12px;
	}
	#navSmallMenu .mod_changelanguage ul.level_1 > li {
		display: inline-block;
		border: none;
	}
	nav.mod_changelanguage ul li.active strong, 
	nav.mod_changelanguage ul li a {
		border: none;
		display: inline-block;
		padding: 8px 10px;
		vertical-align: middle;
		overflow: hidden;
		text-decoration: none;
		color: inherit;
		background-color: inherit;
		text-align: center;
		cursor: pointer;
		white-space: nowrap;
	}
}




/*  ==========  /Navigation  ==========  */







#main .runter a {
	position: absolute;
	top: auto;
	left: 50%;
	transform: translate(-50%,0);
	z-index: 999;
	bottom: 30px;
	display: block;
	padding: 5px 10px 10px 10px;
	background-color: var(--farbe-marke);
	color: #fff;
	transition: all 0.3s;
}
#main .runter a:hover {
	padding: 10px 10px 5px 10px;
}



#kontur .runter a {
  --bg: var(--farbe-marke);
  --border: #47504f;   /* deine Standard-Schriftfarbe */
  --bw: 2px;
  --padY: .55em;
  --padX: 1.1em;

  display: inline-block;
  padding: var(--padY) var(--padX);
  color: var(--border);
  text-decoration: none;
  line-height: 1;
/*  z-index: 0;  */

  /* Form für die "Füllung" */
  background: var(--bg);
  clip-path: polygon(
    12% 0%, 88% 0%,
    100% 50%,
    88% 100%, 12% 100%,
    0% 50%
  );
}

/* Kontur */
#kontur .runter a::before{
  content: "";
  position: absolute;
  inset: calc(-1 * var(--bw)); /* macht die Kontur "außen" */
  background: var(--border);
  z-index: -1;

  clip-path: polygon(
    12% 0%, 88% 0%,
    100% 50%,
    88% 100%, 12% 100%,
    0% 50%
  );
}

/* Optional: Hover/Fokus */
.hex-link:hover{
  --bg: #f6f6f6;
}
.hex-link:focus-visible{
  outline: 3px solid #EF762E; /* z.B. dein Orange */
  outline-offset: 3px;
}






#footer {
/*
	background-color: var(--farbe-hellgrau);
	color: var(--farbe-text-standard);
*/
	background-color: var(--farbe-marke);
	color: #ffffff;
	font-size: 16px;
	font-size: 1rem;
	background-image: url(/files/bilder/Icons/Mountain%20%281%29.png);
	background-size: contain;
	background-position: bottom center;
	background-repeat: no-repeat;
}
#footer .mod_customnav .w3-button {
	padding: 0;
	background-color: transparent;
}
#footer .mod_customnav .w3-button:hover {
	color: var(--farbe-marke-hell-1) !important;
	background-color: transparent;
}
#footer .mod_customnav .w3-hover-theme:hover {
	color: var(--farbe-marke-hell-1) !important;
	background-color: transparent !important;
}


#footer a {
/*	color: var(--farbe-text-standard-link);  */
	color: #ffffff;
	text-decoration: underline;
	transition: all 0.5s;
	display: inline-block;
}
#footer a:hover {
	color: #ffffff !important;
	text-decoration: underline !important;
	background-color: var(--farbe-text-standard-link-hover-bg);
/*	opacity: 0.75;  */
}

#footer a:hover img {
	filter: brightness(150%);
}
#footer a.btn-top {
	color: #ffffff;
	background-color: var(--farbe-marke);
	text-align: center;
	line-height: 2;
	padding: 10px 10px 5px 10px;
	transition: all 0.3s;
}
#footer a.btn-top:hover {
	padding: 5px 10px 10px 10px;
}

#footer .btn-top {
  position: fixed;
  right: 45px;
  bottom: 45px;
/*  background: url(/files/_tmpl_kw/img/top-button-kantelwerk.svg) no-repeat 50% #3a7e81;  */
}


#footer .logos-sm {
	text-align: center;
}
#footer .logos-sm a {
	display: inline-block;
	padding: 0;
	background-color: transparent;
	transition: all 0.5s;
}
#footer .logos-sm a:hover {
	background-color: var(--farbe-marke);
}
#footer .logos-sm a img {
	filter: brightness(75%);
	transition: all 0.5s;
}
#footer .logos-sm a:hover img {
	filter: brightness(150%);
	transition: all 0.5s;
}



figure { margin: 0; }
a { text-decoration: none; }
.w3-image img {
    max-width: 100%;
    height: auto;
}


hr { border:0; border-top: 1px solid #eee; margin:20px 0; }
.w3-wide { letter-spacing:4px; }
.w3-serif { font-family:serif; }

.text-shadow p, .text-shadow h1, .text-shadow h2, .text-shadow h3, .text-shadow h4, .text-shadow {
	text-shadow: 0 0 10px #000000;
}
.bg-shadow {
	background-color: rgba( 0, 0, 0, 0.1);
}
 
.margin-top{margin-top: 64px;}
.margin-bottom{margin-bottom: 64px;}

.bg-hellgrau {
	background-color: var(--farbe-hellgrau); 
}









.content-gallery.w3-hover-opacity:hover, 
.ce_gallery.w3-hover-opacity:hover {
	opacity: 1;
}
.w3-hover-opacity figure > a, 
.w3-hover-opacity .image_container > a {
	position: relative;
	display: block;
}
.w3-hover-opacity figure > a img:hover, 
.ce_gallery.w3-hover-opacity .image_container > a:hover {
	opacity: 0.6;
}
.w3-hover-opacity figure > a:hover::after, 
.w3-hover-opacity .image_container > a:hover::after {
    content: "+";
    font-size: 64px;
	font-weight: bold;
    color: #ffffff;
    position: absolute;
    top: 0;
    right: 0;
    line-height: 1;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    height: 100%;
    width: 100%;
	text-shadow: 0 0 10px #000000;
	background-color: rgba(0,0,0,0.4);
	transition: all 0.6s;
}


.content-gallery ul, 
.ce_gallery ul {
	list-style-type: none;
	padding: 0;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-around;
}
.content-gallery--cols-4 ul li, 
.ce_gallery ul.cols_4 li {
	display: inline-block;
	width: 25%;
	padding: 16px;
}
.content-gallery--cols-3 ul li, 
.ce_gallery ul.cols_3 li {
	display: inline-block;
	width: 33%;
	padding: 8px;
}
.content-gallery img, 
.ce_gallery img {
	width: 100%;
	height: auto;
}
@media (max-width:600px) {
	.content-gallery--cols-3 ul li, 
	.ce_gallery ul.cols_3 li {
		width: 100%;
	}
	.content-gallery--cols-4 ul li, 
	.ce_gallery ul.cols_4 li {
		width: 100%;
		padding: 8px 0;
	}
}


/*  ==========  Slick Slider  ==========  */

.slick-dots {
	bottom: 10px;
}
.slick-dots li button::before {
	font-size: 15px;
	color: #ffffff;
	opacity: 0.75;
}
.slick-dots li.slick-active button::before {
	color: #ffffff;
	opacity: 1;
}
.slick-prev, .slick-next {
	color: #333333;
	z-index: 99;
	width: 40px;
	height: 40px;
}
.slick-prev {
	left:10px;
}
.slick-next {
	right:10px;
}
.slick-prev::before, .slick-next::before {
	font-size: 40px;
}

.slick-dotted.slick-slider {
	margin-bottom: 0;
}

.slickslider li, 
.slickslidermanuell li {
	position: relative;
}
.slickslider .caption, 
.slickslidermanuell .caption {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	text-align: center;
	font-size: 20px;
	color: #0f83a9;
	background-color: rgba(255,255,255,0.9);
	padding: 7px 15px;
}

.ce_gallery div.cols_4 .slick-list li {
	padding: 0;
}
.ce_gallery div.cols_4 ul.slick-dots {
	display: block;
}
.ce_gallery div.cols_4 .slick-dots li {
	padding: 0;
	width: 20px;
}


/*  ==========  /Slick Slider  ==========  */

/*  ==========  Content Slider  ==========  */

.swiper {
	padding-bottom: 60px;
}
.swiper .row {
	grid-gap: 0;
}
.swiper-button-next, 
.swiper-button-prev { 
	color: #ffffff !important;
	background-color: var(--farbe-marke) !important;
	width: 40px;
	height: 40px;
	top: auto !important;
	bottom: 10px;
	border: none;
	z-index:999;
}
.swiper-button-next {
	right: 0;
}
.swiper-button-prev { 
	left: 0;
}
.swiper-button-next, .swiper-button-prev {
	& svg {
		border: 1px solid var(--farbe-button-border);
		background-color: var(--farbe-button);
		color: #ffffff;
		transition: all 0.3s;
	}
}
.swiper-button-next:hover, .swiper-button-prev:hover {
	& svg {
		background-color: var(--farbe-button-hover);
		color: var(--farbe-button-text-hover);
		border: 1px solid var(--farbe-button-border-hover);
	}
}
.swiper-pagination-bullet {
	width: 18px;
	height: 18px;
}
.swiper-pagination-bullet {
	background-color: var(--farbe-marke);
	border: 1px solid #ffffff;
	opacity: 0.6;
}
.swiper-pagination-bullet-active {
	opacity: 1;
}

.swiper-horizontal>.swiper-pagination-bullets,
 .swiper-pagination-bullets.swiper-pagination-horizontal,
 .swiper-pagination-custom,
 .swiper-pagination-fraction {
	 bottom: 15px;
 }



/*  ==========  /Content Slider  ==========  */


/*  ==========  Flipcard  ==========  */

.flip-card {
  background-color: transparent;
  width: 300px;
  height: 400px;
  perspective: 1000px;
}

.flip-card-inner {
  position: relative;
  width: 100%;
  height: 100%;
  text-align: center;
  transition: transform 0.6s;
  transform-style: preserve-3d;
  box-shadow: 0 4px 8px 0 rgba(0,0,0,0.2);
}

.flip-card:hover .flip-card-inner {
  transform: rotateY(180deg);
}

.flip-card-front, .flip-card-back {
  position: absolute;
  width: 100%;
  height: 100%;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.flip-card-front {
  background-color: #ffffff;
  color: black;
}
.flip-card-back {
  background-color: #2980b9;
  color: white;
  transform: rotateY(180deg);
}
.flip-card-back .inside {
	padding: 10px;
}
flip-card-back a {
	display: block;
	height: 100%;
}
.flip-card-back h3 {
	margin: 10px 0 0 0;
}
.flip-card-back h3:first-child {
	margin: 0;
	line-height: 1.4;
}


/*  ==========  /Flipcard  ==========  */


.mod_newslist .layout_latest {
	clear: both;
	margin-bottom: 32px;
}
.mod_newslist .layout_latest p.info {
	margin: 0;
}
.mod_newslist .layout_latest .image_container {
	margin-bottom: 12px;
}
.scene {
	-webkit-perspective: 600px;
	perspective: 600px;
	margin-bottom: 30px;
	height: 390px;
	padding: 10px;
	width: 100%;
}

@media only screen and (min-width: 601px) and (max-width: 992px) {
	.scene { height: 690px; height: 65vw; }
}
@media only screen and (max-width: 600px) {
	.scene { height: 360px; height: 100vw; }
}

.scene .card {
	width: 100%;
	height: 100%;
	transition: transform 1s;
	-webkit-transform-style: preserve-3d;
	transform-style: preserve-3d;
	position: relative;
	box-shadow: 0 4px 8px 0 rgba(0,0,0,0.2);
}
.scene .card.is-flipped {
	-webkit-transform: rotateY(180deg);
	transform: rotateY(180deg);
}

.scene .card-face {
	position: absolute;
	width: 100%;
	height: 100%;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

.scene .card-face-front {
	background: #ffffff;
}
.scene .card-face-front .caption {
	font-family: "Times",Arial,sans-serif;
	font-weight: 400;
	margin: 10px 0;
	font-size: 30px;
}

.scene .card-face-back {
	padding: 10px;
	background: #B5DEE8;
	background-color: #DFEBF0;
	-webkit-transform: rotateY(180deg);
	transform: rotateY(180deg);
	-webkit-hyphens: auto;
	hyphens: auto;
	line-height: 1.3;
}
@media only screen and (max-width: 480px) {
	.scene .card-face-back {
		padding: 10px;
	}
}
.card-face-back h3 {
	margin: 10px 0 0 0;
}
.card-face-back h3:first-child {
	margin: 0;
	line-height: 1.4;
}
.scene .card-face-back h5 {
	margin-bottom: 15px;
}
.scene .card-face p {
	margin-bottom: 13px;
}
.scene .card-face-front.image_container.image .teaser p img {
	width: 33px;
	height: 33px;
	display: inline;
	margin: 0;
}

.drehknopf1, .drehknopf2 {
	cursor: pointer;
	color: #143946;
	position: absolute;
	top: auto;
	left: 5px;
	bottom: 5px;
	line-height: 1.0;
}
.scene .card.is-flipped .drehknopf1 {
	display: none;
}
.drehknopf2.back {
	cursor: pointer;
/*	color: #ff6e2d;  */
}

/*  ==========  /Flipcard  ==========  */




.ce_sliderStart {
	position: relative;
}
.ce_sliderStart .slider-control {
	position: absolute;
	right: 5px;
	bottom: 20px;
	left: 5px;
}
.ce_sliderStart .slider-control .slider-menu {
	top: 10px;
}
.ce_sliderStart .slider-control .slider-prev, 
.ce_sliderStart .slider-control .slider-next {
	display: block;
	color: #ffffff;
	font-weight: bold;
	font-size: 28px;
}
.ce_sliderStart .slider-control a.slider-prev, 
.ce_sliderStart .slider-control a.slider-next {
	color: #ffffff !important;
}
.ce_sliderStart.schwarze-pfeile .slider-control a.slider-prev, 
.ce_sliderStart.schwarze-pfeile .slider-control a.slider-next {
	color: #000000 !important;
}



.content-text.infobox {
	position: relative;
	margin-top: 15px;
	margin-bottom: 15px;
	display: grid;
	grid-template-columns: auto;
	grid-template-rows: 33% 34% 33%;
	aspect-ratio: 1.1;
	padding: 15px;
}
#footer .content-text.infobox {
	background-color: #ffffff;
}
.content-text.infobox h2 {
	font-family: 'Open Sans', Arial, sans-serif;
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 300;
	text-align: center;
	text-transform: none;
	margin: 0;
}
.content-text.infobox .rte {
	font-size: 16px;
	font-size: 1rem;
	text-align: center;
	margin: 0;
	line-height: 1.25;
}
.content-text.infobox .rte p {
	margin: 0;
}
.content-text.infobox figure {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
}
.content-text.media.infobox figure img {
	height: 50px;
	max-height: none;
	width: auto;
	max-width: none;
}
@media screen and (min-width: 601px) and (max-width: 991px) {
	.infobox h2, 
	.infobox-2 h2 {
		font-size: 20px;
	}
	.infobox p, 
	.infobox-2 p {
		font-size: 16px;
	}
}


.content-text.icon-left > figure {
	position: absolute; 
	top: 0;
	left: 0;
}
.content-text.icon-left > figure img {
	width: 70px;
	height: auto;
}
.content-text.icon-left > .rte {
	padding-left: 110px;
}
@media screen and (max-width: 575px) {
	.content-text.icon-left > figure img {
		width: 50px;
		height: auto;
	}
	.content-text.icon-left > .rte {
		padding-left: 70px;
	}
}



.content-text.iconbox {
	position: relative;
	margin-top: 15px;
	margin-bottom: 15px;
/*
	display: grid;
	grid-template-columns: auto;
	grid-template-rows: auto auto;
*/
	padding: 25px;
	height: 100%;
	border: 1px solid var(--farbe-gruen);
	background-color: var(--farbe-grau);
}
/*
	Bootstrap 4 Breakpoints
	xs     <  576px
	sm     >= 576px
	md     >= 768px
	lg     >= 992px
	xl     >= 1200px
*/
@media screen and (max-width: 576px) {
	.content-text.iconbox {
		aspect-ratio: 2 / 1;
	}
}

.content-text.iconbox h2 {
	font-family: 'Open Sans', Arial, sans-serif;
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 300;
	text-align: center;
	text-transform: none;
	margin: 0;
}
.content-text.iconbox .rte {
	font-size: 18px;
	font-size: 1.125rem;
	text-align: center;
	margin: 0;
	line-height: 1.25;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.content-text.iconbox .rte p {
	margin: 0;
}
.content-text.iconbox figure {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	padding: 30px 15px;
}
.content-text.media.iconbox figure img {
	height: 100px;
	opacity: 0.7;
	max-height: none;
	width: auto;
	max-width: none;
}
@media screen and (min-width: 601px) and (max-width: 991px) {
	.iconbox h2 {
		font-size: 20px;
	}
	.iconbox p {
		font-size: 16px;
	}
}

.gleiche-hoehe {
	height: 100%;
}

.bilderbox {
	position: relative;
	width: 100%;
	aspect-ratio: 1.1;
	overflow: hidden;
}
.bilderbox .content-text.overlay {
	height: 100%;
}
.bilderbox .content-text.overlay .rte {
	height: 100%;
	padding: 60px 60px 30px 60px;
	position: absolute;
	bottom: 0;
	top: auto;
	left: 0;
	right: 0;
	height: auto;
	background: linear-gradient(to bottom,  rgba(0,0,0,0) 0%,rgba(0,0,0,0.5) 66%,rgba(0,0,0,0.5) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */;
	
}
.bilderbox .content-hyperlink {
	position: absolute;
	bottom: 30px;
	left: 50%;
	text-align: center;
	transform: translate(-50%,0);
}
@media screen and (max-width: 575px) {
	.bilderbox {
		aspect-ratio: auto;
		height: 100%;
	}
	.bilderbox img {
		height: 100% !important;
		object-fit: cover;
	}
}
@media screen and (min-width: 576px) and (max-width: 767px) {
	.bilderbox {
		aspect-ratio: auto;
		height: 100%;
	}
	.bilderbox img {
		height: 100% !important;
		object-fit: cover;
	}
}
@media screen and (min-width: 768px) and (max-width: 991px) {
	.bilderbox {
		aspect-ratio: 2 / 3;
		height: 100%;
	}
	.bilderbox img {
		height: 100% !important;
		object-fit: cover;
	}
}



/*  ==========  Galerie  ==========  */

.content-gallery {
	text-align: center;
}
.content-gallery ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
}
.content-gallery ul li {
	margin: 0;
	padding: 0;
	display: inline-block;
}
.content-gallery.logos ul li figure {
	padding: 10px;
	margin: 8px 5px;
	border: 1px solid #dddddd;
	display: flex;
	flex-direction: row;
	align-items: center;
	aspect-ratio: 1;
}
.content-gallery ul li img {
	width: 100%;
	height: auto;
}

/*  ==========  /Galerie  ==========  */

.bg-grau {
	background-color: #eeeeee;
}
.bg-gruen {
	background-color: var(--farbe-gruen);
	color: var(--farbe-marke);
}
.bg-weiss {
	background-color: #ffffff;
}



/*  ==========  Side Buttons  ==========  */

@media (min-width: 480px) {
  .aside-buttons {
    display: block;
    position: fixed;
    z-index: 2;
    right: 0;
    top: 30%;
    width: 60px;
  }
  .aside-buttons a {
	  cursor: pointer;
  }
}


@media (min-width: 480px) {
  #somButtons {
    left: 60px;
  }
  #somButtons.show {
    left: -250px;
  }
}
@media (min-width: 480px) {
	#somButtons {
		overflow: hidden;
		position: absolute;
		width: 253px;
		top: 60px;
		height: 60px;
		-webkit-transition: left .3s ease-in-out;
		transition: left .3s ease-in-out;
		display: flex;
		flex-direction: row;
		align-content: center;
		justify-content: center;
		flex-wrap: wrap;
		background-color: #ffffff;
		z-index: 990;
		padding-right: 10px;
	}
  .btn-som {
    float: left;
    width: 57px;
    height: 57px;
    margin-right: 2px;
  }
  .btn-som-share {
	  position: relative;
	  z-index: 999;
  }
  .btn-som-fb {
    background: url(/files/_tmpl_hk/img/icons/SocialMedia-Facebook-aside.svg) no-repeat 50% #424241;
    background-size: auto;
    background-size: 20px;
  }
  .btn-som-yt {
    background: url(/files/_tmpl_hk/img/icons/SocialMedia-YouTube-aside.svg) no-repeat 50% #424241;
    background-size: auto;
    background-size: 30px;
  }
}

/*  ==========  /Side Buttons  ==========  */





/*  ==========  Deko-Elemente  ==========  */

.mod_article.trenner-links::after, 
.mod_article.trenner-rechts::after {
	display: block;
	width: 213px;
	height: 60px;
	z-index: 990;
}
.mod_article.trenner-links::after {
	content: url(/files/_tmpl/img/striche-links.svg);
	/*  Größe: z.B. 640 x 180 px  */
	position: absolute;
	left: 0;
	bottom: -30px;
}
.mod_article.trenner-rechts::after {
	content: url(/files/_tmpl/img/striche-rechts.svg);
	/*  Größe: z.B. 640 x 180 px  */
	position: absolute;
	right: 0;
	bottom: -30px;
}
.trenner-mitte {
	position: relative;
}
.trenner-mitte::after {
	display: block;
	width: 640px;
	height: 48px;
	z-index: 990;
	content: url(/files/_tmpl/img/striche-abschluss.svg);
	/*  Größe: z.B. 640 x 180 px  */
	position: absolute;
	right: 0;
	bottom: -48px;
}

/*  ==========  /Deko-Elemente  ==========  */

/*  ==========  Formulare  ==========  */

.w3-input {
	border: none;
}
.w3-input input, 
.w3-input textarea {
	background-color: var(--farbe-hellgrau);
}
form label.w3-input {
	padding: 0 8px;
}
form label {
	display: block;
/*	font-size: 0.8em;  */
}
fieldset.checkbox_container {
	columns: 2;
}
fieldset.checkbox_container > span {
	display: block;
}
fieldset.checkbox_container input.checkbox {
	display: inline-block;
}
fieldset.checkbox_container label {
	display: inline;
}
fieldset.checkbox_container.dsgvo-zustimmung {
	columns: 1;
}
form .explanation p img {
	width: 100%;
	height: auto;
}


/*  ==========  /Formulare  ==========  */


/*  ==========  Konfigurator  ==========  */

fieldset {
	margin: 30px 0;
/*	background-color: var(--farbe-hellgrau);  */
}
fieldset > legend {
	padding: 0 10px;
	font-weight: bold;
}

.radiogruppe {
	display: flex;
	flex-direction: row;
}
.radiogruppe > span {
	display: block;
}
/*
.rahmenauswahl .radiogruppe > span {
	height: 250px;
	padding: 30px 30px 30px 140px;
	background-size: contain;
	background-position: top left;
	background-repeat: no-repeat;
}
.rahmenauswahl .radiogruppe > span:nth-child(1) {
	background-image: url(/files/hk/bilder/Anfrageformular/Muster-Holz-1-natur.jpeg);
}
.rahmenauswahl .radiogruppe > span:nth-child(2) {
	background-image: url(/files/hk/bilder/Anfrageformular/Muster-Holz-3-wenge.jpeg);
}
.rahmenauswahl .radiogruppe > span:nth-child(3) {
	display: none;
}
*/

/*
.auflagenauswahl .radiogruppe {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}
.auflagenauswahl .radiogruppe > span {
	position: relative;
	display: block;
	width: 33%;
	padding: 200px 30px 30px 30px;
	text-align: center;
}
.auflagenauswahl .radiogruppe > span::before{
    content: '';
    position:absolute;
    top:0px;
	right: 0;
	bottom: 0;
    left:0px;
	display: block;
	border-radius: 50%;
	width: 190px;
	height: 190px;
	margin: 0 auto;
	background-repeat: no-repeat;
	backhround-size: contain;
	background-position: top center;
}
.auflagenauswahl .radiogruppe > span:nth-child(1)::before {
	background-image: url(/files/hk/bilder/Anfrageformular/Muster-Stoff-Charcoal-3705.jpeg);
}
.auflagenauswahl .radiogruppe > span:nth-child(2)::before {
	background-image: url(/files/hk/bilder/Anfrageformular/Muster-Stoff-Silver-Grey-3741.jpeg);
}
.auflagenauswahl .radiogruppe > span:nth-child(3)::before {
	background-image: url(/files/hk/bilder/Anfrageformular/Muster-Stoff-Taupe-3729.jpeg);
}
.auflagenauswahl .radiogruppe > span:nth-child(4)::before {
	background-image: url(/files/hk/bilder/Anfrageformular/Muster-Stoff-Silvertex-Graphite-122-4003.jpeg);
}
.auflagenauswahl .radiogruppe > span:nth-child(5)::before {
	background-image: url(/files/hk/bilder/Anfrageformular/Muster-Stoff-Silvertex-Sterling-122-4011.jpeg);
}
.auflagenauswahl .radiogruppe > span:nth-child(6)::before {
	background-image: url(/files/hk/bilder/Anfrageformular/Muster-Stoff-Silvertex-Taupe-122-0009.jpeg);
}
*/

#main form .widget-pagebreak {
	position: relative;
	text-align: right;
	font-size: 0.8em;
	clear: both;
}
#main form .widget-pagebreak button[value="back"] {
	position: absolute;
	left: 0;
}


.rahmenauswahl .radiogruppe, 
.auflagenauswahl .radiogruppe {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}

/* Container */
.rahmenauswahl span, 
.auflagenauswahl span {
  display: inline-block;
  margin: 15px;
  position: relative;
  width: calc(33% - 30px);
}

/* Radios unsichtbar, aber bedienbar lassen */
.rahmenauswahl input[type="radio"], 
.auflagenauswahl input[type="radio"] {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}

/* Label als klickbare Kachel */
.rahmenauswahl label, 
.auflagenauswahl label {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
  width: 100%;      /* Kachelgröße anpassen */
  height: 215px;
  padding: 0.5rem;
  border-radius: 10px;
  border: 2px solid #ccc;
  cursor: pointer;
  text-align: center;
  box-sizing: border-box;
  background-color: #fff;
  transition:
    transform 0.15s ease,
    box-shadow 0.15s ease,
    border-color 0.15s ease,
    background-color 0.15s ease;
}
.rahmenauswahl label {
  height: 380px;
}

/* Hover-Effekt */
.rahmenauswahl label:hover, 
.auflagenauswahl label:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 10px rgba(0,0,0,0.08);
}

/* Fokus (Tastatur) */
.rahmenauswahl input[type="radio"]:focus-visible + label, 
.auflagenauswahl input[type="radio"]:focus-visible + label {
  outline: 3px solid #000;
  outline-offset: 3px;
}

/* Ausgewählte Kachel */
.rahmenauswahl input[type="radio"]:checked + label, 
.auflagenauswahl input[type="radio"]:checked + label {
  border-color: var(--farbe-marke);
  background-color: #fff7f2;
  background-color: rgba(58, 126, 129,0.15);
  box-shadow: 0 0 0 3px rgba(58, 126, 129,0.25);
}

/* Platzhalter für das Stoffmuster-Bild */
.rahmenauswahl .radio_container label::before, 
.auflagenauswahl .radio_container label::before {
	content: "";
	display: block;
	width: calc(100% - 34px);
	height: 140px;
	margin-bottom: 0.4rem;
	border-radius: 6px;
	background-repeat: no-repeat;
	background-position: center top;
	position: absolute;
	top: 0;
	margin: 15px;
}
.rahmenauswahl .radio_container label::before {
	height: 300px;
	background-position: center -90px;
}

.rahmenauswahl .radio_container input[value="Sapeli-natur-geölt"] + label::before {
	background-image: url(/files/hk/bilder/Anfrageformular/Muster-Holz-1-natur.jpeg);
}
.rahmenauswahl .radio_container input[value="Sapeli-wengefarben-geölt"] + label::before {
	background-image: url(/files/hk/bilder/Anfrageformular/Muster-Holz-3-wenge.jpeg);
}


.auflagenauswahl .radio_container input[value="Charcoal_HKRS_0001"] + label::before {
	background-image: url(/files/hk/bilder/Anfrageformular/Muster-Stoff-Charcoal-3705.jpeg);
}
.auflagenauswahl .radio_container input[value="Grey_HKRS_0002"] + label::before {
	background-image: url(/files/hk/bilder/Anfrageformular/Muster-Stoff-Silver-Grey-3741.jpeg);
}
.auflagenauswahl .radio_container input[value="Taupe_HKRS_0003"] + label::before {
	background-image: url(/files/hk/bilder/Anfrageformular/Muster-Stoff-Taupe-3729.jpeg);
}
.auflagenauswahl .radio_container input[value="Silvertex_Graphite_HKRK_0001"] + label::before {
	background-image: url(/files/hk/bilder/Anfrageformular/Muster-Stoff-Silvertex-Graphite-122-4003.jpeg);
}
.auflagenauswahl .radio_container input[value="Silvertex_Sterling_HKRK_0003"] + label::before {
	background-image: url(/files/hk/bilder/Anfrageformular/Muster-Stoff-Silvertex-Sterling-122-4011.jpeg);
}
.auflagenauswahl .radio_container input[value="Silvertex_Taupe_HKRK_0004"] + label::before {
	background-image: url(/files/hk/bilder/Anfrageformular/Muster-Stoff-Silvertex-Taupe-122-0009.jpeg);
}

#productPreview figure {
	aspect-ratio: 5 / 2;
	overflow: hidden;
	display: flex;
	flex-direction: row;
}
#productPreview figure img {
	object-fit: cover;
}

#productConfigForm fieldset {
	margin: 15px 0;
}
/*
#productConfigForm .widget-radio.rahmenauswahl {
	width: calc(66% - 15px);
	float: left;
	margin-right: 15px;
}
*/
#productConfigForm fieldset.rahmenauswahl {
	height: 360px;
}
#productConfigForm .rahmenauswahl span {
	display: inline-block;
	margin: 10px;
	position: relative;
/*	width: calc(50% - 30px);  */
	width: calc(50% - 20px);

}
#productConfigForm .rahmenauswahl label {
  height: 240px;
}
#productConfigForm .rahmenauswahl .radio_container label::before {
	height: 150px;
	background-position: center -100px;
}
/*
#productConfigForm .widget-radio.auflagenauswahl {
	width: calc(33% - 15px);
	float: left;
	margin-left: 15px;
}
*/
#productConfigForm fieldset.auflagenauswahl {
	height: 532px;
	overflow: scroll;
}
#productConfigForm .auflagenauswahl span {
  display: inline-block;
  margin: 10px;
  position: relative;
  width: 100%;
}
#productConfigForm .auflagenauswahl label {
	height: 260px;
}
#productConfigForm .auflagenauswahl .radio_container label::before {
	height: 150px;
}

#productConfigForm .hoehenauswahl .radio_container {
	padding: 15px;
}
#productConfigForm .hoehenauswahl .radiogruppe span{
	width: 50%;
	display: flex;
	flex-direction: row;
	align-items: center;
}
#productConfigForm .hoehenauswahl .radiogruppe span label {
	margin-left: 10px;
}
	


/*
	Bootstrap 4 Breakpoints
	xs     <  576px
	sm     >= 576px
	md     >= 768px
	lg     >= 992px
	xl     >= 1200px
*/
@media screen and (max-width: 575px) {
	fieldset {
		padding: 0;
	}
	#productConfigForm .rahmenauswahl span {
		margin: 7px;
	}
	#productConfigForm .widget-radio.rahmenauswahl, 
	#productConfigForm .widget-radio.auflagenauswahl {
/*		width: 49%;  */
		width: 100%;
		float: none;
		display: inline-block;
		margin: 0;
	}
	#productConfigForm .rahmenauswahl span {
		width: 100%;
	}
	.rahmenauswahl label, 
	.auflagenauswahl label {
		font-size: 14px;
	}
	.rahmenauswahl .radio_container label::before, 
	.auflagenauswahl .radio_container label::before {
		width: calc(100% - 20px);
	}
	#productConfigForm .radio_container.rahmenauswahl, 
	#productConfigForm .radio_container.hoehenauswahl {
		margin: 15px;
	}
	#productConfigForm fieldset.rahmenauswahl, 
	#productConfigForm fieldset.auflagenauswahl {
		height: auto;
		overflow: scroll;
	}
}

/*  ==========  /Konfigurator  ==========  */




/* Zeno */


/* Aufzählungen */

.haekchen ul {
	list-style: none;
	padding-left: 0;
	margin: 0;
}
.haekchen ul li::before {
	content: '';
	width: 1.5em;
	height: 1.5em;
	flex: 0 0 1.5em;
	background: url('/files/bilder/Icons/Checkmark-gruen.svg') no-repeat center / contain;
}

.haekchen ul li {
	display: flex;
	align-items: center;
	gap: 0.6em;
	margin: 10px 0;
}

b,strong{font-weight:bold}


.energie-box {
  flex: 1;
  padding: 3rem;
  color: #fff;
  position: relative;
}


.energie-box--links {
  background: #4bb463;
  clip-path: polygon(0 0, 95% 0, 85% 100%, 0 100%);
}


.energie-box--rechts {
  background: #0b3a57;
  clip-path: polygon(10% 0, 100% 0, 100% 100%, 0 100%);
}


.bg-blau {
	color: #ffffff;
	background-color: var(--farbe-marke);
}

.bg-blau h2{
	color: #ffffff;
}

.h3-weiss h3{
	color: #ffffff;
}

.zitatbox {
	position: relative;
	background-color: var(--farbe-ganzhellgrau);
	border-radius: 5px;
	padding: 75px 30px 15px 30px;
	height: 100%;
}
.zitatbox::before {
	position: absolute;
	top: -50px;
	left: 50%;
	transform: translate(-50%,0);
	display: block;
	width: 100px;
	height: 100px;
	border-radius: 50%;
	background: #ffffff;
	color: var(--farbe-marke);
	content: '\f10e';
	font-family: 'Font Awesome 6 Free';
	font-weight: 700;
	font-size: 64px;
	text-align: center;
}
.zitatbox[class*="sterne"] > .rte::before {
	display: block;
	font-size: 36px;
	line-height: 1;
	text-align: center;
	color: var(--farbe-dunkelgruen);
	margin-bottom: 15px;
}
.zitatbox.sterne-1 > .rte::before { content: '\2605'; }
.zitatbox.sterne-2 > .rte::before { content: '\2605\2605'; }
.zitatbox.sterne-3 > .rte::before { content: '\2605\2605\2605'; }
.zitatbox.sterne-4 > .rte::before { content: '\2605\2605\2605\2605'; }
.zitatbox.sterne-5 > .rte::before { content: '\2605\2605\2605\2605\2605'; }



/*  ==========  Akkordeon  ==========  */

.handorgel__header {
	position: relative;
}
.handorgel__header button {
	background-color: transparent;
	padding-right: 45px;
	border-bottom: 1px solid #cccccc;
	transition: color 0.3s;
}
.handorgel__header button:hover {
	color: var(--farbe-dunkelgruen);
}
.handorgel__content {
	background-color: transparent;
}

.handorgel__header button::after {
	position: absolute;
	display: inline-block;
	content: '+';
	font-size: 28px;
	top: 0; 
	right: 0;
	bottom: 0;
	display: flex;
	flex-direction: row;
	align-items: center;
}
.handorgel__header--open button {
	border-bottom: none;
	color: var(--farbe-dunkelgruen);
}
.handorgel__header--open button::after {
	content: '-';
}

/*  ==========  /Akkordeon  ==========  */


.adressblock .anschrift, 
.adressblock .maps, 
.adressblock .email, 
.adressblock .telefon, 
.adressblock .whatsapp {
	position: relative;
	padding: 10px 0 0 60px;
	margin-bottom: 15px;
}
.adressblock .anschrift::before, 
.adressblock .maps::before, 
.adressblock .email::before, 
.adressblock .telefon::before, 
.adressblock .whatsapp::before {
	position: absolute;
	top: 0;
	left: 0;
	font-family: 'Font Awesome 6 Free';
	font-weight: 700;
	font-size: 32px;
	color: #ffffff;
}
.adressblock .anschrift::before {
	content: '\f279';
} 
.adressblock .maps::before {
	content: '\f3c5';
} 
.adressblock .email::before {
	content: '\f0e0';
} 
.adressblock .telefon::before {
	content: '\f095';
} 
.adressblock .whatsapp::before {
	content: '\f232';
	font-family: 'Font Awesome 6 Brands';
}

/*  ==========  Flipcard 2026 ==========  */

/* ===== Flipcard Basis ===== */
.flipcard{
  position: relative;         /* für den floating Button */
	height: 100%;
  perspective: 1000px;
}

/* Der „Dreh-Kern“ */
.flipcard__inner{
  display: grid;              /* wichtig: Höhe = max(Front, Back) */
	height: 100%;
  transform-style: preserve-3d;
  transition: transform 0.6s;
}

/* Front & Back liegen im selben Grid-Feld übereinander */
.flipcard__face{
  grid-area: 1 / 1;
  padding: 1.25rem;

  /* Reserve, damit Text nicht unter den Icon-Button läuft */
  padding-bottom: 3.75rem;

  border-radius: 5px;
  border: 1px solid var(--farbe-marke);
  box-shadow: 0 5px 15px rgba(0,0,0,.12);
  backface-visibility: hidden;
}
.flipcard__face h3,
.flipcard__face h4 {
	font-weight: bold;
}


/* Rückseite um 180° drehen */
.flipcard__face--back{
  transform: rotateY(180deg);
}

/* Auto-Flip bei Hover (nur Maus) + sticky Flip via Klasse */
/*
.flipcard:hover .flipcard__inner,
.flipcard.is-flipped .flipcard__inner{
  transform: rotateY(180deg);
}
*/
/* Rückseite anzeigen: entweder Preview (Hover/Focus) oder manuell (Button) */
.flipcard.is-preview .flipcard__inner,
.flipcard.is-flipped .flipcard__inner{
  transform: rotateY(180deg);
}
/* Extra-Sicherheit: Button in 3D immer oben */
.flipcard__toggle{
  transform: translateZ(2px);
}

/* ===== Icon-Button (floating, unten rechts) ===== */
.flipcard__toggle{
  position: absolute;
  right: 12px;
  bottom: 12px;
  z-index: 10;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  width: 42px;
  height: 42px;
  border-radius: 999px;

  border: 1px solid currentColor;
  background: var(--farbe-marke);
  color: #ffffff;
  cursor: pointer;
}

/* Fokus sichtbar lassen */
.flipcard__toggle:focus-visible{
  outline: 3px solid var(--farbe-gruen);
  outline-offset: 3px;
}
.flipcard__toggle[aria-expanded="true"]:focus-visible{
  outline: 3px solid var(--farbe-gruen);
  outline-offset: 3px;
}

/* Screenreader-only Text */
.visually-hidden{
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0,0,0,0);
  white-space: nowrap;
  border: 0;
}

/* ===== Reduced Motion ===== */
@media (prefers-reduced-motion: reduce){
  .flipcard__inner{ transition: none; }
  .flipcard__face--back{ display: none; transform: none; }

  /* wenn per Button umgeschaltet */
  .flipcard.is-flipped .flipcard__face--back{ display: block; }

  /* Button im Flow statt overlay (oft angenehmer) */
  .flipcard__face{
    padding-bottom: 1.25rem;
    padding-right: 1.25rem;
  }
  .flipcard__toggle{
    position: static;
    margin-top: .75rem;
  }
}
.content-text.iconbox {
	position: relative;
	margin-top: 15px;
	margin-bottom: 15px;
/*
	display: grid;
	grid-template-columns: auto;
	grid-template-rows: auto auto;
*/
	padding: 25px;
	height: 100%;
	border: 1px solid var(--farbe-gruen);
	background-color: var(--farbe-grau);
}
/*
	Bootstrap 4 Breakpoints
	xs     <  576px
	sm     >= 576px
	md     >= 768px
	lg     >= 992px
	xl     >= 1200px
*/

.flipcard h2 {
	font-family: 'Open Sans', Arial, sans-serif;
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 300;
	text-align: center;
	text-transform: none;
	margin: 0;
}
.flipcard .rte {
	font-size: 18px;
	font-size: 1.125rem;
	text-align: center;
	margin: 0;
	line-height: 1.25;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.flipcard .rte p {
	margin: 0;
}
.flipcard figure {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	padding: 30px 15px;
}
.flipcard  figure img {
	height: 100px;
	opacity: 0.7;
	max-height: none;
	width: auto;
	max-width: none;
}
@media screen and (min-width: 601px) and (max-width: 991px) {
	.flipcard h2 {
		font-size: 20px;
	}
	.flipcard p {
		font-size: 16px;
	}
}
@media screen and (min-width: 768px) and (max-width: 1199px) {
	.flipcard__face--front {
		hyphens: auto;
	}
}

/*  ==========  /Flipcard  ==========  */

/*  ==========  SlickSlider  ==========  */

.slick-track {
	display: flex;
}
.slick-slide {
	height: inherit !important;
	padding: 75px 15px;
}
.slick-prev, .slick-next {
	top: auto;
	bottom: 0;
}
.slick-prev::before, .slick-next::before {
	color: var(--farbe-dunkelgruen);
}
.slick-dots {
	bottom: 33px;
}
.slick-dots li button::before {
	color: #ffffff;
	border: 2px solid var(--farbe-dunkelgruen);
	border-radius: 50%;
}
.slick-dots li.slick-active button::before {
	color: var(--farbe-dunkelgruen);
	background-color: var(--farbe-dunkelgruen);
}

/*  ==========  /SlickSlider  ==========  */


/*  ==========  Consent Tool  ==========  */

.ce_optin_fallback {
	display: block;
	width: 80%;
	max-width: 1200px;
	padding: 30px;
	border: 2px solid var(--farbe-gruen);
}
#main .ce_optin_fallback a {
	background-color: var(--farbe-button);
	color: var(--farbe-button-text);
	text-decoration: none;
	border: 1px solid var(--farbe-button-border);
	border-radius: 5px;
	text-decoration: none;
	display: inline-block;
	padding: 7px 30px;
	width: auto;
	margin: 15px 0;
	transition: all 0.3s;
	cursor: pointer;
}
#main .ce_optin_fallback a:hover {
	background-color: var(--farbe-button-hover);
	color: var(--farbe-button-text-hover);
	border: 1px solid var(--farbe-button-border-hover);
}
cms-container a {
	text-decoration: underline !important;
}
cms-cookie-bar > cms-container form cms-buttons cms-button[value="reject"] > span::before, cms-cookie-bar > cms-container form cms-buttons cms-button[value="accept"]:nth-of-type(1) > span::before, cms-accept-tags > cms-container form cms-buttons cms-button[value="reject"] > span::before, cms-accept-tags > cms-container form cms-buttons cms-button[value="accept"]:nth-of-type(1) > span::before {
	background-color: #aaaaaa !important;
}
cms-cookie-bar > cms-container form cms-buttons cms-button[value="reject"], cms-cookie-bar > cms-container form cms-buttons cms-button[value="accept"]:nth-of-type(1), cms-accept-tags > cms-container form cms-buttons cms-button[value="reject"], cms-accept-tags > cms-container form cms-buttons cms-button[value="accept"]:nth-of-type(1) {
	color: #000000 !important;
}
cms-cookie-bar > cms-container form cms-buttons cms-button[value="accept"]:nth-last-of-type(1) > span::before, cms-accept-tags > cms-container form cms-buttons cms-button[value="accept"]:nth-last-of-type(1) > span::before {
	background-color: #666666 !important;
}
cms-cookie-bar > cms-container form cms-buttons cms-button[value="accept"]:nth-last-of-type(1), cms-accept-tags > cms-container form cms-buttons cms-button[value="accept"]:nth-last-of-type(1) {
	color: #ffffff !important;
}
cms-accept-tags > cms-container form cms-taglist cms-taggroup cms-taggroup-header label {
	background-color: #aaaaaa !important;
}
cms-accept-tags > cms-container form cms-taglist cms-taggroup cms-taggroup-header input:checked + label {
	background-color: #666666 !important;
}

/*  ==========  /Consent Tool  ==========  */

