
html
{
	overflow-y: scroll;
	-ms-overflow-style: scrollbar;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	scroll-behavior: smooth;

}

.colors {
    color:#355a7a; /* Header, Text, Footer Graphit-Schwarz*/
    color:#196972; /* Hintergrundfarbe  dunkelgrün*/
    color:#952C58; /* Hover-Nav, Hintergrundfarbe  Hellgrün*/
    color:#EAE5DF; /* Hero-Sektion Sandgrau*/
    color:#7BA7B9; /* CTA-Buttons, link Gletscherblau*/
    color:#333333; /* Premium-Elemente link-hover Bronze-Metallik*/
}

.no-scroll
{
	overflow: hidden !important;
}

*,
*:after,
*:before
{
	box-sizing: border-box;
}
@media (prefers-reduced-motion: reduce) {
	.background-video {
		display: none;
	}
}

body
{
	margin: 0;
	font-weight: normal;
	font-size: 20px;
	line-height: 1.333333;
	/*font-family: 'Fira Mono', Arial, 'Helvetica Neue', Helvetica, sans-serif;*/
	font-family: 'Kantumruy Pro', Arial, 'Helvetica Neue', Helvetica, sans-serif;
	background-color: #ffffff;
/*	color: #7c7c7c;*/
	color: #444;

}
.willkommenstext {
	font-size: 22px;
}
iframe
{
	max-width: 100%;
}

h1,
h2,
h3,
h4,
h5,
h6
{
	font-family: 'Kantumruy Pro';
	font-weight: 500;
	margin: 0 0 .3125em;
	color: #11336a;
	line-height: 1.2;

	text-decoration: none;

	/*text-underline-offset: 10px;*/
}

h1
{
	font-size:50px;
    margin-bottom: 10px;

}

h2
{
	font-size: 36px;
    margin-bottom: 10px;
}

h1.abschnitt-headline, h2.abschnitt-headline, h3.abschnitt-headline {
	font-weight: 500;
	text-align: center;
}

h3
{
	font-size: 22px;
	margin-bottom: 1rem;
}

h4
{
	font-size: 18px;
}

h5
{
	font-size: 14px;
}

h6
{
	font-size: 12px;
}
.preis {
    font-size: 16px;
}
img
{
	border: 0;
	max-width: 100%;
	height: auto;
}
.barrierefrei-link:focus, .barrierefrei-link:hover,
.barrierefrei-link:focus-visible{
    outline:1px solid #952C58;

}

h1.h1start {
    font-size: 64px;
    font-weight: bold;
    color: #000;
    text-transform: uppercase;
}
h2.h2start {
    font-size: 55px;
    font-family: 'Dancing Script';
}

sup,
sub
{
	height: 0;
	line-height: 1;
	vertical-align: baseline;
	_vertical-align: bottom;
	position: relative;
}

sup
{
	bottom: 1ex;
}

sub
{
	top: .5ex;
}

/* tinymce */

img.img-left
{
	float: left;
	margin: 0 20px 20px 0;
}

img.img-right
{
	float: right;
	margin: 0 0 20px 20px;
}

.uppercase
{
	text-transform: uppercase;
}

.highlight
{
	color: #ea7902;
}

.highlight-2
{
	color: #052156
}

.extra-bold
{
	font-weight: 800;
}

.semi-bold
{
	font-weight: 600;
}

a.button,
.text-styles a.button, .newsbox a.button,a.buttonblau, .text-styles a.buttonblau
{
	font-family: 'Fira Mono';
	margin:5px;
	color: #355a7a !important;
	background-color: #ffffff;

	filter: drop-shadow(3px 3px 3px rgba(0,0,0,0.3));
	display: inline-block;
text-decoration: none !important;
	font-weight: normal;
	text-align: center;
	vertical-align: middle;

	cursor: pointer;
	background-image: none;
	border: 1px solid #355a7a;

	white-space: nowrap;
	padding: 6px 12px;
	border-radius: 4px;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

a.buttonblau, .text-styles a.buttonblau {
	color: #ffffff;
	background-color: #355a7a;
}


a.buttonstart {
background: rgba(255, 255, 255, .6);
	font-weight: 500;
}
.normalnav a.buttonstart {
	background: #ffffff;
	font-weight: 400;
}


a.button:hover,  a.buttonblau:hover, .text-styles a.buttonblau:hover
a.button:focus,
.text-styles a.button:hover,
.text-styles a.button:focus,   .newsbox:hover a.button
{

	transition: 0.3s ease;
	text-decoration: none;
	color: #ffffff;
	background-color: #254081;
	filter: drop-shadow(0 0 0 rgba(0,0,0,0));

}




a.buttonstart:hover {
	background: rgba(0, 0, 0, .5);
	font-weight: 500;
}
.normalnav a.buttonstart:hover {
	background: #254081;

}

a.buttonblau:hover, .text-styles a.buttonblau:hover {
	background-color: #355a7a;
	color: #ffffff;
}



a.button-start{
	padding: 5px 15px 5px 15px;
	border: 1px solid #fff;
	color: #fff;
}



/* global */
.text-styles a
{
    color: #7c431c ;
    text-decoration: none;
    font-weight: normal;

    position: relative;
    display: inline-block;

    vertical-align: baseline;
}


/* Hover/Focus – bewusst mit höherer Spezifität + notfalls !important */
.text-styles p a:hover::after,
.text-styles a:hover::after,
.text-styles a:focus-visible::after {
    opacity: 1 !important;
    background-size: 100% 100% !important;
    will-change: background-position;
    transition: none;
}

.text-styles a:hover,
.text-styles a:focus
{

    background-image: linear-gradient(
            90deg,
            #7c431c 0%,
            #7c431c 40%,
            #ea7902 50%,
            #7c431c 60%,
            #7c431c 100%
    );
    background-size: 200% 100%;
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    animation: glowMove 1.5s linear infinite;
    text-decoration: none !important;
}

@keyframes glowMove {
    0% {background-position:100% 0}
    100% {background-position:-50% 0}
}
@keyframes redTextMove {
    0% {background-position:200% 0}
    100% {background-position:0 0}
}





/* Hover/Focus – bewusst mit höherer Spezifität + notfalls !important */
.text-styles p a:hover::after,
.text-styles a:hover::after,
.text-styles a:focus-visible::after {
	opacity: 1 !important;
	background-size: 100% 100% !important;
}



/* Basis-Button */
a.buttonwhite,
a.button-start {
	/* Dein bestehendes Styling … */

	color: #355a7a !important;
	background-color: #ffffff;
	margin: 5px 0;
	filter: drop-shadow(3px 3px 3px rgba(0,0,0,0.3));
	font-weight: normal;
	text-align: center;
	vertical-align: middle;
	cursor: pointer;
	background-image: none;
	border: 1px solid #355a7a;
	white-space: nowrap;
	padding: 6px 12px;
	border-radius: 4px;
	user-select: none;
	text-decoration: none;

	/* WICHTIG: Reset gegen Text-Gradient-Regeln */
	-webkit-text-fill-color: inherit;
	-webkit-background-clip: initial;
	background-clip: initial;
}

/* Hover-Zustand der Buttons (dein Code) */
a.buttonwhite:hover,
a.buttonwhite:focus,
a.button-start:hover {
	color: #fff !important;
	background-image: linear-gradient(
			90deg,
			rgba(149, 44, 88, 1) 0%,
			rgba(96, 22, 47, 1) 20%,
			rgba(43, 0, 5, 1) 50%,
			rgba(96, 22, 47, 1) 80%,
			rgba(149, 44, 88, 1) 100%
	);
	background-size: 200% 100%;
	animation: redMove 3s linear infinite;
	text-decoration: none !important;
	transition: 0.2s ease;

	/* Sicherstellen, dass kein Text-Clip aktiv ist */
	-webkit-text-fill-color: #fff;
	-webkit-background-clip: initial;
	background-clip: initial;
}
@keyframes redMove {
    0%   { background-position: 200% 0; }
    100% { background-position: 0 0; }
}


@keyframes goldMove {
	0%   { background-position: 180% 0; }
	100% { background-position: 0 0; }
}

a.buttonnav, .buttonnav
{
    font-family: 'Kantumruy Pro';
    margin: 3px;

    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;

    text-decoration: none !important;
    text-shadow: unset !important;
    font-weight: normal;
    text-align: center;
    vertical-align: middle;
    line-height: 1.2;

    cursor: pointer;
    white-space: nowrap;
    padding: 5px 8px;
    border-radius: 4px;

    border: 1px solid #052156
    background-color: #fff;
    color: #052156

    background-image: none;

    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    animation: none;
    transition: 0.3s ease;
}


a.buttonnav::after, .buttonnav:after
{
    content: "\f054";
    font-family: "Font Awesome 7 Pro";
    font-weight: 900;

    display: inline-block;
    line-height: 1;
    font-size: 0.9em;
}
.scrolled a.buttonnav, .scrolled .buttonnav {
    background-color:#fff ;
    color: #052156;
    border: 1px solid #052156;
}
a.buttonnav:hover, .buttonnav:hover
{
    background-image: unset;
    background-clip: unset;
    -webkit-background-clip:unset;
    -webkit-text-fill-color: unset;
    animation:unset;
    background-color:#052156 ;
    color: #fff;
    transition: 0.3s ease;
}

.hint50 a.buttonnav,
.hint50 .scrolled a.buttonnav,
.carousel-overlay a.buttonnav,
.carousel-overlay .scrolled a.buttonnav, .carousel-overlay a.buttonnav:active, .carousel-overlay scrolled a.buttonnav:active
{
    background-color: #052156;
    color: #fff;
    border-color: #fff;
}
.footer-top a.buttonnav {
    background-color: #ea7902;
    color: #fff;
    border-color: #fff;
}

.hint50 a.buttonnav:hover,
.carousel-overlay a.buttonnav:hover, .footer-top a.buttonnav:hover, .carousel-overlay a.buttonnav:focus, .carousel-overlay scrolled a.buttonnav:focus
{
    background-color: #fff;
    color: #052156;

	border: 2px solid #ea7902;
}
.carousel-overlay a.buttonnav
{
    text-shadow: none !important;
    font-size: 18px;
}
.carousel-overlay a:after {
    content: none;
}



/*
a.buttonnav:hover {
    color: #fff !important;
    background-image: linear-gradient(
            90deg,
            #7c431c 0%,
            #7c431c 40%,
            #ea7902 50%,
            #7c431c 60%,
            #7c431c 100%
    ) !important;
    background-size: 180% 100%;
    animation: goldMove 1.2s linear infinite !important;
    text-decoration: none !important;
    transition: 0.2s ease;
    -webkit-text-fill-color: #fff;
    -webkit-background-clip: initial;
    background-clip: initial;
}
*/
.hidden-inp
{
	border: 0;
	clip: rect(0 0 0 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
}

.youtube-wrap,
.vimeo-wrap,
.video-wrap
{
	position: relative;
	max-width: 100%;
}

.youtube-wrap:before,
.vimeo-wrap:before,
.video-wrap:before
{
	content: '';
	display: block;
	padding-bottom: 56.25%; /* 16:9 */
}

.youtube-wrap > iframe,
.vimeo-wrap > iframe,
.video-wrap > video
{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.img-wrap.compat-object-fit img
{
	opacity: 0;
}

.img-wrap.img-cover.compat-object-fit,
.img-wrap.img-contain.compat-object-fit
{
	background-position: center;
	background-repeat: no-repeat;
}

.img-wrap.img-cover.compat-object-fit
{
	background-size: cover;
}

.img-wrap.img-cover > img
{
	-o-object-fit: cover;
	object-fit: cover;
	height: 100%;
	width: 100%;
}

.img-wrap.img-contain.compat-object-fit
{
	background-size: contain;
}

.img-wrap.img-contain > img
{
	-o-object-fit: contain;
	object-fit: contain;
	height: 100%;
	width: 100%;
}

img.full-width
{
	width: 100%;
}

.clearfix:before, .clearfix:after
{
	content: "";
	display: table;
}

.clearfix:after
{
	clear: both;
}

.clearfix
{
	zoom: 1;
}

.left
{
	float: left;
}
.textleft {
	text-align: left;
}
.textright {
	text-align: right;
}
.textcenter {
	text-align: center;
}

.right
{
	float: right;
}

.glassy
{
	border: 7px solid rgba(255, 255, 255, .4);
	border-radius: 4px;
}

.txtf-close
{
	font-size: 22px;
	line-height: 1;
	font-weight: normal;
	text-decoration: none;
}

.maintenance
{
	display: inline-block;
	margin-top: 30px;
	border: 1px #cccccc solid;
	background: #ffffff;
	padding: 20px;
	color: #355a7a;
	border-radius: 10px;
}

.div_noscript
{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 99999;
	padding: 5px;
	border: 1px #ff0000 solid;
	background: #ffffff;
	color: #ff0000;
}

.visible-mobile
{
	display: none;
}

.wrap
{
	max-width: 1280px;
	margin: 0 auto;
	padding: 0 32px;
}

.wrap.no-padding
{
	padding-left: 0 !important;
	padding-right: 0 !important;
}

.wrap.full-width
{
	max-width: none !important;
}

.wrap-width-1 .wrap
{
	max-width: 800px;
}

.wrap-width-2 .wrap
{
	max-width: 1024px;
}

.wrap-width-3 .wrap
{
	max-width: none;
}
.wrap-width-4 .wrap
{
	max-width: none;
	padding-left: 0;
	padding-right: 0;
}

.wrap-width-5 .wrap
{
	max-width: 1600px;
}
.wrap-width-6 .wrap
{
    max-width: 1024px;
}

.row-wrap
{
	overflow: hidden;
}
.hint50:before {
    content: '';
    display: block;
    padding-top: 35.1123595505618%;
}

.row
{
	list-style: none;
	margin-top: -20px;
	margin-bottom: 0;
	padding: 0;
}

.col,
[class*="col-"]
{
	margin: 20px 0 0;
	padding-top: 0;
	padding-bottom: 0;
}

.vspace-0
{
	margin-top: 0;
}

.vspace-0 > .col,
.vspace-0 > [class*="col-"]
{
	margin-top: 0;
}

/* specific */

#content
{
	height: 100%;
}



.search-form
{
	margin: 0 0 0 8px;
}

.search-form input[type="search"]
{
	border: 0;
	box-shadow: none;
	background-color: #f5f5f3;
	height: 24px;
	font-size: 14px;
	width: 160px;
	max-width: 100%;
	vertical-align: top;
	transition: width ease-in-out .4s;
	margin: 0;
	padding: 0 19px 0 7px;
}

.search-form input[type="search"]:focus
{
	width: 240px;
}

.search-inp-wrap
{
	position: relative;
	background-color: #f5f5f3;
	margin: 0;
}

.search-inp-wrap .fas
{
	position: absolute;
	right: 5px;
	top: 0;
	bottom: 0;
	margin: auto;
	font-size: 14px;
	line-height: 24px;
}



#main
{
	padding:0px 0 30px 0;
}

.normalnav #main
{
	padding: 0 0 30px 0;
	margin: 0 0 50px 0;
}



.has-main-bg
{
	background-size: cover;
	background-repeat: no-repeat;
	background-attachment: fixed;
}



/* abschnitte */

.abschnitt
{
	margin-top:80px;

}
.abschnitt:first-child {
	margin-top:0px ;
}

.abschnitte > section:nth-of-type(2) {
    margin-top: 90px;
}
/*
.scrolled .abschnitt:first-child {
	margin-top:132px ;
}
*/


.abschnitt.margin-collapsing
{
	margin-top:0;
}

.abschnitt_linker
{
	position: relative;
	top: -80px;
}

[class*="abschnitt-bg-color-"]
{
	padding: 0px 0;
}

.abschnitt-bg-color-1 + .abschnitt-bg-color-1,
.abschnitt-bg-color-2 + .abschnitt-bg-color-2,
.abschnitt-bg-color-3 + .abschnitt-bg-color-3,
.abschnitt-bg-color-4 + .abschnitt-bg-color-4,
.abschnitt-bg-color-5 + .abschnitt-bg-color-5
{
	margin-top: 0;
	padding-top: 0;
}
/*
.abschnitt-bg-color-1
{
	background-color: #000  ;
	color: #ffffff;
}
*/
.abschnitt-bg-color-1 {
    padding: 0;
}
.abschnitt-bg-color-1 .grauwrap {
    background: #FEF8F2;
    padding:30px;

}
.abschnitt-bg-color-2 .grauwrap, .buchung {
    background: #F2F4F7;
    padding:30px;

}

.abschnitt-bg-color-3 /*Grauer Sandton  */
{
	background-color: #c8b9a8 ;

}

.abschnitt-bg-color-4 /* Terrakotta */
{
	background-color: #254081;
	color: #ffffff;
}
.abschnitt-bg-color-5 /* Helles Grau */
{
	background-color: #eeeeee  ;
}
.abschnitt-bg-color-6 /* Helles Grau */
{
	background:url('/img/web/kachel2.png') repeat-x #fff  ;

	color: #ffffff;
}

.abschnitt-bg-color-1 h1, .abschnitt-bg-color-1 h2, .abschnitt-bg-color-1 h3, .abschnitt-bg-color-1 h4,

.abschnitt-bg-color-2 h1, .abschnitt-bg-color-2 h2, .abschnitt-bg-color-2 h3, .abschnitt-bg-color-2 h4,
*.abschnitt-bg-color-4 h1, .abschnitt-bg-color-4 h2, .abschnitt-bg-color-4 h3, .abschnitt-bg-color-4 h4
{
	color: #11336a;
}
.abschnitt-bg-color-1 hr,
.abschnitt-bg-color-3 hr,
.abschnitt-bg-color-2 hr
.abschnitt-bg-color-4 hr
{
	border-top: 1px solid #ffffff;
}



.team-img-wrap
{
	position: relative;
	display: block;
	margin-bottom: 17px;
}








.kontaktformular .form-control
{
	border-radius: 0;
	box-shadow: none;
}

.kontaktformular textarea.form-control
{
	max-width: 100%;
	min-height: 80px;
}

.team-img-wrap:before
{
	content: '';
	display: block;
	padding-top: 66.536458333333333333333333333333%;
}

.team-list
{
	text-align: center;
}

.team-list > li
{
	vertical-align: top;
	display: inline-block;
	float: none;
	text-align: left;
}

.team-text-wrap
{
	text-align: center;
}

.team-img-wrap img
{
	width: 100%;
	position: absolute;
	left: 0;
	top: 0;
	-webkit-transition: transform ease-out .3s;
	-moz-transition: transform ease-out .3s;
	-o-transition: transform ease-out .3s;
	transition: transform ease-out .3s;
}



.team-img-wrap
{
	overflow: hidden;
}

.team-img-wrap:before
{
	padding-top: 66.536458333333333333333333333333%;
}


.team-img-wrap img:hover
{
	-webkit-transform: scale(1.1);
	-moz-transform: scale(1.1);
	-ms-transform: scale(1.1);
	-o-transform: scale(1.1);
	transform: scale(1.1);
}

.team-name
{
	font-weight: 800;
	font-size: 20px;
}

.bildergalerie-list .img-wrap
{
	position: relative;
	display: block;
	border: 1px solid #aaa;

}

.bildergalerie-list .img-wrap:before
{
	content: '';
	display: block;
	padding-top: 66.63829787234043%;
}

.bildergalerie-list .img-wrap img
{
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	right: 0;
	height: 100%;
	width: 100%;
	object-fit: cover;

	-webkit-transition: transform ease-in-out .4s;
	-moz-transition: transform ease-in-out .4s;
	-o-transition: transform ease-in-out .4s;
	transition: transform ease-in-out .4s;
}

.bildergalerie-list a
{
	overflow: hidden;
}

.bildergalerie-list a:hover img,
.bildergalerie-list a:focus img
{
	-webkit-transform: scale(1.1);
	-moz-transform: scale(1.1);
	-ms-transform: scale(1.1);
	-o-transform: scale(1.1);
	transform: scale(1.1);
}
.foreground {

	z-index: 0;
}
.foreground:after {
	content: '';
	position: absolute;
	inset: 0;
	opacity: 0;
	z-index: 1; /* höher = vor dem Inhalt */
	pointer-events: none; /* Klicks gehen durch */
background-image: linear-gradient(
			90deg,
			rgb(255,255,255,0.0) 0%, rgb(124,67,28,0.3) 50%, rgb(255,255,255,0.0) 100%
			);

background-size: 180% 100%;     /* doppelte Breite für Bewegung */
animation: goldMove 1.5s linear infinite;
	transition: 1s ease;
}

.foreground:hover::after {
	opacity: 1;
}


.pagination>.active>a,
.pagination>.active>span,
.pagination>.active>a:hover,
.pagination>.active>span:hover,
.pagination>.active>a:focus,
.pagination>.active>span:focus,
.pagination>li>a:hover,
.pagination>li>span:hover,
.pagination>li>a:focus,
.pagination>li>span:focus
{
	background-color: #7c431c;
	transition: 0.3s ease;
	text-decoration: none;
	color: #ffffff;
	margin-left: 5px;
}

.text-center {
	text-align: center;
}
.pagination {
	margin-top: 40px;
	justify-content: center;
}

.pagination>li>a,
.pagination>li>span
{
	color: #355a7a;
	background-color: #ffffff;
	margin-bottom: 0;
	font-weight: normal;
	text-align: center;
	vertical-align: middle;

	cursor: pointer;
	background-image: none;
	border: 1px solid #355a7a;
	white-space: nowrap;
	padding: 6px 12px;
	border-radius: 4px;
	user-select: none;
	margin-left: 5px;
}




.normal-width
{
	max-width: 700px;
	margin-left: auto;
	margin-right: auto;
}

.google-map
{
	height: 600px;
	overflow: hidden;
}

.google-map-wrap.responsive
{
	position: relative;
	max-height: 600px;
}

.google-map-wrap.responsive:before
{
	content: '';
	display: block;
	padding-top: 31.25%; /* 1920 x 600 */
}

.google-map-wrap.responsive .google-map
{
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	right: 0;
	height: auto;
}

.modal
{
	visibility: hidden;
	position: fixed;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	opacity: 0;
	z-index: 90;
	outline: 0;
	background-color: rgba(0, 0, 0, .5);

	-webkit-transition: opacity linear .4s, visibility linear .4s;
	-moz-transition: opacity linear .4s, visibility linear .4s;
	-o-transition: opacity linear .4s, visibility linear .4s;
	transition: opacity linear .4s, visibility linear .4s;
}

.modal.active
{
	visibility: visible;
	opacity: 1;
}

html.no-scroll .modal
{
	overflow: scroll;
	ms-overflow-x: auto;
	overflow-x: auto;
}

.modal-close
{
	position: absolute;
	right: -14px;
	top: -14px;
	z-index: 1;
	font-size: 16px;
	line-height: 19px;
	height: 19px;
	width: 19px;
	background-color: #ffffff;
	text-align: center;
}

.modal-close .fas
{
	line-height: inherit;
}

.modal-inner
{
	position: absolute;
	left: 0;
	right: 0;
	top: 20%;
	max-width: 1230px;
	min-height: 200px;
	margin: 0 auto 50px;
	padding: 15px;
	background-color: #ffffff;
	box-shadow: 2px 2px 4px 0 rgba(0, 0, 0, .4);
}

.modal.modal-small .modal-inner
{
	max-width: 600px;
}

.modal.vcenter
{
	display: -ms-flexbox;
	display: flex;
	padding: 50px 10px;
}

.modal.vcenter > *
{
	position: static;
	margin: auto;
}

/* dv */

.dv input[type="checkbox"].auswahl
{
	margin-top: 0;
}

.dv .tab-pane
{
	padding: 15px 0 0;
}

.dv .plupload_container
{
	padding: 0;
}

.custom-switch-2
{
	margin: 0;
}

.custom-switch-2-button
{
	position: relative;
	border-radius: 1em;
	display: inline-flex;
	box-shadow: 0 1px 0 0 #ffffff inset, 0 -1px 0 0 #ffffff inset, -1px 0 0 0 #ffffff inset, 1px 0 0 0 #ffffff inset;
	cursor: pointer;
	z-index: 1;

	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;

	-webkit-transition: background-color ease-in-out .2s;
	-moz-transition: background-color ease-in-out .2s;
	-o-transition: background-color ease-in-out .2s;
	transition: background-color ease-in-out .2s;
}

.custom-switch-2.dark .custom-switch-2-button
{
	box-shadow: 0 1px 0 0 #1A1D20 inset, 0 -1px 0 0 #1A1D20 inset, -1px 0 0 0 #1A1D20 inset, 1px 0 0 0 #1A1D20 inset;
}

.custom-switch-2-button:before
{
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	min-width: 3.25em;
	border-radius: 1em;
	background-color: #ffffff;
	z-index: -1;

	-webkit-transition: transform ease-in-out .2s, left ease-in-out .2s;
	-moz-transition: transform ease-in-out .2s, left ease-in-out .2s;
	-o-transition: transform ease-in-out .2s, left ease-in-out .2s;
	transition: transform ease-in-out .2s, left ease-in-out .2s;
}

.custom-switch-2.dark .custom-switch-2-button:before
{
	background-color: #1A1D20;
}

.custom-switch-2 input:checked ~ .custom-switch-2-button:before
{
	left: 100%;

	-webkit-transform: translateX(-100%);
	-moz-transform: translateX(-100%);
	-ms-transform: translateX(-100%);
	-o-transform: translateX(-100%);
	transform: translateX(-100%);
}

.custom-switch-2 input:indeterminate ~ .custom-switch-2-button:before
{
	left: 50%;

	-webkit-transform: translateX(-50%);
	-moz-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	-o-transform: translateX(-50%);
	transform: translateX(-50%);
}

.custom-switch-2-button-active,
.custom-switch-2-button-inactive
{
	min-width: 3.25em;
	text-transform: uppercase;
	font-weight: 300;
	text-align: center;
	line-height: 1.8;

	-webkit-transition: color ease-in-out .2s;
	-moz-transition: color ease-in-out .2s;
	-o-transition: color ease-in-out .2s;
	transition: color ease-in-out .2s;
}

.custom-switch-2-button-active,
.custom-switch-2.dark .custom-switch-2-button-inactive,
.custom-switch-2 input:checked ~ .custom-switch-2-button .custom-switch-2-button-inactive,
.custom-switch-2.dark input:checked ~ .custom-switch-2-button .custom-switch-2-button-active,
.custom-switch-2.dark input:indeterminate ~ .custom-switch-2-button .custom-switch-2-button-active,
.custom-switch-2.dark input:indeterminate ~ .custom-switch-2-button .custom-switch-2-button-inactive
{
	color: #ffffff;
}

.custom-switch-2-button-inactive,
.custom-switch-2.dark .custom-switch-2-button-active,
.custom-switch-2.dark input:checked ~ .custom-switch-2-button .custom-switch-2-button-inactive,
.custom-switch-2 input:checked ~ .custom-switch-2-button .custom-switch-2-button-active,
.custom-switch-2 input:indeterminate ~ .custom-switch-2-button .custom-switch-2-button-active,
.custom-switch-2 input:indeterminate ~ .custom-switch-2-button .custom-switch-2-button-inactive
{
	color: #1A1D20;
}

.custom-switch-2 input:indeterminate ~ .custom-switch-2-button
{
	background-color: #ccc;
}

.custom-switch-2.disabled-active .custom-switch-2-button-inactive,
.custom-switch-2.disabled-inactive .custom-switch-2-button-active
{
	display: none;
}



.splitbreak
{
	margin-bottom: 24px;
}

.splitbreak.einfach
{
	margin-bottom: 11px;
}

.splitbreak .head
{
	color: #355a7a;
	/*background: #f08600 url('/img/web/splitbreak.png') no-repeat top right;*/
	height: 52px;
	line-height: 52px;
	font-weight: bold;
	position: relative;
	padding-left: 15px;
}


.splitbreak.einfach .head
{
	background: transparent;
	color: #355a7a;
	padding-left: 0;
}

.splitbreak.einfach .head a
{
	color: inherit;
	font-size: 18px;
}

.splitbreak.einfach .head a > span
{
	right: 50px;
	color: #f08600;
}

.splitbreak.einfach .head hr
{
	margin: 0;
	margin-right: 50px;
	padding: 0;
}

.splitbreak.einfach.open a
{
	color: #ff0000;
}

.splitbreak.einfach .sub .inner
{
	padding-top: 25px;
	padding-bottom: 25px;
	padding-left: 0;
	padding-right: 50px;
}

.splitbreak .head a
{
	font-size: 18px;
	font-weight: bold;
	line-height: inherit;
	outline: none;
	display: block;
	color: inherit;
	text-transform: inherit;
	text-decoration: none;
}

.splitbreak .head a > span
{
	font-size: 14px;
	position: absolute;
	right: 80px;
	top: 0;
	opacity: 0;
	transition: opacity 0.4s ease;
}

.splitbreak .head
{
	padding-top: 1px;
}

.splitbreak .head a > span
{
	top: 1px;
}

.splitbreak .head .group-addon a > span
{
	position: static;
	right: auto;
	top: auto;
	display: block;
}

.splitbreak .head .group-addon a > span + span
{
	margin-top: -52px;
}

.splitbreak .head a + span.pfeil
{
	position: absolute;
	display: block;
	top: 8px;
	right: 0;
	width: 42px;
	height: 42px;
	background: url("/img/web/splitbreak-pfeil.png") no-repeat top left;
	transition: transform 0.4s ease;
	pointer-events: none;
}

.splitbreak.link .head a + span.pfeil
{
	transform: rotateZ(-90deg);
}

.splitbreak.open .head a + span.pfeil
{
	transform: rotateZ(180deg);
}

.splitbreak.open .head a > span.open,
.splitbreak.link .head a > span.open,
.splitbreak.open2 .head a > span.open2
{
	opacity: 1;
}

.splitbreak.close .head a > span.close,
.splitbreak.close2 .head a > span.close2
{
	opacity: 1;
}

.splitbreak .sub
{
	transition: max-height 0.4s ease-in;
	overflow: hidden;
	color: #ffffff;
}

.splitbreak.close .sub
{
	height: auto;
	max-height: 0 !important;
}

.splitbreak.open .sub
{
	max-height: 2000px;
}
.hidden {
	display: none;
}


.abschnitte>.abschnitt.viewport-hidden,
.viewport-hidden{
	visibility: hidden;
}


.viewport-visibile-animation{
	-webkit-animation: move-up 1.5s 1;
	-moz-animation: move-up 1.5s 1;
	-o-animation: move-up 1.5s 1;
	animation: move-up 1.5s 1;


}

@-webkit-keyframes move-up {
	from {
		opacity:0;
		visibility: hidden;

		-webkit-transform: translate3d(0,100px,0);
		transform: translate3d(0,100px,0);
	}
	to {
		opacity:1;
		visibility: visible;

		-webkit-transform: translate3d(0,0,0);
		transform: translate3d(0,0,0);
	}
}
@-moz-keyframes move-up {
	from {
		opacity:0;
		visibility: hidden;

		-webkit-transform: translate3d(0,0,0);
		-moz-transform: translate3d(0,100px,0);
		transform: translate3d(0,100px,0);
	}
	to {
		opacity:1;
		visibility: visible;

		-webkit-transform: translate3d(0,0,0);
		-moz-transform: translate3d(0,0,0);
		transform: translate3d(0,0,0);
	}
}
@-o-keyframes move-up {
	from {
		opacity:0;
		visibility: hidden;

		-webkit-transform: translate3d(0,0,0);
		-o-transform: translate3d(0,100px,0);
		transform: translate3d(0,100px,0);
	}
	to {
		opacity:1;
		visibility: visible;

		-webkit-transform: translate3d(0,0,0);
		-o-transform: translate3d(0,0,0);
		transform: translate3d(0,0,0);
	}
}
@keyframes move-up {
	from {
		opacity:0;
		visibility: hidden;

		-webkit-transform: translate3d(0,100px,0);
		-moz-transform: translate3d(0,100px,0);
		-ms-transform: translate3d(0,100px,0);
		-o-transform: translate3d(0,100px,0);
		transform: translate3d(0,100px,0);
	}
	to {
		opacity:1;
		visibility: visible;

		-webkit-transform: translate3d(0,0,0);
		-moz-transform: translate3d(0,0,0);
		-ms-transform: translate3d(0,0,0);
		-o-transform: translate3d(0,0,0);
		transform: translate3d(0,0,0);
	}
}

.Greybox{background-color:#e5e5e5; padding-top:15px;}

.Greybox_headline{
	background-color:#666666;
	color:#ffffff;
	margin-bottom:15px;
	text-indent:15px;
	line-height:40px;
	vertical-align:middle;
	font-size:24px;
	text-transform:uppercase;
}

.Greybox_headline .textItem p::first-letter{font-size:130%;}

.Greybox_content{
	padding:15px;
}

.trennlinie {
	height: 1px;
	width: 100%;
	border-bottom: 1px solid #ddd;
}
.bildmask{
	-webkit-mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 280' preserveAspectRatio='none'><path fill='white' fill-opacity='0.5' d='M50.7069,16.1584C116.9679-1.8169,230.1415-1.36,296.3994,4.603c48.5064,4.3653,85.2813,9.2677,96.5457,58.945,7.9513,42.814,10.8848,112.8075-.3313,164.0658-2.67,12.2036-13.19,32.6369-50.69,40.5263-69.9054,14.7071-138.4855,13.4-219.9866,8.4974-85.1521-5.122-100.16-39.7084-109.854-69.3284C-3.6271,159.3075-.3723,91.2338,2.0051,72.0454,5.6494,42.6312,21.3422,24.1245,50.7069,16.1584Z'/><path fill='black' d='M349.7775,267.61c-62.8959,16.5017-177.7825,8.1456-242.8292,5.2518-46.9246-2.088-78.4618-5.6945-92.7718-54.2208C1.9947,177.333,1.628,105.2144,12.6068,55.0505c4.307-21.8972,19.0723-40.7914,56.9845-47.7163,68.0963-12.437,142.13-6.8633,210.95.614,79.9362,8.8639,97.1314,43.3474,105.3462,72.7068,12.7734,45.6525,11.2222,123.19,7.831,141.81C390.1005,242.3361,378.1022,261.0027,349.7775,267.61Z'/></svg>");
	mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 280' preserveAspectRatio='none'><path fill='white' fill-opacity='0.5' d='M50.7069,16.1584C116.9679-1.8169,230.1415-1.36,296.3994,4.603c48.5064,4.3653,85.2813,9.2677,96.5457,58.945,7.9513,42.814,10.8848,112.8075-.3313,164.0658-2.67,12.2036-13.19,32.6369-50.69,40.5263-69.9054,14.7071-138.4855,13.4-219.9866,8.4974-85.1521-5.122-100.16-39.7084-109.854-69.3284C-3.6271,159.3075-.3723,91.2338,2.0051,72.0454,5.6494,42.6312,21.3422,24.1245,50.7069,16.1584Z'/><path fill='black' d='M349.7775,267.61c-62.8959,16.5017-177.7825,8.1456-242.8292,5.2518-46.9246-2.088-78.4618-5.6945-92.7718-54.2208C1.9947,177.333,1.628,105.2144,12.6068,55.0505c4.307-21.8972,19.0723-40.7914,56.9845-47.7163,68.0963-12.437,142.13-6.8633,210.95.614,79.9362,8.8639,97.1314,43.3474,105.3462,72.7068,12.7734,45.6525,11.2222,123.19,7.831,141.81C390.1005,242.3361,378.1022,261.0027,349.7775,267.61Z'/></svg>");
	-webkit-mask-size: 100% 100%;
	mask-size: 100% 100%;
	-webkit-mask-repeat: round;
	mask-repeat: round;
	display: inline-block;
	position: relative;
	max-width: 100%;
	vertical-align: middle;
	-webkit-backface-visibility: hidden;
}
.bildlinks {

}

[class*="correktoverlay"] {
	display: inline-block;
	position: relative;
	max-width: 100%;
	vertical-align: middle;
	-webkit-backface-visibility: hidden;
}
.button-blue {
	background-color: #7BA7B9;
	color: #fff !important;
	border: none;
	padding: 12px 24px;

	font-weight: 500;
	transition: all 0.2s ease;
	border-radius: 4px;
}

.button-blue:hover {
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
	transform: translateY(-1px);
	cursor: pointer;
}

.maskebildimtext {
	border-radius:212px;
	border: 2px solid #930f43;
}



/* Balken oder Container drumherum (falls vorhanden) */
/* .quote-banner { text-align:center; }              */

/* Das eigentliche Zitat */
/* ----------------------------------------------------------
   ZITAT – block-level, schrumpft auf Textbreite, zentriert
   ---------------------------------------------------------- */
.zitat {
	/* 1) Breite nur so groß wie nötig  ---------------------- */
	display: block;
	width: fit-content;            /* moderne Browser          */
	width: -moz-fit-content;       /* Firefox < 90             */
	width: -webkit-fit-content;    /* Safari < 15              */

	/* 2) Horizontales Zentrieren → automatische Außenränder  */
	margin: 0 auto;

	/* 3) Platz für das Icon davor                           */
	padding-left: 1.5em;

	/* 4) Deine Typo-Wünsche                                 */
	font-size: 30px;
	text-transform: uppercase;

	/* 5) Mehrzeilige Zitate im eigenen Block zentrieren      */
	text-align: center;

	position: relative;            /* Basis fürs Pseudo-Element */
}

/* ----------------------------------------------------------
   PSEUDO-ICON
   ---------------------------------------------------------- */
.zitat::before {
	content: "\f10e";              /* fa-quote-right            */
	font-family: "Font Awesome 7 Pro";
	font-weight: 900;              /* solid                     */

	position: absolute;
	left: 0;                       /* startet am Padding-Rand   */
	top: 50%;                      /* vertikal mittig           */
	transform: translateY(-50%);   /* exakt zentrieren          */

	line-height: 1;
	font-size: 1em;                /* skaliert mit Text         */
}
/* Gemeinsame Regeln */
.spaltig-2,
.spaltig-3,
.spaltig-4 {
    column-gap: 40px;
    column-fill: balance;   /* NICHT auto */
}

/* Spaltenanzahl je Variante */
.spaltig-2 { column-count: 2; }
.spaltig-3 { column-count: 3; }
.spaltig-4 { column-count: 4; }

/* Wrapper „durchlässig“ machen, damit die Kinder die Spaltenregeln bekommen */
.spaltig-2 .text-styles,
.spaltig-3 .text-styles,
.spaltig-4 .text-styles {
    display: contents;
}

/* Kinder nicht über Spalten umbrechen */
.spaltig-2 .text-styles > *,
.spaltig-3 .text-styles > *,
.spaltig-4 .text-styles > * {
    break-after: avoid-column;
    -webkit-column-break-after: avoid;
    -moz-column-break-after: avoid;
}

/* nur ganze Sektionen zusammenhalten */
.spaltig-2 .text-styles > .sektion,
.spaltig-3 .text-styles > .sektion,
.spaltig-4 .text-styles > .sektion {
    break-inside: avoid;
    -webkit-column-break-inside: avoid;
    -moz-column-break-inside: avoid;
}


.aspect-video {
	position: relative;
	width: 100%;
	height: 100%;
}

.aspect-video::before {
	content: '';
	display: block;
	padding-top: 56.25%; /* für 16:9 – einfach Höhe/Breite * 100 */
}

.aspect-video video {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.pelletdiv label {
	display: block;
}
.pelletdiv label input {
	margin-top:10px;
}
.pelletdiv [class*="col-"] {
	margin: 5px 0 0;
}
.is-invalid {
	boder:1px solid #ff0000;
}


 .flip-btn {
	 position: relative;
	 width: 200px;
	 height: 50px;
	 border: none;
	 padding: 0;
	 background: transparent; /* kein Standard-Button-Hintergrund */
	 perspective: 1000px;
	 cursor: pointer;

	 /* Entfernt das native Aussehen */
	 appearance: none;
	 -webkit-appearance: none;
 }

/* Beide Seiten */
.flip-btn::before,
.flip-btn::after {
	content: attr(data-text);
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 16px;
	font-family: sans-serif;
	font-weight: bold;
	color: #ffffff;
	border-radius: 5px;
	backface-visibility: hidden;
	transition: transform 0.6s ease;
}

/* Vorderseite */
.flip-btn::before {
	background-color: #196972;
	transform: rotateY(0deg);
}

/* Rückseite */
.flip-btn::after {
	background-color: #254081;
	transform: rotateY(180deg);
}

/* Flip bei Hover */
.flip-btn:hover::before {
	transform: rotateY(180deg);
}

.flip-btn:hover::after {
	transform: rotateY(0deg);
}
a.diagonal-btn {
	color:#ffffff;
	text-decoration: none;
}
.diagonal-btn {
	position: relative;
	display: inline-block;
	padding: 12px 24px;
	font-size: 16px;
	font-family: sans-serif;
	font-weight: bold;
	color: #ffffff;
	background-color: #196972;
	border: none;
	border-radius: 5px;
	cursor: pointer;
	overflow: hidden;
	z-index: 1;
}

/* Größeres Overlay, damit ALLE Ecken bedeckt werden */
.diagonal-btn::before {
	content: '';
	position: absolute;
	top: -150%;
	left: -150%;
	width: 400%;
	height: 400%;
	background-color: #254081;
	transform: rotate(45deg) translateX(-100%);
	transition: transform 0.6s ease;
	z-index: -1;
}

/* Diagonal einschieben bei Hover */
.diagonal-btn:hover::before {
	transform: rotate(45deg) translateX(0);
}

#pelletsrechner {
	scroll-margin-top: 250px; /* 80px Abstand nach oben */
}
.abschnitt_linker
{
    scroll-margin-top: 100px;
}
.cssautonew {
	margin-top: 260px;
}

.icon-link a {
    position: relative;
    display: inline-block;
    font-size: 0;
}

.icon-link a::before {
    content: "\f107";
    font-family: "Font Awesome 7 Pro";
    font-weight: 100;
    font-size: 50px;
    line-height: 1;
}
.icon-phone::before {
	font-family: "Font Awesome 7 Pro";
	font-weight: 400; /* 400=Regular, 900=Solid */
	content: "\f095"; /* Telefonhörer */
	display: inline-block;
	margin-right: 0.5em; /* Abstand zwischen Icon und Text */
}
.icon-location::before {
    font-family: "Font Awesome 7 Pro";
    font-weight: 400; /* 400=Regular, 900=Solid */
    content: "\f59f"; /* Location google maps */
    display: inline-block;
    margin-right: 0.5em; /* Abstand zwischen Icon und Text */
}
.icon-web::before {
	font-family: "Font Awesome 7 Pro";
	font-weight: 400; /* 400=Regular, 900=Solid */
	content: "\f0ac"; /* Telefonhörer */
	display: inline-block;
	margin-right: 0.5em; /* Abstand zwischen Icon und Text */
}

.icon-fax::before {
	font-family: "Font Awesome 7 Pro";
	font-weight: 400;
	content: "\f1ac"; /* Fax */
	display: inline-block;
	margin-right: 0.5em;
}

.icon-mail::before {
	font-family: "Font Awesome 7 Pro";
	font-weight: 400;
	content: "\f0e0"; /* Briefumschlag */
	display: inline-block;
	margin-right: 0.5em;
}

.icon-pdf::before {
	font-family: "Font Awesome 7 Pro";
	font-weight: 400; /* 400=Regular, 900=Solid */
	content: "\f1c1"; /* Unicode für PDF/File-PDF */
	display: inline-block;
	width: 1.5em; /* Platz für Icon */
}

.icon-cta::before {
	font-family: "Font Awesome 7 Pro";
	font-weight: 400;             /* Solid-Stil */
	content: "\f061";             /* fa-arrow-right → → */
	display: inline-block;
	margin-right: 0.35em;
	transform: translateY(1px);   /* leicht vertikal zentriert */
	color: inherit;
}

.icon-cta {
	font-weight:400;
	display: inline-block;
}

.icon-external::before {
	font-family: "Font Awesome 7 Pro";
	font-weight: 400;              /* Solid für starken Kontrast */
	content: "\f08e";              /* Externes Link-Symbol */
	display: inline-block;
	margin-right: 0.35em;
	transform: translateY(1px);
	color: inherit;
}
a.socialmedia {
	color:#ffffff;
}
a.socialmedia:hover, a.socialmedia:focus {
	color:#355a7a;
}
.ecke {
	border-radius: 10px 0px 10px 0px;
}
/*
.text-styles p:has(img.ecke) {
	position: relative;

}

.text-styles p:has(img.ecke)::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;

	width: 25%;
	aspect-ratio: 1;

	background-image: url("/img/web/goldeck_plusv2.png");
	background-repeat: no-repeat;
	background-size: contain;
	pointer-events: none;
	border-radius: 10px 0 0 0;
}
*/

.ohmtrenn {
    border: 0 !important;
    height: 150px; /* Ohm-Höhe */
    margin: 0px 0 0 0;
    padding: 0;
    position: relative;
    background-image: url("/img/start/TrennzaunC.png");
    background-repeat: no-repeat;
    background-size: auto 150px;
    background-position: center center;
    opacity:0.5;
}
/*

.ohmtrenn::before {
    content: "";
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: calc(50% + 25px + 20px);
    width: 2px;
    height: 30px;
    background-color: #355a7a;
}

.ohmtrenn::after {
    content: "";
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: calc(50% + 25px + 20px);
    width: 2px;
    height: 30px;
    background-color: #355a7a;
}
*/
.bubble-line {
    border: 0 !important;
    height: 16px; /* entspricht dem Durchmesser der Bubbles */
    margin: 20px 0 0 0;
    padding: 0;

    background-image: radial-gradient(circle, #355a7a 8px, transparent 8px);
    background-repeat: repeat-x;
    background-size: 32px 16px;     /* Bubble 16px + 16px Abstand */
    background-position: 25px center; /* halbe background-size-Breite */
}
.bubble-line-medium {
    border: 0 !important;
    height: 8px;
    margin: 20px 0 0 0;
    padding: 0;
    background-image: radial-gradient(circle, #355a7a 4px, transparent 4px);
    background-repeat: repeat-x;
    background-size: 16px 8px;
    background-position: 12px center;
}

.bubble-line-small {
    border: 0 !important;
    height: 6px;
    margin: 20px 0 0 0;
    padding: 0;

    background-image: radial-gradient(circle, #355a7a 3px, transparent 3px);
    background-repeat: repeat-x;
    background-size: 12px 6px;
    background-position: 1px center;
}

.bubble-line-xs {
    border: 0;
    height: 4px;
    margin: 15px 0 0 0;
    padding: 0;
    background-image: radial-gradient(circle, #355a7a 2px, transparent 2px);
    background-repeat: repeat-x;
    background-size: 8px 4px;
    background-position: 9px center;
}


.line200 {
    line-height: 200%;
}
.oeffnungszeiten td:first-child{
    padding-right:10px;
    white-space:nowrap;

}

.oeffnungszeiten td {
    padding: 4px 0;
    vertical-align: top;
}

@media (max-width: 1200px) {

    .oeffnungszeiten,
    .oeffnungszeiten tbody,
    .oeffnungszeiten tr {
        display: block;
        width: 100%;
    }

    .oeffnungszeiten tr {
        border: 1px solid #ddd;
        padding: 8px;
        margin-bottom: 10px;
        box-sizing: border-box;
    }

    .oeffnungszeiten td {
        display: flex;
        width: 100%;
        padding: 4px 0;
        border: 0;
        box-sizing: border-box;
    }

    .oeffnungszeiten td:first-child {
        font-weight: 700;
        flex: 0 1 auto;
        white-space: normal;
    }

    .oeffnungszeiten td:last-child {
        flex: 1 1 auto;
    }
}

.normabstand {
    margin-top: 170px;
}

.normabstandabschnitt {
    margin-top: 110px;
}
.hrbottom {
    margin-bottom: 15px;
}
.filloc {
    font-size: 0.8em;
}

 .light td {padding-bottom:10px }
.keinumbruch {
    white-space: nowrap;
}
.mittig {
    display: inline-block;
    text-align: center;
}


/*** Seminar ***/
/* Newslist Grundstruktur */

.newslist{
    margin:0;
    padding:0;
    list-style:none;
}

.newslist > li + li{
    margin-top:12px;
}

.newslist > li.new-month{
    margin-top:22px;
    padding-top:14px;
}

/* Monatslabel */

.newslist-month{
    display:inline-block;
    margin:0 0 10px 0;
    padding:0;
    font-family:'Kantumruy Pro', sans-serif;
    font-size:1.15em;
    font-weight:600;
    letter-spacing:0.02em;
}

/* Karte */

.newslist-inner-wrap{
    border-radius:10px;
    border:1px solid rgba(0,0,0,0.08);
    overflow:hidden;
    background:#fafafa;
    transition:background-color 0.15s ease;
}

.newslist-inner-wrap:hover{
    background:#eeeeee;
}

/* Hauptzeile jetzt horizontal */

.newslist-inner-wrap .wrap-inner{
    padding:14px 16px;
}

.newslist-inner-wrap .row.static{
    display:flex;
    align-items:center;
    flex-wrap:nowrap;
    gap:16px;
}

/* Datum */

.newslist-inner-wrap .col-md-2{
    flex:0 0 auto;
}

.newslist-headline{
    font-weight:700;
    white-space:nowrap;
}

/* Textbereich */

.newslist-inner-wrap .col-md-10{
    flex:1 1 auto;
}

h3.newslist-headline{
    margin:0;
    font-size:1.05rem;
    line-height:1.25;
    font-weight:700;
}

.newslist-ort{
    display:inline-block;
    margin-top:4px;
    font-weight:500;
    opacity:0.9;
}

/* Button rechts in gleicher Linie */

.newslist-buttons{
    padding:0 16px 14px 16px;
    display:flex;
    justify-content:flex-end;
}

/* Button exakt auf Höhe der Zeile ziehen */

.newslist-inner-wrap{
    position:relative;
}

.newslist-buttons{
    position:absolute;
    top:50%;
    right:16px;
    transform:translateY(-50%);
    border:0;
}

/* Platzhalter falls kein Button */

.newslist-buttons > div{
    width:143px;
    height:38px;
}

/* Mobile Umbruch */

@media (max-width:991px){
    .newslist-inner-wrap .row.static{
        flex-wrap:wrap;
        align-items:flex-start;
    }

    .newslist-buttons{
        position:static;
        transform:none;
        margin-top:10px;
        padding:0 16px 16px 16px;
    }
}

.artikelname_klein
{
    display: inline-block;
    font-size: 21px;
    text-transform: uppercase;
    font-weight: bold;
    margin: 5px 0 5px 0;
}
.artikelname_gross
{
    display: inline-block;
    font-size: 25px;
    text-transform: uppercase;
    font-weight: bold;
    margin: 5px 0 5px 0;
}
/* Semiarende */
.abstandcarousselunten {
    margin-bottom:120px;
}
.pngoverlay {
    position: absolute; bottom: -95px; z-index: 110;left:35px
}

.hint50 { position: relative; }
.hint50 .text-styles {
	color:#fff;
	text-align: center;
}
.hint50 .text-styles p {
	font-size: 25px;
}
.hint50 h2 {
	font-size: 47px;
	margin-bottom: 30px;
	text-transform: uppercase;
	color:#d3975a;
}
.hint50 > .col-12{
	padding:clamp(16px,4vw,80px);
}
.hint50-footer {
	position:absolute;
	bottom:10px;
	left: 50%;
	transform: translateX(-50%);
}
.instalogo {
	width: 100%;
}
.insta {
	position: absolute;
	right: 0;
	top:-51px;
	width: 28px;
}
b, strong {
	font-weight:500;
}
figcaption {
	font-size: 15px;
	text-align: right;
	font-style: italic;
}
.text-styles img {
	border-radius: 12px;
}
