
/* ----------------------------------------------------------------------------------------------------------------------------------
  xx. Allgemein / Global
---------------------------------------------------------------------------------------------------------------------------------- */

body {

	background-image: url("img/bg-01.jpg");
	background-size: 100% 800px;
	background-position-y: bottom;
	background-position-x: right;
	background-repeat: no-repeat;
}

a:focus {
    outline: none;
}
.color-heizung {
	color: red;
}

/* ----------------------------------------------------------------------------------------------------------------------------------
  xx. Site-Header
---------------------------------------------------------------------------------------------------------------------------------- */
#site-header {
	position: sticky;
	top: 0;
	width: 100%;
	z-index: 1000;
	
	background: #fff;

	transition: all .7s ease;
	box-shadow: 0 1px 25px rgba(0,0,0, .1);
}

#site-header.hide {
	top: -240px;
}

header table td {
	font-size: 14pt;
	line-height: 1.25;
}

/* ----------------------------------------------------------------------------------------------------------------------------------
  xx. Header
---------------------------------------------------------------------------------------------------------------------------------- */
.header-1 {
	/*border-top: 10px solid #fff;*/
}

.header-logo-area {
	padding: 10px 0px 0px 0px;
}

header .static-background {
	max-height: 600px;
	overflow: hidden;
	/*border: 1px solid red;*/
}

header .static-background img {
	width: 100%;
}


/* Slider
-------------------------------------------------- */
.carousel .carousel-item {
    /*height: 1000px;*/
	/*max-height: 800px;*/
	
}

.carousel .carousel-item .carousel-bg img {
	width: 100%;
	/*overflow: hidden;*/
}

.carousel .carousel-item .header-caption {
    position: absolute;
    bottom: 0px;
    width: 100%;
}

.carousel .carousel-item .header-caption  .container {
    padding-left: 0px;
    padding-right: 0px;
}

.carousel .carousel-item .header-caption-img {
    text-align: right;
    padding-bottom: 50px;
	padding-right: 150px;
	/*border: 1px solid red;*/
}

.carousel .carousel-item .header-caption-img img {
    width: 180px;
}

/* indicators */
.carousel .carousel-indicators {
    display: none;
}

/* carousel-control :: full-width */
.carousel .carousel-control-prev,
.carousel .carousel-control-next {
	position: absolute;
	top: 0;
	bottom: 0;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 55px;
	padding: 0;
	color: #fff;
	text-align: center;
	border: 0;
	opacity: 0.5;
	transition: opacity 0.15s ease;
	/*background: red;*/
	margin: 0px 150px;
}
.carousel .carousel-control-prev-icon {
    background-image: url("img/arrow_black_left.png");
    background-size: cover;
    width: 55px;
    height: 55px;
}

.carousel .carousel-control-next-icon {
    background-image: url("img/arrow_black_right.png");
    background-size: cover;
    width: 55px;
    height: 55px;
}


/* ----------------------------------------------------------------------------------------------------------------------------------
  xx. Main-Content
---------------------------------------------------------------------------------------------------------------------------------- */

main {
	min-height: 500px;
	font-size: 13pt;
}
main .row {
	/*padding-bottom: 50px;*/
}

main h2,
main h3,
main h4 {
	color: var(--template-color-3);
}

main h3 {
	font-size: 20pt;
	padding: 0px;
	margin: 0px;
}
main h3 {
	padding-bottom: 18px;
}
main h4 {
	padding-bottom: 14px;
}

main p {
	font-size: 15pt;
	line-height: 1.75em;
}


/* ----------------------------------------------------------------------------------------------------------------------------------
  xx. Menu / Navigation
---------------------------------------------------------------------------------------------------------------------------------- */

.navbar {
	/*padding: 0px !important;
	margin: 0px !important;*/
}

.nav-item {
}
.nav-item a {
	/*padding-left: 15px !important;
	padding-right: 15px !important;*/
	margin-right: 30px !important;
	
}

.nav-item a:focus {
    outline: none;
}

.navbar .navbar-nav .nav-link {
	padding: 10px 20px 10px 0px;
}

.nav-item a.nav-link {
	font-size: 20px;
	font-weight: 600;
}
.nav-item a.nav-link:hover {
	color: white !important;
}
.nav-item a.nav-link.active {
    text-decoration: underline;
    text-decoration-thickness: 4px;
    text-underline-offset: 9px;
}

.nav-item.heizung a.nav-link {
	color: #DA0000 !important;
}
.nav-item.heizung a.nav-link:hover {
	color: white !important;
}

.nav-item.heizung a.nav-link.active {
    text-decoration: underline;
    text-decoration-thickness: 4px;
    text-underline-offset: 9px;
}

.navbar .navbar-toggler {
	padding: 0.5rem 0.75rem 0.25rem 0.75rem;
    color: var(--template-color-3);
    border-color: var(--template-color-3);
	border: 1px solid var(--template-color-3);
}

.navbar-toggler:focus {
	box-shadow: 0 0 0 0.1rem;
}

/* ----------------------------------------------------------------------------------------------------------------------------------
  xx. Banner
---------------------------------------------------------------------------------------------------------------------------------- */
.banner-01 {
	margin: 30px 0px;
	background-color: var(--template-color-1);
	color: var(--template-color-3);
	padding: 10px;
	text-align: center;
}

.banner-01 a {
    color: var(--template-color-3);
}
.banner-01 a:hover {
    color: var(--template-color-2);
}

.banner-02 {
	margin: 30px 0px;
	background-color: var(--template-color-3);
	color: var(--template-color-2);
	padding: 10px;
	text-align: center;
}

.banner-02 a {
    color: var(--template-color-2);
}
.banner-02 a:hover {
    color: var(--template-color-1);
}

/* ----------------------------------------------------------------------------------------------------------------------------------
  xx. Formulare
---------------------------------------------------------------------------------------------------------------------------------- */
.form-control:focus {
	border-color: var(--template-color-1);
	box-shadow: 0 0 0 0.25rem rgba(26, 168, 239, 0.25);
}
.form-check-input:checked {
	background-color: var(--template-color-1);
	border-color: var(--template-color-1);
}


/* ----------------------------------------------------------------------------------------------------------------------------------
  xx. Team
---------------------------------------------------------------------------------------------------------------------------------- */
.team-box {
    position: relative;
    display: inline-block;
	/*border: 1px solid red;*/
	/*height: 265px;*/
}
.team-box .team-block {
    position: absolute;
    z-index: 10;
    margin: 0 auto;
    left: 0;
    right: 0;
    text-align: center;
    bottom: 0;
    width: 100%;
	transition: all 0.3s linear 0s;
	-moz-transition: all 0.3s linear 0s;
	-webkit-transition: all 0.3s linear 0s;
	-o-transition: all 0.3s linear 0s;
    background: rgba(139, 193, 240, 0.90);
	padding: 13px 0;
    font-size: 20px;
    line-height: 20px;
    color: var(--template-color-3);
}
.team-box:hover .team-block {
    background: rgba(24, 29, 130, 0.90);
    color: white;
}



/* ----------------------------------------------------------------------------------------------------------------------------------
  xx. Effekte
---------------------------------------------------------------------------------------------------------------------------------- */
.img-scale {
    overflow: hidden;
}
.img-scale figure {
	overflow: hidden;
	margin: 0px;
}
.img-scale img {
	transform: scale(1);
	-ms-transform: scale(1);
	-webkit-transform: scale(1);
	width: 100%;
	transition: all 2s cubic-bezier(0.23, 1, 0.32, 1) 0s;
	-moz-transition: all 2s cubic-bezier(0.23, 1, 0.32, 1) 0s;
	-webkit-transition: all 2s cubic-bezier(0.23, 1, 0.32, 1) 0s;
	-o-transition: all 2s cubic-bezier(0.23, 1, 0.32, 1) 0s;
}
.img-scale:hover img {
	transform: scale(1.1);
	-webkit-transform: scale(1.1);
	transition: all 2s cubic-bezier(0.23, 1, 0.32, 1) 0s;
	-moz-transition: all 2s cubic-bezier(0.23, 1, 0.32, 1) 0s;
	-webkit-transition: all 2s cubic-bezier(0.23, 1, 0.32, 1) 0s;
	-o-transition: all 2s cubic-bezier(0.23, 1, 0.32, 1) 0s;
}


/* ----------------------------------------------------------------------------------------------------------------------------------
  xx. FancyBox
---------------------------------------------------------------------------------------------------------------------------------- */
.fancybox__thumbs .carousel__slide .fancybox__thumb::after {
	border-color: var(--fancybox-accent-color, var(--template-color-1));
}

.fancybox__progress {
	background: var(--fancybox-accent-color, var(--template-color-1));
}