/*	Theme Name: MSO-Webdesign Flex (Widget-ready)
	URI: https://www.mso-webdesign.de
	Description: wordpress theme nach dialogue avenue
	Version: 04.00 (de, en)
	Author: Marco Schwarz
	Author URI: https://mso-webdesign.de/
	The CSS, XHTML and design is released under the GPL:
	http://www.opensource.org/licenses/gpl-license.php
*/
@font-face { font-family: 'Roboto'; font-style: normal; font-weight: 400; src: url('fonts/roboto-v30-latin-regular.eot'); src: local(''), url('fonts/roboto-v30-latin-regular.eot?#iefix') format('embedded-opentype'), url('fonts/roboto-v30-latin-regular.woff2') format('woff2'), url('fonts/roboto-v30-latin-regular.woff') format('woff'), url('fonts/roboto-v30-latin-regular.ttf') format('truetype'), url('fonts/roboto-v30-latin-regular.svg#Roboto') format('svg'); }
@font-face { font-family: 'Roboto'; font-style: normal; font-weight: 500; src: url('fonts/roboto-v30-latin-500.eot'); 
  src: local(''), url('fonts/roboto-v30-latin-500.eot?#iefix') format('embedded-opentype'), url('fonts/roboto-v30-latin-500.woff2') format('woff2'), url('fonts/roboto-v30-latin-500.woff') format('woff'), url('fonts/roboto-v30-latin-500.ttf') format('truetype'), url('fonts/roboto-v30-latin-500.svg#Roboto') format('svg'); }

* { box-sizing: border-box; margin: 0; padding: 0; }
html { font-size: 100%; min-height: 100.01%; }
body { font-family: 'Roboto', Segoe UI, Optima, Tahoma, Helvetica, Arial, sans-serif; color: #000; font-weight: 400; font-size: 100%; background-color: #eee; }

a, a:link, a:visited { color: #a00; text-decoration: none; font-weight: 500; }
a:hover, a:active, a:focus { color: #c00; text-decoration: underline; }
.btn { display: inline-block; color: #fff; background-color: #a50000; margin: 0 0 10px 0; text-align: center; border-radius: 5px; transition: background-color 0.5s ease-out; }
.btn:hover { background-color: #c00; }
.btn a, .btn a:link, .btn a:visited { display: block; padding: 20px; color: #fff; }
.btn a:hover, .btn a:active, .btn a:focus { color: #fff; text-decoration: none; }

header { max-width: 1080px; margin: 20px auto 0 auto; background-color: #fff; background-image: url(bilder/de.jpg); background-repeat: repeat-x; }
header p { margin: 0; padding: 5px 0; font-size: 1.5em; line-height: 1.8em; color: #fff; text-align: center; }
.gelb { font-size: 1.6em; color: #fc0; }
.gelb2 { font-size: 0.87em; color: #000; }

nav { max-width: 1080px; margin: 0 auto; padding: 0; background-color: #ccc; z-index: 1030; }
nav .container { padding: 10px 0; background-color: #ccc; }
a.toggleMenu { display: none; }
.nav { display: flex; justify-content: space-between; list-style: none; z-index: 1030; background-color: #ccc; }
.nav:before, .nav:after { content: " "; display: table; }
.nav:after { clear: both; }
.nav li a { text-decoration: none; padding: 10px; color: #fff; background-color: #999; font-size: 1em; text-transform: uppercase; transition: transform 0.5s ease-out; }
.nav li a:hover { transform: scale(1.1); background-color: #c00; text-decoration: none; }
.nav li { flex: 0 0 auto; position: relative; text-align: center; }
.nav > li > .parent { background-image: url(bilder/downArrow.png); background-repeat: no-repeat; background-position: 97% 50%; }
.nav > li > a { display: block; }
.nav li.current-menu-item a, .nav li a.ac { text-decoration: none; background-color: #c00; }

section { background-color: transparent; position: relative; }
.container { max-width: 1080px; margin: 0 auto; padding: 50px 20px; background-color: #fff; }

.flex { display: flex; flex-wrap: wrap; justify-content: space-between; }
.box50 { flex: 0 1 auto; width: 48%; }
.box60 { flex: 0 1 auto; width: 62%; }
.box40 { flex: 0 1 auto; width: 34%; }
.box30 { flex: 0 1 auto; width: 31%; }
.flex2 { display: flex; flex-wrap: wrap; justify-content: space-between; }
.box25 { flex: 0 1 auto; width: 23%; text-align: center; }

.gelbbox { margin: 0 0 40px 0; background-color: #f0d684; border: 2px solid #a00; }
.gelbbox p { margin: 0; padding: 10px; line-height: 1.5em; font-size: 1em; }
.gelbbox p.big { font-size: 1.5em; font-weight: 500; line-height: 1.6em; }
.gelbbox h2 { margin: 0 0 10px 0; padding: 5px 10px; color: #f0d684; background-color: #c70122;  font-size: 1.5em; }

.hellbox { max-width: 800px; margin: 0 0 40px 0; background-color: #f9e5a5; border: 2px solid #a00; }
.hellbox p { margin: 0; padding: 10px; line-height: 1.5em; font-size: 1em; }

h3.wps_visitor_title { font-size; 1.2em; margin: 0 0 10px 0;  }

footer { max-width: 1080px; margin: 0 auto; background-color: #bbb; }
footer .container { background-color: transparent; padding: 20px; }
footer p { margin: 0 0 10px 0; line-height: 2em; }

.right { float: right; }
.rechts { text-align: right; }
.center { text-align: center; }
.abst { margin: 0 0 50px 0; }
.nah { margin: 0 0 15px 0; }
.null { margin: 0; }
.hoch { line-height: 2em; }
.clear { clear: both; }
.gross { margin: 0 0 50px 0; font-size: 4em; font-weight: 400; line-height: 1.2em; }
.it { font-style: italic; font-weight: 500; }
.big { font-size: 1.5em; font-weight: 500; line-height: 1.6em; }
strong, b { font-weight: 500; }
.hr { border-bottom-style: solid; border-bottom-width: 1px; border-color: #aaa; height: 1px; margin: 20px 0 40px 0; }
img { border: 0; padding: 0; margin: 0; max-width: 100%; }

h1, h2, h3, h4 { margin: 0 0 20px 0; line-height: 1.2em; font-weight: 500; }
h1 { font-size: 2.2em; margin: 0 0 40px 0; }
.kasten { padding: 5px 10px; background-color: #f0d684; }
h2 { font-size: 1.8em; }
h3 { font-size: 1.6em; }
h4 { font-size: 1.5em; }
p { margin: 0 0 30px 0; line-height: 1.5em; font-size: 1em; }
.bild { float: right; max-width: 50%; margin: 0 0 30px 30px; }

ul.tx { list-style-image: url(bilder/pfeil.png); margin: 0 0 30px 30px; padding: 0; font-size: 1em; line-height: 1.5em; }
ul.tx li { margin-bottom: 10px; }
ul.tx li ul { margin: 0 0 10px 20px; padding: 0; font-size: 1em; line-height: 1.5em; }
ul.pdf { list-style-image: url(bilder/pdf.gif); margin: 15px 0 15px 45px; padding: 0; font-size: 1em; line-height: 1.5em; }
ul.pdf li { margin: 0 0 10px 0; }
ul.pdf li a, ul.pdf li a:link, ul.pdf li a:active, ul.pdf li a:focus, ul.pdf li a:visited { font-weight: 400; }
ol { margin: 0 0 30px 40px; padding: 0; font-size: 1em; line-height: 1.5em; }
ol.lower-latin { list-style-type: lower-latin; margin: 0 0 30px 40px; padding: 0; font-size: 1em; line-height: 1.5em; }
ol.lower-latin li { margin-bottom: 10px; }
ol.lower-latin ul { list-style-type: disc; margin: 10px 0 10px 40px; }

.sy-box { max-width: 800px; margin: 0 auto 40px auto; padding: 10px; border: 2px solid #bbb; }
.sy-box.sy-loading { background:url(bilder/sy-loader.gif) 50% 50% no-repeat; background-size: 32px; min-height: 40px; }
.sy-box.sy-loading .sy-slides-wrap, .sy-box.sy-loading .sy-pager { visibility: hidden; }
.sy-slides-wrap { position: relative; height: 100%; width: 100%; }
.sy-slides-wrap:hover .sy-controls { display: block; }
.sy-slides-crop { height: 100%; width: 100%; position: absolute; overflow: hidden; }
.sy-list { width: 100%; height: 100%; list-style: none; margin: 0; padding: 0; position: absolute; }
.sy-list.horizontal { transition: left ease; }
.sy-list.vertical { transition: top ease; }
.sy-slide { position: absolute; width: 100% ;z-index: 2; }
.sy-slide.kenburns { width: 140%; left: -20%; }
.sy-slide.kenburns.useCSS { transition-property: opacity; }
.sy-slide.kenburns.useCSS.sy-ken:nth-child(1n) { animation-name: left-right; animation-fill-mode: forwards; }
.sy-slide.kenburns.useCSS.sy-ken:nth-child(2n) { animation-name: right-left; animation-fill-mode: forwards; }
.sy-slide.sy-active { z-index: 3; }
.sy-slide>img { margin: 0; padding: 0; display: block; width: 100%; border: 0; }
.sy-slide>a { margin: 0; padding: 0; display: block; width: 100%; }
.sy-slide>a>img { margin: 0; padding: 0; display: block; width: 100%; border: 0; }
.sy-controls { display: none; list-style: none; height: 100%; width: 100%; position: absolute; padding: 0; margin: 0; }
.sy-controls li { position: absolute; width: 10%; min-width: 4.2em; height: 100%; z-index: 33; }
.sy-controls li.sy-prev { left: 0; top: 0; }
.sy-controls li.sy-prev a:after { background-position: -5% 0; }
.sy-controls li.sy-next { right: 0; top: 0; }
.sy-controls li.sy-next a:after { background-position: 105% 0; }
.sy-controls li a { position: relative; width: 100%; height: 100%; display: block; text-indent: -9999px; }
.sy-controls li a:link,.sy-controls li a:visited { opacity: 0.4; }
.sy-controls li a:hover,.sy-controls li a:focus { opacity: 0.8; outline: none; }
.sy-controls li a:after {content: ""; background-image: url(bilder/arrows.svg); background-repeat: no-repeat; background-size: cover; text-align: center; text-indent: 0; line-height: 2.8em; color: #111; font-weight: 800; position: absolute; background-color: #fff; width: 2.8em; height: 2.8em; left: 50%; top: 50%; margin-top: -1.4em; margin-left: -1.4em; border-radius: 50%; }

@media only screen and (min-width: 600px){
.sy-controls { display: block; }
.sy-controls li { min-width: 2.1em; }
.sy-controls li a:after { width: 1.4em; height: 1.4em; margin-top: -0.7em; margin-left: -0.7em; }
}

.sy-caption-wrap { position: absolute; bottom: 2em; z-index: 12; left: 50%; }
.sy-caption-wrap .sy-caption { position: relative; left: -50%; background-color: rgba(0,0,0,0.54); color: #fff; padding: 0.4em 1em; border-radius: 1.2em; }
.sy-caption-wrap .sy-caption a:link, .sy-caption-wrap .sy-caption a:visited { color: #e24b70; font-weight: 600; text-decoration: none; }
.sy-caption-wrap .sy-caption a:hover, .sy-caption-wrap .sy-caption a:focus { text-decoration: underline; }

@media only screen and (min-width: 600px){
.sy-caption-wrap { left: 0; bottom: 0.4em; }
.sy-caption-wrap .sy-caption { left: 0; padding: 0.2em 0.4em; font-size: 0.92em; border-radius: 0; }
}

.sy-pager { clear: both; display: block; width: 100%; margin: 1em 0 0; padding: 0; list-style: none; text-align: center; }
.sy-pager li { display: inline-block; width: 1.2em; height: 1.2em; margin: 0 1em 0 0; border-radius: 50%; }
.sy-pager li.sy-active a { background-color: #e24b70; }
.sy-pager li a { width: 100%; height: 100%; display: block; background-color: #ccc; text-indent: -9999px; background-size: 2em; border-radius: 50%; }
.sy-pager li a:link, .sy-pager li a:visited { opacity: 1.0; }
.sy-pager li a:hover, .sy-pager li a:focus{ opacity: 0.6; }
.sy-filler { width: 100%; }
.sy-filler.ready { transition: padding 600ms ease; }

.news-slider .text-content { position: absolute; left: 0; background-color: rgba(255,255,255,0.9); padding: 1em; width: 60%; font-size: 0.75em; height: 100%; }
.news-slider .text-content h2 { margin: 0; }
.news-slider .text-content p { display: block; }
.news-slider .text-content a.button-link { padding: 0.25em 0.5em; position: absolute; bottom: 1em; right: 1em; }
.news-slider .text-content .read-more { float: right; position: absolute; bottom: 1em; right: 1em; }

@media only screen and (min-width: 481px){
.news-slider .text-content { font-size: 1em; }
}
@media only screen and (min-width: 769px){
.news-slider .text-content { width: 60%; }
}
@media only screen and (min-width: 960px){
.news-slider .text-content { width: 60%; }
}
.news-slider .image-content {  line-height: 0; }
.news-slider .image-content img { max-width: 100%; }
.news-slider .news-pager { text-align: right; display: block; margin: 0.2em 0 0; padding: 0; list-style: none; }
.news-slider .news-pager li { display: inline-block; padding: 0.6em; margin: 0 0 0 1em; }
.news-slider .news-pager li.sy-active a { color: #31ace2; }
.news-slider .news-pager li a { font-weight: 500; text-decoration: none; display: block; color: #222; }

.news-slider .text-content { position: absolute; top: 0; left: 0; right: 0; background-color: #fff; padding: 1em; width: 60%; height: 100%; }
.news-slider .text-content p { margin: 1em 0; }
.news-slider .text-content a.button-link { padding: 0.25em 0.5em; position: absolute; bottom: 1em; right: 1em; }
.news-slider .image-content { line-height: 0; }
.news-slider .image-content img { max-width: 100%; }
.news-slider .news-pager { text-align: right; display: block; margin: 0.2em 0 0; padding: 0; list-style: none; }
.news-slider .news-pager li { display: inline-block; padding: 0.6em; margin: 0 0 0 1em; }
.news-slider .news-pager li.sy-active a { color: #31ace2; }
.news-slider .news-pager li a { font-weight: 500; text-decoration: none; display: block; color: #222; }

@media only screen and (max-width: 1330px) {
footer .container { padding: 40px 20px 10px 20px; }
}
@media only screen and (max-width: 1190px) {
nav .container { padding: 20px; background-color: #fff; text-align: right; }
.nav { background-color: #999; }
.active { display: block; }
a.toggleMenu { text-align: right; padding: 0; position: relative; line-height: 0.5em; }
a.toggleMenu span.bars { float: none; display: inline-block; position: relative; }
a.toggleMenu span.bars span { display: block; width: 50px; height: 5px; margin: 6px 0; border-radius: 6px; background-color: #c70122; transition-property: opacity, transform; transition: 1s; }
a.toggleMenu span.bars.aktiv span:nth-child(1) { transform: translateY(11px) rotate(-45deg); }
a.toggleMenu span.bars.aktiv span:nth-child(2) { opacity: 0; }
a.toggleMenu span.bars.aktiv span:nth-child(3) { transform: translateY(-11px) rotate(45deg); }
.nav { flex-direction: column; position: static; }
.nav > li { width: 100%; margin: 0; border: 0; text-align: left; }
.nav li a { background-color: #999; padding: 20px; border-bottom: 1px solid #fff; }
.nav li a:hover { transform: scale(1); background-color: #c00; }
.box25 { width: 31%; }
.gross { font-size: 3em; }
}
@media only screen and (max-width: 950px) {
header .container { padding: 0; }
.flex { flex-direction: column; }
.box50, .box60, .box40, .box30 { width: 100%; }

footer p { margin: 0 0 20px 0; line-height: 2.3em; }
ul.fusslist li a { line-height: 2.3em; }
h1 { font-size: 1.8em; }
h2 { font-size: 1.5em; }
h3 { font-size: 1.3em; }
.big { font-size: 1.2em; }
}
@media only screen and (max-width: 680px) {
.box25 { width: 48%; }
h1 { font-size: 1.4em; }
h2 { font-size: 1.3em; }
h3, .big { font-size: 1.2em; }
.gross { font-size: 2.4em; }
.bild { float: none; margin: 0 0 30px 0; max-width: 100%; }
.news-slider .text-content { padding: 5px; }
.news-slider .text-content p { font-size: 0.87em; }
}
@media only screen and (max-width: 540px) {
body { word-wrap: break-word; }
.flex2 { flex-direction: row; }
.box25 { width: 100%; }
ul.tx { margin: 0 0 30px 20px; }
.right { float: none; }
.gross { font-size: 2em; }
.news-slider .text-content p { font-size: 0.75em; }
}