@charset "UTF-8";
/* global variables, mixins, functions, etc. */
/* ==========================================================================
   SASS Base: Variables, mixins, etc.
   ========================================================================== */
/* Add more colors here! */
@-webkit-keyframes fadeInFromNone {
  0% {
    display: none;
    opacity: 0; }
  1% {
    display: block;
    opacity: 0; }
  100% {
    display: block;
    opacity: 1; } }
@keyframes fadeInFromNone {
  0% {
    display: none;
    opacity: 0; }
  1% {
    display: block;
    opacity: 0; }
  100% {
    display: block;
    opacity: 1; } }

/*
 * Easy conversion to em from pixels
 */
/*
 * Replicate adobe tracking values in em
 */
/*
 * Photoshop Text Shadow
 * NOTE: $spread has no effect for text shadows
 * https://gist.github.com/heygrady/1039282
 */
/*
 * Using variation specific font names from the start to avoid IE8 issues
 * http://help.typekit.com/customer/portal/articles/6855-Using-multiple-weights-and-styles
 */
*,
*::before,
*::after {
  box-sizing: border-box; }

html {
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -ms-overflow-style: scrollbar;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

@-ms-viewport {
  width: device-width; }

article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
  display: block; }

body {
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  text-align: left;
  background-color: #fff; }

[tabindex="-1"]:focus {
  outline: 0 !important; }

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible; }

h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: 0.5rem; }

p {
  margin-top: 0;
  margin-bottom: 1rem; }

abbr[title],
abbr[data-original-title] {
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
  cursor: help;
  border-bottom: 0; }

address {
  margin-bottom: 1rem;
  font-style: normal;
  line-height: inherit; }

ol,
ul,
dl {
  margin-top: 0;
  margin-bottom: 1rem; }

ol ol,
ul ul,
ol ul,
ul ol {
  margin-bottom: 0; }

dt {
  font-weight: 700; }

dd {
  margin-bottom: .5rem;
  margin-left: 0; }

blockquote {
  margin: 0 0 1rem; }

dfn {
  font-style: italic; }

b,
strong {
  font-weight: bolder; }

small {
  font-size: 80%; }

sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline; }

sub {
  bottom: -.25em; }

sup {
  top: -.5em; }

a {
  color: #fcaa17;
  text-decoration: none;
  background-color: transparent;
  -webkit-text-decoration-skip: objects; }
  a:hover {
    color: #fcaa17;
    text-decoration: underline; }

a:not([href]):not([tabindex]) {
  color: inherit;
  text-decoration: none; }
  a:not([href]):not([tabindex]):hover, a:not([href]):not([tabindex]):focus {
    color: inherit;
    text-decoration: none; }
  a:not([href]):not([tabindex]):focus {
    outline: 0; }

pre,
code,
kbd,
samp {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 1em; }

pre {
  margin-top: 0;
  margin-bottom: 1rem;
  overflow: auto;
  -ms-overflow-style: scrollbar; }

figure {
  margin: 0 0 1rem; }

img {
  vertical-align: middle;
  border-style: none; }

svg:not(:root) {
  overflow: hidden; }

table {
  border-collapse: collapse; }

caption {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  color: #6c757d;
  text-align: left;
  caption-side: bottom; }

th {
  text-align: inherit; }

label {
  display: inline-block;
  margin-bottom: 0.5rem; }

button {
  border-radius: 0; }

button:focus {
  outline: 1px dotted;
  outline: 5px auto -webkit-focus-ring-color; }

input,
button,
select,
optgroup,
textarea {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit; }

button,
input {
  overflow: visible; }

button,
select {
  text-transform: none; }

button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button; }

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  padding: 0;
  border-style: none; }

input[type="radio"],
input[type="checkbox"] {
  box-sizing: border-box;
  padding: 0; }

input[type="date"],
input[type="time"],
input[type="datetime-local"],
input[type="month"] {
  -webkit-appearance: listbox; }

textarea {
  overflow: auto;
  resize: vertical; }

fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0; }

legend {
  display: block;
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin-bottom: .5rem;
  font-size: 1.5rem;
  line-height: inherit;
  color: inherit;
  white-space: normal; }

progress {
  vertical-align: baseline; }

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto; }

[type="search"] {
  outline-offset: -2px;
  -webkit-appearance: none; }

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

::-webkit-file-upload-button {
  font: inherit;
  -webkit-appearance: button; }

output {
  display: inline-block; }

summary {
  display: list-item;
  cursor: pointer; }

template {
  display: none; }

[hidden] {
  display: none !important; }

.container {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto; }
  @media (min-width: 576px) {
    .container {
      max-width: 540px; } }
  @media (min-width: 768px) {
    .container {
      max-width: 720px; } }
  @media (min-width: 992px) {
    .container {
      max-width: 960px; } }
  @media (min-width: 1200px) {
    .container {
      max-width: 1140px; } }

.container-fluid {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto; }

.row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -15px;
  margin-left: -15px; }

.no-gutters {
  margin-right: 0;
  margin-left: 0; }
  .no-gutters > .col,
  .no-gutters > [class*="col-"] {
    padding-right: 0;
    padding-left: 0; }

.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col,
.col-auto, .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, .col-sm,
.col-sm-auto, .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, .col-md,
.col-md-auto, .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, .col-lg,
.col-lg-auto, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl,
.col-xl-auto {
  position: relative;
  width: 100%;
  min-height: 1px;
  padding-right: 15px;
  padding-left: 15px; }

.col {
  flex-basis: 0;
  flex-grow: 1;
  max-width: 100%; }

.col-auto {
  flex: 0 0 auto;
  width: auto;
  max-width: none; }

.col-1 {
  flex: 0 0 8.33333%;
  max-width: 8.33333%; }

.col-2 {
  flex: 0 0 16.66667%;
  max-width: 16.66667%; }

.col-3 {
  flex: 0 0 25%;
  max-width: 25%; }

.col-4 {
  flex: 0 0 33.33333%;
  max-width: 33.33333%; }

.col-5 {
  flex: 0 0 41.66667%;
  max-width: 41.66667%; }

.col-6 {
  flex: 0 0 50%;
  max-width: 50%; }

.col-7 {
  flex: 0 0 58.33333%;
  max-width: 58.33333%; }

.col-8 {
  flex: 0 0 66.66667%;
  max-width: 66.66667%; }

.col-9 {
  flex: 0 0 75%;
  max-width: 75%; }

.col-10 {
  flex: 0 0 83.33333%;
  max-width: 83.33333%; }

.col-11 {
  flex: 0 0 91.66667%;
  max-width: 91.66667%; }

.col-12 {
  flex: 0 0 100%;
  max-width: 100%; }

.order-first {
  order: -1; }

.order-last {
  order: 13; }

.order-0 {
  order: 0; }

.order-1 {
  order: 1; }

.order-2 {
  order: 2; }

.order-3 {
  order: 3; }

.order-4 {
  order: 4; }

.order-5 {
  order: 5; }

.order-6 {
  order: 6; }

.order-7 {
  order: 7; }

.order-8 {
  order: 8; }

.order-9 {
  order: 9; }

.order-10 {
  order: 10; }

.order-11 {
  order: 11; }

.order-12 {
  order: 12; }

.offset-1 {
  margin-left: 8.33333%; }

.offset-2 {
  margin-left: 16.66667%; }

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

.offset-4 {
  margin-left: 33.33333%; }

.offset-5 {
  margin-left: 41.66667%; }

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

.offset-7 {
  margin-left: 58.33333%; }

.offset-8 {
  margin-left: 66.66667%; }

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

.offset-10 {
  margin-left: 83.33333%; }

.offset-11 {
  margin-left: 91.66667%; }

@media (min-width: 576px) {
  .col-sm {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%; }
  .col-sm-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: none; }
  .col-sm-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .col-sm-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .col-sm-3 {
    flex: 0 0 25%;
    max-width: 25%; }
  .col-sm-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .col-sm-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .col-sm-6 {
    flex: 0 0 50%;
    max-width: 50%; }
  .col-sm-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .col-sm-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .col-sm-9 {
    flex: 0 0 75%;
    max-width: 75%; }
  .col-sm-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .col-sm-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .col-sm-12 {
    flex: 0 0 100%;
    max-width: 100%; }
  .order-sm-first {
    order: -1; }
  .order-sm-last {
    order: 13; }
  .order-sm-0 {
    order: 0; }
  .order-sm-1 {
    order: 1; }
  .order-sm-2 {
    order: 2; }
  .order-sm-3 {
    order: 3; }
  .order-sm-4 {
    order: 4; }
  .order-sm-5 {
    order: 5; }
  .order-sm-6 {
    order: 6; }
  .order-sm-7 {
    order: 7; }
  .order-sm-8 {
    order: 8; }
  .order-sm-9 {
    order: 9; }
  .order-sm-10 {
    order: 10; }
  .order-sm-11 {
    order: 11; }
  .order-sm-12 {
    order: 12; }
  .offset-sm-0 {
    margin-left: 0; }
  .offset-sm-1 {
    margin-left: 8.33333%; }
  .offset-sm-2 {
    margin-left: 16.66667%; }
  .offset-sm-3 {
    margin-left: 25%; }
  .offset-sm-4 {
    margin-left: 33.33333%; }
  .offset-sm-5 {
    margin-left: 41.66667%; }
  .offset-sm-6 {
    margin-left: 50%; }
  .offset-sm-7 {
    margin-left: 58.33333%; }
  .offset-sm-8 {
    margin-left: 66.66667%; }
  .offset-sm-9 {
    margin-left: 75%; }
  .offset-sm-10 {
    margin-left: 83.33333%; }
  .offset-sm-11 {
    margin-left: 91.66667%; } }

@media (min-width: 768px) {
  .col-md {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%; }
  .col-md-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: none; }
  .col-md-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .col-md-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .col-md-3 {
    flex: 0 0 25%;
    max-width: 25%; }
  .col-md-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .col-md-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .col-md-6 {
    flex: 0 0 50%;
    max-width: 50%; }
  .col-md-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .col-md-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .col-md-9 {
    flex: 0 0 75%;
    max-width: 75%; }
  .col-md-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .col-md-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .col-md-12 {
    flex: 0 0 100%;
    max-width: 100%; }
  .order-md-first {
    order: -1; }
  .order-md-last {
    order: 13; }
  .order-md-0 {
    order: 0; }
  .order-md-1 {
    order: 1; }
  .order-md-2 {
    order: 2; }
  .order-md-3 {
    order: 3; }
  .order-md-4 {
    order: 4; }
  .order-md-5 {
    order: 5; }
  .order-md-6 {
    order: 6; }
  .order-md-7 {
    order: 7; }
  .order-md-8 {
    order: 8; }
  .order-md-9 {
    order: 9; }
  .order-md-10 {
    order: 10; }
  .order-md-11 {
    order: 11; }
  .order-md-12 {
    order: 12; }
  .offset-md-0 {
    margin-left: 0; }
  .offset-md-1 {
    margin-left: 8.33333%; }
  .offset-md-2 {
    margin-left: 16.66667%; }
  .offset-md-3 {
    margin-left: 25%; }
  .offset-md-4 {
    margin-left: 33.33333%; }
  .offset-md-5 {
    margin-left: 41.66667%; }
  .offset-md-6 {
    margin-left: 50%; }
  .offset-md-7 {
    margin-left: 58.33333%; }
  .offset-md-8 {
    margin-left: 66.66667%; }
  .offset-md-9 {
    margin-left: 75%; }
  .offset-md-10 {
    margin-left: 83.33333%; }
  .offset-md-11 {
    margin-left: 91.66667%; } }

@media (min-width: 992px) {
  .col-lg {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%; }
  .col-lg-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: none; }
  .col-lg-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .col-lg-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .col-lg-3 {
    flex: 0 0 25%;
    max-width: 25%; }
  .col-lg-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .col-lg-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .col-lg-6 {
    flex: 0 0 50%;
    max-width: 50%; }
  .col-lg-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .col-lg-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .col-lg-9 {
    flex: 0 0 75%;
    max-width: 75%; }
  .col-lg-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .col-lg-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .col-lg-12 {
    flex: 0 0 100%;
    max-width: 100%; }
  .order-lg-first {
    order: -1; }
  .order-lg-last {
    order: 13; }
  .order-lg-0 {
    order: 0; }
  .order-lg-1 {
    order: 1; }
  .order-lg-2 {
    order: 2; }
  .order-lg-3 {
    order: 3; }
  .order-lg-4 {
    order: 4; }
  .order-lg-5 {
    order: 5; }
  .order-lg-6 {
    order: 6; }
  .order-lg-7 {
    order: 7; }
  .order-lg-8 {
    order: 8; }
  .order-lg-9 {
    order: 9; }
  .order-lg-10 {
    order: 10; }
  .order-lg-11 {
    order: 11; }
  .order-lg-12 {
    order: 12; }
  .offset-lg-0 {
    margin-left: 0; }
  .offset-lg-1 {
    margin-left: 8.33333%; }
  .offset-lg-2 {
    margin-left: 16.66667%; }
  .offset-lg-3 {
    margin-left: 25%; }
  .offset-lg-4 {
    margin-left: 33.33333%; }
  .offset-lg-5 {
    margin-left: 41.66667%; }
  .offset-lg-6 {
    margin-left: 50%; }
  .offset-lg-7 {
    margin-left: 58.33333%; }
  .offset-lg-8 {
    margin-left: 66.66667%; }
  .offset-lg-9 {
    margin-left: 75%; }
  .offset-lg-10 {
    margin-left: 83.33333%; }
  .offset-lg-11 {
    margin-left: 91.66667%; } }

@media (min-width: 1200px) {
  .col-xl {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%; }
  .col-xl-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: none; }
  .col-xl-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .col-xl-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .col-xl-3 {
    flex: 0 0 25%;
    max-width: 25%; }
  .col-xl-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .col-xl-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .col-xl-6 {
    flex: 0 0 50%;
    max-width: 50%; }
  .col-xl-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .col-xl-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .col-xl-9 {
    flex: 0 0 75%;
    max-width: 75%; }
  .col-xl-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .col-xl-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .col-xl-12 {
    flex: 0 0 100%;
    max-width: 100%; }
  .order-xl-first {
    order: -1; }
  .order-xl-last {
    order: 13; }
  .order-xl-0 {
    order: 0; }
  .order-xl-1 {
    order: 1; }
  .order-xl-2 {
    order: 2; }
  .order-xl-3 {
    order: 3; }
  .order-xl-4 {
    order: 4; }
  .order-xl-5 {
    order: 5; }
  .order-xl-6 {
    order: 6; }
  .order-xl-7 {
    order: 7; }
  .order-xl-8 {
    order: 8; }
  .order-xl-9 {
    order: 9; }
  .order-xl-10 {
    order: 10; }
  .order-xl-11 {
    order: 11; }
  .order-xl-12 {
    order: 12; }
  .offset-xl-0 {
    margin-left: 0; }
  .offset-xl-1 {
    margin-left: 8.33333%; }
  .offset-xl-2 {
    margin-left: 16.66667%; }
  .offset-xl-3 {
    margin-left: 25%; }
  .offset-xl-4 {
    margin-left: 33.33333%; }
  .offset-xl-5 {
    margin-left: 41.66667%; }
  .offset-xl-6 {
    margin-left: 50%; }
  .offset-xl-7 {
    margin-left: 58.33333%; }
  .offset-xl-8 {
    margin-left: 66.66667%; }
  .offset-xl-9 {
    margin-left: 75%; }
  .offset-xl-10 {
    margin-left: 83.33333%; }
  .offset-xl-11 {
    margin-left: 91.66667%; } }

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

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

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

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

.align-text-bottom {
  vertical-align: text-bottom !important; }

.align-text-top {
  vertical-align: text-top !important; }

.bg-primary {
  background-color: #007bff !important; }

a.bg-primary:hover, a.bg-primary:focus,
button.bg-primary:hover,
button.bg-primary:focus {
  background-color: #0062cc !important; }

.bg-secondary {
  background-color: #6c757d !important; }

a.bg-secondary:hover, a.bg-secondary:focus,
button.bg-secondary:hover,
button.bg-secondary:focus {
  background-color: #545b62 !important; }

.bg-success {
  background-color: #28a745 !important; }

a.bg-success:hover, a.bg-success:focus,
button.bg-success:hover,
button.bg-success:focus {
  background-color: #1e7e34 !important; }

.bg-info {
  background-color: #17a2b8 !important; }

a.bg-info:hover, a.bg-info:focus,
button.bg-info:hover,
button.bg-info:focus {
  background-color: #117a8b !important; }

.bg-warning {
  background-color: #ffc107 !important; }

a.bg-warning:hover, a.bg-warning:focus,
button.bg-warning:hover,
button.bg-warning:focus {
  background-color: #d39e00 !important; }

.bg-danger {
  background-color: #dc3545 !important; }

a.bg-danger:hover, a.bg-danger:focus,
button.bg-danger:hover,
button.bg-danger:focus {
  background-color: #bd2130 !important; }

.bg-light {
  background-color: #f8f9fa !important; }

a.bg-light:hover, a.bg-light:focus,
button.bg-light:hover,
button.bg-light:focus {
  background-color: #dae0e5 !important; }

.bg-dark {
  background-color: #343a40 !important; }

a.bg-dark:hover, a.bg-dark:focus,
button.bg-dark:hover,
button.bg-dark:focus {
  background-color: #1d2124 !important; }

.bg-white {
  background-color: #fff !important; }

.bg-transparent {
  background-color: transparent !important; }

.border {
  border: 1px solid #dee2e6 !important; }

.border-top {
  border-top: 1px solid #dee2e6 !important; }

.border-right {
  border-right: 1px solid #dee2e6 !important; }

.border-bottom {
  border-bottom: 1px solid #dee2e6 !important; }

.border-left {
  border-left: 1px solid #dee2e6 !important; }

.border-0 {
  border: 0 !important; }

.border-top-0 {
  border-top: 0 !important; }

.border-right-0 {
  border-right: 0 !important; }

.border-bottom-0 {
  border-bottom: 0 !important; }

.border-left-0 {
  border-left: 0 !important; }

.border-primary {
  border-color: #007bff !important; }

.border-secondary {
  border-color: #6c757d !important; }

.border-success {
  border-color: #28a745 !important; }

.border-info {
  border-color: #17a2b8 !important; }

.border-warning {
  border-color: #ffc107 !important; }

.border-danger {
  border-color: #dc3545 !important; }

.border-light {
  border-color: #f8f9fa !important; }

.border-dark {
  border-color: #343a40 !important; }

.border-white {
  border-color: #fff !important; }

.rounded {
  border-radius: 0.25rem !important; }

.rounded-top {
  border-top-left-radius: 0.25rem !important;
  border-top-right-radius: 0.25rem !important; }

.rounded-right {
  border-top-right-radius: 0.25rem !important;
  border-bottom-right-radius: 0.25rem !important; }

.rounded-bottom {
  border-bottom-right-radius: 0.25rem !important;
  border-bottom-left-radius: 0.25rem !important; }

.rounded-left {
  border-top-left-radius: 0.25rem !important;
  border-bottom-left-radius: 0.25rem !important; }

.rounded-circle {
  border-radius: 50% !important; }

.rounded-0 {
  border-radius: 0 !important; }

.clearfix::after {
  display: block;
  clear: both;
  content: ""; }

.d-none {
  display: none !important; }

.d-inline {
  display: inline !important; }

.d-inline-block {
  display: inline-block !important; }

.d-block {
  display: block !important; }

.d-table {
  display: table !important; }

.d-table-row {
  display: table-row !important; }

.d-table-cell {
  display: table-cell !important; }

.d-flex {
  display: flex !important; }

.d-inline-flex {
  display: inline-flex !important; }

@media (min-width: 576px) {
  .d-sm-none {
    display: none !important; }
  .d-sm-inline {
    display: inline !important; }
  .d-sm-inline-block {
    display: inline-block !important; }
  .d-sm-block {
    display: block !important; }
  .d-sm-table {
    display: table !important; }
  .d-sm-table-row {
    display: table-row !important; }
  .d-sm-table-cell {
    display: table-cell !important; }
  .d-sm-flex {
    display: flex !important; }
  .d-sm-inline-flex {
    display: inline-flex !important; } }

@media (min-width: 768px) {
  .d-md-none {
    display: none !important; }
  .d-md-inline {
    display: inline !important; }
  .d-md-inline-block {
    display: inline-block !important; }
  .d-md-block {
    display: block !important; }
  .d-md-table {
    display: table !important; }
  .d-md-table-row {
    display: table-row !important; }
  .d-md-table-cell {
    display: table-cell !important; }
  .d-md-flex {
    display: flex !important; }
  .d-md-inline-flex {
    display: inline-flex !important; } }

@media (min-width: 992px) {
  .d-lg-none {
    display: none !important; }
  .d-lg-inline {
    display: inline !important; }
  .d-lg-inline-block {
    display: inline-block !important; }
  .d-lg-block {
    display: block !important; }
  .d-lg-table {
    display: table !important; }
  .d-lg-table-row {
    display: table-row !important; }
  .d-lg-table-cell {
    display: table-cell !important; }
  .d-lg-flex {
    display: flex !important; }
  .d-lg-inline-flex {
    display: inline-flex !important; } }

@media (min-width: 1200px) {
  .d-xl-none {
    display: none !important; }
  .d-xl-inline {
    display: inline !important; }
  .d-xl-inline-block {
    display: inline-block !important; }
  .d-xl-block {
    display: block !important; }
  .d-xl-table {
    display: table !important; }
  .d-xl-table-row {
    display: table-row !important; }
  .d-xl-table-cell {
    display: table-cell !important; }
  .d-xl-flex {
    display: flex !important; }
  .d-xl-inline-flex {
    display: inline-flex !important; } }

@media print {
  .d-print-none {
    display: none !important; }
  .d-print-inline {
    display: inline !important; }
  .d-print-inline-block {
    display: inline-block !important; }
  .d-print-block {
    display: block !important; }
  .d-print-table {
    display: table !important; }
  .d-print-table-row {
    display: table-row !important; }
  .d-print-table-cell {
    display: table-cell !important; }
  .d-print-flex {
    display: flex !important; }
  .d-print-inline-flex {
    display: inline-flex !important; } }

.embed-responsive {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  overflow: hidden; }
  .embed-responsive::before {
    display: block;
    content: ""; }
  .embed-responsive .embed-responsive-item,
  .embed-responsive iframe,
  .embed-responsive embed,
  .embed-responsive object,
  .embed-responsive video {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0; }

.embed-responsive-21by9::before {
  padding-top: 42.85714%; }

.embed-responsive-16by9::before {
  padding-top: 56.25%; }

.embed-responsive-4by3::before {
  padding-top: 75%; }

.embed-responsive-1by1::before {
  padding-top: 100%; }

.flex-row {
  flex-direction: row !important; }

.flex-column {
  flex-direction: column !important; }

.flex-row-reverse {
  flex-direction: row-reverse !important; }

.flex-column-reverse {
  flex-direction: column-reverse !important; }

.flex-wrap {
  flex-wrap: wrap !important; }

.flex-nowrap {
  flex-wrap: nowrap !important; }

.flex-wrap-reverse {
  flex-wrap: wrap-reverse !important; }

.flex-fill {
  flex: 1 1 auto !important; }

.flex-grow-0 {
  flex-grow: 0 !important; }

.flex-grow-1 {
  flex-grow: 1 !important; }

.flex-shrink-0 {
  flex-shrink: 0 !important; }

.flex-shrink-1 {
  flex-shrink: 1 !important; }

.justify-content-start {
  justify-content: flex-start !important; }

.justify-content-end {
  justify-content: flex-end !important; }

.justify-content-center {
  justify-content: center !important; }

.justify-content-between {
  justify-content: space-between !important; }

.justify-content-around {
  justify-content: space-around !important; }

.align-items-start {
  align-items: flex-start !important; }

.align-items-end {
  align-items: flex-end !important; }

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

.align-items-baseline {
  align-items: baseline !important; }

.align-items-stretch {
  align-items: stretch !important; }

.align-content-start {
  align-content: flex-start !important; }

.align-content-end {
  align-content: flex-end !important; }

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

.align-content-between {
  align-content: space-between !important; }

.align-content-around {
  align-content: space-around !important; }

.align-content-stretch {
  align-content: stretch !important; }

.align-self-auto {
  align-self: auto !important; }

.align-self-start {
  align-self: flex-start !important; }

.align-self-end {
  align-self: flex-end !important; }

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

.align-self-baseline {
  align-self: baseline !important; }

.align-self-stretch {
  align-self: stretch !important; }

@media (min-width: 576px) {
  .flex-sm-row {
    flex-direction: row !important; }
  .flex-sm-column {
    flex-direction: column !important; }
  .flex-sm-row-reverse {
    flex-direction: row-reverse !important; }
  .flex-sm-column-reverse {
    flex-direction: column-reverse !important; }
  .flex-sm-wrap {
    flex-wrap: wrap !important; }
  .flex-sm-nowrap {
    flex-wrap: nowrap !important; }
  .flex-sm-wrap-reverse {
    flex-wrap: wrap-reverse !important; }
  .flex-sm-fill {
    flex: 1 1 auto !important; }
  .flex-sm-grow-0 {
    flex-grow: 0 !important; }
  .flex-sm-grow-1 {
    flex-grow: 1 !important; }
  .flex-sm-shrink-0 {
    flex-shrink: 0 !important; }
  .flex-sm-shrink-1 {
    flex-shrink: 1 !important; }
  .justify-content-sm-start {
    justify-content: flex-start !important; }
  .justify-content-sm-end {
    justify-content: flex-end !important; }
  .justify-content-sm-center {
    justify-content: center !important; }
  .justify-content-sm-between {
    justify-content: space-between !important; }
  .justify-content-sm-around {
    justify-content: space-around !important; }
  .align-items-sm-start {
    align-items: flex-start !important; }
  .align-items-sm-end {
    align-items: flex-end !important; }
  .align-items-sm-center {
    align-items: center !important; }
  .align-items-sm-baseline {
    align-items: baseline !important; }
  .align-items-sm-stretch {
    align-items: stretch !important; }
  .align-content-sm-start {
    align-content: flex-start !important; }
  .align-content-sm-end {
    align-content: flex-end !important; }
  .align-content-sm-center {
    align-content: center !important; }
  .align-content-sm-between {
    align-content: space-between !important; }
  .align-content-sm-around {
    align-content: space-around !important; }
  .align-content-sm-stretch {
    align-content: stretch !important; }
  .align-self-sm-auto {
    align-self: auto !important; }
  .align-self-sm-start {
    align-self: flex-start !important; }
  .align-self-sm-end {
    align-self: flex-end !important; }
  .align-self-sm-center {
    align-self: center !important; }
  .align-self-sm-baseline {
    align-self: baseline !important; }
  .align-self-sm-stretch {
    align-self: stretch !important; } }

@media (min-width: 768px) {
  .flex-md-row {
    flex-direction: row !important; }
  .flex-md-column {
    flex-direction: column !important; }
  .flex-md-row-reverse {
    flex-direction: row-reverse !important; }
  .flex-md-column-reverse {
    flex-direction: column-reverse !important; }
  .flex-md-wrap {
    flex-wrap: wrap !important; }
  .flex-md-nowrap {
    flex-wrap: nowrap !important; }
  .flex-md-wrap-reverse {
    flex-wrap: wrap-reverse !important; }
  .flex-md-fill {
    flex: 1 1 auto !important; }
  .flex-md-grow-0 {
    flex-grow: 0 !important; }
  .flex-md-grow-1 {
    flex-grow: 1 !important; }
  .flex-md-shrink-0 {
    flex-shrink: 0 !important; }
  .flex-md-shrink-1 {
    flex-shrink: 1 !important; }
  .justify-content-md-start {
    justify-content: flex-start !important; }
  .justify-content-md-end {
    justify-content: flex-end !important; }
  .justify-content-md-center {
    justify-content: center !important; }
  .justify-content-md-between {
    justify-content: space-between !important; }
  .justify-content-md-around {
    justify-content: space-around !important; }
  .align-items-md-start {
    align-items: flex-start !important; }
  .align-items-md-end {
    align-items: flex-end !important; }
  .align-items-md-center {
    align-items: center !important; }
  .align-items-md-baseline {
    align-items: baseline !important; }
  .align-items-md-stretch {
    align-items: stretch !important; }
  .align-content-md-start {
    align-content: flex-start !important; }
  .align-content-md-end {
    align-content: flex-end !important; }
  .align-content-md-center {
    align-content: center !important; }
  .align-content-md-between {
    align-content: space-between !important; }
  .align-content-md-around {
    align-content: space-around !important; }
  .align-content-md-stretch {
    align-content: stretch !important; }
  .align-self-md-auto {
    align-self: auto !important; }
  .align-self-md-start {
    align-self: flex-start !important; }
  .align-self-md-end {
    align-self: flex-end !important; }
  .align-self-md-center {
    align-self: center !important; }
  .align-self-md-baseline {
    align-self: baseline !important; }
  .align-self-md-stretch {
    align-self: stretch !important; } }

@media (min-width: 992px) {
  .flex-lg-row {
    flex-direction: row !important; }
  .flex-lg-column {
    flex-direction: column !important; }
  .flex-lg-row-reverse {
    flex-direction: row-reverse !important; }
  .flex-lg-column-reverse {
    flex-direction: column-reverse !important; }
  .flex-lg-wrap {
    flex-wrap: wrap !important; }
  .flex-lg-nowrap {
    flex-wrap: nowrap !important; }
  .flex-lg-wrap-reverse {
    flex-wrap: wrap-reverse !important; }
  .flex-lg-fill {
    flex: 1 1 auto !important; }
  .flex-lg-grow-0 {
    flex-grow: 0 !important; }
  .flex-lg-grow-1 {
    flex-grow: 1 !important; }
  .flex-lg-shrink-0 {
    flex-shrink: 0 !important; }
  .flex-lg-shrink-1 {
    flex-shrink: 1 !important; }
  .justify-content-lg-start {
    justify-content: flex-start !important; }
  .justify-content-lg-end {
    justify-content: flex-end !important; }
  .justify-content-lg-center {
    justify-content: center !important; }
  .justify-content-lg-between {
    justify-content: space-between !important; }
  .justify-content-lg-around {
    justify-content: space-around !important; }
  .align-items-lg-start {
    align-items: flex-start !important; }
  .align-items-lg-end {
    align-items: flex-end !important; }
  .align-items-lg-center {
    align-items: center !important; }
  .align-items-lg-baseline {
    align-items: baseline !important; }
  .align-items-lg-stretch {
    align-items: stretch !important; }
  .align-content-lg-start {
    align-content: flex-start !important; }
  .align-content-lg-end {
    align-content: flex-end !important; }
  .align-content-lg-center {
    align-content: center !important; }
  .align-content-lg-between {
    align-content: space-between !important; }
  .align-content-lg-around {
    align-content: space-around !important; }
  .align-content-lg-stretch {
    align-content: stretch !important; }
  .align-self-lg-auto {
    align-self: auto !important; }
  .align-self-lg-start {
    align-self: flex-start !important; }
  .align-self-lg-end {
    align-self: flex-end !important; }
  .align-self-lg-center {
    align-self: center !important; }
  .align-self-lg-baseline {
    align-self: baseline !important; }
  .align-self-lg-stretch {
    align-self: stretch !important; } }

@media (min-width: 1200px) {
  .flex-xl-row {
    flex-direction: row !important; }
  .flex-xl-column {
    flex-direction: column !important; }
  .flex-xl-row-reverse {
    flex-direction: row-reverse !important; }
  .flex-xl-column-reverse {
    flex-direction: column-reverse !important; }
  .flex-xl-wrap {
    flex-wrap: wrap !important; }
  .flex-xl-nowrap {
    flex-wrap: nowrap !important; }
  .flex-xl-wrap-reverse {
    flex-wrap: wrap-reverse !important; }
  .flex-xl-fill {
    flex: 1 1 auto !important; }
  .flex-xl-grow-0 {
    flex-grow: 0 !important; }
  .flex-xl-grow-1 {
    flex-grow: 1 !important; }
  .flex-xl-shrink-0 {
    flex-shrink: 0 !important; }
  .flex-xl-shrink-1 {
    flex-shrink: 1 !important; }
  .justify-content-xl-start {
    justify-content: flex-start !important; }
  .justify-content-xl-end {
    justify-content: flex-end !important; }
  .justify-content-xl-center {
    justify-content: center !important; }
  .justify-content-xl-between {
    justify-content: space-between !important; }
  .justify-content-xl-around {
    justify-content: space-around !important; }
  .align-items-xl-start {
    align-items: flex-start !important; }
  .align-items-xl-end {
    align-items: flex-end !important; }
  .align-items-xl-center {
    align-items: center !important; }
  .align-items-xl-baseline {
    align-items: baseline !important; }
  .align-items-xl-stretch {
    align-items: stretch !important; }
  .align-content-xl-start {
    align-content: flex-start !important; }
  .align-content-xl-end {
    align-content: flex-end !important; }
  .align-content-xl-center {
    align-content: center !important; }
  .align-content-xl-between {
    align-content: space-between !important; }
  .align-content-xl-around {
    align-content: space-around !important; }
  .align-content-xl-stretch {
    align-content: stretch !important; }
  .align-self-xl-auto {
    align-self: auto !important; }
  .align-self-xl-start {
    align-self: flex-start !important; }
  .align-self-xl-end {
    align-self: flex-end !important; }
  .align-self-xl-center {
    align-self: center !important; }
  .align-self-xl-baseline {
    align-self: baseline !important; }
  .align-self-xl-stretch {
    align-self: stretch !important; } }

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

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

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

@media (min-width: 576px) {
  .float-sm-left {
    float: left !important; }
  .float-sm-right {
    float: right !important; }
  .float-sm-none {
    float: none !important; } }

@media (min-width: 768px) {
  .float-md-left {
    float: left !important; }
  .float-md-right {
    float: right !important; }
  .float-md-none {
    float: none !important; } }

@media (min-width: 992px) {
  .float-lg-left {
    float: left !important; }
  .float-lg-right {
    float: right !important; }
  .float-lg-none {
    float: none !important; } }

@media (min-width: 1200px) {
  .float-xl-left {
    float: left !important; }
  .float-xl-right {
    float: right !important; }
  .float-xl-none {
    float: none !important; } }

.position-static {
  position: static !important; }

.position-relative {
  position: relative !important; }

.position-absolute {
  position: absolute !important; }

.position-fixed {
  position: fixed !important; }

.position-sticky {
  position: -webkit-sticky !important;
  position: sticky !important; }

.fixed-top {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1030; }

.fixed-bottom {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1030; }

@supports ((position: -webkit-sticky) or (position: sticky)) {
  .sticky-top {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 1020; } }

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0; }

.sr-only-focusable:active, .sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto;
  white-space: normal; }

.shadow-sm {
  box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important; }

.shadow {
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important; }

.shadow-lg {
  box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important; }

.shadow-none {
  box-shadow: none !important; }

.w-25 {
  width: 25% !important; }

.w-50 {
  width: 50% !important; }

.w-75 {
  width: 75% !important; }

.w-100 {
  width: 100% !important; }

.w-auto {
  width: auto !important; }

.h-25 {
  height: 25% !important; }

.h-50 {
  height: 50% !important; }

.h-75 {
  height: 75% !important; }

.h-100 {
  height: 100% !important; }

.h-auto {
  height: auto !important; }

.mw-100 {
  max-width: 100% !important; }

.mh-100 {
  max-height: 100% !important; }

.m-0 {
  margin: 0 !important; }

.mt-0,
.my-0 {
  margin-top: 0 !important; }

.mr-0,
.mx-0 {
  margin-right: 0 !important; }

.mb-0,
.my-0 {
  margin-bottom: 0 !important; }

.ml-0,
.mx-0 {
  margin-left: 0 !important; }

.m-1 {
  margin: 0.25rem !important; }

.mt-1,
.my-1 {
  margin-top: 0.25rem !important; }

.mr-1,
.mx-1 {
  margin-right: 0.25rem !important; }

.mb-1,
.my-1 {
  margin-bottom: 0.25rem !important; }

.ml-1,
.mx-1 {
  margin-left: 0.25rem !important; }

.m-2 {
  margin: 0.5rem !important; }

.mt-2,
.my-2 {
  margin-top: 0.5rem !important; }

.mr-2,
.mx-2 {
  margin-right: 0.5rem !important; }

.mb-2,
.my-2 {
  margin-bottom: 0.5rem !important; }

.ml-2,
.mx-2 {
  margin-left: 0.5rem !important; }

.m-3 {
  margin: 1rem !important; }

.mt-3,
.my-3 {
  margin-top: 1rem !important; }

.mr-3,
.mx-3 {
  margin-right: 1rem !important; }

.mb-3,
.my-3 {
  margin-bottom: 1rem !important; }

.ml-3,
.mx-3 {
  margin-left: 1rem !important; }

.m-4 {
  margin: 1.5rem !important; }

.mt-4,
.my-4 {
  margin-top: 1.5rem !important; }

.mr-4,
.mx-4 {
  margin-right: 1.5rem !important; }

.mb-4,
.my-4 {
  margin-bottom: 1.5rem !important; }

.ml-4,
.mx-4 {
  margin-left: 1.5rem !important; }

.m-5 {
  margin: 3rem !important; }

.mt-5,
.my-5 {
  margin-top: 3rem !important; }

.mr-5,
.mx-5 {
  margin-right: 3rem !important; }

.mb-5,
.my-5 {
  margin-bottom: 3rem !important; }

.ml-5,
.mx-5 {
  margin-left: 3rem !important; }

.p-0 {
  padding: 0 !important; }

.pt-0,
.py-0 {
  padding-top: 0 !important; }

.pr-0,
.px-0 {
  padding-right: 0 !important; }

.pb-0,
.py-0 {
  padding-bottom: 0 !important; }

.pl-0,
.px-0 {
  padding-left: 0 !important; }

.p-1 {
  padding: 0.25rem !important; }

.pt-1,
.py-1 {
  padding-top: 0.25rem !important; }

.pr-1,
.px-1 {
  padding-right: 0.25rem !important; }

.pb-1,
.py-1 {
  padding-bottom: 0.25rem !important; }

.pl-1,
.px-1 {
  padding-left: 0.25rem !important; }

.p-2 {
  padding: 0.5rem !important; }

.pt-2,
.py-2 {
  padding-top: 0.5rem !important; }

.pr-2,
.px-2 {
  padding-right: 0.5rem !important; }

.pb-2,
.py-2 {
  padding-bottom: 0.5rem !important; }

.pl-2,
.px-2 {
  padding-left: 0.5rem !important; }

.p-3 {
  padding: 1rem !important; }

.pt-3,
.py-3 {
  padding-top: 1rem !important; }

.pr-3,
.px-3 {
  padding-right: 1rem !important; }

.pb-3,
.py-3 {
  padding-bottom: 1rem !important; }

.pl-3,
.px-3 {
  padding-left: 1rem !important; }

.p-4 {
  padding: 1.5rem !important; }

.pt-4,
.py-4 {
  padding-top: 1.5rem !important; }

.pr-4,
.px-4 {
  padding-right: 1.5rem !important; }

.pb-4,
.py-4 {
  padding-bottom: 1.5rem !important; }

.pl-4,
.px-4 {
  padding-left: 1.5rem !important; }

.p-5 {
  padding: 3rem !important; }

.pt-5,
.py-5 {
  padding-top: 3rem !important; }

.pr-5,
.px-5 {
  padding-right: 3rem !important; }

.pb-5,
.py-5 {
  padding-bottom: 3rem !important; }

.pl-5,
.px-5 {
  padding-left: 3rem !important; }

.m-auto {
  margin: auto !important; }

.mt-auto,
.my-auto {
  margin-top: auto !important; }

.mr-auto,
.mx-auto {
  margin-right: auto !important; }

.mb-auto,
.my-auto {
  margin-bottom: auto !important; }

.ml-auto,
.mx-auto {
  margin-left: auto !important; }

@media (min-width: 576px) {
  .m-sm-0 {
    margin: 0 !important; }
  .mt-sm-0,
  .my-sm-0 {
    margin-top: 0 !important; }
  .mr-sm-0,
  .mx-sm-0 {
    margin-right: 0 !important; }
  .mb-sm-0,
  .my-sm-0 {
    margin-bottom: 0 !important; }
  .ml-sm-0,
  .mx-sm-0 {
    margin-left: 0 !important; }
  .m-sm-1 {
    margin: 0.25rem !important; }
  .mt-sm-1,
  .my-sm-1 {
    margin-top: 0.25rem !important; }
  .mr-sm-1,
  .mx-sm-1 {
    margin-right: 0.25rem !important; }
  .mb-sm-1,
  .my-sm-1 {
    margin-bottom: 0.25rem !important; }
  .ml-sm-1,
  .mx-sm-1 {
    margin-left: 0.25rem !important; }
  .m-sm-2 {
    margin: 0.5rem !important; }
  .mt-sm-2,
  .my-sm-2 {
    margin-top: 0.5rem !important; }
  .mr-sm-2,
  .mx-sm-2 {
    margin-right: 0.5rem !important; }
  .mb-sm-2,
  .my-sm-2 {
    margin-bottom: 0.5rem !important; }
  .ml-sm-2,
  .mx-sm-2 {
    margin-left: 0.5rem !important; }
  .m-sm-3 {
    margin: 1rem !important; }
  .mt-sm-3,
  .my-sm-3 {
    margin-top: 1rem !important; }
  .mr-sm-3,
  .mx-sm-3 {
    margin-right: 1rem !important; }
  .mb-sm-3,
  .my-sm-3 {
    margin-bottom: 1rem !important; }
  .ml-sm-3,
  .mx-sm-3 {
    margin-left: 1rem !important; }
  .m-sm-4 {
    margin: 1.5rem !important; }
  .mt-sm-4,
  .my-sm-4 {
    margin-top: 1.5rem !important; }
  .mr-sm-4,
  .mx-sm-4 {
    margin-right: 1.5rem !important; }
  .mb-sm-4,
  .my-sm-4 {
    margin-bottom: 1.5rem !important; }
  .ml-sm-4,
  .mx-sm-4 {
    margin-left: 1.5rem !important; }
  .m-sm-5 {
    margin: 3rem !important; }
  .mt-sm-5,
  .my-sm-5 {
    margin-top: 3rem !important; }
  .mr-sm-5,
  .mx-sm-5 {
    margin-right: 3rem !important; }
  .mb-sm-5,
  .my-sm-5 {
    margin-bottom: 3rem !important; }
  .ml-sm-5,
  .mx-sm-5 {
    margin-left: 3rem !important; }
  .p-sm-0 {
    padding: 0 !important; }
  .pt-sm-0,
  .py-sm-0 {
    padding-top: 0 !important; }
  .pr-sm-0,
  .px-sm-0 {
    padding-right: 0 !important; }
  .pb-sm-0,
  .py-sm-0 {
    padding-bottom: 0 !important; }
  .pl-sm-0,
  .px-sm-0 {
    padding-left: 0 !important; }
  .p-sm-1 {
    padding: 0.25rem !important; }
  .pt-sm-1,
  .py-sm-1 {
    padding-top: 0.25rem !important; }
  .pr-sm-1,
  .px-sm-1 {
    padding-right: 0.25rem !important; }
  .pb-sm-1,
  .py-sm-1 {
    padding-bottom: 0.25rem !important; }
  .pl-sm-1,
  .px-sm-1 {
    padding-left: 0.25rem !important; }
  .p-sm-2 {
    padding: 0.5rem !important; }
  .pt-sm-2,
  .py-sm-2 {
    padding-top: 0.5rem !important; }
  .pr-sm-2,
  .px-sm-2 {
    padding-right: 0.5rem !important; }
  .pb-sm-2,
  .py-sm-2 {
    padding-bottom: 0.5rem !important; }
  .pl-sm-2,
  .px-sm-2 {
    padding-left: 0.5rem !important; }
  .p-sm-3 {
    padding: 1rem !important; }
  .pt-sm-3,
  .py-sm-3 {
    padding-top: 1rem !important; }
  .pr-sm-3,
  .px-sm-3 {
    padding-right: 1rem !important; }
  .pb-sm-3,
  .py-sm-3 {
    padding-bottom: 1rem !important; }
  .pl-sm-3,
  .px-sm-3 {
    padding-left: 1rem !important; }
  .p-sm-4 {
    padding: 1.5rem !important; }
  .pt-sm-4,
  .py-sm-4 {
    padding-top: 1.5rem !important; }
  .pr-sm-4,
  .px-sm-4 {
    padding-right: 1.5rem !important; }
  .pb-sm-4,
  .py-sm-4 {
    padding-bottom: 1.5rem !important; }
  .pl-sm-4,
  .px-sm-4 {
    padding-left: 1.5rem !important; }
  .p-sm-5 {
    padding: 3rem !important; }
  .pt-sm-5,
  .py-sm-5 {
    padding-top: 3rem !important; }
  .pr-sm-5,
  .px-sm-5 {
    padding-right: 3rem !important; }
  .pb-sm-5,
  .py-sm-5 {
    padding-bottom: 3rem !important; }
  .pl-sm-5,
  .px-sm-5 {
    padding-left: 3rem !important; }
  .m-sm-auto {
    margin: auto !important; }
  .mt-sm-auto,
  .my-sm-auto {
    margin-top: auto !important; }
  .mr-sm-auto,
  .mx-sm-auto {
    margin-right: auto !important; }
  .mb-sm-auto,
  .my-sm-auto {
    margin-bottom: auto !important; }
  .ml-sm-auto,
  .mx-sm-auto {
    margin-left: auto !important; } }

@media (min-width: 768px) {
  .m-md-0 {
    margin: 0 !important; }
  .mt-md-0,
  .my-md-0 {
    margin-top: 0 !important; }
  .mr-md-0,
  .mx-md-0 {
    margin-right: 0 !important; }
  .mb-md-0,
  .my-md-0 {
    margin-bottom: 0 !important; }
  .ml-md-0,
  .mx-md-0 {
    margin-left: 0 !important; }
  .m-md-1 {
    margin: 0.25rem !important; }
  .mt-md-1,
  .my-md-1 {
    margin-top: 0.25rem !important; }
  .mr-md-1,
  .mx-md-1 {
    margin-right: 0.25rem !important; }
  .mb-md-1,
  .my-md-1 {
    margin-bottom: 0.25rem !important; }
  .ml-md-1,
  .mx-md-1 {
    margin-left: 0.25rem !important; }
  .m-md-2 {
    margin: 0.5rem !important; }
  .mt-md-2,
  .my-md-2 {
    margin-top: 0.5rem !important; }
  .mr-md-2,
  .mx-md-2 {
    margin-right: 0.5rem !important; }
  .mb-md-2,
  .my-md-2 {
    margin-bottom: 0.5rem !important; }
  .ml-md-2,
  .mx-md-2 {
    margin-left: 0.5rem !important; }
  .m-md-3 {
    margin: 1rem !important; }
  .mt-md-3,
  .my-md-3 {
    margin-top: 1rem !important; }
  .mr-md-3,
  .mx-md-3 {
    margin-right: 1rem !important; }
  .mb-md-3,
  .my-md-3 {
    margin-bottom: 1rem !important; }
  .ml-md-3,
  .mx-md-3 {
    margin-left: 1rem !important; }
  .m-md-4 {
    margin: 1.5rem !important; }
  .mt-md-4,
  .my-md-4 {
    margin-top: 1.5rem !important; }
  .mr-md-4,
  .mx-md-4 {
    margin-right: 1.5rem !important; }
  .mb-md-4,
  .my-md-4 {
    margin-bottom: 1.5rem !important; }
  .ml-md-4,
  .mx-md-4 {
    margin-left: 1.5rem !important; }
  .m-md-5 {
    margin: 3rem !important; }
  .mt-md-5,
  .my-md-5 {
    margin-top: 3rem !important; }
  .mr-md-5,
  .mx-md-5 {
    margin-right: 3rem !important; }
  .mb-md-5,
  .my-md-5 {
    margin-bottom: 3rem !important; }
  .ml-md-5,
  .mx-md-5 {
    margin-left: 3rem !important; }
  .p-md-0 {
    padding: 0 !important; }
  .pt-md-0,
  .py-md-0 {
    padding-top: 0 !important; }
  .pr-md-0,
  .px-md-0 {
    padding-right: 0 !important; }
  .pb-md-0,
  .py-md-0 {
    padding-bottom: 0 !important; }
  .pl-md-0,
  .px-md-0 {
    padding-left: 0 !important; }
  .p-md-1 {
    padding: 0.25rem !important; }
  .pt-md-1,
  .py-md-1 {
    padding-top: 0.25rem !important; }
  .pr-md-1,
  .px-md-1 {
    padding-right: 0.25rem !important; }
  .pb-md-1,
  .py-md-1 {
    padding-bottom: 0.25rem !important; }
  .pl-md-1,
  .px-md-1 {
    padding-left: 0.25rem !important; }
  .p-md-2 {
    padding: 0.5rem !important; }
  .pt-md-2,
  .py-md-2 {
    padding-top: 0.5rem !important; }
  .pr-md-2,
  .px-md-2 {
    padding-right: 0.5rem !important; }
  .pb-md-2,
  .py-md-2 {
    padding-bottom: 0.5rem !important; }
  .pl-md-2,
  .px-md-2 {
    padding-left: 0.5rem !important; }
  .p-md-3 {
    padding: 1rem !important; }
  .pt-md-3,
  .py-md-3 {
    padding-top: 1rem !important; }
  .pr-md-3,
  .px-md-3 {
    padding-right: 1rem !important; }
  .pb-md-3,
  .py-md-3 {
    padding-bottom: 1rem !important; }
  .pl-md-3,
  .px-md-3 {
    padding-left: 1rem !important; }
  .p-md-4 {
    padding: 1.5rem !important; }
  .pt-md-4,
  .py-md-4 {
    padding-top: 1.5rem !important; }
  .pr-md-4,
  .px-md-4 {
    padding-right: 1.5rem !important; }
  .pb-md-4,
  .py-md-4 {
    padding-bottom: 1.5rem !important; }
  .pl-md-4,
  .px-md-4 {
    padding-left: 1.5rem !important; }
  .p-md-5 {
    padding: 3rem !important; }
  .pt-md-5,
  .py-md-5 {
    padding-top: 3rem !important; }
  .pr-md-5,
  .px-md-5 {
    padding-right: 3rem !important; }
  .pb-md-5,
  .py-md-5 {
    padding-bottom: 3rem !important; }
  .pl-md-5,
  .px-md-5 {
    padding-left: 3rem !important; }
  .m-md-auto {
    margin: auto !important; }
  .mt-md-auto,
  .my-md-auto {
    margin-top: auto !important; }
  .mr-md-auto,
  .mx-md-auto {
    margin-right: auto !important; }
  .mb-md-auto,
  .my-md-auto {
    margin-bottom: auto !important; }
  .ml-md-auto,
  .mx-md-auto {
    margin-left: auto !important; } }

@media (min-width: 992px) {
  .m-lg-0 {
    margin: 0 !important; }
  .mt-lg-0,
  .my-lg-0 {
    margin-top: 0 !important; }
  .mr-lg-0,
  .mx-lg-0 {
    margin-right: 0 !important; }
  .mb-lg-0,
  .my-lg-0 {
    margin-bottom: 0 !important; }
  .ml-lg-0,
  .mx-lg-0 {
    margin-left: 0 !important; }
  .m-lg-1 {
    margin: 0.25rem !important; }
  .mt-lg-1,
  .my-lg-1 {
    margin-top: 0.25rem !important; }
  .mr-lg-1,
  .mx-lg-1 {
    margin-right: 0.25rem !important; }
  .mb-lg-1,
  .my-lg-1 {
    margin-bottom: 0.25rem !important; }
  .ml-lg-1,
  .mx-lg-1 {
    margin-left: 0.25rem !important; }
  .m-lg-2 {
    margin: 0.5rem !important; }
  .mt-lg-2,
  .my-lg-2 {
    margin-top: 0.5rem !important; }
  .mr-lg-2,
  .mx-lg-2 {
    margin-right: 0.5rem !important; }
  .mb-lg-2,
  .my-lg-2 {
    margin-bottom: 0.5rem !important; }
  .ml-lg-2,
  .mx-lg-2 {
    margin-left: 0.5rem !important; }
  .m-lg-3 {
    margin: 1rem !important; }
  .mt-lg-3,
  .my-lg-3 {
    margin-top: 1rem !important; }
  .mr-lg-3,
  .mx-lg-3 {
    margin-right: 1rem !important; }
  .mb-lg-3,
  .my-lg-3 {
    margin-bottom: 1rem !important; }
  .ml-lg-3,
  .mx-lg-3 {
    margin-left: 1rem !important; }
  .m-lg-4 {
    margin: 1.5rem !important; }
  .mt-lg-4,
  .my-lg-4 {
    margin-top: 1.5rem !important; }
  .mr-lg-4,
  .mx-lg-4 {
    margin-right: 1.5rem !important; }
  .mb-lg-4,
  .my-lg-4 {
    margin-bottom: 1.5rem !important; }
  .ml-lg-4,
  .mx-lg-4 {
    margin-left: 1.5rem !important; }
  .m-lg-5 {
    margin: 3rem !important; }
  .mt-lg-5,
  .my-lg-5 {
    margin-top: 3rem !important; }
  .mr-lg-5,
  .mx-lg-5 {
    margin-right: 3rem !important; }
  .mb-lg-5,
  .my-lg-5 {
    margin-bottom: 3rem !important; }
  .ml-lg-5,
  .mx-lg-5 {
    margin-left: 3rem !important; }
  .p-lg-0 {
    padding: 0 !important; }
  .pt-lg-0,
  .py-lg-0 {
    padding-top: 0 !important; }
  .pr-lg-0,
  .px-lg-0 {
    padding-right: 0 !important; }
  .pb-lg-0,
  .py-lg-0 {
    padding-bottom: 0 !important; }
  .pl-lg-0,
  .px-lg-0 {
    padding-left: 0 !important; }
  .p-lg-1 {
    padding: 0.25rem !important; }
  .pt-lg-1,
  .py-lg-1 {
    padding-top: 0.25rem !important; }
  .pr-lg-1,
  .px-lg-1 {
    padding-right: 0.25rem !important; }
  .pb-lg-1,
  .py-lg-1 {
    padding-bottom: 0.25rem !important; }
  .pl-lg-1,
  .px-lg-1 {
    padding-left: 0.25rem !important; }
  .p-lg-2 {
    padding: 0.5rem !important; }
  .pt-lg-2,
  .py-lg-2 {
    padding-top: 0.5rem !important; }
  .pr-lg-2,
  .px-lg-2 {
    padding-right: 0.5rem !important; }
  .pb-lg-2,
  .py-lg-2 {
    padding-bottom: 0.5rem !important; }
  .pl-lg-2,
  .px-lg-2 {
    padding-left: 0.5rem !important; }
  .p-lg-3 {
    padding: 1rem !important; }
  .pt-lg-3,
  .py-lg-3 {
    padding-top: 1rem !important; }
  .pr-lg-3,
  .px-lg-3 {
    padding-right: 1rem !important; }
  .pb-lg-3,
  .py-lg-3 {
    padding-bottom: 1rem !important; }
  .pl-lg-3,
  .px-lg-3 {
    padding-left: 1rem !important; }
  .p-lg-4 {
    padding: 1.5rem !important; }
  .pt-lg-4,
  .py-lg-4 {
    padding-top: 1.5rem !important; }
  .pr-lg-4,
  .px-lg-4 {
    padding-right: 1.5rem !important; }
  .pb-lg-4,
  .py-lg-4 {
    padding-bottom: 1.5rem !important; }
  .pl-lg-4,
  .px-lg-4 {
    padding-left: 1.5rem !important; }
  .p-lg-5 {
    padding: 3rem !important; }
  .pt-lg-5,
  .py-lg-5 {
    padding-top: 3rem !important; }
  .pr-lg-5,
  .px-lg-5 {
    padding-right: 3rem !important; }
  .pb-lg-5,
  .py-lg-5 {
    padding-bottom: 3rem !important; }
  .pl-lg-5,
  .px-lg-5 {
    padding-left: 3rem !important; }
  .m-lg-auto {
    margin: auto !important; }
  .mt-lg-auto,
  .my-lg-auto {
    margin-top: auto !important; }
  .mr-lg-auto,
  .mx-lg-auto {
    margin-right: auto !important; }
  .mb-lg-auto,
  .my-lg-auto {
    margin-bottom: auto !important; }
  .ml-lg-auto,
  .mx-lg-auto {
    margin-left: auto !important; } }

@media (min-width: 1200px) {
  .m-xl-0 {
    margin: 0 !important; }
  .mt-xl-0,
  .my-xl-0 {
    margin-top: 0 !important; }
  .mr-xl-0,
  .mx-xl-0 {
    margin-right: 0 !important; }
  .mb-xl-0,
  .my-xl-0 {
    margin-bottom: 0 !important; }
  .ml-xl-0,
  .mx-xl-0 {
    margin-left: 0 !important; }
  .m-xl-1 {
    margin: 0.25rem !important; }
  .mt-xl-1,
  .my-xl-1 {
    margin-top: 0.25rem !important; }
  .mr-xl-1,
  .mx-xl-1 {
    margin-right: 0.25rem !important; }
  .mb-xl-1,
  .my-xl-1 {
    margin-bottom: 0.25rem !important; }
  .ml-xl-1,
  .mx-xl-1 {
    margin-left: 0.25rem !important; }
  .m-xl-2 {
    margin: 0.5rem !important; }
  .mt-xl-2,
  .my-xl-2 {
    margin-top: 0.5rem !important; }
  .mr-xl-2,
  .mx-xl-2 {
    margin-right: 0.5rem !important; }
  .mb-xl-2,
  .my-xl-2 {
    margin-bottom: 0.5rem !important; }
  .ml-xl-2,
  .mx-xl-2 {
    margin-left: 0.5rem !important; }
  .m-xl-3 {
    margin: 1rem !important; }
  .mt-xl-3,
  .my-xl-3 {
    margin-top: 1rem !important; }
  .mr-xl-3,
  .mx-xl-3 {
    margin-right: 1rem !important; }
  .mb-xl-3,
  .my-xl-3 {
    margin-bottom: 1rem !important; }
  .ml-xl-3,
  .mx-xl-3 {
    margin-left: 1rem !important; }
  .m-xl-4 {
    margin: 1.5rem !important; }
  .mt-xl-4,
  .my-xl-4 {
    margin-top: 1.5rem !important; }
  .mr-xl-4,
  .mx-xl-4 {
    margin-right: 1.5rem !important; }
  .mb-xl-4,
  .my-xl-4 {
    margin-bottom: 1.5rem !important; }
  .ml-xl-4,
  .mx-xl-4 {
    margin-left: 1.5rem !important; }
  .m-xl-5 {
    margin: 3rem !important; }
  .mt-xl-5,
  .my-xl-5 {
    margin-top: 3rem !important; }
  .mr-xl-5,
  .mx-xl-5 {
    margin-right: 3rem !important; }
  .mb-xl-5,
  .my-xl-5 {
    margin-bottom: 3rem !important; }
  .ml-xl-5,
  .mx-xl-5 {
    margin-left: 3rem !important; }
  .p-xl-0 {
    padding: 0 !important; }
  .pt-xl-0,
  .py-xl-0 {
    padding-top: 0 !important; }
  .pr-xl-0,
  .px-xl-0 {
    padding-right: 0 !important; }
  .pb-xl-0,
  .py-xl-0 {
    padding-bottom: 0 !important; }
  .pl-xl-0,
  .px-xl-0 {
    padding-left: 0 !important; }
  .p-xl-1 {
    padding: 0.25rem !important; }
  .pt-xl-1,
  .py-xl-1 {
    padding-top: 0.25rem !important; }
  .pr-xl-1,
  .px-xl-1 {
    padding-right: 0.25rem !important; }
  .pb-xl-1,
  .py-xl-1 {
    padding-bottom: 0.25rem !important; }
  .pl-xl-1,
  .px-xl-1 {
    padding-left: 0.25rem !important; }
  .p-xl-2 {
    padding: 0.5rem !important; }
  .pt-xl-2,
  .py-xl-2 {
    padding-top: 0.5rem !important; }
  .pr-xl-2,
  .px-xl-2 {
    padding-right: 0.5rem !important; }
  .pb-xl-2,
  .py-xl-2 {
    padding-bottom: 0.5rem !important; }
  .pl-xl-2,
  .px-xl-2 {
    padding-left: 0.5rem !important; }
  .p-xl-3 {
    padding: 1rem !important; }
  .pt-xl-3,
  .py-xl-3 {
    padding-top: 1rem !important; }
  .pr-xl-3,
  .px-xl-3 {
    padding-right: 1rem !important; }
  .pb-xl-3,
  .py-xl-3 {
    padding-bottom: 1rem !important; }
  .pl-xl-3,
  .px-xl-3 {
    padding-left: 1rem !important; }
  .p-xl-4 {
    padding: 1.5rem !important; }
  .pt-xl-4,
  .py-xl-4 {
    padding-top: 1.5rem !important; }
  .pr-xl-4,
  .px-xl-4 {
    padding-right: 1.5rem !important; }
  .pb-xl-4,
  .py-xl-4 {
    padding-bottom: 1.5rem !important; }
  .pl-xl-4,
  .px-xl-4 {
    padding-left: 1.5rem !important; }
  .p-xl-5 {
    padding: 3rem !important; }
  .pt-xl-5,
  .py-xl-5 {
    padding-top: 3rem !important; }
  .pr-xl-5,
  .px-xl-5 {
    padding-right: 3rem !important; }
  .pb-xl-5,
  .py-xl-5 {
    padding-bottom: 3rem !important; }
  .pl-xl-5,
  .px-xl-5 {
    padding-left: 3rem !important; }
  .m-xl-auto {
    margin: auto !important; }
  .mt-xl-auto,
  .my-xl-auto {
    margin-top: auto !important; }
  .mr-xl-auto,
  .mx-xl-auto {
    margin-right: auto !important; }
  .mb-xl-auto,
  .my-xl-auto {
    margin-bottom: auto !important; }
  .ml-xl-auto,
  .mx-xl-auto {
    margin-left: auto !important; } }

.text-monospace {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; }

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

.text-nowrap {
  white-space: nowrap !important; }

.text-truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap; }

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

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

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

@media (min-width: 576px) {
  .text-sm-left {
    text-align: left !important; }
  .text-sm-right {
    text-align: right !important; }
  .text-sm-center {
    text-align: center !important; } }

@media (min-width: 768px) {
  .text-md-left {
    text-align: left !important; }
  .text-md-right {
    text-align: right !important; }
  .text-md-center {
    text-align: center !important; } }

@media (min-width: 992px) {
  .text-lg-left {
    text-align: left !important; }
  .text-lg-right {
    text-align: right !important; }
  .text-lg-center {
    text-align: center !important; } }

@media (min-width: 1200px) {
  .text-xl-left {
    text-align: left !important; }
  .text-xl-right {
    text-align: right !important; }
  .text-xl-center {
    text-align: center !important; } }

.text-lowercase {
  text-transform: lowercase !important; }

.text-uppercase {
  text-transform: uppercase !important; }

.text-capitalize {
  text-transform: capitalize !important; }

.font-weight-light {
  font-weight: 300 !important; }

.font-weight-normal {
  font-weight: 400 !important; }

.font-weight-bold {
  font-weight: 700 !important; }

.font-italic {
  font-style: italic !important; }

.text-white {
  color: #fff !important; }

.text-primary {
  color: #007bff !important; }

a.text-primary:hover, a.text-primary:focus {
  color: #0062cc !important; }

.text-secondary {
  color: #6c757d !important; }

a.text-secondary:hover, a.text-secondary:focus {
  color: #545b62 !important; }

.text-success {
  color: #28a745 !important; }

a.text-success:hover, a.text-success:focus {
  color: #1e7e34 !important; }

.text-info {
  color: #17a2b8 !important; }

a.text-info:hover, a.text-info:focus {
  color: #117a8b !important; }

.text-warning {
  color: #ffc107 !important; }

a.text-warning:hover, a.text-warning:focus {
  color: #d39e00 !important; }

.text-danger {
  color: #dc3545 !important; }

a.text-danger:hover, a.text-danger:focus {
  color: #bd2130 !important; }

.text-light {
  color: #f8f9fa !important; }

a.text-light:hover, a.text-light:focus {
  color: #dae0e5 !important; }

.text-dark {
  color: #343a40 !important; }

a.text-dark:hover, a.text-dark:focus {
  color: #1d2124 !important; }

.text-body {
  color: #212529 !important; }

.text-muted {
  color: #6c757d !important; }

.text-black-50 {
  color: rgba(0, 0, 0, 0.5) !important; }

.text-white-50 {
  color: rgba(255, 255, 255, 0.5) !important; }

.text-hide {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0; }

.visible {
  visibility: visible !important; }

.invisible {
  visibility: hidden !important; }

/*
 * HTML5 Boilerplate v4.3.0 | MIT License | http://h5bp.com/
 * Don't edit
 */
/* normalize.css v1.1.3 | MIT License | git.io/normalize */
/* ==========================================================================
   HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined in IE 6/7/8/9 and Firefox 3.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
  display: block; }

/**
 * Correct `inline-block` display not defined in IE 6/7/8/9 and Firefox 3.
 */
audio,
canvas,
video {
  display: inline-block;
  *display: inline;
  *zoom: 1; }

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

/**
 * Address styling not present in IE 7/8/9, Firefox 3, and Safari 4.
 * Known issue: no IE 6 support.
 */
[hidden] {
  display: none; }

/* ==========================================================================
   Base
   ========================================================================== */
/**
 * 1. Correct text resizing oddly in IE 6/7 when body `font-size` is set using
 *    `em` units.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
  font-size: 100%;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

/**
 * Address `font-family` inconsistency between `textarea` and other form
 * elements.
 */
html,
button,
input,
select,
textarea {
  font-family: sans-serif; }

/**
 * Address margins handled incorrectly in IE 6/7.
 */
body {
  margin: 0; }

/* ==========================================================================
   Links
   ========================================================================== */
/**
 * Address `outline` inconsistency between Chrome and other browsers.
 */
a:focus {
  outline: thin dotted; }

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

/* ==========================================================================
   Typography
   ========================================================================== */
/**
 * Address font sizes and margins set differently in IE 6/7.
 * Address font sizes within `section` and `article` in Firefox 4+, Safari 5,
 * and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

h2 {
  font-size: 1.5em;
  margin: 0.83em 0; }

h3 {
  font-size: 1.17em;
  margin: 1em 0; }

h4 {
  font-size: 1em;
  margin: 1.33em 0; }

h5 {
  font-size: 0.83em;
  margin: 1.67em 0; }

h6 {
  font-size: 0.67em;
  margin: 2.33em 0; }

/**
 * Address styling not present in IE 7/8/9, Safari 5, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted; }

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

blockquote {
  margin: 1em 40px; }

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

/**
 * Address differences between Firefox and other browsers.
 * Known issue: no IE 6/7 normalization.
 */
hr {
  box-sizing: content-box;
  height: 0; }

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

/**
 * Address margins set differently in IE 6/7.
 */
p,
pre {
  margin: 1em 0; }

/**
 * Correct font family set oddly in IE 6, Safari 4/5, and Chrome.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, serif;
  _font-family: 'courier new', monospace;
  font-size: 1em; }

/**
 * Improve readability of pre-formatted text in all browsers.
 */
pre {
  white-space: pre;
  white-space: pre-wrap;
  word-wrap: break-word; }

/**
 * Address CSS quotes not supported in IE 6/7.
 */
q {
  quotes: none; }

/**
 * Address `quotes` property not supported in Safari 4.
 */
q:before,
q:after {
  content: '';
  content: none; }

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

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

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

/* ==========================================================================
   Lists
   ========================================================================== */
/**
 * Address margins set differently in IE 6/7.
 */
dl,
menu,
ol,
ul {
  margin: 1em 0; }

dd {
  margin: 0 0 0 40px; }

/**
 * Address paddings set differently in IE 6/7.
 */
menu,
ol,
ul {
  padding: 0 0 0 40px; }

/**
 * Correct list images handled incorrectly in IE 7.
 */
nav ul,
nav ol {
  list-style: none;
  list-style-image: none; }

/* ==========================================================================
   Embedded content
   ========================================================================== */
/**
 * 1. Remove border when inside `a` element in IE 6/7/8/9 and Firefox 3.
 * 2. Improve image quality when scaled in IE 7.
 */
img {
  border: 0;
  /* 1 */
  -ms-interpolation-mode: bicubic;
  /* 2 */ }

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

/* ==========================================================================
   Figures
   ========================================================================== */
/**
 * Address margin not present in IE 6/7/8/9, Safari 5, and Opera 11.
 */
figure {
  margin: 0; }

/* ==========================================================================
   Forms
   ========================================================================== */
/**
 * Correct margin displayed oddly in IE 6/7.
 */
form {
  margin: 0; }

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

/**
 * 1. Correct color not being inherited in IE 6/7/8/9.
 * 2. Correct text not wrapping in Firefox 3.
 * 3. Correct alignment displayed oddly in IE 6/7.
 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  white-space: normal;
  /* 2 */
  *margin-left: -7px;
  /* 3 */ }

/**
 * 1. Correct font size not being inherited in all browsers.
 * 2. Address margins set differently in IE 6/7, Firefox 3+, Safari 5,
 *    and Chrome.
 * 3. Improve appearance and consistency in all browsers.
 */
button,
input,
select,
textarea {
  font-size: 100%;
  /* 1 */
  margin: 0;
  /* 2 */
  vertical-align: baseline;
  /* 3 */
  *vertical-align: middle;
  /* 3 */ }

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

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Chrome, Safari 5+, and IE 6+.
 * Correct `select` style inheritance in Firefox 4+ and Opera.
 */
button,
select {
  text-transform: none; }

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 * 4. Remove inner spacing in IE 7 without affecting normal text inputs.
 *    Known issue: inner spacing remains in IE 6.
 */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */
  *overflow: visible;
  /* 4 */ }

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

/**
 * 1. Address box sizing set to content-box in IE 8/9.
 * 2. Remove excess padding in IE 8/9.
 * 3. Remove excess padding in IE 7.
 *    Known issue: excess padding remains in IE 6.
 */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
  *height: 13px;
  /* 3 */
  *width: 13px;
  /* 3 */ }

/**
 * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome
 *    (include `-moz` to future-proof).
 */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  /* 2 */
  box-sizing: content-box; }

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

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

/**
 * 1. Remove default vertical scrollbar in IE 6/7/8/9.
 * 2. Improve readability and alignment in all browsers.
 */
textarea {
  overflow: auto;
  /* 1 */
  vertical-align: top;
  /* 2 */ }

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

/*
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */
/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */
html,
button,
input,
select,
textarea {
  color: #222; }

html {
  font-size: 1em;
  line-height: 1.4; }

/*
 * Remove text-shadow in selection highlight: h5bp.com/i
 * These selection rule sets have to be separate.
 * Customize the background color to match your design.
 */
::-moz-selection {
  background: #b3d4fc;
  text-shadow: none; }

::selection {
  background: #b3d4fc;
  text-shadow: none; }

/*
 * A better looking default horizontal rule
 */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0; }

/*
 * Remove the gap between images, videos, audio and canvas and the bottom of
 * their containers: h5bp.com/i/440
 */
audio,
canvas,
img,
video {
  vertical-align: middle; }

/*
 * Remove default fieldset styles.
 */
fieldset {
  border: 0;
  margin: 0;
  padding: 0; }

/*
 * Allow only vertical resizing of textareas.
 */
textarea {
  resize: vertical; }

/* ==========================================================================
   Helper classes
   ========================================================================== */
/*
 * Image replacement
 */
.ir {
  background-color: transparent;
  border: 0;
  overflow: hidden;
  /* IE 6/7 fallback */
  *text-indent: -9999px; }

.ir:before {
  content: "";
  display: block;
  width: 0;
  height: 150%; }

/*
 * Hide from both screenreaders and browsers: h5bp.com/u
 */
.hidden {
  display: none !important;
  visibility: hidden; }

/*
 * Hide only visually, but have it available for screenreaders: h5bp.com/v
 */
.visuallyhidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px; }

/*
 * Extends the .visuallyhidden class to allow the element to be focusable
 * when navigated to via the keyboard: h5bp.com/p
 */
.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto; }

/*
 * Hide visually and from screenreaders, but maintain layout
 */
.invisible {
  visibility: hidden; }

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */
.clearfix:before,
.clearfix:after {
  content: " ";
  /* 1 */
  display: table;
  /* 2 */ }

.clearfix:after {
  clear: both; }

/*
 * For IE 6/7 only
 * Include this rule to trigger hasLayout and contain floats.
 */
.clearfix {
  *zoom: 1; }

/* user defined base styles */
html,
body {
  background-color: #fff;
  font-size: 16px;
  -webkit-font-feature-settings: "kern" 1, "liga" 1, "lnum" 1, "pnum" 1, "ss02" 1;
          font-feature-settings: "kern" 1, "liga" 1, "lnum" 1, "pnum" 1, "ss02" 1;
  -webkit-font-smoothing: antialiased;
  font-weight: 300;
  font-family: "GT-America-Standard-Light", sans-serif;
  font-style: normal; }

.dots,
.loader-dots,
.mobile-progress {
  width: 5px;
  height: 5px;
  background: #fcaa17 0 0;
  position: absolute;
  top: 0;
  z-index: 0;
  opacity: 0;
  transition: opacity 0.3s ease;
  overflow-x: hidden; }
  .dots:after,
  .loader-dots:after,
  .mobile-progress:after {
    content: "";
    background: url(../images/aclu-dot.svg);
    position: absolute;
    top: 0;
    z-index: 0;
    width: calc(100% + 1px);
    height: 100%;
    background-size: 5px 5px; }
  @media (max-width: 767px) {
    .dots,
    .loader-dots,
    .mobile-progress {
      top: 60px;
      width: 2px;
      height: 2px; }
      .dots:after,
      .loader-dots:after,
      .mobile-progress:after {
        background-image: url("../images/aclu-dot-02.svg");
        background-size: 2px 2px; }
      .dots.loader-dots,
      .loader-dots.loader-dots,
      .mobile-progress.loader-dots {
        top: 0; } }

@media (max-width: 767px) {
  .mobile-progress {
    overflow: hidden; } }

.reduce-by {
  position: relative;
  float: right;
  right: 0;
  top: 0;
  width: 50px;
  height: 50px;
  background: #0055aa;
  z-index: 1;
  transition: opacity 0.3s ease, width 0.3s ease; }
  .reduce-by:after {
    display: none; }

.state-details .dots:after,
.state-details .reduce-by:after {
  z-index: 1; }

.cover {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 0px;
  height: 5px;
  background: #fff;
  display: block;
  z-index: 20; }
  @media (max-width: 767px) {
    .cover {
      height: 2px; } }

.scroll-position {
  background: #fcaa17;
  font-size: 12px;
  color: #000000;
  letter-spacing: 0;
  line-height: 15px;
  padding: 10px;
  position: fixed;
  top: 0px;
  z-index: 9;
  left: 0;
  -webkit-transform: translateX(-100%) translateY(-35px);
          transform: translateX(-100%) translateY(-35px);
  transition: -webkit-transform 0.1s ease;
  transition: transform 0.1s ease;
  transition: transform 0.1s ease, -webkit-transform 0.1s ease;
  -webkit-font-feature-settings: "lnum" 1, "tnum" 1;
          font-feature-settings: "lnum" 1, "tnum" 1;
  font-weight: 300;
  font-family: "GT-America-Standard-Light", sans-serif;
  font-style: normal; }

.has-scrolled .scroll-position {
  -webkit-transform: translateX(0%) translateY(-35px);
          transform: translateX(0%) translateY(-35px); }

.section-wrap {
  position: relative;
  overflow: hidden; }
  .section-wrap .section--text {
    position: absolute;
    width: 100%;
    left: 0;
    display: flex;
    align-items: center; }
  .section-wrap .section--tip {
    position: absolute;
    width: auto;
    left: 0; }
  .section-wrap .section:first-child {
    margin-top: 100px; }
    .section-wrap .section:first-child.section--text {
      min-height: calc(100vh - 50px);
      align-items: flex-start; }

body.loading {
  overflow: hidden; }

.loading-indicator {
  width: 100%;
  height: 100%;
  z-index: 999;
  background: #fff;
  position: fixed;
  transition: opacity 1s ease;
  opacity: 1; }
  .loading-indicator .text {
    margin-top: 100px; }
    @media (max-width: 767px) {
      .loading-indicator .text {
        margin-top: 160px; } }
  .loading-indicator .loader-dots {
    opacity: 1;
    transition: width 1s ease 0s, height 1s ease 1s;
    overflow: hidden; }
    .loading-indicator .loader-dots:after {
      position: fixed;
      top: 0;
      left: 0;
      width: 100vw;
      height: 100vh; }
    .loading-indicator .loader-dots.wide {
      width: 100%;
      height: 100%; }
  .loading-indicator .container-fluid,
  .loading-indicator .row {
    height: 100%; }
  .loading-indicator .with-ellipsis:after {
    overflow: hidden;
    display: inline-block;
    vertical-align: bottom;
    -webkit-animation: ellipsis steps(4, end) 900ms infinite;
    animation: ellipsis steps(4, end) 900ms infinite;
    content: "\2026";
    /* ascii code for the ellipsis character */
    width: 0px; }

@-webkit-keyframes ellipsis {
  to {
    width: 1.25em; } }

@keyframes ellipsis {
  to {
    width: 1.25em; } }

.loaded .dots,
.loaded .reduce-by {
  opacity: 1; }

.loaded .loading-indicator {
  opacity: 0; }

.racial-disparities-link {
  border-bottom: 1px solid #0055aa;
  display: inline-block;
  margin-top: 100px; }
  .racial-disparities-link:hover {
    text-decoration: none;
    color: #000;
    border-bottom-color: #000 !important; }

.visually-hidden {
  position: absolute;
  left: -10000px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden; }

*:focus,
a:focus {
  outline: 0; }

.tab-focus {
  background-color: #fff !important;
  outline: 1px solid #000 !important; }
  .tab-focus.long-text-container, .tab-focus.section--long_text {
    outline-offset: 15px; }

.section-text a.tab-focus,
.section-text a:focus {
  padding: 2px; }

.tip a.tab-focus,
.tip a:focus {
  padding: 2px; }

@media screen and (prefers-reduced-motion: reduce) {
  .scroll-position {
    position: fixed !important;
    bottom: 0 !important;
    top: auto !important;
    left: 0 !important;
    -webkit-transform: translateY(0) !important;
            transform: translateY(0) !important; }
  .loader-dots {
    display: none !important; } }

[data-toggle-view] {
  transition: opacity 0.3s ease 0s, visibility 0.3s ease 0s;
  opacity: 1;
  visibility: visible; }

[data-toggle-view][aria-hidden="true"] {
  transition: opacity 0.3s ease 0s, visibility 0.3s ease 0.3s;
  opacity: 0.5;
  visibility: hidden; }

@font-face {
  font-family: GT-America-Standard-Regular;
  src: url("../fonts/GT-America-Standard-Regular.woff2") format("woff2"), url("../fonts/GT-America-Standard-Regular.woff") format("woff");
  font-style: normal;
  font-weight: 400; }

@font-face {
  font-family: GT-America-Standard-Light;
  src: url("../fonts/GT-America-Standard-Light.woff2") format("woff2"), url("../fonts/GT-America-Standard-Light.woff") format("woff");
  font-style: normal;
  font-weight: 400; }

@font-face {
  font-family: CenturySchoolbook-Regular;
  src: url("../fonts/CenturySchoolbook-Regular.woff2") format("woff2"), url("../fonts/CenturySchoolbook-Regular.woff") format("woff");
  font-style: normal;
  font-weight: 400; }

@font-face {
  font-family: CenturySchoolbook-Italic;
  src: url("../fonts/CenturySchoolbook-Italic.woff2") format("woff2"), url("../fonts/CenturySchoolbook-Italic.woff") format("woff");
  font-style: normal;
  font-weight: 400; }

@font-face {
  font-family: CenturySchoolbook-Bold;
  src: url("../fonts/CenturySchoolbook-Bold.woff2") format("woff2"), url("../fonts/CenturySchoolbook-Bold.woff") format("woff");
  font-style: normal;
  font-weight: 400; }

@font-face {
  font-family: CenturySchoolbook-BoldItal;
  src: url("../fonts/CenturySchoolbook-BoldItal.woff2") format("woff2"), url("../fonts/CenturySchoolbook-BoldItal.woff") format("woff");
  font-style: normal;
  font-weight: 400; }

/* ==========================================================================
   Global button styles
   ========================================================================== */
/* ==========================================================================
   Global Input Styles
   ========================================================================== */
input, textarea, button, select {
  border-radius: 0;
  -webkit-appearance: none; }

/* ==========================================================================
   Global link styles
   ========================================================================== */
a {
  color: #fcaa17;
  text-decoration: none; }

a:hover {
  color: #fcaa17;
  text-decoration: underline; }

a:visited {
  color: #fcaa17; }

/* module or section specific styles */
.site-header {
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 21; }
  .site-header .bg {
    display: none; }
  @media (max-width: 767px) {
    .site-header.with-bg .bg {
      position: fixed;
      top: 0;
      background: #fff;
      width: 100%;
      height: 64px;
      display: block;
      left: 0;
      z-index: 0; } }
  .site-header .site-logo,
  .site-header .primary-nav {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    transition: -webkit-transform 0.3s ease;
    transition: transform 0.3s ease;
    transition: transform 0.3s ease, -webkit-transform 0.3s ease; }
  .site-header.scroll-out .site-logo,
  .site-header.scroll-out .primary-nav {
    -webkit-transform: translateY(-100%);
            transform: translateY(-100%); }
  @media (max-width: 767px) {
    .site-header {
      background: #ffffff;
      height: 60px;
      -webkit-transform: translateY(0);
              transform: translateY(0);
      transition: -webkit-transform 0.3s ease;
      transition: transform 0.3s ease;
      transition: transform 0.3s ease, -webkit-transform 0.3s ease; }
      .site-header.scroll-out {
        -webkit-transform: translateY(-100%);
                transform: translateY(-100%); } }
  .site-header .site-logo {
    background: #ffffff;
    display: block;
    height: 60px;
    left: 0;
    margin: 0;
    position: fixed;
    text-indent: -9999px;
    top: 0;
    width: 320px; }
    .site-header .site-logo h1 {
      background: url("../images/logo-large.svg") no-repeat transparent 50% 50%;
      background-size: contain;
      display: block;
      height: 60px;
      margin: 0px;
      width: 320px; }
      @media (max-width: 767px) {
        .site-header .site-logo h1 {
          height: 30px;
          margin: 15px;
          width: 76px;
          background-image: url("../images/logo-small.svg"); } }
    @media (max-width: 767px) {
      .site-header .site-logo {
        width: 106px; } }
  .site-header .primary-nav,
  .site-header .states-nav-close {
    background: #ffffff;
    list-style: none;
    margin: 0;
    max-width: calc(100% - 106px);
    padding: 0 28px 0 28px;
    position: fixed;
    right: 0;
    top: 0;
    z-index: 19;
    display: flex; }
    @media (max-width: 767px) {
      .site-header .primary-nav,
      .site-header .states-nav-close {
        padding: 0 14px; } }
    .site-header .primary-nav li,
    .site-header .states-nav-close li {
      display: inline-block;
      line-height: 60px; }
      @media (max-width: 767px) {
        .site-header .primary-nav li.download-report,
        .site-header .states-nav-close li.download-report {
          display: none; } }
      .site-header .primary-nav li.first,
      .site-header .states-nav-close li.first {
        margin-right: 120px; }
        @media (max-width: 767px) {
          .site-header .primary-nav li.first,
          .site-header .states-nav-close li.first {
            margin-right: 40px; } }
      .site-header .primary-nav li a,
      .site-header .states-nav-close li a {
        color: #000000;
        color: #000000;
        font-size: 20px;
        letter-spacing: 0;
        line-height: 25px;
        opacity: 1;
        transition: opacity 0.3s ease;
        font-weight: 300;
        font-family: "GT-America-Standard-Light", sans-serif;
        font-style: normal; }
        .site-header .primary-nav li a:hover,
        .site-header .states-nav-close li a:hover {
          color: #0055aa;
          text-decoration: none; }
        @media (max-width: 820px) {
          .site-header .primary-nav li a,
          .site-header .states-nav-close li a {
            font-size: 18px; } }
  .site-header .states-nav-close {
    pointer-events: none;
    transition: opacity 0.3s ease;
    visibility: hidden; }

.states-nav {
  background: #ffffff;
  display: flex;
  flex-direction: column;
  height: 100%;
  left: 0;
  opacity: 0;
  overflow: auto;
  pointer-events: none;
  position: fixed;
  top: 0;
  transition: opacity 0.3s ease;
  width: 100%;
  z-index: 20;
  -webkit-overflow-scrolling: touch; }
  .states-nav .links {
    margin: auto;
    padding: 100px 50px;
    width: 100%; }
    @media (max-width: 767px) {
      .states-nav .links {
        padding: 100px 15px; } }
  .states-nav ul {
    list-style: none;
    margin: 0;
    padding: 0;
    -webkit-columns: 4;
            columns: 4; }
    @media (max-width: 1200px) {
      .states-nav ul {
        -webkit-columns: 3;
                columns: 3; } }
    @media (max-width: 900px) {
      .states-nav ul {
        -webkit-columns: 2;
                columns: 2; } }
    .states-nav ul li {
      margin-bottom: 20px; }
      .states-nav ul li a {
        color: #0055aa;
        font-size: 20px;
        letter-spacing: 0;
        line-height: 25px;
        font-weight: 300;
        font-family: "GT-America-Standard-Light", sans-serif;
        font-style: normal; }
        .states-nav ul li a:hover {
          color: #0055aa; }
        .states-nav ul li a.disabled {
          color: #000; }
          .states-nav ul li a.disabled:hover {
            color: #000; }
        .states-nav ul li a span {
          display: none; }
        @media (min-width: 901px) {
          .states-nav ul li a {
            -webkit-columns: 2;
                    columns: 2; }
            .states-nav ul li a span {
              display: inline;
              visibility: hidden; }
            .states-nav ul li a:hover {
              text-decoration: none; }
              .states-nav ul li a:hover span {
                visibility: visible; } }

.show-states-nav {
  overflow: hidden; }
  .show-states-nav.state-details.status--published .primary-nav a,
  .show-states-nav .site-header .primary-nav a {
    opacity: 0;
    pointer-events: none; }
  .show-states-nav .states-nav-close {
    opacity: 1;
    pointer-events: auto;
    visibility: visible; }

.state-details.status--published .primary-nav {
  width: 50%;
  padding-left: 14px; }
  .state-details.status--published .primary-nav .download-report {
    margin-right: auto; }
  @media (max-width: 1200px) {
    .state-details.status--published .primary-nav .first {
      margin-right: 80px; }
    .state-details.status--published .primary-nav .download-report {
      margin-right: auto; } }
  @media (max-width: 992px) {
    .state-details.status--published .primary-nav {
      justify-content: space-between; }
      .state-details.status--published .primary-nav .first,
      .state-details.status--published .primary-nav .download-report {
        margin-right: 0; } }
  @media (max-width: 767px) {
    .state-details.status--published .primary-nav {
      width: auto; }
      .state-details.status--published .primary-nav li.first {
        margin-right: 40px; } }

.sticky-dots {
  min-height: 100vh;
  position: absolute;
  width: 50%; }

.dots-will-stick {
  align-self: flex-start; }

.sticky-parent {
  min-height: 50vh;
  overflow: visible; }

.state-details .row {
  position: relative; }

.state-details .state-info-modal-link,
.state-details .intro-graph a {
  color: #0055aa;
  border-bottom: 1px solid #0055aa; }
  .state-details .state-info-modal-link:hover,
  .state-details .intro-graph a:hover {
    color: #000;
    border-bottom-color: #000;
    text-decoration: none; }

.state-details .section-wrap {
  overflow: visible;
  bottom: 0; }

@media (max-width: 767px) {
  .state-details .state-content {
    margin-top: 0;
    transition: margin-top 0.3s ease; } }

.state-details .visual {
  position: relative;
  padding-left: 0; }
  @media (max-width: 767px) {
    .state-details .visual {
      height: 60vh;
      min-height: 360px;
      overflow: hidden;
      transition: height 0.3s ease;
      position: static; }
      .state-details .visual .sticky-parent {
        transition: top 0.3s ease, height 0.3s ease;
        overflow: hidden;
        top: 0px;
        position: relative;
        background: #fff;
        z-index: 19; }
        .state-details .visual .sticky-parent .section-wrap {
          opacity: 1;
          transition: opacity 0.3s ease 0.3s; }
          .state-details .visual .sticky-parent .section-wrap .section--tip {
            display: none; } }
  .state-details .visual .sticky-parent {
    height: 100%; }
    @media all and (-ms-high-contrast: none) {
      .state-details .visual .sticky-parent {
        max-width: calc(50% - 15px); }
        .state-details .visual .sticky-parent .js-is-stuck {
          top: auto; } }
    @media all and (-ms-high-contrast: none) {
      .state-details .visual .sticky-parent.js-stickybit-parent .dots {
        max-width: calc(100% - 15px); }
        .state-details .visual .sticky-parent.js-stickybit-parent .dots.js-is-sticky {
          max-width: inherit; } }
  @media (max-width: 767px) {
    .state-details .visual {
      padding-right: 0;
      margin-top: 60px; } }

.state-details .section-wrap {
  left: 0;
  position: absolute;
  top: 0;
  width: 100%; }

.state-details .cta {
  background: #fcaa17;
  color: #000000;
  padding: 30px 15px;
  box-sizing: border-box; }
  @media (max-width: 992px) {
    .state-details .cta {
      min-height: 800px; } }
  @media (max-width: 767px) {
    .state-details .cta {
      height: auto; } }
  .state-details .cta .container-fluid {
    height: 100%; }
  .state-details .cta h4 {
    font-size: 80px;
    letter-spacing: -0.017em;
    line-height: 85px;
    margin: 0 0 30px 0;
    -webkit-font-feature-settings: "ss02" 1, "lnum" 1, "pnum" 1, "liga" 1, "kern" 1;
            font-feature-settings: "ss02" 1, "lnum" 1, "pnum" 1, "liga" 1, "kern" 1;
    font-weight: 400;
    font-family: "GT-America-Standard-Regular", sans-serif;
    font-style: normal; }
    @media (max-width: 767px) {
      .state-details .cta h4 {
        font-size: 50px;
        line-height: 50px; } }
    @media (max-width: 400px) {
      .state-details .cta h4 {
        font-size: 40px;
        line-height: 40px; } }
  .state-details .cta p {
    color: #ffffff;
    font-size: 50px;
    letter-spacing: 0;
    line-height: 55px;
    margin: 0;
    font-weight: 400;
    font-family: "CenturySchoolbook-Regular", serif;
    font-style: normal; }
    @media (max-width: 767px) {
      .state-details .cta p {
        font-size: 35px;
        line-height: 40px; } }
  .state-details .cta .action-links {
    text-align: right; }
    @media (max-width: 767px) {
      .state-details .cta .action-links {
        margin-top: 40px; } }
    .state-details .cta .action-links a {
      border-bottom: 2px solid #000000;
      color: #000000;
      display: inline-block;
      font-size: 80px;
      letter-spacing: -0.017em;
      line-height: 85px;
      margin-bottom: 20px;
      -webkit-font-feature-settings: "ss02" 1, "lnum" 1, "pnum" 1, "liga" 1, "kern" 1;
              font-feature-settings: "ss02" 1, "lnum" 1, "pnum" 1, "liga" 1, "kern" 1;
      font-weight: 300;
      font-family: "GT-America-Standard-Light", sans-serif;
      font-style: normal; }
      .state-details .cta .action-links a:hover {
        text-decoration: none; }
      @media (max-width: 767px) {
        .state-details .cta .action-links a {
          font-size: 50px;
          line-height: 50px; } }

.state-details .make-your-own {
  background: #000000;
  padding: 40px 0 60px 0; }
  .state-details .make-your-own a {
    border-bottom: 2px solid #ffffff;
    color: #ffffff;
    font-size: 80px;
    letter-spacing: -0.017em;
    line-height: 85px;
    text-decoration: none;
    font-weight: 300;
    font-family: "GT-America-Standard-Light", sans-serif;
    font-style: normal; }
    .state-details .make-your-own a:hover {
      text-decoration: none; }
    @media (max-width: 992px) {
      .state-details .make-your-own a {
        font-size: 50px;
        line-height: 65px; } }
    @media (max-width: 767px) {
      .state-details .make-your-own a {
        font-size: 40px;
        line-height: 55px; } }
    .state-details .make-your-own a.tab-focus {
      color: #000 !important; }

.last-slide {
  display: flex;
  height: 100vh;
  min-height: 100vh;
  flex-direction: column; }
  .last-slide .cta {
    flex: 1 0 0;
    height: 100%; }

.state-info-intro {
  box-sizing: border-box;
  min-height: 100vh;
  padding-top: 100px;
  padding-right: 15px; }
  .state-info-intro .intro-graph {
    max-width: 500px; }
  .state-info-intro .sb-form {
    margin-top: 50px; }
  @media (max-width: 767px) {
    .state-info-intro {
      min-height: 70vh;
      padding-top: 10px;
      padding-right: 0px; } }
  .state-info-intro .action-link {
    vertical-align: middle; }
    .state-info-intro .action-link a {
      color: #0055aa;
      font-size: 35px;
      letter-spacing: -0.01em;
      line-height: 35px;
      text-decoration: none;
      font-weight: 300;
      font-family: "GT-America-Standard-Light", sans-serif;
      font-style: normal; }
      .state-info-intro .action-link a:focus, .state-info-intro .action-link a:active, .state-info-intro .action-link a:visited {
        outline: 0; }
      .state-info-intro .action-link a .inline-dot {
        border-radius: 50%;
        display: inline-block;
        height: 25px;
        margin-right: 15px;
        margin-top: 6px;
        vertical-align: top;
        width: 25px;
        position: static;
        background-color: #0055aa; }
      @media (max-width: 767px) {
        .state-info-intro .action-link a {
          font-size: 25px;
          line-height: 25px; }
          .state-info-intro .action-link a .inline-dot {
            margin-top: 1px; } }
  .state-info-intro h2 {
    color: #000000;
    font-size: 80px;
    letter-spacing: -0.017em;
    line-height: 85px;
    margin: 0;
    font-weight: 400;
    font-family: "GT-America-Standard-Regular", sans-serif;
    font-style: normal; }
    @media (max-width: 767px) {
      .state-info-intro h2 {
        font-size: 50px;
        line-height: 50px; } }
  .state-info-intro p {
    color: #000000;
    font-size: 22px;
    letter-spacing: 0.01em;
    word-spacing: -0.08em;
    line-height: 28px;
    font-weight: 400;
    font-family: "CenturySchoolbook-Regular", serif;
    font-style: normal; }

.reforms-wrap.fixed {
  position: fixed;
  bottom: 0;
  width: inherit; }

.reforms-wrap.absolute {
  position: absolute;
  bottom: 0;
  width: inherit; }

.reforms {
  height: 100%; }
  .reforms .sticky-parent {
    position: relative; }
  .reforms .title-spacer {
    display: block;
    height: 89px; }
  .reforms .title {
    background: #ffffff;
    border-bottom: 1px solid #000000;
    border-top: 1px solid #000000;
    color: #000000;
    font-size: 30px;
    letter-spacing: -0.02em;
    line-height: 35px;
    padding: 26px 15px;
    z-index: 10;
    position: absolute;
    width: inherit;
    top: 0;
    font-weight: 300;
    font-family: "GT-America-Standard-Light", sans-serif;
    font-style: normal; }
    .reforms .title.fixed {
      position: fixed;
      top: 60px;
      width: inherit; }
    .reforms .title.absolute {
      position: absolute;
      top: auto;
      bottom: 0; }
    @media all and (-ms-high-contrast: none) {
      .reforms .title.js-is-sticky {
        width: inherit; } }
    .reforms .title span {
      color: #0055aa;
      float: right;
      -webkit-font-feature-settings: "lnum" 1, "tnum" 1;
              font-feature-settings: "lnum" 1, "tnum" 1;
      letter-spacing: 0; }
    @media (max-width: 767px) {
      .reforms .title {
        font-size: 25px;
        line-height: 30px; } }

.selectable-reform {
  margin-bottom: 1px;
  padding: 20px;
  transition: background 0.3s ease; }
  .selectable-reform ul {
    list-style: none;
    margin: 5px 0 0 40px;
    padding: 0;
    font-size: 15px;
    color: #000000;
    letter-spacing: 0;
    line-height: 20px;
    font-weight: 400;
    font-family: "GT-America-Standard-Regular", sans-serif;
    font-style: normal; }
    .selectable-reform ul li {
      position: relative;
      padding-left: 13px;
      z-index: 1; }
      .selectable-reform ul li:before {
        content: "– ";
        position: absolute;
        left: 0px; }
  .selectable-reform h3 {
    color: #000000;
    font-size: 30px;
    letter-spacing: -0.02em;
    line-height: 35px;
    margin: 0;
    position: relative;
    font-weight: 300;
    font-family: "GT-America-Standard-Light", sans-serif;
    font-style: normal; }
    .selectable-reform h3 .reform-name {
      display: inline-block; }
      @media (max-width: 500px) {
        .selectable-reform h3 .reform-name {
          max-width: 180px; } }
      @media (max-width: 400px) {
        .selectable-reform h3 .reform-name {
          max-width: 175px; } }
    .selectable-reform h3 .reform-count {
      display: none;
      float: right;
      -webkit-font-feature-settings: "lnum" 1, "tnum" 1;
              font-feature-settings: "lnum" 1, "tnum" 1;
      letter-spacing: 0; }
      @media (max-width: 500px) {
        .selectable-reform h3 .reform-count {
          position: absolute;
          top: 0;
          right: 0; } }
    .selectable-reform h3:before {
      border: 1px solid #130f54;
      border-radius: 50%;
      content: "";
      display: inline-block;
      height: 25px;
      margin-right: 15px;
      margin-top: 5px;
      vertical-align: top;
      width: 25px; }
    @media (max-width: 767px) {
      .selectable-reform h3 {
        font-size: 25px;
        line-height: 30px; } }
    @media (max-width: 399px) {
      .selectable-reform h3 {
        font-size: 22px; }
        .selectable-reform h3:before {
          margin-top: 3px; } }
  .selectable-reform.selected {
    background: #0055aa;
    color: #fff; }
    .selectable-reform.selected ul {
      color: #fff; }
    .selectable-reform.selected h3 {
      color: #fff; }
      .selectable-reform.selected h3:before {
        background: url("../images/checkmark-white.svg") no-repeat #130f54 50% 50%; }
      .selectable-reform.selected h3 .reform-count {
        display: inline; }
    .selectable-reform.selected.tab-focus h3,
    .selectable-reform.selected.tab-focus ul {
      color: #000 !important; }

.status--coming-soon .state-info-intro h2 {
  display: none; }

.sb-form label {
  font-size: 20px;
  color: #000000;
  letter-spacing: 0;
  line-height: 25px;
  font-weight: 300;
  font-family: "GT-America-Standard-Light", sans-serif;
  font-style: normal; }

.sb-form .input-wrap {
  margin-bottom: 27px;
  width: 100%; }

.sb-form .submit-wrap {
  display: flex;
  justify-content: flex-end; }

.sb-form .half-inputs .label-wrap {
  width: 100%; }
  .sb-form .half-inputs .label-wrap:first-child {
    margin-right: 50px; }

.sb-form .half-inputs {
  display: flex;
  justify-content: space-between; }
  @media (max-width: 767px) {
    .sb-form .half-inputs {
      display: block; }
      .sb-form .half-inputs .label-wrap:first-child {
        margin-bottom: 27px;
        margin-right: 0; }
      .sb-form .half-inputs input {
        display: block;
        width: 100%; } }

.sb-form input,
.sb-form button {
  background: transparent;
  border: 0;
  color: #000000;
  font-size: 20px;
  letter-spacing: -0.01em;
  line-height: 35px;
  margin: 0;
  padding: 6px;
  font-weight: 300;
  font-family: "GT-America-Standard-Light", sans-serif;
  font-style: normal;
  -webkit-appearance: none; }
  .sb-form input:focus,
  .sb-form button:focus {
    outline: 0; }
  .sb-form input::-webkit-input-placeholder,
  .sb-form button::-webkit-input-placeholder {
    color: #000000; }
  .sb-form input:-ms-input-placeholder,
  .sb-form button:-ms-input-placeholder {
    color: #000000; }
  .sb-form input::-ms-input-placeholder,
  .sb-form button::-ms-input-placeholder {
    color: #000000; }
  .sb-form input::placeholder,
  .sb-form button::placeholder {
    color: #000000; }
  @media (max-width: 767px) {
    .sb-form input,
    .sb-form button {
      font-size: 25px;
      line-height: 30px; } }

.sb-form button {
  background: #0055aa;
  color: #fff;
  font-size: 20px;
  padding: 17px 20px;
  letter-spacing: 0;
  line-height: 25px; }
  .sb-form button:hover {
    background: #000; }
  .sb-form button.tab-focus {
    color: #000 !important; }

.sb-form .submit-wrap.full button {
  display: block;
  width: 100%; }

.sb-form input {
  /* Rectangle 9: */
  border: 1px solid #979797;
  width: 100%;
  flex: 1; }

.sb-form .consent {
  color: #767676;
  font-size: 15px;
  letter-spacing: 0;
  line-height: 20px;
  font-weight: 400;
  font-family: "GT-America-Standard-Regular", sans-serif;
  font-style: normal; }
  .sb-form .consent a {
    color: #767676;
    text-decoration: underline; }
    .sb-form .consent a:hover {
      color: #fcaa17; }

.state-details .mobile-progress {
  display: none; }

@media (max-width: 767px) {
  .state-details .section-wrap .section:first-child {
    margin-top: 14px; }
  .state-details.has-scrolled .mobile-progress {
    position: absolute;
    top: 0px;
    -webkit-transform: translateY(60px);
            transform: translateY(60px);
    z-index: 12;
    width: 100%;
    left: 0;
    height: 3px;
    display: block;
    background: #fcaa17;
    opacity: 1; }
    .state-details.has-scrolled .mobile-progress .reduce-by {
      z-index: 0;
      width: 0; }
  .state-details .visual .sticky-parent {
    z-index: 10;
    position: fixed;
    top: 60px;
    width: 100%; }
  .state-details .dots,
  .state-details .section-wrap {
    position: absolute !important;
    -webkit-transform: translateZ(0);
            transform: translateZ(0);
    top: 0px !important;
    left: 0;
    width: 100%;
    z-index: 0; }
  .state-details .state-content {
    position: relative;
    z-index: 11;
    background: #fff; }
  .state-details .last-slide {
    position: relative;
    z-index: 11; } }

.modal {
  background: #ffffff;
  left: 0;
  opacity: 0;
  position: fixed;
  top: 0;
  transition: opacity 0.3s ease;
  width: 0;
  height: 0;
  z-index: -100;
  overflow: hidden;
  -webkit-overflow-scrolling: touch;
  visibility: hidden; }
  .modal .text {
    margin-bottom: 100px; }
  .modal .close-link {
    color: #000000;
    background: #fff;
    font-size: 20px;
    letter-spacing: 0;
    line-height: 25px;
    top: 0;
    right: 0;
    position: absolute;
    padding: 16px 28px;
    z-index: 22;
    font-weight: 300;
    font-family: "GT-America-Standard-Light", sans-serif;
    font-style: normal; }
    .modal .close-link:hover {
      color: #0055aa;
      text-decoration: none; }
    @media (max-width: 767px) {
      .modal .close-link {
        font-size: 18px;
        padding: 17px 14px; } }
  .modal .modal-heading {
    color: #000000;
    font-size: 50px;
    letter-spacing: 0;
    line-height: 55px;
    font-weight: 300;
    font-family: "GT-America-Standard-Light", sans-serif;
    font-style: normal; }
  .modal .container,
  .modal .row,
  .modal .content {
    height: 100%; }
  .modal.active {
    opacity: 1;
    z-index: 29;
    width: 100%;
    height: 100%;
    visibility: visible;
    pointer-events: auto; }
    .modal.active .content {
      width: 100%;
      height: 100%;
      overflow: auto; }
    .modal.active.states-nav .content {
      display: flex; }

.show-modal {
  overflow: hidden; }

.fixed-bar-wrap {
  height: 75px; }

.fixed-bar {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background: #fff;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }
  .fixed-bar .content {
    margin: 0 15px;
    padding: 15px 0 25px 0;
    border-top: 1px solid #000;
    width: auto !important; }
    @media (max-width: 767px) {
      .fixed-bar .content {
        margin: 0; } }
  .fixed-bar a {
    font-size: 50px;
    line-height: 50px;
    color: #0055aa;
    letter-spacing: -0.04em;
    border-bottom: 2px solid #0055aa;
    font-weight: 300;
    font-family: "GT-America-Standard-Light", sans-serif;
    font-style: normal; }
    .fixed-bar a:hover {
      text-decoration: none;
      color: #000;
      border-bottom-color: #000; }
    @media (max-width: 767px) {
      .fixed-bar a {
        font-size: 25px;
        line-height: 25px; } }

.section--text {
  color: #000000;
  font-size: 80px;
  letter-spacing: -0.017em;
  line-height: 85px;
  padding-left: 15px;
  z-index: 2;
  font-weight: 400;
  font-family: "GT-America-Standard-Regular", sans-serif;
  font-style: normal; }
  .section--text .text-container {
    max-width: 900px; }
  .section--text .text {
    width: 100%; }
  @media (max-width: 992px) {
    .section--text {
      font-size: 60px;
      line-height: 60px; } }
  @media (max-width: 767px) {
    .section--text {
      font-size: 42px;
      line-height: 44px;
      padding-left: 5px; } }
  .section--text a {
    color: #0055aa;
    position: relative;
    box-shadow: inset 0 -4px #0055aa; }
    .section--text a:hover {
      text-decoration: none; }
    .section--text a:hover {
      color: #000;
      box-shadow: inset 0 -4px #000; }
      .section--text a:hover:after {
        background: #000; }

.inline-dot {
  background: #fcaa17;
  border-radius: 80px;
  display: inline-block;
  height: 65px;
  width: 65px;
  position: relative;
  top: 5px; }
  @media (max-width: 992px) {
    .inline-dot {
      height: 45px;
      width: 45px; } }
  @media (max-width: 767px) {
    .inline-dot {
      height: 38px;
      width: 38px; } }

.home .section--text:last-child {
  padding-bottom: 30px;
  height: 100vh;
  align-items: flex-end; }

.long-text-container {
  max-width: 700px;
  margin: 0 auto; }

.section--long_text {
  font-weight: 400;
  font-family: "CenturySchoolbook-Regular", serif;
  font-style: normal;
  margin-bottom: 200px; }
  .section--long_text .heading {
    color: #000000;
    font-size: 50px;
    letter-spacing: 0;
    line-height: 55px;
    font-weight: 400;
    font-family: "CenturySchoolbook-Regular", serif;
    font-style: normal; }
    @media (max-width: 767px) {
      .section--long_text .heading {
        font-size: 35px;
        letter-spacing: 0;
        line-height: 40px; } }
  .section--long_text a {
    color: #0055aa; }
    .section--long_text a:hover {
      border-bottom: 1px solid #0055aa;
      text-decoration: none; }
  .section--long_text p, .section--long_text li {
    color: #000000;
    font-size: 22px;
    letter-spacing: 0.01em;
    word-spacing: -0.06em;
    line-height: 28px; }
  .section--long_text li {
    margin: 0.75em 0; }
  .section--long_text .headline {
    font-size: 20px;
    letter-spacing: 0;
    text-transform: uppercase;
    color: #130f54;
    font-weight: 300;
    font-family: "GT-America-Standard-Light", sans-serif;
    font-style: normal;
    margin-top: 60px; }
    .section--long_text .headline + h3 {
      margin-top: 0; }
  .section--long_text aside {
    background: #ffffff;
    box-sizing: border-box;
    float: left;
    margin-left: -140px;
    max-width: 400px;
    padding: 20px 50px 20px 0; }
    @media (max-width: 767px) {
      .section--long_text aside {
        float: none;
        margin-left: 0;
        max-width: 100%;
        padding: 0; } }
    .section--long_text aside h4 {
      color: #130f54;
      font-size: 30px;
      letter-spacing: -0.01em;
      line-height: 35px;
      margin: 0;
      font-weight: 300;
      font-family: "GT-America-Standard-Light", sans-serif;
      font-style: normal; }
    .section--long_text aside p {
      color: #130f54;
      font-size: 20px;
      letter-spacing: 0;
      line-height: 25px;
      font-weight: 300;
      font-family: "GT-America-Standard-Light", sans-serif;
      font-style: normal; }

.modal .section--long_text {
  margin-bottom: 0; }

.state-info-modal .section--long_text {
  padding: 50px 0; }
  .state-info-modal .section--long_text h3 {
    font-weight: 400;
    font-family: "GT-America-Standard-Regular", sans-serif;
    font-style: normal; }

.section--tip {
  left: 20px; }
  .section--tip .background {
    background: #130f54 0 0;
    display: block;
    left: 50%;
    position: absolute;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    z-index: 0; }
    .section--tip .background.background--circle {
      border-radius: 50%;
      top: 100%; }
  .section--tip .tip {
    background: #000000;
    box-sizing: border-box;
    color: #ffffff;
    font-size: 13px;
    line-height: 1.4;
    max-width: 250px;
    padding: 10px;
    position: relative;
    text-align: center;
    z-index: 8;
    opacity: 0;
    -webkit-transform: translateY(50px);
            transform: translateY(50px);
    transition: opacity 0.3s ease 0.25s, -webkit-transform 0.3s ease 0.25s;
    transition: opacity 0.3s ease 0.25s, transform 0.3s ease 0.25s;
    transition: opacity 0.3s ease 0.25s, transform 0.3s ease 0.25s, -webkit-transform 0.3s ease 0.25s;
    font-weight: 300;
    font-family: "GT-America-Standard-Light", sans-serif;
    font-style: normal; }
    .section--tip .tip.in-viewport {
      opacity: 1;
      -webkit-transform: translateY(0px);
              transform: translateY(0px); }
    .section--tip .tip:after {
      border-left: 10px solid transparent;
      border-right: 10px solid transparent;
      border-top: 10px solid #000000;
      bottom: -10px;
      content: "";
      height: 0;
      left: 50%;
      position: absolute;
      -webkit-transform: translateX(-10px);
              transform: translateX(-10px);
      width: 0; }

.section--image {
  margin: 100px 0 15px 0; }
  .section--image img {
    height: auto;
    width: 100%; }

.section--color-change {
  bottom: 0;
  left: 0;
  position: absolute;
  width: 100%;
  border-top: 10px solid #fff; }
  .section--color-change .section--text,
  .section--color-change .section--text:first-child {
    margin-top: 20px; }

.error-404 {
  background: #0055aa;
  overflow: auto; }
  .error-404 .dots.full {
    position: fixed;
    height: 100% !important;
    top: 0;
    background: #0055aa; }
    .error-404 .dots.full:after {
      position: fixed;
      background-image: url("../images/aclu-dot-404.svg"); }
  .error-404 .text--404 {
    color: #fff;
    min-height: calc(100vh - 100px) !important; }
    .error-404 .text--404 p:first-child {
      margin-top: 0; }
    .error-404 .text--404 a {
      color: #fcaa17;
      box-shadow: inset 0 -4px #fcaa17; }
      .error-404 .text--404 a:hover {
        color: #fff;
        box-shadow: inset 0 -4px #fff; }
  .error-404 .section-wrap {
    height: 100%; }

/* global media specific */
/* ==========================================================================
   Print styles.
   Inlined to avoid required HTTP connection: h5bp.com/r
   ========================================================================== */
@media print {
  * {
    background: transparent !important;
    color: #000 !important;
    /* Black prints faster: h5bp.com/s */
    box-shadow: none !important;
    text-shadow: none !important; }
  a,
  a:visited {
    text-decoration: underline; }
  a[href]:after {
    content: " (" attr(href) ")"; }
  abbr[title]:after {
    content: " (" attr(title) ")"; }
  /*
     * Don't show links for images, or javascript/internal links
     */
  .ir a:after,
  a[href^="javascript:"]:after,
  a[href^="#"]:after {
    content: ""; }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid; }
  thead {
    display: table-header-group;
    /* h5bp.com/t */ }
  tr,
  img {
    page-break-inside: avoid; }
  img {
    max-width: 100% !important; }
  @page {
    margin: 0.5cm; }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3; }
  h2,
  h3 {
    page-break-after: avoid; } }
