/* ==========================================================================
   Styling and layout for all media
   ========================================================================== */
/* correct block display not defined in IE8-9 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
nav,
section,
summary {
  display: block;
}

/* correct `<summary>` not showing as clickable */
summary {
  cursor: pointer;
}

/* summary styling for polyfill */
.no-details details > summary:before {
  float: left;
  width: 20px;
  content: "► ";
}
.no-details details.open > summary:before {
  content: "▼ ";
}

/* address `[hidden]` styling not present in IE8-9.
   hide the `template` element in IE, Safari, and Firefox < 22 */
[hidden],
template {
  display: none;
}

/* Clearfix
   ========================================================================== */
header:after,
footer:after,
[role="navigation"] ul:after,
[role="navigation"] ol:after,
.clearfix:after,
.container:after,
.paginator:after {
  content: "";
  display: table;
  clear: both;
}

/* ==========================================================================
   Singularity Grid System
   ========================================================================== */
.box {
  border: 1px solid #ccc;
  padding: 0.5em;
  background-color: #dedede;
}

.layout--span-1-7,
.layout--span-1-2,
.layout--span-3-5,
.layout--span-3-6,
.layout--span-3-7,
.layout--span-6-7 {
  width: 100%;
  float: right;
  margin-left: 0;
  margin-right: 0;
  clear: both;
}

@media (min-width: 36em) {
  .layout--span-1-2 {
    width: 100%;
    float: right;
    margin-left: 0;
    margin-right: 0;
    clear: both;
  }

  .layout--span-3-6 {
    width: 100%;
    float: right;
    margin-left: 0;
    margin-right: 0;
    clear: both;
  }

  .layout--span-3-7 {
    width: 100%;
    float: right;
    margin-left: 0;
    margin-right: 0;
    clear: none;
  }

  .layout--span-3-5 {
    width: 63.6363636%;
    float: left;
    margin-right: -100%;
    margin-left: 0%;
    clear: both;
  }

  .layout--span-6-7 {
    width: 27.2727273%;
    float: right;
    margin-left: 0;
    margin-right: 0;
    clear: none;
  }
}
@media (min-width: 48em) {
  .layout--span-1-2 {
    width: 22.5806452%;
    float: left;
    margin-right: -100%;
    margin-left: 0%;
    clear: both;
  }

  .layout--span-3-6 {
    width: 61.2903226%;
    float: left;
    margin-right: -100%;
    margin-left: 25.8064516%;
    clear: both;
  }

  .layout--span-3-7 {
    width: 74.1935484%;
    float: right;
    margin-left: 0;
    margin-right: 0;
    clear: none;
  }

  .layout--span-3-5 {
    width: 65.2173913%;
    float: left;
    margin-right: -100%;
    margin-left: 0%;
    clear: none;
  }

  .layout--span-6-7 {
    width: 30.4347826%;
    float: right;
    margin-left: 0;
    margin-right: 0;
    clear: none;
  }
}
@media (min-width: 64em) {
  .layout--span-1-2 {
    width: 25.9259259%;
    float: left;
    margin-right: -100%;
    margin-left: 0%;
    clear: both;
  }

  .layout--span-3-6 {
    width: 55.5555556%;
    float: left;
    margin-right: -100%;
    margin-left: 29.6296296%;
    clear: both;
  }

  .layout--span-3-7 {
    width: 70.3703704%;
    float: right;
    margin-left: 0;
    margin-right: 0;
    clear: none;
  }

  .layout--span-3-5 {
    width: 57.8947368%;
    float: left;
    margin-right: -100%;
    margin-left: 0%;
    clear: none;
  }

  .layout--span-6-7 {
    width: 36.8421053%;
    float: right;
    margin-left: 0;
    margin-right: 0;
    clear: none;
  }
}
/* ==========================================================================
   Styling and layout for screen media (mobile first)
   ========================================================================== */
@media screen {
  /* Layout
     ========================================================================== */
  html {
    -webkit-tap-highlight-color: rgba(0, 102, 255, 0.5);
    /* always force scrollbar padding so we don't get 'jumping' */
    overflow-y: scroll;
    /* prevent iOS text size adjust after orientation change, without disabling user zoom */
    -webkit-text-size-adjust: 100%;
    /* as above, for Windows Phone */
    -ms-text-size-adjust: 100%;
  }

  body {
    margin: 0;
    background: #fff;
  }

  .top-stripe {
    background-color: #000;
    margin: 0;
    padding: 0;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
  }
  .wrapper {
    padding: 1em 0 1em;
  }

  header,
  .container,
  footer,
  #nav {
    margin: 0 auto;
    width: 90%;
    max-width: 80em;
  }

  header {
    padding: 1em 0;
  }
  header h1 {
    margin: 0;
  }
  header img {
    margin: 2em 0 0;
  }
  .sidebar {
	margin-top: 0.5em;
  }
  .footer-container {
    margin-top: 2em;
    background-color: #cee0f2;
    box-shadow: inset 0 5px 9px -6px rgba(0, 0, 0, 0.33);
  }

  .footer-content {
    font-size: 0.8571429em;
    line-height: 1.72em;
    padding: 1em 0 3em;
  }
  .footer-content:after {
    content: "";
    display: table;
    clear: both;
  }

  .copyright {
    margin: 3em 0;
  }

  .section {
    margin-top: 2em;
  }
  .section:before {
    display: block;
    content: "";
    height: 2em;
    margin: -2em 0 0;
  }

  /* address differences between Firefox and other browsers */
  hr {
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box;
    border: 0;
    border-bottom: 1px solid #cccccc;
    height: 0;
  }

  /* Navigation
     ========================================================================== */
  #nav {
    font-family: "Open Sans Condensed", sans-serif;
    text-transform: uppercase;
    letter-spacing: 2px;
  }
  .js #nav {
    clip: rect(0 0 0 0);
    max-height: 0;
    position: absolute;
    display: block;
    overflow: hidden;
  }
  #nav ul {
    list-style: none;
    display: block;
    margin: 0 auto;
    padding: 0;
    max-width: 80em;
  }
  #nav li {
    -webkit-transition: all 0.2s linear;
    -moz-transition: all 0.2s linear;
    -o-transition: all 0.2s linear;
    transition: all 0.2s linear;
    border-top: 1px solid #cee0f2;
  }
  #nav li.active {
    background-color: #cee0f2;
  }
  #nav li.active a {
    color: #333333;
  }
  #nav li:hover {
    background-color: #a6c6e7;
  }
  #nav li:active {
    -webkit-box-shadow: inset 0 0.2em 0.25em rgba(0, 0, 0, 0.25);
    -moz-box-shadow: inset 0 0.2em 0.25em rgba(0, 0, 0, 0.25);
    box-shadow: inset 0 0.2em 0.25em rgba(0, 0, 0, 0.25);
    background-color: #7daddd;
  }
  #nav a {
    display: block;
    padding: .5em 5%;
    color: #fff;
  }
  #nav a:hover {
    color: #333333;
    text-decoration: none;
  }
  #nav a:active {
    color: #1a1a1a;
    text-decoration: none;
  }
  #nav.opened {
    max-height: 9999px;
  }

  #nav-toggle {
    /* disables the default bubble shown when you touch and hold a touch target */
    -webkit-touch-callout: none;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    float: right;
    margin-right: 5%;
    height: 32px;
    padding: 4px 36px 0 6px;
    font-family: "Open Sans Condensed", sans-serif;
    font-weight: bold;
    text-transform: uppercase;
    background-color: #cee0f2;
    border-bottom-right-radius: 2px;
    border-bottom-left-radius: 2px;
  }
  .no-svg #nav-toggle, .no-js #nav-toggle {
    background-image: url("/images/style/hamburger.png");
  }
  .svg #nav-toggle {
    background-image: url("/images/style/hamburger.svg");
    -webkit-background-size: 32px 32px;
    -moz-background-size: 32px 32px;
    -o-background-size: 32px 32px;
    background-size: 32px 32px;
    background-repeat: no-repeat;
    background-position: top right;
  }
  .sub-nav {
    list-style: none;
    font-family: "Open Sans Condensed", sans-serif;
    color: #0054a6;
    font-weight: 700;
    padding: 0.25em;
    margin: 0.5em 0 1em;
    font-size: 1.1428571em;
    line-height: 1.5em;
    background-color: #e2edf7;
  }
  .sub-nav:after {
    content: "";
    display: table;
    clear: both;
  }
  .sub-nav li {
    -webkit-transition: all 0.2s linear;
    -moz-transition: all 0.2s linear;
    -o-transition: all 0.2s linear;
    transition: all 0.2s linear;
    float: left;
    padding: 0.25em 0.5em;
    margin: 0.25em;
    border: 1px solid #a6c6e7;
    background-color: #e2edf7;
    border-radius: 2px;
  }
  .sub-nav li.active {
    background-color: #bad3ed;
  }
  .sub-nav li:hover {
    background-color: #a6c6e7;
  }
  .sub-nav li:active {
    -webkit-box-shadow: inset 0 0.2em 0.25em rgba(0, 0, 0, 0.25);
    -moz-box-shadow: inset 0 0.2em 0.25em rgba(0, 0, 0, 0.25);
    box-shadow: inset 0 0.2em 0.25em rgba(0, 0, 0, 0.25);
    background-color: #7daddd;
    color: #002040;
  }
  .sub-nav li a {
    text-decoration: none;
  }
  .footer-nav {
    margin: 1em 0;
  }
  .footer-nav ul {
    list-style: none;
    padding: 0;
    margin: 0;
  }
  .footer-nav li {
    -webkit-transition: all 0.2s linear;
    -moz-transition: all 0.2s linear;
    -o-transition: all 0.2s linear;
    transition: all 0.2s linear;
    padding: 0;
    border-top: 1px solid #7daddd;
  }
  .footer-nav li:last-child {
    border-bottom: 1px solid #7daddd;
  }
  .footer-nav a {
    color: #337ac1;
    text-decoration: none;
    display: block;
    padding: 0.25em;
  }
  .footer-nav a:visited {
    color: #337ac1;
  }
  .footer-nav a:hover {
    color: #286099;
    background-color: #bad3ed;
    text-decoration: none;
  }
  .footer-nav a:active {
    color: #1e4770;
    background-color: #a6c6e7;
    text-decoration: none;
  }

  /* Links
     ========================================================================== */
  a {
    text-decoration: none;
    color: #114eb1;
    background: transparent;
  }
  a:hover, a:active {
    outline: 0;
    text-decoration: underline;
    color: #0066ff;
  }
  a:focus {
    outline: thin dotted #0066ff;
  }
  a:visited {
    color: #183082;
  }
  header a {
    -webkit-border-radius: 0.125em;
    -moz-border-radius: 0.125em;
    -ms-border-radius: 0.125em;
    -o-border-radius: 0.125em;
    border-radius: 0.125em;
    color: #333333;
  }
  header a:hover, header a:active {
    background: #e8e8e8;
  }

  [role="main"] h1 a {
    -webkit-border-radius: 0.125em;
    -moz-border-radius: 0.125em;
    -ms-border-radius: 0.125em;
    -o-border-radius: 0.125em;
    border-radius: 0.125em;
    color: #333333;
  }
  [role="main"] h1 a:visited {
    color: #333333;
  }
  [role="main"] h1 a:hover, [role="main"] h1 a:active {
    text-decoration: none;
    color: #333333;
    background: #efefef;
  }

  /* only target phone numbers you want clickable and stop mobile phones from linking other
     numbers that look like, but are not phone numbers - use attribute `itemprop="telephone"`
     to apply to the numbers you require linked and styled */
  a[href^="tel"],
  a[href^="sms"] {
    color: #333333;
    pointer-events: none;
    cursor: default;
  }
  [itemprop="telephone"] a[href^="tel"], [itemprop="telephone"]
  a[href^="sms"] {
    color: #114eb1;
    pointer-events: auto;
    cursor: pointer;
  }

  /* Typography
     ========================================================================== */
  * html {
    font-size: 87.5%;
  }

  html {
    font-size: 14px;
    line-height: 1.7142857em;
  }

  body {
    font-family: "Open Sans", sans-serif;
    color: #333333;
  }
  .tagline {
    font-weight: 700;
    font-family: "Open Sans Condensed", sans-serif;
    color: #0054a6;
    padding: 0;
    font-size: 1.7em;
    line-height: 0.8571429em;
    margin: 0 0 0.5em;
  }
  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    clear: both;
    font-family: "Open Sans Condensed", sans-serif;
    color: #0054a6;
  }

  h1 {
    font-size: 2.2857143em;
    line-height: 1.125em;
    margin: 0;
  }

  h2 {
    font-size: 2em;
    line-height: 1.2857143em;
    margin: 0.8571429em 0;
  }

  h3 {
    font-size: 1.7142857em;
    line-height: 1.3333333em;
    margin: 1em 0;
  }

  h4 {
    font-size: 1.4285714em;
    line-height: 1.4em;
    margin: 1.2em 0;
  }
  
  p {
	  margin: 1.7142857em 0;
  }
  
  /* address style set to `bolder` in Firefox4+, Safari5, and Chrome */
  b,
  strong {
    font-weight: bold;
  }

  address {
    margin: 1em 0;
  }

  blockquote {
    font-size: 1.2857143em;
    line-height: 1.44em;
    font-style: italic;
    margin: .8888889em 0;
    border-left: 3px solid #cccccc;
    padding: 0 0 0 .8888889em;
  }

  /* set consistent quote types */
  q {
    quotes: "\201C" "\201D" "\2018" "\2019";
  }

  /* address styling not present in Safari5 and Chrome */
  dfn {
    font-style: italic;
  }

  /* address styling not present in IE8-9, Safari5, Chrome */
  abbr[title],
  dfn[title] {
    border-bottom: dotted 1px;
    cursor: help;
  }

  mark,
  var {
    -webkit-border-radius: 0.25em;
    -moz-border-radius: 0.25em;
    -ms-border-radius: 0.25em;
    -o-border-radius: 0.25em;
    border-radius: 0.25em;
    padding: 0 .25em;
    color: #333333;
    background: #e8f0fd;
  }

  pre,
  code,
  kbd,
  samp {
    font-family: Cousine, Consolas, "Lucida Console", Monaco, monospace;
  }

  code,
  kbd,
  samp {
    font-size: 1em;
    line-height: 1.5em;
    -webkit-border-radius: 0.2857143em;
    -moz-border-radius: 0.2857143em;
    -ms-border-radius: 0.2857143em;
    -o-border-radius: 0.2857143em;
    border-radius: 0.2857143em;
    border: 1px solid #e3e3e3;
    padding: .07142857142857em .21428571428571em;
    background: #f7f7f7;
  }

  pre {
    font-size: 1em;
    line-height: 1.5em;
    -webkit-border-radius: 0.5714286em;
    -moz-border-radius: 0.5714286em;
    -ms-border-radius: 0.5714286em;
    -o-border-radius: 0.5714286em;
    border-radius: 0.5714286em;
    overflow-x: auto;
    border: 1px solid #e3e3e3;
    padding: 1em;
    background: #f7f7f7;
    tab-size: 4;
  }
  pre code {
    font-size: 1em;
    border: 0;
    padding: 0;
    background: none;
  }

  /* prevent `<sub>` and `<sup>` affecting line height in all browsers */
  sub,
  sup {
    font-size: 0.8571429em;
    line-height: 0em;
    position: relative;
    vertical-align: baseline;
  }

  sup {
    top: -.5em;
  }

  sub {
    bottom: -.25em;
  }

  small,
  figcaption,
  tfoot,
  .footnote {
    font-size: 0.8571429em;
    line-height: 1.5em;
  }

  figcaption,
  tfoot,
  .footnote {
    color: #888888;
  }

  figcaption {
    margin-top: .5em;
    font-style: italic;
  }

  /* Embedded content
     ========================================================================== */
  /* remove the gap between images, videos, audio and canvas and the bottom of their containers */
  audio,
  canvas,
  img,
  video {
    vertical-align: middle;
  }

  /* correct `inline-block` display not defined in IE8-9 */
  audio,
  canvas,
  video {
    display: inline-block;
  }

  /* make embedded elements responsive */
  img,
  video {
    max-width: 100%;
    height: auto;
  }

  img {
    /* remove border when inside `<a>` element in IE8-9 */
    border: 0;
  }
  img.align-left {
    float: left;
    margin: 1em 1em 1em 0;
  }
  img.align-right {
    float: right;
    margin: 1em 0 1em 1em;
  }
  img.align-center {
    display: block;
    margin: 2em auto;
  }

  /* rounded images */
  .img--round {
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    -o-border-radius: 50%;
    border-radius: 50%;
  }

 /* div alignemnts */
div.align-left {
  text-align: left;
  margin: 2em 0;
}
div.align-right {
  text-align: right;
  margin: 2em 0;
}
div.align-center {
  text-align: center;
  margin: 2em 0;
}

 /* address margin not present in IE8-9 and Safari5 */
  figure {
    margin: 0;
  }

  /* prevent modern browsers from displaying `<audio>` without controls, remove excess height in iOS5 devices */
  audio:not([controls]) {
    display: none;
    height: 0;
  }

  /* correct overflow displayed oddly in IE9 */
  svg:not(:root) {
    overflow: hidden;
  }

  /* reset fonts for Flowplayer (can be removed if no videos needed) */
  .videoplayer {
    font-family: sans-serif;
    background-color: #333333;
  }

  /* Tables
     ========================================================================== */
  /* allow overflow scroll on tables */
  .tabular-data {
    overflow-x: auto;
    margin-bottom: 1em;
  }

  /* consistent tables */
  table {
    border-collapse: collapse;
    border-spacing: 0;
    width: 100%;
  }

  caption {
    font-style: italic;
    text-align: left;
    margin-bottom: .5em;
  }

  th,
  td {
    /* make table cells align top and left by default */
    vertical-align: top;
    text-align: left;
    padding: .25em 0em .25em .5em;
  }
  th:first-child,
  td:first-child {
    padding-left: 0;
  }

  tfoot th,
  tfoot td {
    padding: .325em 0 .325em .6153846em;
  }
  tfoot:first-child {
    padding-left: 0;
  }

  /* cell alignments */
  [rowspan] {
    vertical-align: middle;
  }

  .numerical {
    text-align: right;
  }

  /* bordered tables */
  .table--bordered th,
  .table--bordered td {
    border-bottom: 1px solid #cccccc;
  }
  .table--bordered th:empty,
  .table--bordered td:empty {
    border: 0;
  }
  .table--bordered thead tr:last-child th,
  .table--bordered thead tr:last-child td {
    border-bottom: 2px solid #cccccc;
  }
  .table--bordered tfoot tr:last-child th,
  .table--bordered tfoot tr:last-child td {
    border-bottom: 0;
  }

  /* set widths of `col` elements using classes whose numbers represent a percentage
     width for that column - we leave one column free of a class so that column can
     soak up the effects of any accidental breakage in the table.
  
     <table>
       <colgroup>
         <col class="t10">
         <col class="t10">
         <col class="t10">
         <col>
       </colgroup>
       ..etc..
  */
  .t5 {
    width: 5%;
  }

  .t10 {
    width: 10%;
  }

  .t12 {
    width: 12.5%;
  }

  .t15 {
    width: 15%;
  }

  .t20 {
    width: 20%;
  }

  .t25 {
    width: 25%;
  }

  .t30 {
    width: 30%;
  }

  .t33 {
    width: 33.3333333%;
  }

  .t35 {
    width: 35%;
  }

  .t37 {
    width: 37.5%;
  }

  .t40 {
    width: 40%;
  }

  .t45 {
    width: 45%;
  }

  .t50 {
    width: 50%;
  }

  .t55 {
    width: 55%;
  }

  .t60 {
    width: 60%;
  }

  .t62 {
    width: 62.5%;
  }

  .t65 {
    width: 65%;
  }

  .t66 {
    width: 66.6666667%;
  }

  .t70 {
    width: 70%;
  }

  .t75 {
    width: 75%;
  }

  .t80 {
    width: 80%;
  }

  .t85 {
    width: 85%;
  }

  .t87 {
    width: 87.5%;
  }

  .t90 {
    width: 90%;
  }

  .t95 {
    width: 95%;
  }

  /* Lists
     ========================================================================== */
  /* address paddings set differently */
  menu,
  ol,
  ul {
    padding: 0 0 0 2em;
  }

  /* remove margins from nested lists */
  li > ul,
  li > ol {
    margin: 0;
  }

  dd {
    margin: 0 0 0 2em;
  }

  dt {
    font-style: italic;
  }

  .list--no-bullets {
    list-style: none;
    padding: 0;
  }

  /* have a numbered `ul` without the semantics implied by using an `ol` */
  .list--numbered {
    list-style-type: decimal;
  }

  /* Forms
     ========================================================================== */
  /* define consistent fieldset margin, border and padding */
  fieldset {
    margin: 1em 0;
    border: 1px solid #cccccc;
    padding: 1px 1em;
  }

  /* remove padding so people aren't caught out if they zero out fieldsets */
  legend {
    border: 0;
    padding: 0;
  }

  button,
  input,
  select,
  textarea,
  a.button,
  span.disabled {
    /* correct font size not being inherited in all browsers */
    font-size: 100%;
    font-size: 1em;
    line-height: 1.5em;
    /* address margins set differently in Firefox4+, Safari5+, and Chrome */
    margin: 0;
    font-family: "Open Sans", sans-serif;
    vertical-align: baseline;
  }

  /* colour placeholder text (WebKit and Mozilla only, so far) */
  input::-webkit-input-placeholder,
  textarea::-webkit-input-placeholder {
    color: #888888;
  }

  input:-moz-placeholder,
  textarea:-moz-placeholder {
    color: #888888;
  }

  /* styling for placeholder polyfill fallback */
  .placeholder {
    color: #888888;
  }

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

  /* remove inner padding and search cancel button in Safari5+ and Chrome on OS X */
  input[type="search"]::-webkit-search-cancel-button,
  input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
  }

  input[type="color"],
  input[type="date"],
  input[type="datetime"],
  input[type="datetime-local"],
  input[type="email"],
  input[type="month"],
  input[type="number"],
  input[type="password"],
  input[type="search"],
  input[type="tel"],
  input[type="text"],
  input[type="time"],
  input[type="url"],
  input[type="week"],
  select,
  textarea {
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    -ms-border-radius: 0;
    -o-border-radius: 0;
    border-radius: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: box-shadow 0.2s linear;
    -moz-transition: box-shadow 0.2s linear;
    -o-transition: box-shadow 0.2s linear;
    transition: box-shadow 0.2s linear;
    -webkit-appearance: none;
    border: 1px solid #cccccc;
    padding: .3571428em;
    height: 2.3571428em;
    background: #ffffff;
    text-align: left;
  }

  input[type="color"] {
    padding: 0;
  }

  /* address box sizing set to `content-box` and excess padding in IE8-9 */
  input[type="checkbox"],
  input[type="radio"] {
    padding: 0;
    box-sizing: border-box;
  }

  /* address inconsistent `text-transform` inheritance for `select` in Firefox 4+ */
  select {
    text-transform: none;
  }

  select[size],
  select[multiple] {
    height: auto;
  }

  select[size="0"],
  select[size="1"] {
    height: 2.3571428em;
  }

  /* address `<select>` alignment in Safari/Chrome */
  optgroup {
    font-family: "Open Sans", sans-serif;
    font-style: normal;
    font-weight: normal;
    color: #333333;
  }
  optgroup::-moz-focus-inner {
    border: 0;
    padding: 0;
  }

  textarea {
    height: auto;
    min-height: 3em;
    overflow: auto;
    resize: vertical;
    width: 100%;
  }

  /* make sure disable elements really are disabled */
  button[disabled],
  html input[disabled],
  input[type="button"][disabled],
  input[type="reset"][disabled],
  input[type="submit"][disabled],
  select[disabled],
  select[disabled] option,
  select[disabled] optgroup,
  textarea[disabled],
  span.disabled {
    -webkit-box-shadow: none !important;
    -moz-box-shadow: none !important;
    box-shadow: none !important;
    opacity: 1;
    border-color: #e3e3e3 !important;
    color: #aaaaaa !important;
    background: #eeeeee !important;
    text-shadow: none !important;
    cursor: default !important;
  }

  input.small {
    width: 33%;
  }
  input.medium {
    width: 66%;
  }
  input.large {
    width: 100%;
  }

  textarea.small {
    height: 4em;
  }
  textarea.medium {
    height: 8em;
  }
  textarea.large {
    height: 12em;
  }

  .required {
    color: #9d261d;
    cursor: help;
  }

  /* better form focus glows, if box-shadow is supported */
  .boxshadow input[type="color"]:focus,
  .boxshadow input[type="date"]:focus,
  .boxshadow input[type="datetime"]:focus,
  .boxshadow input[type="datetime-local"]:focus,
  .boxshadow input[type="email"]:focus,
  .boxshadow input[type="month"]:focus,
  .boxshadow input[type="number"]:focus,
  .boxshadow input[type="password"]:focus,
  .boxshadow input[type="search"]:focus,
  .boxshadow input[type="tel"]:focus,
  .boxshadow input[type="text"]:focus,
  .boxshadow input[type="time"]:focus,
  .boxshadow input[type="url"]:focus,
  .boxshadow input[type="week"]:focus,
  .boxshadow select:focus,
  .boxshadow textarea:focus {
    -webkit-box-shadow: 0 0 7px #0066ff;
    -moz-box-shadow: 0 0 7px #0066ff;
    box-shadow: 0 0 7px #0066ff;
    outline: 0;
  }

  /* Contact Form
     ========================================================================== */
  
  .zemContactForm {
	padding: 1em;
	background: #dae8f5;
	border-radius: 2px;
  }
   
  input.zemText {
	display: block;
	width: 100%;
	margin-bottom: 1em;
  }
  
  .zemContactForm label {
	color: #0054a6;
  }
	
  textarea.zemTextarea {
    display: block;
    width: 100%;
    margin-bottom: 1em;
  }
	
  .zemError, .error {
    color: #c00;
    list-style: none;
    padding: 0;
    margin: 0 0 1em;
  }
	
  .unhappyMessage {
    color: #c00;
    padding-left: 1em;
  }
	
  .unhappy {
    border-color: #c00 !important;
  }
	
  .zemThanks {
    font-size: 1.2em;
    color: #0054a6;
    font-weight: 700;
    padding: 0.5em;
    background: #dae8f5;
    border-radius: 4px;
  }
	
  .zemThanks p {
    margin: 0;
  }


  /* Mail Chimp sign up
     ========================================================================== */

	#mc_embed_signup {background:#cee0f2; margin: 1.7142857em 0; padding: 0; border-radius: 2px;}
	.sidebar #mc_embed_signup {margin-top: 0;}
	#mc_embed_signup input.button {margin-bottom: 0;}
	#mc_embed_signup .button {font-size: 1em; font-weight: normal;}
	#mc_embed_signup input.email {width: 100%;}
	#mc_embed_signup form {padding: 0.25em 0.5em 0.5em;}
	#mc_embed_signup label {font-size: 1em; padding-bottom: 0.25em;}

  .sidebar #mc_embed_signup {
	  display: none;
  }

  .sidebar h3 {
	  display: none;
  }


  /* Buttons
     ========================================================================== */
  /* address inconsistent `text-transform` inheritance for `button` in Chrome, Safari5+, and IE6+ */
  button {
    text-transform: none;
  }

  button,
  a.button,
  span.button,
  .cta .cta-button,
  input[type="button"],
  input[type="reset"],
  input[type="submit"] {
    border-radius: 3px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
    -webkit-background-clip: padding;
    -moz-background-clip: padding;
    background-clip: padding-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
background-color: #2e55a8;
background-image: -webkit-gradient(linear, left top, left bottom, from(rgb(54, 99, 196)), to(rgb(38, 71, 140)));
background-image: -webkit-linear-gradient(top, rgb(54, 99, 196), rgb(38, 71, 140));
background-image: -moz-linear-gradient(top, rgb(54, 99, 196), rgb(38, 71, 140));
background-image: -o-linear-gradient(top, rgb(54, 99, 196), rgb(38, 71, 140));
background-image: -ms-linear-gradient(top, rgb(54, 99, 196), rgb(38, 71, 140));
background-image: linear-gradient(top, rgb(54, 99, 196), rgb(38, 71, 140));
filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,StartColorStr='#3663c4', EndColorStr='#26478c');
    -webkit-transition: box-shadow 0.2s linear;
    -moz-transition: box-shadow 0.2s linear;
    -o-transition: box-shadow 0.2s linear;
    transition: box-shadow 0.2s linear;
    -webkit-appearance: none;
    display: inline-block;
    border: none;
    padding: .3571428em .7142857em;
    width: auto;
    height: 2.3571428em;
    overflow: visible;
    font-weight: normal;
    text-align: center;
    color: #fff;
    cursor: pointer;
  }
  button:hover,
  a.button:hover,
  span.button:hover,
  .cta .cta-button:hover,
  input[type="button"]:hover,
  input[type="reset"]:hover,
  input[type="submit"]:hover {
background-color: #3e66bb;
background-image: -webkit-gradient(linear, left top, left bottom, from(rgb(79, 119, 207)), to(rgb(46, 85, 168)));
background-image: -webkit-linear-gradient(top, rgb(79, 119, 207), rgb(46, 85, 168));
background-image: -moz-linear-gradient(top, rgb(79, 119, 207), rgb(46, 85, 168));
background-image: -o-linear-gradient(top, rgb(79, 119, 207), rgb(46, 85, 168));
background-image: -ms-linear-gradient(top, rgb(79, 119, 207), rgb(46, 85, 168));
background-image: linear-gradient(top, rgb(79, 119, 207), rgb(46, 85, 168));
filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,StartColorStr='#4f77cf', EndColorStr='#2e55a8');
    text-decoration: none;
  }
  button:active,
  a.button:active,
  span.button:active,
  .cta .cta-button:active,
  input[type="button"]:active,
  input[type="reset"]:active,
  input[type="submit"]:active {
    -webkit-box-shadow: inset 0 0.2em 0.25em rgba(0, 0, 0, 0.15);
    -moz-box-shadow: inset 0 0.2em 0.25em rgba(0, 0, 0, 0.15);
    box-shadow: inset 0 0.2em 0.25em rgba(0, 0, 0, 0.15);
background-color: #3e66bb;
background-image: -webkit-gradient(linear, left top, left bottom, from(rgb(46, 85, 168)), to(rgb(79, 119, 207)));
background-image: -webkit-linear-gradient(top, rgb(46, 85, 168), rgb(79, 119, 207));
background-image: -moz-linear-gradient(top, rgb(46, 85, 168), rgb(79, 119, 207));
background-image: -o-linear-gradient(top, rgb(46, 85, 168), rgb(79, 119, 207));
background-image: -ms-linear-gradient(top, rgb(46, 85, 168), rgb(79, 119, 207));
background-image: linear-gradient(top, rgb(46, 85, 168), rgb(79, 119, 207));
filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,StartColorStr='#2e55a8', EndColorStr='#4f77cf');
	color: #dae8f5;
  }

  button.button-success,
  a.button.button-success,
  span.button.button-success,
  input[type="button"].button-success,
  input[type="reset"].button-success,
  input[type="submit"].button-success {
    text-shadow: -1px -1px 0 rgba(0, 0, 0, 0.1);
    background-color: #238c23;
    background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #2db52d), color-stop(100%, #238c23));
    background-image: -webkit-linear-gradient(#2db52d, #238c23);
    background-image: -moz-linear-gradient(#2db52d, #238c23);
    background-image: -o-linear-gradient(#2db52d, #238c23);
    background-image: linear-gradient(#2db52d, #238c23);
    color: #ffffff;
    border-color: #1e781e;
  }
  button.button-success:hover,
  a.button.button-success:hover,
  span.button.button-success:hover,
  input[type="button"].button-success:hover,
  input[type="reset"].button-success:hover,
  input[type="submit"].button-success:hover {
    background-color: #2bad2b;
    background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #3cce3c), color-stop(100%, #2bad2b));
    background-image: -webkit-linear-gradient(#3cce3c, #2bad2b);
    background-image: -moz-linear-gradient(#3cce3c, #2bad2b);
    background-image: -o-linear-gradient(#3cce3c, #2bad2b);
    background-image: linear-gradient(#3cce3c, #2bad2b);
    border-color: #175b17;
  }
  button.button-success:active,
  a.button.button-success:active,
  span.button.button-success:active,
  input[type="button"].button-success:active,
  input[type="reset"].button-success:active,
  input[type="submit"].button-success:active {
    background-color: #2bad2b;
    background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #238c23), color-stop(100%, #2bad2b));
    background-image: -webkit-linear-gradient(#238c23, #2bad2b);
    background-image: -moz-linear-gradient(#238c23, #2bad2b);
    background-image: -o-linear-gradient(#238c23, #2bad2b);
    background-image: linear-gradient(#238c23, #2bad2b);
    border-color: #175b17;
  }
  button.button-danger,
  a.button.button-danger,
  span.button.button-danger,
  input[type="button"].button-danger,
  input[type="reset"].button-danger,
  input[type="submit"].button-danger {
    text-shadow: -1px -1px 0 rgba(0, 0, 0, 0.1);
    background-color: #9d261d;
    background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #c83025), color-stop(100%, #9d261d));
    background-image: -webkit-linear-gradient(#c83025, #9d261d);
    background-image: -moz-linear-gradient(#c83025, #9d261d);
    background-image: -o-linear-gradient(#c83025, #9d261d);
    background-image: linear-gradient(#c83025, #9d261d);
    color: #ffffff;
    border-color: #872119;
  }
  button.button-danger:hover,
  a.button.button-danger:hover,
  span.button.button-danger:hover,
  input[type="button"].button-danger:hover,
  input[type="reset"].button-danger:hover,
  input[type="submit"].button-danger:hover {
    background-color: #bf2e23;
    background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #db463b), color-stop(100%, #bf2e23));
    background-image: -webkit-linear-gradient(#db463b, #bf2e23);
    background-image: -moz-linear-gradient(#db463b, #bf2e23);
    background-image: -o-linear-gradient(#db463b, #bf2e23);
    background-image: linear-gradient(#db463b, #bf2e23);
    border-color: #691913;
  }
  button.button-danger:active,
  a.button.button-danger:active,
  span.button.button-danger:active,
  input[type="button"].button-danger:active,
  input[type="reset"].button-danger:active,
  input[type="submit"].button-danger:active {
    background-color: #bf2e23;
    background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #9d261d), color-stop(100%, #bf2e23));
    background-image: -webkit-linear-gradient(#9d261d, #bf2e23);
    background-image: -moz-linear-gradient(#9d261d, #bf2e23);
    background-image: -o-linear-gradient(#9d261d, #bf2e23);
    background-image: linear-gradient(#9d261d, #bf2e23);
    border-color: #691913;
  }

  /* better button focus glows, if box-shadow is supported */
  .boxshadow button:focus,
  .boxshadow a.button:focus,
  .boxshadow input[type="button"]:focus,
  .boxshadow input[type="reset"]:focus,
  .boxshadow input[type="submit"]:focus {
    -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 0 7px #0066ff;
    -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 0 7px #0066ff;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 0 7px #0066ff;
    outline: 0;
  }

  /* browser upgrade message */
  .browsehappy {
    margin: 0;
    padding: 1em 5%;
    background: #e8f0fd;
  }

  /* Social media
     ========================================================================== */
  .social-channels {
    list-style: none;
    padding: 0;
  }
  .social-channels li {
    display: inline-block;
    margin-right: 0.5em;
  }
  .social-channels a {
    text-indent: 110%;
    white-space: nowrap;
    overflow: hidden;
    display: block;
    width: 32px;
    height: 32px;
  }
  .no-svg .social-channels a.facebook, .no-js .social-channels a.facebook {
    background-image: url("/images/style/facebook.png");
  }
  .svg .social-channels a.facebook {
    background-image: url("/images/style/facebook.svg");
    -webkit-background-size: 32px 32px;
    -moz-background-size: 32px 32px;
    -o-background-size: 32px 32px;
    background-size: 32px 32px;
    background-repeat: no-repeat;
    background-position: top right;
  }
  .no-svg .social-channels a.flickr, .no-js .social-channels a.flickr {
    background-image: url("/images/style/flickr.png");
  }
  .svg .social-channels a.flickr {
    background-image: url("/images/style/flickr.svg");
    -webkit-background-size: 32px 32px;
    -moz-background-size: 32px 32px;
    -o-background-size: 32px 32px;
    background-size: 32px 32px;
    background-repeat: no-repeat;
    background-position: top right;
  }
  .no-svg .social-channels a.googleplus, .no-js .social-channels a.googleplus {
    background-image: url("/images/style/googleplus.png");
  }
  .svg .social-channels a.googleplus {
    background-image: url("/images/style/googleplus.svg");
    -webkit-background-size: 32px 32px;
    -moz-background-size: 32px 32px;
    -o-background-size: 32px 32px;
    background-size: 32px 32px;
    background-repeat: no-repeat;
    background-position: top right;
  }
  .no-svg .social-channels a.linkedin, .no-js .social-channels a.linkedin {
    background-image: url("/images/style/linkedin.png");
  }
  .svg .social-channels a.linkedin {
    background-image: url("/images/style/linkedin.svg");
    -webkit-background-size: 32px 32px;
    -moz-background-size: 32px 32px;
    -o-background-size: 32px 32px;
    background-size: 32px 32px;
    background-repeat: no-repeat;
    background-position: top right;
  }
  .no-svg .social-channels a.pinterest, .no-js .social-channels a.pinterest {
    background-image: url("/images/style/pinterest.png");
  }
  .svg .social-channels a.pinterest {
    background-image: url("/images/style/pinterest.svg");
    -webkit-background-size: 32px 32px;
    -moz-background-size: 32px 32px;
    -o-background-size: 32px 32px;
    background-size: 32px 32px;
    background-repeat: no-repeat;
    background-position: top right;
  }
  .no-svg .social-channels a.twitter, .no-js .social-channels a.twitter {
    background-image: url("/images/style/twitter.png");
  }
  .svg .social-channels a.twitter {
    background-image: url("/images/style/twitter.svg");
    -webkit-background-size: 32px 32px;
    -moz-background-size: 32px 32px;
    -o-background-size: 32px 32px;
    background-size: 32px 32px;
    background-repeat: no-repeat;
    background-position: top right;
  }
  .no-svg .social-channels a.youtube, .no-js .social-channels a.youtube {
    background-image: url("/images/style/youtube.png");
  }
  .svg .social-channels a.youtube {
    background-image: url("/images/style/youtube.svg");
    -webkit-background-size: 32px 32px;
    -moz-background-size: 32px 32px;
    -o-background-size: 32px 32px;
    background-size: 32px 32px;
    background-repeat: no-repeat;
    background-position: top right;
  }
  .social-channels a:hover {
    -webkit-filter: brightness(1.1);
    -moz-filter: brightness(1.1);
    -ms-filter: brightness(1.1);
    -o-filter: brightness(1.1);
    filter: brightness(1.1);
  }

  .facebook-like {
    border: 0;
    width: 108px;
    height: 20px;
    overflow: hidden;
  }

  /* Miscellenaeous
     ========================================================================== */
  /* AJAX spinners */
  span.spinner {
    background-image: url("/images/style/spinner.gif");
    display: inline-block;
    width: 16px;
    height: 16px;
  }
  span.spinner.inverse {
    background-image: url("/images/style/spinner-inverse.gif");
  }
  /* hide text but still allow screen reader access */
  .accessibility {
    position: absolute;
    left: -1000em;
    height: 1px;
    width: 1px;
    overflow: hidden;
  }
}

@media screen and (min-width: 36em) {

  .mobile-mc-form {
	  display: none;
  }
  .sidebar #mc_embed_signup {
	  display: block;
  }
  .sidebar h3 {
	  display: block;
  }
  .js #nav {
    position: relative;
  }
  .js #nav.closed {
    max-height: none;
  }
  #nav ul {
    width: 100%;
    text-align: right;
    margin: 0;
  }
  #nav li {
    display: inline-block;
    border-top: 0;
    border-right: solid 1px #cee0f2;
    background: none;
  }
  #nav li:first-child {
    border-left: solid 1px #cee0f2;
  }
  #nav a {
    padding: .5em 1em;
  }
  #nav-toggle {
    display: none;
  }
  .tagline {
    font-size: 2.2857143em;
    line-height: 1.125em;
    margin: 0.2625em 0;
  }
}

@media screen and (min-width: 48em) {
  .sub-nav {
    margin: 0 0 1em 0;
    padding: 0;
    border: none;
  }
  .sub-nav li {
    float: none;
    border-left: none;
    border-right: none;
    border-top: none;
    border-radius: 0;
    margin: 0;
    border-bottom: 1px solid #0054a6;
    background: none;
  }
  .sub-nav li:first-child {
    border-top: 1px solid #0054a6;
  }
  .sub-nav li.active {
    background-color: #dae8f5;
  }
  .sub-nav li:hover {
    background-color: #bad3ed;
  }
  .sub-nav li:active {
    background-color: #a6c6e7;
    color: #003a73;
  }
  .sub-nav li a {
    display: block;
    padding: 0.5em 0;
  }
  .tagline-container {
    margin-bottom: 4em;
  }
  .tagline {
    font-size: 2.5em;
    line-height: 1.0285714em;
    margin: 0.24em 0;
  }
}

@media screen and (min-width: 64em) {
  .top-stripe {
    padding: 0 0 1em;
  }
  header img {
    margin: 0;
  }
  #nav {
    margin-bottom: 2em;
  }
}

@media screen and (min-width: 80em) {
  body {
    font-size: 1.2857143em;
    line-height: 1.72em;
  }
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  select[size],
  select[multiple],
  select[multiple][size] {
    background-image: none;
    padding-right: .5em;
  }

  select,
  select[size="0"],
  select[size="1"] {
    background: white url("data:image/svg+xml,<svg version='1.1' baseProfile='full' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' width='21px' height='7px' viewBox='0 0 21 7' enable-background='new 0 0 21 7' xml:space='preserve'><polygon fill='#333333' points='2,0 7,7 12,0'/></svg>") no-repeat right center;
    padding-right: 2.25em;
    -webkit-background-size: 1.5em .5em;
    background-size: 1.5em .5em;
  }
}
@media screen and (-webkit-min-device-pixel-ratio: 2), screen and (min--moz-device-pixel-ratio: 2), screen and (-o-min-device-pixel-ratio: 2 / 1), screen and (min-device-pixel-ratio: 2), screen and (min-resolution: 192dpi), screen and (min-resolution: 2dppx) {
  span.spinner {
    background-image: url("/images/style/spinner@2x.gif") !important;
    -webkit-background-size: 16px 16px;
    background-size: 16px 16px;
  }
}
@media screen and (-webkit-min-device-pixel-ratio: 2), screen and (min--moz-device-pixel-ratio: 2), screen and (-o-min-device-pixel-ratio: 2 / 1), screen and (min-device-pixel-ratio: 2), screen and (min-resolution: 192dpi), screen and (min-resolution: 2dppx) {
  span.spinner.inverse {
    background-image: url("/images/style/spinner-inverse@2x.gif") !important;
    -webkit-background-size: 16px 16px;
    background-size: 16px 16px;
  }
}

/* ==========================================================================
   Styling and layout for print media
   ========================================================================== */
@media print {
  * {
    -webkit-box-shadow: none !important;
    -moz-box-shadow: none !important;
    box-shadow: none !important;
    color: black !important;
    text-shadow: none !important;
    background: transparent !important;
  }

  body {
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 8pt;
    line-height: 1.5;
    margin: .5cm;
    padding: 2em 5em;
  }

  header {
    border-bottom: solid 1pt black;
  }

  footer {
    margin-top: 12pt;
    border-top: solid 1pt black;
  }

  /* hide unnecessary content from print */
  nav,
  audio,
  video,
  form,
  [role="complementary"],
  #comments-form,
  .comments h4 a:last-child,
  .paginator {
    display: none;
  }

  a {
    text-decoration: none;
  }

  /* show URLs for certain links in print */
  a[href]:after {
    content: " (" attr(href) ")";
  }

  h1 a[href]:after,
  h2 a[href]:after,
  h3 a[href]:after,
  sup a[href]:after,
  a[itemprop="discussionUrl"]:after,
  a[rel="tag"]:after {
    content: "";
  }

  /* show long-form for abbreviations in print */
  abbr[title]:after {
    content: " (" attr(title) ")";
  }

  h1 {
    font-size: 32pt;
    line-height: 36pt;
    font-weight: normal;
    margin: .5em 0;
  }

  h2 {
    font-size: 18pt;
    line-height: 23pt;
    page-break-after: avoid;
    orphans: 3;
    widows: 3;
    margin: .6666667em 0;
  }

  h3 {
    font-size: 12pt;
    line-height: 17pt;
    page-break-after: avoid;
    orphans: 3;
    widows: 3;
    margin: .75em 0;
  }

  h4 {
    font-size: 10pt;
    line-height: 14pt;
    page-break-after: avoid;
    orphans: 3;
    widows: 3;
    margin: .875em 0;
  }

  p {
    orphans: 3;
    widows: 3;
  }

  footer,
  figcaption,
  tfoot,
  small,
  .footnote {
    font-size: 6pt;
  }

  blockquote {
    font-size: 16pt;
    border-left: 3pt solid black;
    padding: 0 0 0 8pt;
    page-break-inside: avoid;
  }

  pre {
    margin-bottom: 8pt;
    border: solid 1pt black;
    padding: 8pt;
  }

  .comments {
    page-break-inside: avoid;
  }

  pre,
  code,
  kbd,
  samp,
  var {
    font-family: "Courier New", Courier, monospace;
  }

  dfn,
  q,
  dt {
    font-style: italic;
  }

  img {
    max-width: 100% !important;
    page-break-inside: avoid;
  }

  /* image alignemnts */
  img.align-left {
    float: left;
    margin: 1em 1em 1em 0;
  }
  img.align-right {
    float: right;
    margin: 1em 0 1em 1em;
  }
  img.align-center {
    display: block;
    margin: 1em auto;
  }

  figure {
    margin-bottom: 8pt;
  }

  figcaption {
    margin-top: 4pt;
  }

  ul {
    list-style: square;
    margin: 0 0 8pt 1.8em;
  }

  ol {
    list-style: decimal;
    margin: 0 0 8pt 1.8em;
  }

  dl {
    margin: 0 0 8pt 1.8em;
  }

  table {
    margin-bottom: 8pt;
    width: 100%;
  }

  caption {
    font-weight: bold;
    text-align: left;
    margin-bottom: 4pt;
  }

  /* display table head across multi-page tables */
  thead {
    display: table-header-group;
  }
  thead th {
    border-top: solid 1pt black;
  }

  tr {
    page-break-inside: avoid;
  }

  th,
  td {
    border-bottom: solid 1pt black;
    padding: 4pt 8pt;
  }
}
