/*! HTML5 Boilerplate v5.0 | MIT License | http://h5bp.com/ */

html {
    color: #222;
    font-size: 14px;
    line-height: 1.5;
    box-sizing: border-box;
	font-family:"SegoeUI", "Segoe UI", "Droid Sans", "Myriad", "Lucida Grande", "Helvetica Neue", "Arial", sans-serif;
}
*, *:before, *:after {
  box-sizing: inherit;
}
::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

audio,
canvas,
iframe,
img,
svg,
video {
    vertical-align: middle;
}

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

textarea {
    resize: vertical;
}

.browserupgrade {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}

input:focus,
select:focus,
textarea:focus,
button:focus {
    outline: none;
}

/* ==========================================================================
   Author's custom styles
   ========================================================================== */
h1, h2, h3, h4, h5, h6 { margin:0; }
h1 { font-weight:300; font-size:3rem; }
h2, .teilschritt header { font-weight:lighter; font-size:1.8rem; }
h3 { font-weight:600; font-size:1.15rem; line-height:1.2; }
h4 { font-weight:normal; font-size:0.9rem; }
h5 { font-weight:normal; font-size:0.8rem; }
h6 { font-weight:normal; font-size:1rem; }
ul, ol { margin:0px; padding:0px; }


input[type="text"], input[type="number"] { height:30px; width:30%; margin-left:35%; text-align:right; padding:0px 5px 0px 1px; border:1px solid #ddd; background:#fff; }

.ui-spinner { height:30px; width:112px; margin-left:29%; text-align:right; padding:0px; border:0px solid #ddd; background:#fff; border-radius:0;}
.uni .ui-spinner { width:112px; margin-left:38%;}
.ui-spinner input { height:100%; margin: 0 35px 0 0; padding:0; border:0px solid #ddd; width:100%; padding:0 25px; font-size:1rem; background-color:#f6f6f6; }
section > :last-child .ui-spinner input { background:#ffffff; }
section > .uni .ui-spinner input { background:#f6f6f6; }

.ui-spinner .ui-spinner-button {
	top:0px;
	height:30px;
	width:20px;
	border:0px solid #ddd !important;
	cursor:pointer;
	background-image:none;
	background-color:#ffffff;
	border-radius:0 !important;
}
section > div:last-child .ui-spinner .ui-spinner-button {
	background-color:#f6f6f6;
}
section > div.uni .ui-spinner .ui-spinner-button {
	background-color:#ffffff;
}

.ui-spinner .ui-spinner-button:hover {
	background-image:none;
}
.ui-spinner .ui-spinner-down {
	left:0px;
	right:auto;
	border-right:0px solid #eee !important;
}
.ui-spinner .ui-spinner-up {
	left:auto;
	right:0px;
	border-left:0px solid #eee !important;
}

.ui-spinner .ui-icon {
    left: 1px;
    margin-top: -9px;
    position: absolute;
    top: 50%;
	opacity:0.5;
}
.ui-spinner .ui-spinner-button:hover .ui-icon {
	opacity:1;
}


.center { text-align:center; }

.gruen { color:#00BB00 }
.rot { color:#dd0000 }
.gelb { color:#ccaa00 }
.blau { color:#8ABBD1 }
.gross { font-size:1.8rem; font-weight:lighter; }
.mittel { font-size:1.2rem; font-weight:lighter; }
.klein { font-size:0.8rem; }


body { background: url('../img/cirrus.jpg') no-repeat;
	background-size:cover;
	background-attachment:fixed;
	overflow-y:scroll;
}

main {
	width:100%;
	max-width:740px;
	margin:0 auto;
	margin-bottom:1600px;
	position:relative;
}

.eiv-logo {
	position:absolute;
	right:0px;
	top:10px;
	width:140px;
	height:auto;
}
.eiv-logo img {
	width:140px;
	height:auto;
}

.klimaaktiv-logo {
	position:absolute;
	right:145px;
	top:10px;
	width:140px;
	height:auto;
}
.klimaaktiv-logo img {
	width:140px;
	height:auto;
}

.teilschritt {
	margin-bottom:15px;
	position:relative;
}
.teilschrittnummer {
	position:absolute;
	z-index:11;
	left:0px;
	top:0px;
	height:50px;
	line-height:50px;
	width:50px;
	text-align:center;
	color:black;
	background-color:white;
	border-right:1px solid #87ACD8;
	font-weight:300;
	font-size:2em;
}
.teilschrittedit {
	display:block;
	position:absolute;
	z-index:10;
	right:5px;
	top:5px;
	color:white;
	width:40px;
	height:40px;
	background:url("../img/arr-down.png") no-repeat;
	background-position:5px center;
	cursor:pointer;
}
/* .done .teilschrittedit:hover::after {
	content:"Schritt bearbeiten";
	margin-left:40px;
	display:block;
} */
.done footer {
	// cursor:pointer;
}
.start-disable .teilschrittedit {
	display:none;
}


.teilschritt > article {
	background:#ffffff;
	display:none;
	margin-top:5px;
}

header {
	position:relative;
	padding:0 60px;
	height:50px; line-height:47px;
	background-repeat: no-repeat;
	background-color:#fff;
	background-position: right 20px top 18px;
	cursor:pointer;
}
.open .teilschrittedit { display:block; background-image:none;  }
.open.done .teilschrittedit { display:block; background-image:url('../img/arr-up.png') !important;}
.done header {  }
.open.done .teilschrittedit {  }



footer {
	margin-top:5px;
	background:none;
}
footer .ergebnis {
	background:#fff;
	border-top:none;
}
#sy1-erg table,
#sy2-erg table {
	width:100%;
}
#sy1-erg table td:last-child,
#sy2-erg table td:last-child {
	text-align:left;
}



section {
	display:table;
	table-layout: fixed;
	width:100%;
	border-top:1px solid #eee;
}

section.trenner,
footer > section.trenner {
	border-top:1px solid #bbb;
}



section.ergebnis,
footer > section.ergebnis {
	display:table;
	width:100%;
	font-weight:300;
}

section.ergebnis {
	//border-top:3px solid #ccc;
}


section > h3,
section > h4 {
	display:table-cell;
	width:30%;
	text-align:right;
	padding-right:10px;
	vertical-align:middle;
}

section > div {
	display:table-cell;
	//background:#f2f2f2;
	text-align:left;
	vertical-align:middle;
	padding:5px 0;
}
section > div.bhelp,
section > div.bnohelp {
	width:30px;
	cursor:pointer;
	padding:6px 0 !important;
	vertical-align:top !important;
}
section > div.bnohelp {
	cursor:auto;
}

section > div.bhelp > div {
	margin:0 0 0 5px;
	padding-left:1px;
	width:22px; height:22px;
	line-height:20px;
	background:#ccc;
	border-radius:50%;
	font-weight:bold;
	color:white;
}
section > div.bnohelp > div {
	display:none;
}

section > :last-child {
	background:#f6f6f6;
}
section > #kostenanteileDiagrammHeizungB {
	background:#ffffff !important;
}
section.info { padding-left: 60px !important; }
section.info > :last-child {
	background:none;
}

section > div {
	text-align:center;
}
section > div.inputcont {
	text-align:left;
}
section > .uni {
	background:#ffffff;
	// background: linear-gradient(165deg, #eee 0%,  #eee 40%, #ddd 55%, #ddd 100%);
}
section > .bgrot, section > .bgrot:last-child {
	background:#dd0000;
	color:#fff;
}
section > .bggruen, section > .bggruen:last-child {
	background:#00BB00;
	color:#fff;
}
section > .bggelb, section > .bggelb:last-child {
	background:#ffd500;
	color:#000;
}
section > .bgblau, section > .bgblau:last-child {
	background:#8ABBD1;
	color:#fff;
}
section > .interpret {
	border:15px solid white;
	border-radius:20px;
	font-weight:500 !important;
}

input[type="text"].rot {
	border: 1px solid #dd0000;
		color:black;
}
input[type="text"].gruen {
	border: 1px solid #00BB00;
	color:black;
}
input[type="text"].gelb {
	border: 1px solid #ccaa00;
	color:black;
}
input[type="text"].blau {
	border: 1px solid #8ABBD1;
	color:black;
}

footer > section > div {
	padding:0px;
	height:50px;
	line-height:50px;
}

.weitersection {
	display:none;
	text-align:center;
}
.open .weitersection {
	display:block;
}
.open .weitersection.start-hide {
	display:none;
}
.weitersection .uni {
	background:none;

}
.weiterbutton {
	color:white;
	background-color:transparent;
	font-size:1.3rem;
	cursor:pointer;
	text-align:center;
	text-shadow: 0 0 6px #333, 0 0 2px #333;
	width:100%;
	display:inline-block;
	margin-top:5px;
	padding-top:5px;
	height:100px;
	background-image:url("../img/nextstep.png");
	background-position:center 46px;
	background-repeat:no-repeat;
	background-size:45px;
}
.weiterbutton:hover {
	font-size:1.4rem;
	background-size:50px;
}

.zwischenschritt {
	height:75px;
	background-image:url("../img/nextstepsmall.png") !important;
	background-position:center 33px !important;
	background-repeat:no-repeat !important;
	background-size:30px !important;
	vertical-align:top;
	cursor:pointer;
}
.zwischenschritt:hover {
	background-size:33px !important;
	font-size:1.1em;
}


aside {
	display:none;
	background: #f7f7f7;
	background: linear-gradient(to top, #ccc 0%, #f7f7f7 10%);
	border-bottom:1px solid #ccc;
	color:#666;
	padding:20px;
	font-size:0.9rem;
}











.start-hide {
	display:none;
}
.start-disable {
	opacity:0.3;
	pointer-events:none;
}



/**************** Iconformatierung BUTTON / DROPDOWN allgemein *******************/

.bgroup li table,
.bsolo li table,
.dropgroup table {
	width:100%;
}

.bgroup li table tr td,
.bsolo li table tr td,
.dropgroup table tr td {
	height:39px;
	vertical-align:middle;
	text-align:center;
	font-size:0.8rem;
	line-height:1.2;
	font-weight:600;
	color:black;
	padding:0;
}

.bgroup li.small table tr td,
.bsolo li.small table tr td {
	height:24px;
}


/**************** BUTTON-Formatierung aus machvier kopiert ******************/

.bgroup, .bsolo {
	font-size:0;
	vertical-align:top;
	margin:5px 0 5px 0;
}

.bgroup li,
.bsolo li {
	display:inline-block;
	vertical-align:top;
	width:100px; height:100px;
	border:1px solid #eeeeee;
	border-top-width:1px;
	border-bottom-width:1px;
	background-color:#ffffff;
	cursor:pointer;
}

.bgroup li.small,
.bsolo li.small {
	width:66px; height:66px;
	border:1px solid #eeeeee;
}


li table tr td.icon {
	vertical-align:middle;
	border-bottom:1px solid #fff;
	height:60px;
}
li.small table tr td.icon {
	height:40px;
}


li table tr td.icon img {
	display:block;
	max-height:50px;
	margin:auto;
}
li.small table tr td.icon img {
	max-height:25px;
}


.bgroup li:hover,
.bsolo li:hover {
	border:1px solid #bbb;
	width:100px;
	position:relative; z-index:200;
	-webkit-transition: all 0.1s;
	-moz-transition: all 0.1s;
	-ms-transition: all 0.1s;
	transition: all 0.1s;
}
.bgroup li.small:hover,
.bsolo li.small:hover {
	width:66px;
}

.bgroup li:first-child {
}
.bgroup li:last-child {
}
.bsolo li {
}

.bgroup li.selected,
.bsolo li.selected {
	border:1px solid #ddd;
}


.bgroup li.selected table tr:last-child td,
.bsolo li.selected table tr:last-child td {
	background:#ddd;
}


/**************** DROPDOWN-Formatierung ******************/

.dropgroup {
	background:white;
	margin:10px 20px;
	cursor:pointer;
}

.drophead {
	height:40px;
	line-height:40px;
}
.drophead table {border: 1px solid #ddd; }
.drophead table td:last-child {
		background:#ddd;
}

.dropselect {
	list-style-type:none;
	display:none;
}

.dropselect li {
	border-top:1px solid #ddd;
}
.dropselect li:first-child {
	border-top:2px solid #555;
}

.dropicon {
	height:40px;
	width:25%;
}
.dropicon img {
	height:30px;
	width:auto;
}

.dropgroup table tr .droptext {
	text-align:left;
	padding:0 0 0 10px;
}

/**** Infobuttons impressum, druck, info ******/
.infobutton {
	vertical-align:top;
	display:inline-block;
	margin-right:10px;
	width:50px;
	height:50px;
	background-color:white;
	cursor:pointer;

}
#sw-baubook.infobutton {
	width:240px;
	padding:5px 10px 0 50px;
	line-height:1.4;
	background-image:url("../img/bb.png");
	background-repeat:no-repeat;
	margin-right:0;
	margin-left:307px;
}
#baubook div {
	display:inline-block;
	width:45%;
	margin-right:5%;
	text-align:left;
	vertical-align:top;
}
.infobuttonactive {
	border:2px solid #ccc;
}

.infobtton img {
	max-width:80%;
	max-height:80%;
}

.sy1-txt .droptext,
.sy2-txt .droptext {
	font-size:1.2rem;
	line-height:1.2;
	font-weight:300;
}



/* ==========================================================================
   Media Queries
   ========================================================================== */

@media only screen and (max-width: 640px) {

	section > h3, section > h4 {
		display:block;
		width:100%;
		text-align:center;
		padding:5px;
		font-weight:bold;
		background-color:#f6f6f6;
	}

	section > div {
		display:inline-block;
		width:calc( 50% - 2px );
	}
	section > div.inputcont {
		text-align:center;
	}

	section > .uni {
		width:100%;
	}

	section > div.bnohelp {
		display:none;
	}

	h1 {
		font-size:1.7rem;
		margin-bottom:30px !important;
		padding-top:45px !important;
		padding-left:10px !important;
	}

	.eiv-logo {
		right:10px;
	}

	h2, .teilschritt header {
		display:table;
		width:100%;
	}
	h2, .teilschritt header div {
		font-size:1.3rem;
		line-height:1.1;
		display:table-cell;
		vertical-align:middle;
	}

	.ui-spinner {
		margin-left:0%;
	}
	.uni .ui-spinner {
		margin-left:0%;
	}

	.dropgroup {
		/*margin:10px 0px !important;*/
		margin:10px auto !important; /* hjonas */
	}

	.mittel .droptext {
		font-size:0.9rem;
	}

	.weiterbutton {
		height:120px;
		background-position: center 70px;
	}

	section > :last-child {
		background:none;
		border-left:1px solid #f6f6f6;
	}
	section > :last-child .ui-spinner input {
		background-color:#f6f6f6;
	}
	section > div:last-child .ui-spinner .ui-spinner-button {
		background-color:#ffffff;
	}

	section > .interpret {
		font-size:1rem;
	}

}


/* ==========================================================================
   Helper classes
   ========================================================================== */

.hidden {
    display: none !important;
    visibility: hidden;
}

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

.invisible {
    visibility: hidden;
}

.clearfix:before,
.clearfix:after {
    content: " ";
    display: table;
}

.clearfix:after {
    clear: both;
}

.clearfix {
    *zoom: 1;
}

/* ==========================================================================
   Print styles
   ========================================================================== */

@media print {
	body {
		background-image:none !important;
		-webkit-print-color-adjust: economy !important;
	}
	.teilschritt {
		opacity:1 !important;
	}
	.teilschritt > article {
	}
	.teilschritt > header {
		/*margin-top:80px !important;*/
		margin-top: 20px !important;
		color:black !important;
	}
	#schritt1 {
		display:none; /*ganzer heizauswahl-Schritt nicht drucken � ist offensichtlich */
	}

	.bhelp > div,
	.teilschrittnummer,
	.infobutton,
	.ui-spinner-button,
	#head-spacer {
		display:none;
	}

	main > h1, main > h4 {
		color:black !important;
	}

	section > .bgrot {
		background:none !important;
		color:#dd0000 !important;
		font-weight:bold !important;
	}
	section > .bggruen {
		background:none !important;
		color:#00BB00 !important;
		font-weight:bold !important;
	}
	section > .bggelb {
		background:none !important;
		color:#edc500 !important;
		font-weight:bold !important;
	}
	section > .bgblau {
		background:none !important;
		color:#8ABBD1 !important;
		font-weight:bold !important;
	}

	section > :last-child {
		background:none !important;
	}

	.done header {
		display:block;
	}

	.ui-spinner {
		background:none;
	}
	.ui-spinner input, section > .uni .ui-spinner input {
		background:none;
		border:1px solid #bbb;
	}

	main {
		margin-bottom:0px;
	}

	.bgroup li.selected table tr:last-child td,
	.bsolo li.selected table tr:last-child td {
		font-weight: bold;
	}

    *,
    *:before,
    *:after {
        box-shadow: none !important;
        text-shadow: none !important;
    }

	.page-break {
		page-break-before: always;
	}

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group;
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    p,
    h2,
    h3 {
        orphans: 1;
        widows: 1;
    }

    h2,
    h3,
	h4 {
        page-break-after: avoid;
    }
}