/* ********************************************************************** general stuf */
html           { height:    100%; }
html, body     { min-height:100%; margin:0px; padding:0px; width:100%;}
img.pngfix     { behavior: url(js/iepngfix.htc) }
div, header, nav, article, footer, main { position: relative; } /* default for HTML5 tags */
img {border: 0px; vertical-align: middle; }

html { box-sizing: border-box; } /* force border-box model. Now width:300px is REALY 300px in all browsers. */
*, *:before, *:after {  box-sizing: inherit; }

#content img,                                     /* verklein afbeeldingen */
#content table { max-width: 100%; height: auto; } /* en tabellen als ze groter zijn dan de breedte van de content */
#content #container_map img { max-width: none; }  /* BEHALVE BIJ GOOGLE MAPS!!!!! */

/* ************************************************************************* web fonts */
body {-webkit-font-smoothing: antialiased !important;}
@font-face {
  font-family: 'SohoGothicPro-Regular';
  src: url('css/SohoGothicPro-Regular.eot?#iefix') format('embedded-opentype')
			,url('css/SohoGothicPro-Regular.otf')  format('opentype')
			,url('css/SohoGothicPro-Regular.woff') format('woff')
			,url('css/SohoGothicPro-Regular.ttf')  format('truetype')
			,url('css/SohoGothicPro-Regular.svg#SohoGothicPro-Regular') format('svg');
}
@font-face {
  font-family: 'SohoGothicPro-Bold';
  src: url('css/SohoGothicPro-Bold.eot?#iefix') format('embedded-opentype')
			,url('css/SohoGothicPro-Bold.otf')  format('opentype')
			,url('css/SohoGothicPro-Bold.woff') format('woff')
			,url('css/SohoGothicPro-Bold.ttf')  format('truetype')
			,url('css/SohoGothicPro-Bold.svg#SohoGothicPro-Bold') format('svg');
	font-weight: normal;
	font-style: normal;
}

strong, b {
 font-family: 'SohoGothicPro-Bold','SohoGothicPro-Regular', Arial, Helvetica;
}
/* ************************************************************************* container */

/*div#c_v { /* centreer verticaal */
/*	float:left;
/*	width:1px;
/*	height:50%;
/*	margin-bottom:-350px; /* de helft van de hoogte */
/*  border: 1px solid green;   /* */
/*} /* */
/*div#c_h { /* centreer horizontaal */
/*	clear:both; /* t.b.v. c_v */
/*	float:left;
/*	height:1px;
/*	width:50%;
/*	margin-right:-500px; /* de helft van de breedte */
/*  border: 1px solid green;   /* */
/*}*/
#header_content,
#bottom_content,
#container,
#bottom_copy {
	background-color: #FFFFFF;
	width:1000px;
	margin: 0 auto;
/* 	float: left; t.b.v c_h*/
	top: 0px;
}

/* **************************************************************************** header */
#container_header {
	width: 100%;
	height:	300px;
	margin-top: 40px; /*  idem als height container_nav +10*/
/* margin-bottom: 5px; */ /* via .container_home */
}
#XXcontainer_header,
#XXcontainer_header div {
 	border:1px solid red;
}
#header_left,
#header_content,
#header_right {
	height: 100%;
}

#header_left,
#header_right {
	position: absolute;
	top: 0;
	width: 40%;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	display: none;
}
#header_left {
	left: 0;
}
#header_right {
	right: 0;
}
#header_content {
	border-left: 5px solid white;
	border-right: 5px solid white;
	background-size: cover;
	/* zie container*/
}

#logo {
	position: fixed;
	margin: 0 auto;
/*	border: 1px solid red; */
	top: 45px;
	margin-left: 13px;
	z-index: 99;
}
#logo img {
	margin-left: 15px;
	width: 150px;
}

#header_content .map {
	width:23%;
	/*height:63%;*/
	position:absolute;
	bottom:0;
	left:0;
	display: none;
/*	border:1px solid red;*/
}
#header_content .map img {
	width:100%;
	height:auto;
	max-width:100%;
}
.banner_item {
	clear: both;
	background-color: yellow;
/*	border: 1px solid red;/* */
	float: right;
/*	height: 65px;
	margin: 7px 18px 0 0;
	width: 360px;*/
	text-align:center;
	height: 22%;
	margin: 0.7% 0 0 0;
	text-align: center;
	width: 36%;
}
#banner_item_1 { background: #FDC200; } 
.cta_maintenance,
#banner_item_2 { background: #5E6333; } 
.cta_where_to_buy,
#banner_item_3 { background: #CB4513; } 
#banner_item_4 { background: #6A2773; } 

.banner_item div {
	position: absolute;
	overflow: hidden;
	width: 0px;
	top: 0;
	bottom: 0;
	right: 100%;
	border: inherit;
	background-color: inherit;
	height: 100%;
	padding: inherit;
	z-index:102;
}
.img_banner {
	position: absolute;
	width: 100%;
	height: 100%;
	display: none;
}
.banner_item h1,
.banner_item h2 {
	padding: 0 10px;
	color: white;
	white-space: nowrap;
	font-size: 28px;/* !important; */
	margin: 15px 0;
	text-shadow: 0 1px 3px rgba(0, 0, 0, 0.7);
	letter-spacing: -0.015em;	
}
.banner_item h2 {
	font-size: 18px;/* !important; */
	margin: 22px;
}
.banner_item a {
	text-decoration: none;
}

/* ****************************************************************************** home */
#logo_home {
	position: fixed;
	margin: 0 auto;
/*	border: 1px solid red; */
	top: 50px;
	margin-left: 13px;
	z-index:99;
}
#content .group,
#content .group_g {
	cursor: pointer;
	font-weight: bold;
}

.group .row,
.group_g .row {
  display: table-row;
}

.group,
.group_g,
.group_text {
	float:left;
	width:16%;
	height: 290px;
	margin: 0 0 0.6% 0.6%;
	overflow: hidden;
  display: table;
	table-layout: fixed;
}

.group_g,
.group_text {
  height: 340px;
  margin-right: 2%;
	margin-top: 2%;
  width: 20%;
	max-width: 200px;
/*	position: fixed;*/
}
.container_home .group_g,
.container_home .group_text {
	height: 1px;
	margin-top: 0;
}
.group_webshop .container_home .group_g {
	width: 14%;
}
.group_text {
	margin-top: 95px;
}
.grouptxt,
.grouptxt_g {
	height: 80px;
  display: table-cell;
  vertical-align: middle;
	text-align: center;
	padding: 5%;
	font-size: 23px;
	line-height: 90%;
	font-family: 'SohoGothicPro-Bold',Arial, Helvetica;
	letter-spacing: -0.01em;
}
.grouptxt_g {
	font-size: 28px;
}
.groupnav,
.groupnav_g {
	background-color: white;	
	text-align: center;
	font-weight: normal;
	clear: both;
}
.groupnav li,
.groupnav_g li {
	margin: 0;
}

.group:nth-child(6) {
	margin-right:0px;
}

.home_img,
.home_img_g {
	width:100%;
	height: 210px;
	background-repeat: no-repeat;
	background-size: 105%;
	background-position: center center;
}
.home_img_g {
	height: 255px;
	background-size: 100%;
}
.home_img:hover {
	background-size: 120%;
}
.home_img,
.home_img_g,
.home_img:hover {
	-moz-transition:    background-size 0.3s ease-in;
	-webkit-transition: background-size 0.3s ease-in;
	-o-transition:      background-size 0.3s ease-in;
	transition:         background-size 0.3s ease-in;
}

.home_touring_city     { background-color: #BE9F55; }
.home_mtb              { background-color: #E53330; }
.home_road_cross       { background-color: #8E72AB; }
.home_bmx_track_fixie  { background-color: #FFDB07; }
.home_e_bike           { background-color: #0E9FE3; }
.home_trekking         { background-color: #C7E3D3; }

.home_chain            { background-color: #CDD422; }
.home_connector        { background-color: #E05915; }
.home_extra            { background-color: #C2DDE6; }
.home_tools            { background-color: #C7AD88; }

.home_order            { background-color: #009FE3; }


#container_content .container_home #content {
/*	display: none; */
}

/* ******************************************************************************* nav */
#container_nav {
	position: fixed;
	z-index:101;
	left: 0;
	top: 0;
	background-color: #009FE3;
  width: 100%;
  height:  40px;
}

/* *************************************************************************** content */
#content_left {
  text-align: center;
}
.ajax>#content_left {
	display:none;
}

.nowrap { white-space: nowrap; }

#container_content   {
	clear: both;
  width: 100%;
	
	overflow: hidden;
/* 	border:1px solid black; /* */
}
#container_content             { margin-top:50px; }
.container_home                { margin-top:5px !important; }
.group_webshop .container_home { margin-top:50px !important; }

#content   {
	top: 0px;
	width: 100%;
/*	margin-bottom: 5px;
/*	min-height: 330px; */
/*   border:1px solid blue; /* */
}

.content_right { /* identical to chain */
	width: 77%;
	margin-right: 0.4%;
	float: right;
}

.ajax>.content_right {
	width: 99%;
}


h1.first {
  border-bottom: 1px solid #b5e3f7;
  margin-bottom: 30px;
  padding: 15px 0 10px 0;
}

.product_img_list {
	height: 105px;
	width: 100%;
	max-width: 245px;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	border-right: 10px solid white;
}

.sprXXXocket .product_img_list {
	height: 200px;
	background-size: auto 90%;
}
#breadcrumb {
	position: absolute;
	top: 5px;
	left: 0px;
}
#breadcrumb,
#breadcrumb a,
#breadcrumb a:link,
#breadcrumb a:visited,
#breadcrumb a:active,
#breadcrumb a:hover             {color: #888888; border: 0px transparent; text-decoration: none;}
#breadcrumb a:active,
#breadcrumb a:hover             {color: #333399; text-decoration: underline; }

.instruction td:first-child { padding-right: 8px; }

.booklet { width: 80%; border: 1px solid #000000; } 
.booklet th { background-color: #009fe3; font-size: 15px; font-weight: bolder; color: white; text-align: left;padding: 2px 2px 2px 4px; }
.booklet td { padding-left: 4px; border-left: 1px solid #9C9B9B;}
.booklet td:first-child { border-left: none;}
.booklet tr:nth-child(odd) { background-color: #c0e4fb; width: auto; }
.booklet.vertical tr:nth-child(3) td { border-top: 1px solid #9C9B9B;}

.booklet.vertical tr:nth-child(2) div {
	transform-origin: 100% 80%;
	-ms-transform: rotate(-90deg);
	-webkit-transform: rotate(-90deg);
	transform: rotate(-90deg);
	padding: 5px 0 5px 0;
	border: none;
	white-space: nowrap;
	height: 125px;
	width: 20px;
	left: 80px;	
}
.booklet.vertical tr:nth-child(2) td:first-child {
	-ms-transform: rotate(0deg); /* IE 9 */
	-webkit-transform: rotate(0deg); /* Chrome, Safari, Opera */
	transform: rotate(0deg);
	vertical-align: bottom;
	padding-left: 4px; 
}
#model_info1 {
	padding: 8px 0 10px 0;
	color: red
}
/* ***************************************************************************** hover */
.hover {
	padding: 3px;
	-moz-transition:    all .4s ease-in-out;
	-webkit-transition: all .4s ease-in-out;
	-o-transition:      all .4s ease-in-out;
	transition:         all .4s ease-in-out;  
}
.hover td {
	padding-top:    3px;
	padding-bottom: 6px;
}
.hover td:first-child {
	padding-left: 3px;
}
.hover td:last-child {
	padding-right: 3px;
}
.hover:hover {
	background-color: #f0faff;	
}

/* *************************************************************************** chain table */
#content .chain {
	width: 100%;
}
#content .chain a {
	color: inherit;
	text-decoration: none;
}
#content .chain td:first-child {
	width: 32% !important;
	background-color: #FFFFFF !important;
}
#content .chain td:nth-child(2) {
	width: 27%;
}
/*
.chain td:sec {
	width: 1%;
	background-color: #FFFFFF !important;
}
*/
.chain tr:hover {
	background-color: #E5F6FD;
}
.chain tr:first-child td {
	border-top: 1px solid #B5E3F7;
}
.chain td {
	border-bottom: 1px solid #B5E3F7;
	vertical-align: top;
	padding-top: 8px;
}
.chain td:not(:first-child) {
	padding-left: 10px;
}
/*.chain img {
	margin-right: 20px;
}*/
.chain_img .bg {
	position: absolute;
	top: 0;
	left: 0;
	cursor: pointer;
}

.cta,
.product_left,
.product_right {
	width:370px;
	max-width: 100%;
	float: left;
}

.product_img,
.product_img_nozoom,
.product_info {
	min-height:350px; /* identiek aan breedte met Jquery 	var cw = $('.child').width(); $('.child').css({'height':cw+'px'}); */
	margin-bottom: 40px;
}
.product_img,
.product_img_nozoom {
	width:100%;
	border:1px solid #b5e3f7;
	background-position: 45% 50%;
	background-repeat: no-repeat;
}
.zoomWindow:nth-of-type(1),
.product_img,
.product_img_nozoom {
	-webkit-border-radius: 15px;
	-moz-border-radius: 15px;
	border-radius: 15px;
/*	cursor: move; */
}
.product_info {
	padding: 50px 0 0 50px;
}

#missing_link,
#missing_link div {
	width: 100px;
	height: 100px;
	float:right;
	background-position: 50% 50%;
	background-repeat: no-repeat;
}
a.missing_link {
	color: black;
}

.product_mlinks {
	padding-left: 21px;
	padding-left: 50px;
}
.cta {
	height: 55px;
	margin: 30px 21px 50px 0;
	text-align:center;
	cursor: pointer;
}
.cta_where_to_buy {
	margin-right: 0;
}
.cta h1 {
	color: white;
	white-space: nowrap;
	font-size: 26px !important;
	margin: 0;
	line-height: 1.2em;
}
.cta a {
	color: white;
	text-decoration: none;
}

.bottom_filler {
	clear: both;
	height: 25px /* height #bottom + extra ruimte*/
/*   border:1px solid blue; /* */
}
.container_home .bottom_filler {
	height: 5px /* height #bottom + extra ruimte*/
}
/* ************************************************* klikbare elementen (zie footer.js) */
.addChildClick,
.addChildClickNew,
.addLastChildClick,
.addLastChildClickNew { cursor: pointer; }

/* **************************************************************************** bottom */
#bottom {
	clear: both;
  width: 100%;
	background-color: #DFF3FE;
/*	overflow: hidden; /*Safety check ivm fix_height*/
/* 	border:1px solid blue; /* */
}

#bottom_bgs {
	position: absolute;
	top:0;
}

.bottom_touring_city     { background-color: #D5E1DF; }
.bottom_mtb              { background-color: #DCD6D7; }
.bottom_road_cross       { background-color: #CDDAF0; }
.bottom_bmx_track_fixie  { background-color: #DFECDE; }
.bottom_e_bike           { background-color: #C0E4FB; }
.bottom_trekking         { background-color: #AED7D0; }

#bottom_content {
	background-color: transparent;
	font-size: 14px;/* !important; */
}
#bottom_content .group {
	padding: 10px;
}
#bottom_content a {
	color: #000000;
	text-decoration: none;
}

#bottom_copy {
  height: 24px;
  text-align: right;
  color: #b2b2b2;
}

#social {
  position: absolute;
	bottom: 5px;
	right: 5px;
}

/* ****************************************************************************** list */
.date {
	margin: 0px;
	float: right;
	white-space: nowrap;
}
div.multipage {
	width:100%;
	float: left;
	text-align:center;
	font-weight: bold;
	margin-bottom:5px;
}

a.multipage.on:link,
a.multipage.on:active,
a.multipage.on:visited,
a.multipage.on:hover,
a.multipage:link,
a.multipage:active,
a.multipage:visited,
a.multipage:hover,
a.multipagearrow:link,
a.multipagearrow:active,
a.multipagearrow:visited,
a.multipagearrow:hover {
	display: inline-block;
	text-align: center;
	font-size: larger;
	line-height: 150%;
	background-color: #FFFFFF;
 	text-decoration: none;
	border:1px solid #999999;
	padding: 0 5px 0 5px;

  border: 1px solid #1e4680;
  background: #009fe3 none repeat scroll 0 0 padding-box;
  box-shadow: 0 -2px 0 0 #1e4680 inset;
	color: #ffffff;
}
a.multipagearrow.hide {
	color: #009fe3;
}
div.multipage a:not(:last-child) { /*  */
	border-right: none !important;
}
a.multipagearrow:link,
a.multipagearrow:active,
a.multipagearrow:visited,
a.multipagearrow:hover {
	padding: 0 10px 0 10px;
}
a.multipagearrow.prev {
	-moz-border-radius-topright: 20px;	
	-moz-border-radius-bottomright: 20px;	
	border-bottom-left-radius: 20px;
	border-top-left-radius:    20px;
}
a.multipagearrow.next {
	-moz-border-radius-topleft: 20px;	
	-moz-border-radius-bottomleft: 20px;	
	border-bottom-right-radius: 20px;
	border-top-right-radius:    20px;
}
a.multipage.on:link,
a.multipage.on:active,
a.multipage.on:visited,
a.multipage.on:hover {
  background-color: #EEEEEE;
	color: #BEBEBE;
}
/* ***************************************************************************** forms */
#reactieform { width:90%; }
#contactform { width: 410px; }

#contactform p,
#reactieform p {
	clear: left;
}
#contactform label,
#reactieform label {
  width: 140px;
  float: left;
  text-align: left;
  margin: 5px 1px 5px 0px;
/*  background: #888888; /* */
}
#contactform select,
#contactform input,
#contactform textarea,
#reactieform select,
#reactieform input,
#reactieform textarea,
input,
textarea {
  background: #eee;
  border: 1px solid #6e7694;
  margin: 5px auto;
  width: 260px;
}
#contactform select {
		height: 17px;
		width : 200px;
    font-size: 11px;
		background: #EEEEEE;
		border: 1px solid #777777;
		margin: 1px 0.7%;
		padding-right:2px;
		padding-left: 2px;
}
#contactform button,
#contactform select,
#contactform .autowidth {
		width : auto;
}

#contactform select {
		padding-right:0px;
}
#contactform textarea {
		margin-left: 0px;
		height:100px;
		width: 260px;
}
#contactform .checkbox {
		height: auto;
		width : auto;
		background: none;
		border: none;
		margin: 2px 2px 0px 2px;
}

#searchbox {
	position: absolute;
	right: 7px;
	top: -4px;
	background-color: #009fe3;
	margin-left: 5px;
	width: 215px;
	z-index: 102;
}
/*#searchbox.en { width: 215px; }*/

#search_inp {
	margin: 2px;
	width: 0px;
	float: right;
	display: none;
	color: #333;
}
.button {
	cursor: pointer;
	background-color: transparent;
	height: 25px;
	width: 25px;
	float: right;
	margin: 0 0 0 5px;
	border: 1px solid #FFFFFF;
	-webkit-border-radius:3px;
	-moz-border-radius:   3px;
	border-radius:        3px;
	padding: 2px;
	box-shadow: 0 1px 4px rgba(0, 0, 0, 0.8);
	background-position: 50% 50%;
}
.button:hover {
	box-shadow:  0    1px 2px rgba(0, 0, 0, 0.8),
							  0   -1px 2px rgba(0, 0, 0, 0.8),
							 -1px -1px 2px rgba(0, 0, 0, 0.8),
							 -1px  1px 2px rgba(0, 0, 0, 0.8);

	-moz-transition:    all .4s ease-in;
	-webkit-transition: all .4s ease-in;
	-o-transition:      all .4s ease-in;
	transition:         all .4s ease-in; 	
}
.button .nr {
	position: absolute;
	top: -6px;
	right: -5px;
	padding-right: 4px;
	padding-left: 4px;
	border-radius: 1em;
	background-color: #e80005;
	color: #fff;
	text-align: center;
	font-size: .75em;
	line-height: 1.4;
}

/* let op linkjes, inputs etc. in deze laag: position:relative; ! */
a {position: relative; }

/* ***************************************************************** guestbook/respond */
.respond_header,
.respond_body,
.respond_footer {
  width:100%;
  padding:2px;
  background-color:#EFF1D8;
/*  border:1px solid blue;/* */
}
.respond_header {
  margin-top:10px;
}
.respond_body {
  background-color:#DFF1C8;
/*  border:1px solid red;/* */
}
.respond_footer {
/*  border:1px solid yellow;/* */
}
/* ------------------------------------------------------------------------ ISSUU hack */
#issuusb-overlay {
	opacity: 0.95 !important;
}

/* ---------------------------------------------------------------------------- Cookie */
#cookie {
	display: none;
	position: fixed;
	left: 0;
	bottom: 0;
	width: 100%;
	min-height: 24px;
	background-color: black;
	background-color: rgba(0, 0, 0, 0.7);
	color: white;
	padding-top: 5px;
	text-align: center;
	z-index: 101;
}
#cookie_decline,
#cookie_accept {
	color: white;
	padding: 1px 8px;
	cursor: pointer;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}
#cookie_decline       {background-color: #7c6768; white-space: nowrap; }
#cookie_decline:hover {background-color: #8e7778;}
#cookie_accept        {background-color: #51a351; white-space: nowrap; }
#cookie_accept:hover  {background-color: #65c465;}

h1.error {
	color: #f01a29;
}

#container_lang_choice {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: black;
	background-color: rgba(0, 0, 0, 0.7);
	padding-top: 12%;
	z-index: 100;
}
#container_lang_choice div.bg {
	margin: 0 auto;
/*	height: 80%;
	max-height: 400px; */
	width: 90%;
	max-width: 800px;
	background-image: url('img/bg-languages.png');
	
	background-size: cover;
	background-position: 50% 50%;
	text-align: center;
	padding: 2% 1% 2% 1%;
	font-family: "SohoGothicPro-Bold",Arial,Helvetica;
}
#container_lang_choice h1 {
	color: #009FE3;
	font-size: 58px;
	font-weight: bold;
	line-height: 100%;
	margin-bottom: 0.5em;
}
#container_lang_choice .box {
	font-size: 28px;
	color: white;
	line-height: 100%;
	margin: 0 auto;
	float: none;
}
#container_lang_choice .box div {
	width: 40%;
/*	background-color: #009FE3; */
	margin: 0 auto;
	padding: 1%;
	cursor:pointer;
}
@media only screen and (max-width: 630px) {
	#container_lang_choice .box div {
		width: 60%;
	}
}

#container_lang_choice h2 {
	font-size: 28px;
	line-height: 100%;
	clear: both;
	margin-top: 1em;
}
#cboxCloseLang{cursor:pointer;}
#cboxCloseLang{position:absolute; top:-10px; right:-10px; background:url(img/controls.png) no-repeat -25px 0; width:25px; height:25px; text-indent:-9999px;}


#contactform p.narrow label { padding-right: 8px; text-align: right; margin-top: 2px; width: 14%; }
#contactform p.narrow select { width: 60%; }

#contactform .input {
  display: block;
	width: auto;
	float: none;
	clear: left;
}
#contactform .input span {
  position: absolute;
	width: 75%;
  z-index: 1;
  cursor: text;
  pointer-events: none;
  color: #666;
  /* Input padding + input border */
  padding: 0 0 0 10px;
  /* Firefox does not respond well to different line heights. Use padding instead. */
  line-height: 17px;
  /* This gives a little gap between the cursor and the label */
  margin-left: 2px;
}
#contactform .input input,
#contactform .input textarea,
#contactform .input select {
  z-index: 0;
  padding: 0 0 0 10px;
  margin: 0;
  font: inherit;
  line-height: 17px;
	width: 75%;
	border: 1px solid #eee;
}
#contactform .input select {
  padding: 0 0 0 10px;
  /* Unfortunately selects don't respond well to padding. They need an explicit height. */
  height: 23px;
}