* { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

/* = Reset
----------------------------------------------------------------------------------------------------------------- */
html, body, div, span, h1, h2, h3, h4, h5, h6, p, hr, a, a img, font, img, dd, dl, dt, li, ol, ul, blockquote, fieldset, form, label, legend, table, caption, tr, th, td { margin: 0; padding: 0; border: 0; line-height: inherit; font-family: inherit; font-size: 100%; }

/* == Block Display 
----------------------------------------------------------------------------------------------------------------- */
article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary { display: block; }

/* = Base
----------------------------------------------------------------------------------------------------------------- */
html, body { height: 100%; }
body { background: #f5f5f5; color: #000; font-size: 0.9em; font-family: "Raleway", "Lucida Grande", "Lucida Sans Unicode", Arial, sans-serif; }

/* = Text Level
----------------------------------------------------------------------------------------------------------------- */
h1, h2, h3, h4 { font-weight: 100; text-transform: uppercase; }
h1 { font-size: 2.1em; margin: 0 0 20px; line-height: 1em; }
h2 { font-size: 2.1em; margin: 25px 0; line-height: 1.1em; }
h3 { font-size: 1.42em; line-height: 1.3em; margin: 30px 0; }
h4 { font-size: 1.14em; line-height: 1.3em; margin: 30px 0; }
p { margin: 0 0 25px; line-height: 1.5em; }

a { color: #777; text-decoration: none; }
a:hover { color: #000; }
h1 a, h2 a, h3 a, .menuIcon, .miniBasket a, .footerNav a { color: #000; }

img { vertical-align: bottom; max-width: 100%; height: auto; }
small { font-size: 0.85em; }
hr { height: 1px; line-height: 1px; border: 0; border-top: solid 1px #424242; margin: 30px 0; }

/* = Lists
----------------------------------------------------------------------------------------------------------------- */
ul { margin: 0 0 25px 25px; line-height: 1.5em; }
ul ul { margin: 25px 0; }
li { margin: 0 0 10px 0; }
.unstyled { margin: 0; padding: 0; list-style: none; }
.unstyled li { margin: 0; }
.inline { margin-left: 0; list-style: none; }
.inline li { display: inline; margin: 0 15px 0 0; }

/* = Tables
----------------------------------------------------------------------------------------------------------------- */
table { width: 100%; margin: 0 0 20px; border-collapse: collapse; }
th { color: #fff; padding: 15px 10px; font-weight: bold; border: 1px solid #dbdbdb; background: #000; text-align: left; }
td { padding: 15px 10px; vertical-align: middle; border: 1px solid #fff; background: #eaeaea; }
td input { width: 27px; margin-bottom: 3px; }
tfoot td { color: #fff; font-weight: bold; background: #000; }
caption { text-align: left; caption-side: bottom; padding-top: 10px; text-transform: uppercase; color: #777; font-size: 0.8em; }

.rowItemAlt td { background: #dfdfdf; }
.colRemove { text-align: center; }


/* = Content Columns
----------------------------------------------------------------------------------------------------------------- */
.colsClients { margin-bottom: 25px; }
.colsClients .col { margin-bottom: 20px; }

/* = Buttons
----------------------------------------------------------------------------------------------------------------- */
.btn { display: inline-block; line-height: 1.5em; background: #000; color: #fff; padding: 10px 25px; text-transform: uppercase; border: solid 1px #fff; cursor: pointer; font-size: 1em; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
.btn:hover { color: #fff; }
.btnAdd { background: #865491; }

input.btn, .coPaypalBtn input { width: auto; cursor: pointer; }

/* = Forms
----------------------------------------------------------------------------------------------------------------- */
.webForm { margin-bottom: 15px; }
.webForm div { margin-bottom: 10px; }

label { width: 100%; float: left; padding: 0 0 10px; text-transform: uppercase; }
label em { color: #777; font-style: normal; }
input, input.text, textarea, select, .inputText { width: 100%; padding: 10px; font-family: "Raleway", "Lucida Grande", "Lucida Sans Unicode", Arial, sans-serif; border: 1px solid #e5e5e5; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }
input:focus, input.text:focus, textarea:focus, select:focus { -moz-box-shadow: 0 0 6px #e5e5e5; -webkit-box-shadow: 0 0 6px #e5e5e5; box-shadow: 0 0 6px #e5e5e5; }

.checkList { display: inline-block; }
.checkList input { width: auto; float: left; margin: 0 10px 0 0; padding: 0; border: 0; }

/* = Media Object
----------------------------------------------------------------------------------------------------------------- */
.medObj { margin: 0 0 25px; }
.medObj, .medObj .cont { overflow: hidden; _overflow: visible; zoom: 1; clear: left; }
.medObj .thumb { position: relative; margin: 0 auto 20px; }
.medObj .thumb img { display: block; }
.medObj h2, .medObj h3 { margin: 0 0 10px 0; }
.framed { border: solid 1px #ececec; border-width: 1px 0; padding: 40px 0; }


/* = Accordion
----------------------------------------------------------------------------------------------------------------- */
.accordion ul { margin: 0; list-style: none; border-left: solid 3px #eee; list-style: none; padding-left: 12px; }
.accordion li { margin: 7px 0; }
.accordion .trigger { margin: 15px 0; cursor: pointer; }
.accordion .trigger span { background: url(/_img/submenu-arrow-down.svg) no-repeat right center; padding-right: 17px; }
.accordion .trigger.on span { background: url(/_img/submenu-arrow-up.svg) no-repeat right center; }


/* = SVG Fallbacks
----------------------------------------------------------------------------------------------------------------- */
.no-svg .primaryNav { background-image: url(/_img/menu-logo.png); }
.no-svg .primaryNav .closeMenu { background-image: url(/_img/menu-close.png); }
.no-svg .hero .controls .prev { background-image: url(/_img/hero-arrow-left.png); }
.no-svg .hero .controls .next { background-image: url(/_img/hero-arrow-right.png); }
.no-svg .accordion .trigger span { background-image: url(/_img/submenu-arrow-down.png); }
.no-svg .accordion .trigger.on span { background-image: url(/_img/submenu-arrow-up.png); }

/* = Helpers
----------------------------------------------------------------------------------------------------------------- */
.hide { display: none; }
.textCenter { text-align: center; }
.snug { margin: 0; }
.more { background: url(/_img/small-arrow.png) no-repeat right center; padding-right: 20px; }
.upper { text-transform: uppercase; }
.pad { margin-right: 20px; }
.closer { margin: 10px 0; }
.leader { font-size: 1.3em; }
.date { background: #000; color: #fff; position: absolute; left: 1px; bottom: 15px; padding: 7px 12px; text-transform: uppercase; }
.textRight { text-align: right; }

/* = Clearing
----------------------------------------------------------------------------------------------------------------- */
.section, .hero, .cols, .newsList, .newsList li, .webForm, .cleared { zoom: 1; }
.section:after, .hero:after, .cols:after, .newsList:after, .newsList li:after, .webForm:after, .cleared:after { content: "."; clear: both; display: block; height: 0; visibility: hidden; }