﻿/* CSS Document */

/* ------------------------------- formatting ----------------------------- */

body {
	margin: 0;
	padding: 0;
	background: #fff8dc;
	}


#container {
    width: 930px;
    text-align: left;
    margin: 0 auto;
    background: white ;
   	border: #4A708B 1px solid; /* Farbe und Art des oberen Rands */
box-shadow: 5px 5px 5px #888;
  }


h1,h2 {
	font-family: "Open Sans", sans-serif;
	line-height: 167%;
	font-size: 1.2em; 
	letter-spacing: 0.1em;
	word-spacing: 0.1em;
	color: #2e8b57;
	margin-top: 0px;
	text-align: center;
	text-shadow: 0.5px 1px 1px gray;
	font-stretch: wider;
	
	}
	
#banner h2 {
	font: medium "Open Sans", sans-serif;
	font-size: 16.5pt;
	font-weight: bold;
	color: black;
	
	}


#bild_bereich h2 {
	color: #D6D6D6;
	margin-top: 7px;
	}



h4 {
	font: bold small "Open Sans", sans-serif;
	color: #9C1A1E;
	margin-bottom: 2px;
	}

h5 {
	font: italic bold small"Open Sans", sans-serif;
	color: #43616B;
	margin-top: 2px;
	}
	
p {
	font: 0.7em "Open Sans", sans-serif;
	}



fieldset {
display: block;
border: 2px groove threedface;
}


textarea, input, select, option {
	border: 1px solid black;
	background: #FFFFF0;
}

label {
float: left;
display: block;
width: 170px;
	font: 0.8em "Open Sans", sans-serif;
}



table {	
	border-collapse: collapse;
	border: 0px solid black;
	border-left: white;
	border-right: white;
	border-top: white;
	border-bottom: white;
	width: 300px;
  empty-cells: hide;
	white-space: nowrap;
	
}



 
	
td {
	
	font: 0.8em "Open Sans", sans-serif;
	padding: 4px 6px;
	white-space: nowrap;
	/*width: 245px;*/
	vertical-align: top;
	border: 0px solid black;
}

th {
	border: 0px solid black;
	vertical-align: top;
	white-space: nowrap;
	/*width: 345px;*/
	padding: 4px 6px;
	border: 0px;
	
}


	.notfall_list {
		width: 630px;
	}
	
	.notfall_list td {
		padding: 4px;
		margin: 3px;
		border: 1px solid #ccc;
	}
	.notfall_list th {
		background-color: #104E8B;
		color: #FFF;
		font-weight: bold;
	}


#center p {
	font: 0.9em "Open Sans", sans-serif;
	}

#center li {
	font: 0.9em "Open Sans", sans-serif;
	}


#footer p {
	margin: 4px;
	text-align: center;
	}

#footer p.imgs {
	margin: 4px;
	text-align: left;
	}

a {
	color: #34339B;		
	}
a:hover {
	color: #9C191E;	
	}

hr {
	color: #A5B5C6;
	height: 1px;
	}
	
div#footer a img {
	border: 0px none;
	display: inline;			/* removes extra space underneath caused by default text-alignment */
	text-align: left;
	}

a img {
	border: 0px none;
	display: block;			/* removes extra space underneath caused by default text-alignment */
	}




	
div#top a:hover {
	background-color: #43616B;
	}


	
	

#top {
	height: 119px;
	padding: 4px;
	padding-left: 0px;
	background: #66cdaa;

	border-bottom: 1px solid #A5B5C6;

	}
	
#center {
	/*margin: 0% 20% 4% 22%;	*/
	padding: 1% 3%;
	height: auto;
	/*background: #fff url(images/bgcenter.gif) no-repeat center;*/
	/* debug 	background-color: green; */
	color: #000;
	/*border: 1px solid red;*/
	/*min-height not supported in IE. THis is a bug. we will use a workaround to fix this */
	height:250px;
    min-height: 512px;
  border: 0px solid black;
  margin-left: 234px;
  margin-bottom: -120px;
  position: relative;
  top: -230px;
  clear: both;
	}
	
	
	#content {
	
	  background-image: url(images/15759796_s.jpg);
	background-position: left top;
	background-repeat: no-repeat;
	background-size: 240px;
	
	}
#center img {
	
}


#gimnick {
	float: left; 
	position: relative; 
	width: 160px; 
	
	top: 280px; 
	border: 0px solid gray; 
	left: -195px;
	}

#gimnick div {
	box-shadow:         7px 7px 5px 0px rgba(50, 50, 50, 0.75);
	border: 0px solid gray; 
}


#gimnick img {
width: 150px;
float: right;
margin: 8px;
}


#gimnick .bild1{
transform:rotate(-20deg);
}

#gimnick .bild2{
transform:rotate(+20deg);
}



#sprechzeiten {
	float: left; 
	position: relative; 
	width: 150px;
	font-size: 125%; 
	overflow: hidden;
	top: 50px; 
	margin-left: 64px;
	border: 0px solid gray; 
	
}

.front_pictures {
	
	width: 310px;
}



#alternative{
	display: none;
}

#footer {
	
	clear: both;
	border-top: 1px solid #5C6F90;
	border-bottom: 1px solid #5C6F90;
	background-color: #66cdaa;
	width: 100%;
	color: #000;
	}

#left {
	position: absolute;
	padding: 0px;
	
	top: 10px;
	
	/*width: 240px; */

	color: #000;
	}



#bild_bereich {
	
	width: 182px;
/*	height: 240px; */
	right: 0px;
	top: 112px;

	float: right;
	/*overflow: hidden;position: absolute;*/
	/* border: 1px solid green; */
	padding: 7px 7px;
	background-color: #153976;
	border-top: 1px solid #A5B5C6;
	}

	
	
div#bild_bereich p.row {
	width: 100%;
	margin: 0px 0px 1em 0px;
	}

div#bild_bereich p.row span.leftcol {
	float: left;
	color: #D6D6D6;
	}
	
div#bild_bereich p.row span.rightcol {
	width: 70%;
	float: right;
	}
	
div#bild_bereich p.row span.rightcol a {
	color: #D6D6D6;
	font-weight: bold;
	}
	
div#bild_bereich p.row span.rightcol a:hover {
	color: #A4B5C5;
	}
	
.spacer {
	display: block;
	height: 1px;
	font: 1px  sans-serif;
	clear: both;
	}

#first_navi {
	position: absolute;
	right: 8px;

	top: 84px;
	margin: 0px;
	white-space: nowrap; /* this line added due to recent builds of firefax wrapping the form content (Oct 15 2004) */
	}

#banner {
	position: absolute;
	
	display: inline;
	top: 50px;
	margin: 0px auto;
	white-space: nowrap; /* this line added due to recent builds of firefax wrapping the form content (Oct 15 2004) */
	}
		
div#topcontent {
	position: absolute;
	top: 10px;
	right: 0px;
	width: 80%;
	
	}

#topcontent h2, #topcontent p {
	display: inline;
	margin-right: 0.5em;
	text-shadow: 3px 4px 4px #7A6E7A;
	
	
	}

 #topcontent p {
 padding-left: 25px;	
 margin-top: 15px;
 font-size: 101%;
 
}
	
	
/* --------------------- Feature Image and Transparency Trick --------------- */




/* 

-------------------------------- Navigation ------------------------------ 

List tips courtesy of A List Apart: http://www.alistapart.com/stories/taminglists/

*/




ul#mainnav {
	list-style: none;
	margin: 0px;
	padding: 0px;
	background-color: #D6D6D6;
	}
		
ul#mainnav li {
	display: block;
	border-top: 1px solid #A5B5C6;
	float: left;
	border-right: 1.5px solid white;
	width: 102px;
	}

ul#mainnav li a {
	display: block;
	margin: 0px 0px 0px 0px;
	padding: 6px 6%;
	text-align: center;
	
	background-color: #2e8b57;
	transition: all 0.6s ease 0s;
	
	font: bold 0.8em /1.5 "Open Sans", sans-serif;		/* If you get an unwanted gap after your a block (IE-Win) try increasing the line height		*/
	color: #fff;
	text-decoration: none;
	width: 88%;				/* 	Causes Problems in IE5-Mac and Netscape/Mozzilla - see next fix		*/
	}


ul#mainnav li.select_active a {
	display: block;
	margin: 0px 0px 0px 0px;
	padding: 6px 6%;
	background-color: white;
	
	font: bold 0.8em /1.5 "Open Sans", sans-serif;		/* If you get an unwanted gap after your a block (IE-Win) try increasing the line height		*/
	color: #fff;
	text-decoration: none;
	width: 88%;				/* 	Causes Problems in IE5-Mac and Netscape/Mozzilla - see next fix		*/
	}


ul#mainnav li a:hover {
	background-color: #43616B;
	color: #eee;
	}


	
ul#mainnav ul.subnav {
	margin: 0px;
	list-style: none;
	margin: 0;
	padding: 0px;
	border: 0px solid #ffC0CB; 
	}

ul#mainnav ul.subnav li {
	border-top: 0 none;
	border: 0px solid green;
	padding-left: 1.5em;
	}

ul#mainnav ul.subnav li a {
	padding: 1%;
	margin: 0px;
	font: bold 0.7em /1.5 "Open Sans", sans-serif;
	color: #5C6F90;
	background-color: transparent;
	border: 0px solid yellow;
	}

ul#mainnav ul.subnav li a:hover {
	color: #43616B;
	background-color: transparent;
	text-decoration: underline;
	}
	
div#topcontent ul {
	position: absolute;
	right: 0px;
	list-style: none;
	margin: 0px 0px 40px 0px;
	}
div#topcontent ul li {
	display: inline;
	padding: 0 0.75em;
	border-left: 1px solid #34339B;	
	}
div#topcontent ul li.first {
	border-left: 0px none;
	}
div#topcontent ul li a {
	font: 0.7em "Open Sans", sans-serif;
	}



/* ---------------------------------------------------------------------*/


/* open-sans-300 - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 300;
  src: url('../fonts/open-sans-v15-latin-300.eot'); /* IE9 Compat Modes */
  src: local('Open Sans Light'), local('OpenSans-Light'),
       url('../fonts/open-sans-v15-latin-300.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v15-latin-300.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v15-latin-300.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v15-latin-300.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v15-latin-300.svg#OpenSans') format('svg'); /* Legacy iOS */
}

/* open-sans-regular - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/open-sans-v15-latin-regular.eot'); /* IE9 Compat Modes */
  src: local('Open Sans Regular'), local('OpenSans-Regular'),
       url('../fonts/open-sans-v15-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v15-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v15-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v15-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v15-latin-regular.svg#OpenSans') format('svg'); /* Legacy iOS */
}

/* open-sans-600 - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 600;
  src: url('../fonts/open-sans-v15-latin-600.eot'); /* IE9 Compat Modes */
  src: local('Open Sans SemiBold'), local('OpenSans-SemiBold'),
       url('../fonts/open-sans-v15-latin-600.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v15-latin-600.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v15-latin-600.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v15-latin-600.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v15-latin-600.svg#OpenSans') format('svg'); /* Legacy iOS */
}

/* open-sans-700 - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/open-sans-v15-latin-700.eot'); /* IE9 Compat Modes */
  src: local('Open Sans Bold'), local('OpenSans-Bold'),
       url('../fonts/open-sans-v15-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v15-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v15-latin-700.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v15-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v15-latin-700.svg#OpenSans') format('svg'); /* Legacy iOS */
}

/* open-sans-800 - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 800;
  src: url('../fonts/open-sans-v15-latin-800.eot'); /* IE9 Compat Modes */
  src: local('Open Sans ExtraBold'), local('OpenSans-ExtraBold'),
       url('../fonts/open-sans-v15-latin-800.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v15-latin-800.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v15-latin-800.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v15-latin-800.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v15-latin-800.svg#OpenSans') format('svg'); /* Legacy iOS */
}




/* --- MOBILE ANPASSUNG (nicht destruktiv) --- */

@media (max-width: 960px) {
  #container {
    width: 95%;
    margin: 0 auto;
  }
  
 #banner {
	 
	 top: 20px;
 }
  
   #center {
	   min-height: 750px !important;
   }
   
    #center.big {
	   min-height: 950px !important;
   }

    #center.bigN {
	   min-height: 1250px !important;
   }

  #banner h2 {
    font-size: 12pt;
	white-space: normal !important;
  }
  
  h2 span{
   display: block  !important; 
   width: 80%;
  }
   


div#topcontent {
	
	left: 2px;
}

  #left, #gimnick, #sprechzeiten, #bild_bereich {
    position: static;
    float: none;
    width: 100%;
    margin: 10px auto;
    text-align: center;
  }
  
  #left {
	 position: absolute !important;   
	  
  }
  
  #top {
	height: 149px;
  }
  
  #sprechzeiten br {
  display: none;
}

#sprechzeiten p {
  display: inline;
  margin-right: 1em;
}
  
  #content {
  background-image: none;
  }

  #center {
    margin: 0;
    top: 0;
    position: relative;
    padding: 10px;
    min-height: auto;
  }

  ul#mainnav {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }

  ul#mainnav li {
    float: none;
    width: auto;
    flex: 1 1 45%;
    margin: 3px;
  }

  ul#mainnav li a {
    width: 100%;
    display: block;
    font-size: 0.9em;
  }

  #gimnick img, .notMobileView{
  
    display: none !important;
  }

  #footer {
    font-size: 0.8em;
    padding: 10px;
  }

  body {
    background-color: #fff;
  }
}

@media (max-width: 600px) {
  ul#mainnav li {
    flex: 1 1 100%;
  }

  h1, h2 {
    font-size: 1.1em;
  }

  p {
    font-size: 0.9em;
  }

  #top, #banner h2 {
    text-align: center;
  }
}


/* =========================
   Burger-Menü – Desktop Basis
   ========================= */

#main-nav {
  width: 100%;
}

/* Checkbox selbst unsichtbar */
#nav-toggle {
  display: none;
}

/* Burger-Icon */
.nav-toggle-label {
  display: none; /* auf Desktop ausgeblendet */
  cursor: pointer;
  user-select: none;
  margin-top: 25px;
}

.nav-toggle-label span{

  margin-top: 15px;
}

/* Drei Linien des Burgers */
.nav-toggle-label span,
.nav-toggle-label span::before,
.nav-toggle-label span::after {
  display: block;
  width: 26px;
  height: 3px;
  background: #ffffff;
  border-radius: 2px;
  position: relative;
  transition: all 0.3s ease;
}

.nav-toggle-label span::before,
.nav-toggle-label span::after {
  content: "";
  position: absolute;
  left: 0;
}

.nav-toggle-label span::before {
  top: -7px;
}

.nav-toggle-label span::after {
  top: 7px;
}

/* Wenn Checkbox aktiv: Kreuz-Animation (optional) */
#nav-toggle:checked + .nav-toggle-label span {
  transform: rotate(45deg);
}

#nav-toggle:checked + .nav-toggle-label span::before {
  top: 0;
  transform: rotate(0deg);
}

#nav-toggle:checked + .nav-toggle-label span::after {
  top: 0;
  transform: rotate(90deg);
}


/* =========================
   Mobile Layout
   ========================= */

@media (max-width: 960px) {

  /* Container etwas „luftiger“ */
  #container {
    width: 100%;
    margin: 0 auto;
    border-left: 0;
    border-right: 0;
    box-shadow: none;
  }

  /* Navigation: Burger sichtbar machen */
  #left {
    position: static;
    padding: 0;
    margin: 0;
    text-align: left;
	z-index: 5000;
  }

  .nav-toggle-label {
    display: inline-block;
    padding: 10px 15px;
    margin: 5px 10px;
    background-color: #2e8b57;
    border-radius: 4px;
  }
  
  /* Text */
	.nav-toggle-label .menu-text {
  color: #fff;
  font-weight: bold;
  font-size: 1em;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  font-family: "Open Sans", sans-serif;
  padding-left: 45px;
  margin-top: -9px;
}

  /* Standard: Menü eingeklappt */
  ul#mainnav {
    display: none;
    list-style: none;
    margin: 0;
    padding: 0;
    width: 100%;
    background-color: #2e8b57;
    clear: both;
  }

  /* Wenn Burger angeklickt → Menü zeigen */
  #nav-toggle:checked ~ ul#mainnav {
    display: block;
  }

  ul#mainnav li {
    float: none;
    width: 100%;
    border-top: 1px solid rgba(255,255,255,0.3);
    border-right: 0;
  }

  ul#mainnav li a {
    width: 100%;
    padding: 10px 15px;
    text-align: left;
    box-sizing: border-box;
    font-size: 0.95em;
  }

  /* Inhalte untereinander statt überlappend */

  #center {
    margin-left: 0;
    margin-bottom: 0;
    top: 0;
    position: static;
    padding: 10px;
    min-height: auto;
  }

  #sprechzeiten,
  #gimnick,
  #bild_bereich {
    float: none;
    position: static;
    width: 100%;
    margin: 10px auto;
    text-align: center;
  }

  #gimnick img {
    width: 80%;
    max-width: 200px;
    height: auto;
    float: none;
    margin: 8px auto;
  }

  .front_pictures {
    width: 100%;
    max-width: 480px;
    height: auto;
    display: block;
    margin: 10px auto;
  }

  #footer {
    text-align: center;
    padding: 10px;
    font-size: 0.85em;
  }
}

/* Noch etwas kompakter für sehr kleine Displays */
@media (max-width: 600px) {
  h1, h2 {
    font-size: 1.05em;
  }

  p {
    font-size: 0.9em;
  }

  .nav-toggle-label {
    margin: 5px;
  }
}

