:root {
	--fontP: 'Open Sans', Helvetica, Arial, sans;
	--fontH: 'Open Sans', Helvetica, Arial, sans;
	--colFont: #2d2d2b;
	--colHigh1: #f08057;
	--colHigh2: #f08057;
	--colHigh3: #f08057;
	--colHigh4: #f08057;
	--spacer: 1.5rem;
	--radius: .3rem;
	--navPadding: .6rem; /* Logo und UL */
	--layoutWidth: 840px;
}

@font-face { font-family: 'Open Sans'; font-style: normal; font-weight: 400; src: url('../assets/fonts/open-sans-v29-latin-regular.eot'); src: local(''), url('../assets/fonts/open-sans-v29-latin-regular.eot?#iefix') format('embedded-opentype'), url('../assets/fonts/open-sans-v29-latin-regular.woff2') format('woff2'), url('../assets/fonts/open-sans-v29-latin-regular.woff') format('woff'), url('../assets/fonts/open-sans-v29-latin-regular.ttf') format('truetype'), url('../assets/fonts/open-sans-v29-latin-regular.svg#OpenSans') format('svg'); font-display: swap }
@font-face { font-family: 'Open Sans'; font-style: normal; font-weight: 600; src: url('../assets/fonts/open-sans-v29-latin-600.eot'); src: local(''), url('../assets/fonts/open-sans-v29-latin-600.eot?#iefix') format('embedded-opentype'), url('../assets/fonts/open-sans-v29-latin-600.woff2') format('woff2'), url('../assets/fonts/open-sans-v29-latin-600.woff') format('woff'), url('../assets/fonts/open-sans-v29-latin-600.ttf') format('truetype'), url('../assets/fonts/open-sans-v29-latin-600.svg#OpenSans') format('svg'); font-display: swap}
@font-face { font-family: 'Open Sans'; font-style: normal; font-weight: 700; src: url('../assets/fonts/open-sans-v29-latin-700.eot'); src: local(''), url('../assets/fonts/open-sans-v29-latin-700.eot?#iefix') format('embedded-opentype'), url('../assets/fonts/open-sans-v29-latin-700.woff2') format('woff2'), url('../assets/fonts/open-sans-v29-latin-700.woff') format('woff'), url('../assets/fonts/open-sans-v29-latin-700.ttf') format('truetype'), url('../assets/fonts/open-sans-v29-latin-700.svg#OpenSans') format('svg'); font-display: swap}
@font-face { font-family: 'Open Sans'; font-style: italic; font-weight: 400; src: url('../assets/fonts/open-sans-v29-latin-italic.eot'); src: local(''), url('../assets/fonts/open-sans-v29-latin-italic.eot?#iefix') format('embedded-opentype'), url('../assets/fonts/open-sans-v29-latin-italic.woff2') format('woff2'), url('../assets/fonts/open-sans-v29-latin-italic.woff') format('woff'), url('../assets/fonts/open-sans-v29-latin-italic.ttf') format('truetype'), url('../assets/fonts/open-sans-v29-latin-italic.svg#OpenSans') format('svg'); font-display: swap}

/* Frameworks Overrides */
figure { margin: 0; }
.row { max-width: var(--layoutWidth); }
.reveal { color: #000; width: var(--layoutWidth); max-width: 90%; }
.reveal-overlay { z-index:12 }
.fa-external-link  { transform: scale(.7667) }
.fa-mobile  { transform: scale(1.4667) }
.slick-dots { bottom: 30px; }
.slick-dots li button::before, .slick-dots li.slick-active button::before { color: #fff; }
.slick-prev::before, .slick-next::before { color: #000}
/**/

body { font-family: var(--fontP); color: var(--colFont); background: #fff }
h1, h2, h3, h4, h5, h6  { font-family: var(--fontH); color: var(--colHigh1); font-weight: 700; text-transform: uppercase; letter-spacing: -.035em; }
h1 { font-size: 2.1rem; margin-bottom: .6rem;  }
h2 { font-size: 1.5rem; color: var(--colFont); }
h3 { margin-bottom: 1.2rem; }
h4, h5, h6 { font-family: var(--fontP); }
h4, h5 { font-size: 1.5rem; font-weight: 700; letter-spacing: -.025em;  }
h4 { color: var(--colHigh1); }
h5 { color: #000; }
h4 + h5 { margin-top: -.9rem; }
h6 { font-size: 700; font-size: 1.2rem; text-transform: uppercase; }

p { text-rendering: auto; }
#content ul, #content ol { margin-left: 1.14667rem; }

hr.left { margin-left: 0; }
hr.full { max-width:100%; }

section a { color: var(--colHigh1); }
section a:hover, section a:focus { color: #000; }

img { max-width: 100%; height: auto; }
section a img:hover, section a img:focus { filter:brightness(1.05) }

address { font-style: normal; }
figure figcaption { background: #ddd; padding: .6rem .9rem}

main section p { -webkit-hyphens: auto; hyphens: auto; text-align: justify !important }

/*****/

ul.inline { padding: 0; margin: 0 0 1.8rem; list-style-type: none; }
ul.inline li { display: inline; padding-right: .45rem; }
ul.inline li::before { content: '•'; margin-right: .45rem; color: var(--colHigh2); font-weight: 700; font-size: 2rem; line-height:1; position: relative; top: .35rem; }

ul.icons { list-style-type: none; }
ul.icons li { position: relative; padding-left: 1rem; margin-bottom: .45rem; }
ul.icons li::before { font-family: 'FontAwesome'; color: var(--colHigh1); position: absolute; left: -1rem; top: .15rem}
ul.icons-square li::before { content: "\f0c8"; font-size: .9rem; }
ul.icons-check li::before { content: '\f00c'; font-size: 1.5rem; left: -1.25rem; top: -.3667rem }
ul.icons-chevron li::before { content: "\f138"; top: 0rem }

#content ul.tabs { margin: 0;  }
#content ul.tabs li { border-right: 1px #ccc solid; }
#content ul.tabs li a { font-size: .875rem; text-transform: uppercase; }

.infobox { padding: 1.5rem; margin-bottom: 2.1rem; }
.infobox p:last-child { margin-bottom: 0 }
.infobox1 { background: #eee; }
.infobox2 { background: #f9f0e9; }

.uebersicht1 { margin-bottom: 1.8rem }
.uebersicht1 tbody { background: transparent; border: 0; }
.uebersicht1 tbody tr:nth-child(2n) { background: transparent; }
.uebersicht1 tbody tr td { border-bottom: 1px #ccc solid; }
.uebersicht1 tbody tr:hover td, .uebersicht1 tbody tr:focus td { background: rgba(0,0,0,.05) }
.uebersicht1 tbody tr.active { color: var(--colHigh1); font-weight: bold }

.galerie img { width: 100%; border: 1px #ccc solid; }

.form1 { padding: var(--spacer); max-width: 600px; background: #ccc; background: rgba(150,150,150,.35); border-radius: 3px }
.form1 .field { display: block; }
.form1 .field.fICQ, .form1 .field.fWebsite, .form1 .field.fEmail, .form1 .field.message { display: none; }
.form1 input, .form1 textarea { font-family: var(--fontP); font-size: 1rem; width: 90%; border: 1px var(--colFont) solid; padding: 3px; -moz-border-radius: 3px;  -webkit-border-radius: 3px; border-radius: 3px; }
.form1 input:focus, .form1 textarea:focus { -webkit-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.35); -moz-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.35); box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.35);}
.form1 input[type=submit], .form1 button.submit { padding: 6px; width: 90%; background: var(--colHigh4) !important; color: #fff !important; font-weight: bold; cursor: pointer; }
.form1 input[type=submit]:hover, .form1 input[type=submit]:focus, .form1 button.submit:hover, .form1 button.submit:focus { background: var(--colHigh2) !important; }
input#datenschutz, input#datenschutz + label { display: inline; }

.anfahrt { position: relative; }
.anfahrt picture, .anfahrt img { width:100%; height: auto; }
.anfahrt img:hover, .anfahrt img:focus { filter: none; }
.anfahrt .osm { position: absolute; bottom: 0px; left: 0px; padding: .6rem .9rem; background: #fff; color: #aaa; background: rgba(0,0,0,.6); font-size: .7rem; font-weight: bold }
.anfahrt .osm a { color: #ccc }
.anfahrt .maplink { position: absolute; bottom: 15px; right: 45px }
.anfahrt .maplink a { background: darkgoldenrod }
.anfahrt .maplink a:hover, .anfahrt .maplink a:focus { background: var(--colHigh1) }

/*****/

.naviBG { background: #2d2d2b; padding: 1.5rem; color: #696969; text-transform: uppercase; font-size: .8rem; font-weight: 600 }
.naviBG a { color: #898989; transition: .2s all }
.naviBG a:is(:hover,:focus) { color: #eee }
nav.naviMain { max-width: var(--layoutWidth); margin: 0 auto; padding-left: .9375rem; padding-right: .9375rem; display: flex; flex-direction: row; align-items: center; }
nav.naviMain .naviLinks { margin-left: auto; }
.naviLogo img { max-width: 250px; }

/*****/

.themtopics { display: grid; position: relative; grid-template-columns: 1fr 1fr; gap: 2rem; margin: 2rem 0; }
.themtopics .power { position: absolute; top: 50%; left: 49.8%; transform: translateX(-50%) translateY(-50%) rotate(-1deg); transition: .25s all ease-in-out; -webkit-filter: grayscale(1); filter: grayscale(1); max-width: 25vw;  }
.themtopics .power.color {-webkit-filter: grayscale(0); filter: grayscale(0);  }
.themtopics .item img  { opacity: .65; transition: .25s all }
.themtopics .item img:is(:hover,:focus)  { opacity: 1; -webkit-filter: brightness(1.15) saturate(2); filter: brightness(1.15) saturate(2); transform: scale(1.025); }

.thembuttons { display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; margin: 2rem 0; }
.thembuttons a { display: block; background: var(--colHigh1); color: #fff; font-weight: 700; text-transform: uppercase; text-align: center; padding: 1rem; transition: .2s all }
.thembuttons a:is(:hover,:focus) { color: #fff; background-color: #d4653d }

.contacts { line-height: 2.1rem; }

/*****/

.bottomlinks img { -webkit-filter: grayscale(1); filter: grayscale(1); transition: .1s all ease-in }
.bottomlinks img:is(:hover,:focus) { -webkit-filter: contast(1); filter: contrast(1); transform: scale(1.05); }

footer  { background: var(--colHigh1); color: #fff; position: relative; text-align: center }
footer .copyline { text-transform: uppercase; padding: .6rem; font-size: .8rem; color: #fff }
footer p { font-size: 1.1rem; line-height: 1.7667rem }
footer a { color: #fff; }
footer a:is(:hover,:focus) { color: #000 }

footer .arrow-up { display: inline-block; position: relative; top: -1rem; }
footer .arrow-up a { background: #444; color: var(--colHigh1); display: block; padding: .6rem; transition: .2s all; }
footer .arrow-up a:is(:hover,:focus) { background: #000; color: #fff; }

footer .socials { margin: 1.5rem auto; }
footer .socials .item { display: inline-block; border: 1px #fff solid; border-radius: 50%; margin: 0 .5rem; transition: .2s all }
footer .socials .item:is(:hover,:focus) { border-color: #fff; }
footer .socials .item a { display: block; width: 3rem; padding: .75rem 1rem; border-radius: 50%; transition: .2s all }
footer .socials .item a:is(:hover,:focus) { color: #fff; background-color: #ddd; background-color: rgba(255,255,255,.25) }

/*****/

.button { text-transform: uppercase; background-color: var(--colHigh1); color: fff; transition: all .1s; border-radius:0; }
.button:is(:hover, :active, :focus) { background-color: var(--colHigh2); box-shadow: 0 0 9px rgba(0,0,0,.25) }
.button.contra { background-color: #fff; color: #000 }
.button.contra:is(:hover, :active, :focus) { background-color: var(--colHigh2); color: #fff }
.button.cta1 i { margin-right: .6rem; }

.kontaktNummern i { width: 1em; }
.legal i { width: 1.2em; }
.legal h2 { font-family: var(--fontH); color: #333; font-size: 1.25rem; text-transform: none; margin: 3rem 0 2.4rem; }
.legal h3 { font-size: 1.5rem; }
.legal h4 { font-size: 1.1rem; }

.annotations { background: maroon; color: #fff; }
.annotations p { font-size: 1.1667rem }

/*****/

.floatbreaker { clear: both; }
.rahmen1 { border: 1px #e8e8e8 solid;}
.rahmen2 { border: 1px #777 solid;}

.padme { padding: 6rem 0; }
#sec1.padme, .carelevel .padme { padding: 3rem 0; }
.padding-bottom-0, .carelevel .padding-bottom-0 { padding-bottom: 0; }
.fullHeight { min-height: 100vh; }

.margin-top-0 { margin-top: 0 !important }
.margin-top-s { margin-top: var(--spacer) !important }
.margin-top-m { margin-top: calc(var(--spacer)*2) !important }
.margin-top-l { margin-top: calc(var(--spacer)*3) !important }
.margin-top-xl { margin-top: calc(var(--spacer)*4) !important }
.margin-top-xxl { margin-top: calc(var(--spacer)*6) !important }
.margin-bottom-0 { margin-bottom: 0 !important }
.margin-bottom-s { margin-bottom: var(--spacer) !important }
.margin-bottom-m { margin-bottom: calc(var(--spacer)*2) !important }
.margin-bottom-l { margin-bottom: calc(var(--spacer)*3) !important }
.margin-bottom-xl { margin-bottom: calc(var(--spacer)*4) !important }
.margin-bottom-xxl { margin-bottom: calc(var(--spacer)*6) !important }
.padding-top-0 { padding-top: 0 !important }
.padding-top-s { padding-top: var(--spacer) !important }
.padding-top-m { padding-top: calc(var(--spacer)*2) !important }
.padding-top-l { padding-top: calc(var(--spacer)*3) !important }
.padding-top-xl { padding-top: calc(var(--spacer)*4) !important }
.padding-bottom-0 { padding-bottom: 0 !important }
.padding-bottom-s { padding-bottom: var(--spacer) !important }
.padding-bottom-m { padding-bottom: calc(var(--spacer)*2) !important }
.padding-bottom-l { padding-bottom: calc(var(--spacer)*3) !important }
.padding-bottom-xl { padding-bottom: calc(var(--spacer)*4) !important }

.grid { display: grid; }
.grid-gap-1 { gap: 1rem; }
.grid-gap-2 { gap: 2rem; }
.grid-gap-3 { gap: 3rem; }
.grid-2  { grid-template-columns: 1fr 1fr }
.grid-3  { grid-template-columns: repeat(3,1fr) }
.grid-4  { grid-template-columns: repeat(4,1fr) }
.grid-5  { grid-template-columns: repeat(5,1fr) }
.grid-6  { grid-template-columns: repeat(6,1fr) }
.grid-7  { grid-template-columns: repeat(7,1fr) }
.grid-8  { grid-template-columns: repeat(8,1fr) }
.grid-9  { grid-template-columns: repeat(9,1fr) }
.grid-10  { grid-template-columns: repeat(10,1fr) }
.grid-11 { grid-template-columns: repeat(11,1fr) }
.grid-12  { grid-template-columns: repeat(12,1fr) }

.float_right { float: right; margin: 0 0 1rem 1rem; }
.float_left { float: left; margin: 0 1rem 1rem 0; }
.w10 { width: 10%; }
.w20 { width: 20%; }
.w25 { width: 30%; }
.w30 { width: 25%; }
.w40 { width: 40%; }
.w50 { width: 50%; }
.w60 { width: 60%; }
.w70 { width: 70%; }
.w75 { width: 75%; }
.w80 { width: 80%; }
.w90 { width: 90%; }

.text-size-s { font-size: 70%; }
.text-uppercase { text-transform: uppercase; }

.spaceme { margin: 3rem auto; }
.centerme { text-align: center; }
.hyphens { -webkit-hyphens: auto; -moz-hyphens: auto; hyphens: auto; }
.nowrap { width: 100%;  white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.expanded { width: 100% }

/*****/

@-webkit-keyframes fadeInBurst {
    0% { filter: saturate(500%) blur(5px) brightness(300%) sepia(100%); opacity: 0; }
	/*0% { filter: brightness(300%) sepia(100%); }*/
    100% { filter: none; opacity: 1 }
}
@-webkit-keyframes fadeIn {
    0% { opacity: 0; }
    100% { opacity: 1 }
}
@-webkit-keyframes animSlideInTop {
    0% { opacity: 0; transform: translateY(-30px); }
    100% { opacity: 1; transform: translateY(0px); }
}
@-webkit-keyframes animSlideInBottom {
    0% { opacity: 0; transform: translateY(30px); }
    100% { opacity: 1; transform: translateY(0px); }
}

.animOpacity { opacity: 0; }
.animOpacity.inVP { -webkit-animation: fadeIn .5s; -webkit-animation-fill-mode: both; }

.animSlideInTop { opacity: 0; transform: translateY(-30px); }
.animSlideInTop.inVP { -webkit-animation: animSlideInTop .5s ease-out; -webkit-animation-fill-mode: both; }

.animSlideInBottom { opacity: 0; transform: translateY(30px); }
.animSlideInBottom.inVP { -webkit-animation: animSlideInBottom .5s ease-out; -webkit-animation-fill-mode: both; }

.fadeInBurst { -webkit-animation: fadeIn .75s; -webkit-animation-fill-mode: both; }

html.no-js .anim { opacity: 1; transform: none; }
 
/***/
.mobile-only { display: none !important; }
@media screen and (min-width: 1920px)
{
	.row { max-width: var(--layoutWidth); }
}

@media screen and (max-width: 1024px) /* Foundation Medium */
{	
	p, section ul li, .reveal ul li, .annotations p { font-size: 1rem; }	
	
	.grid-3, .grid-5, .grid-6, .grid-6  { grid-template-columns: 1fr 1fr 1fr}
	.grid-7, .grid-8, .grid-9, .grid-10, .grid-11, .grid-12  { grid-template-columns: 1fr 1fr 1fr 1fr }
	.grid-gap-2, .grid-gap-3 { gap: 1rem; }
	
	footer p, footer ul { font-size: 1rem; }
}


@media screen and (max-width: 840px) /* Layout Width */
{
	/*nav.naviMain { padding-left: 0; padding-right: 0; }*/
}

@media screen and (max-width: 800px)
{
	.button { font-size: 1rem; }
	#content ul.tabs li a { font-size: .76667rem; }
}

@media screen and (max-width: 640px) /* Foundation Small */
{	
	.mobile-only { display: block !important; }
	.mobile-no { display: none; }
	
	.form1 { margin-bottom: 6rem;  }
		
	.reveal { max-width: 99%; }
	
	.grid { grid-template-columns: 1fr 1fr }
	.features.grid { grid-template-columns: 1fr }
	
	h1 { -webkit-hyphens: auto; hyphens: auto; }
}

@media screen and (max-width: 540px)
{
	.naviLinks span { display: none; }
	.naviLinks a { display: block; text-align: right; }
	.naviLogo img { max-width: 50vw; }
}

@media screen and (max-width: 520px), (orientation: portrait)
{
	#content { padding-left: 0 }
}

@media screen and (max-width: 420px)
{
	#content ul.tabs li, #content ul.tabs li a { display:block; width: 100% }
	
	.themtopics, .thembuttons { grid-template-columns: 1fr }
	.themtopics .item img  { opacity: 1; }
	.themtopics .power  { display: none; }
	
}

@media screen and (max-width: 360px)
{
	.grid { grid-template-columns: 1fr}
}

@media (prefers-color-scheme: dark) {
	body { background: #111; color: #ddd }
	h1, h2, h3, h4, h5, h6 { color: var(--colHigh1) }
	p, ol, ul { color: #ddd }
section a:hover, section a:focus { color : #fff; }
	footer .arrow-up a:is(:hover,:focus) { background: #ddd; color: #000; }
	.infobox1 { background: #333; }
	.button:is(:hover, :active, :focus) { box-shadow: 0 0 9px rgba(255,255,255,.5) }
	.slick-prev::before, .slick-next::before { color: #fff}
}

@media print
{
	a::after,
	footer .arrow-up a,
	footer .socials
	{ display: none; }
	
}