/* HTML5 Boilerplate  */
/* reset styles */

article, aside, details, figcaption, figure, footer, header, hgroup, nav, section { display: block; }
audio, canvas, video { display: inline-block; *display: inline; *zoom: 1; }
audio:not([controls]) { display: none; }
[hidden] { display: none; }

html { font-size: 100%; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }
html, button, input, select, textarea { font-family: sans-serif; color: #222; }
body { margin: 0; font-size: 1em; line-height: 1.4; }

::-moz-selection { background: #fe57a1; color: #fff; text-shadow: none; }
::selection { background: #fe57a1; color: #fff; text-shadow: none; }

a { color: #b8001a; text-decoration:none; }
a:visited { color: #b8001a; text-decoration:none; }
a:hover { color: #e1213c; text-decoration:underline; }
a:focus { outline: thin dotted; }
a:hover, a:active { outline: 0; }
abbr[title] { border-bottom: 1px dotted; }
b, strong { font-weight: bold; }
blockquote { margin: 1em 40px; }
dfn { font-style: italic; }
hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0; }
ins { background: #ff9; color: #000; text-decoration: none; }
mark { background: #ff0; color: #000; font-style: italic; font-weight: bold; }
pre, code, kbd, samp { font-family: monospace, serif; _font-family: 'courier new', monospace; font-size: 1em; }
pre { white-space: pre; white-space: pre-wrap; word-wrap: break-word; }

q { quotes: none; }
q:before, q:after { content: ""; content: none; }
small { font-size: 85%; }
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }

ul, ol { margin: 1em 0; padding: 0 0 0 40px; }
dd { margin: 0 0 0 40px; }
nav ul, nav ol { list-style: none; list-style-image: none; margin: 0; padding: 0; }

img { border: 0; -ms-interpolation-mode: bicubic; vertical-align: middle; }
svg:not(:root) { overflow: hidden; }
figure { margin: 0; }

form { margin: 0; }
fieldset { border: 0; margin: 0; padding: 0; }

label { cursor: pointer; }
legend { border: 0; *margin-left: -7px; padding: 0; white-space: normal; }
button, input, select, textarea { font-size: 100%; margin: 0; vertical-align: baseline; *vertical-align: middle; }
button, input { line-height: normal; }
button, input[type="button"], input[type="reset"], input[type="submit"] { cursor: pointer; -webkit-appearance: button; *overflow: visible; }
button[disabled], input[disabled] { cursor: default; }
input[type="checkbox"], input[type="radio"] { box-sizing: border-box; padding: 0; *width: 13px; *height: 13px; }
input[type="search"] { -webkit-appearance: textfield; -moz-box-sizing: content-box; -webkit-box-sizing: content-box; box-sizing: content-box; }
input[type="search"]::-webkit-search-decoration, input[type="search"]::-webkit-search-cancel-button { -webkit-appearance: none; }
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }
textarea { overflow: auto; vertical-align: top; resize: vertical; }
input:valid, textarea:valid {  }
input:invalid, textarea:invalid { background-color: #f0dddd; }

table { border-collapse: collapse; border-spacing: 0; }
td { vertical-align: top; }

.chromeframe { margin: 0.2em 0; background: #ccc; color: black; padding: 0.2em 0; }

/* custom styles */

body {
	background: url(../img/pattern_background_lowerfooter.jpg);
}
html, input, select, textarea {
	font-family: "HelveticaNeueLight", "HelveticaNeue-Light", "Helvetica Neue Light", "HelveticaNeue", "Helvetica Neue", 'TeXGyreHerosRegular', "Helvetica", "Tahoma", "Geneva", "Arial", sans-serif;
	font-weight:300;
	font-stretch:normal;
	-webkit-font-smoothing: antialiased;
}
b, strong, em, h1, h2, h3, h4, h5, h6, button, input[type="button"], input[type="reset"], input[type="submit"] {
	font-family: "HelveticaNeueBold", "HelveticaNeue-Bold", "Helvetica Neue Bold", "HelveticaNeue", "Helvetica Neue", 'TeXGyreHerosBold', "Helvetica", "Tahoma", "Geneva", "Arial", sans-serif;
	font-weight:600;
	font-stretch:normal;
}
::-moz-selection { background: #b8001a; color: #fff; text-shadow: none; }
::selection { background: #b8001a; color: #fff; text-shadow: none; }
h1 {
	-webkit-margin-before: 0;
	-webkit-margin-after: 0;
}
h2 {
	font-size: 18px;
	color: #292929;
}
h3 {
	font-size: 15px;
}
button, input[type="button"], input[type="reset"], input[type="submit"] {
	padding: 0;
	line-height: 50px;
	height: 50px;
	width: 150px;
	font-size: 13px;
	color: #3d3f41;
	text-shadow: 0px 1px 0px #ffffff;
    filter: dropshadow(color=#ffffff, offx=0, offy=1);
    border: 1px solid rgba(0,0,0,0.2);
    -webkit-border-radius: 4px;
    border-radius: 4px;
	-webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.15), inset 0px 1px 0px rgb(255, 255, 255);
	box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.15), inset 0px 1px 0px rgb(255, 255, 255);
	background: rgb(250,250,250);
	background: -moz-linear-gradient(top,  rgba(250,250,250,1) 0%, rgba(240,240,240,1) 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(250,250,250,1)), color-stop(100%,rgba(240,240,240,1)));
	background: -webkit-linear-gradient(top,  rgba(250,250,250,1) 0%,rgba(240,240,240,1) 100%);
	background: -o-linear-gradient(top,  rgba(250,250,250,1) 0%,rgba(240,240,240,1) 100%);
	background: -ms-linear-gradient(top,  rgba(250,250,250,1) 0%,rgba(240,240,240,1) 100%);
	background: linear-gradient(to bottom,  rgba(250,250,250,1) 0%,rgba(240,240,240,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fafafa', endColorstr='#f0f0f0',GradientType=0 );


}
button:hover, input[type="button"]:hover, input[type="reset"]:hover, input[type="submit"]:hover {
	color: #434547;
	-webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.10), inset 0px 1px 0px rgb(255, 255, 255);
	box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.10), inset 0px 1px 0px rgb(255, 255, 255);
	background: rgb(255,255,255);
	background: -moz-linear-gradient(top,  rgba(255,255,255,1) 0%, rgba(248,248,248,1) 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(255,255,255,1)), color-stop(100%,rgba(248,248,248,1)));
	background: -webkit-linear-gradient(top,  rgba(255,255,255,1) 0%,rgba(248,248,248,1) 100%);
	background: -o-linear-gradient(top,  rgba(255,255,255,1) 0%,rgba(248,248,248,1) 100%);
	background: -ms-linear-gradient(top,  rgba(255,255,255,1) 0%,rgba(248,248,248,1) 100%);
	background: linear-gradient(to bottom,  rgba(255,255,255,1) 0%,rgba(248,248,248,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#f8f8f8',GradientType=0 );
    border: 1px solid rgba(0,0,0,0.15);
}
button:active, input[type="button"]:active, input[type="reset"]:active, input[type="submit"]:active {
	-webkit-box-shadow: none;
	box-shadow: none;
}
p {
	line-height: 1.6;
	color: #737373;
	-webkit-margin-before: 0em;
	-webkit-margin-after: 0em;
	margin: 13px 0;
}
#logo {
	padding: 42px 0 11px;
	margin-left: -15px;
}
#upperBackground {
	background: url(../img/pattern_background_content.jpg);
}
#chin {
	position: absolute;
	right: 0;
	top: 65px;
	opacity: 0.25;
}
.centered {
	width: 900px;
	margin: 0 auto;
	padding: 0 30px;
}
.left-column {
	width: 415px;
	float: left;
}
.right-column {
	width: 415px;
	float: right;
}
#intro {
	padding: 0 0 43px;
}
#intro p {
	margin: 18px 0 24px;
}
#intro ul {
	margin: 18px 0 24px;
	padding: 0;
}
#intro li {
	list-style-type: none;
	line-height: 1.6;
	color: #737373;
}
#servicesDrawer li {
	list-style-image: url(../img/bullet.gif);
	line-height: 1.6;
	color: #737373;
	margin-left:-26px;	
}
blockquote {
	margin: 0;
}
div[role="main"] {
	padding-bottom: 41px;
}
#contactLower {
	padding: 1px 0 32px;
}
.redSeparator {
	background: #b8001a;
	height: 6px;
	border: none;
	margin: 0;
}
.column-1 {
	display: inline-block;
	margin-right: 48px;
}
.column-2 {
	display: inline-block;
	margin-right: 30px;
}
.column-3 {
	display: inline-block;
}
a {
	cursor: pointer;
}
.drawerTopShadow {
	background: url(../img/shadow_drawer_top.png) repeat-x;
	height: 28px;
	width: 100%;
}
.drawerBottomShadow {
	background: url(../img/shadow_drawer_bottom.png) repeat-x;
	height: 19px;
	width: 100%;
}
#experienceDrawer {
	background: url(../img/pattern_background_drawer.jpg);
	display: none;
}
#servicesDrawer {
	background: url(../img/pattern_background_drawer.jpg);
	display: none;
}
#contact {
	border-bottom: 1px solid rgba(0, 0, 0, 0.2);
	position: relative;
}
#contactTop {
	position: absolute;
	top: -41px;
	height: 72px;
	width: 100%;
	background: url(../img/pattern_content_bottom.png) repeat-x;
}
.contactUpper {
	position: relative;
	padding: 6px 0 30px;
	height: 436px;
	display: none;
}
.contactLower {
	position: relative;
	border-top: 1px solid #85888B;
	border-top: 1px solid rgba(255,255,255,.3);
}
#contactForm {
	padding: 20px 0;
}
#contactForm input[type="text"], #contactForm textarea {
	width: 345px;
	border: 1px solid #262B30;
	border: 1px solid #600000;
	border-radius: 3px;
	-webkit-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.4), inset 0 1px 3px rgba(0, 0, 0, 0.7);
	-moz-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.4), inset 0 1px 3px rgba(0, 0, 0, 0.7);
	box-shadow: 0 1px 0 rgba(255, 255, 255, 0.4), inset 0 1px 3px rgba(0, 0, 0, 0.7);
	color: #141414;
	font-size: 18px;
	padding: 10px;
	outline:none;
}
#contactForm input[type="text"].focused, #contactForm textarea.focused {
	-webkit-box-shadow: 0 0 15px rgba(255,255,255,0.8);
	-moz-box-shadow: 0 0 15px rgba(255,255,255,0.8);
	box-shadow: 0 0 15px rgba(255,255,255,0.8);
}
#contactForm input[type="text"].error, #contactForm textarea.error {
	background: #EBB8BA;
}
#contactForm label {
	color: white;
	text-shadow: 0px 1px 1px rgba(63, 0, 0, 0.9);
	font-size: 18px;
	display: block;
	padding: 15px 10px 10px;
}
button.red, input[type="button"].red, input[type="reset"].red, input[type="submit"].red {
	border: 1px solid #7F0000;
	color: white;
	text-shadow: 0px 1px 1px rgba(63, 0, 0, 0.9);
	-webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.3), inset 0px 1px 0px rgba(255, 255, 255, 0.2);
	box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.3), inset 0px 1px 0px rgba(255, 255, 255, 0.2);
	background: #C31F24;
	background: -moz-linear-gradient(top, #C31F24 0%, #A20911 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#C31F24), color-stop(100%,#A20911));
	background: -webkit-linear-gradient(top, #C31F24 0%,#A20911 100%);
	background: -o-linear-gradient(top, #C31F24 0%,#A20911 100%);
	background: -ms-linear-gradient(top, #C31F24 0%,#A20911 100%);
	background: linear-gradient(top, #C31F24 0%,#A20911 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#C31F24', endColorstr='#A20911',GradientType=0 );
}
button.red:hover, input[type="button"].red:hover, input[type="reset"].red:hover, input[type="submit"].red:hover {
	border: 1px solid #850606;
	text-shadow: 0px 1px 1px rgba(63, 0, 0, 0.8);
	-webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.3), inset 0px 1px 0px rgba(255, 255, 255, 0.2);
	box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.3), inset 0px 1px 0px rgba(255, 255, 255, 0.2);
	background: #C9252A;
	background: -moz-linear-gradient(top, #C9252A 0%, #A80F17 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#C9252A), color-stop(100%,#A80F17));
	background: -webkit-linear-gradient(top, #C9252A 0%,#A80F17 100%);
	background: -o-linear-gradient(top, #C9252A 0%,#A80F17 100%);
	background: -ms-linear-gradient(top, #C9252A 0%,#A80F17 100%);
	background: linear-gradient(top, #C9252A 0%,#A80F17 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#C9252A', endColorstr='#A80F17',GradientType=0 );
}
button.red:active, input[type="button"].red:active, input[type="reset"].red:active, input[type="submit"].red:active {
	-webkit-box-shadow: none;
	box-shadow: none;
}
#openContactForm {
	padding: 0;
	background: none;
	border: none;
	font-size: 32px;
	color: white;
	text-shadow: 0px 1px 2px rgba(63, 0, 0, 0.9);
	-webkit-box-shadow: none;
	box-shadow: none;
	height: auto;
	width: auto;
	margin-right: 20px;
	filter: none;
}
footer {
	color: white;
	background: url(../img/pattern_background_footer.jpg);
	font-size: 13px;
	font-family: "HelveticaNeueMedium", "HelveticaNeue-Medium", "Helvetica Neue Medium", "HelveticaNeue", "Helvetica Neue", 'TeXGyreHerosRegular', "Helvetica", "Tahoma", "Geneva", "Arial", sans-serif;
	font-stretch:normal;
	position: relative;
	padding-top: 31px;
}
footer a {
	color: white;
	text-decoration: none;
}
footer a:active, footer a:hover, footer a:visited {
	color: white;
}
footer a:hover, footer a:active {
	text-decoration: underline;
}
#lowerFooter {
	background: url(../img/pattern_background_lowerfooter.jpg);
	border-top: 1px solid rgba(255, 255, 255, 0.15);
	position: relative;
}
#lowerFooter p {
	color: white;
	text-shadow: 0px 1px 1px rgba(63, 0, 0, 0.9);
}


/* @media  and helpers */

@media only screen and (min-width: 35em) {
  

}

.ir { display: block; border: 0; text-indent: -999em; overflow: hidden; background-color: transparent; background-repeat: no-repeat; text-align: left; direction: ltr; *line-height: 0; }
.ir br { display: none; }
.hidden { display: none !important; visibility: hidden; }
.visuallyhidden { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }
.visuallyhidden.focusable:active, .visuallyhidden.focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; width: auto; }
.invisible { visibility: hidden; }
.clearfix:before, .clearfix:after { content: ""; display: table; }
.clearfix:after { clear: both; }
.clearfix { *zoom: 1; }

@media print {
  * { background: transparent !important; color: black !important; box-shadow:none !important; text-shadow: none !important; filter:none !important; -ms-filter: none !important; } 
  a, a:visited { text-decoration: underline; }
  a[href]:after { content: " (" attr(href) ")"; }
  abbr[title]:after { content: " (" attr(title) ")"; }
  .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; } 
  pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
  thead { display: table-header-group; } 
  tr, img { page-break-inside: avoid; }
  img { max-width: 100% !important; }
  @page { margin: 0.5cm; }
  p, h2, h3 { orphans: 3; widows: 3; }
  h2, h3 { page-break-after: avoid; }
}
