/* Version:  März 2023 / Creator: 133 */

/* --- Normal --- */
@font-face { 
	font-family: "Open Sans";	 
	src: url(../../ofl/opensans/OpenSans[wdth,wght].woff2) format('woff2');
	font-weight: 300, 400, 500, 600, 700, 800, 900;
	font-style: normal;
}

@font-face { 	
	font-family: "Open Sans";	 
	src: url(../../ofl/opensans/OpenSans-Italic[wdth,wght].woff2) format('woff2');
	font-weight: 300, 400, 500, 600, 700, 800, 900;
	font-style: italic;
}

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
 html {
	 -webkit-text-size-adjust: 100%; /* 2 */
}

* {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}

body {
	font-family: 'Open Sans', sans-serif;
	font-size: 100%;
	color: #000;
	text-decoration: none;
	font-weight: normal;
	word-spacing: normal;
	line-height: 1.3;
	background-color: #fff;
	/*	Hintergrundbilder werden in Chrome mit ausgedruckt	*/
	-webkit-print-color-adjust:exact;
}

.frame-outer {
	position: relative;
	width: 720px; /*	maximale Breite: 782px	*/
	margin: 1.3rem auto;
	background-color: #fff;
	border: 0.02rem solid #a7a9a4;
	box-shadow: -0.1rem 0.1rem 1rem rgba(0,0,0, 0.2);
	font-size: 0.78rem; /*	minimale Schriftgröße 0.6rem	*/
}

.frame-outer::after {
	content: "";
	display: block;
	clear: both;
}

/*--für Titel--*/
h1 {
	margin: 0;
	font-size: 1.8rem;
	font-weight: 700;
	color: #fff;
}

h1 span {
	font-size: 1rem;
}

/*--für Untertitel (Vollzeit, Teilzeit/Standort)--*/
h2 {
	margin: 0;
	font-size: 1rem;
	font-weight: 500;
}

/*--für Überschiften--*/
h3 {
  display: inline-block;
  background: linear-gradient(to bottom, #6fd25a 0%, #52b83e 100%); /* hell → dunkel */
  color: #ffffff;
  padding: 0.5rem 1rem;
  font-weight: 500;
  font-size: 1rem;
  
  letter-spacing: 0.03em;
  border-radius: 1px;

  /* Rahmen & Tiefe */
  border: 1px solid #4aa637; /* definierte Border-Farbe */
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.35),  /* sanfter Lichtreflex oben */
    0 2px 3px rgba(0,0,0,0.18);             /* weicher Schatten außen */
}

/*--für kleine/unter Überschiften--*/
h4 {
	margin: 0;
	font-size: 1rem;
	font-weight: 500;
}

#logo {
	padding: 1.8rem 4%;
}

#logo img {
	width: 13%;
}

#header {
	position: relative;
}

.center {
	text-align: center;
}

.versalien {
	text-transform: uppercase;
}

.blocksatz {
	text-align: justify;
}

hr {
	border: 0.1rem solid #1e9d8e;
	width: 4rem;
	margin: 0 auto;
}

.content {
	position: relative;
	padding: 1.8rem 4%;
}

.content::after {
	content: "";
	display: block;
	clear: both;
}

/*--für Stellentitel--*/
#title { 
	position: relative;
	padding: 1rem 4%;
	background: #52b83e;
}

#footer {
	position: relative;
	padding: 1rem 4%;
	background: #52b83e;
	color: #fff;
}

#footer::after {
	content: "";
	display: block;
	clear: both;
}
/*--Flex--*/

.bgbild {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.flex {
	display: flex;
	display: -ms-flexbox;
	display: -webkit-flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	/*align-items: flex-start;*/
	flex-direction: row;
	flex-wrap: wrap;
}

.left {
	width: 48%;
}

.right {
	width: 48%;
}

/*--Float--*/
.box-left {
  float: left;
  width: 48%;
}

.box-right {
	float: right;
	width: 48%;
}

.clear {
	clear: both;
	font-size: 0;
	line-height: 0;
}

/*--Links - bitte für unterschiedliche Hintergründe farblich anpassen!--*/
a:link, a:visited, a:active  {
    text-decoration: none;
	color: #fff;
}

a:hover {
	text-decoration: underline;
	color: #fff;
}

/*--Listen--*/
ul {
	margin: 0;
	list-style-type: none;
}

li {
	position: relative; 
	margin: auto;
	padding: 0 0 0 1rem;
}

li:last-child {
	padding-bottom: 0;
}

 li::before {
	 position: absolute;
	 top: 0;
	 left: 0;
	 content: "•";
	 font-size: 0.8rem;	
} 

/*--Eingrückte Listenpunkte--*/
li ul{ 
	margin: 0 0 0 0;
	padding: 0 0 0 1rem;
}

/*--Button--*/
.button_box {
	text-align: center;
}

.button_box::after {
	clear: both;
	content: "";
	display: block;
}

.button a {
	display: inline-block;
	background: #fff;
	padding: 0.6rem 2rem 0.6rem 2rem;
	margin: 0 auto;
	cursor: pointer;
	
	border: 0.2rem solid #fff;
	transition: all 140ms ease 0s;
	-moz-transition: all 140ms ease 0s;
	-webkit-transition: all 140ms ease 0s;
	color: #52b83e;
}
.button a:hover {
	background-color: #52b83e;
	text-decoration: none;
	color: #fff;
	border: 0.2rem solid #fff;
}

/*--Slider editierbar--*/
.slider-wrap {
  max-width: 800px;
  width: auto;
  height: auto;
  position: relative;
  margin: 0;
  overflow: hidden;
}

.slider-wrap img {
  display: block;
}

.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;
}

@keyframes image {
  0% { opacity: 0; animation-timing-function: ease-in; }
  5% { opacity: 1; animation-timing-function: ease-out; }
  25% { opacity: 1; }
  30% { opacity: 0; }
  100% { opacity: 0; }
}

@-webkit-keyframes image {
  0% { opacity: 0; -webkit-animation-timing-function: ease-in; }
  5% { opacity: 1; -webkit-animation-timing-function: ease-out; }
  25% { opacity: 1; }
  30% { opacity: 0; }
  100% { opacity: 0; }
}

.slideshow li {
  margin: 0;
  padding: 0;
  list-style: none;
}
.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;
}

.slideshow li::before {
  display: none;
}

/* ---------------------------
   SLOGAN-STYLING
--------------------------- */
.slogan {
  position: absolute;
  top: 20%;
  left: 0%;
  z-index: 10;
}

/* Container stapelt die Zeilen mit Lücke */
.slogan-lines {
  margin: 0;
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;   /* linksbündig */
  gap: 0.6rem;               /* <-- Abstand/Lücke zwischen den Balken */
}

/* Einzelne Balken-Zeilen */
.slogan-lines span {
  display: inline-block;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 1.25;
  color: #2eaf3a;                     /* grün – gern anpassen */
  background: rgba(255, 255, 255, 0.75);   /* halbtransparent (der „Balken“) */
  padding: 0.4rem 1.8rem;
  /* optional: leichte Rundung/Feinschliff */
  border-radius: 2px;
}
/*--Angaben Bilder, Video, etc.--*/

iframe {
	display: block;
    width: 100%;
}

.video-wrapper iframe,
.video-wrapper object,
.video-wrapper embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.video-wrapper {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
}

#video{
	width: 100%;
	height: 100%;
}

img {
	display: block;
	max-width: 100%;
	height: auto;
	width: auto;
	border: 0;
}

.imgcenter{ 
	display: inline-block;
}

strong { 
	font-weight: 700;
}

p {
	margin:0;
}

p:empty {
	height: 1rem;
}

.hide_m {}

.hide {
  display: none;
}

.refnr {}

.apply {}
