/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

/**
 * Remove default margin.
 */
body {
  margin: 0; }

/* HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11
 * and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block; }

/**
 * 1. Correct `inline-block` display not defined in IE 8/9.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */
audio,
canvas,
progress,
video {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */ }

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0; }

/**
 * Address `[hidden]` styling not present in IE 8/9/10.
 * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
 */
[hidden],
template {
  display: none; }

/* Links
   ========================================================================== */
/**
 * Remove the gray background color from active links in IE 10.
 */
a {
  background-color: transparent; }

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */
a:active,
a:hover {
  outline: 0; }

/* Text-level semantics
   ========================================================================== */
/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted; }

/**
 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
 */
b,
strong {
  font-weight: bold; }

/**
 * Address styling not present in Safari and Chrome.
 */
dfn {
  font-style: italic; }

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari, and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/**
 * Address styling not present in IE 8/9.
 */
mark {
  background: #ff0;
  color: #000; }

/**
 * Address inconsistent and variable font size in all browsers.
 */
small {
  font-size: 80%; }

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

/* Embedded content
   ========================================================================== */
/**
 * Remove border when inside `a` element in IE 8/9/10.
 */
img {
  border: 0; }

/**
 * Correct overflow not hidden in IE 9/10/11.
 */
svg:not(:root) {
  overflow: hidden; }

/* Grouping content
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari.
 */
figure {
  margin: 1em 40px; }

/**
 * Address differences between Firefox and other browsers.
 */
hr {
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  height: 0; }

/**
 * Contain overflow in all browsers.
 */
pre {
  overflow: auto; }

/**
 * Address odd `em`-unit font size rendering in all browsers.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em; }

/* Forms
   ========================================================================== */
/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */
/**
 * 1. Correct color not being inherited.
 *    Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
 */
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  /* 1 */
  font: inherit;
  /* 2 */
  margin: 0;
  /* 3 */ }

/**
 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 */
button {
  overflow: visible; }

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
 * Correct `select` style inheritance in Firefox.
 */
button,
select {
  text-transform: none; }

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */ }

/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled] {
  cursor: default; }

/**
 * Remove inner padding and border in Firefox 4+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
input {
  line-height: normal; }

/**
 * It's recommended that you don't attempt to style these elements.
 * Firefox's implementation doesn't respect box-sizing, padding, or width.
 *
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto; }

/**
 * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari and 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; }

/**
 * Remove inner padding and search cancel button in Safari and Chrome on OS X.
 * Safari (but not Chrome) clips the cancel button when the search input has
 * padding (and `textfield` appearance).
 */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

/**
 * 1. Correct `color` not being inherited in IE 8/9/10/11.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * Remove default vertical scrollbar in IE 8/9/10/11.
 */
textarea {
  overflow: auto; }

/**
 * Don't inherit the `font-weight` (applied by a rule above).
 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 */
optgroup {
  font-weight: bold; }

/* Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0; }

td,
th {
  padding: 0; }

meta.foundation-version {
  font-family: "/5.5.1/"; }

meta.foundation-mq-small {
  font-family: "/only screen/";
  width: 0em; }

meta.foundation-mq-small-only {
  font-family: "/only screen and (max-width: 40em)/";
  width: 0em; }

meta.foundation-mq-medium {
  font-family: "/only screen and (min-width:40.063em)/";
  width: 40.063em; }

meta.foundation-mq-medium-only {
  font-family: "/only screen and (min-width:40.063em) and (max-width:64em)/";
  width: 40.063em; }

meta.foundation-mq-large {
  font-family: "/only screen and (min-width:64.063em)/";
  width: 64.063em; }

meta.foundation-mq-large-only {
  font-family: "/only screen and (min-width:64.063em) and (max-width:90em)/";
  width: 64.063em; }

meta.foundation-mq-xlarge {
  font-family: "/only screen and (min-width:90.063em)/";
  width: 90.063em; }

meta.foundation-mq-xlarge-only {
  font-family: "/only screen and (min-width:90.063em) and (max-width:120em)/";
  width: 90.063em; }

meta.foundation-mq-xxlarge {
  font-family: "/only screen and (min-width:120.063em)/";
  width: 120.063em; }

meta.foundation-data-attribute-namespace {
  font-family: false; }

html, body {
  height: 100%; }

*,
*:before,
*:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

html,
body {
  font-size: 100%; }

body {
  background: #FFFFFF;
  color: #252525;
  padding: 0;
  margin: 0;
  font-family: Source Sans Pro, sans-serif;
  font-weight: normal;
  font-style: normal;
  line-height: 150%;
  position: relative;
  cursor: auto; }

a:hover {
  cursor: pointer; }

img {
  max-width: 100%;
  height: auto; }

img {
  -ms-interpolation-mode: bicubic; }

#map_canvas img,
#map_canvas embed,
#map_canvas object,
.map_canvas img,
.map_canvas embed,
.map_canvas object {
  max-width: none !important; }

.left {
  float: left !important; }

.right {
  float: right !important; }

.clearfix:before, .clearfix:after {
  content: " ";
  display: table; }

.clearfix:after {
  clear: both; }

.hide {
  display: none; }

.invisible {
  visibility: hidden; }

.antialiased {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

img {
  display: inline-block;
  vertical-align: middle; }

textarea {
  height: auto;
  min-height: 50px; }

select {
  width: 100%; }

.row {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  margin-top: 0;
  margin-bottom: 0;
  max-width: 62.5rem; }
  .row:before, .row:after {
    content: " ";
    display: table; }
  .row:after {
    clear: both; }
  .row.collapse > .column,
  .row.collapse > .columns {
    padding-left: 0;
    padding-right: 0; }
  .row.collapse .row {
    margin-left: 0;
    margin-right: 0; }
  .row .row {
    width: auto;
    margin-left: -0.9375rem;
    margin-right: -0.9375rem;
    margin-top: 0;
    margin-bottom: 0;
    max-width: none; }
    .row .row:before, .row .row:after {
      content: " ";
      display: table; }
    .row .row:after {
      clear: both; }
    .row .row.collapse {
      width: auto;
      margin: 0;
      max-width: none; }
      .row .row.collapse:before, .row .row.collapse:after {
        content: " ";
        display: table; }
      .row .row.collapse:after {
        clear: both; }

.column,
.columns {
  padding-left: 0.9375rem;
  padding-right: 0.9375rem;
  width: 100%;
  float: left; }

[class*="column"] + [class*="column"]:last-child {
  float: right; }

[class*="column"] + [class*="column"].end {
  float: left; }

@media only screen {
  .small-push-0 {
    position: relative;
    left: 0%;
    right: auto; }
  .small-pull-0 {
    position: relative;
    right: 0%;
    left: auto; }
  .small-push-1 {
    position: relative;
    left: 8.33333%;
    right: auto; }
  .small-pull-1 {
    position: relative;
    right: 8.33333%;
    left: auto; }
  .small-push-2 {
    position: relative;
    left: 16.66667%;
    right: auto; }
  .small-pull-2 {
    position: relative;
    right: 16.66667%;
    left: auto; }
  .small-push-3 {
    position: relative;
    left: 25%;
    right: auto; }
  .small-pull-3 {
    position: relative;
    right: 25%;
    left: auto; }
  .small-push-4 {
    position: relative;
    left: 33.33333%;
    right: auto; }
  .small-pull-4 {
    position: relative;
    right: 33.33333%;
    left: auto; }
  .small-push-5 {
    position: relative;
    left: 41.66667%;
    right: auto; }
  .small-pull-5 {
    position: relative;
    right: 41.66667%;
    left: auto; }
  .small-push-6 {
    position: relative;
    left: 50%;
    right: auto; }
  .small-pull-6 {
    position: relative;
    right: 50%;
    left: auto; }
  .small-push-7 {
    position: relative;
    left: 58.33333%;
    right: auto; }
  .small-pull-7 {
    position: relative;
    right: 58.33333%;
    left: auto; }
  .small-push-8 {
    position: relative;
    left: 66.66667%;
    right: auto; }
  .small-pull-8 {
    position: relative;
    right: 66.66667%;
    left: auto; }
  .small-push-9 {
    position: relative;
    left: 75%;
    right: auto; }
  .small-pull-9 {
    position: relative;
    right: 75%;
    left: auto; }
  .small-push-10 {
    position: relative;
    left: 83.33333%;
    right: auto; }
  .small-pull-10 {
    position: relative;
    right: 83.33333%;
    left: auto; }
  .small-push-11 {
    position: relative;
    left: 91.66667%;
    right: auto; }
  .small-pull-11 {
    position: relative;
    right: 91.66667%;
    left: auto; }
  .column,
  .columns {
    position: relative;
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    float: left; }
  .small-1 {
    width: 8.33333%; }
  .small-2 {
    width: 16.66667%; }
  .small-3 {
    width: 25%; }
  .small-4 {
    width: 33.33333%; }
  .small-5 {
    width: 41.66667%; }
  .small-6 {
    width: 50%; }
  .small-7 {
    width: 58.33333%; }
  .small-8 {
    width: 66.66667%; }
  .small-9 {
    width: 75%; }
  .small-10 {
    width: 83.33333%; }
  .small-11 {
    width: 91.66667%; }
  .small-12 {
    width: 100%; }
  .small-offset-0 {
    margin-left: 0% !important; }
  .small-offset-1 {
    margin-left: 8.33333% !important; }
  .small-offset-2 {
    margin-left: 16.66667% !important; }
  .small-offset-3 {
    margin-left: 25% !important; }
  .small-offset-4 {
    margin-left: 33.33333% !important; }
  .small-offset-5 {
    margin-left: 41.66667% !important; }
  .small-offset-6 {
    margin-left: 50% !important; }
  .small-offset-7 {
    margin-left: 58.33333% !important; }
  .small-offset-8 {
    margin-left: 66.66667% !important; }
  .small-offset-9 {
    margin-left: 75% !important; }
  .small-offset-10 {
    margin-left: 83.33333% !important; }
  .small-offset-11 {
    margin-left: 91.66667% !important; }
  .small-reset-order {
    margin-left: 0;
    margin-right: 0;
    left: auto;
    right: auto;
    float: left; }
  .column.small-centered,
  .columns.small-centered {
    margin-left: auto;
    margin-right: auto;
    float: none; }
  .column.small-uncentered,
  .columns.small-uncentered {
    margin-left: 0;
    margin-right: 0;
    float: left; }
  .column.small-centered:last-child,
  .columns.small-centered:last-child {
    float: none; }
  .column.small-uncentered:last-child,
  .columns.small-uncentered:last-child {
    float: left; }
  .column.small-uncentered.opposite,
  .columns.small-uncentered.opposite {
    float: right; }
  .row.small-collapse > .column,
  .row.small-collapse > .columns {
    padding-left: 0;
    padding-right: 0; }
  .row.small-collapse .row {
    margin-left: 0;
    margin-right: 0; }
  .row.small-uncollapse > .column,
  .row.small-uncollapse > .columns {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    float: left; } }

@media only screen and (min-width: 40.063em) {
  .medium-push-0 {
    position: relative;
    left: 0%;
    right: auto; }
  .medium-pull-0 {
    position: relative;
    right: 0%;
    left: auto; }
  .medium-push-1 {
    position: relative;
    left: 8.33333%;
    right: auto; }
  .medium-pull-1 {
    position: relative;
    right: 8.33333%;
    left: auto; }
  .medium-push-2 {
    position: relative;
    left: 16.66667%;
    right: auto; }
  .medium-pull-2 {
    position: relative;
    right: 16.66667%;
    left: auto; }
  .medium-push-3 {
    position: relative;
    left: 25%;
    right: auto; }
  .medium-pull-3 {
    position: relative;
    right: 25%;
    left: auto; }
  .medium-push-4 {
    position: relative;
    left: 33.33333%;
    right: auto; }
  .medium-pull-4 {
    position: relative;
    right: 33.33333%;
    left: auto; }
  .medium-push-5 {
    position: relative;
    left: 41.66667%;
    right: auto; }
  .medium-pull-5 {
    position: relative;
    right: 41.66667%;
    left: auto; }
  .medium-push-6 {
    position: relative;
    left: 50%;
    right: auto; }
  .medium-pull-6 {
    position: relative;
    right: 50%;
    left: auto; }
  .medium-push-7 {
    position: relative;
    left: 58.33333%;
    right: auto; }
  .medium-pull-7 {
    position: relative;
    right: 58.33333%;
    left: auto; }
  .medium-push-8 {
    position: relative;
    left: 66.66667%;
    right: auto; }
  .medium-pull-8 {
    position: relative;
    right: 66.66667%;
    left: auto; }
  .medium-push-9 {
    position: relative;
    left: 75%;
    right: auto; }
  .medium-pull-9 {
    position: relative;
    right: 75%;
    left: auto; }
  .medium-push-10 {
    position: relative;
    left: 83.33333%;
    right: auto; }
  .medium-pull-10 {
    position: relative;
    right: 83.33333%;
    left: auto; }
  .medium-push-11 {
    position: relative;
    left: 91.66667%;
    right: auto; }
  .medium-pull-11 {
    position: relative;
    right: 91.66667%;
    left: auto; }
  .column,
  .columns {
    position: relative;
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    float: left; }
  .medium-1 {
    width: 8.33333%; }
  .medium-2 {
    width: 16.66667%; }
  .medium-3 {
    width: 25%; }
  .medium-4 {
    width: 33.33333%; }
  .medium-5 {
    width: 41.66667%; }
  .medium-6 {
    width: 50%; }
  .medium-7 {
    width: 58.33333%; }
  .medium-8 {
    width: 66.66667%; }
  .medium-9 {
    width: 75%; }
  .medium-10 {
    width: 83.33333%; }
  .medium-11 {
    width: 91.66667%; }
  .medium-12 {
    width: 100%; }
  .medium-offset-0 {
    margin-left: 0% !important; }
  .medium-offset-1 {
    margin-left: 8.33333% !important; }
  .medium-offset-2 {
    margin-left: 16.66667% !important; }
  .medium-offset-3 {
    margin-left: 25% !important; }
  .medium-offset-4 {
    margin-left: 33.33333% !important; }
  .medium-offset-5 {
    margin-left: 41.66667% !important; }
  .medium-offset-6 {
    margin-left: 50% !important; }
  .medium-offset-7 {
    margin-left: 58.33333% !important; }
  .medium-offset-8 {
    margin-left: 66.66667% !important; }
  .medium-offset-9 {
    margin-left: 75% !important; }
  .medium-offset-10 {
    margin-left: 83.33333% !important; }
  .medium-offset-11 {
    margin-left: 91.66667% !important; }
  .medium-reset-order {
    margin-left: 0;
    margin-right: 0;
    left: auto;
    right: auto;
    float: left; }
  .column.medium-centered,
  .columns.medium-centered {
    margin-left: auto;
    margin-right: auto;
    float: none; }
  .column.medium-uncentered,
  .columns.medium-uncentered {
    margin-left: 0;
    margin-right: 0;
    float: left; }
  .column.medium-centered:last-child,
  .columns.medium-centered:last-child {
    float: none; }
  .column.medium-uncentered:last-child,
  .columns.medium-uncentered:last-child {
    float: left; }
  .column.medium-uncentered.opposite,
  .columns.medium-uncentered.opposite {
    float: right; }
  .row.medium-collapse > .column,
  .row.medium-collapse > .columns {
    padding-left: 0;
    padding-right: 0; }
  .row.medium-collapse .row {
    margin-left: 0;
    margin-right: 0; }
  .row.medium-uncollapse > .column,
  .row.medium-uncollapse > .columns {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    float: left; }
  .push-0 {
    position: relative;
    left: 0%;
    right: auto; }
  .pull-0 {
    position: relative;
    right: 0%;
    left: auto; }
  .push-1 {
    position: relative;
    left: 8.33333%;
    right: auto; }
  .pull-1 {
    position: relative;
    right: 8.33333%;
    left: auto; }
  .push-2 {
    position: relative;
    left: 16.66667%;
    right: auto; }
  .pull-2 {
    position: relative;
    right: 16.66667%;
    left: auto; }
  .push-3 {
    position: relative;
    left: 25%;
    right: auto; }
  .pull-3 {
    position: relative;
    right: 25%;
    left: auto; }
  .push-4 {
    position: relative;
    left: 33.33333%;
    right: auto; }
  .pull-4 {
    position: relative;
    right: 33.33333%;
    left: auto; }
  .push-5 {
    position: relative;
    left: 41.66667%;
    right: auto; }
  .pull-5 {
    position: relative;
    right: 41.66667%;
    left: auto; }
  .push-6 {
    position: relative;
    left: 50%;
    right: auto; }
  .pull-6 {
    position: relative;
    right: 50%;
    left: auto; }
  .push-7 {
    position: relative;
    left: 58.33333%;
    right: auto; }
  .pull-7 {
    position: relative;
    right: 58.33333%;
    left: auto; }
  .push-8 {
    position: relative;
    left: 66.66667%;
    right: auto; }
  .pull-8 {
    position: relative;
    right: 66.66667%;
    left: auto; }
  .push-9 {
    position: relative;
    left: 75%;
    right: auto; }
  .pull-9 {
    position: relative;
    right: 75%;
    left: auto; }
  .push-10 {
    position: relative;
    left: 83.33333%;
    right: auto; }
  .pull-10 {
    position: relative;
    right: 83.33333%;
    left: auto; }
  .push-11 {
    position: relative;
    left: 91.66667%;
    right: auto; }
  .pull-11 {
    position: relative;
    right: 91.66667%;
    left: auto; } }

@media only screen and (min-width: 64.063em) {
  .large-push-0 {
    position: relative;
    left: 0%;
    right: auto; }
  .large-pull-0 {
    position: relative;
    right: 0%;
    left: auto; }
  .large-push-1 {
    position: relative;
    left: 8.33333%;
    right: auto; }
  .large-pull-1 {
    position: relative;
    right: 8.33333%;
    left: auto; }
  .large-push-2 {
    position: relative;
    left: 16.66667%;
    right: auto; }
  .large-pull-2 {
    position: relative;
    right: 16.66667%;
    left: auto; }
  .large-push-3 {
    position: relative;
    left: 25%;
    right: auto; }
  .large-pull-3 {
    position: relative;
    right: 25%;
    left: auto; }
  .large-push-4 {
    position: relative;
    left: 33.33333%;
    right: auto; }
  .large-pull-4 {
    position: relative;
    right: 33.33333%;
    left: auto; }
  .large-push-5 {
    position: relative;
    left: 41.66667%;
    right: auto; }
  .large-pull-5 {
    position: relative;
    right: 41.66667%;
    left: auto; }
  .large-push-6 {
    position: relative;
    left: 50%;
    right: auto; }
  .large-pull-6 {
    position: relative;
    right: 50%;
    left: auto; }
  .large-push-7 {
    position: relative;
    left: 58.33333%;
    right: auto; }
  .large-pull-7 {
    position: relative;
    right: 58.33333%;
    left: auto; }
  .large-push-8 {
    position: relative;
    left: 66.66667%;
    right: auto; }
  .large-pull-8 {
    position: relative;
    right: 66.66667%;
    left: auto; }
  .large-push-9 {
    position: relative;
    left: 75%;
    right: auto; }
  .large-pull-9 {
    position: relative;
    right: 75%;
    left: auto; }
  .large-push-10 {
    position: relative;
    left: 83.33333%;
    right: auto; }
  .large-pull-10 {
    position: relative;
    right: 83.33333%;
    left: auto; }
  .large-push-11 {
    position: relative;
    left: 91.66667%;
    right: auto; }
  .large-pull-11 {
    position: relative;
    right: 91.66667%;
    left: auto; }
  .column,
  .columns {
    position: relative;
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    float: left; }
  .large-1 {
    width: 8.33333%; }
  .large-2 {
    width: 16.66667%; }
  .large-3 {
    width: 25%; }
  .large-4 {
    width: 33.33333%; }
  .large-5 {
    width: 41.66667%; }
  .large-6 {
    width: 50%; }
  .large-7 {
    width: 58.33333%; }
  .large-8 {
    width: 66.66667%; }
  .large-9 {
    width: 75%; }
  .large-10 {
    width: 83.33333%; }
  .large-11 {
    width: 91.66667%; }
  .large-12 {
    width: 100%; }
  .large-offset-0 {
    margin-left: 0% !important; }
  .large-offset-1 {
    margin-left: 8.33333% !important; }
  .large-offset-2 {
    margin-left: 16.66667% !important; }
  .large-offset-3 {
    margin-left: 25% !important; }
  .large-offset-4 {
    margin-left: 33.33333% !important; }
  .large-offset-5 {
    margin-left: 41.66667% !important; }
  .large-offset-6 {
    margin-left: 50% !important; }
  .large-offset-7 {
    margin-left: 58.33333% !important; }
  .large-offset-8 {
    margin-left: 66.66667% !important; }
  .large-offset-9 {
    margin-left: 75% !important; }
  .large-offset-10 {
    margin-left: 83.33333% !important; }
  .large-offset-11 {
    margin-left: 91.66667% !important; }
  .large-reset-order {
    margin-left: 0;
    margin-right: 0;
    left: auto;
    right: auto;
    float: left; }
  .column.large-centered,
  .columns.large-centered {
    margin-left: auto;
    margin-right: auto;
    float: none; }
  .column.large-uncentered,
  .columns.large-uncentered {
    margin-left: 0;
    margin-right: 0;
    float: left; }
  .column.large-centered:last-child,
  .columns.large-centered:last-child {
    float: none; }
  .column.large-uncentered:last-child,
  .columns.large-uncentered:last-child {
    float: left; }
  .column.large-uncentered.opposite,
  .columns.large-uncentered.opposite {
    float: right; }
  .row.large-collapse > .column,
  .row.large-collapse > .columns {
    padding-left: 0;
    padding-right: 0; }
  .row.large-collapse .row {
    margin-left: 0;
    margin-right: 0; }
  .row.large-uncollapse > .column,
  .row.large-uncollapse > .columns {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    float: left; }
  .push-0 {
    position: relative;
    left: 0%;
    right: auto; }
  .pull-0 {
    position: relative;
    right: 0%;
    left: auto; }
  .push-1 {
    position: relative;
    left: 8.33333%;
    right: auto; }
  .pull-1 {
    position: relative;
    right: 8.33333%;
    left: auto; }
  .push-2 {
    position: relative;
    left: 16.66667%;
    right: auto; }
  .pull-2 {
    position: relative;
    right: 16.66667%;
    left: auto; }
  .push-3 {
    position: relative;
    left: 25%;
    right: auto; }
  .pull-3 {
    position: relative;
    right: 25%;
    left: auto; }
  .push-4 {
    position: relative;
    left: 33.33333%;
    right: auto; }
  .pull-4 {
    position: relative;
    right: 33.33333%;
    left: auto; }
  .push-5 {
    position: relative;
    left: 41.66667%;
    right: auto; }
  .pull-5 {
    position: relative;
    right: 41.66667%;
    left: auto; }
  .push-6 {
    position: relative;
    left: 50%;
    right: auto; }
  .pull-6 {
    position: relative;
    right: 50%;
    left: auto; }
  .push-7 {
    position: relative;
    left: 58.33333%;
    right: auto; }
  .pull-7 {
    position: relative;
    right: 58.33333%;
    left: auto; }
  .push-8 {
    position: relative;
    left: 66.66667%;
    right: auto; }
  .pull-8 {
    position: relative;
    right: 66.66667%;
    left: auto; }
  .push-9 {
    position: relative;
    left: 75%;
    right: auto; }
  .pull-9 {
    position: relative;
    right: 75%;
    left: auto; }
  .push-10 {
    position: relative;
    left: 83.33333%;
    right: auto; }
  .pull-10 {
    position: relative;
    right: 83.33333%;
    left: auto; }
  .push-11 {
    position: relative;
    left: 91.66667%;
    right: auto; }
  .pull-11 {
    position: relative;
    right: 91.66667%;
    left: auto; } }

button, .button {
  border-style: solid;
  border-width: 0;
  cursor: pointer;
  font-family: Source Sans Pro, sans-serif;
  font-weight: normal;
  line-height: normal;
  margin: 0 0 1.25rem;
  position: relative;
  text-decoration: none;
  text-align: center;
  -webkit-appearance: none;
  -moz-appearance: none;
  border-radius: 0;
  display: inline-block;
  padding-top: 1rem;
  padding-right: 2rem;
  padding-bottom: 1.0625rem;
  padding-left: 2rem;
  font-size: 1rem;
  background-color: #008CBA;
  border-color: #007095;
  color: #FFFFFF;
  transition: background-color 300ms ease-out; }
  button:hover, button:focus, .button:hover, .button:focus {
    background-color: #007095; }
  button:hover, button:focus, .button:hover, .button:focus {
    color: #FFFFFF; }
  button.secondary, .button.secondary {
    background-color: #e7e7e7;
    border-color: #b9b9b9;
    color: #333333; }
    button.secondary:hover, button.secondary:focus, .button.secondary:hover, .button.secondary:focus {
      background-color: #b9b9b9; }
    button.secondary:hover, button.secondary:focus, .button.secondary:hover, .button.secondary:focus {
      color: #333333; }
  button.success, .button.success {
    background-color: #43AC6A;
    border-color: #368a55;
    color: #FFFFFF; }
    button.success:hover, button.success:focus, .button.success:hover, .button.success:focus {
      background-color: #368a55; }
    button.success:hover, button.success:focus, .button.success:hover, .button.success:focus {
      color: #FFFFFF; }
  button.alert, .button.alert {
    background-color: #f04124;
    border-color: #cf2a0e;
    color: #FFFFFF; }
    button.alert:hover, button.alert:focus, .button.alert:hover, .button.alert:focus {
      background-color: #cf2a0e; }
    button.alert:hover, button.alert:focus, .button.alert:hover, .button.alert:focus {
      color: #FFFFFF; }
  button.warning, .button.warning {
    background-color: #f08a24;
    border-color: #cf6e0e;
    color: #FFFFFF; }
    button.warning:hover, button.warning:focus, .button.warning:hover, .button.warning:focus {
      background-color: #cf6e0e; }
    button.warning:hover, button.warning:focus, .button.warning:hover, .button.warning:focus {
      color: #FFFFFF; }
  button.info, .button.info {
    background-color: #a0d3e8;
    border-color: #61b6d9;
    color: #333333; }
    button.info:hover, button.info:focus, .button.info:hover, .button.info:focus {
      background-color: #61b6d9; }
    button.info:hover, button.info:focus, .button.info:hover, .button.info:focus {
      color: #FFFFFF; }
  button.large, .button.large {
    padding-top: 1.125rem;
    padding-right: 2.25rem;
    padding-bottom: 1.1875rem;
    padding-left: 2.25rem;
    font-size: 1.25rem; }
  button.small, .button.small {
    padding-top: 0.875rem;
    padding-right: 1.75rem;
    padding-bottom: 0.9375rem;
    padding-left: 1.75rem;
    font-size: 0.8125rem; }
  button.tiny, .button.tiny {
    padding-top: 0.625rem;
    padding-right: 1.25rem;
    padding-bottom: 0.6875rem;
    padding-left: 1.25rem;
    font-size: 0.6875rem; }
  button.expand, .button.expand {
    padding-right: 0;
    padding-left: 0;
    width: 100%; }
  button.left-align, .button.left-align {
    text-align: left;
    text-indent: 0.75rem; }
  button.right-align, .button.right-align {
    text-align: right;
    padding-right: 0.75rem; }
  button.radius, .button.radius {
    border-radius: 3px; }
  button.round, .button.round {
    border-radius: 1000px; }
  button.disabled, button[disabled], .button.disabled, .button[disabled] {
    background-color: #008CBA;
    border-color: #007095;
    color: #FFFFFF;
    cursor: default;
    opacity: 0.7;
    box-shadow: none; }
    button.disabled:hover, button.disabled:focus, button[disabled]:hover, button[disabled]:focus, .button.disabled:hover, .button.disabled:focus, .button[disabled]:hover, .button[disabled]:focus {
      background-color: #007095; }
    button.disabled:hover, button.disabled:focus, button[disabled]:hover, button[disabled]:focus, .button.disabled:hover, .button.disabled:focus, .button[disabled]:hover, .button[disabled]:focus {
      color: #FFFFFF; }
    button.disabled:hover, button.disabled:focus, button[disabled]:hover, button[disabled]:focus, .button.disabled:hover, .button.disabled:focus, .button[disabled]:hover, .button[disabled]:focus {
      background-color: #008CBA; }
    button.disabled.secondary, button[disabled].secondary, .button.disabled.secondary, .button[disabled].secondary {
      background-color: #e7e7e7;
      border-color: #b9b9b9;
      color: #333333;
      cursor: default;
      opacity: 0.7;
      box-shadow: none; }
      button.disabled.secondary:hover, button.disabled.secondary:focus, button[disabled].secondary:hover, button[disabled].secondary:focus, .button.disabled.secondary:hover, .button.disabled.secondary:focus, .button[disabled].secondary:hover, .button[disabled].secondary:focus {
        background-color: #b9b9b9; }
      button.disabled.secondary:hover, button.disabled.secondary:focus, button[disabled].secondary:hover, button[disabled].secondary:focus, .button.disabled.secondary:hover, .button.disabled.secondary:focus, .button[disabled].secondary:hover, .button[disabled].secondary:focus {
        color: #333333; }
      button.disabled.secondary:hover, button.disabled.secondary:focus, button[disabled].secondary:hover, button[disabled].secondary:focus, .button.disabled.secondary:hover, .button.disabled.secondary:focus, .button[disabled].secondary:hover, .button[disabled].secondary:focus {
        background-color: #e7e7e7; }
    button.disabled.success, button[disabled].success, .button.disabled.success, .button[disabled].success {
      background-color: #43AC6A;
      border-color: #368a55;
      color: #FFFFFF;
      cursor: default;
      opacity: 0.7;
      box-shadow: none; }
      button.disabled.success:hover, button.disabled.success:focus, button[disabled].success:hover, button[disabled].success:focus, .button.disabled.success:hover, .button.disabled.success:focus, .button[disabled].success:hover, .button[disabled].success:focus {
        background-color: #368a55; }
      button.disabled.success:hover, button.disabled.success:focus, button[disabled].success:hover, button[disabled].success:focus, .button.disabled.success:hover, .button.disabled.success:focus, .button[disabled].success:hover, .button[disabled].success:focus {
        color: #FFFFFF; }
      button.disabled.success:hover, button.disabled.success:focus, button[disabled].success:hover, button[disabled].success:focus, .button.disabled.success:hover, .button.disabled.success:focus, .button[disabled].success:hover, .button[disabled].success:focus {
        background-color: #43AC6A; }
    button.disabled.alert, button[disabled].alert, .button.disabled.alert, .button[disabled].alert {
      background-color: #f04124;
      border-color: #cf2a0e;
      color: #FFFFFF;
      cursor: default;
      opacity: 0.7;
      box-shadow: none; }
      button.disabled.alert:hover, button.disabled.alert:focus, button[disabled].alert:hover, button[disabled].alert:focus, .button.disabled.alert:hover, .button.disabled.alert:focus, .button[disabled].alert:hover, .button[disabled].alert:focus {
        background-color: #cf2a0e; }
      button.disabled.alert:hover, button.disabled.alert:focus, button[disabled].alert:hover, button[disabled].alert:focus, .button.disabled.alert:hover, .button.disabled.alert:focus, .button[disabled].alert:hover, .button[disabled].alert:focus {
        color: #FFFFFF; }
      button.disabled.alert:hover, button.disabled.alert:focus, button[disabled].alert:hover, button[disabled].alert:focus, .button.disabled.alert:hover, .button.disabled.alert:focus, .button[disabled].alert:hover, .button[disabled].alert:focus {
        background-color: #f04124; }
    button.disabled.warning, button[disabled].warning, .button.disabled.warning, .button[disabled].warning {
      background-color: #f08a24;
      border-color: #cf6e0e;
      color: #FFFFFF;
      cursor: default;
      opacity: 0.7;
      box-shadow: none; }
      button.disabled.warning:hover, button.disabled.warning:focus, button[disabled].warning:hover, button[disabled].warning:focus, .button.disabled.warning:hover, .button.disabled.warning:focus, .button[disabled].warning:hover, .button[disabled].warning:focus {
        background-color: #cf6e0e; }
      button.disabled.warning:hover, button.disabled.warning:focus, button[disabled].warning:hover, button[disabled].warning:focus, .button.disabled.warning:hover, .button.disabled.warning:focus, .button[disabled].warning:hover, .button[disabled].warning:focus {
        color: #FFFFFF; }
      button.disabled.warning:hover, button.disabled.warning:focus, button[disabled].warning:hover, button[disabled].warning:focus, .button.disabled.warning:hover, .button.disabled.warning:focus, .button[disabled].warning:hover, .button[disabled].warning:focus {
        background-color: #f08a24; }
    button.disabled.info, button[disabled].info, .button.disabled.info, .button[disabled].info {
      background-color: #a0d3e8;
      border-color: #61b6d9;
      color: #333333;
      cursor: default;
      opacity: 0.7;
      box-shadow: none; }
      button.disabled.info:hover, button.disabled.info:focus, button[disabled].info:hover, button[disabled].info:focus, .button.disabled.info:hover, .button.disabled.info:focus, .button[disabled].info:hover, .button[disabled].info:focus {
        background-color: #61b6d9; }
      button.disabled.info:hover, button.disabled.info:focus, button[disabled].info:hover, button[disabled].info:focus, .button.disabled.info:hover, .button.disabled.info:focus, .button[disabled].info:hover, .button[disabled].info:focus {
        color: #FFFFFF; }
      button.disabled.info:hover, button.disabled.info:focus, button[disabled].info:hover, button[disabled].info:focus, .button.disabled.info:hover, .button.disabled.info:focus, .button[disabled].info:hover, .button[disabled].info:focus {
        background-color: #a0d3e8; }

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

@media only screen and (min-width: 40.063em) {
  button, .button {
    display: inline-block; } }

/* Standard Forms */
form {
  margin: 0 0 1rem; }

/* Using forms within rows, we need to set some defaults */
form .row .row {
  margin: 0 -0.5rem; }
  form .row .row .column,
  form .row .row .columns {
    padding: 0 0.5rem; }
  form .row .row.collapse {
    margin: 0; }
    form .row .row.collapse .column,
    form .row .row.collapse .columns {
      padding: 0; }
    form .row .row.collapse input {
      -webkit-border-bottom-right-radius: 0;
      -webkit-border-top-right-radius: 0;
      border-bottom-right-radius: 0;
      border-top-right-radius: 0; }

form .row input.column,
form .row input.columns,
form .row textarea.column,
form .row textarea.columns {
  padding-left: 0.5rem; }

/* Label Styles */
label {
  font-size: 0.875rem;
  color: #4d4d4d;
  cursor: pointer;
  display: block;
  font-weight: normal;
  line-height: 1.5;
  margin-bottom: 0;
  /* Styles for required inputs */ }
  label.right {
    float: none !important;
    text-align: right; }
  label.inline {
    margin: 0 0 1rem 0;
    padding: 0.5625rem 0; }
  label small {
    text-transform: capitalize;
    color: #676767; }

/* Attach elements to the beginning or end of an input */
.prefix,
.postfix {
  display: block;
  position: relative;
  z-index: 2;
  text-align: center;
  width: 100%;
  padding-top: 0;
  padding-bottom: 0;
  border-style: solid;
  border-width: 1px;
  overflow: visible;
  font-size: 0.875rem;
  height: 2.3125rem;
  line-height: 2.3125rem; }

/* Adjust padding, alignment and radius if pre/post element is a button */
.postfix.button {
  padding-left: 0;
  padding-right: 0;
  padding-top: 0;
  padding-bottom: 0;
  text-align: center;
  border: none; }

.prefix.button {
  padding-left: 0;
  padding-right: 0;
  padding-top: 0;
  padding-bottom: 0;
  text-align: center;
  border: none; }

.prefix.button.radius {
  border-radius: 0;
  -webkit-border-bottom-left-radius: 3px;
  -webkit-border-top-left-radius: 3px;
  border-bottom-left-radius: 3px;
  border-top-left-radius: 3px; }

.postfix.button.radius {
  border-radius: 0;
  -webkit-border-bottom-right-radius: 3px;
  -webkit-border-top-right-radius: 3px;
  border-bottom-right-radius: 3px;
  border-top-right-radius: 3px; }

.prefix.button.round {
  border-radius: 0;
  -webkit-border-bottom-left-radius: 1000px;
  -webkit-border-top-left-radius: 1000px;
  border-bottom-left-radius: 1000px;
  border-top-left-radius: 1000px; }

.postfix.button.round {
  border-radius: 0;
  -webkit-border-bottom-right-radius: 1000px;
  -webkit-border-top-right-radius: 1000px;
  border-bottom-right-radius: 1000px;
  border-top-right-radius: 1000px; }

/* Separate prefix and postfix styles when on span or label so buttons keep their own */
span.prefix, label.prefix {
  background: #f2f2f2;
  border-right: none;
  color: #333333;
  border-color: #cccccc; }

span.postfix, label.postfix {
  background: #f2f2f2;
  border-left: none;
  color: #333333;
  border-color: #cccccc; }

/* We use this to get basic styling on all basic form elements */
input[type="text"], input[type="password"], input[type="date"], input[type="datetime"], input[type="datetime-local"], input[type="month"], input[type="week"], input[type="email"], input[type="number"], input[type="search"], input[type="tel"], input[type="time"], input[type="url"], input[type="color"], textarea {
  -webkit-appearance: none;
  border-radius: 0;
  background-color: #FFFFFF;
  font-family: inherit;
  border-style: solid;
  border-width: 1px;
  border-color: #cccccc;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
  color: rgba(0, 0, 0, 0.75);
  display: block;
  font-size: 0.875rem;
  margin: 0 0 1rem 0;
  padding: 0.5rem;
  height: 2.3125rem;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  transition: all 0.15s linear; }
  input[type="text"]:focus, input[type="password"]:focus, input[type="date"]:focus, input[type="datetime"]:focus, input[type="datetime-local"]:focus, input[type="month"]:focus, input[type="week"]:focus, input[type="email"]:focus, input[type="number"]:focus, input[type="search"]:focus, input[type="tel"]:focus, input[type="time"]:focus, input[type="url"]:focus, input[type="color"]:focus, textarea:focus {
    background: #fafafa;
    border-color: #999999;
    outline: none; }
  input[type="text"]:disabled, input[type="password"]:disabled, input[type="date"]:disabled, input[type="datetime"]:disabled, input[type="datetime-local"]:disabled, input[type="month"]:disabled, input[type="week"]:disabled, input[type="email"]:disabled, input[type="number"]:disabled, input[type="search"]:disabled, input[type="tel"]:disabled, input[type="time"]:disabled, input[type="url"]:disabled, input[type="color"]:disabled, textarea:disabled {
    background-color: #DDDDDD;
    cursor: default; }
  input[type="text"][disabled], input[type="text"][readonly],
  fieldset[disabled] input[type="text"], input[type="password"][disabled], input[type="password"][readonly],
  fieldset[disabled] input[type="password"], input[type="date"][disabled], input[type="date"][readonly],
  fieldset[disabled] input[type="date"], input[type="datetime"][disabled], input[type="datetime"][readonly],
  fieldset[disabled] input[type="datetime"], input[type="datetime-local"][disabled], input[type="datetime-local"][readonly],
  fieldset[disabled] input[type="datetime-local"], input[type="month"][disabled], input[type="month"][readonly],
  fieldset[disabled] input[type="month"], input[type="week"][disabled], input[type="week"][readonly],
  fieldset[disabled] input[type="week"], input[type="email"][disabled], input[type="email"][readonly],
  fieldset[disabled] input[type="email"], input[type="number"][disabled], input[type="number"][readonly],
  fieldset[disabled] input[type="number"], input[type="search"][disabled], input[type="search"][readonly],
  fieldset[disabled] input[type="search"], input[type="tel"][disabled], input[type="tel"][readonly],
  fieldset[disabled] input[type="tel"], input[type="time"][disabled], input[type="time"][readonly],
  fieldset[disabled] input[type="time"], input[type="url"][disabled], input[type="url"][readonly],
  fieldset[disabled] input[type="url"], input[type="color"][disabled], input[type="color"][readonly],
  fieldset[disabled] input[type="color"], textarea[disabled], textarea[readonly],
  fieldset[disabled] textarea {
    background-color: #DDDDDD;
    cursor: default; }
  input[type="text"].radius, input[type="password"].radius, input[type="date"].radius, input[type="datetime"].radius, input[type="datetime-local"].radius, input[type="month"].radius, input[type="week"].radius, input[type="email"].radius, input[type="number"].radius, input[type="search"].radius, input[type="tel"].radius, input[type="time"].radius, input[type="url"].radius, input[type="color"].radius, textarea.radius {
    border-radius: 3px; }

form .row .prefix-radius.row.collapse input,
form .row .prefix-radius.row.collapse textarea,
form .row .prefix-radius.row.collapse select,
form .row .prefix-radius.row.collapse button {
  border-radius: 0;
  -webkit-border-bottom-right-radius: 3px;
  -webkit-border-top-right-radius: 3px;
  border-bottom-right-radius: 3px;
  border-top-right-radius: 3px; }

form .row .prefix-radius.row.collapse .prefix {
  border-radius: 0;
  -webkit-border-bottom-left-radius: 3px;
  -webkit-border-top-left-radius: 3px;
  border-bottom-left-radius: 3px;
  border-top-left-radius: 3px; }

form .row .postfix-radius.row.collapse input,
form .row .postfix-radius.row.collapse textarea,
form .row .postfix-radius.row.collapse select,
form .row .postfix-radius.row.collapse button {
  border-radius: 0;
  -webkit-border-bottom-left-radius: 3px;
  -webkit-border-top-left-radius: 3px;
  border-bottom-left-radius: 3px;
  border-top-left-radius: 3px; }

form .row .postfix-radius.row.collapse .postfix {
  border-radius: 0;
  -webkit-border-bottom-right-radius: 3px;
  -webkit-border-top-right-radius: 3px;
  border-bottom-right-radius: 3px;
  border-top-right-radius: 3px; }

form .row .prefix-round.row.collapse input,
form .row .prefix-round.row.collapse textarea,
form .row .prefix-round.row.collapse select,
form .row .prefix-round.row.collapse button {
  border-radius: 0;
  -webkit-border-bottom-right-radius: 1000px;
  -webkit-border-top-right-radius: 1000px;
  border-bottom-right-radius: 1000px;
  border-top-right-radius: 1000px; }

form .row .prefix-round.row.collapse .prefix {
  border-radius: 0;
  -webkit-border-bottom-left-radius: 1000px;
  -webkit-border-top-left-radius: 1000px;
  border-bottom-left-radius: 1000px;
  border-top-left-radius: 1000px; }

form .row .postfix-round.row.collapse input,
form .row .postfix-round.row.collapse textarea,
form .row .postfix-round.row.collapse select,
form .row .postfix-round.row.collapse button {
  border-radius: 0;
  -webkit-border-bottom-left-radius: 1000px;
  -webkit-border-top-left-radius: 1000px;
  border-bottom-left-radius: 1000px;
  border-top-left-radius: 1000px; }

form .row .postfix-round.row.collapse .postfix {
  border-radius: 0;
  -webkit-border-bottom-right-radius: 1000px;
  -webkit-border-top-right-radius: 1000px;
  border-bottom-right-radius: 1000px;
  border-top-right-radius: 1000px; }

input[type="submit"] {
  -webkit-appearance: none;
  border-radius: 0; }

/* Respect enforced amount of rows for textarea */
textarea[rows] {
  height: auto; }

/* Not allow resize out of parent */
textarea {
  max-width: 100%; }

/* Add height value for select elements to match text input height */
select {
  -webkit-appearance: none !important;
  border-radius: 0;
  background-color: #FAFAFA;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgeD0iMTJweCIgeT0iMHB4IiB3aWR0aD0iMjRweCIgaGVpZ2h0PSIzcHgiIHZpZXdCb3g9IjAgMCA2IDMiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDYgMyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PHBvbHlnb24gcG9pbnRzPSI1Ljk5MiwwIDIuOTkyLDMgLTAuMDA4LDAgIi8+PC9zdmc+);
  background-position: 100% center;
  background-repeat: no-repeat;
  border-style: solid;
  border-width: 1px;
  border-color: #cccccc;
  padding: 0.5rem;
  font-size: 0.875rem;
  font-family: Source Sans Pro, sans-serif;
  color: rgba(0, 0, 0, 0.75);
  line-height: normal;
  border-radius: 0;
  height: 2.3125rem; }
  select::-ms-expand {
    display: none; }
  select.radius {
    border-radius: 3px; }
  select:hover {
    background-color: #f3f3f3;
    border-color: #999999; }
  select:disabled {
    background-color: #DDDDDD;
    cursor: default; }
  select[multiple] {
    height: auto; }

/* Adjust margin for form elements below */
input[type="file"],
input[type="checkbox"],
input[type="radio"],
select {
  margin: 0 0 1rem 0; }

input[type="checkbox"] + label,
input[type="radio"] + label {
  display: inline-block;
  margin-left: 0.5rem;
  margin-right: 1rem;
  margin-bottom: 0;
  vertical-align: baseline; }

/* Normalize file input width */
input[type="file"] {
  width: 100%; }

/* HTML5 Number spinners settings */
/* We add basic fieldset styling */
fieldset {
  border: 1px solid #DDDDDD;
  padding: 1.25rem;
  margin: 1.125rem 0; }
  fieldset legend {
    font-weight: bold;
    background: #FFFFFF;
    padding: 0 0.1875rem;
    margin: 0;
    margin-left: -0.1875rem; }

/* Error Handling */
[data-abide] .error small.error, [data-abide] .error span.error, [data-abide] span.error, [data-abide] small.error {
  display: block;
  padding: 0.375rem 0.5625rem 0.5625rem;
  margin-top: -1px;
  margin-bottom: 1rem;
  font-size: 0.75rem;
  font-weight: normal;
  font-style: italic;
  background: #f04124;
  color: #FFFFFF; }

[data-abide] span.error, [data-abide] small.error {
  display: none; }

span.error, small.error {
  display: block;
  padding: 0.375rem 0.5625rem 0.5625rem;
  margin-top: -1px;
  margin-bottom: 1rem;
  font-size: 0.75rem;
  font-weight: normal;
  font-style: italic;
  background: #f04124;
  color: #FFFFFF; }

.error input,
.error textarea,
.error select {
  margin-bottom: 0; }

.error input[type="checkbox"],
.error input[type="radio"] {
  margin-bottom: 1rem; }

.error label,
.error label.error {
  color: #f04124; }

.error small.error {
  display: block;
  padding: 0.375rem 0.5625rem 0.5625rem;
  margin-top: -1px;
  margin-bottom: 1rem;
  font-size: 0.75rem;
  font-weight: normal;
  font-style: italic;
  background: #f04124;
  color: #FFFFFF; }

.error > label > small {
  color: #676767;
  background: transparent;
  padding: 0;
  text-transform: capitalize;
  font-style: normal;
  font-size: 60%;
  margin: 0;
  display: inline; }

.error span.error-message {
  display: block; }

input.error,
textarea.error,
select.error {
  margin-bottom: 0; }

label.error {
  color: #f04124; }

meta.foundation-mq-topbar {
  font-family: "/only screen and (min-width:800px)/";
  width: 800px; }

/* Wrapped around .top-bar to contain to grid width */
.contain-to-grid {
  width: 100%;
  background: #f44; }
  .contain-to-grid .top-bar {
    margin-bottom: 0; }

.fixed {
  width: 100%;
  left: 0;
  position: fixed;
  top: 0;
  z-index: 99; }
  .fixed.expanded:not(.top-bar) {
    overflow-y: auto;
    height: auto;
    width: 100%;
    max-height: 100%; }
    .fixed.expanded:not(.top-bar) .title-area {
      position: fixed;
      width: 100%;
      z-index: 99; }
    .fixed.expanded:not(.top-bar) .top-bar-section {
      z-index: 98;
      margin-top: 3.75rem; }

.top-bar {
  overflow: hidden;
  height: 3.75rem;
  line-height: 3.75rem;
  position: relative;
  background: #f44;
  margin-bottom: 0; }
  .top-bar ul {
    margin-bottom: 0;
    list-style: none; }
  .top-bar .row {
    max-width: none; }
  .top-bar form,
  .top-bar input {
    margin-bottom: 0; }
  .top-bar input {
    height: 1.75rem;
    padding-top: .35rem;
    padding-bottom: .35rem;
    font-size: 0.75rem; }
  .top-bar .button, .top-bar button {
    padding-top: 0.4125rem;
    padding-bottom: 0.4125rem;
    margin-bottom: 0;
    font-size: 0.75rem; }
    @media only screen and (max-width: 40em) {
      .top-bar .button, .top-bar button {
        position: relative;
        top: -1px; } }
  .top-bar .title-area {
    position: relative;
    margin: 0; }
  .top-bar .name {
    height: 3.75rem;
    margin: 0;
    font-size: 16px; }
    .top-bar .name h1, .top-bar .name h2, .top-bar .name h3, .top-bar .name h4, .top-bar .name p, .top-bar .name span {
      line-height: 3.75rem;
      font-size: 1.0625rem;
      margin: 0; }
      .top-bar .name h1 a, .top-bar .name h2 a, .top-bar .name h3 a, .top-bar .name h4 a, .top-bar .name p a, .top-bar .name span a {
        font-weight: normal;
        color: #FFFFFF;
        width: 75%;
        display: block;
        padding: 0 1.25rem; }
  .top-bar .toggle-topbar {
    position: absolute;
    right: 0;
    top: 0; }
    .top-bar .toggle-topbar a {
      color: #FFFFFF;
      text-transform: uppercase;
      font-size: 0.8125rem;
      font-weight: bold;
      position: relative;
      display: block;
      padding: 0 1.25rem;
      height: 3.75rem;
      line-height: 3.75rem; }
    .top-bar .toggle-topbar.menu-icon {
      top: 50%;
      margin-top: -16px; }
      .top-bar .toggle-topbar.menu-icon a {
        height: 34px;
        line-height: 33px;
        padding: 0 2.8125rem 0 1.25rem;
        color: #FFFFFF;
        position: relative; }
        .top-bar .toggle-topbar.menu-icon a span::after {
          content: "";
          position: absolute;
          display: block;
          height: 0;
          top: 50%;
          margin-top: -8px;
          right: 1.25rem;
          box-shadow: 0 0 0 1px #FFFFFF, 0 7px 0 1px #FFFFFF, 0 14px 0 1px #FFFFFF;
          width: 16px; }
        .top-bar .toggle-topbar.menu-icon a span:hover:after {
          box-shadow: 0 0 0 1px "", 0 7px 0 1px "", 0 14px 0 1px ""; }
  .top-bar.expanded {
    height: auto;
    background: transparent; }
    .top-bar.expanded .title-area {
      background: #f44; }
    .top-bar.expanded .toggle-topbar a {
      color: #888888; }
      .top-bar.expanded .toggle-topbar a span::after {
        box-shadow: 0 0 0 1px #888888, 0 7px 0 1px #888888, 0 14px 0 1px #888888; }

.top-bar-section {
  left: 0;
  position: relative;
  width: auto;
  transition: left 300ms ease-out; }
  .top-bar-section ul {
    padding: 0;
    width: 100%;
    height: auto;
    display: block;
    font-size: 16px;
    margin: 0; }
  .top-bar-section .divider,
  .top-bar-section [role="separator"] {
    border-top: solid 1px #a20000;
    clear: both;
    height: 1px;
    width: 100%; }
  .top-bar-section ul li {
    background: #f44; }
    .top-bar-section ul li > a {
      display: block;
      width: 100%;
      color: #FFFFFF;
      padding: 12px 0 12px 0;
      padding-left: 1.25rem;
      font-family: Source Sans Pro, sans-serif;
      font-size: 0.8125rem;
      font-weight: normal;
      text-transform: none; }
      .top-bar-section ul li > a.button {
        font-size: 0.8125rem;
        padding-right: 1.25rem;
        padding-left: 1.25rem;
        background-color: #008CBA;
        border-color: #007095;
        color: #FFFFFF; }
        .top-bar-section ul li > a.button:hover, .top-bar-section ul li > a.button:focus {
          background-color: #007095; }
        .top-bar-section ul li > a.button:hover, .top-bar-section ul li > a.button:focus {
          color: #FFFFFF; }
      .top-bar-section ul li > a.button.secondary {
        background-color: #e7e7e7;
        border-color: #b9b9b9;
        color: #333333; }
        .top-bar-section ul li > a.button.secondary:hover, .top-bar-section ul li > a.button.secondary:focus {
          background-color: #b9b9b9; }
        .top-bar-section ul li > a.button.secondary:hover, .top-bar-section ul li > a.button.secondary:focus {
          color: #333333; }
      .top-bar-section ul li > a.button.success {
        background-color: #43AC6A;
        border-color: #368a55;
        color: #FFFFFF; }
        .top-bar-section ul li > a.button.success:hover, .top-bar-section ul li > a.button.success:focus {
          background-color: #368a55; }
        .top-bar-section ul li > a.button.success:hover, .top-bar-section ul li > a.button.success:focus {
          color: #FFFFFF; }
      .top-bar-section ul li > a.button.alert {
        background-color: #f04124;
        border-color: #cf2a0e;
        color: #FFFFFF; }
        .top-bar-section ul li > a.button.alert:hover, .top-bar-section ul li > a.button.alert:focus {
          background-color: #cf2a0e; }
        .top-bar-section ul li > a.button.alert:hover, .top-bar-section ul li > a.button.alert:focus {
          color: #FFFFFF; }
      .top-bar-section ul li > a.button.warning {
        background-color: #f08a24;
        border-color: #cf6e0e;
        color: #FFFFFF; }
        .top-bar-section ul li > a.button.warning:hover, .top-bar-section ul li > a.button.warning:focus {
          background-color: #cf6e0e; }
        .top-bar-section ul li > a.button.warning:hover, .top-bar-section ul li > a.button.warning:focus {
          color: #FFFFFF; }
    .top-bar-section ul li > button {
      font-size: 0.8125rem;
      padding-right: 1.25rem;
      padding-left: 1.25rem;
      background-color: #008CBA;
      border-color: #007095;
      color: #FFFFFF; }
      .top-bar-section ul li > button:hover, .top-bar-section ul li > button:focus {
        background-color: #007095; }
      .top-bar-section ul li > button:hover, .top-bar-section ul li > button:focus {
        color: #FFFFFF; }
      .top-bar-section ul li > button.secondary {
        background-color: #e7e7e7;
        border-color: #b9b9b9;
        color: #333333; }
        .top-bar-section ul li > button.secondary:hover, .top-bar-section ul li > button.secondary:focus {
          background-color: #b9b9b9; }
        .top-bar-section ul li > button.secondary:hover, .top-bar-section ul li > button.secondary:focus {
          color: #333333; }
      .top-bar-section ul li > button.success {
        background-color: #43AC6A;
        border-color: #368a55;
        color: #FFFFFF; }
        .top-bar-section ul li > button.success:hover, .top-bar-section ul li > button.success:focus {
          background-color: #368a55; }
        .top-bar-section ul li > button.success:hover, .top-bar-section ul li > button.success:focus {
          color: #FFFFFF; }
      .top-bar-section ul li > button.alert {
        background-color: #f04124;
        border-color: #cf2a0e;
        color: #FFFFFF; }
        .top-bar-section ul li > button.alert:hover, .top-bar-section ul li > button.alert:focus {
          background-color: #cf2a0e; }
        .top-bar-section ul li > button.alert:hover, .top-bar-section ul li > button.alert:focus {
          color: #FFFFFF; }
      .top-bar-section ul li > button.warning {
        background-color: #f08a24;
        border-color: #cf6e0e;
        color: #FFFFFF; }
        .top-bar-section ul li > button.warning:hover, .top-bar-section ul li > button.warning:focus {
          background-color: #cf6e0e; }
        .top-bar-section ul li > button.warning:hover, .top-bar-section ul li > button.warning:focus {
          color: #FFFFFF; }
    .top-bar-section ul li:hover:not(.has-form) > a {
      background-color: #E00;
      background: #E00;
      color: #FFFFFF; }
    .top-bar-section ul li.active > a {
      background: #008CBA;
      color: #FFFFFF; }
      .top-bar-section ul li.active > a:hover {
        background: #0078a0;
        color: #FFFFFF; }
  .top-bar-section .has-form {
    padding: 1.25rem; }
  .top-bar-section .has-dropdown {
    position: relative; }
    .top-bar-section .has-dropdown > a:after {
      content: "";
      display: block;
      width: 0;
      height: 0;
      border: inset 5px;
      border-color: transparent transparent transparent rgba(255, 255, 255, 0.4);
      border-left-style: solid;
      margin-right: 1.25rem;
      margin-top: -4.5px;
      position: absolute;
      top: 50%;
      right: 0; }
    .top-bar-section .has-dropdown.moved {
      position: static; }
      .top-bar-section .has-dropdown.moved > .dropdown {
        display: block;
        position: static !important;
        height: auto;
        width: auto;
        overflow: visible;
        clip: auto;
        position: absolute !important;
        width: 100%; }
      .top-bar-section .has-dropdown.moved > a:after {
        display: none; }
  .top-bar-section .dropdown {
    padding: 0;
    position: absolute;
    left: 100%;
    top: 0;
    z-index: 99;
    display: block;
    position: absolute !important;
    height: 1px;
    width: 1px;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px); }
    .top-bar-section .dropdown li {
      width: 100%;
      height: auto; }
      .top-bar-section .dropdown li a {
        font-weight: normal;
        padding: 8px 1.25rem; }
        .top-bar-section .dropdown li a.parent-link {
          font-weight: normal; }
      .top-bar-section .dropdown li.title h5, .top-bar-section .dropdown li.parent-link {
        margin-bottom: 0;
        margin-top: 0;
        font-size: 1.125rem; }
        .top-bar-section .dropdown li.title h5 a, .top-bar-section .dropdown li.parent-link a {
          color: #FFFFFF;
          display: block; }
          .top-bar-section .dropdown li.title h5 a:hover, .top-bar-section .dropdown li.parent-link a:hover {
            background: none; }
      .top-bar-section .dropdown li.has-form {
        padding: 8px 1.25rem; }
      .top-bar-section .dropdown li .button, .top-bar-section .dropdown li button {
        top: auto; }
    .top-bar-section .dropdown label {
      padding: 8px 1.25rem 2px;
      margin-bottom: 0;
      text-transform: uppercase;
      color: #777777;
      font-weight: bold;
      font-size: 0.625rem; }

.js-generated {
  display: block; }

@media only screen and (min-width: 800px) {
  .top-bar {
    background: #f44;
    overflow: visible; }
    .top-bar:before, .top-bar:after {
      content: " ";
      display: table; }
    .top-bar:after {
      clear: both; }
    .top-bar .toggle-topbar {
      display: none; }
    .top-bar .title-area {
      float: left; }
    .top-bar .name h1 a,
    .top-bar .name h2 a,
    .top-bar .name h3 a,
    .top-bar .name h4 a,
    .top-bar .name h5 a,
    .top-bar .name h6 a {
      width: auto; }
    .top-bar input,
    .top-bar .button,
    .top-bar button {
      font-size: 0.875rem;
      position: relative;
      height: 1.75rem;
      top: 1rem; }
    .top-bar.expanded {
      background: #f44; }
  .contain-to-grid .top-bar {
    max-width: 62.5rem;
    margin: 0 auto;
    margin-bottom: 0; }
  .top-bar-section {
    transition: none 0 0;
    left: 0 !important; }
    .top-bar-section ul {
      width: auto;
      height: auto !important;
      display: inline; }
      .top-bar-section ul li {
        float: left; }
        .top-bar-section ul li .js-generated {
          display: none; }
    .top-bar-section li.hover > a:not(.button) {
      background-color: #E00;
      background: #E00;
      color: #FFFFFF; }
    .top-bar-section li:not(.has-form) a:not(.button) {
      padding: 0 1.25rem;
      line-height: 3.75rem;
      background: #f44; }
      .top-bar-section li:not(.has-form) a:not(.button):hover {
        background-color: #E00;
        background: #E00; }
    .top-bar-section li.active:not(.has-form) a:not(.button) {
      padding: 0 1.25rem;
      line-height: 3.75rem;
      color: #FFFFFF;
      background: #008CBA; }
      .top-bar-section li.active:not(.has-form) a:not(.button):hover {
        background: #0078a0;
        color: #FFFFFF; }
    .top-bar-section .has-dropdown > a {
      padding-right: 2.5rem !important; }
      .top-bar-section .has-dropdown > a:after {
        content: "";
        display: block;
        width: 0;
        height: 0;
        border: inset 5px;
        border-color: rgba(255, 255, 255, 0.4) transparent transparent transparent;
        border-top-style: solid;
        margin-top: -2.5px;
        top: 1.875rem; }
    .top-bar-section .has-dropdown.moved {
      position: relative; }
      .top-bar-section .has-dropdown.moved > .dropdown {
        display: block;
        position: absolute !important;
        height: 1px;
        width: 1px;
        overflow: hidden;
        clip: rect(1px, 1px, 1px, 1px); }
    .top-bar-section .has-dropdown.hover > .dropdown, .top-bar-section .has-dropdown.not-click:hover > .dropdown {
      display: block;
      position: static !important;
      height: auto;
      width: auto;
      overflow: visible;
      clip: auto;
      position: absolute !important; }
    .top-bar-section .has-dropdown > a:focus + .dropdown {
      display: block;
      position: static !important;
      height: auto;
      width: auto;
      overflow: visible;
      clip: auto;
      position: absolute !important; }
    .top-bar-section .has-dropdown .dropdown li.has-dropdown > a:after {
      border: none;
      content: "\00bb";
      top: 1rem;
      margin-top: -1px;
      right: 5px;
      line-height: 1.2; }
    .top-bar-section .dropdown {
      left: 0;
      top: auto;
      background: transparent;
      min-width: 100%; }
      .top-bar-section .dropdown li a {
        color: #FFFFFF;
        line-height: 3.75rem;
        white-space: nowrap;
        padding: 12px 1.25rem;
        background: #333333; }
      .top-bar-section .dropdown li:not(.has-form):not(.active) > a:not(.button) {
        color: #FFFFFF;
        background: #333333; }
      .top-bar-section .dropdown li:not(.has-form):not(.active):hover > a:not(.button) {
        color: #FFFFFF;
        background-color: #E00;
        background: #333333; }
      .top-bar-section .dropdown li label {
        white-space: nowrap;
        background: #333333; }
      .top-bar-section .dropdown li .dropdown {
        left: 100%;
        top: 0; }
    .top-bar-section > ul > .divider,
    .top-bar-section > ul > [role="separator"] {
      border-bottom: none;
      border-top: none;
      border-right: solid 1px #ff5c5c;
      clear: none;
      height: 3.75rem;
      width: 0; }
    .top-bar-section .has-form {
      background: #f44;
      padding: 0 1.25rem;
      height: 3.75rem; }
    .top-bar-section .right li .dropdown {
      left: auto;
      right: 0; }
      .top-bar-section .right li .dropdown li .dropdown {
        right: 100%; }
    .top-bar-section .left li .dropdown {
      right: auto;
      left: 0; }
      .top-bar-section .left li .dropdown li .dropdown {
        left: 100%; }
  .no-js .top-bar-section ul li:hover > a {
    background-color: #E00;
    background: #E00;
    color: #FFFFFF; }
  .no-js .top-bar-section ul li:active > a {
    background: #008CBA;
    color: #FFFFFF; }
  .no-js .top-bar-section .has-dropdown:hover > .dropdown {
    display: block;
    position: static !important;
    height: auto;
    width: auto;
    overflow: visible;
    clip: auto;
    position: absolute !important; }
  .no-js .top-bar-section .has-dropdown > a:focus + .dropdown {
    display: block;
    position: static !important;
    height: auto;
    width: auto;
    overflow: visible;
    clip: auto;
    position: absolute !important; } }

/* Progress Bar */
.progress {
  background-color: #F6F6F6;
  height: 1.5625rem;
  border: 1px solid white;
  padding: 0.125rem;
  margin-bottom: 0.625rem; }
  .progress .meter {
    background: #008CBA;
    height: 100%;
    display: block; }
  .progress.secondary .meter {
    background: #e7e7e7;
    height: 100%;
    display: block; }
  .progress.success .meter {
    background: #43AC6A;
    height: 100%;
    display: block; }
  .progress.alert .meter {
    background: #f04124;
    height: 100%;
    display: block; }
  .progress.radius {
    border-radius: 3px; }
    .progress.radius .meter {
      border-radius: 2px; }
  .progress.round {
    border-radius: 1000px; }
    .progress.round .meter {
      border-radius: 999px; }

/* Pricing Tables */
.pricing-table {
  border: solid 1px #DDDDDD;
  margin-left: 0;
  margin-bottom: 1.25rem; }
  .pricing-table * {
    list-style: none;
    line-height: 1; }
  .pricing-table .title {
    background-color: #333333;
    padding: 0.9375rem 1.25rem;
    text-align: center;
    color: #EEEEEE;
    font-weight: normal;
    font-size: 1rem;
    font-family: Source Sans Pro, sans-serif; }
  .pricing-table .price {
    background-color: #F6F6F6;
    padding: 0.9375rem 1.25rem;
    text-align: center;
    color: #333333;
    font-weight: normal;
    font-size: 2rem;
    font-family: Source Sans Pro, sans-serif; }
  .pricing-table .description {
    background-color: #FFFFFF;
    padding: 0.9375rem;
    text-align: center;
    color: #777777;
    font-size: 0.75rem;
    font-weight: normal;
    line-height: 1.4;
    border-bottom: dotted 1px #DDDDDD; }
  .pricing-table .bullet-item {
    background-color: #FFFFFF;
    padding: 0.9375rem;
    text-align: center;
    color: #333333;
    font-size: 0.875rem;
    font-weight: normal;
    border-bottom: dotted 1px #DDDDDD; }
  .pricing-table .cta-button {
    background-color: #FFFFFF;
    text-align: center;
    padding: 1.25rem 1.25rem 0; }

/*!
 * inuitcss, by @csswizardry
 *
 * github.com/inuitcss | inuitcss.com
 */
/*------------------------------------*    #SPACING
\*------------------------------------*/
/**
 * Margin and padding helper classes. Use these to tweak layout on a micro
 * We roll our own since the original spec is not human readable.
 *
 *
 */
/**
     * Margin helper classes.
     *
     * Add margins.
     */
.push {
  margin: 24px !important; }

.push__top {
  margin-top: 24px !important; }

.push__right {
  margin-right: 24px !important; }

.push__bottom {
  margin-bottom: 24px !important; }

.push__left {
  margin-left: 24px !important; }

.push__sides {
  margin-right: 24px !important;
  margin-left: 24px !important; }

.push__ends {
  margin-top: 24px !important;
  margin-bottom: 24px !important; }

/**
     * Add tiny margins.
     */
.push--tiny {
  margin: 6px !important; }

.push__top--tiny {
  margin-top: 6px !important; }

.push__right--tiny {
  margin-right: 6px !important; }

.push__bottom--tiny {
  margin-bottom: 6px !important; }

.push__left--tiny {
  margin-left: 6px !important; }

.push__sides--tiny {
  margin-right: 6px !important;
  margin-left: 6px !important; }

.push__ends--tiny {
  margin-top: 6px !important;
  margin-bottom: 6px !important; }

/**
     * Add small margins.
     */
.push--small {
  margin: 12px !important; }

.push__top--small {
  margin-top: 12px !important; }

.push__right--small {
  margin-right: 12px !important; }

.push__bottom--small {
  margin-bottom: 12px !important; }

.push__left--small {
  margin-left: 12px !important; }

.push__sides--small {
  margin-right: 12px !important;
  margin-left: 12px !important; }

.push__ends--small {
  margin-top: 12px !important;
  margin-bottom: 12px !important; }

/**
     * Add large margins.
     */
.push--large {
  margin: 48px !important; }

.push__top--large {
  margin-top: 48px !important; }

.push__right--large {
  margin-right: 48px !important; }

.push__bottom--large {
  margin-bottom: 48px !important; }

.push__left--large {
  margin-left: 48px !important; }

.push__sides--large {
  margin-right: 48px !important;
  margin-left: 48px !important; }

.push__ends--large {
  margin-top: 48px !important;
  margin-bottom: 48px !important; }

/**
     * Add huge margins.
     */
.push--huge {
  margin: 96px !important; }

.push__top--huge {
  margin-top: 96px !important; }

.push__right--huge {
  margin-right: 96px !important; }

.push__bottom--huge {
  margin-bottom: 96px !important; }

.push__left--huge {
  margin-left: 96px !important; }

.push__sides--huge {
  margin-right: 96px !important;
  margin-left: 96px !important; }

.push__ends--huge {
  margin-top: 96px !important;
  margin-bottom: 96px !important; }

/**
     * Padding helper classes.
     *
     * Add paddings.
     */
.soft {
  padding: 24px !important; }

.soft__top {
  padding-top: 24px !important; }

.soft__right {
  padding-right: 24px !important; }

.soft__bottom {
  padding-bottom: 24px !important; }

.soft__left {
  padding-left: 24px !important; }

.soft__sides {
  padding-right: 24px !important;
  padding-left: 24px !important; }

.soft__ends {
  padding-top: 24px !important;
  padding-bottom: 24px !important; }

/**
     * Add tiny paddings.
     */
.soft--tiny {
  padding: 6px !important; }

.soft__top--tiny {
  padding-top: 6px !important; }

.soft__right--tiny {
  padding-right: 6px !important; }

.soft__bottom--tiny {
  padding-bottom: 6px !important; }

.soft__left--tiny {
  padding-left: 6px !important; }

.soft__sides--tiny {
  padding-right: 6px !important;
  padding-left: 6px !important; }

.soft__ends--tiny {
  padding-top: 6px !important;
  padding-bottom: 6px !important; }

/**
     * Add small paddings.
     */
.soft--small {
  padding: 12px !important; }

.soft__top--small {
  padding-top: 12px !important; }

.soft__right--small {
  padding-right: 12px !important; }

.soft__bottom--small {
  padding-bottom: 12px !important; }

.soft__left--small {
  padding-left: 12px !important; }

.soft__sides--small {
  padding-right: 12px !important;
  padding-left: 12px !important; }

.soft__ends--small {
  padding-top: 12px !important;
  padding-bottom: 12px !important; }

/**
     * Add large paddings.
     */
.soft--large {
  padding: 48px !important; }

.soft__top--large {
  padding-top: 48px !important; }

.soft__right--large {
  padding-right: 48px !important; }

.soft__bottom--large {
  padding-bottom: 48px !important; }

.soft__left--large {
  padding-left: 48px !important; }

.soft__sides--large {
  padding-right: 48px !important;
  padding-left: 48px !important; }

.soft__ends--large {
  padding-top: 48px !important;
  padding-bottom: 48px !important; }

/**
     * Add huge paddings.
     */
.soft--huge {
  padding: 96px !important; }

.soft__top--huge {
  padding-top: 96px !important; }

.soft__right--huge {
  padding-right: 96px !important; }

.soft__bottom--huge {
  padding-bottom: 96px !important; }

.soft__left--huge {
  padding-left: 96px !important; }

.soft__sides--huge {
  padding-right: 96px !important;
  padding-left: 96px !important; }

.soft__ends--huge {
  padding-top: 96px !important;
  padding-bottom: 96px !important; }

.flush {
  margin: 0 !important; }

.flush--top {
  margin-top: 0 !important; }

.flush--right {
  margin-right: 0 !important; }

.flush--bottom {
  margin-bottom: 0 !important; }

.flush--left {
  margin-left: 0 !important; }

.flush--ends {
  margin-top: 0 !important;
  margin-bottom: 0 !important; }

.flush--sides {
  margin-right: 0 !important;
  margin-left: 0 !important; }

.hard {
  padding: 0 !important; }

.hard--top {
  padding-top: 0 !important; }

.hard--right {
  padding-right: 0 !important; }

.hard--bottom {
  padding-bottom: 0 !important; }

.hard--left {
  padding-left: 0 !important; }

.hard--ends {
  padding-top: 0 !important;
  padding-bottom: 0 !important; }

.hard--sides {
  padding-right: 0 !important;
  padding-left: 0 !important; }

/**
 * Add/remove floats
 */
.float--right {
  float: right !important; }

.float--left {
  float: left !important; }

.float--none {
  float: none !important; }

/**
 * Text alignment
 */
.text--left {
  text-align: left  !important; }

.text--center {
  text-align: center !important; }

.text--right {
  text-align: right !important; }

.align--middle {
  vertical-align: middle !important; }

/*------------------------------------*    #SPACING-RESPONSIVE
\*------------------------------------*/
/**
 * Margin and padding helper classes. Use these to tweak layout on a micro
 * level.
 *
 * `.(m|p)(t|r|b|l|h|v)(-|+|0) {}` = margin/padding top/right/bottom/left/horizontal/vertical less/more/none
 */
/**
     * Margin helper classes.
     *
     * Add margins.
     */
@media screen and (max-width: 44.9375em) {
  .small-m {
    margin: 24px !important; }
  .small-mt {
    margin-top: 24px !important; }
  .small-mr {
    margin-right: 24px !important; }
  .small-mb {
    margin-bottom: 24px !important; }
  .small-ml {
    margin-left: 24px !important; }
  .small-mh {
    margin-right: 24px !important;
    margin-left: 24px !important; }
  .small-mv {
    margin-top: 24px !important;
    margin-bottom: 24px !important; } }

@media screen and (min-width: 45em) and (max-width: 63.9375em) {
  .medium-m {
    margin: 24px !important; }
  .medium-mt {
    margin-top: 24px !important; }
  .medium-mr {
    margin-right: 24px !important; }
  .medium-mb {
    margin-bottom: 24px !important; }
  .medium-ml {
    margin-left: 24px !important; }
  .medium-mh {
    margin-right: 24px !important;
    margin-left: 24px !important; }
  .medium-mv {
    margin-top: 24px !important;
    margin-bottom: 24px !important; } }

@media screen and (min-width: 45em) {
  .lap-and-up-m {
    margin: 24px !important; }
  .lap-and-up-mt {
    margin-top: 24px !important; }
  .lap-and-up-mr {
    margin-right: 24px !important; }
  .lap-and-up-mb {
    margin-bottom: 24px !important; }
  .lap-and-up-ml {
    margin-left: 24px !important; }
  .lap-and-up-mh {
    margin-right: 24px !important;
    margin-left: 24px !important; }
  .lap-and-up-mv {
    margin-top: 24px !important;
    margin-bottom: 24px !important; } }

@media screen and (max-width: 63.9375em) {
  .portable-m {
    margin: 24px !important; }
  .portable-mt {
    margin-top: 24px !important; }
  .portable-mr {
    margin-right: 24px !important; }
  .portable-mb {
    margin-bottom: 24px !important; }
  .portable-ml {
    margin-left: 24px !important; }
  .portable-mh {
    margin-right: 24px !important;
    margin-left: 24px !important; }
  .portable-mv {
    margin-top: 24px !important;
    margin-bottom: 24px !important; } }

@media screen and (min-width: 64em) {
  .large-m {
    margin: 24px !important; }
  .large-mt {
    margin-top: 24px !important; }
  .large-mr {
    margin-right: 24px !important; }
  .large-mb {
    margin-bottom: 24px !important; }
  .large-ml {
    margin-left: 24px !important; }
  .large-mh {
    margin-right: 24px !important;
    margin-left: 24px !important; }
  .large-mv {
    margin-top: 24px !important;
    margin-bottom: 24px !important; } }

/**
     * Add tiny margins.
     */
@media screen and (max-width: 44.9375em) {
  .small-m-- {
    margin: 6px !important; }
  .small-mt-- {
    margin-top: 6px !important; }
  .small-mr-- {
    margin-right: 6px !important; }
  .small-mb-- {
    margin-bottom: 6px !important; }
  .small-ml-- {
    margin-left: 6px !important; }
  .small-mh-- {
    margin-right: 6px !important;
    margin-left: 6px !important; }
  .small-mv-- {
    margin-top: 6px !important;
    margin-bottom: 6px !important; } }

@media screen and (min-width: 45em) and (max-width: 63.9375em) {
  .medium-m-- {
    margin: 6px !important; }
  .medium-mt-- {
    margin-top: 6px !important; }
  .medium-mr-- {
    margin-right: 6px !important; }
  .medium-mb-- {
    margin-bottom: 6px !important; }
  .medium-ml-- {
    margin-left: 6px !important; }
  .medium-mh-- {
    margin-right: 6px !important;
    margin-left: 6px !important; }
  .medium-mv-- {
    margin-top: 6px !important;
    margin-bottom: 6px !important; } }

@media screen and (min-width: 45em) {
  .lap-and-up-m-- {
    margin: 6px !important; }
  .lap-and-up-mt-- {
    margin-top: 6px !important; }
  .lap-and-up-mr-- {
    margin-right: 6px !important; }
  .lap-and-up-mb-- {
    margin-bottom: 6px !important; }
  .lap-and-up-ml-- {
    margin-left: 6px !important; }
  .lap-and-up-mh-- {
    margin-right: 6px !important;
    margin-left: 6px !important; }
  .lap-and-up-mv-- {
    margin-top: 6px !important;
    margin-bottom: 6px !important; } }

@media screen and (max-width: 63.9375em) {
  .portable-m-- {
    margin: 6px !important; }
  .portable-mt-- {
    margin-top: 6px !important; }
  .portable-mr-- {
    margin-right: 6px !important; }
  .portable-mb-- {
    margin-bottom: 6px !important; }
  .portable-ml-- {
    margin-left: 6px !important; }
  .portable-mh-- {
    margin-right: 6px !important;
    margin-left: 6px !important; }
  .portable-mv-- {
    margin-top: 6px !important;
    margin-bottom: 6px !important; } }

@media screen and (min-width: 64em) {
  .large-m-- {
    margin: 6px !important; }
  .large-mt-- {
    margin-top: 6px !important; }
  .large-mr-- {
    margin-right: 6px !important; }
  .large-mb-- {
    margin-bottom: 6px !important; }
  .large-ml-- {
    margin-left: 6px !important; }
  .large-mh-- {
    margin-right: 6px !important;
    margin-left: 6px !important; }
  .large-mv-- {
    margin-top: 6px !important;
    margin-bottom: 6px !important; } }

/**
     * Add small margins.
     */
@media screen and (max-width: 44.9375em) {
  .small-m- {
    margin: 12px !important; }
  .small-mt- {
    margin-top: 12px !important; }
  .small-mr- {
    margin-right: 12px !important; }
  .small-mb- {
    margin-bottom: 12px !important; }
  .small-ml- {
    margin-left: 12px !important; }
  .small-mh- {
    margin-right: 12px !important;
    margin-left: 12px !important; }
  .small-mv- {
    margin-top: 12px !important;
    margin-bottom: 12px !important; } }

@media screen and (min-width: 45em) and (max-width: 63.9375em) {
  .medium-m- {
    margin: 12px !important; }
  .medium-mt- {
    margin-top: 12px !important; }
  .medium-mr- {
    margin-right: 12px !important; }
  .medium-mb- {
    margin-bottom: 12px !important; }
  .medium-ml- {
    margin-left: 12px !important; }
  .medium-mh- {
    margin-right: 12px !important;
    margin-left: 12px !important; }
  .medium-mv- {
    margin-top: 12px !important;
    margin-bottom: 12px !important; } }

@media screen and (min-width: 45em) {
  .lap-and-up-m- {
    margin: 12px !important; }
  .lap-and-up-mt- {
    margin-top: 12px !important; }
  .lap-and-up-mr- {
    margin-right: 12px !important; }
  .lap-and-up-mb- {
    margin-bottom: 12px !important; }
  .lap-and-up-ml- {
    margin-left: 12px !important; }
  .lap-and-up-mh- {
    margin-right: 12px !important;
    margin-left: 12px !important; }
  .lap-and-up-mv- {
    margin-top: 12px !important;
    margin-bottom: 12px !important; } }

@media screen and (max-width: 63.9375em) {
  .portable-m- {
    margin: 12px !important; }
  .portable-mt- {
    margin-top: 12px !important; }
  .portable-mr- {
    margin-right: 12px !important; }
  .portable-mb- {
    margin-bottom: 12px !important; }
  .portable-ml- {
    margin-left: 12px !important; }
  .portable-mh- {
    margin-right: 12px !important;
    margin-left: 12px !important; }
  .portable-mv- {
    margin-top: 12px !important;
    margin-bottom: 12px !important; } }

@media screen and (min-width: 64em) {
  .large-m- {
    margin: 12px !important; }
  .large-mt- {
    margin-top: 12px !important; }
  .large-mr- {
    margin-right: 12px !important; }
  .large-mb- {
    margin-bottom: 12px !important; }
  .large-ml- {
    margin-left: 12px !important; }
  .large-mh- {
    margin-right: 12px !important;
    margin-left: 12px !important; }
  .large-mv- {
    margin-top: 12px !important;
    margin-bottom: 12px !important; } }

/**
     * Add large margins.
     */
@media screen and (max-width: 44.9375em) {
  .small-m\+ {
    margin: 48px !important; }
  .small-mt\+ {
    margin-top: 48px !important; }
  .small-mr\+ {
    margin-right: 48px !important; }
  .small-mb\+ {
    margin-bottom: 48px !important; }
  .small-ml\+ {
    margin-left: 48px !important; }
  .small-mh\+ {
    margin-right: 48px !important;
    margin-left: 48px !important; }
  .small-mv\+ {
    margin-top: 48px !important;
    margin-bottom: 48px !important; } }

@media screen and (min-width: 45em) and (max-width: 63.9375em) {
  .medium-m\+ {
    margin: 48px !important; }
  .medium-mt\+ {
    margin-top: 48px !important; }
  .medium-mr\+ {
    margin-right: 48px !important; }
  .medium-mb\+ {
    margin-bottom: 48px !important; }
  .medium-ml\+ {
    margin-left: 48px !important; }
  .medium-mh\+ {
    margin-right: 48px !important;
    margin-left: 48px !important; }
  .medium-mv\+ {
    margin-top: 48px !important;
    margin-bottom: 48px !important; } }

@media screen and (min-width: 45em) {
  .lap-and-up-m\+ {
    margin: 48px !important; }
  .lap-and-up-mt\+ {
    margin-top: 48px !important; }
  .lap-and-up-mr\+ {
    margin-right: 48px !important; }
  .lap-and-up-mb\+ {
    margin-bottom: 48px !important; }
  .lap-and-up-ml\+ {
    margin-left: 48px !important; }
  .lap-and-up-mh\+ {
    margin-right: 48px !important;
    margin-left: 48px !important; }
  .lap-and-up-mv\+ {
    margin-top: 48px !important;
    margin-bottom: 48px !important; } }

@media screen and (max-width: 63.9375em) {
  .portable-m\+ {
    margin: 48px !important; }
  .portable-mt\+ {
    margin-top: 48px !important; }
  .portable-mr\+ {
    margin-right: 48px !important; }
  .portable-mb\+ {
    margin-bottom: 48px !important; }
  .portable-ml\+ {
    margin-left: 48px !important; }
  .portable-mh\+ {
    margin-right: 48px !important;
    margin-left: 48px !important; }
  .portable-mv\+ {
    margin-top: 48px !important;
    margin-bottom: 48px !important; } }

@media screen and (min-width: 64em) {
  .large-m\+ {
    margin: 48px !important; }
  .large-mt\+ {
    margin-top: 48px !important; }
  .large-mr\+ {
    margin-right: 48px !important; }
  .large-mb\+ {
    margin-bottom: 48px !important; }
  .large-ml\+ {
    margin-left: 48px !important; }
  .large-mh\+ {
    margin-right: 48px !important;
    margin-left: 48px !important; }
  .large-mv\+ {
    margin-top: 48px !important;
    margin-bottom: 48px !important; } }

/**
     * Add huge margins.
     */
@media screen and (max-width: 44.9375em) {
  .small-m\+\+ {
    margin: 96px !important; }
  .small-mt\+\+ {
    margin-top: 96px !important; }
  .small-mr\+\+ {
    margin-right: 96px !important; }
  .small-mb\+\+ {
    margin-bottom: 96px !important; }
  .small-ml\+\+ {
    margin-left: 96px !important; }
  .small-mh\+\+ {
    margin-right: 96px !important;
    margin-left: 96px !important; }
  .small-mv\+\+ {
    margin-top: 96px !important;
    margin-bottom: 96px !important; } }

@media screen and (min-width: 45em) and (max-width: 63.9375em) {
  .medium-m\+\+ {
    margin: 96px !important; }
  .medium-mt\+\+ {
    margin-top: 96px !important; }
  .medium-mr\+\+ {
    margin-right: 96px !important; }
  .medium-mb\+\+ {
    margin-bottom: 96px !important; }
  .medium-ml\+\+ {
    margin-left: 96px !important; }
  .medium-mh\+\+ {
    margin-right: 96px !important;
    margin-left: 96px !important; }
  .medium-mv\+\+ {
    margin-top: 96px !important;
    margin-bottom: 96px !important; } }

@media screen and (min-width: 45em) {
  .lap-and-up-m\+\+ {
    margin: 96px !important; }
  .lap-and-up-mt\+\+ {
    margin-top: 96px !important; }
  .lap-and-up-mr\+\+ {
    margin-right: 96px !important; }
  .lap-and-up-mb\+\+ {
    margin-bottom: 96px !important; }
  .lap-and-up-ml\+\+ {
    margin-left: 96px !important; }
  .lap-and-up-mh\+\+ {
    margin-right: 96px !important;
    margin-left: 96px !important; }
  .lap-and-up-mv\+\+ {
    margin-top: 96px !important;
    margin-bottom: 96px !important; } }

@media screen and (max-width: 63.9375em) {
  .portable-m\+\+ {
    margin: 96px !important; }
  .portable-mt\+\+ {
    margin-top: 96px !important; }
  .portable-mr\+\+ {
    margin-right: 96px !important; }
  .portable-mb\+\+ {
    margin-bottom: 96px !important; }
  .portable-ml\+\+ {
    margin-left: 96px !important; }
  .portable-mh\+\+ {
    margin-right: 96px !important;
    margin-left: 96px !important; }
  .portable-mv\+\+ {
    margin-top: 96px !important;
    margin-bottom: 96px !important; } }

@media screen and (min-width: 64em) {
  .large-m\+\+ {
    margin: 96px !important; }
  .large-mt\+\+ {
    margin-top: 96px !important; }
  .large-mr\+\+ {
    margin-right: 96px !important; }
  .large-mb\+\+ {
    margin-bottom: 96px !important; }
  .large-ml\+\+ {
    margin-left: 96px !important; }
  .large-mh\+\+ {
    margin-right: 96px !important;
    margin-left: 96px !important; }
  .large-mv\+\+ {
    margin-top: 96px !important;
    margin-bottom: 96px !important; } }

/**
     * Remove margins.
     */
@media screen and (max-width: 44.9375em) {
  .small-m0 {
    margin: 0 !important; }
  .small-mt0 {
    margin-top: 0 !important; }
  .small-mr0 {
    margin-right: 0 !important; }
  .small-mb0 {
    margin-bottom: 0 !important; }
  .small-ml0 {
    margin-left: 0 !important; }
  .small-mh0 {
    margin-right: 0 !important;
    margin-left: 0 !important; }
  .small-mv0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important; } }

@media screen and (min-width: 45em) and (max-width: 63.9375em) {
  .medium-m0 {
    margin: 0 !important; }
  .medium-mt0 {
    margin-top: 0 !important; }
  .medium-mr0 {
    margin-right: 0 !important; }
  .medium-mb0 {
    margin-bottom: 0 !important; }
  .medium-ml0 {
    margin-left: 0 !important; }
  .medium-mh0 {
    margin-right: 0 !important;
    margin-left: 0 !important; }
  .medium-mv0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important; } }

@media screen and (min-width: 45em) {
  .lap-and-up-m0 {
    margin: 0 !important; }
  .lap-and-up-mt0 {
    margin-top: 0 !important; }
  .lap-and-up-mr0 {
    margin-right: 0 !important; }
  .lap-and-up-mb0 {
    margin-bottom: 0 !important; }
  .lap-and-up-ml0 {
    margin-left: 0 !important; }
  .lap-and-up-mh0 {
    margin-right: 0 !important;
    margin-left: 0 !important; }
  .lap-and-up-mv0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important; } }

@media screen and (max-width: 63.9375em) {
  .portable-m0 {
    margin: 0 !important; }
  .portable-mt0 {
    margin-top: 0 !important; }
  .portable-mr0 {
    margin-right: 0 !important; }
  .portable-mb0 {
    margin-bottom: 0 !important; }
  .portable-ml0 {
    margin-left: 0 !important; }
  .portable-mh0 {
    margin-right: 0 !important;
    margin-left: 0 !important; }
  .portable-mv0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important; } }

@media screen and (min-width: 64em) {
  .large-m0 {
    margin: 0 !important; }
  .large-mt0 {
    margin-top: 0 !important; }
  .large-mr0 {
    margin-right: 0 !important; }
  .large-mb0 {
    margin-bottom: 0 !important; }
  .large-ml0 {
    margin-left: 0 !important; }
  .large-mh0 {
    margin-right: 0 !important;
    margin-left: 0 !important; }
  .large-mv0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important; } }

/**
     * Padding helper classes.
     *
     * Add paddings.
     */
@media screen and (max-width: 44.9375em) {
  .small-p {
    padding: 24px !important; }
  .small-pt {
    padding-top: 24px !important; }
  .small-pr {
    padding-right: 24px !important; }
  .small-pb {
    padding-bottom: 24px !important; }
  .small-pl {
    padding-left: 24px !important; }
  .small-ph {
    padding-right: 24px !important;
    padding-left: 24px !important; }
  .small-pv {
    padding-top: 24px !important;
    padding-bottom: 24px !important; } }

@media screen and (min-width: 45em) and (max-width: 63.9375em) {
  .medium-p {
    padding: 24px !important; }
  .medium-pt {
    padding-top: 24px !important; }
  .medium-pr {
    padding-right: 24px !important; }
  .medium-pb {
    padding-bottom: 24px !important; }
  .medium-pl {
    padding-left: 24px !important; }
  .medium-ph {
    padding-right: 24px !important;
    padding-left: 24px !important; }
  .medium-pv {
    padding-top: 24px !important;
    padding-bottom: 24px !important; } }

@media screen and (min-width: 45em) {
  .lap-and-up-p {
    padding: 24px !important; }
  .lap-and-up-pt {
    padding-top: 24px !important; }
  .lap-and-up-pr {
    padding-right: 24px !important; }
  .lap-and-up-pb {
    padding-bottom: 24px !important; }
  .lap-and-up-pl {
    padding-left: 24px !important; }
  .lap-and-up-ph {
    padding-right: 24px !important;
    padding-left: 24px !important; }
  .lap-and-up-pv {
    padding-top: 24px !important;
    padding-bottom: 24px !important; } }

@media screen and (max-width: 63.9375em) {
  .portable-p {
    padding: 24px !important; }
  .portable-pt {
    padding-top: 24px !important; }
  .portable-pr {
    padding-right: 24px !important; }
  .portable-pb {
    padding-bottom: 24px !important; }
  .portable-pl {
    padding-left: 24px !important; }
  .portable-ph {
    padding-right: 24px !important;
    padding-left: 24px !important; }
  .portable-pv {
    padding-top: 24px !important;
    padding-bottom: 24px !important; } }

@media screen and (min-width: 64em) {
  .large-p {
    padding: 24px !important; }
  .large-pt {
    padding-top: 24px !important; }
  .large-pr {
    padding-right: 24px !important; }
  .large-pb {
    padding-bottom: 24px !important; }
  .large-pl {
    padding-left: 24px !important; }
  .large-ph {
    padding-right: 24px !important;
    padding-left: 24px !important; }
  .large-pv {
    padding-top: 24px !important;
    padding-bottom: 24px !important; } }

/**
     * Add tiny paddings.
     */
@media screen and (max-width: 44.9375em) {
  .small-p-- {
    padding: 6px !important; }
  .small-pt-- {
    padding-top: 6px !important; }
  .small-pr-- {
    padding-right: 6px !important; }
  .small-pb-- {
    padding-bottom: 6px !important; }
  .small-pl-- {
    padding-left: 6px !important; }
  .small-ph-- {
    padding-right: 6px !important;
    padding-left: 6px !important; }
  .small-pv-- {
    padding-top: 6px !important;
    padding-bottom: 6px !important; } }

@media screen and (min-width: 45em) and (max-width: 63.9375em) {
  .medium-p-- {
    padding: 6px !important; }
  .medium-pt-- {
    padding-top: 6px !important; }
  .medium-pr-- {
    padding-right: 6px !important; }
  .medium-pb-- {
    padding-bottom: 6px !important; }
  .medium-pl-- {
    padding-left: 6px !important; }
  .medium-ph-- {
    padding-right: 6px !important;
    padding-left: 6px !important; }
  .medium-pv-- {
    padding-top: 6px !important;
    padding-bottom: 6px !important; } }

@media screen and (min-width: 45em) {
  .lap-and-up-p-- {
    padding: 6px !important; }
  .lap-and-up-pt-- {
    padding-top: 6px !important; }
  .lap-and-up-pr-- {
    padding-right: 6px !important; }
  .lap-and-up-pb-- {
    padding-bottom: 6px !important; }
  .lap-and-up-pl-- {
    padding-left: 6px !important; }
  .lap-and-up-ph-- {
    padding-right: 6px !important;
    padding-left: 6px !important; }
  .lap-and-up-pv-- {
    padding-top: 6px !important;
    padding-bottom: 6px !important; } }

@media screen and (max-width: 63.9375em) {
  .portable-p-- {
    padding: 6px !important; }
  .portable-pt-- {
    padding-top: 6px !important; }
  .portable-pr-- {
    padding-right: 6px !important; }
  .portable-pb-- {
    padding-bottom: 6px !important; }
  .portable-pl-- {
    padding-left: 6px !important; }
  .portable-ph-- {
    padding-right: 6px !important;
    padding-left: 6px !important; }
  .portable-pv-- {
    padding-top: 6px !important;
    padding-bottom: 6px !important; } }

@media screen and (min-width: 64em) {
  .large-p-- {
    padding: 6px !important; }
  .large-pt-- {
    padding-top: 6px !important; }
  .large-pr-- {
    padding-right: 6px !important; }
  .large-pb-- {
    padding-bottom: 6px !important; }
  .large-pl-- {
    padding-left: 6px !important; }
  .large-ph-- {
    padding-right: 6px !important;
    padding-left: 6px !important; }
  .large-pv-- {
    padding-top: 6px !important;
    padding-bottom: 6px !important; } }

/**
     * Add small paddings.
     */
@media screen and (max-width: 44.9375em) {
  .small-p- {
    padding: 12px !important; }
  .small-pt- {
    padding-top: 12px !important; }
  .small-pr- {
    padding-right: 12px !important; }
  .small-pb- {
    padding-bottom: 12px !important; }
  .small-pl- {
    padding-left: 12px !important; }
  .small-ph- {
    padding-right: 12px !important;
    padding-left: 12px !important; }
  .small-pv- {
    padding-top: 12px !important;
    padding-bottom: 12px !important; } }

@media screen and (min-width: 45em) and (max-width: 63.9375em) {
  .medium-p- {
    padding: 12px !important; }
  .medium-pt- {
    padding-top: 12px !important; }
  .medium-pr- {
    padding-right: 12px !important; }
  .medium-pb- {
    padding-bottom: 12px !important; }
  .medium-pl- {
    padding-left: 12px !important; }
  .medium-ph- {
    padding-right: 12px !important;
    padding-left: 12px !important; }
  .medium-pv- {
    padding-top: 12px !important;
    padding-bottom: 12px !important; } }

@media screen and (min-width: 45em) {
  .lap-and-up-p- {
    padding: 12px !important; }
  .lap-and-up-pt- {
    padding-top: 12px !important; }
  .lap-and-up-pr- {
    padding-right: 12px !important; }
  .lap-and-up-pb- {
    padding-bottom: 12px !important; }
  .lap-and-up-pl- {
    padding-left: 12px !important; }
  .lap-and-up-ph- {
    padding-right: 12px !important;
    padding-left: 12px !important; }
  .lap-and-up-pv- {
    padding-top: 12px !important;
    padding-bottom: 12px !important; } }

@media screen and (max-width: 63.9375em) {
  .portable-p- {
    padding: 12px !important; }
  .portable-pt- {
    padding-top: 12px !important; }
  .portable-pr- {
    padding-right: 12px !important; }
  .portable-pb- {
    padding-bottom: 12px !important; }
  .portable-pl- {
    padding-left: 12px !important; }
  .portable-ph- {
    padding-right: 12px !important;
    padding-left: 12px !important; }
  .portable-pv- {
    padding-top: 12px !important;
    padding-bottom: 12px !important; } }

@media screen and (min-width: 64em) {
  .large-p- {
    padding: 12px !important; }
  .large-pt- {
    padding-top: 12px !important; }
  .large-pr- {
    padding-right: 12px !important; }
  .large-pb- {
    padding-bottom: 12px !important; }
  .large-pl- {
    padding-left: 12px !important; }
  .large-ph- {
    padding-right: 12px !important;
    padding-left: 12px !important; }
  .large-pv- {
    padding-top: 12px !important;
    padding-bottom: 12px !important; } }

/**
     * Add large paddings.
     */
@media screen and (max-width: 44.9375em) {
  .small-p\+ {
    padding: 48px !important; }
  .small-pt\+ {
    padding-top: 48px !important; }
  .small-pr\+ {
    padding-right: 48px !important; }
  .small-pb\+ {
    padding-bottom: 48px !important; }
  .small-pl\+ {
    padding-left: 48px !important; }
  .small-ph\+ {
    padding-right: 48px !important;
    padding-left: 48px !important; }
  .small-pv\+ {
    padding-top: 48px !important;
    padding-bottom: 48px !important; } }

@media screen and (min-width: 45em) and (max-width: 63.9375em) {
  .medium-p\+ {
    padding: 48px !important; }
  .medium-pt\+ {
    padding-top: 48px !important; }
  .medium-pr\+ {
    padding-right: 48px !important; }
  .medium-pb\+ {
    padding-bottom: 48px !important; }
  .medium-pl\+ {
    padding-left: 48px !important; }
  .medium-ph\+ {
    padding-right: 48px !important;
    padding-left: 48px !important; }
  .medium-pv\+ {
    padding-top: 48px !important;
    padding-bottom: 48px !important; } }

@media screen and (min-width: 45em) {
  .lap-and-up-p\+ {
    padding: 48px !important; }
  .lap-and-up-pt\+ {
    padding-top: 48px !important; }
  .lap-and-up-pr\+ {
    padding-right: 48px !important; }
  .lap-and-up-pb\+ {
    padding-bottom: 48px !important; }
  .lap-and-up-pl\+ {
    padding-left: 48px !important; }
  .lap-and-up-ph\+ {
    padding-right: 48px !important;
    padding-left: 48px !important; }
  .lap-and-up-pv\+ {
    padding-top: 48px !important;
    padding-bottom: 48px !important; } }

@media screen and (max-width: 63.9375em) {
  .portable-p\+ {
    padding: 48px !important; }
  .portable-pt\+ {
    padding-top: 48px !important; }
  .portable-pr\+ {
    padding-right: 48px !important; }
  .portable-pb\+ {
    padding-bottom: 48px !important; }
  .portable-pl\+ {
    padding-left: 48px !important; }
  .portable-ph\+ {
    padding-right: 48px !important;
    padding-left: 48px !important; }
  .portable-pv\+ {
    padding-top: 48px !important;
    padding-bottom: 48px !important; } }

@media screen and (min-width: 64em) {
  .large-p\+ {
    padding: 48px !important; }
  .large-pt\+ {
    padding-top: 48px !important; }
  .large-pr\+ {
    padding-right: 48px !important; }
  .large-pb\+ {
    padding-bottom: 48px !important; }
  .large-pl\+ {
    padding-left: 48px !important; }
  .large-ph\+ {
    padding-right: 48px !important;
    padding-left: 48px !important; }
  .large-pv\+ {
    padding-top: 48px !important;
    padding-bottom: 48px !important; } }

/**
     * Add huge paddings.
     */
@media screen and (max-width: 44.9375em) {
  .small-p\+\+ {
    padding: 96px !important; }
  .small-pt\+\+ {
    padding-top: 96px !important; }
  .small-pr\+\+ {
    padding-right: 96px !important; }
  .small-pb\+\+ {
    padding-bottom: 96px !important; }
  .small-pl\+\+ {
    padding-left: 96px !important; }
  .small-ph\+\+ {
    padding-right: 96px !important;
    padding-left: 96px !important; }
  .small-pv\+\+ {
    padding-top: 96px !important;
    padding-bottom: 96px !important; } }

@media screen and (min-width: 45em) and (max-width: 63.9375em) {
  .medium-p\+\+ {
    padding: 96px !important; }
  .medium-pt\+\+ {
    padding-top: 96px !important; }
  .medium-pr\+\+ {
    padding-right: 96px !important; }
  .medium-pb\+\+ {
    padding-bottom: 96px !important; }
  .medium-pl\+\+ {
    padding-left: 96px !important; }
  .medium-ph\+\+ {
    padding-right: 96px !important;
    padding-left: 96px !important; }
  .medium-pv\+\+ {
    padding-top: 96px !important;
    padding-bottom: 96px !important; } }

@media screen and (min-width: 45em) {
  .lap-and-up-p\+\+ {
    padding: 96px !important; }
  .lap-and-up-pt\+\+ {
    padding-top: 96px !important; }
  .lap-and-up-pr\+\+ {
    padding-right: 96px !important; }
  .lap-and-up-pb\+\+ {
    padding-bottom: 96px !important; }
  .lap-and-up-pl\+\+ {
    padding-left: 96px !important; }
  .lap-and-up-ph\+\+ {
    padding-right: 96px !important;
    padding-left: 96px !important; }
  .lap-and-up-pv\+\+ {
    padding-top: 96px !important;
    padding-bottom: 96px !important; } }

@media screen and (max-width: 63.9375em) {
  .portable-p\+\+ {
    padding: 96px !important; }
  .portable-pt\+\+ {
    padding-top: 96px !important; }
  .portable-pr\+\+ {
    padding-right: 96px !important; }
  .portable-pb\+\+ {
    padding-bottom: 96px !important; }
  .portable-pl\+\+ {
    padding-left: 96px !important; }
  .portable-ph\+\+ {
    padding-right: 96px !important;
    padding-left: 96px !important; }
  .portable-pv\+\+ {
    padding-top: 96px !important;
    padding-bottom: 96px !important; } }

@media screen and (min-width: 64em) {
  .large-p\+\+ {
    padding: 96px !important; }
  .large-pt\+\+ {
    padding-top: 96px !important; }
  .large-pr\+\+ {
    padding-right: 96px !important; }
  .large-pb\+\+ {
    padding-bottom: 96px !important; }
  .large-pl\+\+ {
    padding-left: 96px !important; }
  .large-ph\+\+ {
    padding-right: 96px !important;
    padding-left: 96px !important; }
  .large-pv\+\+ {
    padding-top: 96px !important;
    padding-bottom: 96px !important; } }

/**
     * Remove paddings.
     */
@media screen and (max-width: 44.9375em) {
  .small-p0 {
    padding: 0 !important; }
  .small-pt0 {
    padding-top: 0 !important; }
  .small-pr0 {
    padding-right: 0 !important; }
  .small-pb0 {
    padding-bottom: 0 !important; }
  .small-pl0 {
    padding-left: 0 !important; }
  .small-ph0 {
    padding-right: 0 !important;
    padding-left: 0 !important; }
  .small-pv0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important; } }

@media screen and (min-width: 45em) and (max-width: 63.9375em) {
  .medium-p0 {
    padding: 0 !important; }
  .medium-pt0 {
    padding-top: 0 !important; }
  .medium-pr0 {
    padding-right: 0 !important; }
  .medium-pb0 {
    padding-bottom: 0 !important; }
  .medium-pl0 {
    padding-left: 0 !important; }
  .medium-ph0 {
    padding-right: 0 !important;
    padding-left: 0 !important; }
  .medium-pv0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important; } }

@media screen and (min-width: 45em) {
  .lap-and-up-p0 {
    padding: 0 !important; }
  .lap-and-up-pt0 {
    padding-top: 0 !important; }
  .lap-and-up-pr0 {
    padding-right: 0 !important; }
  .lap-and-up-pb0 {
    padding-bottom: 0 !important; }
  .lap-and-up-pl0 {
    padding-left: 0 !important; }
  .lap-and-up-ph0 {
    padding-right: 0 !important;
    padding-left: 0 !important; }
  .lap-and-up-pv0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important; } }

@media screen and (max-width: 63.9375em) {
  .portable-p0 {
    padding: 0 !important; }
  .portable-pt0 {
    padding-top: 0 !important; }
  .portable-pr0 {
    padding-right: 0 !important; }
  .portable-pb0 {
    padding-bottom: 0 !important; }
  .portable-pl0 {
    padding-left: 0 !important; }
  .portable-ph0 {
    padding-right: 0 !important;
    padding-left: 0 !important; }
  .portable-pv0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important; } }

@media screen and (min-width: 64em) {
  .large-p0 {
    padding: 0 !important; }
  .large-pt0 {
    padding-top: 0 !important; }
  .large-pr0 {
    padding-right: 0 !important; }
  .large-pb0 {
    padding-bottom: 0 !important; }
  .large-pl0 {
    padding-left: 0 !important; }
  .large-ph0 {
    padding-right: 0 !important;
    padding-left: 0 !important; }
  .large-pv0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important; } }

.generic-vertical-align {
  position: relative;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%); }

.hexagon {
  position: relative;
  width: 300px;
  height: 173.21px;
  margin: 86.60px 0;
  background-size: auto 341.7914px;
  background-position: center;
  border-left: solid 2px #f44;
  border-right: solid 2px #f44; }

.hexTop,
.hexBottom {
  position: absolute;
  z-index: 1;
  width: 212.13px;
  height: 212.13px;
  overflow: hidden;
  -webkit-transform: scaleY(0.5774) rotate(-45deg);
  -ms-transform: scaleY(0.5774) rotate(-45deg);
  transform: scaleY(0.5774) rotate(-45deg);
  background: inherit;
  left: 41.93px; }

/*counter transform the bg image on the caps*/
.hexTop:after,
.hexBottom:after {
  content: "";
  position: absolute;
  width: 296.0000px;
  height: 170.89567968012926px;
  -webkit-transform: rotate(45deg) scaleY(1.7321) translateY(-85.4478px);
  -ms-transform: rotate(45deg) scaleY(1.7321) translateY(-85.4478px);
  transform: rotate(45deg) scaleY(1.7321) translateY(-85.4478px);
  -webkit-transform-origin: 0 0;
  -ms-transform-origin: 0 0;
  transform-origin: 0 0;
  background: inherit; }

.hexTop {
  top: -106.0660px;
  border-top: solid 3px #f44;
  border-right: solid 3px #f44; }

.hexTop:after {
  background-position: center top; }

.hexBottom {
  bottom: -106.0660px;
  border-bottom: solid 3px #f44;
  border-left: solid 3px #f44; }

.hexBottom:after {
  background-position: center bottom; }

.hexagon:after {
  content: "";
  position: absolute;
  top: 1.1547px;
  left: 0;
  width: 296.0000px;
  height: 170.8957px;
  z-index: 2;
  background: inherit; }

#testimonials {
  position: relative;
  height: 400px;
  margin-top: 50px; }
  #testimonials .testimonial {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    overflow: hidden;
    color: #F6F6F6; }
    #testimonials .testimonial .testimonial__background {
      height: 100%;
      background-position: center; }
    #testimonials .testimonial .testimonial__content {
      width: 100%;
      height: 400px;
      position: absolute;
      top: 0;
      left: 1em; }
      #testimonials .testimonial .testimonial__content > .column {
        height: 100%; }
    #testimonials .testimonial .testimonial__img {
      top: 27%;
      left: 50%;
      transform: translate(-50%, -50%); }
    #testimonials .testimonial .testimonial__quote {
      text-align: center;
      border-left: none;
      margin-right: 3em;
      text-align: left;
      font-size: 1.4375rem;
      color: #F6F6F6; }
      #testimonials .testimonial .testimonial__quote cite {
        font-size: 1.4375rem;
        color: #F6F6F6; }
    @media only screen and (max-width: 40em) {
      #testimonials .testimonial .testimonial__quote {
        text-align: left;
        margin-right: 0;
        border-left: none;
        font-size: 1.2em;
        color: #F6F6F6; }
        #testimonials .testimonial .testimonial__quote cite {
          font-size: 1.1em;
          color: #F6F6F6; } }
  #testimonials blockquote cite a {
    color: #ddd;
    font-size: 0.8em; }
    #testimonials blockquote cite a:hover {
      color: #499CC0; }

html, body {
  overflow-x: hidden;
  height: auto; }

.center__wrapper {
  position: relative; }

.center__item {
  position: absolute;
  top: 50%; }

.header {
  position: relative;
  height: 70vh;
  min-height: 400;
  min-width: 100%;
  border-top: 1px solid #d00;
  background: black; }
  @media only screen and (max-width: 40em) {
    .header {
      min-height: 90vh;
      text-align: center; } }
  .header .header__background {
    height: 100%;
    width: 100%;
    background-position: center;
    background-size: cover;
    overflow: show;
    margin: 0;
    position: absolute;
    top: 0;
    left: 0; }
  .header .header__text {
    color: #FFFFFF;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-57%);
    -ms-transform: translateY(-57%);
    -moz-transform: translateY(-57%);
    -o-transform: translateY(-57%);
    transform: translateY(-57%);
    left: 10%;
    max-width: 80%; }
    .header .header__text .header__hook {
      color: #FFFFFF;
      font-size: 1.4em; }
    @media only screen and (min-width: 40.063em) {
      .header .header__text {
        left: 45%;
        max-width: 40%; } }
    @media only screen {
      .header .header__text {
        left: 40%;
        max-width: 50%; } }
    @media only screen and (max-width: 40em) {
      .header .header__text {
        left: 10%;
        max-width: 80%; } }
  .header .pre-order__button {
    padding: 0.625rem 0.9375rem; }
  .header .header__link {
    display: block;
    color: #FFFFFF;
    padding: 0 0.625rem;
    text-decoration: underline; }
    .header .header__link:hover {
      color: #e6e6e6; }

.ship-date {
  margin: 0; }

.header__logo {
  max-width: 100%;
  max-height: 5.5rem; }

.pre-order__bar {
  margin-top: -3.75rem;
  height: 3.75rem;
  background: rgba(255, 255, 255, 0.75);
  position: relative;
  transition: background-color 0.2s linear; }
  .pre-order__bar .pre-order__logo {
    padding: 0.625rem;
    max-height: 3.75rem;
    opacity: 0;
    transition: opacity 0.2s linear; }
  .pre-order__bar .pre-order__button {
    opacity: 0;
    float: right;
    margin: 0.375rem 0;
    padding: 0.625rem;
    font-size: 0.9375rem;
    height: 3rem;
    transition: opacity 0.2s linear; }
    @media only screen and (max-width: 40em) {
      .pre-order__bar .pre-order__button {
        padding: 0.1875rem 0.375rem; } }
    .pre-order__bar .pre-order__button > span {
      display: inline-block !important; }

.tessel-meter__title {
  font-size: 0.9em;
  display: inline-block;
  color: #333333;
  max-height: 1.5rem;
  margin: 0.1875rem; }
  @media only screen and (max-width: 40em) {
    .tessel-meter__title {
      font-weight: 500;
      font-size: 0.7em;
      white-space: nowrap; } }

.tessel-meter {
  background-color: #F6F6F6;
  height: 1.5625rem;
  border: 1px solid white;
  padding: 0.125rem;
  margin-bottom: 0.625rem;
  border-radius: 0;
  display: block;
  height: 1.5rem;
  margin-bottom: 0.375rem; }
  @media only screen and (max-width: 40em) {
    .tessel-meter {
      font-size: 0.8em;
      line-height: 1.3em; } }
  .tessel-meter > span {
    background: #f54942;
    height: 100%;
    display: block;
    border-radius: 0;
    padding: 0 0 0 3px;
    line-height: 1em;
    font-weight: bold;
    text-align: left; }

html.after-preorder .pre-order__bar {
  background: #F6F6F6;
  z-index: 100;
  position: fixed;
  margin-top: 0;
  top: 0;
  left: 0;
  transition: background-color 0.5s linear; }
  html.after-preorder .pre-order__bar .pre-order__logo {
    opacity: 1.0;
    transition: opacity 0.5s linear; }
  html.after-preorder .pre-order__bar .pre-order__button {
    display: inline-block;
    padding: 0;
    width: 100%;
    opacity: 1.0;
    transition: opacity 0.5s linear; }

html.after-preorder .tessel-meter {
  background-color: #F6F6F6;
  height: 1.5625rem;
  border: 1px solid white;
  padding: 0.125rem;
  margin-bottom: 0.625rem;
  background-color: #FFFFFF; }

.gray-background {
  background-color: #EEEEEE; }

.main-icons {
  height: 3.75rem;
  color: #f54942; }

.full-width {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  max-width: initial; }

.full-height {
  height: 100%; }

.section {
  padding-top: 5em;
  float: right; }

@media only screen and (max-width: 40em) {
  #features {
    padding-top: 1em; } }

@media only screen and (min-width: 40.063em) {
  #features {
    padding-top: 0; } }

@media only screen and (min-width: 64.063em) {
  #features {
    padding-top: 5em; } }

.module-carousel {
  height: 10em; }
  .module-carousel .module-fade {
    width: 50%;
    position: absolute;
    right: 0;
    height: 10em;
    z-index: 20;
    background: rgba(246, 246, 246, 0.82);
    /* Old Browsers */
    background: -moz-linear-gradient(left, rgba(246, 246, 246, 0) 10%, rgba(255, 255, 255, 0.82) 65%, white 95%);
    /* FF3.6+ */
    background: -webkit-gradient(left top, right top, color-stop(0%, rgba(246, 246, 246, 0)), color-stop(65%, rgba(255, 255, 255, 0.82)), color-stop(95%, white));
    /* Chrome, Safari4+ */
    background: -webkit-linear-gradient(left, rgba(246, 246, 246, 0) 10%, rgba(255, 255, 255, 0.82) 65%, white 95%);
    /* Chrome10+,Safari5.1+ */
    background: -o-linear-gradient(left, rgba(246, 246, 246, 0) 10%, rgba(255, 255, 255, 0.82) 65%, white 95%);
    /* Opera 11.10+ */
    background: -ms-linear-gradient(left, rgba(246, 246, 246, 0) 10%, rgba(255, 255, 255, 0.82) 65%, white 95%);
    /* IE 10+ */
    background: linear-gradient(to right, rgba(246, 246, 246, 0) 10%, rgba(255, 255, 255, 0.82) 65%, white 95%);
    /* W3C */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f6f6f6', endColorstr='#ffffff', GradientType=1 );
    /* IE6-9 */ }

.module {
  text-align: center; }
  .module a {
    color: #333333;
    text-decoration: none; }
  .module img {
    margin: auto;
    max-height: 5em; }

.text--monospace {
  font-family: Consolas, "Liberation Mono", Courier, monospace; }

.preserve-3d {
  -webkit-transform-style: preserve-3d;
  -ms-transform-style: preserve-3d;
  -moz-transform-style: preserve-3d;
  -o-transform-style: preserve-3d;
  transform-style: preserve-3d; }

.cursor-blink:after {
  -webkit-animation: cursor-blink 1s linear infinite;
  -ms-animation: cursor-blink 1s linear infinite;
  -moz-animation: cursor-blink 1s linear infinite;
  -o-animation: cursor-blink 1s linear infinite;
  animation: cursor-blink 1s linear infinite;
  content: "|";
  color: #333333;
  padding-left: 3px; }

.cursor-blink.disabled:after {
  content: none; }

@-moz-keyframes cursor-blink {
  1% {
    opacity: 0; }
  40% {
    opacity: 0; }
  60% {
    opacity: 1; }
  100% {
    opacity: 1; } }

@-webkit-keyframes cursor-blink {
  1% {
    opacity: 0; }
  40% {
    opacity: 0; }
  60% {
    opacity: 1; }
  100% {
    opacity: 1; } }

@-o-keyframes cursor-blink {
  1% {
    opacity: 0; }
  40% {
    opacity: 0; }
  60% {
    opacity: 1; }
  100% {
    opacity: 1; } }

@keyframes cursor-blink {
  1% {
    opacity: 0; }
  40% {
    opacity: 0; }
  60% {
    opacity: 1; }
  100% {
    opacity: 1; } }

#js-is-small {
  width: 0px;
  height: 0px; }
  @media only screen and (max-width: 40em) {
    #js-is-small {
      display: none; } }

.code-sample {
  position: relative; }
  .code-sample code {
    margin-top: 35px;
    border-top: 0px; }
  .code-sample .python {
    width: 90px; }
    @media only screen and (max-width: 40em) {
      .code-sample .python {
        width: 80px; } }
  .code-sample .rust {
    width: 80px; }
    @media only screen and (max-width: 40em) {
      .code-sample .rust {
        width: 70px; } }
  .code-sample .code-tab.active {
    border-bottom: 35px solid #6e6e6e;
    z-index: 1; }
  .code-sample .code-tab:not(.active):hover {
    cursor: pointer;
    cursor: hand; }
  .code-sample pre {
    padding-top: 15px;
    overflow-x: wrap;
    background: #2a2a2a;
    color: #eee;
    padding: 14px 20px;
    font-size: 16px;
    line-height: 24px;
    font-family: Consolas, "Liberation Mono", Menlo, Courier, monospace; }
    @media only screen and (max-width: 40em) {
      .code-sample pre {
        overflow-x: hidden;
        white-space: pre-wrap; } }
  .code-sample pre:not(.active) {
    display: none; }

.code-tab {
  border-radius: 7px 7px 0 0;
  margin-right: 1px;
  background-color: #ABABAB;
  display: inline-block;
  height: 35px;
  width: 120px; }
  @media only screen and (max-width: 40em) {
    .code-tab {
      width: 100px; } }
  .code-tab .text {
    color: #fff;
    position: relative;
    text-align: center;
    top: 3px; }

#customize .box {
  display: inline-block;
  border: 1px solid black;
  width: 1em;
  height: 1em;
  margin-right: 0.75em; }

.partners-section {
  background-color: #EEEEEE;
  padding: 1.5625rem 3.75rem; }

.partner-grid {
  margin: 0; }

.partner-grid li {
  display: inline-block;
  text-align: center; }
  .partner-grid li img {
    max-height: 5rem; }
  .partner-grid li a {
    display: block; }
  @media only screen {
    .partner-grid li {
      width: 49%; }
      .partner-grid li a {
        padding: 0.3125rem; } }
  @media only screen and (min-width: 40.063em) {
    .partner-grid li {
      width: 19%; }
      .partner-grid li a {
        padding: 1.25rem; } }

.hover-color, .hover-color img {
  -webkit-filter: invert(75%) grayscale(100%);
  -ms-filter: invert(75%) grayscale(100%);
  -moz-filter: invert(75%) grayscale(100%);
  -o-filter: invert(75%) grayscale(100%);
  filter: invert(75%) grayscale(100%); }

.hover-color img.NPM {
  -webkit-filter: grayscale(100%);
  -ms-filter: grayscale(100%);
  -moz-filter: grayscale(100%);
  -o-filter: grayscale(100%);
  filter: grayscale(100%); }

.hover-color:hover, .hover-color:hover img {
  -webkit-filter: none !important;
  -ms-filter: none !important;
  -moz-filter: none !important;
  -o-filter: none !important;
  filter: none !important; }

.last-call {
  padding: 2em 0; }

.subscribe {
  margin: 0; }
  .subscribe a {
    text-decoration: underline; }

.question-arrow {
  position: relative;
  top: 1rem;
  left: 1rem;
  width: 0;
  height: 0;
  border-left: 0.5rem solid transparent;
  border-right: 0.5rem solid transparent;
  border-top: 0.5rem solid #f54942; }
  .question-arrow.active {
    top: -0.5rem;
    border-top: none;
    border-bottom: 0.5rem solid #f54942; }

.pricing__table {
  border: solid 1px #DDDDDD;
  margin-left: 0;
  margin-bottom: 1.25rem;
  padding-bottom: 3.875rem;
  position: relative; }
  .pricing__table * {
    list-style: none;
    line-height: 1; }
  .pricing__table .pricing__title {
    background-color: #333333;
    padding: 0.9375rem 1.25rem;
    text-align: center;
    color: #EEEEEE;
    font-weight: normal;
    font-size: 1rem;
    font-family: Source Sans Pro, sans-serif; }
  .pricing__table .pricing__price {
    background-color: #F6F6F6;
    padding: 0.9375rem 1.25rem;
    text-align: center;
    color: #333333;
    font-weight: normal;
    font-size: 2rem;
    font-family: Source Sans Pro, sans-serif; }
  .pricing__table .pricing__description {
    background-color: #FFFFFF;
    padding: 0.9375rem;
    text-align: center;
    color: #777777;
    font-size: 0.75rem;
    font-weight: normal;
    line-height: 1.4;
    border-bottom: dotted 1px #DDDDDD; }
  .pricing__table .pricing__bullet {
    background-color: #FFFFFF;
    padding: 0.9375rem;
    text-align: center;
    color: #333333;
    font-size: 0.875rem;
    font-weight: normal;
    border-bottom: dotted 1px #DDDDDD; }
  .pricing__table .pricing__cta {
    background-color: #FFFFFF;
    text-align: center;
    padding: 1.25rem 1.25rem 0; }
  .pricing__table li:last-of-type {
    position: absolute;
    bottom: 0;
    width: 100%; }

.js-data-graph svg {
  width: 100%;
  height: 150px;
  margin-left: -40px; }

.my-carousel {
  height: 120px;
  position: relative;
  margin: 0 60px 0 20px;
  box-sizing: content-box;
  overflow: auto; }
  .my-carousel.loaded {
    overflow: visible; }
  .my-carousel .my-carousel-wrapper-one {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    overflow: hidden; }
  .my-carousel .my-carousel-wrapper-two {
    -webkit-transform: translateZ(0);
    -webkit-backface-visibility: hidden; }
  .my-carousel .my-module {
    float: left;
    overflow: hidden;
    height: 100%;
    vertical-align: top;
    text-align: center; }
    .my-carousel .my-module a {
      color: black;
      text-decoration: none; }
    .my-carousel .my-module img {
      margin: auto;
      max-height: 5em; }
  .my-carousel .my-carousel-left,
  .my-carousel .my-carousel-right {
    height: 100px;
    line-height: 100px;
    vertical-align: middle;
    padding: 0 5px;
    width: 20px;
    cursor: pointer;
    position: absolute;
    z-index: 10; }
    .my-carousel .my-carousel-left.hidden,
    .my-carousel .my-carousel-right.hidden {
      opacity: 0;
      cursor: inherit; }
  .my-carousel .my-carousel-left {
    left: -20px; }
  .my-carousel .my-carousel-left::before,
  .my-carousel .my-carousel-right::before {
    display: block;
    content: " ";
    overflow: hidden;
    top: 50%;
    left: 0;
    position: absolute;
    height: 30px;
    margin-top: -15px;
    border-top: 15px solid transparent;
    border-bottom: 15px solid transparent; }
  .my-carousel .my-carousel-left::before {
    border-right: 10px solid #999; }
  .my-carousel .my-carousel-right::before {
    border-left: 10px solid #999; }
  .my-carousel .my-carousel-right {
    right: -20px;
    content: ">"; }

.module-carousel-sensors .my-carousel-wrapper-two {
  width: 180%; }

.module-carousel-sensors .my-carousel-wrapper-two > * {
  width: 11.11111%; }

.module-carousel-usb .my-carousel-wrapper-two {
  width: 100%; }

.module-carousel-usb .my-carousel-wrapper-two > * {
  width: 20%; }

.module-carousel-community .my-carousel-wrapper-two {
  width: 180%; }

.module-carousel-community .my-carousel-wrapper-two > * {
  width: 11.11111%; }

.descriptor {
  font-size: 14px; }

.camera-gif {
  width: 179px;
  height: 179px;
  background-color: black;
  position: relative;
  margin-top: 35px; }

.gif-display {
  height: 100%;
  width: auto; }

.record-circle {
  border-radius: 50%;
  width: 15px;
  height: 15px;
  background-color: #f54942;
  display: inline-block;
  left: 2px;
  top: 2px;
  position: absolute; }

.record-ring {
  border-radius: 50%;
  width: 25px;
  height: 25px;
  border: 3px solid #f54942;
  display: inline-block;
  left: 10px;
  top: 20px;
  position: absolute;
  display: none; }

.record-text {
  color: #f54942;
  left: 25px;
  top: -2px;
  position: absolute;
  font-weight: bold; }

.no-record-text {
  color: #999999;
  margin-left: auto;
  margin-right: auto;
  line-height: 280px;
  text-align: center; }

.calloutDot {
  background-color: #008CBA;
  position: absolute;
  border-radius: 50%;
  width: 15px;
  height: 15px;
  display: inline-block;
  display: none;
  z-index: 100; }

.calloutLineX {
  background-color: #008CBA;
  height: 2px;
  position: absolute;
  display: inline-block;
  z-index: 100; }

.calloutLineY {
  background-color: #008CBA;
  width: 2px;
  position: absolute;
  display: inline-block;
  z-index: 100; }

.check-me {
  max-width: 0;
  overflow: hidden;
  opacity: 0.5;
  color: #f54942;
  /*CSS3 transitions for animated effect*/
  position: absolute;
  top: 5;
  left: 0; }

.opensourcelogos {
  padding-bottom: 30px; }

.animate-check {
  position: relative; }

.giant-list {
  font-size: 1.3em; }

.animation-area {
  padding: 0 25px; }
  @media only screen and (min-width: 64.063em) {
    .animation-area {
      position: relative;
      padding-left: 400px;
      padding-right: 25px; } }

#js-animation-target-two .board__container {
  transform: translateY(-300px); }

.board__container {
  position: relative;
  height: 500px;
  width: 320px;
  margin: 0 auto; }
  @media only screen and (max-width: 40em) {
    .board__container {
      display: none;
      margin-top: -60;
      height: 400px;
      -webkit-transform: scale(0.75, 0.75);
      -ms-transform: scale(0.75, 0.75);
      -moz-transform: scale(0.75, 0.75);
      -o-transform: scale(0.75, 0.75);
      transform: scale(0.75, 0.75); }
      .board__container .board#js-board {
        top: 0px; }
      .board__container .board-module {
        top: 7px; }
      .board__container .board-usb {
        top: 191px;
        left: 135px; }
      .board__container .board-usbover {
        top: 191px;
        left: 135px; } }
  @media only screen and (min-width: 40.063em) and (max-width: 64em) {
    .board__container {
      height: 460px; }
      .board__container .board#js-board {
        top: 0px; }
      .board__container .board-module {
        top: 7px; }
      .board__container .board-usb {
        top: 191px; }
      .board__container .board-usbover {
        top: 191px; } }
  @media only screen and (min-width: 64.063em) {
    .board__container {
      position: absolute;
      height: 300px;
      top: 120px;
      left: 60px;
      margin: 0; } }

.board {
  width: 320px;
  height: 300px;
  left: 40px;
  top: 120px;
  position: absolute; }
  @media only screen and (max-width: 40em) {
    .board {
      left: 10px;
      top: 120px; } }
  @media only screen and (min-width: 64.063em) {
    .board {
      left: -20px;
      top: 0px; } }
  .board .board__image,
  .board .sentry__image {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0; }

.board__image {
  transition: opacity 0.3s; }

.sentry__image {
  transition: opacity 0.3s;
  opacity: 0;
  transform: translateY(80px); }

.sentry__desc {
  transition: opacity 0.3s;
  transform: translateY(380px);
  opacity: 0;
  box-sizing: border-box;
  width: 100%;
  text-align: center;
  padding: 15px 50px 0 22px;
  font-style: italic;
  font-size: 1.2em;
  line-height: 1.3em; }

@media only screen and (min-width: 40.063em) {
  html.after-optimize .board__ethernet {
    transition: transform 0.5s ease-out 1s, opacity 0.3s 1.8s;
    opacity: 0;
    transform: translateY(100px); }
  html.after-optimize .board__headers {
    transition: transform 0.5s ease-out 1s, opacity 0.3s 1.8s;
    opacity: 0;
    transform: translateX(30px); }
  html.after-optimize .sentry__image {
    transition: transform 1s ease-out 3.1s, opacity 0.3s 2.4s;
    opacity: 1;
    transform: translateY(0); }
  html.after-optimize .sentry__desc {
    transition: opacity 0.3s 4.1s;
    transform: translateY(300px);
    opacity: 1; }
  html.after-end .sentry__desc {
    transition: opacity 0.5s 0;
    opacity: 0; } }

.board-module {
  position: absolute;
  left: 312px;
  top: 127px;
  height: 155px;
  width: 155px; }
  @media only screen and (max-width: 40em) {
    .board-module {
      left: 282px;
      top: 127px; } }
  @media only screen and (min-width: 64.063em) {
    .board-module {
      left: 250px;
      top: 6px; } }

.board-usb, .board-usbover {
  position: absolute;
  left: 165px;
  top: 313px;
  height: 283px;
  width: 283px;
  z-index: 0; }
  @media only screen and (min-width: 64.063em) {
    .board-usb, .board-usbover {
      left: 105px;
      top: 186px; } }

.board-module__image,
.board-usb__image,
.board-usbover__image {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  opacity: 0;
  transition: transform 0.25s ease-in, opacity 0.25s linear 0.2s; }

.board-usbover {
  z-index: 25; }

.board-module__image {
  transform: translateX(60px) translateZ(0); }

.board-usb__image,
.board-usbover__image {
  transform: translateY(60px) translateZ(0); }

.board,
.board-module,
.board-usb,
.board-usbover {
  transition: transform 0.25s ease-out, opacity 0.15s linear;
  z-index: 20;
  pointer-events: none; }

.board {
  z-index: 21; }

.board-usbover {
  z-index: 25; }

html.after-plugandplay.before-testimonials .board, html.after-plugandplay.before-testimonials .board-module, html.after-plugandplay.before-testimonials .board-usb, html.after-plugandplay.before-testimonials .board-usbover {
  transform: translateX(-106px) translateZ(0); }

html.after-plugandplay.before-testimonials .board-module__image {
  opacity: 1;
  transform: none; }

html.after-plugandplay.before-testimonials .board-module__image {
  transition: transform 0.25s ease-in 0.6s, opacity 0.25s 0.4s linear; }

html.after-usbsupport.before-testimonials .board-usbover__image {
  overflow-x: hidden;
  background: url(/images/tessel2-usbover-on.png); }

html.after-usbsupport.before-testimonials .board-usb__image,
html.after-usbsupport.before-testimonials .board-usbover__image {
  opacity: 1;
  transform: none; }

html.after-animationarea.before-end .board__container {
  position: relative;
  transition: transform 0.25s linear; }
  @media only screen and (min-width: 64.063em) {
    html.after-animationarea.before-end .board__container {
      position: fixed; } }

html.before-preorder .board-module, html.before-preorder .board-usb, html.before-preorder .board-usbover {
  display: none !important; }

.millions {
  position: absolute;
  top: 368px;
  left: -14px; }
  .millions img {
    padding: 8px;
    width: 72px; }

.millions {
  display: none; }

#features ul, #features li {
  list-style: none;
  margin: 0;
  padding: 0; }
  @media only screen and (min-width: 64.063em) {
    #features ul, #features li {
      display: block; } }

@media only screen {
  #features li:before {
    border-radius: 50%;
    width: 8px;
    height: 8px;
    background-color: #08a;
    display: inline-block;
    content: "";
    vertical-align: middle;
    margin-left: -18px;
    margin-right: 10px; } }

@media only screen and (min-width: 64.063em) {
  #features li:before {
    display: none; } }

#features .callout {
  color: #08a;
  font-size: 18px;
  padding: 7px 16px;
  margin: 5px 0;
  cursor: pointer; }
  @media only screen and (min-width: 64.063em) {
    #features .callout {
      opacity: 0.5;
      border-radius: 3px;
      border: 2px solid #08a; } }
  @media only screen and (min-width: 40.063em) and (max-width: 64em) {
    #features .callout {
      cursor: auto; } }
  @media only screen and (max-width: 40em) {
    #features .callout {
      cursor: auto; } }

@media only screen and (min-width: 64.063em) {
  #features .callout:hover {
    background: #eff;
    color: black;
    opacity: 1; } }

.faq-section {
  padding: 2em 0;
  background-color: #EEEEEE; }

#faq, #faq li {
  display: block;
  list-style: none;
  padding: 0;
  margin: 0;
  box-sizing: border-box; }

@media only screen and (min-width: 40.063em) {
  #faq {
    -webkit-columns: 2;
    -ms-columns: 2;
    -moz-columns: 2;
    -o-columns: 2;
    columns: 2;
    -webkit-column-gap: 2em;
    -ms-column-gap: 2em;
    -moz-column-gap: 2em;
    -o-column-gap: 2em;
    column-gap: 2em; } }

#faq li {
  background: white;
  display: inline-block;
  width: 100%;
  margin-bottom: 1em;
  vertical-align: top; }

#faq li .question {
  background: #ddd;
  padding: 10px 20px; }

#faq li .content {
  background: #fff;
  padding: 10px 20px; }

.instructional {
  display: inline-block;
  font-size: 0.8em;
  font-family: sans-serif;
  font-weight: bold;
  padding-right: 10px; }

.red {
  color: #f54942; }

.filename {
  font-weight: bold;
  color: #00B200; }

.row h2::before,
#js-usbsupport h3::before {
  margin-left: -16px;
  display: inline-block;
  width: 8px;
  float: left;
  content: ".";
  height: 0.7em;
  margin-top: 0.34em;
  overflow: hidden;
  background: transparent;
  transition: background 0.4s; }

html.after-npminstall #js-section-highlevel h2::before,
html.after-animationarea #features h2::before,
html.after-plugandplay #js-section-plugandplay h2::before,
html.after-optimize #optimize h2::before,
html.after-usbsupport #js-usbsupport h3::before,
html.after-end #scale h2::before {
  background: red; }

#js-pre-order__bar {
  transform: translateZ(0); }

.js-animation-group,
.habla-browser-chrome,
#testimonials,
.pre-order__bar {
  -webkit-backface-visibility: hidden; }
