/* CSS Document */

/*##########################  HTML TAG  ###################################*/ 

body, html {
	margin-top: 0vh;
	margin-right: 0vh;
	margin-left: 0vh;
	margin-bottom: 0vh;
	width: 100%;
	height: 100%;
	color: #FFFFFF;
	background-image: -webkit-linear-gradient(309deg, rgba(41,171,226,1.00) 0.52%, rgba(34,181,115,1.00) 100%);
	background-image: -moz-linear-gradient(309deg, rgba(41,171,226,1.00) 0.52%, rgba(34,181,115,1.00) 100%);
	background-image: -o-linear-gradient(309deg, rgba(41,171,226,1.00) 0.52%, rgba(34,181,115,1.00) 100%);
	background-image: linear-gradient(141deg, rgba(41,171,226,1.00) 0.52%, rgba(34,181,115,1.00) 100%);
	background-repeat: no-repeat;
	/*background-attachment: scroll;*/
	background-position: 0% 0%;
	font-family: titling-gothic-fb-extended, sans-serif;
	font-style: normal;
	font-weight: 100;
	background-size: cover;
	background-clip: border-box;
	background-attachment: fixed;
	background-color: rgba(255,255,255,0.30);
	border-style: none;
}

a {
    color: rgba(255,255,255,1);
}
a:link {
    text-decoration: none;
}
a:visited {
    text-decoration: none;
}
a:hover {
    text-decoration: none;
    color: rgba(255,255,255,1);
}
a:active {
    text-decoration: none;
    color: rgba(196,255,212,1.00);
}

h2 {
    padding-top: 0px;
    position: relative;
    font-style: normal;
    font-weight: 300;
    font-size: 2em;
    font-variant: normal;
}
h3 {
    padding-top: 0px;
    position: relative;
    font-family: titling-gothic-fb-extended, sans-serif;
    font-style: normal;
    font-weight: 300;
    font-size: 1.28em;
    font-variant: normal;
    margin-top: 0px;
    color: rgba(255,255,255,0.74);
}  

h5 {
    margin-top: 0px;
    padding-top: 0px;
    position: relative;
    font-style: normal;
    font-weight: 300;
    font-size: 1.28em;
    font-variant: normal;
}

h4 {
    color: #D4272A;
    padding-top: 0px;
    position: relative;
    font-style: normal;
    font-weight: 300;
    text-shadow: 0px 0px 69px hsla(0,0%,100%,1.00);
    font-size: 1.28em;
    font-variant: normal;
}

.clearleft {
    clear: left;
}
.clearright {
    clear: right;
    width: 0px;
}

.clear_both {
    clear: both;
}

p {
    margin-top: 0vw;
}

.ausgleichunten {
    margin-bottom: -4vw;
    position: relative;
}

.ausgleichoben {
    margin-top: -4vw;
    position: relative;
}

/*##########################  HEADER TAG  ###################################*/ 

header {
    width: 86%;
    /*height:100%; */
    overflow: hidden;
    float: left;
    padding-top: 7%;
    padding-right: 7%;
    padding-left: 7%;
    padding-bottom: 7%;
    position: relative;
}

header #ki_menu {
    float: right;
    display: inline-block;
}

header #ki_menu ul {
    margin: 0;
    padding: 0;
    list-style-type: none;
}

header .ebene {
    color: hsla(0,0%,100%,1.00);
    float: left;
    width: 100%;
    position: relative;
}

header #ki_slogan {
    position: relative;
    float: right;
    margin-bottom: 10vh;
    text-align: right;
    font-size: 5vw;
    min-width: 199px;
    /*font-family: p22-stickley-pro-caption,serif;
    font-weight: 300;
    font-style: italic; */
}

header #ki_logo {
    position: relative;
    float: left;
    margin-bottom: 10vh;
    width: 10%;
    background-color: #04D04E;
}

.logo {
    float: left;
    width: 14%;
    background-size: 100% 100%;
    height: 7vw;
    min-width: 180px;
    min-height: 152px;
   /* background-image: url(url);*/
}

header #text {
    color: #D4272A;
    width: 43%;
    padding-top: 0px;
    position: relative;
    float: right;
    top: 17px;
    margin-left: 39px;
    line-height: 4vw;
    font-style: normal;
    font-weight: 300;
    text-shadow: 0px 0px 69px hsla(0,0%,100%,1.00);
    min-width: 240px;
    margin-bottom: 10px;
} 

@media (max-width: 650px) {
    header #text {
        line-height: 35px;
    }
	header #ki_slogan{
	line-height: 45px;
	font-size: 40px;
	}
}
@media (max-width: 450px) {
    
	header #ki_slogan{
	line-height: 50px;
	font-size: 35px;
	}
	header .bold{
	line-height: 30px;
	font-size: 35px;
	}
}

@media screen and (min-width: 400px) {
    html {
    }
    /*font-family: p22-stickley-pro-caption,serif; */
}

header .bold {
    font-weight: 400;
    position: relative;
    padding-bottom: 0px;
    padding-top: 0px;
}

ebene #hierentsteht {
    text-align: center;
    padding-top: 280px;
    padding-bottom: 140px;
    font-size: 1.28em;
    /*position: relative;
    top: 17px;
    /*margin-left: 39px; */
    line-height: 4vw;
    font-style: normal;
    font-weight: 300;
    text-shadow: 0px 0px 69px hsla(0,0%,100%,1.00);
    width: 600px;
    min-width: 240px;
    margin-bottom: 40px;
    margin-left: auto;
    margin-right: auto;
}

#hierentsteht2 {
    text-align: center;
    padding-top: 40px;
    font-size: 1.28em;
    /*position: relative;
    top: 17px;
    /*margin-left: 39px; */
    line-height: 4vw;
    font-style: normal;
    font-weight: 300;
    text-shadow: 0px 0px 69px hsla(0,0%,100%,1.00);
    width: 600px;
    min-width: 240px;
    margin-bottom: 40px;
    margin-left: auto;
    margin-right: auto;
}

/*########################## ARTICLE  ###################################*/ 

article {
	display: flex;
	justify-content: center;
    background-color: hsla(0,0%,100%,1);
    min-height: 190px;
    width: 100%;
    float: left;
}
/*.aussenrum {
    text-align: center;
    margin: 6px;
    padding: 0;
} */


.aussenrum {
    display: flex;
  justify-content: space-evenly;
    padding: 20px;
    background-color: white;
    align-items: center;
    /*margin: 35px 0;*/
	width: 80%
}


/*.das-element {
    
    height: 150px;
    width: 200px;
    margin: 1.2em;
    padding: 6px;
    z-index: 30;
    text-align: center; /* OPTIONAL, um Text wieder von links zu richten */
   /* color: #1A96AD;
}*/
.das-element {
    display: flex;
    flex-direction: column;
    align-items: center;
    font-size: 16px;
	color: #1A96AD;
	font-weight: normal;
    
    
}

.das-element .count {
    
    color: #1A96AD;
   /* padding: 5px 12px;*/
    border-radius: 12px;
    font-size: 30px;
    font-weight: normal;
    margin-top: 20px;
}
/*########################## CONTENT  ###################################*/ 

#content {
    margin-left: 7%;
    margin-right: 7%;
    margin-bottom: 300px;
    position: relative;
    float: left;
    width: 86%;
}

.column {
    padding: 2%;
    width: 44%;
    font-family: titling-gothic-fb, sans-serif;
    font-weight: 200;
    font-style: normal;
    font-size: 1.1em;
    float: left;
}

#test {
    background-color: hsla(359,42%,52%,1);
    height: 300px;
    width: 120px;
}

.test {
    background-color: hsla(359,42%,52%,1);
    height: 300px;
    width: 120px;
    font-size: 100%;
}

/*############################ STICHWORT  ####################*/

#partsuche {
    width: 80%;
   /* margin: 0 auto; ursprünglich */
    position: relative;
    z-index: 50; /* Unter #suche */
}
#partsuche-container {
    position: relative;
    margin-top: 20px; /* Abstand zum Menü, anpassen nach Bedarf */
    z-index: 50;
}

#suchewort {
    width: 100%;
}

/*############################ STICHWORT ENDE ####################*/

/*############################### SUCHE #############################*/
#menulinks_suche{
	display: flex;
	justify-content: space-between;
	position: relative;
    z-index: 55;
    pointer-events: auto;
	flex-wrap: wrap;
}
.headline {
    color: rgba(255,255,255,0.69);
    /*font-size: 2em; */
    margin-bottom: 36px;
    width: 80%;
}

#partsuche .headline {
	margin-left: 2vh ;
	padding-left: 1em;
	float:left;
	/*clear: both;*/
}

.button {
    height: 37px;
    background-color: hsla(0,0%,100%,0.44);
    padding-right: 1em;
    padding-left: 1em;
    text-align: center;
    margin-left: 2%;
    min-width: 170px;
    vertical-align: middle;
    margin-bottom: 10px;
    padding-top: 1.2em;
}

.buttonweiter {
    width: 15%;
    height: 40px;
    background-color: hsla(0,0%,100%,0.44);
    padding-right: 1em;
    padding-left: 1em;
    text-align: center;
    min-width: 170px;
    vertical-align: middle;
    padding-top: 1em;
    margin-bottom: 10px;
}

.buttonplatzh {
    width: 10%;
    height: 40px;
    padding-right: 1em;
    padding-left: 1em;
    text-align: center;
    min-width: 170px;
    vertical-align: middle;
    padding-top: 1em;
    margin-bottom: 10px;
    margin-left: 1%;
    float: left;
}

.button_menu {
    /*width: 20%;*/
    height: 40px;
    background-color: hsla(0,0%,100%,0.44);
    padding-right: 1em;
    padding-left: 1em;
    text-align: center;
    margin-left: 2%;
    min-width: 170px;
    vertical-align: middle;
    padding-top: 1em;
    margin-bottom: 10px;
    transition: 0.4s;
}

.button_menu:hover {
    background-color: hsla(0,0%,100%,0.57);
}

.buttonweiter:hover {
    background-color: hsla(0,0%,100%,0.57);
}
.button:hover {
    background-color: hsla(0,0%,100%,0.57);
}

#s:checked ~ .s1 {
    background-color: hsla(0,0%,100%,0.84);
    color: #D4272A;
}

#u:checked ~ .s2 {
    background-color: hsla(0,0%,100%,0.84);
    color: #D4272A;
}



#m:checked ~ .a1 {
    background-color: hsla(0,0%,100%,0.84);
    color: #D4272A;
}

#sp:checked ~ .a2 {
    background-color: hsla(0,0%,100%,0.84);
    color: #D4272A;
}

#w:checked ~ .a3 {
    background-color: hsla(0,0%,100%,0.84);
    color: #D4272A;
}


#suche {
	/*display: flex;
	flex-direction: column;
  justify-content: space-evenly;
	justify-content: center;*/
    width: 80%;
    margin: 5vh auto 2vh;
    position: relative;
    /*display: block !important; */
    z-index: 45;
}


/* Media Query für kleinere Bildschirme */
/*@media (max-width: 768px) {
    #suche {
        margin-top: -3vh; /* Negative Margin für Überschneidung */
  /*  }
}*/



/*
#sektionsordnen{
	background-color: rgba(240,190,44,1.00);	
}
*/

#startehier {
   /* width: 80%;*/
    height: auto;
    padding-right: 1em;
    padding-left: 1em;
   /* text-align: center;
    margin-left: auto; 
	margin-right: auto;*/
    min-width: 170px;
    vertical-align: middle;
    padding-top: 1em;
    margin-bottom: 74px;
    position: relative;
    margin-right: 2vh; 
    font-size: 2em;
}

.hier {
    width: auto;
    height: 40px;
    padding-right: 1em;
    padding-left: 1em;
    text-align: center;
    min-width: 170px;
    padding-top: 1em;
    margin-bottom: 10px;
    position: relative;
    margin-left: 2vh;
    margin-right: 2vh;
    float: left;
}

#kurssuche {
    display: inline-block;
}

#geburtstage {
    display: inline-block;
}

#babysuche {
    display: inline-block;
}

#schwangerschaft {
    display: compact;
}



/*############################ REGLER  ####################*/

/*############################ REGLER  ####################*/

#inputreglerposition {
    position: relative;
    display: inline-block; /* Hält den Container an die Größe des Inhalts angepasst */
    height: 250px; /* Muss der Höhe des Sliders entsprechen */
    width: 50px; /* Breite für den Container, an Slider angepasst */
}

input[type="range"].vertikal {
    writing-mode: vertical-lr; /* Standardmethode für vertikalen Slider */
    direction: rtl; /* Richtet den Slider von unten nach oben */
    width: 10px;
    height: 250px;
    border-radius: 50%;
    background-color: hsla(121,97%,77%,1.00);
    -webkit-appearance: none; /* Entfernt das native Slider-Styling */
    position: absolute; /* Positioniert den Slider absolut im Container */
    left: 50%; /* Zentriert den Slider horizontal */
    transform: translateX(-50%); /* Zentriert exakt */
}

label#n2 {
    position: absolute;
	top: 10px;
  /*  top: -20px;  Oberhalb des Sliders mit Abstand */
    left: 50%;
    transform: translateX(40%); /* Zentriert das Label horizontal */
    font-size: 12px; /* Optional, für bessere Lesbarkeit */
	white-space: nowrap; /* Verhindert Zeilenumbrüche */
    padding-right: 10px; /* Mehr Platz für horizontale Anordnung */
}

label#n1 {
    position: absolute;
    bottom: 2px; /* Unterhalb des Sliders mit Abstand */
    left: 50%;
     transform: translateX(40%);/* Zentriert das Label horizontal */
    font-size: 12px; /* Optional, für bessere Lesbarkeit */
	white-space: nowrap; /* Verhindert Zeilenumbrüche */
    padding-right: 10px; /* Mehr Platz für horizontale Anordnung */
	}

#output {
	position: absolute;
	top: 50%; /* Zentriert den Output vertikal */
	left: 60px; /* Rechts neben dem Slider */
	transform: translateY(-50%); /* Zentriert exakt */
	font-size: 14px; /* Optional, für Konsistenz */
	white-space: nowrap; /* Verhindert Zeilenumbrüche */
	padding-right: 10px; /* Mehr Platz für horizontale Anordnung */
	border-bottom: thin solid hsla(121,97%,77%,1.00);
	;
}
/*############################ REGLER ENDE ####################*/

/*##################### SCHWANGER #########################*/

#vdschwanger:checked ~ .a4 {
    background-color: hsla(0,0%,100%,0.84);
    color: #D4272A;
}

#idschwanger:checked ~ .a5 {
    background-color: hsla(0,0%,100%,0.84);
    color: #D4272A;
}

#ndschwanger:checked ~ .a6 {
    background-color: hsla(0,0%,100%,0.84);
    color: #D4272A;
}

#einxmama:checked ~ .a7 {
    background-color: hsla(0,0%,100%,0.84);
    color: #D4272A;
}

#einxbaby:checked ~ .a8 {
    background-color: hsla(0,0%,100%,0.84);
    color: #D4272A;
}

#schwanger2 input[name="age_von"] {
    position: absolute;
    visibility: hidden;
}

#schwanger2 label {
    margin-bottom: 10px;
    width: 100%;
    min-width: 427px;
    position: relative;
    height: auto;
}

#schwanger3 input[name="baby"] {
    position: absolute;
    visibility: hidden;
}

#schwanger3 label {
    margin-bottom: 10px;
    width: 100%;
    min-width: 427px;
    position: relative;
    height: auto;
}

.kurse_uebersicht {
    height: 24px;
    background-color: hsla(0,0%,100%,0.44);
    text-align: center;
    min-width: 170px;
    vertical-align: middle;
    padding-top: 1em;
    width: 100%;
    float: left;
    font-family: titling-gothic-fb-extended, sans-serif;
    font-style: normal;
    font-weight: 100;
    font-size: 14px;
    padding-bottom: 1em;
}

.form_container2 {
    width: 35%;
    min-width: 427px;
    position: relative;
    z-index: 92;
    height: auto;
    margin-bottom: 33px;
    margin-right: 29px;
    -webkit-box-shadow: 0px 0px;
    box-shadow: 0px 0px;
    float: left;
}

.form_container3 {
    width: 15%;
    min-width: 427px;
    position: relative;
    z-index: 92;
    height: auto;
    float: right;
    margin-bottom: 33px;
    margin-right: 29px;
    -webkit-box-shadow: 0px 0px;
    box-shadow: 0px 0px;
    border-left-width: thin;
}

/*##################### SCHWANGER ENDE #########################*/



.clearleft {
    clear: left;
}

.clearright {
    clear: right;
    width: 0px;
}



#ap_richtung {
    background-color: rgba(46,211,219,0.73);
    height: 130px;
    width: 271px;
    position: absolute;
    z-index: 2;
    display: none;
}



#untergruppeauswahl {
    float: left;
    background-color: rgba(0,255,255,0.33);
    width: 100%;
}

#untergruppefloatrechts {
    float: left;
    position: relative;
    width: 100%;
}
#punkteplatzrichtung {
    background-color: rgba(244,94,96,1);
    float: left;
    height: 50px;
    width: 64px;
}

/*--------------- ÜBERTRAGEN ANDERE WEBSITE---------------------*/

#section2 {
    background-color: hsla(118,98%,51%,0.44);
    font-family: rosario;
    font-style: normal;
    position: relative;
    height: auto;
    float: left;
    vertical-align: middle;
    text-align: center;
    max-width: 100%;
    width: 100%;
    bottom: 33px;
    padding-right: 15%;
    padding-top: 1%;
}

#musischneu {
    float: left;
    margin-top: 2%;
}

.buttonneu {
    width: 10%;
    height: 40px;
    background-color: hsla(0,0%,100%,0.44);
    padding-right: 1em;
    padding-left: 1em;
    color: hsla(0,0%,100%,1.00);
    font-family: rosario;
    font-style: normal;
    font-weight: normal;
    text-align: center;
    margin-left: 2%;
    min-width: 170px;
    vertical-align: middle;
    font-size: 1.5em;
    padding-top: 1em;
    margin-bottom: 10px;
}

#weiterespunkt3 {
    float: left;
    width: 29%;
    min-width: 230px;
    height: 65px;
    position: relative;
    margin-left: 2%;
}

#abenteuer2 {
    margin-left: 3%;
}

#sektion3platzhalt {
    float: left;
    margin-top: 2%;
    width: 10%;
    height: 40px;
    padding-right: 1em;
    padding-left: 1em;
    color: hsla(0,0%,100%,1.00);
    font-family: rosario;
    font-style: normal;
    font-weight: normal;
    text-align: center;
    margin-left: 2%;
    min-width: 170px;
    vertical-align: middle;
    font-size: 1.5em;
    padding-top: 1em;
    margin-bottom: 10px;
    background-color: hsla(280,68%,46%,1.00);
}

#feuerwehr {
    float: left;
    margin-top: 2%;
}

#suche2 {
    height: auto;
    width: 102%;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    background-color: rgba(255,7,238,0.54);
    float: left;
}

#section3 {
    background-color: hsla(99,55%,59%,1);
    width: 100%;
    position: relative;
    float: left;
    margin-top: 85px;
    padding-right: 170px;
}

.sortiert {
    float: left;
    width: 70%;
}



#stichwoerter {
    width: 20%;
    border: thin double #FFFFFF;
    padding-top: 1%;
    padding-right: 1%;
    padding-bottom: 1%;
    padding-left: 1%;
    position: relative;
    float: right;
    min-width: 240px;  
    margin-top: 101px;
    line-height: 2em;
    text-align: center;
    margin-bottom: 50px;
}


@media (max-width: 700px) {
    #stichwoerter {
        width: 15% !important;
        min-width: 240 !important;
        float: left !important; 
        margin-left: 10px !important;
        margin-bottom: 0 !important;
        box-sizing: border-box !important;
        font-size: 12px;
        
    }
}

@media (min-width: 701px) {
    #stichwoerter {
        width: 20% !important;
        min-width: 300px !important;
        float: right !important;
    }
}

/*########################## FOOTER  ###################################*/ 

#footer {
    background-color: rgba(255,255,255,1);
    height: 28vh;
    width: 100%;
    bottom: 0;
    position: relative;
    float: left; 
}

#impressum {
    color: rgba(26,150,173,1.00);
    position: relative;
    margin-top: 7%;
    margin-left: 7%;
    margin-right: 7%;
}

/*
* Prefixed by https://autoprefixer.github.io
* PostCSS: v7.0.29,
* Autoprefixer: v9.7.6
* Browsers: last 4 version
*/

.mamababy {
    margin-top: 2%;
    margin-bottom: 2%;
    padding: 2%;
    width: 80%;
	/* width: 96%; ursprünglich */
    float: left;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
}

#gluecklichesbaby {
    border: thin dotted rgba(255,255,255,0.74);
    display: none;
}

#daserstexmama {
    border: thin dotted rgba(255,255,255,0.74);
    display: none;
}



.column {
    padding: 2%;
    width: 44%;
    font-family: titling-gothic-fb, sans-serif;
    font-weight: 200;
    font-style: normal;
    font-size: 1.1em;
    float: left;
}

.raum {
    height: 50px;
    width: 100%;
}
