/* -------------------------------------------------------------------- 
   Reset adapted from normalize.css by @necolas.
   -------------------------------------------------------------------- */

/* Use box sizing on all the things! */
* { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section,
summary {
  display: block;
}
audio,
canvas,
video {
  display: inline-block;
}
audio:not([controls]) {
  display: none;
  height: 0;
}


/* Base styles 
------------------------------- */

html {
  font-family: sans-serif;
  -webkit-text-size-adjust: 100%;
      -ms-text-size-adjust: 100%;
}
body {
  margin: 0;
  padding: 0;
  font: 18px/1.5 "Helvetica Neue", Helvetica, sans-serif;
  color: #333;
  background-color: #fff;
}
a {
  color: #0882f0;
  text-decoration: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0,0); /* Removes the dark touch outlines on links */
}
a:hover {
  color: #0964b5;
}


/* Typography 
------------------------------- */

h1, h2, h3, h4, h5, h6 { margin: 10px 0; }
h1, h2, h3 { line-height: 1.1; }

h1 { font-size: 50px; }
h2 { font-size: 40px; }
h3 { font-size: 32px; }
h4 { font-size: 22px; }
h5 { font-size: 18px; }
h6 { font-size: 14px; }

p { margin: 0 0 20px; }
p img { margin: 0; }
small { font-size: 80%; }

code {
  padding: 2px 4px;
  font-size: 80%;
  white-space: nowrap;
  background-color: #f7f7f9;
  border: 1px solid #e1e1e8;
  border-radius: 3px;
}
blockquote {
  margin: 0;
  padding: 2px 0 2px 20px;
  border-left: 3px solid #ddd;
}
blockquote p {
  margin: 0;
  padding: 0;
  font-size: 22px;
  font-weight: 300;
}
/* For when you're sourcing a quote */
blockquote small { font-size: 90% }

abbr[title] {
  border-bottom: 1px dotted;
}
dfn {
  font-style: italic;
}
mark {
  color: #333;
  background: #ff0;
}
code,
kbd,
pre,
samp {
  font-family: monospace, serif;
}
pre {
  white-space: pre;
  white-space: pre-wrap;
  word-wrap: break-word;
}
q {
  quotes: "\201C" "\201D" "\2018" "\2019";
}
sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}
sup {
  top: -0.5em;
}
sub {
  bottom: -0.25em;
}


/* Embedded content 
------------------------------- */

img {
  max-width: 100%;
  width: auto;
  height: auto;
}
svg:not(:root) {
  overflow: hidden;
}


/* Figures 
------------------------------- */

figure {
  margin: 0;
}


/* Forms 
------------------------------- */

fieldset {
  margin: 0 2px;
  padding: 10px;
}
legend {
  padding: 0;
  border: 0;
}
button,
input,
select,
textarea {
  margin: 0;
  font-family: inherit;
  font-size: 100%;
}
button,
input {
  line-height: normal;
}
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  cursor: pointer;
  -webkit-appearance: button;
}
button[disabled],
input[disabled] {
  cursor: default;
}
input[type="checkbox"],
input[type="radio"] {
  padding: 0;
}
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}
button::-moz-focus-inner,
input::-moz-focus-inner {
  padding: 0;
  border: 0;
}
textarea {
  overflow: auto;
  vertical-align: top;
}


/* Tables 
------------------------------- */

table {
  border-spacing: 0;
}


/* Misc 
------------------------------- */

hr {
  margin: 10px 0;
  border: 0;
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #fff;
}


/* Responsive classes 
------------------------------- */

.show-mobile  { display: block !important; }
.show-mobile-inline  { display: inline !important; }
.hide-mobile  { display: none !important; }

.show-desktop { display: none !important; }
.show-desktop-inline { display: none !important; }
.hide-desktop { display: block !important; }

@media screen and (min-width: 768px) {
  .show-mobile  { display: none !important; }
  .show-mobile-inline  { display: none !important; }
  .hide-mobile  { display: block !important; }

  .show-desktop { display: block !important; }
  .show-desktop-inline { display: inline !important; }
  .hide-desktop { display: none !important; }
}