/*

    Template Name   : Ritz
    Template Author : http://www.comherzional.de
    Author Email    : kontakt@comherzional.de
    
    
    *****************************************
    
    
*/



/*		Fonts		*/

@font-face {
    font-family: 'PTC55F-webfont';
    src: url('../fonts/PTC55F-webfont.eot');
    src: url('../fonts/PTC55F-webfont.eot?#iefix') format('embedded-opentype'),
         url('../fonts/PTC55F-webfont.woff') format('woff'),
         url('../fonts/PTC55F-webfont.ttf') format('truetype'),
         url('../fonts/PTC55F-webfont.svg#RalewaySemibold') format('svg');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'PTN57F-webfont';
    src: url('../fonts/PTN57F-webfont.eot');
    src: url('../fonts/PTN57F-webfont.eot?#iefix') format('embedded-opentype'),
         url('../fonts/PTN57F-webfont.woff') format('woff'),
         url('../fonts/PTN57F-webfont.ttf') format('truetype'),
         url('../fonts/PTN57F-webfont.svg#RalewaySemibold') format('svg');
    font-weight: normal;
    font-style: normal;

}



/*    Reset Default Ritz Styling    */

.row{
	max-width:1140px;
	padding: 0 20px;
}


.top-bar .toggle-topbar.menu-icon a span::after{
	right: 0;
}

.top-bar .toggle-topbar.menu-icon a{
	padding: 0 2rem 0 0.9375rem;
	color: #000;
}


.top-bar,
.top-bar-section li:not(.has-form) a:not(.button),
.top-bar-section li:not(.has-form) a:not(.button):hover,
.top-bar-section ul li,
.top-bar.expanded .title-area,
.no-js .top-bar-section ul li:hover > a{
	background: transparent;
	height: auto;
	line-height:normal;
	padding: 0;

}


.top-bar .name,
.top-bar .name h1,
.top-bar .name h2,
.top-bar .name h3,
.top-bar .name h4,
.top-bar .name span,
.top-bar .name p{
	line-height: normal;
	height: auto;
	font-size: 1.375rem;

}


.top-bar.expanded .toggle-topbar a{
	color: #ea4e1b;
}

.top-bar.expanded .toggle-topbar a span::after {
  box-shadow: 0 0 0 1px #ea4e1b, 0 7px 0 1px #ea4e1b, 0 14px 0 1px #ea4e1b;
}



/*    Hero    */

.hero{
	width: 100%;
	height: 700px;
	background: #9d9d9c;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	   background-size: cover; 
}

.hero .caption{
	margin-top: 100px;
}

.hero .caption h1.mean_cap{
	font-family: "PTN57F-webfont", Helvetica, Arial, sans-serif;
	font-size: 1.7em;
	color: #fff;
	letter-spacing: .8px;
	line-height: 1.6em;
	margin-top: 120px;
}

.hero .caption h2.sub_cap{
	font-family: "PTN57F-webfont", Helvetica, Arial, sans-serif;
	font-size: 2.6em;
	color: #fff;
	margin-bottom: 50px;
}


.hero .caption .btn_details span{
	display: inline-block;
	color: #fff;
	font-family: "PTN57F-webfont", Helvetica, Arial, sans-serif;
	font-size: 18px;
	letter-spacing: .5px;
	position: relative;
	margin-right: 5px;
	border-bottom: 1px dashed #ffffff;
	padding-bottom: 3px;
	margin-top: 30px;
}

.hero .caption .btn_details .arrow{
	-webkit-transition:all .2s ease-out;
	     -o-transition:all .2s ease-out;
	        transition:all .2s ease-out;
}

.hero .caption .btn_details:hover .arrow{
	-webkit-transform:translateX(3px);
	    -ms-transform:translateX(3px);
	     -o-transform:translateX(3px);
	        transform:translateX(3px);
}


/*    Hero1    */

.hero1{
	width: 100%;
	height: 100px;
	color: #fff;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	   background-size: cover; 
}

.hero1 .caption{
	margin-top: 140px;
}



/*    Header    */

header{
	width: 100%;
	height: 120px;
	background: #fff;
	border-bottom: 1px solid #ea4e1b;
	position: fixed;
	z-index: 1000;

}

header .logo{
	margin: 50px 0 0 0;
}

header nav{
	margin-top: 30px;

}

header .top-bar-section ul li a{
	color: #000000;
	font-family: "PTC55F-webfont", Helvetica, Arial, sans-serif;
	font-size: 16px;
	margin-right: 30px;
	letter-spacing: .3px;


}


header .top-bar-section ul li:last-child a{
	margin-right: 0;

}


header .top-bar-section li:not(.has-form) a:not(.button){
	-webkit-transition:all .2s linear;
	     -o-transition:all .2s linear;
	        transition:all .2s linear;

}

header .top-bar-section li:not(.has-form) a:not(.button):hover{
	color: #ea4e1b;

}



/*    Services    */

.services{
	padding: 140px 0;
}

.services .mean_title,
.services .sub_title{
	text-align: left;
	color: #000;
	font-family: "PTN57F-webfont", Helvetica, Arial, sans-serif;
}

.services .btn_details{
	color: #ea4e1b;
	font-family: "PTN57F-webfont", Helvetica, Arial, sans-serif;
	font-size: 16px;
	margin-top: 40px;
	margin-bottom: 100px;	
}
.services .mean_title{
	font-size: 30px;
	font-family: "PTN57F-webfont", Helvetica, Arial, sans-serif;
	letter-spacing: 1px;
	color: #ea4e1b;
}

.services .sub_title{
	font-size: 22px;
	font-family: "PTN57F-webfont", Helvetica, Arial, sans-serif;
}

.services .services_list{
	margin-top: 50px;	text-align: left;
}

.services .services_list .serv_icon{
	margin-bottom: 40px;
	margin-top: 30px;
}

.services .services_list p{
	color: #000;
	font-family: "PTN57F-webfont", Helvetica, Arial, sans-serif;
	font-size: 18px;
	line-height: 30px;
}

.services .title{
	color: #000;
	font-family: "PTC55F-webfont", Helvetica, Arial, sans-serif;
	font-size: 20px;
	text-transform: uppercase;
	margin-bottom: 20px
}

.btn_holder{
	text-align: center;
}

.services .btn_fancy{
	margin-top: 100px;	
}


.services .btn_details{
	font-family: "PTC55F-webfont", Helvetica, Arial, sans-serif;
	font-size: 16px;
	
}




/*    Call To Action    */

.cta{
	padding: 140px 0;
	text-align: left;
	background: #e3e3e3; 
	border-top: 1px solid #ea4e1b;
	border-bottom: 1px solid #ea4e1b;
}

.cta .title{
	color: #ea4e1b;
	font-family: "PTN57F-webfont", Helvetica, Arial, sans-serif;
	font-size: 30px;
	margin-bottom: 10px;
	letter-spacing: 1px;
}

.cta .sub_title{
	color: #000;
	font-family: "PTC55F-webfont", Helvetica, Arial, sans-serif;
	font-size: 22px;
	margin-bottom: 40px;
}


.cta p{
	color: #000;
	font-family: "PTN57F-webfont", Helvetica, Arial, sans-serif;
	font-size: 18px;
	line-height: 35px;
	letter-spacing: 1px;
}


.cta .btn_fancy{
	margin-top: 60px;
}

.cta .btn_details{
	font-family: "PTC55F-webfont", Helvetica, Arial, sans-serif;
	font-size: 18px;
	
}


/*    Ritz    */

.ritz{
	padding: 140px 0;
	text-align: left;
	background: #fff; 
	border-top: 1px solid #ea4e1b;
	border-bottom: 1px solid #ea4e1b;
}

.ritz .title{
	color: #ea4e1b;
	font-family: "PTN57F-webfont", Helvetica, Arial, sans-serif;
	font-size: 30px;
	margin-bottom: 10px;
	letter-spacing: 1px;
}

.ritz .sub_title{
	color: #000;
	font-family: "PTC55F-webfont", Helvetica, Arial, sans-serif;
	font-size: 22px;
	margin-bottom: 40px;
}

.ritz .sub_sub_title{
	color: #ea4e1b;
	font-family: "PTN57F-webfont", Helvetica, Arial, sans-serif;
	font-size: 24px;
	margin-bottom: 30px;
}
.ritz p{
	color: #000;
	font-family: "PTN57F-webfont", Helvetica, Arial, sans-serif;
	font-size: 18px;
	line-height: 35px;
	letter-spacing: 1px;
}



.ritz .btn_fancy{
	margin-top: 60px;
}

.ritz .serv_icon{
	margin-bottom: 35px;
}


/*    Footer    */

.footer{
	padding: 100px 0;
	background: #e3e3e3;
}

.footer .mean_title,
.footer .sub_title{
	text-align: left;
	color: #000;
	font-family: "PTN57F-webfont", Helvetica, Arial, sans-serif;
}

.footer .btn_details{
	color: #ea4e1b;
	font-family: "PTSans-Regular", Helvetica, Arial, sans-serif;
	font-size: 16px;
	margin-top: 40px;
	margin-bottom: 100px;	
}
.footer .mean_title{
	font-size: 30px;
	font-family: "PTN57F-webfont", Helvetica, Arial, sans-serif;
	letter-spacing: 1px;
	color: #ea4e1b;
	margin-top: 50px;
}

.footer .sub_title{
	font-size: 22px;
	font-family: "PTN57F-webfont", Helvetica, Arial, sans-serif;
}

.footer .footer_list{
	margin-top: 50px;	text-align: left;
}

.footer .footer_list .serv_icon{
	margin-bottom: 40px;
}

.footer .footer_list p{
	color: #000;
	font-family: "PTN57F-webfont", Helvetica, Arial, sans-serif;
	font-size: 18px;
	line-height: 30px;
}

.footer .title{
	color: #000;
	font-family: "PTC55F-webfont", Helvetica, Arial, sans-serif;
	font-size: 20px;
	text-transform: uppercase;
	margin-bottom: 20px
}

.btn_holder{
	text-align: center;
}

.footer .btn_fancy{
	margin-top: 0px;	
}

.footer .btn_details{
	font-family: "PTC55F-webfont", Helvetica, Arial, sans-serif;
	font-size: 16px;
	
}

/*    Copyright    */

.copyright{
	padding: 100px 0;
	text-align: left;
	background: #fff; 
	border-top: 1px solid #ea4e1b;
}

.copyright .title{
	color: #ea4e1b;
	font-family: "PTN57F-webfont", Helvetica, Arial, sans-serif;
	font-size: 30px;
	margin-bottom: 10px;
	letter-spacing: 1px;
}

.copyright .sub_title{
	color: #000;
	font-family: "PTC55F-webfont", Helvetica, Arial, sans-serif;
	font-size: 22px;
	margin-bottom: 40px;
}


.copyright p{
	color: #000;
	font-family: "PTN57F-webfont", Helvetica, Arial, sans-serif;
	font-size: 16px;
	line-height: 35px;
	letter-spacing: 1px;
}



.copyright .btn_fancy{
	margin-top: 60px;
}


.copyright .btn_details{
	font-family: "PTC55F-webfont", Helvetica, Arial, sans-serif;
	font-size: 16px;
	
}







/*  Back To Top button  */

#back_top{
	text-decoration: none;
	position: fixed;
	right: 20px;
	bottom: 20px;
	z-index: 9999;
	opacity: 0;
}

.btn_fancy#back_top{
	padding: 6px 16px;
}

.btn_fancy#back_top:hover .border_layer{
	-webkit-transform:translate(1px,-1px);
	    -ms-transform:translate(1px,-1px);
	     -o-transform:translate(1px,-1px);
	        transform:translate(1px,-1px);
}
.btn_fancy#back_top:hover .solid_layer{
	-webkit-transform:translate(-1px,1px);
	    -ms-transform:translate(-1px,1px);
	     -o-transform:translate(-1px,1px);
	        transform:translate(-1px,1px);
}





/*    Impressum    */

.impressum{
	padding: 40px;
}

.impressum p{
	color: #4a4949;
	font-family: "PTC55F-webfont", Helvetica, Arial, sans-serif;
	font-size: 14px;
	margin-top: 0px;
	letter-spacing: .9px;
	margin-bottom: 30px;
	text-align: left;
}

.impressum p1{
	color: #4a4949;
	font-family: "PTN57F-webfont", Helvetica, Arial, sans-serif;
	font-size: 18px;
	margin-top: 0px;
	letter-spacing: .9px;
	margin-bottom: 30px;
	text-align: left;
}







/*    Responsive CSS    */

@media only screen and (max-width: 40em){
	.top-bar .top-bar-section{
		display: none;
	}

	.top-bar.expanded .top-bar-section{
		display: block;
	}

	.top-bar-section ul{
		margin-top: 70px;
		background: #ffffff;
	}

	.top-bar-section li:not(.has-form) a:not(.button){
	  color: #000;
	  margin: 0;
	  display: block;
	  text-align: center;
	  padding: 20px 0;
	  background: #e3e3e3;
	  border-bottom: 1px solid #ea4e1b;
	  -webkit-transition: all .2s linear;
	       -o-transition: all .2s linear;
	          transition: all .2s linear;
	}

	header .top-bar-section li:not(.has-form):last-child a:not(.button){
		border: 0;
	}

	header .top-bar-section li:not(.has-form) a:not(.button):hover{
		color: #000;
		background: #ea4e1b;
		padding: 20px 0;
	}


	.hero .caption h1.mean_cap,
	.hero .caption h2.sub_cap{
		font-size: 45px;
		line-height: 60px;
	}

	footer .copyrights{
		width: 100%;
		text-align: center;
		margin-bottom: 60px;
	}


	footer .social,
	footer .contact{
		width: 100%;
		text-align: center;
		float: none;
		margin: 0;
	}

	footer .contact{
		margin-top: 60px;
	}
}






@media only screen and (min-width: 64.063em) {
	#back_top{
		right: 40px;
		bottom: 40px;
		margin-top: -22px;
	}	
}


.responsive_map {
overflow: hidden;
padding-bottom: 56%;
position: relative;
height: 350px;
}

.responsive_map iframe {
height: 350px;
left: 0;
position: absolute;
top: 0;
width: 100%;
}