/*
===================================================================================================
B A S E . C S S
===================================================================================================
*/


html { height: 100%; overflow-y: scroll; -webkit-overflow-scrolling: touch; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; -webkit-font-smoothing: antialiased; }
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, form, fieldset, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, menu, nav, section, summary, time, mark, audio, video { background: transparent; font-size: 100%; vertical-align: baseline; border: 0; outline: 0; margin: 0; padding: 0; }
article, aside, figure, figcaption, footer, header, nav, section { display: block; }


/* TYPOGRAPHY -------------------------------------- */

strong, b { font-weight: bold; }
small { font-size: .875em; display: inline-block; }
strike, del { text-decoration: line-through; }
pre, code, kbd, samp { font-family: Consolas, "Lucida Console", Monaco, monospace; font-size: .875em; }
pre { white-space: pre; white-space: pre-wrap; word-wrap: break-word; }
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }
mark { background: #ff6; padding: 2px 3px; }
hr { display: block; height: 1px; border: 0 none; border-top: 1px solid #ccc; padding: 0; }


/* Lists */

ul { list-style: none outside; }
ul.inline { list-style: none outside; }
ul.inline > li { display: inline-block; }
ul.disc { list-style: disc outside; margin-left: 2em; }
ul.square { list-style: square outside; margin-left: 2em; }
ol { list-style: decimal outside; margin-left: 2em; }
ul ul, ul ol, ol ol, ol ul { margin-bottom: 0; }
nav ul { margin: 0; }


/* LINKS -------------------------------------- */

a, :focus { outline: 0; }
a img { border: 0 none; }


/* FORMS -------------------------------------- */

label { cursor: pointer; }

input,
textarea { font-weight: inherit; font-size: inherit; font-family: inherit; color: inherit; vertical-align: baseline; margin: 0; }

input[type=text],
input[type=password],
input[type=search],
input[type=email],
input[type=url],
input[type=tel],
input[type=file],
textarea { background: #fff; display: inline-block; width: 100%; border: 1px solid #fff; border-radius: 0; -webkit-appearance: none; margin: 0; padding: .25em; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

textarea { overflow: auto; resize: none; vertical-align: top; resize: vertical; }

input[type=checkbox],
input[type=radio] { padding: 0; }

select { cursor: pointer; vertical-align: baseline; margin: 0; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

button,
.btn { background: transparent; font-weight: bold; font-family: inherit; font-size: inherit; line-height: normal; color: inherit; text-align: center; display: inline-block; *display: inline; *zoom: 1; vertical-align: baseline; width: auto; overflow: visible; cursor: pointer; border: 0 none; margin: 0; }

[placeholder]:focus::-webkit-input-placeholder { color: transparent; }

/* Reset search input styling in Webkit */

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


/* Fix button styling in Firefox */

button::-moz-focus-inner,
input[type=reset]::-moz-focus-inner,
input[type=button]::-moz-focus-inner,
input[type=submit]::-moz-focus-inner,
input[type=file] > input[type=button]::-moz-focus-inner { border: 0; margin: 0; padding: 0; }


/* TABLES -------------------------------------- */

table { width: 100%; border-spacing: 0; border-collapse: collapse; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
th, td { font-family: inherit; font-weight: normal; color: inherit; vertical-align: top; }


/* MEDIA -------------------------------------- */

img { -ms-interpolation-mode: bicubic; }
img, object, embed { display: block; vertical-align: middle; max-width: 100%; width: auto; width: auto\9; /* IE Fix */ height: auto; border: 0; }
audio, canvas, video { display: inline-block; }
audio:not([controls]) { display: none; }

#map_canvas img, .google-maps img { max-width: none; }


/* HELPER CLASSES -------------------------------------- */

.left { float: left !important; }
.right { float: right !important; }
.alignleft { text-align: left !important; }
.alignright { text-align: right !important; }
.normal { font-weight: normal !important; }
.inv { display: none; }
.nowrap { white-space: nowrap; }
.anim { -moz-backface-visibility: hidden; -webkit-backface-visibility: hidden; -webkit-perspective: 1000; -webkit-transform: translate3d(0,0,0); /* Speeds up CSS animations */ }
.cf:before, .cf:after { content: ""; display: table; }
.cf:after, .clear { clear: both; }

a.arrow { font-weight: bold; white-space: nowrap; }
a.arrow:after { content: ""; display: inline-block; width: 0; height: 0; border-style: solid; border-width: .325em 0 .325em .325em; border-color: transparent transparent transparent #00f; margin-left: .3em; }
a.arrow:hover:after { border-left-color: #c00; }


/* IE 7 SPECIAL TREATMENT -------------------------------------- */

.ie7 img { -ms-interpolation-mode: bicubic; }
.ie7 legend { margin-left: -7px; }
.ie7 input, .ie7 select, .ie7 textarea, .ie7 button, .ie7 .btn { vertical-align: middle; }
.ie7 input[type=text], .ie7 input[type=password], .ie7 input[type=search], .ie7 input[type=email], .ie7 input[type=url], .ie7 input[type=tel], .ie7 textarea { display: inline; zoom: 1; }
.ie7 audio, .ie7 canvas, .ie7 video { display: inline; zoom: 1; }
.ie7 .cf { zoom: 1; }
.ie7 .ul.inline > li { display: inline; zoom: 1; }
