/* Version: 05.03.2018 */


 /* ------------------- NICHT VERÄNDERN ------------------------- */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
@font-face { font-family: "Roboto";
	 
  src: local('Roboto'),     
	   url('https://fonts.pwrk.dev/ofl/roboto/Roboto[wdth,wght].woff2') format('woff2') ;
	font-weight: 300, 400, 500, 600, 700, 800, 900;
  font-style: normal;
}

 html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

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

 /* ----------------------------------------------------------- */

body {
  font-family: 'Roboto', Arial, Helvetica, sans-serif;
/* ------------------- NICHT VERÄNDERN ------------------------- */
  font-size: 100%;
 /* ------------------------------------------------------------ */
  color: #000;
  text-decoration: none;
  font-weight: normal;
  word-spacing: normal;
  line-height: 1.3;
  background-color: #f1f1f1;
  /*	Hintergrundbilder werden in Chrome mit ausgedruckt	*/
  -webkit-print-color-adjust:exact;
}

p {
  margin: 0 0 0rem 0;
}

.abstand {
  margin-top: 0.5rem ;
}

.abstand25 {
  margin-top: 0.25rem ;
}
.ueber {
	background-image: linear-gradient(90deg,#00aad2,#b7cf41);
	color: #fff;
	padding: 0.25rem 2%;
	font-size: 0.95rem;
}

h1 {
  line-height: 1.25;
  font-size: 2rem;
  font-weight: 700;
  padding: 0;
  margin: 0;
}

h2 {
  margin: 0;
  line-height: 1.5;
  font-size: 1.0rem;
  font-weight: normal;
}
h3 {
  margin: 0;
  line-height: 1.1;
  font-size: 1.0rem;
  font-weight: normal;
}
#frame-outer {
  position: relative;
  padding: 0;
  width: 780px;
  margin: 1.3rem auto;
  background-color: #FFF;
  border: 0.02rem solid #A7A9A4;
  box-shadow: -0.1rem 0.1rem 1rem #999;
  font-size: 0.675rem;
	overflow: hidden;
}

#frame-outer::after {
  content: "";
  display: block;
  clear: both;
}


#logo {
   padding: 1.1rem 4%;
}

#header {
  position: relative;
	padding: 0.5rem 4%;
	z-index: 1;
	
}

#stoerer {
	padding: 0.5rem 12%;
	position: absolute;
	left: -6rem;
	top: 1rem;
	background-color: #e94924;
	color: #fff;
	-moz-transform: rotate(-32deg);
-ms-transform: rotate(-32deg);
-o-transform: rotate(-32deg);
-webkit-transform: rotate(-32deg);	

transform: rotate(-32deg);

	z-index: 2;
	text-align: center;
}

#slogan {
  position: absolute;
  bottom: 3%;
  left: 0;
  padding: 0.5rem 3%;
  /* --------------------- FALLBACK FÜR BROWSER DIE RGBA-WERTE NICHT UNTERSTÜTZEN -------------------- */
  background: rgb(100, 30, 30);
  /* ------------------------------------------------------------------------------------------------- */
  background: rgba(100, 30, 30, 0.8);
  color: #fff;

} 

.content {
  padding: 1.1rem 4% 0.75rem 4%;
}

.content::after {
  content: "";
  display: block;
  clear: both;
}

#title {
	background-image: linear-gradient(90deg,#00aad2,#b7cf41);
	color: #fff;
	padding: 0.5rem 4%;
}
.box-left0 {
  float: left;
  width: 60%;
}

.box-right0 {
  float: right;
  width: 38%;
}
.box-left {
  float: left;
  width: 49%;
}

.box-right {
  float: right;
  width: 48.5%;
}

.box_grey {
	background-color: #ecebeb;
	padding: 0.5rem 3%;
	font-size: 0.9rem;
}

#footer {
padding: 0.5rem 4%;
	background-color: #ecebeb;
	
}

#footer::after {
  content: "";
  display: block;
  clear: both;
}

img {
  max-width: 100%;
  height: auto;
  width: auto9;
  border: 0;
  vertical-align: middle;
}

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

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

a:hover {
  text-decoration: underline;
  color: #000;
}

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

.white {
	color: #fff!important;
}

.red {
	color: #e94924;
}

ul {
  margin: 0.25rem auto 1rem 0.15rem;
  padding-left: 0.5rem;
list-style-type: none; 
}

li {
  position: relative; 
  margin: auto;
  padding-bottom: 0.2rem;
}


li::before {
  position: absolute;
  top: -0.35rem;
  left: -0.6rem;
  content: "•";
  font-size: 1.35rem;
  color: #e94924;
} 





ul.unter {
  margin: 0.2rem auto 0rem 0.15rem;
  padding-left: 0.5rem;
list-style-type: none; 
}

ul.unter li {
  position: relative; 
  margin: auto;
  
}


ul.unter li::before {
  position: absolute;
  top: -0.35rem;
  left: -0.6rem;
  content: "•";
  font-size: 1.0rem;
  color: #e94924;
} 


ul.unter2 {
  margin: 0.2rem auto 0rem 0.15rem;
  padding-left: 0.5rem;
list-style-type: none; 
}

ul.unter2 li {
  position: relative; 
  margin: auto;
  
}


ul.unter2 li::before {
  position: absolute;
  top: 0rem;
  left: -0.6rem;
  content: "º";
  font-size: 1.0rem;
  color: #e94924;
}

hr {
	background-color:#e94924;
	color:#e94924; 
	border: #e94924; 
	height: 0.1rem;
	width: 6%;
	margin: 0 0 0.5rem 0;
}

.clear {
  clear: both;
  font-size: 0;
  line-height: 0;
}

.hide {
  display: none;
}

.refnr {}

.justifier {
  text-align: justify;
  text-align-last: justify;
}

.justifier:after {
  content: "";
  display: inline-block;
  width: 100%;
}

p:empty {
  height: 1rem;
}

.table {
  display: table;
  width: 100%;
  /* ----------- LÄSST GRENZEN VERSCHWINDEN, SODASS KEINe BEGRENZUNG ERSCHEINT ----------------- */
  /* border-collapse: collapse; */
  /* --------------------------------------------------------------------------------------------*/
  table-layout: fixed;
  /* ----------- ERSTELLT EINEN BEGRENZUNGSRAHMEN JEDOCH AN ALLEN SEITEN ----------------------- */
  /* border-spacing: 3rem; */
  /* --------------------------------------------------------------------------------------------*/
}

.row {
  display: table-row;
}

.cell-left,
.cell-right {
  display: table-cell;
  vertical-align: bottom;
  padding: 1rem 3%;
}

.cell-left {
  border-right: 15px solid #fff;
}

.cell-right {
  border-left: 15px solid #fff;
}

.bg-darkblue {
  background: rgb(78, 147, 250);
}

.bg-lightblue {
  background: rgb(127, 174, 245);
}

/* -------------- FLEXBOX EIGENSCHAFTEN -------------------- */
/* -----GENERELL: FLEXBOX STATT FLOAT NEHMEN, DA SIE BESSERE OPTIONEN ZUR GESTALTUNG BIETEN, 
JEDOCH DARAUF ACHTEN, DASS FLEXBOXEN NICHT VOM INTERNET EXPLORER 9 UND ABWÄRTS UNTERSTÜTZT WERDEN. => IN DEM FALL FLOATEN --------------------- */

/* .flex {
  display: table;
  display: flex;
  display: -ms-flexbox;
  display: -webkit-flex;
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 1rem 0;
} 
*/

/* -------------- FLEXBOX EIGENSCHAFTEN FÜR GLEICHE HOHE BOXEN MIT "PLATZ ZWISCHEN DEN BOXEN" (siehe "justify-content: space-between;") -------------------- */

.flex {
  display: flex;
  display: -ms-flexbox;
  display: -webkit-flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  margin: 0.5rem 0;
}

.flex div {
	width: 25%;
	
}

.left {
  width: 48%;
  padding: 1rem 3%;
}

.right {
  width: 48%;
  padding: 1rem 3%;
}

.button_box {
  text-align: center;


}

.button_box::after {
  clear: both;
  content: "";
  display: block;
}


/*_______________________

BUTTON MIT ANIMATION
_______________________
*/

.button a {
  display: inline-block;
  background-color: #e94924;
  padding: 0.75rem auto 0.5rem auto;
  margin: 1rem 4% 1rem 4%;
  cursor: pointer;
  -webkit-border-radius: 0.1rem;
  border-radius: 0.1rem;
  border: 0.1rem solid #e94924;
  transition: all 140ms ease 0s;
  -moz-transition: all 140ms ease 0s;
  -webkit-transition: all 140ms ease 0s;
  color: #fff;
	width: 90%;
	font-size: 1.0rem;
}
.button a:hover {
  background-position: 15px center;
  background-color: #e94924;
  text-decoration: none;
  color: #fff;
}

.button_drei a {
  display: inline-block;
  background-color: #e94924;
  padding: 1rem auto 1rem auto;
  margin: 3rem 4% 1rem 4%;
  cursor: pointer;
  -webkit-border-radius: 0.1rem;
  border-radius: 0.1rem;
  border: 0.1rem solid #e94924;
  transition: all 140ms ease 0s;
  -moz-transition: all 140ms ease 0s;
  -webkit-transition: all 140ms ease 0s;
  color: #fff;
	width: 90%;
	font-size: 1.15rem;
}
.button_drei a:hover {
  background-position: 15px center;
  background-color: #e94924;
  text-decoration: none;
  color: #fff;
}

.slider-wrap {
    max-width: 800px;

    width: auto;
    height: auto;
    position: relative;
    
    margin: 0;
    overflow: hidden;
	border-bottom: #59c1da solid 0.25rem;

}
  
.slideshow {
    position: absolute;
    width: 100%;
    top: 0px;
    left: 0px;
    z-index: 0;
}

.slideshow li span {
    width: 100%;
    position: absolute;
    top: 0px;
    left: 0px;
    color: transparent;
    opacity: 0;
    z-index: 0;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-animation: image 24s linear infinite;
    animation: image 24s linear infinite;
}
  
/*

Keyframe-Berechnung:

1. 100 / Anzahl der Bilder
2. Ergebnis ist das Intervall eines einzelnen Keyframes
(Im Beispiel unten ist es die 51% {opacity: 0;})
3. Also passiert eine einzelne Animation zwischen 0% und 51%.
(0% - 8% (Differenz 8%) wird das Bild eingeblendet. Von 43% - 51% (Differenz 8%) sollte dann das Bild ausgeblendet werden)
4. Falls die Geschwindigkeit erhöht werden soll, kann die Differenz verringert werden, wobei dies am Anfang sowie am Ende gleichbleibend sein muss, damit die Animation symmetrisch abläuft.

*/
  
@keyframes image {
    0% {
      opacity: 0;
      -webkit-animation-timing-function: ease-in;
      animation-timing-function: ease-in;
    }
    5% {
      opacity: 1;
      -webkit-animation-timing-function: ease-out;
      animation-timing-function: ease-out;
    }
    20% {
      opacity: 1;
    }
    25% {
      opacity: 0;
    }
    100% {
      opacity: 0;
    }
}

@-webkit-keyframes image {
    0% {
        opacity: 0;
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
    5% {
        opacity: 1;
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
    }
    20% {
        opacity: 1;
    }
    25% {
        opacity: 0;
    }
    100% {
        opacity: 0;
    }
}
  
.slideshow li {
    margin:0;
    padding:0;
    list-style: none;
    -webkit-animation-delay: 24s;
    animation-delay: 24s;
}
.slideshow li:nth-child(1) span {}
.slideshow li:nth-child(2) span {
    -webkit-animation-delay: 6s;
    animation-delay: 6s;
}
.slideshow li:nth-child(3) span {
    -webkit-animation-delay: 12s;
    animation-delay: 12s;
}
.slideshow li:nth-child(4) span {
    -webkit-animation-delay: 18s;
    animation-delay: 18s;
}

ul.slideshow {
    margin: 0;
    padding-left: 0;
}

/*
_______________________

KAPITÄLCHEN, BULLETPOINT
_______________________

<span class="capital" style="float: left; width: 43px; height: 20px; line-height: 47px; background: transparent; font-size: 38px; margin-top: -5px; margin-right: -32px; margin-bottom: 5px; background-color: transparent;">I</span>

ul li {
background: url(bp.jpg) no-repeat 2px 5px; padding-left:8px;
}


/*
_______________________

MARKIERTER TEXT
_______________________

::selection {
background: #ffb7b7;
}
::-moz-selection {
background: #ffb7b7;
}

*/
.apply {}
