@charset "utf-8";
@media print {
	.noprint { display:none; visibility:hidden; }
}
* {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;

	margin:0;
	padding:0;
	border:0;
	 /*
	-moz-hyphens: auto;
	-o-hyphens: auto;
	-webkit-hyphens: auto;
	-ms-hyphens: auto;
	hyphens: auto;
	hyphenate-limit-chars: auto 5;
	hyphenate-limit-lines: 2; */
}
header, nav, main, section, article, footer {display: block;}
img {border:none; }
.clear {clear:both;}
.hide {display:none;}
.block {display:block;}


.nomargin{margin:0;}
.margintop{margin-top: var(--textpadding-top) !important;}
.marginbottom{margin-bottom: var(--textpadding-bottom) !important;}
.extramargintop{margin-top: var(--textpadding-extra) !important;}
.extramarginbottom{margin-bottom: var(--textpadding-extra) !important;}
.basepadding { padding:var(--padding-h); }
.textpadding {padding-top: var(--textpadding-top); padding-bottom:var(--textpadding-bottom);}
.extra>.textpadding {padding-top: var(--textpadding-extra) !important; padding-bottom:var(--textpadding-extra) !important;}
.textpaddingtop {padding-top: var(--textpadding-top); padding-bottom:var(--textpadding-low);}
.textpaddingbottom {padding-top: var(--textpadding-low); padding-bottom:var(--textpadding-bottom);}
.paddingtop {padding-top: var(--textpadding-top) !important; }
.paddingbottom { padding-bottom:var(--textpadding-bottom) !important;}
.extrapaddingtop {padding-top: var(--textpadding-extra) !important; }
.extrapaddingbottom { padding-bottom:var(--textpadding-extra) !important;}
.nopaddingy>.textpadding {padding-top:0 !important; padding-bottom:0 !important;}
.nopaddingx>.mainwidth {padding-left:0 !important; padding-right:0 !important;}
.nopadding>.textpadding, .nopadding>.mainwidth, .nopadding>.group {padding:0 !important;}
.nopaddingtop>.textpadding{padding-top: 0 !important;}
.nopaddingbottom>.textpadding{padding-bottom: 0 !important;}
/*[class*="bgcolor"]*/ .textpadding>:last-child{margin-bottom: 0}

.fLeft{ display:block; float:left;}
.fRight{ display:block; float:right;}
.sticky-top{position: sticky !important; top:0;}
.sticky-bottom{position: sticky !important; bottom:-1px;}
.sticky-bottom.is-sticky{-webkit-box-shadow: 0 0 20px rgba(0,0,0,0.25);box-shadow: 0 0 20px rgba(0,0,0,0.25)}
.topborder{border-top: 15px solid hsl(var(--color-main));}
.bordered{border: 1px solid var(--textcolor)}
.border-top{border-top: 1px solid var(--textcolor)}
.border-bottom{border-bottom: 1px solid var(--textcolor)}
.border-left{border-left: 1px solid var(--textcolor)}
.border-right{border-right: 1px solid var(--textcolor)}
.padding-15{padding: 15px}
.padding-30{padding: 30px}
.padding-45{padding: 45px}


.sr-only{ position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); border: 0;}

@media(min-width:360px){.cb-up-360{display: block;} .show-360{display: none !important}}
@media(min-width:480px){.cb-up-480{display: block;} .show-480{display: none !important}}
@media(min-width:600px){.cb-up-600{display: block;} .show-600{display: none !important}}
@media(min-width:768px){.cb-up-768{display: block;} .show-768{display: none !important}}
@media(min-width:960px){.cb-up-960{display: block;} .show-960{display: none !important}}
@media(min-width:1024px){.cb-up-1024{display: block;} .show-1024{display: none !important}}
@media(max-width:360px){.cb-down-360{display: block;} .hide-360{display: none !important}}
@media(max-width:480px){.cb-down-480{display: block;} .hide-480{display: none !important}}
@media(max-width:600px){.cb-down-600{display: block;} .hide-600{display: none !important}}
@media(max-width:768px){.cb-down-768{display: block;} .hide-768{display: none !important}}
@media(max-width:960px){.cb-down-960{display: block;} .hide-960{display: none !important}}
@media(max-width:1024px){.cb-down-1024{display: block;} .hide-1024{display: none !important}}

html{max-width:100%; overflow-x:hidden;}
body{background:hsl(var(--bgcolor-body));}
#page{
	position:relative;
	display:block;
	max-width:var(--pagewidthmax);
	margin:auto;
	padding:0;
  /*  -webkit-box-shadow: 0 0 50px rgba(0,0,0,0.3);
            box-shadow: 0 0 50px rgba(0,0,0,0.3);*/
}
:root{
	--header-height:var(--header-height-standard);
	--header-menu-padding:var(--header-menu-padding-standard);
}

.menuhead #page{padding-top:var(--header-height,175px); }
.menuhead #head .headpadding{padding-top:var(--header-menu-padding,45px);padding-bottom:var(--header-menu-padding,45px);}
/*@media (min-width: var(--pagewidthmax)){
.menuhead .content>*[class*="bgcolor"]{width: 100vw; margin-left: calc((var(--pagewidthmax) - 100vw) / 2);}
}*/
#pagewrap.fix{position: fixed;left: 0px;width: 100%;height: 100%;overflow: hidden;}
#pagewrap.fix #pagefix::before{content:' ';position:absolute; z-index:5000; top:0; left:0; bottom:0; right:0; background-color:hsla(var(--color-sec),0.5);}
.content.layeredPage::before{content:' ';position:absolute; z-index:5; top:0; left:0; bottom:0; right:0; background-color:hsla(var(--color-sec),0.5);}


.pagewidth{
	max-width:var(--pagewidthmax);
	margin:auto;
}
.menuhead #head .pagewidth{background:hsl(var(--bgcolor-head)); /*box-shadow: 0 0 20px rgba(0,0,0,0.2);*/}

.content {background-color: hsl(var(--bgcolor-content));}
.mainwidth {
	position:relative;
	display:block;
	max-width:var(--mainwidthmax);
	margin-left:auto;
	margin-right:auto;
}
.didblock{position: relative;}
.content>.didblock>.mainwidth, .content>.didblock>.group>.didblock>.mainwidth, .didblock[class*="bgcolor"]>.mainwidth, .didblock[class*="bgcolor"]>.group,
.galleryImg>.didblock>.mainwidth, .fullwidth .mainwidth.textpadding, footer>.didblock>.mainwidth{
	padding-left:var(--padding-h);
	padding-right:var(--padding-h);
}
.main>.mainwidth {max-width: var(--mainwidthmax);}
.narrow>.mainwidth, .narrow>.group {max-width: var(--mainwidthmax-narrow); margin-left: auto; margin-right: auto;}
.fullwidth>.mainwidth,.fullwidth>*{  max-width: var(--pagewidthmax); margin-left: auto; margin-right: auto; }
@media (max-width:var(--pagewidthmax)){
	.fullwidth>.mainwidth,.fullwidth>*{  max-width: 100%;}
}
@media (min-width:var(--mainwidthmax)){
	.content>.fullwidth>.mainwidth{padding-left: 0; padding-right: 0}
}


.pos-R>*{position: absolute; right: 0}
.pos-B>*{position: absolute; bottom: 0}
.pos-L>*{position: absolute; left: 0}
.pos-T>*{position: absolute; top: 0}
.pos-R-neg>*{position: absolute; right: -5em}
.pos-B-neg>*{position: absolute; bottom: -5em}
.pos-L-neg>*{position: absolute; left: -5em}
.pos-T-neg>*{position: absolute; top: -5em}
.pos-R-pos>*{position: absolute; right: 5em}
.pos-B-pos>*{position: absolute; bottom: 5em}
.pos-L-pos>*{position: absolute; left: 5em}
.pos-T-pos>*{position: absolute; top: 5em}
.pos-B-neg {margin-top: -10px;margin-bottom: 10px;} /* prevent fade in bug */

[class*="pos-"]{z-index: 5}

.max-600 .mainwidth {max-width: 600px}
.max-500 .mainwidth {max-width: 500px}
.max-400 .mainwidth {max-width: 400px}
.max-300 .mainwidth {max-width: 300px}
.max-200 .mainwidth {max-width: 200px}

.color-white{
	--textcolor:var(--color-white);
	--linkcolor:var(--color-white);
  --linkcolor-hover:var(--color-sec);
	--headercolor:var(--color-white);
  color: hsl(var(--textcolor));
}
.color-white .button_box { --linkcolor:var(--color-main);--linkcolor-hover:var(--color-extradark); }

.bgcolor-content{position: relative; z-index: auto; background-color:hsl(var(--bgcolor-content));}
.bgcolor-white{position: relative; z-index: auto; background-color:hsl(var(--color-white));}
.bgcolor-dark, .bgcolor-extradark{
	position: relative; z-index: auto;
	background-color:hsl(var(--bgcolor-dark));
	/*--color-main:var(--color-white);*/
	--color-extradark: var(--color-sec);
	--textcolor:var(--color-white);
	--linkcolor:var(--color-main);
  --linkcolor-hover:var(--color-white);
	--headercolor:var(--color-white);
	/*--color-sec:var(--color-white);*/
  color: hsl(var(--textcolor));
}
.bgcolor-extradark{background-color:hsl(var(--bgcolor-extradark));}
.bgcolor-dark .button_box:hover, .bgcolor-extradark .button_box:hover { color:var(--color-extradark); --linkcolor-hover:var(--color-accent); }
.bgcolor-dark .input,.bgcolor-dark .select, .bgcolor-extradark .input,.bgcolor-extradark .select { color:var(--color-extradark); }


.bgcolor-extradark-gradient::before{ content: ' '; position: absolute; height: 100%; width: 100%; top: 0; background-image:radial-gradient(circle, hsla(var(--bgcolor-extradark),0), hsla(var(--bgcolor-extradark),1));}
.bgcolor-extradark-gradient-linear::before{ content: ' '; position: absolute; height: 100%; width: 100%; top: 0; background-image:radial-gradient(0deg, hsla(var(--bgcolor-extradark),0), hsla(var(--bgcolor-extradark),1));}


.bgcolor-main{
	position: relative; z-index: auto;
	background-color:hsl(var(--bgcolor-main));
	--textcolor:var(--color-light);
  --headercolor:var(--color-white);
  --linkcolor:var(--color-extradark);
  --linkcolor-hover:var(--color-accent);
  --inputcolor:var(--bgcolor-main-light);
  color: hsl(var(--textcolor));
}
.bgcolor-main-light{
	position: relative; z-index: auto;
	background-color:hsl(var(--bgcolor-main-light));
	/*--textcolor:var(--color-light);
  --headercolor:var(--color-white);
  --linkcolor:var(--color-extradark);
  --linkcolor-hover:var(--color-white);*/
  --inputcolor:var(--color-white);
	--color-extradark:#000;
	--textcolor:var(--color-extradark);
  color: hsl(var(--textcolor));
}
.bgcolor-light{
	position: relative; z-index: auto;
	background-color:hsl(var(--bgcolor-light));
	--linkcolor:var(--color-main);
  --linkcolor-hover:var(--color-sec);
	--inputcolor:var(--color-light);
	--color-extradark:#000;
	--textcolor:var(--color-extradark);
	color:hsl(var(--textcolor));
}
.bgcolor-light-gradient-linear::before{ content: ' '; position: absolute; height: 100%; width: 100%; top: 0; background-image:radial-gradient(0deg, hsla(var(--bgcolor-light),0), hsla(var(--bgcolor-light),1));}

.bgcolor-sec{
	position: relative; z-index: auto;
	background-color:hsl(var(--bgcolor-sec));
	/*--textcolor:var(--color-white);
  --headercolor:var(--color-white);
  --linkcolor:var(--color-extradark);
  --linkcolor-hover:var(--color-main);
  --inputcolor:var(--color-dark);
	--color-sec:var(--color-white);*/
  color: hsl(var(--textcolor));
}
.bgcolor-sec .button {color: rgb(var(--color-main));background-color: rgb(var(--color-light));}
.bgcolor-sec .button:hover,
.bgcolor-sec .button:focus{color: rgb(var(--color-light));background-color: rgb(var(--color-main));}

.bgcolor-sec .input {color: rgb(var(--color-light));background-color: rgb(var(--inputcolor));}
.bgcolor-sec .input:hover,.bgcolor-sec .input:focus {color: rgb(var(--color-light));background-color: rgb(var(--color-main));}
.bgcolor-sec .css_toggle>input:checked ~ label ~ figure {background-color: rgba(var(--color-light),0.2);}

.bgcolor-accent{
	position: relative; z-index: auto;
	background-color:hsl(var(--bgcolor-accent));
	--textcolor:var(--color-white);
  --headercolor:var(--color-white);
  --linkcolor:var(--color-white);
  --linkcolor-hover:var(--color-white);
  --inputcolor:var(--color-dark);
	--color-light:var(--color-extradark);
	--color-accent:var(--color-white);
  color: hsl(var(--textcolor));
}

.mix-blend-mode-color .bgimg::before{mix-blend-mode: color;}
.mix-blend-mode-multiply .bgimg::before{mix-blend-mode: multiply;}
.mix-blend-mode-hard-light .bgimg::before{mix-blend-mode: hard-light;}
.mix-blend-mode-saturation .bgimg::before{mix-blend-mode: saturation;}
.mix-blend-mode-color-burn .bgimg::before{mix-blend-mode: color-burn;}
.normal-on-hover[class*="mix-blend-mode"]:hover .bgimg::before{mix-blend-mode:normal; opacity: 0; -webkit-transition: all 0.5s ease;-o-transition: all 0.5s ease;transition: all 0.5s ease;}
/*
.bgcolor-main *:not(.icon):not(use):not([class*="color"]) {color:hsl(var(--color-light));}
.bgcolor-main a:not(.icon):not(use):not([class*="color"]){color:hsl(var(--color-sec));}
.bgcolor-main a:not(.icon):not(use):not([class*="color"]):hover{color:hsl(var(--color-main));}
.bgcolor-main .button{background-color:hsl(var(--color-main)); color: hsl(var(--color-light));}
.bgcolor-main .button:hover{background:#000; color:hsl(var(--color-main));}
.bgcolor-main ul li::before { color:hsl(var(--color-light)); }
*/
.galleryImg.bgcolor-extradark picture::after{content:' '; display: block; top:0; bottom:0; left:0; right:0; position:absolute; background-color:hsla(var(--bgcolor-extradark),0.5);}
.galleryImg.bgcolor-dark picture::after{content:' '; display: block; top:0; bottom:0; left:0; right:0; position:absolute; background-color:hsla(var(--bgcolor-dark),0.5);}
.galleryImg.bgcolor-main picture::after{content:' '; display: block; top:0; bottom:0; left:0; right:0; position:absolute; background-color:hsla(var(--bgcolor-main),0.5);}
.galleryImg.bgcolor-light picture::after{content:' '; display: block; top:0; bottom:0; left:0; right:0; position:absolute; background-color:hsla(var(--bgcolor-light),0.5);}
.galleryImg.bgcolor-sec picture::after{content:' '; display: block; top:0; bottom:0; left:0; right:0; position:absolute; background-color:hsla(var(--bgcolor-sec),0.5);}
.galleryImg.bgcolor-accent picture::after{content:' '; display: block; top:0; bottom:0; left:0; right:0; position:absolute; background-color:hsla(var(--bgcolor-accent),0.5);}

.galleryImg .col2 picture::after{display: none; content: none;}
/*
#headerImages .colcontent .galleryImg.bgcolor-dark picture::after{display: none; content: none;}
#headerImages .colcontent .galleryImg.bgcolor-main picture::after{display: none;}
#headerImages .colcontent .galleryImg.bgcolor-light picture::after{display: none; content: none;}
#headerImages .colcontent .galleryImg.bgcolor-sec picture::after{display: none; content: none;}
#headerImages .colcontent picture::after{display: none}
*/
.bgdirt{position: relative;}
.bgdirt::before {content:' '; display: block; top:0; bottom:0; left:0; right:0; position:absolute; z-index: 0; background-image:url(_pix/bg_dirt.png); background-size:auto; background-attachment:fixed;}
.bgdirt>.bgimg::before { background-image:url(_pix/bg_dirt.png); background-size:auto; background-attachment:fixed;}

.bggrid{position: relative;}
.bggrid::before {content:' '; display: block; top:0; bottom:0; left:0; right:0; position:absolute; z-index: 0; background-image:url(_pix/bg_grid.gif); background-attachment:fixed;}
.bggrid.parallax::before{content: none; display: none}
.bggrid.parallax .bgimg::after, .bggrid .bgimg::after {content:' '; display: block; top:0; bottom:0; left:0; right:0; position:absolute; background-image:url(_pix/bg_grid.gif); background-attachment:fixed;}
.bgcolor-dark.bggrid.parallax .bgimg::after{background-image:url(_pix/bg_grid_neg.gif); }
.bgcolor-main.bggrid.parallax .bgimg::after{background-image:url(_pix/bg_grid_neg.gif); }

#top{
	position:absolute;
	top:0;
	left:0;
}
#topheader{
	padding:0;
	position: relative;
	z-index: 205;
	-webkit-transition: all 0.4s ease-in-out;
	-o-transition: all 0.4s ease-in-out;
	transition: all 0.4s ease-in-out;
}
#topheader>.mainwidth{ display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-align: center; -ms-flex-align: center; align-items: center;}
#topnavL,#topnavR{ display: -webkit-box;display: -ms-flexbox;display: flex;}

#topheader a:hover .icon, #topheader button:hover .icon {background-color: var(--color-accent);}

.menuhead #topheader.pagewidth, .menuleft #topheader.pagewidth{background-color:hsl(var(--bgcolor-main));}
#topheader>.mainwidth>*>ul>li>*:not(ul) {
    display: block;
    line-height: 0;
}
/*#topnavL{padding:0; margin: 0}

#topnavR {
    position: absolute;
    right: var(--padding-h);
    top: 0;
}*/
/*#topheader .icon.bg.round:hover{color: hsl(var(--color-main)); background-color: hsl(var(--color-light));}
#topheader .icon.bg.round{background-color: hsl(var(--color-main)); color: hsl(var(--color-light));}*/
:root {--topheadericonsize:36px}
#topheader .icon{width:var(--topheadericonsize,32px); height:var(--topheadericonsize,32px);}


#topheader ul{margin: 0;}
#topheader ul li::before{content: none;}
#topheader ul li{display: block; margin: 0; padding: 0;}
#topheader ul ul{display: block;max-height: 0; overflow: hidden; padding: 0; margin: 0; position: absolute; z-index: 1000;
	-webkit-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;}
#topheader ul li {display: inline-block; margin: 0; vertical-align:middle}
.menuhead #topheader ul ul{top:var(--topheadericonsize,32px); left: 0;}
.menuhead #topheader #topnavR ul ul{left:auto; right: 0;}
#topheader ul ul li{margin: 0}
#topheader ul li:hover>ul, #topheader ul li.hover>ul, #topheader ul *:target+ul, #topheader ul ul.open {max-height: 500px; -webkit-box-shadow: 0 0 30px rgba(0,0,0,0.25); box-shadow: 0 0 30px rgba(0,0,0,0.25); }
#topheader ul li:hover>a[aria-expanded=false]+ul{max-height: 0; padding: 0}
[id^=topnav]>ul>li>a[aria-expanded=true] .icon{ opacity: 0 }
[id^=topnav]>ul>li>a[aria-expanded=true]::before{ content: '';width: 30px;color: inherit;transform: rotate(45deg);position: absolute;height: 0; border-bottom: 1px solid;left: 50%;top: 50%; margin-left: -15px;}
[id^=topnav]>ul>li>a[aria-expanded=true]::after{ content: '';width: 30px;color: inherit;transform: rotate(-45deg);position: absolute;height: 0; border-bottom: 1px solid;left: 50%;top: 50%; margin-left: -15px;}
#topheader ul ul li{display: block; padding: 15px; margin: 0; background-color:hsl(var(--bgcolor-content)); color: hsl(var(--textcolor)); min-width: 250px;  }
@media screen and (max-width:360px){
	#topheader ul li {margin: 0;}
}
ul.langmenu  ul a {display: block; text-align: center; background-color: hsl(var(--color-sec)); padding: 0.5em 1em; color: hsl(var(--color-white)); margin-bottom: 1px; text-transform: uppercase;}
ul.langmenu  ul a.act {background-color: hsl(var(--color-main));}
ul.langmenu  ul a:hover {background-color: hsl(var(--color-accent));}

#language-selection::after{content: attr(data-lang); position: absolute; left: 50%; top:50%; -webkit-transform: translate(-50%,-50%); -ms-transform: translate(-50%,-50%); transform: translate(-50%,-50%); font-weight: bold; font-size: 0.6em; text-transform: uppercase; color: #FFF;}

/*_______________________________________________left bar */
@media screen and (min-width:961px){
	.menuleft.leftbar #topheader{position: absolute; left: 0; top:0; width: 50px; min-height: 100vh; z-index: 201;}
	.menuleft.leftbar #topheader .mainwidth{padding: 15px 0; text-align: center;}
	.menuleft.leftbar #head>.mainwidth{padding-left: 80px}
	.menuleft.leftbar #topnavL a{margin: 0; display: block}
	.menuleft.leftbar #topnavR {position: relative;right: auto; top: auto;}
	.menuleft.leftbar #head .inputSearch {right: auto;left: 40px;}
	.menuleft.leftbar #head .search:hover #head .inputSearch {width:calc(var(--leftmenu-width) - 50px);-webkit-box-shadow: 0 0 20px rgba(0,0,0,0.5);box-shadow: 0 0 20px rgba(0,0,0,0.5);}

	.menuleft.leftbar #topheader ul li {display: block; margin:1px 0;}
	.menuleft.leftbar #topheader ul li ul{top:0; left: 50px;}
	.menuleft.leftbar #topheader ul li ul li{min-width: calc(var(--leftmenu-width) - 50px);}

	.menuleft.leftbar #topnavR{margin-top: var(--padding-h);}
}

#langmenu {
		white-space:nowrap;
    display:inline-block;
		margin-left: 2px;
}
#langmenu a{
	display:inline-block;
	text-transform:uppercase;
	font-size:13px;
	color:hsl(var(--color-main));
	background-color:hsl(var(--bgcolor-light));
	padding:16px 0 16px 0;
  width: 32px;
	/*height: 32px;*/
	line-height:0;
  text-align: center;
	margin: 0 1px;
}
#langmenu a.act{
	font-weight:bold;
	color: hsl(var(--color-main));
}
#langmenu a:hover{
	background-color: hsl(var(--color-main));
	color:hsl(var(--color-light));
}
#langmenu a.round{
    border-radius: 50%;
}
.buttonLangIcon{
	display:none;
	vertical-align:top;
	border:none;
	width:30px;
	height:30px;
	background-color:hsl(var(--color-main));
	background-image:url(_pix/button_language.svg);
	background-position:0 -30px;
	background-repeat:no-repeat;
	cursor:pointer;
	padding:0;
	margin:0;
	-webkit-appearance:none;
	   -moz-appearance:none;
	        appearance:none;
	-webkit-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;

}
.buttonLangIcon:hover{
	background-color:hsl(var(--color-light));
	background-position:0 0;
}
.menuhead #head{
	position:fixed;
	z-index:10000;
	top:0;
	left:0;
	width:100%;
	height:auto;
	min-height: var(--header-height);
	-webkit-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}
 .menuhead #head.top #topheader{max-height:0; overflow:hidden; padding:0;}
@media screen and (max-width:960px){
 .menuleft #head.top #topheader{max-height:0; overflow:hidden; padding:0;}
}

.menuleft #head{
	position: sticky;
	top: 0;
	z-index: 1000;
	float: left;
	width: 20%;
	width: var(--leftmenu-width);
	min-height: 100vh;
	background-color: hsl(var(--bgcolor-head));
	padding:0 0 var(--padding-h) 0;
	-webkit-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}
.menuleft main {
	float: left;
	width: 80%;
	width: calc(100% - var(--leftmenu-width));
}
.menuleft #singleItem main {
	float: none;
	width: 100%;
}

#logo {
	position:absolute;
	top:var(--padding-h);
	left:var(--padding-h);
	z-index:200;
	-webkit-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}
.menuhead.logo-right #logo{left:auto; right:var(--padding-h); }
.menuhead.logo-right ul.dropdown {text-align:left;}
.menuhead.logo-right ul.dropdown {text-align:left;}
.menuhead.logo-right ul.dropdown>li:last-child, .menuhead.logo-right ul.dropdown>li:last-child>a {padding-right: inherit;}
.menuhead.logo-right ul.dropdown>li:first-child, .menuhead.logo-right ul.dropdown>li:first-child>a {padding-left: 0}

.menuleft #head #logo{position: relative; top:auto; left:auto; margin-top: var(--padding-h); margin-bottom: 50px;}

#logo img, #logo svg {max-width: 100%;height: auto;}

.menuhead #head.top{position:fixed;height:auto; min-height: 0}
.menuhead #head.top .pagewidth{ -webkit-box-shadow: 0 0 15px rgba(0,0,0,0.3); box-shadow: 0 0 15px rgba(0,0,0,0.3);}
.menuhead #head.top #logo {}
.menuhead #head.top .headpadding  {padding-bottom:10px; padding-top:10px;}

.topimages #stickyhead {position: sticky;top: 0;z-index: 1000; background-color: hsl(var(--color-light));}
.topimages #menu{padding: var(--padding-v) var(--padding-h);}
.topimages #page{padding-top: 0;}
.topimages #headerImages {min-height: 100vh; min-height: calc(100vh - 52px - 97px); /*-tophead - menu*/
	-webkit-transition: all 0.8s ease-in-out;
	-o-transition: all 0.8s ease-in-out;
	transition: all 0.8s ease-in-out;}
.topimages #headerImages .fadeSet {position: absolute; height: 100%;}
.topimages #headerImages .galleryImg,.topimages #headerImages .galleryImg>a,.topimages #headerImages .galleryImg picture {height: 100%; width: 100%}
.topimages #headerImages .galleryImg .image-scale-100{ height: 100%; -o-object-fit: cover; object-fit: cover;}



#headerImages {
	margin:0 auto 0 auto;
	max-height:calc(100vh - var(--header-height));
	overflow: hidden;
}

@media(min-width:768px){
	#headerImages.fullscreen {
		height:calc(100vh - var(--header-height));
		max-width:none;
	}
}
.content {
	display:block;
	margin:0;
	padding:0;
}
#linkline {
    font-size: 0.7rem;
    line-height: 1.25em;
		padding:10px var(--padding-h);
}
#footer {
	padding:0;
	min-height:50vh;
}
#head .mainwidth,#footer .mainwidth{
padding-left:var(--padding-h);
padding-right:var(--padding-h);
}
#footer .icon{width: 2em;height: 2em; margin-top: -0.25em; color: hsl(var(--color-main))}
#footer .address{
	padding: 60px 0 60px 0;
	border-bottom: 1px solid hsla(var(--color-main),0.3)
}

ul.cols>li {
    display: inline-block;
    vertical-align: top;
    margin-right: 15px;
}


footer ul li {margin: 0 0 0 0}
footer ul ul a {font-size: 0.8em;line-height: 1.2;}
footer ul li::before{content: none}
.didblock.linked .did-link{
	position: absolute;
	top:0;
  width: 100%;
  height: 100%;
  z-index: 5;
  display: block;
  background-color: transparent;
}
.didblock.linked>*, .image-gallery .galleryImg>a img, .galleryImg[class*=bgcolor] picture::after{
	-webkit-transition: all 0.4s ease;
	-o-transition: all 0.4s ease;
	transition: all 0.4s ease;}
.image-gallery .galleryImg img{display: block;}
.didblock.linked:hover>*, .image-gallery .galleryImg>a:hover img{-webkit-transform: scale(1.05);-ms-transform: scale(1.05);transform: scale(1.05)}
/*.didblock.linked .did-link:hover{background-color: hsla(var(--bgcolor-main),0.2);}*/

.submenupage .objItem:last-child { margin-right: auto;}

.pagination {
    padding: var(--padding-v) var(--padding-h);
    margin: 0 auto;
}
.pagination .head{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
}
.pagination nav{display: block;}
#paginationmenu {display:none; width:0; height:0; overflow:hidden;}
#paginationmenu ~ nav{ overflow: hidden; max-height: 0; padding: 0;
	-webkit-transition: all 0.8s cubic-bezier(0,1,0,1);
	-o-transition: all 0.8s cubic-bezier(0,1,0,1);
	transition: all 0.8s cubic-bezier(0,1,0,1);}
#paginationmenu:checked ~ nav{ overflow:visible; max-height: 4000px; padding: 30px 0;
	-webkit-transition: all 0.8s cubic-bezier(1,0,1,0);
	-o-transition: all 0.8s cubic-bezier(1,0,1,0);
	transition: all 0.8s cubic-bezier(1,0,1,0);}
.pagination p{margin-bottom: 0}
.pagination label {width: 30px; height: 30px; background-color:hsl(var(--color-sec)); border-radius: 50%; position: relative; cursor: pointer; -ms-flex-negative:0; flex-shrink:0}

.pagination label div, .pagination label div::before, .pagination label div::after{width: 16px; height: 2px; background-color:#fff;
	-webkit-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	transition: all 0.5s ease; }


.pagination label div {margin-left: -8px; margin-top: -1px; position:absolute; left: 50%; top:50%}
.pagination label div::before {content: ''; position:absolute; left: 0; top:-4px}
.pagination label div::after {content: ''; position:absolute; left: 0; bottom:-4px}
#paginationmenu:checked ~ .head label div::before {top:0; -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg);}
#paginationmenu:checked ~ .head label div {height:0;}
#paginationmenu:checked ~ .head label div::after {top:0; -webkit-transform: rotate(-45deg); -ms-transform: rotate(-45deg); transform: rotate(-45deg);}

.pagination nav a {color: hsl(var(--textcolor))}
.pagination nav a:hover,.pagination nav a.act {color: hsl(var(--color-main))}

.page_prev .icon{position: absolute; left: 0; top:0;}
.page_next .icon{position: absolute; right: 0; top:0;}
.page_next{position:relative; padding-right:45px; padding-top: 5px; text-align: right;}
.page_prev{position: relative; padding-left:45px; padding-top: 5px;  }
@media(max-width:600px){
	.page_prev{font-size: 0}
}
@media(max-width:480px){
	.page_prev{display: none}
}
@-webkit-keyframes jump {
	from { -webkit-transform: translate(0,0); transform: translate(0,0); }
	80%  { -webkit-transform: translate(0,0); transform: translate(0,0); }
	90%  { -webkit-transform: translate(0,-10px); transform: translate(0,-10px); }
	to   { -webkit-transform: translate(0,0); transform: translate(0,0); }
}
@keyframes jump {
	from { -webkit-transform: translate(0,0); transform: translate(0,0); }
	80%  { -webkit-transform: translate(0,0); transform: translate(0,0); }
	90%  { -webkit-transform: translate(0,-10px); transform: translate(0,-10px); }
	to   { -webkit-transform: translate(0,0); transform: translate(0,0); }
}
#scrolltop .icon.bg.round { width: 48px;height: 48px;}
.scrollnext {position: relative; /*max-height: calc(100vh - var(--header-height,175px));*/ overflow: hidden;}
.content>:first-child.scrollnext .scrolldown {bottom:auto; top:calc(100% - 60px);}
/*.content>:first-child.scrollnext .scrolldown {bottom:auto; top:calc(100vh - 60px - var(--header-height));}*/

#scrolldown:not(.off), .scrolldown:not(.off) {
	-webkit-animation: jump 5s linear infinite;
	        animation: jump 5s linear infinite;
}
#scrolldown.off, .scrolldown.off{opacity:0;}
#scrolldown, .scrolldown {
	position:absolute;
	left:50%;
	bottom:15px;
	/*-webkit-transform: translate(-50%,0);
	transform: translate(-50%,0);*/
	margin-left: -25px;
	z-index:190;
	-webkit-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}
.scrolldown {z-index:500;}

#scrolltop{
	display:block;
	position:fixed;
	bottom:-60px;
	right:15px;
	z-index:500;
	-webkit-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}
#scrolltop.visible{bottom: 15px}
#scrolltop.visible.sticky-elements{bottom: 60px}

.svginline path {
	-webkit-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}
.svginline:hover *[fill="hsl(var(--color-light))FFF"] {fill: hsl(var(--color-main));}
.svginline:hover *[fill="#ffffff"] {fill: hsl(var(--color-main));}
.svginline:hover *[fill="#AAAAAA"] {fill: hsl(var(--color-main));}
.svginline:hover *[fill="#aaaaaa"] {fill: hsl(var(--color-main));}
.svginline:hover *[fill="hsl(var(--color-main))"] {fill: hsl(var(--color-light));}
.svginline:hover *[stroke="hsl(var(--color-main))"] {stroke: #000;}
.svginline:hover *[fill="#BB8B00"] {fill: hsl(var(--color-light));}
.svginline:hover *[fill="#bb8b00"] {fill: hsl(var(--color-light));}


.hiddenText {
	display:block;
	height:1px;
	overflow:hidden;
	padding:0;
}
.hiddenTextOn {
	display:block;
	height:auto;
	overflow:hidden;
}

.hoverinfo .toggle{display: block;position: relative;margin: 0;max-height:1px;padding-top:1px;
	-webkit-transition: max-height 0.5s ease-in-out 0.5s, visibility 0s ease 0.5s, opacity 0.5s ease 0.5s, margin 0.5s ease 0.5s;
	-o-transition: max-height 0.5s ease-in-out 0.5s, visibility 0s ease 0.5s, opacity 0.5s ease 0.5s, margin 0.5s ease 0.5s;
	transition: max-height 0.5s ease-in-out 0.5s, visibility 0s ease 0.5s, opacity 0.5s ease 0.5s, margin 0.5s ease 0.5s;
	overflow:hidden;}
.hoverinfo:hover .toggle, .hoverinfo.hover .toggle {
	max-height:1000px;
	margin: 0;
}

main a[href^="#"].act{text-decoration: underline;}

#head .search, #topheader .search{
	display:inline-block;
	vertical-align: top;
	position:relative;
}
#head .search form, #topheader .search form {
    line-height: 0;
}
#head .search .inputSearch, #topheader .search .inputSearch{
	position:absolute;
	top:0;
	right:var(--topheadericonsize,32px);
	width:0px;
	height:var(--topheadericonsize,32px);
	-webkit-appearance: none;
	   -moz-appearance: none;
	        appearance: none;
	border:none;
	background-color: hsl(var(--bgcolor-content));
	-webkit-box-shadow: none;
	        box-shadow: none;
}
#head .search:hover .inputSearch, #topheader .search:hover .inputSearch{
	width:250px;
	padding:0 15px;
}
ul#nav .buttonSearchIcon .icon{background-color: hsl(var(--color-light)); border:1px solid hsl(var(--color-sec)); color:hsl(var(--color-sec)); }
.inputSearch.round { border-radius: 16px;}





@-webkit-keyframes swing {
	0% { -webkit-transform: translate(-50px,0) scale(0,1); }
	25%  { -webkit-transform: translate(0,0) scale(1,1); }
	50%  { -webkit-transform: translate(50px,0) scale(0,1); }
	75%  { -webkit-transform: translate(0,0) scale(1,1); }
	100%   { -webkit-transform: translate(-50px,0) scale(0,1); }
}
@keyframes swing {
	0% { transform: translate(-50px,0) scale(0,1); }
	25%  { transform: translate(0,0) scale(1,1); }
	50%  { transform: translate(50px,0) scale(0,1); }
	75%  { transform: translate(0,0) scale(1,1); }
	100%   { transform: translate(-50px,0) scale(0,1); }
}
#preloader { display:block; position: fixed; left: 0; top: 0; z-index: 999; width: 100%; height: 100%; overflow: hidden; background-color:hsl(var(--color-light)); }
.preloadericon {
	position: absolute;
	top:50%;
	left:50%;
	width: 80px;
	height: 10px;
	background-color: hsl(var(--color-main));
	margin-left:-40px;

	animation: swing 3s linear infinite;
	-webkit-animation: swing 3s linear infinite;
}

@-webkit-keyframes spin {
	from { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
	50%  { -webkit-transform: rotate(180deg); transform: rotate(180deg); }
	to   { -webkit-transform: rotate(360deg); transform: rotate(360deg); }
}
@keyframes spin {
	from { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
	50%  { -webkit-transform: rotate(180deg); transform: rotate(180deg); }
	to   { -webkit-transform: rotate(360deg); transform: rotate(360deg); }
}
/*
#preloader { display:block; position: fixed; left: 0; top: 0; z-index: 99999; width: 100%; height: 100vh; overflow: hidden; background-color:hsl(var(--color-light)); -webkit-transition: top 0.75s ease-in-out;-o-transition: top 0.75s ease-in-out;transition: top 0.75s ease-in-out}
#preloader.off {top:-100vh}

.preloadericon {
	position: absolute;
	top:50%;
	left:50%;
	width: 120px;
	height: 120px;
	margin-left:-60px;
	margin-top:-60px;
	border: 5px solid hsl(var(--color-main));
	border-right-color: transparent;
	border-radius: 50%;
	-webkit-animation: spin 1s linear infinite;
	        animation: spin 1s linear infinite;
}
#preloader::before{
	content: '';
		position: absolute;
		top:50%;
		left:50%;
		margin-left:-50px;
		margin-top:-50px;
	width: 100px;
	height: 100px;
	background-image: url('_pix/tasse.png'); background-position: center; background-repeat: no-repeat; background-size: 100px 100px;
	-webkit-animation: spin 10s linear infinite reverse;
	        animation: spin 10s linear infinite reverse;
}
*/

.flexbox {      /* OLD - iOS 6-, Safari 3.1-6 */         /* OLD - Firefox 19- (buggy but mostly works) */      /* TWEENER - IE 10 */     /* NEW - Chrome */
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;             /* NEW, Spec - Opera 12.1, Firefox 20+ */
	/*umbruch*/
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	/*Höhe angleichen*/
	-webkit-box-align: stretch;
	    -ms-flex-align: stretch;
	        align-items: stretch;
}
.flexbox section {
	-ms-flex-preferred-size: 33.333%;
	    flex-basis: 33.333%
}
.didblock.zoom{overflow: hidden;}
.scale, .zoom .bgimg, .zoom img{
	-webkit-animation: scale 10s ease 0s infinite;
	        animation: scale 10s ease 0s infinite;
}
@-webkit-keyframes scale {
  0%{-webkit-transform:scale(1);transform:scale(1);}
  50%{-webkit-transform:scale(1.05);transform:scale(1.05);}
  100%{-webkit-transform:scale(1);transform:scale(1);}
}
@keyframes scale {
  0%{-webkit-transform:scale(1);transform:scale(1);}
  50%{-webkit-transform:scale(1.05);transform:scale(1.05);}
  100%{-webkit-transform:scale(1);transform:scale(1);}
}
@media (min-width:481px){
	.on{--offset:1}

	span.js{display: inline-block;}
	.fadein, .slideup, .slideleft, .slideright, .slidedown, .dropin, .bounceleft, .bounceright, .draw{
		-webkit-transition: all 0.5s ease-in-out;
		-o-transition: all 0.5s ease-in-out;
		transition: all 0.5s ease-in-out;
		opacity:0;}
	.fadein.on, .slideup.on, .slidedown.on, .draw.on {opacity:1;}

	/*.fadein,.slideup{opacity:var(--offset,1)}*/
	.fadein.on,.slideup.on{opacity:1}

/*
	.slideup.js{
		-webkit-transform:translate(0,calc(100px * (1 - var(--offset,1))));
		transform:translate(0,calc(100px * (1 - var(--offset,1))));
	}
	.slideup.js.on{
		-webkit-transform:translate(0,0);
		transform:translate(0,0);
	}
	.slidedown.js{
		-webkit-transform:translate(0,-100px);
		transform:translate(0,-100px);
	}
	.slidedown.js.on{
		-webkit-transform:translate(0,0);
		transform:translate(0,0);
	}*/

	.slideup.js.on{
		-webkit-animation: slideup 0.9s cubic-bezier(.36,.07,.19,.97) both;
		        animation: slideup 0.9s cubic-bezier(.36,.07,.19,.97) both;
		opacity: 1;
	}
	@-webkit-keyframes slideup {
		0% {-webkit-transform: translate(0,100px);transform: translate(0,100px); }
		100% {-webkit-transform: translate(0,0);transform: translate(0,0); }
	}
	@keyframes slideup {
		0% {-webkit-transform: translate(0,100px);transform: translate(0,100px); }
		100% {-webkit-transform: translate(0,0);transform: translate(0,0); }
	}
	.slidedown.js.on{
		-webkit-animation: slidedown 0.9s cubic-bezier(.36,.07,.19,.97) both;
		        animation: slidedown 0.9s cubic-bezier(.36,.07,.19,.97) both;
		opacity: 1;
	}
	@-webkit-keyframes slidedown {
		0% {-webkit-transform: translate(0,-100px);transform: translate(0,-100px); }
		100% {-webkit-transform: translate(0,0);transform: translate(0,0); }
	}
	@keyframes slidedown {
		0% {-webkit-transform: translate(0,-100px);transform: translate(0,-100px); }
		100% {-webkit-transform: translate(0,0);transform: translate(0,0); }
	}


	.dropin.js{
		-webkit-transform:translate(0,-100px);
		    -ms-transform:translate(0,-100px);
		        transform:translate(0,-100px);
		opacity: 0;
	}
	.dropin.js.on{
		-webkit-animation: shake 0.9s cubic-bezier(.36,.07,.19,.97) both;
		        animation: shake 0.9s cubic-bezier(.36,.07,.19,.97) both;
		-webkit-transform:translate(0,0);
		    -ms-transform:translate(0,0);
		        transform:translate(0,0);
		opacity: 1;
	}
	@-webkit-keyframes shake {
		0{}
	  10%, 90% {-webkit-transform: translate3d(0, -2px, 0);transform: translate3d(0, -2px, 0);}
	  20%, 80% {-webkit-transform: translate3d(0, 5px, 0);transform: translate3d(0, 5px, 0);}
	  30%, 50%, 70% {-webkit-transform: translate3d(0, -10px, 0);transform: translate3d(0, -10px, 0);}
	  40%, 60% {-webkit-transform: translate3d(0, 10px, 0);transform: translate3d(0, 10px, 0);}
		100%{	}
	}
	@keyframes shake {
		0{}
	  10%, 90% {-webkit-transform: translate3d(0, -2px, 0);transform: translate3d(0, -2px, 0);}
	  20%, 80% {-webkit-transform: translate3d(0, 5px, 0);transform: translate3d(0, 5px, 0);}
	  30%, 50%, 70% {-webkit-transform: translate3d(0, -10px, 0);transform: translate3d(0, -10px, 0);}
	  40%, 60% {-webkit-transform: translate3d(0, 10px, 0);transform: translate3d(0, 10px, 0);}
		100%{	}
	}


	.bounceleft.js{
		/*-webkit-transform:translate(-200px,0);
		transform:translate(-200px,0);*/
		opacity: 0;
	}
	.bounceleft.js.on{
		-webkit-animation: bounceleft 0.9s cubic-bezier(.36,.07,.19,.97) both;
		        animation: bounceleft 0.9s cubic-bezier(.36,.07,.19,.97) both;
		opacity: 1;
		/*-webkit-transform:translate(0,0);
		transform:translate(0,0);*/
	}
	@-webkit-keyframes bounceleft {
		0% {-webkit-transform: translate(-200px,0);transform: translate(-200px,0);
		opacity: 0;}
		50% {-webkit-transform: translate(15px,0);transform: translate(15px,0);}
		70% {-webkit-transform: translate(-10px,0);transform: translate(-10px,0);}
		80% {-webkit-transform: translate(5px,0);transform: translate(5px,0);}
		90% {-webkit-transform: translate(-2px,0);transform: translate(-2px,0);}
		100% {-webkit-transform: translate(0,0);transform: translate(0,0);}
	}
	@keyframes bounceleft {
		0% {-webkit-transform: translate(-200px,0);transform: translate(-200px,0);
		opacity: 0;}
		50% {-webkit-transform: translate(15px,0);transform: translate(15px,0);}
		70% {-webkit-transform: translate(-10px,0);transform: translate(-10px,0);}
		80% {-webkit-transform: translate(5px,0);transform: translate(5px,0);}
		90% {-webkit-transform: translate(-2px,0);transform: translate(-2px,0);}
		100% {-webkit-transform: translate(0,0);transform: translate(0,0);}
	}

	.bounceright.js{
		-webkit-transform:translate(200px,0);
		    -ms-transform:translate(200px,0);
		        transform:translate(200px,0);
		opacity: 0;
	}
	.bounceright.js.on{
		-webkit-animation: bounceright 0.9s cubic-bezier(.36,.07,.19,.97) both;
		        animation: bounceright 0.9s cubic-bezier(.36,.07,.19,.97) both;
		-webkit-transform:translate(0,0);
		    -ms-transform:translate(0,0);
		        transform:translate(0,0);
		opacity: 1;
	}
	@-webkit-keyframes bounceright {
		0% {-webkit-transform: translate(200px,0);transform: translate(200px,0);
		opacity: 0;}
		50% {-webkit-transform: translate(-15px,0);transform: translate(-15px,0);}
		70% {-webkit-transform: translate(10px,0);transform: translate(10px,0);}
		80% {-webkit-transform: translate(-5px,0);transform: translate(-5px,0);}
		90% {-webkit-transform: translate(2px,0);transform: translate(2px,0);}
		100% {-webkit-transform: translate(0,0);transform: translate(0,0);
		opacity: 1;}
	}
	@keyframes bounceright {
		0% {-webkit-transform: translate(200px,0);transform: translate(200px,0);
		opacity: 0;}
		50% {-webkit-transform: translate(-15px,0);transform: translate(-15px,0);}
		70% {-webkit-transform: translate(10px,0);transform: translate(10px,0);}
		80% {-webkit-transform: translate(-5px,0);transform: translate(-5px,0);}
		90% {-webkit-transform: translate(2px,0);transform: translate(2px,0);}
		100% {-webkit-transform: translate(0,0);transform: translate(0,0);
		opacity: 1;}
	}


	.slideleft.js{
		/*-webkit-transform:translate(-100px,0);
		transform:translate(-100px,0);*/
		opacity: 0;
	}
	.slideleft.js.on{
		-webkit-animation: slideleft 0.9s cubic-bezier(.36,.07,.19,.97) both;
		        animation: slideleft 0.9s cubic-bezier(.36,.07,.19,.97) both;
		opacity: 1;
	}

	@-webkit-keyframes slideleft {
		0% {-webkit-transform: translate(-100px,0);transform: translate(-100px,0);}
		100% {-webkit-transform: translate(0,0);transform: translate(0,0);}
	}

	@keyframes slideleft {
		0% {-webkit-transform: translate(-100px,0);transform: translate(-100px,0);}
		100% {-webkit-transform: translate(0,0);transform: translate(0,0);}
	}
	.slideright.js{
		opacity: 0;
	}
	.slideright.js.on{
		-webkit-animation: slideright 0.9s cubic-bezier(.36,.07,.19,.97) both;
		        animation: slideright 0.9s cubic-bezier(.36,.07,.19,.97) both;
		opacity: 1;
	}
	@-webkit-keyframes slideright {
		0% {-webkit-transform: translate(100px,0);transform: translate(100px,0); }
		100% {-webkit-transform: translate(0,0);transform: translate(0,0); }
	}
	@keyframes slideright {
		0% {-webkit-transform: translate(100px,0);transform: translate(100px,0); }
		100% {-webkit-transform: translate(0,0);transform: translate(0,0); }
	}

	[class*="rotate-scroll"]{
		-webkit-transform:rotate(calc(var(--angle,-90deg) * (1 -  var(--offset,1))));
		    -ms-transform:rotate(calc(var(--angle,-90deg) * (1 -  var(--offset,1))));
		        transform:rotate(calc(var(--angle,-90deg) * (1 -  var(--offset,1))));
	}

	.fadein.collide.js > * > .c_columns>.didblock:nth-child(2n+1), .fadein.collide.reverse.js > * > .c_columns>.didblock:nth-child(2n){
		-webkit-transform:translate(-100px,0);
		    -ms-transform:translate(-100px,0);
		        transform:translate(-100px,0);
	}
	.fadein.collide.js > * > .c_columns>.didblock:nth-child(2n), .fadein.collide.reverse.js > * > .c_columns>.didblock:nth-child(2n+1){
		-webkit-transform:translate(100px,0);
		    -ms-transform:translate(100px,0);
		        transform:translate(100px,0);
	}

	.fadein.collide.js.on > * > .c_columns>.didblock:nth-child(2n+1), .fadein.collide.reverse.js.on > * > .c_columns>.didblock:nth-child(2n),
	.fadein.collide.js.on > * > .c_columns>.didblock:nth-child(2n), .fadein.collide.reverse.js.on > * > .c_columns>.didblock:nth-child(2n+1){
		-webkit-transform:translate(0,0);
		    -ms-transform:translate(0,0);
		        transform:translate(0,0);
	}
	.fadein.collide.js.on > * > .c_columns>.didblock:nth-child(2n+1), .fadein.collide.reverse.js.on > * > .c_columns>.didblock:nth-child(2n){
		-webkit-animation: slideleft 0.9s cubic-bezier(.36,.07,.19,.97) both;
		        animation: slideleft 0.9s cubic-bezier(.36,.07,.19,.97) both;
	}
	.fadein.collide.js.on > * > .c_columns>.didblock:nth-child(2n), .fadein.collide.reverse.js.on > * > .c_columns>.didblock:nth-child(2n+1){
		-webkit-animation: slideright 0.9s cubic-bezier(.36,.07,.19,.97) both;
		        animation: slideright 0.9s cubic-bezier(.36,.07,.19,.97) both;
	}

	.fadein.js.off, .slideup.js.off, .dropin.js.off, .slideleft.js.off, .slideright.js.off, .bounceleft.js.off, .bounceright.js.off {
		opacity: 0;
		-webkit-transition: opacity 1s ease-in-out 0s;
		-o-transition: opacity 1s ease-in-out 0s;
		transition: opacity 1s ease-in-out 0s;
	}

}
.draw.js path {
	/*stroke: #CCC;*/
	stroke-dashArray: 500;
	stroke-dashoffset: 500;
	opacity: 0;
}
.draw.on path {
	-webkit-animation-timing-function: ease-in-out;
	        animation-timing-function: ease-in-out;
	-webkit-animation-fill-mode: forwards;
	        animation-fill-mode: forwards;
	animation-iteration: 1;
	-webkit-animation-name: ShowOpacity, DrawLine;
	        animation-name: ShowOpacity, DrawLine;
	-webkit-animation-duration: 1s, 3s;
	        animation-duration: 1s, 3s;
	-webkit-animation-delay: 0s, 1s;
	        animation-delay: 0s, 1s;
}
.draw.fill.on path {
	opacity: 1;
	fill-opacity: 0;
	/*stroke: #666;
	stroke-width:1;*/
	-webkit-animation-timing-function: ease-in-out;
	        animation-timing-function: ease-in-out;
	-webkit-animation-fill-mode: forwards;
	        animation-fill-mode: forwards;
	animation-iteration: 1;
	-webkit-animation-name: DrawLine, FadeStroke, FillIn;
	        animation-name: DrawLine, FadeStroke, FillIn;
	-webkit-animation-duration: 3s, 1s, 1s;
	        animation-duration: 3s, 1s, 1s;
	-webkit-animation-delay: 0s, 2.5s, 2.5s;
	        animation-delay: 0s, 2.5s, 2.5s;
}
@-webkit-keyframes ShowOpacity {to { opacity: 1; }}
@keyframes ShowOpacity {to { opacity: 1; }}
@-webkit-keyframes DrawLine {to { stroke-dashOffset: 0; }}
@keyframes DrawLine {to { stroke-dashOffset: 0; }}
@-webkit-keyframes FadeStroke {  to { stroke-opacity: 0; }}
@keyframes FadeStroke {  to { stroke-opacity: 0; }}
@-webkit-keyframes FillIn {  from { fill-opacity: 0; }  to { fill-opacity: 1; }	}
@keyframes FillIn {  from { fill-opacity: 0; }  to { fill-opacity: 1; }	}

.js.on.delay1{ -webkit-transition-delay: 1s; -o-transition-delay: 1s; transition-delay: 1s;}
.js.on.delay2{ -webkit-transition-delay: 2s; -o-transition-delay: 2s; transition-delay: 2s;}
.js.on.delay3{ -webkit-transition-delay: 3s; -o-transition-delay: 3s; transition-delay: 3s;}
.js.on.delay4{ -webkit-transition-delay: 4s; -o-transition-delay: 4s; transition-delay: 4s;}
.js.on.delay5{ -webkit-transition-delay: 5s; -o-transition-delay: 5s; transition-delay: 5s;}

.js.on.delay1{ -webkit-animation-delay: 1s; animation-delay: 1s;}
.js.on.delay2{ -webkit-animation-delay: 2s; animation-delay: 2s;}
.js.on.delay3{ -webkit-animation-delay: 3s; animation-delay: 3s;}
.js.on.delay4{ -webkit-animation-delay: 4s; animation-delay: 4s;}
.js.on.delay5{ -webkit-animation-delay: 5s; animation-delay: 5s;}


.viewport-height-100{--min-height:calc(100vh);}
.viewport-height-75{--min-height:calc(75vh);}
.viewport-height-66{--min-height:calc(66vh);}
.viewport-height-50{--min-height:calc(50vh);}
.viewport-height-33{--min-height:calc(33vh);}
.viewport-height-25{--min-height:calc(25vh);}

[class*="viewport-height-"], [class*="viewport-height-"] .galleryImg>.didblock{
	position: relative;
	min-height:var(--min-height,100vh);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -ms-flex-line-pack: start;
      align-content: flex-start;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
[class*="viewport-height-"].bottom, .flexcenter.bottom{-webkit-box-pack: end;-ms-flex-pack: end;justify-content: flex-end;}
[class*="viewport-height-"].top, .flexcenter.top{-webkit-box-pack: end;-ms-flex-pack: end;justify-content: flex-end;}
.menuhead .content>.viewport-height-100:first-child, .content>.viewport-height-100:first-child .viewport-height-100{--min-height:calc(100vh - var(--header-height));}
.viewport-height-100 .pagewidth{ height: 100%;}
[class*="viewport-height-"] .gallery, [class*="viewport-height-"] .slideSet, [class*="viewport-height-"] .slideCont, [class*="viewport-height-"] .galleryImg, [class*="viewport-height-"] .galleryImg>.didblock, [class*="viewport-height-"] picture { min-height: var(--min-height)}
[class*="viewport-height-"] picture{ display: -webkit-box !important; display: -ms-flexbox !important; display: flex !important; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center;}

[class*="viewport-height-"] .mainwidth, [class*="viewport-height-"] .group{width:100%;z-index: auto;}

.viewport-max-height-100{ --max-height: 100vh;}
.viewport-max-height-100{ max-height: var(--max-height); position: relative; overflow: hidden;}
.menuhead .content>.viewport-max-height-100:first-child, .content>.viewport-max-height-100:first-child .viewport-height-100{--max-height:calc(100vh - var(--header-height)); }
.viewport-max-height-100 .pagewidth{ height: 100%;}
.viewport-max-height-100 .gallery, .viewport-max-height-100 .slideSet, .viewport-max-height-100 .slideCont, .viewport-max-height-100 .galleryImg, .viewport-max-height-100 .galleryImg>.didblock, .viewport-max-height-100 picture { height: 100%; max-height: var(--max-height)}
.viewport-max-height-100 picture{ display: -webkit-box !important; display: -ms-flexbox !important; display: flex !important; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center;}

/*______________________________________________________________________videos*/
.hint {
	padding: 15px;
	border: 5px solid hsl(var(--color-main));
}
.youtube.img, .videoimg{position: relative;display: inline-block}
.youtube.img img, .videoimg img{display:block}
.youtube.img::after,.videoimg::after{content:' '; background-color:rgba(0,0,0,0.5); background-image:url(_pix/videobutton.svg); background-repeat:no-repeat; background-position:center; position:absolute; top:0; left:0; right:0; bottom:0; z-index:1;}
.basepadding.videoimg::after{ background-image:none; }
.basepadding.videoimg>*{ position: relative; z-index: 2; }

.html5video video{display: block; width:100%; height: auto;}
.videoteaser {position: relative; z-index: 1;}
.videoteaser .opener{cursor: pointer; padding-bottom:0;}
.videoteaser .opener,.videoteaser .videoimg{
	-webkit-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out; }
.videoteaser.on .opener{max-height: 0;overflow: hidden;}

.videoimg {position: relative;}
.videoteaser.on .videoimg{max-height: 1000px; padding: var(--padding-v) var(--padding-h)}
.videoteaser .videoimg{max-height: 0; overflow: hidden; padding: 0 var(--padding-h)}
.videoimg::after{content:' '; background-color:rgba(0,0,0,0.5); background-image:url(_pix/videobutton.svg); background-repeat:no-repeat; background-position:center; position:absolute; top:0; left:0; right:0; bottom:0; z-index:1;}

.responsive-video iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
.responsive-video {
	position: relative;
	padding-top: 0px;
	padding-bottom: 56.25%; /* 16:9 ratio*/
	height: 0;
	overflow: hidden;
	-webkit-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}
.videoteaser .responsive-video {
	padding-bottom: 0;
	height: 0;
	overflow: hidden;
}
.responsive-video.on, .videoteaser.on .responsive-video {
position: relative;
padding-bottom: 56.25%; /* 16:9 ratio*/
}
.responsive-video video{
	width: 100%;
	height: auto;
}
/*______________________________________________________________________gallery*/
figure.galleryImg{display: inline-block;}
.pagewidth>figure.galleryImg, .mainwidth>figure.galleryImg {display: block;} /* single image, no gallery */


figure.galleryImg>img, figure.galleryImg>a, figure.galleryImg>picture, figure.galleryImg>picture>img{display: block;}

.galleryImg figcaption[style*="left:"],.galleryImg figcaption[style*="top:"], .galleryImg figcaption.L, .galleryImg figcaption.T, .galleryImg figcaption.B, .galleryImg figcaption.R  {
    position: absolute;
		width: auto;
		left: auto; top: auto; right: auto; bottom: auto;
}
.galleryImg figcaption.T{top:var(--padding-v)}
.galleryImg figcaption.R{right:var(--padding-h);}
.galleryImg figcaption.B{bottom:var(--padding-v)}
.galleryImg figcaption.L{left:var(--padding-h)}
.galleryImg figcaption[style*="left:"]:not([style*="top:"]),.galleryImg figcaption.L:not(.B):not(.T), .galleryImg figcaption.R:not(.B):not(.T) {top:50%; -webkit-transform: translate(0,-50%); -ms-transform: translate(0,-50%); transform: translate(0,-50%);}
.galleryImg figcaption[style*="top:"]:not([style*="left:"]),.galleryImg figcaption.T:not(.L):not(.R), .galleryImg figcaption.B:not(.L):not(.R){left:50%; -webkit-transform: translate(-50%,0); -ms-transform: translate(-50%,0); transform: translate(-50%,0);}
.fadeSet figcaption{
    bottom: 0;
    padding:0;
}
.fadeSet figcaption>:last-child, .slideSet figcaption>:last-child { margin-bottom: 0}

.galleryImg.center figcaption{bottom:50%; left:50%; -webkit-transform: translate(-50%,50%); -ms-transform: translate(-50%,50%); transform: translate(-50%,50%);}
.galleryImg.left figcaption{padding-left:0; text-align: left}
.galleryImg.right figcaption{padding-right:0; text-align: right}

.galleryImg.scale-100 img{width:100%; height: auto;}
.galleryImg.scale-50 img{width:50%; height: auto;}

.zoom .galleryImg {overflow: hidden;}

.gallery {
	position:relative;
	margin:0;
}

.galleryTextButton{display:none;}

.slideSet {
	position:relative;
	width:100%;
	overflow:hidden;
}
.gallery.flexH .slideSet {
	overflow:hidden;
	max-height:200px;
	-webkit-transition: max-height 0.5s ease-in-out;
	-o-transition: max-height 0.5s ease-in-out;
	transition: max-height 0.5s ease-in-out;
}
.gallery.flexH:hover .slideSet{max-height:400px;}
.gallery.flexH .slideCont{
	margin:-75px 0 0 0;
	-webkit-transition: margin 0.5s ease-in-out;
	-o-transition: margin 0.5s ease-in-out;
	transition: margin 0.5s ease-in-out;
}
.gallery.flexH:hover .slideCont{margin:0;}

.slideSet .gCont {position: relative; height: 100%; white-space: nowrap; }
.slideSet .gCont::before{content: '';height: 100%;position: relative; display: inline-block; vertical-align: middle;}

.slideSet .galleryImg {
	position:relative;
	display:inline-block;
	white-space: normal;
	text-align: center;
	vertical-align: middle;
	width:100%;

}
.slideSet:not(.contain) .galleryImg img{
	width: 100%;
	height: auto;
}
.slideSet.contain .galleryImg img{
	max-width:100%;
	max-height:100%;
	height:auto;
	width:auto;
}
/* fit 100% height > 768px vw*/
.slideSet.contain {height:100%;}
.slideSet.contain .slideCont, .slideSet.contain .gCont  {position: relative; width: 100%; height: 100%;}
.slideSet.contain .galleryImg {	height: 100%; white-space: nowrap;}
.slideSet.contain .galleryImg::before{content: '';height: 100%;position: relative; display: inline-block; vertical-align: middle;}
.slideSet.contain .galleryImg img{display: inline-block; vertical-align: middle;}
.slideSet.contain picture {font-size: 0;}
.slideSet.contain figcaption{white-space: normal;}
@media screen and (max-width:480px){
	.slideSet.contain .galleryImg {padding:0;}
}
/*@supports (object-fit: scale-down){
.slideSet.contain .galleryImg img{
	object-fit: scale-down;
	object-position: center;
	width: 100%;
	height: 100%;
}
}*/

.slideSet .galleryText, .fadeSet .galleryText {
	position:absolute;
	text-align: center;
	left:60px;
	width: 80%;
	width:calc(100% - 120px);
	top:50%;
	-webkit-transform: translate(0,-50%);
	    -ms-transform: translate(0,-50%);
	        transform: translate(0,-50%);
	z-index: 1;
}
.slideSet .galleryText>div, .fadeSet .galleryText>div {
	text-align: inherit;
	display: inline-block;
	max-width:960px;
	padding:60px;
}

.slideSet .galleryText.notcentered, .fadeSet .galleryText.notcentered {
	width: auto;
	text-align: inherit;
	-webkit-transform: none;
	    -ms-transform: none;
	        transform: none;
}
.slideSet .galleryText.relative, .fadeSet .galleryText.relative {
	position:relative;
	display: inline-block;
	left:auto;
	top:auto;
	-webkit-transform: none;
	    -ms-transform: none;
	        transform: none;
	font-size: 0.9rem; line-height: 1.25em
}

.galleryImg.schwarz .galleryText>div{background-color:rgba(0,0,0,0.8);}
.galleryImg.schwarz  *:not(.button){color:hsl(var(--color-light));}
.galleryImg.weiss{padding: 0}
.galleryImg.weiss .galleryText>div{background-color:rgba(255,255,255,0.8); padding: 15px}



.button_l .icon, .button_r .icon { display: inline-block; width:45px; height:45px; position: absolute; top:50%; left: 50%; -webkit-transform: translate(-50%,-50%); -ms-transform: translate(-50%,-50%); transform: translate(-50%,-50%); color: hsl(var(--color-main)); background-color: hsl(var(--color-light));
-webkit-transition: all 0.2s ease-in-out;
-o-transition: all 0.2s ease-in-out;
transition: all 0.2s ease-in-out;
}
.button_l:hover .icon, .button_r:hover .icon { background-color: hsl(var(--color-main)); color: hsl(var(--color-light));}

.gallery.hButtons .button_l .icon, .gallery.hButtons .button_r .icon { opacity: 0; }
.gallery.hButtons:hover .button_l .icon, .gallery.hButtons:hover .button_r .icon { opacity: 1;}


.button_l {
	position:absolute;
	display:block;
	cursor:pointer;
	top:0;
	left:0;
	height:100%;
	width:45px;
	z-index:50;
	background-color: transparent;
}
.button_r {
	position:absolute;
	display:block;
	cursor:pointer;
	top:0;
	right:0;
	height:100%;
	width:45px;
	z-index:51;
	background-color: transparent;
}
/*
.button_r .icon{display: none;}
.button_r{background-image: url("data:image/svg+xml;utf8,%3Csvg version='1.1' id='Ebene_1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' width='1000px' height='1000px' viewBox='0 0 1000 1000' enable-background='new 0 0 1000 1000' xml:space='preserve'%3E%3Cg%3E%3Cpath fill='hsl(var(--color-main))' d='M388.9,777.1c0-4,1.2-8.1,3.7-11.6L582.1,500L392.6,234.5c-6.4-9-4.3-21.5,4.7-27.9s21.5-4.3,27.9,4.7l206,288.7l-206,288.7c-6.4,9-18.9,11.1-27.9,4.7C391.8,789.4,388.9,783.3,388.9,777.1z'/%3E%3C/g%3E%3C/svg%3E");
	background-position: center; background-repeat: no-repeat; background-size: 50px 50px;
}*/
.gallery.hButtons .button_l,.gallery.hButtons .button_r {
	width:0;
	-webkit-transition: width 0.5s ease-in-out;
	-o-transition: width 0.5s ease-in-out;
	transition: width 0.5s ease-in-out;

}
.gallery.hButtons:hover .button_l,.gallery.hButtons:hover .button_r {width:45px;}

.slideSet .gCont {
	position:relative;
	width:100%;
}

.slideCoverImg {
	position:relative;
	width:100%;
	height:100%;
	background-position:center;
	background-repeat:no-repeat;
	background-size:cover;
	background-attachment:fixed;
}
@media (max-width: 1024px) {
	.slideCoverImg {background-attachment:scroll;background-size: 1024px 512px;}
}
@media (max-width: 768px) {
	.slideCoverImg {background-attachment:scroll;background-size: 768px 384px;}
}
@media (max-width: 600px) {
	.slideCoverImg {background-attachment:scroll;background-size: 600px 300px;}
}
@media (max-width: 480px) {
	.slideCoverImg {background-attachment:scroll;background-size: 480px 240px;}
}

.galleryImg .col2 {overflow: hidden;}


/*________fixed Gallery*/

.fixedgallery {
	position:relative;
}
.fixedgallery .galleryText{
	position:absolute;
}
/*________fadeSet*/
.fadeSet {
	position:relative;
	width:100%;
	overflow:hidden;
}
.gallery.flexH .fadeSet {
	overflow:hidden;
	max-height:200px;
	-webkit-transition: max-height 0.5s ease-in-out;
	-o-transition: max-height 0.5s ease-in-out;
	transition: max-height 0.5s ease-in-out;
}
.gallery.flexH:hover .fadeSet{max-height:400px;}
.gallery.flexH .fadeCont{
	margin:-75px 0 0 0;
	-webkit-transition: margin 0.5s ease-in-out;
	-o-transition: margin 0.5s ease-in-out;
	transition: margin 0.5s ease-in-out;
}
.gallery.flexH:hover .fadeCont{margin:0;}
.fadeSet{position:relative; white-space:nowrap;}
.fadeSet .galleryImg.c0, .fadeSet .galleryImg:first-child {
	position:relative;
	opacity: 1;
	margin-left:0;
}

.fadeSet .galleryImg {
	display:inline-block;
	vertical-align: middle;
	text-align:center;
	white-space:normal;
	width:100%;
	margin-left:-100%;
	position:relative;
	opacity: 0;
}
.top .fadeSet .galleryImg, .fadeSet.top .galleryImg { vertical-align: top;}
.bottom .fadeSet .galleryImg, .fadeSet.bottom .galleryImg { vertical-align: bottom;}


.fadeSet .galleryImg.cssoff {
  visibility:hidden;
  opacity:0;
  -webkit-transition:visibility 0s linear 1s, opacity 1s ease;
  -o-transition:visibility 0s linear 1s, opacity 1s ease;
  transition:visibility 0s linear 1s, opacity 1s ease;
}
.fadeSet .galleryImg.csson {
  visibility:visible;
  opacity:1;
  -webkit-transition-delay:0s;
       -o-transition-delay:0s;
          transition-delay:0s;
}
figcaption.galleryText {
    visibility: visible;
}

figure figcaption{padding: 15px;font-size: 0.8em;line-height: 1.5;}
figure>a + figcaption{pointer-events: none}
.fullimage figure {background-color: inherit;}
.fullimage figure figcaption{ position: absolute; top:0; width: 100%; font-size: inherit; line-height: inherit; color: inherit;background-color: inherit;}
.fullimage figure figcaption>:last-child{ margin-bottom: 0}
.fullimage:not([class*="bg"]) {background-color: inherit;}
.fullimage .text{ position: absolute; width: 100%; bottom: 0;background-color: inherit;}
.textbefore .fullimage .text{ bottom: auto; top:0;z-index: 5; padding: 15px;}
.textbefore .fullimage .text :last-child{ margin-bottom: 0}
.textbottom figure figcaption{ position: absolute; top:auto; bottom:0;}

.thumbnailmenu{text-align:center;-webkit-box-shadow:inset 0 0 25px 0px rgba(0,0,0,0.25);box-shadow:inset 0 0 25px 0px rgba(0,0,0,0.25)}
.thumbnailmenu:not(.boxsliderGallery) .thumbnail{ display:inline-block; padding:5px; border:1px solid #E1E1E1; margin:0 1px 1px 0; cursor:pointer; }
.thumbnailmenu .thumbnail img{display:block; opacity:0.5; cursor: pointer;}
.thumbnailmenu .thumbnail:hover img, .thumbnailmenu .thumbnail.on img{display:block; opacity:1;}

.boxsliderContainer.thumbs .button_l{left: 0}
.boxsliderContainer.thumbs .button_r{right: 0}
.boxsliderContainer.thumbs .button_l .icon{width:20px; height: 20px;}
.boxsliderContainer.thumbs .button_r .icon{width:20px; height: 20px;}

.gallerythumb {
	display: inline-block;
	vertical-align: top;
	padding:15px;
}
.gallerythumbText{ margin-top:10px;}
.gallerythumbText p{font-weight: normal; color:#333; }

.gallerythumb img, .gallerythumb .img{
	max-width:100%;
	height:auto;
	-webkit-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}
.shad .gallerythumb .img{
	-webkit-box-shadow:0 3px 5px rgba(0,0,0,0.5);
	        box-shadow:0 3px 5px rgba(0,0,0,0.5);
}
.gallerythumb .img{
	text-align: center;
	line-height: 0;
	background-color: hsl(var(--color-light));
	-webkit-box-shadow:0 3px 5px rgba(0,0,0,0);
	        box-shadow:0 3px 5px rgba(0,0,0,0);
	overflow:hidden;
}
.gallerythumb .img:hover{
	-webkit-box-shadow:0 3px 8px rgba(0,0,0,0.5);
	        box-shadow:0 3px 8px rgba(0,0,0,0.5);
}
.gallerythumb a:hover img{
	-webkit-transform: scale(1.1);
	    -ms-transform: scale(1.1);
	        transform: scale(1.1);
}
.gallerythumb .gallerythumbText{
	margin-top:10px;
}

.numbers {counter-reset: section; list-style: decimal-leading-zero;}
.numbers .gallerythumb{position: relative;}
.numbers .gallerythumb::before{counter-increment: section;  content: counters(section, ".", decimal-leading-zero); line-height: 0; display: block; position: absolute; left: 0; top:15px; width: 30px; text-align: center; z-index: 3;color:hsl(var(--color-main)); font-size: 0.8rem; font-weight: bold}
.numbers .gallerythumb::after{content: ' '; line-height: 0; display: block;position: absolute; top:0; left: 0; border: 1px solid hsl(var(--color-sec)); background-color: hsl(var(--color-light)); border-radius:50%; width: 30px; height:30px;}
/*______________________________________________________________________toggleBoxes*/
.toggleHead {cursor:pointer;}
.toggleHead, .toggleHead.toggleIcon::after{
	-webkit-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;}
.toggleHead>:last-child{margin-bottom: 0}
.toggleHead.toggleIcon {/*background:url(_pix/button_toggleOpen.svg) center left no-repeat;*/padding-right:var(--padding-h); position: relative;}
.toggleHead.toggleIcon::after{content:'+'; font-family: sans-serif; display: block; position: absolute; right: 0; top:0; text-align: center; font-weight: normal; font-size: 20px; line-height: 26px; width: 26px; height: 26px; border-radius: 50%; background-color: hsl(var(--linkcolor)); color: hsl(var(--color-light));}

.toggleBox.imageheader .toggleHead>.textpadding{padding: 0}

.bgcolor-sec .toggleHead.toggleIcon::after {color: rgb(var(--color-main));}

.toggleBox.HoJS:hover>.toggleHead.toggleIcon::after, .toggleBox.on>.toggleHead.toggleIcon::after{
	-webkit-transform: rotate(45deg);
	    -ms-transform: rotate(45deg);
	        transform: rotate(45deg);}

.toggleBox>.toggleCont {
	display:block;
	max-height:1px;
	overflow:hidden;
	padding:0;
	-webkit-transition: all 0.8s cubic-bezier(0,1,0,1);
	-o-transition: all 0.8s cubic-bezier(0,1,0,1);
	transition: all 0.8s cubic-bezier(0,1,0,1);
}
.toggleBox>.toggleCont>:first-child::before{content:'';display: block;height:1px;}

.toggleBox.HoJS:hover>.toggleCont, .toggleBox.on>.toggleCont{
	display:block;
	max-height:15000px;
	padding: 15px 0;
	-webkit-transition: all 0.8s cubic-bezier(1,0,1,0);
	-o-transition: all 0.8s cubic-bezier(1,0,1,0);
	transition: all 0.8s cubic-bezier(1,0,1,0);
}

.button.toggleHead.toggleIcon::after{
	right: 5px;
    top: 8px;
	border: 1px solid;
	background-color: transparent;
	color: inherit;
		font-weight:200
}
.button.toggleHead{padding-right: 45px;}

/*.columnbox .toggleBox.on .toggleHead, .columnbox .toggleBox.on .toggleHead>*{font-weight:bold;}
.columnbox .toggleBox.act .toggleHead, .columnbox .toggleBox.act .toggleHead>*{font-weight:bold;}*/
.columnbox .toggleBox.act>.toggleHead.toggleIcon::after{content:'-'; line-height: 20px;}

.toggleBox.bg>.toggleHead{
    background-color: hsla(var(--bgcolor-sec), 0.25);
    padding:5px 15px;
    /*border-radius: 25px;*/
	margin-bottom: 5px;
}
.bgcolor-sec .toggleBox.bg>.toggleHead{ background-color: hsla(var(--color-light), 0.25); }

.toggleBox.bg.on>.toggleHead, .toggleBox.bg.act>.toggleHead{   background-color: hsla(var(--bgcolor-main), 1);color:hsl(var(--color-light));}
.toggleBox.bg.on>.toggleHead *, .toggleBox.bg.act>.toggleHead *{ color:hsl(var(--color-light));}
.toggleBox.bg.on>.toggleHead.toggleIcon::after, .toggleBox.bg.act>.toggleHead.toggleIcon::after{background-color: rgba(255,255,255,1); color: hsl(var(--linkcolor))}

.toggleBox.bg>.toggleHead :last-child {margin-bottom: 0;}
.toggleBox.bg>.toggleHead.toggleIcon::after{right: 10px; top:50%; margin-top: -10px;}

.css_toggle {}
.css_toggle>input {display:none; width:0; height:0; overflow:hidden;}
.css_toggle>input ~ figure{ overflow: hidden; max-height: 0; padding: 0 15px;
	-webkit-transition: all 0.8s cubic-bezier(0,1,0,1);
	-o-transition: all 0.8s cubic-bezier(0,1,0,1);
	transition: all 0.8s cubic-bezier(0,1,0,1);}
.css_toggle>input:checked ~ figure{ overflow:visible; max-height: 4000px; padding: 60px 15px 30px 15px;
    background-color: hsla(var(--color-sec),0.25);
    margin: -31px 0 30px 0;
}

.css_toggle.checkbox>input ~ label:hover, .css_toggle.radio>input ~ label:hover {background-color: rgb(var(--color-main)); color: hsl(var(--color-light))}


.css_toggle.checkbox>input ~ label, .css_toggle.radio>input ~ label  {
	position:relative;
    display: block;
    margin: 0;
    padding: 8px 15px 8px 15px;
    min-height: 40px;
    outline: none;
	cursor: pointer;
    color: hsl(var(--color-light));
    background-color: hsl(var(--color-sec));
    -webkit-transition: color 0.2s ease-in-out, background-color 0.2s ease-in-out;
    -o-transition: color 0.2s ease-in-out, background-color 0.2s ease-in-out;
    transition: color 0.2s ease-in-out, background-color 0.2s ease-in-out;
}
.css_toggle.checkbox>input ~ label:hover, .css_toggle.checkbox>input:checked ~ label{background-color: hsl(var(--bgcolor-dark))}
.css_toggle.checkbox>input ~ label::before, .css_toggle.checkbox>input ~ label::after{ content: ' ';display: block;position: absolute;right: 10px;top: 19px;width: 10px;height: 2px;background-color:hsl(var(--color-main));}
.css_toggle.checkbox>input ~ label::after{ right: 14px; top:15px; width: 2px; height: 10px;}
.css_toggle.checkbox>input:checked ~ label::before{ -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg)}
.css_toggle.checkbox>input:checked ~ label::after{ -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg)}




/*______________________________________________________________________forms*/
.wS {width:155px;}
.wM {width:250px;}
.wFS{width:100%;}
.w30, .zipcode{width:30%;}
.w70, .city{width:70%;}
.wHS{width:50%;}
::-moz-placeholder {color:hsla(var(--textcolor),0.5);}
:-ms-input-placeholder {color:hsla(var(--textcolor),0.5);}
::-webkit-input-placeholder {color:hsla(var(--textcolor),0.5);}
::-ms-input-placeholder {color:hsla(var(--textcolor),0.5);}
::placeholder {color:hsla(var(--textcolor),0.5);}

input:focus, button:focus, select:focus, textarea:focus{outline: none;}

input, textarea, button{
	-webkit-appearance: none;
	   -moz-appearance: none;
	        appearance: none;
font:inherit;}

/*
.js-focus-visible :focus:not(.focus-visible) {outline: 0;}
.js-focus-visible .focus-visible:focus {outline: 2px solid #F300F4;}*/

.c_H .input,.c_M .input{display:inline-block;}
.c_S {display:block; height:1px; padding-top:1px; overflow:hidden;}
.c_S>*{margin-top: 5px}
.clock{display: inline-block; vertical-align: middle; /*background-color: hsl(var(--inputcolor));*/ border-radius:50%; padding: 5px}
.clock img{display: block}
.input, .select {
	display:inline-block;
	min-height:44px;
	background-color: hsl(var(--inputcolor));
	color:hsl(var(--textcolor));
	font-family:inherit;
	font-size:1.1rem;
	line-height: 1.25em;
	border:none;
	margin:0 0 5px 0;
	padding:10px;
	/*
	-webkit-border-radius: 6px;
    -khtml-border-radius: 6px;
    -moz-border-radius: 6px;
    border-radius: 6px;

	-moz-box-shadow: inset 0 2px 5px 0 #000;
	-webkit-box-shadow: inset 0 2px 5px 0 #000;
	box-shadow: inset 0 2px 5px 0 #000;
	*/
	-webkit-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
	-webkit-appearance: none;
	   -moz-appearance: none;
	        appearance: none;
}
.input:focus, .select:focus {background-color:hsl(var(--inputcolor-hover)); color:hsl(var(--textcolor));}
.input:hover, .select:hover {background-color:hsl(var(--inputcolor-hover)); color:hsl(var(--textcolor));}

.select option {padding-top: 10px; padding-bottom: 10px; line-height: 30px;}

.button{
	min-height:44px;
	min-width:44px;
	font-size:1.1rem;
	line-height: 1.25em;
	font-family:inherit;
	padding:10px;
	margin:0 0 10px 0;
	border:none;
	-webkit-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
	cursor:pointer;
	-webkit-appearance: none;
	   -moz-appearance: none;
	        appearance: none;
	background-color: hsl(var(--linkcolor));
	color:rgb(var(--color-white));
}
.button:hover, .button:focus {background-color:hsl(var(--inputcolor-hover)); color:hsl(var(--linkcolor));}

textarea.input{padding:10px;}

span.label {color:hsla(var(--textcolor),0.8); display: inline-block; width: 80px;}
.input[placeholder]:not([placeholder=""]) + label{color:hsla(var(--textcolor),0.8);display:none;}


.roundcheckbox {position: relative; display:inline-block; vertical-align:top; }
/*.checkboxlabel {display:inline-block; vertical-align:top; width:calc(100% - 60px);  }*/
.roundcheckbox label {display: block;  position: relative; padding-left: 40px;}
.roundcheckbox label::before {
  content: " ";
	display: block;
  background-color: hsl(var(--color-light));
  border:1px solid hsl(var(--color-main));
  border-radius: 50%;
  cursor: pointer;
  height: 28px;
  left: 0;
  position: absolute;
  top: 0;
  width: 28px;
}
.roundcheckbox label::after {
  content: " ";
  border: 2px solid hsl(var(--color-light));
  border-top: none;
  border-right: none;
  height: 6px;
  left: 7px;
  opacity: 0;
  position: absolute;
  top: 8px;
  -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
  width: 12px;
}
.roundcheckbox input[type="checkbox"] { visibility: hidden; position: absolute;}
.roundcheckbox input[type="checkbox"]:checked + label::before {background-color: hsl(var(--color-main));border-color:hsl(var(--color-main));}
.roundcheckbox input[type="checkbox"]:checked + label::after {opacity: 1;}
.roundcheckbox input[type="radio"] { visibility: hidden; position: absolute;}
.roundcheckbox input[type="radio"]:checked + label::before {background-color: hsl(var(--color-main));border-color:hsl(var(--color-main));}
.roundcheckbox input[type="radio"]:checked + label::after {opacity: 1;}


.error {
	border:5px solid hsl(var(--errorcolor));
	background-color:hsl(var(--bgcolor-content));
	padding:5px;
}
.errorField {border: 2px solid hsl(var(--errorcolor)); background-color:hsl(var(--bgcolor-content));}
.errorBox {border:5px solid hsl(var(--errorcolor)); background-color:hsl(var(--errorcolor)); padding:15px; color:hsl(var(--color-light)); margin-bottom:15px;} .errorBox *{color:hsl(var(--color-light));}
.resultBox {border:5px solid hsl(var(--resultcolor)); background-color:hsl(var(--bgcolor-content)); padding:15px; color:hsl(var(--textcolor)); margin-bottom:15px; font-size: 1.2rem;}
.errorBox>:last-child,.resultBox>:last-child{margin-bottom: 0;}

.inputSearch{
	display:inline-block;
	min-height:32px;
	height:32px;
	border:none;
	padding:0;
	margin:0;
	-webkit-box-shadow: inset 0 2px 5px 0 rgba(0,0,0,0.3);
	        box-shadow: inset 0 2px 5px 0 rgba(0,0,0,0.3);
}
.buttonSearchIcon{
	cursor:pointer;
	padding:0;
	margin:0;
	-webkit-appearance:none;
	   -moz-appearance:none;
	        appearance:none;
	background-color: transparent;
}
.buttonSearchIcon:hover{

}


.searchResult{margin:15px 0;}
.searchLink{display: block; background:hsl(var(--color-sec)); color:rgb(var(--textcolor)); padding:15px;}
.searchLink:hover, .searchLink:focus{background:hsl(var(--color-main)); color:rgb(var(--color-white)); }
.searchCont{background:hsl(var(--bgcolor-light)); border-bottom:1px solid hsl(var(--color-main)); padding:15px;}


.closeButton {
	position:absolute;
	background-color: transparent;
	-webkit-appearance:none;
	   -moz-appearance:none;
	        appearance:none;
	display:block;
	cursor:pointer;
	top:15px;
	right:15px;
	z-index:30;
}
/*.closeButton:hover {background:url(_pix/closebutton-act.svg) center no-repeat;}*/



.stoerer{position: absolute; z-index: 10; right: 5%; top:180px;}
.stoerer .textpadding{padding: 0;}
.stoerer .textpadding::after {
    content: ' ';
    width: 150%;
    height: 0;
    padding-bottom: 150%;
    background-color: hsl(var(--color-sec));
    display: block;
    position: absolute;
    top: 50%;
    border-radius: 50%;
    left: -25%;
    -webkit-transform: translate(0px, -50%);
        -ms-transform: translate(0px, -50%);
            transform: translate(0px, -50%);
    z-index: -1;
}
.stoerer *{background-color: transparent !important; color: hsl(var(--color-light)) !important;}

/*_________________________________________templates*/
/*
.sp1 {
	display:block;
	float:left;
	width:48%;
}
.sp2 {
	display:block;
	float:right;
	width:48%;
}
.sp3_1, .sp3_1s {
	display:block;
	float:left;
	width:33.33333%;
	padding:20px 10px 20px 0;
}
.sp3_23 {
	display:block;
	float:left;
	width:66.666666%;
	padding:20px 10px;
}
.sp3_2 {
	display:block;
	float:left;
	width:33.33333%;
	padding:20px 10px;
}
.sp3_3 {
	display:block;
	float:right;
	width:33.33333%;
	padding:20px 0 20px 10px;
}*/
.tcols2 .textpadding{
	-moz-column-count: 2;
	     -webkit-column-count: 2;
	        column-count: 2;
	-moz-column-gap: 30px;
	     -webkit-column-gap: 30px;
	        column-gap: 30px;
}


.colcontent{
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	        -webkit-box-orient: horizontal;
	        -webkit-box-direction: normal;
	            -ms-flex-direction: row;
	                flex-direction: row;
	        -webkit-box-align: center;
	            -ms-flex-align: center;
	                align-items: center;
	-ms-flex-wrap:wrap;
	    flex-wrap:wrap;
}
.colcontent.p15{margin-left: -15px;	margin-right: -15px;}
.colcontent.p30{margin-left: -30px;	margin-right: -30px;}
.colcontent.p60{margin-left: -60px;	margin-right: -60px;}

.colcontent.p15 .col2, .colcontent.p15 .col3, .colcontent.p15 .col4 {padding:0 15px;}
.colcontent.p30 .col2, .colcontent.p30 .col3, .colcontent.p30 .col4 {padding:0 30px;}
.colcontent.p60 .col2, .colcontent.p60 .col3, .colcontent.p60 .col4 {padding:0 60px;}

.col2 {width:50%; }
.col3 {width:33.333%;}
.col4 {width:25%;display: inline-block;}
.cols_1_2 .col2:nth-child(1){width: 33.333%}
.cols_1_2 .col2:nth-child(2){width: 66.666%}


.w33 {width:33.333%;}
.w66 {width:66.666%;}
.top .col2, .top .col3, .top .col4{ -ms-flex-item-align: start; align-self: flex-start; vertical-align: top;}
.bottom .col2, .bottom .col3, .bottom .col4{ -ms-flex-item-align: end; align-self: flex-end; vertical-align: bottom;}

.reverse .colcontent {-webkit-box-orient: horizontal;-webkit-box-direction: reverse;-ms-flex-direction: row-reverse;flex-direction: row-reverse;}

.flexheight .colcontent{-webkit-box-align: stretch;-ms-flex-align: stretch;align-items: stretch;}
.flexheight .col2, .flexheight .col3, .flexheight .col4, .flexheight .col5{display:-webkit-box;display:-ms-flexbox;display:flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
            -webkit-box-pack: justify;
                -ms-flex-pack: justify;
                    justify-content: space-between;}
.colcontent .narrowwidth{display: inline-block; text-align: left;}

.shadowbox{
	margin: 15px 0;
	display: inline-block;
	background:hsl(var(--color-light));
	-webkit-box-shadow: 0 0 20px rgba(0,0,0,0.2);
	        box-shadow: 0 0 20px rgba(0,0,0,0.2);
    border-radius: 10px;
    padding:15px;
}
.zigzagImg .mainwidth{
	padding: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	        -webkit-box-orient: horizontal;
	        -webkit-box-direction: normal;
	            -ms-flex-direction: row;
	                flex-direction: row;
	        -webkit-box-align: center;
	            -ms-flex-align: center;
	                align-items: center;
}
.zigzagImg .img {/*flex: 2.5;*/ width:66.6666%; width: calc(200% / 3); }
.zigzagImg .txt {/*flex: 1;*/ width:33.3333%; width: calc(100% / 3); padding: 45px;}
.zigzagImg .img img{width:100%; height: auto; display:block;}
.zigzagImg:nth-child(odd) .mainwidth { -webkit-box-orient: horizontal; -webkit-box-direction: reverse; -ms-flex-direction: row-reverse; flex-direction: row-reverse;}

@media screen and (max-width:900px){
.zigzagImg .img {width: 50%;}
.zigzagImg .txt {width: 50%;}
}
@media screen and (max-width:480px){
.zigzagImg .mainwidth, .zigzagImg:nth-child(odd) .mainwidth { -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column;}
.zigzagImg .img {width: 100%;}
.zigzagImg .txt {width: 100%;}
}


/*___________boxslider*/
.boxsliderContainer{
	position:relative;
	--gap:15px;
}
/*.boxsliderContainer.fullwidth{
	overflow:hidden;
}*/
@media screen and (max-width: var(--pagewidthmax)) {
.boxsliderContainer.fullwidth{padding: 0 var(--padding-h);}
}
.boxsliderGallery{
	position:relative;
	overflow:hidden;
	margin:0;
}
.boxsliderGallery.flexW { margin:0; }

.boxsliderContent{
	text-align: center;
	position:relative;
	white-space: nowrap;
	margin-left: calc(-0.5 * var(--gap));
}
.boxsliderBox{
	display:inline-block;
	width:33.3333%;
	padding: calc(0.5 * var(--gap));
	white-space: normal;
	vertical-align:top;
}
.flexW .boxsliderBox{width:auto; max-width: 100%; vertical-align: middle;}

.book .boxsliderBox:nth-child(odd){padding: 10px 15px 10px 0px;}
.book .boxsliderBox:nth-child(even){padding: 10px 1px 10px 15px;}
.shad .boxsliderBox img{
	-webkit-box-shadow:0 3px 5px #333;
	        box-shadow:0 3px 5px #333;
}
.boxsliderBox .thumb{margin-bottom:15px;}

.boxsliderContainer .button_l{
	left:-30px;
	width:60px;
}
.boxsliderContainer .button_r{
	right:-30px;
	width:60px;
}
@media screen and (min-width: var(--mainwidthmax)) {
.boxsliderContainer .button_r{right:0;}
.boxsliderContainer .button_l{left:0;}
}
.boxsliderContainer.fullwidth .button_r{right:0;}
.boxsliderContainer.fullwidth .button_l{left:0;}

.boxsliderConatiner.headergallery{margin: 0;}
.boxsliderContainer.headergallery .boxsliderBox{padding: 0;}
.boxsliderContainer.headergallery .boxsliderContainer .button_r{right:0px;}
.boxsliderContainer.headergallery .boxsliderContainer .button_l{left:0px;}
.boxsliderContainer.headergallery .boxsliderGallery.flexW { margin: 0;}

/*_____teaser*/
.teaserblock {
	display: inline-block;
	vertical-align: top;
	padding:10px 30px 10px 10px;
	width:33%;
}

.newsteaser{
	margin-bottom: var(--padding-v);
	position:relative;
	display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; -webkit-box-align: center; -ms-flex-align: center; align-items: center;
}
.newsteaserimg{
	margin-right: var(--padding-h);
	display:block;
	min-height:150px;
	width: 25%;
}
.newsteaserimg img{
	/*width:100%;
	height:auto;*/
}
.newsteasertext {max-width: 80ch; width: 50%;}
.newsfilter {/*background-color: var(--bgcolor-light)*/}
.newsteaser.off{display: none}

@media screen and (max-width:768px){
	.newsteasertext {width:100%;}
}
.objItem{  overflow: hidden; /*	max-height:100%; display: initial; opacity: 1; position: relative;
transition: opacity 0.6s ease, max-height 0.3s ease 0.3s;*/
animation: showObj 1s linear; animation-iteration-count: 1; animation-fill-mode: forwards;}
.objItem.off{/*display: none;*//*position: absolute;*/
	/*max-height: 2px; opacity: 0.5; transition: max-height 0.3s ease 0s, opacity 0.3s ease 0.3s;*/
animation: hideObj 1s linear; animation-iteration-count: 1; animation-fill-mode: forwards;}

@keyframes hideObj {
/*	0% { opacity: 1; }*/
	99% {opacity: 0; position: relative; }
	100%   { position: absolute; opacity: 0; height: 0}
}
@keyframes showObj {
	0% { position: absolute; }
	1% { position: relative; opacity: 0;}
	100%   { opacity: 1;}
}


/*
ul.filtermenu.columns{
-webkit-columns: 300px auto;
   -moz-columns: 300px auto;
        columns: 300px auto;
-webkit-column-gap: 30px;
  -moz-column-gap: 30px;
  column-gap: 30px;
  -webkit-column-rule: 1px solid #CCC;
  -moz-column-rule: 1px solid #CCC;
  column-rule: 1px solid #CCC;
}*/

ul.filtermenu{text-align: left; /*padding-bottom: var(--padding-v);*/}
ul.filtermenu li::before { display:none;}
ul.filtermenu li{margin:0 0; display: inline-block;}
ul.filtermenu li a{font-weight:bold; padding:0.5em 0.75em; display: inline-block;}
/*ul.filtermenu li:first-child a{font-weight:normal;}*/
ul.filtermenu li li a{font-weight:normal;}
ul.filtermenu li li li a{font-weight:normal; font-size:0.8em;}
/*ul.filtermenu a.act{ background-color:hsl(var(--color-main));color:hsl(var(--color-light));}*/

ul.filtermenu li > a{position: relative;}
ul.filtermenu li > a::after {
	content: '';
	display: block;
	width: 0;
	position: absolute;
	bottom: 8px;
	height: 2px;
	background-color: hsl(var(--color-main));
	-webkit-transition: width 0.2s ease;-o-transition: width 0.2s ease;transition: width 0.2s ease;
}
ul.filtermenu li.act > a::after, ul.filtermenu li:hover > a::after  {
	width: calc(100% - 1.5em);
}

ul.filtermenu.columns{text-align: left; overflow: hidden; -ms-flex-wrap: wrap;flex-wrap: wrap;-ms-flex-line-pack: start;align-content: flex-start;-webkit-box-align: stretch;-ms-flex-align: stretch;align-items: stretch;-webkit-box-pack: start;-ms-flex-pack: start;justify-content: flex-start;
}
ul.filtermenu.columns>li{display:inline-block; vertical-align: top; text-align: left; margin:0; padding:15px; /*width: 16.666%;*/ position: relative; border-left: 1px solid hsl(var(--color-main)); min-width: 16.666%}
ul.filtermenu.columns li a{padding:0.15em 0.75em;}
/*.filtermenu.columns>li::before, .filtermenu.columns>li::after{content: '';
    width: 1px;
    height: 100%;
    border-left:1px solid hsl(var(--color-main));
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    height: 2000px;
}*/
/*.filtermenu.columns>li::after{right:0; left: auto;}*/
ul.filtermenu.columns>li:not(:last-child)::after{content: none;}
ul.filtermenu.columns>li li{display:block;}
ul.filtermenu.columns li > a::after {bottom: 0px;}
/*ul.filtermenu.columns li.act > a::after, .filtermenu.columns li:hover > a::after  {width: 100%; bottom: 0}*/
@media screen and (max-width:480px){
	ul.filtermenu li:hover > ul, ul.filtermenu li.act > ul{max-height: 1000px;}
	ul.filtermenu ul {
    position: relative;
    margin: 0;
    max-height: 1px;
    padding-top: 1px;
    -webkit-transition: max-height 0.5s ease-in-out 0.5s,visibility 0s ease 0.5s,opacity 0.5s ease 0.5s,margin 0.5s ease 0.5s;
    -moz-transition: max-height 0.5s ease-in-out 0.5s,visibility 0s ease 0.5s,opacity 0.5s ease 0.5s,margin 0.5s ease 0.5s;
    -ms-transition: max-height 0.5s ease-in-out 0.5s,visibility 0s ease 0.5s,opacity 0.5s ease 0.5s,margin 0.5s ease 0.5s;
    -o-transition: max-height 0.5s ease-in-out 0.5s,visibility 0s ease 0.5s,opacity 0.5s ease 0.5s,margin 0.5s ease 0.5s;
    transition: max-height 0.5s ease-in-out 0.5s,visibility 0s ease 0.5s,opacity 0.5s ease 0.5s,margin 0.5s ease 0.5s;
    overflow: hidden;
	}
}
#singleItem{
	width:100%;
	position:absolute;
	left: 0;
	top: -100%;
	z-index: 11000;
	background:hsl(var(--bgcolor-content));
	/*max-height: 0;*/
	overflow: hidden;
	max-height:90%;
	-webkit-transition: all 1s ease-in-out;
	-o-transition: all 1s ease-in-out;
	transition: all 1s ease-in-out;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;

}
#singleItem.open{
	top:0;
	/*max-height: 10000px;
	max-height: calc(3 * 100vh);*/
	max-height: none;
	min-height: 100%;
	min-height: calc(100vh);
}
#closeSingle{
	position: fixed;
	top:15px;
	right:15px;
	z-index: 10000;
	line-height: 0;
}
#closeSingle .icon{width: 45px; height: 45px;}

.teamobject {position: relative}
.teamobject .galleryText>* {
    max-width: calc(var(--mainwidthmax) - 60px);
    margin: auto;
}
.teamobject .galleryText {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 30px;
    background-color: rgba(0,0,0,0.3);
}
.galleryText :last-child, .galleryText>div :last-child {
    margin-bottom: 0;
}

.img.quad{width:100%; height: 0; padding-bottom: 100%; background-color: hsl(var(--color-light)); position: relative;}
.img.quad img{
    width: 80%;
    position: absolute;
    top: 50%;
    left: 10%;
    -webkit-transform: translate(0,-50%);
        -ms-transform: translate(0,-50%);
            transform: translate(0,-50%);
}

/*
.gridgallery {
	position:relative;
	margin: 0;
	margin: var(--gridpadding);
}
.mainwidth .gridgallery{
	margin: -var(--gridpadding);
}
.griditem{
	display:inline-block;
	vertical-align: top;
	margin:var(--gridpadding);
	padding: 0;
}
.griditem a{--linkcolor:var(--textcolor)}
.griditem .title>*:last-child{margin-bottom: 0}
.griditem{width:calc( 100% / var(--gridcolumns) - ( 2 * var(--gridpadding) ) )}
.griditem.wide{width:calc( ( 2 * 100% / var(--gridcolumns)) - ( 2 * var(--gridpadding) ) )}

.cols2 .griditem{width:calc( 100% / 2 - ( 2 * var(--gridpadding) ) )}
.cols2 .griditem.wide{width:calc( ( 2 * 100% / 2) - ( 2 * var(--gridpadding) ) )}
.cols3 .griditem{width:calc( 100% / 3 - ( 2 * var(--gridpadding) ) )}
.cols3 .griditem.wide{width:calc( ( 2 * 100% / 3) - ( 2 * var(--gridpadding) ) )}
.cols4 .griditem{width:calc( 100% / 4 - ( 2 * var(--gridpadding) ) )}
.cols4 .griditem.wide{width:calc( ( 2 * 100% / 4) - ( 2 * var(--gridpadding) ) )}
.cols5 .griditem{width:calc( 100% / 5 - ( 2 * var(--gridpadding) ) )}
.cols5 .griditem.wide{width:calc( ( 2 * 100% / 4) - ( 2 * var(--gridpadding) ) )}


.frame .griditem picture { display:block; padding:var(--thumbpadding); }
.quad.frame .griditem>picture{padding:0 var(--thumbpadding); height:0; padding-bottom:100%; background-color:hsl(var(--color-light)); overflow:hidden;
	display: flex;
	flex-direction: column;
	justify-content: center;}

.shadow .griditem .img { box-shadow:0 0 15px rgba(0,0,0,0.5)}

.griditem .img a{position: absolute; display: block; width: 100%; height: 100%;}
.griditem {overflow:hidden; position: relative;}
.griditem .img::before{pointer-events: none}
.griditem .img img, .griditem .img::before{
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-ms-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	transition: all 0.5s ease;
}
.griditem .img { position: relative; height: 0; overflow: hidden; padding-bottom: calc( 100% * var(--aspectratio_l))}
.griditem.wide .img {padding-bottom: calc( (50% - 1 * var(--gridpadding)) * var(--aspectratio_l))}
.griditem.tall .img {padding-bottom: calc( (200% * var(--aspectratio_l) + 2 * var(--gridpadding)) - 1px )}
.quad .griditem .img { padding-bottom: 100%}
.quad .griditem.tall .img {padding-bottom:calc(200% + 2 * var(--gridpadding) - 1px)}

.griditem .caption, .griditem .teaser, .griditem .title{
	-webkit-transition: all 1.5s ease;
	-moz-transition: all 1.5s ease;
	-ms-transition: all 1.5s ease;
	-o-transition: all 1.5s ease;
	transition: all 1.5s ease;
}

.gridgallery .griditem .img img.image-scale-100{
	-webkit-transform:scale(1);
	transform:scale(1);
}

.gridgallery .griditem:hover .img img, .gridgallery .griditem.hover .img img{
	-webkit-transform:scale(1.1);
	transform:scale(1.1);
}

.extraCaption .griditem.withcaption .img::before{content:none; display: none}
.extraCaption .griditem:not([class*="bgcolor"]) {background-color:hsl(var(--bgcolor-light));}
.extraCaption .griditem.withcaption{width:calc( 200% / var(--gridcolumns) - ( 2 * var(--gridpadding) ) )}
.extraCaption .griditem .caption {
    position: absolute;
    left: calc(50% - var(--gridpadding));
    top: 50%;
    z-index: 2;
    -webkit-transform: translate(0,-50%);
    transform: translate(0,-50%);
    width: calc(50% + var(--gridpadding));
    padding: 15px;
	text-align: center
}
.quad.extraCaption .griditem.withcaption .img {width: 50%;padding-bottom: calc( 50% * 1);}

.extraCaption .griditem.withcaption .img {width:calc( (50% - var(--gridpadding)) ); padding-bottom: calc( (50% - var(--gridpadding))  * var(--aspectratio_l) )}
.extraCaption .griditem.withcaption.wide .img {width:100%; padding-bottom: calc( 2 * (50% - var(--gridpadding)) * var(--aspectratio_l) + 2 * var(--gridpadding))}
.extraCaption .griditem.withcaption.wide .img>picture {overflow: hidden; display: block; width:100%; height: 0; padding-bottom: calc( (50% - var(--gridpadding)) * var(--aspectratio_l) )}
.extraCaption .griditem.withcaption.tall .img {padding-bottom: calc( 2 * (50% - var(--gridpadding)) * var(--aspectratio_l) + 2 * var(--gridpadding))}
.extraCaption .griditem.withcaption.wide .caption {left: 0; top: 75%; width: 100%}

.dynamicCaption .griditem.withcaption .img::before{
	content:' ';
	position:absolute;
	top:0;left:0;width: 100%;height: 100%;
	z-index:1;
	background-color:rgba(55,55,55,0);
}
.dynamicCaption .griditem .img img.image-scale-100{
	-webkit-transform:scale(1);
	transform:scale(1);
	-webkit-filter: blur(0);
    filter: blur(0);
}
.dynamicCaption .griditem.withcaption:hover .img img.image-scale-100, .dynamicCaption .griditem.withcaption.hover .img img.image-scale-100{
	-webkit-transform:scale(1.1);
	transform:scale(1.1);
	-webkit-filter: blur(2px);
    filter: blur(2px);
}
.dynamicCaption .griditem:hover .img::before, .dynamicCaption  .griditem.hover .img::before{background-color:hsla(var(--bgcolor-dark),0.8);}
.dynamicCaption .griditem.bgcolor-main:hover .img::before, .dynamicCaption .griditem.bgcolor-main.hover .img::before{background-color:hsla(var(--bgcolor-main),0.8);}
.dynamicCaption .griditem.bgcolor-light:hover .img::before, .dynamicCaption .griditem.bgcolor-light.hover .img::before{background-color:hsla(var(--bgcolor-light),0.8);}
.dynamicCaption .griditem.bgcolor-sec:hover .img::before, .dynamicCaption .griditem.bgcolor-sec.hover .img::before{background-color:hsla(var(--bgcolor-sec),0.8);}
.dynamicCaption .griditem .caption {position:absolute; left:0; top:50%; z-index:2; -webkit-transform:translate(0,-50%); transform:translate(0,-50%); width: 100%; padding: 15px;}
.dynamicCaption .griditem .title :last-child, .griditem .teaser :last-child{margin-bottom: 0}
.dynamicCaption .griditem .title { opacity:0; -webkit-transform:translate(-20px,0); transform:translate(-20px,0); padding:0; width: 100%;}
.dynamicCaption .griditem .teaser{ opacity:0; -webkit-transform:translate(20px,0); transform:translate(20px,0); padding-top:15px; }
.dynamicCaption .griditem:hover .title, .dynamicCaption .griditem:hover .teaser{opacity:1; -webkit-transform:translate(0,0); transform:translate(0,0);}
.dynamicCaption .griditem:focus .title, .dynamicCaption .griditem:focus .teaser{opacity:1; -webkit-transform:translate(0,0); transform:translate(0,0);}
.dynamicCaption .griditem:active .title, .dynamicCaption .griditem:active .teaser{opacity:1; -webkit-transform:translate(0,0); transform:translate(0,0);}
.dynamicCaption .griditem.hover .title, .dynamicCaption .griditem.hover .teaser{opacity:1; -webkit-transform:translate(0,0); transform:translate(0,0);}

.showCaption .griditem .caption {position: absolute; top: auto; bottom: 0; width: 100%}
.showCaption .griditem .img::before{content: none; display: none;}
.showCaption .griditem .caption{opacity: 1; -webkit-transform:translate(0,0); transform:translate(0,0); left: 0; bottom: 0; padding: 0}
.showCaption .griditem .caption{padding:0; background-color: hsla(var(--bgcolor-main),0.75);}
.showCaption .griditem .caption .title {padding: 20px 20px;}
.showCaption .griditem .caption .title :last-child{ margin-bottom: 0}
.showCaption .griditem .caption *:not([class^="col"]){ color: hsl(var(--color-light))}
.showCaption .griditem:hover .caption{background-color: hsla(var(--bgcolor-main),0.95);}
.showCaption .griditem:focus .caption{background-color: hsla(var(--bgcolor-main),0.95);}
.showCaption .griditem:active .caption{background-color: hsla(var(--bgcolor-main),0.95);}
.showCaption .griditem.hover .caption{background-color: hsla(var(--bgcolor-main),0.95);}
.showCaption .griditem .title ~ .teaser{padding-top:0!important;}
.showCaption .griditem .teaser {max-height: 0; overflow: hidden; padding: 0 20px; -webkit-transform:translate(0,0); transform:translate(0,0);}
.showCaption .griditem:hover .teaser{ padding: 20px 20px;max-height:500px; }
.showCaption .griditem:focus .teaser{ padding: 20px 20px;max-height:500px; }
.showCaption .griditem:active .teaser{ padding: 20px 20px;max-height:500px; }
.showCaption .griditem.hover .teaser{ padding: 20px 20px;max-height:500px; }
.showCaption .griditem:hover .caption *:not([class^="col"]){ color: hsl(var(--color-light))}
.showCaption .griditem:focus .caption *:not([class^="col"]){ color: hsl(var(--color-light))}
.showCaption .griditem:active .caption *:not([class^="col"]){ color: hsl(var(--color-light))}
.showCaption .griditem.hover .caption *:not([class^="col"]){ color: hsl(var(--color-light))}

@media screen and (min-width: var(--pagewidthmax) ) {
	.menuhead :not(.mainwidth)>>.griditem{width:calc( (var(--pagewidthmax) - ( 2 * var(--gridpadding))) / var(--gridcolumns) - ( 2 * var(--gridpadding) ) )}
	.menuhead :not(.mainwidth)>>.griditem.wide{width:calc( ( 2 * (var(--pagewidthmax) - ( 2 * var(--gridpadding))) / ( var(--gridcolumns))) - ( 2 * var(--gridpadding) ) )}

	.menuleft .mainwidth .griditem{width:calc( 100% / ( var(--pagewidthmax) - var(--leftmenu-width) ) - ( 2 * var(--gridpadding) ) )}
	.menuleft .mainwidth .griditem.wide{width:calc( 2 * 100% / ( var(--pagewidthmax) - var(--leftmenu-width) ) - ( 2 * var(--gridpadding) ) )}
}
@media screen and (max-width: 1024px) {
	/* 4 columns › 3 columns*
	.griditem, .mainwidth .griditem{width:calc( 100% / 3 - ( 2 * var(--gridpadding) ) )}
	.griditem.wide, .mainwidth .griditem.wide{width:calc( 2 * 100% / 3 - ( 2 * var(--gridpadding) ) )}
	.griditem .img { position: relative; height: 0; overflow: hidden; padding-bottom: calc( 100% * var(--aspectratio_m))}
	.griditem.wide .img {padding-bottom: calc( 2 * (50% - 1 * var(--gridpadding)) * var(--aspectratio_m) + 2 * var(--gridpadding)) }
	.griditem.tall .img {padding-bottom: calc( (200% * var(--aspectratio_m) + 2 * var(--gridpadding)) )}
	/*extraCaption*
	.extraCaption .griditem, .extraCaption .mainwidth .griditem,
	.extraCaption .griditem.withcaption:not(.wide), .extraCaption .mainwidth .griditem.withcaption:not(.wide){width:calc( 100% / 3 - ( 2 * var(--gridpadding) ) )}
	.extraCaption .griditem.withcaption .img { width:100%; padding-bottom: calc( 200% * var(--aspectratio_m) + 2 * var(--gridpadding))}
	.extraCaption .griditem.withcaption .img>picture { display:block; height: 0; overflow: hidden; padding-bottom: calc( 100% * var(--aspectratio_m))}
	.extraCaption .griditem.withcaption .caption { left: 0; top: 75%; width: 100%}
	.extraCaption .griditem.withcaption.tall .img{ width: 100%; padding-bottom: calc( (300% * var(--aspectratio_m) + 4 * var(--gridpadding)) - 1px )}
	.extraCaption .griditem.withcaption.tall .img>picture { padding-bottom: calc( 200% * var(--aspectratio_m) + 2 * var(--gridpadding))}
	.extraCaption .griditem.withcaption.tall .caption { left: 0; top: 83.333%; width: 100%}
	.extraCaption .griditem.withcaption.wide {width: calc( 2 * 100% / 3 - ( 2 * var(--gridpadding) ) )}
	.extraCaption .griditem.withcaption.wide .img {padding-bottom: calc( 2 * (50% - var(--gridpadding)) * var(--aspectratio_m) + 2 * var(--gridpadding)) }
	.extraCaption .griditem.withcaption.wide .img>picture {padding-bottom: calc( (50% - var(--gridpadding)) * var(--aspectratio_m) )}

	.quad .griditem.withcaption.tall .img {padding-bottom: 200%;}
	.quad.extraCaption .griditem.withcaption .img {width: 100%;padding-bottom: 200%;}
	.quad.extraCaption .griditem.withcaption .img>picture {padding-bottom: 100%;}

}
@media screen and (max-width: 768px) {
	.griditem, .mainwidth .griditem{width:calc( 100% / 2 - ( 2 * var(--gridpadding) ) )}
	.griditem.wide, .mainwidth .griditem.wide{width:calc( 100% - ( 2 * var(--gridpadding) ) )}
	.griditem .caption {padding:0 45px 30px 45px;}.griditem .teaser{padding:0 45px;}
	.griditem.wide .img {padding-bottom: calc( (50% - 1 * var(--gridpadding)) * var(--aspectratio_m))}

	.extraCaption .griditem, .extraCaption .mainwidth .griditem,
	.extraCaption .griditem.withcaption:not(.wide), .extraCaption .mainwidth .griditem.withcaption:not(.wide){width:calc( 100% / 2 - ( 2 * var(--gridpadding) ) )}
	.extraCaption .griditem.withcaption .img { width:100%; padding-bottom: calc( 200% * var(--aspectratio_m) + 2 * var(--gridpadding))}
	.extraCaption .griditem.withcaption .img>picture { display:block; height: 0; overflow: hidden; padding-bottom: calc( 100% * var(--aspectratio_m))}
	.extraCaption .griditem.withcaption .caption { left: 0; top: 75%; width: 100%}
	.extraCaption .griditem.withcaption.tall .img{ width: 100%; padding-bottom: calc( (300% * var(--aspectratio_m) + 4 * var(--gridpadding)) )}
	.extraCaption .griditem.withcaption.tall .img>picture { padding-bottom: calc( 200% * var(--aspectratio_m) + 2 * var(--gridpadding))}
	.extraCaption .griditem.withcaption.tall .caption { left: 0; top: 83.333%; width: 100%}
	.extraCaption .griditem.withcaption.wide {width: calc( 100% - ( 2 * var(--gridpadding) ) );}
	.extraCaption .griditem.withcaption.wide .img>picture {padding-bottom: calc( (50% - var(--gridpadding)) * var(--aspectratio_m) )}
}
@media screen and (max-width: 600px) {.griditem .caption {padding:0 30px 30px 30px;}.griditem .teaser{padding:0 30px;}}
@media screen and (max-width: 480px) {
	.griditem, .mainwidth .griditem{width:calc( 100% - ( 2 * var(--gridpadding) ) )}
	.griditem.wide .img, .griditem.tall .img { position: relative; height: 0; overflow: hidden; padding-bottom: calc( 100% * var(--aspectratio_m))}

	.extraCaption .griditem, .extraCaption .mainwidth .griditem,
	.extraCaption .griditem.withcaption:not(.wide), .extraCaption .mainwidth .griditem.withcaption:not(.wide){width:calc( 100% - ( 2 * var(--gridpadding) ) )}
	.extraCaption .griditem.withcaption{width:calc( 100% - ( 2 * var(--gridpadding) ) )}
	.extraCaption .griditem.withcaption .img, .extraCaption .griditem.withcaption.wide .img, .extraCaption .griditem.withcaption.tall .img { position: relative; height: auto; overflow: hidden; padding-bottom: 0}
	.extraCaption .griditem.withcaption .caption, .extraCaption .griditem.withcaption.wide .caption, .extraCaption .griditem.withcaption.tall .caption { position: relative; top:auto; left: auto; transform: none;-webkit-transform:none; height: auto; }
	.extraCaption .griditem.withcaption .img>picture, .extraCaption .griditem.withcaption.wide .img>picture, .extraCaption .griditem.withcaption.tall .img>picture{height:0;padding-bottom: calc( 100% * var(--aspectratio_m))}


	.quad.extraCaption .griditem.withcaption .img {position: relative; height: auto; overflow: hidden; padding-bottom: 0}
}
@media screen and (max-width: 320px) {
	.griditem .img, .griditem.wide .img, .griditem.tall .img { position: relative; height: 0; overflow: hidden; padding-bottom: calc( 100% * var(--aspectratio_s))}
	.extraCaption .griditem.withcaption .img>picture, .extraCaption .griditem.withcaption.wide .img>picture, .extraCaption .griditem.withcaption.tall .img>picture{height:0;padding-bottom: calc( 100% * var(--aspectratio_s))}
}

.nocrop .griditem img.image-scale-100 {
    width: auto;
    height: auto;
}
.griditem .pagetitle{margin: 15px 0}

*/

/*_____________________________________________thmubgallery*/
.thumbgallery {
	--gap:var(--thumbpadding);
	position:relative;
	margin: calc(-0.5 * var(--gap));
}
.thumbitem{
	display:inline-block;
	vertical-align: middle;
	margin:calc(0.5 * var(--gap));
	padding: 0;
}
.top .thumbitem{vertical-align: top;}
.middle .thumbitem{vertical-align: middle;}
.bottom .thumbitem{vertical-align: bottom;}

.thumbitem.bordered{border:none}
.thumbitem.bordered .img{border:1px solid var(--textcolor)}
.g15>*>.thumbgallery {--gap:15px}
.g30>*>.thumbgallery {--gap:30px}
.g45>*>.thumbgallery {--gap:45px}
.g60>*>.thumbgallery {--gap:60px}
.g90>*>.thumbgallery {--gap:90px}
.g120>*>.thumbgallery {--gap:120px}
.columns .thumbgallery{margin: calc(-0.5 * var(--gap));}
.columns .thumbitem{width:calc( 100% / var(--cols) - var(--gap))}

.thumbitem a{--linkcolor:var(--textcolor)}
.thumbitem a:hover{--linkcolor-hover:var(--textcolor)}


.nocrop:not(.quad):not([class*="cols"]) .thumbitem{width:auto !important}
.nocrop:not(.quad) .thumbitem img{ display: block}

.thumbitem .img::before{pointer-events: none}
.thumbitem .img, .thumbitem .img::before{
	-webkit-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	transition: all 0.5s ease;
}
.thumbitem .img { position: relative; /*height: 0; padding-bottom: calc( 100% * var(--aspectratio_m)) */ }
.quad .thumbitem .img { height:0; padding-bottom: 100%; /*overflow: hidden;*/}
.frame .thumbitem .img picture { display:block; padding:var(--thumbpadding); }
.quad.nocrop .thumbitem .img picture{position:absolute; height:100%; width: 100%; overflow:hidden;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;-ms-flex-align: center;align-items: center;}
.quad.nocrop .thumbitem .img picture img{max-height: 100%;}
.top .quad.nocrop .thumbitem .img picture{-webkit-box-pack: start;-ms-flex-pack: start;justify-content: flex-start;}
.bottom .quad.nocrop .thumbitem .img picture{-webkit-box-pack: end;-ms-flex-pack: end;justify-content: flex-end;}
.shadow .thumbitem .img { -webkit-box-shadow:0 0 15px rgba(0,0,0,0.5); box-shadow:0 0 15px rgba(0,0,0,0.5)}

.thumbitem .caption{margin-top:calc(2 * var(--thumbpadding)) }
.thumbitem .caption, .thumbitem .teaser, .thumbitem .title{/*cubic-bezier(0.47, 0, 0.75, 0.72)*/
	-webkit-transition: all 1.5s ease;
	-o-transition: all 1.5s ease;
	transition: all 1.5s ease;
}
.thumbitem .img{
	-webkit-transform:scale(1);
	    -ms-transform:scale(1);
	        transform:scale(1);
}
.thumbitem a:hover .img, .thumbitem a.hover .img{
	-webkit-transform:scale(1.1);
	    -ms-transform:scale(1.1);
	        transform:scale(1.1);
}
/*
@media screen and (max-width: 1024px) {
	.thumbitem, .mainwidth .thumbitem{width:calc( 100% / 3 - ( 2 * var(--thumbpadding) ) )}
}
@media screen and (max-width: 768px) {
	.thumbitem, .mainwidth .thumbitem{width:calc( 100% / 2 - ( 2 * var(--thumbpadding) ) )}
}
@media screen and (max-width: 480px) {
	.thumbitem, .mainwidth .thumbitem{width:calc( 100% - ( 2 * var(--thumbpadding) ) )}
}*/

.greyscale img{
   /* filter: url(data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'grayscale\'><feColorMatrix type=\'matrix\' values=\'0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\'/></filter></svg>#grayscale);*/
    -webkit-filter: gray;
            filter: gray;
	-webkit-filter: grayscale(100%);
	        filter: grayscale(100%);
	-webkit-transition: all 1.5s ease;
	-o-transition: all 1.5s ease;
	transition: all 1.5s ease;
}
.greyscale img:hover, .greyscale .hover img{
	-webkit-filter:none;
	        filter:none;
	-webkit-filter: grayscale(0);
	        filter: grayscale(0);
}

/*_____presentation*/
.objectlistitem{
	position: relative;
	z-index: 1;
	min-height: 100vh;
}
.objectlistitem>.pagewidth>section {
    position: sticky;
    top: 0;
    width: 33.333%;
    min-height: 100vh;
	margin-bottom: -100vh;
}
.objectlistitem>.pagewidth>div {
    width: 66.666%;
	margin-left: 33.333%;
}
.objectlistitem>.pagewidth>div .mainwidth {
    padding-left: 60px;
    padding-right: 60px;
}

.objectlistitem>.scroll2next{
	z-index: 5;
	left: 0;
	bottom: 60px;
	position: sticky;
}
.objectlistitem>.scroll2next a{position: absolute; left: 30px; }

.objmenu {
	position: fixed;
    position: sticky;
	z-index: 100;
	left:0;
	top:0;
	width: 300px;
	margin-left: calc(100vw - 330px)
}
.objmenu ul .name *{font-size: 1rem; margin-bottom: 0; font-weight: bold; }
.objmenu ul .teaser *{font-size: 0.8rem;}
.objmenu ul li a{color: hsl(var(--color-light)); margin-bottom: 15px;}
.objmenu ul li a:hover{color:hsl(var(--color-main));}

.ankermenu li::before{content: '→'; font-weight: normal; padding-right: 5px; margin-left: 5px;font-size: 0.7em}
/*.cols_1_2 .ankermenu{position: fixed;position: sticky;z-index: 100;top:0; background-color: hsl(var(--color-light));}*/
.cols_1_2 .ankermenu li{display: inline-block;  }
/*_____tables*/

table.head th{position: sticky; top: 0}

.tcell {
	display: inline-block;
	padding:8px 8px 8px 0;
	min-width: -webkit-min-content;
	min-width: -moz-min-content;
	min-width: min-content
}

.table.top .tcell {vertical-align: top}
.table.middle .tcell {vertical-align: middle}
.table.bottom .tcell {vertical-align: bottom}
.table.bottom .tcell :last-child{margin-bottom: 0}


.tcell.left{text-align:left;}
.tcell.center{text-align:center;}
.tcell.right{text-align:right;}
.tcell.tc2{width:50%;}
.tcell.tc2.cs2{width:100%;}
.tcell.tc3{width:33.333%;}
.tcell.tc3.cs2{width:66.666%;}
.tcell.tc4{width:25%;}
.tcell.tc4.cs2{width:50%;}
.tcell.tc4.cs3{width:75%;}
.tcell.tc4.cs4{width:100%;}
.tcell.tc5{width:20%;}
.tcell.tc5.cs2{width:40%;}
.tcell.tc5.cs3{width:60%;}
.tcell.tc5.cs4{width:80%;}
.tcell.tc5.cs5{width:100%;}
.tcell.tc6{width:16.666%;}
.tcell.tc6.cs2{width:33.333%;}
.tcell.tc6.cs3{width:50%;}
.tcell.tc6.cs4{width:66.666%;}
.tcell.tc6.cs5{width:83.333%;}
.tcell.tc6.cs6{width:100%;}
/*.lines .tcell{border-top:1px solid #B3B3B3;}*/


.table {position:relative;}
.table.head label{display:none;}
.table.head .trow.c0:not(.fix){opacity:0;}
.table.head .trow.c0.fix{
	opacity:1;
	position:absolute;
	top:0;
	z-index:1;
	width:100%;
}
.table.head .trow.c0.fix:not(.head){background-color: hsl(var(--color-light))}

@media screen and (max-width: 600px) {
.table:not(.tbreak360).head .trow.c0{display:none;}
.table:not(.tbreak360).head label{display:block; position:absolute; top:5px; left:0;}
.table:not(.tbreak360).head .tcell{position:relative;}
.table:not(.tbreak360).head .tcell.labeled:not(.nolabel){padding-left:50%;}
.table:not(.tbreak360).head .nolabel{padding-left:0; }
.table:not(.tbreak360).head .nolabel label{display:none; }
.table:not(.tbreak360) .trow{padding:10px 0;border-bottom:1px solid #D5D5D5;}
.table:not(.tbreak360) .tcell {float:none; display: block; padding:5px 0;}
.table:not(.tbreak360) .tcell.tc2{width:auto;}
.table:not(.tbreak360) .tcell.tc2.cs2{width:auto;}
.table:not(.tbreak360) .tcell.tc3{width:auto;}
.table:not(.tbreak360) .tcell.tc3.cs2{width:auto;}
.table:not(.tbreak360) .tcell.tc3.cs3{width:auto;}
.table:not(.tbreak360) .tcell.tc4{width:auto;}
.table:not(.tbreak360) .tcell.tc4.cs2{width:auto;}
.table:not(.tbreak360) .tcell.tc4.cs3{width:auto;}
.table:not(.tbreak360) .tcell.tc4.cs4{width:auto;}
.table:not(.tbreak360) .tcell.tc5{width:auto;}
.table:not(.tbreak360) .tcell.tc5.cs2{width:auto;}
.table:not(.tbreak360) .tcell.tc5.cs3{width:auto;}
.table:not(.tbreak360) .tcell.tc5.cs4{width:auto;}
.table:not(.tbreak360) .tcell.tc5.cs5{width:auto;}
.table:not(.tbreak360) .tcell.tc6{width:auto;}
.table:not(.tbreak360) .tcell.tc6.cs2{width:auto;}
.table:not(.tbreak360) .tcell.tc6.cs3{width:auto;}
.table:not(.tbreak360) .tcell.tc6.cs4{width:auto;}
.table:not(.tbreak360) .tcell.tc6.cs5{width:auto;}
.table:not(.tbreak360) .tcell.tc6.cs6{width:auto;}
}
@media screen and (max-width: 360px) {
.table.tbreak360.head .trow.c0{display:none;}
.table.tbreak360.head label{display:block; position:absolute; top:5px; left:0;}
.table.tbreak360.head .tcell{position:relative;}
.table.tbreak360.head .tcell.labeled:not(.nolabel){padding-left:50%;}
.table.tbreak360.head .nolabel{padding-left:0; }
.table.tbreak360.head .nolabel label{display:none; }
.table.tbreak360 .trow{padding:10px 0;border-bottom:1px solid #D5D5D5;}
.table.tbreak360 .tcell {float:none; display: block; padding:5px 0;}
.table.tbreak360 .tcell.tc2{width:auto;}
.table.tbreak360 .tcell.tc2.cs2{width:auto;}
.table.tbreak360 .tcell.tc3{width:auto;}
.table.tbreak360 .tcell.tc3.cs2{width:auto;}
.table.tbreak360 .tcell.tc3.cs3{width:auto;}
.table.tbreak360 .tcell.tc4{width:auto;}
.table.tbreak360 .tcell.tc4.cs2{width:auto;}
.table.tbreak360 .tcell.tc4.cs3{width:auto;}
.table.tbreak360 .tcell.tc4.cs4{width:auto;}
.table.tbreak360 .tcell.tc5{width:auto;}
.table.tbreak360 .tcell.tc5.cs2{width:auto;}
.table.tbreak360 .tcell.tc5.cs3{width:auto;}
.table.tbreak360 .tcell.tc5.cs4{width:auto;}
.table.tbreak360 .tcell.tc5.cs5{width:auto;}
.table.tbreak360 .tcell.tc6{width:auto;}
.table.tbreak360 .tcell.tc6.cs2{width:auto;}
.table.tbreak360 .tcell.tc6.cs3{width:auto;}
.table.tbreak360 .tcell.tc6.cs4{width:auto;}
.table.tbreak360 .tcell.tc6.cs5{width:auto;}
.table.tbreak360 .tcell.tc6.cs6{width:auto;}
}







.table.timeline .trow {border: none;}
.table.timeline .trow .tcell{position: relative;}
.table.timeline .trow .tcell:nth-child(1){ padding:15px 0; }
.table.timeline .trow .tcell:nth-child(2){
	background:hsl(var(--color-light));
	-webkit-box-shadow: 0 0 20px rgba(0,0,0,0.2);
	        box-shadow: 0 0 20px rgba(0,0,0,0.2);
    border-radius: 10px;
    padding:15px;
	margin-bottom: 30px;
}
.table.timeline .trow .tcell:nth-child(1){padding-right: 50px;}
.table.timeline .trow .tcell:nth-child(2) *:last-child{margin-bottom: 0;}
.table.timeline .trow .tcell:nth-child(2)::before{
	content: ' ';
    display: block;
    position: absolute;
    left: -34px;
    width: 0;
	top:0;
	bottom: -30px;
    border-left: 4px solid hsl(var(--color-sec));
}
.table.timeline .trow .tcell:nth-child(2)::after{
	content: ' ';
    display: block;
    position: absolute;
    left: -45px;
    top: 13px;
    width: 20px;
    height: 20px;
    border: 4px solid hsl(var(--color-sec));
    border-radius: 50%;
    background: hsl(var(--color-light));
}
.table.timeline .trow:first-child .tcell:nth-child(2)::before{top:20px;}
.table.timeline .trow:last-child .tcell:nth-child(2)::before{bottom:auto; height:20px;}

@media (max-width: 600px){
	.table.timeline .trow {margin: 0;}
	.table.timeline .trow .tcell:nth-child(1){padding: 10px 0;}
	.table.timeline .trow .tcell:nth-child(2)::before, .table.timeline .trow .tcell:nth-child(2)::after{content: none;}
	.table.timeline .trow .tcell:nth-child(2) {margin-bottom: 0;}

	.timeline .iconoffset{position: relative;display: inline-block;margin-top: -3px;margin-bottom: -3px;margin-left: -3px; margin-right: 10px;vertical-align: middle;}
}
/*____________________truncate*/

.truncate.act {
	position:relative;
	max-height:500px;
	overflow:hidden;
	-webkit-transition: all 1s ease-in-out;
	-o-transition: all 1s ease-in-out;
	transition: all 1s ease-in-out;
}
.truncate.low.act {
	position:relative;
	max-height:300px;
}
.truncate.xlow.act {
	position:relative;
	max-height:150px;
}
.truncate.act::after, .hiddenText::before{
	content:' '; display:block;
	position:absolute; z-index:1; left:0; bottom:0;
	width:100%; height:200px;
	background: -o-linear-gradient(top, hsla(var(--bgcolor-content),0) 0%, hsla(var(--bgcolor-content),1) 80%);
	background: -webkit-gradient(linear, left top, left bottom, from(hsla(var(--bgcolor-content),0)), color-stop(80%, hsla(var(--bgcolor-content),1)));
	background: linear-gradient(to bottom, hsla(var(--bgcolor-content),0) 0%, hsla(var(--bgcolor-content),1) 80%);
	-webkit-transition: height 0.2s ease-in-out;
	-o-transition: height 0.2s ease-in-out;
	transition: height 0.2s ease-in-out;
}
.truncate .opener, .readmore{
	display:block;
	width:50px; height:50px;
	border-radius:25px;
	/*background:url(_pix/icon_readmore.svg) center no-repeat; */
	background-color:hsl(var(--color-main));
	color:hsl(var(--color-light));
	position:absolute; z-index:5;
	left:50%; bottom:30px; margin-left:-25px; }
.truncate .opener::before, .readmore::before,.truncate .opener, .readmore{
	-webkit-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;}
.truncate .opener:hover, .readmore:hover{bottom:25px;}

.truncate .opener.top{top:-25px;opacity: 0;}
.truncate.open .opener.top{opacity: 1;}
.truncate .opener.top:hover{top:-30px;}

.truncate .opener::before, .readmore::before{content: '';width: 20px;height: 6px;background-color: hsl(var(--color-light));display: block;position: absolute;left: 50%;top: 50%;  margin-left: -10px;margin-top: -3px;}
.truncate .opener::after, .readmore::after{content: '';width: 6px;height: 20px;background-color: hsl(var(--color-light));display: block;position: absolute;left: 50%;top: 50%;  margin-top: -10px;margin-left: -3px;}

.bgcolor-extradark.truncate.act::after,  .truncate.extradark.act::after, .bgcolor-extradark .hiddenText::before{
	background: -webkit-gradient(linear, left top, left bottom, from(hsla(var(--bgcolor-extradark),0)),  color-stop(80%, hsla(var(--bgcolor-extradark),1)));
	background: -o-linear-gradient(top, hsla(var(--bgcolor-extradark),0) 0%,  hsla(var(--bgcolor-extradark),1) 80%);
	background: linear-gradient(to bottom, hsla(var(--bgcolor-extradark),0) 0%,  hsla(var(--bgcolor-extradark),1) 80%);
}
.bgcolor-dark.truncate.act::after,  .truncate.dark.act::after, .bgcolor-dark .hiddenText::before{
	background: -webkit-gradient(linear, left top, left bottom, from(hsla(var(--bgcolor-dark),0)),  color-stop(80%, hsla(var(--bgcolor-dark),1)));
	background: -o-linear-gradient(top, hsla(var(--bgcolor-dark),0) 0%,  hsla(var(--bgcolor-dark),1) 80%);
	background: linear-gradient(to bottom, hsla(var(--bgcolor-dark),0) 0%,  hsla(var(--bgcolor-dark),1) 80%);
}
.bgcolor-main.truncate.act::after, .bgcolor-main .hiddenText::before{
	background: -webkit-gradient(linear, left top, left bottom, from(hsla(var(--bgcolor-main),0)),  color-stop(80%, hsla(var(--bgcolor-main),1)));
	background: -o-linear-gradient(top, hsla(var(--bgcolor-main),0) 0%,  hsla(var(--bgcolor-main),1) 80%);
	background: linear-gradient(to bottom, hsla(var(--bgcolor-main),0) 0%,  hsla(var(--bgcolor-main),1) 80%);
}
.bgcolor-light.truncate.act::after, .bgcolor-light .hiddenText::before{
	background: -webkit-gradient(linear, left top, left bottom, from(hsla(var(--bgcolor-light),0)),  color-stop(80%, hsla(var(--bgcolor-light),1)));
	background: -o-linear-gradient(top, hsla(var(--bgcolor-light),0) 0%,  hsla(var(--bgcolor-light),1) 80%);
	background: linear-gradient(to bottom, hsla(var(--bgcolor-light),0) 0%,  hsla(var(--bgcolor-light),1) 80%);
}

.truncate.act.open {max-height:10000px; padding-bottom:100px; overflow:visible;}
.truncate.act.open::after, .hiddenTextOn::before{height:0;}
.truncate.act.open .opener::before{-webkit-transform: rotate(45deg);-ms-transform: rotate(45deg);transform: rotate(45deg)}
.truncate.act.open .opener::after{-webkit-transform: rotate(45deg);-ms-transform: rotate(45deg);transform: rotate(45deg)}

/*__________________parallax*/

.parallax.bgcont{position:relative; overflow:hidden; }
.parallax .bgimg{
	position:absolute;
	left: 0;
	width:100%;
	background-size:cover;
	background-position:center;
	/*height: calc(100% * 0.75);*/
	-webkit-transition: top 0.2s linear;
	-o-transition: top 0.2s linear;
	transition: top 0.2s linear;
}
/*.bgimg::before{content:' '; display:block; padding-top:75%; background-size:auto; background-attachment:fixed; min-height:100%;}*/
.bgimg::before{content:' '; display:block; min-height:100%;}

.bg-top>.bgimg{background-position-y: top;}
.bg-bottom>.bgimg{background-position-y: bottom;}
.bg-left>.bgimg{background-position-x: left;}
.bg-right>.bgimg{background-position-x: right;}
/*.parallax .textpadding{ padding-top:60px; padding-bottom:60px;}*/
.bgcolor-extradark:not(.nolayercolor) .bgimg::before{ background-color:hsla(var(--bgcolor-extradark),0.8);}
.bgcolor-dark:not(.nolayercolor) .bgimg::before{ background-color:hsla(var(--bgcolor-dark),0.7);}
.bgcolor-main:not(.nolayercolor) .bgimg::before{ background-color:hsla(var(--bgcolor-main),0.6);}
.bgcolor-main-light:not(.nolayercolor) .bgimg::before{ background-color:hsla(var(--bgcolor-main-light),0.6);}
.bgcolor-light:not(.nolayercolor) .bgimg::before{ background-color:hsla(var(--bgcolor-light),0.6);}
.bgcolor-sec:not(.nolayercolor) .bgimg::before{ background-color:hsla(var(--bgcolor-sec),0.6);}
.bgcolor-accent:not(.nolayercolor) .bgimg::before{ background-color:hsla(var(--bgcolor-accent),0.6);}
.bgcolor-extradark-gradient:not(.nolayercolor) .bgimg::before{ background-image:radial-gradient(circle, hsla(var(--bgcolor-extradark),0), hsla(var(--bgcolor-extradark),1));}
.bgcolor-extradark-gradient-linear:not(.nolayercolor) .bgimg::before{ background-image:linear-gradient(180deg, hsla(var(--bgcolor-extradark),0) 50%, hsla(var(--bgcolor-extradark),1));}
.bgcolor-light-gradient-linear:not(.nolayercolor) .bgimg::before{ background-image:linear-gradient(180deg, hsla(var(--bgcolor-light),0) 50%, hsla(var(--bgcolor-light),1));}

/*___________________bg image*/
.sticky.bgcont{position:relative; overflow: hidden;}
.sticky .bgimg{background-position: center;}
.bgimg {
	position:absolute;
	top:0;
	height: 100%;
	width: 100%;
	background-position:center;
	background-repeat:no-repeat;
	background-size:cover;
	overflow: hidden;
}
.bgcolor-dark .bgimg::before{content:' '; position:absolute; left:0; right:0; top:0; bottom:0; display:block; }
.bgcolor-main .bgimg::before{content:' '; position:absolute; left:0; right:0; top:0; bottom:0; display:block; }
.bgcolor-main-light .bgimg::before{content:' '; position:absolute; left:0; right:0; top:0; bottom:0; display:block; }
.bgcolor-light .bgimg::before{content:' '; position:absolute; left:0; right:0; top:0; bottom:0; display:block;}
.fixed .bgimg{background-attachment:fixed; background-size:cover; background-repeat: repeat;}
@media screen and (max-width: 1024px) {
.fixed .bgimg{background-attachment: scroll; background-size: cover;}
}
/*_________________________downloadlist*/

ul.downloads ul{margin:15px 0 15px 20px;}
ul.downloads li{margin:0;}
ul.downloads li::before{display:none;}
ul.downloads>li{font-weight:bold; text-transform:uppercase; font-size:1.35rem; line-height: 1.5em}
ul.downloads>li>ul>li{font-weight:bold; text-transform:none; font-size:1.2rem; line-height: 1.5em }
ul.downloads>li>ul>li ul>li{font-weight:bold; text-transform:uppercase; font-size:1rem; line-height: 1.5em }
ul.downloads>li>ul>li ul>li>ul>li{font-weight:bold; text-transform:none;  }
ul.downloads>li>ul>li ul>li>ul>li>ul>li{font-weight:normal; text-transform:none;  }
.dlobj{display:block; text-align:left; border-top:1px solid #DDDDDD; padding:10px 0;}
.dlobj img{padding:1px; border:1px solid #DDDDDD; vertical-align:middle; margin-right:15px;}
.dlname{display:inline-block;}
.dlext{display:block;float:right;}
ul.downloads .dlname, ul.downloads .dlfile{display:inline-block; text-align:left; width:50%; vertical-align:top; font-weight:normal; text-transform:none; font-size:1rem; line-height: 1.5em}
@media screen and (max-width: 768px) {
ul.downloads .dlname, ul.downloads .dlfile{width:300px;}
}
@media screen and (max-width: 600px) {
ul.downloads .dlname, ul.downloads .dlfile{width:auto; display:block;}
.dlname{display:block;}
.dlext{display:block;float:none;}
}
.linkblock ul.downloads li{margin:0 0 4px 0; font-size:14px;}

/*ul.sitemap{column-count: 2}*/
ul.sitemap>li{margin-bottom:15px;}
ul.sitemap>li>a{font-weight:bold; text-transform:uppercase; font-size:18px;}
ul.sitemap>li>ul>li>a{font-weight:bold; }
li.objectlink a {font-size:12px; line-height:15px;}
li.objectlink { margin: 2px 0 2px 20px;}
li.objectlink::before{display:none;}
/*__________webkit*/
::-webkit-scrollbar {width: 10px;}
 /* Track */
::-webkit-scrollbar-track {-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);box-shadow: inset 0 0 6px rgba(0,0,0,0.3);}
 /* Handle */
::-webkit-scrollbar-thumb {background: rgba(150,150,150,0.5);-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.5);box-shadow: inset 0 0 6px rgba(0,0,0,0.5);}
::-webkit-scrollbar-thumb:window-inactive {background: rgba(150,150,150,0.4);}

/*hide video-detach-button*/
html > div[style] {display: none !important;}
/*________________________________________leaflet map*/
#map, .map{height:400px; max-height:50vh;position: relative;}
.map .formlayer{position: absolute; width: 100%; height: 100%; z-index: 1000; padding: var(--padding-v) var(--padding-h)}
form[name*="search_route"] {
    background-color: #FFF;
    padding: 15px;
    -webkit-box-shadow: 0 0 20px rgb(0 0 0 / 50%);
            box-shadow: 0 0 20px rgb(0 0 0 / 50%);
}
@media (max-width:600px){
	.map .formlayer{height: 50%; bottom: 0}
	.map.layered{min-height:50vh; max-height:80vh;}
}
/*________________________________________gallery styles*/
.g-frame .gallery{--gap:15px}
.g-frame.f-extradark .gallery{background-color: var(--bgcolor-extradark)}
.g-frame.f-dark .gallery{background-color: var(--bgcolor-extradark)}
.g-frame.f-color-main .gallery{background-color: var(--color-main)}
.g-frame.f-color-sec .gallery{background-color: var(--color-sec)}
.g-frame .gallery{padding: var(--gap)}
.g-frame .fadeSet .galleryImg picture {display: block;}
.g-frame .fadeSet .galleryImg picture img {width:100%;}

/*________________________________________columns*/
:root{
	--gap:0px;
	--cols:1;
}
.c_columns{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}
/*.c_columns>.didblock:not([class*=margin]){margin: 0 !important}*/
.c_columns.image-gallery>.didblock>.textpadding{padding: 0}
.c_columns .galleryImg picture {display: block; overflow: hidden;}

.top>*>.c_columns, .c_columns.top{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;}
.middle>*>.c_columns, .c_columns.middle{-webkit-box-align:center;-ms-flex-align:center;align-items:center;}
.bottom>*>.c_columns, .c_columns.bottom{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end;}

.justify-width>*>.c_columns>.didblock  {
	-webkit-box-flex: 1;
	    -ms-flex-positive: 1;
	        flex-grow: 1
}
.justify-height>*>.c_columns{
	-webkit-box-align: stretch;
	    -ms-flex-align: stretch;
	        align-items: stretch;
}
.justify-height>*>.c_columns>.didblock, .justify-height>*>.c_columns>.didblock>.group  {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
}

.justify-height>*>.c_columns>.didblock>.mainwidth{width: 100%}
.justify-height .fullimage {width: 100%; height: 100%; -o-object-fit: cover; object-fit: cover; overflow: hidden;}
.justify-height .fullimage .gallery, .justify-height .fullimage .galleryImg, .justify-height .fullimage .gallery .slideSet, .justify-height .fullimage .gallery .fadeSet, .justify-height .fullimage .gallery .slideSet picture, .justify-height .fullimage .gallery .fadeSet picture{width: 100%; height: 100%; position: relative;}
.justify-height .fullimage .gallery, .justify-height .fullimage .gallery .slideSet .slideCont, .justify-height .fullimage .gallery .fadeSet .fadeCont{position: relative; top: 50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); height: 100%;}
.justify-height .fullimage .galleryImg img{height: 100%; width:100%; -o-object-fit: cover; object-fit: cover}
.justify-height .fullimage .galleryImg picture {height: 100%}
.justify-height>*>.c_columns>.didblock>.group {height: 100%;}

.g15>*{--gap:15px}
.g30>*{--gap:30px}
.g45>*{--gap:45px}
.g60>*{--gap:60px}
.g90>*{--gap:90px}
.g120>*{--gap:120px}
.c1>*{--cols: 1}
.c2>*{--cols: 2}
.c3>*{--cols: 3}
.c4>*{--cols: 4}
.c5>*{--cols: 5}
.c6>*{--cols: 6}




/* with negativ margin:
.c_columns>.didblock{--basewidth: calc( (var(--colwidth) - ( var(--cols) - 1 + 2 ) * var(--gap) ) / var(--cols) );}
.c_columns>.didblock{--calcwidth: calc( (var(--basewidth) * var(--colspan)) + ( var(--colspan) - 1 ) * var(--gap) ); width:var(--calcwidth)}
.c_columns{margin-left:calc(var(--gap) / -1);margin-right:calc(var(--gap) / -1);}
.c_columns>.didblock{margin-left:calc(var(--gap) / 2); margin-right:calc(var(--gap) / 2);}
*/

/*template 2/5 3/5*/
.c-2_5-3_5 > * {--cols:5}
.c-2_5-3_5 > * > .c_columns>.didblock:nth-of-type(2n){--colspan:3}
.c-2_5-3_5 > * > .c_columns>.didblock:nth-of-type(2n+1){--colspan:2}
.c-3_5-2_5 > * {--cols:5}
.c-3_5-2_5 > * > .c_columns>.didblock:nth-of-type(2n){--colspan:2}
.c-3_5-2_5 > * > .c_columns>.didblock:nth-of-type(2n+1){--colspan:3}
@media (max-width:768px){
	.c-2_5-3_5 .textpadding, .c-3_5-2_5 .textpadding  {padding-top: var(--gap); padding-bottom: var(--gap);}
	.c-2_5-3_5 > * {--cols:1}
	.c-2_5-3_5 > * > .c_columns>.didblock:nth-of-type(2n){--colspan:1}
	.c-2_5-3_5 > * > .c_columns>.didblock:nth-of-type(2n+1){--colspan:1}
	.c-3_5-2_5 > * {--cols:1}
	.c-3_5-2_5 > * > .c_columns>.didblock:nth-of-type(2n){--colspan:1}
	.c-3_5-2_5 > * > .c_columns>.didblock:nth-of-type(2n+1){--colspan:1}
}
/*template 1/3 1/3*/
.c-1_3-2_3 > * {--cols:3}
.c-1_3-2_3 > * > .c_columns>.didblock:nth-of-type(2n){--colspan:2}
.c-1_3-2_3 > * > .c_columns>.didblock:nth-of-type(2n+1){--colspan:1}
.c-2_3-1_3 > * {--cols:3}
.c-2_3-1_3 > * > .c_columns>.didblock:nth-of-type(2n){--colspan:1}
.c-2_3-1_3 > * > .c_columns>.didblock:nth-of-type(2n+1){--colspan:2}
@media (max-width:768px){
	.c-1_3-2_3 .textpadding, .c-2_3-1_3 .textpadding  {padding-top: var(--gap); padding-bottom: var(--gap);}
	.c-1_3-2_3 > * {--cols:1}
	.c-1_3-2_3 > * > .c_columns>.didblock:nth-of-type(2n){--colspan:1}
	.c-1_3-2_3 > * > .c_columns>.didblock:nth-of-type(2n+1){--colspan:1}
	.c-2_3-1_3 > * {--cols:1}
	.c-2_3-1_3 > * > .c_columns>.didblock:nth-of-type(2n){--colspan:1}
	.c-2_3-1_3 > * > .c_columns>.didblock:nth-of-type(2n+1){--colspan:1}
}










@media (max-width: 1280px) {
.b1280-c1 .textpadding {padding-top: var(--gap); padding-bottom: var(--gap);}
.b1280-c1 >*{--cols:1;}
.b1280-c2 >*{--cols:2;}
.b1280-c3 >*{--cols:3;}
.b1280-c4 >*{--cols:4;}
.b1280-c5 >*{--cols:5;}
.b1280-c6 >*{--cols:6;}
}
@media (max-width: 1024px) {
.b1024-c1 .textpadding {padding-top: var(--gap); padding-bottom: var(--gap);}
.b1024-c1 >*{--cols:1;}
.b1024-c2 >*{--cols:2;}
.b1024-c3 >*{--cols:3;}
.b1024-c4 >*{--cols:4;}
.b1024-c5 >*{--cols:5;}
.b1024-c6 >*{--cols:6;}
}
@media (max-width: 960px) {
.b960-c1 .textpadding {padding-top: var(--gap); padding-bottom: var(--gap);}
.b960-c1 >*{--cols:1;}
.b960-c2 >*{--cols:2;}
.b960-c3 >*{--cols:3;}
.b960-c4 >*{--cols:4;}
.b960-c5 >*{--cols:5;}
.b960-c6 >*{--cols:6;}
}
@media (max-width: 768px) {
.b768-c1 .textpadding {padding-top: var(--gap); padding-bottom: var(--gap);}
.b768-c1 >*{--cols:1;}
.b768-c2 >*{--cols:2}
.b768-c3 >*{--cols:3;}
.b768-c4 >*{--cols:4;}
.b768-c5 >*{--cols:5;}
.b768-c6 >*{--cols:6;}
}
@media (max-width: 600px) {
.b600-c1 .textpadding {padding-top: var(--gap); padding-bottom: var(--gap);}
.b600-c1 >*{--cols:1;}
.b600-c2 >*{--cols:2;}
.b600-c3 >*{--cols:3;}
.b600-c4 >*{--cols:4;}
.b600-c5 >*{--cols:5;}
.b600-c6 >*{--cols:6;}
}
@media (max-width: 480px) {
.b480-c1 .textpadding {padding-top: var(--gap); padding-bottom: var(--gap);}
.b480-c1 >*{--cols:1;}
.b480-c2 >*{--cols:2;}
.b480-c3 >*{--cols:3;}
.b480-c4 >*{--cols:4;}
.b480-c5 >*{--cols:5;}
.b480-c6 >*{--cols:6;}
}
@media (max-width: 360px) {
.b360-c1 .textpadding {padding-top: var(--gap); padding-bottom: var(--gap);}
.b360-c1 >*{--cols:1; }
.b360-c2 >*{--cols:2; }
.b360-c3 >*{--cols:3;}
.b360-c4 >*{--cols:4;}
.b360-c5 >*{--cols:5;}
.b360-c6 >*{--cols:6;}
}

.c_columns{--colspan:1}
.c_columns>.cs1{--colspan:min(1,var(--cols))}
.c_columns>.cs2{--colspan:min(2,var(--cols))}
.c_columns>.cs3{--colspan:min(3,var(--cols))}
.c_columns>.cs4{--colspan:min(4,var(--cols))}
.c_columns>.cs5{--colspan:min(5,var(--cols))}
.c_columns>.cs6{--colspan:min(6,var(--cols))}

@media screen and (max-width:1024px){

	.c_columns>.b1024-cs1 {--colspan:min(1,var(--cols))}
	.c_columns>.b1024-cs2 {--colspan:min(2,var(--cols))}
	.c_columns>.b1024-cs3 {--colspan:min(3,var(--cols))}
	.c_columns>.b1024-cs4 {--colspan:min(4,var(--cols))}
	.c_columns>.b1024-cs5 {--colspan:min(5,var(--cols))}
}

@media screen and (max-width:960px){

	.c_columns>.b960-cs1 {--colspan:min(1,var(--cols))}
	.c_columns>.b960-cs2 {--colspan:min(2,var(--cols))}
	.c_columns>.b960-cs3 {--colspan:min(3,var(--cols))}
	.c_columns>.b960-cs4 {--colspan:min(4,var(--cols))}
	.c_columns>.b960-cs5 {--colspan:min(5,var(--cols))}
}

@media screen and (max-width:768px){
	.c_columns>.b768-cs1 {--colspan:min(1,var(--cols))}
	.c_columns>.b768-cs2 {--colspan:min(2,var(--cols))}
	.c_columns>.b768-cs3 {--colspan:min(3,var(--cols))}
	.c_columns>.b768-cs4 {--colspan:min(4,var(--cols))}
	.c_columns>.b768-cs5 {--colspan:min(5,var(--cols))}
}
@media screen and (max-width:600px){
	.c_columns>.b600-cs1 {--colspan:min(1,var(--cols))}
	.c_columns>.b600-cs2 {--colspan:min(2,var(--cols))}
	.c_columns>.b600-cs3 {--colspan:min(3,var(--cols))}
	.c_columns>.b600-cs4 {--colspan:min(4,var(--cols))}
	.c_columns>.b600-cs5 {--colspan:min(5,var(--cols))}
}
@media screen and (max-width:480px){
	.c_columns>.b480-cs1 {--colspan:min(1,var(--cols))}
	.c_columns>.b480-cs2 {--colspan:min(2,var(--cols))}
	.c_columns>.b480-cs3 {--colspan:min(3,var(--cols))}
	.c_columns>.b480-cs4 {--colspan:min(4,var(--cols))}
	.c_columns>.b480-cs5 {--colspan:min(5,var(--cols))}
}

@media screen and (max-width:360px){
	.c_columns>.b320-cs1 {--colspan:min(1,var(--cols))}
	.c_columns>.b320-cs2 {--colspan:min(2,var(--cols))}
	.c_columns>.b320-cs3 {--colspan:min(3,var(--cols))}
	.c_columns>.b320-cs4 {--colspan:min(4,var(--cols))}
	.c_columns>.b320-cs5 {--colspan:min(5,var(--cols))}
}

/*.content>:not(.fullwidth)>.mainwidth{max-width: calc(var(--mainwidthmax) - 60px); margin-left: auto; margin-right: auto;}*/

.c_columns{--colwidth:100%;}
.c_columns>.didblock{--basewidth: calc( (var(--colwidth) - ( var(--cols) - 1 ) * var(--gap) ) / var(--cols) );}
.c_columns>.didblock{--calcwidth: calc( (var(--basewidth) * var(--colspan)) + ( var(--colspan) - 1 ) * var(--gap) ); width:var(--calcwidth)}



.self-top>*>.c_columns>.didblock{ -ms-flex-item-align: start; align-self: flex-start; vertical-align: top;}
.self-bottom>*>.c_columns>.didblock{ -ms-flex-item-align: end; align-self: flex-end; vertical-align: bottom;}
.reverse>*>.c_columns {-webkit-box-orient: horizontal;-webkit-box-direction: reverse;-ms-flex-direction: row-reverse;flex-direction: row-reverse;}

.c-1st-ext > * > .c_columns>.didblock .fadeSet .galleryImg picture img.image-scale-max {width:100%;}
.c-2nd-ext > * > .c_columns>.didblock .fadeSet .galleryImg picture img.image-scale-max {width:100%;}

@media (max-width:var(--mainwidthmax)){
}
@media (min-width:var(--mainwidthmax)){
	.c-1st-ext > * > .c_columns,
	.c-2nd-ext > * > .c_columns{--colwidth:calc(var(--mainwidthmax) - 60px); --extwidth:calc( ( 100% - var(--colwidth) )/2 )}
  .c-1st-ext > * > .c_columns>.didblock:nth-child(2n+1){width:calc( var(--calcwidth) + var(--extwidth) )}
	.c-1st-ext > * > .c_columns>.didblock:nth-child(2n){width: var(--calcwidth) }
  .c-1st-ext:not(.reverse) > * > .c_columns>.didblock:nth-of-type(2n){  margin-right: var(--extwidth)}
	.c-1st-ext.reverse > * > .c_columns>.didblock:nth-of-type(2n){  margin-left: var(--extwidth)}
  .c-2nd-ext > * > .c_columns>.didblock:nth-child(2n){width:calc( var(--calcwidth) + var(--extwidth) )}
	.c-2nd-ext > * > .c_columns>.didblock:nth-child(2n+1){width: var(--calcwidth) }
  .c-2nd-ext:not(.reverse) > * > .c_columns>.didblock:nth-of-type(2n+1){  margin-left: var(--extwidth)}
	.c-2nd-ext.reverse > * > .c_columns>.didblock:nth-of-type(2n+1){  margin-right: var(--extwidth)}
}
@media (min-width:var(--pagewidthmax)){
		.c-1st-ext > * > .c_columns,
		.c-2nd-ext > * > .c_columns{--extwidth:calc( ( var(--pagewidthmax) - var(--colwidth) )/2 )}
}
/*
@for $i from 2 through 6 {
		.c#{$i}>.c_columns>.didblock{width: #{(100/$i)}%; }
}
@for $g from 1 through 4 {
    @for $i from 2 through 6 {
        .c#{$i}.g#{$g*15}>.c_columns>.didblock{width: calc( #{(100/$i)}% - #{2*$g*15}px); }
    }
}
$sizes:1280,1024,960,768,600,480,360;
@each $bp in $sizes {
@media(max-width:#{$bp}px){
	.b#{$bp}-c1>.c_columns>.didblock{ width: 100% !important; }
 @for $i from 2 through 6 {
    .b#{$bp}-c#{$i}>.c_columns>.didblock{ width: #{(100%/$i)}; }
    @for $g from 1 through 4 {
        .b#{$bp}-c#{$i}.g#{$g*15}>.c_columns>.didblock{ width: calc( #{(100/$i)}% - #{2*$g*15}px); }
    }
 }
}
}
*/

.content>.blockquote-left, .content>.blockquote-right{--gap:15px}
.content>.blockquote-left>.mainwidth {
    --maxwidth: 100%;
    padding-left: calc( var(--gap) + var(--padding-h) + ((var(--maxwidth) - 2 * var(--padding-h)) - 2 * var(--gap) ) / 3 );
}
.content>.blockquote-right>.mainwidth {
    --maxwidth: 100%;
    padding-right: calc( var(--gap) + var(--padding-h) + ((var(--maxwidth) - 2 * var(--padding-h)) - 2 * var(--gap) ) / 3 );
}
@media (min-width:var(--mainwidthmax)){
  .content>.blockquote-left>.mainwidth { --maxwidth: var(--mainwidthmax);}
  .content>.blockquote-right>.mainwidth { --maxwidth: var(--mainwidthmax);}
  footer .group{max-width:var(--mainwidthmax); margin-left: auto; margin-right: auto}
}
@media (max-width:768px){
  .content>.blockquote-left>.mainwidth {padding-left: var(--padding-h);}
  .content>.blockquote-right>.mainwidth {padding-right: var(--padding-h);}
}


/*________________________________________grid*/


.c_grid{
--gridwidth:calc(100vw - 2 * var(--padding-h) );
--framegap:0;
}
.fullwidth>.c_grid{--gridwidth:100vw;}
.extra>.c_grid{padding-top: var(--textpadding-extra); padding-bottom:var(--textpadding-extra);}
.c_columns{--inherit-cols:var(--cols)}
/*.c_columns .c_grid{--gridwidth:calc((100vw - 60px - (var(--inherit-cols) - 1) * var(--gap) ) / var(--inherit-cols));}*/

.c_columns .c_grid{--gridwidth:calc(var(--colspan) * (100vw - 60px - (var(--inherit-cols) - 1) * var(--gap) ) / var(--inherit-cols));}

.frame>.c_grid{--framegap:2 /*calc outer space × gap*/}
.f-extradark .c_grid{background-color: var(--bgcolor-extradark)}
.f-dark .c_grid{background-color: var(--bgcolor-dark)}
.f-color-main .c_grid{background-color: var(--color-main)}
.f-color-sec .c_grid{background-color: var(--color-sec)}
.f-color-accent .c_grid{background-color: var(--color-accent)}
.f-color-main-light .c_grid{background-color: var(--bgcolor-main-light)}
.f-color-light .c_grid{background-color: var(--bgcolor-light)}
:not([class*="f-"])>.c_grid>.didblock:not([class*="bgcolor"]) {background-color: inherit;}

.frame .c_grid{padding: var(--gap)}

.c_grid{
	display: grid;
	-moz-column-gap:var(--gap);
	     -webkit-column-gap:var(--gap);
	        column-gap:var(--gap);
	row-gap:var(--gap);
	grid-column-gap:var(--gap);
	grid-row-gap:var(--gap);
	gap:var(--gap);
	justify-items: stretch;
	counter-reset: num;
	margin: auto;
	max-width: var(--gridwidth);
}
.c_grid>*{ position: relative;display: -webkit-box;display: -ms-flexbox;display: flex;-ms-flex-wrap: wrap;flex-wrap: wrap;}
.c_grid>*.top {-webkit-box-align: start;-ms-flex-align: start;align-items: flex-start;}
.c_grid>*.middle {-webkit-box-align: center;-ms-flex-align: center;align-items: center;}
.c_grid>*.bottom {-webkit-box-align: end;-ms-flex-align: end;align-items: flex-end;}
/* row span */
.c_grid>.rs2{grid-row:auto / span 2; --rows:2}
.c_grid>.rs3{grid-row:auto / span 3; --rows:3}
.c_grid>.rs4{grid-row:auto / span 4; --rows:4}
.c_grid>.rs5{grid-row:auto / span 5; --rows:5}
/*column span */
.c_grid>.cs2{grid-column:auto / span min(2,var(--cols))}
.c_grid>.cs3{grid-column:auto / span min(3,var(--cols))}
.c_grid>.cs4{grid-column:auto / span min(4,var(--cols))}
.c_grid>.cs5{grid-column:auto / span min(5,var(--cols))}

.c_grid .fullimage {width: 100%; height: 100%; -o-object-fit: cover; object-fit: cover; overflow: hidden;}
.c_grid .fullimage .gallery, .c_grid .fullimage .galleryImg, .c_grid .fullimage .gallery .slideSet, .c_grid .fullimage .gallery .fadeSet, .c_grid .fullimage .gallery .slideSet picture, .c_grid .fullimage .gallery .fadeSet picture{width: 100%; height: 100%; position: relative;}
.c_grid .fullimage .gallery, .c_grid .fullimage .gallery .slideSet .slideCont, .c_grid .fullimage .gallery .fadeSet .fadeCont{position: absolute; top: 50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); height: 100%;}
.c_grid .fullimage.fullimage .galleryImg img{height: 100%; width:100%; -o-object-fit: cover; object-fit: cover}
.c_grid .fullimage .galleryImg>a, .c_grid .fullimage .galleryImg picture {height: 100%}
.c_grid .galleryImg picture {display: block; overflow: hidden;}
.c_grid .halfheight {height: 50vh}

.with-text .fullimage .galleryImg {height: auto}
.with-text .fullimage .text {position: relative; width: auto;}
.with-text {grid-row:auto / span calc(var(--rows,1) + 1)}


.top>.c_grid>.didblock,.c_grid>.didblock.self-top{
	    -ms-flex-item-align: start;
	        align-self: flex-start;
}
.c_grid>.didblock.self-middle{
	    -ms-flex-item-align:center;
	        align-self:center;
}
.bottom>.c_grid>.didblock,.c_grid>.didblock.self-bottom{
	    -ms-flex-item-align: end;
	        align-self: flex-end;
}
.c_grid>.didblock:not([class*="bgcolor"]){background-color: rgb(var(--bgcolor-content))}

.c_grid>.didblock>.mainwidth {padding-left: 0;padding-right: 0; width: 100%}
.c_grid>.didblock>.textpadding {padding-top: 0; padding-bottom: 0;}

.frame>.c_grid>.didblock>.mainwidth, .c_grid>.didblock[class*="bgcolor"]>.mainwidth {padding-left: var(--padding-h);padding-right: var(--padding-h);}
.frame>.c_grid>.didblock>.textpadding, .c_grid>.didblock[class*="bgcolor"]>.textpadding {padding-top: var(--padding-v); padding-bottom: var(--padding-v);}
.c_grid .parallax .textpadding {padding-top: var(--padding-v); padding-bottom: var(--padding-v); min-height: 200px}

/*.c_grid>*::before{counter-increment: num;content: counters(num, ".", decimal-leading-zero);position: absolute;}*/

.c_grid{grid-template-columns: repeat(var(--cols),1fr);}
.quad>.c_grid{--check: calc( ( var(--gridwidth) - ( ( var(--cols) - 1 + var(--framegap) ) * var(--gap) ) ) / var(--cols) );}
.quad>.c_grid{grid-auto-rows: minmax( -webkit-min-content, calc( ( var(--gridwidth) - ( ( var(--cols) - 1 + var(--framegap) ) * var(--gap) ) ) / var(--cols) ) );grid-auto-rows: minmax( min-content, calc( ( var(--gridwidth) - ( ( var(--cols) - 1 + var(--framegap) ) * var(--gap) ) ) / var(--cols) ) );}
.quad>.c_grid>*>a{display: block; height: 100%}
.gp-c-1 {grid-column-start: min(1,var(--cols));}
.gp-c-2 {grid-column-start: min(2,var(--cols));}
.gp-c-3 {grid-column-start: min(3,var(--cols));}
.gp-c-4 {grid-column-start: min(4,var(--cols));}
.gp-c-5 {grid-column-start: min(5,var(--cols));}
.gp-c-6 {grid-column-start: min(6,var(--cols));}
.gp-r-1 {grid-row-start: 1;}
.gp-r-2 {grid-row-start: 2;}
.gp-r-3 {grid-row-start: 3;}
.gp-r-4 {grid-row-start: 4;}
.gp-r-5 {grid-row-start: 5;}
.gp-r-6 {grid-row-start: 6;}

@media (min-width:var(--pagewidthmax)){
	.quad>.c_grid{--gridwidth:var(--pagewidthmax);}
}
@media (min-width:var(--mainwidthmax)){
	:not(.fullwidth)>.c_grid{
		--gridwidth:calc(var(--mainwidthmax) - 60px);
		max-width: var(--gridwidth);
    margin-left: auto;
    margin-right: auto;
	}
	.c2>*>.c_columns .c_grid{
		--gridwidth:calc((var(--mainwidthmax) - 60px - (var(--inherit-cols) - 1) * var(--gap) ) / var(--inherit-cols));
	}
}
@media (min-width:var(--mainwidthmax-narrow)){
	.narrow:not(.fullwidth)>.c_grid{
		--gridwidth:calc(var(--mainwidthmax-narrow) - 60px);
		max-width: var(--gridwidth);
    margin-left: auto;
    margin-right: auto;
	}
}
@media screen and (max-width:var(--mainwidthmax)){
	.content>.frame{padding-left: 0; padding-right: 0}
}
@media screen and (max-width:960px){
	.b960-fh>.c_grid {grid-auto-rows: auto;}
	[class*=b960]>.c_grid>[class*=gp-r] {grid-row-start: auto;}
	/* Custom Col Span*/
	.c_grid>.b960-cs1 {grid-column:auto / span min(1,var(--cols))}
	.c_grid>.b960-cs2 {grid-column:auto / span min(2,var(--cols))}
	.c_grid>.b960-cs3 {grid-column:auto / span min(3,var(--cols))}
	.c_grid>.b960-cs4 {grid-column:auto / span min(4,var(--cols))}
	.c_grid>.b960-cs5 {grid-column:auto / span min(5,var(--cols))}
	/* Custom Row Span */
	.c_grid>.b960-rs1 {grid-row:auto / span 1}
	.c_grid>.b960-rs2 {grid-row:auto / span 2}
	.c_grid>.b960-rs3 {grid-row:auto / span 3}
	.c_grid>.b960-rs4 {grid-row:auto / span 4}
	.c_grid>.b960-rs5 {grid-row:auto / span 5}
}

@media screen and (max-width:768px){
	.b768-fh>.c_grid {grid-auto-rows: auto;}
	[class*=b768]>.c_grid>[class*=gp-r] {grid-row-start: auto;}
	/* Custom Col Span*/
	.c_grid>.b768-cs1 {grid-column:auto / span min(1,var(--cols))}
	.c_grid>.b768-cs2 {grid-column:auto / span min(2,var(--cols))}
	.c_grid>.b768-cs3 {grid-column:auto / span min(3,var(--cols))}
	.c_grid>.b768-cs4 {grid-column:auto / span min(4,var(--cols))}
	.c_grid>.b768-cs5 {grid-column:auto / span min(5,var(--cols))}
	/* Custom Row Span */
	.c_grid>.b768-rs1 {grid-row:auto / span 1}
	.c_grid>.b768-rs2 {grid-row:auto / span 2}
	.c_grid>.b768-rs3 {grid-row:auto / span 3}
	.c_grid>.b768-rs4 {grid-row:auto / span 4}
	.c_grid>.b768-rs5 {grid-row:auto / span 5}
}
@media screen and (max-width:600px){
	.b600-fh>.c_grid {grid-auto-rows: auto;}
	[class*=b600]>.c_grid>[class*=gp-r] {grid-row-start: auto;}
	/* Custom Col Span*/
	.c_grid>.b600-cs1 {grid-column:auto / span min(1,var(--cols))}
	.c_grid>.b600-cs2 {grid-column:auto / span min(2,var(--cols))}
	.c_grid>.b600-cs3 {grid-column:auto / span min(3,var(--cols))}
	.c_grid>.b600-cs4 {grid-column:auto / span min(4,var(--cols))}
	.c_grid>.b600-cs5 {grid-column:auto / span min(5,var(--cols))}
	/* Custom Row Span */
	.c_grid>.b600-rs1 {grid-row:auto / span 1}
	.c_grid>.b600-rs2 {grid-row:auto / span 2}
	.c_grid>.b600-rs3 {grid-row:auto / span 3}
	.c_grid>.b600-rs4 {grid-row:auto / span 4}
	.c_grid>.b600-rs5 {grid-row:auto / span 5}
}
@media screen and (max-width:480px){
	.b480-fh>.c_grid {grid-auto-rows: auto;}
	[class*=b480]>.c_grid>[class*=gp-r] {grid-row-start: auto;}
	/* Custom Col Span*/
	.c_grid>.b480-cs1 {grid-column:auto / span min(1,var(--cols))}
	.c_grid>.b480-cs2 {grid-column:auto / span min(2,var(--cols))}
	.c_grid>.b480-cs3 {grid-column:auto / span min(3,var(--cols))}
	.c_grid>.b480-cs4 {grid-column:auto / span min(4,var(--cols))}
	.c_grid>.b480-cs5 {grid-column:auto / span min(5,var(--cols))}
	/* Custom Row Span */
	.c_grid>.b480-rs1 {grid-row:auto / span 1}
	.c_grid>.b480-rs2 {grid-row:auto / span 2}
	.c_grid>.b480-rs3 {grid-row:auto / span 3}
	.c_grid>.b480-rs4 {grid-row:auto / span 4}
	.c_grid>.b480-rs5 {grid-row:auto / span 5}
}

@media screen and (max-width:360px){
	.b360-fh>.c_grid {grid-auto-rows: auto;}
	[class*=b360]>.c_grid>[class*=gp-r] {grid-row-start: auto;}
	/* Custom Col Span*/
	.c_grid>.b320-cs1 {grid-column:auto / span min(1,var(--cols))}
	.c_grid>.b320-cs2 {grid-column:auto / span min(2,var(--cols))}
	.c_grid>.b320-cs3 {grid-column:auto / span min(3,var(--cols))}
	.c_grid>.b320-cs4 {grid-column:auto / span min(4,var(--cols))}
	.c_grid>.b320-cs5 {grid-column:auto / span min(5,var(--cols))}
	/* Custom Row Span */
	.c_grid>.b320-rs1 {grid-row:auto / span 1}
	.c_grid>.b320-rs2 {grid-row:auto / span 2}
	.c_grid>.b320-rs3 {grid-row:auto / span 3}
	.c_grid>.b320-rs4 {grid-row:auto / span 4}
	.c_grid>.b320-rs5 {grid-row:auto / span 5}
}


/*lightbox*/
#_lb_container {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    z-index: 10001;
		overflow: hidden;
		min-height: 100vh;
    min-width: 100%;
     display: -webkit-box;
     display: -ms-flexbox;
     display: flex;
             -webkit-box-align: center;
                 -ms-flex-align: center;
                     align-items: center;
             -webkit-box-pack: center;
                 -ms-flex-pack: center;
                     justify-content: center;
}
#_lb_container>*{z-index: 1;}
#_lb_container .closeButton .icon.bg, #_lb_container .button_l .icon.bg,#_lb_container .button_r .icon.bg{
    width: 45px;
    height: 45px;
    background-color: var(--color-white);
    color: var(--color-main);
}
#_lb_container .closeButton:hover .icon.bg, #_lb_container .button_l:hover .icon.bg,#_lb_container .button_r:hover .icon.bg{
    background-color: var(--color-sec);
    color: var(--color-white);
}
#_lb_overlay{
	position: absolute;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	background-color: rgba(0,0,0,0.9);
	backdrop-filter: blur(5px);
	z-index: 0
}
#_lb_inner,section._lb_image_container {
    min-width: 100vw;
    min-height: 100vh;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
            -webkit-box-align: center;
                -ms-flex-align: center;
                    align-items: center;
            -webkit-box-pack: center;
                -ms-flex-pack: center;
                    justify-content: center;
}
#_lb_inner{-webkit-box-pack: start;-ms-flex-pack: start;justify-content: flex-start;
		-webkit-transition: all 0.5s ease;
		-o-transition: all 0.5s ease;
		transition: all 0.5s ease
}
#_lb_image{
		display: block;
    max-height: 90vh;
    min-width: auto;
    max-width: calc(100vw - 120px);
    width: auto;
    height: auto;
}
#_lb_container video{
    max-height: 90vh;
    min-width: auto;
    max-width: 90vw;
    width: auto;
    height: auto;
}
#_lb_container #yt-video {
    width: 75vw;
    height: 42.1875vw;
}
#_lb_inner.withmenu figcaption{display: none}
._lb_menu {margin-bottom: 30px; max-width: calc(100vw - 120px);}
._lb_button{display:inline-block; margin: 0 2em 0.5em 0; color:#FFF; opacity: 0.5; -webkit-transition: opacity 0.5 ease; -o-transition: opacity 0.5 ease; transition: opacity 0.5 ease}
._lb_button:hover, ._lb_button.act {opacity: 1; color: #FFF}
a._lb_button{cursor: pointer;}
