/* reset styles */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, a, img, 
form, table, tbody, tfoot, thead, tr, th, td 
{ margin: 0; padding: 0; border: 0; outline: 0; font-weight: inherit; font-style: inherit; font-size: 100%; font-family: inherit; vertical-align: baseline; }

:focus { outline: 0; }
/* tables still need 'cellspacing="0"' in the markup */
table { border-collapse: separate; border-spacing: 0; }
caption, th, td { text-align: left; font-weight: normal; }
blockquote:before, blockquote:after, q:before, q:after { content: ""; }
blockquote, q { quotes: "" ""; }
img{ border:0;}
em{font-style:italic;}
strong{font-weight:bold;}
code{color:#0B8C8F;}
hr{border:none; height:1px; background:#e5e5e5; color:#e5e5e5; margin: 2em 0px;}
a,a:link, a:visited{color:#005191;text-decoration:none;}
a:hover{text-decoration:none; color:#666;}
a:focus{text-decoration:none;}
a:link	{-webkit-tap-highlight-color: #607890;}

/* These selection declarations have to be separate. No text-shadow: twitter.com/miketaylr/status/12228805301  */
::selection { background:#005191; color:#fff; text-shadow: none; } 

/* Base styles
------------------------------------------------------ */
body {
	background:#ececec;
	background-attachment:fixed;
	background-size:cover;	
	font-family:Verdana, Geneva, sans-serif;
	font-size:11px;
	color:#555;
	-webkit-text-size-adjust: none;
	overflow: auto;
}

/*
=Typography
------------------------------------------------------ */
h1 {
    font-size:24px;
    font-weight:normal;
}

h2 {
    font-size:18px;
    font-weight:normal;
}

h3 {font-size:14px;}
h4 {font-size:1.0em;}
h5 {font-size:1.0em;}
h6 {font-size:1.0em;}

.main h3 {
    font-size: 14px;
    line-height: 24px;
	margin: 0;
}

.main table {
	width: 100%;
	border-collapse: collapse;
	border: 0;
	margin: 0 0 20px;
	border: 2px solid #e2e2e2;

	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
}
.main td, .main th {
	border: solid #c6c6c6;
	border-width: 1px 0 0 1px;
	text-align: right;
	padding: 3px 8px;
    vertical-align: middle;
    text-align: right;
}
.main td:first-child,
.main th:first-child {
	border-left: 0;
	text-align: left;
}
.main th {
	border-top: 0;
	height: 35px;
	vertical-align: middle;
	text-transform: uppercase;
	font: 16px;
}

.textcontent h1,
.textcontent h2,
.textcontent h3,
.textcontent h4,
.textcontent h5,
.textcontent h6 { color:#555; font-weight:bold;}
.main h1 { color: #555; font-size: 28px; line-height:36px; margin-bottom: 10px; text-transform: uppercase;}
.textcontent h2 { font-size:13px;}
.textcontent h3,
.textcontent h4,
.textcontent h5,
.textcontent h6 { font-size:11px;}
.textcontent h1 span,
.textcontent h2 span,
.textcontent h3 span,
.textcontent h4 span,
.textcontent h5 span,
.textcontent h6 span { color:#005191;}
h2.printheader {display:none;}
.textcontent p { line-height:1.73em; margin:0 0 21px;}
.textcontent ul,
.textcontent ol { margin:20px inherit; line-height:1.8em}
.textcontent a { color:#005191; text-decoration:none;}

p.intro, 
p.abstract {
	font-weight:bold; color:#666;
}
.statusmessage { color:#e70000; }

.msg {
    background: none repeat scroll 0 0 #FFFFEE;
    display: block;
    margin: 5px 0;
    padding: 2px 20px;
}

.msg-note {color:#e70000;}

/*
= Utility
------------------------------------------------------ */
.hr { 
	height:0px; 
	border-color:#e5e5e5; 
	background:none;
	margin:1em 0;
}
.hr.solid 	{  border-top-width:1px; border-style:solid; }
.hr.dashed 	{  border-top-width:1px; border-style:dashed; }
.hr.dotted 	{  border-top-width:1px; border-style:dotted; }
.hr hr { display: none; }


/*util classes*/
.left{float:left;}
.right{float:right;}
.hide{display:none;}
.show{display:block;}

/*clear fx*/
.clearfix:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
}

.form-row{
	width: 100%;
	margin: 22px 0 0;
}
.form-row:after{
	content: '';
	clear: both;
	display: block;
}

/* 
= Form
.fr = form row
.fu = form unit, often consisting of a label-input couple
------------------------------------------------------ */
div.fu { margin-right:10px;  margin-bottom:10px; clear:both; min-height:0; }
div.fr div.fu { float:left; display:inline; clear:none; margin-right:10px; }
div.fr {margin-bottom:10px; clear:both; min-height:0;}
div.fr:after {content:"."; clear:both; display:block; visibility:hidden; height:0;}

div.fr {display:inline-block;}
div.fr {display:block;}

input.text, select {padding:2px;}
select, .select, input	{
    margin:0px; padding:2px; 
    -webkit-appearance:none;
    -webkit-border-radius:0px;
}

/* form.css */
input, select, textarea {font-family: Arial,Verdana, sans-serif; font-size: 1em;}

form { margin:0;padding:0;}
fieldset {border:none; margin:0; padding:0;}
fieldset fieldset {padding-left:2em; border-bottom:1px solid #f3f3f3;}

label.input-top			{ display:block; margin:5px 0;}

.size-l input.text  	{ width:312px; }
.size-m input.text		{ width:147px; }
.size-s input.text		{ width:93px; }
.size-xs input.text 	{ width:66px; }
.size-auto input.text {width:auto; }

.wide select	{ width:99%;}
.size-l select	{ width:310px; }
.size-m select	{ width:155px; }
.size-s select	{ width:100px; }
.size-xs select	{ width:70px; }

.size-m select	{ width:155px; }
.size-s select	{ width:100px; }
.size-xs select	{ width:30px; }

label.size-l			{ float:left; width:310px; }
label.size-m			{ float:left; width:145px; }
label.size-s			{ float:left; width:90px; }

.size-l	textarea		{ width:310px; height:200px; }
.size-m	textarea		{ width:145px; height:90px; }
.size-s	textarea		{ width:90px; height:50px; }
.size-xs textarea		{ width:72px; height:50px; }

.size-m input.text {width:146px;}
.City input.text {width:198px;}
.Address input.text { width:160px; }
.Zipcode input.text {width:94px;}
.Streetnr input.text {width:58px}
.Floor input.text {width:54px}

/*if there's a help icon, make the input field 16px smaller */
.size-l span.hint input.text { width:296px;}
.size-m span.hint input.text { width:130px; }
.size-s span.hint input.text { width:77px; }
.size-xs span.hint input.text { width:50px; }
.Zipcode span.hint input.text {width:78px;}

/*Allow for Ajaxed form validation. add statusOk to the .fu element */
div.fu {display:inline; float:left; clear:both;}
div.btnrow {clear:both; zoom:1;}
div.btnrow:after 				{ content:"."; clear:both; display:block; height:0; visibility:hidden;}
div.fr {clear:both;}
div.fr div.fu {margin-right:14px; clear:none; display:inline; margin-bottom:0;}
.req{padding-left:2px; font-size:18px; line-height:0;}

/*append .statusError on .fu:*/
div.statusError input.text{background:#ffd; border-color:#cc0000;}
div.statusError label {color:#c00;}

/* required fields */
.req					{ font-weight:bold; color:#c00; }
/* error */
.error					{ color:#cc0000 !important; }

/*form style*/
label{
	font: 12px Verdana, Arial, sans-serif;
	color: #555;
	display: inline-block;
	margin: 0 0 5px;
	font-weight: bold;
}
input[type="text"],
textarea{
	background-color: #fdfbfd;
	border:1px solid #e3e3e3;
	display: block;
	padding: 7px 15px 7px;
	font: 11px/13px Verdana, Arial, sans-serif;
	color: #9d9d9d;
	width: 100%;

	-webkit-box-shadow: inset 2px 2px 5px rgba(0,0,0,0.2);
	-moz-border-shadow: inset 2px 2px 5px rgba(0,0,0,0.2);
	border-shadow: inset 2px 2px 5px rgba(0,0,0,0.2);

	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;

	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
}

/* modal box reset to SP default styling */
.ms-dlgFrameContainer textarea {
	height: auto;
	width: auto;
	padding: 0;
}
.ms-cui-row input[type="text"],
.ms-cui-cb input[type="text"] {padding: 3px 7px 2px; margin-right: -1px;}

.ms-cui-cb input[type="text"] {
	-webkit-box-shadow: none;
	-moz-border-shadow: none;
	border-shadow: none;

	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	border-radius: 0;

	-webkit-box-sizing: inherit;
	-moz-box-sizing: inherit;
	box-sizing: inherit;
}
.ms-cui-spn .ms-cui-spn-txtbx {
    height: 16px;
    height: 22px\0/;
    margin-right: -1px;
    width: auto;
}
textarea{
	height:180px;
	resize:none;
}

ol{
	list-style: none;
	padding: 0;
	margin: 15px 0 0;
	counter-reset:li; /* Initiate a counter */}
ol li 	{
	position: relative;
	padding-left: 14px;
	margin: 5px 0 0;
}
ol li:before 	{
	content:counter(li)"."; /* Use the counter as content */
    counter-increment:li; /* Increment the counter by 1 */
    /* Position and style the number */
    position:absolute;
    top:0;
    left:0;
    width:2em;
    color: #000;
    font-weight: bold;
}
/*
=Notice bar
------------------------------------------------------ */
#Notice, .notice {
	color:#5b604f; 
	margin:10px 0px; 
	padding:1px 10px; 
	background:#e3efc5; 
	border:1px dotted #556644; 
	border-width:1px 0;
	}
	
	#Notice p, .notice p {margin:10px 0;}
	.notice {margin:10px 0;}

.errors {background:#Fdd; margin:1em 0; padding:1px 0; border:1px dotted #611; border-width:1px 0; color:#611; clear:both;}
.errors ul {margin:0; padding:0;}
.errors li {margin:0.5em 0 0.5em 2em; padding:0; list-style:square; color:#611;}

.webpart { margin: 0 0 20px 0;}

.chrome-BorderOnly {
	border: 1px solid #c6c6c6;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}

.has-loader {position: relative;}
.has-loader .preloader {
    position: absolute;
    right: 5px;
    top: 7px;
}
.filterInputWrap {line-height: 0;}