:root {
/* farben */  

/*
Hauptmenue in gelb und gruen
  --aktueller_menuepunkt: rgb(186,223,61);
  --menuepunkt_hover: rgb(89,193,56);
  --aktueller-pfad: rgb(103,203,191);

*/


  --menuepunkt_hover: rgb(242,81,42);
  --aktueller_menuepunkt: rgb(246,135,18);
  --rot: rgb(227,35,46);
  --violett: rgb(157,40,97);
  --lila: rgb(109,51,126);
  --aktueller-pfad: rgb(161,166,219);
  --h_menu_bg: rgb(255,242,0);
  --h_ebene2_bg: rgb(250, 250, 250);
  --h_ebene2_bg_hover: rgb(230, 230, 230);
  --h_menu_rahmen:  rgb(204, 204, 204);
  --menulinkfarbe: rgb(41,55,122);
  --linkfarbe: rgb(242,81,42);
  --rahmenfarbe: rgb(136, 136, 136);



  --dunkelrot: rgb(191,27,44);
  --blassviolett: rgb(185,122,195);
  --helles_gelbgruen: rgb(186,223,61);
  --seegruen: rgb(63,161,155);
  --seegruen_hg: rgba(63,161,155,0.3);
  --ocker: rgb(227,173,32);
  --rotbraun: rgb(91,16,24);
  --dunkelstgruen: rgb(57,55,22);
  --dunkelpetrol: rgb(37,80,80);
  --blau: rgb(54,101,185);
  --rosa: rgb(235,172,175);
  --orange: rgb(241,70,36);
  --helles_blauviolett: rgb(161,166,219);
  --orange2: rgb(242,81,42);
  --helles_gelb: rgb(255,242,0);
  --mittleres_violett: rgb(141,25,143);
  --dunkles_gruen: rgb(39,150,60);
  --dunkles_gruen_hg: rgba(39,150,60,0.3);
  --dunkles_violett: rgb(81,41,134);
  --dunkles_gelbgruen: rgb(140,142,58);
  --mittleres_gruen: rgb(89,193,56);
  --mittleres_gruen_hg: rgba(89,193,56,0.3);
  --dunkles_blau: rgb(41,55,122);
  --dunkles_blau_hg: rgb(191,195,215);
  --seeblau: rgb(103,203,191);
  --mittleres_grau: rgb(166,166,166);
  --pink: rgb(237,18,123);
  --helles_orange: rgb(246,135,18);
}

*, *::before, *::after {
  margin:0;
  padding:0;
  box-sizing: border-box;
}


a,
a:link,
a:hover,
a:focus,
a:active,
a:visited {color: var(--linkfarbe); text-decoration: none;}

.hauptmenue a  {color:   var(--menulinkfarbe);}

a:hover, a:focus {text-decoration: underline;}

/* Grundeinstellungen */

@font-face
{
  font-family: RobotoCondensed;
  src: url('../fonts/RobotoCondensed-Regular.ttf') format('truetype');
}


@font-face
{
  font-family: RobotoCondensed;
  font-weight: bold;
  src: url('../fonts/RobotoCondensed-Bold.ttf') format('truetype');
}

@font-face
{
  font-family: LiberationSans;
  src: url('../fonts/LiberationSans-Regular.ttf') format('truetype');
}

@font-face
{
  font-family: LiberationSans-Bold;
  src: url('../fonts/LiberationSans-Bold.ttf') format('truetype');
}


@font-face
{
  font-family: LiberationSans-Italic;
  src: url('../fonts/LiberationSans-Italic.ttf') format('truetype');
}

@font-face
{
  font-family: FontAwesome;
  src: url('../fonts/fontawesome/webfonts/fa-regular-400.ttf') format('truetype');
}

@font-face
{
  font-family: FontAwesome;
  font-weight: bold;
  src: url('../fonts/fontawesome/webfonts/fa-solid-900.ttf') format('truetype');
}



body
{
 margin: 0 auto;
font-size: calc(86% + 0.4vw);
 line-height: 150%;
 font-family:RobotoCondensed;
}

h1 {font-size: 2rem; margin: 0 0 1em;}
h2 {font-size: 1.6rem; margin: 1em 0;}
h3 {font-size: 1.2rem; margin: 1em 0;}


/* ENDE Grundeinstellungen */

/* Seitenkopf */
header, footer
{
 width: 100%;
 padding-top: 10px;
 background: #fff;
 z-index: 20;
  
}

.kopflogo
{
 width: 30%;
 margin: 1% auto;
}

.wortmarke
{
 font-size: 5.5vw;
 text-align: center;
 margin-bottom: 2%;
}

/* Hauptmenue */
nav
{
 position: relative;
 width: 100%;
 background-color: var(--h_menu_bg);
 padding: 10px;
 z-index: 30;
 font-family: LiberationSans;
}


.hauptzeile
{
 position: absolute;
 left: 0; 
 width: 100%;
 display: none;
 list-style-type: none; 
 background: var(--h_menu_bg);
 padding: 2%;
}

.schnellsuche
{
  display: none;
  list-style-type: none;
}

.haupteintrag
{
 padding: .3em;
 width: 100%;
 position: relative;
}

.haupteintrag + .haupteintrag,
.perma + .haupteintrag
{ border-top: 1px solid var(--rahmenfarbe);}


.ebene2
 {
  position:relative;
  display: none;
  width: 100%;
  max-height: 0;
  overflow: hidden;
  list-style-type: none;
  background-color:  var(--menuepunkt_hover);
  border-top:0;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: baseline;
  transition: max-height 250ms ease-out,
              opacity 50ms ease-in;
 }
 
 .perma
 {display: none;}

.ebene2eintrag
{
  padding: .5em 1.5em;
  width: 100%;
}

.ebene2eintrag + .ebene2eintrag
{
  border-top: 1px solid var(--rahmenfarbe);
  margin-top:0;
}


.ebene3
 {
  position:relative;
  display: none;
  width: 100%;
  max-height: 0;
  overflow: hidden;
  list-style-type: none;
  background-color:  var(--h_menu_bg);
  border-top:0;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: baseline;
  transition: max-height 250ms ease-out,
              opacity 50ms ease-in;
 }

.ebene3eintrag
{
  padding: .5em 1.5em;
  width: 100%;
}

.ebene3eintrag + .ebene3eintrag
{
  border-top: 1px solid var(--rahmenfarbe);
  margin-top:0;
}


.hmenupfeil, .umenupfeil
{
  color: var(--menulinkfarbe);
  float:right;
  padding:5px 20px;
  cursor: pointer;
}


.nav-toggle
{display: none;}


.nav-toggle-label, .termin-toggle-label
{
  font-family: FontAwesome;
  font-size: 1.8em;
  color: #555;
  margin-left: 10px;
  cursor: pointer;
 }

.nav-toggle-label::before
{
  font-weight: bold;
  content: "\f0c9";
}


.nav-toggle:checked ~ .nav-toggle-label::before
{content: "\f068";}

.nav-toggle:checked ~ .hauptzeile,
.nav-toggle:checked ~ .schnellsuche
{ display: block;} 

nav .nav-toggle:checked ~ .kopfbild_info > aside .termin-toggle-label
{ display: none;} 

.such-toggle, 
.such-toggle-label 
 {display: none;}

#volltextsuche
{
 width:100%; 
 padding: 0 10px;
}

.suchzelle
{
  border-top: 1px solid var(--rahmenfarbe);
 /*float: right;*/
}

/* ENDE Hauptmenue */


/* Aktuelles */

.neuigkeiten
{
 display:none;
 position: relative;
 left:-62px;
 top: 10px;
 width: 100vw;
 background: var(--h_menu_bg);
 flex-direction: column;
 justify-content: flex-start;
 padding: 20px 25px; 
}

.termin-toggle
{
 display: none;
}

.termin-toggle:checked ~ .termin-toggle-label::before
{content: "\f272";}

.termin-toggle:checked ~ .neuigkeiten
{
 display: flex;
} 


.ueberschrift-link
{
  margin-left: 3ch;  
  text-indent: -1.5ch; }

.ueberschrift-link::before
{
  font-family: FontAwesome; 
  font-weight: bold; 
  content: '\f105';
  color: var(--linkfarbe);
}

/* ENDE Aktuelles */


/* ENDE Seitenkopf */


/* Seitenfuss */
footer 
{ 
  margin:0 auto;
	border-top: 1px solid var(--rahmenfarbe);
}

.seitenfusslogos
{
 max-width: 80vw; 
 margin: 0 auto;
 display: grid;
 grid-template-columns: repeat(auto-fit, minmax(min(200px, 100%), 1fr));
 align-items: center;
 justify-content: space-around;
}

.amt-zuwanderung, .pro, .demokratie-leben
{
  width: 100%;
  margin-bottom: 4vw;
}


.navelemente
{
 background: var(--dunkles_blau);
}

.fussnaviliste
{
 width:98%;
 list-style-type: none;
 padding: 5px;
 display: flex;
 gap: 2ch;
 flex-wrap: wrap;
 justify-content: flex-end;
 align-items: center;
}

.fussnavi-eintrag 
{
 font-family: LiberationSans;
}

.soziale-medien
{font-size: 150%;}

.navi-img
{width: 100%; padding-top:0.5em;}

.fussnavi-eintrag a
{
 color: #fff;
}

/* ENDE Seitenfuss */


/* Startseite */
.kopfbild_info
{
 position: relative; 
 display: flex;
 flex-direction: column;
 justify-content: space-between;
}


#startseite
{
 width: 96%;
 margin: 50px auto;
}

.start-kachel-container, .kleinkachel-container
{
 position: relative; 
 width:96%; 
 margin: 2% auto;
 display: grid;
 grid-template-columns: 1fr;
 gap: 1em;
}

article, .kleinkachel
{
 border: 1px solid #aaa;
 box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
}

.kleinkachel
{height: 8em; overflow: hidden;}

.start-teaser, .galerie
{
 width: 100%; 
 border-bottom: 1px solid #aaa;
}

.klein_ueberlagert
{
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: rgba(240, 240, 240, 0.9);
  overflow: hidden;
  width: 100%;
  height: 40%;
  transition: .5s ease;
}

.teasertext 
 {
  padding: 5px 2%;
  margin-top: 0;
 }

.teasertext h4
{
  text-align: center;
}

/* ENDE Startseite */


/*Cookies */
#kekshinweis
{position: fixed; bottom: 0; width: 100%; height:auto; background: #555; z-index:20; color:#fff;}

.keksfuellung
{display: flex; align-items: center; margin: 0 10%;}

.keksfuellung p
{float:left; margin-left: 5%; width:69vw;}

#kekshinweis  .schalter
{}
/*ENDE Cookies */




/* Folgeseiten */
.kopfbild 
{
  width:100%; 
  height:2%;
  max-height: 
  300px; 
  overflow: hidden; 
  margin:0;
}

.seitenrahmen
{
 display: flex;
 justify-content: center;
}

.untermenuerahmen
{
 display: none;
}

.inhalt
{
 display: block;
 width: 96%;
 padding: 5% 3%;
 min-height: 750px;
}

.artikeltext
{
 clear:both;
 margin-top:10%;
}

.kapiteltext 
{
  clear: both;
  margin-top: 10%;
  max-height: 50vh;
  width: 100%;
}

/* Artikel-Kurz- und Langanzeige */
.kurzanzeige
{
 height: 50vh;
 overflow: hidden;
/* border-bottom: 1px solid #888;*/
 position: relative;
}

.kurzanzeige:after
{
 content: '';
 width: 100%;
 height: 100px;
 position: absolute;
 bottom: 0;
 left:0;
 background-image: linear-gradient(rgba(255,255,255,0) 50px, rgba(255,255,255,1));
 }


.kurzanzeige .illufoto
{
 width: 25%;
}


 .ergaenzung-schalter
 {
   text-align: right; 
   padding-bottom:2%; 
   margin-right: 20px; 
   border-bottom: 1px solid #ccc;
 }


.brotkrume
{padding-left:10px; font-size: smaller;}

/*Kapitelseite */
.inhaltsverzeichnis
{ 
 border-top: 1px solid #888;
 border-bottom: 1px solid #888;
 background: #eee;
 padding: 10px;
}

.inhaltsverzeichnis > i, .kapitelpfeil
{color: var(--linkfarbe); 
 cursor: pointer;
}


.klappordner
{
 max-height: 0;
 overflow: hidden;
 /*background: var(--f_inhalthintergrund);
 transition: max-height 1000ms ease-out; */
}



/*Ausgleichsverschiebung bei Sprungmarken fuer fixierten Kopf*/
.kapiteltext:target:before
{
 content: "";
 display: block;
 height: 260px;
 margin: -200px 0 0;
}



.illufoto
{
 position:relative;
 width: 100%;
 margin: 1%;
}

pre
{
 font-family: LiberationSans;
 white-space: pre-wrap;
 white-space: -moz-pre-wrap;
 white-space: -pre-wrap;
 white-space: -o-pre-wrap;
 word-wrap: break-word;
 }

pre b
{
 font-family: LiberationSans-Bold;
}

 .mehr_anzeigen {clear: both; float:right;}

/* Komplexseite */
.container
{
 display: flex;
 flex-direction: column;
 gap: 20px;
 
}

.container .tab
{
 position: relative;
 background-color: var(--seeblau);
 padding: 0 20px 20px;
 box-shadow: 0 15px 25px rgba(0,0,0,0.05);
 overflow: hidden;
}

.container .tab input
{
 appearance: none;
}

.container .tab label
{
 display: flex;
 align-items: center;
 cursor: pointer;
}

.container .tab label::after
{
  content: "\f107";
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  position: absolute;
  right: 20px;
  color: rgba(0,0,0,0.3);
  transition: transform 0.25s;
}

.container .tab:hover label::after
{
 color: #333;
}

.container .tab input:checked ~ label::after
{
 transform: rotate(180deg); 
}

.container .tab label h3
{
 position: relative;
 font-weight: 500;
 z-index: 10;
 margin:0;
}


.container .tab .content
{
  max-height: 0;
  transition: 0.25s;
  overflow: hidden;
 white-space: pre-wrap;
 white-space: -moz-pre-wrap;
 white-space: -pre-wrap;
 white-space: -o-pre-wrap;
 word-wrap: break-word;
}


.container .tab input:checked ~ .content
{
 max-height: 200vh;
}


.mitreden_container
{
 display: grid;
  grid-template-columns: 1fr;
  grid-template-areas: "klick1"
                       "antwort1"
                       "klick2"
                       "antwort2"
                       "klick3"
                       "antwort3";                                   
  gap:1em;
}

.mitreden_container input
{appearance: none;}

.mitreden__kachel
{
 display: grid;
 cursor: pointer;
 justify-content: center; 
  align-items: end;
}

.mitreden__kachel:hover
{
 box-shadow: 0 0 15px rgba(0,0,0,0.3);
}

.mitreden__kachel h3
{
 text-align: center;
}


#LabelMichInformieren
{
 grid-area: klick1;
 border: 5px solid var(--mittleres_gruen);
}

.informieren_pfeil
{text-align: center;}


.informieren_pfeil::after
{  content: "\f107";
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  opacity: 0.3;
  transition: opacity 0.25s;
}

.mitreden__kachel:hover .informieren_pfeil::after
{ opacity: 1;}


#LabelMitReden
{
 grid-area: klick2;
 border: 5px solid var(--seegruen); 
}

#LabelMitEntscheiden
{
 grid-area: klick3;
 border: 5px solid var(--dunkles_blau);
}

#mitreden__text1
{
 grid-area: antwort1;
 background-color: var(--mittleres_gruen_hg);
 height: 0;
 overflow: hidden;
 transition: height 0.5s;
}

#mitreden__text2
{
 grid-area: antwort2;
 background-color: var(--seegruen_hg);
 height: 0;
 overflow: hidden;
 transition: height 0.5s;
}

#mitreden__text3
{
 grid-area: antwort3;
 background-color: var(--dunkles_blau_hg);
 height: 0;
 overflow: hidden;
 transition: height 0.5s;
}

#RadioMichInformieren:checked ~ .mitreden__kachel #pfeil1::after,
#RadioMitReden:checked ~ .mitreden__kachel #pfeil2::after,
#RadioMitEntscheiden:checked ~ .mitreden__kachel #pfeil3::after 
{opacity: 0;}



#RadioMichInformieren:checked ~ #mitreden__text1,
#RadioMitReden:checked ~ #mitreden__text2,
#RadioMitEntscheiden:checked ~ #mitreden__text3
{  padding: 10px 30px; height: fit-content; }

/* ENDE Komplexseite */


/* Anmeldeseite */
.anmelde__form
{
 display: grid;
 width: max(95%, 300px);
 margin: 1em;
 padding: 1em;
 background-color: #f1f1f1;
 
}

.anmelde__absatz
{
 font-size: 90%;
 margin: 1% 0;
}

.anmelde__box, .anmelde__abschicken
{
 display:flex;
 flex-wrap: wrap;
 margin-bottom: 1em;
justify-content: space-between;
position: relative;
}

#box_w1-4, #box_w2-4 
{
 display: none; 
 width: 85%;
 margin-left: 10%;
 padding: 1em;
 border: 3px solid var(--orange2);
 background-color: var(--h_ebene2_bg_hover);
}

.anmelde__label, .check__label
{
 font-size: 90%;
 text-align: right;
}

 .dialog::marker
 {content: none;}
 
img.icon {cursor:pointer;}

.info-dialog
{
  position: absolute;
  width: 50%;
  top: 0;
  left:33%;
  background-color: #eee;
  border: 1px solid #888;
  z-index: 5;
  font-size: 90%;
  line-height: 120%;
  text-align: left;
  padding: 5px;
  }
 
.info-dialog > .anmelde-knopf {margin: 0 auto;}


.anmelde__eingabe, .check__eingabe
{
 border: 0; 
 border-bottom: 1px solid #888;
 min-height: 2em;
 padding: 5px;
 background-color: var(--mittleres_gruen_hg);
}

.anmelde__eingabe {width: max(95%, 195px);}

.anmelde__checkboxen
{
 display: flex;
 flex-wrap: wrap;
 width: 65%;
 justify-content: start;
}

.anmelde__check_u_label
{
 display: flex;
 justify-content: start;
 gap: 0.3em;
 margin-right: 1.5em;
}

.anmelde__check { width: 1.5em; height: 1.5em; margin-top: 4px; }

.anmelde__check_absatz
{border-bottom-width: 5px;
border-bottom-style: solid;}

.anmelde__check-ergebnis::before
{content: "\f00c";
  font-family: FontAwesome;
  font-weight: 900;
  color: #555;
  }

textarea.anmelde__eingabe { height: 10em;}

.check__label, .check__eingabe
{ text-align: left;}

.check__label {width: 88%;}

.check__eingabe {width: 10%; }

.workshop {width: 90%; height: 2em; background-color: var(--mittleres_gruen_hg);}

.anmelde__abschicken
{ justify-content: center;}

.anmelde__knopf
{
 width:50%; 
 height: 2em;
 background-color: var(--linkfarbe);
 color: #fff;
 font-family: RobotoCondensed;
 font-weight: bold;
 margin-right: 3em;
 cursor: pointer;
}

/* ENDE Anmeldeseite */

/* Kalender */

.suchfilter
{
 max-width: 1200px; 
 margin: 1em auto;
 border:  1px solid #aaa;
 padding: 1em;
 padding-bottom:0;
}

.suchfilter__knopf
{
 /*width:50%; */
 height: 2em;
 background-color: var(--linkfarbe);
 color: #fff;
 font-family: RobotoCondensed;
 font-weight: bold;
 font-size: 90%;
 text-align: center;
 cursor: pointer;
 margin: 10px auto;
 padding: 0 5px;
}

.kalender__container
{
 display: flex;
 flex-direction: column;
 margin: 1em auto;
 max-width: 1200px;
 gap: 1vw;
}

.kalender__ausdauerndes_sprung
{padding-left: 5px;}

.kalender__aktuelles
{
 display: flex;
 flex-direction: column; 
 gap: 1%;
 width: 95vw; 
 padding: 5px;
}

.kalender__staendiges
{
 display: flex;
 flex-direction: column; 
 gap: 1%;
 padding: 5px;
}

.kalender__aktuelles_eintrag, .kalender__staendiges_eintrag
{
 display: flex;
 gap: 1%;
 border-top: 1px solid #555;
 cursor: pointer;
}

.kalender__aktuelles_datum
{
 width: 30%; 
 font-size: 90%;
 line-height: 130%;
 padding-left:5px;
}

.kalender__aktuelles_ereignis
{ width: 65%; }

.kalender__aktuelles_katfarben
{display: flex; justify-content: flex-start; height: 10px; margin-top: 5px;}

.kalender_farbstreifen
{flex-basis: 10%;}

.kalender__aktuelles_einzelheiten, .kalender__staendiges_einzelheiten
{
 display: flex; 
 flex-direction: column;
 padding: 2% 0;
 font-size: 90%;
 line-height: 130%;
 background-color: var(--seegruen_hg);
}

.kalender__staendiges_ereignis, .kalender__staendiges_einzelheiten
{padding: 2%;}

.kalender__einzelheiten_element
{
 display: flex;
 
}

.kalender__einzelheiten_element p
{
 width: 69%;
}

.kalender__einzelheiten_element p:first-child
{
 width: 31%;
 text-align: right;
 padding-right: 1em;
}


.kalender__ausdauerndes
{
 display: flex;
 flex-direction: column; 
 width: 95vw;
 padding: 5px 5px 50px 5px;
 border-bottom: 1px solid #888; 
}

.kalender__staendiges_ereignis
{ width: 90%;}

details>summary {list-style: none; }

 summary::-webkit-details-marker {display: none; }

 summary::after { content: '+'; margin:auto 0; }

 details[open] summary:after { content: "–"; }
 
 
 
/* ENDE Kalender */

/* Veranstaltungen */
.register
{}

.zugang
{
 margin: 2rem 0;
 border: 1px solid #888;
 padding: 1rem;
}


.veranstalter_eingeloggt
{text-align: right;}


.va_menu
{
 display: flex;
 justify-content: space-between;
 border-bottom: 1px solid #888;
 margin-bottom: 2em;
}

.va_menu__eintraege
{
 display: flex;
 gap: 2em;
 flex-wrap: wrap;
 margin-bottom: 2em;
 text-align: center;
}

.va_menu__punkt
{
 display: flex;
 flex-direction: column; 
 border: 1px solid #888;
 padding: 0.5em;
 flex: 1;
 min-width: 40%;
}

.kachel__profil::before
{
 content: "\f007";
 font-family: FontAwesome;
 font-weight: normal;
 color: var(--violett);
 margin: 0.4em auto;
 font-size: 400%;
}

.kachel__aktion_neu::before
{
 content: "\f271";
 font-family: FontAwesome;
 font-weight: normal;
 color: var(--violett);
 margin: 0.4em auto;
 font-size: 400%;
}

.kachel__aktion_bearbeiten::before
{
 content: "\f274";
 font-family: FontAwesome;
 font-weight: normal;
 color: var(--violett);
 margin: 0.4em auto;
 font-size: 400%;
}

.kachel__logout::before
{
 content: "\f2f5";
 font-family: FontAwesome;
 font-weight: bold;
 color: var(--violett);
 margin: 0.4em auto;
 font-size: 400%;
}


.aktionen__tab
{
  display: flex;
 justify-content: space-between;
 flex-wrap: wrap;
  margin-bottom: 2em;
  border-bottom: 1px solid #888;
}
/* ENDE Veranstaltungen */



.ls-flexcontainer
{
 display: flex;
 flex-direction: column;
 justify-content: center;
}

.ls__linke_spalte
{width:100%;}

.ls__verweis
{
 display: flex;
 flex-direction: row; 
 gap: 10px;
 margin: 0 10%; 
 justify-content: center;
 align-items: center;
}

.ls__verweis a
{width: 40%;}

.ls__verweis img
{width: 100%;}

.ls__verweis p
{text-align: center;}


.ls__inhalt
{
 width: 95%;
 margin: 0 auto;
 max-width: 85ch;
}



/* ENDE Folgeseiten */








/* Media-Queries */
@media only screen and (min-width: 500px)
{

 header
 {
  padding-top:10px;
  display: flex;
  justify-content: center;
  align-items: center;
 } 
 
 #kopflogo
 {
   width: 15%;
   padding: 0 2%;
   margin: 0;
 }

.wortmarke
{
 font-size: 4vw;
 text-align: left;
}

 .illufoto {width: 45%; float: right;}


.anmelde__box, .anmelde__abschicken
{
 flex-wrap: wrap;
 flex-direction: row;
 justify-content: space-between;
}

.anmelde__label
{
 font-size: 90%;
 width: max(30%, 90px);
 text-align: right;
}

.anmelde__eingabe
{
 width: max(65%, 195px);
}

.anmelde__abschicken
{ justify-content: center;}


.kalender__container
{ flex-direction: row;}

.kalender__ausdauerndes_sprung
{display: none;}

.kalender__aktuelles
{width: 69vw;}

.kalender__ausdauerndes
{width: 30vw;  border-left: 1px solid #888; border-bottom: 0px; padding: 5px;}

}

@media only screen and (min-width: 940px)
{
 
 /* header fixieren */  
 .sticky
 { position: fixed; top: 0;} 

  
/* Hauptmenuezeile */  
 nav
 {
  padding: 0;
  background-color: var(--h_menu_bg);
  border-bottom: 1px solid var(--h_menu_rahmen);
  box-shadow: 0 5px 5px rgba(0, 0, 0, 0.1);
  z-index: 30;
  font-size: 84%;
 } 
 
 .haupteintrag a
 { text-decoration: none; }


 .nav-toggle-label, .termin-toggle-label
 {display: none;}

 .nav-toggle:checked ~ .hauptzeile
 {display: flex;}

 .hauptzeile
 {
  position: relative;
  top:0;
  display: flex;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0;
  flex-direction: row;
  justify-content: flex-start;
 }
 
 .schnellsuche
 {
  display: block; 
 }
 
 .haupteintrag
 {
   position: unset;
   border: 0;
   padding:0.2em 0.4em;
   width: auto;
 }
 
 .haupteintrag:nth-last-of-type(1)
 { margin-left:auto;} 
 
 .haupteintrag + .haupteintrag, 
 .perma + .haupteintrag
 {border-top: 0;}
 
 .haupteintrag:hover,
 .haupteintrag:focus-within
  {
   background-color: var(--menuepunkt_hover);
  }
  
 .aktuell
 {
  background: var(--aktueller_menuepunkt);
 }


 .aktueller-pfad
 {
  background: var(--aktueller-pfad);
 }


 .hmenupfeil
 {
  display:none; 
  float:none;
  padding: 0 5px;
 }

.umenupfeil::before
{content: none;}

 #volltextsuche 
 {
  display: none; 
  position: absolute;
  top: 0;
  border: 0;
  right: 10%;
  width: 32ch;
 }
 
 #suchleiste 
 {

  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  padding: 3px;
  z-index: 55;
 }
  
 #suchbegriff
 {
  width: 20ch;
  font-size: calc(86% + 0.1vw); 
 }
 
 .such-toggle
 {display: none;}
 
 .such-toggle-label
 {
  display: block;
  cursor: pointer;
  float: right;
  margin-right:30px;
 }


.such-toggle:checked ~ .such-toggle-label:before
 {
 content: url("../grafik/menu_schliessen.png");
 cursor: pointer;
 } 

.such-toggle:checked ~ #volltextsuche
 {
 display: block;
 } 
/* ENDE Hauptmenuezeile*/



/* Menue-Ebene 2*/
.ebene2, .perma
 {
  display: flex;
  width: calc(100vw + 20px);
  position:absolute;
  top: 30px; 
  padding: 0 20px;
  left:-20px;
  z-index: 50;
  opacity: 0;
  max-height: 0px;
  overflow: hidden;
  box-shadow: 0 5px 5px rgba(0, 0, 0, 0.1);
 }
 
 .perma
 {
  width: calc(100vw + 20px);
  list-style-type: none; 
  max-height: 300px;
  opacity: 1;
  background: var(--aktueller_menuepunkt);
  z-index: 40;
 }
 
 .haupteintrag:hover > .ebene2,
 .haupteintrag:focus-within > .ebene2
  {
   max-height: 300px;
   opacity: 1;
 /*  margin-top: 2px;
  padding: 0 20px;*/
  background: var(--menuepunkt_hover);
  }


.ebene2eintrag
{
 border:0px;
 width: 33.3%;
 padding: .2em 1.5em;
}

.ebene2eintrag + .ebene2eintrag
{border: 0px;} 
 
.ebene2eintrag:hover,
.ebene2eintrag:focus
 {
  background: var(--aktueller_menuepunkt);
 }

/* ENDE Menue-Ebene 2*/


/* Menue-Ebene 3*/
.ebene3 {display: none;}
/* ENDE Menue-Ebene 3*/



/* Aktuelles */
aside
{
 all: inherit;
 position: relative;
 width: 98%;

}

.neuigkeiten
{
 display:block; 
 width: 100%; 
 left: 0;
 background: #fff;
}
.neuigkeiten__container
{ 
 display: flex;
 flex-direction: row;
 justify-content: space-around;
 flex-wrap: wrap;
 }

.starttermin
{
 line-height: 120%;
 padding: 10px;
 width: 48%;
}
/* ENDE Aktuelles */

/* Start-Kacheln*/
.start-kachel-container, .kleinkachel-container
{grid-template-columns: repeat(2, 1fr);}

/* ENDE Start-Kacheln*/

/* Folgeseiten */

.inhalt
{
 width: 75%;
 max-width: 85ch;
 margin: 0 auto;
}

.ls-flexcontainer
{
 display: flex;
 flex-direction: row;
 justify-content: flex-start;
}

.ls__linke_spalte
{width:25%;}

.ls__verweis
{
 display: flex;
 flex-direction: column; 
 width: 70%; 
 margin: 10%; 
}

.ls__verweis a
{width: 100%;}

.ls__verweis img
{width: 100%;}

.ls__verweis p
{text-align: center;}


.ls__inhalt
{
 width: 75%;
 max-width: 85ch;
 margin-left: 0;
}

/* ENDE Folgeseiten */

/* Untermenue */
#untermenuerahmen
{
 position:relative;
 margin-top:5%;
 width:25%;
 float:left;
 padding: 0 1%;
}

#themenueberschrift
{
 position:relative;
 margin-bottom:20px;
 margin-left:10px;
 font-weight: bold;
 
}

#seknavi
{
 position:relative;
 float:left;
 width:100%;
 margin:30px 0;
} 

#seknavi ul, #seknavi ul ul
{
 list-style:none;
 padding: 0;
 margin: 0;
}

#seknavi li .u_waehlbar, #seknavi ul li .aktuell, .wieder_waehlbar  
{
 text-align:left;
 width:100%;
 padding: 3px 0px 3px 10px;
 display:table;
 font-weight:normal;
 border-top: 1px solid #ccc;
}

.wieder_waehlbar
{
 background: #ccc;
 border-top: 1px solid #888;
}

#seknavi ul li .aktuell 
{
 color:#000;
 background:#bcd;
 border-top: 1px solid #ccc;
}

#seknavi ul ul
{
  width:100%;
  text-align:right;
  padding-right:15px;
}

/* ENDE Untermenue */


/* Komplexseite */
.mitreden_container
{
 display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-areas: "klick1 klick2 klick3"
                       "antwort1 antwort1 antwort1";                                   
  gap:1em;
}


#mitreden__text1,
#mitreden__text2,
#mitreden__text3
{
 grid-area: antwort1;
}

/* ENDE Komplexseite */



/* Fussnavi */
.fussnavi-eintrag 
{
 font-size: calc(70% + 0.4vw)
}

/* ENDE Fussnavi */
}





@media only screen and (min-width: 1020px)
{
 
  /* info-Fenster*/
.kopfbild_info
{
 flex-direction: row;
}

/* ENDE info-Fenster*/

/* Navigation */
nav {font-size: medium;}

/* ENDE Navigation */


/* Aktuelles */
aside
{
 position: relative;
 width: 40%;
}

.neuigkeiten
{
 display: block;
 padding-top:0;
}

.neuigkeiten__container
{ 
 display: flex;
 flex-direction: column;
 justify-content: space-around;
 flex-wrap: wrap;
 }


.starttermin
{
 width: 98%;
}

/* Start-Kacheln*/
.start-kachel-container, .kleinkachel-container
{grid-template-columns: repeat(3, 1fr);}


/* ENDE Aktuelles */
}


@media only screen and (min-width: 1200px)
{
  .ebene2, .perma
  {
   width: 100vw;
   left: calc(600px - 50vw);  
  /*font-size: calc(70% + 0.4vw);   */
  }
}

