/*
	Theme Name: docs
	Theme URI: http://www.praxisweb.de/
	Author: Michael Weigand
	Description: Individuelle Theme
*/


body {
font-size:15px;
font-family: 'Lato';
line-height:160%;
color:#717171;
margin:0;
padding:0;
font-weight: normal;
}

/* allgemeine Überschriften*/
h1 {
margin-bottom:20px;
margin-top:0;
color:#717171;
font-size:300%;
line-height: 1.1;
font-weight: 300;
padding:0;
}

h1 a, h2 a{
color: #717171 !important;
text-decoration: none !important;	
}

h2 {
margin:0 0 20px 0;
color:#717171;
font-size:140%;
font-weight:300;
padding:0;
}

h3 {
margin:0;
font-size:100%;
font-weight:normal;
padding:0;
color: #717171;
text-transform: uppercase;
letter-spacing: 2px;
}

/* allgemeine links im text */
a:link,a:visited,.link {
text-decoration:underline;
color:#000000;
}

a:hover,a:active,.link:hover {
text-decoration:none;
color:#000000;
cursor: pointer;
}

/* Listen */
ul {
list-style:square;
}

hr {
border-bottom:0;
border-left:0;
border-right:0;
border-top:1px solid #CCCCCC;
height:1px;
}

td,div {
font-size:100%;
vertical-align:top;
}

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

form {
background:none;
border:none;
}

input,select,textarea,.inputbox {
background:none;
color:#717171;
border: 1px solid #717171;
padding: 10px;
width: 100%;
box-sizing: border-box;
}

/* Weiterlesen-Link */
.gmnoprint img {
    max-width: none;
}
.gmnoprint label {
    display: inline;
    width: auto;
}

.container{width: 100%; max-width: 1300px;}


.darkbg{background: #ffffff;}
.darkbg *{color: #2C1D16;}
.darkbg h3{color: #2C1D16;}

.whitebg{background: #FFFFFF;}
.whitebg h3{color: #717171;}

.greybg{background: #f8f8f8;}
.greybg h3{color: #717171;}


.topbar{background: rgba(0,0,0,0.1); text-align: center;}
.topbar .inner{padding: 0; font-size: 75%;}
.topbar .feather{width: auto; height: 15px; position: relative; top: 3px; margin: 0 8px 0 0;}
.topbar .col-custom{width: auto; display: inline-block; border-right: 1px solid rgba(0,0,0,0.1); padding: 10px 20px;}
.topbar .col-custom:first-child{padding-left: 0;}
.topbar .col-custom:last-child{border: none;}
.topbar .link{text-align: right;}
.topbar .link .col-custom{background: rgba(0,0,0,0.1); border: none; padding: 10px 20px !important;}
.topbar .button{background: none !important; color: #FFF; padding: 2px 5px; border-radius: 3px;}
.topbar a{text-decoration: none; color: #717171 !important;}
.topbar .modal-link{cursor: pointer;}

.modal-keyopening{text-align: left;}
.modal-keybooking{text-align: center;}

.header{background: #f8f8f8; padding: 30px 0;}
.header .logo img{max-height: 80px; width: auto; max-width: 80%; height: auto;}
.header .logo a{line-height: 80px;}

.header.reduced{padding: 0; position: fixed; top: 0; left: 0; width: 100%; z-index: 999; box-shadow: 0px 0px 12px 5px rgba(0,0,0,0.2);}
.header.reduced .logo img{max-height: 60px; width: auto;}

.mainmenu ul{margin: 0; padding: 0; list-style: none; width: 100%; text-align: right;}
.mainmenu ul li{display: inline-block; padding: 0 0 0 15px; position: relative; text-align: center;}
.mainmenu ul li a{color: #717171; display: block; line-height: 50px; margin: 15px 0; text-decoration: none; text-transform: uppercase; letter-spacing: 1px; font-weight: 500;}
.mainmenu ul li:hover a{font-weight: bold;}
.mainmenu ul li.switcher a{background: rgba(0,0,0,0.05); padding: 0 10px; position: relative;}
.mainmenu ul li.switcher a:before{background: #EE7122; content: 'Unser Plus'; padding: 5px; position: absolute; top: -11px; left: 15px; line-height: 1; color: #FFF; font-size: 80%;}

.mainmenu ul li.current-menu-parent a{font-weight: bold;}
.mainmenu ul li.current-menu-item a{font-weight: bold !important;}

.mainmenu ul ul{display: none; position: absolute; background: #FFFFFF; top: 60px; left: 0; z-index: 99; text-align: left; padding: 15px 0; min-width: 200px;}
.mainmenu ul ul li{width: 100%; display: block; padding: 0;}
.mainmenu ul ul li:after{display: none;}
.mainmenu ul ul li a{line-height: 1; padding: 10px 30px; text-transform: none; font-weight: normal !important; width: 100%; display: block;}
.mainmenu ul ul li a:hover{font-weight: bold !important;}
.mainmenu ul li:hover ul{display: block;}


.content{}
.content a.arrowed{margin: 0; color: #2C1D16; display: inline-block; text-decoration: none; border-bottom: 2px solid #2c1d16}

.button, a.button, .vc_btn3 {background-color:#17589F; color:#FFFFFF; border: none; border-bottom: 2px solid #134a85; padding: 15px 20px; text-decoration: none; border-radius: 0; padding-right: 50px; position: relative; white-space: nowrap; display: inline-block;}
.button:hover, a.button:hover, .button:focus, .vc_btn3:hover {background-color:#134a85; color: #FFFFFF;cursor:pointer;}
.button.secondary, a.button.secondary{background: #EE7122; border-color: #ba571a}
.button.secondary:hover, a.button.secondary:hover, .vc_btn3 {background: #ba571a;}
.button, .button.secondary{background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' class='feather feather-arrow-right'%3E%3Cline x1='5' y1='12' x2='19' y2='12'%3E%3C/line%3E%3Cpolyline points='12 5 19 12 12 19'%3E%3C/polyline%3E%3C/svg%3E") !important; background-size: 25px auto !important; background-position: right 10px center !important; background-repeat: no-repeat !important;}


.content a.gallery{margin: 0 0 30px 0; display: block; position: relative; overflow: hidden; text-decoration: none;}
.content a.gallery *{transition: all 0.2s ease-in-out;}
.content a.gallery .image{overflow: hidden; height: 0; padding-top: 65%; display: block; position: relative; background-size: cover;}
.content a.gallery .desc{width: 100%; color: #2C1D16; padding: 10px 0 0 0; font-weight: 600; display: block;}
.content a.gallery .subdesc{width: 100%; color: #2C1D16; font-weight: 400; display: block;}

.content .offers{max-width: 95%; width: 1550px; margin: 0 auto;}
/*.content .offers .col-md-4{width: 20% !important;}*/
.content .offer-item{position: relative; top: 0; transition: all 0.5s ease; overflow: hidden; display: block; cursor: pointer; margin: 0 0 30px 0;}
.content .offer-item .image{width: 100%; background-size: cover; background-position: center center; position: relative; padding-top: 75%; transition: all 0.5s ease; display: block;}
.content .offer-item .image:after{position: absolute; width: 100%; height: 100%; background: rgba(0,0,0,0.25); content: ' '; display: block; transition: all 0.5s ease; top: 0; left: 0;}
.content .offer-item .desc{position: absolute; bottom: 20px; left: 0; width: 100%; text-align: center; color: #FFFFFF; font-weight: 500; padding: 0 30px; display: block; font-size: 120%;}
.content .offer-item:hover{transform: scale(1); z-index: 99;}
.content .offer-item:hover .image{transform: scale(1.1);}
.content .offer-item:hover .image:after{background: rgba(0,0,0,0.1);}

.opening-hours{width: 100%; border-top: 1px solid rgba(0,0,0,0.1);}
.opening-hours td{padding: 10px 15px 10px 0; border-bottom: 1px solid rgba(0,0,0,0.1);}
.opening-hours td:last-child{white-space: nowrap;}
.opening-hours td:last-child{text-align: right; padding-right: 0;}

.content table.lebenslauf{}
.content table.lebenslauf td{padding: 0 0 10px 0;}
.content table.lebenslauf td:first-child{min-width: 150px;}

.modal {display: none; position: fixed; z-index: 9999999999999999999; left: 0; top: 0; width: 100%; height: 100%; overflow: auto; background-color: rgb(0,0,0); background-color: rgba(0,0,0,0.4);}
.modal-content {background-color: #FFFFFF; margin: 50px auto; padding: 70px 50px 50px; width: 500px; max-width: 90%; border-radius: 0; border: none; box-shadow: none;}
.modal-content .close {color: #CCC; float: right; font-size: 28px; font-weight: bold; opacity: 1; cursor: pointer; position: absolute; top: 30px; right: 50px;}
.modal-content .nav {position: absolute; top: 30px; left: 50px;}
.modal-content .nav .arrow {color: #CCC; font-size: 28px; font-weight: bold; opacity: 1; cursor: pointer;}

.modal-content{width: 600px;}
.modal-content .image{width: 100%; background-size: cover; background-position: center center; position: relative; padding-top: 50%; transition: all 0.5s ease; display: block; margin: 0 0 30px 0;}
.modal-content .image:after{position: absolute; width: 100%; height: 100%; background: rgba(0,0,0,0.25); content: ' '; display: block; transition: all 0.5s ease; top: 0; left: 0;}

.content .wpb_gmaps_widget .wpb_wrapper{padding: 0;}

.content article.category-news{margin: 50px 0;}
.content article.category-news h1{font-size: 200%; margin-top: 20px;}

.contact{background: #f0f0f0; padding: 100px 0;}
.contact .form-wrapper{padding: 30px 50px; background: #FFFFFF;}
.contact label{font-weight: normal;}
.contact textarea{height: 194px;}
.contact .button{width: auto;}
.contact .terms{font-size: 80%;}


.footer{background: rgba(0,0,0,0.15); padding: 50px 0 50px 0; text-align: center;}
.footer a{color: #717171;}
.footer ul{margin: 0 0 20px 0; padding: 0; list-style: none;}
.footer ul li{display: inline-block; margin: 0 10px;}
.footer ul li a{color: #717171; text-decoration: none;}

.footer .dot{width: 40px; display: inline-block; position: relative;}
.footer .dot:after{display: block; width: 4px; height: 4px; border-radius: 30px; background: rgba(255,255,255,0.2); content: " "; position: absolute; top: 50%; left: 50%; margin: -2px 0 0 -2px;}


.panel-toggle {display: none;}
#panel-left{display: none;}

@media (max-width: 992px) {
	
	#panel-left .panel-content{padding: 20px;}
	
	#panel-left .panel-menu{margin: 20px 0 80px 0;}
	#panel-left .panel-menu ul{margin: 0; padding: 0; list-style: none;}
	#panel-left .panel-menu ul li{margin: 0; padding: 0; position: relative; border-bottom: 1px solid rgba(0,0,0,0.2);}
	#panel-left .panel-menu ul li a{color: #717171; text-decoration: none; padding: 0; margin: 0; background: none !important; line-height: 50px; text-transform: uppercase; position: relative; display: block;}
	#panel-left .panel-menu ul li .trigger{position: absolute; right: 0; top: 50%; margin: -17px 0 0 0; width: 30px; height: 30px; background: url(images/dropdown.svg) left center no-repeat; background-size: 10px 6px; display: block; content: " "; z-index: 9;}

	#panel-left .panel-menu ul ul{margin: 0; padding: 0 0 20px 0; list-style: none; display: none;}
	#panel-left .panel-menu ul ul li{margin: 0; padding: 0; position: relative; border: none;}
	#panel-left .panel-menu ul ul li a{color: #FFFFFF; text-decoration: none; padding: 0; margin: 0; background: none !important; line-height: 30px; text-transform: none; font-weight: normal;}
	
	#panel-left .panel-content .search{margin: 0;}
	#panel-left .panel-content .search input{width: 100%; max-width: 100%; display: block; border-radius: 0; float: none; text-align: center; padding-left: 0; padding-right: 0;}
	#panel-left .panel-content .search button{width: 100%; max-width: 100%; display: block; float: none;}
	
	
	/* Panel opening and closing animation lasts 200ms */
	body {transition: transform .2s; overflow-x: visible;}
	/* Slide page 200px to the right when panel is opened */
	body.ps-active {transform: translateX(270px);}
	/* Position panel */
	#panel-left {position: fixed; top: 0; left: 0; width: 270px; height: 100%; background-color: rgba(0,0,0,0.1); transform: translateX(-270px); overflow: hidden; display: block; padding-top: 40px; border-radius: 0;}
	.panel-toggle {display: block; width: 40px; height: 40px; position: absolute; right: 15px; top: 50%; margin: -20px 0 0 0; cursor: pointer; font-size: 250%; color: #717171 !important;}
	.panel-close {display: block; width: 40px; height: 40px; cursor: pointer; opacity: 1; margin: 0 0 0 20px; font-size: 250%; color: #717171; text-align: left;}
	
}




@media (max-width: 992px){

	.header{padding: 20px 0;}
	.mainmenu{display: none;}
	

}

@media (max-width: 600px){

	h1{font-size: 230%}
	
	.header{padding: 10px 0;}
	
	.header .logo img{max-height: 70px; width: auto; max-width: 70%; height: auto;}
	
	.header .additional{margin: 20px 0 0 0; background: #1B242C; color: #FFFFFF; line-height: 40px; text-align: center;}
	.header .additional a{color: #FFFFFF; text-decoration: none;}
	.header .additional .phone{font-size: 80%; padding-left: 25px; background: url(images/phone_white.png) left center no-repeat; background-size: 15px auto;}
	.header .additional .opening{font-size: 80%; padding-left: 25px; margin-left: 30px; background: url(images/opening_white.png) left center no-repeat; background-size: 15px auto;}
	.header .additional .button{display: none;}
	
	.address a span, .address span span{display: none;}
	.topbar .col-custom:first-child{border-left: 1px solid rgba(0,0,0,0.1); padding: 10px 20px;}
	
	.content .offer-item .image{padding-top: 50%;}
	
	.contact .form-wrapper{padding: 35px;}
}


.gutter-2{
	margin-right: -2px;
  	margin-left: -2px;
}

.gutter-2 > [class*="col-"] {
  padding-right: 2px;
  padding-left: 2px;
}

.no-gutter {
  margin-right: 0;
  margin-left: 0;
}

.no-gutter > [class*="col-"] {
  padding-right: 0;
  padding-left: 0;
}

