:root {
	--main-font-size: 1.2rem;
	--main-font-weight: 300;
	--main-link-color: #139c63;
	--main-link-color-hover: #139c63;
	--main-text-color: #000;
	--main-headline-color:  #3e676e;
}

:focus {
	outline: none !important;
}

body {
	color: var(--main-text-color);
	-moz-hyphens: auto;
	-o-hyphens: auto;
	-webkit-hyphens: auto;
	-ms-hyphens: auto;
	hyphens: auto;
	padding-top: 0;
	font-size: 1rem;
	font-weight: var(--main-font-weight);
	background-color: transparent;
}


/* General Styles */
.h1,
h1 {
	color: var(--main-headline-color);
	font-size: 2rem;
	margin-top: 1.5rem;
	margin-bottom: 1.5rem;
}

.h2,
h2 {
	font-size: 1.5rem !important;
	color: var(--main-headline-color);
}

a {
	color: var(--main-headline-color);
	transition: color 0.5s ease-in-out;
}

a:hover {
	color: #002539;
	transition: color 0.5s ease-in-out;
	text-decoration: none;
}

#contentarea a,
.ibh_footer_copyright a {
	color: var(--main-link-color);
    text-decoration: underline;
    text-underline-offset: 0.07rem;
}

#contentarea a:hover,
.ibh_footer_copyright a:hover {
	color: var(--main-link-color-hover);
}

#contentarea img {
	border-radius: 10px;
}

#header {
	height: 80px;
}

#header .site_name_head {
	font-weight: 900;
	font-size: 10%;
}

#header .site_subname_head {
	letter-spacing: 0.105em;
}

#header a img {
	position: absolute;
}

#header a.logodeska span {
	margin-left: 15%;
}

#header .logowrapper img {
	height:90px;
}
@media (max-width: 990px) {
	#header .logowrapper img {
		height:80px;
	}
}

@media (max-width: 576px) { 
	#header .logowrapper img {
		height:75px;
	}
}



/*navbar Scroll*/
#ighHeader {
	transition: top .5s ease-out;
	box-shadow: 0px -1px 12px 0px rgba(0, 0, 0, 0.51);
	padding-right:0px;
	padding-left:0px;
	background-color: rgb(0 17 21 / 70%);
}

/**Navbar Scroll Ende **/



.content ul li {
	list-style-type: square;
}

.fixed-top,
.container-fluid.bgwrapper {
	background-color: rgba(255, 255, 255, 0.98);
	-webkit-transition: background 1.5s;
	-moz-transition: background 1s;
	-o-transition: background 1s;
	transition: background 1s;
}

.container-fluid.bgwrapper {
	padding-bottom: 21px;
}

.ibhartmannlogo {
	max-width: 330px;
	width: 100%;
}

.container-fluid-footer-bgc {
	padding-top: 15px;
	background-color: #002539;
}

.copyright {
	background-color: #002539;
}

/* Special Overwrites Start */
.carousel-inner {
	background-color: #fff;
	background-size: cover !important;
}


/* Special Overwrites End */


/* Sidebar Left Content */
.sidebar-left-desktop ul li {
	border-bottom: 4px solid var(--main-link-color);
	padding:10px 0;
	margin-left: .5rem;
	margin-right: .5rem;
	transition: all 0.5s ease-in-out;
	font-size: calc(var(--main-font-size) - 0.3rem);
	text-transform: uppercase;
	font-weight:500;
	opacity:0.7;

}

#contentarea .sidebar-left-desktop ul li a {
	transition: color 0.2s linear;
	-webkit-transition: color 0.2s linear;
	-moz-transition: color 0.2s linear;
	text-decoration:none;

}

.sidebar-left-desktop ul li.active {
	border-bottom: 4px solid var(--main-link-color);
	opacity:1;
}

.sidebar-left-desktop ul li:hover {
	border-bottom: 4px solid var(--main-link-color);
	transition: all 0.5s ease-in-out;
	opacity:0.9;
}

.sidebar-left-desktop ul li.last {
	border-bottom: 0px;
}


/* Navigation on off responsive desktop */
#navigation {
	position: absolute;
	right: 0;
	margin-right: 0px;
}

ul.navbar-nav.ml-auto.ibh-navigation-responsive {
	display: none;
}

ul.navbar-nav.ml-auto.ibh-navigation-desktop a {
	color: #fff;
	text-transform: uppercase;
	-moz-hyphens: none;
	-o-hyphens: none;
	-webkit-hyphens: none;
	-ms-hyphens: none;
	hyphens: none;
}

ul.navbar-nav.ml-auto.ibh-navigation-desktop li a {
	line-height: 23px;
	letter-spacing: .09rem;
	font-size: 90%;
	position:relative;
	font-weight: 500;
}

ul.navbar-nav.ml-auto.ibh-navigation-desktop li a:hover {
	color: var(--main-link-color);
	line-height: 23px;
}

ul.navbar-nav.ml-auto.ibh-navigation-desktop li.active a {
	color: var(--main-link-color);
	line-height: 23px;
}

.navbar {
	justify-content: flex-end !important;
	margin-top:11px;
}

.custom-toggler.navbar-toggler {
	border-color: var(--main-link-color);
}


/* Reference Grid View */
img.reference-img-in-list {
	filter: gray;
	/* IE5+ */
	-webkit-filter: grayscale(1);
	/* Webkit Nightlies & Chrome Canary */
	-webkit-transition: all .8s ease-in-out;
}

img.reference-img-in-list:hover {
	-webkit-filter: opacity(.2);
	filter: opacity(.2);
	cursor: pointer;
}

.reference-item img {
	max-width: auto;
	width: 100%;
	max-height: 100%;
}

/** Slide Show **/
#carouselExampleIndicators .carousel-inner {
	background-color: var(--main-link-color);
}

#carouselStartPage .carousel-inner {
	height:100vh;
	overflow:hidden;
	min-height: 320px;
}

#carouselExampleIndicators .carousel-item,
#carouselStartPage .carousel-item {
	height:100vh;
	min-height: 320px;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
}

/** 
#carouselExampleIndicators .carousel-item {
	-webkit-background-size: contain;
	-moz-background-size: contain;
	-o-background-size: contain;
	background-size: contain;
}
**/

.carousel-reference .carousel-item.ref {
	-webkit-background-size: contain;
	-moz-background-size: contain;
	-o-background-size: contain;
	background-size: contain;
	background-position: center top;
	background-repeat: no-repeat;
}

.carousel-item.ref .carousel-caption h3 {
	font-weight: 400;
	color: #fff;
	font-size: 20px;
}

.carousel-indicators li {
	background-color: #fff;
    flex: 0 1 auto;
    width: 10px;
    height: 10px;
    margin-right: 5px;
    margin-left: 5px;
}

.referenzen-grid a {
	width: 100%;
	height: 100%;
	display: block;
	background-size: cover;
}

span[id^="rad"] {
	height: 42px;
	display: block;
}


/* Team Modal Start */
#team .modal-dialog.modal-dialog-centered {
	max-width: 600px;
}

#team .modal-content {
	background-color: #A5BEE4;
	-webkit-border-radius: 0px !important;
	-moz-border-radius: 0px !important;
	border-radius: 0px !important;
}

.hovereffect a {
	color: #fff !important;
	font-size: 110% !important;
	font-weight: 600 !important;
}

.team {
	border-radius: 10px;
}

.team .hovereffect3 {
	border-top-right-radius: 0px;
	border-bottom-right-radius: 0px;
}

.team .preview-info {
	border-top-right-radius: 10px;
	border-bottom-right-radius: 10px;
}

.team .hovereffect3, .team .preview-info {
	background-color:  #f4f8f0;
}
/* Team Ende */


/* Contact Page Start*/
.contactf label {
	font-weight: normal;
	margin-top: 10px;
}

.contactf .partcontentf input.btn.btn-primary {
	background-color: #fff;
	background-image: none;
	border-radius: 0px;
	border: 1px solid #ccc;
	text-shadow: none;
	color: #333;
	box-shadow: 0 1px 0 rgba(255, 255, 255, 0.15) inset, 0 0px 3px rgba(0, 0, 0, 0.075);
	margin-top: 20px;
	width:auto;
}

.contactf .partcontentf input.btn.btn-primary a {
	color: #c6c1b4;
}

.contactf .partcontentf input.btn.btn-primary:hover {
	text-decoration: underline;
}

.contactf input,
.contactf button,
.contactf select,
.contactf textarea {
	width: 100%;
	padding:5px;
}

#rueckruf .input-block-level {
	display: inline;
	width: 15px;
}
.contactf .label-important {
	color:maroon;
	font-weight:500;
}


/* Contact Page End */


/* Video start */
video {
	object-fit: cover;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}


/* Video end*/


/* Customer Login */


/****** LOGIN MODAL ******/

.loginmodal-container {
	padding: 30px;
	max-width: 350px;
	width: 100% !important;
	background-color: #F7F7F7;
	margin: 0 auto;
	border-radius: 2px;
	box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
	overflow: hidden;
}

.loginmodal-container h1 {
	text-align: center;
	font-size: 1.8em;
}

.loginmodal-container input[type=submit] {
	width: 100%;
	display: block;
	margin-bottom: 10px;
	position: relative;
}

.loginmodal-container input[type=text],
input[type=password] {
	height: 44px;
	font-size: 16px;
	width: 100%;
	margin-bottom: 10px;
	-webkit-appearance: none;
	background: #fff;
	border: 1px solid #d9d9d9;
	border-top: 1px solid #c0c0c0;
	/* border-radius: 2px; */
	padding: 0 8px;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
}

.loginmodal-container input[type=text]:hover,
input[type=password]:hover {
	border: 1px solid #b9b9b9;
	border-top: 1px solid #a0a0a0;
	-moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
	-webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
	box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
}

.loginmodal, .head-contact a span.text {
	text-align: center;
	font-size: 14px;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
	font-weight: 400;
	height: 36px;
	padding: 0;
}

.loginmodal-submit {
	/* border: 1px solid #3079ed; */
	border: 0px;
	color: #fff;
	text-shadow: 0 1px rgba(0, 0, 0, 0.1);
	background-color: #4d90fe;
	padding: 17px 0px;
	font-size: 14px;
	/* background-image: -webkit-gradient(linear, 0 0, 0 100%,   from(#4d90fe), to(#4787ed)); */
}

.loginmodal-submit:hover {
	/* border: 1px solid #2f5bb7; */
	border: 0px;
	text-shadow: 0 1px rgba(0, 0, 0, 0.3);
	background-color: #357ae8;
	/* background-image: -webkit-gradient(linear, 0 0, 0 100%,   from(#4d90fe), to(#357ae8)); */
}

.loginmodal-container a {
	text-decoration: none;
	color: #666;
	font-weight: 400;
	text-align: center;
	display: inline-block;
	opacity: 0.6;
	transition: opacity ease 0.5s;
}


/* Team List Images and Name Tag */

img.profile-img-in-list {
	filter: grayscale(85%);
	-webkit-filter: grayscale(0.90);
	-webkit-transition: all .9s ease-in-out;
}

img.profile-img-in-list:hover {
	-webkit-filter: opacity(.2);
	filter: opacity(.2);
	cursor: pointer;
}

.profile-img-nametag:hover {
	cursor: pointer;
}


/* Content Image Thumbnails */

.content_image_thumbnails_subline {
  font-size: 0.8rem;
  color: var(--main-link-color);
  text-align: left !important;
  font-weight: 400;
}

.content_thumbnails {
	max-width: 265px;
	margin-left: 10px;
	margin-bottom: 10px;
	padding: 15px;	
}

.content_thumbnails_resp {
	background-color: var(--main-link-color);
	margin-top:32px;
	padding-top: 32px;
    padding-bottom: 32px;
}

.content_thumbnails_resp .img-responsive,
.content_thumbnails .img-thumbnail {
    padding: 0;
    border: 3px solid #fff;
    border-radius: 0;
    max-width: 100%;
    height: auto;
	width:100%;
	box-shadow: 2px 2px 10px 2px rgb(226 226 226);
}





/* Carousel resp Slideshow */

.carousel-inner>.carousel-item>img,
.carousel-inner>.carousel-item>a>img {
	width: 100%;
	/* use this, or not */
	margin: auto;
}

.carousel.slide.carousel-fade {
	padding-top: 0!important;
}

#carouselExampleIndicators.carousel.carousel-fade.slide.carousel-reference {
	padding-top: 20px;
}


/* Searchfunction in head */

.search {
	position: absolute;
	right: 0;
	top: -10px;
	padding: 0;
}

.search * {
	outline: none;
	box-sizing: border-box;
}

.search__wrapper {
	position: relative;
}

.search__field {
	width: 50px;
	height: 50px;
	color: #a5bee4;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
	font-size: 1.35em;
	padding: 0.35em 50px 0.35em 0.35em;
	border: 1px solid transparent;
	border-radius: 0;
	cursor: pointer;
	transition: all 0.8s ease-in-out;
}

.search__field:focus {
	border-bottom: #db1f15 solid 2px;
	width: 1130px;
	color: #2b2b2b;
	cursor: default;
	background-color: rgba(255, 255, 255, 0.98);
}

.search__field:focus~.search__icon {
	background-color: transparent;
	cursor: pointer;
	pointer-events: auto;
}

.search__icon {
	position: absolute;
	top: 0;
	right: 0;
	/* background-color: #e9f1f4; */
	background-color: transparent;
	color: #a5bee4;
	width: 50px;
	height: 50px;
	font-size: 1.35em;
	text-align: center;
	border-color: transparent;
	border-radius: 50%;
	pointer-events: none;
	display: inline-block;
	transition: background-color 0.2s ease-in-out;
}

.search__field::-webkit-input-placeholder {
	position: relative;
	top: 0;
	left: 0;
	transition-property: top, color;
	transition-duration: .1s;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-webkit-perspective: 1000;
	perspective: 1000;
}

.search__field:-moz-placeholder {
	position: relative;
	top: 0;
	left: 0;
	transition-property: top, color;
	transition-duration: .1s;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-webkit-perspective: 1000;
	perspective: 1000;
}

.search__field::-moz-placeholder {
	position: relative;
	top: 0;
	left: 0;
	transition-property: top, color;
	transition-duration: .1s;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-webkit-perspective: 1000;
	perspective: 1000;
}

.search__field:-ms-input-placeholder {
	position: relative;
	top: 0;
	left: 0;
	transition-property: top, color;
	transition-duration: .1s;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-webkit-perspective: 1000;
	perspective: 1000;
}

.search__field::-webkit-input-placeholder[style*=hidden] {
	color: #83b0c1;
	font-size: .65em;
	font-weight: normal;
	top: -20px;
	opacity: 1;
	visibility: visible !important;
}

.search__field:-moz-placeholder[style*=hidden] {
	color: #83b0c1;
	font-size: .65em;
	font-weight: normal;
	top: -20px;
	opacity: 1;
	visibility: visible !important;
}

.search__field::-moz-placeholder[style*=hidden] {
	color: #83b0c1;
	font-size: .65em;
	font-weight: normal;
	top: -20px;
	opacity: 1;
	visibility: visible !important;
}

.search__field:-ms-input-placeholder[style*=hidden] {
	color: #83b0c1;
	font-size: .65em;
	font-weight: normal;
	top: -20px;
	opacity: 1;
	visibility: visible !important;
}

.searchresponsive {
	padding-left: 10px;
	padding-bottom: 7px;
}

.searchresponsive span {
	padding: 10px 0px;
	border-bottom: 2px solid var(--main-link-color);
}

.searchresponsive .head-contact {
	margin-right: 15px;
}

li.nav-item {
	margin-right:0px;
}

/* Footer Style */

#footerarea,
.ibh_footer_copyright a,
#footerarea a,
#copyright {
	color: #7E8284;
	font-size:calc(var(--main-font-size) - 0.3rem );
}

#footerarea h4 {
	font-size:110%;
	text-transform: uppercase;
	padding-bottom: 15px;
	color: #fff;
}

.ibh_footer_copyright a,
#footerarea a {
	text-decoration:none;
	color:#7E8284;
	position:relative;
	display:inline-block;
	width: auto;
}

#footerarea a:after {    
  background: none repeat scroll 0 0 transparent;
  bottom:-1px;
  content: "";
  display: block;
  height: 1px;
  left: 0px;
  position: absolute;
  background-color: #534d63;
  transition: width 0.4s ease 0s, left 0.4s ease 0s;
  width: 0;
}
#footerarea a:hover:after { 
  width: 100%; 
}


.footerSpacer {
	max-width: 1129px;
	border: 0;
	border-top: 1px solid #83635e4d;
}

.logo-footerarea {
	width: 75px !important;
	margin-top: -20px;
	margin-left: -20px;
}

#copyright.row div.col-xs-12.col-md-8.align-self-end.text-right.ibh_footer_copyright {
	padding-top: 3px;
	line-height: 14px
}

#copyright.row .col-xs-12.col-md-9.align-self-end.text-right.ibh_footer_copyright a {
	color: #71bd27;
	text-align: right;
}

.span-copyrightline {
	padding-top: 7px;
	display: block;
}

#footerarea.row .col-12.col-sm-6.col-md-3.mt-3.blocktwo ul li a {
	padding-bottom: 0px;
	padding-top: 0px;
}


/* Start Media Queries*/

@media (max-width:1200px) {
	ul.navbar-nav.ml-auto.ibh-navigation-desktop a {
		font-size: 0.9rem !important;
	}
	.search__field:focus {
		width: 930px;
	}
	.hovereffect3 .imgwrapper {
		height: 200px;
	}
	.container-fluid.bgwrapper {
		padding-bottom: 30px;
	}
	.customerlogin {
		margin-left: 0px;
	}
}

@media (max-width: 990px) {
	/* Navigation */
	.dropdown-toggle[aria-expanded="true"]:after {
		transform: rotate(180deg);
	}
	
	a.dropdown-toggle {
	width: 100%;
    display: inline-block;
    padding-right: 0px;
	}
	#navigation {
		top: 0px;
	}
	#header {
		margin-top: -2px!important;
		padding-bottom: 10px;
	}
	#header a.logodeska span {
		margin-left: 23%;
	}
	.container-fluid.bgwrapper {
		padding-bottom: 0;
	}
	/*for the animation*/
	.dropdown-toggle:after {
		transition: 0.5s;
	}
	.dropdown-toggle::after {
		float: right;
		font-size: 1.9rem;
		margin-top: 0.5rem;
		opacity: 0.6;
	}
	
	li.nav-item,
	li.nav-itemdropdown,
	.dropdown-toggle,
	.nav-link {
		padding: 0.2rem 0.5rem;
	}
	li.nav-item.last {
		border-bottom: 0px solid transparent;
	}

	ul.navbar-nav.ml-auto.ibh-navigation-responsive {
		display: block;
	}
	ul.navbar-nav.ml-auto.ibh-navigation-desktop {
		display: none;
	}
	/* Padding reset from Desktop */
	.carousel.slide.carousel-fade {
		padding-top: 0px;
	}
	.navbar-toggler-icon {
		background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255,255,255, 0.9)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E") !important;
	}
	#navbarTogglerDemo01 {
		background-color: #fff;
		padding-right: 0.75rem;
		padding-left: 0.75rem;
		width: 70vw;
		max-height: 80vh;
		overflow: scroll;
		color: #3e676e;
		font-size: 15px;
		font-weight: 500;
	}

	#navbarTogglerDemo01 li.nav-itemdropdown.show ul.dropdown-menu.show li.nav-item, 	#navbarTogglerDemo01 li li	{
		border-bottom: 0px solid transparent;
	}
	
	
	#navbarTogglerDemo01 li {
		border-bottom: 1px solid #e1e1e1;
		padding-top: 10px;	
		padding-bottom: 10px;	
	}
	.navbar-toggler-icon {
		margin-right: 0.75rem;
	}
	#navbarTogglerDemo01 a,
	li.dropdown-menu {
		color: #3e676e;
		padding-left: 0px;
	}
	
	#navbarTogglerDemo01 a:hover {
		text-decoration: none;
	}
	.dropdown-menu li {
		list-style-type: none;
		border-bottom: 0px solid #e1e1e1;
	}
	.dropdown-menu li.active a,
	#navbarTogglerDemo01 a:hover,
	#navbarTogglerDemo01 ul li.activedropdown>a:hover,
	.dropdown-menu li:hover a,
	#navbarTogglerDemo01 ul li.activedropdown>a,
	.navbar-nav li.active>a {
		color: rgb(19, 156, 99) !important;
	}
	#navbarTogglerDemo01 .dropdown-menu {
		background-color: #fff;
		border: 0px;
	}
	/* Footer Links vs Navigation Links */
	.blocktwo .navbar-nav .nav-link,
	.blocktwo li.nav-item {
		padding: 0.05rem 0rem !important;
	}
}

@media (max-width: 768px) {
	#header {
		padding-bottom: 7px;
	}
	#header a.logodeska span {
		margin-left: 25%;
	}
	#header .site_name_head {
		font-size: 1.2em;
		letter-spacing: 0.04em;
	}
	#header .site_subname_head {
		margin-top: 10px;
		letter-spacing: 0em;
		display: block;
	}
	/* Footer Styles */
	#footerarea.row {
		padding-top: 1.5rem;
	}
	#footerarea.row .col-12.col-md-6.blockmap {
		min-height: 300px;
	}
	#footerarea>div.col-12.col-sm-6.col-md-3.mt-3.blockone>p,
	#footerarea.row .blocktwo {
		padding-bottom: 1.5rem;
	}
	#copyright.row div.col-xs-12.col-md-8.align-self-end.text-right.ibh_footer_copyright,
	#copyright.row .col-xs-12.col-md-9.align-self-end.text-right.ibh_footer_copyright a {
		text-align: center !important;
	}
	#copyright.row div.col-xs-12.col-md-8.align-self-end.text-right.ibh_footer_copyright {
		padding-top: 30px;
	}
	.logo-footerarea {
		margin-left: auto;
		margin-right: auto;
		margin-top: 0;
	}
	img.logo-footerarea {
		margin-left: auto;
		margin-right: auto;
		display: block;
		margin-top: 30px;
	}
}


/* changes indy 01.11.2018 15:24:00 */

.slideShowImg {
	height: 270px;
	width: 100%;
	background-size: cover;
	box-shadow: inset 5px -12px 60px -23px black;
	background-position: center;
}

#login-modal .modal-content {
	background-color: transparent;
	border: 0px;
}

#headermeta .fa-phone:before,
#headermeta .fa-envelope:before {
	font-size: medium;
}
#headermeta a {
	display: inline-block;
	padding: 0 0px 0 10px;
	height: 18px;
	margin: 3px 0 0 10px;
	line-height: 20px;
	font-size: 110%;
	color: var(--main-link-color);
}

#headermeta .mail a {
	border-left: 1px solid var(--main-link-color);
}

#headermeta a .text {
	font-size:65%;
}


#headermeta a:hover {
	color: var(--main-link-color-hover);
}

#headermeta a.de.active,
#headermeta a.en.active {
	text-decoration: underline;
}

.customerlogin {
	font-family: FontAwesome;
	display: inline-block;
	margin-left: 17px;
}

.head-contact {
	font-family: FontAwesome;
	display: inline-block;
	margin-left: 0px;
}

#headermeta .fa-user:before {
	color: #a5bee4;
}

.searchresponsive .fa-user:before {
	color: #fff;
}

h2.h2top {
	margin: 110px 0 0 0;
}

#contentarea .h2top-tiles a {
	color:#000;
	text-decoration: none;
	font-size: 1.2rem;
}

#contentarea a.profile-icons, #teamsection a.profile-icons {
	font-family: FontAwesome;
	text-decoration: none;
	color: var(--main-headline-color);
	margin-right: 15px;
}

.profile-img-nametag {
	background-color: #fff;
}

.hovereffect {
	width: 100%;
	height: 100%;
	float: left;
	overflow: hidden;
	position: relative;
	text-align: center;
	cursor: pointer;
	background: #A5BEE4;
}

.hovereffect .overlay {
	width: 100%;
	position: absolute;
	overflow: hidden;
	top: auto;
	left: 0;
	padding: 0px 20px;
	height: 218px;
	bottom: 24px;
}

.hovereffect img {
	display: block;
	position: relative;
	max-width: none;
	width: calc(100% + 20px);
	-webkit-transition: opacity 0.35s, -webkit-transform 0.35s;
	transition: opacity 0.35s, transform 0.35s;
	-webkit-transform: translate3d(-10px, 0, 0);
	transform: translate3d(-10px, 0, 0);
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

.hovereffect:hover img {
	opacity: 0.3;
	filter: alpha(opacity=30);
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}

.hovereffect h2 {
	text-transform: uppercase;
	color: #000;
	text-align: center;
	position: relative;
	font-size: 17px;
	overflow: hidden;
	padding: 0.5em 0;
	background-color: transparent;
}

.hovereffect h2:after {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 2px;
	background: #fff;
	content: '';
	-webkit-transition: -webkit-transform 0.35s;
	transition: transform 0.35s;
	-webkit-transform: translate3d(-100%, 0, 0);
	transform: translate3d(-100%, 0, 0);
}

.hovereffect:hover h2:after {
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}

.hovereffect a,
.hovereffect p {
	color: #fff;
	opacity: 0;
	filter: alpha(opacity=0);
	-webkit-transition: opacity 0.35s, -webkit-transform 0.35s;
	transition: opacity 0.35s, transform 0.35s;
	-webkit-transform: translate3d(100%, 0, 0);
	transform: translate3d(100%, 0, 0);
	margin: 0px 0 0 0;
	text-align: left;
	font-size: 96%;
}

.hovereffect:hover a,
.hovereffect:hover p {
	opacity: 1;
	filter: alpha(opacity=100);
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
	text-overflow: ellipsis;
	white-space: nowrap;
	width: 100%;
	overflow: hidden;
}


/** Hover Effect Raddoc 2021/02  ***/

.hovereffect2 {
	width: 100%;
	height: auto;
	float: left;
	overflow: hidden;
	position: relative;
	text-align: center;
	cursor: pointer;
}

.hovereffect2::after {
	content: '';
	width: 100%;
	display: block;
	margin-left: -100%;
}

.hovereffect2wrapper:hover .hovereffect2::after {
	margin-left: 0;
	transition: all 0.5s ease-out;
}

.hovereffect2 .imgwrapper {
	height: 240px;
	width: 100%;
	background-size: cover;
	background-position: center;
	transition: all 0.5s ease-in-out;
}

.hovereffect2:hover .imgwrapper {
	width: 120%;
	margin-left: -10%;
	transition: all 0.5s ease-in-out;
}

a.hovereffect2title {
	color: #4d4d4d;
	margin: 0px 0 0 0;
	text-align: left;
	font-size: 110%;
	font-weight: 100;
	letter-spacing: 1.5;
	transition: color 0.5s ease-in-out;
}

a.hovereffect2title:hover {
	color: #db2017;
	text-decoration: none;
}

.hovereffect2wrapper:hover a.hovereffect2title {
	color: #db2017;
	transition: all 0.5s ease-in-out;
}


/** End Hovereffect Raddoc ***/

.hovereffect3 {
	width: 100%;
	height: auto;
	float: left;
	overflow: hidden;
	position: relative;
	text-align: center;
	cursor: pointer;
	background-color: #002539;
	backdrop-filter:blur(3px);
	border-radius: 10px;
}

.hovereffect3 .imgwrapper {
	height: 300px;
	width: calc(100%+40px);
	background-size: cover;
	-webkit-transition: opacity 0.60s, -webkit-transform 0.60s;
	transition: opacity 0.60s, transform 0.60s;
}

.hovereffect3:hover .imgwrapper {
	opacity: 0.9;
	filter: alpha(opacity=90);
	-ms-transform: scale(1.2);
	-webkit-transform: scale(1.2) translate3d(0, 0, 0);
	transform: scale(1.2) translate3d(0, 0, 0);
}

.overlay .readmorelatestp {
	position: absolute;
	top: 40%;
}

.hovereffect3 .overlay {
	width: 100%;
	height: 245px;
	position: absolute;
	overflow: hidden;
	padding: 30px 20px 0 20px;
	bottom:-200px;
	transition: all 0.5s ease-in-out;
	
}

.hovereffect3:hover .overlay {
	bottom:10px;
	transition: all 0.3s ease-in-out;
}

.hovereffect3 h2 {
	text-transform: uppercase;
	color: #000;
	text-align: center;
	position: relative;
	font-size: 17px;
	overflow: hidden;
	padding: 0.5em 0;
	background-color: transparent;
}
/**
.hovereffect3 h2:after {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 2px;
	background: #fff;
	content: '';
}
***/

.hovereffect3 a,
.hovereffect3 p {
	color: #fff;
	opacity: 0;
	filter: alpha(opacity=0);
	margin: 0px 0 0 0;
	text-align: left;
	font-size: 90%;
	font-weight: 600;
	letter-spacing: 1.5;
}

.hovereffect3:hover a,
.hovereffect3:hover p {
	opacity: 1;
	filter: alpha(opacity=100);
}
/*** .hovereffect3 end ***/

/** more for referenz grit **/

#contentarea a.reference-capture {
    font-size: calc(var(--main-font-size) - 0.3rem);
    text-decoration: none;
    font-weight: 400;
    line-height: 20px;
    display: inline-block;
    padding-top: 10px;
}
@media (max-width:990px){
	#contentarea a.reference-capture {
		text-decoration:underline;
		line-height: unset;
	}
}

.carousel-control-next-icon {
	background-image: url('img/slideshow/next-slide.svg')!important;
}

.carousel-control-prev-icon {
	background-image: url('img/slideshow/prev-slide.svg')!important;
}

.carousel-caption {
    right: 0px;
    bottom: auto;
    left: auto;
    color: #ffffff;
    text-align: center;
    padding: 20px;
    top: 25%;
    border-radius: 5px 0px 0 5px;
    padding: 10px 15px;
    border-right: 0;
    max-width: 300px;
	background-color:var(--main-link-color);
	box-shadow: 10px 10px 34px rgba(0,0,0,0.6);
}


/* mousi icon in slide show */

.scroll-downs {
	opacity: 0.4;
	position: absolute;
	top: auto;
	right: 0;
	bottom: 60px;
	left: 0;
	margin: auto;
	width: 24px;
	-webkit-transition: opacity 0.50s, -webkit-transform 0.50s;
	transition: opacity 0.50s, transform 0.50s;
	z-index: 1;
}

.scroll-downs:hover {
	opacity: 1;
}

.mousey {
	width: 3px;
	padding: 10px 10px;
	height: 15px;
	border: 2px solid #fff;
	border-radius: 25px;
	opacity: 1;
	box-sizing: content-box;
}

.scroller {
	width: 3px;
	height: 10px;
	border-radius: 25%;
	background-color: #fff;
	animation-name: scroll;
	animation-duration: 2.2s;
	animation-timing-function: cubic-bezier(.15, .41, .69, .94);
	animation-iteration-count: infinite;
}

@keyframes scroll {
	0% {
		opacity: 0;
	}
	10% {
		transform: translateY(0);
		opacity: 1;
	}
	100% {
		transform: translateY(15px);
		opacity: 0;
	}
}

#startsection, #teamsection {
	background-color: #f4f8f0;
	margin: 0;
}

#teamsection {
	background-color: #f4f8f0;
}

#startsection a {
	color: color: var(--main-headline-color);
	font-weight: 400;
}

#startsection h2 {
	color:  var(--main-headline-color);
}

#startsection .h2 {
	margin:32px 0 40px 0;
}

#startsection .hovereffect3 {
    background-color: #fff;
    opacity: 1;
    transition: color .5s ease-in-out;
    border-radius: 10px;
}

#startsection .hovereffect3:hover {
	background-color: #002539;
	opacity: 1;
	transition: all 0.5s ease-in-out;
}

.capture-start-wrapper {
	padding: 10px;
}

.capture-start {
	color: #fff;
	padding: 0.8rem 0;
	text-align: center;
	min-width: 40vw;
	font-size: calc( var(--main-font-size) + 0.1rem );
	transition: color 0.6s linear;
	-webkit-transition: color 0.6s linear;
	-moz-transition: color 0.6s linear;
}

.capture-start a {
	color:rgba(255,255,255,0.95);
	transition: color 0.5s linear;
	-webkit-transition: color 0.5s linear;
	-moz-transition: color 0.5s linear;
}

.capture-start a:hover {
	color:rgba(255,255,255,1);
	transition: color 0.5s linear;
	-webkit-transition: color 0.5s linear;
	-moz-transition: color 0.5s linear;
}

.capture-start h3 {
	padding-bottom:10px;
}

.capture-start h3 a {
    font-weight: 500;
    font-size: calc(var(--main-font-size) + 2rem);;
}

.capture-start .teaser_wrapper p {
    font-weight: 500;
    font-size: calc(var(--main-font-size) + 0.1rem);;
}

.capture-start p {
    line-height: normal;
}


.capture-start .teaser_wrapper {
    padding: 15px 30px;
    margin-bottom: 16px;
}

.capture-start .button a {
    display: inline-block;
    background-color: rgb(19, 156, 99);
    padding: 15px 30px;
    border-radius: 10px;
    color: #fff;
    font-weight: 400;
    font-size: 75%;
}

.capture-start .button a:hover {
    background-color: rgb(0, 37, 57);
}


.capture-start-wrapper:hover {
	animation-name: floating;
    animation-duration: 2s;
	animation-iteration-count: 1;
    animation-timing-function: ease-in-out;
}


@keyframes floating {
    0% { transform: translate(0,  0px); }
    50%  { transform: translate(2px, 4px); }
    100%   { transform: translate(0, -0px); }   
}

.captureVideo {
	z-index: 1;
	margin: 8vh 0 0 -1px;
}

.ibh_downloadBox {
	width: 100%;
	height: auto;
	overflow: hidden;
	margin: 40px 0 50px 0;
}

.ibh_downloadBox img {
	width: 100%!important;
	height: auto!important;
}


/** video in content **/

video.videoContent {
	position: relative;
}


/** added 06.08.2019 12:25:30 by indy **/

.fa-user::before {
	font-size: 25px
}

raddoc,
.raddoc {
	font-family: 'Baloo Chettan 2', cursive;
	font-size: 121%;
	font-weight: 100;
	color: rgb(219, 147, 72);
}


.team .imgwrapper {
	background-position: center;
}

.teamModal {
	background-size: cover;
	background-position: bottom right;
	min-height: 630px;
	object-fit:cover;
}

.team .hovereffect3 a,
.team .hovereffect3 p {
	font-size: 100%;
}

.teamModal h5 {
	text-shadow: 1px 1px 1px #6a6a6a;
	color: #fff;
	font-size: 177%;
	font-weight: bold;
	letter-spacing: 0.03em;
}

.teamModal p, .modal-body ul li {
	color: #fff;
	font-size: 130%;
	line-height: 1.6;
}

.teamModal .close {
  color: #fff;
  position: absolute;
  right: 12px;
  top: 6px;
  z-index: 1;
}

.teamModal .modal-header {
	border: none;
}

.teamModal hr {
	border-top: 1px solid #fff;
}

.teamOutline {
	outline: 1px solid #fff;
	outline-offset: -8px;
}

.contentImageMansory {
	margin: 60px 0;
}



.contentImageMansory img {
	border: 1px solid var(--main-headline-color);;
	opacity: 0.9;
}

.contentImageMansory img:hover {
	opacity: 1;
	border: 1px solid var(--main-headline-color);
}

.contentImageMansory .content_image_thumbnails_subline {
	padding: 5px;
	color: var(--main-text-color);
}

.contentImageGrid {
	margin: 40px 0;
}

.contentImageGrid .overlay {
	font-size: 80%;
	height: 300px;
}

/***
.contentImageGrid::after {
	content: "\00a9  Zimmerei Thorsten Döring";
	text-align: right;
	font-size: 74%;
	width: 100%;
	font-style: italic;
}
****/

.contentVideo {
	margin: 30px 0;
}

.contentVideo video {
	position: relative;
}

.contentVideo p {
	font-size: 88%;
	font-weight: bold;
	color: #648bb1;
	letter-spacing: 0.05rem;
	margin: 10px 0;
}

.profileImg {
	border: 1px solid #648bb1;
}

@media (max-width:990px) {
	#header .site_name_head {
		font-size: 1em;
		font-weight: 500;
	}
	
	li.searchresponsive form .search__field:focus {
		width: 370px;
	}
	.container-fluid.bgwrapper {
		padding-bottom: 10px;
	}
}

@media (max-width:768px) {
	#navbarTogglerDemo01 {
		margin-top: 20px
	}
}

@media (max-width:575px) {
	#navigation {
	}
	.search__field:focus {
		width: 90vw;
	}
	.hovereffect3 .imgwrapper {
		height: 250px;
	}
	.team .hovereffect3 .imgwrapper {
		height: 460px;
	}
	#navbarTogglerDemo01 {
		width: 90vw;
		margin-top: 20px
	}

	#header a.logodeska span {
		margin-left: 0px;
	}

.team .hovereffect3 {
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
}

}


@media (max-width:460px) {
	#header .site_name_head {
		font-size: 0.8em;
		font-weight: 500;
	}
	#header .site_subname_head {
		font-size: 0.8em;
	}
}

@media (max-width:390px) {
	#navigation {
		top: 0px;
	}
	#header .site_name_head {
		font-size: 0.9em;
		font-weight: 500;
	}
}


/** get bigger modal on normal screens **/

@media (min-width:991px) {
	.modal-lg {
		max-width: 950px;
	}
}

@media (max-width:991px) {
	.teamModal {
		background-position: top left;
	}
}

@media (max-width:575px) {
	.teamModal p {
		font-size: 100%;
	}
	.teamModal h5 {
		font-size: 110%;
	}
}

/** XX-Large devices (larger desktops, 1400px and up) **/
@media (max-width: 1400px) { }


/** X-Large devices (large desktops, 1200px and up) **/
@media (min-width: 993px) and (max-width: 1200px) { 
	.topheaderbanner .col-12, #copyright
		{
			max-width: 960px !important;
		}
 }

@media (min-width: 769px) and (max-width: 992px) { 
	.topheaderbanner .col-12, #copyright
		{
			max-width: 720px !important;
		}
 }

@media (min-width: 586px) and (max-width: 768px) { 
	.topheaderbanner .col-12, #copyright
		{
			max-width: 586px !important;
		}
 }

/**  Large devices (desktops, 992px and up) **/
@media (max-width: 992px) {
	.capture-start h3 a, .capture-start .teaser_wrapper p {
		font-size: 2rem;
	}
}
/** Medium devices (tablets, 768px and up) **/
@media (max-width: 768px) {
	.capture-start h3 a, .capture-start .teaser_wrapper p {
		font-size: 2rem;
	}
	.carousel-control-next,
	.carousel-control-prev {
		bottom: 0;
	}
	.carousel .carousel-control-next,
	.carousel .carousel-control-prev {
		display: none;
	}
	.carousel-indicators li {
		width: 20px;
		height: 20px;
		margin-right: 10px;
		margin-left: 10px;
	}
}

/** Small devices (landscape phones, 576px and up) **/
@media (max-width: 576px) { 
	#header .site_subname_head {
		margin-top: 0px;
	}
	
	.capture-start h3 a, .capture-start .teaser_wrapper p {
		font-size: 1.3rem;
	}
	.capture-start {
		font-size: 1rem;
	}
}

/** Last changes */
#contentarea a.references_call2action {
	text-decoration:none;
}

.references_call2action button {
    color: #fff;
    background-color: var(--main-link-color);
    border-color: transparent;
    font-size: calc(var(--main-font-size) - .1rem);
    margin-bottom: 32px;
}


/** GP Overwrites **/
header.p-0.m-0 #carouselStartPage.carousel.carousel-fade.slide.carousel-reference a.carousel-control-prev,
header.p-0.m-0 #carouselStartPage.carousel.carousel-fade.slide.carousel-reference a.carousel-control-next,
#carouselExampleIndicators.carousel.carousel-fade.slide.carousel-reference a.carousel-control-next,
#carouselExampleIndicators.carousel.carousel-fade.slide.carousel-reference a.carousel-control-prev

{
height: 70px !important;
  width: 70px !important;
  background-color: #000;
background-position-x: 0%;
background-position-y: 0%;
background-repeat: repeat;
background-attachment: scroll;
background-image: none;
background-size: auto;
background-origin: padding-box;
background-clip: border-box;	
  border-radius: 50%;
  top: 50%;
  left: 0px;
  transform: translate(100%,-35px);
  opacity:0.5; 
}

header.p-0.m-0 #carouselStartPage.carousel.carousel-fade.slide.carousel-reference a.carousel-control-next,
#carouselExampleIndicators.carousel.carousel-fade.slide.carousel-reference a.carousel-control-next
{
left: 100%;
transform:translate(-170px, -35px);
translate(100%,35px); 
}

header.p-0.m-0 #carouselStartPage.carousel.carousel-fade.slide.carousel-reference a.carousel-control-prev:hover,
header.p-0.m-0 #carouselStartPage.carousel.carousel-fade.slide.carousel-reference a.carousel-control-next:hover,
#carouselExampleIndicators.carousel.carousel-fade.slide.carousel-reference a.carousel-control-next:hover,
#carouselExampleIndicators.carousel.carousel-fade.slide.carousel-reference a.carousel-control-prev:hover
{
background-color: var(--main-link-color);
opacity: 1;
}

.topheaderbanner {
  background-color: #002539;
  font-weight: 200;
  color: #fff;
  padding-top: 20px;
  padding-bottom: 20px;
  max-width: 100%;
  margin: 0px;
}

.topheaderbannercontainer {
  padding: 0px;
  margin: 0px;
}

.topheaderbanner .col-12
{
  max-width: 1140px;
  margin: auto;
}

.topheaderbanner, .loginmodal, .head-contact {
  color: #fff;
  font-weight: 200;
  font-size: 14px;
}

.topheaderbanner, .loginmodal, .head-contact span {
  color: #fff !important;
  }

.loginmodal, .head-contact a span.text {
  font-weight: 200;
  font-size: 14px;
  color: #fff;
}

.topheaderbanner .head-contact.mail {
	margin-right: 15px;
}

#copyright {
	margin: auto;
	max-width: 1140px;
}

.container-fluid #copyright {
	border-top: 1px solid #f4f8f017;
}


/*** Header Navigation changes ***/
ul.navbar-nav.ml-auto.ibh-navigation-desktop li.activedropdown a.dropdown-toggle {
  color: var(--main-link-color);
}


.ibh-navigation-desktop .nav-link {
    display: block;
    padding: .5rem 1rem;
}
.ibh-navigation-desktop .dropdown-toggle { 
    display: block;
    padding: .5rem .1rem .5rem .7rem
}

.ibh-navigation-desktop  .nav-itemdropdown,
.ibh-navigation-desktop  .activedropdown,
.ibh-navigation-desktop  .lastdropdown {
	position:relative;
}

.ibh-navigation-desktop .dropdown-menu {
	left:auto;
	margin:200px 0 0 -100px;
	transition: all 0.2s ease-in-out;
	display:block;
	visibility: collapse;
	opacity:0;
	min-width: 210px;
}

.ibh-navigation-desktop .dropdown-menu.show {
	left:auto;
	margin:40px 0 0 0;
	visibility: visible;
	opacity:1;
	transition: all 0.3s ease-in-out;
	box-shadow: 0px 7px 7px -7px rgba(0, 0, 0, 0.21);
}

.ibh-navigation-desktop ul.navbar-nav.ml-auto.ibh-navigation-desktop li a {
    line-height: 23px;
    letter-spacing: .09rem;
    font-size: 90%;
    position: relative;
    font-weight: 500;
}

.ibh-navigation-desktop .dropdown-menu ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
}
.ibh-navigation-desktop .dropdown-menue.show a {
	color: var(--main-link-color)!important;
	font-size: var(--main-font-size);
}

ul.navbar-nav.ml-auto.ibh-navigation-desktop ul a,
ul.navbar-nav.ml-auto.ibh-navigation-desktop ul li.active a,
ul.navbar-nav.ml-auto.ibh-navigation-desktop ul a:hover {
    line-height: 16px;
    font-size: calc(var(--main-font-size) - 0.35rem);
	letter-spacing: .01rem;
    text-transform: none;
    padding: 8px 18px;
}

ul.navbar-nav.ml-auto.ibh-navigation-desktop ul a {
	color: var(--main-headline-color);
}

ul.navbar-nav.ml-auto.ibh-navigation-desktop ul a:hover {
	color: var(--main-link-color);
}