/*
 * HTML5 Boilerplate
 *
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */

/* ==========================================================================
   Outdated Browser
   ========================================================================== */

.chromeframe {
    margin: 0;
    background: var(--color-alert);
    color: var(--color-text-on-alert);
    padding: .5em 0;
	text-align: center;
}
.chromeframe a {
	color: #FFF;
	text-decoration: underline;
}
#outdated{display:none;position:fixed;top:0;left:0;width:100%;text-align:center;text-transform:uppercase;z-index:1500;background-color:var(--color-alert);color:var(--color-text-on-alert);padding:15px;}* html #outdated{position:absolute}#outdated h6{font-size:25px;line-height:25px;margin:0 30px 15px 30px}#outdated p{font-size:12px;line-height:12px;margin:0}#outdated #btnUpdateBrowser{display:block;position:relative;padding:10px 20px;margin:15px auto 0;width:230px;color:var(--color-text-on-alert);text-decoration:none;border:2px solid var(--color-text-on-alert);cursor:pointer}#outdated #btnUpdateBrowser:hover{color:var(--color-alert);background-color:var(--color-text-on-alert)}#outdated .last{position:absolute;top:10px;right:25px;width:20px;height:20px}#outdated #btnCloseUpdateBrowser{display:block;position:relative;width:100%;height:100%;text-decoration:none;color:var(--color-text-on-alert);font-size:36px;line-height:36px}


/* ==========================================================================
   Author's custom styles
   ========================================================================== */

html,
body {
	height: 100%;
	min-width: 320px;
}
html.navMainOpen body,
html.overlayOpen body,
html.swipebox-html body {
	overflow: hidden;
    height: 100%;
}
.baseSpacer,
.baseSpacerLeft {
    padding-left: 20px;
}
.baseSpacer,
.baseSpacerRight {
    padding-right: 20px;
}
.baseSpacerMargin,
.baseSpacerMarginLeft {
    margin-left: 20px;
}
.baseSpacerMargin,
.baseSpacerMarginRight {
    margin-right: 20px;
}
.baseSpacerPos,
.baseSpacerPosLeft {
    left: 20px !important;
}
.baseSpacerPos,
.baseSpacerPosRight {
    right: 20px !important;
}
.pushOut,
.vcContentSection .col12 .pushOut{
    margin-left: -20px;
    margin-right: -20px;
}
.vcContentSection .col .box + .box {
    margin-top: 10px;
    clear: both;
}
@media (min-width: 960px) {
    .vcContentSection .pushOut {
        margin-left: 0;
        margin-right: 0;
    }
}
@media (min-width: 1280px) {
    .baseSpacer,
    .baseSpacerLeft {
        padding-left: calc(5vw + 20px);
    }
    .baseSpacer,
    .baseSpacerRight {
        padding-right: calc(5vw + 20px);
    }
    .baseSpacerMargin,
    .baseSpacerMarginLeft {
        margin-left: calc(5vw + 20px);
    }
    .baseSpacerMargin,
    .baseSpacerMarginRight {
        margin-right: calc(5vw + 20px);
    }
    .baseSpacerPos,
    .baseSpacerPosLeft {
        left: calc(5vw + 20px) !important;
    }
    .baseSpacerPos,
    .baseSpacerPosRight {
        right: calc(5vw + 20px) !important;
    }
    .pushOut,
    .vcContentSection .col12 .pushOut {
        margin-left: calc(-5vw - 20px);
        margin-right: calc(-5vw - 20px);
    }
    .vcContentSection .pushOut {
        margin-left: -5.556%;
        margin-right: -5.556%;
    }
}
@media (min-width: 1600px) {
    .baseSpacer,
    .baseSpacerLeft {
        padding-left: calc(10vw + 20px);
    }
    .baseSpacer,
    .baseSpacerRight {
        padding-right: calc(10vw + 20px);
    }
    .baseSpacerMargin,
    .baseSpacerMarginLeft {
        margin-left: calc(10vw + 20px);
    }
    .baseSpacerMargin,
    .baseSpacerMarginRight {
        margin-right: calc(10vw + 20px);
    }
    .baseSpacerPos,
    .baseSpacerPosLeft {
        left: calc(10vw + 20px) !important;
    }
    .baseSpacerPos,
    .baseSpacerPosRight {
        right: calc(10vw + 20px) !important;
    }
    .pushOut,
    .vcContentSection .col12 .pushOut {
        margin-left: calc(-10vw - 20px);
        margin-right: calc(-10vw - 20px);
    }
    .vcContentSection .pushOut {
        margin-left: -12.5%;
        margin-right: -12.5%;
    }
}
@media (min-width: 1840px) {
    .baseSpacer,
    .baseSpacerLeft {
        padding-left: calc(15vw + 20px);
    }
    .baseSpacer,
    .baseSpacerRight {
        padding-right: calc(15vw + 20px);
    }
    .baseSpacerMargin,
    .baseSpacerMarginLeft {
        margin-left: calc(15vw + 20px);
    }
    .baseSpacerMargin,
    .baseSpacerMarginRight {
        margin-right: calc(15vw + 20px) !important;
    }
    .baseSpacerPos,
    .baseSpacerPosLeft {
        left: calc(15vw + 20px) !important;
    }
    .baseSpacerPos,
    .baseSpacerPosRight {
        right: calc(15vw + 20px);
    }
    .pushOut,
    .vcContentSection .col12 .pushOut {
        margin-left: calc(-15vw - 20px);
        margin-right: calc(-15vw - 20px);
    }
    .vcContentSection .pushOut {
        margin-left: -21.428%;
        margin-right: -21.428%;
    }
}

#wrapper {
    position:relative;
    overflow:hidden;
    min-width: 320px;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}
#main {
    flex-grow: 1;
    padding-top: 100px;
    container-name: mainContainer;
    container-type: inline-size;
    display: block;
    overflow: hidden;
}
#content {
	position: relative;
}
#content:after {
	display: block;
	height: 100vw;
	width: 100vw;
	position: absolute;
	right: -33vw;
	top: -33vw;
	border-radius: 50%;
	background: rgba(var(--color-sand-rgb), .1);
	pointer-events: none;
	z-index: -1;
}
.vcContentSection {
    margin-top: 0;
    margin-bottom: 0;
    position: relative;
}
.vcContentSection + .vcContentSection {
    margin-top: 40px;
}
.vcContentSection.bgAlternate + .vcContentSection.bgAlternate {
	margin-top: 0;
}
.vcContentSection.bgAlternate {
    padding-top: 40px;
    padding-bottom: 40px;
    background-color: var(--color-primary-light);
}
.vcContentSection.bgAlternate:before,
.vcContentSection.bgAlternate:after {
	content: '';
	display: block;
	height: 1vw;
	width: 100%;
	position: absolute;
	left: 0;
	bottom: -1vw;
	background: var(--color-primary-light);
	mask: url("../img/mask_rounded_bottom.svg") 50% 100% / cover no-repeat;
}
.vcContentSection.bgAlternate:before {
	top: -1vw;
	bottom: auto;
	background: var(--color-primary-light);
	mask: url("../img/mask_rounded_bottom.svg") 50% 100% / cover no-repeat,
	linear-gradient(#000 0 0);
	mask-composite: exclude;
}

.vcContentSection.bgAlternate h3,
.vcContentSection.bgAlternate .h3,
.vcContentSection.bgAlternate .ui-accordion .ui-accordion-header.h3,
.vcContentSection.bgAlternate .accordionWrapper.ui-accordion .ui-accordion-content a,
.vcContentSection.bgAlternate a,
.vcContentSection.bgAlternate .colored {
    color: inherit;
}
.vcContentSection.bgAlternate h1,
.vcContentSection.bgAlternate .h1,
.vcContentSection.bgAlternate .ui-accordion .ui-accordion-header.h1,
.vcContentSection.bgAlternate h2,
.vcContentSection.bgAlternate .h2,
.vcContentSection.bgAlternate .ui-accordion .ui-accordion-header.h2 {
	color: var(--color-primary);
}
.vcContentSection.bgAlternate .hint {
    color: var(--color-light);
}
.vcContentSection.bgAlternate:last-child {
    margin-bottom: 0;
}
.vcContentSection.vcSectionPaddingTop {
	padding-top: 80px;
}
.vcContentSection.vcSectionPaddingBottom {
	padding-bottom: 80px;
}
.vcContentSection .col {
    container-name: contentContainer;
    container-type: inline-size;
}
@media (max-width: 959px) {
    .vcContentSection .col {
        flex-grow: 1;
    }
    .vcContentSection .col + .col {
        margin-top: 40px;
    }
}
@media (min-width: 640px) {
    #main {
        padding-top: 140px;
    }
}
@media (min-width: 960px) {
	#content:after {
		height: 67vw;
		width: 67vw;
		right: -25vw;
		top: -25vw;
	}

    .vcContentSectionInnerWrap {
        display: flex;
        justify-content: center;
        width: calc(100% + 40px);
        margin-left: -20px;
        margin-right: -20px;
    }
    .vcSectionAlignCenter .vcContentSectionInnerWrap {
        justify-content: center;
    }
    .vcSectionAlignRight .vcContentSectionInnerWrap {
        justify-content: end;
    }
    .vcSectionValignCenter .vcContentSectionInnerWrap {
        align-items: center;
    }
    .vcSectionValignBottom .vcContentSectionInnerWrap {
        align-items: end;
    }
    .vcContentSection .col {
        padding: 0 20px;
    }
    .vcContentSection .col4 {
        width: 33.3333%;
    }
    .vcContentSection .col6 {
        width: 50%;
    }
    .vcContentSection .col8 {
        width: 66.6667%;
    }
    .vcContentSection .col12 {
        width: 100%;
    }
}

/*
	HEADER
	*/
#header {
    position: fixed;
    left: 0;
    top: -100px;
    width: 100%;
    z-index: 50;
    padding-top: 40px;
    transition: all .3s;
}
#header.fixedShow,
#header.isAtTop,
#header.isOverBreakpoint {
    top: 0;
}
#header:after {
	content: '';
	height: calc(100% + 40px);
	width: 100%;
	background: linear-gradient(to bottom, rgba(var(--color-background-rgb), 1), rgba(var(--color-background-rgb), 0));
	position: absolute;
	left: 0;
	top: 0;
	display: block;
	transition: all .3s;
	z-index: -1;
	opacity: 0;
	pointer-events: none;
}
#header.fixedShow:after {
	opacity: 1;
}
#header.isAtTop:after,
#header.isOverBreakpoint:after {
	opacity: 0;
}
#logo {
    margin: 0;
    top: 0;
    left: 0;
    display: block;
    position: absolute;
    z-index: 4;
    padding: 25px 20px;
}
#logo:after {
    content: '';
    display: block;
    height: 100%;
    width: 100%;
    background: #fff;
	border-radius: 0 0 20px 0;
    position: absolute;
    z-index: -1;
    left: 0;
    top: 0;
}
#logo img {
    height: 50px;
    width: auto;
    display: block;
    margin: 0;
    transition: height .2s;
    position: relative;
    z-index: 2;
}
#navMenuTrigger {
    float: right;
    position: relative;
    color: inherit;
    padding: 15px 50px 15px 20px;
    border-radius: 25px;
    height: 50px;
    cursor: pointer;
    z-index: 3;
    background: var(--color-background);
    transition: top .3s, color .3s, padding .3s;
    box-shadow: 0 0 5px rgba(var(--color-shadow-color-rgb), .1);
}
#navMenuTrigger:before,
#navMenuTrigger:after,
#navMenuTrigger .line {
    position: absolute;
    content: '';
    display: block;
    height: 2px;
    right: 25px;
    width: 15px;
    background: var(--color-text);
    transition: all .3s;
    opacity: 1;
}
#navMenuTrigger .line {
    top: 50%;
    margin-top: -1px;
}
#navMenuTrigger:before {
    top: 18px;
    right: 20px;
    width: 20px;
}
#navMenuTrigger:after {
    bottom: 18px;
    right: 22px;
    width: 18px;
}
#navMenuTrigger:hover .line {
    opacity: 0;
}
#navMenuTrigger:hover:before {
    background: var(--color-text);
    top: 21px;
    right: 20px;
    width: 20px;
}
#navMenuTrigger:hover:after {
    background: var(--color-text);
    bottom: 21px;
    right: 20px;
    width: 20px;
}
#navMenuTrigger[aria-expanded="true"] {
    padding-right: 45px;
}
#navMenuTrigger[aria-expanded="true"] .line {
    opacity: 0;
    width: 0;
}
#navMenuTrigger[aria-expanded="true"]:before {
    transform: rotate(45deg);
    transform-origin: 0 0;
    width: 20px;
    top: 18px;
    right: 15px;
}
#navMenuTrigger[aria-expanded="true"]:after {
    transform: rotate(-45deg);
    transform-origin: 0 100%;
    width: 20px;
    bottom: 17px;
    right: 15px;
}
#navMenuTrigger .menu,
#navMenuTrigger .close {
    font-size: 1em;
    line-height: 20px;
    font-weight: 700;
    display: block;
}
#navMenuTrigger .close {
    display: none;
}
#navMenuTrigger[aria-expanded="true"] .menu {
    display: none;
}
#navMenuTrigger[aria-expanded="true"] .close {
    display: block;
}

#headerMisc {
    top: 0;
    width: 100%;
    left: 0;
    position: absolute;
    background: var(--color-primary);
    display: flex;
    justify-content: end;
    z-index: 3;
}
#headerMisc > * {
    margin-left: 40px;
}

/* Social Navigation */
#navSocl,
#headerContact {
    display: flex;
    line-height: 30px;
    font-size: .75rem;
}
#navSocl ul {
    display: flex;
}
#navSocl li {
    margin-left: 10px;
    display: flex;
    align-items: center;
}
#navSocl a {
    color: inherit;
    text-decoration: none;
    display: block;
}
#navSocl .icon,
#headerContact .icon {
    font-size: 1.125rem;
}
#navSocl .icon:before {
    display: block;
}

#headerContact a {
	color: inherit;
	margin-left: 10px;
	text-decoration: none;
	display: flex;
	align-items: center;
}
#headerContact a:first-child {
	margin-left: 0;
}


/* Social Navigation */
#languageSelect {
    font-size: .75rem;
    line-height: 30px;
    position: relative;
}
#languageSelectTrigger {
    background: none;
    display: flex;
}
#languageSelectTrigger .label {
    display: flex;
}
#languageSelectTrigger > .icon {
    margin-left: 10px;
    transition: all .3s;
}
#languageSelectTrigger .label .icon {
    font-size: 1.125rem;
    margin-right: 10px;
}
#languageSelectables {
    background: var(--color-background);
    position: absolute;
    max-height: 0;
    visibility: hidden;
    overflow: hidden;
    left: 50%;
    transform: translateX(-50%);
    transition: max-height .3s cubic-bezier(0,1,0,1), padding .3s, box-shadow .3s, visibility .3s;
    z-index: 102;
    padding: 0 20px;
}
#languageSelectables.expanded {
    max-height: 1000px;
    visibility: visible;
    transition: max-height .3s cubic-bezier(1,0,1,0), padding .3s, box-shadow .3s, visibility .3s;
    padding: 10px 20px;
    box-shadow: 0 10px 20px rgba(var(--color-shadow-color-rgb), .2);
}

/* Standard Navigation */
.navStd .nav {
    margin-right: -20px;
    margin-left: 0;
}
.navStd li {
    float: left;
    margin-right: 20px;
    position: relative;
}
.navStd a,
.navStd .a {
    display: block;
}

/* MAIN NAVIGATION */
#navMain {
    color: var(--color-text);
}
#navMain .navBtnWrap {
    position: relative;
    display: flex;
    align-items: center;
}
#navMain .navBtnWrap .count {
	border-radius: 10px;
	background: var(--color-text);
	color: var(--color-background);
	font-weight: bold;
	min-width: 1.25em;
	line-height: 1.25;
	display: inline-block;
	text-align: center;
	margin-left: .3em;
	vertical-align: super;
	font-size: .8em;
}
#navMain .navBtnWrap a {
    transition: color .3s;
    overflow: hidden;
    display: block;
    padding: 0;
    flex-grow: 1;
    text-decoration: none;
    color: inherit;
}
#navMain .lvl1 > .navBtnWrap a {
    font-weight: 600;
}
#navMain li > .subNavWrap {
    max-height: 0;
    padding: 0;
    transition: max-height .3s cubic-bezier(0,1,0,1), padding .3s, margin .3s, border .3s;
    overflow: hidden;
}
#navMain .iconMenuTriggerDwn {
    display: block;
    width: 30px;
    height: 30px;
    line-height: 20px;
    text-align: center;
    padding: 5px 0;
    overflow: hidden;
    color: var(--color-text);
    transition: all .3s;
    user-select: none;
    background: none;
}

/* Breadcrumb */
#breadcrumb {
    padding-top: 5px;
    padding-bottom: 20px;
    flex: 1 1 auto;
}
#breadcrumb a {
    padding: 0 5px;
    text-decoration: none;
    color: inherit;
}
#breadcrumb a:last-child {
    font-weight: bold;
}

/* Suche */
#quickSrcBoxWrap {
    margin: 20px;
}
#quickSrcBox {
    padding-right: calc(36px + 1.5em);
    position: relative;
}
#quickSrcBox .optsContainer {
    margin: 0;
}
#srcBoxSubmit {
    position: absolute;
    right: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
    background: var(--color-text);
    padding: 8px;
    line-height: 1.5;
    text-align: center;
    color: var(--color-background);
    border-radius: 50%;
    transition: all .3s;
}
#srcBoxSubmit .icon,
#srcBoxSubmit .icon:before {
    margin: 0;
    line-height: 1.5;
    height: 1.5em;
    width: 1.5em;
    text-align: center;
    display: block;
}
#srcBoxSubmit:hover {
    background: var(--color-primary);
}
#siteSearchTrigger {
    display: none;
}
#quickSrcBox .optsContainer label {
    display: none;
}
#quickSrcBox .optsContainer input {
    width: 100%;
    float: none;
    font-size: 1em;
    padding: 8px 0 7px;
    line-height: 1.5;
}

@media (min-width: 640px) {
    #header {
        top: -140px;
    }
    #logo {
        padding: 40px 20px;
    }
    #logo img {
        height: 60px;
    }
    #navMenuTrigger {
        margin-top: 10px;
    }
}


@media (max-width: 959px) {
    html.navMainOpen {
        height: 100%;
    }
    html.navMainOpen body {
        overflow: hidden;
        height: 100%;
    }
    #headerWrap {
        position: absolute;
        height: 0;
        overflow: hidden;
        left: 0;
        top: 0;
        width: 100%;
        transition: height .3s, padding .3s, box-shadow .3s, overflow 0s, background 0s .3s;
        z-index: 1;
        background: var(--color-background);
    }
    #header.expanded:after {
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 60px;
        content: '';
        display: block;
        background: linear-gradient(to bottom, rgba(var(--color-background-rgb), .75) 0%,rgba(var(--color-background-rgb), .75) calc(100% - 20px),rgba(var(--color-background-rgb), 0) 100%);
        z-index: 1;
    }
    #headerWrap {
        padding: 0;
    }
    #headerWrap > .wrap {
        padding: 100px 0 50px;
    }
    #header.expanded {
        background: var(--color-background);
    }
    #header.expanded #headerWrap {
        height: 100vh;
        transition: height .3s, padding .3s, box-shadow .3s, background .3s;
        background-color: var(--color-background);
        overflow: scroll;
        animation: 0s linear 0.3s 1 normal both running delayOverflowAuto;
    }
    #languageSelect,
    #header.expanded #navSocl {
        display: none;
    }
    #header.expanded #languageSelect {
        display: block;
    }
    #navMain li > .subNavWrap {
        padding-left: 20px;
    }
    #navMain li > .subNavWrap.expanded {
        max-height: 5000px;
        padding-top: 10px;
        padding-bottom: 30px;
        transition: max-height .3s cubic-bezier(1,0,1,0), padding .3s, margin .3s, border .3s;
    }
    #navMain .iconMenuTriggerDwn[aria-expanded="true"] {
        transform: rotate(180deg);
    }
    #navMain li + li {
        margin-top: 10px;
    }

	#headerContact,
	#header.expanded #navSocl {
		display: none;
	}
	#header.expanded #headerContact {
		display: flex;
	}
	#headerContact .label {
		display: none;
	}
}
@media (min-width: 640px) and (max-width: 959px) {
    #headerWrap > .wrap {
        padding-top: 140px;
    }
    #header.expanded:after {
        height: 100px;
    }
    #header.expanded #navSocl,
    #languageSelect {
        display: flex;
    }
}
@media (min-width: 960px) {
    #header {
        display: flex;
    }
    #headerControl {
        padding: 0;
    }
    #headerMisc {
        padding-top: 5px;
        padding-bottom: 5px;
    }
    #headerWrap {
		padding-top: 20px;
        flex-grow: 1;
    }
    #headerWrap .wrap {
        margin: 20px 50px 0 180px;
        display: flex;
        justify-content: center;
        position: relative;
    }
    #navMenuTrigger {
        display: none;
    }
    #navMain {
        width: auto;
        right: 0;
        margin: 0;
        padding: 0 10px;
        background: var(--color-background);
        border-radius: 50px;
        box-shadow: 0 0 5px rgba(var(--color-shadow-color-rgb), .1);
    }
    #navMain .lvl1 {
        float: left;
        position: relative;
    }
    #navMain .lvl1 a {
        padding: 10px;
        font-size: 1.125rem;
        line-height: 30px;
    }
    #navStdInMainNav {
        line-height: 40px;
        float: left;
    }
    #navMain li > .subNavWrap {
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        min-width: 340px;
        top: calc(100% - 5px);
    }
    #navMain li > .subNavWrap > ul {
        background: var(--color-text);
        color: var(--color-background);
        margin: 10px;
        padding: 10px;
        position: relative;
        transition: all .3s;
        border-radius: 25px;
    }

    #navMain li > .subNavWrap > ul:after {
        content: "";
        display: block;
        left: 50%;
        top: -8px;
        margin-left: -8px;
        position: absolute;
        border-style: solid;
        border-width: 0 8px 8px 8px;
        border-color: transparent transparent var(--color-text) transparent;
    }
    #navMain .lvl1:hover > .subNavWrap,
    #navMain .subNavWrap.expanded:not(.expanded_init) {
        max-height: 5000px;
        transition: max-height .3s cubic-bezier(1,0,1,0), padding .3s, box-shadow .3s;

    }
    #navMain .lvl1:hover > .subNavWrap > ul,
    #navMain li > .subNavWrap.expanded:not(.expanded_init) > ul {
        box-shadow: 0 3px 6px rgba(var(--color-shadow-color-rgb), .16), 0 3px 6px rgba(var(--color-shadow-color-rgb), .23);
    }
    #navMain .lvl1:hover > .navBtnWrap > .iconMenuTriggerDwn,
    #navMain .iconMenuTriggerDwn[aria-expanded="true"] {
        transform: rotate(180deg);
    }
    #navMain .lvl3,
    #navMain .lvl2 .iconMenuTriggerDwn {
        display: none;
    }
    #navMain .iconMenuTriggerDwn {
        margin-left: -10px;
        height: 50px;
        line-height: 40px;
        font-size: .75rem;
    }
    #quickSrcBoxWrap {
        position: absolute;
        border: none;
        margin: 0;
        padding: 0;
        right: -50px;
        top: 0;
    }
    #siteSearchTrigger {
        right: auto;
        top: auto;
        display: block;
        padding: 15px;
        font-size: 20px;
        line-height: 20px;
        background: var(--color-background);
        box-shadow: 0 0 5px rgba(var(--color-shadow-color-rgb), .1);
        border-radius: 50%;
        z-index: 2;
        position: relative;
    }

    #siteSearchTrigger .on {
        display: block;
    }
    #siteSearchTrigger .label,
    #siteSearchTrigger .off {
        display: none;
    }
    #siteSearchTrigger[aria-expanded="true"] {
        box-shadow: none;
    }
    #siteSearchTrigger[aria-expanded="true"] .on {
        display: none;
    }
    #siteSearchTrigger[aria-expanded="true"] .off {
        display: block;
    }
    #quickSrcBox {
        transition: max-height .3s cubic-bezier(0,1,0,1), padding .3s, margin .3s, border .3s, box-shadow .3s, visibility .3s;
        position: absolute;
        overflow: hidden;
        visibility: hidden;
        left: auto;
        right: -10px;
        top: 0;
        max-height: 0;
        width: 320px;
        padding-left: 20px;
        padding-right: calc(56px + 1.5em);
        background: var(--color-background);
        z-index: 1;
        border-radius: 25px;
    }
    #quickSrcBox.expanded {
        box-shadow: none;
        padding-top: 60px;
        padding-bottom: 10px;
        max-height: 320px;
        visibility: visible;
        transition: max-height .3s cubic-bezier(1,0,1,0), padding .3s, margin .3s, border .3s, box-shadow .3s, visibility .3s;
        box-shadow: 0 0 5px rgba(var(--color-shadow-color-rgb), .1);
    }
    #srcBoxSubmit {
        bottom: 10px;
        right: 20px;
        border-radius: 50%;
    }
}
@media (min-width: 1080px) {
    #navMain {
        padding: 0;
    }
    #navMain .lvl1 > .navBtnWrap a {
        padding: 10px 20px;
    }
    #navMain .lvl1 .iconMenuTriggerDwn {
        margin-left: -20px;
    }
}

/*
	FOOTER
	*/
#footer {
    position: relative;
    text-align: center;
    overflow: hidden;
}
#footer .topWrap {
    border-top: 1px solid var(--color-hr);
    padding-top: 40px;
    padding-bottom: 40px;
    background: var(--color-background);
}
#footer .topWrapWrap {
    margin-right: -20px;
    margin-left: -20px;
    display: flex;
    flex-wrap: wrap;
}
#footer .bottomWrap {
    text-align: center;
    color: var(--color-text);
    background: var(--color-light);
    padding-bottom: 0;
    padding-top: 0;
}
#footer .topWrapWrap > * {
    padding-left: 20px;
    padding-right: 20px;
    width: 100%;
}
#footer .topWrapWrap > * + * {
    padding-top: 40px;
}
#logoFooter img {
    display: block;
    width: 50%;
    height: auto;
    margin: 0 auto;
}
#navFtr {
    padding: 10px 0 0;
    margin: 0;
}
#navFtr ul {
    margin-right: -20px;
}
#navFtr li {
    margin-top: 10px;
    float: none;
    display: inline-block;
}
#navFtr a,
#navFtr .a,
#footerTop {
    background: none;
    color: var(--color-background);
}
#navFtr a,
#navFtr .a {
    display: block;
    text-decoration: none;
    transition: all .3s;
}
#footerTop {
    padding-left: 10px;
    margin-top: 20px;
    margin-bottom: 10px;
    position: relative;
    z-index: 1;
    display: inline-block;
    background: none;
}
#footerTop:after {
    display: none;
}
#footer .contact3 {
    width: 100%;
}
#newsletterRegister .wrap {
    display: flex;
    flex-wrap: wrap;
    margin-top: 20px;
}
#newsletterRegister .optsPrivacy {
    width: 100%;
    margin-top: 10px;
}
#newsletterRegister .btnContainer {
    margin: 0;
}
#newsletterRegister .btnContainer .btn {
    border-radius: 0 25px 25px 0;
}
#epostWrap {
    width: 10%;
    flex-grow: 1;
    margin: 0 auto;
}
#epostWrap input {
    border-radius: 25px 0 0 25px;
    border-right: 0;
}
#epostWrap .optsInputWrap label {
    font-size: 1em;
    line-height: 1.7857;
}
#epostWrap .optsInputWrap.hasValue > label,
#epostWrap .optsInputWrap input:focus ~ label {
    font-size: 12px;
    line-height: 15px;
}
#newsletterBtn {
	position: fixed;
	left: 50%;
	transform: translateX(-50%);
	bottom: 10px;
	box-shadow: 0 10px 20px rgba(var(--color-shadow-color-rgb), .1);
	border-radius: 50%;
	height: 4em;
	width: 4em;
	z-index: 2;
	display: block;
	background: var(--color-background);
	color: var(--color-text);
}
#newsletterBtn .text {
	height: 100%;
	width: 100%;
	margin: 0;
	animation: rotating 20s linear infinite;
}
#newsletterBtn .text text {
	font-size: 50px;
	line-height: 1;
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: .5em;
}
#newsletterBtn .icon {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	line-height: 1;
}
#newsletterBtn .icon:before {
	margin: 0;
}
#newsletterBtn:hover .text {
	animation-play-state: paused;
}
@keyframes rotating {
	from {
		transform: rotate(0deg);
	}
	to {
		transform: rotate(-360deg);
	}
}
@media (min-width: 480px) {
    #footer .contact1,
    #footer .contact2 {
        width: 50%;
    }
    #logoFooter img {
        width: 33.33%;
    }
}
@media (min-width: 640px) {
    #footer {
        text-align: left;
    }
    #footer .contact1,
    #footer .contact2 {
        flex-grow: 1;
        width: 37.5%;
        margin: 0;
        padding-top: 0;
    }
    #footer #logoFooter {
        width: 25%;
        float: left;
        margin: 0;
    }
    #logoFooter img {
        width: 100%;
    }
}
@media (min-width: 720px) {
    #epostWrap .optsInputWrap label {
        line-height: 2.1428;
    }
}
@media (min-width: 960px) {
    #footer #logoFooter {
        width: 16.667%;
    }
    #footer .contact1,
    #footer .contact2 {
        width: 25%;
    }
    #footer .contact3 {
        width: 33.33%;
        padding-top: 0;
    }
    #navFtr {
        float: left;
    }
    #navFtr li {
        display: block;
        float: left;
        margin-top: 5px;
    }
    #footerTop {
        float: right;
        margin: 0 -10px 0 0;
    }
}

/* ==========================================================================
   external Scripts/Functions
   ========================================================================== */

/*! Swipebox v1.4.4 | Constantin Saguin csag.co | MIT License | github.com/brutaldesign/swipebox */
html.swipebox-html{overflow:hidden !important}#swipebox-overlay img{border:none !important}#swipebox-overlay{width:100%;height:100%;position:fixed;top:0;left:0;z-index:99999 !important;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background:rgba(var(--color-text-rgb), .75)}#swipebox-container{position:relative;width:100%;height:100%}#swipebox-slider{-webkit-transition:-webkit-transform 0.4s ease;transition:transform 0.4s ease;height:100%;left:0;top:0;width:100%;white-space:nowrap;position:absolute;display:none;cursor:pointer;padding-bottom:50px}#swipebox-slider .slide{height:100%;width:100%;line-height:1px;text-align:center;display:inline-block;position:relative;overflow:hidden}#swipebox-slider .slideInnerWrap{height:100%;width:100%;line-height:1px;text-align:center}#swipebox-slider .slideInnerWrap:before{content:"";display:inline-block;height:50%;width:1px;margin-right:-1px}#swipebox-slider .slide .swipebox-inline-container,#swipebox-slider .slide .swipebox-video-container,#swipebox-slider .slide img{display:inline-block;max-height:100%;max-width:100%;margin:0;padding:0;width:auto;height:auto;vertical-align:middle}#swipebox-slider .slide .swipebox-video-container{background:0 0;max-width:1140px;max-height:100%;width:100%;padding:5%;-webkit-box-sizing:border-box;box-sizing:border-box}#swipebox-slider .slide .swipebox-video-container .swipebox-video{width:100%;height:0;padding-bottom:56.25%;overflow:hidden;position:relative}#swipebox-slider .slide .swipebox-iframe-container iframe,#swipebox-slider .slide .swipebox-video-container .swipebox-video iframe{width:100% !important;height:100% !important;position:absolute;top:0;left:0}#swipebox-slider .slide .swipebox-iframe-container{width:100%;height:100%;overflow:hidden;position:relative;display:inline-block}#swipebox-slider .slide-loading{background:url("../img/preloader_301_dark.gif") center center no-repeat}#swipebox-bottom-bar,#swipebox-top-bar{-webkit-transition:0.5s;transition:0.5s;position:absolute;left:0;z-index:999;height:50px;width:100%}#swipebox-bottom-bar{bottom:0;color:var(--color-background) !important}#swipebox-top-bar{left:10px;bottom:0;display:table;width:calc(100% - 120px)}#swipebox-title{width:100%;height:100%;font-size:1em;line-height:1.2;text-align:center;vertical-align:middle;display:table-cell;color:var(--color-background);text-shadow:0 0 20px rgba(var(--color-text-rgb), 0.19), 0 0 6px rgba(var(--color-text-rgb), 0.23)}#swipebox-close,#swipebox-next,#swipebox-prev,#swipebox-zoomin,#swipebox-zoomout{background-image:url("../img/Swipebox/icons.png");background-repeat:no-repeat;border:none !important;text-decoration:none !important;cursor:pointer;width:50px;height:50px;top:0}#swipebox-arrows{height:100%;position:absolute;left:0;bottom:0;top:-50vh}#swipebox-prev{background-position:-32px 13px;float:left}#swipebox-next{background-position:-78px 13px;float:right;position:absolute;right:-100vw;margin-right:50px}#swipebox-close,#swipebox-zoomin,#swipebox-zoomout{top:0;position:absolute;z-index:9999}#swipebox-close{background-position:15px 12px;right:0}#swipebox-zoomin{background-position:-122px 12px;right:50px}#swipebox-zoomout{background-position:-168px 12px;right:50px}.swipebox-no-close-button #swipebox-close{display:none}#swipebox-next.disabled,#swipebox-prev.disabled,#swipebox-zoomin.disabled,#swipebox-zoomout.disabled{opacity:0.3}.swipebox-no-touch #swipebox-overlay.rightSpring #swipebox-slider{-webkit-animation:rightSpring 0.3s;animation:rightSpring 0.3s}.swipebox-no-touch #swipebox-overlay.leftSpring #swipebox-slider{-webkit-animation:leftSpring 0.3s;animation:leftSpring 0.3s}.swipebox-touch #swipebox-container:after,.swipebox-touch #swipebox-container:before{-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-transition:all 0.3s ease;transition:all 0.3s ease;content:' ';position:absolute;z-index:999;top:0;height:100%;width:20px;opacity:0}.swipebox-touch #swipebox-container:before{left:0;box-shadow:inset 10px 0 10px -8px var(--color-light)}.swipebox-touch #swipebox-container:after{right:0;box-shadow:inset -10px 0 10px -8px var(--color-light)}.swipebox-touch #swipebox-overlay.leftSpringTouch #swipebox-container:before,.swipebox-touch #swipebox-overlay.rightSpringTouch #swipebox-container:after{opacity:1}@-webkit-keyframes rightSpring{0%,100%{left:0}50%{left:-30px}}@keyframes rightSpring{0%,100%{left:0}50%{left:-30px}}@-webkit-keyframes leftSpring{0%,100%{left:0}50%{left:30px}}@keyframes leftSpring{0%,100%{left:0}50%{left:30px}}#swipebox-slider .slide .video-js-container .swipebox-video{width:auto;height:auto;padding-bottom:0}#swipebox-slider .swipebox-video .video-js{width:100%;height:auto;display:block}#swipebox-slider .swipebox-video .video-js .vjs-big-play-button{left:50%;top:50%;margin:-1em 0 0 -1em;height:2em;width:2em;line-height:2em;border:none;background:var(--color-primary);border-radius:1em;color:var(--color-text-on-primary)}#swipebox-slider .swipebox-video .video-js .vjs-big-play-button:hover{background:var(--color-text);color:var(--color-background)}#swipebox-slider .swipebox-video .vjs-has-started .vjs-control-bar{background-color:rgba(var(--color-text-rgb), .9)}#swipebox-slider .swipebox-video .video-js .vjs-slider{background:rgba(var(--color-background-rgb), .5)}#swipebox-slider .swipebox-video .video-js .vjs-load-progress{background:var(--color-light)}#swipebox-slider .swipebox-video .video-js .vjs-play-progress{background:var(--color-primary)}

/* swiper-control */
.swiper-control {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    display: flex;
	justify-content: space-between;
}
.swiper-control .swiper-pagination {
    position: static;
    flex-grow: 0;
    margin: 0;
	width: auto !important;
    display: flex;
    justify-content: start;
    align-items: center;
}
.swiper-control .swiper-navigation {
	display: flex;
}
.swiper-control .swiper-pagination .swiper-pagination-bullet {
    border: 2px solid var(--swiper-theme-color);
    background: var(--swiper-theme-color);
    height: 6px;
    width: 6px;
    opacity: 1;
    margin: 0;
    transition: all .3s;
    --swiper-pagination-bullet-horizontal-gap: 10px;
}
.swiper-control .swiper-pagination .swiper-pagination-bullet:first-child {
    margin-left: 0;
}
.swiper-control .swiper-pagination .swiper-pagination-bullet-active {
    background: none;
    height: 10px;
    width: 10px;
}
.swiper-control .swiper-button-next,
.swiper-control .swiper-button-prev {
    font-size: 12px;
    line-height: 40px;
    height: 40px;
    top: auto;
    bottom: 0;
    left: auto;
    position: static;
    margin-top: 0;
}
.swiper-control .swiper-button-next {
    right: 0;
}
.swiper-control .swiper-button-prev {
    right: 40px;
}
.swiper-control .swiper-button-next:after,
.swiper-control .swiper-button-prev:after {
    display: none;
}

/*
	Overlay
	*/
.vcModal {
    transition: height 0s .3s, opacity .3s;
    pointer-events: none;
    position: fixed;
    opacity: 0;
    left: 0;
    top: 0;
    overflow: auto;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 1000;
    padding: 20px calc(10px + 2.667em) 20px 20px;
    border: none;
    width: 100%;
    height: 0;
    margin: 0;
    max-width: none;
    max-height: none;
    background: none;
}
.vcModal::backdrop {
    background: rgba(var(--color-text-rgb), .75);
}
.vcModal.open,
.vcModal[open] {
    height: 100vh;
    opacity: 1;
    transition: height 0s, opacity .3s;
    pointer-events: auto;
}
.vcModalMsg {
    position: relative;
    z-index: 1;
    margin: auto;
    background: var(--color-background);
    max-width: 40em;
    width: 100%;
    box-shadow: 0 19px 38px rgba(var(--color-shadow-color-rgb), .30), 0 15px 12px rgba(var(--color-shadow-color-rgb), .22);
    padding: 20px;
    border-radius: 0;
}
.vcModal .vcModalClose {
    position: absolute;
    display: block;
    right: -20px;
    top: -20px;
    cursor: pointer;
    padding: 10px;
    line-height: 20px;
    text-align: center;
    background: var(--color-primary);
    color: var(--color-text-on-primary);
    --icon-color: var(--color-text-on-primary);
    height: 40px;
    width: 40px;
    border-radius: 20px;
    transition: all .3s;
    z-index: 1;
}
.vcModal .vcModalClose:hover {
    background: var(--color-text);
    color: var(--color-background);
    --icon-color: var(--color-background);
}

.vcModalBannerBottom {
    padding: 30px 0 0;
    align-items: flex-end;
    background: rgba(var(--color-background-rgb),.75);
}
.vcModalBannerBottom .vcModalMsg {
    margin-bottom: 0;
    max-width: none;
    padding: 0;
    border-radius: 0;
}
.vcModalBannerBottom .vcModalOverlay {
    height: 0 !important;
    opacity: 0 !important;
}
.vcModalBannerBottom .vcModal {
    top: auto;
    bottom: 0;
}
.vcModalBannerBottom  .vcModal .vcModalClose {
    right: 15px;
    top: 15px;
}
.vcModalMsg .article {
    width: 100%;
    padding: 0;
    margin: 0;
}
.vcModalMsg .article .imgTeaser:first-child {
    margin: -20px -20px 0;
}
.vcModalMsg .article .imgTeaser + .headline {
    margin-top: 20px;
}
.vcModalMsg .gridWrap {
    margin-left: -20px;
    margin-right: -20px;
}
@media (min-width: 960px) {
    .vcModalMsg {
        padding: 40px;
    }
    .vcModalBannerBottom .vcModalMsg .article {
        width: 90%;
    }
    .vcModalBannerBottom .vcModalMsg .article > :first-child {
        padding-right: 0;
    }
}
@media (min-width: 1600px) {
    .vcModalBannerBottom .vcModalMsg .article {
        width: 80%;
    }
}
@media (min-width: 1840px) {
    .vcModalBannerBottom .vcModalMsg .article {
        width: 70%;
    }
}

/*
	CSS Icons
	*/
.vcCssIcon {
	position: relative;
	display: inline-block;
}
.vcCssIconCheck {
	height: 1em;
	width: .667em;
	border-right: .1875em solid var(--icon-color, #000);
	border-bottom: .1875em solid var(--icon-color, #000);
	transform: rotate(45deg);
	margin: 0 .2em;
}
.vcCssIconArrowDown {
    width: 1em;
	height: 1em;
    margin: 0 .2em;
}
.vcCssIconArrowDown:after {
	content: '';
	display: block;
	font-size: .667em;
	width: 1em;
	height: 1em;
	position: absolute;
	left: 50%;
	top: 50%;
	margin-top: -.375em;
	margin-left: -.5em;
	transform: rotate(-45deg);
	border-left: 3px solid var(--icon-color, #000);
	border-bottom: 3px solid var(--icon-color, #000);
    transition: all .3s;
}
.vcCssIconClose {
	height: 100%;
	width: 100%;
	display: block;
}
.vcCssIconClose:before,
.vcCssIconClose:after {
	position: absolute;
	left: 50%;
	top: 50%;
	content: '';
	background: var(--icon-color, #fff);
	display: block;
	width: 100%;
	height: .1875em;
	margin-top: -.09375em;
	margin-left: -50%;
    transition: background .3s;
}
.vcCssIconClose:before {
	transform: rotate(45deg);
}
.vcCssIconClose:after {
	transform: rotate(-45deg);
}

/*
	Privacy & Cookies
	*/
.vcPrivacyOptsLine label {
    display: block;
    font-weight: bold;
    min-height: 2em;
    padding-right: 4em;
    position: relative;
    cursor: pointer;
    float: none;
}
.vcPrivacyOptsLine label .hint {
    font-weight: normal;
    margin: 0;
    line-height: normal;
    color: var(--color-light);
    font-size: 14px;
}
.vcPrivacyOptsLine input:disabled + label {
    pointer-events: none;
}
.vcPrivacyOptsLineWrap + .vcPrivacyOptsLineWrap {
    margin-top: 1.5em;
}
.vcPrivacyMoreInfoTrigger {
    padding: .5em 0 0;
    display: block;
}
.vcPrivacyMoreInfoTrigger .vcCssIconArrowDown {
    margin: 0 0 0 .5em;
    transition: transform .3s;
    float: none !important;
    display: inline-block !important;
}
.vcPrivacyDefList {
    padding: 0;
    margin: 0;
    font-size: .8em;
}
.vcPrivacyDefList dt {
    padding: .3125em 0 0;
    font-weight: bold;
    text-align: left;
    margin: 0;
}
.vcPrivacyDefList dd {
    font-weight: normal;
    text-align: left;
    padding: 0 0 .3125em;
    margin: 0;
}
.vcPrivacyDefList dt:first-child {
    padding-top: 0;
}
.vcPrivacyDefList dd:last-child {
    padding-bottom: 0;
}
#vcPrivacySetupSubmit {
    display: block;
    width: 100%;
    text-align: center;
    margin-top: 1em;
}
.vcPrivacyOverlayTrigger {
    cursor: pointer;
}
.vcPrivacyNoPermission {
    background: var(--color-lighter);
    border: 1px solid var(--color-light);
    text-align: center;
    padding: 1em;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.vcPrivacySlideDownTarget {
    display: grid;
    grid-template-rows: 1fr;
    overflow: hidden;
    padding-top: .625em;
    transition: all .3s;
}
.vcPrivacySlideDownTarget > * {
    min-height: 0;
    transition: visibility .3s;
    visibility: visible;
}
.vcPrivacySlideDownTarget[aria-hidden="true"] {
    grid-template-rows: 0fr;
    padding-top: 0;
}
.vcPrivacySlideDownTarget[aria-hidden="true"] > * {
    visibility: hidden;
}
.vcPrivacySlideDownTrigger {
    background: none;
    padding: .5em 0 0;
    border: none;
}
.vcPrivacySlideDownTrigger[aria-expanded="true"] .on {
    display: inline;
}
.vcPrivacySlideDownTrigger .on,
.vcPrivacySlideDownTrigger[aria-expanded="true"] .off {
    display: none;
}
.vcPrivacySlideDownTrigger[aria-expanded="true"] .vcCssIcon {
    transform: rotate(180deg);
}
.vcPrivacySlideDownTrigger[aria-expanded="true"] .vcCssIconArrowDown:after {
    margin-top: -1em;
}

@media (min-width: 640px) {
    .vcPrivacyDefList dt {
        clear: left;
        float: left;
        padding: .25em 0;
        width: 25%;
    }
    .vcPrivacyDefList dd {
        padding: .25em 0 .25em 20px;
        margin: 0;
        width: 75%;
        float: left;
    }
    .vcPrivacyDefList dt:first-child,
    .vcPrivacyDefList dt:first-child + dd {
        padding-top: 0;
    }
    .vcPrivacyDefList dt:nth-last-child(2),
    .vcPrivacyDefList dt:nth-last-child(2) + dd {
        padding-bottom: 0;
    }
    #vcPrivacySetupSubmit {
        margin-left: auto;
        margin-right: auto;
        width: 50%;
    }
}

/* ==========================================================================
   Content classes
   ========================================================================== */


/* Content: AUFMACHER */
.teaser {
    height: calc(100vh - 20px);
    min-height: 300px;
    --swiper-navigation-color: var(--color-background);
    --swiper-theme-color: var(--color-background);
}
.teaser > ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
.teaserItem {
    list-style: none;
    padding: 0;
    margin: 0;
    position: relative;
}
.teaserItem .teaserImg,
.teaserItem .teaserItemTitle {
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
	z-index: 0;
}
.teaserItem .teaserImg.darken:after {
    content: '';
    display: block;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    position: absolute;
	background: rgba(0,0,0,.4);
    mix-blend-mode: multiply;
}
.teaserItem .teaserItemTitle {
    z-index: 1;
    margin-top: 20px;
    margin-bottom: 50px;
    color: var(--color-background);
}
.teaserItem .teaserItemTitleInner {
    position: absolute;
    display: flex;
    flex-direction: column;
}

.teaserItem .teaserItemTitle:before,
.teaserItem .teaserItemTitle:after {
	content: '';
	position: absolute;
	top: calc(100% + 50px);
	width: 50%;
	min-width: 200px;
	border-radius: 50%;
	display: block;
	height: 100px;
	box-shadow: 0 0 200px 40px rgba(0,0,0,1);
	z-index: -1;
}
.teaserItem .teaserItemTitle:before {
	left: 0;
	transform: translateX(-50%);
}
.teaserItem .teaserItemTitle:after {
	right: 0;
	transform: translateX(50%);
}
#teaserSection {
    margin-top: -70px;
	mask: url("../img/mask_rounded_bottom.svg") 50% 100% / cover no-repeat;
}
#teaserSection .swiper-pagination,
#teaserSection .swiper-navigation {
	padding-bottom: 10px;
	position: relative;
	z-index: 1;
	bottom: 0;
}
@media (min-width: 640px) {
    #teaserSection {
        margin-top: -110px;
    }
}
@media (min-width: 720px) {
    .teaser {
        min-height: 450px;
    }
}
@media (min-width: 960px) {
    #teaserSection {
        margin-top: -100px;
        height: calc(100vh - 20px);
    }
	#teaserSection .swiper-pagination,
	#teaserSection .swiper-navigation {
		padding-bottom: 20px;
	}
}

/* Content: BILDER & GALERIE */
.filePreview,
.img,
.thumb {
	position: relative;
	overflow: hidden;
	display:block;
}
.thumb img,
.img img,
.img-link img,
.imgWrap img {
	width:100%;
	height:auto;
	display: block;
}
.imgWrap {
	position: relative;
	margin: 0;
}
.gallery {
	margin: -5px -10px;
}
.img-count {
	margin: 5px 10px;
	text-align: right;
}
.imgContainer {
	float: left;
	padding: 10px;
	margin: 0 !important;
	position: relative;
}
.imagesWrap .img img {
	border-radius: 20px;
}
.img {
	display:block;
	position: relative;
	z-index: 1;
}
.img.effect {
	border: 5px solid var(--color-background);
	box-shadow: 0 3px 6px rgba(var(--color-shadow-color-rgb), .16), 0 3px 6px rgba(var(--color-shadow-color-rgb), .23);
}
.caption {
	font-size: 80%;
	line-height: 1.25;
	display: block;
	text-align: center;
	margin-top: .5em;
}

.imgLeft .imagesInnerWrap {
	float: left;
	margin-bottom: 1em;
}
.imgRight .imagesInnerWrap {
	margin-bottom: 1em;
	float: right;
}
.imgRight .caption {
	text-align: left;
}
.imgLeft .caption {
	text-align: right;
}
.imgWrap + .imgWrap,
.imgWrap + .imgWrap {
	margin-top: 1em;
}
.imgNone {
	margin: 1em auto;
}
.imgNone .imagesInnerWrap {
	margin: -1em;
}

.imgWidth-100,
.imgWidth-75,
.imgWidth-67,
.imgWidth-50,
.imgWidth-42,
.imgWidth-33 {
	width: 100%;
}
.imgWidth-25 {
	width: 50%;
}
.imgWidth-20,
.imgWidth-17,
.imgWidth-15 {
	width: 25%;
}
.imgWidth-13,
.imgWidth-10,
.imgWidth-5 {
	width: 15%;
}

.imgNone .imgWrap {
	float: left;
	padding: 1em;
	margin: 0;
}

.imgRight .imgWidth-25,
.imgRight .imgWidth-20,
.imgRight .imgWidth-17,
.imgRight .imgWidth-15,
.imgRight .imgWidth-13,
.imgRight .imgWidth-10,
.imgRight .imgWidth-5 {
	margin-left: 1em;
	padding-left: 1em;
	float: right;
}
.imgLeft .imgWidth-25,
.imgLeft .imgWidth-20,
.imgLeft .imgWidth-17,
.imgLeft .imgWidth-15,
.imgLeft .imgWidth-13,
.imgLeft .imgWidth-10,
.imgLeft .imgWidth-5 {
	margin-right: 1em;
	padding-right: 1em;
	float: left;
}

@media (min-width: 480px) {
	.imgWidth-33,
	.imgWidth-25 {
		width: 50%;
	}
	.imgWidth-20,
	.imgWidth-17,
	.imgWidth-15 {
		width: 33.3%;
	}
	.imgWidth-13 {
		width: 20%;
	}
	.imgWidth-10,
	.imgWidth-5 {
		width: 15%;
	}

	.imgRight .imgWidth-33 {
		margin-left: 1em;
		padding-left: 1em;
		float: right;
	}
	.imgLeft .imgWidth-33 {
		margin-right: 1em;
		padding-right: 1em;
		float: left;
	}
}

@media (min-width: 640px) {
	.imgWidth-50,
	.imgWidth-42 {
		width: 50%;
	}
	.imgWidth-25 {
		width: 33.3%;
	}
	.imgWidth-20,
	.imgWidth-17 {
		width: 25%;
	}
	.imgRight .imgWidth-50,
	.imgRight .imgWidth-42 {
		margin-left: 1em;
		padding-right: 1em;
		float: right;
	}
	.imgLeft .imgWidth-50,
	.imgLeft .imgWidth-42 {
		margin-right: 1em;
		padding-right: 1em;
		float: left;
	}
}

@media (min-width: 720px) {
	.imgWidth-67 {
		width: 50%;
	}
	.imgWidth-33,
	.imgWidth-25 {
		width: 33.3%;
	}
	.imgWidth-20,
	.imgWidth-17,
	.imgWidth-15 {
		width: 20%;
	}
	.imgWidth-13,
	.imgWidth-10,
	.imgWidth-5 {
		width: 15%;
	}

	.imgRight .imgWidth-67 {
		margin-left: 1em;
		padding-left: 1em;
		float: right;
	}
	.imgLeft .imgWidth-67 {
		margin-right: 1em;
		padding-right: 1em;
		float: left;
	}
}

@media (min-width: 960px) {
	.imgWidth-100 {
		width:100%;
	}
	.imgWidth-75 {
		width:75%;
	}
	.imgWidth-67 {
		width:66.7%;
	}
	.imgWidth-50 {
		width:50%;
	}
	.imgWidth-42 {
		width: 41.7%;
	}
	.imgWidth-33 {
		width:33.3%;
	}
	.imgWidth-25 {
		width:25%;
	}
	.imgWidth-20 {
		width:20%;
	}
	.imgWidth-17 {
		width:16.6666%;
	}
	.imgWidth-15 {
		width:15%;
	}
	.imgWidth-13 {
		width:12.5%;
	}
	.imgWidth-10 {
		width:10%;
	}
	.imgWidth-5 {
		width:5%;
	}
	.imgRight .imgWidth-75 {
		margin-left: 1em;
		padding-left: 1em;
		float: right;
	}
	.imgLeft .imgWidth-75 {
		margin-right: 1em;
		padding-right: 1em;
		float: left;
	}
}

/* Content: GOOGLE MAPS */
.map_canvas {
	min-height: 200px;
	min-height: 50vh;
	background: var(--color-light);
	margin: 1em 0;
}
.map_canvas .gm-style {
	font-family: inherit;
}
.map_canvas .gm-style-iw .btn {
	width: 100%;
	margin-top: 15px;
}
.map_legend .head {
	font-size: 1.25em;
	font-weight: bold;
	line-height: 30px;
	color: var(--color-text);
	background: var(--color-light);
	position: relative;
	padding: 5px 10px 5px 40px;
	transition: all .3s;
	cursor: pointer;
}
.map_legend .head .sprt {
	position: absolute;
	left: 4px;
	top: 50%;
	margin-top: -16px;
	transition: all .3s;
}
.map_legend:hover .head {
	background: var(--color-primary);
    color: var(--color-text-on-primary);
}
.map_legend.aktiv .head {
    background: var(--color-primary);
    color: var(--color-text-on-primary);
}
.map_legend.aktiv .head .sprt {
	transform: rotate(180deg);
}

/* OVERLAY */
body.GMO-active { overflow:hidden; }
#GMO-wrap {
	visibility:hidden;
	z-index:1000;
	position:absolute;
	height:100%;
	width:100%;
	top:0;
	left:0;
	text-align:center;
	overflow:hidden;
	transition:visibility 0.5s;
}
.GMO-active #GMO-wrap {
	visibility:visible;
}
#GMO-container {
	position:relative;
	box-sizing:border-box;
	width:40%;
	min-width:670px;
	height:80%;
	margin-top:20%;
	margin-top:20vh;
	padding-right:40px;
	padding-top:40px;
	display:inline-block;
	opacity:0;
	transition:margin-top .5s , opacity .5s;
}
.GMO-active #GMO-container {
	margin-top:10%;
	margin-top:10vh;
	opacity:1;
}
#GMO-content {
	box-sizing:border-box;
	text-align:left;
	padding:20px;
	height:100%;
	background-color: var(--color-background);
	box-shadow:0 7px 15px rgba(var(--color-shadow-color-rgb), .6);
	overflow:auto;
}
#GMO-close {
	position:absolute;
	right:0;
	top:0;
	height:40px;
	width:40px;
	cursor:pointer;
	box-shadow:0 2px 10px rgba(var(--color-shadow-color-rgb), .6);
    transition: transform 1s ease-in-out 0s;
}
.csstransforms #GMO-close .closePop {
    background: var(--color-primary) none;
}
.csstransforms #GMO-close:before,
.csstransforms #GMO-close:after {
    background-color: var(--color-background);
    content: "";
    height: 80%;
    left: 45%;
    position: absolute;
    top: 10%;
    width: 2px;
}
.csstransforms #GMO-close:before {
    transform: rotate(45deg);
}
.csstransforms #GMO-close:after {
    transform: rotate(-45deg);
}
#GMO-content button.close {
	background-color: var(--color-text);
}
ul.placeList {
	color: var(--color-light);
	list-style:none;
	list-style-type:none;
	padding:0;
}
ul.placeList li {
	position:relative;
	padding-left:20px;
	border-top:1px solid var(--color-light);
}
ul.placeList li:first-child {
	border-top:0;
}
ul.placeList li:before {
	content:'';
	position:absolute;
	left:0;
	top:5px;
	height:16px;
	width:16px;
	background:url(../img/jQueryUI/ui-icons_222222_256x240.png) -96px -160px no-repeat;
}
ul.placeList li.aktiv:before {
	background-position:-64px -144px;
}
ul.placeList li a {
	display:block;
	padding:5px 0;
	text-decoration:none;
}

.addrWrap {
	margin: .769em 0;
}
.addrWrap address {
	font-style: italic;
}
.addrWrap > h3 {
	margin: 0;
}
.addrWrap .addr,
.addrWrap .addrData {
	margin: .769em 0;
}


@media only screen and (min-width: 480px) {
	.addrWrap {
		margin: 1em -1em;
	}
	.addrWrap > * {
		padding: 0 1em;
	}
	.addrWrap .addr,
	.addrWrap .addrData {
		width: 50%;
		float: left;
		margin: 0;
	}
}

/* Content: VIDEOS */
.vidWrap {
	margin: 0 auto;
}
.vid {
	position:relative;
	display:block;
	overflow:hidden;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
}
.vid,
.vid:after,
.vid *,
.vid *:after {
	transition: all .2s;
}
.vid:after {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	content: '';
	display: block;
	background: var(--color-text);
    opacity: .25;
}
.vid .playIcon {
	position: absolute;
	top: 50%;
	left: 50%;
	margin: -24px 0 0 -20px;
	width: 48px;
	height: 40px;
	border-style: solid;
	border-width: 24px 0 24px 40px;
	border-color: transparent transparent transparent var(--color-background);
	display: block;
	background: none;
	z-index: 1;
}
.vid .playIcon:after {
	content: '';
	position: absolute;
	left: -57px;
	top: -35px;
	height: 64px;
	width: 64px;
	background: none;
	border: 2px solid var(--color-light);
	border-radius: 0%;
	transform: rotate(0deg);
}
.vid .video-time {
	position:absolute;
	background: var(--color-text);
	color: var(--color-background);
	display:block;
	padding: 5px 10px;
	bottom:0;
	right:0;
	font-weight: bold;
	font-size: 80%;
	z-index: 1;
}
.vid:hover {
	box-shadow: 0 1px 3px rgba(var(--color-shadow-color-rgb), .12), 0 1px 2px rgba(var(--color-shadow-color-rgb), .24);
}
.vid:hover:after {
	opacity: 0;
}
.vid:hover .playIcon {
	border-color: transparent transparent transparent var(--color-primary);
}
.vid:hover .playIcon:after {
	border-color: var(--color-primary);
	border-radius: 50%;
	transform: rotate(30deg);
	left: -62px;
}
.vid:hover .video-time {
	background: var(--color-primary);
	color: var(--color-text-on-primary);
}
.videoFrame {
	float:right;
    position: relative;
    width: 50%;
}
.videoIFrame {
    position: relative;
}
.videoFrame iframe {
    bottom: 0;
    height: 100%;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%;
}

/* DOWNLOADS */
.downloads {
	margin: 1em 0;
}
.downloads h4 {
	margin-top:0;
}
.downloads ul {
	margin:0 -15px;
	list-style:none;
	padding:0 !important;
}
.downloads li {
	padding:15px;
	margin:0 !important;
}
.downloads li:before {
	display: none !important;
}
.download a {
	display:block;
	position:relative;
	min-height:24px;
	text-align: left;
	text-decoration: none;
	color: inherit;
	font-weight: 500;
}
.download a.hasImg {
	padding-left: 45px;
}
.download img {
	position: absolute;
	left: 0;
	top: .25em;
	display: block;
}
.download small {
	display: block;
	font-weight: normal;
	font-size: 80%;
}
.downloads li.video a {
	display:none;
}
.downloads li video {
	width:100%;
	height:auto;
}

@media only screen and (min-width: 480px) {
	.downloads .grids_2 .gridItem {
		width: 50%;
		float: left;
	}
	.downloads .grids_2 .gridItem:nth-child(2n+1) {
		clear: left;
	}
	.downloads .grids_4 .gridItem {
		width:25%;
		float:left;
	}
	.downloads .grids_4 .gridItem:nth-child(4n+1) {
		clear: left;
	}
}

/* Content: SUB NAV IN ARTICLEs */
.navSub ul {
	padding: 0 0 0 2em;
}

/* Content: FORMS */
.form {
    container-type: inline-size;
    container-name: formContainer;
}
.form .duty {
    font-weight: bold;
    color: var(--color-primary);
}
.form .hint .duty {
    padding: 2px;
    color: var(--color-primary);
}

.optsFieldset legend {
    margin: 0;
}
.optsFieldset {
    margin-top: 60px;
    margin-bottom: 60px;
}
.optsContainer {
    margin: 40px 0 0;
    padding: 0;
    text-align: left;
    position: relative;
}
.optsContainer.optsHint {
    margin: 20px 0 0;
}
.optsInputWrap {
    position: relative;
}
.optsContainer:after {
    clear: both;
    content: '';
    display: table;
}

.optsContainer + .optsContainer,
.optsContainer + .optsContainerGroupWrap,
.optsContainerGroupWrap + .optsContainer,
.optsContainerGroupWrap + .optsContainerGroupWrap,
.optsContainerWrap + .optsContainer,
.optsFieldset + .optsFieldset,
.optsFieldset + .optsContainerGroupWrap {
    margin-top: 40px;
}
.optsFieldset > .optsContainer:last-child {
    margin-bottom: 0;
}
.form > .optsFieldset:first-child,
.form > .optsContainer:first-child {
    margin-top: 0;
}
.form > .optsContainerWrap:first-child {
    margin-top: -40px
}

.optsContainer > label {
    display: block;
    margin-bottom: 5px;
    color: var(--color-text);
    line-height: 30px;
    font-size: 1.25rem;
    text-transform: uppercase;
    letter-spacing: .1em;
}
.optsRadio .optsInputWrap > label,
.optsCheckbox .optsInputWrap > label,
.optsContainer .optsInputWrap .optsInputLabel,
.optsInputWrap > label,
.optsInputWrap > .optsInputDynamicLabel,
.optsInputWrap.dateHasAppendText .ui-datepicker-append {
    display: block;
    margin: 0;
    padding: 0 5px;
    text-align: left;
    font-weight: 600;
    font-size: 1rem;
    line-height: 1.5625;
    position: absolute;
    left: 15px;
    top: 10px;
    transition: all .2s .1s;
    pointer-events: none;
    max-width: 95%;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    color: var(--color-text);
    background: var(--color-background);
}
.optsInputWrap > input:focus ~ label,
.optsInputWrap > .input:focus ~ label,
.optsInputWrap > textarea:focus ~ label,
.optsInputWrap > select:focus ~ label,
.optsInputWrap > .selectWrap.focus ~ label,
.optsRadio .optsInputWrap > label,
.optsCheckbox .optsInputWrap > label,
.optsInputWrap.hasValue > label,
.optsInputWrap > .optsInputDynamicLabel,
.optsInputWrap.hasFocus > label,
.optsInputWrap.dateHasAppendText > label {
    top: -6px;
    font-size: 12px;
    line-height: 15px;
    transition: all .2s;
    background: var(--color-background);
}
.optsInputWrap.dateHasAppendText.hasValue .ui-datepicker-append {
    opacity: 0;
    pointer-events:  none;
}
.optsInputWrap > label:first-child {
    position: static;
    padding: 0;
    margin-bottom: 5px;
    text-overflow: clip;
    max-width: none;
}
.optsContainer .optsInputWrap .optsInputLabel {
    float: left;
    padding: 5px 20px 5px 0;
    margin: 0;
    position: static;
    line-height: 30px;
    font-size: 1.25rem;
    white-space: wrap;
    max-width: none;
}
.optsContainer .optsInputWrap .optsInputLabel .icon {
    position: static;
}
.optsContainer.optsDuty > label:after,
.optsContainer.optsDuty .optsInputWrap > label:after {
    color: var(--color-primary);
    padding-left: 3px;
    display: inline-block;
    content: '*';
    font-weight: 700;
}
.optsContainer.optsDuty.optsDate.optsRange .optsInputWrap > label:after {
    display: none;
}

.optsContainer > label .shortInfo,
.optsContainer .optsInputLabel .shortInfo,
.optsInputWrap > label .shortInfo {
    font-weight: normal;
    letter-spacing: 0;
    text-transform: none;
    font-size: .75rem;
    color: var(--color-light);
    padding-left: 3px;
}
.optsContainer > label .shortInfo:before,
.optsContainer .optsInputLabel .shortInfo:before,
.optsInputWrap > label .shortInfo:before {
    content:' (';
}
.optsContainer > label .shortInfo:after,
.optsContainer .optsInputLabel .shortInfo:after,
.optsInputWrap > label .shortInfo:after {
    content:')';
}

.optsInputWrap input:not(.optsSwitch),
.optsInputWrap .input,
.optsInputWrap textarea,
.optsInputWrap select,
.optsInputWrap .selectOver,
.optsInputWrap .optsCounterWrap .over {
    width: 100%;
    padding: 9px 20px;
    background: var(--color-background);
    color: inherit;
    border: 1px solid var(--color-hr);
    font-weight: 400;
    transition: border-color .2s, background .2s;
    position: relative;
    display: block;
    border-radius: calc(10px + .9375em);
    font-size: 1rem;
    line-height: 1.5625;
}
.optsInputWrap .input {
    min-height: calc(1.5625em + 20px);
}
.optsInputWrap .selectOver {
    padding-right: 40px;
}
.optsError .error {
    font-size: 80%;
    padding: 5px 0 0;
}
.optsError > label {
    color: var(--color-alert);
}
.optsError .optsInputWrap input:not(.optsSwitch),
.optsError .optsInputWrap .input,
.optsError .optsInputWrap textarea,
.optsError .optsInputWrap select,
.optsError .optsInputWrap .selectOver,
.optsError .optsInputWrap .optsCounterWrap .over {
    border-color: var(--color-alert);
}

.optsInputWrap input:not(.optsSwitch):hover,
.optsInputWrap .input:hover,
.optsInputWrap textarea:hover,
.optsInputWrap select:hover,
.optsInputWrap .selectWrap:hover .selectOver,
.optsInputWrap .optsCounterWrap:hover .over,
.optsCheckbox .optsInputWrap:hover,
.optsRadio .optsInputWrap:hover {
    border-color: var(--color-text);
    box-shadow: 0 0 5px rgba(var(--color-shadow-color-rgb), .1);
}
.optsInputWrap input:not(.optsSwitch):focus,
.optsInputWrap .input:focus,
.optsInputWrap textarea:focus,
.optsInputWrap select:focus,
.optsInputWrap .selectWrap.focus .selectOver,
.optsInputWrap .optsCounterWrap.focus .over {
    border-color: var(--color-text);
    background: var(--color-lighter);
    box-shadow: 0 0 5px rgba(var(--color-shadow-color-rgb), .2);
}
.optsInputWrap input:focus-visible,
.optsInputWrap .input:focus-visible,
.optsInputWrap textarea:focus-visible,
.optsInputWrap select:focus-visible,
.optsInputWrap .selectWrap.focus .selectOver,
.optsInputWrap .optsCounterWrap.focus .over,
.optsCheckbox:focus-within .optsInputWrap,
.optsRadio:focus-within .optsInputWrap {
    outline: 2px solid var(--color-primary);
}

.optsInputWrap.optsMultiline input {
    padding-top: 0;
    padding-bottom: 0;
    border-top-width: 0;
    border-bottom-width: 0;
    border-radius: 0;
}
.optsInputWrap.optsMultiline input:first-child {
    padding-top: 9px;
    border-top-right-radius: 25px;
    border-top-left-radius: 25px;
    border-top-width: 1px;
}
.optsInputWrap.optsMultiline input:last-of-type {
    padding-bottom: 9px;
    border-bottom-width: 1px;
    border-bottom-right-radius: 25px;
    border-bottom-left-radius: 25px;
}

.optsCheckbox .optsInputWrap,
.optsRadio .optsInputWrap {
    display: flex;
    flex-wrap: wrap;
    margin: 0;
    border: 1px solid var(--color-hr);
    background: var(--color-background);
    border-radius: calc(10px + .9375em);
    padding: 4px 20px;
    transition: all .3s;;
}
.optsCheckbox .optsInputClean,
.optsRadio .optsInputClean {
    padding: 0;
    border: none;
    background: none;
    box-shadow: none !important;
    outline: none !important;
}
.optsInputWrap .optsInline {
    float: left;
    margin-right: 20px;
    display: flex;
    align-items: center;
}
.optsContainer .optsInline input:not(.optsSwitch) {
    position: absolute;
    opacity: 0;
}
.optsContainer .optsLine {
    float: none;
    margin-right: 0;
    flex-grow: 1;
}
.optsContainer .optsLineFull {
    width: 100%;
}
.optsContainer .optsInline.optsSwitchContainer {
    justify-content: flex-end;
}
.optsInputWrap .optsInline label {
    display: block;
    padding: 10px 0 10px 25px;
    line-height: 20px;
    margin: 0;
    cursor: pointer;
    transition: background .2s;
    position: relative;
    color: var(--color-light);
}
.optsContainer .optsLineFull label {
    width: 100%;
}
.optsContainer .optsLine label .name {
    font-weight: 700;
}
.optsInputWrap .optsInline label:before,
.optsInputWrap .optsInline label:after {
    position: absolute;
    content: '';
    display: block;
    transition: all .2s;
}
.optsInputWrap .optsInline label:before {
    width: 20px;
    height: 20px;
    border: 1px solid var(--color-hr);
    left: 0;
    top: 10px;
}
.optsInputWrap .optsInline input[type="checkbox"] + label:after {
    width: 13px;
    height: 7px;
    left: 3px;
    top: 15px;
    transform: rotate(-45deg);
    border-color: var(--color-background);
    border-left: 3px solid transparent;
    border-bottom: 3px solid transparent;
}
.optsInputWrap .optsInline input[type="radio"] + label:after {
    width: 8px;
    height: 8px;
    left: 6px;
    top: 16px;
    background: transparent;
    border-radius: 4px;
}
.optsInputWrap .optsInline input[type="radio"] + label:before {
    border-radius: 10px;
}
.optsInputWrap .optsInline input:focus-visible + label {
    outline: 2px solid var(--color-primary);
}
.optsInputWrap .optsInline label:hover,
.optsInputWrap .optsInline input:checked + label {
    color: inherit;
    border-color: var(--color-text);
}
.optsInputWrap .optsInline input:checked + label:before {
    background: var(--color-lighter);
    border-color: var(--color-light);
}
.optsInputWrap .optsInline input:checked + label:after {
    border-color: var(--color-primary);
}
.optsInputWrap .optsInline input[type="radio"]:checked + label:after {
    background: var(--color-primary);
}
.optsInputWrap .optsInline + .optsListCheck {
    margin-top: 20px;
}
.optsInputWrap .optsInline + .optsListCheckIndent {
    padding-left: 25px;
    padding-right: 9px;
}
.optsContainer .optsLineFull {
    width: 100%;
}
.optsInputWrap.btnSet {
    padding-top: 0;
    padding-bottom: 0;
}
.optsInputWrap.btnSet .optsInline {
    padding: 0;
    margin: 0;
}
.optsInputWrap.btnSet .optsInline label {
    font-size: 1em;
    padding-top: 9px;
    padding-bottom: 9px;
}
.optsInputWrap.btnSet .btn .icon {
    color: inherit;
}
.optsInputWrap.btnSet .btn.optsChecked .icon {
    color: var(--color-text);
}

.optsContainer .optsCaptchaGraphics {
    width: 100%;
    height: auto;
    display: block;
    margin-top: 10px;
}
.optsContainer .captchaReload {
    display: block;
    margin-top: 5px;
    padding-left: calc(1em + 10px);
    cursor: pointer;
    position: relative;
}
.optsContainer .captchaReload .icon {
    left: 0;
    right: auto;
}

.optsContainer .selectWrap,
.optsInputWrap .optsCounterWrap {
    position: relative;
    padding: 0;
    padding-bottom: 0 !important;
}
.optsContainer .selectOver,
.optsInputWrap .optsCounterWrap .over {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: clip;
}
.optsContainer .selectOver:after {
    position: absolute;
    right: 20px;
    top: 50%;
    margin-top: -3px;
    content: '';
    display: block;
    height: 0;
    width: 0;
    border-style: solid;
    border-width: .429em .357em 0 .357em;
    border-color: var(--color-light) transparent transparent;
    transform-origin: 50% 50%;
    transition: all .2s;
}
.optsContainer .selectWrap:hover .selectOver:after {
    border-top-color: var(--color-text);
}
.optsContainer .selectWrap.focus .selectOver:after {
    transform: rotate(180deg);
    border-top-color: var(--color-text);
}
.optsContainer .selectWrap select,
.optsContainer .optsCounterWrap input,
.optsContainer .optsCounterWrap select {
    width: 100%;
    opacity: 0;
    position: absolute;
    left: 0;
    top: 0;
}
.optsInputWrap .optsCounterWrap .optsCounterUp,
.optsInputWrap .optsCounterWrap .optsCounterDown {
    position: absolute;
    padding: 10px 5px;
    top: 50%;
    margin-top: -.555em;
    margin-top: calc(-.555em - 10px);
    text-align: center;
    background: none;
}
.optsInputWrap .optsCounterWrap .optsCounterUp .icon,
.optsInputWrap .optsCounterWrap .optsCounterDown .icon {
    position: static;
    width: 1.333em;
    height: 1.333em;
    line-height: 1.2;
    font-size: .9375em;
    border: 1px solid var(--color-hr);
    border-radius: .667em;
    display: block;
    margin: 0;
    text-align: center;
    transition: all .3s;
}
.optsInputWrap .optsCounterWrap .optsCounterUp:hover .icon,
.optsInputWrap .optsCounterWrap .optsCounterDown:hover .icon {
    color: var(--color-background);
    border-color: var(--color-text);
    background: var(--color-text);
}
.optsInputWrap .optsCounterWrap .optsCounterUp:disabled,
.optsInputWrap .optsCounterWrap .optsCounterDown:disabled {
    pointer-events: none;
    opacity: .5;
}
.optsInputWrap .optsCounterWrap .optsCounterUp {
    right: calc(24px + 1.333em);
}
.optsInputWrap .optsCounterWrap .optsCounterDown {
    right: 15px;
}
.optsInputWrap .optsCounterWrap .over {
    padding-right: calc(29px + 2.667em);
}
.optsInputWrap .gridWrap {
    margin-bottom: -40px;
}
.optsInputWrap .gridWrap .optsLine {
    padding: 0 30px;
}
.optsContainer .optsNfo {
    padding-top: 10px;
    margin-left: 0;
    clear: both;
}
.optsContainer .optsNfo:first-child {
    padding-top: 0;
}
.optsFieldset > .optsNfo {
    margin: 1em 0;
}
.optsFieldset > legend + .optsNfo {
    margin-top: 0;
}

.optsContainer > .ipShort,
.optsContainer > .ipLong,
.optsContainer > .ipHalf {
    float: left;
}
.optsContainer > .ipShort {
    width: 25%;
}
.optsContainer > .ipHalf {
    width: 47.5%;
    width: calc(50% - 10px);
}
.optsContainer > .ipLong {
    width: 70%;
    width: calc(75% - 20px);
}
.optsContainer > .ipLong + .ipShort,
.optsContainer > .ipShort + .ipLong,
.optsContainer > .ipHalf + .ipHalf  {
    margin-left: 5%;
    margin-left: calc(20px);
}
.optsContainerWrap {
    display: flex;
    margin-left: -10px;
    margin-right: -10px;
    margin-top: 0;
    flex-wrap: wrap;
    align-items: flex-start;
}
.optsFieldset > .optsContainerWrap:first-child,
.optsFieldset > legend:first-child + .optsContainerWrap {
    margin-top: -20px
}

.optsContainerWrap .optsContainer {
    margin-bottom: 0;
    padding-left: 10px;
    padding-right: 10px;
    width: 100%;
    flex-grow: 1;
}
.optsContainerWrap .optsContainer.userInfo {
    margin-bottom: -20px;
}
.optsContainerWrap .optsContainerWidth_25 {
    width: 50%;
}
.optsContainerWrap .ipHalf + .ipHalf {
    margin-top: 2em;
}

.optsInputWrap .icon:not(.avoid) {
    position: absolute;
    top: 50%;
    margin-top: -.5em;
    line-height: 1;
    right: 20px;
    z-index: 1;
    pointer-events: none;
    color: var(--color-light);
}
.optsContainer select:focus + .icon,
.optsContainer .selectWrap.focus + .icon,
.optsContainer textarea:focus + .icon,
.optsContainer input:focus + .icon,
.optsContainer .input:focus + .icon {
    color: var(--color-text);
}
.optsContainer .date input,
.optsContainer .date .input {
    float: none;
    width: 100%;
}

/* Swtiches */
input.optsSwitch {
    float: right;
    flex-shrink: 0;
    width: 2em;
    height: 1em;
    vertical-align: top;
    appearance: none;

    background: var(--color-alert) no-repeat left center;
    background-image:  url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e");
    background-size: contain;

    border: none;
    border-radius: 2em;

    -webkit-print-color-adjust: exact;
    color-adjust: exact;
    print-color-adjust: exact;

    box-shadow: 0 1px 3px rgba(0,0,0,.5) inset;
    font-size: 1.5em;

    transition: background .3s;

    display: block !important;
}
input.optsSwitch:focus-visible {
    outline: 2px solid var(--color-alternative);
}
input:checked.optsSwitch {
    background-color: var(--color-success);
    background-position: right center;
}
input:disabled.optsSwitch  {
    background-color: var(--color-light);
}

/* Schaltflächen */
.btnContainer {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-bottom: 20px;
    align-items: center;
}
.optsContainerWrap + .btnContainer,
.optsContainer + .btnContainer,
.btnContainer + .btnContainer,
.optsContainerGroupWrap + .btnContainer,
.optsFieldset + .btnContainer {
    margin-top: 40px;
}
.btnContainer .btnLess,
.btnContainer .backLink {
    float: left;
    margin: 0;
    flex-grow: 1;
    order: 1;
    margin-top: 20px;
    width: 100%;
}
.btnContainer.hasCancel .cancel {
    text-align: left;
    display: block;
    margin-top: 20px;
}

.optsCompare {
    padding: 9px 9px 29px;
    border-radius: 30px;
    background: var(--color-background);
    border: 1px solid var(--color-hr);
    container-type: inline-size;
    container-name: compareContainer;
    display: flex;
    flex-wrap: wrap;
}
.optsCompare .label {
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: .1em;
    font-size: 14px;
    margin-right: 5px;
}
.optsCompare .optsCompareBlock {
    width: 100%;
    flex-grow: 1;
    padding: 20px 20px 0;
}
.optsCompare .optsCompareRow {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
}
.optsCompare .optsCompareRow .value {
    flex-grow: 1;
}
.optsCompare .price {
    text-transform: uppercase;
    float: right;
    line-height: inherit;
    padding-left: 10px;
}
@media (min-width: 720px) {
    .optsInputWrap input:not(.optsSwitch),
    .optsInputWrap .input,
    .optsInputWrap textarea,
    .optsInputWrap select,
    .optsInputWrap .selectOver,
    .optsInputWrap .optsCounterWrap .over {
        line-height: 1.875;
    }
    .optsInputWrap .input {
        min-height: calc(1.875em + 20px);
    }
    .optsRadio .optsInputWrap > label,
    .optsCheckbox .optsInputWrap > label,
    .optsContainer .optsInputWrap .optsInputLabel,
    .optsInputWrap.dateHasAppendText .ui-datepicker-append,
    .optsInputWrap > label {
        font-size: 1.25rem;
        line-height: 1.5;
    }
}

@container formContainer (min-width: 640px) {
    .optsContainerWrap .optsContainerWidth_75 {
        width: calc(75% - 20px);
    }
    .optsContainerWrap .optsContainerWidth_67 {
        width: calc((100% / 3 * 2) - 20px);
    }
    .optsContainerWrap .optsContainerWidth_50 {
        width: calc(50% - 20px);
    }
    .optsContainerWrap .optsContainerWidth_33 {
        width: calc((100% / 3) - 20px);
    }
    .optsContainerWrap .optsContainerWidth_25 {
        width: calc(25% - 20px);
    }

    .optsCaptcha .optsBlock {
        display: flex;
        margin-left: -10px;
        margin-right: -10px;
    }
    .optsCaptcha .optsInputWrap {
        width: 50%;
        margin: 0;
        padding-left: 10px;
        padding-right: 10px;
    }
    .optsContainer .optsCaptchaGraphics {
        margin-top: 0;
    }

    /* Schaltflächen */
    .btnContainer button[type="submit"] {
        width: auto;
        float: right;
    }
    .btnContainer .btnLess,
    .btnContainer .backLink {
        flex-grow: 1;
        order: 0;
        margin-top: 0;
        width: auto;
    }
}

@container compareContainer (min-width: 640px) {
    .optsCompare .optsCompareBlock {
        width: 50%;
        flex-grow: 1;
    }
}

.optsFileUpload > *:not(.fade) {
	margin-top: 10px;
}
.fileupload-controlWrap {
	background: var(--color-background);
	color: inherit;
	border: 1px solid var(--color-hr);
	border-radius: calc(10px + .9375em);
	padding: 9px;
}
.fileupload-controlWrap:focus-within {
	border-color: var(--color-text);
	background: var(--color-lighter);
	box-shadow: 0 0 5px rgba(var(--color-shadow-color-rgb), .2);
}
.fileupload-control {
	position: relative;
	margin: 10px;
}
.fileupload-progress.fade {
	margin-top: 0;
	margin-bottom: 0;
}
.fileupload-controlWrap .btnWrap {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-content: stretch;
	align-items: stretch;
	margin-right: -1em;
	margin-bottom: -1em;
}
.fileupload-progress {
	margin: 10px;
}
.fileupload-control .btn-warning {
	background: none;
	color: #fff;
	cursor: default;
	position: absolute;
	right: 15px;
	top: 15px;
	line-height: 1.875em;
	padding: 5px;
	width: 40px;
	text-align: center;
}
.fileupload-control .btn-warning.cancel {
	display: none;
}
.fileupload-control strong {
	padding:0 20px;
}
.fileupload-control .btn-warning span {
	display: none;
}
.fileupload-control .btn-warning:before {
	content:'\e801';
	font-family: 'fontello';
	margin: 0;
}
.fileinput-button {
	position: relative;
	overflow: hidden;
	width: 100%;
	position: relative;
	padding: 10px;
	border: 2px dashed var(--color-hr);
	text-align:  center;
	border-radius: calc(.9375em);
}
.fileinput-button input {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	margin: 0;
	opacity: 0;
	width: 100% !important;
	left: 0;
	direction: ltr;
	cursor: pointer;
}
.fileupload-buttonbar .btn,
.fileupload-buttonbar .toggle {
	margin-bottom: 5px;
}
.progress {
	background-color: var(--color-light);
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1) inset;
	height: 20px;
	overflow: hidden;
}
.progress .progress-bar {
	box-shadow: 0 -1px 0 rgba(0, 0, 0, 0.15) inset;
	color: var(--color-background);
	float: left;
	height: 100%;
	line-height: 20px;
	text-align: center;
	transition: width 0.6s ease 0s;
	width: 0;
	background: url("../img/jQuery-File-Upload/progressbar.gif") repeat-x 0% 50% !important;
	filter: none;
}
.fileupload-process {
	opacity: 1;
}
.fileupload-processing .fileupload-process,
.files .processing .preview {
	display: block;
	width: 32px;
	height: 32px;
	background: url("../img/jQuery-File-Upload/loading.gif") center no-repeat;
	background-size: contain;
}
.fade {
	opacity: 0;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	border-width: 0 !important;
	max-height: 0;
	transition: border .2s, padding .2s, opacity .2s, opacity .2s, max-height cubic-bezier(0,1,0,1) .2s;
}

.fileupload-queue {
	background: var(--color-background);
	color: inherit;
	border: 1px solid var(--color-hr);
	padding: 9px;
	border-radius: calc(10px + .9375em);
	position: relative;
	display: flex;
	flex-wrap: wrap;
}
.fileupload-queue .legend {
	font-size: 1em;
	display: block;
	font-weight: bold;
	margin: 0 10px;
	width: calc(100% - 20px);
	flex-grow: 1;
}
.fileupload-container {
	border: solid 1px var(--color-hr);
	background-color: var(--color-lighter);
	width: calc(50% - 20px);
	padding: 10px;
	margin: 10px;
	float: left;
	position: relative;
}
.fileupload-container .progress {
	position: absolute;
	left: 10px;
	bottom: 4px;
	right: 10px;
	height: 2px;
	opacity: 0;
	border-radius: 0;
	box-shadow: none;
	transition: opacity 0.15s linear 0s;
}
.fileupload-container .progress .progress-bar {
	box-shadow: none;
}
.fileupload-container.fileupload-in-progress .progress {
	opacity: 1;
}
.fileupload-container .fileName {
	font-weight: bold;
	margin-bottom: .5em;
	display: block;
	overflow: hidden;
	text-overflow: ellipsis;
	word-break: break-word;
	-webkit-hyphens: auto;
	-moz-hyphens: auto;
	-ms-hyphens: auto;
	hyphens: auto;
}
.fileupload-container .btn {
	padding-top: .25em;
	padding-bottom: .25em;
}
.fileupload-container:nth-child(2n+2) {
	clear: left;
}
.fileupload-in-progress {
	border-color: var(--color-success);
	background-color: var(--color-lighter);
	color: var(--color-text);
}
.fileupload-success {
	border-color: var(--color-primary);
	background-color: var(--color-primary);
	color: var(--color-text-on-primary);
}
.fileupload-failed {
	border-color: var(--color-alert);
	background-color: var(--color-background);
}
.fileupload-container .fileupload-preview {
	float: left;
	margin-right: 2%;
}
.fileupload-container .fileupload-preview .preview {
	display: block;
	width: 75px;
	height: 75px;
	background: url("../img/jQuery-File-Upload/loading.gif") no-repeat 50% 50%;
	background-size: contain;
}
.fileupload-uploaded-container {
	background: var(--color-background);
	color: inherit;
	border: 1px solid var(--color-hr);
	padding: 9px;
	border-radius: calc(10px + .9375em);
}
.fileupload-uploaded-container .legend {
	font-size: 1em;
	display: block;
	font-weight: bold;
	margin: 0 10px 10px;
}
.fileupload-uploaded {
	padding: 0;
	list-style: none;
	margin: 0;
}
.fileupload-uploaded li {
	position: relative;
	margin: 10px;
	padding: 5px 0;
}
.fileupload-uploaded li strong {
	font-weight: 400;
}
.fileupload-uploaded li button {
	padding:0;
	min-width: 40px;
	background: var(--color-primary);
	border: 1px solid var(--color-primary);
	position: absolute;
	right: 0;
	top: 0;
	height: 100%;
	border-radius: 50%;
}
.fileupload-uploaded li button .icon {
	color: var(--color-text-on-primary);
}

/* Content: LISTS */
.list .listItem + .listItem {
	margin-top: 40px;
}
.list .articleWrap > :first-child {
	margin-top: 0;
}
.list .articleImgNone + .articleWrap > :first-child {
	margin-top: .5em;
}
.list .articleWrap .headline {
	margin: 0;
	color: inherit;
}
.list .articleWrap .headline a {
	text-decoration: none;
	color: inherit;
}
.list .articleWrap .attrList {
	margin: 0;
}

.list .articleImgNone,
.list .articleImgLeft,
.list .articleImgRight {
	float: none;
	margin: 0 auto;
}
.list .articleImg .img img {
	border-radius: 20px;
}
.list .articleImgLeft.imgWidth-25,
.list .articleImgRight.imgWidth-25 {
	width: 33.3%;
}

.list .articleImgLeft.imgWidth-5,
.list .articleImgLeft.imgWidth-10,
.list .articleImgLeft.imgWidth-13,
.list .articleImgLeft.imgWidth-15,
.list .articleImgLeft.imgWidth-17,
.list .articleImgLeft.imgWidth-20,
.list .articleImgLeft.imgWidth-25 {
	float:left;
}
.list .articleImgLeft.imgWidth-5 + .articleWrap,
.list .articleImgLeft.imgWidth-10 + .articleWrap,
.list .articleImgLeft.imgWidth-13 + .articleWrap {
	padding-left: 1em;
	margin-left: 15%;
}
.list .articleImgLeft.imgWidth-15 + .articleWrap,
.list .articleImgLeft.imgWidth-17 + .articleWrap,
.list .articleImgLeft.imgWidth-20 + .articleWrap {
	padding-left: 1em;
	margin-left: 25%;
}
.list .articleImgLeft.imgWidth-25 + .articleWrap {
	padding-left: 1em;
	margin-left: 33.3%;
}

.list .articleImgRight.imgWidth-5,
.list .articleImgRight.imgWidth-10,
.list .articleImgRight.imgWidth-13,
.list .articleImgRight.imgWidth-17,
.list .articleImgRight.imgWidth-20,
.list .articleImgRight.imgWidth-25 {
	float: right;
}
.list .articleImgRight.imgWidth-5 + .articleWrap,
.list .articleImgRight.imgWidth-10 + .articleWrap,
.list .articleImgRight.imgWidth-13 + .articleWrap{
	padding-right: 1em;
	margin-right: 15%;
}
.list .articleImgRight.imgWidth-15 + .articleWrap,
.list .articleImgRight.imgWidth-17 + .articleWrap,
.list .articleImgRight.imgWidth-20 + .articleWrap {
	padding-right: 1em;
	margin-right: 25%;
}
.list .articleImgRight.imgWidth-25 + .articleWrap {
	padding-right: 1em;
	margin-right: 33.3%;
}
.list hr {
	margin: 39px 0 40px;
}

@media (min-width: 480px) {
	.list .articleImgLeft.imgWidth-33 {
		float:left;
	}
	.list .articleImgLeft.imgWidth-5 + .articleWrap,
	.list .articleImgLeft.imgWidth-10 + .articleWrap {
		margin-left: 15%;
	}
	.list .articleImgLeft.imgWidth-13 + .articleWrap {
		margin-left: 20%;
	}
	.list .articleImgLeft.imgWidth-15 + .articleWrap,
	.list .articleImgLeft.imgWidth-17 + .articleWrap,
	.list .articleImgLeft.imgWidth-20 + .articleWrap {
		margin-left: 33.3%;
	}
	.list .articleImgLeft.imgWidth-33 + .articleWrap {
		padding-left: 1em;
		margin-left: 50%;
	}

	.list .articleImgRight.imgWidth-33 {
		float: right;
	}
	.list .articleImgRight.imgWidth-5 + .articleWrap,
	.list .articleImgRight.imgWidth-10 + .articleWrap {
		margin-right: 15%;
	}
	.list .articleImgRight.imgWidth-13 + .articleWrap {
		margin-right: 20%;
	}
	.list .articleImgRight.imgWidth-15 + .articleWrap,
	.list .articleImgRight.imgWidth-17 + .articleWrap,
	.list .articleImgRight.imgWidth-20 + .articleWrap {
		margin-right: 33.3%;
	}
	.list .articleImgRight.imgWidth-33 + .articleWrap {
		padding-right: 1em;
		margin-right: 50%;
	}
}

@media (min-width: 640px) {
	.list .articleImgLeft.imgWidth-42,
	.list .articleImgLeft.imgWidth-50 {
		float:left;
	}
	.list .articleImgLeft.imgWidth-17 + .articleWrap,
	.list .articleImgLeft.imgWidth-20 + .articleWrap {
		margin-left: 25%;
	}
	.list .articleImgLeft.imgWidth-25 + .articleWrap {
		margin-left: 33.3%;
	}
	.list .articleImgLeft.imgWidth-42 + .articleWrap,
	.list .articleImgLeft.imgWidth-50 + .articleWrap {
		padding-left: 1em;
		margin-left: 50%;
	}

	.list .articleImgRight.imgWidth-42,
	.list .articleImgRight.imgWidth-50 {
		float: right;
	}
	.list .articleImgRight.imgWidth-17 + .articleWrap,
	.list .articleImgRight.imgWidth-20 + .articleWrap {
		margin-right: 25%;
	}
	.list .articleImgRight.imgWidth-25 + .articleWrap {
		margin-right: 33.3%;
	}
	.list .articleImgRight.imgWidth-42 + .articleWrap,
	.list .articleImgRight.imgWidth-50 + .articleWrap {
		padding-right: 1em;
		margin-right: 50%;
	}
}

@media (min-width: 720px) {
	.list .articleImgLeft.imgWidth-67 {
		float:left;
	}
	.list .articleImgLeft.imgWidth-5 + .articleWrap,
	.list .articleImgLeft.imgWidth-10 + .articleWrap,
	.list .articleImgLeft.imgWidth-13 + .articleWrap {
		margin-left: 15%;
	}
	.list .articleImgLeft.imgWidth-15 + .articleWrap,
	.list .articleImgLeft.imgWidth-17 + .articleWrap,
	.list .articleImgLeft.imgWidth-20 + .articleWrap {
		margin-left: 20%;
	}
	.list .articleImgLeft.imgWidth-25 + .articleWrap,
	.list .articleImgLeft.imgWidth-33 + .articleWrap {
		margin-left: 33.3%;
	}
	.list .articleImgLeft.imgWidth-67 + .articleWrap {
		padding-left: 1em;
		margin-left: 50%;
	}

	.list .articleImgRight.imgWidth-67 {
		float: right;
	}
	.list .articleImgRight.imgWidth-5 + .articleWrap,
	.list .articleImgRight.imgWidth-10 + .articleWrap,
	.list .articleImgRight.imgWidth-13 + .articleWrap {
		margin-right: 15%;
	}
	.list .articleImgRight.imgWidth-15 + .articleWrap,
	.list .articleImgRight.imgWidth-17 + .articleWrap,
	.list .articleImgRight.imgWidth-20 + .articleWrap {
		margin-right: 20%;
	}
	.list .articleImgRight.imgWidth-25 + .articleWrap,
	.list .articleImgRight.imgWidth-33 + .articleWrap {
		margin-right: 33.3%;
	}
	.list .articleImgRight.imgWidth-67 + .articleWrap {
		padding-right: 1em;
		margin-right: 50%;
	}
}

@media (min-width: 960px) {
	.list .articleImgLeft.imgWidth-25,
	.list .articleImgRight.imgWidth-25 {
		width: 25%;
	}

	.list .articleImgLeft.imgWidth-75 {
		float:left;
	}
	.list .articleImgLeft.imgWidth-5 + .articleWrap {
		margin-left: 5%;
	}
	.list .articleImgLeft.imgWidth-10 + .articleWrap {
		margin-left: 10%;
	}
	.list .articleImgLeft.imgWidth-13 + .articleWrap {
		margin-left: 12.5%;
	}
	.list .articleImgLeft.imgWidth-15 + .articleWrap {
		margin-left: 15%;
	}
	.list .articleImgLeft.imgWidth-17 + .articleWrap {
		margin-left: 16.7%;
	}
	.list .articleImgLeft.imgWidth-20 + .articleWrap {
		margin-left: 20%;
	}
	.list .articleImgLeft.imgWidth-25 + .articleWrap {
		margin-left: 25%;
	}
	.list .articleImgLeft.imgWidth-33 + .articleWrap {
		margin-left: 33.3%;
	}
	.list .articleImgLeft.imgWidth-42 + .articleWrap {
		margin-left: 41.7%;
	}
	.list .articleImgLeft.imgWidth-50 + .articleWrap {
		margin-left: 50%;
	}
	.list .articleImgLeft.imgWidth-67 + .articleWrap {
		margin-left: 66.7%;
	}
	.list .articleImgLeft.imgWidth-75 + .articleWrap {
		padding-left: 1em;
		margin-left: 75%;
	}

	.list .articleImgRight.imgWidth-75 {
		float: right;
	}
	.list .articleImgRight.imgWidth-5 + .articleWrap {
		margin-right: 5%;
	}
	.list .articleImgRight.imgWidth-10 + .articleWrap {
		margin-right: 10%;
	}
	.list .articleImgRight.imgWidth-13 + .articleWrap {
		margin-right: 12.5%;
	}
	.list .articleImgRight.imgWidth-15 + .articleWrap {
		margin-right: 15%;
	}
	.list .articleImgRight.imgWidth-17 + .articleWrap {
		margin-right: 17%;
	}
	.list .articleImgRight.imgWidth-20 + .articleWrap {
		margin-right: 20%;
	}
	.list .articleImgRight.imgWidth-25 + .articleWrap {
		margin-right: 25%;
	}
	.list .articleImgRight.imgWidth-33 + .articleWrap {
		margin-right: 33.3%;
	}
	.list .articleImgRight.imgWidth-42 + .articleWrap {
		margin-right: 41.7%;
	}
	.list .articleImgRight.imgWidth-50 + .articleWrap {
		margin-right: 50%;
	}
	.list .articleImgRight.imgWidth-67 + .articleWrap {
		margin-right: 66.7%;
	}
	.list .articleImgRight.imgWidth-75 + .articleWrap {
		padding-right: 1em;
		margin-right: 75%;
	}
}

/* Content: GRIDS */
.gridWrap {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	margin: 20px -20px -40px;
	container-name: gridContainer;
	container-type: inline-size;
}
#content > .gridWrap:last-child {
	margin-bottom: 0;
}
.articleWrap + .gridWrap {
	margin-top: 80px;
}
.gridWrap .gridSizer {
	width: 8.33%;
}
.articleGrid {
	padding: 0 20px 40px 20px;
	flex: 0 1 auto;
	position: relative;
}
.gridWrap .articleGrid.articleCentered {
	text-align: center;
}
.vcContentSection .col .gridWrap:last-child {
	margin-bottom: -20px;
}
.gridWrap .leftContainer,
.gridWrap .rightContainer {
	width: 100%;
}
.gridWrap .rightContainer {
	float: right;
}

.articleGrid {
	position: relative;
	z-index: 1;
	width: 100%;
	height: auto;
}
.articleGrid .gridWrapInner {
	border-radius: 30px;
	height: 100%;
	display: block;
	overflow: hidden;
	position: relative;
	background: var(--color-lighter);
	color: inherit;
	text-decoration: none;
	transition: all .3s;
	font-size: 1.25rem;
	line-height: 1.5;
}
.articleGrid.gridWidth_25 .gridWrapInner {
	font-size: 1rem;
	line-height: 1.667;
}
.articleGrid.gridWidth_25 .gridWrapInner .info > * {
	margin: 0;
}
.articleGrid .gridWrapInner:hover {
	transform: translateY(-5px);
	box-shadow: 0 5px 15px rgba(var(--color-shadow-color-rgb), .1);
}
.articleGrid .gridWrapInner .info {
	padding: 15px 20px 20px;
}
.articleGrid .gridWrap:last-child {
	margin-bottom: -20px;
}

.articleGrid .attrList + .headline {
	margin-top: -10px;
}
.articleGrid .headline {
	font-size: 1em;
	font-weight: 700;
}
.articleGrid .headline a {
	text-decoration: none;
	display: block;
}
.articleGrid .articleImg,
.articleGrid .articleTeaser {
	position: relative;
	overflow: hidden;
}

.articleGrid .imgWrap {
	background-size: cover;
	background-position: 50% 50%;
	background-repeat: no-repeat;
	display: block;
	position: relative;
}
.articleGrid .btnMore {
	margin-top: 10px;
}
.gridWrap.textOnImage .articleGrid .textWrap {
	display: flex;
	align-items: flex-start;
	position: absolute;
	bottom: 20px;
	left: 20px;
	right: 20px;
	max-height: calc(100% - 40px);
	z-index: 1;
	border-radius: 20px;
	background: var(--color-lighter);
	overflow: hidden;
}
.gridWrap.textOnImage .articleGrid .textWrap .info {
	flex-grow: 1;
}

.gridWrap.textOnImage .articleGrid .textWrap .headline {
	margin: 0;
	hyphens: auto;
}
.gridWrap.textOnImage .articleGrid .textWrap .headline + p {
	margin-top: 0;
}

.gridOpen .articleGrid .gridWrapInner {
	background: none;
	border-radius: 0;
}
.gridOpen .articleGrid .gridWrapInner:hover {
	transform: translateY(-5px);
	box-shadow: none;
}
.gridOpen .articleGrid .gridWrapInner .info {
	text-align: center;
	padding: 0;
}

.articleGrid .articleImgNone {
	margin: 0 auto;
}
.gridWrap.textUnderImage .articleGrid .articleImgNone:not(:last-child) {
	mask: url("../img/mask_rounded_bottom.svg") 50% 100% / cover no-repeat;
}
.articleGrid .articleImgNone .video-time {
	z-index: 2;
}
.articleGrid .headline + .articleImgNone {
	margin-top: 10px;
}
.articleGrid .articleImg .imgWrap,
.articleGrid .articleTeaser .imgWrap {
	transition: transform .3s;
}
.articleGrid .imgWidth-100 {
	width: 100%;
}
.articleGrid .imgWidth-75 {
	width: 75%;
}
.articleGrid .imgWidth-67 {
	width: 66.7%;
}
.articleGrid .imgWidth-50 {
	width: 50%;
}
.articleGrid .imgWidth-42 {
	width: 41.7%;
}
.articleGrid .imgWidth-33 {
	width: 33.3%;
}
.articleGrid .imgWidth-25 {
	width: 25%;
}
.articleGrid .imgWidth-20 {
	width: 20%;
}
.articleGrid .imgWidth-17 {
	width: 16.7%;
}
.articleGrid .imgWidth-15 {
	width: 15%;
}
.articleGrid .imgWidth-13 {
	width: 12.5%;
}
.articleGrid .imgWidth-10 {
	width: 10%;
}
.articleGrid .imgWidth-5 {
	width: 5%;
}
.articleGrid .imgWidth-75.articleImgLeft,
.articleGrid .imgWidth-67.articleImgLeft,
.articleGrid .imgWidth-50.articleImgLeft,
.articleGrid .imgWidth-42.articleImgLeft,
.articleGrid .imgWidth-33.articleImgLeft,
.articleGrid .imgWidth-25.articleImgLeft,
.articleGrid .imgWidth-20.articleImgLeft,
.articleGrid .imgWidth-17.articleImgLeft,
.articleGrid .imgWidth-15.articleImgLeft,
.articleGrid .imgWidth-13.articleImgLeft,
.articleGrid .imgWidth-10.articleImgLeft,
.articleGrid .imgWidth-5.articleImgLeft {
	float: left;
	padding-right: 1em;
	margin-bottom: 1em;
}
.articleGrid .imgWidth-75.articleImgRight,
.articleGrid .imgWidth-67.articleImgRight,
.articleGrid .imgWidth-50.articleImgRight,
.articleGrid .imgWidth-42.articleImgRight,
.articleGrid .imgWidth-33.articleImgRight,
.articleGrid .imgWidth-25.articleImgRight,
.articleGrid .imgWidth-20.articleImgRight,
.articleGrid .imgWidth-17.articleImgRight,
.articleGrid .imgWidth-15.articleImgRight,
.articleGrid .imgWidth-13.articleImgRight,
.articleGrid .imgWidth-10.articleImgRight,
.articleGrid .imgWidth-5.articleImgRight {
	float:right;
	padding-left: 1em;
	margin-bottom: 1em;
}

/* SwiperJS */
.bookContentsSlideWrapper {
	position: relative;
	--swiper-theme-color: var(--color-text);
}
.bookContentsSlider  {
	margin-left: -20px;
	margin-right: -20px;
	container-name: gridContainer;
	container-type: inline-size;
	position: relative;
	mask-image: linear-gradient(to left, rgba(0,0,0,0) 10px, rgba(0,0,0,1) 80px);
}
.bookContentsSlider.swiper-pagination-disabled {
	mask-image: none;
}
.bookContentsSlider .articleGrid {
	flex-shrink: 0;
	padding-bottom: 40px;
	height: auto;
	width: calc(100% - 60px);
}
.bookContentsSlider .articleGrid:last-child {
	margin-right: 60px;
}
.bookContentsSlider.swiper-pagination-disabled .articleGrid {
	width: 100%;
	margin-right: 0;
}
.bookContentsSlideWrapper .swiper-control {
	position: static;
	justify-content: center;
	margin-top: -20px;
}
.bookContentsSlideWrapper .swiper-button-prev,
.bookContentsSlideWrapper .swiper-button-next {
	background: var(--color-text);
	color: var(--color-background);
	border-radius: 50%;
	width: 40px;
	height: 40px;
	top: calc(50% - 45px);
	transform: translateY(-50%);
	position: absolute;
	right: 0;
}
.bookContentsSlideWrapper .swiper-button-prev {
	top: calc(50% + 5px);
}
.bookContentsSlideWrapper .swiper-button-prev.swiper-button-disabled,
.bookContentsSlideWrapper .swiper-button-next.swiper-button-disabled {
	opacity: 0;
}
#content > .bookContentsSlideWrapper:first-child {
	margin-top: 80px;
}


/* MASON Grids */
.masonryWrap {
	display: block;
	margin: 70px -10px;
}
.masonryWrap .gridSizer {
	width: calc(100% / 12);
}
.masonryWrap .articleGrid {
	height: auto;
	overflow: hidden;
}

.masonryWrap .wrap {
	overflow: hidden;
	display: block;
	position: absolute;
	left: 10px;
	right: 10px;
	top: 10px;
	bottom: 10px;
	transition: transform .3s, box-shadow .3s;
	border-radius: 10px;
}

.masonryWrap .gridWidth_2x2 {
	width: 50%;
	padding-bottom: 50%;
}
.masonryWrap .gridWidth_2x4 {
	width: 50%;
	padding-bottom: 100%;
}
.masonryWrap .gridWidth_4x2,
.masonryWrap .gridWidth_8x4,
.masonryWrap .gridWidth_12x6 {
	width: 100%;
	padding-bottom: 50%;
}
.masonryWrap .gridWidth_4x4,
.masonryWrap .gridWidth_6x6 {
	width: 100%;
	padding-bottom: 100%;
}
.masonryGridItem .wrap .info {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	padding: 40px 10px 10px;
	color: #fff;
	text-shadow: 2px 2px 5px rgba(0,0,0,.6);
	z-index: 3;
	transition: transform .3s;
	font-weight: bold;
}
.masonryGridItem .wrap .info:after {
	content: '';
	display: block;
	position: absolute;
	z-index: -1;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,.5) 60px);
}
.masonryGridItem .wrap .info .headline {
	color: #fff;
}
.masonryGridItem .wrap .info .headline a {
	color: #fff;
}
.masonryGridItem .wrap .info .headline,
.masonryGridItem .wrap .info p {
	margin: 0;
}
.masonryGridItem .wrap .info > :first-child {
	margin-top: 0;
}
.masonryGridItem .wrap .info > :last-child {
	margin-bottom: 0;
}
.masonryGridItem .articleTeaser {
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	margin: 0;
	background: #f4f4f4;
}
.masonryGridItem .articleTeaser .imgWrap {
	padding-bottom: 0 !important;
	height: 100%;
}
.masonryGridItem .flag {
	left: 20px;
	top: 20px;
	position: absolute;
	background: #fff;
	color: #000;
	font-size: .667em;
	line-height: 1;
	display: inline-block;
	padding: 5px;
	z-index: 3;
	transition: transform .3s;
}
.masonryGridItem:hover .wrap {
	transform: translateY(-5px);
	box-shadow: 0 5px 15px rgba(0,0,0,0.15);
}
.masonryGridItem:hover .articleTeaser.vidWrap {
	z-index: 3;
}
.masonryGridItem.noZoomEffect:hover .articleTeaser {
	transform: none;
	box-shadow: none;
}

@container gridContainer (min-width: 480px) {
	.gridWrap .gridWidth_25,
	.bookContentsSlider .swiper-container.swiper-pagination-disabled .articleGrid.gridWidth_25 {
		width: 50%;
	}
	.bookContentsSlider .gridWidth_25 {
		width: calc(50% - 30px);
	}
}
@container gridContainer (max-width: 639px) {
	.masonryWrap .gridWidth_2x2-xs {
		width: 50%;
		padding-bottom: 50%;
	}
	.masonryWrap .gridWidth_2x4-xs {
		width: 50%;
		padding-bottom: 100%;
	}
	.masonryWrap .gridWidth_4x2-xs {
		width: 100%;
		padding-bottom: 50%;
	}
	.masonryWrap .gridWidth_4x4-xs {
		width: 100%;
		padding-bottom: 100%;
	}
}

@container gridContainer (min-width: 640px) {
	.bookContentsSlider .swiper-container.swiper-pagination-disabled .articleGrid.gridWidth_50,
	.bookContentsSlider .swiper-container.swiper-pagination-disabled .articleGrid.gridWidth_33,
	.gridWrap .gridWidth_50,
	.gridWrap .gridWidth_33,
	.gridWrap .leftContainer,
	.gridWrap .rightContainer {
		width: 50%;
	}
	.bookContentsSlider .gridWidth_50,
	.bookContentsSlider .gridWidth_33 {
		width: calc(50% - 30px);
	}

	/* MASON Grids */
	.masonryWrap .gridWidth_2x2 {
		width: 25%;
		padding-bottom: 25%;
	}
	.masonryWrap .gridWidth_4x4 {
		width: 50%;
		padding-bottom: 50%;
	}
	.masonryWrap .gridWidth_6x6 {
		width: 75%;
		padding-bottom: 75%;
	}
	.masonryWrap .gridWidth_2x4 {
		width: 25%;
		padding-bottom: 50%;
	}
	.masonryWrap .gridWidth_4x2 {
		width: 50%;
		padding-bottom: 25%;
	}
	.masonryWrap .gridWidth_8x4,
	.masonryWrap .gridWidth_12x6 {
		width: 100%;
		padding-bottom: 50%;
	}
}

@container gridContainer (min-width: 640px) and (max-width: 959px) {
	/* MASON Grids */
	.masonryWrap .gridWidth_2x2-sm {
		width: 25%;
		padding-bottom: 25%;
	}
	.masonryWrap .gridWidth_4x4-sm {
		width: 50%;
		padding-bottom: 50%;
	}
	.masonryWrap .gridWidth_6x6-sm {
		width: 75%;
		padding-bottom: 75%;
	}
	.masonryWrap .gridWidth_2x4-sm {
		width: 25%;
		padding-bottom: 50%;
	}
	.masonryWrap .gridWidth_4x2-sm {
		width: 50%;
		padding-bottom: 25%;
	}
	.masonryWrap .gridWidth_8x4-sm {
		width: 100%;
		padding-bottom: 50%;
	}
}
@container gridContainer (min-width: 960px) {
	.gridWrap .gridWidth_33 {
		width: calc(100% / 3);
	}
	.gridWrap .gridWidth_25 {
		width: 25%;
	}
	.bookContentsSlider .gridWidth_50 {
		width: calc(50% - 30px);
	}
	.bookContentsSlider .gridWidth_33 {
		width: calc((100% / 3) - 20px);
	}
	.bookContentsSlider .gridWidth_25 {
		width: calc(25% - 15px);
	}

	/* MASON Grids */
	.article + .clear + .masonryWrap {
		margin-top: 20px;
	}
	.masonryGridItem .wrap .info {
		padding: 60px 20px 15px;
	}
	.masonryGridItem .flag {
		left: 40px;
		top: 40px;
	}
	.masonryWrap .gridWidth_2x2 {
		width: calc(100% / 6);
		padding-bottom: calc(100% / 6);
	}
	.masonryWrap .gridWidth_4x4 {
		width: calc(100% / 3);
		padding-bottom: calc(100% / 3);
	}
	.masonryWrap .gridWidth_6x6 {
		width: 50%;
		padding-bottom: 50%;
	}
	.masonryWrap .gridWidth_2x4 {
		width: calc(100% / 6);
		padding-bottom: calc(100% / 3);
	}
	.masonryWrap .gridWidth_4x2 {
		width: calc(100% / 3);
		padding-bottom: calc(100% / 6);
	}
	.masonryWrap .gridWidth_8x4 {
		width: calc(100% / 3 * 2);
		padding-bottom: calc(100% / 3);
	}
	.masonryWrap .gridWidth_12x6 {
		width: 100%;
		padding-bottom: 50%;
	}

	.masonryWrap .gridWidth_2x2-md {
		width: calc(100% / 6);
		padding-bottom: calc(100% / 6);
	}
	.masonryWrap .gridWidth_4x4-md {
		width: calc(100% / 6);
		padding-bottom: calc(100% / 3);
	}
	.masonryWrap .gridWidth_6x6-md {
		width: 50%;
		padding-bottom: 50%;
	}
	.masonryWrap .gridWidth_2x4-md {
		width: calc(100% / 6);
		padding-bottom: calc(100% / 3);
	}
	.masonryWrap .gridWidth_4x2-md {
		width: calc(100% / 3);
		padding-bottom: calc(100% / 6);
	}
	.masonryWrap .gridWidth_8x4-md {
		width: calc(100% / 3 * 2);
		padding-bottom: calc(100% / 3);
	}
	.masonryWrap .gridWidth_12x6-md {
		width: 100%;
		padding-bottom: 50%;
	}
}
@media (min-width: 1280px) {
	#content > .bookContentsSlideWrapper .bookContentsSlider {
		margin-right: -60px;
		margin-left: -60px;
		padding: 0 40px;
		mask-image: linear-gradient(to right, rgba(0,0,0,0) 0, rgba(0,0,0,1) 60px, rgba(0,0,0,1) calc(100% - 60px), rgba(0,0,0,0) 100%);
	}
	#content > .bookContentsSlideWrapper .bookContentsSlider .gridWidth_50 {
		width: 50%;
	}
	#content > .bookContentsSlideWrapper .bookContentsSlider .gridWidth_33 {
		width: calc(100% / 3);
	}
	#content > .bookContentsSlideWrapper .bookContentsSlider .gridWidth_25 {
		width: 25%;
	}
	#content > .bookContentsSlideWrapper .bookContentsSlider .articleGrid:last-child {
		margin-right: 0;
	}
	#content > .bookContentsSlideWrapper .swiper-button-prev {
		right: auto;
		left: -60px;
		top: calc(50% - 20px);
	}
	#content > .bookContentsSlideWrapper .swiper-button-next {
		right: -60px;
		top: calc(50% - 20px);
	}

}


/* Site: PAGE JUMPS */
.pageJumperFooterWrap {
	border-top: 1px solid var(--color-hr);
	padding-top: 1em;
	margin: 1em 0;
}

.jumper {
    margin: 1em -5px;
    position: relative;
}
.pagerJumper .divider {
    display: none;
}
.jumper .resultStats {
    text-align: center;
    padding: 0 0 5px;
}

.jumper .pagerJumper {
    display: block;
    margin: 0 auto;
    display: flex;
    justify-content: center;
}
.pagerJumper a,
.pagerJumper .spacer {
    padding: 8px 0;
    margin:0 5px;
    display:block;
    float:left;
    width: 40px;
    height: 40px;
	border-radius: 20px;
    border: 1px solid var(--color-lighter);
    background: var(--color-lighter);
    font-weight: bold;
    font-size: .75em;
    color: inherit;
    line-height: 20px;
    text-align:center;
    text-decoration: none;
    transition: all .3s;
}
.pagerJumper .spacer {
    background: none;
    border: none;
}
.pagerJumper a.aktiv {
    background: var(--color-primary);
    border-color: var(--color-primary);
    color: var(--color-text-on-primary);
    font-weight: bold;
}
.pagerJumper a:hover {
    background: var(--color-text);
    border-color: var(--color-text);
    color: var(--color-background);
}

.pages {
	text-align:center;
	color: var(--color-light);
}
.pages > * {
	display: inline-block;
	height: 20px;
	line-height: 20px;
	overflow: hidden;
}
.pages a {
	font-weight: normal;
	padding: 0 10px;
	position: relative;
	color: var(--color-light);
	text-decoration: none;
	max-width: 35%;
	overflow: hidden;
}
.pages a.lastPage {
	padding-left: calc(1em + 5px);
}
.pages a.nextPage {
	padding-right: calc(1em + 5px);
}
.pages a .icon {
	position: absolute;
	top: 50%;
	font-size: .75em;
	transform: translateY(-50%);
}
.pages a.lastPage .icon {
	left: 0;
}
.pages a.nextPage .icon {
	right: 0;
}
.pages a span:not(.icon) {
	text-overflow: ellipsis;
	overflow: hidden;
	white-space: nowrap;
	width: 100%;
	display: inline-block;
}
.pages a.disabled {
	color: var(--color-light);
	text-decoration: none;
}

@media (max-width: 479px) {
    .pageJumperFooterWrap {
        display: none;
    }
}
@media (min-width: 640px) {
    .jumper .resultStats {
        line-height: 40px;
        float: left;
        padding: 0 0 0 5px;
    }
    .jumper .pagerJumper  {
        float: right;
    }
}

/* Captcha */
.optsCaptcha .captchaImgWrap,
.optsFieldCaptcha .captchaImgWrap {
    margin-top: 10px;
}
.optsCaptcha .optsCaptchaGraphics,
.optsFieldCaptcha .optsCaptchaGraphics {
    width: 100%;
    height: auto;
    display: block;
}
.optsCaptcha .captchaReload,
.optsFieldCaptcha .captchaReload {
    display: block;
    margin-top: 5px;
    cursor: pointer;
}
.optsContainer.optsCompact:not(.optsCaptcha) input[placeholder]::placeholder {
    color: transparent;
}
.optsContainer.optsCompact.optsCaptcha input[placeholder]::placeholder {
    color: inherit;
    opacity: .5;
}

@media only screen and (min-width: 480px) {
    .optsCaptcha .optsBlock,
    .optsFieldCaptcha .optsBlock {
        display: flex;
        justify-content: flex-start;
        align-items: flex-start;
    }
    .optsCaptcha .captchaCode,
    .optsFieldCaptcha .captchaCode {
        margin-right: 20px;
    }
    .optsCaptcha .captchaImgWrap,
    .optsFieldCaptcha .captchaImgWrap {
        margin-top: 0;
    }
}


/* ==========================================================================
   Module styles.
   ========================================================================== */
/*
START
 */
#newsJobs .col > .btnMore {
	margin-top: 20px;
}
@media (min-width: 960px) {

	#newsJobs .list {
		margin: 0 -20px;
		display: flex;
	}
	#newsJobs .list .listItem {
		margin: 0;
		padding: 0 20px;
	}
}

/* ==========================================================================
   Print styles.
   Inlined to avoid required HTTP connection: h5bp.com/r
   ========================================================================== */

@media print {
    *,
    *:before,
    *:after,
    *:first-letter,
    *:first-line {
        background: transparent !important;
        color: #000 !important; /* Black prints faster:
                                   http://www.sanbeiji.com/archives/953 */
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    /*
     * Don't show links that are fragment identifiers,
     * or use the `javascript:` pseudo protocol
     */

    a[href^="#"]:after,
    a[href^="javascript:"]:after {
        content: "";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    /*
     * Printing Tables:
     * http://css-discuss.incutio.com/wiki/Printing_Tables
     */

    thead {
        display: table-header-group;
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}
