/*
Sofia Pro Black
font-family: sofia-pro, sans-serif;
font-weight: 900;
font-style: normal;

Sofia Pro Bold
font-family: sofia-pro, sans-serif;
font-weight: 700;
font-style: normal;

Sofia Pro Extra Light
font-family: sofia-pro, sans-serif;
font-weight: 200;
font-style: normal;

Sofia Pro Light
font-family: sofia-pro, sans-serif;
font-weight: 300;
font-style: normal;

Sofia Pro Medium
font-family: sofia-pro, sans-serif;
font-weight: 500;
font-style: normal;

Sofia Pro Regular
font-family: sofia-pro, sans-serif;
font-weight: 400;
font-style: normal;

Sofia Pro Semi Bold
font-family: sofia-pro, sans-serif;
font-weight: 600;
font-style: normal;

Sofia Pro Ultra Light
font-family: sofia-pro, sans-serif;
font-weight: 100;
font-style: normal;
*/

/* //////////////////////////////////// ALLGEMEIN //////////////////////////////////// */
body{
	font-family: sofia-pro, sans-serif; 
	color:#000000;
	line-height:1.5;
	font-size:18px;
	margin: 0px;
	font-weight: 300;
}
h1, h2, h3, h4, h5, h6 {
	font-family: sofia-pro, sans-serif; 
	color: #5F5350;
	font-size: 37px;
	line-height:1.2;
	font-weight: 300;
	margin: 0px 0px 40px 0px;
}
div p{
	margin: 0px 0px 15px 0px;
}
div p:last-child, p:last-child{
	margin: 0 auto;
}
img{
	max-width: 100%;
	height:auto;
}
a{
	color: #000000;
	text-decoration: none;
}
a:active, a:hover {
	color: #565443;
}
em, strong{
	color:#5F5350;
}
.textcenter{
	text-align:center;
}
button, input, select, textarea{
	border:0;
	color:#5F5350;
	background-color: transparent;
	padding:10px;
	font-weight:300;
	width:100%;
	font-size: 18px;
    font-family: sofia-pro, sans-serif;
}
textarea{
	height:100px;
}
svg{
	max-width: 100%;
}
ul{
	padding-left: 22px;
	margin: 0 auto 15px;
}
/* //////////////////////////////////// CONTENT //////////////////////////////////// */
.w1280{
	max-width:1280px;
	margin: 0 auto;
	position:relative;
	padding: 0px 40px;
}
.no_padding{
	padding: 0;
}
.margin_oben{
	margin-top: 100px;
}
.margin_unten{
	margin-bottom: 100px;
}
.w1024{
	max-width:1024px;
	margin-left: auto;
	margin-right:  auto;
	position:relative;
}
.w960{
	max-width:960px;
	margin:0 auto;
	position:relative;
}
.w800{
	max-width:800px;
	margin:0 auto;
	position:relative;
}
.w750{
	max-width:750px;
	margin:0 auto;
	position:relative;
}
.w600{
	max-width:600px;
	margin:0 auto;
	position:relative;
}

.h900{
	height: 900px;
}
.h800{
	height: 800px;
}
.h700{
	height: 700px;
}
.h600{
	height: 900px;
}
.h500{
	height: 500px;
}
.fullwidth{
	width:100%;
	background-repeat:no-repeat;
	background-size:cover;
	position: relative;
}

/* //////////////////////////////////// INPUT Fields //////////////////////////////////// */
.input{
	margin: 0px 1% 20px 1%;
	width: 48%;
	float: left;
}
.input.last{
	float: right;
}
.input input, .input select {
    background-color: rgba(0, 0, 0, 0);
    border-bottom: 2px solid #878787;
    color: #000;
    padding-left: 0 !important;
	font-weight: 200;
	font-size: 17px;
	letter-spacing: 1px;
	font-family: sofia-pro, sans-serif;
}
.bemerkungen{
	width: 100%;
	text-align: left;
	font-size: 17px;
}
.input textarea{
	background-color: transparent;
	color: #000;
	border: 2px solid #878787;
	padding: 10px;
	width: 98%;
}


.dsgvo_kontaktformular, form{
	text-align: left;
}
.dsgvo_kontaktformular, .wpcf7-form {
    font-weight: 400;
    letter-spacing: 1px;
    font-size: 17px;
    clear: both;
    padding-bottom: 20px;
}
.check_anfrage{
    height: auto;
    clear: both;
    display: inline-block;
    margin-right: 10px;
	vertical-align: top;
}
.check_anfrage .wpcf7-list-item{
	margin: 0 auto;
}
.check_anfrage input{
	width: 13px;
	margin: 0 auto;
}
.check_anfrage_text {
    display: inline-block;
    width: calc(100% - 30px);
}

.wpcf7-submit{
	display: inline-block;
	vertical-align: middle;
	color: #878787;
	border: 3px solid #878787;
	text-align: center;
	width: auto;
	background-color: transparent;
	font-size: 19px;
	padding: 5px 15px;
}
.wpcf7-submit:hover{
	background-color: #878787;
	border: 3px solid #878787;
	color: #fff;
	cursor: pointer;
}
div.wpcf7 .wpcf7-submit:disabled{
	background-color: #ccc;
	border: 3px solid #ccc;
	color: #fff;
}

::placeholder { 
   color:#878787; 
   opacity: 1;
}
::-webkit-input-placeholder { /* WebKit browsers */
   color:#878787 !important; 
   opacity: 1;
}
:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
   color:#878787 !important; 
   opacity: 1;
}
::-moz-placeholder { /* Mozilla Firefox 19+ */
   color:#878787 !important; 
   opacity: 1;
}
:-ms-input-placeholder { /* Internet Explorer 10+ */
   color:#878787 !important; 
   opacity: 1;
}

/*////////////////////////////// ANFRAGEFORM //////////////////////////////*/
.wpcf7-form .anfrageform{
    padding-bottom: 50px;
    position: relative;
	width: 800px;
	max-width: 800px;
	margin: 0 auto;
}
.wpcf7-form .anfrageform input,
.wpcf7-form .anfrageform select,
.wpcf7-form .anfrageform textarea {
    width: 100%;
    max-width: 100% !important;
    float: left;
	border:1px solid #5F5350;
	font-size: 17px;
	color:#5F5350;
}
.wpcf7-form .anfrageform h3 {
    color: #6f2b15 !important;
    font-size: 21px !important;
    text-align: left;
}
.wpcf7-form .anfrageform label {
    width: 50%;
    float: left;
}
.wpcf7-form .anfrageform .wpcf7-form-control-wrap{
	float:right;
	width: 50%;
}
.wpcf7-form .anfrageform .form-row-checkbox .wpcf7-form-control-wrap{
	float:left;
	width: auto;
}
.wpcf7-form .anfrageform .wpcf7-form-control.wpcf7-submit {
    background: #fff;
    display: block;
    text-decoration: none;
    text-align: center;
    width: 100% !important;
    margin-bottom: 15px;
    margin-top: 20px;
	padding: 5px 20px;
	border: 1px solid #5F5350;
	-webkit-border-radius: 20px 20px 20px 20px;
	border-radius: 20px 20px 20px 20px;
	color: #5F5350;
	text-transform: uppercase;
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 1.9px;
	font-family: sofia-pro, sans-serif;
}
.wpcf7-form .anfrageform .wpcf7-form-control.wpcf7-submit:hover {
    background: #5F5350;
	border: 1px solid #5F5350;
	color: #fff;
}
.wpcf7-form .anfrageform .wpcf7-form-control.wpcf7-submit:disabled {
    background: #efefef!important;
	border: 1px solid #ccc!important;
	color: #ccc!important;
}
.wpcf7-form .anfrageform .form-row::after {
    content: "";
    clear: both;
    display: table;
	margin-bottom: 15px;
}
.wpcf7-form .anfrageform #child-age-container {
    margin-bottom: 10px;
}
.wpcf7-form .anfrageform #child-age-container select,
.wpcf7-form .anfrageform #child-age-container .childrens_age {
    margin-bottom: 5px;
    width: 80px !important;
    float: left;
    margin-right: 10px;
}
.wpcf7-form .anfrageform #child-age-container .childrens_age select {
    margin-bottom: 0px;
    width: 100%;
    margin-right: 0px;
}
.wpcf7-form .anfrageform #child-age-container .wpcf7-form-control-wrap{
	float:left;
	width: auto;
}
.wpcf7-form .anfrageform .form-row.form-row-checkbox input {
    width: 25px !important;
}
.wpcf7-form .anfrageform .form-row.form-row-checkbox label {
    width: 100%;
    line-height: 14px;
    margin-bottom: 5px;
}


/* //////////////////////////////////// 404 //////////////////////////////////// */
.fehler{
	text-align:center;
	font-size:300px;
	padding-top:150px;
	font-family: sofia-pro, sans-serif; 
	line-height:0.5;
	color:#ccc;
}
.fehler span{
	font-size:150px;
}
.fehlermeldung{
	text-align:center;
	padding-top:30px;
}


/* //////////////////////////////////// CLEARFIX do not group these rules //////////////////////////////////// */
html {
	box-sizing: border-box;
}
*, *:before, *:after {
	box-sizing: inherit;
}
.clearfix:before,
.clearfix:after {
	content:"";
	display:table;
}
.clearfix:after {
	clear:both;
}
.clearfix {
	zoom:1; /* For IE 6/7 (trigger hasLayout) */
}