/* CSS Document */
body {
    font:18px/36px 'Lato', Arial, sans-serif;
    color:#525050;
	font-weight:400;
}
.prehead {
    display:block;
    width:100%;
    margin:0px;
    padding:0px;
    background:#000;
    color:#F4FD00;
    text-align:right;
}
@media only screen and (max-width:800px) {
    .prehead {
        text-align:left;
    }
}
.prehead p {
    margin:0px 20px;
}

.header, footer {
	display:block;
	background:#fff;
    width:100%;
	color:#fff;
    font-weight:700;
}
.header .logo {
	float:left;
	display:block;
    width:150px;
    padding:10px 20px;
}
.header .menu {
	display:block;
    float:left;
    transition:all 0.50s;
    width:calc(100% - 150px);
}
.header .menu .menuopener {
    display:none;
    line-height:70px;
    width:70px;
    height:70px;
    position:absolute;
    top:50%;
    margin-top:-35px;
    right:0px;
    font-size:40px;
    color:#525050;
    cursor:pointer;
    text-align:center;
}
.header .menu nav {
    float:right;
    padding:40px 20px;
}
.header .menu nav ul {
	display:block;
	margin:0px;
	padding:0px;
    margin-right:-15px;
}
.header .menu nav ul li {
	display:block;
    float:left;
	margin:0px;
    padding:0px;
	line-height:70px;
    text-transform:uppercase;
    position:relative;
}
.header .menu nav ul li:after {
    display:block;
    width:1px;
    height:24px;
    background:#5F5F5F;
    content:'';
    float:left;
    position:absolute;
    top:23px;
    right:0px;
}
.header .menu nav ul li:last-child:after {
    display:none;
}
.header .menu nav ul li a {
	display:block;
	margin:0px;
    padding:0px 15px;
	color:#525050;
	text-decoration:none;
    position:relative;
}
.header .menu nav ul li a:before {
    display:block;
    opacity:0;
    position:absolute;
    content:'';
    top:15px;
    left:15px;
    right:15px;
    height:1px;
    background:#EDE63A;
    transition:all 0.80s ease-in-out 0s;
}
.header .menu nav ul li.aktiv > a:before, .header .menu nav ul li > a:hover:before {
    opacity:1;
}
.header .menu nav ul li.aktiv > a, .header .menu nav ul li > a:hover {
	color:#EDE63A;
}
@media only screen and (max-width: 999px) {
    .header .logo {
        width:35%;
    }
    .header .menu {
        width:100%;
    }
    .header .menu .menuopener {
        display:block;
    }
    .header .menu .menuopener .close, .header .menu .menuopener.aktiv .open {
        display:block;
    }
    .header .menu .menuopener.aktiv .close, .header .menu .menuopener .open {
        display:none;
    }
    .header .menu nav {
		display:none;
        width:100%;
        position:absolute;
        background:#000;
        padding:0px;
        transition:all 0.80s ease-in-out 0s;
        z-index:5000;
    }
    .header .menu nav.resmenuopen {
        display:block;
    }
    .header .menu nav ul li {
		display:block;
        float:none;
        font-size:22px;
        line-height:60px;
        position:relative;
        text-align:center;
    }
    .header .menu nav ul li a {
        color:#fff;
    }
    .header .menu nav ul li a:before {
        display:none;
    }
    .header .menu nav ul li > ul {
        position:static;
        margin:0px 0px 0px 15px;
        border-right:none;
        width:auto;
    }
}







.aussenboxbildkartewarnungbg {
    background:url("../../images/aussenboxbildkartewarnungbg.jpg") repeat-x top left;
    background-size:contain;
    padding:0px;
}
.aussenboxbildkartewarnung {
    background:url("../../images/aussenboxbildkartewarnung.jpg") no-repeat top left;
    background-size:contain;
    display:block;
    position:relative;
    width:100%;
    height:0px;
    padding-top:71.26%;
}
.aussenboxbildkartewarnung > .divboxinner {
    position:absolute;
    display:block;
    top:39%;
    bottom:76.61%;
    left:45%;
    right:3.75%;
}
@media only screen and (max-width: 1000px) and (min-width: 900px), (max-width: 650px) {
    .aussenboxbildkartewarnung h2, .aussenboxbildkartewarnung p {
        margin:15px;
    }
    .aussenboxbildkartewarnung h2 {
        font-size:24px;
        line-height:30px;
    }
    .aussenboxbildkartewarnung {
        font:16px/26px 'Lato', Arial, sans-serif;
    }
}
@media only screen and (max-width: 900px) {
    .aussenboxbildkartewarnung {
        background:url("../../images/aussenboxbildkartewarnungmobil.jpg") no-repeat top left;
        background-size:contain;
        padding-top:122.625%;
    }
    .aussenboxbildkartewarnung > .divboxinner {
        top:39%;
        bottom:76.61%;
        left:3.75%;
        right:3.75%;
    }
}
@media only screen and (max-width: 650px) {
    .aussenboxbildkartewarnung {
        background:url("../../images/aussenboxbildkartewarnungmobil2.jpg") no-repeat top left;
        background-size:contain;
        padding-top:175%;
    }
    .aussenboxbildkartewarnung > .divboxinner {
        top:33.5%;
        bottom:76.61%;
        left:3.75%;
        right:3.75%;
    }
}










.design-1, section.padding {
    padding:0px 17%;
}
@media only screen and (max-width: 999px) {
    .design-1 {
        padding:20px 30px;
    }
}

/* Globals - Start */
img, video, embed, object, .video {
    display:block;
    max-width:100%;
    height:auto !important;
}



footer {
    font-weight:400;
    color:#fff;
}
footer h4 {
    text-transform:uppercase;
    font-size:14px;
    line-height:24px;
    font-weight:600;
}
a {
    color:#E5DC04;
    transition:all 0.80s ease-in-out 0s;
    text-decoration:none;
}
footer a {
    color:#fff;
}
a:hover {
    color:#E5DC04;
}
a.button {
    display:inline-block;
    background:#E5DC04;
    border-radius:20px;
    line-height:40px;
    color:#000;
    padding:0px 30px;
}
a.button2 {
    display:block;
    background:rgba(255, 255, 255, 0.65);
    line-height:40px;
    color:#000;
    padding:5px 65px 5px 15px;
    position:relative;
}
a.button2:after {
    display:block;
    position:absolute;
    content:'\f054';
    font-family:"Font Awesome 5 Free";
    font-weight:900;
    width:50px;
    height:50px;
    line-height:50px;
    font-size:35px;
    text-align:center;
    color:#FFF500;
    background:#000;
    right:0px;
    top:0px;
}

h1, h2, h3, h4, h5 {
    font-weight:400;
	line-height:1.4;
}
h1 {
	font-size:23px;
    line-height:38px;
	font-weight:400;
    color:#E5DC04;
}
h2 {
    font-size:28px;
    line-height:34px;
    text-transform:uppercase;
    font-weight:600;
}
header + h2 {
    margin-top:-10px;
}
h3 {
    font-size:14px;
    text-decoratio9n:underline;
}
h4 {
    font-size:15px;
}
h5 {
    font-size:14px;
	font-weight:600;
}
ul, ol, p, h1, h2, h3, h4, h5, blockquote {
    margin:25px 0px;
}
ul, ol {
    display:block;
    list-style:none;
}
ul li, ol li {
    list-style:none;
    margin:5px 0px 5px 0px;
    padding:0px 0px 0px 24px;
    position:relative;
}
ol {
    counter-reset:ol-counter;
}
ol li:before, ul li:before {
    margin:0px 24px 0px -24px;
    display:inline-block;
    width:20px;
    position:absolute;
}
ol li:before {
    content:counter(ol-counter, decimal)'. ';
	counter-increment:ol-counter;
}
.content ul li {
    padding-left:20px;
    page-break-inside: avoid;
    break-inside: avoid;
}
.content ul li:before {
    content:"\f054";
    text-align:left;
    display:inline-block;
    width:20px;
    font-family:"Font Awesome 5 Free";
    font-weight:900;
    font-size:inherit;
    margin-left:-20px;
}


hr {
    border:none;
    border-top:1px solid #000;
    margin:20px 0;
    position:relative;
    width:100%;
}

blockquote {
	display:block;
	position:relative;
	max-width:500px;
	text-align:center;
	font-size:20px;
    color:#ccc;
	font-style: italic;
	margin:20px auto 0px;;
}
blockquote cite {
	
}
blockquote:before,
blockquote:after {
    content:"“";
    font-size:50px;
    font-family: "Georgia", Serif;
    position:absolute;
    left:-10px;
    top:5px;
}
blockquote:after {
    left:auto;
	bottom:-10px;
	top:auto;
	right:-10px
}
/* Globals - Stop */





.black {
    background-color:#000;
    color:#fff;
}
.black.padding {
    padding:15px;
}
.black hr {
    border-color:#fff;
}
.yellow {
    background-color:#FFF500;
}
.yellow h1 {
    color:#525050;
}
.bgright {
    background-position:right center;
    background-repeat:no-repeat;
}
footer ul {
	list-style:none;
}
footer ul li {
	list-style:none;
	margin:0px;
	padding:0px;
}
footer ul.social {
    display:block;
    list-style:none;
    margin:20px 0px;
    padding:0px;
}
footer ul.social {
    display:inline-block;
    list-style:none;
    margin:0px;
    padding:0px;
}
.overlayimage {
	position:relative;
	display:block;
	overflow:hidden;
}
.overlayimage img {
	position:relative;
	display:block;
}
.overlayimage .overlay {
	position:absolute;
	display:block;
	opacity:0;
	top:0px;
	left:0px;
	right:0px;
	bottom:0px;
	background:rgba(0, 0, 0, 0.8);
	color:#fff;
	text-align:center;
    transition:all 0.80s ease-in-out 0s;
}
.overlayimage:hover .overlay {
	opacity:1;
}
.overlayimage .overlay .overlaycontent {
	position:absolute;
	top:50%;
	width:100%;
    transform:translate(0, -50%);
}
.overlayimage .overlay h2, .overlayimage .overlay p {
	position:relative;
	top:500px;
    transition:all 0.50s ease-in-out 0s;
	opacity:0;
	font-size:25px;
	padding:15px 15px 0px;
}
.overlayimage .overlay p {
    transition:all 0.80s ease-in-out 0s;
    font-size:20px;
	padding:0px 15px 15px;
}
.overlayimage:hover .overlay h2, .overlayimage:hover .overlay p {
	top:0px;
	opacity:1;
}
.content p {
/*	hyphens:auto;
	-moz-hyphens:auto;*/
}
a .fa {
    transition:all 0.10s ease-in-out 0s;
    transform:scale(1);
}
a:hover .fa {
    transform:scale(1.2);
}
.bild.center figure {
    text-align:center;
}
.bild.center figure img {
    margin:0px auto;
}


/* Carousel - Start */
@keyframes slideraktivateleft {
    from {
        left:66.666%;
    }
    to {
        left:33.333%;
    }
}
@keyframes sliderleftout {
    from {
        left:33.333%;
    }
    to {
        left:0%;
    }
}
@keyframes slideraktivateright {
    from {
        left:0%;
    }
    to {
        left:33.333%;
    }
}
@keyframes sliderrightout {
    from {
        left:33.333%;
    }
    to {
        left:66.666%;
    }
}
@keyframes slidereffect {
    0% {
        transform:scale(1);
    }
    100% {
        transform:scale(1.1);
    }
}
.carousel {
    padding:0px;
    overflow:hidden;
    width:100%;
    position:relative;
}
.carousel .carousel-nav {
	text-shadow:0px 0px 5px rgba(0, 0, 0, 0.7);
}
.carousel .carousel-nav ul.carousel-points {
    display:block;
    position:absolute;
    bottom:0px;
    width:100%;
    z-index:20;
    margin:0px auto;
    list-style:none;
    padding:0px;
    text-align:center;
}
.carousel .carousel-nav ul.carousel-points:after {
    display:block;
    conent:'';
    clear:both;
}
.carousel .carousel-nav ul.carousel-points li.carousel-point {
    display:inline-block;
    width:20px;
    height:20px;
    padding:0px;
    margin:10px;
	box-shadow:0px 0px 5px rgba(0, 0, 0, 0.7);
    background:rgba(255, 255, 255, 0.9);
    border:1px solid #a4a5a5;
    cursor:pointer;
    position:relative;
}
.carousel .carousel-nav ul.carousel-points li.carousel-point:before {
    content:none;
}
.carousel .carousel-nav ul.carousel-points li.carousel-point:after {
    display:block;
    position:absolute;
    left:8px;
    top:8px;
    width:0px;
    height:0px;
    content:'';
	box-shadow:0px 0px 5px rgba(0, 0, 0, 0.7);
    background:rgba(164, 165, 165, 0);
    transition:all 0.70s ease-in-out 0s;
}
.carousel .carousel-nav ul.carousel-points li.carousel-point.aktiv:after, .carousel .carousel-nav ul.carousel-points li.carousel-point:hover:after {
    left:0px;
    top:0px;
    width:18px;
    height:18px;
    background:#a4a5a5;
}
.carousel .carousel-nav .carousel-prev, .carousel .carousel-nav .carousel-next {
    display:block;
    position:absolute;
    top:0px;
    bottom:0px;
    left:0px;
    right:0px;
    cursor:pointer;
    z-index:21;
}
.carousel .carousel-nav .carousel-next {
    left:auto;
}
.carousel .carousel-nav .carousel-prev {
    right:auto;
}
.carousel .carousel-nav .carousel-prev:after, .carousel .carousel-nav .carousel-next:after {
    display:block;
    font-family:"Font Awesome 5 Free";
    font-weight:900;
    font-size:30px;
    color:#fff;
    width:40px;
    height:40px;
    line-height:40px;
    padding:20px;
    text-align:center;
    position:absolute;
    top:50%;
    margin-top:-40px;
}
.carousel .carousel-nav .carousel-prev:after {
    content:"\f053";
    left:0px;
}
.carousel .carousel-nav .carousel-next:after {
    content:'\f054';
    right:0px;
}
.carousel .carousel-content {
    display:block;
    width:300%;
    margin-left:-100%;
    position:relative;
    height:300px;
}
.carousel .carousel-content:after {
    display:block;
    width:100%;
    clear:both;
    content:'';
}
.carousel .carousel-content .carousel-element {
    display:none;
    width:33.333%;
    clear:none;
    position:absolute;
    top:0px;
    overflow:hidden;
}
.carousel .carousel-content .carousel-element {
}
.carousel .carousel-content .carousel-element .bild img {
    width:100%;
}
.carousel .carousel-content .carousel-element .grid12-xs .bild img,
.carousel .carousel-content .carousel-element .grid2-xs .bild img {
    width:auto;
}
.ce-textpic .bild.above {
	margin-bottom:20px;
}
.carousel .ce-textpic .bild.above {
	margin-bottom:0px;
}
.carousel .carousel-content .carousel-element .ce-textpic {
    transform:scale(1.1);
    position:relative;
}
.carousel .carousel-content .carousel-element .ce-textpic .ce-bodytext {
    display:block;
    position:absolute;
    right:0px;
    left:0px;
    bottom:0px;
    color:#ffffff;
    padding:7.5% 15%;
    text-shadow:1px 1px 1px rgba(0, 0, 0, 0.7);
}

.carousel .carousel-content .carousel-element:first-child .ce-textpic {
    animation:slidereffect 5s;
    transform:scale(1.1);
}
.carousel .carousel-content .carousel-element:first-child {
    display:block;
    left:33.334%;
}
.carousel .carousel-content .carousel-element:last-child {
    display:block;
    left:0%;
}
.carousel .carousel-content .carousel-element:nth-child(2) {
    display:block;
    right:66.666%;
}
.carousel .carousel-content .carousel-element.aktivateleft {
    animation-name:slideraktivateleft;
    animation-duration:2s;
}
.carousel .carousel-content .carousel-element.leftout {
    animation-name:sliderleftout;
    animation-duration:2s;
}
.carousel .carousel-content .carousel-element.aktivateright {
    animation-name:slideraktivateright;
    animation-duration:2s;
}
.carousel .carousel-content .carousel-element.rightout {
    animation-name:sliderrightout;
    animation-duration:2s;
}
.carousel .carousel-content .carousel-element .ce-textpic {
    transform:scale(1) !important;
    position:static !important;
    animation:none !important;
}
/* Carousel - Stop */




/* Formulare - Start */
/* CSS Document */
/* Formulare - Start */
fieldset {
	padding:0px 10px;
	border:1px solid #ccc;
}
fieldset legend {
	font-size:23px;
	font-weight:bold;
    padding:0px 20px;
}
.form-group, .actions {
    position:relative;
    margin:20px 0px;
}
.form-group:after, .actions:after {
    display:block;
    float:none;
    clear:both;
    content:'';
}
fieldset .form-group:first-of-type {
    margin-top:0px;
}
fieldset .form-group:last-of-child {
    margin-bottom:0px;
}
input, button, textarea, select {
	margin:20px 0px 0px 0px;
	padding:2px;
	width:100%;
	height:40px;
	background:rgba(0, 0, 0, 0);
    border:none;
	border-bottom:1px solid #ccc;
    font:14px/40px 'Lato', Arial, sans-serif;
    box-shadow:0 0 3px rgba(0, 0, 0, 0);
    transition:all 0.30s ease-in-out 0s;
    display:block;
    outline:none;
    position:relative;
    z-index:100;
    color:inherit;
}
input, button, textarea, select {
}
input[type="text"]:focus, input[type="password"]:focus, input[type="email"]:focus, textarea:focus {
    border-color:#333;
}
label {
    display:block;
    position:absolute;
    top:16px;
    left:0px;
    transition:all 0.30s ease-in-out 0s;
    z-index:99;
}
.marker {
    position:absolute;
    height:60%;
    width:50%;
    top:25%;
    left:0;
    opacity:0.5;
}
input:focus ~ .marker, textarea:focus ~ .marker {
    animation:inputmarker 0.3s ease;
}
@keyframes inputmarker {
    from {
        background:#ccc;
    }
    to {
        width:0;
        background:transparent;
    }
}
input:focus ~ label, textarea:focus ~ label, input:valid ~ label, textarea:valid ~ label {
    top:-20px;
}
select[multiple]
{
	height:auto;
}
textarea {
	resize:none;
	color:inherit;
	overflow:hidden;
    line-height:24px;
    padding:5px 2px;
}
textarea:focus {
    background:#f9f9f9;
}
.black textarea:focus, .black textarea:valid {
    background:#101010;
}
button, input[type=button], input[type=submit] {
	background:rgba(0, 0, 0, 0);
	color:inherit;
    float:right;
	cursor:pointer;
    width:auto;
	display:inline-block;
    line-height:1;
	padding:10px 20px;
	transition:all 0.28s ease 0s;
    text-align:center;
	box-shadow:0 0 0px rgba(0,0,0,0) inset;
    border:1px solid #999;
    margin:0px;
}
button:hover, input[type=button]:hover, input[type=submit]:hover {
	box-shadow:0 0 4px rgba(0,0,0,0.5) inset;
}
.black button, .black input[type=button], .black input[type=submit] {
    border:1px solid #333;
}
.black button:hover, .black input[type=button]:hover, .black input[type=submit]:hover {
	box-shadow:0 0 4px rgba(255,255,255,0.5) inset;
}
/* Formulare - Stop */

@keyframes fadeup {
    from {
        transform:translate(0%, 100%);
        opacity:0;
    }
    to {
        transform:translate(0%, 0%);
        opacity:1;
    }
}
@keyframes fadeleft {
    from {
        transform:translate(100%, 0%);
        opacity:0;
    }
    to {
        transform:translate(0%, 0%);
        opacity:1;
    }
}
@keyframes faderight {
    from {
        transform:translate(-100%, 0%);
        opacity:0;
    }
    to {
        transform:translate(0%, 0%);
        opacity:1;
    }
}
.frame {
    opacity:1;
    transform:translate(0%, 0%);
    min-height:30px;
}
.frame.viewarea {
    animation:fadeup 1s;
}
.carousel .frame.viewarea, footer .frame.viewarea {
    animation:none !important;
}
.border .row .grid:first-child .frame.viewarea {
    animation:faderight 1s;
}
.border .row .grid:last-child .frame.viewarea {
    animation:fadeleft 1s;
}
.gme-info-window {
    color:#5e5e5d;
}

/* Accordion - Start */
.accordion-head {
    margin-bottom:10px;
}
.accordion-head > * {
    display:block;
    padding-right:32px;
    cursor:pointer;
    position:relative;
    margin:10px 0px;
    padding-left:30px;
}
.accordion-head > *:before {
    display:block;
    position:absolute;
    top:50%;
    left:0px;
    width:30px;
    height:30px;
    font-family:"Font Awesome 5 Free";
    margin-top:-15px;
    content:'\f105';
    text-align:center;
    line-height:30px;
}
.accordion-head.open *:before {
    content:'\f107';
}
.accordion-content {
    display:none;
}
/* Accordion - Stop */
.frame-layout-1 {
    padding:0px 15%;
}
@media only screen and (max-width:1000px) {
    .frame-layout-1 {
        padding:0px 10%;
    }
}
@media only screen and (max-width:800px) {
    .frame-layout-1 {
        padding:0px;
    }
}
