/*******************************************/
/* Standard-HTML zurücksetzen
/*******************************************/

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,textarea,p,
blockquote,th,td {margin:0; padding:0;}
table { border-collapse:collapse; border-spacing:0; }
fieldset,img { border:0; }
address,caption,cite,code,dfn,strong,th,var { font-style:normal; font-weight:normal; }
ol,ul { list-style:none; }
caption,th { text-align:left; }
h1,h2,h3,h4,h5,h6 { font-size:100%; font-weight:normal; }
abbr,acronym { border:0; }
html {font-size: 62.5%;}
strong {font-weight: bold;}
a {text-decoration: none; color: #004D86;}
a:active, a:focus {outline: 0;}

/*******************************************/
/* Globale-Tags
/*******************************************/

* {
    box-sizing: border-box;
}

div {
    box-sizing: border-box;
}

body {
    font-size: 17px;
    color: #565656;
    font-family: 'Titillium Web', sans-serif;
    font-weight: 200;
    line-height: 135%;
    background-color: white;
}

h1 {
    color: #60c2ad;
    font-size: 48px;
    font-weight: 100;
    margin-bottom: 25px;
    margin-top: 0.5em;
    line-height: 135%;
    padding-left: 20px;

}

h2 {
    color: #60c2ad;
    font-size: 30px;
    font-weight: 100;
    padding-left: 0;
    padding-right: 20px;
    line-height: 135%;
    padding-left: 20px;
}

.content .half h2 {
    padding-left: 0;
}

strong {
    font-weight: bold;
}

a {
    color: #32b4e6;
    font-weight: 400;
}

div.mobile-icons {
    display: none;
}

p {
    margin-bottom: 0.5em;
}

h1.expander,
h2.expander {
    color: #32b4e6;
    cursor: pointer;
}

h1.expander span,
h2.expander span {
    display: inline-block;
    margin-left: 15px;
    width: 37px;
    height: 19px;
    font-family: 'Font Awesome 5 Pro';
    font-style: normal;
    font-weight: 400;
    font-display: auto;
}

h1.expander span:before,
h2.expander span:before {
    content: "\f055";
}

h1.expander.expanded span:before,
h2.expander.expanded span:before {
    content: "\f057";
}

/*******************************************/
/* Site Structur
/*******************************************/

div.content {
    width: 100%;
    max-width: 960px;
    margin: 0 auto;
    position: relative;
}

a#logo {
    position: absolute;
    left: 20px;
    top: 0px;
    width: 265px;
    height: 80px;
    background-color: transparent;
    background-image: url(/styles/images/logo.png);
    background-repeat: no-repeat;
    background-size: contain;
    z-index: 10;
    /*box-shadow: 0 0 10px rgba(0,0,0,0.4);*/
    -webkit-transition: width 1s, height 1s, background-color 0.5s, padding 1s;
    transition: width 1s, height 1s, background-color 0.5s, padding 1s;
}

header.collapsed a#logo {
    height: 70px;
    width: 165px;
    background-color: transparent;
    box-shadow: none;
}

div.intro-image {
    float: left;
    width: 100%;
    height: 550px;
}

div.intro-image-big {
    float: left;
    width: 100%;
    height: 900px;
}

header {
    width: 100%;
    height: 550px;
}

header nav {
    position: fixed;
    width: 100%;
    background-color: rgba(255, 255, 255, 0.7);
    box-shadow: 0 0 10px black;
    height: 85px;
    transition: background-color 1s;
    -moz-transition: background-color 1s;
    -webkit-transition: background-color 1s;
    z-index: 100;
}

header nav ul {
    display: block;
    float: left;
    width: 100%;
    padding-left: 280px;
    padding-top: 20px;
    transition: padding-left 1s;
    -moz-transition: padding-left 1s;
    -webkit-transition: padding-left 1s;
}

header nav .contact {
    float: right;
    text-align: right;
    padding-top: 55px;
}

header nav .contact a {
    display: inline-block;
    margin-left: auto;
    color: #000000;
}

header.collapsed nav .contact {
    padding-top: 5px;
}

header a#mini-logo {
    transition: opacity 1s ease-out;
    -moz-transition: opacity 1s ease-out;
    -webkit-transition: opacity 1s ease-out;
    opacity: 0;
    position: absolute;
    right: 0;
    top: -200px;
    height: 60px;
    max-width: 300px;
}

header.collapsed nav {
    background-color: white;
    height: 70px;
}

header.collapsed nav ul {
    padding-left: 150px;
    padding-top: 15px;
}

header.collapsed a#mini-logo {
    opacity: 1;
    top: 0;
}

header.collapsed a#mini-logo img {
    width: 100%;
}

header nav ul li {
    float: left;
    display: block;
}

header nav ul li a {
    float: left;
    display: block;
    padding: 10px;
    color: black;
    font-weight: 400;
}

header div.overlay {
    position: absolute;
    top: 180px;
    right: 20px;
    width: 500px;
    text-align: right;
    /*text-shadow: 1px 1px 3px rgba(0,0,0,0.4);*/

    max-width: 90% !important;
    
    /*
background-color: rgba(255, 255, 255, 0.7);
    box-shadow: 0 0 10px black;
     -webkit-transition: background-color 1s;
    z-index: 100;
*/
}


header div.overlay h1 {
    font-weight: 300;
    font-size: 48px;
}

header div.overlay h2 {
    color: white;
    font-size: 40px;
    font-weight: 300;
    line-height: 130%;
}

header div.overlay img {
    max-width: 440px;
}

section {
    float: left;
    display: block;
    width: 100%;
    padding-top: 20px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
}

section div.content a {
	color: #565656;
}

section.wideImage div.content {
    overflow: hidden;
}

footer {
    float: left;
    display: block;
    width: 100%;
    background-color: #e2e2e2;
    font-size: 15px;
    line-height: 135%;
}

footer div.full {
	float: left;
    text-align: left;
    padding: 20px;
}

footer img {
    width: 200px;
}

footer address {
    margin-top: 20px;
    margin-left: 20px;
    width: 200px;
    font-weight: 200;
}

footer a {
    color: #565656;
}

footer ul {
    margin-top: 20px;
    margin-left: 20px;
    float: right;
    display: block;
    width: 200px;
}

footer ul li {
    float: right;
    display: block;
    text-align: right;
}

footer ul.more_links {
    margin-top: 35px;
	margin-left: 20px;
    float: left;
    display: block;
    width: 100%;
}

footer ul.more_links li {
	margin-bottom:10px;
    float: left;
    display: block;
    text-align: left;
}

div.half {
    float: left;
    width: 50%;
    padding: 20px;
}

div.quart {
    float: left;
    width: 25%;
    padding: 20px;
}

div.half img {
    max-width: 100%;
}

div.full {
    float: left;
    width: 100%;
    padding: 20px;
}

div.wrapper {
    float: left;
    width: 100%;
}

div#sidr{
    display: none;
}

a#scroll_to_top {
    color: #a5a5a5;
    font-weight: 200;
    position: fixed;
    right: 20px;
    bottom: 20px;
    width: 37px;
    height: 19px;
    display: block;
    background-image: url(images/arrow-up.png);
    background-size: 37px 19px;
    background-position: top center;
    background-repeat: no-repeat;
    padding-top: 20px;
    margin-top: 5px;
}

a.button {
    display: block;
    float: right;
    background-color: #f98a2d;
    border-radius: 20px;
    color: white;
    padding: 10px 20px;
    margin-top: 30px;
    text-shadow: none;
    font-weight: 400;
}

div.responsive-video {
    position: relative;
    padding-bottom: 56.25%; /* Default for 1600x900 videos 16:9 ratio*/
    padding-top: 0px;
    height: 0;
    overflow: hidden;
    background-size: cover;

}

div.responsive-video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

div.gallery,
div.gallery_small {
    float: left;
    width: 100%;
    padding-left: 10px;
    padding-right: 10px;
}

.image-borders img {
    border: 1px solid #cbcbcb;
    border-radius: 3px;
}

div.gallery_small a {
    display: block;
    float: left;
    width: 180px;
    padding: 10px;
}

div.gallery a {
    display: block;
    float: left;
    width: 230px;
    padding: 10px;
}

div.gallery_small a img,
div.gallery a img {
    float: left;
    width: 100%;
}

span.caption {
    text-align: center;
    display: block;
    float: left;
    width: 100%;
}

section div.content ul {

}

section div.content ul li {
    list-style-type: disc;
    margin-left: 2em;
}

div.map {
    width: 100%;
    float: left;
    height: 450px;
}

section.wideImage img {
    max-width: 100%;
}

section.fullscreenimage {
    height: 450px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: transparent !important;
}

section.fullscreenimage div.content {
}

section.fullscreenimage  div.content h1 {
    margin-top: 0;
    color: white;
    text-shadow: 1px 1px 5px rgba(0,0,0,0.8);
    text-align: center;
    font-weight: 600;
}

section.fullscreenimage  div.content h2 {
    color: white;
    text-shadow: 1px 1px 4px rgba(0,0,0,0.8);
    text-align: center;
    font-weight: 400;
}


div.third {
	width: 33.33%;
	float: left;
}


img.contentimage {
    margin: 0 20px 20px 20px;
}

img.contentimage.fr-fir  {
    float: right;
}

img.contentimage.fr-fil  {
    float: left;
}

div.fancybox-title.fancybox-title-float-wrap {
    width: 100%;
    top: 102%;
}

.fancybox-title-float-wrap .child {
    max-width: 100%;
    white-space: normal;
}
div.imprint-links {
    width: 100%;
    text-align: right;
    margin-top: 15px;
    margin-bottom: 15px;
    padding-right: 15px;
    color: #FFFFFF;
}
div.imprint-links a {
    cursor: pointer;
}

div.imprint,
div.privacy {
    display: none;
    float: left;
    margin-top: 50px;
    width: 100%;
    margin-bottom: 50px;
    color: #565656;
}

a#scroll_to_top {
    color: #a5a5a5;
    font-weight: 200;
    position: fixed;
    right: 20px;
    bottom: 20px;
    width: 37px;
    height: 19px;
    display: none;
    background-image: url(/styles/images/arrow-up.png);
    background-size: 37px 19px;
    background-position: top center;
    background-repeat: no-repeat;
    padding-top: 20px;
    margin-top: 5px;
}

.wj-share-buttons-wrap {
    position: fixed;
    right: 5px;
    bottom: 15%;
}

.wj-share-buttons-wrap .share-expander {
    width: 45px;
    height: 45px;
    border-radius: 50%;
    background-color: #808080;
    color: white;
    display: block;
    text-align: center;
}

.wj-share-buttons-wrap .share-expander i {
    font-size: 32px;
    padding: 0;
    margin: 1px 0 0 -2px;
}

ul.wj-share-buttons li a svg {
    width: 26px;
    height: 26px;
}

ul.wj-share-buttons li a {
    float: none;
    margin-right: 0;
    margin-bottom: 10px;
    width: 45px;
    height: 45px;
    /*border-radius: 0;*/
}
