body,form,figure{margin:0;padding:0}img{border:0}header,footer,nav,section,aside,article,figure,figcaption{display:block}body{font-size:100.01%}select,input,textarea{font-size:99%}#container,.inside{position:relative}#main,#left,#right{float:left;position:relative}#main{width:100%}#left{margin-left:-100%}#right{margin-right:-100%}#footer{clear:both}#main .inside{min-height:1px}.ce_gallery>ul,.content-gallery>ul{margin:0;padding:0;overflow:hidden;list-style:none}.ce_gallery>ul li,.content-gallery>ul li{float:left}.ce_gallery>ul li.col_first,.content-gallery>ul li.col_first{clear:left}.float_left,.media--left>figure{float:left}.float_right,.media--right>figure{float:right}.block{overflow:hidden}.media{display:flow-root}.clear,#clear{height:.1px;font-size:.1px;line-height:.1px;clear:both}.invisible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.custom{display:block}#container:after,.custom:after{content:"";display:table;clear:both}
@media (max-width:767px){#wrapper{margin:0;width:auto}#container{padding-left:0;padding-right:0}#main,#left,#right{float:none;width:auto}#left{right:0;margin-left:0}#right{margin-right:0}}img{max-width:100%;height:auto}.audio_container audio{max-width:100%}.video_container video{max-width:100%;height:auto}.aspect,.responsive{position:relative;height:0}.aspect iframe,.responsive iframe{position:absolute;top:0;left:0;width:100%;height:100%}.aspect--16\:9,.responsive.ratio-169{padding-bottom:56.25%}.aspect--16\:10,.responsive.ratio-1610{padding-bottom:62.5%}.aspect--21\:9,.responsive.ratio-219{padding-bottom:42.8571%}.aspect--4\:3,.responsive.ratio-43{padding-bottom:75%}.aspect--3\:2,.responsive.ratio-32{padding-bottom:66.6666%}
#colorbox,#cboxOverlay,#cboxWrapper{position:absolute;top:0;left:0;z-index:9999;overflow:hidden;-webkit-transform:translate3d(0,0,0)}#cboxWrapper{max-width:none}#cboxOverlay{position:fixed;width:100%;height:100%}#cboxMiddleLeft,#cboxBottomLeft{clear:left}#cboxContent{position:relative}#cboxLoadedContent{overflow:auto;-webkit-overflow-scrolling:touch}#cboxTitle{margin:0}#cboxLoadingOverlay,#cboxLoadingGraphic{position:absolute;top:0;left:0;width:100%;height:100%}#cboxPrevious,#cboxNext,#cboxClose,#cboxSlideshow{cursor:pointer}.cboxPhoto{float:left;margin:auto;border:0;display:block;max-width:none;-ms-interpolation-mode:bicubic}.cboxIframe{width:100%;height:100%;display:block;border:0;padding:0;margin:0}#colorbox,#cboxContent,#cboxLoadedContent{box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box}#cboxOverlay{background:#000;opacity:.9;filter:alpha(opacity = 90)}#colorbox{outline:0}#cboxContent{margin-top:20px;background:#000}.cboxIframe{background:#fff}#cboxError{padding:50px;border:1px solid #ccc}#cboxLoadedContent{border:5px solid #000;background:#fff}#cboxTitle{position:absolute;top:-20px;left:0;color:#ccc}#cboxCurrent{position:absolute;top:-20px;right:0;color:#ccc}#cboxLoadingGraphic{background:url(../../assets/colorbox/images/loading.gif) no-repeat center center}#cboxPrevious,#cboxNext,#cboxSlideshow,#cboxClose{border:0;padding:0;margin:0;overflow:visible;width:auto;background:0 0}#cboxPrevious:active,#cboxNext:active,#cboxSlideshow:active,#cboxClose:active{outline:0}#cboxSlideshow{position:absolute;top:-20px;right:90px;color:#fff}#cboxPrevious{position:absolute;top:50%;left:5px;margin-top:-32px;background:url(../../assets/colorbox/images/controls.png) no-repeat top left;width:28px;height:65px;text-indent:-9999px}#cboxPrevious:hover{background-position:bottom left}#cboxNext{position:absolute;top:50%;right:5px;margin-top:-32px;background:url(../../assets/colorbox/images/controls.png) no-repeat top right;width:28px;height:65px;text-indent:-9999px}#cboxNext:hover{background-position:bottom right}#cboxClose{position:absolute;top:5px;right:5px;display:block;background:url(../../assets/colorbox/images/controls.png) no-repeat top center;width:38px;height:19px;text-indent:-9999px}#cboxClose:hover{background-position:bottom center}
@font-face {
    font-family: 'open sans';
            src: url('/files/grafik/o.woff') format('woff');
}
body,
div,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
code,
ol,
ul,
li,
dl,
dt,
dd,
figure,
table,
th,
td,
form,
fieldset,
legend,
input,
textarea {
    margin:0;
    padding:0;
}
table {
    border-collapse:collapse;
    border-spacing:0;
}
caption,
th,
td {
    text-align:start;
    /* see #4596 */
    	vertical-align:top;
}
abbr,
acronym {
    border-bottom:1px dotted #666;
    font-variant:normal;
    cursor:help;
}
blockquote,
q {
    quotes:none;
}
fieldset,
img {
    border:0;
}
ul {
    list-style-type:none;
}
sup {
    vertical-align:text-top;
}
sub {
    vertical-align:text-bottom;
}
del {
    text-decoration:line-through;
}
ins {
    text-decoration:none;
}
header,
footer,
nav,
section,
aside,
article,
figure,
figcaption {
    display:block;
}
body {
    font:17px 'Open Sans',Arial,sans-serif;
    color:#3a3a3a;
}
input,
button,
textarea,
select {
    font-size:99%;
    font-family:inherit;
    font-weight:inherit;
}
pre,
code {
    font-family:Monaco,monospace;
}
h1,
h2,
h3,
h4,
h5,
h6 {
    font-size:100%;
    font-weight:normal;
    color:#035090;
}
h1 {
    font-size:31px;
}
h2 {
    font:25px 'Open Sans',sans-serif;
}
h3 {
    font-size:1.5em;
    /* 18px */;
}
h4 {
    font-size:1.3333em;
    /* 16px */;
}
table {
    font-size:inherit;
}
caption,
th {
    font-weight:bold;
}
a {
    text-decoration:underline;
    color:#035090;
}
h1,
h2,
h3,
h4,
h5,
h6 {
    margin-top:1em;
}
h1,
h2,
h3,
h4,
h5,
h6,
p,
pre,
blockquote,
table,
ol,
ul,
form {
    margin-bottom:12px;
    /* Should match the font size */;
}
.k63 {
    margin-top:2.7em;
    color:#5C97C5;
}
.k63 a {
    color:#5C97C5;
}

/* colors of the nav */

:root {

	--maincolor: #034A80;
	
  --nav-color:#034A80;
  --nav-active-color:#FF8C2E;
  --nav-mobile-active-color:var(--maincolor);
  --nav-mobile-active-border-color:var(--maincolor);
  --nav-mobile-btn-clr:var(--maincolor);
  --skip-focus-border-color:var(--maincolor);
  --nav-font-weight: 400;
  --nav-burger-line-color:var(--maincolor);
}


#header {
    height:unset;
}
  

.nav-is-desktop #header .mod_navigation {
	float: unset;
	margin-top: unset;
	overflow: visible;
}

.nav-is-desktop .level_1 > li {
	padding-right: 0 !important;
}

#header .mod_navigation a, 
#header .mod_navigation strong {
	margin-right: 0;
	font-size: 18px;
}

#header .mod_navigation a.submenu, 
#header .mod_navigation strong.submenu {
	margin-right: 1em;
}

.nav-is-desktop .navigation-main .level_1 {
  gap: 0 .8rem;
}

.nav-is-desktop .btn-toggle-submenu {
  transform: translateY(-3px);
  scale: 0.7;
}

.nav-is-desktop #header .inside {
  grid-template-columns: 180px auto;
}

.nav-is-mobile #header .inside {
  grid-template-columns: 200px auto;
}

.nav-is-desktop #header .logo {
  float:unset;
}

.nav-is-mobile .nav-burger {
  margin-left: auto;
}

.nav-is-mobile .mod_navigation.nav-wrapper {
  place-content: center;
}

.mod_navigation a:focus-visible, 
.mod_navigation button:focus-visible {
  border: 1px solid var(--nav-active-color);
  background-color: #eee!important;
}


/* Bildschirm.css */
body {
    background-color:#ffffff;
}
#wrapper {
    width:100%;
}
#header {
	width: 100%;
	height: 234px;
	min-width: 70%;
	max-width: 100%;
	top: 0;
	position: relative;
}
#header .inside {
	width: 96%;
	max-width: 1190px;
	height: 234px;
	background-color:#ffffff;
	margin-right: auto;
	margin-left: auto
}
#header .inside,
.mod_navigation {
  overflow: visible !important;
  z-index: 9999 !important;
}
#kopfbild {
	width: 96%;
	max-width: 1190px;
	margin-right: auto;
	margin-left: auto
}
#kopfbild img {
    border-radius: 30px;
}

.mod_navigation {
    margin-top:107px;
    margin-left:20px;
    z-index:5199;
}
#container {
    width:96%;
    min-height:500px;
    max-width:1190px;
    margin-right:auto;
    margin-left:auto;
    padding-bottom:1em;
    background-color:#fff;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
#main {
    min-height:680px;
    padding-bottom:2em;
}
#main .rte li {
    margin-left:1.1875em;
    padding-bottom:.4em;
    list-style-type:disc;
    list-style-image:url("../../files/grafik/dot.png");
}
#footer {
    width:98%;
    min-height:16em;
    max-width:1180px;
    margin-right:auto;
    margin-left:auto;
    padding-top:1.14em;
    padding-bottom:2em;
    background-color:#D4DBE0;
    font-size:15px;
    color:#035090;
}
#footer a {
    text-decoration:underline;
    color:#115A97;
}
#footer a:hover {
    color:#5C97C5;
}
.grid3,
.grid4,
.grid6,
.grid66,
.grid8,
.grid9,
.grid12,
.grid88,
.grid122,
.grid33 {
	float: left;
	margin-top: 1%;
	margin-right: 1%;
	margin-bottom: 1%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box
}

.grid12 {
	width: 95%;
	margin-right: 2.5%;
	margin-left: 2.5%;
	padding: 0
}

.grid9 {
	width: 69%;
	min-height: 204px;
	padding: 1%
}

.grid8 {
	width: 63%;
	min-height: 204px;
	padding: 1% .5% 1% 2.5%
}

.grid6 {
	width: 44.5%;
	min-width: 44%;
	margin-top: .5%;
	margin-right: 2.5%;
	margin-left: 2.5%
}

.grid4 {
	width: 28.3%;
	min-width: 240px;
	max-width: 100%;
	margin-right: 2.5%;
	margin-left: 2.5%;
	padding: 2% 0 0
}

.grid3 {
	width: 22.5%;
	min-width: 240px;
	max-width: 100%;
	padding: 1% 1% 1% 2.5%
}

.leer {
    height:0px;
    margin-top:.5em;
    margin-bottom:.1em;
}
#footer .grid3 {
    width:27%;
    padding-right:0;
    padding-left:2.4%;
}
#footer .grid2 {
    width:17%;
    margin-right:2%;
    padding-right:2%;
    padding-left:2%;
}
#footer .grid6 {
    width:45%;
    margin-bottom:1em;
    padding-right:1%;
    padding-left:1%;
    margin-top:0%;
}
.footer2 {
    text-align:left;
}
.grid4 .image_container {
    margin-top:2%;
    margin-bottom:3%;
}
.start h2 {
    text-transform:uppercase;
}
.start6 {
    width:46%;
    margin:1.2% 2%;
    padding-right:.5%;
    padding-left:.5%;
    background-color:#f7f7f7;
    border-top:3px solid #878787;
    line-height:20px;
    border-bottom:3px solid #878787;
}

.cta a,
.start a{
    float:right;
    clear:both;
    padding:.44em .89em;
    background-color:#004488;
    border:1px solid #004488;
    border-radius:6px;
    font-size:18px;
    text-decoration:none;
    color:#ffffff;
    behavior:url('assets/css3pie/1.0.0/PIE.htc');
}
#main img {
    border-radius:0.74em;
    margin-bottom: 1em;
}
.cta a:hover, .start a:hover {
    background-color:#D4DBE0;
    border:1px solid #004488;
    border-radius:6px;
    color:#004488;
    behavior:url('assets/css3pie/1.0.0/PIE.htc');
    transition: background 0.3s ease-out;
    -webkit-transition: background 0.3s ease-out;
    -moz-transition: background 0.3 ease-out;
    -o-transition: background 0.3 ease-out;
}
.ce_accordion {
    cursor:pointer;
}
.ce_accordion .toggler {
    min-height:1.4em;
    margin-bottom:.2em;
    padding:.4em;
    vertical-align:middle;
    border-bottom:2px solid #EAEFF2;
    font-size:17px;
    color:#035090;
    text-transform:uppercase;
    outline:none;
}
.ce_accordion .accordion div {
    margin-bottom:.4em;
    padding:.2em;
    font-size:15;
    color:#292929;
}
.ce_accordion .toggler:before {
    margin-right:4px;
    font:110% fontawesome;
    color:#035090;
    content:"\f107";
}
.toggler.ui-state-active:before {
    max-width:300px;
    content:"\f106";
}
.handorgel__header__button::before {
    content: '+'; /* Standard: Plus-Zeichen */
    display: inline-block;
    width: 1.5em; /* Platz für das Icon */
    font-weight: bold;
    font-family: monospace; /* Sorgt für gleiche Breite von + und - */
}

/* Zustand, wenn das Akkordeon geöffnet ist */
.handorgel__header--open .handorgel__header__button::before {
    content: '−'; /* Minus-Zeichen (U+2212 für bessere Optik) */
}
form#kontaktformular {
    margin-top:1em;
}
#kontaktformular input,
#kontaktformular textarea {
    width:98%;
    margin-top:.1em;
    margin-bottom:.7em;
    margin-left:.4em;
    border:1px solid #cfcfcf;
    padding-top:5px;
    padding-bottom:5px;
}
#kontaktformular .submit {
    width:98%;
    margin-top:.5em;
    font-size:1em;
        padding-top:6px;
    padding-bottom:6px;
}
#kontaktformular .submit:hover {
    background-color:#D4DBE0;
    behavior:url('assets/css3pie/1.0.0/PIE.htc');
    transition: background 0.3s ease-out;
    -webkit-transition: background 0.3s ease-out;
    -moz-transition: background 0.3 ease-out;
    -o-transition: background 0.3 ease-out;
}
.sprachen {
	top: 0.94em;
	position: absolute;
	right: 0;
	float: right;
	margin-top: 1.4em;
	text-align: right;
	text-transform: uppercase
}
.mod_changelanguage ul {
    float:right;
}
.mod_changelanguage li {
    float:left;
}
.mod_changelanguage a {
    text-decoration:none;
}
.mod_changelanguage .lang-en {
    margin-left:1px;
    margin-right:1px;
}
.mod_changelanguage .lang-de {
    margin-left:1px;
    margin-right:1px;
}
li .lang-de {
    display:block;
    margin-top:4px;
    padding-top:0;
    padding-right:5px;
    padding-left:5px;
    background-repeat:no-repeat;
    background-size: contain; /* Bildgröße automatisch anpassen */
    background-position: center; /* Bild zentrieren */
    width: 30px; /* Breite der Flagge festlegen */
    height: 20px; /* Höhe der Flagge festlegen */
    text-indent: -9999px;
}
li .lang-en {
    display:block;
    margin-top:4px;
    padding-top:0;
    padding-right:5px;
    padding-left:5px;
    background-repeat:no-repeat;
    background-size: contain; /* Bildgröße automatisch anpassen */
    background-position: center; /* Bild zentrieren */
    width: 30px; /* Breite der Flagge festlegen */
    height: 20px; /* Höhe der Flagge festlegen */
    text-indent: -9999px;
}

/* Navigation.css */
.logo {
    height:auto;
    position:relative;
    margin-top:-0.8em;
    margin-bottom:-6.4em;
    margin-left:1em;
    padding-top:0;
    max-width: 437px;

}
.tele {
    right:.8em;
    top:2em;
    position:absolute;
    margin-right:.4em;
    padding-bottom:4em;
    text-align:right;
    font-weight:normal;
    z-index:444;
}
.tele a {
    text-decoration: none;
    padding-bottom:0.3em;
}
.skontakt {
    font-size:17px;
    margin-top:.3em;
    margin-right:7em;
    z-index:66466;
    text-align: center;
}
.skontakt img {
    width:20px;
    height:auto;
    padding-right:5px;
    padding-left:4px;
}
.cookiebar {
    font-size: 12px;
}
.cookiebar button {
    background-color:#034a80;
}
#kontaktformular .check input {
    width:4%;
    margin-top:4px;
}
.cookiebar button:hover {
    background-color:#D4DBE0;
    color:#034a80;
}
/* --- Ende des Standard-CSS --- */
.content-gallery ul li {
    padding-left:1%;
    width: 32.3%;
}
.mod_navigation {
    /* Erzwingt die grüne Position und überschreibt die "unset" Regel */
    margin-top: 107px !important; 
    margin-left: 20px;
}

/* --- TABLET BEREICH (min-width: 768px UND max-width: 1024px) --- */
@media only screen and (min-width: 768px) and (max-width: 1024px) {
    h1 { font-size:26px; }
    h2 { font-size:21px; }
    #header { width:100%; padding-top:0; }
    #container { width:100%; }
    #footer {
        width:100%;
        min-height:16em;
        padding-bottom:1em;
        font-size:13px;
    }
    .footer2 { text-align:left; }
    /* Wichtig: Auch hier das Element mobil ausblenden oder anpassen,
       damit das Tablet-Layout nicht kaputt geht */
    .skontakt {
        display: none !important;
    }
    /* Und die Navigation auf Tablet anpassen */
    .mod_navigation {
        margin-top: 20px !important; 
    }
} /* <-- Diese Klammer schließt den Tablet-Bereich */


/* --- MOBILER BEREICH (NUR max-width: 767px) --- */
@media only screen and (max-width: 767px) {
    .skontakt {
        display: none !important;
    }
    h1 { font-size: 24px; }
    h2 { font-size: 20px; }
    #header {
        width:100%;
        height:auto;
        min-height:95px;
        padding-top:.4em;
        background-color:#fff;
    }
    .logo {
    margin-top:-0.4em;
    margin-bottom:-6.4em;
    margin-left:0.1em;
    padding-top:0;
    max-width: 267px;
}
.sprachen {
    top: 0.04em;
    margin-top:0.1em;
}
    /* Die Navigation wird hier nur für Mobil korrigiert */
    .mod_navigation {
        margin-top: 40px !important; 
    }
    #container { width:100%; }
    #footer {
        width:100%;
        min-height:40em;
        padding-bottom:1em;
        font-size:13px;
        z-index:6225;
    }
    .grid12, .grid122, .grid8, .grid6, .grid4, .grid3, .grid2 {
        float:left;
        margin-right:0;
        margin-left:0;
        padding-right:1%;
        padding-left:1%;
    }
    .grid6, .grid4, .grid8 { width:98%; }
    .footer2 { width:70%; text-align:left; }
    #footer .grid3 { width:98%; }
    #footer .grid6 { width:77%; }
} /* <-- Diese Klammer schließt den mobilen Bereich ab */

