/*

Global breakboints

*/
/*

CSS reset

*/
* {
  box-sizing: border-box; }

button, input[type="submit"] {
  border: none;
  background: none;
  outline: 0;
  transition: all 0.3s ease;
  font-weight: 600;
  padding: 0;
  line-height: 1em;
  display: flex;
  align-items: center;
  font-family: "source-sans-pro", sans-serif !important;
  font-size: 1em !important;
  -webkit-appearance: none;
  -moz-appearance: none;
  text-align: center; }
  button:hover, input[type="submit"]:hover {
    cursor: pointer; }

/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0; }

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */ }

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent; }

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */ }

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder; }

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%; }

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

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
  width: 100%;
  display: block; }

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */ }

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible; }

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none; }

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button; }

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0; }

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText; }

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0;
  border: 0;
  margin: 0; }

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */ }

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline; }

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto; }

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto; }

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */ }

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */ }

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block; }

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item; }

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none; }

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none; }

/*

CONTENTS

1. Flexible fonts
2. Global styles for elements

*/
body {
  font-family: "source-sans-pro",sans-serif;
  font-size: 1em;
  font-size: 1.5vw;
  font-style: normal;
  font-weight: 400;
  line-height: 1.6;
  color: #3e3e3e; }
  @media (max-width: 60em) {
    body {
      font-size: 0.9em; } }
  @media (min-width: 70em) {
    body {
      font-size: 1.05em; } }

a, a:visited {
  color: #19a6bf;
  transition: 0.3s; }
  a:hover, a:focus, a:active, a:visited:hover, a:visited:focus, a:visited:active {
    color: #3e3e3e; }

a.font-color, a.font-color:visited {
  color: #3e3e3e;
  transition: 0.3s; }
  a.font-color:hover, a.font-color:focus, a.font-color:active, a.font-color:visited:hover, a.font-color:visited:focus, a.font-color:visited:active {
    color: #19a6bf; }

a.bg-color, a.bg-color:visited {
  color: #ffffff; }
  a.bg-color:hover, a.bg-color:focus, a.bg-color:active, a.bg-color:visited:hover, a.bg-color:visited:focus, a.bg-color:visited:active {
    color: #e6e6e6; }

a.no-underline, a.no-underline {
  text-decoration: none; }

h1, h2, h3, h4, h5, h6, p {
  margin: 0 0 1.5rem 0; }

h1 {
  font-size: 2em;
  line-height: 1.1em;
  font-weight: 400; }

@media (min-width: 700px) {
  h1 {
    font-size: 2.25em; } }

h2 {
  font-size: 1.5em;
  line-height: 1.1; }

h3 {
  font-size: 1.2em;
  line-height: 1.3; }

h4 {
  font-size: 1.2em;
  line-height: 1.3; }

h5 {
  font-size: 1.1em;
  line-height: 1.3; }

h6 {
  font-size: 1em;
  line-height: 1.3; }

.smaller-text,
p.smaller-text,
h3.smaller-text,
h4.smaller-text,
h5.smaller-text,
h6.smaller-text {
  font-size: 0.9em; }

ul {
  margin: 0 0 0 1.25em;
  padding: 0; }

/* Uncomment and set these variables to customize the grid. */
.container-fluid {
  margin-right: auto;
  margin-left: auto;
  padding-right: 2rem;
  padding-left: 2rem; }

.row {
  box-sizing: border-box;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex: 0 1 auto;
  -webkit-box-flex: 0;
  flex: 0 1 auto;
  -ms-flex-direction: row;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  flex-direction: row;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: -1rem;
  margin-left: -1rem;
  align-items: stretch; }

.row.reverse {
  -ms-flex-direction: row-reverse;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  flex-direction: row-reverse; }

.col.reverse {
  -ms-flex-direction: column-reverse;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  flex-direction: column-reverse; }

.col-xs,
.col-xs-1,
.col-xs-2,
.col-xs-3,
.col-xs-4,
.col-xs-5,
.col-xs-6,
.col-xs-7,
.col-xs-8,
.col-xs-9,
.col-xs-10,
.col-xs-11,
.col-xs-12 {
  box-sizing: border-box;
  -ms-flex: 0 0 auto;
  -webkit-box-flex: 0;
  flex: 0 0 auto;
  padding-right: 1rem;
  padding-left: 1rem; }

.col-xs {
  -webkit-flex-grow: 1;
  -ms-flex-positive: 1;
  -webkit-box-flex: 1;
  flex-grow: 1;
  -ms-flex-preferred-size: 0;
  flex-basis: 0;
  max-width: 100%; }

.col-xs-1 {
  -ms-flex-preferred-size: 8.333%;
  flex-basis: 8.333%;
  max-width: 8.333%; }

.col-xs-2 {
  -ms-flex-preferred-size: 16.667%;
  flex-basis: 16.667%;
  max-width: 16.667%; }

.col-xs-3 {
  -ms-flex-preferred-size: 25%;
  flex-basis: 25%;
  max-width: 25%; }

.col-xs-4 {
  -ms-flex-preferred-size: 33.333%;
  flex-basis: 33.333%;
  max-width: 33.333%; }

.col-xs-5 {
  -ms-flex-preferred-size: 41.667%;
  flex-basis: 41.667%;
  max-width: 41.667%; }

.col-xs-6 {
  -ms-flex-preferred-size: 50%;
  flex-basis: 50%;
  max-width: 50%; }

.col-xs-7 {
  -ms-flex-preferred-size: 58.333%;
  flex-basis: 58.333%;
  max-width: 58.333%; }

.col-xs-8 {
  -ms-flex-preferred-size: 66.667%;
  flex-basis: 66.667%;
  max-width: 66.667%; }

.col-xs-9 {
  -ms-flex-preferred-size: 75%;
  flex-basis: 75%;
  max-width: 75%; }

.col-xs-10 {
  -ms-flex-preferred-size: 83.333%;
  flex-basis: 83.333%;
  max-width: 83.333%; }

.col-xs-11 {
  -ms-flex-preferred-size: 91.667%;
  flex-basis: 91.667%;
  max-width: 91.667%; }

.col-xs-12 {
  -ms-flex-preferred-size: 100%;
  flex-basis: 100%;
  max-width: 100%; }

.col-xs-offset-1 {
  margin-left: 8.333%; }

.col-xs-offset-2 {
  margin-left: 16.667%; }

.col-xs-offset-3 {
  margin-left: 25%; }

.col-xs-offset-4 {
  margin-left: 33.333%; }

.col-xs-offset-5 {
  margin-left: 41.667%; }

.col-xs-offset-6 {
  margin-left: 50%; }

.col-xs-offset-7 {
  margin-left: 58.333%; }

.col-xs-offset-8 {
  margin-left: 66.667%; }

.col-xs-offset-9 {
  margin-left: 75%; }

.col-xs-offset-10 {
  margin-left: 83.333%; }

.col-xs-offset-11 {
  margin-left: 91.667%; }

.start-xs {
  -ms-flex-pack: start;
  -webkit-box-pack: start;
  justify-content: flex-start;
  text-align: start; }

.center-xs {
  -ms-flex-pack: center;
  -webkit-box-pack: center;
  justify-content: center;
  text-align: center; }

.end-xs {
  -ms-flex-pack: end;
  -webkit-box-pack: end;
  justify-content: flex-end;
  text-align: end; }

.top-xs {
  -ms-flex-align: start;
  -webkit-box-align: start;
  align-items: flex-start; }

.middle-xs {
  -ms-flex-align: center;
  -webkit-box-align: center;
  align-items: center; }

.bottom-xs {
  -ms-flex-align: end;
  -webkit-box-align: end;
  align-items: flex-end; }

.around-xs {
  -ms-flex-pack: distribute;
  justify-content: space-around; }

.between-xs {
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
  justify-content: space-between; }

.first-xs {
  -ms-flex-order: -1;
  -webkit-box-ordinal-group: 0;
  order: -1; }

.last-xs {
  -ms-flex-order: 1;
  -webkit-box-ordinal-group: 2;
  order: 1; }

@media only screen and (min-width: 550px) {
  .container {
    width: 46rem; }
  .col-sm,
  .col-sm-1,
  .col-sm-2,
  .col-sm-3,
  .col-sm-4,
  .col-sm-5,
  .col-sm-6,
  .col-sm-7,
  .col-sm-8,
  .col-sm-9,
  .col-sm-10,
  .col-sm-11,
  .col-sm-12 {
    box-sizing: border-box;
    -ms-flex: 0 0 auto;
    -webkit-box-flex: 0;
    flex: 0 0 auto;
    padding-right: 1rem;
    padding-left: 1rem; }
  .col-sm {
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    -webkit-box-flex: 1;
    flex-grow: 1;
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    max-width: 100%; }
  .col-sm-1 {
    -ms-flex-preferred-size: 8.333%;
    flex-basis: 8.333%;
    max-width: 8.333%; }
  .col-sm-2 {
    -ms-flex-preferred-size: 16.667%;
    flex-basis: 16.667%;
    max-width: 16.667%; }
  .col-sm-3 {
    -ms-flex-preferred-size: 25%;
    flex-basis: 25%;
    max-width: 25%; }
  .col-sm-4 {
    -ms-flex-preferred-size: 33.333%;
    flex-basis: 33.333%;
    max-width: 33.333%; }
  .col-sm-5 {
    -ms-flex-preferred-size: 41.667%;
    flex-basis: 41.667%;
    max-width: 41.667%; }
  .col-sm-6 {
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
    max-width: 50%; }
  .col-sm-7 {
    -ms-flex-preferred-size: 58.333%;
    flex-basis: 58.333%;
    max-width: 58.333%; }
  .col-sm-8 {
    -ms-flex-preferred-size: 66.667%;
    flex-basis: 66.667%;
    max-width: 66.667%; }
  .col-sm-9 {
    -ms-flex-preferred-size: 75%;
    flex-basis: 75%;
    max-width: 75%; }
  .col-sm-10 {
    -ms-flex-preferred-size: 83.333%;
    flex-basis: 83.333%;
    max-width: 83.333%; }
  .col-sm-11 {
    -ms-flex-preferred-size: 91.667%;
    flex-basis: 91.667%;
    max-width: 91.667%; }
  .col-sm-12 {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    max-width: 100%; }
  .col-sm-offset-1 {
    margin-left: 8.333%; }
  .col-sm-offset-2 {
    margin-left: 16.667%; }
  .col-sm-offset-3 {
    margin-left: 25%; }
  .col-sm-offset-4 {
    margin-left: 33.333%; }
  .col-sm-offset-5 {
    margin-left: 41.667%; }
  .col-sm-offset-6 {
    margin-left: 50%; }
  .col-sm-offset-7 {
    margin-left: 58.333%; }
  .col-sm-offset-8 {
    margin-left: 66.667%; }
  .col-sm-offset-9 {
    margin-left: 75%; }
  .col-sm-offset-10 {
    margin-left: 83.333%; }
  .col-sm-offset-11 {
    margin-left: 91.667%; }
  .start-sm {
    -ms-flex-pack: start;
    -webkit-box-pack: start;
    justify-content: flex-start;
    text-align: start; }
  .center-sm {
    -ms-flex-pack: center;
    -webkit-box-pack: center;
    justify-content: center;
    text-align: center; }
  .end-sm {
    -ms-flex-pack: end;
    -webkit-box-pack: end;
    justify-content: flex-end;
    text-align: end; }
  .top-sm {
    -ms-flex-align: start;
    -webkit-box-align: start;
    align-items: flex-start; }
  .middle-sm {
    -ms-flex-align: center;
    -webkit-box-align: center;
    align-items: center; }
  .bottom-sm {
    -ms-flex-align: end;
    -webkit-box-align: end;
    align-items: flex-end; }
  .around-sm {
    -ms-flex-pack: distribute;
    justify-content: space-around; }
  .between-sm {
    -ms-flex-pack: justify;
    -webkit-box-pack: justify;
    justify-content: space-between; }
  .first-sm {
    -ms-flex-order: -1;
    -webkit-box-ordinal-group: 0;
    order: -1; }
  .last-sm {
    -ms-flex-order: 1;
    -webkit-box-ordinal-group: 2;
    order: 1; } }

@media only screen and (min-width: 62em) {
  .container {
    width: 61rem; }
  .col-md,
  .col-md-1,
  .col-md-2,
  .col-md-3,
  .col-md-4,
  .col-md-5,
  .col-md-6,
  .col-md-7,
  .col-md-8,
  .col-md-9,
  .col-md-10,
  .col-md-11,
  .col-md-12 {
    box-sizing: border-box;
    -ms-flex: 0 0 auto;
    -webkit-box-flex: 0;
    flex: 0 0 auto;
    padding-right: 1rem;
    padding-left: 1rem; }
  .col-md {
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    -webkit-box-flex: 1;
    flex-grow: 1;
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    max-width: 100%; }
  .col-md-1 {
    -ms-flex-preferred-size: 8.333%;
    flex-basis: 8.333%;
    max-width: 8.333%; }
  .col-md-2 {
    -ms-flex-preferred-size: 16.667%;
    flex-basis: 16.667%;
    max-width: 16.667%; }
  .col-md-3 {
    -ms-flex-preferred-size: 25%;
    flex-basis: 25%;
    max-width: 25%; }
  .col-md-4 {
    -ms-flex-preferred-size: 33.333%;
    flex-basis: 33.333%;
    max-width: 33.333%; }
  .col-md-5 {
    -ms-flex-preferred-size: 41.667%;
    flex-basis: 41.667%;
    max-width: 41.667%; }
  .col-md-6 {
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
    max-width: 50%; }
  .col-md-7 {
    -ms-flex-preferred-size: 58.333%;
    flex-basis: 58.333%;
    max-width: 58.333%; }
  .col-md-8 {
    -ms-flex-preferred-size: 66.667%;
    flex-basis: 66.667%;
    max-width: 66.667%; }
  .col-md-9 {
    -ms-flex-preferred-size: 75%;
    flex-basis: 75%;
    max-width: 75%; }
  .col-md-10 {
    -ms-flex-preferred-size: 83.333%;
    flex-basis: 83.333%;
    max-width: 83.333%; }
  .col-md-11 {
    -ms-flex-preferred-size: 91.667%;
    flex-basis: 91.667%;
    max-width: 91.667%; }
  .col-md-12 {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    max-width: 100%; }
  .col-md-offset-1 {
    margin-left: 8.333%; }
  .col-md-offset-2 {
    margin-left: 16.667%; }
  .col-md-offset-3 {
    margin-left: 25%; }
  .col-md-offset-4 {
    margin-left: 33.333%; }
  .col-md-offset-5 {
    margin-left: 41.667%; }
  .col-md-offset-6 {
    margin-left: 50%; }
  .col-md-offset-7 {
    margin-left: 58.333%; }
  .col-md-offset-8 {
    margin-left: 66.667%; }
  .col-md-offset-9 {
    margin-left: 75%; }
  .col-md-offset-10 {
    margin-left: 83.333%; }
  .col-md-offset-11 {
    margin-left: 91.667%; }
  .start-md {
    -ms-flex-pack: start;
    -webkit-box-pack: start;
    justify-content: flex-start;
    text-align: start; }
  .center-md {
    -ms-flex-pack: center;
    -webkit-box-pack: center;
    justify-content: center;
    text-align: center; }
  .end-md {
    -ms-flex-pack: end;
    -webkit-box-pack: end;
    justify-content: flex-end;
    text-align: end; }
  .top-md {
    -ms-flex-align: start;
    -webkit-box-align: start;
    align-items: flex-start; }
  .middle-md {
    -ms-flex-align: center;
    -webkit-box-align: center;
    align-items: center; }
  .bottom-md {
    -ms-flex-align: end;
    -webkit-box-align: end;
    align-items: flex-end; }
  .around-md {
    -ms-flex-pack: distribute;
    justify-content: space-around; }
  .between-md {
    -ms-flex-pack: justify;
    -webkit-box-pack: justify;
    justify-content: space-between; }
  .first-md {
    -ms-flex-order: -1;
    -webkit-box-ordinal-group: 0;
    order: -1; }
  .last-md {
    -ms-flex-order: 1;
    -webkit-box-ordinal-group: 2;
    order: 1; } }

@media only screen and (min-width: 75em) {
  .container {
    width: 71rem; }
  .col-lg,
  .col-lg-1,
  .col-lg-2,
  .col-lg-3,
  .col-lg-4,
  .col-lg-5,
  .col-lg-6,
  .col-lg-7,
  .col-lg-8,
  .col-lg-9,
  .col-lg-10,
  .col-lg-11,
  .col-lg-12 {
    box-sizing: border-box;
    -ms-flex: 0 0 auto;
    -webkit-box-flex: 0;
    flex: 0 0 auto;
    padding-right: 1rem;
    padding-left: 1rem; }
  .col-lg {
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    -webkit-box-flex: 1;
    flex-grow: 1;
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    max-width: 100%; }
  .col-lg-1 {
    -ms-flex-preferred-size: 8.333%;
    flex-basis: 8.333%;
    max-width: 8.333%; }
  .col-lg-2 {
    -ms-flex-preferred-size: 16.667%;
    flex-basis: 16.667%;
    max-width: 16.667%; }
  .col-lg-3 {
    -ms-flex-preferred-size: 25%;
    flex-basis: 25%;
    max-width: 25%; }
  .col-lg-4 {
    -ms-flex-preferred-size: 33.333%;
    flex-basis: 33.333%;
    max-width: 33.333%; }
  .col-lg-5 {
    -ms-flex-preferred-size: 41.667%;
    flex-basis: 41.667%;
    max-width: 41.667%; }
  .col-lg-6 {
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
    max-width: 50%; }
  .col-lg-7 {
    -ms-flex-preferred-size: 58.333%;
    flex-basis: 58.333%;
    max-width: 58.333%; }
  .col-lg-8 {
    -ms-flex-preferred-size: 66.667%;
    flex-basis: 66.667%;
    max-width: 66.667%; }
  .col-lg-9 {
    -ms-flex-preferred-size: 75%;
    flex-basis: 75%;
    max-width: 75%; }
  .col-lg-10 {
    -ms-flex-preferred-size: 83.333%;
    flex-basis: 83.333%;
    max-width: 83.333%; }
  .col-lg-11 {
    -ms-flex-preferred-size: 91.667%;
    flex-basis: 91.667%;
    max-width: 91.667%; }
  .col-lg-12 {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    max-width: 100%; }
  .col-lg-offset-1 {
    margin-left: 8.333%; }
  .col-lg-offset-2 {
    margin-left: 16.667%; }
  .col-lg-offset-3 {
    margin-left: 25%; }
  .col-lg-offset-4 {
    margin-left: 33.333%; }
  .col-lg-offset-5 {
    margin-left: 41.667%; }
  .col-lg-offset-6 {
    margin-left: 50%; }
  .col-lg-offset-7 {
    margin-left: 58.333%; }
  .col-lg-offset-8 {
    margin-left: 66.667%; }
  .col-lg-offset-9 {
    margin-left: 75%; }
  .col-lg-offset-10 {
    margin-left: 83.333%; }
  .col-lg-offset-11 {
    margin-left: 91.667%; }
  .start-lg {
    -ms-flex-pack: start;
    -webkit-box-pack: start;
    justify-content: flex-start;
    text-align: start; }
  .center-lg {
    -ms-flex-pack: center;
    -webkit-box-pack: center;
    justify-content: center;
    text-align: center; }
  .end-lg {
    -ms-flex-pack: end;
    -webkit-box-pack: end;
    justify-content: flex-end;
    text-align: end; }
  .top-lg {
    -ms-flex-align: start;
    -webkit-box-align: start;
    align-items: flex-start; }
  .middle-lg {
    -ms-flex-align: center;
    -webkit-box-align: center;
    align-items: center; }
  .bottom-lg {
    -ms-flex-align: end;
    -webkit-box-align: end;
    align-items: flex-end; }
  .around-lg {
    -ms-flex-pack: distribute;
    justify-content: space-around; }
  .between-lg {
    -ms-flex-pack: justify;
    -webkit-box-pack: justify;
    justify-content: space-between; }
  .first-lg {
    -ms-flex-order: -1;
    -webkit-box-ordinal-group: 0;
    order: -1; }
  .last-lg {
    -ms-flex-order: 1;
    -webkit-box-ordinal-group: 2;
    order: 1; } }

/*

A collection of commonly used classes

*/
.element-invisible {
  position: absolute !important;
  margin-left: -10000px !important;
  overflow: hidden;
  height: 0;
  width: 0; }

.hide {
  display: none !important; }

.content-max-width {
  width: 100%;
  max-width: 1279px;
  margin-left: auto;
  margin-right: auto; }

.accent-colour {
  color: #19a6bf; }

/*

Small reused elements

CONTENTS

1. Arrows

*/
.arrow {
  width: 20px;
  height: 20px;
  position: relative;
  display: inline-block; }

.arrow__line {
  position: absolute;
  width: 8px;
  height: 2px;
  top: 50%;
  left: 50%;
  background-color: #3e3e3e;
  transition: 0.3s; }

.arrow--down .arrow__line:first-of-type {
  transform: rotate(45deg);
  margin-left: -6px; }

.arrow--down .arrow__line:last-of-type {
  transform: rotate(-45deg);
  margin-left: -1px; }

.active .arrow--down .arrow__line:first-of-type {
  transform: rotate(-45deg); }

.active .arrow--down .arrow__line:last-of-type {
  transform: rotate(45deg); }

.arrow--right .arrow__line:first-of-type {
  transform: rotate(45deg);
  margin-left: -4px;
  margin-top: -3px; }

.arrow--right .arrow__line:last-of-type {
  transform: rotate(-45deg);
  margin-left: -4px;
  margin-top: 1px; }

/*

Common classes that effect the layout of the page like padding and margins

*/
.wrapper {
  min-height: calc(100vh + 5em);
  width: 100%;
  overflow: hidden; }

.wrapper--fixedfilters-offset {
  margin-top: 4.5em; }

.pad {
  padding: 1.5rem; }
  @media (min-width: 700px) {
    .pad {
      padding: 2rem; } }

.pad.pad--leftright {
  padding-top: 0;
  padding-bottom: 0; }

.margin-bottom {
  margin-bottom: 1.5rem; }
  @media (min-width: 700px) {
    .margin-bottom {
      margin-bottom: 2rem; } }

.no-margin-bottom,
p.no-margin-bottom,
h1.no-margin-bottom,
h2.no-margin-bottom,
h3.no-margin-bottom,
h4.no-margin-bottom,
h5.no-margin-bottom,
h6.no-margin-bottom {
  margin-bottom: 0; }

/*

CONTENTS

1. Action buttons
2. Close buttons
3. Circle buttons

*/
button {
  color: #3e3e3e; }

.btn,
a.btn,
button.btn,
input[type="submit"].btn {
  padding: 0.7em 1.2em;
  border-radius: 0.3em;
  font-weight: 600;
  text-align: center;
  position: relative;
  overflow: hidden;
  display: inline-block;
  text-decoration: none;
  line-height: 1.2; }

.btn.btn--ghost,
input[type="submit"].btn.btn--ghost,
a.btn.btn--ghost {
  background: #ffffff;
  border: 1px solid #e6e6e6;
  color: #3e3e3e; }
  .btn.btn--ghost:hover, .btn.btn--ghost:focus, .btn.btn--ghost:active,
  input[type="submit"].btn.btn--ghost:hover,
  input[type="submit"].btn.btn--ghost:focus,
  input[type="submit"].btn.btn--ghost:active,
  a.btn.btn--ghost:hover,
  a.btn.btn--ghost:focus,
  a.btn.btn--ghost:active {
    border-color: #999999; }

.btn.btn--ghostwhite,
input[type="submit"].btn.btn--ghostwhite,
a.btn.btn--ghostwhite {
  border: 1px solid #ffffff;
  color: #ffffff; }
  .btn.btn--ghostwhite:hover, .btn.btn--ghostwhite:focus, .btn.btn--ghostwhite:active,
  input[type="submit"].btn.btn--ghostwhite:hover,
  input[type="submit"].btn.btn--ghostwhite:focus,
  input[type="submit"].btn.btn--ghostwhite:active,
  a.btn.btn--ghostwhite:hover,
  a.btn.btn--ghostwhite:focus,
  a.btn.btn--ghostwhite:active {
    background: rgba(255, 255, 255, 0.1); }

.btn.btn--thinner {
  padding: 0.4em 0.8em; }

.btn__text {
  position: relative;
  z-index: 2; }

.btn--coloured,
button.btn--coloured,
a.btn--coloured {
  color: #ffffff;
  border: 1px solid transparent; }
  .btn--coloured:hover, .btn--coloured:focus, .btn--coloured:active,
  button.btn--coloured:hover,
  button.btn--coloured:focus,
  button.btn--coloured:active,
  a.btn--coloured:hover,
  a.btn--coloured:focus,
  a.btn--coloured:active {
    color: #ffffff; }

.btn--coloured:before,
a.btn--coloured:before,
a.btn--coloured:visited:before,
button.btn--coloured:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: linear-gradient(to right bottom, #19a6bf, #007187);
  z-index: 0; }

.btn--coloured:after,
a.btn--coloured:after,
a.btn--coloured:visited:after,
button.btn--coloured:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: linear-gradient(to right bottom, #007187, #007187);
  z-index: 1;
  transition: 0.3s;
  opacity: 0; }

a.btn--coloured:hover:after,
a.btn--coloured:focus:after,
a.btn--coloured:active:after,
button.btn--coloured:hover:after,
button.btn--coloured:focus:after,
button.btn--coloured:active:after {
  opacity: 1; }

a.btn--witharrow, button.btn--witharrow {
  position: relative;
  padding-right: 2.5em; }
  a.btn--witharrow .arrow, button.btn--witharrow .arrow {
    position: absolute;
    top: 50%;
    right: 0.75em;
    margin-top: -10px;
    transition: 0.3s; }
  a.btn--witharrow:hover .arrow, a.btn--witharrow:focus .arrow, a.btn--witharrow:active .arrow, button.btn--witharrow:hover .arrow, button.btn--witharrow:focus .arrow, button.btn--witharrow:active .arrow {
    right: 0.5em; }

.close-btn {
  width: 25px;
  height: 25px;
  background-color: #3e3e3e;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  position: absolute;
  top: -7px;
  right: -5px;
  z-index: 1; }
  .close-btn:hover, .close-btn:focus, .close-btn:active {
    background-color: #19a6bf; }

.close-btn:before {
  content: '';
  display: block;
  width: 3px;
  height: 15px;
  background-color: #ffffff;
  transform: rotate(45deg);
  margin-right: -1.5px; }

.close-btn:after {
  content: '';
  display: block;
  width: 3px;
  height: 15px;
  background-color: #ffffff;
  transform: rotate(-45deg);
  margin-left: -1.5px; }

.circle-button {
  background: #ffffff;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  padding: 0;
  display: flex;
  justify-content: center;
  align-items: center; }

.circle-button__icon {
  width: 20px;
  height: 20px;
  stroke: #3e3e3e;
  fill: transparent;
  color: #e6e6e6;
  stroke-width: 9; }

.circle-button--share .circle-button__icon {
  margin-left: -2px; }

/*

CONTENTS

1. Type-in inputs
2. Radio and checkboxes

*/
label {
  font-weight: 400; }

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="password"] {
  border-radius: 0.3em;
  border: 1px solid #e6e6e6;
  border-radius: 0.3em;
  display: block;
  padding: 0.8em;
  outline: 0;
  transition: 0.3s;
  width: 100%; }
  input[type="text"]:hover, input[type="text"]:active,
  input[type="email"]:hover,
  input[type="email"]:active,
  input[type="tel"]:hover,
  input[type="tel"]:active,
  input[type="password"]:hover,
  input[type="password"]:active {
    border-color: #999999; }
  input[type="text"]:focus,
  input[type="email"]:focus,
  input[type="tel"]:focus,
  input[type="password"]:focus {
    border-color: #19a6bf;
    box-shadow: 0 0 0 1px #19a6bf; }

.label-radio-or-checkbox {
  position: relative;
  display: flex;
  align-items: center;
  padding: 0.8em 0.4em 0.8em 2.2em;
  margin-bottom: 0;
  border-bottom: 1px solid #e6e6e6;
  line-height: 1.2;
  font-weight: 600; }
  .label-radio-or-checkbox:hover {
    background-color: #f7f7f7; }

input[type=radio] {
  position: absolute;
  top: 50%;
  left: 0;
  margin: 0;
  padding: 0;
  -moz-appearance: none;
  -webkit-appearance: none;
  outline: none;
  background: #fff;
  border: 2px solid;
  display: inline-block;
  height: 20px;
  width: 20px;
  border-radius: 50%;
  cursor: pointer;
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  transition: all .2s linear; }

input[type=radio]:checked {
  border-color: #19a6bf; }

input[type=radio]:after {
  content: '';
  display: block;
  position: absolute;
  width: 12px;
  height: 12px;
  top: 0;
  left: 0;
  margin: 2px;
  opacity: 0;
  border-radius: 50%;
  -ms-transform: scale(0.6);
  transform: scale(0.6);
  transition: opacity .2s linear, transform .2s ease;
  background: #19a6bf; }

input[type=radio]:checked:after {
  opacity: 1;
  transform: scale(0.8); }

input[type=checkbox] {
  position: absolute;
  top: 50%;
  left: 0.75em;
  margin: 0;
  padding: 0;
  -moz-appearance: none;
  -webkit-appearance: none;
  outline: none;
  background: #fff;
  border: 1px solid #999999;
  border-radius: 3px;
  display: inline-block;
  height: 15px;
  width: 15px;
  cursor: pointer;
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  transition: all .2s linear; }

input[type=checkbox]:checked {
  border-color: #19a6bf;
  background-color: #19a6bf; }

input[type=checkbox]:after {
  content: '';
  display: block;
  position: absolute;
  top: 7px;
  left: 1px;
  width: 4px;
  height: 2px;
  background: #ffffff;
  transition: opacity .2s linear, transform .2s ease;
  opacity: 0;
  transform: rotate(0); }

input[type=checkbox]:checked:after {
  opacity: 1;
  transform: scale(0.8);
  transform: rotate(45deg);
  top: 8px; }

input[type=checkbox]:before {
  content: '';
  display: block;
  position: absolute;
  top: 6px;
  left: 2px;
  width: 11px;
  height: 2px;
  background: #ffffff;
  transition: opacity .2s linear, transform .2s ease;
  opacity: 0; }

input[type=checkbox]:checked:before {
  opacity: 1;
  transform: scale(0.8);
  transform: rotate(-45deg); }

/*

CONTENTS

1. Standard filter box styles
2. Homepage banner specific filter box styles
3. Filters module
3a. Layout and show/hide buttons based on screen size
3b. Community search box and generic page filter styles
3c. Other filter boxes specivic
3d. Filters fixed to top of page

*/
.overlay-bg {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: rgba(255, 255, 255, 0.8);
  z-index: 1001;
  display: none; }

.filter_box {
  border-radius: 0.5em;
  border: 1px solid #999999;
  position: relative;
  overflow: hidden;
  z-index: 1002; }
  .filter_box .label-radio-or-checkbox {
    padding-top: 0.25em;
    padding-bottom: 0.25em;
    min-height: 3.5em; }
  .filter_box .label-radio-or-checkbox:last-of-type {
    border-bottom: 0; }

.filter_box__options {
  max-height: 10em;
  overflow-x: auto;
  position: relative; }

.filter_box__options__label:first-of-type {
  border-top-left-radius: 0.3em; }

.filter_box__actions {
  border-top: 1px solid #e6e6e6;
  padding: 0.7em 0.75em;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2); }

.filter_box__actions__buttons {
  display: flex;
  flex-wrap: wrap; }

.filter_box__actions__btn {
  display: inline-flex;
  padding: 0.5em; }
  .filter_box__actions__btn:hover, .filter_box__actions__btn:focus, .filter_box__actions__btn:active {
    color: #19a6bf; }
    .filter_box__actions__btn:hover .filter_box__actions__btn__icon, .filter_box__actions__btn:focus .filter_box__actions__btn__icon, .filter_box__actions__btn:active .filter_box__actions__btn__icon {
      stroke: #19a6bf; }

.filter_box__actions__btn--withicon {
  padding-left: 0; }

.filter_box__actions__btn__icon {
  width: 1.25em;
  height: 1.25em;
  stroke: #999999;
  stroke-width: 5%;
  fill: #e6e6e6;
  color: #ffffff;
  margin-right: 0.1em;
  transition: 0.3s; }

.filter_box__actions__btn--right {
  margin-left: auto; }

.filter_box__actions__nearme {
  position: relative;
  padding: 0 0 0.5em 0; }

.filter_box__actions__nearme__label {
  display: flex;
  flex-wrap: wrap; }

.filter_box__actions__nearme__label__text {
  flex-basis: 75%;
  width: 75%;
  line-height: 1.2;
  margin-bottom: 0.3em; }

button.filter_box__actions__nearme__cancel {
  position: absolute;
  top: 0;
  right: 0;
  color: #3e3e3e;
  display: inline-block;
  width: 3em; }
  button.filter_box__actions__nearme__cancel:hover, button.filter_box__actions__nearme__cancel:focus, button.filter_box__actions__nearme__cancel:active {
    color: #19a6bf; }

input[type="text"].filter_box__actions__nearme__label__input {
  margin-right: 2.5%;
  flex-basis: 65%;
  width: 65%; }

button.filter_box__actions__nearme__label__go {
  flex-basis: 32.5%;
  width: 32.5%;
  justify-content: center; }

.filter_box__actions__btn--select {
  margin-left: auto; }

@media (min-width: 400px) {
  .filter_box__actions__btn--select {
    margin-left: 0; }
  .filter_box__actions__nearme__label__text {
    flex-basis: 100%;
    width: 100%; }
  input[type="text"].filter_box__actions__nearme__label__input {
    margin-right: 2.5%;
    flex-basis: 77.5%;
    width: 77.5%; }
  button.filter_box__actions__nearme__label__go {
    flex-basis: 20%;
    width: 20%;
    justify-content: center; } }

@media (min-width: 700px) {
  .filter_box--sidebysidefields .filter_box__options {
    display: flex;
    flex-wrap: wrap; }
  .filter_box--sidebysidefields .filter_box__options__label {
    flex-basis: 50%;
    width: 50%; }
  .filter_box--sidebysidefields .filter_box__options__label:nth-child(odd) {
    border-right: 1px solid #e6e6e6; } }

.filter_box--banner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  background-color: #ffffff;
  border-radius: 0.3em;
  text-shadow: none;
  color: #3e3e3e;
  display: none;
  border: 0;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
  overflow: visible; }

.filters {
  display: flex;
  flex-wrap: wrap;
  transition: 0.3s height ease;
  transition: 0.3s box-shadow ease; }

.filters__community {
  position: relative;
  flex-grow: 1; }

.filters__otherfilters {
  display: flex;
  align-items: flex-end; }

.filters__otherfilters__itemcontainer {
  position: relative; }

.filters__otherfilters__itemcontainer {
  padding: 0 0 0 0.5em; }

.filters__otherfilters__itemcontainer--1 {
  display: none; }

.filters__otherfilters__itemcontainer--2 {
  display: none; }

.filters__otherfilters__itemcontainer--3 {
  display: none; }

.filters__otherfilters__itemcontainer__btn.active {
  position: relative;
  z-index: 1002;
  border-color: #999999; }

.filters__otherfilters__item__biggerscreen {
  display: none; }

.filters__otherfilters__itemcontainer--bestmatch {
  display: none; }

@media (min-width: 400px) {
  .filters__otherfilters__item__biggerscreen {
    display: block; }
  .filters__otherfilters__item__smallscreen {
    display: none; } }

@media (min-width: 550px) {
  .filters__otherfilters__itemcontainer--bestmatch {
    display: block; } }

@media (min-width: 700px) {
  .filters__otherfilters__itemcontainer--1 {
    display: block; }
  .filters__otherfilters__item {
    min-width: 8em;
    width: 100%; } }

@media (min-width: 900px) {
  .filters__otherfilters__itemcontainer--2 {
    display: block; }
  .filters__otherfilters__itemcontainer--bestmatch {
    display: block; } }

@media (min-width: 1100px) {
  .filters__otherfilters__itemcontainer--3 {
    display: block; } }

button.filters__community__findcommunity {
  width: 100%;
  max-width: 25em;
  display: flex;
  align-items: center;
  height: 2.75em; }
  button.filters__community__findcommunity:hover .filters__community__findcommunity__line, button.filters__community__findcommunity:focus .filters__community__findcommunity__line, button.filters__community__findcommunity:active .filters__community__findcommunity__line {
    background-color: #999999; }

.filters__community__findcommunity__text.biggerscreen {
  display: none; }

.btn--pagefilter.active {
  position: relative;
  z-index: 1002; }

.filters__community__findcommunity__line {
  width: 1px;
  height: 1.25em;
  background-color: #e6e6e6;
  display: block;
  margin-left: auto;
  margin-right: 1em;
  transition: 0.3s; }

.filter_box--pagefilter {
  position: absolute;
  width: 80vw;
  min-width: 18em;
  max-width: 30em;
  top: 3.25em;
  background-color: #ffffff;
  display: none; }

@media (min-width: 400px) {
  .filters__community__findcommunity__text.smallscreen {
    display: none; }
  .filters__community__findcommunity__text.biggerscreen {
    display: inline; } }

.filter_box--pagefilter.filter_box--pagefilter--otherfilter {
  width: 18em; }

.filters--fixed {
  position: fixed;
  top: 3em;
  left: 0;
  width: 100%;
  z-index: 1002;
  background-color: #ffffff;
  border-top: 2px solid #e6e6e6;
  padding: 0.7em;
  box-shadow: 0 4px 4px -4px rgba(0, 0, 0, 0.7); }
  .filters--fixed button.btn {
    padding-top: 0.4em;
    padding-bottom: 0.4em;
    min-width: 7.5em; }
  .filters--fixed button.filters__community__findcommunity {
    height: 2.2em; }
  .filters--fixed .filters__bg {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: rgba(255, 255, 255, 0.8);
    box-shadow: 0 4px 4px -4px rgba(255, 255, 255, 0.7);
    z-index: 1001;
    display: none; }

@media (min-width: 900px) {
  .filters--fixed {
    top: 3.25em; }
    .filters--fixed button.btn {
      min-width: 7.5em; } }

/*

CONTENTS
1. Stream header
2. Stream feed item
2.a Stream feed item no image
2.b Stream feed item with image
2.c Stream feed more info

*/
.stream__header__whatwhere {
  padding: 0 0 0.5em 0;
  border-bottom: 1px solid #e6e6e6;
  margin-bottom: 0.5em; }

.stream__header__whatwhere__heading {
  display: inline-block;
  margin-right: 0.25em; }

.stream__header__whatwhere__showing {
  display: inline-block; }

@media (min-width: 700px) {
  .stream__header {
    display: flex;
    align-items: baseline; }
  .stream__header__whatwhere {
    border: 0;
    margin: 0; }
  .stream__header__sortby {
    margin-left: auto; } }

.stream__feed__item {
  background-color: #f7f7f7;
  border-radius: 0.3em;
  overflow: hidden;
  position: relative;
  transition: 0.3s; }

.stream__feed__item.hover {
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.15); }

.stream__feed__item__js-onlick {
  text-decoration: none;
  color: #3e3e3e;
  display: block; }
  .stream__feed__item__js-onlick:hover, .stream__feed__item__js-onlick:focus, .stream__feed__item__js-onlick:active {
    cursor: pointer; }
    .stream__feed__item__js-onlick:hover .stream__feed__item__head, .stream__feed__item__js-onlick:focus .stream__feed__item__head, .stream__feed__item__js-onlick:active .stream__feed__item__head {
      background-color: #1692a8; }
    .stream__feed__item__js-onlick:hover .stream__feed__item__head--emergency, .stream__feed__item__js-onlick:focus .stream__feed__item__head--emergency, .stream__feed__item__js-onlick:active .stream__feed__item__head--emergency {
      background-color: #de1219; }

.stream__feed__item__head {
  background-color: #19a6bf;
  color: #ffffff;
  padding: 0 2em 0 1.25em;
  display: flex;
  align-items: center;
  height: 14rem;
  text-decoration: none; }

.stream__feed__item__head--emergency {
  background-color: #ed1c24; }

.stream__feed__item__head__icon-container__icon {
  width: 4.25rem;
  height: 4.25rem;
  stroke: #ffffff;
  stroke-width: 4;
  color: #19a6bf;
  fill: #1bb6d1;
  display: block;
  transition: 0.3s; }

.stream__feed__item__head__icon-container__icon--supportservice {
  width: 3.75rem;
  height: 3.75rem;
  margin-left: -0.25rem;
  margin-right: 0.75rem; }

.stream__feed__item__head__icon-container__icon--volunteers {
  width: 3.85rem;
  height: 3.85rem;
  margin-left: -0.25rem;
  margin-right: 0.75rem; }

.stream__feed__item__head__icon-container__icon--things {
  width: 3.85rem;
  height: 3.85rem;
  margin-left: -0.25rem;
  margin-right: 0.75rem; }

.stream__feed__item__head__icon-container__icon--poll {
  width: 3.85rem;
  height: 3.85rem;
  margin-left: -0.25rem;
  margin-right: 0.75rem;
  stroke-width: 5; }

.stream__feed__item__head__icon-container__icon--handshake {
  width: 3.85rem;
  height: 3.85rem;
  margin-left: -0.25rem;
  margin-right: 0.75rem; }

.stream__feed__item__head__icon-container__icon--emergency {
  width: 3.85rem;
  height: 3.85rem;
  margin-left: 0;
  margin-right: 0.75rem;
  color: #ed1c24;
  fill: #ef343b; }

h2.stream__feed__item__head__text {
  color: #ffffff;
  font-weight: 600;
  font-size: 2em;
  line-height: 1.05; }

.stream__feed__item__head__text__lighter {
  color: #6cd8ec; }

.stream__feed__item__head__image {
  display: none; }

.stream__feed__item__title-area {
  height: 10rem; }

h3.stream__feed__item__title-area__text {
  padding: 1rem 1rem 0 1rem;
  font-weight: 400;
  font-size: 1.1em;
  margin-bottom: 0.1em; }

a.stream__feed__item__title-area__text__link {
  text-decoration: none;
  color: #3e3e3e; }

.stream__feed__item__title-area__user {
  text-decoration: none;
  font-weight: 600;
  margin-left: 1rem; }

.stream__feed__where {
  border-top: 1px solid #e6e6e6;
  border-bottom: 1px solid #e6e6e6;
  padding: 0.5em 1em; }

.stream__feed__actions {
  padding: 0.6em 0.6em 0.6em 1em;
  display: flex;
  align-items: center; }

.stream__feed__actions__button {
  margin-right: 0.5em; }

.stream__feed__actions__quickview {
  margin-left: auto; }

button.stream__feed__actions__quickview.active {
  padding-left: 2.5em;
  padding-right: 1.2em; }
  button.stream__feed__actions__quickview.active .arrow {
    left: 0.75em;
    right: auto;
    transform: rotate(180deg); }

@media (min-width: 700px) {
  h2.stream__feed__item__head__text {
    font-size: 2.25em; } }

.stream__feed__item__head--hasimage {
  flex-wrap: wrap;
  padding: 0;
  height: auto;
  background: 0; }
  .stream__feed__item__head--hasimage .stream__feed__item__head__icon-container {
    background-color: #19a6bf;
    padding: 0.4em;
    width: 2.5rem;
    height: 2.5rem;
    margin-right: 0.75em;
    transition: 0.3s; }
  .stream__feed__item__head--hasimage .stream__feed__item__head__icon-container__icon {
    width: 1.7rem;
    height: 1.7rem;
    stroke-width: 5; }
  .stream__feed__item__head--hasimage .stream__feed__item__head__icon-container__icon--supportservice {
    margin-left: 0; }
  .stream__feed__item__head--hasimage .stream__feed__item__head__icon-container__icon--volunteers {
    margin-left: 0; }
  .stream__feed__item__head--hasimage .stream__feed__item__head__icon-container__icon--things {
    margin-left: 0; }
  .stream__feed__item__head--hasimage .stream__feed__item__head__icon-container__icon--poll {
    margin-top: 0.1em;
    margin-left: 0.1em;
    width: 1.5em;
    height: 1.5em;
    stroke-width: 6; }
  .stream__feed__item__head--hasimage .stream__feed__item__head__icon-container__icon--handshake {
    margin-left: 0; }
  .stream__feed__item__head--hasimage .stream__feed__item__head__icon-container__icon--emergency {
    margin-left: 0; }
  .stream__feed__item__head--hasimage h2.stream__feed__item__head__text {
    font-size: 1em;
    color: #3e3e3e;
    display: flex;
    align-items: center; }
  .stream__feed__item__head--hasimage .stream__feed__item__head__text span:first-of-type {
    margin-right: 0.2em; }
  .stream__feed__item__head--hasimage .stream__feed__item__head__text__lighter {
    display: inline-block;
    color: #3e3e3e; }
  .stream__feed__item__head--hasimage .stream__feed__item__head__image {
    display: block;
    width: 100%;
    flex-basis: 100%;
    height: 11.5rem;
    background: #e6e6e6;
    background-position: center;
    background-size: cover;
    transition: 0.3s; }

.stream__feed__item__js-onlick:hover .stream__feed__item__head--hasimage, .stream__feed__item__js-onlick:focus .stream__feed__item__head--hasimage, .stream__feed__item__js-onlick:active .stream__feed__item__head--hasimage {
  background: 0; }
  .stream__feed__item__js-onlick:hover .stream__feed__item__head--hasimage .stream__feed__item__head__icon-container, .stream__feed__item__js-onlick:focus .stream__feed__item__head--hasimage .stream__feed__item__head__icon-container, .stream__feed__item__js-onlick:active .stream__feed__item__head--hasimage .stream__feed__item__head__icon-container {
    background-color: #1692a8; }
  .stream__feed__item__js-onlick:hover .stream__feed__item__head--hasimage .stream__feed__item__head__image, .stream__feed__item__js-onlick:focus .stream__feed__item__head--hasimage .stream__feed__item__head__image, .stream__feed__item__js-onlick:active .stream__feed__item__head--hasimage .stream__feed__item__head__image {
    opacity: 0.9; }

.stream__feed__moreinfo {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  background-color: rgba(25, 166, 191, 0.97);
  color: #ffffff;
  height: 24rem;
  padding: 1.5rem;
  margin-left: 100%;
  transition: 0.3s;
  color: #ffffff;
  text-decoration: none;
  font-size: 0.9em;
  line-height: 1.4;
  overflow-y: auto; }
  .stream__feed__moreinfo a, .stream__feed__moreinfo a:visited {
    color: #ffffff; }
    .stream__feed__moreinfo a:hover, .stream__feed__moreinfo a:focus, .stream__feed__moreinfo a:active, .stream__feed__moreinfo a:visited:hover, .stream__feed__moreinfo a:visited:focus, .stream__feed__moreinfo a:visited:active {
      text-decoration: none; }
  .stream__feed__moreinfo p {
    margin-bottom: 1.25em; }

.stream__feed__moreinfo--emergency {
  background-color: rgba(237, 28, 36, 0.97); }

.stream__feed__moreinfo.active {
  margin-left: 0; }

ul.stream__feed__moreinfo__list {
  margin: 0 0 1.5em 0;
  list-style: none; }

.stream__feed__moreinfo__list__item {
  padding: 0.45em 0;
  display: flex;
  align-items: center;
  line-height: 1.3; }

.stream__feed__moreinfo__list__item:first-of-type {
  padding-top: 0; }

.stream__feed__moreinfo__list__item:last-of-type {
  padding-bottom: 0; }

.stream__feed__moreinfo__list__item__icon {
  color: transparent;
  fill: transparent;
  stroke: #ffffff;
  stroke-width: 5;
  width: 1.3em;
  height: 1.2em;
  margin-right: 0.5em;
  flex-shrink: 0; }

.stream__feed__moreinfo__list__item__icon--day {
  margin-top: -0.2em; }

.stream__feed__moreinfo__progress {
  margin-bottom: 1.25em; }

.stream__feed__moreinfo__progress__abovebar {
  display: flex;
  flex-wrap: wrap; }

.stream__feed__moreinfo__progress__abovebar__left {
  flex-basis: 50%;
  width: 50%; }

.stream__feed__moreinfo__progress__abovebar__right {
  flex-basis: 50%;
  width: 50%;
  text-align: right; }

.stream__feed__moreinfo__progress__bar {
  width: 100%;
  height: 1em;
  border-radius: 1em;
  background-color: rgba(255, 255, 255, 0.2);
  margin-top: 0.5em;
  overflow: hidden; }

.stream__feed__moreinfo__progress__bar__inner {
  height: 1em;
  background-color: #ffffff; }

@media (min-width: 700px) and (max-width: 990px) {
  .stream__feed__moreinfo {
    font-size: 1em; } }

/*

Top header with navigation

CONTENTS

1. Header in general
2. Header thinner
Used on homepage when filters scroll to it. Add to other pages if the filters are also fixed to top

*/
.header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 3em;
  background: rgba(255, 255, 255, 0.8);
  z-index: 1000;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  font-weight: 600;
  -webkit-animation: logo 0.3s;
  /* Safari 4+ */
  -moz-animation: logo 0.3s;
  /* Fx 5+ */
  -o-animation: logo 0.3s;
  /* Opera 12+ */
  animation: logo 0.3s;
  /* IE 10+, Fx 29+ */ }

.header_logo {
  padding: 0.5em 0.75em;
  background: #ffffff;
  border-bottom-right-radius: 0.25em;
  position: absolute;
  top: 0;
  left: 0;
  width: 8.5em;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.7);
  overflow: hidden;
  transition: 0.3s; }

img.header_logo__icon {
  transition: 0.3s;
  position: absolute;
  left: -15em;
  top: 0;
  height: 3em;
  width: 3em; }

img.header_logo__image {
  position: relative;
  transition: margin-top 0.3s;
  width: 7.5em; }

@-webkit-keyframes logo {
  0% {
    opacity: 0; }
  50% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@-moz-keyframes logo {
  0% {
    opacity: 0; }
  50% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@-o-keyframes logo {
  0% {
    opacity: 0; }
  50% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@keyframes logo {
  0% {
    opacity: 0; }
  50% {
    opacity: 0; }
  100% {
    opacity: 1; } }

.header__menu_button {
  margin-left: auto;
  height: 100%;
  padding: 0 1em;
  color: #3e3e3e; }

.header__new_activity {
  position: relative;
  height: 100%;
  padding: 0.5em 1em;
  color: #fff;
  background-image: linear-gradient(to right bottom, #19a6bf, #007187);
  z-index: 0; }

.header__new_activity__text {
  position: relative;
  z-index: 2; }

.header__new_activity:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: linear-gradient(to right bottom, #007187, #007187);
  z-index: 1;
  transition: 0.3s;
  opacity: 0; }

.header__new_activity:hover:after,
.header__new_activity:focus:after,
.header__new_activity:active:after {
  opacity: 1; }

.header__nav {
  transition: 0.3s; }

.header__nav__main__item__icon {
  width: 2.5em;
  height: 2.5em;
  display: block;
  margin: 0 auto;
  transition: 0.3s; }

.header__nav__main__item__icon--campaigns {
  width: 2em;
  height: 2em;
  margin-bottom: 0.5em; }
  .header__nav__main__item__icon--campaigns .header__nav__main__item__icon__inner {
    stroke-width: 3.5%; }

.header__nav__main__item__icon--activities {
  width: 2.25em;
  height: 2.25em;
  margin-bottom: 0.25em; }

.header__nav__main__item__icon__inner {
  stroke: #999999;
  stroke-width: 3%;
  fill: #e6e6e6;
  color: #ffffff;
  transition: 0.3s; }

a.header__nav__main__item, a.header__nav__main__item:visited,
a.header__nav__main__secondary__item, a.header__nav__main__secondary__item:visited {
  text-decoration: none;
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: center; }
  a.header__nav__main__item:hover .header__nav__main__item__icon, a.header__nav__main__item:focus .header__nav__main__item__icon, a.header__nav__main__item:active .header__nav__main__item__icon, a.header__nav__main__item:visited:hover .header__nav__main__item__icon, a.header__nav__main__item:visited:focus .header__nav__main__item__icon, a.header__nav__main__item:visited:active .header__nav__main__item__icon,
  a.header__nav__main__secondary__item:hover .header__nav__main__item__icon,
  a.header__nav__main__secondary__item:focus .header__nav__main__item__icon,
  a.header__nav__main__secondary__item:active .header__nav__main__item__icon, a.header__nav__main__secondary__item:visited:hover .header__nav__main__item__icon, a.header__nav__main__secondary__item:visited:focus .header__nav__main__item__icon, a.header__nav__main__secondary__item:visited:active .header__nav__main__item__icon {
    transform: scale(1.1); }
  a.header__nav__main__item:hover .header__nav__main__item__icon__inner, a.header__nav__main__item:focus .header__nav__main__item__icon__inner, a.header__nav__main__item:active .header__nav__main__item__icon__inner, a.header__nav__main__item:visited:hover .header__nav__main__item__icon__inner, a.header__nav__main__item:visited:focus .header__nav__main__item__icon__inner, a.header__nav__main__item:visited:active .header__nav__main__item__icon__inner,
  a.header__nav__main__secondary__item:hover .header__nav__main__item__icon__inner,
  a.header__nav__main__secondary__item:focus .header__nav__main__item__icon__inner,
  a.header__nav__main__secondary__item:active .header__nav__main__item__icon__inner, a.header__nav__main__secondary__item:visited:hover .header__nav__main__item__icon__inner, a.header__nav__main__secondary__item:visited:focus .header__nav__main__item__icon__inner, a.header__nav__main__secondary__item:visited:active .header__nav__main__item__icon__inner {
    stroke: #3e3e3e; }

.header.header--collapsed {
  background: #ffffff;
  transition: 0.3s; }
  .header.header--collapsed .header_logo {
    height: 3em;
    width: 3em;
    box-shadow: none;
    border-radius: 0;
    padding: 0.05em;
    border-right: 1px solid #e6e6e6;
    overflow: hidden; }
  .header.header--collapsed img.header_logo__image {
    margin-top: -6em; }
  .header.header--collapsed img.header_logo__icon {
    position: absolute;
    left: 0; }

.header.header--withshadow {
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.5); }

@media (max-width: 750px) {
  .header__nav {
    order: 4;
    background: #f7f7f7;
    padding: 1em;
    width: 100%;
    margin-top: -16em;
    z-index: 2;
    border-top: 1px solid #e6e6e6; }
  .header__nav.active {
    margin-top: 0; }
  .header__nav__main {
    display: flex;
    border-bottom: 1px solid #e6e6e6; }
  a.header__nav__main__item, a.header__nav__main__item:visited {
    display: inline-flex;
    width: 100%;
    padding: 0.25em;
    margin: 0;
    justify-content: center; }
  .header__nav__main__secondary {
    display: flex;
    justify-content: center;
    padding-top: 0.5em; }
  a.header__nav__main__secondary__item, a.header__nav__main__secondary__item:visited {
    font-weight: 400;
    padding: 0.25em 0.75em;
    margin: 0; } }

@media (min-width: 750px) {
  .header {
    height: 3.5em; }
  .header_logo {
    width: 12em; }
  img.header_logo__icon {
    height: 3.5em;
    width: 3.5em; }
  img.header_logo__image {
    width: 11em;
    height: auto; }
  .header__nav {
    padding: 0 1em 0 13em;
    display: flex;
    flex-grow: 1; }
  .header__nav__main__secondary {
    margin-left: auto; }
  a.header__nav__main__item, a.header__nav__main__item:visited,
  a.header__nav__main__secondary__item, a.header__nav__main__secondary__item:visited {
    padding: 0.5em;
    display: inline-flex; }
  .header__nav__main__item__icon {
    display: none; }
  .header__menu_button {
    display: none; }
  .header__new_activity {
    margin-left: auto; }
  .header.header--collapsed .header__nav {
    padding-left: 4.5em; }
  .header.header--collapsed .header_logo {
    width: 3.5em;
    height: 3.5em; } }

@media (min-width: 900px) {
  .header {
    height: 4.25em; }
  .header_logo {
    width: 13em;
    padding: 0.75em 1em;
    left: 1em;
    border-bottom-left-radius: 0.25em; }
  img.header_logo__icon {
    height: 4.25em;
    width: 4.25em; }
  .header__nav {
    padding: 0 1em 0 15em; }
  .header__new_activity {
    padding-left: 1.5em;
    padding-right: 1.5em; }
  .header.header--collapsed .header_logo {
    left: 0;
    padding: 0.25em;
    height: 4.25em;
    width: 4.25em; }
  .header.header--collapsed .header__nav {
    padding-left: 5.25em; } }

.header.header--thinner {
  height: 3em;
  background: #ffffff; }
  .header.header--thinner img.header_logo__icon {
    width: 3em;
    height: 3em; }
  .header.header--thinner .header_logo {
    width: 3em;
    height: 3em; }
  .header.header--thinner .header_logo__image {
    margin-top: -6em; }
  .header.header--thinner img.header_logo__icon {
    left: 0; }
  .header.header--thinner .header_logo {
    left: 0;
    box-shadow: none;
    border-radius: 0;
    border-right: 1px solid #e6e6e6; }

@media (min-width: 700px) {
  .header.header--thinner .header__nav {
    padding-left: 3.5em; } }

@media (min-width: 900px) {
  .header.header--thinner {
    height: 3.25em; }
    .header.header--thinner img.header_logo__icon {
      width: 3.25em;
      height: 3.25em; }
    .header.header--thinner .header_logo {
      width: 3.25em;
      height: 3.25em; }
    .header.header--thinner .header__nav {
      padding-left: 4em; } }

/*

Banner for homepage

*/
.banner {
  height: 60vh;
  background-color: #f7f7f7;
  background-size: cover;
  background-position: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  min-height: 35em;
  color: #fff;
  font-weight: 600;
  text-shadow: 0 0 5px rgba(0, 0, 0, 0.7);
  position: relative; }

.banner--has-rabbitholes {
  min-height: 37em; }

h1.banner__heading {
  color: #ffffff;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.7);
  text-align: center;
  font-weight: 700;
  font-size: 2.25em; }

.banner__search {
  width: 100%;
  max-width: 35em;
  display: flex;
  flex-wrap: wrap;
  align-items: center; }

.banner__search__text {
  flex-basis: 100%; }

.banner__search__box {
  flex-grow: 1;
  margin-right: 2.5%;
  position: relative;
  flex-basis: 70%;
  width: 70%; }

button.banner__search__box__button {
  background-color: rgba(255, 255, 255, 0.8);
  border-radius: 0.3em;
  flex-basis: 100%;
  width: 100%;
  display: flex;
  padding: 0.55em 1.2em;
  text-align: left; }
  button.banner__search__box__button:hover, button.banner__search__box__button:focus, button.banner__search__box__button:active {
    background-color: #ffffff; }

.banner__search__box__button__initialtext {
  font-size: 1.5em;
  font-weight: 400; }

.banner__search__box__button__line {
  width: 1px;
  height: 2.5em;
  background-color: #999999;
  display: block;
  margin-left: auto;
  margin-right: 1em; }

button.banner__search__go {
  font-size: 1.3em !important;
  font-weight: 700;
  flex-basis: 27.5%;
  width: 27.5%;
  padding-top: 0.8em;
  padding-bottom: 0.8em; }

button.banner__search__go.active {
  position: relative;
  z-index: 1002; }

.banner__search__best-match {
  flex-basis: 100%;
  line-height: 1.2; }
  .banner__search__best-match br {
    display: none; }

@media (min-width: 400px) {
  .banner__search__box {
    flex-basis: 77.5%;
    width: 77.5%; }
  button.banner__search__go {
    flex-basis: 20%;
    width: 20%; } }

@media (min-width: 700px) {
  h1.banner__heading {
    font-size: 4em; }
  .banner__search__box {
    flex-basis: 60%;
    width: 60%; }
  button.banner__search__go {
    flex-basis: 15%;
    width: 15%;
    margin-right: 2.5%; }
  button.banner__search__box {
    margin-bottom: 0; }
  .banner__search__box__initialtext {
    font-size: 2em; }
  .banner__search__best-match {
    flex-basis: auto; }
    .banner__search__best-match br {
      display: block; }
  button.banner__search__go {
    margin-right: 0.5rem; } }

/*

Styles that effect the homepage only.
NOTE Banner is under partials/under_header.scss

CONTENTS

1. Rabbit holes (the optional CTAs under the homepage banner)

*/
.rabbitholes__item {
  border-radius: 0.3em;
  border: 1px solid #e6e6e6;
  overflow: hidden;
  height: 100%;
  position: relative; }

.rabbitholes__item__top {
  border-bottom: 1px solid #e6e6e6;
  height: 5em;
  padding: 1em;
  display: flex;
  align-items: center; }

.rabbitholes__item__top__icon {
  width: 2.25em;
  height: 2.25em;
  stroke: #3e3e3e;
  stroke-width: 3;
  fill: #e6e6e6;
  color: #ffffff;
  margin-right: 0.1em;
  transition: 0.3s;
  margin-right: 0.75em;
  flex-shrink: 0; }

.rabbitholes__item__top__icon--team {
  width: 2.5em;
  height: 2.5em; }

.rabbitholes__item__bottom {
  padding: 1em;
  display: flex;
  flex-direction: column;
  height: calc(100% - 5em);
  background-color: #f7f7f7; }

.rabbitholes__item__bottom__text {
  margin-bottom: 0.5em;
  flex-grow: 1; }

.rabbitholes__item__bottom__button {
  flex-basis: auto;
  width: auto;
  flex-shrink: 1;
  flex-grow: 0; }

@media (min-width: 1100px) {
  .rabbitholes {
    margin-top: -6.8em; }
  .rabbitholes__item {
    background-color: #f7f7f7;
    border: 0; }
  .rabbitholes__item__top {
    background-color: #ffffff;
    border: 0;
    padding-right: 1.5em; } }
