/* reset browser styles: Copyright (c) 2006, Yahoo! Inc. All rights reserved. Code licensed under the BSD License: http://developer.yahoo.net/yui/license.txt version: 0.10.0 */
	body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,p,blockquote,th,td { margin: 0; padding: 0; }
	table { border-collapse:collapse; border-spacing:0; }
	fieldset, img { border:0; }
	address,caption,cite,code,dfn,th,var { font-style:normal; font-weight:normal; }
	ol,ul { list-style:none; }
	caption,th { text-align:left; }
	h1,h2,h3,h4,h5,h6 { font-size:100%; }
	q:before,q:after { content:''; }

/* algemeen html */
	html, body { background: #fff; }
	body { font: 16px Verdana; color: #484848; line-height: 1.6em; text-align: center; }
		@media screen and (max-width: 1100px) {
			body { font-size: 14px; }
		}

	a.giantButton { text-decoration: none; }
	a.giantButton:hover { text-decoration: underline; }

/* header */
	header { height: 310px; border-bottom: 4px solid #484848; margin-bottom: 3px; overflow: hidden; }
		@media screen and (max-width: 950px) {
			header { height: 350px; }
		}
		@media screen and (max-width: 750px) {
			header { height: 420px; border-bottom: 0; }
		}

	nav#logo { float: left; height: 270px; width: 50%; background: #fff; }
	nav#logo a { display: block; margin: 12px auto; }
		@media screen and (max-width: 750px) {
			nav#logo { width: 100%; height: 200px; clear: both; }
			nav#logo a { width: 150px; height: 150px; margin: 25px auto; background: #fff url("/images/sprite.png") no-repeat 0 -2050px; text-indent: -9000px; }
		}

	nav#getAQuote { float: left; height: 270px; width: 50%; background: #ed1b24; }
	nav#getAQuote a { display: block; height: 100%; width: 100%; box-sizing: border-box; font-size: 1.3em; line-height: 1.9em; padding: 70px 50px; color: #fff; margin-left: 40px; background: transparent url("/images/sprite.png") no-repeat 170px -745px; }
	nav#getAQuote a span { display: block; width: 150px; }
		@media screen and (max-width: 950px) {
			nav#getAQuote a { padding-left: 20px; padding-right: 20px; margin-left: 10px; background-position: 100px -745px; }
			nav#getAQuote a span { display: block; width: 100px; }
		}
		@media screen and (max-width: 750px) {
			nav#getAQuote { width: 100%; clear: both; }
			nav#getAQuote a { width: 360px; margin: 0 auto; padding: 55px 0; background: transparent url("/images/sprite.png") no-repeat 80px -765px; }
		}
		@media screen and (max-width: 400px) {
			nav#getAQuote { width: 100%; clear: both; }
			nav#getAQuote a { width: 100%; margin: 0 auto; padding: 55px 15px; background: transparent url("/images/sprite.png") no-repeat 60px -765px; }
		}

	nav#fullNavigation { width: 86%; margin: 0 auto; clear: both; }
	nav#fullNavigation > a { display: none; }
	nav#fullNavigation ol { overflow: hidden; }
	nav#fullNavigation ol li { float: left; margin: 0 6px; }
	nav#fullNavigation ol li a { display: block; padding: 7px 25px; color: #484848; text-decoration: none; }
	nav#fullNavigation ol li a:hover { color: #ed1b24; border-bottom: 1px solid #ed1b24; padding-bottom: 6px; }
	nav#fullNavigation ol li.active a { color: #ed1b24; }
		@media screen and (min-width: 1550px) {
			nav#fullNavigation { width: 76%; }
		}
		@media screen and (max-width: 950px) {
			nav#fullNavigation ol li { margin-left: 25px; margin-right: 25px; }
		}
		@media screen and (max-width: 750px) {
			nav#fullNavigation { position: absolute; top: 15px; right: 15px; width: 285px; text-align: right; overflow: hidden; }
			nav#fullNavigation > a { display: block; background: transparent url("/images/sprite.png") no-repeat -12px -1416px; padding-right: 28px; text-decoration: none; color: #ed1b24; outline: none; }
			nav#fullNavigation ol { display: none; margin: 15px 0; }
			nav#fullNavigation ol li { float: none; margin: 3px 6px; }
			nav#fullNavigation ol li a { display: block; }

			nav#fullNavigation.visible { background: #484848; }
			nav#fullNavigation ol.visible { display: block; }
		 	nav#fullNavigation.visible a { color: #fff; }
		 	nav#fullNavigation.visible a:hover { color: #fff; }
		 	nav#fullNavigation.visible ol li a { padding-bottom: 1px; }
		 	nav#fullNavigation.visible ol li a:hover { border-bottom: 1px solid #fff; padding-bottom: 0; }
		}
		@media screen and (max-width: 400px) {
			nav#fullNavigation > a { text-indent: 9000px; }
			nav#fullNavigation.visible > a { text-indent: 0; }
		}

/* content */
	main { display: block; background: #484848; color: #fff; overflow: hidden; }
	main section { width: 86%; margin: 50px auto; }
			@media screen and (min-width: 1550px) {
				main section { width: 76%; }
			}

		main h1 { font-size: 1.5em; margin: 40px 0; letter-spacing: 3px; text-transform: uppercase; }
		main h2 { font-size: 1.2em; margin: 30px 0; letter-spacing: 1px; }
		main h3 { margin: 15px 0; }

		main p { margin-bottom: 20px; }
		main strong { font-weight: bold; }
		main em { font-style: italic; }
		main strike { text-decoration: line-through; }
		main u { text-decoration: underline; }

		main a { color: #fff; text-decoration: underline; }

		main img { border: 1px solid #fff; }

		main ul { list-style-image: url("/images/userstyles/li.gif"); list-style-position: inside; margin-bottom: 5px; width: 100%; clear: both; }
		main ul li { margin-left: 22px; }

		main ol { list-style-type: decimal; list-style-position: inside; margin-bottom: 5px; width: 100%; clear: both; }
		main ol li { margin-left: 22px; }

		main address { display: block; font-style: italic; }
		main blockquote { width: 420px; padding: 5px 40px; margin: 25px auto; background: transparent url("/images/userstyles/blockquote.png") no-repeat left top; box-sizing: border-box; }
			@media screen and (max-width: 420px) {
				main blockquote { width: 100%; }
			}

		main table { margin: 25px auto; border: 1px solid #fff; border-collapse : separate; border-spacing: 10px; }
		main td, main th { padding: 15px 20px; }
		main th { font-weight: bold; text-align: center; }
		main thead tr th { border-bottom: 1px solid #fff; padding-top: 30px; }
		main tfoot tr th { border-top: 1px solid #fff; padding-bottom: 30px; }

	a.button { color: #fff; text-decoration: none; padding: 12px 35px; background: #ed1b24; }

	a#backtotop { display: none; position: fixed; bottom: 10%; right: 10%; width: 47px; height: 45px; z-index: 15; background: transparent url("/images/sprite.png") no-repeat -15px -1450px; outline: none; text-indent: -9000px; }

	ol#images { overflow: hidden; }
	ol#images li { float: left; }
	ol#images li a { display: block; width: 201px; height: 202px; }
	ol#images li img { border: 1px solid #fff; border-right: 0; }
	ol#images li:last-of-type a { width: 202px; }
	ol#images li:last-of-type img { border-right: 1px solid #fff; }

/* aside & footer */
	aside, footer { overflow: hidden; }
	aside > * { float: left; padding: 50px; border-right: 1px solid #fff; border-bottom: 1px solid #fff; }
	aside > *:last-child { border-right: 0; }
	footer > * { float: left; border-right: 1px solid #fff; }
	footer > *:first-child { border-right: 0; }
		@media screen and (max-width: 750px) {
			aside > * { width: 100%; clear: both; border-left: 0; border-right: 0; }
			footer > * { width: 100%; clear: both; border-left: 0; border-right: 0; }
		}

	.w40 { box-sizing: border-box; width: 40%; }
	.w50 { box-sizing: border-box; width: 50%; }
	.w60 { box-sizing: border-box; width: 60%; }
		@media screen and (max-width: 750px) {
			.w40, .w50, .w60 { width: 100%; }
		}

	.left { padding-left: 12%; }
	.right { padding-right: 12%; }

	.red { background-color: #ed1b24; color: #fff; }
	.grey { background-color: #484848; color: #fff; }
	.white { background-color: #fff; color: #484848; }

	/* nav downloads */
	nav#downloads { width: 100%; box-sizing: border-box; overflow: hidden; }
	nav#downloads > div { overflow: hidden; width: 550px; margin: 0 auto; }
	nav#downloads h3 { font-weight: normal; font-size: 1.1em; color: #ed1b24; text-transform: uppercase; }
	nav#downloads a { display: block; float: left; margin: 35px; text-align: center; text-decoration: none; color: #ed1b24; }

	/* Form klasse */
	form.niceform { text-align: left; overflow: auto; }

		form.niceform div.nicehide { display: none; height: 850px; }

		form.niceform div.niceentry { overflow: hidden; margin-bottom: 20px; }
		form.niceform div.niceentry label { display: block; font-weight: normal; }
		form.niceform div.niceentry span.pseudolabel { display: block; }

		form.niceform div.niceentry input { display: block; width: 100%; box-sizing: border-box; padding: 6px 10px; border: 1px solid #484848; }
		form.niceform div.niceentry textarea { display: block; width: 100%; box-sizing: border-box; padding: 6px 10px; border: 1px solid #484848; }
		form.niceform div.niceentry select { display: block; width: 100%; box-sizing: border-box; padding: 6px 10px; border: 1px solid #484848; }
		form.niceform div.niceentry span.niceinfo { display: block; clear: both; padding-bottom: 5px; font-style: italic; color: #484848; font-size: 0.8em; clear: both; }
		form.niceform div.niceentry img { float: right; display: none; clear: right; }

		form.niceform div.checkbox input { width: auto; clear: left; float: left; margin-top: 5px; border: 0; }
		form.niceform div.checkbox label { float: left; margin: 0 0 0 5px; font-weight: normal; }

		form.niceform div.nicebutton { margin: 10px 0; float: left; clear: both; }
		form.niceform div.nicebutton button { color: #fff; text-decoration: none; padding: 12px 35px; background: #ed1b24; border: 0; font-size: 1em; }

		form.niceform div.niceerror label { color: #ed1b24; }
		form.niceform div.niceerror input { color: #ed1b24; }
		form.niceform div.niceerror select { color: #ed1b24; }
		form.niceform div.niceerror span.niceerrormessage { display: block; clear: both; float: left; width: 90%; font-size: 0.9em; color: #ff0000; padding-left: 26px; background: transparent url("/images/sprite.png") no-repeat -15px -1546px; min-height: 16px; }
		form.niceform div.niceerror span.niceinfo { color: #ed1b24; }

	div#contactdata { height: 850px; padding: 0; }
	a.agv { display: block; width: 100%; height: 100%; border: 0; }
	a.aurealisgooglemapsviewer { display: block; width: 100%; height: 250px; border: 1px solid #000; margin: 10px 0; }

/* offer form */
	form#frmOffer.inSteps h4 { float: left; background: #fff; padding: 8px 10px; color: #ed1b24; margin: 0 18px 25px 0; font-weight: normal; }
	form#frmOffer.inSteps h4.active { background: #ed1b24; color: #fff; }
	form#frmOffer.inSteps h4:last-of-type { margin-right: 0; }

	form#frmOffer.allInOne h4 { color: #ed1b24; border-bottom: 1px solid #ed1b24; padding-bottom: 2px; margin: 20px 0 8px 0; font-weight: normal; }
	form#frmOffer.allInOne h4:first-of-type { margin-top: 0; }

	form#frmOffer div { clear: both; }

/* sticky footer. Cf. http://mystrd.at/modern-clean-css-sticky-footer/ */
	html { position: relative; min-height: 100%; }
	body { margin: 0 0 270px; /* bottom = footer height */ }
	footer { position: absolute; left: 0; bottom: 0; height: 270px; width: 100%; }
		@media screen and (max-width: 750px) {
			body { margin: 0 0 540px; /* bottom = footer height */ }
			footer { height: 540px; }
		}

		footer > * { float: right; height: 270px; font-size: 1.2em; line-height: 1.6em; }

		footer address { padding: 40px 50px 40px 12%; overflow: hidden; }
		footer address div { float: right; display: block; width: 350px; padding-left: 230px; background: transparent url("/images/sprite.png") no-repeat 0 -430px; }
		footer address a { color: #fff; text-decoration: none; }
		footer address a:hover { text-decoration: underline; }
			@media screen and (max-width: 1100px) {
				footer address div { padding-left: 180px; }
			}
			@media screen and (max-width: 950px) {
				footer address { padding-right: 25px; }
				footer address div { background-image: none; }
			}
			@media screen and (max-width: 750px) {
				footer address { padding: 0; border-top: 1px solid #fff; }
				footer address div { float: none; padding-left: 140px; width: auto; margin: 35px auto; background-image: url("/images/sprite.png"); background-position: -40px -430px; }
			}
			@media screen and (max-width: 400px) {
				footer address div { padding-left: 0; background-image: none; }
			}

		nav#ourEquipment { padding: 30px 50px; height: 270px; }
		nav#ourEquipment a { display: block; width: 200px; height: 100%; padding: 70px 350px 0 0; color: #fff; background: transparent url("/images/sprite.png") no-repeat 220px -1110px; }
			@media screen and (max-width: 1100px) {
				nav#ourEquipment a { background-position: 170px -1110px; }
			}
			@media screen and (max-width: 950px) {
				nav#ourEquipment a { text-indent: -9000px; background-position: 0 -1110px; }

			}
			@media screen and (max-width: 750px) {
				nav#ourEquipment a { text-indent: 0; background-position: 160px -1110px; }
			}
			@media screen and (max-width: 400px) {
				nav#ourEquipment { padding: 0; }
				nav#ourEquipment a { padding: 8px; width: 100%; background-position: 10px -1070px; }
			}

	a#aurealis { display: none; }

/* op vraag van Grizzly Marketing */
@media only screen and (max-width: 980px) {
	.usps { flex-direction: column;	}
	a.cta-bel { display: inline-block; font-size: 18px; }
	p.vra { font-size: 18px; }
}

.usps { display: flex; justify-content: space-between; font-weight: bold; font-size: 20px; }
.usps > p:before { content: ''; }
a.cta-bel { background-color: #ED1B24; color: white; border: 1px solid #199CDB; margin: 0 auto; padding: 10px 20px; font-size: 20px; text-decoration: none; }
p.vra { font-size: 20px; font-weight: bold; }
.cta-container { margin: 40px; }

/* flashMessage */
	p#confirmbot { border: 1px solid #baba45; padding: 5px 5px 5px 40px; background: #fbfba9 url("/images/sprite.png") no-repeat -5px -1531px; width: 80%; font-style: italic; }

	/*div#flashMessage { float: left; clear: both; width: 97%; margin-bottom: 15px; font-weight: bold; box-sizing: border-box; }*/
	div#flashMessage { position: absolute; top: 10px; left: 50%; width: 500px; margin-left: -250px; font-weight: bold; box-sizing: border-box; border-radius: 5px; }
	div#flashMessage span { display: block; margin: 10px 16px 10px 35px; }
	div#flashMessage:hover { opacity: 1.0 !important; }

	div.flashConfirmation { border: 1px solid #baba45; background: #fbfba9 url("/images/sprite.png") no-repeat 0 -1785px; }
	div.flashWarning { border: 1px solid #baba45; background: #fbfba9 url("/images/sprite.png") no-repeat 0 -1535px; }
	div.flashError { border: 1px solid #ba4545; background: #fba9a9 url("/images/sprite.png") no-repeat 0 -1535px; }

		@media screen and (max-width: 550px) {
			div#flashMessage { top: 180px; }
		}

/* for print */
	@media print {
		body { font-size: 12pt; }
		html, body, main { overflow: visible; }
		body { margin-bottom: 0; }
		footer { display: none; }
	}