/* roboto-mono-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto Mono';
  font-style: normal;
  font-weight: 400;
  src: url('./font/roboto-mono-v23-latin-regular.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('./font/roboto-mono-v23-latin-regular.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}

/* roboto-mono-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto Mono';
  font-style: normal;
  font-weight: 700;
  src: url('./font/roboto-mono-v23-latin-700.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('./font/roboto-mono-v23-latin-700.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}

a
{
	color: #00FF6A;
	text-decoration: none;
}
a:active 
{
	color: #666;
	text-decoration: none;
}
a:hover
{
   color: #00FF6A;
   text-decoration: none;
   text-shadow: none;
}
   
html,body
{
font-family: "Roboto Mono", sans-serif;
	font-size: 1.1em; font-weight: 400;
  color: #fff; background-color:#052722; -webkit-text-size-adjust:none;
}

/*p, td {
  -ms-hyphens: auto;
  -webkit-hyphens: auto;
  hyphens: auto;
}   */


input, textarea, select {
font-family: "Roboto Mono", sans-serif;
font-size: 1.0em;
color: #052722;
padding: 12px 12px 10px;
border: 1px solid #daebf4;;
background: #fff; outline: none;
line-height: 1.2em; font-weight:400;
-webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; border-radius: 0;
}
input:focus, textarea:focus {
color: #052722; border: 1px solid #052722; box-shadow: 0px 0px 5px 0px #052722;
-moz-box-shadow: 0px 0px 5px 0px #052722;
-webkit-box-shadow: 0px 0px 5px 0px #052722;
}

input[type=checkbox] {
    float: left; margin: 0 10px 0 0;-webkit-appearance:none;-moz-appearance:none; appearance:none; width: 22px; height: 22px; display: inline-block; position: relative; padding: 0; box-sizing: border-box;
}
input[type=checkbox]:checked {
    background:#052722;
}
input[type=checkbox]:checked::after {
content: '';
position: absolute;
background-color: #fff;
left: 5px;
top: 9px;
width: 2px;
height: 2px;
box-shadow: 2px 0 0 #fff, 4px 0 0 #fff, 4px -2px 0 #fff, 4px -4px 0 #fff, 4px -6px 0 #fff, 4px -8px 0 #fff;
transform: rotate(45deg);
}
 
.small
{
   font-size: 0.9em;
}
         
h1 {
font-size: 4.9em;
color: #ffffff;
margin:20px 0 30px 0; font-weight:300;
line-height: 1.1em;
}


h1.aligncenter {
    position: relative; padding-bottom: 15px; margin-bottom: 50px; letter-spacing: -1px;
}
h1.aligncenter::after {
    content:""; display: block; position: absolute; width: 100px; margin: 0 0 0 -50px; height: 2px; background: #052722;   left: 50%; bottom: 0;
}

h2 {
font-size:5.5em;
color: #00FF6A;
font-weight:400;
margin: 30px 0 20px 0;
line-height: 1.1em;
font-weight: 300;
}
h2:first-child {
    margin-top: 5px;
}

.balken h2 {
    color: #052722;
}

h3 {
font-size: 1.3em; font-weight: 400;
margin: 20px 0 15px 0;
line-height: 1.5em;
color: #00FF6A;
}


h4 {
font-size: 1.2em;
margin: 20px 0 0 0;
color: #052722;font-weight: 400;line-height: 1.5em;
}

.boxblau h4 {
    border-bottom: 1px solid #052722; margin: 10px 0 20px 0; padding:0 0 10px 0;
}

.marker {
   font-size: 1.2em;
}

strong, b {
    font-weight: 700;
}

blockquote {
margin: 20px 0; font-size: 1.1em;
}

.bildrund img {
    border-radius: 50%; margin: 30px 0;
}

.alignleft {text-align: left;}
.aligncenter {text-align: center;}
.alignright {text-align: right;}

.unav h3 a {
padding-left: 20px;
font-size: 90%;
}

p {
margin: 10px 0 15px 0;
line-height: 1.6em;
}
p.tel::before {
  display: inline-block; padding: 0 10px 0 0;
  font-family: 'icons';
  text-decoration: none;
  speak: none; font-size: 1.2em;
  content: "\e804"; font-weight: normal;
}
p.email::before {
  display: inline-block; padding: 0 10px 0 0;
  font-family: 'icons';
  text-decoration: none;
  speak: none; font-size: 1.2em;
  content: "\e90c"; font-weight: normal;
}
header a.tel::before {
  display: inline-block; padding: 0 10px 0 0;
  font-family: 'icons';
  text-decoration: none;
  speak: none; font-size: 1.2em;
  content: "\e804"; font-weight: normal;
}
header a.cryptmail2::before {
  display: inline-block; padding: 0 10px 0 0;
  font-family: 'icons';
  text-decoration: none;
  speak: none; font-size: 1.2em;
  content: "\e90c"; font-weight: normal;
}


ul.liste li {
margin-bottom: 15px;
}

ul.liste {
    list-style-image:url('images/dot.svg');
    margin: 20px 0; padding: 0 0 0 30px;
}


td {
    line-height: 1.5em;
}

p.willkommen {
color: #858494;
margin-top:15px;
font-size: 120%;
font-weight: bold;
}

p.utitle {
font-weight: bold;
}

.teaserseite {
    float: left; width: 102%; margin: 0 0 0 -1%; display: flex; flex-wrap: wrap;
}
.teaserseite .artikel {
    float: left; width: 98%; margin: 0 1%;
}
.teaserbox, .box {
margin:10px 1%;
float:left;
padding: 15px;
box-sizing: border-box;
background:#daebf4;
width: 31.33%; -webkit-transition: all 0.3s ease;
-moz-transition: all 0.3s ease;
transition: all 0.3s ease;
text-align: center; border-radius: 5px;

}

.teaserbox {
    background-image: url('images/pfeilre.svg');
    background-position: left 20px bottom 20px;
    background-repeat: no-repeat;
}
.teaserbox:hover {
    background-color: #fff; box-shadow: 0px 0px 5px 0px #666;
-moz-box-shadow: 0px 0px 5px 0px #666;
-webkit-box-shadow: 0px 0px 5px 0px #666;
}

#textfeld img.boxbild {
float: left;
margin: 0 0 10px;
max-width:100%; border-radius: 5px;
}

.teaserbox h2 {
padding: 0;
margin: 10px 0 5px 0;
color: #052722;  font-size: 1.0em;
text-align: right;
}

.teaserbox h2 a:link , .teaserbox h2 a:visited {
color: #052722;
text-decoration: none;
}

.teaserbox h2 a:hover, .teaserbox h2 a:active {
color: #052722;
}

p.teaserinhalt {
margin:0;
padding: 0; text-align: right;
}
div.teaserinhalt {
    float: right; width: 60%;
}

hr {
    border: 0; float: left; width: 100%; height: 2px; background:#052722; margin: 10px 0;
}

ul {
    line-height: 1.5em; padding: 0 0 0 25px;
}


.preis span {
    display: inline-block; padding: 10px 10px 0 0;
}
.preis span.preis1 {
    font-size: 2.0em;
}


.visible {
  opacity: 1;
transform:translateX(0);
}

h3.accordeonlink {float: left; width: 100%; padding: 4px 20px 3px; margin: 10px 0 0; background:#052722; color: #fff;  cursor: pointer; font-size: 1.0em; border-bottom: 1px solid #ddd; line-height:30px;transition: all .5s ease-in-out; box-sizing: border-box; }
h3.accordeonlink:hover {
    background: #00FF6A;
}

h3.offen { background:#00FF6A; color:#052722; }
div.accordeon {
    float: left; padding: 10px 20px; background: #f4f7f8; width: 100%; box-sizing: border-box;
}

h3.accordeonlink:after {
  display: block; padding: 0 10px;
  font-family: 'icons';
  text-decoration: none;
  speak: none; font-size: 0.9em;
  content: "\e806"; float: right;
}

h3.offen:after {
  display: inline-block; padding: 0 10px;
  font-family: 'icons';
  text-decoration: none;
  speak: none; font-size: 0.9em;
  content: "\e805";float: right;
}


ul.check {
            margin: 0 0 10px 0;
			padding: 0;
			list-style-type: none;
}
ul.check li {
    position: relative; padding: 2px 0 2px 25px;
}
ul.check li:before {
   position: absolute; top: 1px; left:2px;
  display: block; padding:0;
  text-decoration: none; float: left;
  font-size: 1.0em;
  content: "»";
}
table {
    max-width: 100%;
}

a.backlink {
float: right;
display: block;
text-decoration: none;
font-weight:400; text-align: center;
padding: 10px 25px 8px; margin:10px 20px 10px 0; background:transparent; min-width: 100px;
color:#00FF6A;
-webkit-transition: all 0.5s;
-moz-transition: all 0.5s;
transition: all 0.5s;
text-shadow: none !important;
border-radius: 20px;
border: 1px solid #00FF6A;
}

a.weiterlink  {
display: inline-block;
text-decoration: none;
font-weight:400; text-align: left;
padding: 15px 15px 5px; margin:10px 10px 10px 0; background:transparent; min-width: 200px;
color:#052722;
-webkit-transition: all 0.5s;
-moz-transition: all 0.5s;
transition: all 0.5s;
text-shadow: none !important;
background: #00FF6A;
text-transform: uppercase;
}

a.backlink:hover {
background: #00FF6A !important;
color:#fff;
text-decoration: none;
}

a.weiterlink:hover {
background: #052722 !important;
color:#00FF6A;
text-decoration: none;
}


a.buttonlink  {
display: inline-block;
text-decoration: none;
font-weight:400; text-align: left;
padding: 10px 15px 8px; margin:10px 20px 10px 0; background:transparent; width: 350px; max-width: 90%;
color:#fff; background: url('images/buttonpfeil.svg') bottom 20px right 20px no-repeat #052722;
-webkit-transition: all 0.5s;
-moz-transition: all 0.5s;
transition: all 0.5s; font-size: 1.2em;
text-shadow: none !important;
border-radius: 20px; height: 100px;
}
a.buttonlink:hover {
    background-color: #00FF6A; transform: scale(0.97,0.97);
}


@media only screen and (min-width: 680px)
{
div.zs {-webkit-columns: 2; -moz-columns: 2; columns: 2; float: left; width: 100%; margin: 0;
-webkit-column-gap: 30px; -moz-column-gap: 30px; column-gap: 30px;
    }
div.zs p {margin: 0 0 20px;}
}


@media only screen and (max-width: 960px) {
.teaserbox, .box {width: 48%; }

}


@media only screen and (max-width: 680px)
{
body {font-size: 1.0em;}      
h1 {font-size: 3.7em;}
h2 { font-size: 2.5em;}
h3 { font-size: 1.1em;}

h2.accordeonlink { font-size: 1.1em; }
.arbeitsbuehne .bildrahmen {margin: 0 0 20px 0; width: 100%; max-width: 100%;}
.arbeitsbuehne table, table.abtab { width: 100%; }
}

@media only screen and (max-width: 460px)
{
#textfeld img.boxbild {margin: 0 0 10px;max-width: 100%;}

.teaserbox, .box {width: 98%; }
}

.animation { transition: all .8s ease-in-out; transition-delay: 50ms; }

.animation.-opacity { opacity: 0; }
.animation.-opacity.inview { opacity: 1; }

.animation.-slide-top { transform: translateY(50px); }
.animation.-slide-top.inview  { transform:translateY(0); }

.animation.-slide-left { transform: translateX(150px); }
.animation.-slide-left.inview  { transform:translateX(0); }

.animation.-slide-right { transform: translateX(-150px); }
.animation.-slide-right.inview  { transform:translateX(0); }

.animation.-pop { transform: scale(0.1); }
.animation.-pop.inview { transform: scale(1.0); }