/* general design guides */
@font-face {
	font-family: 'r';
	src: url('r.eot');
	src: local('☺'), url('r.woff') format('woff'), url('r.ttf') format('truetype'), url('r.svg#webfontmuTj0peX') format('svg');
	font-weight: normal;
	font-style: normal;
}
@font-face {
	font-family: 'm';
	src: url('m.eot');
	src: local('☺'), url('m.woff') format('woff'), url('m.ttf') format('truetype'), url('m.svg#webfont4OlFPrzi') format('svg');
	font-weight: normal;
	font-style: normal;
}
@font-face {
	font-family: 'b';
	src: url('c.eot');
	src: local('☺'), url('c.woff') format('woff'), url('c.ttf') format('truetype'), url('c.svg#webfontsvL0bMuS') format('svg');
	font-weight: normal;
	font-style: normal;
}
html, body {
	margin: 0;
	padding: 0;
}
body {
	font-family: Arial, sans-serif;
	font-size: 12px;
	line-height: 20px;
	color: #282828;
	background: #d3d3d3 url(bg.png) repeat;
}
form {
	margin: 0;
	padding: 0;
}
a {
	text-decoration: none;
	color: #282828;
}
img, input[type=image] {
	vertical-align: top;
	border: 0;
}
h1, h2, h3, h4, h5, h6 {
	font-family: 'm', Arial, sans-serif;
	font-weight: normal;
	margin: 0 0 10px 0;
	padding: 0;
}
h1 { font-size: 36px; line-height: 40px; }
h2 { font-size: 22px; line-height: 26px; }
h3 { font-size: 22px; line-height: 26px; }
h4 { font-size: 18px; line-height: 22px; }
p {
	margin: 0 0 10px 0;
	padding: 0;
}
ul {
	padding: 0 0 0 20px;
	margin: 10px 0;
}
li {
	line-height: 24px;
}

/* Layout */
.whitebox {
	background: white;
	padding: 40px;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;/*
	// We know Opera has this feature,
	// but we will not enable it,
	// because we hate Opera.
	-o-border-radius: 5px;*/
}
.greybox {
	background: #efefef;
	padding: 20px;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;/*
	-o-border-radius: 5px;*/
}
.titlebox {
	position: relative;
	background: #f1f1f1 url(box_title.png) repeat-x 0 0;
	padding: 10px 20px 20px 20px;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;/*
	-o-border-radius: 5px;*/
}
.titlebox .title h3 {
	font-family: 'm';
	font-size: 18px;
	line-height: 22px;
	color: white;
	margin-bottom: 20px;
}
.titlebox .refresh {
	position: absolute;
	right: 14px;
	top: 13px;
	cursor: pointer;
}
a.green {
	color: #0fba68 !important;
}
a.green:hover {
	text-decoration: underline;
}

.wrapper {
	margin: 0 auto;
	width: 920px;
	position: relative;
}

.validation {
	display: inline-block;
	vertical-align: middle;
	width: 32px;
	height: 26px;
	background: white url(form_validation.png) no-repeat 0 0;
	margin-left: 20px;
}
.validation.invalid {
	background-position: 0 -27px;
}


/* Layout ids */

#head {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	min-width: 920px;
	background: black url(head_bg.png) repeat-x left top;
	color: #aeaeae;
	height: 46px;
	line-height: 46px;
}
#head .left {
	float: left;
	width: 300px;
}
#head .left a {
	display: inline-block;
	color: #aeaeae;
	margin-right: 17px;
}
#head .left a:hover {
	color: white;
}
#head .right {
	float: right;
	width: 500px;
	text-align: right;
}
#head .yes {
	display: inline-block;
	width: 96px;
	height: 25px;
	vertical-align: middle;
	margin-left: 17px;
	background: transparent url(ja_tak.png) no-repeat 0 0;
}
#head .yes:hover {
	background-position: 0 -26px;
}
#head .yes:active {
	background-position: 0 -52px;
}
#brand {
	position: absolute;
	left: 0;
	top: 46px;
	width: 100%;
	min-width: 920px;
	height: 114px;
	line-height: 114px;
}
#brand .left {
	float: left;
	width: 300px;
}
#brand .left img {
	vertical-align: middle;
}
#brand .right {
	float: right;
	width: 600px;
	text-align: right;
}
#brand .right a {
	display: inline-block;
	margin-left: 40px;
	font-family: 'b', Arial, sans-serif;
	font-size: 18px;
	line-height: 18px;
	height: 18px;
	font-weight: normal;
	text-transform: uppercase;
	vertical-align: middle;
}
#brand .right a.selected, #brand .right a:hover {
	color: #9c9c9c;
}
#brand .right a.house {
	width: 16px;
	background: transparent url(forside.png) no-repeat left top;
	color: transparent;
}
#brand .right a.house.selected, #brand .right a.house:hover {
	background-position: right top;
}
#brand .right a:first-child {
	margin-left: 0;
}
#main {
	margin: 160px auto 80px auto;
}


#foot {
	width: 100%;
	min-width: 920px;
	background: black url(foot_bg.png) repeat-x left top;
	color: #b6b6b6;
	height: 241px;
	line-height: 20px;
}
#foot a {
	color: #b6b6b6;
}
#foot h3 {
	color: white;
}
#foot .bobble {
	position: absolute;
	left: 205px;
	top: -50px;
}
#foot .col {
	float: left;
	width: 260px;
	margin: 36px 0 0 40px;
}
#foot .col.left {
	margin: 36px 40px 0 0;
}
#foot .col.left img {
	vertical-align: middle;
	margin-right: 5px;
}
#foot .col.right {
	width: 285px;
	margin: 36px 0 0 0;
	float: right;
}
#foot .vr {
	float: left;
	margin-top: 20px;
	width: 1px;
	height: 200px;
	background: #4e4e4e;
}
#foot .prod {
	float: left;
	width: 125px;
	height: 16px;
	line-height: 16px;
	margin: 2px 0;
}
#foot .prod a {
	display: inline-block;
	background: transparent url(foot_arrow.png) no-repeat 0px 0px;
	color: #b6b6b6;
	text-indent: 10px;
}
#foot .prod a:hover {
	background-position: 0px -16px;
	color: white;
}
#foot .talk {
	display: inline-block;
	width: 271px;
	height: 33px;
	background: transparent url(lad_os_snakke_sammen.png) no-repeat 0 0;
}
#foot .talk:hover {
	background-position: 0 -34px;
}
#foot .talk:active {
	background-position: 0 -68px;
}
#breadcrumb {
	margin-bottom: 20px;
}
#breadcrumb span, #breadcrumb a {
	color: #a5a5a5;
}
#breadcrumb a:hover {
	text-decoration: underline;
}
#breadcrumb img {
	vertical-align: middle;
	margin: 0 5px 2px 5px;
}

#submenu {
	float: right;
	width: 274px;
}
#submenu a.menuitem {
	font-family: 'r';
	display: block;
	width: 274px;
	height: 37px;
	line-height: 37px;
	font-size: 18px;
	text-indent: 40px;
	color: #353535;
	background: transparent url(submenu_item.png) no-repeat 0 -76px;
	margin-bottom: 5px;
}
#submenu a.menuitem:hover {
	font-family: 'r';
	background-position: 0 -38px;
}
#submenu a.menuitem.selected {
	font-family: 'm';
	color: white;
	background-position: 0 0;
}


/* Content */

/* Frontpage */
#frontpage {
	position: relative;
	top: -15px;
	width: 920px;
	height: 373px;
	background: transparent url(frontpage_teaser.png) no-repeat;
}
#frontpage .text {
	position: absolute;
	left: 40px;
	bottom: 20px;
	color: #fff;
}
#frontpage .text a {
	color: #c5e89a;
}
#frontpage .text a:hover {
	text-decoration: underline;
}
#frontpage .references {
	position: absolute;
	left: 30px;
	bottom: 50px;
}

#main .col3 {
	float: left;
	width: 230px;
	margin-right: 30px;
}
#main .col3:last-child {
	margin-right: 0;
}
#main .col3vr {
	float: left;
	height: 220px;
	width: 1px;
	margin-right: 30px;
	background: #ededed;
}


/* Contact */
#contact {
	position: relative;
	background: transparent url(contact_bg.png) no-repeat;
	width: 920px;
	height: 847px;
	color: white;
	font-family: 'r';
	font-size: 22px;
	line-height: 26px;
}
#contact a {
	color: white;
}
#contact .form {
	background: #585858;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;/*
	-o-border-radius: 5px;*/
	border-radius: 5px;
	padding: 30px;
	margin-bottom: 40px;
}
#contact .form.success {
	background: #585858 url(contact_tak_for_mailen.png) no-repeat center center;
}
#contact .form.success .contactform {
	visibility: hidden;
}
#contact .blur {
	color: #666;
}
#contact .inputs {
	float: left;
	width: 275px;
}
#contact .inputs input, #contact textarea {
	padding: 11px 11px 11px 35px;
	font-family: Arial;
	font-size: 12px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;/*
	-o-border-radius: 5px;*/
	border-radius: 5px;
	-webkit-appearence: none;
	border: 0;
	background: white url(contact_input_name.png) no-repeat 10px center;
	outline: none;
	resize: none;
	width: 219px;
	margin: 0;
	height: 15px;
}
#contact textarea {
	background: white url(contact_input_bobble.png) no-repeat 10px 10px;
	height: 109px;
}
#contact .inputs input:focus {
	background-position: 7px center;
	border: 3px solid #0fbd69;
	padding: 8px 8px 8px 32px;
}
#contact textarea:focus {
	background-position: 7px 7px;
	border: 3px solid #0fbd69;
	padding: 8px 8px 8px 32px;
}
#contact .buttons {
	float: right;
	width: 225px;
}
#contact .buttons input {
	display: block;
	width: 223px;
	height: 37px;
	-webkit-appearence: none;
	border: 0;
	background: transparent url(send_afsted.png) no-repeat 0 0;
	margin: 0;
	padding: 0;
}
#contact .buttons input:hover, #contact .buttons input:focus {
	background-position: 0 -38px;
}
#contact .buttons input:active {
	background-position: 0 -76px;
}
#contact .address {
	position: absolute;
	left: 0;
	width: 920px;
	bottom: 20px;
	text-align: center;
	font-family: 'm';
}
#contact .map {
	position: relative;
	background: white;
	padding: 10px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;/*
	-o-border-radius: 5px;*/
	border-radius: 5px;
}
#contact .map .bubble {
	position: absolute;
	left: 235px;
	bottom: -30px;
}
#contactajax {
	color: #b8b8b8;
	font-family: Arial;
	font-style: italic;
	height: 94px;
	text-align: center;
	font-size: 14px;
	line-height: 18px;
}
#contactajax .error {
	display: none;
}
#contactajax.spin {
	background: transparent url(ajax-loader.gif) no-repeat center center;
}
#contactajax.error .error {
	display: block;
}

#offerform h2 {
	line-height: 30px;
	margin-top: 30px;
}
#offerform .label {
	font-family: 'r';
	font-size: 18px;
	line-height: 35px;
}
#offerform .input input, #offerform .input textarea, #questionbox .input input, #questionbox .input textarea {
	vertical-align: middle;
	padding: 9px;
	font-family: Arial;
	font-size: 12px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	-webkit-appearence: none;
	border: 1px solid #d9d9d9;
	outline: none;
	resize: none;
	width: 329px;
	margin: 0;
	height: 15px;
	font-weight: bold;
	-webkit-box-shadow: inset 1px 1px 5px #d9d9d9;
	-moz-box-shadow: inset 1px 1px 5px #d9d9d9;
	box-shadow: inset 1px 1px 5px #d9d9d9;
}
#offerform .input textarea, #questionbox .input textarea {
	height: 72px;
}
#offerform .input select {
	vertical-align: middle;
	padding: 7px;
	height: 33px;
	width: 347px;
	font-weight: bold;
	font-family: Arial;
	font-size: 12px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	border: 1px solid #d9d9d9;
	resize: none;
	-webkit-box-shadow: inset 1px 1px 5px #d9d9d9;
	-moz-box-shadow: inset 1px 1px 5px #d9d9d9;
	box-shadow: inset 1px 1px 5px #d9d9d9;
}
#offerform .buttons {
	margin: 30px 0 0 0;
	width: 347px;
	text-align: right;
}
#offerform .buttons input {
	display: inline-block;
	width: 150px;
	height: 34px;
	-webkit-appearence: none;
	border: 0;
	background: transparent url(send.png) no-repeat 0 0;
	margin: 0;
	padding: 0;
}
#offerform .buttons input:hover, #contact .buttons input:focus {
	background-position: 0 -35px;
}
#offerform .buttons input:active {
	background-position: 0 -70px;
}


div.references .frame {
	float: left;
	width: 280px;
	height: 255px;
	position: relative;
}
div.references .img {
	position: absolute;
	left: 3px;
	top: 3px;
}
div.references .bg {
	display: block;
	position: absolute;
	left: 0px;
	top: 0px;
	width: 261px;
	height: 227px;
	background: transparent url(references_frame.png) no-repeat 0 0;
}
div.references .title {
	position: absolute;
	left: 15px;
	top: 171px;
}
div.references h2 {
	font-family: "m";
	color: #282828;
	line-height: 22px;
	font-size: 18px;
}
div.references .url {
	position: absolute;
	left: 15px;
	top: 196px;
}
div.references em {
	color: #a5a5a5;
}
div.references .frame:hover .bg {
	background-position: 0 -228px;
}
div.references .frame:hover h2 {
	color: white;
}
div.references .frame:hover em {
	color: #727272;
}

div.referenceslandingpage .frame {
	float: left;
	width: 172px;
	height: 97px;
	position: relative;
}
div.referenceslandingpage .img {
	position: absolute;
	left: 3px;
	top: 3px;
}
div.referenceslandingpage .bg {
	display: block;
	position: absolute;
	left: 0px;
	top: 0px;
	width: 157px;
	height: 97px;
	background: transparent url(referenceslandingpage_frame.png) no-repeat 0 0;
}
div.referenceslandingpage .title {
	position: absolute;
	left: 15px;
	top: 171px;
}
div.referenceslandingpage h2 {
	font-family: "m";
	color: #282828;
	line-height: 22px;
	font-size: 18px;
}
div.referenceslandingpage .url {
	position: absolute;
	left: 15px;
	top: 196px;
}
div.referenceslandingpage em {
	color: #a5a5a5;
}
div.referenceslandingpage .frame:hover .bg {
	background-position: 0 -97px;
}
div.referenceslandingpage .frame:hover h2 {
	color: white;
}
div.referenceslandingpage .frame:hover em {
	color: #727272;
}


div.client {
	background: #efefef;
	padding: 20px;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;/*
	-o-border-radius: 5px;*/
	margin-top: 30px;
	font-size: 13px;
	line-height: 19px;
}
div.client .c {
	font-style: italic;
}
div.client .f {
	color: #767676;
	margin-top: 15px;
}



#questionbox .input input, #questionbox .input textarea {
	margin-bottom: 10px;
	width: 215px;
	border: 1px solid #b5b5b5;
}

#questionbox .buttons {
	text-align: right;
}
#questionbox .buttons input {
	display: inline-block;
	width: 96px;
	height: 25px;
	-webkit-appearence: none;
	border: 0;
	background: transparent url(afsted.png) no-repeat 0 0;
	margin: 0;
	padding: 0;
}
#questionbox .buttons input:hover, #contact .buttons input:focus {
	background-position: 0 -26px;
}
#questionbox .buttons input:active {
	background-position: 0 -52px;
}
#questionbox .input .blur {
	color: #909090;
	font-style: italic;
	font-family: Georgia;
	font-weight: normal;
}
#questionbox.loading .qform {
	height: 200px;
	background: transparent url(ajax-loader_f1f1f1.gif) no-repeat center center;
}
#questionbox.loading .qinputs {
	display: none;
}
#questionbox.success .qform {
	background: transparent url(question_tak_for_mailen.png) no-repeat center center;
}
