/* @override 
	https://2025.metalltechnik-reinbacher.at/templates/reinbacher-j5/css/user.css?* */

/* titillium-web-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Titillium Web';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/titillium-web-v18-latin-regular.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('../fonts/titillium-web-v18-latin-regular.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* titillium-web-italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Titillium Web';
  font-style: italic;
  font-weight: 400;
  src: url('../fonts/titillium-web-v18-latin-italic.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('../fonts/titillium-web-v18-latin-italic.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* titillium-web-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Titillium Web';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/titillium-web-v18-latin-700.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('../fonts/titillium-web-v18-latin-700.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}
/* titillium-web-700italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Titillium Web';
  font-style: italic;
  font-weight: 700;
  src: url('../fonts/titillium-web-v18-latin-700italic.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('../fonts/titillium-web-v18-latin-700italic.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}

@font-face {
  font-family: 'FontAwesome';
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url("../fonts/fa-solid-900.eot");
  src: url("../fonts/fa-solid-900.eot?#iefix") format("embedded-opentype"), url("../fonts/fa-solid-900.woff2") format("woff2"), url("../fonts/fa-solid-900.woff") format("woff"), url("../fonts/fa-solid-900.ttf") format("truetype"), url("../fonts/fa-solid-900.svg#fontawesome") format("svg"); }
 
*,
:after,
:before {
 box-sizing:border-box
}
@media (prefers-reduced-motion:no-preference) {
 :root {
  scroll-behavior:smooth
 }
}

html, body {
	font: 1.06em "Titillium Web", Arial, Helvetica, Geneva, sans-serif;
	font-weight: 300;
	line-height: 1.4em;
	color: #676767;
}

body {
	display: block;
	position: relative;
	overflow: h;
}
/* set image max width to 100% */
img {
	max-width: 100%;
	height: auto;
	width: auto\9; /* ie8 */
}

table>tbody>tr>td, table>tbody>tr>th, table>tfoot>tr>td, table>tfoot>tr>th, table>thead>tr>td, table>thead>tr>th {
	border-top: 2px solid rgb(210, 210, 210);
	padding: 6px 10px 6px 0;
	vertical-align: top; 
}
table>tbody {
	border-bottom: 2px solid rgba(144, 168, 69, 0.50);
}

h1, h2, h3, h4, h5, h6 {
	font-family: "Titillium Web", Arial, Helvetica, Geneva, sans-serif;
	color: #005a81;
	font-weight: 400;
	margin-top: 0;
	margin-bottom: 20px;
	color: #005a81;
	text-align: center;
}
h1 {
	font-size: 30px;
}
h2 {
	font-size: 26px;
}
h3 {
	font-size: 24px;
}
h4 {
	font-size: 18px;
	}
a {
	color: #005a81;
}
a:focus, a:hover {
	color: #000;
}
p {
	padding-top: 0;
}
ol, ul, p {
	padding-bottom: 20px;
}
b, strong {
	font-weight: bold;
}
.btn {
	border: 0px solid #e6a823;
	border-radius: 0px;
	padding: 3px 25px;
	margin: 0;
	font-weight: normal;
	color: #000000;
	background-color: #fff;
	font-style: normal;
}
.btn:hover {
	background-color: #e6a823;
	text-decoration: none;
	color: #fefefe;
}
.btn .icon-chevron-right {
	display: none; visibility: hidden;
}
body.wrapper-fluid .site-grid {
	grid-gap: 0;
}

.content-grid {
	padding-top: 20px;
	padding-bottom: 40px;
}

.container-content main {
	width: 100%;
}

.grid-child {
	flex-direction: column;
} 
#main {
	overflow: hidden;
	padding-top: 110px;
	padding-bottom: 0px;
	background-color: #fff;
	margin-top: ;
}
.container-component>*+* {
	margin-top: 0!important;
}
.container {
	max-width: 1200px!important;
	margin-right: auto;
	margin-left: auto;
}
@media (max-width: 990px) { 
	#main {
		padding-top: 60px;
	}
	.container {
		padding-right: 10px;
		padding-left: 10px;
	}
}



/* Header - Navigation */
header.header {
	background-color: #fff;
	height: 110px;
	border-bottom: 1px solid #cccccc;
	box-shadow: 0 2px 5px rgba(7, 7, 7, 0.23);
}
.header ul li {
	list-style: none;
	padding: 0;
	margin: 0;
}
.container-header {
	margin-bottom: 0;
	box-shadow: none;
}
header .grid-child {
	flex-direction: row;
} 

.container-topbar > .container {
	display: flex;
	padding-right: 0px;
	padding-left: 0px;
	flex-direction: row;
	justify-content: space-between;
	align-items: flex-end;
}

.container-topbar p {
	padding: 0;
	margin: 0;
}


.navgrid, .dj-megamenu-sticky {
}

.grid-child.brand {
	padding-top: 0;
	padding-right: 0;
	padding-left: 0;
	text-align: left;
	display: block;
	margin-right: 0px;
	flex-shrink: 1;
	flex-grow: 1;
	width: 400px;
}
.brand-logo {
	display: block;
	padding: 0px;
}
.grid-child.brand img {
	height: 95px;
}

.grid-child.container-nav {
	margin: 0;
	padding-bottom: 15px;
	padding-top: 0;
	align-items: flex-end;
	flex-shrink: 1;
	flex-grow: 3;
	display: flex;
	justify-content: flex-end;

}

.container-topbar {
	font-size: 14px;
	line-height: 1.4em;
}

#site-header {
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 100;
	transition: all .5s ease;
}
#site-header.hide {
	top: -110px;
}

@media (max-width: 990px) { 
	
	.container-header {
		position: fixed!important;
	}
	
	header.header {
		height: 60px;
	}

	.container-topbar > .container {
		flex-direction: row-reverse;
		align-items: center;
	}
	.container-header .navbar-brand {
		text-align: center;
		display: block;
		width: auto;
		padding: 0;
	}
	.grid-child.brand img {
		height: 45px;
	}
	.grid-child.container-nav {
		justify-content: flex-start;
		padding-top: 5px;
		margin-top: 0;
		height: 60px;

	}
	.grid-child.brand {
		text-align: center;
		padding-right: 10px;
		padding-bottom: 0;
		padding-left: 10px;
	}


}

/* Banner */


.banner .container {
	padding-top: 10px;
	padding-bottom: 10px;
}
.banner p {
	margin: 0;
	padding: 0;
}
.banner-content {
	padding-top: 20px;
}
.banner img.prev-button, .banner img.next-button {
	width: 40px!important;
}
@media (max-width: 990px) { 
	.banner-content {
		padding-top: 0px;
		margin-left: -10px;
		margin-right: -10px;
	}
}

/* Content */
.page-header {
	border: none;
	padding-bottom: 10px;
	margin-top: 30px;
	margin-bottom: 15px;
}

.page-header h1, .page-header h2 {
	color: #07769F;
	font-size: 44px;
	display: inline-block;
	padding-top: 0;
	padding-bottom: 0;
	margin: 0;
	font-weight: normal;
	font-style: normal;
	text-align: center;
	display: block;
}
.page-header h1 {
	text-transform: uppercase;
}
.blog-featured {
	padding: 20px;
}
.blog-items {
	grid-template-columns: 1fr ;
	grid-gap: 2em;
	row-gap: 3em;
}
.blog-items .page-header {
	margin: 0;
	border: none;
}
.blog-item {
	padding-bottom: 30px;
  margin-bottom: 30px;
  padding-top: 30px!important;
  border-top: 2px solid rgba(178, 178, 178, 0.55);
}
.blog-item .page-header h2, .blog-item .item-title {
	padding-bottom: 10px;
	line-height: 1.2em;
	text-align: left;
	font-size: 34px;
}
.blog-item .item-image {
	grid-row: 1 / 2;
	padding-bottom: 10px;
	margin-bottom: 0;
	padding-top: 0;
	margin-top: 0;
}


.blog-item .item-title a, .blog-item h2 a {
	text-decoration: none!important;
}


@media (max-width: 767px) { 
	.blog-items {
		grid-template-columns: 1fr ;
		grid-gap: 2em;
	}
	.blog-item {
		display: block;
	}
	.blog-item .item-title {
		padding-bottom: 20px;
		padding-top: 5px;
	}
	.blog-item .item-title h2 {
	}


}

 .spruch .custom{
 	background-size: cover;
 	background-position: center center;
 	background-attachment: fixed;
 }

.spruch p {
	text-align: center;
	padding: 160px 40px;
	color: #05769f;
	font-size: 27px;
}
/* Bereiche */
.bereiche {
	padding-top: 30px;
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-template-row: auto;
	column-gap: 30px;
	row-gap: 30px;

}
.bereiche .element {
	text-align: center;
	margin-bottom: 0px;
	display: flex;
}
.bereiche h3 {
	padding-top: 20px;
	font-weight: bold;
}
.bereiche h3 a {
	
}
.bereiche h3 a:hover {
	opacity: 0.76;
}
.bereiche .element .abstand {
	margin-right: 0px;
	margin-left: 0px;
	background-color: #005a81;

}
.bereiche .text {
	color: #fff;
	padding-right: 10px;
	padding-left: 10px;
}
.bereiche .bild img {
	width: 100%;
}
.bereiche .text a {
	display: block;
	color: #fff;
	text-decoration: none;
}

.bereiche .text p a {
	display: inline-block;
	background-color: #fff;
	color: #1c779b;
	padding: 3px 10px;
}
.bereiche .text p a:hover {
	background-color: #6e99b1;
	color: #fff;

}

@media (max-width: 990px) { 
	.bereiche {
	grid-template-columns: 1fr 1fr ;
	}
	.bereiche .element .abstand {
		margin-right: 5px;
		margin-left: 5px;
	}
	.bereiche .element {
		margin-bottom: 10px;
	}
}

@media (max-width: 767px) { 

	.bereiche {
	grid-template-columns: 1fr ;
	}

}

@media (max-width: 560px) { 

.bereiche .element {

}

}
/* Inhaltsblöcke*/
#bottom {
	padding-top: 50px;
}
#bottom .weiss {
	background-color: #fff;
}
#bottom .weiss .moduletable {
	padding: 30px 34px 20px 40px;
}
#bottom .container {
	background: none;
	padding-bottom: 20px;
}
#bottom .moduletable {
	padding: 0;
	margin: 0;	
}
#bottom .breit .custom {
	background-size: cover;
	background-position: center center;
	background-attachment: fixed;
}

#bottom .text, #bottom .bild {
	display: block;
	width: 50%;
	float: left;
}

#bottom .bild {
	float: right;
}
#bottom .bild img {
	margin-top: 30px;
	margin-bottom: 30px;
}
#bottom .text {
	background-color: #e8edf4;
	padding-top: 20px;
	padding-bottom: 20px;
}
#bottom .text .custom, .bereiche .text .abstand {
	padding: 0 30px 10px 45px;
}
#bottom .text p {
	text-align: left;
}
#bottom .text p
#bottom > div.container:after {	
	content: ".";
	display: block;
	clear: both;
	visibility: hidden;
	line-height: 0;
	height: 0;
}
@media (max-width: 767px) { 
	#bottom .text, #bottom .bild {
		display: block;
		width: 100%;
		float: none;
	}
	#bottom .block {
		background: none;
		background-color:  #e8edf4;
	}
	

}
#bottom .breit {
	color: #005a81;
	font-weight: bold;
	font-size: 20px;
}
#bottom .breit .container {
	padding-top: 80px;
	background: url(../images/liniepfeil.png) center -70px no-repeat;
}
#bottom .breit .element {
	color: #fff;
	font-weight: normal;
	font-style: normal;
	padding-top: 40px;
	padding-bottom: 60px;
}
#bottom .breit .element strong {
	font-size: 34px;
}
#bottom .breit h3 {
	font-size: 34px;
	text-transform: uppercase;
	color: #fff;
}

/* Ansprechpartner */
#bottom .ansprechpartner {
	text-align: center;
}
#bottom .ansprechpartner .element {
	width: 280px;
}
#bottom .ansprechpartner p {
	text-align: center;
	padding-left: 5px;
	padding-right: 5px;
	font-size: 18px;
	color: #005a81;
	padding-bottom: 0;
}
#bottom .ansprechpartner p a {
	color: #005a81;
}
#bottom .ansprechpartner p.bild {
	float: none;
	display: block;
	text-align: center;
	width: auto;
	padding-bottom: 0;
	margin-bottom: 0;
}
#bottom .ansprechpartner p.bild img {
	padding-bottom: 0;
	margin-bottom: 22px;
}
#bottom .ansprechpartner .element p strong {
	font-size: 18px;
	color: #fff;
}

/* Fussleiste*/
#footer .moduletable {
	margin-bottom: 0;
	padding: 20px;
}
#footer .moduletable p {
	text-align: center;
}
#footer a:hover {
	background: none;
	text-decoration: underline;
}
#footer .container {

}

#footer {
	border: 0;
	text-align: center;
	background-color: #005a81;
}
#footer p {
	text-align: left;
	padding: 0;
	margin: 0;
}
/* Adresse */


#footer .adresse .moduletable {
}
#footer .adresse a {
	color: #005a81;
}
#footer1  {
	background-color: #f3f4f4;
	color: #005a81;
}

#footer ul, #footer ul li {
	list-style: none;
	margin: 0;
	padding: 0;
}
/* Sitemap */
#footer2 .sitemap{
	padding-bottom: 30px;
}
#footer2 .sitemap ul {
	display: flex;
	justify-content: space-around;
	flex-direction: row;
}
#footer2 .sitemap ul > li {
	padding-right: 10px;
	padding-left: 10px;
}
#footer2 .sitemap li.current a {
	text-decoration: none;
}
#footer2 .sitemap ul > li > ul > li{
	float: none;
	width: auto;
	padding-top: 2px;
	padding-bottom: 2px;
}
#footer2 .sitemap ul li a {
	color: #d5e0e6;
	font-size: 18px;
	text-transform: uppercase;
}
#footer2 .sitemap ul li ul li a {
	color: #a9c4d3;
	font-size: 16px;
}

#footer3 .service {
	padding-top: 30px;
}
#footer3 .service ul {
	display: flex;
	justify-content: center;
	flex-direction: row;
}
#footer3 .service ul li {
	padding-right: 10px;
	padding-left: 10px;
}
#footer3 .service a {
	display: inline-block;
	color: #acbed6;
	padding-top: 1px;
	padding-bottom: 1px;
	text-transform: uppercase;
}
#footer3 .lageplanlink {
	background: ;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}

/* Landscape phone to portrait tablet */
@media (max-width: 767px) { 
	
	#footer2 .sitemap ul {
		display: block;
	}
	#footer2 .sitemap .module-content > ul > li {
		float: none;
		width: 100%;
		margin-bottom: 18px;
	}

}

.googlemaps {
	padding-bottom: 30px;
}



/* Suche */
span.icon-search:after { 
font-weight:bold;
}
/* Leistungen */

.elemente {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	align-items: stretch;
	margin-bottom: 30px;
}

.elemente.reverse {
	flex-direction: row-reverse;
}

.elemente .element {
	width: 50%;
	flex-wrap: wrap;
	align-items: center;
	display: flex;	
}
.elemente .element.text {
}
.elemente .element.text .abstand {
	padding: 20px 40px 0 0;
}
.elemente.reverse .element.text .abstand {
	padding: 20px 0 0 40px;
}
.elemente .element.text p {
	text-align: left;
}
div.produkte, div.lageplan {
	background-color: #e2e2e2;
    position: relative;
	margin: 0 -9999rem 30px !important;
	padding: 50px 9999rem 20px !important;
	clear: both;
}
ul.produkte {
	padding-left: 0;
	padding-right: 0;
	margin-left: 0;
	margin-right: 0;
	text-align: center;
}
ul.produkte li {
	list-style: none;
	display: inline-block;
	padding: 5px 15px;
	background-color: #fff;
	margin: 5px;
}
.knopf a {
	display: inline-block;
	background-color: #005a81;
	color: #fff;
	padding: 8px 40px;
	font-weight: bold;
	text-decoration: none!important;
}
.knopf a:hover {
	background-color: rgba(7, 119, 157, 0.75);
}
.knopf.leistungen {
	padding-top: 40px;
	padding-bottom: 30px;
	text-align: center;
}
.galerie {
	padding-top: 60px;
	text-align: center;
}

.maschinen .element{
	align-items: stretch;
}

.leistungen .abstand {
	background-color: #eff0f0;
	padding: 0;
	margin: 10px;
	width: 100%;
}
.leistungen .text {
	padding: 20px 20px 10px;
}
.leistungen .bild {
	padding-top: 0;
	padding-bottom: 0px;
}
.einleitung .moduletable,
.einleitungleistungen .moduletable {
	padding-bottom: 0;
	margin-bottom: 0;
}
.einleitungleistungen h1 {
	text-transform: uppercase;
	font-size: 36px;
	padding-top: 20px;
}
.einleitung h1 {
	font-size: 36px;
	padding-top: 30px;
}

.moduletable.entwurf {
	padding-top: 40px;
	padding-bottom: 0;
	margin: 0;
}

.elemente.kontakt h4 {
	font-weight: bold;
	text-align: center;
}
.elemente.kontakt .text  {
	display: block;
}
.elemente.kontakt .text .abstand {
	display: block;
	padding-right: 0;
	padding-left: 0;
}
.elemente.kontakt .text p {
	text-align: center;
}
.elemente.bilder {
	margin-right: -10px;
	margin-left: -10px;
}
.elemente.bilder .bild .abstand {
	padding: 10px;
}
@media (max-width: 1200px) { 
	
}

@media (max-width: 990px) { 
	.elemente .element {
		width: 100%;
	}
	.elemente .element.text .abstand {
	padding: 20px 0px 0 0!important;
	}
}

.elemente.geschichte h3 {
	text-align: left;
	margin-bottom: 5px;
}
.elemente.geschichte {
	margin-right: -10px;
	margin-left: -10px;
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
}
.elemente.geschichte p {
	padding-bottom: 0;
	
}
.elemente.geschichte .element{
	width: 100%;
	align-items: stretch;
}

.elemente.geschichte .element .abstand {
	background-color: #f2f4f3;
	padding: 15px!important;
	margin: 5px;
}
@media (max-width: 990px) { 
	.elemente.geschichte {
		grid-template-columns: 1fr 1fr;
	}
}
@media (max-width: 767px) { 
	.elemente.geschichte .element, .elemente.geschichte .element:last-of-type {
		width: 100%;
	}
	.elemente.geschichte {
		grid-template-columns: 1fr;
	}
	
}

/* Fotogalerie */
#main-box .jg-bootone h2 {
	color: #005a81;
	font-size: 26px;
	border: none;
	padding-bottom: 0;
	margin-top: 30px;
	margin-bottom: 0px;
}

.gallery .well, .gallery .sm-well, .pager li>a, .pager li>a:hover,  .gallery .thumbnail {
	background: none;
	border: none;
	box-shadow: none;
} 
.gallery .caption h3 {
	font-size: 18px;
	text-align: center;
}
#main-box .gallery .caption ul li a {
	text-decoration: none;
}
.gallery .caption ul {
	padding-left: 0;
	margin-left: 0;
}

.back-to-top-link {
	position: fixed;
	bottom: 20px;
	width: 40px;
	height: 40px;
	border-radius: 10px;
	right: 20px;
	border-color: #005a81;
	color: #757575;
	font-size: 18px;
	line-height: 0.8em;
	display: flex;
	text-decoration: none!important;
	justify-content: center;
	align-items: center;
	z-index: 1000;
	background-color: #fff;
}
.back-to-top-link:focus, .back-to-top-link:hover {
	background-color: #005a81;
}


