/*********************************************
	LAYOUT
 
**********************************************/

/*********************************************
	Colors:
		red:        #FF0317
		light-grey: #DBE0E3
		grey:       #CBCBCB
		mid-grey:   #B1B1B1
		dark-grey:  #656565
		table-line: #C1C3C3
		beige:      #f2f1f1
 
**********************************************/

body {
	font-family: "Roboto", Arial, Helvetica, sans-serif;
	font-weight: 300;
	min-width: 320px;
	line-height: 130%;
	font-size: 14px;
	
}

main p a {
	color: #FF0317;
	font-weight: bold;
	text-decoration: none;
}
main p a:hover {
	border-bottom: 1px solid #FF0317;
}
main p a::AFTER {
	content: "\00a0\>>";
/* 	content: "\00a0\»"; */
	display: inline;
}
main p a[href^="mailto:"]::AFTER,
main p a[href^="tel:"]::AFTER {
	content: "";
	display: none;
}

main p a[href^="mailto:"],
main p a[href^="tel:"] {
	white-space: nowrap;
}

.a {
	display: inline-block;
	height: 0;
	position: relative;
	top: 0;
	margin: 0;
	padding: 0;
	visibility: collapse;
}

form * {
	font-family: "Roboto", Arial, Helvetica, sans-serif;
	font-weight: 300;
}

h1, h2, h3, h4, h5, h6 {
	margin: 0.5em 0;
	font-weight: bold;
}

h1 {
	font-size: 57px;
	line-height: 130%;
	color: #FFF;
	text-shadow: 0px 0px 5px rgba(0,0,0,0.35);
	letter-spacing: 1px;
	font-size: 7vw;
}

h2 {
	font-size: 29px;
	line-height: 32px
}

h3 {
	margin: 0.5em 0 0;
}
h3.material {
	color: #FF0317;
	font-size: 29px;
}

h4 {
	font-size: 22px;
	font-weight: bold;
	margin-bottom: 0.4em;
	line-height: 1.2em;
}

figcaption.image-caption {
	font-size: 15px;
	margin-bottom: 9px;
	padding: 0 15px;
	line-height: 2em;
	
}

.frame-type-image.frame-layout-1 figcaption.image-caption {
	margin-top: 5px;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	padding: 0;
	line-height: 1.35em;

	-moz-hyphens:none; -o-hyphens:none; -webkit-hyphens:none; -ms-hyphens:none; hyphens:none;
}

h5 {
	font-size: 16px;
	border-bottom: 2px solid #C1C3C3;
}

h6.wor {
	background: #FF0317;
	color: #FFF;
	margin-top: 0;
	font-size: 100%;
	padding: 0 22px;
	letter-spacing: 1px;
}

.ce-textpic .ce-bodytext,
.padding {
	padding-left: 15px;
	padding-right: 15px;
}

.frame-type-gridelements_pi1.frame-layout-1,
.frame-type-gridelements_pi1.frame-layout-2,
h6.wor,
.ce-textpic {
	margin-left: -15px;
	margin-right: -15px;
}

.content-container {
	position: relative;
	margin-left: 20px;
	margin-right: 20px;
	max-width: 1200px;
}


header, main, article, aside, footer {
	position: relative;
}

#header, #footer {}
#header, #breadcrumb {}

#header {
	height: 100px;
	margin-top: 20px;
}

#logo {
	display: block;
	z-index:10;
	width: auto;
	position: relative;
}
#logo img {
	width: 40vw;
	max-width: 290px;
	min-width: 190px;
	height: auto;
}

#banner {
	position: relative;
	text-align: center;
	overflow: hidden;
}
#banner.no-image {
	width: 100%;
	height: 20vw;
	min-height: 150px;
	max-height: 275px;
	background: #FF0317;
}
#banner .banner-image {
	position: relative;
}
#banner .banner-text {
	position: absolute;
	width: 100%;
/* 	bottom: 2em; */
	bottom: 0;
	padding: 0 1em;
}
main {
	padding-top: 35px; 
	margin-bottom: 35px;
	line-height: 1.5;
	font-size: 15px;
}

#footer {
	background: #B1B1B1;
	padding: 25px 0 40px;
}
#footer-tel {
	color: #FFF;
	font-weight: bold;
	font-size: 29px;
	text-align: center;
	margin-top: 10px;
	line-height: 150%;
}
#footer-tel .icon {
	margin-top: -6px;
}
.row {
	position: relative;
	margin: 0 -11px;
}
.grid {
	position: relative;
	width: 100%;
}

.frame-type-gridelements_pi1.frame-layout-1 {
	background: #DBE0E3;
}
.frame-type-gridelements_pi1.frame-layout-2 {
	background: #FF0317;
}
.frame-type-gridelements_pi1.frame-layout-2 a {
	color: inherit;
	font-weight: inherit;
}
.frame-type-gridelements_pi1.frame-layout-2 a:hover {
	color: #FFF;
}
.frame-type-gridelements_pi1.frame-layout-2 h2, 
.frame-type-gridelements_pi1.frame-layout-2 h3, 
.frame-type-gridelements_pi1.frame-layout-2 h4 {
	color: #FFF;
}

.frame-type-gridelements_pi1.frame-layout-3 {
	background: #B1B1B1;
}

.frame-type-gridelements_pi1.frame-layout-4 {
	background: #f2f1f1;
}

article.grid > .frame-type-gridelements_pi1.frame-layout-1,
article.grid > .frame-type-gridelements_pi1.frame-layout-2,
article.grid > .frame-type-gridelements_pi1.frame-layout-3,
article.grid > .frame-type-gridelements_pi1.frame-layout-4 {

}

.frame-padding {
	padding: 15px 22px;
}
.grid-25, .grid-33, .grid-50, .grid-66 {
	padding: 0 26px; /* 11+15 */
	margin: 0 0 30px 0;
}

.backend_layout_pagets__aside main > .row > aside.grid > .frame,
.backend_layout_pagets__aside main > .row > article.grid > .frame {
	margin-left: -15px;
	margin-right: -15px;
}

/*###############################
  PREVIEW ONLY (???)
#################################*/
.badges { margin: 0 auto; text-align: center;}
.badges .ce-row { overflow: hidden; }
.badges .ce-column { float: left;
	position: relative;
	margin: 15px;
	width: 12vw; max-width: 135px; 
	display: block;
	overflow: hidden;
}
.badges .image img { display: block; display: block; width: 100%; height: auto }


.ce-table {
	border-collapse: collapse;
}
.ce-table th, .ce-table td {
	border-top: 0;
	border-bottom: 2px solid #C1C3C3;
	padding: 2px 1em 2px 0;
}

.frame-layout-1 .ce-table, .ce-table.materials-table {
	font-weight: bold;
	margin-bottom: 0.75em;
}


.tx-usermaterials-list-item {
	margin-bottom: 3em;
}
.tx-usermaterials-characteristic {
	margin-bottom: 2em;
}
.tx-usermaterials-datasheet {
	margin-bottom: 2em;
}

/************************************
	flickity
*************************************/
/* external css: flickity.css */

.carousel {
	margin: 1.5em -15px;
}
.carousel-cell {
	width: 100%;
	text-align: center;
}
.carousel-cell > div {
	width: auto;
	margin: 0 auto;
	display: inline-block;
	overflow: hidden;
}
.carousel img {
  display: block;
  height: 200px;
  width: auto;
  
  height: auto;
  width: 100%;
}
.carousel-cell-title {
/* 	letter-spacing: 1px; */
	line-height: 2em;
	text-align: left;
	padding: 0 15px;
}

.contact-flags {
/* 	position: absolute; */
	float: right;
}

.contact-flags .icon {
	display: inline-block;
	text-align: right;
	border: 1px solid #fff;
	margin-left: 8px;
}


/*******************************************
 * Forms
 ******************************************/
main input,
main select {
	width: 100%;
	max-width: 400px;
	border: 0;
	padding: 10px 10px;
	border: 1px solid #DBE0E3;
	text-align: center;
	margin-bottom: 1em;
	display: block;
}
main input[type=text] {
	
}
main select {
	
}

main input[type=submit] {
	background: red;
	color: #fff;
	font-weight: bold;
}



/*******************************************
 * Productfinder
 ******************************************/
.tx_usermaterials_productfinder__form {
	margin-bottom: 3em;
}

.tx_usermaterials_productfinder__form input.submit {
	cursor: pointer;
}
.tx_usermaterials_productfinder__form input.submit[disabled] {
	opacity: 0.5;
	cursor: not-allowed;
/* 	color: #eee; */
}


/******************************
 OVERWRITE Image rows - hotfixes
******************************/
.ce-row { overflow: visible; }
.ce-column:last-child { margin-right: 20px; }
.ce-gallery img {
	max-width: 100%;
	height: auto;
}




