/* HTML5 */
article, aside, dialog, figure, footer, header, hgroup, nav, section, summary, main { display: block; }
audio, canvas, video { display: inline-block; *display: inline; *zoom: 1; }
audio:not([controls]) { display: none; height: 0; }
[hidden] { display: none; }

/* Base Elements */
html { line-height: 1.4; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }
body { margin: 0; }

/* Links */
a:focus { outline: thin dotted; }
a:active, a:hover { outline: 0; }

/* Typography */
h1, h2, h3, h4, h5, h6 { line-height: 1.2; }
h1, h2 { margin-bottom: 0.1em; }
h1, h2, h3, h4 { margin-top: 0.8em; }

p { font-size: 1.3em; margin-top: 0; margin-bottom: 1em; }

ul, ol, dl, menu { font-size: 1.3em; margin: 1em 0; padding: 0 0 0 2em; line-height: 1.5; }
dd { margin: 0 0 0 2em; }
ul { list-style: disc outside; }
ol { list-style: decimal outside; }
li ul, li ol, ul ul, ol ol { margin-top: 0; margin-bottom: 0; }
nav ul, nav li { margin: 0; list-style: none; list-style-image: none; }

abbr { font-size: 0.85em; text-transform: uppercase; letter-spacing: .1em; }
abbr[title], dfn[title]	{ border-bottom: 1px dotted black; cursor: help; }
address { font-size: 1.3em; }
b, strong, caption, th, thead, dt, legend { font-weight: bold; }
blockquote { margin: 1em 2em; }
cite, dfn, em, i { font-style: italic; }
code, kbd, pre, samp { font-family: mono-space, monospace; font-size: 1em; }
del { text-decoration: line-through; }
hr { border: none; background: rgb(225, 225, 225); width: 100%; position: relative; height: 4px; margin: 18px 0 14px 0; }
mark { background-color: rgb(255,255,153); background-color: rgba(255,255,0,0.4); color: rgb(0,0,0); padding: 0 0.25em; }
pre	{ margin: 0; font-size: 1.3em; padding: 1.5em; white-space: pre; white-space: pre-wrap; word-wrap: break-word; }
q { quotes: none; }
q:before, q:after { content: ''; content: none; }
small { font-size: 0.9em; }
sub, sup { font-size: 0.75em; line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; bottom: -0.25em; }

/* Forms */
form { margin: 0; font-size: 1.2em; }
form div { margin: 1em 0; }
fieldset { border: 1px solid #c0c0c0; margin: 0 0.5em; padding; 0.5em; }
legend { border: 0; padding: 0; white-space: normal; *margin-left: -7px; }
form label { color: #555; font-weight: bold; }
button, input, select, textarea { font-family: sans-serif; font-size: 100%; margin: 0; vertical-align: baseline; *vertical-align: middle; }
input[type="checkbox"], input[type="radio"] { box-sizing: border-box; padding: 0; }
textarea { overflow: auto; vertical-align: top }
input[type="text"], input[type="email"], input[type="tel"], input[type="url"], input[type="number"], textarea { border: 1px solid #d9d9d9; border-top: 1px solid #c0c0c0; padding: 4px; font: normal 1.1em "Helvetica Neue", Helvetica, Arial, sans-serif; color: #555; width: 100%; outline: 0; }
input[type="text"]:focus, input[type="email"]:focus, input[type="tel"]:focus, input[type="url"]:focus, input[type="number"]:focus, textarea:focus { border: 1px solid #b1b1b1; border-top: 1px solid #a2a2a2; }
input[type="submit"], button { -webkit-appearance: button; background-color: #f1f1f1; border: 1px solid #dadada; line-height: normal; border-radius: 3px; -moz-border-radius: 2px; -webkit-border-radius: 2px; -o-border-radius: 2px; -ms-border-radius: 2px; color: #555; font: bold 0.9em "Helvetica Neue", Helvetica, Arial, sans-serif; padding: 7px 12px; }
input[type="submit"]:hover, button:hover { border: 1px solid #C6C6C6; background-color: #f8f8f8; box-shadow: 0 1px 1px rgba(0,0,0,0.1); } 
select { background-color: #fff; border: 1px solid #dfdfdf; }
label, input[type="button"], input[type="submit"], input[type="image"], button { cursor: pointer; }
button, input, select, textarea { margin: 0; }
button { width: auto; overflow: visible; }
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }

/* Tables */
table { font-size: 1.3em; border-collapse: collapse; border-spacing: 0; }

/* Images */
img { border: 0; -ms-interpolation-mode: bicubic; }
figure { margin: 0; }

/* Image Replacement Helper */
.ir, .contact li a { display: block; background-color: transparent; background-repeat: no-repeat; border: 0; overflow: hidden; /* IE 6/7 fallback */ *text-indent: -9999px; }
.ir:before, .contact li a:before { content: ""; display: block; width: 0; height: 150%; }

/* Clearfix Helper */
.clearfix:before, .clearfix:after { content: " "; display: table; }
.clearfix:after { clear: both; }
.clearfix { *zoom: 1; }
