/*******************************************************************************/
/* BASIS LAYOUT   */
/******************************************************************************/
html {
	height:100.1%;
}

body {
	display: flex;
    flex-direction: column;
	overflow-x:hidden; 
	height: 100.1%;
	width: 100%;
	margin: 0px;
	padding: 0px;
	background-color:#ffffff !important;
	position:relative; 
}

header, nav, section, article, aside, footer {
  display: block;
}

#wrapper {
	flex: 1 0 auto;
	position: relative;
	width: 100%;
	margin: 0 auto 0 auto;
	height: auto !important;
	background-color:#fff; 
}

#wrap-header {
	width:100%;
	height:90px;
	position:fixed;
    background-color:#008f9b;
	z-index:90;
	box-shadow: 0 10px 20px -5px rgba(115,115,115,0.25);
}

#header, #header.container {
	height:100%;
}

#logo {
	z-index:1500 !important;
	width:270px;
	position:absolute;
	left:50%;
	top:50%;
	transform:translateY(-50%);
	margin-left:-580px; 
}

#logo a, #logo img {
  display:block;
  width:100%;
  height:auto; 
}

#wrap-topbild {
	width:100%;
	height:auto;
	overflow:hidden !important;
	position:relative;
	height:28vw;
	margin-top:90px; 
}

#topbild {
	width:100%;
	height:auto;
	position:relative; 
}


#topbild img#myimg {
	position:relative;
	top:0 !important;
}

#topbild .ce-gallery, .bg-fullscreen .ce-gallery {
	float: none !important;
}

#topbild .ce-image img, #topbild img, 
.bg-fullscreen .ce-image img, .bg-fullscreen img {
	width:100% !important;
	height:auto;
}

#topbild .ce-center .ce-outer, #topbild .ce-center .ce-inner, 
.bg-fullscreen .ce-center .ce-outer, .bg-fullscreen .ce-center .ce-inner  {
	position: relative;
	float: none !important;
	right: 0% !important;
}

#topbild .ce-column, #topbild .ce-gallery figure,
.bg-fullscreen .ce-column, .bg-fullscreen .ce-gallery figure  {
	width: 100% !important;
}

#topbild .ce-gallery, .bg-fullscreen .ce-gallery {
	margin-right: 0px !important;
	margin-bottom:0px !important; 
}

#topbild .ce-gallery .ce-column, 
.bg-fullscreen .ce-gallery .ce-column {
	margin-right: 0px !important;
	margin-bottom: 0px !important;
}

#topbild .ce-row{
	display: inline !important;
}


main, #inhalt { 
	min-height:400px;
    padding-top:0px;
	height:auto;
	overflow:hidden; 
}



/* Sections */
.bg-white {
	padding:120px 0px 120px 0px;
	position:relative;
}

.bg-gray {
	padding:120px 0px 120px 0px; 
	position:relative;
	background-color:#AAAAAA;
}

.bg-white p:last-child  {
	margin-bottom:0px !important; 
}



/* Fuzsszeile */
#map {
	width:100%;
	/* display:none;  */
}

#wrap-footer {
	flex-shrink: 0;
	width: 100%;
	clear: both;
	background-color:#008f9b;
	position:relative;
	z-index:5;
}

footer {	
	position: relative;
	padding-top: 40px;
	padding-bottom:30px;
	margin-right: auto;
	margin-left: auto;
	min-height:180px;
}

footer p {margin-bottom: 0px;}

#wrap-social {
	width:100%;
	margin-bottom:20px; 
}

footer ul{
	list-style-type: none;
	margin-left: -30px;
}


/* social media icons */
#social-links a { margin-right:12px; }
#social-links .fab { font-size:28px; }
#social-links .fa-facebook-f { font-size:24px;}


#meguralink {
	text-align:right
	; 
	margin:0 auto;
	margin-top:10px; 
}



/* Megura Swissness Logo */
#megura-programmierung { position:relative; }

#megura-swissness {
width:100px;
height:100px;
position:absolute;
bottom: 15px;
right: 15%;
/*transform: translateY(-70%);*/
}

#megura-swissness svg{
	width: 100%;
	height: 100%;
}

.ms-svg-inner {
	fill:#474747;
}

#megura-swissness svg:hover .ms-svg-inner {
	fill:#666; 
}


/* Helper classes  */
.container {
	position: relative !important;
	max-width: 1140px !important;
}

#inhalt.subpage .sec .container {
	padding-left: 300px;
}


.center-text { text-align:center; margin:0 auto !important; }
.center-element { margin:0 auto !important; }

img { outline:none !important; }

main .row  img {
		max-width: 100% !important;
		height: auto; 
}

/* IE 10+ only */
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {  
 	main .row  img {
			width: 100% !important;
			height: auto; 
	}
}


.divider hr {
  margin-bottom: 25px !important;
  margin-top: 25px !important;
  border-top:1px solid #999 !important;
}

.prel {
	position:relative;
}

.empty hr {
	border-top: none !important;
	margin-top: 15px !important;
	margin-bottom: 15px !important;
	height: auto;
	overflow: hidden;
}



/* Google Maps */
.tx-go-maps-ext {
	height:45vh;
	width:100%;
}

.js-gme-container {
	height:100%;
	width:100%;
}

.gm-style {
	font-family: 'Jost', sans-serif;
	font-size:14px !important;
	line-height:120%; 
}

.gme-info-window,
.gme-info-window p,
.gme-info-window a {
	color:#000 !important; 
	line-height:140%; 
	font-family: 'Jost', sans-serif;
	font-size:14px !important;
}

.gme-info-window p strong {
	font-weight:700 !important; 
}

.gme-info-window p {
	margin-bottom: 5px !important;
}

.gm-style .gm-style-iw-c {
	border-radius: 20px !important;
	padding: 20px !important;
	color: #000;
	background-color: #fff;
	border:2px solid #008F9B;
}

.gm-style-iw-d {
	overflow: auto !important;
}

.gm-ui-hover-effect {
	color: #000 !important;
	top: 0px !important;
    right: 2px !important;
}

main .row .js-gme-container img {
	max-width:initial !important; 
	width:auto !important; 
	height: auto;
}

.js-map p {
	margin-bottom:0px;
}

.gm-style .gm-style-iw-t::after {
	background: linear-gradient(45deg,rgba(0,143,155,1) 50%,rgba(255,255,255,0) 51%,rgba(255,255,255,0) 100%);
}


/* Responsive Video */
.responsive-video {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
}

.responsive-video video, 
.responsive-video iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}


/* Slick Slider */
.slick-slider {
	width:100%; 
}

.slick-prev::before, .slick-next::before {
	color:#000 !important; 
}





/*******************************************************************************/
/* INHALTSSEITEN   */
/******************************************************************************/

/* HOME mit altem Logo */
body.home-altes-logo #logo{
	margin-left: -560px;
}


/* ÜBER UNS */ 
.ueber-uns-text {
	padding-right: 250px;
}


/* REFERENZEN */
#referenzen-bilder .ce-gallery .ce-column{
   margin-bottom:  4% !important;
}


/* KONTAKT */
.tx-powermail  .container-fluid {
	width: 100%;
	padding-right: 0px !important;
	padding-left:0px !important;
}


.tx-powermail .powermail_fieldwrap.col-md-6 {
	width: 100%;
	margin-bottom: 10px;
}

.tx-powermail legend{
	font-size: 45px;
  font-weight: 200;
  line-height: 120%;
  margin-bottom: 20px;
}

.tx-powermail label{
	width:  50%;
}

.powermail_legend {
	display:none;
}