/*@font-face {
   font-family: 'Montserrat';
   src: url(../font/Montserrat-Light.ttf) format('truetype'); 
}*/

@font-face {
   font-family: 'Roboto';
   src: url(../font/Roboto/Roboto-Regular.ttf) format('truetype'); 
}

/*@font-face {
   font-family: 'Playfair';
   src: url(../font/Playfair_Display/static/PlayfairDisplay-Regular.ttf) format('truetype'); 
}*/



/*
58,89,74 gruen-grau
89,102,95 gruen-lila
103,85,111 grau-lila
131,138,148 grau
200,156,191 lila
115,165,128 gruen
*/

body{
margin:0;
background-color:rgb(200,156,191);
font-family: 'Roboto', sans-serif;
overflow:scroll;
overflow-x:auto;
font-size:1.0em;
color:rgb(242,241,237);
height:100vh;
display:grid; /*inline-grid*/
grid-template-rows:150px 1fr auto auto auto auto 3em;
grid-auto-rows:1fr; 
align-content:top; /*vertikal*/
justify-content: center; /*horizontal*/
grid-auto-columns:100%; 

}

/***************************************************/

header{
/*background-image:url("../img/zacken-inv.png");
background-repeat:repeat-x;*/
background-color:rgb(255,255,255);
color:rgb(0,0,0);
padding:0.5em;
}

header h1{
margin: 0 auto;
text-align:right;
margin-top:0.6em;
margin-right:0.6em;

height:100%;
}

header h1 img{
margin:0 auto;
/*width:280px;*/
height:90%;
}

/************************************************************/


nav{
background-color:rgb(0,200,0);
}

/***********************************************************/

main{
margin: 0 auto;
width:auto;
background-color:rgb(131,138,148);
}

main inner{
margin: 0 auto;
padding:2em;
display:table;
max-width:90%;
}

.pico main inner{
max-width:80%;
}

.grande main inner{
max-width:1150px;
}

main h1{
margin: 0 auto;
text-align:center;
padding:5%;
margin-bottom:3em;
}

main h1 img{
margin:0 auto;
width:80%;
max-width:900px;
min-width:90px;
}

/*main h2{
margin: 0 auto;
text-align:center;
font-weight:normal;
margin-bottom:0.6em;
font-size:220%;
}

main h3{
margin: 0 auto;
text-align:center;
font-weight:normal;
margin-bottom:1em;
font-size:160%;
line-height:1.6em;
}

main h4{
margin: 0 auto;
text-align:center;
font-weight:bold;
margin-bottom:1em;
font-size:100%;
font-weight:bold;
text-decoration:underline;
}*/

main p{
margin: 0 auto;
text-align:center;
line-height:1.4em;
}

main a{
color:rgba(180,200,190,1.0);
}
main a:hover{
color:rgba(180,200,190,0.8);
}

/*******************************************************/

topbg{
margin: 0 auto;
display:block;
background-color:rgb(227,233,232);
overflow:hidden;
/*margin-top:1.5em;
margin-bottom:1.5em;*/
}



.topinfo{
margin: 0 auto;
position:absolute;
margin-top:-3em;
/*width:100%;*/
/*height:100%;*/
text-align:center;
display:block;
width:100%;
padding:0;
margin-left:0;
margin-right:0;
overflow:hidden;
}

welcomeinfo{
margin:0 auto;
background-color:rgba(242,241,237,1.0);
padding:2.5em;
text-align:center;
display:table;
font-size:140%;
}

.pico welcomeinfo{
max-width:55%;
}



welcomeinfo h2{
font-size:120%;
font-weight:normal;
text-transform:uppercase;
line-height:1.5em;
color:rgb(89,102,95);
}

welcomeinfo h3{
font-size:120%;
font-weight:normal;
line-height:1.3em;
color:rgb(200,156,191);
}

/*********************************************************/

praxis{
margin: 0 auto;
background-color:rgba(242,241,237,1.0);
/*background-image:url("../img/zacken-rot.png");
background-repeat:repeat-x;*/
padding:0;
width:100%;
/*padding-top:10em;*/
color:rgb(134,132,116);

}

praxis inner{
margin: 0 auto;
padding:2em;
display:table;
max-width:90%;
text-align:left
}

.pico praxis inner img{
margin: 0 auto;
width:100%;
margin-bottom:1.5em;
}

.grande praxis inner img{
margin: 0 auto;
width:50%;
margin-bottom:1.5em;
margin-right:1.5em;
float:left;
}

.pico praxis inner{
max-width:80%;
}

.grande praxis inner{
max-width:1150px;
}

praxis h2{
margin: 0 auto;
/*font-family: 'Playfair', serif;*/
font-weight:normal;
margin-bottom:0.6em;
font-size:200%;
color:rgb(200,156,191);
}


praxis p{
line-height:1.6em;
margin-bottom:1.3em;
}
/*******************************************************/

leistungen{
margin: 0 auto;
/*background-color:rgba(115,165,128,1.0);*/
background-color:rgba(231,225,211,1.0);
/*background-image:url("../img/zacken-grey.png");
background-repeat:repeat-x;*/
padding:0;
width:100%;
padding-top:7em;
color:rgb(134,132,116);
}

leistungen inner{
margin: 0 auto;
padding:2em;
display:table;
width:auto;
max-width:90%;
text-align:left;
}

.pico leistungen inner{
max-width:80%;
}

.grande leistungen inner{
max-width:1150px;
}

leistungen h2{
margin: 0 auto;
/*font-family: 'Playfair', serif;*/
font-weight:normal;
margin-bottom:1em;
font-size:200%;
}

leistungen h3{
margin: 0 auto;
/*font-family: 'Playfair', serif;*/
font-weight:normal;
/*margin-bottom:1em;*/
font-size:160%;
line-height:1.7em;
}

leistungen h4{
margin: 0 auto;
/*font-family: 'Playfair', serif;*/
font-weight:normal;
margin-bottom:0.6em;
font-size:150%;
line-height:1.4em;
}
leistungen h5{
margin: 0 auto;
/*font-family: 'Playfair', serif;*/
font-weight:normal;
margin-bottom:0.6em;
font-size:140%;
line-height:1.3em;
}

leistungen p{
line-height:1.6em;
margin-bottom:0.6em;
}

leistungen ul{
line-height:1.6em;
font-size:140%;
}

/*******************************************************/

akteur{
margin: 0 auto;
display:table;
padding:1.3em;
/*background-color:rgb(58,89,74);*/
background-color:rgb(255,255,255);
margin-bottom:2em;
}

akteur h3{
/*color:rgb(115,165,128);*/
font-weight:bold;
margin-bottom:0.1em;
margin-top:1em;
}
akteur h4{
margin-bottom:1.5em;
}

.grande akteur img.aktL{
float:left;
width:45%;
margin:1.2em;
}
.pico akteur img.aktL{
width:90%;
margin:5%;
}

.grande akteur img.aktR{
float:right;
width:45%;
margin:1.2em;
}
.pico akteur img.aktR{
width:90%;
margin:5%;
}

akteur div{
margin: 0 auto;
display:table;
padding:1.2em;
text-align:left;
margin-right:2em;
}

akteur a{
text-decoration:underline;
color:rgba(200,156,191,0.8);
font-weight:bold;
}

akteur a:hover{
color:rgba(200,156,191,1.0);
}

details > summary {
  padding: 1em;
  width: auto;
  background-color: rgba(200,156,191,0.2);
 /* border: none;
  box-shadow: 1px 1px 2px #bbbbbb;*/
  cursor: pointer;
	margin-bottom:1em;
}

details > p {
/*  background-color: #eeeeee;
  padding: 4px;
  margin: 0;
  box-shadow: 1px 1px 2px #bbbbbb;*/
}


/*******************************************************/


naviicon{
	margin:0 auto;
	position:fixed;
	left:1em;
	top:1em;
	text-align:center;
	display:table;
	z-index:100;
}


naviicon a{
	margin:0 auto;
	display:table;
	text-decoration:none;
	padding:0.8em;
}

naviicon a i{
	margin:0 auto;
	display:block;
	border-top:0.15em solid rgb(255,255,255);
	border-bottom:0.15em solid rgb(200,156,191);
	line-height:0.2em;
	height:0em;
	padding:0;
	margin-bottom:0.6em;
	
	width:3em;
}

naviicon:hover a i{
	border-bottom:0.15em solid rgb(255,255,255);
	border-top:0.15em solid rgb(200,156,191);	
}

/********************************************************/

navigation{
margin: 0 auto;
top:0;
left:0;
bottom:0;
position:fixed;
text-align:left;
height:100%;
z-index:1001;
background-color:rgba(255,255,255,1.0);
border-right:1px solid rgba(200,156,191,0.2);
overflow:scroll;
overflow-x:hidden;
}

navigation innernavi{
margin: 0 auto;
display:table;
text-align:left;
margin:1.5em;
height:auto;

}

navigation innernavi a{
margin: 0 auto;
display:block;
margin-left:0;
text-align:left;
text-decoration: none;
color:rgb(134,132,116);
padding:0.2em;
margin-top:0.5em;
border-bottom: 1px solid rgba(200,156,191,0.2);
}

navigation innernavi sub{
	margin: 0 auto;
	display:table;
	margin-left:1.2em;
	font-size:90%;
	margin-bottom:1.4em;
	
}

navigation innernavi sub a{
	margin-top:0.3em;
}

navigation innernavi a:hover, navigation innernavi a.aktiv{
border-bottom: 1px solid rgba(200,156,191,1.0);
color:rgba(200,156,191,1.0);
}

navigation .naviclose{
margin: 0 auto;
display:table;
text-align:right;
text-decoration: none;
color:rgb(200,156,191);
padding:0.4em;
margin-bottom:0.5em;
font-size:145%;
margin-right:0em;
background-color:rgba(255,255,255,1.0);
}

navigation .naviclose:hover{
background-color:rgba(200,156,191,1);
color:rgb(255,255,255);
}

/*******************************************************/

.karou{
margin: 0 auto;
width:100%;
}

/*.pico .karou{
max-width:945px;
}*/



.karouitem{
margin: 0 auto;
text-align:center;
display:table;
padding:0;
overflow:hidden;
width:auto;
max-width:100%;
/*background-color:rgba(89,102,0,1.0);*/

}




.karouinfo{
margin: 0 auto;
display: -ms-grid;
display:grid;
grid-template-rows:2em 1fr auto 2em;
grid-template-columns:2em 1fr auto 2em;
width:100%;
max-width:100vw;
}

.grande .karou, .grande .karouinfo{
max-width:1150px;
}

/*.karouinfo slickinfo{
margin:0 auto;
grid-column-start: 3;
grid-column-end: 4;
grid-row-start: 3;
grid-row-end: 4;
padding:1em;

text-align:left;
display:table;
max-width:650px;
width:auto;
}

.karouinfo slickinfo img{
margin: 0 auto;
display:table;
width:90%;
}*/

/*.karouinfo slickinfo h2{
color:rgb(200,156,191);
}
.karouinfo slickinfo p{
color:rgb(0,0,0);
}

slickinfo h2{
font-size:120%;
font-weight:bold;
text-transform:uppercase;
line-height:1.6em;
}*/

/******************************************************/

kontakt{
margin: 0 auto;
display:grid;
background-color:rgba(242,241,237,1.0);
/*background-image:url("../img/zacken-rot.png");
background-repeat:repeat-x;*/
color:rgb(134,132,116);
padding:0;
width:100%;
grid-template-columns: 2em auto 2em;
grid-template-rows: 7em auto auto auto 2em;
height:auto;
} 

kontakt h2{
margin: 0 auto;
text-align:center;
/*font-family: 'Playfair', serif;*/
font-weight:normal;
font-size:200%;
padding:1.5em;
grid-column-start: 2;
 grid-column-end: 3;
 grid-row-start: 2;
  grid-row-end: 3;
}

kontakt .kontaktdaten{
margin: 0 auto;
text-align:center;
font-weight:normal;
font-size:130%;
grid-column-start: 2;
 grid-column-end: 3;
 grid-row-start: 3;
  grid-row-end: 4;
}

kontakt a{
color:rgba(200,156,191,0.75);
}

kontakt a:hover{
color:rgba(200,156,191,1.0);
}

/**/


/*************************************/

lageplan{
margin: 0 auto;
display:grid;
background-color:rgba(242,241,237,1.0);
color:rgb(134,132,116);
padding:0;
width:100%;
grid-template-columns: 2em auto 2em;
grid-template-rows: auto;
height:450px;
} 

/************************************/

datenschutz, impressum{
margin: 0 auto;
background-color:rgba(131,138,148,0.95);
padding:2em;
display:none;
z-index:90;

position:absolute;
top:2em;
margin:3em;

}

.pico datenschutz,.pico  impressum{padding:1.5em;}
.grande datenschutz,.grande  impressum{padding:4.5em;}

datenschutz h3, impressum h3{
margin-bottom:1.5em;
}

datenschutz h4, impressum h4{

margin: 0 auto;
margin-top:2em;
text-align:left;
font-weight:bold;
margin-bottom:0.8em;
font-size:100%;
line-height:1.6em;
}


datenschutz h5, datenschutz h6, impressum h5, impressum h6{
margin: 0 auto;
text-align:left;
font-weight:bold;
margin-bottom:0.8em;
margin-top:0.4em;
font-size:100%;
line-height:1.6em;
}

datenschutz p, impressum p{
margin: 0 auto;
text-align:left;
line-height:1.4em;
/*max-width:900px;*/
margin-left:0;
}
/*datenschutz ul, impressum ul{
max-width:750px;
}*/
/**********************************/

footer{
background-color:rgba(255,255,255,1.0);
text-align:center;
color:rgb(134,132,116);
font-size:80%;
padding:1em 2.5em 0.5em 2.5em;
}
 footer a{
color:rgba(200,156,191,0.75);
}
footer a:hover{
color:rgba(200,156,191,1.0);
}

/**********************************/

datenschutz a, impressum a{
color:rgba(180,200,190,1.0);
}

datenschutz a:hover, impressum a:hover{
color:rgba(180,200,190,0.8);
}


a.totop{
margin: 0 auto;
position:fixed;
right:0.3em;
bottom:0.1em;
padding:0.3em;
text-decoration:none;
z-index:20000;
opacity:0.65;
font-size:180%;
color:rgba(200,156,191,1);
text-shadow: 0 0 0.1em rgb(255,255,255);
}

a.totop img{
width:50px;
}

a.totop:hover{
opacity:1.0;
}

/*************************************/

.toform{
margin: 0 auto;
padding:1em;
display:table;
border:2px solid rgba(200,156,191,0.6);
color:rgba(200,156,191,0.6);
text-decoration:none;
background-color:rgba(255,255,255,1);
}

.toform:hover{
background-color:rgba(200,156,191,1);
color:rgba(255,255,255,1);
border:2px solid rgba(200,156,191,1);
}

.CL{
clear:left;
}

cookieinfo{
margin: 0 auto;
background-color:rgba(200,156,191,0.9);
border:0.2em solid rgb(255,255,255);
display:block;
position:fixed;
bottom:2em;
left:2em;
right:2em;
z-index:1200;
padding:0.7em;
text-align:center;
color:rgb(255,255,255);
}

cookieinfo a{
color:rgb(255,255,255);
font-weight:bold;
text-decoration:underline;
}

.Cclose{
margin: 0 auto;
font-size:2em;
/*background:radial-gradient(rgba(200,156,191,1) 25%,rgba(255,255,255,0)75%);*/
/*background-color:rgba(200,156,191,1);*/
font-family: "Font Awesome 5 Free";
font-weight: 900;
padding:0.3em;
display:table;
margin-right:0.2em;
margin-top:0.2em;
/*z-index:1202;*/
float:right;
/*position:absolute;*/
}
