@charset "utf-8";
/*			Fonts			*/
/* font converted using font-converter.net. thank you! */
@font-face {
  font-family: "OpenSans";
  src: url("../fonts/OpenSans-Regular.eot"); /* IE9 Compat Modes */
  src: url("../fonts/OpenSans-Regular.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */
    url("../fonts/OpenSans-Regular.otf") format("opentype"), /* Open Type Font */
    url("../fonts/OpenSans-Regular.svg") format("svg"), /* Legacy iOS */
    url("../fonts/OpenSans-Regular.ttf") format("truetype"), /* Safari, Android, iOS */
    url("../fonts/OpenSans-Regular.woff") format("woff"), /* Modern Browsers */
    url("../fonts/OpenSans-Regular.woff2") format("woff2"); /* Modern Browsers */
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "OpenSans-Bold";
  src: url("../fonts/OpenSans-Bold.eot"); /* IE9 Compat Modes */
  src: url("../fonts/OpenSans-Bold.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */
    url("../fonts/OpenSans-Bold.otf") format("opentype"), /* Open Type Font */
    url("../fonts/OpenSans-Bold.svg") format("svg"), /* Legacy iOS */
    url("../fonts/OpenSans-Bold.ttf") format("truetype"), /* Safari, Android, iOS */
    url("../fonts/OpenSans-Bold.woff") format("woff"), /* Modern Browsers */
    url("../fonts/OpenSans-Bold.woff2") format("woff2"); /* Modern Browsers */
  font-weight: normal;
  font-style: normal;
}

/* Clear Floated Elements */
.clear {clear:both;display:block;overflow:hidden;visibility:hidden;width:0;height:0;}
.clear:after, .ce_text:after, .content-text:after {clear:both;content:' ';display:block;font-size:0;
line-height:0;visibility:hidden;width:0;height:0;}
* html .clear {height:1%;}
.invisible {display: inline;left: -1000px;overflow: hidden;position: absolute;top: -1000px;}
a.invisible {display:none;}

body {background-color:#FFF;/*background-image: url(../img/putkuss_background.jpg);background-position: top center;
background-repeat: no-repeat;background-attachment: fixed;*//*background-size: cover;*//*background-size: contain;*/}
body.akteuere {background-color:#FFF;background-image: url(../img/putkuss_background_content.jpg);background-position: top center;
background-repeat: no-repeat;background-attachment: fixed;background-size: 990px auto;}

.akteuere .mod_article {padding-left: 162px;padding-right: 132px;}
@media (min-width: 1200px) {
  .container { width: 1050px;}
}
#colorbox {outline: 0;top: -250px !important;}
#content .container {margin-top: 54px;width: 1020px;}
#content {background:rgba(255,255,255,0.9);/*margin-top:60%;margin-top:680px;*/}
#contentakteuere {background:rgba(255,255,255,0);/*margin-top:40%;*/margin:420px 16px 0 16px;}
.view-fifth img {transition: all 0.3s ease-in-out; }
.view-fifth .mask {transform: translateY(-100%);opacity: 1;transition: all 0.4s ease-in-out; width: 80%;margin-left: 16px;
padding:16px;border:1px solid #0094b5;}
.view-fifth .mask p{opacity: 0;transition: all 0.2s linear;}
.view-fifth:hover .mask {transform: translateY(0%);}
.view-fifth:hover img {transform: translateY(100%);transition-delay: 0.1s;}
.view-fifth:hover p{opacity: 1;transition-delay: 0.4s;}
.mask {position: absolute;overflow: hidden;top: 0;left: 0}
.view h2 {text-transform: uppercase;color: #fff;text-align: center;
position: relative;font-size: 17px;padding: 10px;background: rgba(0, 0, 0, 0.8);
margin: 20px 0 0 0}

h1,h2,h3,h4,h5,h6 {color: #0094b5; font-weight:normal;
font-family: 'OpenSans-Bold', serif !important;}

h2 {font-size:28px;margin-bottom:40px;}
h5 {font-size:18px;margin-bottom:16px;}
.mod_newslist h3 {margin-top:10px;}
.mod_newslist h3 a {color:#0094b5 !important;font-size: 1em;}
.mod_newslist .more a,
.mod_newsreader .back a {background: #F6F6F6;margin: 4px;padding: 8px;display: inline-block;
overflow: hidden;position: relative;color:#0094b5;text-transform:uppercase;}

p {font-family: 'OpenSans', sans-serif !important;
font-size:16px;line-height:1.6em;color:#333;}

a[href^="tel:"] {color: #FFF;text-decoration: none;}
#teaser a, #teaser a:hover {color: #FFF;text-decoration: none;}

table td  {font-family: 'OpenSans', sans-serif !important;
font-size:14px;line-height:1.6em;color:#333;}
table {width:100%;border-collapse:collapse;margin-bottom:24px;}
table th,table td {padding:6px 0;line-height: 1.5em;vertical-align: top;}
table th {font-weight:600;text-align:left;}
th *:first-child,td *:first-child {margin-top: 0;}
thead th {text-align: left;color: #000;border-bottom: 1px #000 solid;}
tbody th, td {text-align: left;border-top: 1px solid #ccc;}
tbody tr:hover th,tbody tr:hover td {background: #d0edf6;}
tfoot {border-top: 4px solid #ccc;}
table.preisliste th {display:none;}

ul li {font-family: 'OpenSans', sans-serif !important;
	font-size:16px;
	line-height:1.6em;
	color:#333;
}

a {font-weight:400;
	font-size:16px;
	color:#0094b5;
	transition: .1s ease-in;
	-webkit-transition: .1s ease-in;
	-moz-transition: .1s ease-in;
	outline:0 !important;
}
a:hover {color:#999999;
	text-decoration:underline;
}

em,i {font-weight:600;}

hr {position:relative;
	display:block;
	width:100%;
	height:1px;
	background:rgba(0,0,0,.12);
	border:0;
	margin:20px 0 20px !important;
}
.embed-container {
  position: relative; 
  padding-bottom: 56.25%; /* ratio 16x9 */
  height: 0; 
  overflow: hidden; 
  width: 100%;
  height: auto;
}
.embed-container iframe {
  position: absolute; 
  top: 0; 
  left: 0; 
  width: 100%; 
  height: 100%; 
}
/* ratio 4x3 */
.embed-container.ratio4x3 {
  padding-bottom: 75%;
}

::-moz-selection {
  color: #0094b5;
  background: #FFF;
}

::selection {
  color: #0094b5;
  background: #FFF;
}

.ce_gallery, .content-gallery {margin: 16px 0;padding: 5px 0;
display: inline-block;
}
.ce_gallery ul, .content-gallery ul {display: inline;list-style: outside none none;
}
.ce_gallery ul li, .content-gallery ul li {float: left;list-style: outside none none;
margin-left: 4px;margin-bottom: 4px;padding: 0;
}

/* ####### CSS Hilfsklassen ####### */

.sticky-menu {position: fixed !important;top: 0;z-index: 1000 !important;
width: 100% !important;height: 168px;}


.image_container.float_right, .media--right figure {float:right;margin-left:16px;position: relative;
display: inline-block;}
.image_container.float_left, .media--left figure {float:left;margin-right:16px;margin-left: 2px;
position: relative;display: inline-block;}
.image_container.float_above, .image_container.float_below {/*display: flex;*/align-items: center;justify-content: left;}

a.title-text {color:#FFF;font-family: 'OpenSans-Bold' !important;font-size:62px; text-align:left;}
a.title-regular {color:#FFF;font-family: 'OpenSans' !important;font-size:62px; text-align:left;}
.text-big {font-size:1.3em;}
.text-normal {text-transform:none;font-family: 'OpenSans', sans-serif;}
.text-small {font-size:0.88em;}
.serif, #boxes-overview p.serif {font-family: 'OpenSans', serif !important;}
.bg-clear {background:transparent;}

.full-width {width:100%;
	padding:20px;
	text-align:center;}
.btn.full-width {background:transparent;
	border:1px solid #2d3e15;
	text-align:center;}
.zero-padding {
	padding-left:0 ;
	padding-right:0;
}
.padded-top {
	padding-top:30px;
}
.padded-bottom {
	padding-bottom:30px;
}
.btn{
	border-radius:10 !important;
	background:#9DB147 !important;
	color:#FFF;
	font-size:18px;
	margin:20px 0;
	padding:10px;
	font-weight: 600;
}
.btn a {text-decoration: none;color:#FFF;font-weight: 600;}
.btn:hover, .btn a:hover {color:#E2E2E2;}

.icon {
	width:30px;
	height:30px;
	display:inline-block;
	float:left;
	margin-right:10px;
	background:#0094b5;
	padding:5px;
	border-radius:40px;
}
a.icon-big {
	width:50px;
	height:50px;
	display:inline-block;
	margin-right:10px;
	background:transparent;
	border:1px solid #0094b5;
	padding:5px;
	margin:30px 0px 0 10px;
	border-radius:40px;
	text-align:center !important;
}
a.icon-big:hover {
	background-color:#0094b5;
}
.spacer-icon {
	position:relative;
	width:60px;
	height:60px;
	margin:-50px auto 0;
	display:block;
	background:#fffcf2;
	text-align:center;
	border-radius:60px;
}

/* ####### CSS spezifisch ####### */
#header {
	/*display:block;*/position: fixed !important;top: 0;z-index: 1000 !important;
width: 100% !important;height: 54px;
	background: #FFF;
}
#header h1 {font-size:32px;text-align:center;text-transform: uppercase;font-family: 'OpenSans-Bold', serif !important;}
#header h4 {font-size:21px;text-align:center;font-family: 'OpenSans-Bold', serif !important;}

#logo-head {
	display:block;
	height:40px;
	border-bottom:1px solid #FFF;
}
img#logo {
	height:80px;
}
img.float_left {float:left; margin-right:16px;}

.desktop {
display:block;
}
.fa-stack-2x { font-size: 0.5em; }

.navtop li ul {
	width:100%;
	list-style: none;float: right;position: relative;
}
.navtop li {
	float: right;position: relative;padding-left:8px;
}
.navtop li a {font-size:0.88em;}
.navbar-nav {float: left;}

.sticky-menu {position: fixed !important;top: 0;z-index: 1000 !important;
width: 100% !important;height: 168px;}

#main-nav {
	z-index:10000;
	margin:0 auto;
	padding:0;
	top: auto !important;
	position: relative !important;
	background-color:#0094b5;
	width: 100%;
}
#main-nav li a {
	font-size:18px;
	color:#edc15e;
	color:#0191ca;
	color:#FFFFFF;
	padding-left:16px;
	padding-right:16px;
}
#main-nav li a.has-subnav, #main-nav li a.sf-with-ul, 
#main-nav li a.sf-with-ul.active {
	padding-right:2em;
	background-image:url(../img/arrow-down.png);
	background-position:95% center;
	background-repeat:no-repeat;
	background-size:20px auto;
}
#main-nav li a.active, #main-nav li a.forward, #main-nav li a.trail {
	background-color:#FFFFFF;
	color:#0094b5;
}
#main-nav a:hover {
	color:#0094b5;
}
#main-nav li ul {
	width:auto;min-width: 12em;
	background:#0094b5;
	color:#FFFFFF ;
	padding:0;
}
#main-nav li ul li a {
	padding:7px 15px;
	font-size:17px;
	color:#FFF;
	border-top:1px solid rgba(0,120,168,.4);
}
#main-nav li ul li a.active {
	color:#FFFFFF;
	background:#0094b5;
}
#main-nav li ul li a:hover {
	background: #0094b5;
}
.mobilansicht {display:none;}

#navmobil, .navmobil {display:none;}
#access {padding:0;background:rgba(0,120,168,1);overflow: hidden;display:inline;
position: relative;z-index: 1;width: 1170px;margin: 0 auto;}
.navdesk a {font-size: 21px;}

#teaser  {background-color:#FFF;background-image: url(../img/putkuss_background_teaser.jpg);background-position: top center;
background-repeat: no-repeat;background-attachment: fixed;background-size: 990px auto;height: 339px;}

.row {
display: flex;
flex-wrap: wrap;
margin-right: -15px;
margin-left: -15px;
}
.imagetext {width: 90%;
position: relative;
z-index: 2147483647;
overflow: visible;
top: -100px;
right: 10px;
left: 10%;}

.site-title {
	margin-top:-140px;
	display:inline-block;
	padding:20px;
	background:#eaeef8 !important;
}

.table-heading {
	padding:10px;
	background:#eaeef8 !important;
	margin-bottom:20px;
	opacity:.7;
}
ul {
	list-style:none;
	margin:0;
	padding:0;
}
.ref_wrap img {padding-bottom:6px;padding-right: 3px;}

.adresse {color:#0094b5; font-weight: 600;text-align:center;margin-top:40px;}

#footer {
	margin:0;
	background:transparent;
}

#footer p, #footer a {
	font-family: 'OpenSans', sans-serif !important;
	font-size:14px;
	color:#0094b5;
	text-transform:none;
}
#footer .copyright > p {
	margin-bottom: 10px;
	color:#0094b5;
	padding:20px 0;
	font-size:0.9em !important;
	text-align:right;
}
#footer img{
	max-width:195px;height: auto;
}
#nav-toggle {
	background:transparent;
	width:80px;
	height:80px;
	padding:0;
	border:0;
}
.navbar-default {background-color: #FFF;border-color: transparent;}

/* Toplink */
#footer {}
#footer .nach_oben_link{position:fixed;bottom:93px;right:33px;z-index:15;opacity:0.9}
#footer a .nach_oben_link .fas {color:#0094b5;background-color:transparent;height:40px;width:40px;display:block;font-size:4.8em;text-align:center;text-decoration:none}
#footer a:hover .nach_oben_link,
#footer a:focus .nach_oben_link{text-decoration:none;}
#footer a:hover .nach_oben_link .fas {color:#999999;}
#footer .nach_oben_link a:before{font-family:'Font Awesome 5 Free';content:" \f139";}

.modal-content {
	background:transparent !important;
	border-radius:0 !important;
	box-shadow:none !important;
}

@media screen and (max-width: 1100px){

}

@media screen and (max-width: 992px){
	#main-nav li a {font-size:14px;}
	.site-title {font-size:24px;}
}

@media screen and (max-width: 767px){
	#content {margin-top: 0;}
	#content .container {width: 100%;}
	imgo {width:100%;height:auto;}
	img#logo {width:100%;height:auto;margin-top:10px;}
	#phone-btn img.icon{width:50px;height:50px;}
	.phone {margin:0 -15px 0 0;}
	#main-nav {width:100%;margin:0;float:none !important;}
/*	 #main-nav {display:none;}*/
	 .imagetext {color:#0094b5;top:2em;}
	 .imagetext a {color:#0094b5;}
	 .imagetext p {line-height: 3.4em;}
/* Force table to not be like tables anymore */
	table, thead, tbody, th, td, tr { display: block; }
	/* Hide table headers (but not display: none;, for accessibility) */
	thead { position: absolute;top: -9999px;left: -9999px;}
	tr { border: 1px solid #ccc; margin-bottom: 20px;}
	td { /* Behave  like a "row" */border: none;
	/*border-bottom: 1px solid #eee; */position: relative;}
	td:before { /* Label the data */content: attr(data-title);
	display: inline-block;width: 35%; padding-right: 10px; white-space: nowrap;}
	td {padding-left: 45%;}
	td:before {width: 40%;}
	td:first-child {font-weight:bold;}
		td:first-child:before {font-weight:normal;}
	#header .container {padding-right: 0;padding-left: 0;}
	#logo-head {height: auto;}
	#teaser h2 {top: 20px;}
	#teaser img {margin-top: 0;}
	#teaser h2.teaser-headline {font-size: 22px;left: auto;top: 70px;}
	#footer img {max-width: 119px;}
	
	.navbar-default .navbar-toggle {border-color: transparent;}
	.navbar-default {background-color: #FFF;border-color: transparent;}
	#navmobil {display: flex;margin: 0;}
	#navmobile {display: flex;margin: 0 19px 0 0;}
	#navmobile a {font-size: 14px;padding: 2px 0 2px 15px; margin: 0 0 0 -14px; 
	color: #0094b5;text-decoration:none;font-weight: bold;}
	#access {margin-bottom: 5px;float: right;padding:0;box-shadow:none;width: 100%;margin-top: 0;}
	#access .mod_navigation.block {display: none;}
/* All the following are for the div.menu-icon (pure CSS) */
	.icon-align-justify {font-size: 30px; /*icon size*/display: block;
	position: relative;	width: 36px;height: 34px;text-align: center;cursor: pointer;
	background-color: transparent;border-radius: 3px;margin-bottom:6px;}
	.icon-align-justify::before {border-bottom: 0.25em solid #FFF;
	border-top: 0.65em double #FFF;box-sizing: content-box;content: "";
	height: 0.25em;left: 4px;position: absolute;top: 0.25em;width: 1.5em;}
	/*#header .col-md-12 {display:none;}*/
	#header .col-xs-4 {width: 34.33333333%;}
	.bg-weiss .fas, .bg-weiss .far {width: 20%}
	.image_container.float_right,
	.image_container.float_left {float:none;}
	.sticky-menu {position: fixed !important;top: 0;
	z-index: 2 !important;height: 68px;}
	.mobilansicht {display:block;}
	img {width: 100%; height:auto;}
	.sticky-menu {position: fixed !important;top: 0;
	z-index: 2 !important;height: 68px;}
	#teaser {background-size: 100% auto;height: 165px;}
	#contentakteuere {margin: 220px 16px 0 16px;}
	body.akteuere {background-size: 100% auto;}
	#contentakteuere .col-xs-12 {width: 96%;padding: 0;margin: 0 auto;}
	body.akteuere {background-color:#FFF;background-image: none;}
	.akteuere .mod_article {padding-left: 16px;padding-right: 16px;}
}
