.source-sans-3-<uniquifier> {
  font-family: "Source Sans 3", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
}

#body{
	font-family: "Source Sans 3";
	margin: 0px;
	font-size: 1em;
	overflow-x: hidden;
}
#logo{
	
	margin: 25px 10px 0 3em;
	height: 4em;
}
#header{
	position: fixed;
	top:0;
	left: 0;
	width: 100vw;
	text-align: right;
	height: 8em;
	z-index: 1000;
	padding-bottom: 1em;
	background-color:#fff;
	/*background-color: #fdf8ef;*/
	
}

#praxis{
	max-width: calc(38% + 840px); 
	text-align: right;
}

#f-name{
	color: #333;
	font-size: 1.6em;
	font-weight: 160;
	margin-top: 0.3em;
}
#branche{
	color: #333;
	display: inline-block;
	margin-top: 1.8em;
	font-size: 1.3em;
	font-weight: 200;
	line-height: 1.1em;
	vertical-align: top;
	text-align: left;
	width: 12em;

}

.mobileview{
		display: none;
	}


h1{
	margin: 0.3em 0 0.3em 0;
	font-size: 2em;
	font-weight: 400;
	line-height: 1em;
}
h2{
	font-size: 1.6em;
	font-weight: 280;
	margin-bottom: 0.3em;
}

h3{
	line-height: 1em;
	font-weight: 400;
	font-size: 1.3em;
	margin-bottom: 0.6em;
}
h4{
	line-height: 1em;
	font-weight: 400;
	font-size: 1.3em;
	margin-bottom: 0.4em;
}

h5{
	width: 100%;
	text-align: left;
	line-height: 1em;
	font-weight: 250;
	font-size: 0.9em;
	margin-top: -0.4em;
	margin-bottom: 2em;
}

.content {
		position: absolute;
		left: 0;
		top: 6.4em;
		margin-top: 0em;
        text-align:left;
		hyphens: auto;
		font-size: 1em;
		width: 100%;
		z-index: 200;
    }
.page{
		position: relative;
		top: 2em;
		background-color: #fff;
	}	
.defaultseite{
	position: relative;
	padding: 2em;
	margin-bottom: 2em;
	text-align: left;
}
.default-lauftext,.spalte-rechts, .intent-lauftext{
	margin-left: 34%;
	max-width: 600px;
}

.hg-bild{
	-webkit-mask-image: linear-gradient(rgba(0, 0, 0, 1) 50%, rgba(0, 0, 0, 0) 100%);
	mask-image: linear-gradient (top, rgba(0, 0, 0, 1) 80%, rgba(0, 0, 0, 0) 100%);
	width: 100%;
}

.bild-links, .bild-breit{
	width: 30%;
	display: block;
	position: fixed;
	left: 1.5em;
	top: 208px;
}

.rembild, .hauptbild{
	margin-top: 189px;
	margin-left: 48px;
	float: left; 
	top:200px;
	width: calc(30% - 3em);
	position: -webkit-sticky; /* Für Safari */
	position: sticky;
	
}
.hauptbild{
	position: absolute;
	top: 0em;
	margin-top: 43px;
	display: block;
}
.rechtseitig{
		width: 30%;
		margin-left: 0em;
}
.bu{
		display: block;
		margin-top: 0.5em;
		width: 100%;
		text-align: center;
		hyphens: none; 
	}

.layer{
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	z-index: 10000;
	background-color: rgba(255,255,255, 0.3);
}

.roundbtn{
		font-size: 1em;
		padding: 0.5em 1em 0.5em 1em;
		position: absolute;
		left: 3.5em;
		top: 1em;
		background-color: #ffab10;
		border-color: transparent;
		border-radius: 1.5em;
		color: #fff;
}

.roundbtn_inline{
		display: inline-block;
		font-size: 1em;
		padding: 0.2em 1em 0.2em 1em;
		position: relative;
		background-color: #ffab10;
		border-color: transparent;
		border-radius: 1.5em;
		color: #fff;
}

.roundbtn_inline:hover{
	background-color:#a65036;
}
.roundbtn_inline:disabled{
	opacity: 0.5;
}

.roundbtn:hover{
}

#anfragebtn{
	display: inline-block;
}

.tabbox{
	margin-bottom: 2em;
}

.ModalOverlay {
	position: fixed;
	 z-index: 500000;
    background: rgba(0,0,0,0.1);
    width: 100vw;
	height: 100vh;
    top: 0;
	left: 0;
	overflow-y: scroll;
	display: none;
}

.modal-close-btn{
	background-image: url(closecross.png);
	background-repeat: no-repeat;
	width: 32px;
	height: 32px;
	background-size: 80%;
	cursor: pointer;
}

.replay-btn{
	background-image: url(replay.png);
	background-repeat: no-repeat;
	width: 32px;
	height: 32px;
	background-size: 60%;
	cursor: pointer;

}

.modal-content {
    background: #fff;
    width: calc(100% - 60px);
    max-width: 600px;
    margin: 20% auto;
    padding: 20px;
    border-radius: 18px;

}

.modal-content input {
    width: calc(100% - 20px);
    padding: 10px;
    font-size: 1em;
	border: thin solid #999;
}
.modal-content input:valid {
	border: thin solid green;
}

.modal-content input:invalid {
	border: thin solid red;
}
.modal-content input[type="radio"]{
	width: 16px;
	height: 16px;
	margin: -4px 12px 0 0px;
	vertical-align: middle;
}

.modal-content input[type="date"],input[type="time"]{
	font-family: Arial, sans-serif;
	width: 150px;
	font-size: 1em;
	margin-right: 10px
}

label{
	margin-right: 3px;
}

.tabheader3{
	display: inline-block;
	padding:4px;
	width: calc(30% - 3px );
	text-align: center;
	margin-top: -3px;
	cursor: pointer;
}
.tabheader3:hover{
	background-color: #bbb;
}

.selected{
	background-color: #fff;
	border: thin solid #444;
	border-top: 2px solid #fff;
	padding-top: 0px;
	border-radius: 0 0 8px 8px;
	-webkit-box-shadow: 0px 8px 11px 0px rgba(0,0,0,0.60); 
	box-shadow: 0px 8px 11px 0px rgba(0,0,0,0.60);
}

.selected:hover{
	background-color: #fff;
}
.schatten {
-webkit-box-shadow:  0px 2px 14px 0px #999; 
box-shadow: 0px 2px 13px 0px #999;
}

@media(max-width: 900px){
	#logo{	
		margin: 18px 10px 0 3em;
		height: 2em;
		top: 1em
	}
	#header{
		position: fixed;
		top:0;
		left: 0;
		width: 100vw;
		text-align: right;
		height: 8em;
		z-index: 1000;
		padding-bottom: 1em;
		background-color:#fff;
		/*background-color: #fdf8ef;*/
		
	}

	#praxis{
		max-width: calc(38% + 540px); 
		text-align: left;
		top: 0.4em;
	}

	#f-name{
		color: #333;
		font-size: 1.6em;
		font-weight: 260;
		margin-top: 0.3em;
	}
	#branche{
		color: #333;
		display: inline-block;
		margin-top: 0.8em;
		font-size: 1em;
		font-weight: 300;
		line-height: 1.1em;
		vertical-align: top;
		text-align: left;
		width: 12em;

	}
	.roundbtn {
	  font-size: 1em;
	  width: 9em;
	  padding: 0.1em 0em 0.2em 0em;
	  left: calc(100% - 12em);
	  border-radius: 1em;
	}
}

/*-----------------------------------------------------*/
	/*              Mobile Endgeräte                       */
	/*-----------------------------------------------------*/
@media(max-width: 680px){
	#header{
		top: 0px;
		left: 0px; 
		/*width: calc(100% - 2em);*/
		padding: 1em 0 2em 0;
		height: 6em;
		text-align: left;
		/*border-bottom: thin solid #ffab10;*/
		
	}
	#logo{
		position: absolute;
		top: 1.4em;
		left: calc(50% - 80px);
		height:40px;
	}
	#praxis{
		text-align: center;
		
	}
	#f-name{
		color: #000;
		margin-top: 2em;
		display: block;
		width: 100vw;
		font-size: 1.5em;
	}
	#branche{
		color: #222;
		display: block;
		position: absolute;
		width: 100vw;
		left: 0em;
		top: -0.3em;
		font-size: 1.2em;
		font-weight: 400;
		line-height: 1em;
		text-align: center;
		vertical-align: top;
	}
	.mobileview{
		display: inline;
	}
	h1{
		font-size: 1.5em;
		font-weight: 500;
		text-align: center;
		margin-bottom: 1em;
	}
	h5{
		text-align: center;
		margin-top: -1.4em;
	}
	.hg-bild{
		
		-webkit-mask-image: none;
		mask-image: none;
		width: 100%;
		margin-bottom: 1.8em;
		
	}
	.bild-links, .rembild, .hauptbild{
	width: 70%;
	float: none;
	position: relative;
	top: 0em;
	left: 0;
	margin-bottom: 1em;
	display: inline-block;
	}
	
	.rembild, .hauptbild{
		margin-top: 0;
		margin-left: calc(15% - 12px);
	}
	
	.bild-breit{
		width: 70%;
		margin-bottom: -0.2em;
	}
	.spalte-rechts{
		width: 100%;
		margin-left: 0;
	}
	.defaultseite{
		text-align: center;
		padding: 1.5em;
	}
	.default-lauftext,.spalte-rechts{
		margin-left: 0;
		width: 100%;
		text-align: left;
	}
	
	.intent-lauftext{
		margin-left: 48px;
		width: calc(100% - 48px);
		text-align: left;
		margin-top: 0;
	}
	.rechtseitig{
		width: 100%;
		margin-left: 0;
	}
	.bu{
		display: none;
	}
	
	#anfragebtn{
		display: none;
	}
}