@charset "UTF-8";
/* 
CSS Stylesheet by dialog im netz
display: flow-root;
für iframe,canvas, video, embed, audio, object: 
object-fit: [wie background-size] fill | contain | cover | none
object-position: [wie background-position] top | center | left | px | %
h2[id],
.anchor-target  { scroll-margin-top: 50px; }
*/

@font-face {
	font-family: 'myriad';
	src:
		url('/fonts/myriad.woff2') format('woff2'),
		url('/fonts/myriad.woff') format('woff');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'myriad';
	src: 
		url('/fonts/myriadbold.woff2') format('woff2'),
		url('/fonts/myriadbold.woff') format('woff');
	font-weight: bold;
	font-style: normal;
}

@font-face {
	font-family: 'myriadc';
	src: 
		url('/fonts/myriadsemicn.woff2') format('woff2'),
		url('/fonts/myriadsemicn.woff') format('woff');
	font-weight: normal;
	font-style: normal;
}
@font-face {
	font-family: 'myriadc';
	src: 
		url('/fonts/myriadsemicnbold.woff2') format('woff2'),
		url('/fonts/myriadsemicnbold.woff') format('woff');
	font-weight: bold;
	font-style: normal;
}

@font-face {
	font-family: 'ascript';
	src: 
		url('/fonts/ascript.woff2') format('woff2'),
		url('/fonts/ascript.woff') format('woff');
	font-weight: normal;
	font-style: normal;
}

:root {
--rot: #ea6e2e;
--blaugruen: #6297af;
--hellblau: #b2cedb;
}
.red {
color: var(--rot);
}
*[id]{
scroll-margin-top: 30px;
}
html {
font: 1em/160% myriad,arial,sans-serif;
scroll-behavior: smooth;
}
html,blockquote,body,div,dl,dt,dd,fieldset,form,
h1,h2,h3,h4,h5,h6,ol,p,ul,li,center,hr,pre,img,
table,tr,td,th,thead,tbody,tfoot,caption  {
margin:0;
padding:0;
border:0 none;
outline: none;
box-sizing: border-box;
}

div,
nav,
main,
section,
header,
article,
aside,
footer {
display: block;
position: relative;
box-sizing: border-box;

}

body {
color: black;
background-color: var(--hellblau);
overflow: hidden;
overflow-y: scroll;
}
a {
color: black;
border:none;
outline: none;
}
a:hover,
a:focus {
outline: none;
}
a.anchor {
display: block;
position: relative;
top: -200px;
visibility: hidden;
}
#logo {
position: absolute;
margin: 1em  0 0 30px;
font-size: 1.6rem;
color: white;
z-index: +1000
}
#logo span {
display: none;
}

p,ul,h2,h3 {
margin: 0 0 1em 0
}
h1 {
 display: block;
 font-family: ascript, script;
 font-weight:normal;
 text-align: center;
 color: white;
 font-size: 2.5rem;
 padding: 20px 10px 10px;
 margin: 0 -20px 1rem;
 line-height: 100%;
 background-color: var(--blaugruen);
}
h2 {
margin: 2rem 0 1rem;
font-size: 1.3rem
}

p:empty {
display: none
}
p,li {
hyphens: auto;
}
table {
border-collapse: collapse
}
.tc {
text-align: center
}
.tr {
text-align: right
}
td {
vertical-align:top
}
ul,ol {
padding-left: 16px
}
li {
}
.hide, .h0 {
display:none
}
img{
display: block;
border: none;
height: auto;
}
iframe {
width: 100%;
height: 360px;
margin: 0 0 2rem;
border: 1px solid #e0e0e0
}
sub {
position: relative; 
font-size: .7rem; 
bottom: -4px;
font-weight: normal;
}
sup {
position: relative; 
font-size: .7rem;  
top: -2px;
font-weight: normal;
}
hr {
 border-top: 1px solid #909090;
 height: 1px; 
 margin: 1rem 0;
 width: 100%; 
}


.clear {
clear: both
}
#content img:first-of-type {
 
}
#content .bildlinks,
#content .floatleft {
max-width: calc(50% - 10px);
float: left;
margin: 0 20px 5px 0
}
#content .bildrechts,
#content .floatright {
max-width: calc(50% - 10px);
float: right;
margin: 0 0 5px 20px
}

.bildmitbu {
	text-align: center;
	max-width: 400px;
	margin: 20px auto 30px;
	padding: 0 20px;
}

.bildmitbu img {
 display: block; 
 margin: 0 auto .5rem; 
}
.zweibilder {
float:left;
margin-bottom: 0;
width: calc(50% - 5px)
}

.klein{
font-size: .8rem;
}
.rot,
.red {
color: red
}
div.showbigdiv {
position: fixed;
top: 0;
right: 0;
bottom: 0;
left: 0;
background: white url('/img/style/blank.gif') center center no-repeat; 
background-size: contain; 
transition: .8s;
opacity: 0;
z-index: -1;
}
div.showbigdiv a {
display: block; 
width: 100%;
height: 100%;
}
img.showbig{
cursor: pointer;
}
::selection{
color: black;
background-color: #ffff00
}

/* DIVS */ 
#wrapper {
margin:0 auto;
padding: 0;
width: 1600px;
height:auto;
min-height: calc(100vh - 200px);
background-color: var(--hellblau);
}
#pre-wrap,
#post-wrap {
position: fixed;
top: 0;
left: 0; 
bottom: 0;
width: calc(50% - 800px);
background: transparent linear-gradient(to right, #41768e 0%, var(--hellblau) 100%) 0 0 no-repeat; 
}
#post-wrap {
left: auto;
right: 0;
background: white linear-gradient(to left, #41768e 0%, var(--hellblau) 100%) 0 0 no-repeat; 
}
#head {
width: 100%;
height: auto;
overflow: hidden;
background-color: var(--blaugruen);
margin: 0 auto;
display: flex;
flex-direction: row;
flex-wrap: nowrap;
justify-content: space-between;
align-items: stretch; 
align-content: stretch; 
z-index: +2
}
#headerblock {
position: relative; 
margin: 0 auto;
width: 100%;
max-width: 1600px;
padding: 0;
background-color: transparent;
display: flex;
flex-direction: row;
flex-wrap: wrap;
justify-content: space-between;
align-items: stretch; 
align-content: stretch; 
}
#headerblock img {
display: block;
width: calc(100% - 40px);
max-width: 700px;
margin: 20px 20px 10px;
}
#headerblock p {
text-align: right; 
font-style: italic;
margin-right: 20px;
color: white
}
#headerblock a {
color: white
}
#logo {
position: relative;
margin: 0;
left: 10px;
width: auto;
height: auto;
min-width: 350px;
}
#logo h1 {
display: none;
}
#headright {
 width: calc(100% - 400px);
 min-width: 400px;
 text-align: right
}
#headright img {
display: inline-block;
}

#pre-head,
#post-head {
width: calc(50% - 800px);
background: transparent linear-gradient(to left, var(--blaugruen) 0%, #41768e 100%) 0 0 no-repeat; 
}

#post-head {
 background: transparent linear-gradient(to right, var(--blaugruen) 0%, #41768e 100%) 0 0 no-repeat; 
}
#contentwrapper {
width: 1600px;
display: flex;
flex-direction: row;
flex-wrap: nowrap;
justify-content: flex-start;  
/* flex-start flex-end center space-between space-around space-evenly */
align-items: stretch; 
/* flex-start flex-end center stretch */
}
#left {
width: 400px;
display: flex;
flex-flow: column nowrap;
justify-content: space-between;
padding: 50px 0 40px 30px;
margin:0;
}

#content{
padding: 50px 80px 0;
display: inline-block;
width: calc(100% - 300px);
min-height: calc(100vh - 20vw - 90px);
}
#content img {
max-width: 100%;
margin-bottom: .5em
}
#innercontent {
 padding: 0 20px 20px;
  background-color: white;
  min-height: calc(100vh - 290px);
}

#right {

padding: 50px 30px 0 0
}

#newslist {
margin: 0 0;
padding: 0 10px 10px;
background-color: white;
}
#newslist h3 {
 background-color: var(--rot);
 color: white; 
 text-transform: uppercase;
 font-weight: normal;
 text-align: center;
 letter-spacing: .5rem;
 margin: 0 -10px 1em;
 padding: 2px 0 0;
 
}
#newslist table {
width: 100%;
}
#newslist tr td:first-of-type {

}
#newslist tr td:last-of-type {
text-align: right;
padding-left: 20px
}
#newslist a {
font-family:myriadc; 
display: block;
text-decoration: none;
margin:  0 -10px;
padding: 7px 10px;
line-height: 100%;
}
#newslist a.grey {
 background-color: #e5e5e5
}
#newslist a:hover, 
#newslist a:active,
#newslist a:focus,
#newslist a.ac {
 background-color: var(--rot);
 color: white;
}
#newslist a strong {
 font-weight: normal
}
.newsarticle {
clear: both;
padding: 1rem 0;
border-top: 1px solid #909090
}
.newsarticle:first-of-type {
 border: none
}
.showdate {
 display: block;
 font-size: 11px;
 color: var(--hellblau);
 text-align: right;
}
#termineliste {
 background-color: #f9c29d; 
 margin: 1rem 0 .5rem;
 font-weight: bold;
 text-align: Center
}

footer {
clear:both;
width: 100%;
padding: 1em 0;
font-size: .9rem;
color: #999;

display: flex;
flex-direction: row;
flex-wrap: nowrap;
justify-content: space-between;
align-items: flex-start; 
align-content: stretch; 
} 
footer p {
line-height: normal;
margin: 0 20px
}


/* FORMULAR */
form {
background-color: #e0e0e0;
padding: 10px;
margin: 0 0 2rem
}
label, input, textarea, select, button {
box-sizing: border-box;
margin:0 0 10px 0;
display: block;
font: 1em/160% myriad,arial,sans-serif;
}
input, textarea,select {
border-width: 1px; 
padding: 2px 4px;
width: 100%;
}
input:after,
textarea:after {
clear: both; 
content:'&nbsp;';
height: 0; 
overflow: hidden; 
visibility: hidden
}
input[type="checkbox"],
input[type="radio"] {
display: block;
float:left; 
clear: left; 
width: 20px; 
margin: 5px 15px 0 0;
background-color: transparent
}
label {
 width: 180px;
 margin: 0 20px 0 0;
 float: left; 
 clear: left
}
select,
input[type="text"],
input[type="tel"],
input[type="email"],
#formantrag textarea,
label.long {
 width: calc(100% - 200px)
}
select {
 max-width: 100px;
}
label.long {
 clear: none;
}
form > div {
display: flot-root; 
clear: both;
}
#form_amount {
 width: auto;
 max-width: 200px
}
#form_other {
width: calc(100% - 20px);
padding: 0 10px;
margin-right: 5px;
text-align: center;
display: inline-block;
}
#form_other_wrapper {
height: 0; 
width: 130px;
transition: .5s;
overflow: hidden; 
}
.showinput {
 height: 1.5rem!important; 
}
input.short {
width: 80px;
}
input:hover,
textarea:hover,
select:hover {
background-color: #ffffff;
}
/* <input id="bname" required> */
input:required + label::before {
position: absolute;
left: 300%;
content: "★";
color: red;
}
input:required:valid + label::before {
content: "✔";
color: green;
}

button {
 display: block; 
 clear: both; 
 width: 180px;
 padding: 5px 10px;
 font-weight: bold;
}
button:hover,
button:focus {
}
button:active {
}

.meldung,
.meldungok,
#meldung,
#meldungok {
font-weight: bold;
font-size: 1.3rem;
text-align:left ;
z-index: 101
}

#meldung,
#meldungok,
#adminmeldung {
font-size: 1rem;
padding: 10px;
border: 1px solid black;
background-color: red;
color: white;
font-weight: bold; 
border-radius: 10px;
margin: -1.5em 0 0 0;
position: fixed; 
top: 50px;
right: 10%;
opacity: 0;
animation: fadeout 8s;
}

@keyframes fadeout {
0% {opacity: 1;}
75% {opacity: 1;}
100% {opacity: 0;}
}

.meldungok,
#meldungok {
opacity: 0;
animation: fadeOut 5s;
}
@keyframes fadeOut {
0% { opacity: 1; }
70% {opacity: 1;}
100% { opacity: 0; }
}

.searchword,
mark {
background-color: yellow
}


/* SLIDESHOW */

.container {
margin: 0 auto;
background-color: #000;
height: 500px;
outline: 5px solid red

}
.slidesjs-container {

}
/* Prevent the slideshow from flashing on load */
#slides {
display: none
}

/* Center the slideshow */

/* Show active item in the pagination */
.slidesjs-pagination {
display: none;
}
.slidesjs-pagination .active {
color:red;
}
.slidesjs-navigation {
opacity: .1;
transition: .4s
}
.slidesjs-navigation:hover {
opacity: 1;
}
.slidesjs-previous,
.slidesjs-next{
position: absolute;
display: inline-block;
padding: 5px 10px;
color: var(--hellblau);
bottom: 0px;
left: 0;
font-size: 30px;
text-decoration: none;
z-index: 111
}
.slidesjs-next {
right: 0;
left: auto;
}
#rightopener{
 display: none;
}

@media screen and (min-width: 1601px){ /* min-width */
.slidesjs-previous,
.slidesjs-next{
top: 225px
}

}
@media screen and (max-width: 1600px){
#head {
min-height: 100px;
}
#logo {
}
#pre-wrap,
#post-wrap {
display: none;
}
#wrapper {
width: 100%;
}
#left {
 width: calc(50px + 22vw);
 width: 300px;
 min-width: 300px;
 padding: 50px 0 40px 20px;
}
#content{
 padding: 50px 30px 0;
}
#contentwrapper {
width: 100%;
}
h1 {
 margin: 0 -1.2vw 1rem;
}
#innercontent {
 padding: 0 1.2vw .5rem;
 min-width: 400px;
}

}
@media screen and (max-width: 1070px){
 
#right {
position: fixed;
top: 0;
overflow: visible; 
left: -300px;
max-width: 300px;
padding:0;
min-height: 300px;
height: 100vh;
transition: .5s;
z-index: 101
}
#rightopener {
display: block;
text-align: center; 
position: absolute; 
top: 20px;
right: -80px; 
width: 80px;
padding: 5px 0;
font-weight:bold; 
border-top-right-radius: 10px;
border-bottom-right-radius: 10px;
background-color: white;
box-shadow: 0px 5px 10px rgba(0,0,0,.5); 
}
#newsright {
 max-height: 100%;
 overflow: auto
}
#right.open {
 left: 0;
}

}
@media screen and (max-width: 850px){

#content .bildlinks,
#content .floatleft,
#content .bildrechts,
#content .floatright  {
max-width: 100%;
}

}
@media screen and (max-width: 680px){
/* synchronisieren mit nav.css */
#wrapper {
display: block;
}
#contentwrapper {
display: block
}
#left {
display: block ;
width: 100%;
max-height: 0;
min-height: 0;
padding: 0;
background-color: lightgrey
}
#content {
display: block;
width: 100%;
margin: 0 
}
#right {

}

#content .bildlinks,
#content .floatleft,
#content .bildrechts,
#content .floatright  {
max-width: 100%;
width: 100%;
}
}
@media print {
a::after{
content: " (" attr(href) ") ";
}
footer,
#nav{
display: none
}
}