@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@300;500&display=swap');

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend,table, caption, tbody, tfoot, thead, tr, th, td,article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary,time, mark, audio, video {margin: 0; padding: 0; border: 0; outline: 0; font-weight: inherit; font-style: inherit;font-size: 100%; font-family: inherit; vertical-align: baseline;}
html, body, form, input, select, textarea{ font-family: "Roboto"; font-size:16px; color:#3F4143; font-weight: 200; }
html{ scroll-behavior: smooth; }
body{ line-height:1.8em; }
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }
ol, ul { list-style: none; }
blockquote, q { quotes: none; }
blockquote:before, blockquote::after, q:before, q::after { content: ''; content: none; }
table { border-collapse: collapse; border-spacing: 0; }
b,strong,.bold { font-weight:bold; }
i{font-style:italic; }
.linethrough{ text-decoration: line-through; }
img{ max-width:100%; }
.nobr{ white-space: nowrap; }
a{ text-decoration:none; color:#004179; }

.clear{ clear:both; }

td{ position:relative; }
.arrow{ border: 0.1em solid #000; border-left: 0; border-top: 0; display: block; width: 0.5em; height: 0.5em; transform: rotate(45deg); transition: ease all .6s; position: absolute; top:.6em; right:.6em; cursor:pointer; }
.topdown{ transform:rotate(225deg); top:.9em; }

.bggray{ background:#f5f6f8; }
.bgw{ background:#fff; }
.fullwidth{ max-width:1440px; margin:auto; }

.hidden{ display:none; } 

#header{ background:#8FC621; }
#header .img{ max-width:10em; background:rgba(255,255,255,.9); padding:1em 2em; }

#header2{ position: relative; display: flex; align-items: center; justify-content: center; width:100%; height:45vh; }
#header2 .hl{ background:#004179B8; padding:.7em .85em; font-size:3em; font-weight:400; z-index:2; color:#fff; }
#header2 img{ position: absolute; width:100%; height:100%; object-fit: cover; z-index:1; }

#footer2{ background:#8FC621; text-align:center; padding:2em 0; font-size:1.2em; }
#footer2 a{ text-decoration:none; color:#fff; display:nline-block; padding:1em; }

.suche{ padding:1em; }
.suche .title{ background:#004179; color:#fff; padding:1em; width:100%; box-sizing:border-box; font-size:1.1em; }
.suche .text{ background:#fff; width: 5em; line-height:1.8em; height:1.8em; display:inline-block; text-align:right; box-sizing:border-box; padding:1em; }
.suche select{ background:#fff; border:0; line-height:1.8em; height:1.8em; box-sizing:border-box; width:calc(100% - 6em); border-bottom:1px solid #eee; padding:1em; }
.suche input{ background:#fff; border:0; line-height:1.8em; height:1.8em; box-sizing:border-box; width:calc(100% - 6em); border-bottom:1px solid #eee; }
.suche select:focus, .suche input:focus{ outline: none; }
.suche button{ background:#004179; color:#fff; padding:1em; width:100%; text-align:center; border:0; outline: none; box-sizing:border-box; cursor:pointer; }

.ergebnis{ padding:1em; }
.ergebnis table{ width:100%; border-collapse:collapse; }
.ergebnis td{ padding:.5em; border:1px solid #e3e3e3; background:#fff; }
.ergebnis th{ font-weight: bold; color: #fff; background: #004179; padding: .5em; }

.confirmBG{ position:fixed; top:0; z-index:6000; background:rgba(211,211,211,.8); width:100%; height:100vh; display: flex; justify-content: center; align-items: center; }
.cpPrompt { z-index:6001; background: #fff; box-shadow: 0 0.3em 2em rgba(0,0,0,.2); border: 1px solid rgb(225,225,225); border-radius:.2em; }
.cpPromptHead { padding:.5em 1em; border-bottom:1px solid rgb(225,225,225);  font-size:1.2em; font-weight:bold; }
.cpPromptBody { padding:1em 1em; min-width:min(20em, 33vw);}
.cpPrompt .buttons{ padding:.5em 1em; border-top:1px solid rgb(225,225,225); }

.cpPromptDate { border:1px solid; border-color:#aaaaaa #777777 #777777 #aaaaaa; background:#dddddd; padding:1px;  }
.cpPromptDateBG select{ width: calc(100%); border: 0; padding: .5em; border-bottom: 1px solid #ddd; }
.cpPromptDateBG select option{ background:#f3f3f3; }
.cpPromptDateBG { background: #f3f3f3; margin: 1em; width: calc(21em); clear:both; cursor:pointer;  }
.cpPromptDateOn { width:calc(2.8em - 2px); border:1px solid #009900; height:1em; line-height:1em; height:calc(2.8em - 2px); line-height:calc(2.8em - 2px); text-align:center; float:left; border-radius: 2em; font-weight: bold; color: #fff; background: #8FC621; margin:.1em; }
.cpPromptDateMed { width:calc(2.8em - 2px); border:1px solid #ddd; height:1em; line-height:1em; height:calc(2.8em - 2px); line-height:calc(2.8em - 2px); text-align:center; float:left; border-radius: 2em; font-weight: bold; background: #ffffe8; margin:.1em; }
.cpPromptDateOff { width:calc(2.8em - 2px); background:#fff; border:1px solid #ddd; height:calc(2.8em - 2px); line-height:calc(2.8em - 2px); text-align:center; float:left; border-radius: 2em; margin:.1em;  }
.cpPromptDatePH { width:calc(3em); height:calc(3em - 2px); line-height:calc(3em - 2px); float:left; }
.buttons .button{ background:#004179; color:#fff; padding:.5em; border:0; outline: none; box-sizing:border-box; cursor:pointer;  }