/* configurator */
#configurator {
	margin: 0 auto;
	width: 100%;
}

#c__h1{
	margin: 0 0 0.5em 0;
	padding: 0;
	font-family: 'Open Sans Semibold', Arial, sans-serif;
	font-size: 1.75em;
	line-height: 1.1429em;
	/*color: #0084cd;*/
}

/* canvas */

#c__canvas{ margin: 0 0 1.4em 0; }
.no-js #c__canvas { display: none; }
#c__canvas:after {
	content: '';
	display: block;
	clear: both;
}

.configurator-column {
	float: left;
	width: 30%;
}
.configurator-column.c--first { margin: 0 3% 0 0; }
.configurator-column.c--last { margin: 0 0 0 3%; }
.configurator-column { margin: 0 1.5%; }

.configurator-legend,
.configurator-thead {
	margin-bottom: 1.4em;
	text-align: center;	
	font-weight: 900;
    line-height: 1.5em;
}

.configurator-tbody {
}

.configurator-element {
	display: block;
	position: relative;
	margin: 0 0 1.4em 0;
	border: 1px solid #0084cd;
	border: 1px solid #000;
	color: #0060b0;
	cursor: pointer;
}
.configurator-element.c--selected { color: #00b060; }
.configurator-element:before {
	content: '';
	display: block;
	padding-bottom: 75%;
}
.configurator-element.c--selected:after {
	content: '\2714';
	display: block;
	position: absolute;
	top: 0;
	right: -0.25em;
	bottom: auto;
	left: auto;
	margin: 0;
	border: 0;
	padding: 0;
	width: 100%;
	height: 1em;
	text-align: right;
	font-size: 6em;
	line-height: 1em;
	color: #00b060;
	background: transparent;
	opacity: 0.8;
}
.c--cat-1 .c--cat-2:after,
.c--cat-2 .c--cat-1:after ,
.configurator-element.c--deactivated:after {
	content: '';
	display: block;
	position: absolute;
    margin: auto;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 0;
    width: 100%;
    height: 100%;
	background: #0060b0;
	background: #0084cd;
	opacity: 0.33;
}
.c--cat-0.c--deactivated:after {
	content: '';
	display: block;
	position: absolute;
    margin: auto;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 0;
    width: 100%;
    height: 100%;
	background: transparent;
	opacity: 0.33;	
}

.configurator-image {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	margin: 0;
	border: 0;
	padding: 0;
	width: 100%;
	height: auto;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;	
}

.configurator-description {
	position: absolute;
	bottom: 0.125em;
	left: 1%;
	width: 98%;
	font-size: 0.8125em;
	line-height: normal;
	text-align: center;
	color: inherit;
	background: #fff;
	background: rgba(255, 255, 255, 0.75);
}
.c--cat-1 .c--cat-2 .configurator-description,
.c--cat-2 .c--cat-1 .configurator-description{
	text-decoration: line-through;
}

/* form */
.no-js #c__form { display: none; }

.configurator-fieldset {
	overflow: hidden;
	margin: 0 0 1.4em 0;
	border: 0;
	padding: 0;		
}

.configurator-label {
	float: left;
	display: block;
	position: relative;
	margin: 0 2% 0 0;
	padding: 0;
    width: 48%;
}
.c--fullwidth { width: 100%; margin: 0; }
.configurator-label:nth-child(2n+1){
	float: right;
	margin: 0 0 0 2%;
}

.configurator-input {
	box-sizing: border-box;
	margin: 0 0 1.4em 0;
	border: 1px solid #0084cd;
	border: 1px solid #000;
	padding: 0.35em 0.7em;	
	width: 100%;
	font-size: 1em;
	line-height: 1.5em;
	color: #0060b0;
	background: transparent;
}
.configurator-input:required{
}
.configurator-input:invalid {
	border: 1px solid red;
}
.configurator-input:placeholder-shown {
    border: 1px solid #0084cd;
    border: 1px solid #000;
}
.configurator-input:not(:placeholder-shown) {
    border: 1px solid #0084cd;
	border: 1px solid #000;
}
.configurator-input:valid {
	border: 1px solid #0084cd;
	border: 1px solid #000;
}

.configurator-placeholder {
	display: none;
	position: absolute;
	top: 0;
	left: 0;
	padding: 0.35em 0.7em;
	color: #c0c0c0;
}
#configurator ::-webkit-input-placeholder { color: #c0c0c0; }
#configurator ::-moz-placeholder { color: #c0c0c0; }
#configurator :-ms-input-placeholder { color: #c0c0c0; }
#configurator :-moz-placeholder { color: #c0c0c0; }

.configurator-textarea {
	box-sizing: border-box;
	margin: 0 0 1.4em 0;
	border: 1px solid #0084cd;
	border: 1px solid #000;
	padding: 0.35em 0.7em;	
	width: 100%;
	font-size: 1em;
	line-height: 1.5em;
	color: #0060b0;
	background: transparent;	
}

.configurator-button {
	box-sizing: border-box;
	display: block;
	margin: 0 auto 1.4em auto;
	border: 1px solid #0084cd;
	padding: 0.35em 0.7em;
	font-size: 1em;
	line-height: 1.5em;	
	color: #fff;
	background: #0060b0;
	background: #0084cd;
	cursor: pointer;
}

/* contact */
#c__contact { display: none;}

/* miscellaneous */
#services .printLink{display:none;}