*
{
    margin: 0px;
    padding: 0px;  
    font-family: Verdana, Arial, Helvetica, sans-serif;
    line-height: 1.3em;
    text-decoration: none;
    box-sizing: border-box;
}

html { overflow-y: scroll; }

body
{
    font-size: 16px;
    max-width: 1200px;
    margin: auto;
    /* font-size: 1.0em; */
    color: #444;   
}


p
{
    font-size: 1em;
    margin-top: 0.1em;
    margin-bottom: 1em;
}




div.container
{
    width: 1100px;
    margin: auto;
    margin-top: 10px;
    
    /*border: 1px solid #000;*/    
}

div.top
{
    /*background-color: #FF00FF;   */
    background-image: url("top.jpg");
    width: 1100px;
    height: 200px;
    
    padding-top: 10px;   
    margin-bottom: 10px;

    text-align: center;
    /* font-family: Calibri, Verdana, Arial, Helvetica, sans-serif; */
    font-size: 2.5em;
    color: #FFF;
    text-shadow: #000 0.1em 0.1em 0.05em;
    /* background: linear-gradient(#003300, #FAFFFA); */
}

/* Handy */
@media screen and (max-width: 400px) 
{
    div.top
    {
        /*background-color: #FF00FF;   */
        background-image: url("top20.jpg");
        /* max-width: 360px; */
        max-width: 100%;
/*         width: 100% */;
        height: 40px;

        padding-top: 10px;
        margin-bottom: 10px;

        text-align: center;
        /* font-family: Calibri, Verdana, Arial, Helvetica, sans-serif; */
        font-size: 1em;
        color: #FFF;
        text-shadow: #000 0.1em 0.1em 0.05em;
        /* background: linear-gradient(#003300, #FAFFFA); */
    }
    body
    {
        font-size: 11px;
        /* max-width: 600px; */
        max-width: 100%;
        margin: auto;
        /* font-size: 1.0vw; */
        color: #444;
    }
    div.content
    {
        /* font-size: 10px; */
        /* max-width: 210px; */
        max-width: 70%;
        width: 50%;
        flex: 1;
        margin-right: 1em;
        margin-bottom: 3em;
        /* min-height: 600px;      */
    }
    div.container
    {
        max-width: 100%;
        /* width: 360px; */
        margin: auto;
        margin-top: 10px;

        /*border: 1px solid #000;*/
    }
}

/* Tablet */
@media screen and (min-width: 400px) and (max-width: 800px)
{
    
}

/* PC */
@media (min-width: 800px)
{
   
}


nav.menu
{    
    color: #000;
    background-color: #FFF;
    margin-right: 20px;
    padding-right: 00px; 
    border-left: #ACCFAC solid 4px;  
}


nav.menu li
{
    list-style-type: none;
    margin: 0; 
    padding: 0;
    border: 0;    
}

nav a { color: #000; }
nav.menu a
{
    display: block;
    padding: 6px; 
    margin-bottom: 0px;
    border-radius: 0px 12px 10px 0px;  
    text-shadow: #999 0.1em 0.1em 0.1em;  
    transition: background-color .05s ease-in;
    border-left: #2E572D solid 4px;
}

nav.menu a.active, nav.menu a:hover
{
    color: #FFF;
    background-color: #003300;
    background: linear-gradient(#5C7B5B, #003300);
    text-shadow: #000 0.1em 0.1em 0.05em;
    transition: background-color 0.01s;    
}



div.content
{
    flex: 1;
    margin-right: 1em;
    margin-bottom: 3em;
    /* min-height: 600px;      */
}



div.bottom
{
      
    font-size: 0.7em;
    position: fixed;
    bottom: 10px; 
}














/* spezialanfertigungen */
.bluelink
{
    color: #0000FF;
    text-decoration: underline;
}
.linkbutton /* button als link */
{
    color: #444;
    background:none;
    padding:0;
    font: inherit;
    cursor: pointer;
    border: none;
    white-space: normal;
    outline: none;
/*     width: 200px; */
}

.button1 /* span als button */
{
    border: 2px outset #808080;
    padding-left: 20px;
    padding-right: 20px;
    padding-top: 5px;
    padding-bottom: 5px;
    background-color: #D4D0C8;
    user-select: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    cursor: default;
    font-size: 0.75em;
    color: #000;
}
.button1:active { border-style: inset; }
.smallsquare
{
    padding: 2px;
    margin: auto;
    justify-content: center;
    align-items: center;
    width: 23px;
    height: 25px;
}

table.simple
{
    border-collapse: collapse;
    border-width: 1px;
    table-layout: fixed;
}
table.simple th { padding: 6px; }
table.zebragray tr:nth-child(2n) { background-color: #F0F0F0; }

/* generelle zusätze */
h1                  { font-size: 1.5em; }/* seiten überschrift */
h2                  { font-size: 1.2em; }/* haupt-unterpunkte */
h3                  { font-size: 1.0em; }/* unter-unterpunkte */
h4                  { text-decoration: underline; }/* unter-unterpunkte */
pre.wrap            { white-space: pre-wrap; }
textarea            { resize: none; width: 100%; height: 20em; }
textarea.small      { resize: none; width: 100%; height: 10em; }
select.timepicker2  { width: 2.5em; }
select.timepicker4  { width: 3.5em; }
select.hidearrow    { -webkit-appearance: none; -moz-appearance: none; -o-appearance:none; appearance: none;  }
select.hidearrow::-ms-expand  { display:none; }
.width1             { width: 5em; }
.width2             { width: 10em; }
.width3             { width: 15em; }
.width4             { width: 20em; }
.width5             { width: 25em; }
.width6             { width: 30em; }
.width7             { width: 35em; }
.width8             { width: 40em; }
.width9             { width: 45em; }
.height1            { height: 5em; }
.height2            { height: 10em; }
.height3            { height: 15em; }
.height4            { height: 20em; }
.height5            { height: 25em; }
.height6            { height: 30em; }
.height7            { height: 35em; }
.height8            { height: 40em; }
.height9            { height: 45em; }
.flex               { display: flex; align-items: flex-start; flex-wrap: wrap; align-content: center; }
.flexhl             { justify-content: flex-start; }
.flexhr             { justify-content: flex-end; }
.flexhc             { justify-content: center; }
.flexhs             { justify-content: stretch; }
.flexh              { justify-content: space-between; }
.flexvc             { align-items: center; }
.flexvs             { align-items: stretch; }
.flex1              { flex: 1; }
.flex2              { flex: 2; }
.flex3              { flex: 3; }
.flex4              { flex: 4; }
.flex5              { flex: 5; }
.flex6              { flex: 6; }
.flex7              { flex: 7; }
.flex8              { flex: 8; }
.flex9              { flex: 9; }
.border1            { border: 1px solid black; }
.border2            { border: 2px solid black; }
.roundborder        { border-radius: 0.6em; }
.hidden             { display: none; }
.bigfont1           { font-size: 1.1em; }
.bigfont2           { font-size: 1.2em; }
.bigfont3           { font-size: 1.3em; }
.bigfont4           { font-size: 1.4em; }
.bigfont5           { font-size: 1.5em; }
.bigfont6           { font-size: 1.6em; }
.bigfont7           { font-size: 1.7em; }
.bigfont8           { font-size: 1.8em; }
.bigfont9           { font-size: 1.9em; }
.paddingl0          { padding-left: 0.5em; }
.paddingl1          { padding-left: 1.0em; }
.paddingl2          { padding-left: 2.0em; }
.padding0           { padding: 0.0em; }
.padding1           { padding: 0.1em; }
.padding2           { padding: 0.2em; }
.padding3           { padding: 0.3em; }
.padding4           { padding: 0.4em; }
.padding5           { padding: 0.5em; }
.padding6           { padding: 0.6em; }
.padding7           { padding: 0.7em; }
.padding8           { padding: 0.8em; }
.padding9           { padding: 0.9em; }
.margin0            { margin: 0.0em; }
.margin1            { margin: 0.1em; }
.margin2            { margin: 0.2em; }
.margin3            { margin: 0.3em; }
.margin4            { margin: 0.4em; }
.margin5            { margin: 0.5em; }
.margin6            { margin: 0.6em; }
.margin7            { margin: 0.7em; }
.margin8            { margin: 0.8em; }
.margin9            { margin: 0.9em; }
.marginl0           { margin-left: 0.5em; }
.marginl1           { margin-left: 1em; }
.marginl2           { margin-left: 2em; }
.marginr0           { margin-right: 0.5em; }
.marginr1           { margin-right: 1em; }
.marginr2           { margin-right: 2em; }
.marginr3           { margin-right: 3em; }
.marginr4           { margin-right: 4em; }
.marginr5           { margin-right: 5em; }
.marginr6           { margin-right: 6em; }
.marginr7           { margin-right: 7em; }
.marginr8           { margin-right: 8em; }
.marginr9           { margin-right: 9em; }
.floatr             { float: right; clear: right; }
.placel             { text-align: left; }
.placer             { text-align: right; }
.placej             { text-align: justify; }
.placec             { text-align: center; }
.show1              { background-color: #EEFEFE; border: 1px solid #55EEEE; }
.show2              { background-color: #FEEEFE; border: 1px solid #EE55EE; }
.show3              { background-color: #EEEED0; border: 1px solid #D0D055; }
.hovergray:hover    { background-color: #E6E6E6;}
.maxsize            { width: 100%; height: 100%; }
.maxwidth           { width: 100%; }
.maxheight          { height: 100%; margin-top: 0px; margin-bottom: 0px; }
.bold               { font-weight: bold; }
.bolder             { font-weight: bolder; }
.inline             { display: inline-block; }
.inline1            { display: inline; }
.block              { display: block; }
.underline          { text-decoration: underline; }
.fixed              { position: fixed;}
.nowrap             { white-space: nowrap; }
.wrap               { white-space: normal; }
.height2l           { height: 2.6em; }

/* .lineclamp2         {  max-height: 2em;} */


/* tatsächlich benutzte für TTC */
.textlong           { width: 18em; }

/* Button */
.ttcbutton 
{
    font-size: 0.9em;

    background-color: #416841;
    outline: none;
    color: #000;
    color: #FFF;
    border-color: #003F00;
    border-width: 2px;
    border-radius: 8px;
    padding: 1px 3px;
    border-style: solid;
    border-left-color: #8EAA8E;
    border-top-color: #8EAA8E;
    border-right-color: #002A00;
    border-bottom-color: #002A00;
}
.ttcbutton:hover    { background-color: #648962; cursor: pointer; }
.ttcbutton:active   
{
    border-left-color: #002A00;
    border-top-color: #002A00;
    border-right-color: #8EAA8E;
    border-bottom-color: #8EAA8E;    
}




/*  TABELLEN  */
td.date             { min-width: 10.5em; }
td.name             { min-width: 18em; }
td.centered         { text-align: center; }

table
{
    border-collapse: separate;
    border-spacing: 0px;
    border: 1px solid #8C8C8C;
    table-layout: fixed;
    border-radius: 20px 20px 5px 5px;
}
table th
{
    background: linear-gradient(to bottom, #5C7B5B, #003300);
    color: #FFF;
    padding: 6px;
    border: none;
    border-bottom: 2px solid #8C8C8C;
    border-right: 1px solid #FFF;
}

table th:first-child { border-radius: 20px 0px 0px 0px; } /* oben links */
table th:last-child  { border-radius: 0px 20px 0px 0px; border-right: none; }/* oben rechts */
table td
{
    padding-left: 0.2em;
    padding-right: 0.2em;
    border: 1px solid #8C8C8C;
    border-width: 0px 1px 1px 0px;
}


table td:last-child { border-right: none; } /* letzte spalte */
table tr:last-child td { border-bottom: none; } /* unterste spalte */

table.single th{ border-radius: 20px 20px 0px 0px; border-right: none; }
table.single td {border-bottom: 1px solid #8C8C8C; }








.cookie-container {
  position: fixed;
  bottom: -100%;
  left: 0;
  right: 0;
  background: #004400;
  color: #f5f6fa;
  padding: 0 16px;
  box-shadow: 0 -2px 16px rgba(47, 54, 64, 0.39);
  transition: 100ms;
  text-align: center;
  font-size: 16px;
}

.cookie-container.active {
  bottom: 0;
  font-size: 16px;
}

.cookie-container a {
  color: #2277ff;
  font-size: 16px;
}

.cookie-btn {
  background: #F8F8F8;
  border: 0;
  color: #000000;
  padding: 6px 12px;
  font-size: 14px;
  margin-bottom: 4px;
  border-radius: 8px;
  cursor: pointer;
}


#cookiedingsbums a {color:#000; text-decoration:none;}

#cookiedingsbums a:hover {text-decoration:underline;}

#cookiedingsbums div {padding:10px; padding-right:40px;}

#cookiedingsbums { 
   outline: 1px solid #7b92a9; 
   text-align:left; 
   border-top:1px solid #fff;
   background: #d6e0eb; 
   background: -moz-linear-gradient(top, #d6e0eb 0%, #f2f6f9 100%); 
   background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#d6e0eb), color-stop(100%,#f2f6f9)); 
   background: -webkit-linear-gradient(top, #d6e0eb 0%,#f2f6f9 100%); 
   background: -o-linear-gradient(top, #d6e0eb 0%,#f2f6f9 100%);
   background: -ms-linear-gradient(top, #d6e0eb 0%,#f2f6f9 100%); 
   background: linear-gradient(to bottom, #d6e0eb 0%,#f2f6f9 100%); 
   filter: progid:DXImageTransform.Microsoft.gradient(   startColorstr='#d6e0eb', endColorstr='#f2f6f9',GradientType=0 ); 
   position:fixed;
   bottom:0px; 
   z-index:10000; 
   width:100%; 
   font-size:12px; 
   line-height:16px;}

#cookiedingsbumsCloser {
   color: #777;
   font: 14px/100% arial, sans-serif;
   position: absolute;
   right: 5px;
   text-decoration: none;
   text-shadow: 0 1px 0 #fff;
   top: 5px;
   cursor:pointer;
   border-top:1px solid white; 
   border-left:1px solid white; 
   border-bottom:1px solid #7b92a9; 
   border-right:1px solid #7b92a9; 
   padding:4px;
   background: #ced6df; /* Old browsers */
   background: -moz-linear-gradient(top, #ced6df0%, #f2f6f9 100%); 
   background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ced6df), color-stop(100%,#f2f6f9)); 
   background: -webkit-linear-gradient(top, #ced6df0%,#f2f6f9 100%); 
   background: -o-linear-gradient(top, #ced6df0%,#f2f6f9 100%); 
   background: -ms-linear-gradient(top, #ced6df0%,#f2f6f9 100%); 
   background: linear-gradient(to bottom, #ced6df0%,#f2f6f9 100%); 
   filter: progid:DXImageTransform.Microsoft.gradient(    startColorstr='#ced6df', endColorstr='#f2f6f9',GradientType=0 ); 
 }

#cookiedingsbumsCloser:hover {
    border-bottom:1px solid white; 
    border-right:1px solid white; 
    border-top:1px solid #7b92a9; 
    border-left:1px solid #7b92a9;
}



