:root { --scrollbar-width: calc(100vw - 100%) }

a:link{color:blue;text-decoration:underline;background-color:transparent;}
a:visited{color:gray;text-decoration:underline;background-color:transparent;}
a:hover{color:red;text-decoration:underline;background-color:transparent;}
a:active{color:red;text-decoration:underline;background-color:transparent;}

html, body { height:100%; -webkit-text-size-adjust:none; }
@font-face { font-family:"Open Sans"; font-style:normal; font-weight:100; src:local("Open Sans"), local("Open-Sans"), url('/layout/schriftarten/open-sans-v35-latin-regular.woff2') format('woff2'); font-display:swap; }
body { margin:0rem 0rem 0rem 0rem; padding:0rem; font-family:"Open Sans",Arial,Helvetica,Verdana,sans-serif; letter-spacing:-0.012rem; background-color:rgb(232,232,232); line-height:140%; font-size:1.0rem;}

/* ***** GRUNDPARAMETER ***** */
.links { text-align:left; }
.mitte { text-align:center; }
.rechts { text-align:right; }

.ausblenden { visibility:hidden; border:0px; }
.block {display:block;}
.fett { font-weight:bold; }

.zeile_0 { background-color:rgb(175,200,255); }
.zeile_1 { background-color:rgb(210,225,255); }
.zeile_2 { background-color:rgb(240,240,255); }

/*img { pointer-events:none; }*/

ul { margin:0; }

select {font-size:1.0rem;font-family:inherit;}
select.abs_rechts { margin-right:0.15rem; }
select.abs_oben  { margin-top:0.6rem; }
input[type=submit] {font-size:1.0rem;font-family:inherit;border-radius:4px; cursor: pointer; }
input[type=submit]:hover { background-color:rgba(0,50,150,0.6); color:rgb(255,255,255); box-shadow: 2px 2px 2px grey;}

/* ***** SCROLLBARE TABELLEN ***** */
.tab_scroll_container  { overflow-x:auto; }
.tab_scroll_zeile_fix  { position:sticky; top:0; }
.tab_scroll_spalte_fix { position:sticky; left:0; }

tr:nth-child(1)    td.tab_scroll_zeile_fix { background:rgb(175,200,255); z-index:8; border-bottom:1px solid rgb(50,100,200);}
tr:nth-child(1)    td.tab_scroll_spalte_fix { background:rgb(175,200,255); z-index:10; }
tr:nth-child(2n+3) td.tab_scroll_spalte_fix { background:rgb(240,240,255); }
tr:nth-child(2n+2) td.tab_scroll_spalte_fix { background:rgb(210,225,255); }

/* ***** RUNDE ECKEN IN TABELLEN ***** */
table { border-collapse:separate; border-spacing:0; border:0; font-size:0.95em; font-weight:normal; white-space:nowrap; }
table tr:first-child td:first-child, .td_erster_links { border-top-left-radius:4px; }
table tr:first-child td:last-child, .td_erster_rechts { border-top-right-radius:4px; }
table tr:last-child td:first-child, .td_letzter_links { border-bottom-left-radius:4px; border-left:1px solid rgb(50,100,200); }
table tr:last-child td:last-child, .td_letzter_rechts { border-bottom-right-radius:4px; }

td { border:0; vertical-align:top; padding:2px 6px 2px 6px; line-height:125%; }
td { border-right:1px solid rgb(50,100,200); }
td:first-child { border-left:1px solid rgb(50,100,200); }
td:last-child, .td_ende_rechts { border-right:1px solid rgb(50,100,200); }
tr td { border-top:1px solid rgb(50,100,200); }
tr:last-child td, .td_letzter { border-bottom:1px solid rgb(50,100,200); }

table tr:last-child td.td_leer { border:0px; background-color:rgb(245,245,250); }
.tr_leer_05 { visibility:hidden; border:0px; height:0.5rem; }
.tr_leer_10 { visibility:hidden; border:0px; height:1.0rem; }
.wrap { white-space:initial; }

hr { margin:1rem -0.32rem 1rem -0.32rem; border:solid rgb(75,125,245); border-width:1px 0px 0px 0px; }

#kopfzeile { visibility:hidden; }
#container
{
  position:relative;
  margin:0rem auto;
  display:grid;
  grid-template-columns:1fr;
  grid-template-rows:2.65rem 1fr 1.82rem 3.47rem;
  grid-gap:0rem 0rem;
  grid-template-areas: "kopf" "inhalt" "fuss" "menue";
  max-width:52rem;
  min-width:23.25rem;
  min-height:100%;
  border:solid rgb(190,190,190); border-width:0px 1px 0px 1px;
}

header_alt { grid-area:kopf; position:sticky;top:0; height:2.67rem; border:solid rgb(0,0,255); border-width:1px 1px 1px 1px; background-color:rgb(245,245,250); display:flex; align-items:center; }
header { grid-area:kopf; position:fixed; top:0; height:2.68rem; border:solid rgb(190,190,190); border-width:0px 0px 1px 0px; background-color:rgb(232,232,232); display:flex; align-items:center; max-width:52rem; width:100%; z-index:100; }
#logo { float:left; padding:5px 0px 0px 6px; display:flex; }

.girlande_1 { float:left; }
.girlande_2 { float:left; margin-left:-20px; display:none; }
.girlande_3 { float:left; margin-left:-20px; display:none; }

#event { float:right; padding-top:5px; text-align:center; display:flex; align-items:center; justify-content:center; width:100%; }

h1 { display:none; }
h2 { margin:35px 5px 0px 12px; padding:0px 4px 3px 4px; border-bottom:5px solid rgba(120,160,255,0.9); display:inline-block; font-size:1.45rem; font-weight:bold; }
h3 { float:right; height:100px; margin:5px 10px 5px 5px; padding:0px; align-content:center; border:0px solid rgba(120,160,255,0.9); }
main { margin:30px 5px 0px 5px; font-size:1.0rem; }
/* #inhalt { grid-area:inhalt; grid-template-columns:repeat(auto-fill,minmax(1rem,1fr)); grid-auto-flow:column;grid-auto-columns:minmax(1rem,1fr); overflow-x:auto; min-height:18rem; padding-bottom:2.5rem; border:solid rgb(0,0,255); border-width:0px 0px 0px 0px; background-color:rgb(245,245,250); } */
#inhalt { grid-area:inhalt; overflow-x:hidden; min-height:18rem; padding-bottom:2.5rem; border:solid rgb(0,0,255); border-width:0px 0px 0px 0px; background-color:rgb(245,245,250); }

footer { grid-area:fuss; height:1.8rem; border:solid rgb(190,190,190); border-width:1px 0px 0px 0px; background-color:rgb(245,245,250); display:flex; align-items:center; }
#impressum { float:left; padding-left:6px; white-space:nowrap; font-size:clamp(0.8rem,2.5vw,0.9rem); }
#copyright { float:right; padding-right:6px; text-align:right; width:100%; white-space:nowrap; font-size:clamp(0.7rem,2.5vw,0.9rem); }

/* #menue { grid-area:menue; position:fixed;bottom:0; max-width:52rem; width:calc(100% - 0.196rem); } */
#menue { grid-area:menue; position:fixed;bottom:0; max-width:52rem; width:100%; z-index:100;}
#menue_container { height:3.35rem; display:flex; align-items:center; justify-content:center; border:solid rgb(190,190,190); border-width:1px 0px 0px 0px; background-color:rgb(232,232,232); }
/* #menue_container { height:3.35rem; display:flex; align-items:center; justify-content:center; border:solid rgb(0,0,255);border-width:1px 1px 1px 1px; background-color:rgba(210,220,255,0.9); } */
.m_icon { position:absolute; margin-top:0rem; }
.m_text { position:absolute; margin-top:1.7rem; }
.menue_symbol { width:32px; height:32px; }



/* MENUE */
/* Position und Entfernung Radio-Buttons beim Hauptmenue und Gestaltung Untermenue */
#menue_container figure { position:fixed; bottom:2.55rem; display:flex; align-items:center; justify-content:center; }
#menue_container > input,#menue_container figure > div { display:none; }
#menue_container figure > div { width:18rem; font-weight:bold; white-space:nowrap; line-height:1.5rem; box-shadow:0px -40px 25px 40px rgba(210,210,210,0.8); }

/* Hauptmenü */
nav label { float:left; width:4.8rem; height:2.74rem; margin-right:0.25rem; padding:0.125rem 0rem 0.125rem 0rem; text-align:center; font-size:0.9rem; white-space:nowrap; cursor:pointer; }
nav > label[for="m_1"] { border:1px solid rgb(35,75,160); background-color:rgb(195,210,255); display:flex; justify-content:center; border-radius:4px; }
nav > label[for="m_2"] { border:1px solid rgb(50,100,200); background-color:rgb(210,225,255); display:flex; justify-content:center; border-radius:4px; }
nav > label[for="m_3"] { border:1px solid rgb(65,165,220); background-color:rgb(220,240,255); display:flex; justify-content:center; border-radius:4px; }
nav > label[for="m_4"] { border:1px solid rgb(255,150,0); background-color:rgb(250,235,185); display:flex; justify-content:center; border-radius:4px; }
nav label:hover { background-color:rgba(0,50,150,0.5);color:rgb(255,255,255); }

/* Hauptmenü wenn ausgewählt */
#m_1:checked ~ nav label[for="m_1"] { background-color:rgba(0,50,150,0.5);color:rgb(255,255,255); }
#m_2:checked ~ nav label[for="m_2"] { background-color:rgba(0,50,150,0.5);color:rgb(255,255,255); }
#m_3:checked ~ nav label[for="m_3"] { background-color:rgba(0,50,150,0.5);color:rgb(255,255,255); }
#m_4:checked ~ nav label[for="m_4"] { background-color:rgba(0,50,150,0.5);color:rgb(255,255,255); }

/* Untermenü wenn Hauptmenü ausgewählt */
#m_1:checked ~ figure .m_1 { display:block; }
#m_2:checked ~ figure .m_2 { display:block; }
#m_3:checked ~ figure .m_3 { display:block; }
#m_4:checked ~ figure .m_4 { display:block; }

/* Darstellung von Links in Untermenü */
figure a:link,figure a:visited,figure a:hover,figure a:focus,figure a:active { color:rgb(0,0,0); text-decoration: none; }
figure div div:hover { background-color:rgb(0,50,150); color:rgb(255,255,255); }

/* Gestaltung Untermenü */
.um_1   { border:solid rgb(35,75,160); border-width:1px 1px 0px 1px; background-color:rgb(195,210,255); padding:0.3rem; padding-left:0.75rem; }
.um_1_t { border-bottom:1px solid rgb(35,75,160); }

.um_2   { border:solid rgb(50,100,200); border-width:1px 1px 0px 1px; background-color:rgb(210,225,255); padding:0.3rem; padding-left:0.75rem; }
.um_2_t { border-bottom:1px solid rgb(50,100,200); }

.um_3   { border:solid rgb(65,165,220); border-width:1px 1px 0px 1px; background-color:rgb(220,240,255); padding:0.3rem; padding-left:0.75rem; }
.um_3_t { border-bottom:1px solid rgb(65,165,220); }

.um_4   { border:solid rgb(255,150,0); border-width:1px 1px 0px 1px; background-color:rgb(250,235,185); padding:0.3rem; padding-left:0.75rem; }
.um_4_t { border-bottom:1px solid rgb(255,150,00); }

.um_oben  { border-top-left-radius:4px; border-top-right-radius:4px; }
.um_unten { border-bottom-left-radius:4px; border-bottom-right-radius:4px; }

/* Tablet */
@media (min-width:30rem)
{
	.girlande_2 { display:block; }
}

/* PC Bildschirm */
@media (min-width:40rem)
{
	#kopfzeile { visibility:visible; position:fixed; top:0; margin:0rem auto; width:100%; height:5.40rem; border-bottom:1px solid rgb(190,190,190); background-color:rgb(232,232,232); z-index:50; }
	header { top:0; border-width:0px 0px 0px 0px; bottom:initial; }
	#text { margin:30px 15px 0px 20px; font-size:1.1em; }
	#container { min-height:auto; grid-template-rows:2.65rem 1fr 1.82rem 0.06rem; }
	footer { border-width:1px 0px 1px 0px; }
	#menue { top:2.65rem; bottom:initial; }
	#menue_container { height:2.6rem; border-width:0px 0px 1px 0px; background-color:rgb(232,232,232); padding-bottom:0.15rem; }
	#menue_container figure { position:fixed; top:4.55rem; bottom:initial; }
	#menue_container figure > div { box-shadow:none; }
	nav label { width:7.5rem; height:2.0rem; }
	.m_icon { position:relative; display:flex; align-items:center; margin-left:0rem; }
	.m_text { position:relative; display:flex; align-items:center; margin-top:0rem; margin-left:0.5rem; }
	#inhalt { padding-top:2.75rem; }
	#text { margin:30px 10px 0px 10px; }
	.girlande_3 { display:block; }
	#inhalt { overflow-x:hidden; }	
}


/* PC Bildschirm */
/*
@media (min-width:60rem)
{
	html { transform-origin:top; transform:scale(1.1); overflow-x:hidden; }
	header { transform:unset; position:fixed; top:0; }
}
*/

/* PC Bildschirm */
/*
@media (min-width:65rem)
{
	html { transform-origin:top; transform:scale(1.2); overflow-x:hidden; }
}
*/

/* PC Bildschirm */
/*
@media (min-width:70rem)
{
	html { transform-origin:top;transform:scale(1.3); overflow-x:hidden; }
}
*/

/* PC Bildschirm */
/*
@media (min-width:75rem)
{
	html { transform-origin:top;transform:scale(1.4); overflow-x:hidden; }
}
*/