/* raleway-300 - latin */
@font-face {
  font-family: 'Raleway';
  font-style: normal;
  font-weight: 300;
  src: url('../fonts/raleway-v12-latin-300.eot'); /* IE9 Compat Modes */
  src: local('Raleway Light'), local('Raleway-Light'),
       url('../fonts/raleway-v12-latin-300.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/raleway-v12-latin-300.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/raleway-v12-latin-300.woff') format('woff'), /* Modern Browsers */
       url('../fonts/raleway-v12-latin-300.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/raleway-v12-latin-300.svg#Raleway') format('svg'); /* Legacy iOS */
}

/* raleway-regular - latin */
@font-face {
  font-family: 'Raleway';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/raleway-v12-latin-regular.eot'); /* IE9 Compat Modes */
  src: local('Raleway'), local('Raleway-Regular'),
       url('../fonts/raleway-v12-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/raleway-v12-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/raleway-v12-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/raleway-v12-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/raleway-v12-latin-regular.svg#Raleway') format('svg'); /* Legacy iOS */
}

/* raleway-600 - latin */
@font-face {
  font-family: 'Raleway';
  font-style: normal;
  font-weight: 600;
  src: url('../fonts/raleway-v12-latin-600.eot'); /* IE9 Compat Modes */
  src: local('Raleway SemiBold'), local('Raleway-SemiBold'),
       url('../fonts/raleway-v12-latin-600.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/raleway-v12-latin-600.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/raleway-v12-latin-600.woff') format('woff'), /* Modern Browsers */
       url('../fonts/raleway-v12-latin-600.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/raleway-v12-latin-600.svg#Raleway') format('svg'); /* Legacy iOS */
}


/* ======================   Reset  ============================   */

article, main, aside, details, figcaption, figure, footer, header, nav, section { display: block; }

audio, canvas, video { display: inline-block; *display: inline; *zoom: 1; margin:0; padding: 0; }
audio:not([controls]) { display: none; }
[hidden] { display: none; } 

body, html, div, table, td, span, p, a, form, h1, h2, h3, h4, h5, img, ul, li, object, embed, ul, li, input, textarea, button, article, main, aside, details, figcaption, figure, footer, header, hgroup, nav, section{
	padding: 0;
	margin: 0;
	border: none;
	-webkit-text-size-adjust: none;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}


html,body {
	width:100%;
	overflow-x: hidden; /* wegen Mobil Menu */
}


 
/* =======================   Fonts / Colors  ============================ 

schwarz/dunkelblau: #495359
grau: #525a63;
hellgrau: #f6f6f6;
hellblau: #21c4f1

*/


html, body, button, input, select, textarea { 
	font-family: 'Raleway', sans-serif;
	color: #1a171b;
	font-size: 17px;
	line-height: 1.7;
	font-weight:300;
}

body {
	background-color: #fff;
}

a {
	outline: none;
	color: #495359;
}

a:hover {
	color: #495359;
}


img {
	max-width: 100%;
	height: auto;
}

.block {
	display:block;
}

h1, h2, h3, h4, h5, h6, h7 {
	font-family: 'Raleway', sans-serif;
	font-size: 18px;
	font-weight: 400;
	line-height: 1.2;
}


h1 {
	font-size: 25px;
	padding-bottom: 30px;
	text-transform: uppercase;
}

h2 {
	font-size: 22px;
	padding-top: 30px;
	padding-bottom: 30px;
	text-transform: uppercase;
}

h2.headline {
	font-size: 30px;
	font-weight: 600;
	color: #495359;
	padding: 0px 120px 5px;
	margin-bottom: 10px;
	text-transform: uppercase;
	display: inline-block;
	border-bottom: 1px solid #21c4f1;
}



h3 {
	font-size: 17px;
	padding-bottom: 30px;
}

h3.subheadline {
	font-size: 14px;
	color: #495359;
	font-weight:300;
	padding-bottom: 30px;
}




h4, h5{
	font-size:18px;
	padding-bottom: 20px;
}




h1 a, h2 a, h3 a, h4 a, h5 a, h6 a, h7 a {
	text-decoration: none;
}


ul{
list-style-type: none;
margin:0;
padding:0;
}

.article ul li{
margin:0;
padding-left: 22px;
margin-left: 22px;
padding-bottom: 10px;
position: relative;
}

.article  ul li:before {
    content: "\f0c8";
    font-family: FontAwesome;
    color: #333;
    position: absolute;
	left:2px;
	top: 4px;
	font-size:12px;
}

#mainWrapper ol{
margin:0;
margin-left: 10px;
padding:0;
}

#mainWrapper ol li{
margin:0;
padding-left: 10px;
margin-left: 10px;
padding-bottom: 10px;
position: relative;
}



.imgBlock {
	display:block;
	max-width: 100%;
	height: auto;
}

.imgGregor {
	display:block;
	width: 100%;
	height: auto;
}

sup, .textSup {
font-size:9px;
vertical-align:text-top;
line-height: normal;
}

.textKlein{
	font-size:0.9rem;
}

.textFarbig {
	color: #495359;
}

.textNormal {
	color: #1a171b;
	font-weight: 300;
}

.textSchwarz {
	color: #495359;
}

.textGross {
	font-size: 16px;
	font-size: 1.2rem;
}

.textCenter{
	text-align:center;
}

.textUnderline {
	text-decoration:underline !important;
}


.bgGrau{
	background: #f6f6f6;
} 

.bgSchwarz{
	background: #495359;
	color: #fff;
} 
.bgSchwarz a{
	color: #fff;
} 

.bgSchwarz h2.headline, .bgSchwarz h3.subheadline {
	color: #fff;
}

.bgWeiss{
	background: #fff;
	color: #495359;
} 

strong, b {
	font-weight: 600;
}

p {
	padding-bottom: 15px;
}


.article{
	padding-bottom: 20px;
}

.abstand {
	padding-bottom: 50px;
	padding-top: 50px;
}

.abstandSmall {
	padding-bottom: 20px;
	padding-top: 20px;
}

.abstandUnten {
	padding-bottom: 50px;
}
.abstandOben {
	padding-top: 50px;
}

.abstandPage {
	padding-top: 240px;
	padding-bottom: 50px;
}


.abstandObenSmall {
	padding-top: 20px;
}

.margin {
	margin-bottom: 50px;
	margin-top: 50px;
}

.marginUnten {
	margin-bottom: 50px;
}
.marginOben {
	margin-top: 50px;
}


.borderTop {
	border-top: 1px solid #e3e3e3;
}

.borderBottom {
	border-bottom: 1px solid #e3e3e3;
}

.alignright {
	float: right;
	display:inline;
	margin-left: 40px;
}
.aligncenter{
	text-align:center;
	margin: 0 auto;
}




hr  {
	margin:0;
	padding:0;
	margin-bottom: 20px;
	clear:both;
  	border: 0;
  	border-top: 1px solid #495359;
  	border-bottom: 1px solid #fff;
}

.schattenUnten  {
-webkit-box-shadow: 0px 4px 4px 0px rgba(0,0,0,0.3);
-moz-box-shadow: 0px 4px 4px 0px rgba(0,0,0,0.3);
box-shadow: 0px 4px 4px 0px rgba(0,0,0,0.3);
}

a.button{
	text-align: center;
	display: inline-block;
    font-size: 14px;
	line-height: 16px;
	padding: 7px 10px;
	text-decoration: none;
	vertical-align:text-top;
	color: #fff;
	font-weight: 400;
	background-color: #495359;
	border-radius: 10px 10px 10px 10px;
-moz-border-radius: 10px 10px 10px 10px;
-webkit-border-radius: 10px 10px 10px 10px;
}


a.button:hover{
	color: #fff;
	background-color: #495359;
}


.clear { 
	clear: both;
	font-size: 1px;
	line-height: 1px;
    overflow: hidden;
    visibility: hidden;
    width: 0;
    height: 0;
	display:block;
}

.clearfloat { 
	clear: both;
}

 /* Use clearfix in parent div  */
.clearfix:before, .clearfix:after {
      content: '\0020';
      display: block;
      overflow: hidden;
      visibility: hidden;
      width: 0;
      height: 0; 
}
.clearfix:after {
      clear: both; 
}
.clearfix {
  zoom: 1; 
}

.hidden {
	display:none;
}


div {
	background-repeat: no-repeat;
	background-position: left top;
}


/* ---------- Tabelle ------------- */

table { border-collapse: collapse; border-spacing: 0; width: 100%; margin-bottom: 14px; }
td { vertical-align: top; text-align: left; padding: 5px; }

table p{
	margin: 0;
	padding: 0;
}

table.tableReferenzen td{
	border-bottom: 1px solid #495359;
}


table.tableReferenzen{
	border: 1px solid #495359;
}

table.tableReferenzen tr td:first-child{
	background-color: #c3da99;
	color: #fff;
	font-weight:bold;
	width:20%;
}




/* ---------- Haupt Divs ------------- */

#containerAussen{
	width: 100%;
	min-width:320px;
	position:relative;
	margin: 0 auto;
	/* overflow-x: hidden;  wegen Mobil Menu */
	background-color: #fff;
	/* 
	-webkit-box-shadow: 0px 2px 11px 0px rgba(0,0,0,0.4);
	-moz-box-shadow: 0px 2px 11px 0px rgba(0,0,0,0.4);
	box-shadow: 0px 2px 11px 0px rgba(0,0,0,0.4); 
	*/
}
 
.containerRahmen{
	width: 100%;
	text-align:center;
} 

.container{
	width: 960px;
	max-width: 100%;
	min-width:300px;
	text-align:left;
	margin: 0 auto;
} 


#mainWrapper{
	min-height: 400px;
} 

.containerGrau{
	background: #525a63;
	color: #fff;
}

.containerHellgrau{
	background: #f6f6f6;
}  

.containerSchwarz{
	background: #495359;
	color: #fff;
}

.containerBackground{
	width:100%;
	background-repeat: no-repeat;
	background-position: center top;
	background-size:cover;
	position: relative;
	color: #fff;
}

.containerBackgroundFlaeche {
	background: rgba(0, 155, 194); /* Fallback */
	background-color: rgba(0, 155, 194, 0.7);
	padding: 20px;
	color: #fff;
}



/* ---------- spalten ------------- */



.spalteDrittel{
	width: 29.3%;
	margin-left: 2%;
	margin-right: 2%;
	float: left;
}
.spalteZweidrittel{
	width: 62.3%;
	margin-left: 2%;
	margin-right: 2%;
	float: left;
}

.spalteHalb{
	width: 46%;
	margin-left: 2%;
	margin-right: 2%;
	float: left;
}

.spalteVoll{
	margin-left: 2%;
	margin-right: 2%;
}

.spalteViertel{
	width: 21%;
	margin-left: 2%;
	margin-right: 2%;
	float: left;
}

.spalteFuenftel{
	width: 16%;
	margin-left: 2%;
	margin-right: 2%;
	float: left;
}

.spalteSechstel{
	width: 12.5%;
	margin-left: 2%;
	margin-right: 2%;
	float: left;
}




/* youtube videos - talk  */

.youtube_channel {
	width: 100%;
    float: none;
}


.ytc_video_container{
	width: 29.3% !important;
	margin-left: 2%;
	margin-right: 2%;
	float: left;
	margin-bottom: 15px;
	margin-top: 15px;
}

.ytc_title {
	font-size:13px;
	padding-top:5px;
}




.spaltenInnen{
	margin-bottom: 20px;

}


.spalteInnenHalbLinks{
	width: 34%;
	float: left;
}

.spalteInnenHalbRechts{
	width: 59%;
	float: right;
}

.noMargin{
	margin: 0 !important;
}





/* ---------- Header ------------- */


#headerRahmen {
	width: 100%;
	position: absolute;
	top:0px;
	left: 0px;
	z-index: 55;
	color: #fff;
	background-color: #495359;
}


#headerLogo {
	width: 100%;
	max-width: 100%;
	height: auto;
	margin-left: auto;
	margin-right: auto;
	padding-top: 10px;
	padding-bottom: 10px;
	font-size: 14px;
	text-align:center;
}

#headerLogo img {
	width:100%;
	height: auto;
	margin: 0 auto;	
	margin-bottom: 0px;
	display:block;
}


.headerSocial, .footerSocial {
	text-align: center;
	padding-top: 20px;
}

.headerSocial a, .footerSocial a {
	margin-left: 10px;
	color: #fff;
}

.headerSocial .fa, .footerSocial .fa {
	font-size: 25px;
	line-height:40px;
	color: #fff;
}
.headerSocial a:hover .fa , .footerSocial a:hover .fa {
	color: #ccc;
}



/* ---------- Slider ------------- */


.headerSlider{
	position: relative;
	width:100%;
	height: 84vh;
} 

.sliderFoto{
	overflow: hidden;
	position: relative;
	width:100%;
	height: 84vh;
	background-repeat: no-repeat;
	background-position: center top;
	background-size:cover;
	position: relative;
	color: #fff;
} 

.sliderFoto img{
	margin: 0 auto;
	display: block;
	width: 100%;
	height: auto;
}



.sliderText{
position:absolute;
text-align:center;
width:100%;
top: 50%;
left: 0px;
padding: 20px;
margin-top: 50px;
transform: translate(0,-50%);
font-size: 1.2rem;
line-height: 1.5;
color: #fff;
} 


.sliderText h2{
	padding:0;
	margin-bottom: 30px;
	display:block;
	text-align:center;
	font-size: 1.7rem;
	line-height: 1.4;
	text-shadow: 0px 0px 18px rgba(50, 74, 101, 1);
} 

.sliderText h2 span{
	text-align:center;
	color: #fff;
	padding: 0;
} 

.sliderText p{
	display:block;
} 
.sliderText p span{
	display: inline-block;
	padding: 0;
	color: #fff;
	text-align:center;
}

.sliderText p.rot span{
	background-color: #bf1522;
} 



/* ---------- Streifen ------------- */

#streifenStart{
	text-align:center;
	width: 100%;
  	height: 60vh;
	min-height:500px;
	position:relative;
} 


#streifenRahmen {
	-webkit-transform-style: preserve-3d;
  -moz-transform-style: preserve-3d;
  transform-style: preserve-3d;
  width: 100%;
  height: 100%;
  background: url('../fotos/bg-home-new.jpg') no-repeat center center;
	-moz-background-size: cover;
	-webkit-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
	background-position: center center;
}

#streifen {
	 position: relative;
     top: 50%;
     transform: perspective(1px) translateY(-50%);
	 text-align:center;
	 margin: 0 auto;
	 width: 250px;
	 color: #495359;
}
#streifen img{
	width: 100%;
	height: auto;
	display: block;
}


#streifenZitat{
	width:100%;
	margin: 0 auto;
	text-align:center;
	left: 0px;
	right: 0px;
	top: 10%;
	position: absolute;
	font-size:30px;
	line-height:1.2;
	text-transform: uppercase;
	font-weight: 600;
	text-shadow: 1px 1px 2px rgba(255, 255, 255, 1);
	color: #495359;
}
#streifenZitat i{
	font-size:25px;
	padding:5px;
}


/* ------ Headlines -------- */

.headlineImage {
	padding-bottom: 20px;	
}
.headlineImage img{
	text-align:center;
	height: 70px;
	width: auto;	
}



/* ------ Gregor / Zitate -------- */



.spalteViertelGregor{
	width: 25%;
	float: left;
}



/* ---------- Hover Zoom ------------- */

.img-hover-zoom {
  height: 50%; 
  overflow: hidden; 
}

.spalteViertelGregor .img-hover-zoom {
  height: 25vw; 
}





.img-hover-zoom img {
	transform-origin: 50% 25%;
  transition: transform .5s ease;
}

.img-hover-zoom:hover img {
  transform: scale(1.5);
}



i.zitat{
	font-size:25px;
	padding:5px;
}

.spalteGregor p{
	display:inline;
}



/* ------ Immobilien Objekte -------- */

.spalteObjekt{
	margin: 0;
	width: 33.3%;
	float:left;
	padding:1px;
}


.objekt{
	width: 100%;
	position: relative;
}


.objekt img{
	width: 100%;
	height: auto;
	display:block;
}


.objektOverlay {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: #495359;
  background-color: rgba(73, 83, 83, 0.6);
  overflow: hidden;
  width: 0;
  height: 100%;
  transition: .5s ease;
}

.objekt:hover .objektOverlay {
  width: 100%;
  left: 0;
}



.objektBeschreibung{
  color: white;
	font-size:  0.9rem;
	line-height: 1.4;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  white-space: nowrap;
}

.objektBeschreibung h3{
  color: white;
	font-size:  1.1rem;
	font-weight:bold;
	padding-bottom:10px;

}



/* ------ Immobilien Objekte Alternative -------- */

.objektRahmen2{
	background-color: #f6f6f6;
	border: 1px solid #706f6f;
	padding: 15px;
}
.objektImage2{
	width: 100%;
	height: auto;
}

.objektName2{
	line-height: 1.1;
	padding-bottom: 10px;
	padding-top: 5px;
}

.objektBeschreibung2{
	font-size: 15px;
	line-height: 1.4;
}



/* ------ Beteiligungen Logos -------- */

.spalteLogo{
	margin-bottom: 15px;
	margin-top: 15px;
}


.logoRahmen{
	
}
.logoImage{
	width: 80%;
	height: auto;
	margin: 0 auto;
	display:block;
}


/* ------ Presse -------- */

.presseRahmen{
	
}
.presseImage{
	width: 80%;
	height: auto;
	margin: 0 auto;
	display:block;
}
.presseImage img{
	border: 1px solid #666;
}



/* ------ rechte Spalte Blöcke -------- */

.sideBlock{
	background-color: #495359;
	color: #fff;
	font-size: 0.9rem;
	padding: 15px;
	padding-right: 10px;
	margin-bottom: 30px;
}

.sideBlock h3{
	padding-bottom: 20px;
	text-align: left;
}

.sideBlock p{
	padding-bottom:10px;
}

.sideBlock a{
	color: #fff;
}

.sideFoto{
	margin-bottom: 30px;
}

.sideFoto img{
	width: 100%;
	height: auto;
}




/* ---------- Footer ------------- */

#footerRahmen{
    width: 100%;
	color: #fff;
	background-color: #495359;
	padding-bottom:10px;
	padding-top:10px;
	font-size:16px;
	line-height: 1.3;
}

#footerRahmen a{
	color: #fff;
}
#footerRahmen a:hover{
	color: #fff;
}

#footerRahmen h3{
	color: #fff;
	display: inline-block;
	border-bottom: 1px solid #fff;
	padding-bottom:15px;
	margin-bottom: 17px;
}

#footerRahmen li{
margin-left: 0px;
display: inline-block;
padding: 10px;
text-transform:uppercase;
}



/* widget Leiste Footer */

.textwidget {
 
}



/* --------- video ------- */

.wp-video {
    max-width: 100%;
	width: 100% !important;
    height: auto;
	text-align:center;
	margin: 0 auto;
}


/* --------- tiva team carousel ------- */
 
.owl-carousel .owl-nav.disabled {
    display: block !important;
}


/* --------- contact form ------- 

form.wpcf7-form {
	width:66%;
	margin-top: 20px;
}

form.wpcf7-form .label {
	display:block;
	float:left;
	width:33%;
	margin-bottom: 15px;
}


form.wpcf7-form .element {
	display:block;
	float:left;
	width:66%;
	margin-bottom: 15px;
}


form.wpcf7-form .wpcf7-form-control-wrap {

}

input:-moz-placeholder, textarea:-moz-placeholder { color: #999; }

form.wpcf7-form .placeholder {
   color: #808080 !important;
}

form.wpcf7-form span.wpcf7-form-control-wrap {

}

form.wpcf7-form .wpcf7-list-item {
	display: block;
 } 

form.wpcf7-form .wpcf7-submit {
	margin-left: 33%;
 } 

*/

form.wpcf7-form input, form.wpcf7-form textarea {
	max-width: 100%;
    padding: 3px;
	background-color: #ddd;
	color: #495359;
	border: 1px solid #aaa;
	width: 100%;
	max-width: 100%;
}
form.wpcf7-form input[type=checkbox] {
	width: auto;
 }

form.wpcf7-form input[type=submit] {
	background-color: #797979 !important;
	color: #fff !important;
	width: 130px !important;
	cursor:pointer;
}

form.wpcf7-form textarea {
	height:190px;
	
}
form.wpcf7-form p {
	width:47%;
}
 
form.wpcf7-form p.spalteLinks {
	float:left;
	margin-right: 3%;
	width:47%;
}
form.wpcf7-form p.spalteRechts {
	float:left;
	width:47%;
}

span.wpcf7-list-item {
	margin: 0;
	margin-bottom: 0px;
}
span.wpcf7-list-item.last {
	margin-bottom: 20px;
}



