*,
*::before,
*::after {
  box-sizing: border-box;
}
html {
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
body {
  margin: 0;
  font-family: helvetica, arial, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  text-align: left;
  background-color: #333;
}
footer, header, main, nav {
  display: block;
}

/* Use CSS grid to achieve full-height */
.master-container {
  display: grid;
  grid-template-rows: auto 1fr auto;
  height: 100vh;
  position: relative;
}

.container,
.container-fluid,
.container-sm,
.container-md,
.container-lg,
.container-xl {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 576px) {
  .container, .container-sm {
    max-width: 540px;
  }
}

@media (min-width: 768px) {
  .container, .container-sm, .container-md {
    max-width: 720px;
  }
}

@media (min-width: 992px) {
  .container, .container-sm, .container-md, .container-lg {
    max-width: 960px;
  }
}

@media (min-width: 1200px) {
  .container, .container-sm, .container-md, .container-lg, .container-xl {
    max-width: 1140px;
  }
}

.row {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  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%;
  padding-right: 15px;
  padding-left: 15px;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@media (min-width: 576px) {
  .col-sm {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%;
  }
  .col-sm-auto {
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-sm-1 {
    -ms-flex: 0 0 8.333333%;
    flex: 0 0 8.333333%;
    max-width: 8.333333%;
  }
  .col-sm-2 {
    -ms-flex: 0 0 16.666667%;
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }
  .col-sm-3 {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-sm-4 {
    -ms-flex: 0 0 33.333333%;
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  .col-sm-5 {
    -ms-flex: 0 0 41.666667%;
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
  }
  .col-sm-6 {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-sm-7 {
    -ms-flex: 0 0 58.333333%;
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
  }
  .col-sm-8 {
    -ms-flex: 0 0 66.666667%;
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
  }
  .col-sm-9 {
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-sm-10 {
    -ms-flex: 0 0 83.333333%;
    flex: 0 0 83.333333%;
    max-width: 83.333333%;
  }
  .col-sm-11 {
    -ms-flex: 0 0 91.666667%;
    flex: 0 0 91.666667%;
    max-width: 91.666667%;
  }
  .col-sm-12 {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
}
@media (min-width: 768px) {
  .col-md {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%;
  }
  .col-md-auto {
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-md-1 {
    -ms-flex: 0 0 8.333333%;
    flex: 0 0 8.333333%;
    max-width: 8.333333%;
  }
  .col-md-2 {
    -ms-flex: 0 0 16.666667%;
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }
  .col-md-3 {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-md-4 {
    -ms-flex: 0 0 33.333333%;
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  .col-md-5 {
    -ms-flex: 0 0 41.666667%;
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
  }
  .col-md-6 {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-md-7 {
    -ms-flex: 0 0 58.333333%;
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
  }
  .col-md-8 {
    -ms-flex: 0 0 66.666667%;
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
  }
  .col-md-9 {
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-md-10 {
    -ms-flex: 0 0 83.333333%;
    flex: 0 0 83.333333%;
    max-width: 83.333333%;
  }
  .col-md-11 {
    -ms-flex: 0 0 91.666667%;
    flex: 0 0 91.666667%;
    max-width: 91.666667%;
  }
  .col-md-12 {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
}

@media (min-width: 992px) {
  .col-lg {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%;
  }
  .col-lg-auto {
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-lg-1 {
    -ms-flex: 0 0 8.333333%;
    flex: 0 0 8.333333%;
    max-width: 8.333333%;
  }
  .col-lg-2 {
    -ms-flex: 0 0 16.666667%;
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }
  .col-lg-3 {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-lg-4 {
    -ms-flex: 0 0 33.333333%;
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  .col-lg-5 {
    -ms-flex: 0 0 41.666667%;
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
  }
  .col-lg-6 {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-lg-7 {
    -ms-flex: 0 0 58.333333%;
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
  }
  .col-lg-8 {
    -ms-flex: 0 0 66.666667%;
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
  }
  .col-lg-9 {
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-lg-10 {
    -ms-flex: 0 0 83.333333%;
    flex: 0 0 83.333333%;
    max-width: 83.333333%;
  }
  .col-lg-11 {
    -ms-flex: 0 0 91.666667%;
    flex: 0 0 91.666667%;
    max-width: 91.666667%;
  }
  .col-lg-12 {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
}

@media (min-width: 1200px) {
  .col-xl {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%;
  }
  .col-xl-auto {
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-xl-1 {
    -ms-flex: 0 0 8.333333%;
    flex: 0 0 8.333333%;
    max-width: 8.333333%;
  }
  .col-xl-2 {
    -ms-flex: 0 0 16.666667%;
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }
  .col-xl-3 {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-xl-4 {
    -ms-flex: 0 0 33.333333%;
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  .col-xl-5 {
    -ms-flex: 0 0 41.666667%;
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
  }
  .col-xl-6 {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-xl-7 {
    -ms-flex: 0 0 58.333333%;
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
  }
  .col-xl-8 {
    -ms-flex: 0 0 66.666667%;
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
  }
  .col-xl-9 {
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-xl-10 {
    -ms-flex: 0 0 83.333333%;
    flex: 0 0 83.333333%;
    max-width: 83.333333%;
  }
  .col-xl-11 {
    -ms-flex: 0 0 91.666667%;
    flex: 0 0 91.666667%;
    max-width: 91.666667%;
  }
  .col-xl-12 {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
}

/* MARGINS AND PADDING */
.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;
}
@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;
  }
}





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

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

.justify-content-center {
  -ms-flex-pack: center !important;
  justify-content: center !important;
}

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

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

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

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

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

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

.align-items-stretch {
  -ms-flex-align: stretch !important;
  align-items: stretch !important;
}
ol,
ul,
dl,
p {
  margin-top: 0;
  margin-bottom: 1rem;
}
h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: 0.5rem;
  line-height: 1.2;
}
img {
  vertical-align: middle;
  border-style: none;
}

a {
  color: #009cba;
}
a:visited {
  color: #00b6e6;
}
a:hover {
  color: #666;
}
.text-dark,
a.text-dark {
  color: #212529;
}
a.text-dark:hover {
  color: #666;
}

main.container {
  border-top: 1px solid #fff;
  border-bottom: 1px solid #fff;
  background: #fff;
}
@media (min-width: 576px) {
  main.container {
    border-bottom-left-radius: 0.25rem;
    border-bottom-right-radius: 0.25rem;
  }
}

main h2 {
  font-weight: 900;
  letter-spacing: -0.05rem;
  font-size: 1.13rem;
  margin-bottom: 0;
}


.logged_in .d-members-none {
  display: none;
}

p.iconed {
  padding: 0 0 0 22px;
  min-height: 17px;
  background-position: 0 1px;
  background-repeat: no-repeat;
}
.text-muted,
a:visited.text-muted,
.minor,
.minor a {
  color: #777;
}
a.text-muted:hover {
  color: #333;
}
.minor a:hover {
  color: #00b6e6;
}

/* Breadcrumbs */
#main h1,
div.title {
  margin: 0.2rem 0 0.5rem 0;
  padding: 0;
  font-weight: normal;
  font-size: 18px;
  letter-spacing: -0.05rem;
}
#main h1 {
  color: #000;
  font-size: 23px;
  font-weight: bold;
}
div.title a {
  color: #afafaf;
  text-decoration: none;
}
div.title a:hover,
div.title a:hover span {
  color: #00b6e6;
  text-decoration: underline;
}
div.title h1 {
  display: inline;
  margin: 0;
  vertical-align: -2px;
}
div.title span {
  color: #afafaf;
  padding: 0 5px;
  font-size: 12px;
  vertical-align: 2px;
}
div.title span.normal {
  padding: 0;
  vertical-align: baseline;
  font-size: 18px;
}

/* Forms */
input[type="text"],
input[type="password"],
textarea {
  background: #fff;
  box-shadow: inset 4px 4px 7px rgba(0,0,0,0.05);
  border: 1px solid #d9d9d9;
  padding: 4px 3px;
  border-radius: 0.25rem;
}


/* Pagination */
.pagination {
  display: block;
  clear: both;
  margin: 0;
  padding-bottom: 0.25rem;
  padding-top: 1rem;
}

.pagination a,
.pagination span {
  display: inline-block;
  padding: 0.25rem 0.6rem 0.1rem 0.6rem;
  margin-right: 0.4rem;
  margin-bottom: 0.75rem;
  border: 1px solid #ddd;
  text-decoration: none;
  font-weight: bold;
  line-height: 1.3;
  border-radius: 0.25rem;
}

.pagination span {
  color: #c6c6c6;
}

.pagination a:hover,
.pagination span.current {
  background: #00b6e6;
  color: #fff;
  border: 1px solid #00b6e6;
}


/* Sidebar */
.menu h4 {
  margin-bottom: 0.25rem;
  font-size: 1.13rem;
  font-weight: bold;
  letter-spacing: -0.05rem;
}
.menu ol.links {
  margin: 0 0 18px 0;
  padding: 0;
  list-style: none;
}
.menu p + ol.links {
  margin-top: -16px;
}
.menu ol.links li {
  margin: 0;
  padding: 0 0 4px 0;
}

/* Flash Msg */
#msg {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 10000;
}
#msg p {
  margin: 0;
  padding: 0.5rem 0;
  background: rgba(0,0,0,0.7);
  color: #fff;
  text-align: center;
  font-size: 0.875rem;
}
#msg p span {
  display: inline-block;
  background: rgba(0,0,0,0.3);
  border-radius: 0.25rem;
  padding: 0.4rem 0.8rem 0.2rem 0.8rem;
}
#msg a {
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  width: 19px;
  height: 19px;
  text-indent: -9000em;
  background: url(/img/close_icon_11.png) 3px 4px no-repeat;
  outline: none;
}

#content ul.basic {
  margin: 4px 0 10px 0;
  padding: 0;
  list-style: none;
}
#content ul.basic li {
  margin: 0 0 4px 0;
  padding: 0;
  font-size: 14px;
}

.image-placeholder {
  display: inline-block;
  background: #656565 url(/img/question_mark.gif) 0 0 no-repeat;
  width: 48px;
  height: 48px;
}

.badge-new {
  display: inline-block;
  background: #00ff9f;
  background: #ffef00;
  padding: 0.2rem 0.3rem 0 0.3rem;
  line-height: 1;
  text-transform: uppercase;
  font-size: 0.7rem;
  font-weight: bold;
  border-radius: 0.25rem;
}

.new-iconed:before {
  content: " ";
  margin: 0 0.25rem 0 0;
  display: inline-block;
  width: 18px;
  height: 18px;
  vertical-align: -4px;
  opacity: 0.5;
}
.icon-email:before {
  background-image: url(/img/new_icons/email.svg);
  background-position: -3px -3px;
  background-repeat: no-repeat;
  background-size: 24px 24px;
}
.icon-heart:before {
  background-image: url(/img/new_icons/heart.svg);
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 18px 18px;
}
.icon-rss:before {
  background-image: url(/img/new_icons/rss.svg);
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 18px 18px;
  width: 15px;
}

.small {
  font-size: 0.8rem;
}

/* Sidebar */
span.managing {
  display: block;
  font-size: 11px;
  color: #777;
  letter-spacing: 0;
  font-weight: normal;
  padding-bottom: 2px;
}
img.editing {
  float: left;
  margin-right: 7px;
}
img.editing + ol.links {
  float: left;
  color: #777;
}
.menu ol.managing {
  font-size: 11px;
}
.menu ol.managing li {
  padding-bottom: 2px;
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
  margin-top: 1rem;
  margin-bottom: 1rem;
  border: 0;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}

.btn {
  display: inline-block;
  font-weight: 400;
  color: #000;
  text-align: center;
  vertical-align: middle;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  background-color: transparent;
  border: 1px solid transparent;
  padding: 0.3rem 0.85rem 0.24rem 0.85rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.25rem;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  background-color: #efefef;
  border-color: #e2e2e2;
  text-decoration: none;
}
.btn:hover {
  color: #000;
  text-decoration: none;
  background-color: #e2e2e2;
}
.btn.disabled, .btn:disabled {
  opacity: 0.65;
}
.btn:not(:disabled):not(.disabled) {
  cursor: pointer;
}

a.btn.disabled,
fieldset:disabled a.btn {
  pointer-events: none;
}


.btn-primary,
.btn-primary:visited {
  color: #fff;
  background-color: #1be;
  border-color: #1be;
}

.btn-primary:hover {
  color: #fff;
  background-color: #0ad;
  border-color: #0ad;
}

.btn-success,
.btn-success:visited {
  color: #fff;
  background-color: #1fc800;
  border-color: #1fc800;
}

.btn-success:hover {
  color: #fff;
  background-color: #1fb400;
  border-color: #1fb400;
}


.btn-warning,
.btn-warning:visited {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}

.btn-warning:hover {
  color: #212529;
  background-color: #e0a800;
  border-color: #d39e00;
}

.btn-danger,
.btn-danger:visited {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}

.btn-danger:hover {
  color: #fff;
  background-color: #c82333;
  border-color: #bd2130;
}

.btn-dark,
.btn-dark:visited {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40;
}

.btn-dark:hover {
  color: #fff;
  background-color: #23272b;
  border-color: #1d2124;
}



.btn-link {
  font-weight: 400;
  color: #009cba;
  text-decoration: none;
}

.btn-link:hover {
  color: #0056b3;
  text-decoration: underline;
}

.btn-link:disabled, .btn-link.disabled {
  color: #6c757d;
  pointer-events: none;
}


.btn-lg {
  padding: 0.375rem 1rem;
  font-size: 1rem;
  line-height: 1.5;
  border-radius: 0.3rem;
}

.btn-sm {
  padding: 0.22rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.2;
  border-radius: 0.2rem;
}
.master-container > header {
  background: #fff;
  position: relative; /* Allows positioning of #member_details */
  padding-bottom: 0.8rem;
}

header h1,
header a.home {
  display: block;
  margin: 0.2rem 0 0.2rem 0;
  padding: 0;
  width: 9rem;
  height: 2.5rem;
  text-indent: -9000em;
  background: url(/new/logo.png) 0 0 no-repeat;
  background-size: contain;
}
header a.home:hover {
  filter: grayscale(1);
}

header ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.outside-nav > li {
  display: inline-block;
  margin: 0;
  padding: 0;
}
.outside-nav .nav-highlight,
.outside-nav > li > a,
.outside-nav .toggle {
  display: block;
  font-family: "arial black", sans-serif;
  font-size: 1.2rem;
  letter-spacing: -0.08rem;
  color: #fff;
  padding: 0 1rem 0.1rem 1rem;
  cursor: pointer;
  text-decoration: none;
}
.outside-nav .nav-highlight {
  position: relative;
  cursor: default;
}
.outside-nav .nav-highlight:after {
  content: '';
  position: absolute;
  bottom: 0;
  left: calc(50% - 5px);
  height: 5px;
  width: 10px;
  border-right: 5px solid transparent;
  border-left: 5px solid transparent;
  border-bottom: 5px solid white;
}
.outside-nav > li > span:first-child,
.outside-nav > li > a:first-child,
.outside-nav .toggle:first-child {
  margin-left: -1rem;
}
.outside-nav > li > a:hover,
.outside-nav .toggle:hover {
  text-decoration: underline;
}

#nav-menu {
  background: #2df;
  background: linear-gradient(to bottom right, #4ef, #2df 70%);
  border-bottom-left-radius: 0.25rem;
}

.dropdown {
  position: relative;
}
.dropdown-menu {
  z-index: 1005; /* any value over-rides z-index: auto which is what the content that follows has */
  position: absolute;
  padding: 0;
  background: #fff;
  border-left: 1px solid #2df;
  border-right: 1px solid #2df;
  border-bottom: 1px solid #2df;
  white-space: nowrap;
}
.dropdown.closed .dropdown-menu {
  display: none;
}
.dropdown-menu li {
  margin: 0.4rem 0;
  padding: 0;
}
.dropdown-menu li a {
  padding: 0.6rem 0.8rem;
}

.outside-nav > li.nav-home {
  display: none;
}

.arrow {
  border: solid rgba(255,255,255,0.7);
  border-width: 0 3px 3px 0;
  display: inline-block;
  padding: 3px;
  vertical-align: 0;
  margin-left: 0.5rem;
  transform: rotate(-135deg);
  -webkit-transform: rotate(-135deg);
}
.toggle:hover .arrow {
  border-color: rgba(255,255,255,1.0);
}
.closed .arrow {
  vertical-align: 0.2em;
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
}

#member_details {
  position: absolute;
  top: 0;
  right: 0;
  width: auto;
  font-size: 0.75rem;
  line-height: 1;
  text-align: right;
}
#member_details.logged_in {
  padding: 0.4rem 0.4rem 0.1rem 0.4rem;
  color: #aaa;
}
#member_details #welcome_str {
  color: #777;
  padding-bottom: 0.2rem;
}
#member_details .member_link {
  display: inline-block;
  padding: 0.25rem 0.3rem 0.15rem 0.3rem;
  border-right: 1px solid #eee;
  font-weight: bold;
}
#member_details a.logout_link {
  border-right: none;
  padding-right: 0;
}

#member_details #login_link {
  display: inline-block;
  padding: 0.5rem 0.9rem 0.6rem 0.9rem;
  background: #333;
  border-bottom-left-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem;
  color: #f2f2f2;
}
#member_details #login_link:hover {
  background: #222;
  color: #fff;
}

@media (min-width: 768px) {
  #member_details {
    position: static;
    border-bottom-left-radius: 0;
    padding-right: 15px; /* px to replicate bootstrap styles */
    background: #2df;
    color: rgba(255,255,255,0.7);
  }
  #member_details #welcome_str {
    color: #fff;
  }
  #member_details a {
    color: #fff;
  }
  #member_details .member_link {
    border-color: rgba(255,255,255,0.3);
  }

  .outside-nav > li.nav-home {
    display: inline-block;
  }
  .outside-nav .nav-highlight,
  .outside-nav > li > a,
  .outside-nav .toggle {
    padding-top: 0.45rem;
    padding-bottom: 0.65rem;
  }
  .outside-nav .nav-highlight:after {
    left: calc(50% - 8px);
    height: 8px;
    width: 16px;
    border-right: 8px solid transparent;
    border-left: 8px solid transparent;
    border-bottom: 8px solid white;
  }
}
@media (min-width: 992px) {
  #member_details.logged_in {
    padding-top: 0.7rem;
  }
  header h1,
  header a.home {
    width: 11rem;
    height: 3rem;
  }
  .outside-nav .nav-highlight,
  .outside-nav > li > a,
  .outside-nav .toggle {
    padding-top: 0.6rem;
    padding-bottom: 0.7rem;
    font-size: 1.4rem;
  }
}
footer {
  color: #777;
  font-size: 0.8rem;
  margin-top: 2rem;
  padding-bottom: 0.5rem;
}

footer ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
footer ul li {
  margin: 0.3rem 0.3rem 0.3rem 0;
}
footer a,
footer a:visited {
  color: rgba(255,255,255,0.7);
}
footer a:hover {
  color: rgba(255,255,255,0.9);
}
footer h5 {
  margin-top: 0;
  margin-bottom: 0;
  color: rgba(255,255,255,0.5);
  font-weight: 900;
  letter-spacing: -0.04rem;
  font-size: 1rem;
}

.copyright {
  text-align: center;
}

.copyright a,
.copyright a:visited {
  color: #777;
}
.bike-card {
  position: relative;
  border-left: 1px solid #fff;
  border-bottom: 1px solid #fff;
  width: 100%;
  height: 160px;
}
a:hover .bike-card h4 {
  text-decoration: underline;
  color: #fff;
  background: rgba(0,0,0,0.8);
}
.bike-card h4 {
  position: absolute;
  top: 0;
  left: 0;
  border-bottom-right-radius: 0.25rem;
  padding: 0.5rem;
  line-height: 1;
  background: rgba(0,0,0,0.7);
  color: rgba(255,255,255,0.7);
  font-size: 0.8rem;
  font-weight: 400;
}
.bike-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
}

h2.browse a {
  text-decoration: none;
}
h2.browse a:hover {
  text-decoration: underline;
}

.quick_search {
  width: 100%;
}

#site_updates .blog-post h2 {
  font-size: 1rem;
  letter-spacing: -0.037rem;
}
#site_updates h2 a {
  color: #212529;
  text-decoration: none;
}
#site_updates h2 a:hover {
  color: #212529;
  text-decoration: underline;
}
#site_updates .blog-post {
  border-top: 1px solid #ddd;
  padding-top: 2rem;
  padding-bottom: 2rem;
}
#site_updates .blog-post:first-child {
  border-top: 0;
  padding-top: 1rem;
}
/* ...






*/

