/* roboto-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 300;
  src: url('../fonts/roboto-v30-latin-300.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('../fonts/roboto-v30-latin-300.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}

/* roboto-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/roboto-v30-latin-regular.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('../fonts/roboto-v30-latin-regular.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}

/* Animations Greensock hide on start */

svg.logo,
.metamenu_tablet,
#menurow {
    opacity:0;
}



html {
    height:100%;
    min-height:100%;
    font-size: 12pt;
	line-height: 1.3em;
}

body {
    padding:0px 0 0 0;
    margin:0;
	font-family: 'Roboto', sans-serif;
	font-size: 12pt;
	line-height: 1.3em;
    width:100%;
    position:relative;
    right:0;
}

/* Stycky footer Start */
body {
    display: flex;
    flex-direction: column;
    height:100%;
    min-height:100%;
}
.page-footer {
    flex-shrink: 0;
}
.page-body {
    flex-grow: 1;
}


/* Stycky footer End */


img{
    max-width:100%;
    vertical-align:middle;
}

#menurow{
    position:fixed;
    top:0;
    z-index:100;
    width:100%;
}


#menurow_tablet{
    position:fixed;
    top:0;
    z-index:1000;
    width:100%;
}

#menurow:before,
#menurow_tablet:before {
    content:"";
    display:block;
    position:absolute;
    width:100%;
    height:150px;
    background: linear-gradient(180deg,rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 100%);
    pointer-events: none;
}
.scrolled #menurow:before,
.scrolled #menurow_tablet:before {
    opacity:0;
}


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

#header {
	margin: 0;
	padding:0 0px 0 0px;
    /* height:50vh;


    */
    min-height:350px;
    background-image: url("/images/Hintergrundbilder/standard.jpg");
    background-position:center;
    background-size:cover;
    position:relative;
}
#header.nodefaultbg {
   background-image:none;
}
#header .pagetitlerow {
    position:absolute;
    bottom:0;
    width:100%;
    margin-left:0;
    margin-right:0;
    z-index:99;
}
#header .pagetitlerow > .container > .row {
    margin-left:0;
    margin-right:0;
}
#header .pagetitle {
    padding:30px;
    padding-left:0;
    padding-right:0;
}
#header .pagetitle h1 {
    padding:30px 15px 30px 0;
}

a,
body a {
	text-decoration:none;
}
p {
	padding:0;
	margin: 5px 0 5px 0;
}
h1 {
    font-size:2.1em;
    line-height:1.2em;
    margin:0;
    padding:0 0 20px 0;
}
h2 {
    font-size:1.8em;
    line-height:1.2em;
    margin:0;
    padding:0 0 20px 0;
}
h3 {
    font-size:1.5em;
    line-height:1.2em;
    margin:0;
    padding:0 0 20px 0;
}
h4,h5,h6{
    font-weight:bold;
    font-size:1em;
    line-height:1.2em;
}

p + h1,
p + h2,
p + h3 {
    padding-top:50px;
}

.einleitung {
    font-size:1.3rem;
    line-height: 1.5em;
    font-weight:300;
}
#main .moduletable {
    padding-top:30px;
    padding-bottom:30px;
}

a.button {
    padding: 5px 7px 5px 7px;
    margin: 0 0 3px 0;
    display: inline-block;
    width:auto;
    text-decoration:none;
}
a.button.big {
    padding:12px 15px;
    font-size:1.2rem;
    line-height:1.2em;
    border-radius: 8px;
}


/* Akkordeon */
.akkordeonwrapper {
    display:flex;
    flex:1 0 100%;
    flex-direction:column;
    margin-top:30px;
}
.akkordeon {
    margin-left:auto;
    margin-right:auto;
}

.akkordeon > article {
    padding:0px 0;
    margin:0;
    border-top-style:solid;
    border-width:1px;
}
.akkordeon > article:last-of-type {
    border-bottom-style:solid;
    border-width:1px
}
.akkordeon .title {
    padding:20px 0 20px 0;
    margin:0;
    cursor:pointer;
    position:relative;
}
.akkordeon .title::before {
    content: "";
    display: block;
    width: 1px;
    height: 1em;
    position: absolute;
    right: 0.45em;
    top: 23px;
    border-width: 1px;
    border-left-style: solid;
    -webkit-transition: .25s ease-in-out;
    -moz-transition: .25s ease-in-out;
    -o-transition: .25s ease-in-out;
    transition: .25s ease-in-out;
}
.akkordeon .title::after {
    content: "";
    display: block;
    width: 1em;
    height: 1px;
    position: absolute;
    right: 0;
    top: 50%;
    border-width: 1px;
    border-top-style: solid;
}
.akkordeon .title.open::before {
    opacity:0;
}

.akkordeon .akkordeoncontent {
    display:none;
    width:100%!important;
    padding:20px 0 40px 0;
}

/*custom Modul image Left START */
.mod-custom.imageleft {
    display:flex;
    flex:0 0 100%;
    flex-direction:column;
    background-color:var(--primary-color-light4);
    margin-top:50px;
}
.mod-custom.imageleft .bgimage {
    height:200px;
    width:83.3333%;
    background-position:center;
    background-size:cover;
    background-repeat:no-repeat;
}
.mod-custom.imageleft .text {
    padding:30px 0;

}
.mod-custom.imageleft .text .container {
    margin-top:auto;
    margin-bottom:auto;
}
@media (min-width: 992px) {
    .mod-custom.imageleft {
        flex-direction:row;
    }
    .mod-custom.imageleft .bgimage {
        height:unset;
    }
    .mod-custom.imageleft .bgimage,
    .mod-custom.imageleft .text {
        width:50%;
    }
     .mod-custom.imageleft .text {
         min-height:350px;
         display:flex;
     }
    .mod-custom.imageleft .text .container {
        max-width: 480px;
        margin-left:0;
        padding:30px 50px;
    }
}
@media (min-width: 1200px) {
    .mod-custom.imageleft .text .container {
        max-width: 570px;
    }
}
@media (min-width: 1400px) {
    .mod-custom.imageleft .text .container {
        max-width: 660px;
    }
}

/*custom Modul image Left END */

/* Video Home Start */
video#bgvid {
    width:4000px;
    max-width:100%;
    aspect-ratio:16/20;
    object-fit: cover;
    object-position: 50% 50%;
    display:block;
}

/* Home Header  */
.headerhome .videowrapper {
    position:relative;
}
.headerhome .headertext {
    position:absolute;
    bottom:0;
    width:100%;
    height:50%;
}
.headerhome .headertext .container,
.headerhome .headertext .row {
    height:100%;
}

.headerhome .headertextbg {
    position:absolute;
    bottom:0;
    width:83.333%;
    height:100%;
    display:flex;
    background-size:20%;
}
.headerhome .textcol {
    justify-content:center;
    display:flex;
    position:relativ;
    z-index:1;
}

.headerhome .headertext .text {
    font-size:1.5rem;
    line-height:1.2em;
    justify-content:center;
    display:block;
    margin-top:auto;
    margin-bottom:auto;
    width:100%;
}



.inforow .container {
    display:flex;
}
.inforow .container .left,
.inforow .container .right{
    width:50%;
    padding:0; /*3% 2% 3% 3%;*/
    display:flex;
    min-height:20px;
}
.inforow .icon {
    width:21%;
    padding:2% 4% 0 3%;
}
.inforow .text {
    width:75%;
    padding:15px 1% 15px 0;
}
.inforow .big {
    font-size:2rem;
    line-height:1em;
    padding-bottom:5px;
}
.inforow .small {
    font-size:0.8rem;
    line-height:1.1em;
}

/* Metamenu Start */
.metamenu {
    margin-left:auto;
    margin-top:15px;
}

.metamenu > div {
    float:right;
}

.metamenu ul {
    display:inline-block;
}

.metamenu ul li {
    display:block;
    float:left;
}
a.icon-login,
a.icon-contact,
a.icon-search {
    font-size:0;
}
.metamenu ul li a,
.metamenu ul li a:hover {
   text-decoration:none;
}

a[class*="icon-"]:before {
    font-size:calc(1.5rem + 0.15vw);
    line-height:1em;
    font-family:"Material Symbols Outlined";
    font-weight:300;
    margin-left:7px;

}
a.icon-login:before {
    content:"\e853";
}
a.icon-search:before {
    content:"\e8b6";
}
a.icon-contact:before {
    content:"\ea5e";
}

/* Metamenu End */

/* Falang */
#menurow div.mod-languages ul {
    padding-left:0;
    margin-right:5px;
    margin-top:7px;
}

#menurow div.mod-languages li {
   margin-right:10px;
   padding-left:0;
   font-size:calc(1.1rem + 0.15vw);
   line-height:1em;
}


.embed-container {
    position: relative;
    padding-bottom: 56.25%; /* 16/9 ratio */
    padding-top: 30px; /* IE6 workaround*/
    height: 0;
    overflow: hidden;
}
.embed-container > iframe{
    position:absolute;
    top:0;
    bottom:0;
    left:0;
    right:0;
}

ul {
	list-style:none;
	margin:0;
	padding:0;
    position:relative;
}
ul > li{
    padding-left:18px;
}
ul > li:before{
    position:absolute;
    content: '-';
    left:0;
}
#menurow ul > li:before,
#menurow_tablet ul > li:before { display:none;}
/* Sublevel on Desktop */
#menurow .headericons.metamenu > div > ul > li > ul {
    max-height:0;
    width:150px;
    overflow:hidden;
    position:absolute;
    background-color:#fff;
    padding:0 15px;
    display:block;
    -webkit-transition: .9s ease-in-out;
    -moz-transition: .9s ease-in-out;
    -o-transition: .9s ease-in-out;
    transition: .9s ease-in-out;
}
#menurow .headericons.metamenu > div > ul > li > ul li {
    padding:5px 0;
    display:block;
    float:none;
    text-align:center;
}
#menurow .headericons.metamenu > div > ul > li:hover > ul {
    max-height:700px;
    overflow:hidden;
}
#menurow .headericons.metamenu > div > ul > li > ul li a {
    display:block;
    text-align:center;
}






body.componentwidth100 #component > .container,
body.zeilezweiwidth100 #zeilezwei > .container,
body.zeiledreiwidth100 #zeiledrei > .container,
body.zeilevierwidth100 #zeilevier > .container,
body.zeilefuenfwidth100 #zeilefuenf > .container {
    max-width:100%;
    padding-left:0;
    padding-right:0;
}
body.componentwidth100 #component > .container > .row,
body.zeilezweiwidth100 #zeilezwei > .container > .row,
body.zeiledreiwidth100 #zeiledrei > .container > .row,
body.zeilevierwidth100 #zeilevier > .container > .row,
body.zeilefuenfwidth100 #zeilefuenf > .container > .row {
    margin-left:0;
    margin-right:0;
}
body.componentwidth100 #component > .container > .row > .moduletable,
body.zeilezweiwidth100 #zeilezwei > .container > .row > .moduletable,
body.zeiledreiwidth100 #zeiledrei > .container > .row > .moduletable,
body.zeilevierwidth100 #zeilevier > .container > .row > .moduletable,
body.zeilefuenfwidth100 #zeilefuenf > .container > .row > .moduletable {
    padding-left:0;
    padding-right:0;
    width:100%;
}
body.componentcenter #component,
body.zeilezweicenter #zeilezwei,
body.zeiledreicenter #zeiledrei,
body.zeileviercenter #zeilevier,
body.zeilefuenfcenter #zeilefuenf,
body.center,
.center {
    text-align:center;
}


#scroll_top{
    display:none;
    cursor:pointer;
    position:fixed;
    right:15px;
    bottom:15px;
    width:50px;
    height:50px;
    padding:0;
    border-radius:50%;
    z-index:1000;
}
#scroll_top span {
    font-size:50px;
    line-height:50px;
    font-weight:200;
}

.highlight {
	padding:20px 0 0 0;
}
.rounded {
    -webkit-border-radius:4px 4px 4px 4px;
	-moz-border-radius:4px 4px 4px 4px;
	border-radius:4px 4px 4px 4px;
}
.circle{
    -webkit-border-radius:50% 50% 50% 50%;
	-moz-border-radius:50% 50% 50% 50%;
	border-radius:50% 50% 50% 50%;
}
.transition {
    -webkit-transition: .25s ease-in-out;
    -moz-transition: .25s ease-in-out;
    -o-transition: .25s ease-in-out;
    transition: .25s ease-in-out;
}


.logo {
    height:55px;
    width:auto;
    margin:24px 40px 20px 0;
    position:relative;
    z-index:100;
}

.footer{
    flex-shrink:0;
    margin-top:0;
}
.footer a {
    text-decoration:none;
}
.footer .container {
    display:flex;
    flex-wrap:wrap;
}
.footer .container .left,
.footer .container .right{
    width:100%;
    padding:40px 15px 40px 15px; /*3% 2% 3% 3%;*/
    display:block;
    box-sizing: border-box;
}
#footer_created {
    padding:10px 0;
    font-size:0.8em;
    line-height:1.2em;
}


/* Login */
.com-users-login.login .icon-eye.icon-fw:before {
    font-family:"Material Symbols Outlined";
    content:"\e8f4";
}






/* DSGVO */
.cc-btn.cc-dismiss{
    display:none;
}

svg {
    max-width:100%;
    height:auto;
}
svg.drawsvg {
    display: none;
}

/* Tomppa Effects */
.viewport {
    opacity:0;
}
.viewport.in-viewport {
    opacity:1;
}


.viewport[data-effect="FadeInBottom"].in-viewport {
    animation: FadeInBottom 1s 1;
    animation-direction: normal;
}
@keyframes FadeInBottom {
    0% {
        transform: translate(0, 50px);
        opacity:0;
    }
    100% {
        transform: translate(0, 0);
        opacity: 1;
    }
}

 .viewport[data-effect="FadeIn"]{
    animation-delay: 3s;
    display: inline-block;
 }

.viewport[data-effect="FadeIn"].in-viewport {
    animation: FadeIn 1s 1;
    animation-direction: normal;
    display: inline-block;
}
@keyframes FadeIn {
    0% {
        opacity:0;
    }
    100% {
        opacity: 1;
    }
}


.viewport[data-effect="ZoomIn"].in-viewport {
    animation: ZoomIn 1s 1;
    animation-direction: normal;
    transition-duration: 3s;
    transition: transform 1s;
}
@keyframes ZoomIn {
    0% {
        transform: scale(0,0);
        transform: translate(50%, 50%);
    }
    100% {
        transform: scale(1,1);
        transform: translate(0%, 0%);
    }
}
