/*! normalize.css 2012-01-22t23:30 utc - http://github.com/necolas/normalize.css */

/* =============================================================================
   html5 display definitions
   ========================================================================== */

/*
 * corrects block display not defined in ie6/7/8/9 & ff3
 */

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section {
    display: block;
}

/*
 * corrects inline-block display not defined in ie6/7/8/9 & ff3
 */

audio,
canvas,
video {
    display: inline-block;
    *display: inline;
    *zoom: 1;
}

/*
 * prevents modern browsers from displaying 'audio' without controls
 */

audio:not([controls]) {
    display: none;
}

/*
 * addresses styling for 'hidden' attribute not present in ie7/8/9, ff3, s4
 * known issue: no ie6 support
 */

[hidden] {
    display: none;
}


/* =============================================================================
   base
   ========================================================================== */

/*
 * 1. corrects text resizing oddly in ie6/7 when body font-size is set using em units
 *    http://clagnut.com/blog/348/#c790
 * 2. prevents ios text size adjust after orientation change, without disabling user zoom
 *    www.456bereastreet.com/archive/201012/controlling_text_size_in_safari_for_ios_without_disabling_user_zoom/
 */

html {
    font-size: 100%; /* 1 */
    -webkit-text-size-adjust: 100%; /* 2 */
    -ms-text-size-adjust: 100%; /* 2 */
}

/* 
 * addresses font-family inconsistency between 'textarea' and other form elements.
 */

html,
button,
input,
select,
textarea {
    font-family: sans-serif;
}

/*
 * addresses margins handled incorrectly in ie6/7
 */

body {
    margin: 0;
}


/* =============================================================================
   links
   ========================================================================== */

/*
 * addresses outline displayed oddly in chrome
 */

a:focus {
    outline: none;
}

/*
 * improves readability when focused and also mouse hovered in all browsers
 * people.opera.com/patrickl/experiments/keyboard/test
 */

a:hover,
a:active {
    outline: none;
}


/* =============================================================================
   typography
   ========================================================================== */

/*
 * neutralise smaller font-size in 'section' and 'article' in ff4 , chrome, s5
 */

h1 {
    font-size: 2em;
}

/*
 * addresses styling not present in ie7/8/9, s5, chrome
 */

abbr[title] {
    border-bottom: 1px dotted;
}

/*
 * addresses style set to 'bolder' in ff3 , s4/5, chrome
*/

b, 
strong { 
    font-weight: bold; 
}

blockquote {
    margin: 1em 40px;
}

/*
 * addresses styling not present in s5, chrome
 */

dfn {
    font-style: italic;
}

/*
 * addresses styling not present in ie6/7/8/9
 */

mark {
    background: #ff0;
    color: #000;
}

/*
 * corrects font family set oddly in ie6, s4/5, chrome
 * en.wikipedia.org/wiki/user:davidgothberg/test59
 */

pre,
code,
kbd,
samp {
    font-family: monospace, serif;
    _font-family: 'courier new', monospace;
    font-size: 1em;
}

/*
 * improves readability of pre-formatted text in all browsers
 */

pre {
    white-space: pre;
    white-space: pre-wrap;
    word-wrap: break-word;
}

/*
 * 1. addresses css quotes not supported in ie6/7
 * 2. addresses quote property not supported in s4
 */

/* 1 */

q {
    quotes: none;
}

/* 2 */

q:before,
q:after {
    content: '';
    content: none;
}

small {
    font-size: 75%;
}

/*
 * prevents sub and sup affecting line-height in all browsers
 * gist.github.com/413930
 */

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sup {
    top: -0.5em;
}

sub {
    bottom: -0.25em;
}


/* =============================================================================
   lists
   ========================================================================== */

ul,
ol {
    margin: 0;
    padding: 0 0 0 40px;
}

dd {
    margin: 0px;
}

nav ul,
nav ol {
    list-style: none;
    list-style-image: none;
}


/* =============================================================================
   embedded content
   ========================================================================== */

/*
 * 1. removes border when inside 'a' element in ie6/7/8/9, ff3
 * 2. improves image quality when scaled in ie7
 *    code.flickr.com/blog/2008/11/12/on-ui-quality-the-little-things-client-side-image-resizing/
 */

img {
    border: 0; /* 1 */
    -ms-interpolation-mode: bicubic; /* 2 */
}

/*
 * corrects overflow displayed oddly in ie9 
 */

svg:not(:root) {
    overflow: hidden;
}


/* =============================================================================
   figures
   ========================================================================== */

/*
 * addresses margin not present in ie6/7/8/9, s5, o11
 */

figure {
    margin: 0;
}


/* =============================================================================
   forms
   ========================================================================== */

/*
 * corrects margin displayed oddly in ie6/7
 */

form {
    margin: 0;
}

/*
 * define consistent border, margin, and padding
 */

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

/*
 * 1. corrects color not being inherited in ie6/7/8/9
 * 2. corrects text not wrapping in ff3 
 * 3. corrects alignment displayed oddly in ie6/7
 */

legend {
    border: 0; /* 1 */
    padding: 0;
    white-space: normal; /* 2 */
    *margin-left: -7px; /* 3 */
}

/*
 * 1. corrects font size not being inherited in all browsers
 * 2. addresses margins set differently in ie6/7, ff3 , s5, chrome
 * 3. improves appearance and consistency in all browsers
 */

button,
input,
select,
textarea {
    font-size: 100%; /* 1 */
    margin: 0; /* 2 */
    vertical-align: baseline; /* 3 */
    *vertical-align: middle; /* 3 */
}

/*
 * addresses ff3/4 setting line-height on 'input' using !important in the ua stylesheet
 */

button,
input {
    line-height: normal; /* 1 */
}

/*
 * 1. improves usability and consistency of cursor style between image-type 'input' and others
 * 2. corrects inability to style clickable 'input' types in ios
 * 3. removes inner spacing in ie7 without affecting normal text inputs
 *    known issue: inner spacing remains in ie6
 */

button,
input[type="button"], 
input[type="reset"], 
input[type="submit"] {
    cursor: pointer; /* 1 */
    -webkit-appearance: button; /* 2 */
    *overflow: visible;  /* 3 */
}

/*
 * 1. addresses box sizing set to content-box in ie8/9
 * 2. removes excess padding in ie8/9
 * 3. removes excess padding in ie7
      known issue: excess padding remains in ie6
 */

input[type="checkbox"],
input[type="radio"] {
    box-sizing: border-box; /* 1 */
    padding: 0; /* 2 */
    *height: 13px; /* 3 */
    *width: 13px; /* 3 */
}

/*
 * 1. addresses appearance set to searchfield in s5, chrome
 * 2. addresses box-sizing set to border-box in s5, chrome (include -moz to future-proof)
 */

input[type="search"] {
    -webkit-appearance: textfield; /* 1 */
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box; /* 2 */
    box-sizing: content-box;
}

/*
 * removes inner padding and search cancel button in s5, chrome on os x
 */

input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button {
    -webkit-appearance: none;
}

/*
 * removes inner padding and border in ff3 
 * www.sitepen.com/blog/2008/05/14/the-devils-in-the-details-fixing-dojos-toolbar-buttons/
 */

button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0;
}

/*
 * 1. removes default vertical scrollbar in ie6/7/8/9
 * 2. improves readability and alignment in all browsers
 */

textarea {
    overflow: auto; /* 1 */
    vertical-align: top; /* 2 */
}


/* =============================================================================
   tables
   ========================================================================== */

/* 
 * remove most spacing between table cells
 */

table {
    border-collapse: collapse;
    border-spacing: 0;
}