@font-face {  font-display: swap;   font-family: 'Roboto';  font-style: normal;  font-weight: 400;  src: url('../fonts/roboto-v30-latin-regular.woff2') format('woff2'), url('../fonts/roboto-v30-latin-regular.ttf') format('truetype'); }
@font-face {  font-display: swap;   font-family: 'Roboto';  font-style: normal;  font-weight: 700;  src: url('../fonts/roboto-v30-latin-700.woff2') format('woff2'), url('../fonts/roboto-v30-latin-700.ttf') format('truetype'); }

:root {
 --akzent:39,174,96;
 --akzent2:0,125,60;
 --schwarz:0,0,0;
 --weiss:255,255,255;
 --grau:238,238,238;
 --grau2:233,233,233;
 --bg:255,255,255;
}

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend,table, caption, tbody, tfoot, thead, tr, th, td,article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary,time, mark, audio, video {margin: 0; padding: 0; border: 0; outline: 0; font-weight: inherit; font-style: inherit;font-size: 100%; font-family: inherit; vertical-align: baseline; }
html, body, input, select, textarea, button{ font-family: "Roboto"; font-size:17px; color:rgb(var( --schwarz)); background:rgb(var( --weiss)); }
html, body{ background:rgb(var( --weiss)); line-height: 1.5; }
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }
ol, ul { list-style: none; }
blockquote, q { quotes: none; }
blockquote:before, blockquote::after, q:before, q::after { content: ''; content: none; }
table { border-collapse: collapse; border-spacing: 0; }
b,strong,.bold { font-weight:bold; }
i{font-style:italic; }
.linethrough{ text-decoration: line-through; }
body{ }
img{ max-width:100%; }
video{ max-width:100%; }
.nobr{ white-space: nowrap; }
a{ text-decoration:none; color:rgb(var( --akzent)); }
.tacenter{text-align:center !important;}
.taleft{text-align:justify !important;}
.tajust{text-align:justify !important;}
.taright{text-align:right !important;}
.clear{ clear:both; }
.cpointer{ cursor:pointer; }
.fcenter{ align-items: center !important; }
.nov{ display:none; }
.fullwidth{ max-width:1440px; margin:auto; }

#header2{ position: fixed; width:100%; top: 0; z-index:2000; background: rgb(222,22,222,.85); background: linear-gradient(90deg, rgba(188,188,188,.85) 0%, rgba(244,244,244,.85) 100%); transition: background ease .2s;}
#header2 .fullwidth{ padding:0 2em; box-sizing: border-box; }
#header2 #logo{ width:14em; height:8.4em; margin:1em; display: inline-block; vertical-align:bottom; transition: width ease .2s, height ease .2s; overflow:hidden; }
#header2 .right{ float:right; margin:1em; text-align:right; }
#header2 .tel{ font-size:1.35em; font-weight:bold; border:1px solid rgb(var(--schwarz)); border-radius:.2em; padding:.35em .7em; display:inline-block; color:rgb(var(--schwarz)); transition: padding ease .2s; }
#header2 #dtmenu{ display: block; vertical-align:bottom; font-size:1.35em; font-weight:bold; margin-top:2em; transition: margin ease .2s; }
#header2 #dtmenu ul{ white-space: nowrap; }
#header2 #dtmenu li{ display:inline-block; position:relative;  }
#header2 #dtmenu a, #header2 #dtmenu .a { padding: .5em 1em; display: inline-block; white-space: nowrap; transition: padding ease .2s; color:rgb(var(--schwarz)); cursor:pointer; }
#header2 #dtmenu form{ display:block; padding: .5em 1em; position:relative; }
#header2 #dtmenu form input[type="text"]{ border:1px solid #aaa; border-radius:.2em; padding:.4em 2em .4em .4em; display:block; width: calc(100% - 2.4em - 2px); }
#header2 #dtmenu form input[type="image"]{ position:absolute; width:1.2em; right: 1.7em; top: 1.1em; }
#header2 #dtmenu a:hover{ text-decoration:underline; }
#header2 #dtmenu .submenu{ text-align:left;position:absolute; background:rgba(var(--weiss),.9); backdrop-filter:blur(3px); padding:0em 1em; max-height:0; overflow:hidden; transition: max-height ease .3s, padding ease .3s; z-index:1000; font-size:.8em; }
#header2 #dtmenu .submenu a{ display:block !important; color:rgb(var(--schwarz)); font-weight: normal;  }
#header2 #dtmenu li:hover .submenu{ padding:.5em 1em; max-height:100vh; }
#header2.scroll { background: rgb(222,222,222,1); background: linear-gradient(90deg, rgba(189,189,189,1) 0%, rgba(240,240,240,1) 100%); }
#header2.scroll #logo{ width:10em; height:5.2em; }
#header2.scroll .tel{ padding:.25em .7em; }
#header2.scroll  #dtmenu{ margin-top:0; }
.hspace{ height:11.2em; }

.kbutton{ text-align:center; }
.kbutton a{ display:inline-block; color:rgb(var(--weiss)); background:rgb(var(--akzent)); text-align:center; padding:.7em 1.2em; margin:1em; transition: all ease .5s; border-radius:.2em; }
.kbutton a:hover{ background:rgb(var(--akzent2)); }

.headerimg { width:100%; aspect-ratio:2.4; display:block; }
.headerimg img{ width:100%; object-fit: cover; aspect-ratio:2.4; display:block; position:absolute; }
.headerimg .flex{ position: relative; display: flex; align-items: center; justify-content: center; height:100%; width:100%; }
.headerimg .txt{ color:rgb(var(--schwarz)); width:66%; padding-left:45%; padding-right:2em; line-height:1.5em; text-align:center; margin-top:12em; }
.headerimg h1{ color:rgb(var(--schwarz)); font-size:2.4em; line-height:1.2em; margin-bottom:.3em; font-weight:normal; }
.headerimg a{ display:inline-block; background:rgb(var(--akzent)); color:rgb(var(--weiss)); padding:.6em 1.2em; margin-top:1em; font-size:1.2em; border-radius:.2em; }

.headerimg2{ width:100%; aspect-ratio:2.5; display:block; }
.headerimg2 img{ width:100%; object-fit: cover; aspect-ratio:2.5; display:block; position:absolute; }

.text .fullwidth{ background:rgb(var(--weiss)); padding:3em 2em; box-sizing: border-box; }

h1{ color:rgb(var(--schwarz)); font-size:1.8em; font-weight:700; }
h2{ font-size:1.4em; font-weight:700; }

.p80{ width:80%; margin:auto; }

.bggray, .bggray .fullwidth{ background:rgb(var( --grau)); }

.pag{ display:block; text-align:center; }
.pag a, .pag .a{ display: inline-block; background: rgb(var(--akzent)); color: rgb(var(--weiss)); padding: 0.6em 1.2em; margin: 1em; border-radius:.2em; }
.pag .a{ opacity:.1; }
.pag a:hover{ background:rgb(var(--akzent2)); }

.subcatselect{ width: calc(100% - 1em - 2px); background: #efefef; padding: .5em; border: 1px solid #ddd; border-radius: .2em; margin: .5em 0; }

footer{ background: rgb(55,55,55,1); background: linear-gradient(90deg, rgba(55,55,55,1) 0%, rgba(100,100,100,1) 100%); }
footer .fullwidth{ display:flex; padding:2em; box-sizing: border-box; flex-wrap: wrap; }
footer .fullwidth .third{ color:rgb(var(--weiss)); width:31.3%; padding:1%; }
footer .fullwidth .third:nth-child(1){ flex-grow:.33; }
footer .fullwidth .third:nth-child(2){ flex-grow:.33; }
footer .fullwidth .third:nth-child(3){ flex-grow:.33; }
footer h2{ font-size:1.4em; color:rgb(var(--weiss)); }
footer a{ color:rgb(var(--weiss)); }
footer a:hover{ text-decoration:underline; }
footer .logo{ width: 8em; filter: invert(1); }
footer hr{ width: 100%; }

.menuL{ width:20em; float:left; width: 17em; float: left; margin: .5em; padding: .5em;  }
.menuL h2{ font-size:1em; }
.menuL .menuLI{ position: relative; padding:0 0 0 1.2em; cursor:pointer; display: block; color:#000; }
.menuL span.block{ display:inline-block; width:.7em; aspect-ratio:1; border:1px solid rgba(0,0,0,.2); position: absolute; top: .3em; left:0; }
.menuL span.blockon{ border:1px solid rgba(var(--akzent),.8); background: rgba(var(--akzent),.2) }
.menuL span.blockon:after{ content: " "; border: 2px solid rgba(var(--akzent), 1); transform: rotate(32deg); border-top: 0; border-left: 0; position: absolute; width: .2em; height: .4em; left: 0.2em; top: .02em; }
.menuL .pad{ padding:0 0 0 .8em; }
.menuL  .padnov{ display:none; }
.menuLSwitch{ display:none; }
.artikelR{ width:calc(100% - 20em); float:right; }

.inserat{ display:inline-block; color:rgb(var(--schwarz)); transition: all ease .5s; background: rgb(var(--grau)); box-shadow: 0 0.1em 0.5em rgba(var(--schwarz),.1); text-align:center; vertical-align:top; width: calc(33.3% - 1em - 2px); margin: .5em; }
.inserat:hover{ box-shadow: 0 0.1em 0.8em rgba(var(--schwarz),.3); }
.inserat .img{ display:block; aspect-ratio:1.6; width:calc(100% - 2em); margin:1em; box-shadow: 0 0.1em 0.5em rgba(var(--schwarz),.1); text-align:center; overflow:hidden; }
.inserat .img img{ display:block; object-fit: cover; aspect-ratio:1.6; width:100%; height:100%; transition: all ease .5s; }
.inserat:hover .img img{ transform:scale(1.1); }
.inserat .title{ font-weight:bold; margin:.8em; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; height: 2.6em; }
.inserat .zustand{ margin:.4em; }
.inserat .preis{ margin:.4em; }
.inserat .preis2{ margin:.4em; }
.inserat .button1{ color:rgb(var(--weiss)); background:rgb(var(--akzent)); text-align:center; padding:.7em 1.2em; margin:1em; transition: all ease .5s; border-radius:.2em; }
.inserat:hover .button1{ background:rgb(var(--akzent2)); }

.button1{ display: inline-block; background: rgb(var(--akzent)); color: rgb(var(--weiss)); padding: 0.6em 1.2em; margin-top: 1em; }
.button1:hover{ background:rgb(var(--akzent2)); }

.text p{ margin-bottom:.8em; }

.map{ width: 100%; aspect-ratio: 3.6; }
.map iframe{ width:100%; height:100%; border:0; display:block; }

.offer{ display:flex; }

.galleryprvcontainer{ width:35%; }
.gallerycontainer{ width:calc(100% - .4em); aspect-ratio:1; display:block; margin:.2em; box-shadow: 0 0.1em 0.5em rgba(var(--schwarz),.1); position:relative; background:rgb(var(--weiss)); }
.gallery{ display:block; white-space: nowrap; overflow: auto; -ms-overflow-style: none; scrollbar-width: none; scroll-snap-type: x mandatory; overflow-y: hidden; width: 100%; height: 100%; position:relative; }
.galleryfs{ position: fixed; background: rgb(var(--weiss)); width: 100%; height: 100vh; top: 0; left: 0; z-index: 9999; }
.gallery::-webkit-scrollbar { display: none; }
.gallery .galleryitem{ width:calc(100% - 2em); height:calc(100% - 2em); padding:1em; display:inline-block; scroll-snap-align: start; }
.gallery .galleryitem img{ width:100%; height:100%; aspect-ratio:1; display:block; object-fit: contain; }
.gallery .galleryitem iframe{ width:100%; height:100%; aspect-ratio:1; display:block; object-fit: contain; }
.gallerycontainer .prv{ position:absolute; top:calc(50% - 1em); left:.5em; z-index: 1100; background:rgb(var(--akzent)); padding:.5em .6em .5em .8em; cursor:pointer; border-radius: 2em; text-align: center; width: 1.2em; opacity: .7; transition: opacity ease .2s; }
.gallerycontainer .nxt{ position:absolute; top:calc(50% - 1em); right:.5em; z-index: 1100; background:rgb(var(--akzent)); padding:.5em .8em .5em .6em; cursor:pointer; border-radius: 2em; text-align: center; width: 1.2em; opacity: .7; transition: opacity ease .2s; }
.gallerycontainer .prv:hover, .gallerycontainer .nxt:hover{ opacity: 1; }
.gallerycontainer .prv.fs{ position:fixed; z-index:11000;}
.gallerycontainer .nxt.fs{ position:fixed; z-index:11000;}

.prvcontainer{ width:100%; display:block; white-space: nowrap; overflow: auto; -ms-overflow-style: none; scrollbar-width: none; scroll-snap-type: x mandatory; overflow-y: hidden; }
.prvcontainer::-webkit-scrollbar { display: none; }
.prvitem{ width:calc(12.5% - .4em); margin:.2em; display:inline-block; box-shadow: 0 0.1em 0.5em rgba(var(--schwarz),.1); scroll-snap-align: start; background:rgb(var(--weiss)); }
.prvitem img, .prvitem svg{ width:100%; height:100%; aspect-ratio:1; display:block; object-fit: contain; cursor:pointer; transition: opacity ease .2s; }
.prvitem svg{ fill:rgb(var(--akzent)); width:70%; height:70%; margin:15%; }
.prvitem.selected img{ opacity:.5 }

.arrow{ border: solid rgb(var(--weiss)); border-width: 0 .2em .2em 0; display: inline-block; padding: .2em; }
.arrow.right{ transform: rotate(-45deg); -webkit-transform: rotate(-45deg); }
.arrow.left{ transform: rotate(135deg); -webkit-transform: rotate(135deg); }

.description{ width:calc(63%); margin-left:2%; }
.description .preis{ padding:1em 0; font-size:1.2em; font-weight:bold; }
.description .preis2{ padding:1em 0; font-weight:bold; }

.formtable .h1{ font-size:1.2em; font-weight:700; }
.formtable .block{ width:100%;border:1px solid rgb(var(--grau2)); border-left:0; border-top:0; box-shadow: 0 0.1em 0.5em rgba(var(--schwarz),.1); }
.formtable .feld{ border: 1px solid rgb(var(--grau2)); border-right:0; border-bottom:0; display:inline-block; float:left; }
.formtable .feldE{ line-height:1.2em; font-size:.9em; }
.formtable .feldw50{ width:calc(50% - 1px); }
.formtable .feldw100{ width:calc(100% - 1px); }
.formtable .feldh10{ height:10em; }
.formtable .feld input{ width:100%; padding:.5em; box-sizing: border-box; border:0; background:rgb(var(--weiss)); }
.formtable .feld textarea{ width:100%; height:100%; padding:.5em; box-sizing: border-box; border:0; background:rgb(var(--weiss)); }
.formtable .feld input:focus,.formtable .feld textarea:focus{ outline:none; }
.formtable .button{ cursor:pointer; background:rgb(var(--akzent)); color:rgb(var(--weiss)); font-size:.1.2em; padding: 0.6em 1.2em; border:0; margin:auto; display:inline-block; }

.mobilenav, .mobilebtn{ display:none; }

.minheight{ min-height:60vh; }

@media only screen and (min-width:1201px) {
	.noshowmobile{ display:unset; }
	.showmobile{ display:none !important; }
}

@media only screen and (max-width:1200px) {
	.noshowmobile{ display:none !important; }
	.showmobile{ display:unset; }
	.menuL{ width:20em; float:left; width: 17em; float: left; margin: .5em; background: rgb(var(--grau)); padding: .5em; box-shadow: 0 0.1em 0.5em rgba(var(--schwarz),.1); display:none; }
	.menuL h2{ font-size:1em; }
	.menuL .menuLI{ position: relative; padding:0 0 0 1.2em; cursor:pointer; display: block; color:#000; }
	.menuL span.block{ display:inline-block; width:.7em; aspect-ratio:1; border:1px solid rgba(0,0,0,.2); position: absolute; top: .3em; left:0; }
	.menuL span.blockon{ border:1px solid rgba(var(--akzent),.8); background: rgba(var(--akzent),.2) }
	.menuL span.blockon:after{ content: " "; border: 2px solid rgba(var(--akzent), 1); transform: rotate(32deg); border-top: 0; border-left: 0; position: absolute; width: .2em; height: .4em; left: 0.2em; top: .02em; }
	.menuL .pad{ padding:0 0 0 .8em; }
	.menuL  .padnov{ display:none; }
	.menuLSwitch{ display:block; }
	.menuL.menuLhide{ display:block; }
	.artikelR{ width:calc(100%); float:none; }
}

@media only screen and (max-width:1000px) {
	.p80{ width:100%; }
	.formtable .feldw50{ width:calc(100% - 1px); }
	.inserat{ width:calc(48% - 2px); }
	.headerimg { aspect-ratio:unset; display:block; position: relative; min-height:30vw; }
	.headerimg img{ height:100%; aspect-ratio:unset; }
	.headerimg .flex{ padding:3em 0; }
	footer .fullwidth{ display:block; }
	footer .fullwidth .third{ margin-bottom:2em; }
	.map{ width: 100%; aspect-ratio: 2; }
	#header2 #dtmenu{ display: none; }
	#header2 .tel{ display:none; }
	.mobilebtn{ border:.17rem solid rgba(var(--schwarz)); width:3.3em; height:3.3em; position:relative; border-radius:.5em; display:block; float:right; font-size:1.3em; margin-top:2.1em; transition: all ease .2s; }
	.mobilebtn div{ display:block; border-radius:1em; width:80%; height: 0.17rem; margin-top: calc(26% - 0.15rem); margin-left:10%; background: rgba(var(--schwarz));  }
	.mobilenav{ position:fixed; top:0; background:rgb(var(--grau)); padding:.5em; z-index:9999; color:rgb(var(--schwarz)); font-size:1.25em; line-height:2em; text-align:left; min-width:60%; height:100vh; overflow:auto; left:-100vw; transition: right ease .2s; display: block; z-index: 9999;}
	.mobilenav nav{ padding-bottom: 3em; }
	.mobilenavon{ left:0%; }
	.bodymobilenav{ overflow:hidden; }
	.mobilenavon + div{ content:' ';position:fixed; top:0; left:0; width:100vw; height:100vh; background:rgba(0,0,0,.5); z-index:9990; backdrop-filter: blur(3px); }
	.mobilenav ul{ display:block; }
	.mobilenav li{ display:block !important; margin:.5em; }
	.mobilenav a, .mobilenav .a{ display:block !important; color:rgb(var(--schwarz)); padding:.2em .6em; }
	.mobilenav .a:after{ content: ' '; border: solid rgb(var(--schwarz)); border-width: 0 0.1em 0.1em 0; position: relative; display: inline-block; width: 0.3em; height: 0.3em; transform: rotate(45deg); transition: transform ease-in-out .8s; margin: 0.12em 0.4em; }
	.mobilenav a img{ height:.8em; vertical-align:middle; margin-bottom: .3em; }
	.submenumob{ margin: 0 0 0 2em; }
	.submenumob form{ display:block; padding: .5em 1em; position:relative; }
	.submenumob form input[type="text"]{ border:1px solid #aaa; border-radius:.2em; padding:.4em 2em .4em .4em; display:block; width: calc(100% - 2.4em - 2px); }
	.submenumob form input[type="image"]{ position:absolute; right:1.5em; top:.95em; width:1.2em; }

	.headerimg2{ background: rgba(0,0,0,.3); padding-top: 10.3em; }
}

@media only screen and (max-width:600px) {
	html, body, input, select, textarea, button{ font-size:16px; }
	.inserat{ width:calc(100% - 2px); }
	.headerimg { min-height:40vw; }
	#header2.scroll .mobilebtn{ font-size:1.1em; margin-top:1em;  }	
	#header2.scroll #logo{ width:5.7em; height:3em; }
	.hspace{ height:6em; }
	.headerimg .txt{ margin-top:5em; }
	.mobilebtn{ border:.17rem solid rgba(var(--schwarz)); width:2.3em; height:2.3em; position:relative; border-radius:.5em; display:block; float:right; font-size:1.3em; margin-top:1.1em; transition: all ease .2s; }
	.mobilebtn div{ display:block; border-radius:1em; width:80%; height: 0.17rem; margin-top: calc(26% - 0.15rem); margin-left:10%; background: rgba(var(--schwarz));  }
	.headerimg h1{ font-size:1.8em; }
	.offer{ display:block; }
	.galleryprvcontainer{ width:100%; }
	.description{ width:100%; margin-left:0; }
	.map{ width: 100%; aspect-ratio: 1.3; }
	.text .fullwidth{ padding:2em 1em; }
	#header1 .fullwidth, #header2 .fullwidth, footer .fullwidth{ padding-left:1em; padding-right:1em; }
	#header2 #logo{ width:8em; height:4.1em; }
	.headerimg2{ background: rgba(0,0,0,.3); padding-top: 5.8em; }
	.mobilenav li{ display:block !important; margin:.2em; }
	.submenumob{ margin: 0 0 0 1em; }
	h1{ font-size:1.5em; }
	h2{ font-size:1.3em; }
	footer .fullwidth .third{ width:100%; margin-bottom:1em; }

	.pag{	position: fixed; bottom: 0; width: 100%; background: #fff; left: 0; border-top:1px solid #aaa; }
	.pag a, .pag .a{	margin:.2em; }

}

