/* 

Theme Name: RHS theme

http://www.rhs-ffo.de

Description: WordPress Theme für RHS

Version: 1.3

Author: Stradaservice Werbeagentur Kleinmachnow, Bernd Press

Author URL: http://www.stradaservice.de

Release-Infos:
12.06.2026 - 1.3
Caldera-Form Plugin wird durch Contact Form 7 ersetzt

*/


	@import url(css/normalize.css);	
	@import url(genericons/genericons.css);
	@import url(editor-style-shared.css);
	@import url(fonts/fontawesome-free-5.6.3-web/css/fontawesome.css);
	@import url(fonts/fontawesome-free-5.6.3-web/css/solid.css);
	/* mobile stylesheet at the end */
	

	/* Fonts by google */
	/* domine-regular - latin */
            @font-face {
              font-family: 'Domine';
              font-style: normal;
              font-weight: 400;
              src: url('fonts/domine-v19-latin-regular.eot'); /* IE9 Compat Modes */
              src: local(''),
                   url('fonts/domine-v19-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
                   url('fonts/domine-v19-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
                   url('fonts/domine-v19-latin-regular.woff') format('woff'), /* Modern Browsers */
                   url('fonts/domine-v19-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
                   url('fonts/domine-v19-latin-regular.svg#Domine') format('svg'); /* Legacy iOS */
            }
            /* domine-500 - latin */
            @font-face {
              font-family: 'Domine';
              font-style: normal;
              font-weight: 500;
              src: url('fonts/domine-v19-latin-500.eot'); /* IE9 Compat Modes */
              src: local(''),
                   url('fonts/domine-v19-latin-500.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
                   url('fonts/domine-v19-latin-500.woff2') format('woff2'), /* Super Modern Browsers */
                   url('fonts/domine-v19-latin-500.woff') format('woff'), /* Modern Browsers */
                   url('fonts/domine-v19-latin-500.ttf') format('truetype'), /* Safari, Android, iOS */
                   url('fonts/domine-v19-latin-500.svg#Domine') format('svg'); /* Legacy iOS */
            }
            /* domine-600 - latin */
            @font-face {
              font-family: 'Domine';
              font-style: normal;
              font-weight: 600;
              src: url('fonts/domine-v19-latin-600.eot'); /* IE9 Compat Modes */
              src: local(''),
                   url('fonts/domine-v19-latin-600.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
                   url('fonts/domine-v19-latin-600.woff2') format('woff2'), /* Super Modern Browsers */
                   url('fonts/domine-v19-latin-600.woff') format('woff'), /* Modern Browsers */
                   url('fonts/domine-v19-latin-600.ttf') format('truetype'), /* Safari, Android, iOS */
                   url('fonts/domine-v19-latin-600.svg#Domine') format('svg'); /* Legacy iOS */
            }
            /* domine-700 - latin */
            @font-face {
              font-family: 'Domine';
              font-style: normal;
              font-weight: 700;
              src: url('fonts/domine-v19-latin-700.eot'); /* IE9 Compat Modes */
              src: local(''),
                   url('fonts/domine-v19-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
                   url('fonts/domine-v19-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
                   url('fonts/domine-v19-latin-700.woff') format('woff'), /* Modern Browsers */
                   url('fonts/domine-v19-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
                   url('fonts/domine-v19-latin-700.svg#Domine') format('svg'); /* Legacy iOS */
            }
	
	/* Default link styling */
	a:link { color:#9fbede; }
	a:visited { color:#9fbede; }
	a:hover, a:focus { color:#25425e; cursor:pointer;}
	a:active { color:#9fbede; }
	.nonclick > a:hover { cursor: default; }
	
	:target:before {
		content: "";
		display: block;
		height: 140px; /* same as your fixed header height */
		margin: -140px 0 0; /* negative fixed header height */
	}
	
	body, html { height: 100% !important; padding: 0; margin: 0; font-size: 100%;}
	
	html { margin-top: 0 !important; /* wordpress navi deaktiv */ }
	
	button,
	html input[type="button"],
	input[type="reset"],
	input[type="submit"] {
	  cursor: pointer;
	}
	
	button::-moz-focus-inner,
	input::-moz-focus-inner {
	  border: 0px none;
	  padding: 0px;
	}
	
	input {
	  line-height: normal;
	}
	
	input[type="checkbox"],
	input[type="radio"] {
	  box-sizing: border-box;
	  padding: 0px;
	}
	
	input[type="text"] {
		font-weight: 400;
	}


  
	body {
		font-family: 'Lato', sans-serif; font-weight: 400;
		font-size: 1.05rem;line-height: 1.5rem;
		-webkit-text-size-adjust: none;
		color: #838b8c;
		overflow-y: scroll;
		background-color: #efeff3;
		
	}


	/* Struktur */
	.page_margins {
	  position:relative !important;
	  min-height:100%; /* real browsers */
	  height: auto !important;
	  padding: 0 0 0 0; 
	  max-width:1920px;
	  background-color: #fff;
	  margin: 0px auto 0 auto; 
	  overflow: hidden; 
	  width: 100%;
	  height: 100%; 
	  display:-webkit-box;display:-moz-box;display:-ms-flexbox;display:-webkit-flex;display:flex;flex-direction:column;
	  }
	  
	* html .page_margins { height:100% !important; }

	.page_container, .content { 
		-ms-flex:1 1 auto;flex:1 1 auto;
		margin: 0;
		width:100%;
		height: 100%;
		padding-bottom: 0px;
		background-color: #e7eff1;		
	}
	.page_container { margin: 120px auto 0 auto; }
  		
	header[role="banner"] {
		position:fixed;
		z-index:80;
		display:flex;
		align-items: center;
		top: 0px;
		left: 0px;
		width: 100%;height:120px;
		margin: 0 auto 0px auto;
		background-color: #fff;
		box-shadow: 0px 2px 1px rgba(0, 0, 0, 0.25);
		clear:both;
	}
	.headercontent {
		padding-left:1.041666667%;padding-right:1.041666667%;
		max-width:1170px;
	}

	#logo {
		z-index: 99;
		border: 0px;
		width: 217px;
		height: auto;
		
	}

/* --- main ---*/	
	main, .infobox {
		clear:both;
		padding: 50px 0px 60px 0px;
		margin: 0px auto 0 auto;
		max-width:1170px;
		}
	main article {
		text-align:left;
	}


    .infobox {
        box-sizing: border-box;
        position:relative;
        z-index: 0;
        display:block;float:none;
        padding: 20px 20px;
        border: #ad0000 3px solid;
        background-color: rgba(112,189,230, 1);
        color: #ad0000;
        border-bottom-right-radius: 20px;
        border-bottom-left-radius: 20px;
        margin: -3px auto 0 auto;
        font-size: 110%;
        animation-name: moveinfo;
        animation-duration: 2s;
    }
    @keyframes moveinfo {
        from {margin-top: -100px;}
        to { margin-top: -3px;}
    }
    


/* --- footer  ---*/
	footer {
		position:relative;
		margin: 0 auto 0 auto;
		color: #b0b0b0;
		background-color: #262829;
		width:100%;
		text-align:left;
		border: #00ff00 0px solid;
		font-size: 0.85rem;
		clear:both;
		
	}
	#footercontent {
		position:relative;
		z-index: 1;
		box-sizing: border-box;
		max-width: 1170px;
		margin:auto;
		padding: 18px 0 10px 0;
		width:100%;
		
	}
	#torsofooter {
		position: absolute;
		z-index: 0;
		bottom: 0px;
		right: 4%;
		width: 476px;
		height: 196px;
		background: url("images/torsofooter.png") top right;
		overflow:hidden;
		
	}
	footer h2	{color: #b0b0b0;font-family:"Lato";font-weight: 400; font-size: 1.1rem;line-height: 1.9rem;padding:16px 0 0px 0;margin: 10px 0 10px 0;text-transform:uppercase;	}

	footer a:link	{text-decoration: none; color: #73c8ec;}
	footer a:visited{text-decoration: none; color: #73c8ec;}
	footer a:hover, a:focus	{text-decoration: none; color: #fff;}
	footer a:active	{text-decoration: none; color: #73c8ec;}
	
	footer #footercontent hr {border-top: #444 1px solid; margin: 20px auto 6px auto; }
	
	.opentimes tr td {
		text-transform:uppercase;
		font-family: "Lato", sans-serif;
		padding: 0 6px 0 0px;
		vertical-align:top;
	}
	.opentimes tr td:first-child {	padding: 0 10px 0 0px;	}
	.praxisnamen {font-size: 1.03rem;margin-bottom: 6px;}
	
    .wp-block-image img.drg { max-width: 130px; width: 100%; height: auto;}
    
/* --- navi und Suche fuer Bildschirme über 767px ---*/
		
	nav {
		position: fixed; 
		top: 40px;
		left: 0px;
		right: 0px;
		margin: auto;
		z-index: 90; /*logo has 99 */
		display:block;
		width: 100%;
		padding-left:1.041666667%;padding-right:1.041666667%;
		max-width: 1170px;
		height: 28px;
		padding: 0;
		text-align:center;
		vertical-align:middle;
		
		font-family: 'Lato', sans-serif;
		font-size: 0.95rem;
		font-weight: 400;
	}
	nav .menu { width: 100%; }
	
	nav .menu ul { list-style-type:none; margin: 0px; }
	nav .menu ul li { margin: 0px; }
	nav .menu > ul {
		padding:0 0 0 240px; /* normalerweise Breite der Searchbox*/
		width: auto;
		margin: 0;
		text-align:right;
		}
	nav .menu > ul > li {
		display: inline-block;
		width: auto;
		height: auto;
		border: #016a5b 0px solid;
		text-align:left;
		background-image: none;
		padding: 6px 8px 6px 8px; 
	}
	nav .menu > ul > li:nth-child(2) {  } /* padding-left:1.041666667%;   der Wert der gridboxen */
	
	nav .menu ul li > a { display: block; text-decoration: none; color: #4e4e4e; white-space: nowrap; text-transform:uppercase;padding-top: 4px;}
	nav .menu ul li > a:link  {text-decoration: none; color: #4e4e4e;}
	nav .menu ul li > a:visited{text-decoration: none; color: #4e4e4e;}
	nav .menu ul li > a:hover, a:focus  {text-decoration: none; color: #016a5b;}
	nav .menu ul li > a:active  {text-decoration: none; color: #4e4e4e;}
	
	nav .menu ul li.current-menu-parent {  }
	nav .menu ul li.current-menu-parent > a { color: #016a5b;border-top: #016a5b 1px solid; }
	
	/* letzten Punkt in Level 1 rot machen */
	nav .menu ul li.red > a { color: #ad0000; }
	nav .menu ul li.red > a:link  { color: #ad0000;}
	nav .menu ul li.red > a:visited{ color: #ad0000;}
	nav .menu ul li.red > a:hover, a:focus  { color: #016a5b;}
	nav .menu ul li.red > a:active  { color: #ad0000;}
	
	nav li > a:after {	  content: "";	}
	/* Anschließend entfernen wir das Plus-Zeichen per Pseudoklasse „:only-child“ von solchen „<a>“-Elementen wieder, welche das einzige Kindelement sind, also kein „<ul>“-Element als Kind besitzen. */
	nav li > a:only-child:after {  content: "";}
	
	
	
	/*2nd level menus */
	nav .menu > ul > li > ul {  display: none; position: absolute; padding-top: 18px;margin-left: -8px; box-shadow: 0px 2px 1px rgba(0, 0, 0, 0.25); background-color: #fff;}
	nav .menu ul li ul li	{ min-width: 140px; }
	nav .menu ul li ul li a {font-weight: 400; padding: 9px 8px 9px 8px; color: #b1a5a8;text-transform:none;}
	nav .menu ul li ul li a:link  {text-decoration: none; color: #b1a5a8;}
	nav .menu ul li ul li a:visited{text-decoration: none; color: #b1a5a8;}
	nav .menu ul li ul li a:hover, a:focus  {text-decoration: none; color: #016a5b;}
	nav .menu ul li ul li a:active  {text-decoration: none; color: #b1a5a8;}
	
	nav .menu ul li ul li.current-menu-item > a { color: #231f20; }
	
	
	nav .menu > ul > li:hover > ul {	  display: block;	  }
	nav .menu > ul > li > ul > li {	  position: relative; text-align:left;  }
	

	
/* ---------------------------------------------------------
   Page content styles
   ---------------------------------------------------------*/


	.hero {
        position:relative;
        z-index: 1;
		display:block;
		width: 100%;
		height: 544px;
		max-height:520px;
		background: url("images/hero-banner.jpg") 0 0 no-repeat;
		background-size: cover;
		background-position: top center;
		
	}
  	.herocontent {
  		display:block;
  		margin:auto;
  		max-width: 1170px;
  	}
    
    .herz {
        width: 100%;
        overflow:hidden;
    }
    .herz a { text-decoration: none; }
    .herzcontent {
        position:relative;left: 0px;
        margin-top: 30px;
        border-top: #ad0000 7px solid;border-bottom: #ad0000 7px solid;
        padding: 13px;
        background-color: rgba(255, 255, 255, 0.7);
        font-weight: 700; font-size: 1.6vw;line-height: 2.0vw;
        color: #ad0000;
        text-decoration: none;
        animation-name: moveherzcontent;
        animation-duration: 2s;
    }
    .herzcontent:hover {
        color:#ffffff;background-color: #ad0000;
    }
  	
    @keyframes moveherzcontent {
        from {left: 100%;}
        to { left: 0px;}
    }
    
    
    
  	/* ----- blaue Infobox -----------------*/
	.scene {
		margin-top:9vh;
	  	height: 290px;
	  	perspective: 600px;
	}

	.card {
		width: 100%; 
		height: 100%;
		position:relative;
		transition: transform 1s;
		transform-style: preserve-3d;
	}

	.card__face {
	  position: absolute;
	  height: auto;
	  width: 100%;
	  backface-visibility: hidden;
	  -webkit-backface-visibility: hidden;
	}
	
	.card__face--front {
		box-sizing:border-box;
		padding: 16px 30px 22px 30px;
		background: rgba(112, 189, 230, 0.75);
		font-family: "lato", sans-serif; 
		color: #fff;
	}

	.card__face--back {
		box-sizing:border-box;
		padding: 14px 20px 14px 20px;
		background: rgba(240, 240, 240, 1);
		-ms-transform: rotateY(180deg);
		-webkit-transform: rotateY(180deg);
		-moz-transform: rotateY(180deg);
  		-o-transform: rotateY(180deg);
		transform: rotateY( 180deg );
	}
	.card__face--back p {margin-bottom: 4px;}
	.card__face--back h3 {margin-top: 0;margin-bottom: 2px;}

	.card.is-flipped {
	  transform: rotateY(180deg);
	}
	
	#hideform {
		cursor:pointer;
		position: absolute;
		bottom: 10px;
		left: 5%;
		border: 0;
		background-color: transparent;
	}  	
	#hideform:before {	
		display: inline-block;
		font-style: normal;
		font-variant: normal;
		text-rendering: auto;
    		-webkit-font-smoothing: antialiased;
		font-family: "Font Awesome 5 Free"; font-weight: 900; content: "\f104";
		font-size: 350%;
		
	}
	#hideform:hover {color:#73c8ec}
	
  	.infobody { font-size: 1.8rem; line-height: 2rem; text-transform:uppercase;font-weight: 300;margin: 0 0 8px 0;}
    .infoheader { font-size: 1.8rem; line-height: 2rem; text-transform:uppercase;font-weight: 300;margin: 0 0 8px 0;color:#105d91;}
	.infotelefon {font-size: 1.7vw;  line-height: 1.8rem; font-weight: 700; padding:0; color: #fff;margin:14px 0 14px 0;}
    .infomail {font-size: 1.5vw;  line-height: 1.7rem; font-weight: 700; padding:0; color: #fff;margin:10px 0 5px 0;}
	.infotelefon a:link, .infomail a:link { color:#fff;text-decoration: none; }
	.infotelefon a:visited, .infomail a:visited { color:#fff; }
	.infotelefon a:hover, .infotelefon a:focus, .infomail a:hover, .infomail a:focus { color:#7e8285; cursor:pointer;}
	.infotelefon a:active, .infomail a:active { color:#fff; }
	
	.infozeiten {font-size: 1.0rem;margin-bottom: 4px;}
	.rhsbutton { text-align:right;}
	.rhsbutton a {
		background-color:#105d91;
		-moz-border-radius:28px;
		-webkit-border-radius:28px;
		border-radius:28px;
		display:inline-block;
		margin-left: auto;
		cursor:pointer;
		font-family: "lato", sans-serif; 
		color: #fff;
		font-size:1rem;
		padding:10px 22px 14px 22px;
		text-decoration:none;
		cursor: pointer;
	}
	.rhsbutton a {text-align:right;}
	.rhsbutton a:link { color:#fff; }
	.rhsbutton a:visited { color:#fff; }
	.rhsbutton a:hover {color:#fff;
		background-color:#7e8285;
	}
	.rhsbutton a:active {color:#fff;  }
	
    .terminbox {position:relative; margin-top: 8vh; height: 290px;}
    
	.termin {
		box-sizing:border-box;
		position:absolute;
        bottom: 10px;
		width: auto;
		display: block;
		padding: 20px;
		
		background: rgba(112, 189, 230, 0.75);
		text-align:center;
		font-family: "lato", sans-serif; 
		font-weight: bold;
		font-size: 1.6rem;
		color: #fff;
	}
	.termin a { display:block;margin: 16px auto 0 auto;	text-align:center; font-size: 1.3rem; }
	.termin p { color: #fff; font-size: 0.9rem;line-height: 1.2rem;margin: 8px auto 0 auto;font-weight: normal; }
	
  	.gridbox { /* Breite von grid4! */
		float:left;
		margin-left:1.041666667%;
		margin-right:1.041666667%;
		width:31.25%;
  	}
  	.gridbox:first-child { margin-left: 0; }
  	.gridbox:last-child { margin-right: 0; }
  	
  	.cooppic {
  		box-sizing:border-box;
  		padding: 10px;
  		background-color: #fff;
  		box-shadow: 2px 2px 10px silver;
		border-bottom: 2px solid rgba(112, 189, 230, 1);
  	}
    
    article { margin-bottom: 40px;}

 /* ---------------------------------------------------------
   --- AARON POPUP ---
   ---------------------------------------------------------*/
   #aswaContainer {
    position: relative; 
   }
    #aswa-popup, #aswa-launcher {
        position: absolute !important;
        top: 168px;
        right: 40px !important;
        bottom: auto; z-index: 3 !important;
    }



 	  	
/* ---------------------------------------------------------
   --- Formulare ---
   ---------------------------------------------------------*/

   	
   	
   		input::-webkit-input-placeholder { color: #ccc !important;font-weight:400;}
   		input:-moz-placeholder { color: #ccc !important;font-weight:400; } /* Firefox 18 */
   		input::-moz-placeholder {  color: #ccc !important;font-weight:400; } /* Firefox 19+ */
   		input:-ms-input-placeholder {  color: #ccc !important;font-weight:400;  }
   
   		textarea::-webkit-input-placeholder { color: #ccc !important;font-weight:400;}
   		textarea:-moz-placeholder {	color: #ccc !important;font-weight:400; } /* Firefox 18- */
   		textarea::-moz-placeholder { color: #ccc !important;font-weight:400; } /* Firefox 19+ */ 
		textarea:-ms-input-placeholder {  color: #ccc !important;font-weight:400;  }
		
		.caldera-grid {
			box-sizing:border-box;
			display:block;
			width: 100%; height: 100%;
			padding: 0px 0px 20px 0px;
		}
		.caldera-grid .row .form-group {
			box-sizing:border-box;
			margin-bottom: 3px;
		}
		.caldera-grid .row .form-group.has-error {
			line-height: 1.2rem;
			margin-bottom: 0px;
		}
		.caldera-grid .row .form-group .help-block {
			font-size: 0.7rem;
			margin: 0;
		}
		.caldera-grid .row .form-control,
        .rueckruf .formgroup .wpcf7-form-control-wrap input[type="text"] {
			box-sizing:border-box;
			width: 100%;
			margin: 2px 0px 0px 0px;
            padding: 6px 12px;
            font-size: 14px;
            border: 1px solid #ccc;
            outline:none;
            background-color: #fff;
            
            -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
            box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
            -webkit-transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
            -o-transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
            transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s
         
        }

        /* Acceptance */
        .rueckruf .wpcf7-acceptance label {
            position:relative;
            font-weight: normal;
            font-size: 0.8rem;line-height: 1rem;
            margin-left: 8px;
        }
        .rueckruf .wpcf7-acceptance .wpcf7-list-item { margin: 0; }
        .rueckruf .wpcf7-acceptance .wpcf7-list-item-label { display:inline-block; margin: 6px 0 0 14px; }
        .rueckruf #acceptanceDatenschutz { 
            position:absolute;
                        cursor: pointer;
            padding: 0;
            margin-right: 10px;margin-left: -8px;
            width: 14px;
        }
        
        .rueckruf .formgroup  .wpcf7-form-control-wrap input:not([type=button])
         {
		  border-left: 3px solid;
		  border-radius: 5px;
		  transition: border-color .5s ease-out;
          height: 34px;
          background-color: #fff;
            
          -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
          box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
		}
        
		.caldera-grid .row .form-control:optional {
		  border-left-color: #73c8ec; /* hellblau */
		}
		
        .rueckruf .formgroup .wpcf7-form-control-wrap .wpcf7-form-control:required:valid {
		  border-left-color: palegreen;
		}
                
		.caldera-grid .row .form-control:invalid,
        .rueckruf .formgroup .wpcf7-form-control-wrap .wpcf7-form-control:invalid {
		  border-left-color: #73c8ec;  /* hellblau */
		}
		.caldera-grid .row .form-control:required:focus:valid,
        .rueckruf .formgroup .wpcf7-form-control-wrap .wpcf7-form-control:required:focus:valid {
		  border-left-color: palegreen;
		}
		.caldera-grid .row .form-control:focus:invalid,
        .rueckruf .formgroup .wpcf7-form-control-wrap .wpcf7-form-control:focus:invalid {
			border-left-color: #ff0000;
		}

		.caldera-grid .row input[type="submit"], 
        .rueckruf input[type="submit"] { 
			float:right;
			clear: both;
			display:flex;justify-content:center;align-items:center;width:auto;height:80px;
			height: auto;
			padding: 6px 20px 6px 20px;
            font-size: 14px;
			border-radius: 3px;
			background-color: #73c8ec;
			color: #fff;
			border: 0;
			text-transform:uppercase;
		}
        
        p.error { color: red; }
		
  		.rr-datenschutz label { font-family: Lato, sans-serif; font-size: 0.80rem; line-height: 1rem;}
  		.caldera-grid .checkbox-inline input[type=checkbox] {
  			margin-left: -16px !important;
  		}
        
        .rueckruf .screen-reader-text {
            clip: rect(1px, 1px, 1px, 1px);
            height: 1px;
            overflow: hidden;
            position: absolute !important;
            width: 1px;
            word-wrap: normal !important;
        }
        .rueckruf label {
            display: inline-block;
            max-width: 100%;
            margin-bottom: 5px;
            font-weight: 700;
        }
        .rueckruf p { margin-top: 0px; margin-bottom: 0px; line-height: 1.15rem;}
        
        /*bei Fehlern */
        .rueckruf .wpcf7-not-valid-tip {
            font-size: 0.8rem;
        }
        
        div.wpcf7-validation-errors { display: none !important; }
        span.wpcf7-not-valid-tip { display: none; }
        input[aria-invalid="true"], select[aria-invalid="true"] { border-color: red; background-color: rgba(153,0,0,0.3); }
        
        .wpcf7 form .wpcf7-response-output {}
            margin: 0 0.5em 1em;
            padding: 0em 1em 0.2em 1em;
            border: 0px;
            color: red;
        }
        /* Wartezeit */
        .wpcf7-spinner {
            background-color: #73c8ec !important; /* Farbe des Spinners ändern */
            margin: 30px auto auto auto;
        }
        
        /* nach dem Absenden */
        .wpcf7-form.sent .rueckruf { display:none; }
        .wpcf7-form.sent p { display:none; }
        .wpcf7-form.sent .rueckruf .wpcf7-submit { display:none; }
        .wpcf7 form .wpcf7-response-output { margin: 2em auto 0 auto; }
        .wpcf7 form.sent .wpcf7-response-output { border-color: #00a0d2; }

	
/* ------------------------------------------------------------------------------------------------------------------
   mobile styles
   ------------------------------------------------------------------------------------------------------------------*/
   

  
	/* Navigation Button
	-------------------------------------------------------- */

				.menu_container,.nav-button { display: none; }
				.menu_container { width: auto; }
				.nav-button { width: 40px; height: 40px;
					background: #105d91 url("images/mobile-menu-icon.png") center center no-repeat;
					color: #fff; border: 0px; }
				.nav-button:hover { background-color: #999; color: #fff; }


	/* Navigation Bar
	-------------------------------------------------------- */

				.page_container,.nav { transition: .2s margin ease; }
				body.active .page_container:before {
					content: "";
					position: absolute;
					z-index: -1;
					top: 0;
					left: -100%;
					width: 100%;
					height: 100%;
				}
					
				/* home button */
				nav .menu > ul > li:first-child {
					display:none;
					background: #fff url("images/mobilehome_off.png") 14px 8px no-repeat;
				}
				nav .menu > ul > li:first-child:hover { background: #fff url("images/mobilehome_on.png") 14px 8px no-repeat; }
				nav .menu > ul > li:first-child a { text-indent: -100px; }

/* 	-------------------------------------------------------- */
@media only screen and (min-width: 1600px)  {
	.infotelefon, .infomail {font-size: 1.5rem;}
}
@media only screen and (max-width: 1500px)  {
	/*2nd level menus - Korrektur für rausragenden Text des Untermenüs rechts unter 1600px Breite */
	nav .menu > ul li:last-child ul {
		right: 0;	
	}
}
@media only screen and (max-width: 1300px)  {
	/* Die Breite reicht nicht mehr aus um das Dropdown-Menü darzustellen. Also muss der letzte Punkt eingerückt werden */
	nav .menu ul li:last-child ul { right: 0; }
}

@media only screen and (min-width: 0px) and (max-width: 1200px) {
	
	

}
@media only screen and (min-width: 0px) and (max-width: 991px) {
	.infotelefon, .infomail {font-size: 2vw; line-height: normal;}
	.infobody, .infoheader { font-size: 2.2vw; line-height: normal; font-weight: 300;}
	.infozeiten {line-height:normal;}
	.herzcontent { font-size: 2.0vw;line-height: 2.3vw; }
}

@media only screen and (min-width: 0px) and (max-width: 767px) {

				/* Toggle the navigation bar open  */
				.menu_container, .nav-button {
				  	display: block; position: absolute; top: 15px; left: 15px;z-index:99;}
				.nav-button.active {
					background: #105d91 url("images/mobile-menu-icon-close.png") center center no-repeat;
				}
				
				  .nav { float: left; top: 0px; margin-left: -100%; width: 300px; z-index: 2; }
				  .page_container, footer { float: left; margin-left: 0; width: 100%; }

				  body.active .nav { margin-left: 0; }
				  body.active .page_container, body.active footer { margin-left: 300px; margin-right: -100%; }

				  .nav { border: none; padding: 0; position:relative; height:0; }
				  .nav .menu {height: auto; background-color: transparent; padding-top: 120px; /* höhe fixer header */}
				  .nav .menu ul { padding: 0;text-align: left; }
				  .nav .menu > ul > li { display: block; padding: 0px; margin: 0 2px 0 0px;background-color: #fff; }
				  .nav .menu > ul > li:hover a { color: #375472; }
				  .nav .menu ul li:first-child { display: block; }	 /*home button */
				  .nav .menu ul li a { text-align:left; border-top: 1px solid #ccc; padding: 12px; }
				  .nav .menu ul li:last-child a {  }
				  .nav .menu ul li a:hover {  }
				  				  	
				  /*2nd level menus */
				  .nav .menu > ul > li > ul {  display: block; position: static; margin-top: 0px; box-shadow: none; background-color: transparent;}
				  .nav .menu > ul > li:hover > ul {	  display: block;	  }
				  .nav .menu > ul > li > ul > li {	  position: static;  border: 0; margin: 0 0 0 20px; }
				  .nav .menu > ul > li > ul > li a { padding: 6px 10px 6px 10px; font-size: 90%; font-size: 0.9rem;}
				  	

				header[role="banner"] {
						justify-content: flex-end;
				}

			/* more mobile modifications  */	
				.scene { margin-top: 0px; padding-top: 10px;}
				.termin { position:relative; top: 0; bottom: auto; margin-top: 20px; }
				#logo { padding-right: 10px; }
				#infobox { margin-top: 0; padding: 30px;}
				#content {	width: 100%;	float: none;	padding: 0%;}
                .infoheader { font-size: 1.7rem;}
				.infotelefon, .infomail { font-size: 1.5rem;}	
				.mitarbeiter li { min-height: auto; }
}
@media only screen and (min-width: 0px) and (max-width: 640px) {
	.wp-caption .size-large, .size-large { width: 46%; }
	.arztpic { width: 100%; }
	.hero { max-height: 660px; height: auto; }
    .herzcontent { font-size: 1rem;line-height: 1.3rem; }
    .scene { height: 290px;}
}

@media only screen and (min-width: 0px) and (max-width: 560px) {
	.wp-caption.alignright, .wp-caption.alignleft, .wp-caption .size-large, .size-large { width: 100% !important; }
	
	.alignright { float: none; margin: 0 0 10px 0;}
	.terminbox { }
	.termin { margin-top: 0px; font-size:1.3rem;padding: 10px 20px;}
	.scene { margin-top: 0px; padding-bottom:10px;}
}

@media only screen and (min-width: 0px) and (max-width: 420px) {
		.infotelefon, .infomail {font-size: 1.3rem;line-height: 1.6rem;}
		.infobody, .infotelefon { margin-bottom: 4px; }
		.textboxleft {	width: 35%;	}
		.textboxright {	width: 60%; }
        
         
         table.aerzte { margin-right: 0%; display:block; float: none;}
         table.aerzte td { box-sizing:border-box; padding-right: 2%; font-size: 0.9rem; line-height: 20px; }
         table.aerzte td:first-child {
         	width:34%;
         }
         table.aerzte td:last-child {
         	width:62%;
         }
		.infozeiten {font-size: 0.95rem;}
	
}
@media only screen and (min-width: 0px) and (max-width: 320px) {
		.infotelefon {font-size: 1.8rem;line-height: 2rem;}
}
/* End Mobile Styles */



	
/* ---------------------------------------------------------
   Print styles
   ---------------------------------------------------------*/
@media print {
    * {
        color:#000 !important;
        box-shadow:none !important;
        text-shadow:none !important;
	background:transparent !important;
    }
	html { background-color:#fff; }

	header[role="banner"] { background-color: #282828 !important; border: 0px;}

	/* Hide navigation */
	nav { display:none; }

	/* Show link destinations in brackets after the link text */
	a[href]:after { content: " (" attr(href) ") "; }
	a[href] {
		font-weight:bold;
		text-decoration:underline;
		color:#06c;
		border:none;
	}
	/* Don't show link destinations for JavaScript or internal links */ 
	a[href^="javascript:"]:after, a[href^="#"]:after { content:""; }
	
	/* Show abbr title value in brackets after the text */
	abbr[title]:after { content: " (" attr(title) ")"; }

	figure { 
		margin-bottom:1em; 
		overflow:hidden;
	}

	figure img { border:1px solid #000; }
}

