/***************** Allgemein *******************/
html {
	min-height: 100%;
	position: relative;
}

body {
	font-family: Arial,'Helvetica Neue',Helvetica,sans-serif;
    font-size: 14px;
}

.itbverstecken {
	display: none;
}

.itbpunktpunktpunkt {
	white-space: nowrap; 
    overflow: hidden;
    text-overflow: ellipsis; 
}

.itb-ohne-padding {
	padding-right: 0;
	padding-left: 0;
}

.itb-flexbox-container {
	display: flex;
	display: -webkit-flex; /* Safari */
	display: -moz-flex; /* Safari */
	display: -ms-flex; /* Safari */
	flex-flow: row wrap;
	-webkit-flex-flow: row wrap; /* Safari 6.1+ */
	-moz-flex-flow: row wrap; /* Safari 6.1+ */
	-ms-flex-flow: row wrap; /* Safari 6.1+ */
}

.itb-flexbox {
	height: 100%;
}

.itb-out-of-the-flexbox {
	margin-bottom: 20px;
}

.img-thumbnail, .thumbnail {
	background-color: #fff;
	max-height: 260px;
}

.itb-dyn-ellipsis {
	width: 20rem;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.itb-totop {
	z-index: 20;
	position: fixed;
	bottom: 0;
	right: 10px;
}

.itb-totop .btn {
	border-bottom-right-radius: 0;
	border-bottom-left-radius: 0;
	
}

.itb-social {
	margin-top: 6px;
}

.itb-navbar-oben {
    margin-left: 120px;
}

/***************** Progressbar *******************/

/* mit runden Bobbeln */
.step {
	width: 40px;
	height: 40px;
	border-radius: 20px;
	color: #fff;
	font-weight: bold;
	font-size: 16px;
	text-align: center;
	margin: 0 auto;
	
}

.step-active {
	background-color: #2d3b83;
}

.step-next {
	background-color: #999;
}

.step-done {
	background-color: #666;
}

.step-done a {
	color: #fff;
	text-decoration: none;
}

/* Bobbel und Schatten */
.itb-progresspart-number {
	padding: 30px 0 0 0;
	height: 70px;
	font-size: 16px;
	font-weight: bold;
	line-height: 40px;
}
	

.itb-progresspart-text {
	padding: 10px 0 0 0;
	font-size: 14px;
	font-weight: bold;
}

.itb-progresspart-number,
.itb-progresspart-text {
	float: left;
	width: 16.6%;
}


/********************************************************************************************/
/*************************************** kundenspezifisch ***********************************/
/********************************************************************************************/

/* 	blau: #003E81
	dunkelblau: #00254e
	hellblau: #6699CC
	helles hellblau:#e8eef5
	pink: #e30076
	dunkelpink: #b0005b
*/

a {
	color: #2d3b83;
}

h1, h2, h3 {
	color: #2d3b83;
}

h1 {
	font-size: 3rem;
}

h2 {
	font-size: 2.7rem;
}

h3 {
	font-size: 2.3rem;
	font-weight: bold;
}

.panel-default,
.panel-primary {
    border: 0;
    box-shadow: 0 2px 5px rgba(0,0,0,.26);
}

.panel-primary>.panel-heading,
.panel-default>.panel-heading {
	background-color: #fff;
	border-bottom: 3px solid #90b6e4;
	font-weight: bold;
}

.panel-primary>.panel-heading {
    color: #fff;
    background-color: #003E81;
    border: 0;
    
}

.panel-primary>.panel-heading a {
    color: #fff;
}

/*##### Für die Panels in den Mitaussteller Über-Panels #####*/
/*.panel.panel-default .nested {
	box-shadow: none!important;
	border: 1px solid #dddddd;
}*/

.collapse {

}

.panel-default.no-shadow {
	box-shadow: none!important;
}
.panel-default>.panel-heading.no-border {
	border-bottom: none!important;
}

.panel-heading.with-shadow {
	box-shadow: 0 2px 5px rgba(0,0,0,.26);
}

.btn {
	white-space:normal !important;
	word-wrap: break-word;
	text-align: left;
}

.btn.btn-primary {
	border: none!important;
}


.text-primary {
	color: #2d3b83;
}


.itbheaderrahmen {
	background-color: #FFFFFF;
	height: 50px;
}

.itb-vglogo {
	margin-top: 18px;
}

.itb-vglogo img {
	z-index: 5;
	position: absolute;
	width: 100px;
	height: 100px;
	border: 1px solid #fff;
}

/* Footer */

.itbfooter {
	border-top: 10px solid #90b6e4;
	padding: 20px 0;
}

.itb-klapp {
	border: 0;
	
}

.itb-klapp .panel-heading {
	background-color: #fff;
	color: #003E81;
    font-weight: 700;
    border-bottom: 2px solid #90b6e4;
}

.itb-klapp .panel-heading h2 {
	font-size: 22px;
	font-weight: 700;
}

.itb-klapp .panel-default {
	border: 0;
	margin-bottom: 15px;
	box-shadow: 0 2px 5px rgba(0,0,0,.26)
}

.itb-klapp .panel-body h4 {
	border-bottom: 1px solid #69c;
}

.itb-serviceleistungen .panel-body {
	padding: 0;
}

.itb-icon {
	margin-top: 10px;
}

.panel-heading.itb-zweite-ebene {
	padding: 15px 15px 15px 45px;
}

.no-border-bottom {
    border-bottom: none !important;
}

.panel-heading.itb-dritte-ebene {
	padding: 15px 15px 15px 75px;
}

.itb-klapp .itb-zweite-ebene-body {
	padding: 15px 15px 15px 45px;
	border-bottom: 2px solid #69c;
}

.itb-klapp .itb-dritte-ebene-body {
	padding: 15px 15px 15px 75px;
	border-bottom: 2px solid #69c;
}

.itb-thumb {
	width: 80px;
}


/* Stand */
.itb-stand {
    width: 60px;
    height: 30px;
    border-width: 2px;
    border-color: #000;
}
/* Standform css */
/* Reihenstand */
.itb-stand-R {
    border-top-style: solid;
    border-right-style: solid;
    border-left-style: solid;
    border-bottom-style: dotted;
}
/* Eckstand */
.itb-stand-E {
    border-top-style: solid;
    border-right-style: dotted;
    border-left-style: solid;
    border-bottom-style: dotted;
}
/* Kopfstand */
.itb-stand-K {
    border-top-style: solid;
    border-right-style: dotted;
    border-left-style: dotted;
    border-bottom-style: dotted;
}
/* Blockstand */
.itb-stand-B {
    border-style: dotted;
}

/* Nomenklaturen */

.itb-erste-ebene {
	background-color: #f5f5f5;
}
.itb-erste-ebene-empty-offset {
    padding-left: 35px;
}

.itb-zweite-ebene {
	background-color: #ebebeb;
	padding-left: 35px;
}

.itb-dritte-ebene {
	background-color: #dedede;
	padding-left: 55px;
}

.itb-toggle {
    width: 20px;
}

.itb-help-block {
    display: block;
    margin-top: 5px;
    margin-bottom: 10px;
}

.itb-vorjahres-daten-applied {
	border-left: 4px solid #f4b747;
}

.itb-uebernommen {
	border-left: 4px solid #FF8C00;
}

/* Karussell */

.carousel-control i {
	position: absolute;
    top: 50%;
    z-index: 5;
    display: inline-block;
}

.carousel-control i.fa-chevron-left {
	left: 50%;
}

.carousel-control i.fa-chevron-right {
	right: 50%;
}

.hmc-form {
    padding: 20px;
    background-color: #cfd9e3;
}


.itb-teaser {
	background-color: #e8eef5;
	margin-top: 50px;
	padding: 30px 0;
}

.itb-teaser-box {
	border: 0;
}

.itb-teaser-box .panel-heading {
	background-color: transparent;
	border-bottom: 0;
}


/****************** verschiedene Formatierungen f�r unterschiedliche Aufl�sungen  ***********************/

/* xs */
@media (max-width: 767px) {
	.itb-teaser {
		margin-top: 30px;
	}
	
	.itbheaderrahmen {
		height: 140px;
	}
	
	.itb-navbar-oben {
	    padding-left: 0;
	    padding-top: 10px;
	    margin-bottom: 0;
	    height: auto;
	}
	
	.itb-klapp .panel-body h4 {
	    margin-left: 0;
	}
	
	.itb-navbar-oben {
    margin-left: 0;
}
	
	.itb-navbar-oben .nav-pills>li>a {
		padding: 10px 15px;
	}
	
	.itb-hover-menu-container {
	    padding: 15px;
	}
	
	.itb-vg-info {
		position: relative;
		padding: 0;
		border-radius: 0;
		margin-left: 0;
		width: 100%;
		background-color: transparent;
	}
	
	.itb-vg-info-bg {
		background-color: #e8eef5;
	}
	
	.itb-vg-info h1 {
		font-size: 14px;
		font-weight: bold;
	}
	
	.itb-vg-info h3 {
		font-size: 12px;
		margin-top: 0;
		font-weight: normal;
	}
	
	.itb-navbar-oben .nav-pills>li>a {
    	padding: 10px;
	}
	
	/* mit runden Bobbeln */
	.step {
		width: 30px;
		height: 30px;
		border-radius: 15px;
		font-size: 16px;
		text-align: center;
		margin-right: 0;
	}
	
	/* Bobbel und Schatten */
	.itb-progresspart-number {
		padding: 15px 0 0 0;
		height: 70px;
		font-size: 16px;
		font-weight: bold;
		line-height: 30px;
	}
	
	.itb-progresspart-number.col-xs-2 {
		width: 15%;
	}
	
	.itb-progresspart-number .col-xs-12 {
		padding-right: 5px;
		width: auto;
	}
	
	.panel-heading.itb-zweite-ebene,
	.itb-klapp .itb-zweite-ebene-body {
    	padding: 15px 15px 15px 30px;
	}
	
	.panel-heading.itb-dritte-ebene {
    	padding: 15px 15px 15px 45px;
	}
	
	.itb-klapp .itb-dritte-ebene-body {
	    padding: 15px 15px 15px 45px;
	}
	
	.itb-klapp .panel-heading {
	    border-bottom: 1px solid #545454;
	}
	
}

/* sm */
@media (min-width: 768px) {
	.itb-teaser {
		margin-top: 30px;
	}
	
	.itb-vg-info {
		position: relative;
		padding: 0;
		border-radius: 0;
		margin-left: 0;
		width: 100%;
		background-color: transparent;
	}
	
	.itb-vg-info-bg {
		background-color: #e8eef5;
	}
	
	.itb-vg-info h1 {
		font-size: 14px;
		font-weight: bold;
	}
	
	.itb-vg-info h3 {
		font-size: 12px;
		margin-top: 0;
		font-weight: normal;
	}

}


/* md */
@media (min-width: 992px) {
	.itb-teaser {
		margin-top: 30px;
	}
	
	/*.itb-vg-info {
		position: absolute;
		z-index: 5;
		background-color: rgba(255,255,255,.9);
		padding: 0 30px;
		border-radius: 0 0 8px 8px;
		margin-left: -15px;
		width: 75%;
	}*/
	
	.itb-vg-info h1 {
		font-size: 20px;
		font-weight: 500;
	}
	
	.itb-vg-info h3 {
		font-size: 16px;
		margin-top: 0;
		font-weight: bold;
	}

}

/* lg */
@media (min-width: 1200px) {
	.itb-teaser {
		margin-top: 30px;
	}
	
	.itb-vg-info h1 {
		font-size: 36px;
		font-weight: 500;
	}
	
	.itb-vg-info h3 {
		font-size: 22px;
		margin-top: 0;
		font-weight: bold;
	}
}


@media print {

	.itbcontent {
		position: relative;
		overflow: visible;
		display: inline;
	}


	.btn {
		display: none;
	}


	img.img-thumbnail {
		width: 80px;
	}

}


.loader {
	border: 4px solid #f3f3f3; /* Light grey */
	border-top: 4px solid #eb881c; /* Orange */
	border-radius: 50%;
	width: 100px;
	height: 100px;
	animation: spin 2s linear infinite;
}

@keyframes spin {
	0% { transform: rotate(0deg); }
	100% { transform: rotate(360deg); }
}
.center-loader {
	margin: 100px auto;
}
@media (min-width: 768px) {
	#mailDialogModal .modal-sm {
		width: 600px;
	}
}

@media (min-width: 1200px) {
	.adressauswahl-modal {
		width: 1100px;
	}
}

@media (min-width: 1600px) {
	.adressauswahl-modal {
		width: 1500px;
	}
}

.btn-eintrag-aendern {
	padding-top: 0;
}

.btn-eintrag-uebernehmen {
	padding-left: 0;
	padding-right: 0;
}

.modal {
	overflow-y: auto;
}

.itb-h-200 {
	height: 290px
}

.itb-p-0 {
	padding: 0 !important;
}

.itb-m-0 {
	margin: 0 !important;
}

.itb-ml-auto {
	margin-left: auto;
}

.itb-mr-auto {
	margin-left: auto;
}

.itb-top-row {
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	align-items: center;
}

.itb-icon-space {
	margin-right: 0.75rem;
}

.itb-mt-1px {
	margin-top: 1px;
}

label {
	font-weight: normal;
}

option[disabled] {
	color: #aaa;
}

.btn:focus, .btn:active:focus, .btn.active:focus, .btn.focus, .btn:active.focus, .btn.active.focus {
	outline: none;
}

.truncate {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.itb-sprachwechsel,
.itb-sprachwechsel a {
	color: #fff;
}

.itb-sprachwechsel {
	padding-top: 15px;
}

.itb-sprachwechsel-aktiv {
	font-weight: bold;
}


/* Stand */
.itb-stand {
	width: 60px;
	height: 30px;
	border-width: 2px;
	border-color: #000;
}
/* Standform css */
/* Reihenstand */
.itb-stand-R {
	border-top-style: solid;
	border-right-style: solid;
	border-left-style: solid;
	border-bottom-style: dotted;
}
/* Eckstand */
.itb-stand-E {
	border-top-style: solid;
	border-right-style: dotted;
	border-left-style: solid;
	border-bottom-style: dotted;
}
/* Kopfstand */
.itb-stand-K {
	border-top-style: solid;
	border-right-style: dotted;
	border-left-style: dotted;
	border-bottom-style: dotted;
}
/* Blockstand */
.itb-stand-B {
	border-style: dotted;
}

.card-header {

	background-color: #ffffff;
	border-bottom: 3px solid #6699CC;
	font-weight: bold;
	padding: 15px;
	border: 0;
	box-shadow: 0 2px 5px rgba(0,0,0,.26);
	margin-bottom: 5px;
}

.card-body {
	background-color: #fff;
	border-bottom: 3px solid #6699CC;
	padding: 15px;
	border: 0;
	box-shadow: 0 2px 5px rgba(0,0,0,.26);

	margin-bottom: 5px;
}

