/* bootstrap */
/*!
 * Bootstrap v4.3.1 (https://getbootstrap.com/)
 * Copyright 2011-2019 The Bootstrap Authors
 * Copyright 2011-2019 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */
@import url(easy-autocomplete.min.css);
:root {
  --blue: #007bff;
  --indigo: #6610f2;
  --purple: #6f42c1;
  --pink: #e83e8c;
  --red: #dc3545;
  --orange: #fd7e14;
  --yellow: #ffc107;
  --green: #28a745;
  --teal: #20c997;
  --cyan: #17a2b8;
  --white: #fff;
  --gray: #6c757d;
  --gray-dark: #343a40;
  --primary: #007bff;
  --secondary: #6c757d;
  --success: #28a745;
  --info: #17a2b8;
  --warning: #ffc107;
  --danger: #dc3545;
  --light: #f8f9fa;
  --dark: #343a40;
  --breakpoint-xs: 0;
  --breakpoint-sm: 576px;
  --breakpoint-md: 768px;
  --breakpoint-lg: 992px;
  --breakpoint-xl: 1200px;
  --font-family-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; }

*,
*::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); }

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, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  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;
  -webkit-text-decoration-skip-ink: none;
  text-decoration-skip-ink: none; }

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; }

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: #007bff;
  text-decoration: none;
  background-color: transparent; }

a:hover {
  color: #0056b3;
  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; }

figure {
  margin: 0 0 1rem; }

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

svg {
  overflow: hidden;
  vertical-align: middle; }

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; }

select {
  word-wrap: normal; }

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

button:not(:disabled),
[type="button"]:not(:disabled),
[type="reset"]:not(:disabled),
[type="submit"]:not(:disabled) {
  cursor: pointer; }

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-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; }

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  margin-bottom: 0.5rem;
  font-weight: 500;
  line-height: 1.2; }

h1, .h1 {
  font-size: 2.5rem; }

h2, .h2 {
  font-size: 2rem; }

h3, .h3 {
  font-size: 1.75rem; }

h4, .h4 {
  font-size: 1.5rem; }

h5, .h5 {
  font-size: 1.25rem; }

h6, .h6 {
  font-size: 1rem; }

.lead {
  font-size: 1.25rem;
  font-weight: 300; }

.display-1 {
  font-size: 6rem;
  font-weight: 300;
  line-height: 1.2; }

.display-2 {
  font-size: 5.5rem;
  font-weight: 300;
  line-height: 1.2; }

.display-3 {
  font-size: 4.5rem;
  font-weight: 300;
  line-height: 1.2; }

.display-4 {
  font-size: 3.5rem;
  font-weight: 300;
  line-height: 1.2; }

hr {
  margin-top: 1rem;
  margin-bottom: 1rem;
  border: 0;
  border-top: 1px solid rgba(0, 0, 0, 0.1); }

small,
.small {
  font-size: 80%;
  font-weight: 400; }

mark,
.mark {
  padding: 0.2em;
  background-color: #fcf8e3; }

.list-unstyled {
  padding-left: 0;
  list-style: none; }

.list-inline {
  padding-left: 0;
  list-style: none; }

.list-inline-item {
  display: inline-block; }

.list-inline-item:not(:last-child) {
  margin-right: 0.5rem; }

.initialism {
  font-size: 90%;
  text-transform: uppercase; }

.blockquote {
  margin-bottom: 1rem;
  font-size: 1.25rem; }

.blockquote-footer {
  display: block;
  font-size: 80%;
  color: #6c757d; }

.blockquote-footer::before {
  content: "\2014\00A0"; }

.img-fluid {
  max-width: 100%;
  height: auto; }

.img-thumbnail {
  padding: 0.25rem;
  background-color: #fff;
  border: 1px solid #dee2e6;
  border-radius: 0.25rem;
  max-width: 100%;
  height: auto; }

.figure {
  display: inline-block; }

.figure-img {
  margin-bottom: 0.5rem;
  line-height: 1; }

.figure-caption {
  font-size: 90%;
  color: #6c757d; }

code {
  font-size: 87.5%;
  color: #e83e8c;
  word-break: break-word; }

a > code {
  color: inherit; }

kbd {
  padding: 0.2rem 0.4rem;
  font-size: 87.5%;
  color: #fff;
  background-color: #212529;
  border-radius: 0.2rem; }

kbd kbd {
  padding: 0;
  font-size: 100%;
  font-weight: 700; }

pre {
  display: block;
  font-size: 87.5%;
  color: #212529; }

pre code {
  font-size: inherit;
  color: inherit;
  word-break: normal; }

.pre-scrollable {
  max-height: 340px;
  overflow-y: scroll; }

.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: -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%; }

.order-first {
  -ms-flex-order: -1;
  order: -1; }

.order-last {
  -ms-flex-order: 13;
  order: 13; }

.order-0 {
  -ms-flex-order: 0;
  order: 0; }

.order-1 {
  -ms-flex-order: 1;
  order: 1; }

.order-2 {
  -ms-flex-order: 2;
  order: 2; }

.order-3 {
  -ms-flex-order: 3;
  order: 3; }

.order-4 {
  -ms-flex-order: 4;
  order: 4; }

.order-5 {
  -ms-flex-order: 5;
  order: 5; }

.order-6 {
  -ms-flex-order: 6;
  order: 6; }

.order-7 {
  -ms-flex-order: 7;
  order: 7; }

.order-8 {
  -ms-flex-order: 8;
  order: 8; }

.order-9 {
  -ms-flex-order: 9;
  order: 9; }

.order-10 {
  -ms-flex-order: 10;
  order: 10; }

.order-11 {
  -ms-flex-order: 11;
  order: 11; }

.order-12 {
  -ms-flex-order: 12;
  order: 12; }

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

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

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

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

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

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

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

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

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

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

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

@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%; }
  .order-sm-first {
    -ms-flex-order: -1;
    order: -1; }
  .order-sm-last {
    -ms-flex-order: 13;
    order: 13; }
  .order-sm-0 {
    -ms-flex-order: 0;
    order: 0; }
  .order-sm-1 {
    -ms-flex-order: 1;
    order: 1; }
  .order-sm-2 {
    -ms-flex-order: 2;
    order: 2; }
  .order-sm-3 {
    -ms-flex-order: 3;
    order: 3; }
  .order-sm-4 {
    -ms-flex-order: 4;
    order: 4; }
  .order-sm-5 {
    -ms-flex-order: 5;
    order: 5; }
  .order-sm-6 {
    -ms-flex-order: 6;
    order: 6; }
  .order-sm-7 {
    -ms-flex-order: 7;
    order: 7; }
  .order-sm-8 {
    -ms-flex-order: 8;
    order: 8; }
  .order-sm-9 {
    -ms-flex-order: 9;
    order: 9; }
  .order-sm-10 {
    -ms-flex-order: 10;
    order: 10; }
  .order-sm-11 {
    -ms-flex-order: 11;
    order: 11; }
  .order-sm-12 {
    -ms-flex-order: 12;
    order: 12; }
  .offset-sm-0 {
    margin-left: 0; }
  .offset-sm-1 {
    margin-left: 8.333333%; }
  .offset-sm-2 {
    margin-left: 16.666667%; }
  .offset-sm-3 {
    margin-left: 25%; }
  .offset-sm-4 {
    margin-left: 33.333333%; }
  .offset-sm-5 {
    margin-left: 41.666667%; }
  .offset-sm-6 {
    margin-left: 50%; }
  .offset-sm-7 {
    margin-left: 58.333333%; }
  .offset-sm-8 {
    margin-left: 66.666667%; }
  .offset-sm-9 {
    margin-left: 75%; }
  .offset-sm-10 {
    margin-left: 83.333333%; }
  .offset-sm-11 {
    margin-left: 91.666667%; } }

@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%; }
  .order-md-first {
    -ms-flex-order: -1;
    order: -1; }
  .order-md-last {
    -ms-flex-order: 13;
    order: 13; }
  .order-md-0 {
    -ms-flex-order: 0;
    order: 0; }
  .order-md-1 {
    -ms-flex-order: 1;
    order: 1; }
  .order-md-2 {
    -ms-flex-order: 2;
    order: 2; }
  .order-md-3 {
    -ms-flex-order: 3;
    order: 3; }
  .order-md-4 {
    -ms-flex-order: 4;
    order: 4; }
  .order-md-5 {
    -ms-flex-order: 5;
    order: 5; }
  .order-md-6 {
    -ms-flex-order: 6;
    order: 6; }
  .order-md-7 {
    -ms-flex-order: 7;
    order: 7; }
  .order-md-8 {
    -ms-flex-order: 8;
    order: 8; }
  .order-md-9 {
    -ms-flex-order: 9;
    order: 9; }
  .order-md-10 {
    -ms-flex-order: 10;
    order: 10; }
  .order-md-11 {
    -ms-flex-order: 11;
    order: 11; }
  .order-md-12 {
    -ms-flex-order: 12;
    order: 12; }
  .offset-md-0 {
    margin-left: 0; }
  .offset-md-1 {
    margin-left: 8.333333%; }
  .offset-md-2 {
    margin-left: 16.666667%; }
  .offset-md-3 {
    margin-left: 25%; }
  .offset-md-4 {
    margin-left: 33.333333%; }
  .offset-md-5 {
    margin-left: 41.666667%; }
  .offset-md-6 {
    margin-left: 50%; }
  .offset-md-7 {
    margin-left: 58.333333%; }
  .offset-md-8 {
    margin-left: 66.666667%; }
  .offset-md-9 {
    margin-left: 75%; }
  .offset-md-10 {
    margin-left: 83.333333%; }
  .offset-md-11 {
    margin-left: 91.666667%; } }

@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%; }
  .order-lg-first {
    -ms-flex-order: -1;
    order: -1; }
  .order-lg-last {
    -ms-flex-order: 13;
    order: 13; }
  .order-lg-0 {
    -ms-flex-order: 0;
    order: 0; }
  .order-lg-1 {
    -ms-flex-order: 1;
    order: 1; }
  .order-lg-2 {
    -ms-flex-order: 2;
    order: 2; }
  .order-lg-3 {
    -ms-flex-order: 3;
    order: 3; }
  .order-lg-4 {
    -ms-flex-order: 4;
    order: 4; }
  .order-lg-5 {
    -ms-flex-order: 5;
    order: 5; }
  .order-lg-6 {
    -ms-flex-order: 6;
    order: 6; }
  .order-lg-7 {
    -ms-flex-order: 7;
    order: 7; }
  .order-lg-8 {
    -ms-flex-order: 8;
    order: 8; }
  .order-lg-9 {
    -ms-flex-order: 9;
    order: 9; }
  .order-lg-10 {
    -ms-flex-order: 10;
    order: 10; }
  .order-lg-11 {
    -ms-flex-order: 11;
    order: 11; }
  .order-lg-12 {
    -ms-flex-order: 12;
    order: 12; }
  .offset-lg-0 {
    margin-left: 0; }
  .offset-lg-1 {
    margin-left: 8.333333%; }
  .offset-lg-2 {
    margin-left: 16.666667%; }
  .offset-lg-3 {
    margin-left: 25%; }
  .offset-lg-4 {
    margin-left: 33.333333%; }
  .offset-lg-5 {
    margin-left: 41.666667%; }
  .offset-lg-6 {
    margin-left: 50%; }
  .offset-lg-7 {
    margin-left: 58.333333%; }
  .offset-lg-8 {
    margin-left: 66.666667%; }
  .offset-lg-9 {
    margin-left: 75%; }
  .offset-lg-10 {
    margin-left: 83.333333%; }
  .offset-lg-11 {
    margin-left: 91.666667%; } }

@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%; }
  .order-xl-first {
    -ms-flex-order: -1;
    order: -1; }
  .order-xl-last {
    -ms-flex-order: 13;
    order: 13; }
  .order-xl-0 {
    -ms-flex-order: 0;
    order: 0; }
  .order-xl-1 {
    -ms-flex-order: 1;
    order: 1; }
  .order-xl-2 {
    -ms-flex-order: 2;
    order: 2; }
  .order-xl-3 {
    -ms-flex-order: 3;
    order: 3; }
  .order-xl-4 {
    -ms-flex-order: 4;
    order: 4; }
  .order-xl-5 {
    -ms-flex-order: 5;
    order: 5; }
  .order-xl-6 {
    -ms-flex-order: 6;
    order: 6; }
  .order-xl-7 {
    -ms-flex-order: 7;
    order: 7; }
  .order-xl-8 {
    -ms-flex-order: 8;
    order: 8; }
  .order-xl-9 {
    -ms-flex-order: 9;
    order: 9; }
  .order-xl-10 {
    -ms-flex-order: 10;
    order: 10; }
  .order-xl-11 {
    -ms-flex-order: 11;
    order: 11; }
  .order-xl-12 {
    -ms-flex-order: 12;
    order: 12; }
  .offset-xl-0 {
    margin-left: 0; }
  .offset-xl-1 {
    margin-left: 8.333333%; }
  .offset-xl-2 {
    margin-left: 16.666667%; }
  .offset-xl-3 {
    margin-left: 25%; }
  .offset-xl-4 {
    margin-left: 33.333333%; }
  .offset-xl-5 {
    margin-left: 41.666667%; }
  .offset-xl-6 {
    margin-left: 50%; }
  .offset-xl-7 {
    margin-left: 58.333333%; }
  .offset-xl-8 {
    margin-left: 66.666667%; }
  .offset-xl-9 {
    margin-left: 75%; }
  .offset-xl-10 {
    margin-left: 83.333333%; }
  .offset-xl-11 {
    margin-left: 91.666667%; } }

.table {
  width: 100%;
  margin-bottom: 1rem;
  color: #212529; }

.table th,
.table td {
  padding: 0.75rem;
  vertical-align: top;
  border-top: 1px solid #dee2e6; }

.table thead th {
  vertical-align: bottom;
  border-bottom: 2px solid #dee2e6; }

.table tbody + tbody {
  border-top: 2px solid #dee2e6; }

.table-sm th,
.table-sm td {
  padding: 0.3rem; }

.table-bordered {
  border: 1px solid #dee2e6; }

.table-bordered th,
.table-bordered td {
  border: 1px solid #dee2e6; }

.table-bordered thead th,
.table-bordered thead td {
  border-bottom-width: 2px; }

.table-borderless th,
.table-borderless td,
.table-borderless thead th,
.table-borderless tbody + tbody {
  border: 0; }

.table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(0, 0, 0, 0.05); }

.table-hover tbody tr:hover {
  color: #212529;
  background-color: rgba(0, 0, 0, 0.075); }

.table-primary,
.table-primary > th,
.table-primary > td {
  background-color: #b8daff; }

.table-primary th,
.table-primary td,
.table-primary thead th,
.table-primary tbody + tbody {
  border-color: #7abaff; }

.table-hover .table-primary:hover {
  background-color: #9fcdff; }

.table-hover .table-primary:hover > td,
.table-hover .table-primary:hover > th {
  background-color: #9fcdff; }

.table-secondary,
.table-secondary > th,
.table-secondary > td {
  background-color: #d6d8db; }

.table-secondary th,
.table-secondary td,
.table-secondary thead th,
.table-secondary tbody + tbody {
  border-color: #b3b7bb; }

.table-hover .table-secondary:hover {
  background-color: #c8cbcf; }

.table-hover .table-secondary:hover > td,
.table-hover .table-secondary:hover > th {
  background-color: #c8cbcf; }

.table-success,
.table-success > th,
.table-success > td {
  background-color: #c3e6cb; }

.table-success th,
.table-success td,
.table-success thead th,
.table-success tbody + tbody {
  border-color: #8fd19e; }

.table-hover .table-success:hover {
  background-color: #b1dfbb; }

.table-hover .table-success:hover > td,
.table-hover .table-success:hover > th {
  background-color: #b1dfbb; }

.table-info,
.table-info > th,
.table-info > td {
  background-color: #bee5eb; }

.table-info th,
.table-info td,
.table-info thead th,
.table-info tbody + tbody {
  border-color: #86cfda; }

.table-hover .table-info:hover {
  background-color: #abdde5; }

.table-hover .table-info:hover > td,
.table-hover .table-info:hover > th {
  background-color: #abdde5; }

.table-warning,
.table-warning > th,
.table-warning > td {
  background-color: #ffeeba; }

.table-warning th,
.table-warning td,
.table-warning thead th,
.table-warning tbody + tbody {
  border-color: #ffdf7e; }

.table-hover .table-warning:hover {
  background-color: #ffe8a1; }

.table-hover .table-warning:hover > td,
.table-hover .table-warning:hover > th {
  background-color: #ffe8a1; }

.table-danger,
.table-danger > th,
.table-danger > td {
  background-color: #f5c6cb; }

.table-danger th,
.table-danger td,
.table-danger thead th,
.table-danger tbody + tbody {
  border-color: #ed969e; }

.table-hover .table-danger:hover {
  background-color: #f1b0b7; }

.table-hover .table-danger:hover > td,
.table-hover .table-danger:hover > th {
  background-color: #f1b0b7; }

.table-light,
.table-light > th,
.table-light > td {
  background-color: #fdfdfe; }

.table-light th,
.table-light td,
.table-light thead th,
.table-light tbody + tbody {
  border-color: #fbfcfc; }

.table-hover .table-light:hover {
  background-color: #ececf6; }

.table-hover .table-light:hover > td,
.table-hover .table-light:hover > th {
  background-color: #ececf6; }

.table-dark,
.table-dark > th,
.table-dark > td {
  background-color: #c6c8ca; }

.table-dark th,
.table-dark td,
.table-dark thead th,
.table-dark tbody + tbody {
  border-color: #95999c; }

.table-hover .table-dark:hover {
  background-color: #b9bbbe; }

.table-hover .table-dark:hover > td,
.table-hover .table-dark:hover > th {
  background-color: #b9bbbe; }

.table-active,
.table-active > th,
.table-active > td {
  background-color: rgba(0, 0, 0, 0.075); }

.table-hover .table-active:hover {
  background-color: rgba(0, 0, 0, 0.075); }

.table-hover .table-active:hover > td,
.table-hover .table-active:hover > th {
  background-color: rgba(0, 0, 0, 0.075); }

.table .thead-dark th {
  color: #fff;
  background-color: #343a40;
  border-color: #454d55; }

.table .thead-light th {
  color: #495057;
  background-color: #e9ecef;
  border-color: #dee2e6; }

.table-dark {
  color: #fff;
  background-color: #343a40; }

.table-dark th,
.table-dark td,
.table-dark thead th {
  border-color: #454d55; }

.table-dark.table-bordered {
  border: 0; }

.table-dark.table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(255, 255, 255, 0.05); }

.table-dark.table-hover tbody tr:hover {
  color: #fff;
  background-color: rgba(255, 255, 255, 0.075); }

@media (max-width: 575.98px) {
  .table-responsive-sm {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch; }
  .table-responsive-sm > .table-bordered {
    border: 0; } }

@media (max-width: 767.98px) {
  .table-responsive-md {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch; }
  .table-responsive-md > .table-bordered {
    border: 0; } }

@media (max-width: 991.98px) {
  .table-responsive-lg {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch; }
  .table-responsive-lg > .table-bordered {
    border: 0; } }

@media (max-width: 1199.98px) {
  .table-responsive-xl {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch; }
  .table-responsive-xl > .table-bordered {
    border: 0; } }

.table-responsive {
  display: block;
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch; }

.table-responsive > .table-bordered {
  border: 0; }

.form-control {
  display: block;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; }

@media (prefers-reduced-motion: reduce) {
  .form-control {
    transition: none; } }

.form-control::-ms-expand {
  background-color: transparent;
  border: 0; }

.form-control:focus {
  color: #495057;
  background-color: #fff;
  border-color: #80bdff;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }

.form-control::-webkit-input-placeholder {
  color: #6c757d;
  opacity: 1; }

.form-control::-moz-placeholder {
  color: #6c757d;
  opacity: 1; }

.form-control:-ms-input-placeholder {
  color: #6c757d;
  opacity: 1; }

.form-control::-ms-input-placeholder {
  color: #6c757d;
  opacity: 1; }

.form-control::placeholder {
  color: #6c757d;
  opacity: 1; }

.form-control:disabled, .form-control[readonly] {
  background-color: #e9ecef;
  opacity: 1; }

select.form-control:focus::-ms-value {
  color: #495057;
  background-color: #fff; }

.form-control-file,
.form-control-range {
  display: block;
  width: 100%; }

.col-form-label {
  padding-top: calc(0.375rem + 1px);
  padding-bottom: calc(0.375rem + 1px);
  margin-bottom: 0;
  font-size: inherit;
  line-height: 1.5; }

.col-form-label-lg {
  padding-top: calc(0.5rem + 1px);
  padding-bottom: calc(0.5rem + 1px);
  font-size: 1.25rem;
  line-height: 1.5; }

.col-form-label-sm {
  padding-top: calc(0.25rem + 1px);
  padding-bottom: calc(0.25rem + 1px);
  font-size: 0.875rem;
  line-height: 1.5; }

.form-control-plaintext {
  display: block;
  width: 100%;
  padding-top: 0.375rem;
  padding-bottom: 0.375rem;
  margin-bottom: 0;
  line-height: 1.5;
  color: #212529;
  background-color: transparent;
  border: solid transparent;
  border-width: 1px 0; }

.form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg {
  padding-right: 0;
  padding-left: 0; }

.form-control-sm {
  height: calc(1.5em + 0.5rem + 2px);
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem; }

.form-control-lg {
  height: calc(1.5em + 1rem + 2px);
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem; }

select.form-control[size], select.form-control[multiple] {
  height: auto; }

textarea.form-control {
  height: auto; }

.form-group {
  margin-bottom: 1rem; }

.form-text {
  display: block;
  margin-top: 0.25rem; }

.form-row {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: -5px;
  margin-left: -5px; }

.form-row > .col,
.form-row > [class*="col-"] {
  padding-right: 5px;
  padding-left: 5px; }

.form-check {
  position: relative;
  display: block;
  padding-left: 1.25rem; }

.form-check-input {
  position: absolute;
  margin-top: 0.3rem;
  margin-left: -1.25rem; }

.form-check-input:disabled ~ .form-check-label {
  color: #6c757d; }

.form-check-label {
  margin-bottom: 0; }

.form-check-inline {
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-align: center;
  align-items: center;
  padding-left: 0;
  margin-right: 0.75rem; }

.form-check-inline .form-check-input {
  position: static;
  margin-top: 0;
  margin-right: 0.3125rem;
  margin-left: 0; }

.valid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 80%;
  color: #28a745; }

.valid-tooltip {
  position: absolute;
  top: 100%;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: .1rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #fff;
  background-color: rgba(40, 167, 69, 0.9);
  border-radius: 0.25rem; }

.was-validated .form-control:valid, .form-control.is-valid {
  border-color: #28a745;
  padding-right: calc(1.5em + 0.75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: center right calc(0.375em + 0.1875rem);
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); }

.was-validated .form-control:valid:focus, .form-control.is-valid:focus {
  border-color: #28a745;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25); }

.was-validated .form-control:valid ~ .valid-feedback,
.was-validated .form-control:valid ~ .valid-tooltip, .form-control.is-valid ~ .valid-feedback,
.form-control.is-valid ~ .valid-tooltip {
  display: block; }

.was-validated textarea.form-control:valid, textarea.form-control.is-valid {
  padding-right: calc(1.5em + 0.75rem);
  background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem); }

.was-validated .custom-select:valid, .custom-select.is-valid {
  border-color: #28a745;
  padding-right: calc((1em + 0.75rem) * 3 / 4 + 1.75rem);
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 0.75rem center/8px 10px, url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); }

.was-validated .custom-select:valid:focus, .custom-select.is-valid:focus {
  border-color: #28a745;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25); }

.was-validated .custom-select:valid ~ .valid-feedback,
.was-validated .custom-select:valid ~ .valid-tooltip, .custom-select.is-valid ~ .valid-feedback,
.custom-select.is-valid ~ .valid-tooltip {
  display: block; }

.was-validated .form-control-file:valid ~ .valid-feedback,
.was-validated .form-control-file:valid ~ .valid-tooltip, .form-control-file.is-valid ~ .valid-feedback,
.form-control-file.is-valid ~ .valid-tooltip {
  display: block; }

.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {
  color: #28a745; }

.was-validated .form-check-input:valid ~ .valid-feedback,
.was-validated .form-check-input:valid ~ .valid-tooltip, .form-check-input.is-valid ~ .valid-feedback,
.form-check-input.is-valid ~ .valid-tooltip {
  display: block; }

.was-validated .custom-control-input:valid ~ .custom-control-label, .custom-control-input.is-valid ~ .custom-control-label {
  color: #28a745; }

.was-validated .custom-control-input:valid ~ .custom-control-label::before, .custom-control-input.is-valid ~ .custom-control-label::before {
  border-color: #28a745; }

.was-validated .custom-control-input:valid ~ .valid-feedback,
.was-validated .custom-control-input:valid ~ .valid-tooltip, .custom-control-input.is-valid ~ .valid-feedback,
.custom-control-input.is-valid ~ .valid-tooltip {
  display: block; }

.was-validated .custom-control-input:valid:checked ~ .custom-control-label::before, .custom-control-input.is-valid:checked ~ .custom-control-label::before {
  border-color: #34ce57;
  background-color: #34ce57; }

.was-validated .custom-control-input:valid:focus ~ .custom-control-label::before, .custom-control-input.is-valid:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25); }

.was-validated .custom-control-input:valid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-valid:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #28a745; }

.was-validated .custom-file-input:valid ~ .custom-file-label, .custom-file-input.is-valid ~ .custom-file-label {
  border-color: #28a745; }

.was-validated .custom-file-input:valid ~ .valid-feedback,
.was-validated .custom-file-input:valid ~ .valid-tooltip, .custom-file-input.is-valid ~ .valid-feedback,
.custom-file-input.is-valid ~ .valid-tooltip {
  display: block; }

.was-validated .custom-file-input:valid:focus ~ .custom-file-label, .custom-file-input.is-valid:focus ~ .custom-file-label {
  border-color: #28a745;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25); }

.invalid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 80%;
  color: #dc3545; }

.invalid-tooltip {
  position: absolute;
  top: 100%;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: .1rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #fff;
  background-color: rgba(220, 53, 69, 0.9);
  border-radius: 0.25rem; }

.was-validated .form-control:invalid, .form-control.is-invalid {
  border-color: #dc3545;
  padding-right: calc(1.5em + 0.75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23dc3545' viewBox='-2 -2 7 7'%3e%3cpath stroke='%23dc3545' d='M0 0l3 3m0-3L0 3'/%3e%3ccircle r='.5'/%3e%3ccircle cx='3' r='.5'/%3e%3ccircle cy='3' r='.5'/%3e%3ccircle cx='3' cy='3' r='.5'/%3e%3c/svg%3E");
  background-repeat: no-repeat;
  background-position: center right calc(0.375em + 0.1875rem);
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); }

.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25); }

.was-validated .form-control:invalid ~ .invalid-feedback,
.was-validated .form-control:invalid ~ .invalid-tooltip, .form-control.is-invalid ~ .invalid-feedback,
.form-control.is-invalid ~ .invalid-tooltip {
  display: block; }

.was-validated textarea.form-control:invalid, textarea.form-control.is-invalid {
  padding-right: calc(1.5em + 0.75rem);
  background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem); }

.was-validated .custom-select:invalid, .custom-select.is-invalid {
  border-color: #dc3545;
  padding-right: calc((1em + 0.75rem) * 3 / 4 + 1.75rem);
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 0.75rem center/8px 10px, url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23dc3545' viewBox='-2 -2 7 7'%3e%3cpath stroke='%23dc3545' d='M0 0l3 3m0-3L0 3'/%3e%3ccircle r='.5'/%3e%3ccircle cx='3' r='.5'/%3e%3ccircle cy='3' r='.5'/%3e%3ccircle cx='3' cy='3' r='.5'/%3e%3c/svg%3E") #fff no-repeat center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); }

.was-validated .custom-select:invalid:focus, .custom-select.is-invalid:focus {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25); }

.was-validated .custom-select:invalid ~ .invalid-feedback,
.was-validated .custom-select:invalid ~ .invalid-tooltip, .custom-select.is-invalid ~ .invalid-feedback,
.custom-select.is-invalid ~ .invalid-tooltip {
  display: block; }

.was-validated .form-control-file:invalid ~ .invalid-feedback,
.was-validated .form-control-file:invalid ~ .invalid-tooltip, .form-control-file.is-invalid ~ .invalid-feedback,
.form-control-file.is-invalid ~ .invalid-tooltip {
  display: block; }

.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {
  color: #dc3545; }

.was-validated .form-check-input:invalid ~ .invalid-feedback,
.was-validated .form-check-input:invalid ~ .invalid-tooltip, .form-check-input.is-invalid ~ .invalid-feedback,
.form-check-input.is-invalid ~ .invalid-tooltip {
  display: block; }

.was-validated .custom-control-input:invalid ~ .custom-control-label, .custom-control-input.is-invalid ~ .custom-control-label {
  color: #dc3545; }

.was-validated .custom-control-input:invalid ~ .custom-control-label::before, .custom-control-input.is-invalid ~ .custom-control-label::before {
  border-color: #dc3545; }

.was-validated .custom-control-input:invalid ~ .invalid-feedback,
.was-validated .custom-control-input:invalid ~ .invalid-tooltip, .custom-control-input.is-invalid ~ .invalid-feedback,
.custom-control-input.is-invalid ~ .invalid-tooltip {
  display: block; }

.was-validated .custom-control-input:invalid:checked ~ .custom-control-label::before, .custom-control-input.is-invalid:checked ~ .custom-control-label::before {
  border-color: #e4606d;
  background-color: #e4606d; }

.was-validated .custom-control-input:invalid:focus ~ .custom-control-label::before, .custom-control-input.is-invalid:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25); }

.was-validated .custom-control-input:invalid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-invalid:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #dc3545; }

.was-validated .custom-file-input:invalid ~ .custom-file-label, .custom-file-input.is-invalid ~ .custom-file-label {
  border-color: #dc3545; }

.was-validated .custom-file-input:invalid ~ .invalid-feedback,
.was-validated .custom-file-input:invalid ~ .invalid-tooltip, .custom-file-input.is-invalid ~ .invalid-feedback,
.custom-file-input.is-invalid ~ .invalid-tooltip {
  display: block; }

.was-validated .custom-file-input:invalid:focus ~ .custom-file-label, .custom-file-input.is-invalid:focus ~ .custom-file-label {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25); }

.form-inline {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  -ms-flex-align: center;
  align-items: center; }

.form-inline .form-check {
  width: 100%; }

@media (min-width: 576px) {
  .form-inline label {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-bottom: 0; }
  .form-inline .form-group {
    display: -ms-flexbox;
    display: flex;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 0; }
  .form-inline .form-control {
    display: inline-block;
    width: auto;
    vertical-align: middle; }
  .form-inline .form-control-plaintext {
    display: inline-block; }
  .form-inline .input-group,
  .form-inline .custom-select {
    width: auto; }
  .form-inline .form-check {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: auto;
    padding-left: 0; }
  .form-inline .form-check-input {
    position: relative;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    margin-top: 0;
    margin-right: 0.25rem;
    margin-left: 0; }
  .form-inline .custom-control {
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center; }
  .form-inline .custom-control-label {
    margin-bottom: 0; } }

.btn {
  display: inline-block;
  font-weight: 400;
  color: #212529;
  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.375rem 0.75rem;
  font-size: 1rem;
  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; }

@media (prefers-reduced-motion: reduce) {
  .btn {
    transition: none; } }

.btn:hover {
  color: #212529;
  text-decoration: none; }

.btn:focus, .btn.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }

.btn.disabled, .btn:disabled {
  opacity: 0.65; }

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

.btn-primary {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff; }

.btn-primary:hover {
  color: #fff;
  background-color: #0069d9;
  border-color: #0062cc; }

.btn-primary:focus, .btn-primary.focus {
  box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5); }

.btn-primary.disabled, .btn-primary:disabled {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff; }

.btn-primary:not(:disabled):not(.disabled):active, .btn-primary:not(:disabled):not(.disabled).active,
.show > .btn-primary.dropdown-toggle {
  color: #fff;
  background-color: #0062cc;
  border-color: #005cbf; }

.btn-primary:not(:disabled):not(.disabled):active:focus, .btn-primary:not(:disabled):not(.disabled).active:focus,
.show > .btn-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5); }

.btn-secondary {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d; }

.btn-secondary:hover {
  color: #fff;
  background-color: #5a6268;
  border-color: #545b62; }

.btn-secondary:focus, .btn-secondary.focus {
  box-shadow: 0 0 0 0.2rem rgba(130, 138, 145, 0.5); }

.btn-secondary.disabled, .btn-secondary:disabled {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d; }

.btn-secondary:not(:disabled):not(.disabled):active, .btn-secondary:not(:disabled):not(.disabled).active,
.show > .btn-secondary.dropdown-toggle {
  color: #fff;
  background-color: #545b62;
  border-color: #4e555b; }

.btn-secondary:not(:disabled):not(.disabled):active:focus, .btn-secondary:not(:disabled):not(.disabled).active:focus,
.show > .btn-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(130, 138, 145, 0.5); }

.btn-success {
  color: #fff;
  background-color: #28a745;
  border-color: #28a745; }

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

.btn-success:focus, .btn-success.focus {
  box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5); }

.btn-success.disabled, .btn-success:disabled {
  color: #fff;
  background-color: #28a745;
  border-color: #28a745; }

.btn-success:not(:disabled):not(.disabled):active, .btn-success:not(:disabled):not(.disabled).active,
.show > .btn-success.dropdown-toggle {
  color: #fff;
  background-color: #1e7e34;
  border-color: #1c7430; }

.btn-success:not(:disabled):not(.disabled):active:focus, .btn-success:not(:disabled):not(.disabled).active:focus,
.show > .btn-success.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5); }

.btn-info {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8; }

.btn-info:hover {
  color: #fff;
  background-color: #138496;
  border-color: #117a8b; }

.btn-info:focus, .btn-info.focus {
  box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5); }

.btn-info.disabled, .btn-info:disabled {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8; }

.btn-info:not(:disabled):not(.disabled):active, .btn-info:not(:disabled):not(.disabled).active,
.show > .btn-info.dropdown-toggle {
  color: #fff;
  background-color: #117a8b;
  border-color: #10707f; }

.btn-info:not(:disabled):not(.disabled):active:focus, .btn-info:not(:disabled):not(.disabled).active:focus,
.show > .btn-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5); }

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

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

.btn-warning:focus, .btn-warning.focus {
  box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5); }

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

.btn-warning:not(:disabled):not(.disabled):active, .btn-warning:not(:disabled):not(.disabled).active,
.show > .btn-warning.dropdown-toggle {
  color: #212529;
  background-color: #d39e00;
  border-color: #c69500; }

.btn-warning:not(:disabled):not(.disabled):active:focus, .btn-warning:not(:disabled):not(.disabled).active:focus,
.show > .btn-warning.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5); }

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

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

.btn-danger:focus, .btn-danger.focus {
  box-shadow: 0 0 0 0.2rem rgba(225, 83, 97, 0.5); }

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

.btn-danger:not(:disabled):not(.disabled):active, .btn-danger:not(:disabled):not(.disabled).active,
.show > .btn-danger.dropdown-toggle {
  color: #fff;
  background-color: #bd2130;
  border-color: #b21f2d; }

.btn-danger:not(:disabled):not(.disabled):active:focus, .btn-danger:not(:disabled):not(.disabled).active:focus,
.show > .btn-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(225, 83, 97, 0.5); }

.btn-light {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa; }

.btn-light:hover {
  color: #212529;
  background-color: #e2e6ea;
  border-color: #dae0e5; }

.btn-light:focus, .btn-light.focus {
  box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5); }

.btn-light.disabled, .btn-light:disabled {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa; }

.btn-light:not(:disabled):not(.disabled):active, .btn-light:not(:disabled):not(.disabled).active,
.show > .btn-light.dropdown-toggle {
  color: #212529;
  background-color: #dae0e5;
  border-color: #d3d9df; }

.btn-light:not(:disabled):not(.disabled):active:focus, .btn-light:not(:disabled):not(.disabled).active:focus,
.show > .btn-light.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5); }

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

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

.btn-dark:focus, .btn-dark.focus {
  box-shadow: 0 0 0 0.2rem rgba(82, 88, 93, 0.5); }

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

.btn-dark:not(:disabled):not(.disabled):active, .btn-dark:not(:disabled):not(.disabled).active,
.show > .btn-dark.dropdown-toggle {
  color: #fff;
  background-color: #1d2124;
  border-color: #171a1d; }

.btn-dark:not(:disabled):not(.disabled):active:focus, .btn-dark:not(:disabled):not(.disabled).active:focus,
.show > .btn-dark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(82, 88, 93, 0.5); }

.btn-outline-primary {
  color: #007bff;
  border-color: #007bff; }

.btn-outline-primary:hover {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff; }

.btn-outline-primary:focus, .btn-outline-primary.focus {
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5); }

.btn-outline-primary.disabled, .btn-outline-primary:disabled {
  color: #007bff;
  background-color: transparent; }

.btn-outline-primary:not(:disabled):not(.disabled):active, .btn-outline-primary:not(:disabled):not(.disabled).active,
.show > .btn-outline-primary.dropdown-toggle {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff; }

.btn-outline-primary:not(:disabled):not(.disabled):active:focus, .btn-outline-primary:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5); }

.btn-outline-secondary {
  color: #6c757d;
  border-color: #6c757d; }

.btn-outline-secondary:hover {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d; }

.btn-outline-secondary:focus, .btn-outline-secondary.focus {
  box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5); }

.btn-outline-secondary.disabled, .btn-outline-secondary:disabled {
  color: #6c757d;
  background-color: transparent; }

.btn-outline-secondary:not(:disabled):not(.disabled):active, .btn-outline-secondary:not(:disabled):not(.disabled).active,
.show > .btn-outline-secondary.dropdown-toggle {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d; }

.btn-outline-secondary:not(:disabled):not(.disabled):active:focus, .btn-outline-secondary:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5); }

.btn-outline-success {
  color: #28a745;
  border-color: #28a745; }

.btn-outline-success:hover {
  color: #fff;
  background-color: #28a745;
  border-color: #28a745; }

.btn-outline-success:focus, .btn-outline-success.focus {
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5); }

.btn-outline-success.disabled, .btn-outline-success:disabled {
  color: #28a745;
  background-color: transparent; }

.btn-outline-success:not(:disabled):not(.disabled):active, .btn-outline-success:not(:disabled):not(.disabled).active,
.show > .btn-outline-success.dropdown-toggle {
  color: #fff;
  background-color: #28a745;
  border-color: #28a745; }

.btn-outline-success:not(:disabled):not(.disabled):active:focus, .btn-outline-success:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-success.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5); }

.btn-outline-info {
  color: #17a2b8;
  border-color: #17a2b8; }

.btn-outline-info:hover {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8; }

.btn-outline-info:focus, .btn-outline-info.focus {
  box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5); }

.btn-outline-info.disabled, .btn-outline-info:disabled {
  color: #17a2b8;
  background-color: transparent; }

.btn-outline-info:not(:disabled):not(.disabled):active, .btn-outline-info:not(:disabled):not(.disabled).active,
.show > .btn-outline-info.dropdown-toggle {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8; }

.btn-outline-info:not(:disabled):not(.disabled):active:focus, .btn-outline-info:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5); }

.btn-outline-warning {
  color: #ffc107;
  border-color: #ffc107; }

.btn-outline-warning:hover {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107; }

.btn-outline-warning:focus, .btn-outline-warning.focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5); }

.btn-outline-warning.disabled, .btn-outline-warning:disabled {
  color: #ffc107;
  background-color: transparent; }

.btn-outline-warning:not(:disabled):not(.disabled):active, .btn-outline-warning:not(:disabled):not(.disabled).active,
.show > .btn-outline-warning.dropdown-toggle {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107; }

.btn-outline-warning:not(:disabled):not(.disabled):active:focus, .btn-outline-warning:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-warning.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5); }

.btn-outline-danger {
  color: #dc3545;
  border-color: #dc3545; }

.btn-outline-danger:hover {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545; }

.btn-outline-danger:focus, .btn-outline-danger.focus {
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5); }

.btn-outline-danger.disabled, .btn-outline-danger:disabled {
  color: #dc3545;
  background-color: transparent; }

.btn-outline-danger:not(:disabled):not(.disabled):active, .btn-outline-danger:not(:disabled):not(.disabled).active,
.show > .btn-outline-danger.dropdown-toggle {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545; }

.btn-outline-danger:not(:disabled):not(.disabled):active:focus, .btn-outline-danger:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5); }

.btn-outline-light {
  color: #f8f9fa;
  border-color: #f8f9fa; }

.btn-outline-light:hover {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa; }

.btn-outline-light:focus, .btn-outline-light.focus {
  box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5); }

.btn-outline-light.disabled, .btn-outline-light:disabled {
  color: #f8f9fa;
  background-color: transparent; }

.btn-outline-light:not(:disabled):not(.disabled):active, .btn-outline-light:not(:disabled):not(.disabled).active,
.show > .btn-outline-light.dropdown-toggle {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa; }

.btn-outline-light:not(:disabled):not(.disabled):active:focus, .btn-outline-light:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-light.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5); }

.btn-outline-dark {
  color: #343a40;
  border-color: #343a40; }

.btn-outline-dark:hover {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40; }

.btn-outline-dark:focus, .btn-outline-dark.focus {
  box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5); }

.btn-outline-dark.disabled, .btn-outline-dark:disabled {
  color: #343a40;
  background-color: transparent; }

.btn-outline-dark:not(:disabled):not(.disabled):active, .btn-outline-dark:not(:disabled):not(.disabled).active,
.show > .btn-outline-dark.dropdown-toggle {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40; }

.btn-outline-dark:not(:disabled):not(.disabled):active:focus, .btn-outline-dark:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-dark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5); }

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

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

.btn-link:focus, .btn-link.focus {
  text-decoration: underline;
  box-shadow: none; }

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

.btn-lg, .btn-group-lg > .btn {
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem; }

.btn-sm, .btn-group-sm > .btn {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem; }

.btn-block {
  display: block;
  width: 100%; }

.btn-block + .btn-block {
  margin-top: 0.5rem; }

input[type="submit"].btn-block,
input[type="reset"].btn-block,
input[type="button"].btn-block {
  width: 100%; }

.fade {
  transition: opacity 0.15s linear; }

@media (prefers-reduced-motion: reduce) {
  .fade {
    transition: none; } }

.fade:not(.show) {
  opacity: 0; }

.collapse:not(.show) {
  display: none; }

.collapsing {
  position: relative;
  height: 0;
  overflow: hidden;
  transition: height 0.35s ease; }

@media (prefers-reduced-motion: reduce) {
  .collapsing {
    transition: none; } }

.dropup,
.dropright,
.dropdown,
.dropleft {
  position: relative; }

.dropdown-toggle {
  white-space: nowrap; }

.dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid;
  border-right: 0.3em solid transparent;
  border-bottom: 0;
  border-left: 0.3em solid transparent; }

.dropdown-toggle:empty::after {
  margin-left: 0; }

.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  display: none;
  float: left;
  min-width: 10rem;
  padding: 0.5rem 0;
  margin: 0.125rem 0 0;
  font-size: 1rem;
  color: #212529;
  text-align: left;
  list-style: none;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 0.25rem; }

.dropdown-menu-left {
  right: auto;
  left: 0; }

.dropdown-menu-right {
  right: 0;
  left: auto; }

@media (min-width: 576px) {
  .dropdown-menu-sm-left {
    right: auto;
    left: 0; }
  .dropdown-menu-sm-right {
    right: 0;
    left: auto; } }

@media (min-width: 768px) {
  .dropdown-menu-md-left {
    right: auto;
    left: 0; }
  .dropdown-menu-md-right {
    right: 0;
    left: auto; } }

@media (min-width: 992px) {
  .dropdown-menu-lg-left {
    right: auto;
    left: 0; }
  .dropdown-menu-lg-right {
    right: 0;
    left: auto; } }

@media (min-width: 1200px) {
  .dropdown-menu-xl-left {
    right: auto;
    left: 0; }
  .dropdown-menu-xl-right {
    right: 0;
    left: auto; } }

.dropup .dropdown-menu {
  top: auto;
  bottom: 100%;
  margin-top: 0;
  margin-bottom: 0.125rem; }

.dropup .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0;
  border-right: 0.3em solid transparent;
  border-bottom: 0.3em solid;
  border-left: 0.3em solid transparent; }

.dropup .dropdown-toggle:empty::after {
  margin-left: 0; }

.dropright .dropdown-menu {
  top: 0;
  right: auto;
  left: 100%;
  margin-top: 0;
  margin-left: 0.125rem; }

.dropright .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-right: 0;
  border-bottom: 0.3em solid transparent;
  border-left: 0.3em solid; }

.dropright .dropdown-toggle:empty::after {
  margin-left: 0; }

.dropright .dropdown-toggle::after {
  vertical-align: 0; }

.dropleft .dropdown-menu {
  top: 0;
  right: 100%;
  left: auto;
  margin-top: 0;
  margin-right: 0.125rem; }

.dropleft .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: ""; }

.dropleft .dropdown-toggle::after {
  display: none; }

.dropleft .dropdown-toggle::before {
  display: inline-block;
  margin-right: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-right: 0.3em solid;
  border-bottom: 0.3em solid transparent; }

.dropleft .dropdown-toggle:empty::after {
  margin-left: 0; }

.dropleft .dropdown-toggle::before {
  vertical-align: 0; }

.dropdown-menu[x-placement^="top"], .dropdown-menu[x-placement^="right"], .dropdown-menu[x-placement^="bottom"], .dropdown-menu[x-placement^="left"] {
  right: auto;
  bottom: auto; }

.dropdown-divider {
  height: 0;
  margin: 0.5rem 0;
  overflow: hidden;
  border-top: 1px solid #e9ecef; }

.dropdown-item {
  display: block;
  width: 100%;
  padding: 0.25rem 1.5rem;
  clear: both;
  font-weight: 400;
  color: #212529;
  text-align: inherit;
  white-space: nowrap;
  background-color: transparent;
  border: 0; }

.dropdown-item:hover, .dropdown-item:focus {
  color: #16181b;
  text-decoration: none;
  background-color: #f8f9fa; }

.dropdown-item.active, .dropdown-item:active {
  color: #fff;
  text-decoration: none;
  background-color: #007bff; }

.dropdown-item.disabled, .dropdown-item:disabled {
  color: #6c757d;
  pointer-events: none;
  background-color: transparent; }

.dropdown-menu.show {
  display: block; }

.dropdown-header {
  display: block;
  padding: 0.5rem 1.5rem;
  margin-bottom: 0;
  font-size: 0.875rem;
  color: #6c757d;
  white-space: nowrap; }

.dropdown-item-text {
  display: block;
  padding: 0.25rem 1.5rem;
  color: #212529; }

.btn-group,
.btn-group-vertical {
  position: relative;
  display: -ms-inline-flexbox;
  display: inline-flex;
  vertical-align: middle; }

.btn-group > .btn,
.btn-group-vertical > .btn {
  position: relative;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto; }

.btn-group > .btn:hover,
.btn-group-vertical > .btn:hover {
  z-index: 1; }

.btn-group > .btn:focus, .btn-group > .btn:active, .btn-group > .btn.active,
.btn-group-vertical > .btn:focus,
.btn-group-vertical > .btn:active,
.btn-group-vertical > .btn.active {
  z-index: 1; }

.btn-toolbar {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: start;
  justify-content: flex-start; }

.btn-toolbar .input-group {
  width: auto; }

.btn-group > .btn:not(:first-child),
.btn-group > .btn-group:not(:first-child) {
  margin-left: -1px; }

.btn-group > .btn:not(:last-child):not(.dropdown-toggle),
.btn-group > .btn-group:not(:last-child) > .btn {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0; }

.btn-group > .btn:not(:first-child),
.btn-group > .btn-group:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0; }

.dropdown-toggle-split {
  padding-right: 0.5625rem;
  padding-left: 0.5625rem; }

.dropdown-toggle-split::after,
.dropup .dropdown-toggle-split::after,
.dropright .dropdown-toggle-split::after {
  margin-left: 0; }

.dropleft .dropdown-toggle-split::before {
  margin-right: 0; }

.btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split {
  padding-right: 0.375rem;
  padding-left: 0.375rem; }

.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split {
  padding-right: 0.75rem;
  padding-left: 0.75rem; }

.btn-group-vertical {
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-align: start;
  align-items: flex-start;
  -ms-flex-pack: center;
  justify-content: center; }

.btn-group-vertical > .btn,
.btn-group-vertical > .btn-group {
  width: 100%; }

.btn-group-vertical > .btn:not(:first-child),
.btn-group-vertical > .btn-group:not(:first-child) {
  margin-top: -1px; }

.btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle),
.btn-group-vertical > .btn-group:not(:last-child) > .btn {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0; }

.btn-group-vertical > .btn:not(:first-child),
.btn-group-vertical > .btn-group:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-top-right-radius: 0; }

.btn-group-toggle > .btn,
.btn-group-toggle > .btn-group > .btn {
  margin-bottom: 0; }

.btn-group-toggle > .btn input[type="radio"],
.btn-group-toggle > .btn input[type="checkbox"],
.btn-group-toggle > .btn-group > .btn input[type="radio"],
.btn-group-toggle > .btn-group > .btn input[type="checkbox"] {
  position: absolute;
  clip: rect(0, 0, 0, 0);
  pointer-events: none; }

.input-group {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-align: stretch;
  align-items: stretch;
  width: 100%; }

.input-group > .form-control,
.input-group > .form-control-plaintext,
.input-group > .custom-select,
.input-group > .custom-file {
  position: relative;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  width: 1%;
  margin-bottom: 0; }

.input-group > .form-control + .form-control,
.input-group > .form-control + .custom-select,
.input-group > .form-control + .custom-file,
.input-group > .form-control-plaintext + .form-control,
.input-group > .form-control-plaintext + .custom-select,
.input-group > .form-control-plaintext + .custom-file,
.input-group > .custom-select + .form-control,
.input-group > .custom-select + .custom-select,
.input-group > .custom-select + .custom-file,
.input-group > .custom-file + .form-control,
.input-group > .custom-file + .custom-select,
.input-group > .custom-file + .custom-file {
  margin-left: -1px; }

.input-group > .form-control:focus,
.input-group > .custom-select:focus,
.input-group > .custom-file .custom-file-input:focus ~ .custom-file-label {
  z-index: 3; }

.input-group > .custom-file .custom-file-input:focus {
  z-index: 4; }

.input-group > .form-control:not(:last-child),
.input-group > .custom-select:not(:last-child) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0; }

.input-group > .form-control:not(:first-child),
.input-group > .custom-select:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0; }

.input-group > .custom-file {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center; }

.input-group > .custom-file:not(:last-child) .custom-file-label,
.input-group > .custom-file:not(:last-child) .custom-file-label::after {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0; }

.input-group > .custom-file:not(:first-child) .custom-file-label {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0; }

.input-group-prepend,
.input-group-append {
  display: -ms-flexbox;
  display: flex; }

.input-group-prepend .btn,
.input-group-append .btn {
  position: relative;
  z-index: 2; }

.input-group-prepend .btn:focus,
.input-group-append .btn:focus {
  z-index: 3; }

.input-group-prepend .btn + .btn,
.input-group-prepend .btn + .input-group-text,
.input-group-prepend .input-group-text + .input-group-text,
.input-group-prepend .input-group-text + .btn,
.input-group-append .btn + .btn,
.input-group-append .btn + .input-group-text,
.input-group-append .input-group-text + .input-group-text,
.input-group-append .input-group-text + .btn {
  margin-left: -1px; }

.input-group-prepend {
  margin-right: -1px; }

.input-group-append {
  margin-left: -1px; }

.input-group-text {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  padding: 0.375rem 0.75rem;
  margin-bottom: 0;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  text-align: center;
  white-space: nowrap;
  background-color: #e9ecef;
  border: 1px solid #ced4da;
  border-radius: 0.25rem; }

.input-group-text input[type="radio"],
.input-group-text input[type="checkbox"] {
  margin-top: 0; }

.input-group-lg > .form-control:not(textarea),
.input-group-lg > .custom-select {
  height: calc(1.5em + 1rem + 2px); }

.input-group-lg > .form-control,
.input-group-lg > .custom-select,
.input-group-lg > .input-group-prepend > .input-group-text,
.input-group-lg > .input-group-append > .input-group-text,
.input-group-lg > .input-group-prepend > .btn,
.input-group-lg > .input-group-append > .btn {
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem; }

.input-group-sm > .form-control:not(textarea),
.input-group-sm > .custom-select {
  height: calc(1.5em + 0.5rem + 2px); }

.input-group-sm > .form-control,
.input-group-sm > .custom-select,
.input-group-sm > .input-group-prepend > .input-group-text,
.input-group-sm > .input-group-append > .input-group-text,
.input-group-sm > .input-group-prepend > .btn,
.input-group-sm > .input-group-append > .btn {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem; }

.input-group-lg > .custom-select,
.input-group-sm > .custom-select {
  padding-right: 1.75rem; }

.input-group > .input-group-prepend > .btn,
.input-group > .input-group-prepend > .input-group-text,
.input-group > .input-group-append:not(:last-child) > .btn,
.input-group > .input-group-append:not(:last-child) > .input-group-text,
.input-group > .input-group-append:last-child > .btn:not(:last-child):not(.dropdown-toggle),
.input-group > .input-group-append:last-child > .input-group-text:not(:last-child) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0; }

.input-group > .input-group-append > .btn,
.input-group > .input-group-append > .input-group-text,
.input-group > .input-group-prepend:not(:first-child) > .btn,
.input-group > .input-group-prepend:not(:first-child) > .input-group-text,
.input-group > .input-group-prepend:first-child > .btn:not(:first-child),
.input-group > .input-group-prepend:first-child > .input-group-text:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0; }

.custom-control {
  position: relative;
  display: block;
  min-height: 1.5rem;
  padding-left: 1.5rem; }

.custom-control-inline {
  display: -ms-inline-flexbox;
  display: inline-flex;
  margin-right: 1rem; }

.custom-control-input {
  position: absolute;
  z-index: -1;
  opacity: 0; }

.custom-control-input:checked ~ .custom-control-label::before {
  color: #fff;
  border-color: #007bff;
  background-color: #007bff; }

.custom-control-input:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }

.custom-control-input:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #80bdff; }

.custom-control-input:not(:disabled):active ~ .custom-control-label::before {
  color: #fff;
  background-color: #b3d7ff;
  border-color: #b3d7ff; }

.custom-control-input:disabled ~ .custom-control-label {
  color: #6c757d; }

.custom-control-input:disabled ~ .custom-control-label::before {
  background-color: #e9ecef; }

.custom-control-label {
  position: relative;
  margin-bottom: 0;
  vertical-align: top; }

.custom-control-label::before {
  position: absolute;
  top: 0.25rem;
  left: -1.5rem;
  display: block;
  width: 1rem;
  height: 1rem;
  pointer-events: none;
  content: "";
  background-color: #fff;
  border: #adb5bd solid 1px; }

.custom-control-label::after {
  position: absolute;
  top: 0.25rem;
  left: -1.5rem;
  display: block;
  width: 1rem;
  height: 1rem;
  content: "";
  background: no-repeat 50% / 50% 50%; }

.custom-checkbox .custom-control-label::before {
  border-radius: 0.25rem; }

.custom-checkbox .custom-control-input:checked ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3e%3c/svg%3e"); }

.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::before {
  border-color: #007bff;
  background-color: #007bff; }

.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 4'%3e%3cpath stroke='%23fff' d='M0 2h4'/%3e%3c/svg%3e"); }

.custom-checkbox .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5); }

.custom-checkbox .custom-control-input:disabled:indeterminate ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5); }

.custom-radio .custom-control-label::before {
  border-radius: 50%; }

.custom-radio .custom-control-input:checked ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e"); }

.custom-radio .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5); }

.custom-switch {
  padding-left: 2.25rem; }

.custom-switch .custom-control-label::before {
  left: -2.25rem;
  width: 1.75rem;
  pointer-events: all;
  border-radius: 0.5rem; }

.custom-switch .custom-control-label::after {
  top: calc(0.25rem + 2px);
  left: calc(-2.25rem + 2px);
  width: calc(1rem - 4px);
  height: calc(1rem - 4px);
  background-color: #adb5bd;
  border-radius: 0.5rem;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-transform 0.15s ease-in-out;
  transition: transform 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;
  transition: transform 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, -webkit-transform 0.15s ease-in-out; }

@media (prefers-reduced-motion: reduce) {
  .custom-switch .custom-control-label::after {
    transition: none; } }

.custom-switch .custom-control-input:checked ~ .custom-control-label::after {
  background-color: #fff;
  -webkit-transform: translateX(0.75rem);
  transform: translateX(0.75rem); }

.custom-switch .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5); }

.custom-select {
  display: inline-block;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem 1.75rem 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  vertical-align: middle;
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 0.75rem center/8px 10px;
  background-color: #fff;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }

.custom-select:focus {
  border-color: #80bdff;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }

.custom-select:focus::-ms-value {
  color: #495057;
  background-color: #fff; }

.custom-select[multiple], .custom-select[size]:not([size="1"]) {
  height: auto;
  padding-right: 0.75rem;
  background-image: none; }

.custom-select:disabled {
  color: #6c757d;
  background-color: #e9ecef; }

.custom-select::-ms-expand {
  display: none; }

.custom-select-sm {
  height: calc(1.5em + 0.5rem + 2px);
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  padding-left: 0.5rem;
  font-size: 0.875rem; }

.custom-select-lg {
  height: calc(1.5em + 1rem + 2px);
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 1rem;
  font-size: 1.25rem; }

.custom-file {
  position: relative;
  display: inline-block;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  margin-bottom: 0; }

.custom-file-input {
  position: relative;
  z-index: 2;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  margin: 0;
  opacity: 0; }

.custom-file-input:focus ~ .custom-file-label {
  border-color: #80bdff;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }

.custom-file-input:disabled ~ .custom-file-label {
  background-color: #e9ecef; }

.custom-file-input:lang(en) ~ .custom-file-label::after {
  content: "Browse"; }

.custom-file-input ~ .custom-file-label[data-browse]::after {
  content: attr(data-browse); }

.custom-file-label {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1;
  height: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem 0.75rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  background-color: #fff;
  border: 1px solid #ced4da;
  border-radius: 0.25rem; }

.custom-file-label::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 3;
  display: block;
  height: calc(1.5em + 0.75rem);
  padding: 0.375rem 0.75rem;
  line-height: 1.5;
  color: #495057;
  content: "Browse";
  background-color: #e9ecef;
  border-left: inherit;
  border-radius: 0 0.25rem 0.25rem 0; }

.custom-range {
  width: 100%;
  height: calc(1rem + 0.4rem);
  padding: 0;
  background-color: transparent;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }

.custom-range:focus {
  outline: none; }

.custom-range:focus::-webkit-slider-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }

.custom-range:focus::-moz-range-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }

.custom-range:focus::-ms-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }

.custom-range::-moz-focus-outer {
  border: 0; }

.custom-range::-webkit-slider-thumb {
  width: 1rem;
  height: 1rem;
  margin-top: -0.25rem;
  background-color: #007bff;
  border: 0;
  border-radius: 1rem;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  -webkit-appearance: none;
  appearance: none; }

@media (prefers-reduced-motion: reduce) {
  .custom-range::-webkit-slider-thumb {
    transition: none; } }

.custom-range::-webkit-slider-thumb:active {
  background-color: #b3d7ff; }

.custom-range::-webkit-slider-runnable-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: #dee2e6;
  border-color: transparent;
  border-radius: 1rem; }

.custom-range::-moz-range-thumb {
  width: 1rem;
  height: 1rem;
  background-color: #007bff;
  border: 0;
  border-radius: 1rem;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  -moz-appearance: none;
  appearance: none; }

@media (prefers-reduced-motion: reduce) {
  .custom-range::-moz-range-thumb {
    transition: none; } }

.custom-range::-moz-range-thumb:active {
  background-color: #b3d7ff; }

.custom-range::-moz-range-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: #dee2e6;
  border-color: transparent;
  border-radius: 1rem; }

.custom-range::-ms-thumb {
  width: 1rem;
  height: 1rem;
  margin-top: 0;
  margin-right: 0.2rem;
  margin-left: 0.2rem;
  background-color: #007bff;
  border: 0;
  border-radius: 1rem;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  appearance: none; }

@media (prefers-reduced-motion: reduce) {
  .custom-range::-ms-thumb {
    transition: none; } }

.custom-range::-ms-thumb:active {
  background-color: #b3d7ff; }

.custom-range::-ms-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: transparent;
  border-color: transparent;
  border-width: 0.5rem; }

.custom-range::-ms-fill-lower {
  background-color: #dee2e6;
  border-radius: 1rem; }

.custom-range::-ms-fill-upper {
  margin-right: 15px;
  background-color: #dee2e6;
  border-radius: 1rem; }

.custom-range:disabled::-webkit-slider-thumb {
  background-color: #adb5bd; }

.custom-range:disabled::-webkit-slider-runnable-track {
  cursor: default; }

.custom-range:disabled::-moz-range-thumb {
  background-color: #adb5bd; }

.custom-range:disabled::-moz-range-track {
  cursor: default; }

.custom-range:disabled::-ms-thumb {
  background-color: #adb5bd; }

.custom-control-label::before,
.custom-file-label,
.custom-select {
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; }

@media (prefers-reduced-motion: reduce) {
  .custom-control-label::before,
  .custom-file-label,
  .custom-select {
    transition: none; } }

.nav {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none; }

.nav-link {
  display: block;
  padding: 0.5rem 1rem; }

.nav-link:hover, .nav-link:focus {
  text-decoration: none; }

.nav-link.disabled {
  color: #6c757d;
  pointer-events: none;
  cursor: default; }

.nav-tabs {
  border-bottom: 1px solid #dee2e6; }

.nav-tabs .nav-item {
  margin-bottom: -1px; }

.nav-tabs .nav-link {
  border: 1px solid transparent;
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem; }

.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {
  border-color: #e9ecef #e9ecef #dee2e6; }

.nav-tabs .nav-link.disabled {
  color: #6c757d;
  background-color: transparent;
  border-color: transparent; }

.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
  color: #495057;
  background-color: #fff;
  border-color: #dee2e6 #dee2e6 #fff; }

.nav-tabs .dropdown-menu {
  margin-top: -1px;
  border-top-left-radius: 0;
  border-top-right-radius: 0; }

.nav-pills .nav-link {
  border-radius: 0.25rem; }

.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
  color: #fff;
  background-color: #007bff; }

.nav-fill .nav-item {
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  text-align: center; }

.nav-justified .nav-item {
  -ms-flex-preferred-size: 0;
  flex-basis: 0;
  -ms-flex-positive: 1;
  flex-grow: 1;
  text-align: center; }

.tab-content > .tab-pane {
  display: none; }

.tab-content > .active {
  display: block; }

.navbar {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 0.5rem 1rem; }

.navbar > .container,
.navbar > .container-fluid {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: justify;
  justify-content: space-between; }

.navbar-brand {
  display: inline-block;
  padding-top: 0.3125rem;
  padding-bottom: 0.3125rem;
  margin-right: 1rem;
  font-size: 1.25rem;
  line-height: inherit;
  white-space: nowrap; }

.navbar-brand:hover, .navbar-brand:focus {
  text-decoration: none; }

.navbar-nav {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none; }

.navbar-nav .nav-link {
  padding-right: 0;
  padding-left: 0; }

.navbar-nav .dropdown-menu {
  position: static;
  float: none; }

.navbar-text {
  display: inline-block;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem; }

.navbar-collapse {
  -ms-flex-preferred-size: 100%;
  flex-basis: 100%;
  -ms-flex-positive: 1;
  flex-grow: 1;
  -ms-flex-align: center;
  align-items: center; }

.navbar-toggler {
  padding: 0.25rem 0.75rem;
  font-size: 1.25rem;
  line-height: 1;
  background-color: transparent;
  border: 1px solid transparent;
  border-radius: 0.25rem; }

.navbar-toggler:hover, .navbar-toggler:focus {
  text-decoration: none; }

.navbar-toggler-icon {
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  vertical-align: middle;
  content: "";
  background: no-repeat center center;
  background-size: 100% 100%; }

@media (max-width: 575.98px) {
  .navbar-expand-sm > .container,
  .navbar-expand-sm > .container-fluid {
    padding-right: 0;
    padding-left: 0; } }

@media (min-width: 576px) {
  .navbar-expand-sm {
    -ms-flex-flow: row nowrap;
    flex-flow: row nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start; }
  .navbar-expand-sm .navbar-nav {
    -ms-flex-direction: row;
    flex-direction: row; }
  .navbar-expand-sm .navbar-nav .dropdown-menu {
    position: absolute; }
  .navbar-expand-sm .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem; }
  .navbar-expand-sm > .container,
  .navbar-expand-sm > .container-fluid {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap; }
  .navbar-expand-sm .navbar-collapse {
    display: -ms-flexbox !important;
    display: flex !important;
    -ms-flex-preferred-size: auto;
    flex-basis: auto; }
  .navbar-expand-sm .navbar-toggler {
    display: none; } }

@media (max-width: 767.98px) {
  .navbar-expand-md > .container,
  .navbar-expand-md > .container-fluid {
    padding-right: 0;
    padding-left: 0; } }

@media (min-width: 768px) {
  .navbar-expand-md {
    -ms-flex-flow: row nowrap;
    flex-flow: row nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start; }
  .navbar-expand-md .navbar-nav {
    -ms-flex-direction: row;
    flex-direction: row; }
  .navbar-expand-md .navbar-nav .dropdown-menu {
    position: absolute; }
  .navbar-expand-md .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem; }
  .navbar-expand-md > .container,
  .navbar-expand-md > .container-fluid {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap; }
  .navbar-expand-md .navbar-collapse {
    display: -ms-flexbox !important;
    display: flex !important;
    -ms-flex-preferred-size: auto;
    flex-basis: auto; }
  .navbar-expand-md .navbar-toggler {
    display: none; } }

@media (max-width: 991.98px) {
  .navbar-expand-lg > .container,
  .navbar-expand-lg > .container-fluid {
    padding-right: 0;
    padding-left: 0; } }

@media (min-width: 992px) {
  .navbar-expand-lg {
    -ms-flex-flow: row nowrap;
    flex-flow: row nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start; }
  .navbar-expand-lg .navbar-nav {
    -ms-flex-direction: row;
    flex-direction: row; }
  .navbar-expand-lg .navbar-nav .dropdown-menu {
    position: absolute; }
  .navbar-expand-lg .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem; }
  .navbar-expand-lg > .container,
  .navbar-expand-lg > .container-fluid {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap; }
  .navbar-expand-lg .navbar-collapse {
    display: -ms-flexbox !important;
    display: flex !important;
    -ms-flex-preferred-size: auto;
    flex-basis: auto; }
  .navbar-expand-lg .navbar-toggler {
    display: none; } }

@media (max-width: 1199.98px) {
  .navbar-expand-xl > .container,
  .navbar-expand-xl > .container-fluid {
    padding-right: 0;
    padding-left: 0; } }

@media (min-width: 1200px) {
  .navbar-expand-xl {
    -ms-flex-flow: row nowrap;
    flex-flow: row nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start; }
  .navbar-expand-xl .navbar-nav {
    -ms-flex-direction: row;
    flex-direction: row; }
  .navbar-expand-xl .navbar-nav .dropdown-menu {
    position: absolute; }
  .navbar-expand-xl .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem; }
  .navbar-expand-xl > .container,
  .navbar-expand-xl > .container-fluid {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap; }
  .navbar-expand-xl .navbar-collapse {
    display: -ms-flexbox !important;
    display: flex !important;
    -ms-flex-preferred-size: auto;
    flex-basis: auto; }
  .navbar-expand-xl .navbar-toggler {
    display: none; } }

.navbar-expand {
  -ms-flex-flow: row nowrap;
  flex-flow: row nowrap;
  -ms-flex-pack: start;
  justify-content: flex-start; }

.navbar-expand > .container,
.navbar-expand > .container-fluid {
  padding-right: 0;
  padding-left: 0; }

.navbar-expand .navbar-nav {
  -ms-flex-direction: row;
  flex-direction: row; }

.navbar-expand .navbar-nav .dropdown-menu {
  position: absolute; }

.navbar-expand .navbar-nav .nav-link {
  padding-right: 0.5rem;
  padding-left: 0.5rem; }

.navbar-expand > .container,
.navbar-expand > .container-fluid {
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap; }

.navbar-expand .navbar-collapse {
  display: -ms-flexbox !important;
  display: flex !important;
  -ms-flex-preferred-size: auto;
  flex-basis: auto; }

.navbar-expand .navbar-toggler {
  display: none; }

.navbar-light .navbar-brand {
  color: rgba(0, 0, 0, 0.9); }

.navbar-light .navbar-brand:hover, .navbar-light .navbar-brand:focus {
  color: rgba(0, 0, 0, 0.9); }

.navbar-light .navbar-nav .nav-link {
  color: rgba(0, 0, 0, 0.5); }

.navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus {
  color: rgba(0, 0, 0, 0.7); }

.navbar-light .navbar-nav .nav-link.disabled {
  color: rgba(0, 0, 0, 0.3); }

.navbar-light .navbar-nav .show > .nav-link,
.navbar-light .navbar-nav .active > .nav-link,
.navbar-light .navbar-nav .nav-link.show,
.navbar-light .navbar-nav .nav-link.active {
  color: rgba(0, 0, 0, 0.9); }

.navbar-light .navbar-toggler {
  color: rgba(0, 0, 0, 0.5);
  border-color: rgba(0, 0, 0, 0.1); }

.navbar-light .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba(0, 0, 0, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"); }

.navbar-light .navbar-text {
  color: rgba(0, 0, 0, 0.5); }

.navbar-light .navbar-text a {
  color: rgba(0, 0, 0, 0.9); }

.navbar-light .navbar-text a:hover, .navbar-light .navbar-text a:focus {
  color: rgba(0, 0, 0, 0.9); }

.navbar-dark .navbar-brand {
  color: #fff; }

.navbar-dark .navbar-brand:hover, .navbar-dark .navbar-brand:focus {
  color: #fff; }

.navbar-dark .navbar-nav .nav-link {
  color: rgba(255, 255, 255, 0.5); }

.navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus {
  color: rgba(255, 255, 255, 0.75); }

.navbar-dark .navbar-nav .nav-link.disabled {
  color: rgba(255, 255, 255, 0.25); }

.navbar-dark .navbar-nav .show > .nav-link,
.navbar-dark .navbar-nav .active > .nav-link,
.navbar-dark .navbar-nav .nav-link.show,
.navbar-dark .navbar-nav .nav-link.active {
  color: #fff; }

.navbar-dark .navbar-toggler {
  color: rgba(255, 255, 255, 0.5);
  border-color: rgba(255, 255, 255, 0.1); }

.navbar-dark .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba(255, 255, 255, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"); }

.navbar-dark .navbar-text {
  color: rgba(255, 255, 255, 0.5); }

.navbar-dark .navbar-text a {
  color: #fff; }

.navbar-dark .navbar-text a:hover, .navbar-dark .navbar-text a:focus {
  color: #fff; }

.card {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  min-width: 0;
  word-wrap: break-word;
  background-color: #fff;
  background-clip: border-box;
  border: 1px solid rgba(0, 0, 0, 0.125);
  border-radius: 0.25rem; }

.card > hr {
  margin-right: 0;
  margin-left: 0; }

.card > .list-group:first-child .list-group-item:first-child {
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem; }

.card > .list-group:last-child .list-group-item:last-child {
  border-bottom-right-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem; }

.card-body {
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  padding: 1.25rem; }

.card-title {
  margin-bottom: 0.75rem; }

.card-subtitle {
  margin-top: -0.375rem;
  margin-bottom: 0; }

.card-text:last-child {
  margin-bottom: 0; }

.card-link:hover {
  text-decoration: none; }

.card-link + .card-link {
  margin-left: 1.25rem; }

.card-header {
  padding: 0.75rem 1.25rem;
  margin-bottom: 0;
  background-color: rgba(0, 0, 0, 0.03);
  border-bottom: 1px solid rgba(0, 0, 0, 0.125); }

.card-header:first-child {
  border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0; }

.card-header + .list-group .list-group-item:first-child {
  border-top: 0; }

.card-footer {
  padding: 0.75rem 1.25rem;
  background-color: rgba(0, 0, 0, 0.03);
  border-top: 1px solid rgba(0, 0, 0, 0.125); }

.card-footer:last-child {
  border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px); }

.card-header-tabs {
  margin-right: -0.625rem;
  margin-bottom: -0.75rem;
  margin-left: -0.625rem;
  border-bottom: 0; }

.card-header-pills {
  margin-right: -0.625rem;
  margin-left: -0.625rem; }

.card-img-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 1.25rem; }

.card-img {
  width: 100%;
  border-radius: calc(0.25rem - 1px); }

.card-img-top {
  width: 100%;
  border-top-left-radius: calc(0.25rem - 1px);
  border-top-right-radius: calc(0.25rem - 1px); }

.card-img-bottom {
  width: 100%;
  border-bottom-right-radius: calc(0.25rem - 1px);
  border-bottom-left-radius: calc(0.25rem - 1px); }

.card-deck {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column; }

.card-deck .card {
  margin-bottom: 15px; }

@media (min-width: 576px) {
  .card-deck {
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    margin-right: -15px;
    margin-left: -15px; }
  .card-deck .card {
    display: -ms-flexbox;
    display: flex;
    -ms-flex: 1 0 0%;
    flex: 1 0 0%;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-right: 15px;
    margin-bottom: 0;
    margin-left: 15px; } }

.card-group {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column; }

.card-group > .card {
  margin-bottom: 15px; }

@media (min-width: 576px) {
  .card-group {
    -ms-flex-flow: row wrap;
    flex-flow: row wrap; }
  .card-group > .card {
    -ms-flex: 1 0 0%;
    flex: 1 0 0%;
    margin-bottom: 0; }
  .card-group > .card + .card {
    margin-left: 0;
    border-left: 0; }
  .card-group > .card:not(:last-child) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0; }
  .card-group > .card:not(:last-child) .card-img-top,
  .card-group > .card:not(:last-child) .card-header {
    border-top-right-radius: 0; }
  .card-group > .card:not(:last-child) .card-img-bottom,
  .card-group > .card:not(:last-child) .card-footer {
    border-bottom-right-radius: 0; }
  .card-group > .card:not(:first-child) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0; }
  .card-group > .card:not(:first-child) .card-img-top,
  .card-group > .card:not(:first-child) .card-header {
    border-top-left-radius: 0; }
  .card-group > .card:not(:first-child) .card-img-bottom,
  .card-group > .card:not(:first-child) .card-footer {
    border-bottom-left-radius: 0; } }

.card-columns .card {
  margin-bottom: 0.75rem; }

@media (min-width: 576px) {
  .card-columns {
    -webkit-column-count: 3;
    -moz-column-count: 3;
    column-count: 3;
    -webkit-column-gap: 1.25rem;
    -moz-column-gap: 1.25rem;
    column-gap: 1.25rem;
    orphans: 1;
    widows: 1; }
  .card-columns .card {
    display: inline-block;
    width: 100%; } }

.accordion > .card {
  overflow: hidden; }

.accordion > .card:not(:first-of-type) .card-header:first-child {
  border-radius: 0; }

.accordion > .card:not(:first-of-type):not(:last-of-type) {
  border-bottom: 0;
  border-radius: 0; }

.accordion > .card:first-of-type {
  border-bottom: 0;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0; }

.accordion > .card:last-of-type {
  border-top-left-radius: 0;
  border-top-right-radius: 0; }

.accordion > .card .card-header {
  margin-bottom: -1px; }

.breadcrumb {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 0.75rem 1rem;
  margin-bottom: 1rem;
  list-style: none;
  background-color: #e9ecef;
  border-radius: 0.25rem; }

.breadcrumb-item + .breadcrumb-item {
  padding-left: 0.5rem; }

.breadcrumb-item + .breadcrumb-item::before {
  display: inline-block;
  padding-right: 0.5rem;
  color: #6c757d;
  content: "/"; }

.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: underline; }

.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: none; }

.breadcrumb-item.active {
  color: #6c757d; }

.pagination {
  display: -ms-flexbox;
  display: flex;
  padding-left: 0;
  list-style: none;
  border-radius: 0.25rem; }

.page-link {
  position: relative;
  display: block;
  padding: 0.5rem 0.75rem;
  margin-left: -1px;
  line-height: 1.25;
  color: #007bff;
  background-color: #fff;
  border: 1px solid #dee2e6; }

.page-link:hover {
  z-index: 2;
  color: #0056b3;
  text-decoration: none;
  background-color: #e9ecef;
  border-color: #dee2e6; }

.page-link:focus {
  z-index: 2;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25); }

.page-item:first-child .page-link {
  margin-left: 0;
  border-top-left-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem; }

.page-item:last-child .page-link {
  border-top-right-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem; }

.page-item.active .page-link {
  z-index: 1;
  color: #fff;
  background-color: #007bff;
  border-color: #007bff; }

.page-item.disabled .page-link {
  color: #6c757d;
  pointer-events: none;
  cursor: auto;
  background-color: #fff;
  border-color: #dee2e6; }

.pagination-lg .page-link {
  padding: 0.75rem 1.5rem;
  font-size: 1.25rem;
  line-height: 1.5; }

.pagination-lg .page-item:first-child .page-link {
  border-top-left-radius: 0.3rem;
  border-bottom-left-radius: 0.3rem; }

.pagination-lg .page-item:last-child .page-link {
  border-top-right-radius: 0.3rem;
  border-bottom-right-radius: 0.3rem; }

.pagination-sm .page-link {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5; }

.pagination-sm .page-item:first-child .page-link {
  border-top-left-radius: 0.2rem;
  border-bottom-left-radius: 0.2rem; }

.pagination-sm .page-item:last-child .page-link {
  border-top-right-radius: 0.2rem;
  border-bottom-right-radius: 0.2rem; }

.badge {
  display: inline-block;
  padding: 0.25em 0.4em;
  font-size: 75%;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  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; }

@media (prefers-reduced-motion: reduce) {
  .badge {
    transition: none; } }

a.badge:hover, a.badge:focus {
  text-decoration: none; }

.badge:empty {
  display: none; }

.btn .badge {
  position: relative;
  top: -1px; }

.badge-pill {
  padding-right: 0.6em;
  padding-left: 0.6em;
  border-radius: 10rem; }

.badge-primary {
  color: #fff;
  background-color: #007bff; }

a.badge-primary:hover, a.badge-primary:focus {
  color: #fff;
  background-color: #0062cc; }

a.badge-primary:focus, a.badge-primary.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5); }

.badge-secondary {
  color: #fff;
  background-color: #6c757d; }

a.badge-secondary:hover, a.badge-secondary:focus {
  color: #fff;
  background-color: #545b62; }

a.badge-secondary:focus, a.badge-secondary.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5); }

.badge-success {
  color: #fff;
  background-color: #28a745; }

a.badge-success:hover, a.badge-success:focus {
  color: #fff;
  background-color: #1e7e34; }

a.badge-success:focus, a.badge-success.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5); }

.badge-info {
  color: #fff;
  background-color: #17a2b8; }

a.badge-info:hover, a.badge-info:focus {
  color: #fff;
  background-color: #117a8b; }

a.badge-info:focus, a.badge-info.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5); }

.badge-warning {
  color: #212529;
  background-color: #ffc107; }

a.badge-warning:hover, a.badge-warning:focus {
  color: #212529;
  background-color: #d39e00; }

a.badge-warning:focus, a.badge-warning.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5); }

.badge-danger {
  color: #fff;
  background-color: #dc3545; }

a.badge-danger:hover, a.badge-danger:focus {
  color: #fff;
  background-color: #bd2130; }

a.badge-danger:focus, a.badge-danger.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5); }

.badge-light {
  color: #212529;
  background-color: #f8f9fa; }

a.badge-light:hover, a.badge-light:focus {
  color: #212529;
  background-color: #dae0e5; }

a.badge-light:focus, a.badge-light.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5); }

.badge-dark {
  color: #fff;
  background-color: #343a40; }

a.badge-dark:hover, a.badge-dark:focus {
  color: #fff;
  background-color: #1d2124; }

a.badge-dark:focus, a.badge-dark.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5); }

.jumbotron {
  padding: 2rem 1rem;
  margin-bottom: 2rem;
  background-color: #e9ecef;
  border-radius: 0.3rem; }

@media (min-width: 576px) {
  .jumbotron {
    padding: 4rem 2rem; } }

.jumbotron-fluid {
  padding-right: 0;
  padding-left: 0;
  border-radius: 0; }

.alert {
  position: relative;
  padding: 0.75rem 1.25rem;
  margin-bottom: 1rem;
  border: 1px solid transparent;
  border-radius: 0.25rem; }

.alert-heading {
  color: inherit; }

.alert-link {
  font-weight: 700; }

.alert-dismissible {
  padding-right: 4rem; }

.alert-dismissible .close {
  position: absolute;
  top: 0;
  right: 0;
  padding: 0.75rem 1.25rem;
  color: inherit; }

.alert-primary {
  color: #004085;
  background-color: #cce5ff;
  border-color: #b8daff; }

.alert-primary hr {
  border-top-color: #9fcdff; }

.alert-primary .alert-link {
  color: #002752; }

.alert-secondary {
  color: #383d41;
  background-color: #e2e3e5;
  border-color: #d6d8db; }

.alert-secondary hr {
  border-top-color: #c8cbcf; }

.alert-secondary .alert-link {
  color: #202326; }

.alert-success {
  color: #155724;
  background-color: #d4edda;
  border-color: #c3e6cb; }

.alert-success hr {
  border-top-color: #b1dfbb; }

.alert-success .alert-link {
  color: #0b2e13; }

.alert-info {
  color: #0c5460;
  background-color: #d1ecf1;
  border-color: #bee5eb; }

.alert-info hr {
  border-top-color: #abdde5; }

.alert-info .alert-link {
  color: #062c33; }

.alert-warning {
  color: #856404;
  background-color: #fff3cd;
  border-color: #ffeeba; }

.alert-warning hr {
  border-top-color: #ffe8a1; }

.alert-warning .alert-link {
  color: #533f03; }

.alert-danger {
  color: #721c24;
  background-color: #f8d7da;
  border-color: #f5c6cb; }

.alert-danger hr {
  border-top-color: #f1b0b7; }

.alert-danger .alert-link {
  color: #491217; }

.alert-light {
  color: #818182;
  background-color: #fefefe;
  border-color: #fdfdfe; }

.alert-light hr {
  border-top-color: #ececf6; }

.alert-light .alert-link {
  color: #686868; }

.alert-dark {
  color: #1b1e21;
  background-color: #d6d8d9;
  border-color: #c6c8ca; }

.alert-dark hr {
  border-top-color: #b9bbbe; }

.alert-dark .alert-link {
  color: #040505; }

@-webkit-keyframes progress-bar-stripes {
  from {
    background-position: 1rem 0; }
  to {
    background-position: 0 0; } }

@keyframes progress-bar-stripes {
  from {
    background-position: 1rem 0; }
  to {
    background-position: 0 0; } }

.progress {
  display: -ms-flexbox;
  display: flex;
  height: 1rem;
  overflow: hidden;
  font-size: 0.75rem;
  background-color: #e9ecef;
  border-radius: 0.25rem; }

.progress-bar {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-pack: center;
  justify-content: center;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  background-color: #007bff;
  transition: width 0.6s ease; }

@media (prefers-reduced-motion: reduce) {
  .progress-bar {
    transition: none; } }

.progress-bar-striped {
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-size: 1rem 1rem; }

.progress-bar-animated {
  -webkit-animation: progress-bar-stripes 1s linear infinite;
  animation: progress-bar-stripes 1s linear infinite; }

@media (prefers-reduced-motion: reduce) {
  .progress-bar-animated {
    -webkit-animation: none;
    animation: none; } }

.media {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: start;
  align-items: flex-start; }

.media-body {
  -ms-flex: 1;
  flex: 1; }

.list-group {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0; }

.list-group-item-action {
  width: 100%;
  color: #495057;
  text-align: inherit; }

.list-group-item-action:hover, .list-group-item-action:focus {
  z-index: 1;
  color: #495057;
  text-decoration: none;
  background-color: #f8f9fa; }

.list-group-item-action:active {
  color: #212529;
  background-color: #e9ecef; }

.list-group-item {
  position: relative;
  display: block;
  padding: 0.75rem 1.25rem;
  margin-bottom: -1px;
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.125); }

.list-group-item:first-child {
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem; }

.list-group-item:last-child {
  margin-bottom: 0;
  border-bottom-right-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem; }

.list-group-item.disabled, .list-group-item:disabled {
  color: #6c757d;
  pointer-events: none;
  background-color: #fff; }

.list-group-item.active {
  z-index: 2;
  color: #fff;
  background-color: #007bff;
  border-color: #007bff; }

.list-group-horizontal {
  -ms-flex-direction: row;
  flex-direction: row; }

.list-group-horizontal .list-group-item {
  margin-right: -1px;
  margin-bottom: 0; }

.list-group-horizontal .list-group-item:first-child {
  border-top-left-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
  border-top-right-radius: 0; }

.list-group-horizontal .list-group-item:last-child {
  margin-right: 0;
  border-top-right-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem;
  border-bottom-left-radius: 0; }

@media (min-width: 576px) {
  .list-group-horizontal-sm {
    -ms-flex-direction: row;
    flex-direction: row; }
  .list-group-horizontal-sm .list-group-item {
    margin-right: -1px;
    margin-bottom: 0; }
  .list-group-horizontal-sm .list-group-item:first-child {
    border-top-left-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0; }
  .list-group-horizontal-sm .list-group-item:last-child {
    margin-right: 0;
    border-top-right-radius: 0.25rem;
    border-bottom-right-radius: 0.25rem;
    border-bottom-left-radius: 0; } }

@media (min-width: 768px) {
  .list-group-horizontal-md {
    -ms-flex-direction: row;
    flex-direction: row; }
  .list-group-horizontal-md .list-group-item {
    margin-right: -1px;
    margin-bottom: 0; }
  .list-group-horizontal-md .list-group-item:first-child {
    border-top-left-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0; }
  .list-group-horizontal-md .list-group-item:last-child {
    margin-right: 0;
    border-top-right-radius: 0.25rem;
    border-bottom-right-radius: 0.25rem;
    border-bottom-left-radius: 0; } }

@media (min-width: 992px) {
  .list-group-horizontal-lg {
    -ms-flex-direction: row;
    flex-direction: row; }
  .list-group-horizontal-lg .list-group-item {
    margin-right: -1px;
    margin-bottom: 0; }
  .list-group-horizontal-lg .list-group-item:first-child {
    border-top-left-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0; }
  .list-group-horizontal-lg .list-group-item:last-child {
    margin-right: 0;
    border-top-right-radius: 0.25rem;
    border-bottom-right-radius: 0.25rem;
    border-bottom-left-radius: 0; } }

@media (min-width: 1200px) {
  .list-group-horizontal-xl {
    -ms-flex-direction: row;
    flex-direction: row; }
  .list-group-horizontal-xl .list-group-item {
    margin-right: -1px;
    margin-bottom: 0; }
  .list-group-horizontal-xl .list-group-item:first-child {
    border-top-left-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0; }
  .list-group-horizontal-xl .list-group-item:last-child {
    margin-right: 0;
    border-top-right-radius: 0.25rem;
    border-bottom-right-radius: 0.25rem;
    border-bottom-left-radius: 0; } }

.list-group-flush .list-group-item {
  border-right: 0;
  border-left: 0;
  border-radius: 0; }

.list-group-flush .list-group-item:last-child {
  margin-bottom: -1px; }

.list-group-flush:first-child .list-group-item:first-child {
  border-top: 0; }

.list-group-flush:last-child .list-group-item:last-child {
  margin-bottom: 0;
  border-bottom: 0; }

.list-group-item-primary {
  color: #004085;
  background-color: #b8daff; }

.list-group-item-primary.list-group-item-action:hover, .list-group-item-primary.list-group-item-action:focus {
  color: #004085;
  background-color: #9fcdff; }

.list-group-item-primary.list-group-item-action.active {
  color: #fff;
  background-color: #004085;
  border-color: #004085; }

.list-group-item-secondary {
  color: #383d41;
  background-color: #d6d8db; }

.list-group-item-secondary.list-group-item-action:hover, .list-group-item-secondary.list-group-item-action:focus {
  color: #383d41;
  background-color: #c8cbcf; }

.list-group-item-secondary.list-group-item-action.active {
  color: #fff;
  background-color: #383d41;
  border-color: #383d41; }

.list-group-item-success {
  color: #155724;
  background-color: #c3e6cb; }

.list-group-item-success.list-group-item-action:hover, .list-group-item-success.list-group-item-action:focus {
  color: #155724;
  background-color: #b1dfbb; }

.list-group-item-success.list-group-item-action.active {
  color: #fff;
  background-color: #155724;
  border-color: #155724; }

.list-group-item-info {
  color: #0c5460;
  background-color: #bee5eb; }

.list-group-item-info.list-group-item-action:hover, .list-group-item-info.list-group-item-action:focus {
  color: #0c5460;
  background-color: #abdde5; }

.list-group-item-info.list-group-item-action.active {
  color: #fff;
  background-color: #0c5460;
  border-color: #0c5460; }

.list-group-item-warning {
  color: #856404;
  background-color: #ffeeba; }

.list-group-item-warning.list-group-item-action:hover, .list-group-item-warning.list-group-item-action:focus {
  color: #856404;
  background-color: #ffe8a1; }

.list-group-item-warning.list-group-item-action.active {
  color: #fff;
  background-color: #856404;
  border-color: #856404; }

.list-group-item-danger {
  color: #721c24;
  background-color: #f5c6cb; }

.list-group-item-danger.list-group-item-action:hover, .list-group-item-danger.list-group-item-action:focus {
  color: #721c24;
  background-color: #f1b0b7; }

.list-group-item-danger.list-group-item-action.active {
  color: #fff;
  background-color: #721c24;
  border-color: #721c24; }

.list-group-item-light {
  color: #818182;
  background-color: #fdfdfe; }

.list-group-item-light.list-group-item-action:hover, .list-group-item-light.list-group-item-action:focus {
  color: #818182;
  background-color: #ececf6; }

.list-group-item-light.list-group-item-action.active {
  color: #fff;
  background-color: #818182;
  border-color: #818182; }

.list-group-item-dark {
  color: #1b1e21;
  background-color: #c6c8ca; }

.list-group-item-dark.list-group-item-action:hover, .list-group-item-dark.list-group-item-action:focus {
  color: #1b1e21;
  background-color: #b9bbbe; }

.list-group-item-dark.list-group-item-action.active {
  color: #fff;
  background-color: #1b1e21;
  border-color: #1b1e21; }

.close {
  float: right;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1;
  color: #000;
  text-shadow: 0 1px 0 #fff;
  opacity: .5; }

.close:hover {
  color: #000;
  text-decoration: none; }

.close:not(:disabled):not(.disabled):hover, .close:not(:disabled):not(.disabled):focus {
  opacity: .75; }

button.close {
  padding: 0;
  background-color: transparent;
  border: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }

a.close.disabled {
  pointer-events: none; }

.toast {
  max-width: 350px;
  overflow: hidden;
  font-size: 0.875rem;
  background-color: rgba(255, 255, 255, 0.85);
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.1);
  box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.1);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  opacity: 0;
  border-radius: 0.25rem; }

.toast:not(:last-child) {
  margin-bottom: 0.75rem; }

.toast.showing {
  opacity: 1; }

.toast.show {
  display: block;
  opacity: 1; }

.toast.hide {
  display: none; }

.toast-header {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  padding: 0.25rem 0.75rem;
  color: #6c757d;
  background-color: rgba(255, 255, 255, 0.85);
  background-clip: padding-box;
  border-bottom: 1px solid rgba(0, 0, 0, 0.05); }

.toast-body {
  padding: 0.75rem; }

.modal-open {
  overflow: hidden; }

.modal-open .modal {
  overflow-x: hidden;
  overflow-y: auto; }

.modal {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1050;
  display: none;
  width: 100%;
  height: 100%;
  overflow: hidden;
  outline: 0; }

.modal-dialog {
  position: relative;
  width: auto;
  margin: 0.5rem;
  pointer-events: none; }

.modal.fade .modal-dialog {
  transition: -webkit-transform 0.3s ease-out;
  transition: transform 0.3s ease-out;
  transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out;
  -webkit-transform: translate(0, -50px);
  transform: translate(0, -50px); }

@media (prefers-reduced-motion: reduce) {
  .modal.fade .modal-dialog {
    transition: none; } }

.modal.show .modal-dialog {
  -webkit-transform: none;
  transform: none; }

.modal-dialog-scrollable {
  display: -ms-flexbox;
  display: flex;
  max-height: calc(100% - 1rem); }

.modal-dialog-scrollable .modal-content {
  max-height: calc(100vh - 1rem);
  overflow: hidden; }

.modal-dialog-scrollable .modal-header,
.modal-dialog-scrollable .modal-footer {
  -ms-flex-negative: 0;
  flex-shrink: 0; }

.modal-dialog-scrollable .modal-body {
  overflow-y: auto; }

.modal-dialog-centered {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  min-height: calc(100% - 1rem); }

.modal-dialog-centered::before {
  display: block;
  height: calc(100vh - 1rem);
  content: ""; }

.modal-dialog-centered.modal-dialog-scrollable {
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-pack: center;
  justify-content: center;
  height: 100%; }

.modal-dialog-centered.modal-dialog-scrollable .modal-content {
  max-height: none; }

.modal-dialog-centered.modal-dialog-scrollable::before {
  content: none; }

.modal-content {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  width: 100%;
  pointer-events: auto;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 0.3rem;
  outline: 0; }

.modal-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1040;
  width: 100vw;
  height: 100vh;
  background-color: #000; }

.modal-backdrop.fade {
  opacity: 0; }

.modal-backdrop.show {
  opacity: 0.5; }

.modal-header {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: start;
  align-items: flex-start;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 1rem 1rem;
  border-bottom: 1px solid #dee2e6;
  border-top-left-radius: 0.3rem;
  border-top-right-radius: 0.3rem; }

.modal-header .close {
  padding: 1rem 1rem;
  margin: -1rem -1rem -1rem auto; }

.modal-title {
  margin-bottom: 0;
  line-height: 1.5; }

.modal-body {
  position: relative;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  padding: 1rem; }

.modal-footer {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: end;
  justify-content: flex-end;
  padding: 1rem;
  border-top: 1px solid #dee2e6;
  border-bottom-right-radius: 0.3rem;
  border-bottom-left-radius: 0.3rem; }

.modal-footer > :not(:first-child) {
  margin-left: .25rem; }

.modal-footer > :not(:last-child) {
  margin-right: .25rem; }

.modal-scrollbar-measure {
  position: absolute;
  top: -9999px;
  width: 50px;
  height: 50px;
  overflow: scroll; }

@media (min-width: 576px) {
  .modal-dialog {
    max-width: 500px;
    margin: 1.75rem auto; }
  .modal-dialog-scrollable {
    max-height: calc(100% - 3.5rem); }
  .modal-dialog-scrollable .modal-content {
    max-height: calc(100vh - 3.5rem); }
  .modal-dialog-centered {
    min-height: calc(100% - 3.5rem); }
  .modal-dialog-centered::before {
    height: calc(100vh - 3.5rem); }
  .modal-sm {
    max-width: 300px; } }

@media (min-width: 992px) {
  .modal-lg,
  .modal-xl {
    max-width: 800px; } }

@media (min-width: 1200px) {
  .modal-xl {
    max-width: 1140px; } }

.tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  white-space: normal;
  line-break: auto;
  font-size: 0.875rem;
  word-wrap: break-word;
  opacity: 0; }

.tooltip.show {
  opacity: 0.9; }

.tooltip .arrow {
  position: absolute;
  display: block;
  width: 0.8rem;
  height: 0.4rem; }

.tooltip .arrow::before {
  position: absolute;
  content: "";
  border-color: transparent;
  border-style: solid; }

.bs-tooltip-top, .bs-tooltip-auto[x-placement^="top"] {
  padding: 0.4rem 0; }

.bs-tooltip-top .arrow, .bs-tooltip-auto[x-placement^="top"] .arrow {
  bottom: 0; }

.bs-tooltip-top .arrow::before, .bs-tooltip-auto[x-placement^="top"] .arrow::before {
  top: 0;
  border-width: 0.4rem 0.4rem 0;
  border-top-color: #000; }

.bs-tooltip-right, .bs-tooltip-auto[x-placement^="right"] {
  padding: 0 0.4rem; }

.bs-tooltip-right .arrow, .bs-tooltip-auto[x-placement^="right"] .arrow {
  left: 0;
  width: 0.4rem;
  height: 0.8rem; }

.bs-tooltip-right .arrow::before, .bs-tooltip-auto[x-placement^="right"] .arrow::before {
  right: 0;
  border-width: 0.4rem 0.4rem 0.4rem 0;
  border-right-color: #000; }

.bs-tooltip-bottom, .bs-tooltip-auto[x-placement^="bottom"] {
  padding: 0.4rem 0; }

.bs-tooltip-bottom .arrow, .bs-tooltip-auto[x-placement^="bottom"] .arrow {
  top: 0; }

.bs-tooltip-bottom .arrow::before, .bs-tooltip-auto[x-placement^="bottom"] .arrow::before {
  bottom: 0;
  border-width: 0 0.4rem 0.4rem;
  border-bottom-color: #000; }

.bs-tooltip-left, .bs-tooltip-auto[x-placement^="left"] {
  padding: 0 0.4rem; }

.bs-tooltip-left .arrow, .bs-tooltip-auto[x-placement^="left"] .arrow {
  right: 0;
  width: 0.4rem;
  height: 0.8rem; }

.bs-tooltip-left .arrow::before, .bs-tooltip-auto[x-placement^="left"] .arrow::before {
  left: 0;
  border-width: 0.4rem 0 0.4rem 0.4rem;
  border-left-color: #000; }

.tooltip-inner {
  max-width: 200px;
  padding: 0.25rem 0.5rem;
  color: #fff;
  text-align: center;
  background-color: #000;
  border-radius: 0.25rem; }

.popover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1060;
  display: block;
  max-width: 276px;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  white-space: normal;
  line-break: auto;
  font-size: 0.875rem;
  word-wrap: break-word;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 0.3rem; }

.popover .arrow {
  position: absolute;
  display: block;
  width: 1rem;
  height: 0.5rem;
  margin: 0 0.3rem; }

.popover .arrow::before, .popover .arrow::after {
  position: absolute;
  display: block;
  content: "";
  border-color: transparent;
  border-style: solid; }

.bs-popover-top, .bs-popover-auto[x-placement^="top"] {
  margin-bottom: 0.5rem; }

.bs-popover-top > .arrow, .bs-popover-auto[x-placement^="top"] > .arrow {
  bottom: calc((0.5rem + 1px) * -1); }

.bs-popover-top > .arrow::before, .bs-popover-auto[x-placement^="top"] > .arrow::before {
  bottom: 0;
  border-width: 0.5rem 0.5rem 0;
  border-top-color: rgba(0, 0, 0, 0.25); }

.bs-popover-top > .arrow::after, .bs-popover-auto[x-placement^="top"] > .arrow::after {
  bottom: 1px;
  border-width: 0.5rem 0.5rem 0;
  border-top-color: #fff; }

.bs-popover-right, .bs-popover-auto[x-placement^="right"] {
  margin-left: 0.5rem; }

.bs-popover-right > .arrow, .bs-popover-auto[x-placement^="right"] > .arrow {
  left: calc((0.5rem + 1px) * -1);
  width: 0.5rem;
  height: 1rem;
  margin: 0.3rem 0; }

.bs-popover-right > .arrow::before, .bs-popover-auto[x-placement^="right"] > .arrow::before {
  left: 0;
  border-width: 0.5rem 0.5rem 0.5rem 0;
  border-right-color: rgba(0, 0, 0, 0.25); }

.bs-popover-right > .arrow::after, .bs-popover-auto[x-placement^="right"] > .arrow::after {
  left: 1px;
  border-width: 0.5rem 0.5rem 0.5rem 0;
  border-right-color: #fff; }

.bs-popover-bottom, .bs-popover-auto[x-placement^="bottom"] {
  margin-top: 0.5rem; }

.bs-popover-bottom > .arrow, .bs-popover-auto[x-placement^="bottom"] > .arrow {
  top: calc((0.5rem + 1px) * -1); }

.bs-popover-bottom > .arrow::before, .bs-popover-auto[x-placement^="bottom"] > .arrow::before {
  top: 0;
  border-width: 0 0.5rem 0.5rem 0.5rem;
  border-bottom-color: rgba(0, 0, 0, 0.25); }

.bs-popover-bottom > .arrow::after, .bs-popover-auto[x-placement^="bottom"] > .arrow::after {
  top: 1px;
  border-width: 0 0.5rem 0.5rem 0.5rem;
  border-bottom-color: #fff; }

.bs-popover-bottom .popover-header::before, .bs-popover-auto[x-placement^="bottom"] .popover-header::before {
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  width: 1rem;
  margin-left: -0.5rem;
  content: "";
  border-bottom: 1px solid #f7f7f7; }

.bs-popover-left, .bs-popover-auto[x-placement^="left"] {
  margin-right: 0.5rem; }

.bs-popover-left > .arrow, .bs-popover-auto[x-placement^="left"] > .arrow {
  right: calc((0.5rem + 1px) * -1);
  width: 0.5rem;
  height: 1rem;
  margin: 0.3rem 0; }

.bs-popover-left > .arrow::before, .bs-popover-auto[x-placement^="left"] > .arrow::before {
  right: 0;
  border-width: 0.5rem 0 0.5rem 0.5rem;
  border-left-color: rgba(0, 0, 0, 0.25); }

.bs-popover-left > .arrow::after, .bs-popover-auto[x-placement^="left"] > .arrow::after {
  right: 1px;
  border-width: 0.5rem 0 0.5rem 0.5rem;
  border-left-color: #fff; }

.popover-header {
  padding: 0.5rem 0.75rem;
  margin-bottom: 0;
  font-size: 1rem;
  background-color: #f7f7f7;
  border-bottom: 1px solid #ebebeb;
  border-top-left-radius: calc(0.3rem - 1px);
  border-top-right-radius: calc(0.3rem - 1px); }

.popover-header:empty {
  display: none; }

.popover-body {
  padding: 0.5rem 0.75rem;
  color: #212529; }

.carousel {
  position: relative; }

.carousel.pointer-event {
  -ms-touch-action: pan-y;
  touch-action: pan-y; }

.carousel-inner {
  position: relative;
  width: 100%;
  overflow: hidden; }

.carousel-inner::after {
  display: block;
  clear: both;
  content: ""; }

.carousel-item {
  position: relative;
  display: none;
  float: left;
  width: 100%;
  margin-right: -100%;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  transition: -webkit-transform 0.6s ease-in-out;
  transition: transform 0.6s ease-in-out;
  transition: transform 0.6s ease-in-out, -webkit-transform 0.6s ease-in-out; }

@media (prefers-reduced-motion: reduce) {
  .carousel-item {
    transition: none; } }

.carousel-item.active,
.carousel-item-next,
.carousel-item-prev {
  display: block; }

.carousel-item-next:not(.carousel-item-left),
.active.carousel-item-right {
  -webkit-transform: translateX(100%);
  transform: translateX(100%); }

.carousel-item-prev:not(.carousel-item-right),
.active.carousel-item-left {
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%); }

.carousel-fade .carousel-item {
  opacity: 0;
  transition-property: opacity;
  -webkit-transform: none;
  transform: none; }

.carousel-fade .carousel-item.active,
.carousel-fade .carousel-item-next.carousel-item-left,
.carousel-fade .carousel-item-prev.carousel-item-right {
  z-index: 1;
  opacity: 1; }

.carousel-fade .active.carousel-item-left,
.carousel-fade .active.carousel-item-right {
  z-index: 0;
  opacity: 0;
  transition: 0s 0.6s opacity; }

@media (prefers-reduced-motion: reduce) {
  .carousel-fade .active.carousel-item-left,
  .carousel-fade .active.carousel-item-right {
    transition: none; } }

.carousel-control-prev,
.carousel-control-next {
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 1;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 15%;
  color: #fff;
  text-align: center;
  opacity: 0.5;
  transition: opacity 0.15s ease; }

@media (prefers-reduced-motion: reduce) {
  .carousel-control-prev,
  .carousel-control-next {
    transition: none; } }

.carousel-control-prev:hover, .carousel-control-prev:focus,
.carousel-control-next:hover,
.carousel-control-next:focus {
  color: #fff;
  text-decoration: none;
  outline: 0;
  opacity: 0.9; }

.carousel-control-prev {
  left: 0; }

.carousel-control-next {
  right: 0; }

.carousel-control-prev-icon,
.carousel-control-next-icon {
  display: inline-block;
  width: 20px;
  height: 20px;
  background: no-repeat 50% / 100% 100%; }

.carousel-control-prev-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3e%3c/svg%3e"); }

.carousel-control-next-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3e%3c/svg%3e"); }

.carousel-indicators {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 15;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  padding-left: 0;
  margin-right: 15%;
  margin-left: 15%;
  list-style: none; }

.carousel-indicators li {
  box-sizing: content-box;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
  width: 30px;
  height: 3px;
  margin-right: 3px;
  margin-left: 3px;
  text-indent: -999px;
  cursor: pointer;
  background-color: #fff;
  background-clip: padding-box;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  opacity: .5;
  transition: opacity 0.6s ease; }

@media (prefers-reduced-motion: reduce) {
  .carousel-indicators li {
    transition: none; } }

.carousel-indicators .active {
  opacity: 1; }

.carousel-caption {
  position: absolute;
  right: 15%;
  bottom: 20px;
  left: 15%;
  z-index: 10;
  padding-top: 20px;
  padding-bottom: 20px;
  color: #fff;
  text-align: center; }

@-webkit-keyframes spinner-border {
  to {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }

@keyframes spinner-border {
  to {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }

.spinner-border {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: text-bottom;
  border: 0.25em solid currentColor;
  border-right-color: transparent;
  border-radius: 50%;
  -webkit-animation: spinner-border .75s linear infinite;
  animation: spinner-border .75s linear infinite; }

.spinner-border-sm {
  width: 1rem;
  height: 1rem;
  border-width: 0.2em; }

@-webkit-keyframes spinner-grow {
  0% {
    -webkit-transform: scale(0);
    transform: scale(0); }
  50% {
    opacity: 1; } }

@keyframes spinner-grow {
  0% {
    -webkit-transform: scale(0);
    transform: scale(0); }
  50% {
    opacity: 1; } }

.spinner-grow {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: text-bottom;
  background-color: currentColor;
  border-radius: 50%;
  opacity: 0;
  -webkit-animation: spinner-grow .75s linear infinite;
  animation: spinner-grow .75s linear infinite; }

.spinner-grow-sm {
  width: 1rem;
  height: 1rem; }

.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-sm {
  border-radius: 0.2rem !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-lg {
  border-radius: 0.3rem !important; }

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

.rounded-pill {
  border-radius: 50rem !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: -ms-flexbox !important;
  display: flex !important; }

.d-inline-flex {
  display: -ms-inline-flexbox !important;
  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: -ms-flexbox !important;
    display: flex !important; }
  .d-sm-inline-flex {
    display: -ms-inline-flexbox !important;
    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: -ms-flexbox !important;
    display: flex !important; }
  .d-md-inline-flex {
    display: -ms-inline-flexbox !important;
    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: -ms-flexbox !important;
    display: flex !important; }
  .d-lg-inline-flex {
    display: -ms-inline-flexbox !important;
    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: -ms-flexbox !important;
    display: flex !important; }
  .d-xl-inline-flex {
    display: -ms-inline-flexbox !important;
    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: -ms-flexbox !important;
    display: flex !important; }
  .d-print-inline-flex {
    display: -ms-inline-flexbox !important;
    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.857143%; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.flex-shrink-1 {
  -ms-flex-negative: 1 !important;
  flex-shrink: 1 !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; }

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

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

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

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

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

.align-content-stretch {
  -ms-flex-line-pack: stretch !important;
  align-content: stretch !important; }

.align-self-auto {
  -ms-flex-item-align: auto !important;
  align-self: auto !important; }

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

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

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

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

.align-self-stretch {
  -ms-flex-item-align: stretch !important;
  align-self: stretch !important; }

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

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

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

@media (min-width: 1200px) {
  .flex-xl-row {
    -ms-flex-direction: row !important;
    flex-direction: row !important; }
  .flex-xl-column {
    -ms-flex-direction: column !important;
    flex-direction: column !important; }
  .flex-xl-row-reverse {
    -ms-flex-direction: row-reverse !important;
    flex-direction: row-reverse !important; }
  .flex-xl-column-reverse {
    -ms-flex-direction: column-reverse !important;
    flex-direction: column-reverse !important; }
  .flex-xl-wrap {
    -ms-flex-wrap: wrap !important;
    flex-wrap: wrap !important; }
  .flex-xl-nowrap {
    -ms-flex-wrap: nowrap !important;
    flex-wrap: nowrap !important; }
  .flex-xl-wrap-reverse {
    -ms-flex-wrap: wrap-reverse !important;
    flex-wrap: wrap-reverse !important; }
  .flex-xl-fill {
    -ms-flex: 1 1 auto !important;
    flex: 1 1 auto !important; }
  .flex-xl-grow-0 {
    -ms-flex-positive: 0 !important;
    flex-grow: 0 !important; }
  .flex-xl-grow-1 {
    -ms-flex-positive: 1 !important;
    flex-grow: 1 !important; }
  .flex-xl-shrink-0 {
    -ms-flex-negative: 0 !important;
    flex-shrink: 0 !important; }
  .flex-xl-shrink-1 {
    -ms-flex-negative: 1 !important;
    flex-shrink: 1 !important; }
  .justify-content-xl-start {
    -ms-flex-pack: start !important;
    justify-content: flex-start !important; }
  .justify-content-xl-end {
    -ms-flex-pack: end !important;
    justify-content: flex-end !important; }
  .justify-content-xl-center {
    -ms-flex-pack: center !important;
    justify-content: center !important; }
  .justify-content-xl-between {
    -ms-flex-pack: justify !important;
    justify-content: space-between !important; }
  .justify-content-xl-around {
    -ms-flex-pack: distribute !important;
    justify-content: space-around !important; }
  .align-items-xl-start {
    -ms-flex-align: start !important;
    align-items: flex-start !important; }
  .align-items-xl-end {
    -ms-flex-align: end !important;
    align-items: flex-end !important; }
  .align-items-xl-center {
    -ms-flex-align: center !important;
    align-items: center !important; }
  .align-items-xl-baseline {
    -ms-flex-align: baseline !important;
    align-items: baseline !important; }
  .align-items-xl-stretch {
    -ms-flex-align: stretch !important;
    align-items: stretch !important; }
  .align-content-xl-start {
    -ms-flex-line-pack: start !important;
    align-content: flex-start !important; }
  .align-content-xl-end {
    -ms-flex-line-pack: end !important;
    align-content: flex-end !important; }
  .align-content-xl-center {
    -ms-flex-line-pack: center !important;
    align-content: center !important; }
  .align-content-xl-between {
    -ms-flex-line-pack: justify !important;
    align-content: space-between !important; }
  .align-content-xl-around {
    -ms-flex-line-pack: distribute !important;
    align-content: space-around !important; }
  .align-content-xl-stretch {
    -ms-flex-line-pack: stretch !important;
    align-content: stretch !important; }
  .align-self-xl-auto {
    -ms-flex-item-align: auto !important;
    align-self: auto !important; }
  .align-self-xl-start {
    -ms-flex-item-align: start !important;
    align-self: flex-start !important; }
  .align-self-xl-end {
    -ms-flex-item-align: end !important;
    align-self: flex-end !important; }
  .align-self-xl-center {
    -ms-flex-item-align: center !important;
    align-self: center !important; }
  .align-self-xl-baseline {
    -ms-flex-item-align: baseline !important;
    align-self: baseline !important; }
  .align-self-xl-stretch {
    -ms-flex-item-align: stretch !important;
    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; } }

.overflow-auto {
  overflow: auto !important; }

.overflow-hidden {
  overflow: hidden !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; }

.min-vw-100 {
  min-width: 100vw !important; }

.min-vh-100 {
  min-height: 100vh !important; }

.vw-100 {
  width: 100vw !important; }

.vh-100 {
  height: 100vh !important; }

.stretched-link::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  pointer-events: auto;
  content: "";
  background-color: rgba(0, 0, 0, 0); }

.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-n1 {
  margin: -0.25rem !important; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.ml-n5,
.mx-n5 {
  margin-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-n1 {
    margin: -0.25rem !important; }
  .mt-sm-n1,
  .my-sm-n1 {
    margin-top: -0.25rem !important; }
  .mr-sm-n1,
  .mx-sm-n1 {
    margin-right: -0.25rem !important; }
  .mb-sm-n1,
  .my-sm-n1 {
    margin-bottom: -0.25rem !important; }
  .ml-sm-n1,
  .mx-sm-n1 {
    margin-left: -0.25rem !important; }
  .m-sm-n2 {
    margin: -0.5rem !important; }
  .mt-sm-n2,
  .my-sm-n2 {
    margin-top: -0.5rem !important; }
  .mr-sm-n2,
  .mx-sm-n2 {
    margin-right: -0.5rem !important; }
  .mb-sm-n2,
  .my-sm-n2 {
    margin-bottom: -0.5rem !important; }
  .ml-sm-n2,
  .mx-sm-n2 {
    margin-left: -0.5rem !important; }
  .m-sm-n3 {
    margin: -1rem !important; }
  .mt-sm-n3,
  .my-sm-n3 {
    margin-top: -1rem !important; }
  .mr-sm-n3,
  .mx-sm-n3 {
    margin-right: -1rem !important; }
  .mb-sm-n3,
  .my-sm-n3 {
    margin-bottom: -1rem !important; }
  .ml-sm-n3,
  .mx-sm-n3 {
    margin-left: -1rem !important; }
  .m-sm-n4 {
    margin: -1.5rem !important; }
  .mt-sm-n4,
  .my-sm-n4 {
    margin-top: -1.5rem !important; }
  .mr-sm-n4,
  .mx-sm-n4 {
    margin-right: -1.5rem !important; }
  .mb-sm-n4,
  .my-sm-n4 {
    margin-bottom: -1.5rem !important; }
  .ml-sm-n4,
  .mx-sm-n4 {
    margin-left: -1.5rem !important; }
  .m-sm-n5 {
    margin: -3rem !important; }
  .mt-sm-n5,
  .my-sm-n5 {
    margin-top: -3rem !important; }
  .mr-sm-n5,
  .mx-sm-n5 {
    margin-right: -3rem !important; }
  .mb-sm-n5,
  .my-sm-n5 {
    margin-bottom: -3rem !important; }
  .ml-sm-n5,
  .mx-sm-n5 {
    margin-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-n1 {
    margin: -0.25rem !important; }
  .mt-md-n1,
  .my-md-n1 {
    margin-top: -0.25rem !important; }
  .mr-md-n1,
  .mx-md-n1 {
    margin-right: -0.25rem !important; }
  .mb-md-n1,
  .my-md-n1 {
    margin-bottom: -0.25rem !important; }
  .ml-md-n1,
  .mx-md-n1 {
    margin-left: -0.25rem !important; }
  .m-md-n2 {
    margin: -0.5rem !important; }
  .mt-md-n2,
  .my-md-n2 {
    margin-top: -0.5rem !important; }
  .mr-md-n2,
  .mx-md-n2 {
    margin-right: -0.5rem !important; }
  .mb-md-n2,
  .my-md-n2 {
    margin-bottom: -0.5rem !important; }
  .ml-md-n2,
  .mx-md-n2 {
    margin-left: -0.5rem !important; }
  .m-md-n3 {
    margin: -1rem !important; }
  .mt-md-n3,
  .my-md-n3 {
    margin-top: -1rem !important; }
  .mr-md-n3,
  .mx-md-n3 {
    margin-right: -1rem !important; }
  .mb-md-n3,
  .my-md-n3 {
    margin-bottom: -1rem !important; }
  .ml-md-n3,
  .mx-md-n3 {
    margin-left: -1rem !important; }
  .m-md-n4 {
    margin: -1.5rem !important; }
  .mt-md-n4,
  .my-md-n4 {
    margin-top: -1.5rem !important; }
  .mr-md-n4,
  .mx-md-n4 {
    margin-right: -1.5rem !important; }
  .mb-md-n4,
  .my-md-n4 {
    margin-bottom: -1.5rem !important; }
  .ml-md-n4,
  .mx-md-n4 {
    margin-left: -1.5rem !important; }
  .m-md-n5 {
    margin: -3rem !important; }
  .mt-md-n5,
  .my-md-n5 {
    margin-top: -3rem !important; }
  .mr-md-n5,
  .mx-md-n5 {
    margin-right: -3rem !important; }
  .mb-md-n5,
  .my-md-n5 {
    margin-bottom: -3rem !important; }
  .ml-md-n5,
  .mx-md-n5 {
    margin-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-n1 {
    margin: -0.25rem !important; }
  .mt-lg-n1,
  .my-lg-n1 {
    margin-top: -0.25rem !important; }
  .mr-lg-n1,
  .mx-lg-n1 {
    margin-right: -0.25rem !important; }
  .mb-lg-n1,
  .my-lg-n1 {
    margin-bottom: -0.25rem !important; }
  .ml-lg-n1,
  .mx-lg-n1 {
    margin-left: -0.25rem !important; }
  .m-lg-n2 {
    margin: -0.5rem !important; }
  .mt-lg-n2,
  .my-lg-n2 {
    margin-top: -0.5rem !important; }
  .mr-lg-n2,
  .mx-lg-n2 {
    margin-right: -0.5rem !important; }
  .mb-lg-n2,
  .my-lg-n2 {
    margin-bottom: -0.5rem !important; }
  .ml-lg-n2,
  .mx-lg-n2 {
    margin-left: -0.5rem !important; }
  .m-lg-n3 {
    margin: -1rem !important; }
  .mt-lg-n3,
  .my-lg-n3 {
    margin-top: -1rem !important; }
  .mr-lg-n3,
  .mx-lg-n3 {
    margin-right: -1rem !important; }
  .mb-lg-n3,
  .my-lg-n3 {
    margin-bottom: -1rem !important; }
  .ml-lg-n3,
  .mx-lg-n3 {
    margin-left: -1rem !important; }
  .m-lg-n4 {
    margin: -1.5rem !important; }
  .mt-lg-n4,
  .my-lg-n4 {
    margin-top: -1.5rem !important; }
  .mr-lg-n4,
  .mx-lg-n4 {
    margin-right: -1.5rem !important; }
  .mb-lg-n4,
  .my-lg-n4 {
    margin-bottom: -1.5rem !important; }
  .ml-lg-n4,
  .mx-lg-n4 {
    margin-left: -1.5rem !important; }
  .m-lg-n5 {
    margin: -3rem !important; }
  .mt-lg-n5,
  .my-lg-n5 {
    margin-top: -3rem !important; }
  .mr-lg-n5,
  .mx-lg-n5 {
    margin-right: -3rem !important; }
  .mb-lg-n5,
  .my-lg-n5 {
    margin-bottom: -3rem !important; }
  .ml-lg-n5,
  .mx-lg-n5 {
    margin-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-n1 {
    margin: -0.25rem !important; }
  .mt-xl-n1,
  .my-xl-n1 {
    margin-top: -0.25rem !important; }
  .mr-xl-n1,
  .mx-xl-n1 {
    margin-right: -0.25rem !important; }
  .mb-xl-n1,
  .my-xl-n1 {
    margin-bottom: -0.25rem !important; }
  .ml-xl-n1,
  .mx-xl-n1 {
    margin-left: -0.25rem !important; }
  .m-xl-n2 {
    margin: -0.5rem !important; }
  .mt-xl-n2,
  .my-xl-n2 {
    margin-top: -0.5rem !important; }
  .mr-xl-n2,
  .mx-xl-n2 {
    margin-right: -0.5rem !important; }
  .mb-xl-n2,
  .my-xl-n2 {
    margin-bottom: -0.5rem !important; }
  .ml-xl-n2,
  .mx-xl-n2 {
    margin-left: -0.5rem !important; }
  .m-xl-n3 {
    margin: -1rem !important; }
  .mt-xl-n3,
  .my-xl-n3 {
    margin-top: -1rem !important; }
  .mr-xl-n3,
  .mx-xl-n3 {
    margin-right: -1rem !important; }
  .mb-xl-n3,
  .my-xl-n3 {
    margin-bottom: -1rem !important; }
  .ml-xl-n3,
  .mx-xl-n3 {
    margin-left: -1rem !important; }
  .m-xl-n4 {
    margin: -1.5rem !important; }
  .mt-xl-n4,
  .my-xl-n4 {
    margin-top: -1.5rem !important; }
  .mr-xl-n4,
  .mx-xl-n4 {
    margin-right: -1.5rem !important; }
  .mb-xl-n4,
  .my-xl-n4 {
    margin-bottom: -1.5rem !important; }
  .ml-xl-n4,
  .mx-xl-n4 {
    margin-left: -1.5rem !important; }
  .m-xl-n5 {
    margin: -3rem !important; }
  .mt-xl-n5,
  .my-xl-n5 {
    margin-top: -3rem !important; }
  .mr-xl-n5,
  .mx-xl-n5 {
    margin-right: -3rem !important; }
  .mb-xl-n5,
  .my-xl-n5 {
    margin-bottom: -3rem !important; }
  .ml-xl-n5,
  .mx-xl-n5 {
    margin-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 !important; }

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

.text-wrap {
  white-space: normal !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-lighter {
  font-weight: lighter !important; }

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

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

.font-weight-bolder {
  font-weight: bolder !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: #0056b3 !important; }

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

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

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

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

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

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

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

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

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

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

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

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

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

a.text-dark:hover, a.text-dark:focus {
  color: #121416 !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; }

.text-decoration-none {
  text-decoration: none !important; }

.text-break {
  word-break: break-word !important;
  overflow-wrap: break-word !important; }

.text-reset {
  color: inherit !important; }

.visible {
  visibility: visible !important; }

.invisible {
  visibility: hidden !important; }

@media print {
  *,
  *::before,
  *::after {
    text-shadow: none !important;
    box-shadow: none !important; }
  a:not(.btn) {
    text-decoration: underline; }
  abbr[title]::after {
    content: " (" attr(title) ")"; }
  pre {
    white-space: pre-wrap !important; }
  pre,
  blockquote {
    border: 1px solid #adb5bd;
    page-break-inside: avoid; }
  thead {
    display: table-header-group; }
  tr,
  img {
    page-break-inside: avoid; }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3; }
  h2,
  h3 {
    page-break-after: avoid; }
  @page {
    size: a3; }
  body {
    min-width: 992px !important; }
  .container {
    min-width: 992px !important; }
  .navbar {
    display: none; }
  .badge {
    border: 1px solid #000; }
  .table {
    border-collapse: collapse !important; }
  .table td,
  .table th {
    background-color: #fff !important; }
  .table-bordered th,
  .table-bordered td {
    border: 1px solid #dee2e6 !important; }
  .table-dark {
    color: inherit; }
  .table-dark th,
  .table-dark td,
  .table-dark thead th,
  .table-dark tbody + tbody {
    border-color: #dee2e6; }
  .table .thead-dark th {
    color: inherit;
    border-color: #dee2e6; } }

/*# sourceMappingURL=bootstrap.css.map */
/* swiper */
/**
 * Swiper 6.5.7
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2021 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: April 16, 2021
 */
@font-face {
  font-family: 'swiper-icons';
  src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA") format("woff");
  font-weight: 400;
  font-style: normal; }

:root {
  --swiper-theme-color: #007aff; }

.swiper-container {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1; }

.swiper-container-vertical > .swiper-wrapper {
  flex-direction: column; }

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  box-sizing: content-box; }

.swiper-container-android .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0); }

.swiper-container-multirow > .swiper-wrapper {
  flex-wrap: wrap; }

.swiper-container-multirow-column > .swiper-wrapper {
  flex-wrap: wrap;
  flex-direction: column; }

.swiper-container-free-mode > .swiper-wrapper {
  transition-timing-function: ease-out;
  margin: 0 auto; }

.swiper-container-pointer-events {
  touch-action: pan-y; }

.swiper-container-pointer-events.swiper-container-vertical {
  touch-action: pan-x; }

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform; }

.swiper-slide-invisible-blank {
  visibility: hidden; }

/* Auto Height */
.swiper-container-autoheight,
.swiper-container-autoheight .swiper-slide {
  height: auto; }

.swiper-container-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height; }

/* 3D Effects */
.swiper-container-3d {
  perspective: 1200px; }

.swiper-container-3d .swiper-wrapper,
.swiper-container-3d .swiper-slide,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-cube-shadow {
  transform-style: preserve-3d; }

.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10; }

.swiper-container-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }

.swiper-container-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }

.swiper-container-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }

.swiper-container-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0)); }

/* CSS Mode */
.swiper-container-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  /* For Firefox */
  -ms-overflow-style: none;
  /* For Internet Explorer and Edge */ }

.swiper-container-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none; }

.swiper-container-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start; }

.swiper-container-horizontal.swiper-container-css-mode > .swiper-wrapper {
  scroll-snap-type: x mandatory; }

.swiper-container-vertical.swiper-container-css-mode > .swiper-wrapper {
  scroll-snap-type: y mandatory; }

:root {
  --swiper-navigation-size: 44px;
  /*
  --swiper-navigation-color: var(--swiper-theme-color);
  */ }

.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  top: 50%;
  width: calc(var(--swiper-navigation-size) / 44 * 27);
  height: var(--swiper-navigation-size);
  margin-top: calc(0px - (var(--swiper-navigation-size) / 2));
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color)); }

.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none; }

.swiper-button-prev:after,
.swiper-button-next:after {
  font-family: swiper-icons;
  font-size: var(--swiper-navigation-size);
  text-transform: none !important;
  letter-spacing: 0;
  text-transform: none;
  font-variant: initial;
  line-height: 1; }

.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
  left: 10px;
  right: auto; }

.swiper-button-prev:after,
.swiper-container-rtl .swiper-button-next:after {
  content: 'prev'; }

.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
  right: 10px;
  left: auto; }

.swiper-button-next:after,
.swiper-container-rtl .swiper-button-prev:after {
  content: 'next'; }

.swiper-button-prev.swiper-button-white,
.swiper-button-next.swiper-button-white {
  --swiper-navigation-color: #ffffff; }

.swiper-button-prev.swiper-button-black,
.swiper-button-next.swiper-button-black {
  --swiper-navigation-color: #000000; }

.swiper-button-lock {
  display: none; }

:root {
  /*
  --swiper-pagination-color: var(--swiper-theme-color);
  */ }

.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: 300ms opacity;
  transform: translate3d(0, 0, 0);
  z-index: 10; }

.swiper-pagination.swiper-pagination-hidden {
  opacity: 0; }

/* Common Styles */
.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-container-horizontal > .swiper-pagination-bullets {
  bottom: 10px;
  left: 0;
  width: 100%; }

/* Bullets */
.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0; }

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transform: scale(0.33);
  position: relative; }

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  transform: scale(1); }

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  transform: scale(1); }

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  transform: scale(0.66); }

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  transform: scale(0.33); }

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  transform: scale(0.66); }

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  transform: scale(0.33); }

.swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  display: inline-block;
  border-radius: 50%;
  background: #000;
  opacity: 0.2; }

button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  -webkit-appearance: none;
  appearance: none; }

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer; }

.swiper-pagination-bullet-active {
  opacity: 1;
  background: var(--swiper-pagination-color, var(--swiper-theme-color)); }

.swiper-container-vertical > .swiper-pagination-bullets {
  right: 10px;
  top: 50%;
  transform: translate3d(0px, -50%, 0); }

.swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 6px 0;
  display: block; }

.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  transform: translateY(-50%);
  width: 8px; }

.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition: 200ms transform, 200ms top; }

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 4px; }

.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap; }

.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms left; }

.swiper-container-horizontal.swiper-container-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms right; }

/* Progress */
.swiper-pagination-progressbar {
  background: rgba(0, 0, 0, 0.25);
  position: absolute; }

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: scale(0);
  transform-origin: left top; }

.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top; }

.swiper-container-horizontal > .swiper-pagination-progressbar,
.swiper-container-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0; }

.swiper-container-vertical > .swiper-pagination-progressbar,
.swiper-container-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 4px;
  height: 100%;
  left: 0;
  top: 0; }

.swiper-pagination-white {
  --swiper-pagination-color: #ffffff; }

.swiper-pagination-black {
  --swiper-pagination-color: #000000; }

.swiper-pagination-lock {
  display: none; }

/* Scrollbar */
.swiper-scrollbar {
  border-radius: 10px;
  position: relative;
  -ms-touch-action: none;
  background: rgba(0, 0, 0, 0.1); }

.swiper-container-horizontal > .swiper-scrollbar {
  position: absolute;
  left: 1%;
  bottom: 3px;
  z-index: 50;
  height: 5px;
  width: 98%; }

.swiper-container-vertical > .swiper-scrollbar {
  position: absolute;
  right: 3px;
  top: 1%;
  z-index: 50;
  width: 5px;
  height: 98%; }

.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 10px;
  left: 0;
  top: 0; }

.swiper-scrollbar-cursor-drag {
  cursor: move; }

.swiper-scrollbar-lock {
  display: none; }

.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center; }

.swiper-zoom-container > img,
.swiper-zoom-container > svg,
.swiper-zoom-container > canvas {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain; }

.swiper-slide-zoomed {
  cursor: move; }

/* Preloader */
:root {
  /*
  --swiper-preloader-color: var(--swiper-theme-color);
  */ }

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  animation: swiper-preloader-spin 1s infinite linear;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent; }

.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff; }

.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000; }

@keyframes swiper-preloader-spin {
  100% {
    transform: rotate(360deg); } }

/* a11y */
.swiper-container .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000; }

.swiper-container-fade.swiper-container-free-mode .swiper-slide {
  transition-timing-function: ease-out; }

.swiper-container-fade .swiper-slide {
  pointer-events: none;
  transition-property: opacity; }

.swiper-container-fade .swiper-slide .swiper-slide {
  pointer-events: none; }

.swiper-container-fade .swiper-slide-active,
.swiper-container-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto; }

.swiper-container-cube {
  overflow: visible; }

.swiper-container-cube .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
  visibility: hidden;
  transform-origin: 0 0;
  width: 100%;
  height: 100%; }

.swiper-container-cube .swiper-slide .swiper-slide {
  pointer-events: none; }

.swiper-container-cube.swiper-container-rtl .swiper-slide {
  transform-origin: 100% 0; }

.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-active .swiper-slide-active {
  pointer-events: auto; }

.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-next,
.swiper-container-cube .swiper-slide-prev,
.swiper-container-cube .swiper-slide-next + .swiper-slide {
  pointer-events: auto;
  visibility: visible; }

.swiper-container-cube .swiper-slide-shadow-top,
.swiper-container-cube .swiper-slide-shadow-bottom,
.swiper-container-cube .swiper-slide-shadow-left,
.swiper-container-cube .swiper-slide-shadow-right {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }

.swiper-container-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0px;
  width: 100%;
  height: 100%;
  opacity: 0.6;
  z-index: 0; }

.swiper-container-cube .swiper-cube-shadow:before {
  content: '';
  background: #000;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  filter: blur(50px); }

.swiper-container-flip {
  overflow: visible; }

.swiper-container-flip .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1; }

.swiper-container-flip .swiper-slide .swiper-slide {
  pointer-events: none; }

.swiper-container-flip .swiper-slide-active,
.swiper-container-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto; }

.swiper-container-flip .swiper-slide-shadow-top,
.swiper-container-flip .swiper-slide-shadow-bottom,
.swiper-container-flip .swiper-slide-shadow-left,
.swiper-container-flip .swiper-slide-shadow-right {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }

/* common */
* {
  font-family: futura-pt, futura, 'Open Sans', "Trebuchet MS", Arial, sans-serif; }

body {
  color: #333;
  font-family: futura-pt, futura, 'Open Sans', "Trebuchet MS", Arial, sans-serif;
  font-style: normal;
  font-weight: 500;
  overflow-x: hidden; }
  body.loading {
    position: relative; }
    body.loading:before {
      content: "";
      cursor: not-allowed;
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      width: 100%;
      height: 1000%;
      background-color: rgba(255, 255, 255, 0.226);
      z-index: 999999; }

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: futura-pt, futura, 'Open Sans', "Trebuchet MS", Arial, sans-serif;
  font-style: normal;
  font-weight: 600; }

h2,
h3,
h4,
h5 {
  letter-spacing: 0.02rem; }

.h5,
h5 {
  font-size: 1.1rem; }

a {
  color: #169CF7; }

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

a:active {
  color: #066fb6; }

p {
  font-size: 16px; }

input {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  box-shadow: none;
  outline: white; }

input::-ms-clear {
  display: none; }

input[type=number]::-webkit-inner-spin-button {
  -webkit-appearance: none; }

input[type=number] {
  -moz-appearance: textfield;
  appearance: textfield;
  margin: 0; }

.form-control {
  font-family: futura-pt, futura, 'Open Sans', "Trebuchet MS", Arial, sans-serif;
  font-style: normal;
  font-weight: 500;
  border: 2px solid #D1D2D4;
  border-radius: 2px;
  padding: 20px 0.75rem;
  padding-left: 30px;
  margin-right: 30px;
  font-family: futura-pt, futura, 'Open Sans', "Trebuchet MS", Arial, sans-serif;
  font-style: normal;
  font-weight: 500;
  border: 2px solid #D1D2D4;
  border-radius: 2px;
  padding: 20px 0.75rem; }

.easy-autocomplete input {
  border-color: unset;
  border-radius: 2px;
  border-style: unset;
  border-width: unset;
  box-shadow: unset;
  color: #555;
  float: none;
  padding: 6px 12px;
  font-family: futura-pt, futura, 'Open Sans', "Trebuchet MS", Arial, sans-serif;
  font-style: normal;
  font-weight: 500;
  border: 2px solid #D1D2D4;
  border-radius: 2px;
  padding: 20px 0.75rem; }

.easy-autocomplete-container ul {
  background: none repeat scroll 0 0 #ffffff;
  border: 2px solid #D1D2D4;
  border-top: 0;
  display: none;
  margin-top: -2px;
  padding-bottom: 0;
  padding-left: 0;
  position: relative;
  top: -1px;
  background-color: white; }

.easy-autocomplete-container ul li,
.easy-autocomplete-container ul .eac-category {
  background: inherit;
  border-color: #ccc;
  border-image: none;
  border-style: solid;
  border-width: 0 1px;
  display: block;
  font-size: 14px;
  font-weight: normal;
  padding: 10px 12px;
  border: 0; }

.dropdown_select {
  padding: 12px 0.75rem;
  height: 50px; }

.form-control::placeholder {
  color: #999; }

.dropdown-item {
  font-family: futura-pt, futura, 'Open Sans', "Trebuchet MS", Arial, sans-serif;
  font-style: normal;
  font-weight: 500; }

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

.form-check {
  margin-bottom: .5rem; }

.card-body {
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  padding: 2rem; }

.btn-loader {
  margin-bottom: 80px; }

.ri, .ri-mini, .ri-mini-2 {
  background-image: url("../images/icons.svg");
  background-repeat: no-repeat;
  display: inline-block;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased; }

.ri {
  background-size: 94px; }
  .ri.ri-aim {
    background-position: 0 0;
    width: 12px;
    height: 12px; }
  .ri.ri-arrow-back-black {
    background-position: 0 -12px;
    width: 10px;
    height: 15px; }
  .ri.ri-arrow-back {
    background-position: 0 -27px;
    width: 11px;
    height: 16px; }
  .ri.ri-arrow-down {
    background-position: 0 -43px;
    width: 14px;
    height: 9px; }
  .ri.ri-arrow-next-white {
    background-position: 0 -52px;
    width: 12px;
    height: 18px; }
  .ri.ri-arrow-next {
    background-position: 0 -70px;
    width: 11px;
    height: 15px; }
  .ri.ri-arrow-up {
    background-position: 0 -86px;
    width: 14px;
    height: 9px; }
  .ri.ri-burger {
    background-position: 0 -95px;
    width: 20px;
    height: 16px; }
  .ri.ri-circle-stars-2 {
    background-position: 0 -111px;
    width: 49px;
    height: 50px; }
  .ri.ri-circle-stars {
    background-position: 0 -161px;
    width: 55px;
    height: 57px; }
  .ri.ri-doc {
    background-position: 0 -219px;
    width: 40px;
    height: 53px; }
  .ri.ri-droplets-2 {
    background-position: 0 -272px;
    width: 76px;
    height: 40px; }
  .ri.ri-droplets {
    background-position: 0 -312px;
    width: 74px;
    height: 42px; }
  .ri.ri-dwg {
    background-position: 0 -354px;
    width: 40px;
    height: 53px; }
  .ri.ri-face {
    background-position: 0 -407px;
    width: 94px;
    height: 94px; }
  .ri.ri-facebook {
    background-position: 0 -501px;
    width: 20px;
    height: 21px; }
  .ri.ri-img {
    background-position: 0 -522px;
    width: 40px;
    height: 53px; }
  .ri.ri-information {
    background-position: 0 -575px;
    width: 15px;
    height: 15px; }
  .ri.ri-interrogation {
    background-position: 0 -590px;
    width: 14px;
    height: 24px; }
  .ri.ri-linkedin {
    background-position: 0 -614px;
    width: 20px;
    height: 20px; }
  .ri.ri-lock-black {
    background-position: 0 -634px;
    width: 19px;
    height: 22px; }
  .ri.ri-lock-red {
    background-position: 0 -656px;
    width: 19px;
    height: 22px; }
  .ri.ri-map-pointer {
    background-position: 0 -678px;
    width: 28px;
    height: 42px; }
  .ri.ri-minus-red {
    background-position: 0 -720px;
    width: 14px;
    height: 14px; }
  .ri.ri-minus-white {
    background-position: 0 -728px;
    width: 14px;
    height: 2px; }
  .ri.ri-pdf {
    background-position: 0 -736px;
    width: 40px;
    height: 53px; }
  .ri.ri-peeps-2 {
    background-position: 0 -789px;
    width: 34px;
    height: 47px; }
  .ri.ri-peeps {
    background-position: 0 -836px;
    width: 70px;
    height: 40px; }
  .ri.ri-phone-white {
    background-position: 0 -876px;
    width: 14px;
    height: 14px; }
  .ri.ri-phone {
    background-position: 0 -890px;
    width: 16px;
    height: 16px; }
  .ri.ri-plus-red {
    background-position: 0 -906px;
    width: 14px;
    height: 14px; }
  .ri.ri-plus-white {
    background-position: 0 -920px;
    width: 14px;
    height: 14px; }
  .ri.ri-ppt {
    background-position: 0 -934px;
    width: 40px;
    height: 53px; }
  .ri.ri-search {
    background-position: 0 -987px;
    width: 15px;
    height: 15px; }
  .ri.ri-tick {
    background-position: 0 -1002px;
    width: 9px;
    height: 8px; }
  .ri.ri-x-black {
    background-position: 0 -1010px;
    width: 12px;
    height: 12px; }
  .ri.ri-x {
    background-position: 0 -1022px;
    width: 12px;
    height: 12px; }
  .ri.ri-xls {
    background-position: 0 -1034px;
    width: 40px;
    height: 53px; }

.ri-mini {
  background-size: 47px; }
  .ri-mini.ri-pdf {
    background-size: 30px;
    background-position: 0 -234px;
    width: 14px;
    height: 18px; }
  .ri-mini.ri-png {
    background-size: 47px;
    background-position: 0 -261px;
    width: 20px;
    height: 26.5px; }

.ri-mini-2 {
  background-size: 47px; }
  .ri-mini-2.ri-pdf {
    background-size: 30px;
    background-position: 0 -234px;
    width: 14px;
    height: 18px; }
  .ri-mini-2.ri-png {
    background-size: 32px;
    background-position: 0px -178px;
    width: 14px;
    height: 18px; }

/* header images ************************************************************ */
.header_container {
  position: relative;
  display: block; }
  .header_container .responsive_src {
    width: 100%;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    height: 640px; }

.header_image_text_section {
  position: relative;
  width: 100%;
  min-height: 1px;
  max-height: 300px; }
  .header_image_text_section h2 {
    font-size: 42px; }

/* generic page ************************************************************* */
.generic_page {
  position: relative;
  max-width: 960px;
  margin: 0 auto;
  padding-top: 60px;
  padding-bottom: 60px;
  padding-left: 25px;
  padding-right: 25px; }
  .generic_page .date-timestamp {
    font-size: 14px;
    color: #B5B5B5;
    margin-top: 1rem;
    margin-bottom: 1rem; }
  .generic_page img {
    max-width: 100%; }
  .generic_page .image {
    margin-bottom: 25px; }
  .generic_page h2 {
    font-size: 40px;
    margin-top: 50px; }
  .generic_page .generic_logos {
    max-width: 700px; }
    .generic_page .generic_logos .col-6 {
      text-align: center;
      margin-top: 45px;
      align-items: center;
      justify-content: center;
      display: inline-flex; }

.html_generic {
  max-width: 100%;
  overflow: hidden; }
  .html_generic .small-text {
    font-size: 14px !important;
    margin-bottom: 10px;
    color: #808080; }
  .html_generic p {
    font-size: 16px;
    line-height: 21px;
    color: #8D8D8D; }
  .html_generic hr {
    margin: 0;
    border-top: 2px solid rgba(0, 0, 0, 0.1);
    margin-bottom: 25px; }
  .html_generic ul {
    list-style-position: inside;
    -moz-column-count: 1;
    -moz-column-gap: 20px;
    -moz-column-fill: auto;
    -webkit-column-count: 1;
    -webkit-column-gap: 20px;
    -webkit-column-fill: auto;
    column-count: 1;
    column-gap: 20px;
    column-fill: auto;
    padding: 0;
    margin-top: 25px;
    margin-bottom: 22px;
    margin-left: 5px; }
    .html_generic ul li {
      font-size: 16px;
      color: #666666;
      margin-bottom: 8px; }
      .html_generic ul li span {
        /*margin-left: 10px;*/ }
    .html_generic ul li::marker {
      color: #169CF7;
      margin-right: 15px; }
  .html_generic ol,
  .html_generic ul {
    list-style-position: outside;
    -moz-column-count: 1;
    -moz-column-gap: 20px;
    -moz-column-fill: auto;
    -webkit-column-count: 1;
    -webkit-column-gap: 20px;
    -webkit-column-fill: auto;
    column-count: 1;
    column-gap: 20px;
    column-fill: auto;
    padding: 0;
    margin-top: 10px;
    margin-bottom: 22px;
    margin-left: 22px; }
    .html_generic ol li,
    .html_generic ul li {
      font-size: 16px;
      color: #666666;
      margin-bottom: 8px; }
      .html_generic ol li div,
      .html_generic ul li div {
        /*margin-left: 15px;*/ }
    .html_generic ol li::marker,
    .html_generic ul li::marker {
      color: #666666;
      margin-right: 0; }
  .html_generic ul li::marker {
    color: #169CF7; }
  .html_generic img {
    max-width: 100%;
    margin: 0 auto;
    text-align: center; }
  .html_generic .main_img {
    max-width: 100%;
    margin: unset;
    text-align: unset;
    margin-left: 30px;
    margin-bottom: 30px;
    transform: unset; }
  .html_generic .generic_table {
    max-width: 100%;
    overflow: hidden;
    margin: 0 auto;
    margin-bottom: 1rem; }
  .html_generic table {
    width: 100%;
    max-width: 100%;
    margin-bottom: 1rem;
    color: #212529;
    border-collapse: collapse;
    table-layout: fixed;
    margin: 0 auto;
    border: 0; }
    .html_generic table th,
    .html_generic table td {
      padding: 0.75rem;
      vertical-align: top;
      border-top: 2px solid #fff;
      border-right: 2px solid #fff;
      border-left: 2px solid #fff;
      background: white;
      font-size: 16px;
      padding-left: 0;
      padding-right: 25px;
      padding-top: 12px;
      padding-bottom: 12px; }
    .html_generic table th {
      vertical-align: bottom;
      border-bottom: 2px solid #f7f7f7;
      background: #888;
      color: white;
      font-weight: unset; }
    .html_generic table td {
      background: #fff;
      color: #333; }
      .html_generic table td strong {
        font-size: 30px;
        color: #333; }
      .html_generic table td p {
        color: #8D8D8D; }
  .html_generic .pdf-link,
  .html_generic .xls-link,
  .html_generic .jpg-link,
  .html_generic .download-link {
    text-transform: uppercase; }
    .html_generic .pdf-link img,
    .html_generic .xls-link img,
    .html_generic .jpg-link img,
    .html_generic .download-link img {
      max-width: 100%;
      margin: unset;
      text-align: left;
      margin-left: unset;
      transform: unset;
      margin-right: 10px;
      margin-top: -5px; }
  .html_generic .gp-accordion {
    margin-left: 0;
    margin-right: 0;
    margin-top: 25px;
    margin-bottom: 25px; }
    .html_generic .gp-accordion .card {
      position: relative;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: column;
      flex-direction: column;
      min-width: 0;
      word-wrap: break-word;
      background-color: #fff;
      background-clip: border-box;
      border: 2px solid rgba(0, 0, 0, 0.125);
      border-bottom: 0;
      border-radius: 0; }
      .html_generic .gp-accordion .card .card-header {
        padding: 5px 1.25rem;
        margin-bottom: 0;
        background-color: white;
        border-bottom: 0; }
        .html_generic .gp-accordion .card .card-header .btn-link {
          position: relative;
          color: #333;
          text-decoration: none;
          padding-left: 0;
          padding-right: 0;
          font-size: 20px;
          width: 100%;
          text-align: left; }
          .html_generic .gp-accordion .card .card-header .btn-link img {
            position: absolute;
            right: 0;
            top: 50%;
            transform: translateY(-50%); }
        .html_generic .gp-accordion .card .card-header .btn-link:hover {
          color: #333;
          text-decoration: none; }
        .html_generic .gp-accordion .card .card-header .btn-link:focus,
        .html_generic .gp-accordion .card .card-header .btn-link.focus {
          text-decoration: none;
          box-shadow: none; }
      .html_generic .gp-accordion .card .card-body {
        background: #f7f7f7;
        padding: 30px 15px 10px 15px; }
    .html_generic .gp-accordion .card:last-child {
      border-bottom: 2px solid rgba(0, 0, 0, 0.125); }

.title_section {
  background: #f7f7f7;
  padding: 10px; }

#phone a:hover {
  text-decoration: none; }

.opacity_page {
  opacity: 0.3; }

.black_link {
  color: #333; }

.pdf-item {
  text-decoration: underline; }

/* header page subsection *************************************************** */
.header_page_subsection {
  padding: 48px 0 45px 0;
  max-width: 800px; }
  .header_page_subsection .col {
    padding: 0; }
  .header_page_subsection a {
    text-transform: uppercase; }
  .header_page_subsection img {
    max-width: 100%; }

/* brochure ***************************************************************** */
.brochure {
  padding: 25px 0; }
  .brochure .brochure_description {
    margin-bottom: 0rem; }
  .brochure .brochure_subtitle {
    color: rgba(0, 0, 0, 0.5); }

.brochure_image {
  margin-bottom: 25px;
  max-width: 85%;
  width: 500px; }

.brochure_title_section {
  background-color: #f7f7f7;
  padding: 5px 0;
  margin-bottom: 5px; }

/* desktop footer navbar **************************************************** */
#footer-menu .navbar {
  padding: 0px; }

#footer-menu .navbar-light .navbar-nav .nav-link.active {
  color: #169CF7;
  background-color: white;
  border-bottom: 3px solid #169CF7; }

#footer-menu .navbar-light .navbar-nav .nav-link {
  padding-right: 1.5rem;
  padding-left: 1.5rem;
  padding: 16px 2rem;
  color: #169CF7; }

#footer-menu .navbar-light .navbar-nav .nav-link:hover {
  color: #066fb6; }

#footer-menu .navbar-light .navbar-nav .nav-link:active {
  color: #066fb6; }

#footer-menu .list-group-item {
  border-color: white;
  padding: 0px 1.25rem; }

#footer-menu .list-group-item a {
  text-decoration: none;
  color: #333; }

#footer-menu .list-group-item a:hover {
  text-decoration: none;
  color: #169CF7; }

#footer-menu .list-group-item a:active {
  text-decoration: none;
  color: #066fb6; }

#footer-menu .list-group-item:first-child {
  background-color: transparent;
  border-color: white;
  color: #169CF7;
  padding: 0rem 1.25rem;
  margin-bottom: 8px;
  line-height: 18px; }

#footer-menu .list-group-item:first-child a {
  color: #169CF7;
  text-transform: uppercase; }

#footer-menu .list-group-item:first-child a:hover {
  color: #066fb6;
  text-transform: uppercase; }

#footer-menu .list-group-item:first-child a:active {
  color: #066fb6;
  text-transform: uppercase; }

#footer-menu .list-group-item:last-child {
  padding-bottom: 1rem; }

#footer-menu-residential {
  margin-left: 0px;
  margin-top: 10px;
  padding: 0.75rem 0rem; }

#footer-menu-commercial {
  margin-left: 0px;
  margin-top: 10px;
  padding: 0.75rem 0rem; }

#footer-menu .services {
  border-left: 2px solid rgba(0, 0, 0, 0.125);
  position: relative; }

#footer-menu .services ul {
  list-style-type: none;
  position: absolute;
  top: 50%;
  transform: translate(0, -50%);
  padding-left: 15px; }

#footer-menu .services ul li a {
  text-decoration: none;
  color: #333; }

/* Video Box **************************************************************** */
.video_box {
  margin: 0 auto;
  margin-top: 25px;
  width: 100%;
  max-width: 530px;
  min-width: 200px;
  height: 80px;
  background-color: #fff;
  background-clip: border-box;
  border: 1px solid rgba(0, 0, 0, 0.125);
  border-radius: .25rem; }
  .video_box .thumbnail {
    position: relative;
    width: 200px;
    height: 78px;
    border-right: 1px solid rgba(0, 0, 0, 0.125);
    cursor: pointer;
    display: inline-block;
    overflow: hidden; }
    .video_box .thumbnail .img_bg {
      min-width: 100%;
      width: auto;
      height: 100%;
      overflow: hidden;
      margin-left: 50%;
      transform: translateX(-50%); }
    .video_box .thumbnail .img_play {
      position: relative;
      width: 45px;
      height: 45px;
      margin-left: 78px;
      margin-top: -102px; }
  .video_box .description {
    display: inline-block;
    margin-left: 10px;
    margin-top: 12px;
    max-width: 315px; }
    .video_box .description p {
      margin-bottom: 0;
      height: 30px;
      overflow: hidden; }
    .video_box .description a {
      text-transform: uppercase; }
      .video_box .description a img {
        margin-top: -2px; }

.video_box_modal .modal-dialog {
  margin-top: 145px;
  width: 90%;
  max-width: 1124px; }

.video_box_modal .modal-body {
  background: black;
  color: white;
  padding: 50px; }
  .video_box_modal .modal-body .close {
    color: white;
    cursor: pointer;
    margin-top: -30px;
    margin-right: -30px; }
  .video_box_modal .modal-body p {
    text-align: center; }
  .video_box_modal .modal-body .youtube_video {
    margin-top: 35px;
    text-align: center; }
    .video_box_modal .modal-body .youtube_video iframe,
    .video_box_modal .modal-body .youtube_video video {
      width: 90%;
      max-height: 400px;
      height: auto; }

/* Dropdown select ********************************************************** */
.select_dropdown_box {
  position: relative;
  z-index: 15; }
  .select_dropdown_box a.dropdown_select {
    color: #868e96; }
  .select_dropdown_box .dropdown-menu {
    max-height: 500px;
    overflow: auto; }

#contact_us_form .select_dropdown_box {
  position: relative;
  z-index: auto; }

#contact_us_form .select_radio_box .form-check-label {
  border: 2px solid #D1D2D4;
  padding: 10px;
  width: 100%; }
  #contact_us_form .select_radio_box .form-check-label:first-child {
    margin-left: -5px; }
  #contact_us_form .select_radio_box .form-check-label.hover, #contact_us_form .select_radio_box .form-check-label.selected {
    border-color: #169CF7; }

#contact_us_form .was-validated .form-control:invalid,
#contact_us_form .form-control.is-invalid {
  background-image: none; }

.dropdown_select {
  width: 100%; }

.dropdown_select:hover {
  text-decoration: none;
  color: #495057; }

.dropdown_select::after {
  float: right;
  margin-top: 10px;
  color: #169CF7; }

.dropdown-menu-select {
  width: 100%;
  transform: translate3d(0px, 33px, 0px) !important;
  border: 2px solid rgba(0, 0, 0, 0.15);
  border-top: 0px;
  border-radius: 0px 0px 2px 2px; }
  .dropdown-menu-select .dropdown-item {
    cursor: pointer;
    padding: 10px 1rem;
    color: #666 !important; }
  .dropdown-menu-select .dropdown-item.optgroup {
    cursor: default;
    font-weight: bold; }
  .dropdown-menu-select .dropdown-item:hover {
    background-color: #169CF7;
    color: white !important; }
  .dropdown-menu-select .dropdown-item.optgroup:hover {
    background-color: #fff;
    color: #000 !important; }

.ui-widget.ui-widget-content {
  z-index: 99 !important; }

/* ************************************************************************** */
.btn {
  font-family: futura-pt, futura, 'Open Sans', "Trebuchet MS", Arial, sans-serif;
  font-style: normal;
  font-weight: 600 !important; }

.btn-primary {
  color: #333333;
  background: transparent;
  border: 2px solid #333333;
  border-radius: 30px;
  text-transform: uppercase;
  font-weight: bold;
  padding: 5px 10px;
  font-size: 16px;
  cursor: pointer; }

.btn-primary:disabled {
  background-color: #f7f7f7;
  border-color: #333;
  color: #333; }

.btn-primary:disabled:hover {
  background-color: #f7f7f7;
  border-color: #333;
  color: #333; }

.btn-primary:hover {
  color: #fff;
  background: #333333;
  border: 2px solid #333333; }

.btn-primary.focus,
.btn-primary:focus {
  box-shadow: 0 0 0 0rem #333333 !important;
  color: white;
  background: #333333;
  border: 2px solid #333333; }

.btn-primary:not([disabled]):not(.disabled).active,
.btn-primary:not([disabled]):not(.disabled):active,
.show > .btn-primary.dropdown-toggle {
  box-shadow: 0 0 0 0rem #333333 !important;
  color: white;
  background: #333333;
  border: 2px solid #333333; }

.btn-primary:active {
  box-shadow: 0 0 0 0rem #333333 !important;
  color: white;
  background: #333333;
  border: 2px solid #333333; }

.btn-secondary {
  color: #fff;
  background: #169CF7;
  border: 2px solid #169CF7;
  border-radius: 30px;
  text-transform: uppercase;
  font-weight: bold;
  padding: 8px 15px;
  font-size: 0.8em;
  cursor: pointer; }

.btn-secondary.focus,
.btn-secondary:focus {
  box-shadow: 0 0 0 0rem #169CF7 !important; }

.btn-secondary:not([disabled]):not(.disabled).active,
.btn-secondary:not([disabled]):not(.disabled):active,
.show > .btn-secondary.dropdown-toggle {
  color: #fff;
  background-color: #169CF7;
  border-color: #169CF7;
  box-shadow: 0 0 0 0.2rem #169CF7; }

.btn-red {
  color: #fff;
  background: #169CF7;
  border: 2px solid #fff;
  border-radius: 30px;
  text-transform: uppercase;
  font-weight: bold;
  padding: 8px 15px;
  font-size: 0.8em;
  cursor: pointer; }

.btn-red:hover {
  color: #169CF7;
  background: #fff;
  border: 1px solid #fff; }

.btn-rewards {
  color: #000;
  background: transparent;
  border: 21px solid #000;
  border-radius: 30px;
  text-transform: uppercase;
  font-weight: bold;
  padding: 8px 15px;
  font-size: 0.8em;
  cursor: pointer; }

.btn-rewards:hover {
  color: #fff;
  background: #169CF7;
  border: 2px solid #169CF7; }

.btn-background {
  color: #FFF;
  background: transparent;
  border: 1px solid #FFF;
  border-radius: 30px;
  text-transform: uppercase;
  font-weight: bold;
  padding: 8px 15px;
  font-size: 0.8em;
  cursor: pointer; }

.btn-background:hover {
  color: #fff;
  background: #169CF7;
  border: 1px solid #169CF7; }

.form-control:focus {
  color: #333;
  background-color: #fff;
  border-color: #ced4da;
  outline: 0;
  box-shadow: 0 0 0 0rem rgba(0, 123, 255, 0.25); }

.header_right {
  position: absolute;
  top: 8px;
  right: 0;
  text-align: right; }

#phone_brand {
  height: 100px;
  position: relative; }
  #phone_brand #phone {
    margin: 12px 0 0 12px;
    height: 40px;
    padding-left: 0;
    width: 210px;
    position: relative;
    right: 0;
    top: 0;
    margin: 0 !important;
    text-align: right;
    padding: 0;
    color: white; }
    #phone_brand #phone .icon {
      position: relative;
      top: 0; }
    #phone_brand #phone .number {
      color: white;
      margin-left: 0;
      font-size: 16px; }
  #phone_brand #solar_login {
    height: 35px;
    padding-left: 0;
    width: auto;
    position: relative;
    right: 0;
    text-align: right;
    margin: 0 !important; }
    #phone_brand #solar_login .padlock_icon {
      margin-top: 0;
      margin-right: 2px; }
      #phone_brand #solar_login .padlock_icon img {
        margin-top: -3px; }
    #phone_brand #solar_login a {
      color: #333;
      text-decoration: none;
      font-size: 12px; }
    #phone_brand #solar_login a:hover {
      text-decoration: underline; }
  #phone_brand #brand_text .text {
    color: #169CF7;
    text-transform: uppercase;
    line-height: 76px;
    font-size: 0.9em;
    text-align: right;
    padding-right: 68px; }
  #phone_brand #brand_text .brand {
    background-image: url(../images/logo_solar.svg);
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    width: 68px;
    height: 65px;
    top: 6px;
    right: 6px; }

.fixed-header {
  position: fixed;
  top: 0;
  z-index: 10;
  width: 100%; }
  .fixed-header .mbheader {
    background-color: #fff; }

hr {
  margin: 0;
  border-top: 1px solid rgba(0, 0, 0, 0.1); }

.error_image .black_wash {
  opacity: 0; }

nav#mobile_intro button,
nav#mobile_intro a {
  color: #169CF7;
  text-transform: uppercase; }

#mobile_nav_container {
  display: none;
  position: fixed;
  top: 106px;
  width: 100%;
  height: 100%;
  z-index: 100;
  background-color: #575757;
  overflow: auto; }
  #mobile_nav_container .search {
    position: relative;
    padding: 25px 0;
    height: 80px;
    background-color: #fff;
    border: 1px solid #eee;
    width: 86%; }
    #mobile_nav_container .search input {
      width: 85%;
      margin-left: 7.5%;
      padding-left: 12%; }
    #mobile_nav_container .search i {
      position: absolute;
      margin-top: -25px;
      margin-left: -38%; }
  #mobile_nav_container .back {
    position: relative;
    padding: 10px;
    height: 50px;
    background-color: #eee;
    width: 86%; }
  #mobile_nav_container .back-text {
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    margin-left: 30px;
    cursor: pointer; }
  #mobile_nav_container .back i {
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    cursor: pointer;
    margin-left: 10px; }
  #mobile_nav_container .active_title {
    display: block;
    position: relative;
    height: 60px;
    line-height: 60px;
    padding-left: 20px;
    color: #000;
    text-decoration: none;
    background-color: #fff;
    border-bottom: 1px solid #D1D2D4;
    color: #169CF7;
    font-weight: bold;
    font-size: 1.25em;
    width: 86%; }
  #mobile_nav_container .phone_close {
    position: absolute;
    top: 0;
    right: 0;
    width: 14%;
    background-color: #fff;
    height: 107px; }
    #mobile_nav_container .phone_close .phone {
      margin-top: 13px; }
    #mobile_nav_container .phone_close .rheem_close {
      margin-top: 23px; }
  #mobile_nav_container .mobile_main {
    top: 0;
    width: 100%;
    height: calc(100% - 107px);
    background: #F7F7F7;
    padding: 25px;
    overflow: overlay; }
    #mobile_nav_container .mobile_main .mob-nav-row {
      border-top: 2px solid rgba(0, 0, 0, 0.1);
      display: none; }
    #mobile_nav_container .mobile_main .mob-nav-link {
      color: #333;
      font-size: 20px;
      text-transform: uppercase;
      padding-bottom: 10px;
      display: inline-block; }
    #mobile_nav_container .mobile_main .mob-nav-sub-link {
      color: #666;
      font-size: 16px; }
    #mobile_nav_container .mobile_main .mob-nav-p {
      margin-top: 1rem;
      position: relative;
      font-weight: 600;
      text-align: center; }
    #mobile_nav_container .mobile_main .mob-nav-sub-p {
      margin-top: 1rem;
      font-weight: 600; }
    #mobile_nav_container .mobile_main .mob-nav-sub-p:first-child {
      margin-top: 0; }
    #mobile_nav_container .mobile_main .mob-nav-plus {
      right: 5px;
      position: absolute; }
    #mobile_nav_container .mobile_main ul {
      margin: 0;
      padding: 0;
      list-style-type: none;
      width: 100%;
      display: none; }
      #mobile_nav_container .mobile_main ul li a {
        display: block;
        position: relative;
        height: 50px;
        line-height: 50px;
        padding-left: 20px;
        color: #000;
        text-decoration: none;
        background-color: #fff;
        border-bottom: 1px solid #D1D2D4; }
        #mobile_nav_container .mobile_main ul li a .submenu_toggler {
          display: block;
          position: absolute;
          top: 0;
          right: 0;
          background-color: #169CF7;
          background-repeat: no-repeat;
          width: 40px;
          height: 100%;
          z-index: 50; }
        #mobile_nav_container .mobile_main ul li a .submenu_toggler i {
          position: absolute;
          top: 50%;
          left: 50%;
          margin-right: -50%;
          transform: translate(-50%, -50%); }
      #mobile_nav_container .mobile_main ul li a:hover {
        background-color: #169CF7;
        color: white; }
    #mobile_nav_container .mobile_main > ul:nth-child(1) > li > a {
      height: 70px;
      line-height: 70px; }
    #mobile_nav_container .mobile_main > ul {
      display: block; }
    #mobile_nav_container .mobile_main .mobile_top_links {
      margin-top: 20px; }
      #mobile_nav_container .mobile_main .mobile_top_links a {
        color: #000; }
      #mobile_nav_container .mobile_main .mobile_top_links .mob-nav-p {
        margin-top: 10px;
        margin-bottom: 10px; }
      #mobile_nav_container .mobile_main .mobile_top_links .nav-link-top {
        color: #666;
        font-size: 14px; }

/* ************************************************************************** */
.top_links a {
  color: #000;
  text-decoration: underline;
  font-size: 12px; }

.border_white {
  border-bottom: 0; }

#desktop_navigation {
  position: relative;
  padding-left: 15px;
  padding-right: 15px; }
  #desktop_navigation .main {
    width: 100%;
    max-width: 1098px;
    height: 104px;
    text-align: center;
    display: block;
    margin: auto; }
    #desktop_navigation .main a {
      color: #333;
      text-transform: uppercase;
      padding: 12px 16px 10px 16px;
      max-height: 46px;
      margin-top: 31px;
      display: inline-block; }
      #desktop_navigation .main a:hover {
        background-color: #fff;
        color: #169CF7;
        opacity: 1; }
    #desktop_navigation .main a.home {
      max-height: 79px;
      margin-top: 18px; }
      #desktop_navigation .main a.home:hover {
        background-color: #fff; }
    #desktop_navigation .main .search {
      background: #169CF7;
      color: white;
      border-radius: 25px; }
      #desktop_navigation .main .search:hover {
        background-color: #066fb6; }
      #desktop_navigation .main .search img {
        margin-top: -4px;
        margin-right: 5px; }
    #desktop_navigation .main .search_input {
      position: relative; }
      #desktop_navigation .main .search_input input {
        font-family: futura-pt, futura, 'Open Sans', "Trebuchet MS", Arial, sans-serif;
        font-style: normal;
        font-weight: 500;
        border: 2px solid #D1D2D4;
        border-radius: 20px;
        padding: 0px 0.75rem;
        color: #333;
        padding-left: 32px;
        width: 100%;
        max-width: 200px;
        margin-top: 2px; }
      #desktop_navigation .main .search_input input::placeholder {
        color: #333;
        opacity: 1; }
      #desktop_navigation .main .search_input input:focus {
        outline: none !important;
        border-color: #D1D2D4;
        box-shadow: 0; }
      #desktop_navigation .main .search_input img {
        position: absolute;
        left: 27px;
        top: 19px; }
    #desktop_navigation .main .search:hover {
      background-color: #066fb6;
      color: white; }
    #desktop_navigation .main .search-menu:hover {
      background: white;
      color: white; }
    #desktop_navigation .main .active {
      background-color: #169CF7;
      color: #fff; }
    #desktop_navigation .main .active_page {
      border-bottom: 0; }
    #desktop_navigation .main .no_border {
      border-bottom: 0 !important; }
    #desktop_navigation .main img {
      margin-top: -2px; }
  #desktop_navigation .vertical_bar {
    color: #169CF7;
    margin-top: 6px; }
  #desktop_navigation .dropdown_menu {
    padding: 25px 15px 0px 15px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    border-top: 5px solid #169CF7;
    position: absolute;
    top: 40px;
    left: 0;
    z-index: 50;
    background-color: #fff;
    width: calc(100% - 15px);
    max-height: 500px;
    overflow: auto; }
    #desktop_navigation .dropdown_menu .dropdown_item {
      width: 270px;
      max-width: 270px;
      margin-right: 50px;
      margin-bottom: 50px;
      text-decoration: none;
      color: #000; }
      #desktop_navigation .dropdown_menu .dropdown_item a {
        border-bottom: 1px solid rgba(0, 0, 0, 0.1);
        padding-bottom: 5px;
        margin-bottom: 5px;
        font-weight: bold;
        color: #000; }
        #desktop_navigation .dropdown_menu .dropdown_item a:hover {
          text-decoration: none;
          color: #169CF7; }
          #desktop_navigation .dropdown_menu .dropdown_item a:hover span {
            color: #169CF7; }
          #desktop_navigation .dropdown_menu .dropdown_item a:hover .item_title span {
            background-position: 0 -453px;
            width: 13px;
            height: 15px; }
        #desktop_navigation .dropdown_menu .dropdown_item a .item_title {
          padding-right: 5px; }
          #desktop_navigation .dropdown_menu .dropdown_item a .item_title span {
            background-size: 65px;
            background-position: 0px -438px;
            width: 13px;
            height: 15px;
            margin-left: 4px; }
        #desktop_navigation .dropdown_menu .dropdown_item a .arrow_next_icon {
          margin-top: 5px;
          float: right; }
      #desktop_navigation .dropdown_menu .dropdown_item .lock_icon {
        margin-top: -8px; }
      #desktop_navigation .dropdown_menu .dropdown_item .description {
        font-size: 0.9em; }

.rheem_open {
  display: inline;
  padding: 0.25rem 1.5rem;
  font-size: 1.25rem;
  line-height: 1;
  background-color: transparent;
  border: 1px solid transparent;
  border-radius: 0.25rem;
  width: auto !important;
  cursor: pointer; }
  .rheem_open img {
    margin-top: 7px !important; }

.rheem_close {
  display: none;
  padding: 0.25rem 0.75rem;
  font-size: 1.25rem;
  line-height: 1;
  background-color: transparent;
  border: 1px solid transparent;
  border-radius: 0.25rem;
  width: auto !important; }

.header_mobile .request_quote {
  background: #169CF7;
  text-align: center;
  padding-top: 12px;
  padding-bottom: 12px;
  height: 48px; }
  .header_mobile .request_quote img {
    margin-top: -3px;
    margin-right: 5px; }
  .header_mobile .request_quote a {
    color: white;
    text-align: center;
    font-weight: 600; }

.header_mobile .logo {
  display: inline-block;
  margin-top: 10px;
  padding-left: 25px; }
  .header_mobile .logo img {
    width: 124px; }

.header_mobile .icons {
  display: inline-block;
  float: right;
  margin-top: 10px;
  position: relative; }
  .header_mobile .icons .phone,
  .header_mobile .icons .search {
    display: inline-block; }
    .header_mobile .icons .phone img,
    .header_mobile .icons .search img {
      width: 30px; }
  .header_mobile .icons .phone {
    margin-right: 15px;
    position: absolute;
    top: 5px;
    right: 95px; }
  .header_mobile .icons .search {
    margin-right: 2px;
    position: absolute;
    right: 60px;
    top: 5px; }
  .header_mobile .icons .mobile_phone {
    position: absolute;
    top: 6px;
    right: 70px;
    width: 140px;
    text-align: right;
    font-size: 19px;
    font-weight: 600; }
  .header_mobile .icons .menu-icon {
    display: inline-block;
    position: absolute;
    right: 0; }
    .header_mobile .icons .menu-icon img {
      width: 30px;
      margin-top: 1px; }

.mbheader {
  height: 58px;
  border-bottom: 2px solid rgba(0, 0, 0, 0.125); }

#desktop_navigation .search_input {
  display: none; }

#desktop_navigation .search-menu {
  display: block; }

@media (min-width: 1180px) {
  #desktop_navigation .search_input {
    display: block; }
  #desktop_navigation .search-menu {
    display: none; } }

#number_nav_container {
  height: 50px;
  text-align: center;
  position: relative; }
  #number_nav_container .inside_number {
    position: absolute;
    top: 50%;
    transform: translateY(-50%); }
    #number_nav_container .inside_number img {
      margin-top: -10px; }
    #number_nav_container .inside_number a {
      font-size: 24px; }

.mobile_search {
  position: relative;
  padding-bottom: 25px; }
  .mobile_search input {
    font-family: futura-pt, futura, 'Open Sans', "Trebuchet MS", Arial, sans-serif;
    font-style: normal;
    font-weight: 500;
    border: 2px solid #D1D2D4;
    border-radius: 40px;
    padding: 10px 0.75rem;
    color: #333;
    padding-left: 50px;
    width: 100%;
    max-width: 100%;
    margin-top: 2px; }
  .mobile_search input::placeholder {
    color: #333;
    opacity: 1; }
  .mobile_search input:focus {
    outline: none !important;
    border-color: #D1D2D4;
    box-shadow: 0; }
  .mobile_search img {
    position: absolute;
    left: 27px;
    top: 19px; }

.blocks {
  padding: 50px 0; }

.blocks-link {
  text-decoration: none;
  color: #333; }

.blocks-link:hover {
  text-decoration: none;
  color: #169CF7;
  opacity: 0.8; }

.blocks-link:active {
  text-decoration: none;
  color: #066fb6;
  opacity: 1; }

.blocks_link_red {
  text-transform: uppercase;
  text-decoration: none;
  color: #169CF7 !important; }

.blocks_link_red:hover {
  color: #169CF7;
  opacity: 0.8; }

.blocks_link_red:active {
  color: #066fb6;
  opacity: 1; }

.blocks_link:hover {
  text-decoration: none;
  color: #169CF7;
  opacity: 0.8; }

.blocks_link:active {
  text-decoration: none;
  color: #066fb6;
  opacity: 1; }

.blocks_link:hover {
  text-decoration: none;
  color: #333; }

.blocks_link_red_underline {
  text-transform: uppercase;
  text-decoration: underline;
  color: #169CF7; }

.blocks_link_red_underline:hover {
  color: #169CF7;
  opacity: 0.8;
  text-decoration: underline; }

.blocks_link_red_underline:active {
  color: #066fb6;
  text-decoration: underline;
  opacity: 1; }

.over_image {
  color: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-right: -50%;
  transform: translate(-50%, -50%); }

.blocks h5 {
  line-height: 0; }

.blocks h6 {
  line-height: 0; }

.b3_section {
  background-color: #b1e5e6; }
  .b3_section a:hover {
    color: #000 !important; }

.b4_section {
  position: relative;
  height: 350px;
  overflow: hidden;
  background-color: #8A9892; }
  .b4_section .offer {
    height: 100%;
    padding: 20px 0; }
    .b4_section .offer img {
      margin-top: 5px;
      max-height: 169px; }
    .b4_section .offer p {
      font-size: 0.75em;
      margin-bottom: 0; }

.b4_image {
  padding: 10px 0px; }

.b4_badge {
  right: 50px !important;
  font-size: 1em !important;
  white-space: inherit;
  float: right;
  position: absolute;
  margin-right: 40px;
  background-color: #169CF7;
  color: #fff;
  border-radius: 29px;
  width: 58px;
  height: 58px;
  margin-bottom: 0;
  font-size: 1em;
  padding-top: 10px;
  text-align: center;
  font-weight: normal;
  line-height: 18px; }

.b6_section a, .b6_section a:hover {
  color: #000;
  text-decoration: none; }

.b7_image {
  padding: 10px 0px; }

.b8_section {
  position: relative;
  width: 100%;
  min-height: 1px;
  padding: 0; }

.b8_background_image {
  width: 100%; }

.b10_section {
  padding: 25px 0;
  position: relative; }

.b10_text_section {
  top: 50%;
  transform: translateY(-50%); }

.b11_section {
  background-color: #b1e5e6; }
  .b11_section a:hover {
    color: #000 !important; }

.b14_section {
  background-color: #b1e5e6; }

.b18_section .login_link {
  margin-bottom: 20px; }
  .b18_section .login_link a:hover {
    color: #169CF7 !important; }

.b18_section .blocks_link_red i {
  margin-bottom: -3px; }

@media (min-width: 576px) {
  .b1_section p {
    padding-right: 10%;
    padding-left: 10%; }
  .b2_section p {
    padding-right: 10%;
    padding-left: 10%; }
  .b4_section {
    height: auto; }
    .b4_section .offer {
      width: 100%; }
    .b4_section .b4_image_box {
      margin-left: 10%; }
    .b4_section .b4_description {
      margin-right: 10%;
      top: 50%;
      transform: translateY(-50%);
      position: absolute;
      left: 35%; }
    .b4_section .b4_image {
      width: auto; }
  .b7_section .b7_image_box {
    margin-left: 16.666667%; }
  .b7_section .b7_description {
    margin-right: 16.666667%;
    top: 50%;
    transform: translateY(-50%); }
  .b7_section .b7_image {
    width: auto; }
  .b8_section h4 {
    font-size: 2rem; }
  .b10_section .b10_image_box {
    margin-left: 16.666667%; }
  .b10_section .b10_text_section {
    margin-right: 16.666667%; }
  .b10_section .b10_image {
    float: right;
    width: 200px;
    padding: 10px 0px; }
  .b13_section .b13_image_box {
    margin-left: 10%;
    width: auto;
    position: absolute;
    top: 50%;
    transform: translateY(-50%); }
  .b13_section .b13_description {
    margin-right: 10%; }
  .b13_section .b13_image {
    width: auto; }
  .b14_section p {
    padding-right: 10%;
    padding-left: 10%; }
  .page_commercial .blocks {
    padding: 50px 0; }
  .page_home .blocks {
    padding: 50px 0; }
  .page_about .blocks {
    padding: 50px 0; } }

.hmd_block {
  margin-bottom: 60px;
  margin-top: 60px; }
  .hmd_block .black_wash {
    height: 380px;
    margin-top: -380px; }
  .hmd_block .text_image {
    padding-right: 10%;
    padding-left: 10%; }
    .hmd_block .text_image h2 {
      font-size: 38px;
      margin-bottom: 35px; }
    .hmd_block .text_image .btn-primary {
      background: white;
      border: 2px solid white; }
    .hmd_block .text_image .btn-primary:hover {
      background: #169CF7;
      border: 2px solid #169CF7; }

@media (min-width: 767px) {
  .hmd_block {
    margin-bottom: 80px;
    margin-top: 80px; } }

#search_modal .modal-dialog {
  max-width: 70%;
  margin-top: 20%; }

#search_modal .modal-content {
  border-radius: 0rem; }

#search_modal .modal-body {
  position: relative;
  padding: 5px; }

#search_modal .close_modal {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 25px;
  font-size: 45px;
  cursor: pointer; }

#search_modal img {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  margin-left: 15px;
  width: 25px; }

#search_modal input {
  border: 0px;
  font-size: 25px;
  padding-left: 55px; }

#search_modal input::placeholder {
  color: #333; }

#breadcrumbs .breadcrumb {
  background-color: #f7f7f7;
  margin-bottom: 0;
  font-size: 13px; }
  #breadcrumbs .breadcrumb a {
    color: #333;
    text-decoration: underline; }
  #breadcrumbs .breadcrumb .ri-arrow-back-black {
    transform: rotate(180deg);
    margin-bottom: -2px;
    margin-left: 5px;
    margin-right: 3px;
    background-size: 75px;
    background-position: 0 -10px;
    width: 10px;
    height: 12px; }
  #breadcrumbs .breadcrumb .breadcrumbs_next {
    margin-top: -2px;
    margin-left: 5px;
    margin-right: 3px;
    width: 9.2px; }

/* ************************************************************************** */
@media (min-width: 768px) and (max-width: 1024px) {
  #desktop_navigation .main .home {
    display: none; }
  #desktop_navigation .main .search img {
    display: none; }
  .nav-link {
    padding-left: 10px;
    padding-right: 10px; } }

@media (max-width: 1024px) {
  #desktop_navigation .main .home {
    display: none; } }

.get_in_touch {
  background: #F7F7F7;
  padding-top: 50px;
  padding-bottom: 60px;
  padding-right: 30px;
  padding-left: 30px; }
  .get_in_touch .title {
    text-align: center;
    margin-bottom: 32px; }
  .get_in_touch .items {
    text-align: center;
    justify-content: center; }
    .get_in_touch .items .item {
      max-width: 300px;
      padding-bottom: 15px; }
      .get_in_touch .items .item img {
        width: 50px; }
      .get_in_touch .items .item p {
        color: #8D8D8D;
        font-size: 16px; }
        .get_in_touch .items .item p a {
          font-size: 1.5rem;
          color: #333333;
          font-weight: 600; }
        .get_in_touch .items .item p a:hover {
          text-decoration: none; }
      .get_in_touch .items .item .image {
        width: 50px; }
      .get_in_touch .items .item .title {
        margin-bottom: 0;
        width: calc(100% - 65px);
        margin-left: 65px;
        margin-top: -73px;
        text-align: left; }
      .get_in_touch .items .item .info {
        margin-left: 65px;
        text-align: left; }

.padding_150 {
  padding-left: 10px;
  padding-right: 10px; }

@media (min-width: 767px) {
  .padding_150 {
    padding-left: 150px;
    padding-right: 150px; }
  .generic_page {
    padding-top: 80px;
    padding-bottom: 80px; } }

@media (min-width: 767px) {
  .black_wash {
    height: 300px;
    background-color: black;
    width: 100%;
    margin-top: -300px;
    opacity: 0; }
  .get_in_touch {
    background: #F7F7F7;
    padding-top: 100px;
    padding-bottom: 100px;
    padding-right: 50px;
    padding-left: 50px; }
    .get_in_touch .title {
      text-align: center;
      margin-bottom: 32px; }
    .get_in_touch .items {
      text-align: center; }
      .get_in_touch .items .item {
        max-width: 100%;
        padding-bottom: 0; }
        .get_in_touch .items .item img {
          width: 60px; }
        .get_in_touch .items .item p {
          color: #666;
          font-size: 16px; }
          .get_in_touch .items .item p a {
            font-size: 1.2rem;
            color: #333333; }
          .get_in_touch .items .item p a:hover {
            text-decoration: none; }
        .get_in_touch .items .item .image {
          width: auto; }
        .get_in_touch .items .item .title {
          margin-bottom: 5px;
          width: auto;
          margin-left: 0;
          margin-top: 0;
          text-align: center; }
        .get_in_touch .items .item .info {
          margin-left: 0;
          text-align: center; } }

#footer .banner_brand {
  color: #fff;
  background-color: #333333;
  position: relative;
  z-index: 10;
  min-height: 140px;
  height: auto;
  padding-left: 20px;
  padding-right: 20px;
  padding-top: 30px;
  padding-bottom: 30px; }
  #footer .banner_brand .footer_banner {
    color: #fff;
    height: 48px;
    line-height: 48px;
    text-transform: uppercase;
    font-size: 0.75em; }
  #footer .banner_brand .footer_brand {
    background-image: url(../images/logo.svg);
    background-size: contain;
    width: 63px;
    height: 60px;
    position: absolute;
    top: -5px;
    right: 10px;
    background-repeat: no-repeat; }
  #footer .banner_brand a {
    color: white; }
  #footer .banner_brand .footer_address {
    font-size: 14px;
    line-height: 6px;
    font-weight: 100; }
  #footer .banner_brand .row1 {
    padding-top: 15px;
    width: 100%;
    margin-right: 0;
    margin-left: 0; }
  #footer .banner_brand .row2 {
    margin-top: 0px;
    width: 100%;
    margin-right: 0;
    margin-left: 0; }
  #footer .banner_brand .row3 {
    width: 100%;
    float: none;
    margin-top: 15px;
    margin-right: 0;
    margin-left: 0; }
    #footer .banner_brand .row3 p {
      font-size: 16px;
      line-height: 6px;
      font-weight: 100; }
    #footer .banner_brand .row3 p:first-child {
      font-size: 18px;
      font-weight: 500;
      margin-bottom: 8px; }
    #footer .banner_brand .row3 img {
      width: 85px;
      margin-top: -17px;
      margin-right: 12px; }

#footer .menu_links_copyright {
  margin-bottom: 10px;
  width: 100%;
  float: none; }
  #footer .menu_links_copyright nav {
    margin-top: 0px;
    justify-content: center; }
    #footer .menu_links_copyright nav .nav-link {
      text-align: center;
      color: #fff;
      padding: .25rem 1rem; }
  #footer .menu_links_copyright .copyright {
    padding: .5rem 1rem;
    padding-left: 35px;
    padding-right: 35px;
    text-align: center;
    padding-bottom: 20px;
    display: flex;
    justify-content: center; }
    #footer .menu_links_copyright .copyright .col {
      padding-left: 0;
      padding-right: 0; }
    #footer .menu_links_copyright .copyright img {
      padding-right: 10px; }
    #footer .menu_links_copyright .copyright a {
      text-decoration: underline; }
    #footer .menu_links_copyright .copyright .footer-copyright {
      align-items: center;
      display: inline;
      text-align: left; }
  #footer .menu_links_copyright .menu_links-mobile .nav-links {
    display: flex; }
    #footer .menu_links_copyright .menu_links-mobile .nav-links .nav-link {
      padding: 0.25rem 0.5rem; }

#footer .menu_last {
  padding-top: 20px;
  padding-bottom: 20px;
  margin-right: 0;
  margin-left: 0;
  justify-content: center; }

#footer .vertical_bar {
  margin-top: 5px; }

@media (min-width: 767px) {
  .header_container .responsive_src {
    height: 660px; }
  #footer .menu_links_copyright {
    width: 100%;
    float: right; }
    #footer .menu_links_copyright nav {
      margin-top: 0; }
      #footer .menu_links_copyright nav .nav-link {
        font-size: 14px;
        text-align: center;
        text-decoration: none;
        padding: 0.5rem 0.8rem;
        padding-left: 8px;
        padding-right: 8px;
        font-weight: 100; }
      #footer .menu_links_copyright nav .nav-link:hover {
        text-decoration: underline; }
      #footer .menu_links_copyright nav .nav_copy {
        padding-left: 0; }
      #footer .menu_links_copyright nav .nav_copy:hover {
        text-decoration: none; }
      #footer .menu_links_copyright nav .social {
        margin: 5px 0;
        text-decoration: none;
        padding-top: 3px; }
        #footer .menu_links_copyright nav .social img {
          margin-right: 10px; }
    #footer .menu_links_copyright .copyright {
      font-size: 16px;
      padding: .5rem 1rem;
      font-weight: unset;
      padding-left: 0;
      padding-right: 15px;
      padding-bottom: 20px; }
      #footer .menu_links_copyright .copyright a {
        color: white; }
      #footer .menu_links_copyright .copyright .col {
        padding-left: 0; }
      #footer .menu_links_copyright .copyright .footer-copyright {
        align-items: center;
        display: inline-flex; }
        #footer .menu_links_copyright .copyright .footer-copyright a {
          padding-left: 5px; }
  #footer .menu_last {
    padding-top: 0px;
    padding-bottom: 0px;
    justify-content: unset; }
  #footer .banner_brand {
    min-height: 200px;
    height: auto;
    padding-left: 100px;
    padding-right: 100px;
    padding-top: 0;
    padding-bottom: 0; }
    #footer .banner_brand .footer_banner {
      font-size: 1.2rem;
      margin-left: 18px; }
    #footer .banner_brand .footer_brand {
      width: 80px;
      height: 75px;
      top: -12px; }
    #footer .banner_brand .row1 {
      padding-top: 40px;
      width: 100%;
      margin-right: -15px;
      margin-left: -15px; }
    #footer .banner_brand .row2 {
      margin-top: -20px;
      width: 100%;
      margin-right: -15px;
      margin-left: -15px; }
    #footer .banner_brand .row3 {
      width: 100%;
      float: right;
      margin-top: -68px;
      margin-right: 0px;
      margin-left: 0px;
      max-width: 260px; }
      #footer .banner_brand .row3 p {
        font-size: 15px;
        line-height: 6px; }
      #footer .banner_brand .row3 img {
        width: 85px;
        margin-top: -17px;
        margin-right: 12px; } }

@media (min-width: 767px) and (max-width: 1066px) {
  #footer .menu_links_copyright nav {
    margin-top: 0px;
    justify-content: center; }
  #footer .banner_brand {
    padding-left: 65px;
    padding-right: 50px; }
  #footer .banner_brand .row1 {
    padding-top: 20px; }
  #footer .banner_brand .row2 {
    width: 100%; }
  #footer .banner_brand .row3 {
    margin-top: -72px; }
  #footer .menu_links_copyright nav .nav-link {
    padding-bottom: 0px; } }

div[data-field="comments"] textarea {
  height: 200px; }

.back_container {
  background-color: #f7f7f7; }
  .back_container a.back {
    padding: 10px 0;
    color: #333;
    font-size: 18px; }
    .back_container a.back i {
      position: relative;
      top: 1px;
      margin-right: 5px; }
  .back_container a.back:hover {
    color: #333;
    text-decoration: none; }

.accordion_rheem .card {
  margin-bottom: 10px;
  border-radius: 0.15rem; }

.accordion_rheem .card-header {
  background-color: white;
  border-bottom: 0px; }

.accordion_rheem .card-header a {
  color: #333; }

.accordion_rheem .card-header a:hover {
  text-decoration: none;
  color: #333; }

.accordion_rheem .card-body {
  padding: 1rem; }

.accordion_rheem .card-body p {
  margin-bottom: 0; }

.accordion_rheem .card-body img {
  max-width: 100%; }

.accordion_rheem .card2 {
  width: 100% !important; }

.black_wash {
  height: 200px;
  background-color: black;
  width: 100%;
  margin-top: -200px;
  opacity: 0; }

.case_studies_page .black_wash {
  height: 178px !important;
  margin-top: -202px !important; }

.blocks-link .ri-arrow-back-black {
  transform: rotate(180deg);
  margin-bottom: -2px;
  margin-left: 2px;
  margin-right: 3px; }

.blocks-link .ri-arrow-next {
  margin-bottom: -2px;
  margin-left: 2px;
  margin-right: 3px; }

#guides {
  position: relative;
  z-index: 15; }
  #guides .dropdown-menu {
    height: 500px;
    overflow: auto; }
  #guides .results .list {
    margin-bottom: 15px; }
    #guides .results .list a {
      margin-right: 5px; }

.page_cashback,
.page_redemption {
  margin-top: 25px; }

.page_redemption .cashback-form-wrapper {
  margin-top: 25px; }

.cashback-form-wrapper-2 {
  margin-left: 50%;
  width: 100%;
  transform: translateX(-50%); }

.cashback-form-wrapper {
  margin: 0 auto;
  margin-top: 25px; }
  .cashback-form-wrapper .form-control {
    padding: 7px .75rem; }
  .cashback-form-wrapper .state {
    margin-bottom: 0px; }

.cashback_page p {
  font-size: 1rem; }

#redemption_form p {
  font-size: 1rem; }

.thank_you_page {
  margin-top: 25px;
  margin-bottom: 30px;
  display: block !important;
  margin-left: 50%;
  transform: translateX(-50%);
  text-align: center; }

.g-recaptcha {
  text-align: left;
  padding: 20px 0; }
  .g-recaptcha div:first-child {
    width: 100% !important; }
  .g-recaptcha iframe {
    width: 100%;
    text-align: center;
    margin: 0 auto;
    margin-left: auto;
    max-width: 304px;
    border: 1px solid #D1D2D4; }

.forms_banner_image {
  max-height: 300px; }
  .forms_banner_image img {
    max-height: 300px; }

.page_generic_page {
  margin-top: 0;
  margin-bottom: 0; }

/* larger breakpoints ******************************************************* */
@media (min-width: 992px) {
  .btn-primary {
    padding-top: 0;
    padding-bottom: 0;
    height: auto;
    line-height: 42px;
    font-size: 16px;
    overflow: hidden; }
  .header {
    position: fixed;
    width: 100%;
    max-width: 1440px;
    z-index: 10000;
    background: #fff;
    margin-top: -150px; }
    .header hr {
      border-top: 2px solid rgba(0, 0, 0, 0.1);
      margin-left: 0;
      margin-right: 0; }
  .general-container {
    margin-top: 106px; }
  .header {
    margin-top: -106px; }
  #phone_brand #phone {
    margin: 12px 0 0 30px; }
  #phone_brand #brand_text .text {
    padding-right: 85px; }
  #phone_brand #brand_text .brand {
    right: 25px; }
  #desktop_navigation {
    margin-left: 0px;
    background: white;
    height: 106px; } }

.btn-primary {
  padding: 15px 30px;
  font-size: 18px;
  line-height: 24px; }

.btn-secondary {
  padding: 8px 30px;
  font-size: 18px; }

.btn-rewards {
  padding: 8px 30px;
  font-size: 18px; }

.btn-red {
  padding: 8px 30px;
  font-size: 18px; }

.btn-background {
  padding: 8px 30px;
  font-size: 18px; }

@media (min-width: 576px) {
  .btn-primary {
    padding: 15px 30px;
    font-size: 18px;
    line-height: 24px; }
  .btn-secondary {
    padding: 8px 30px;
    font-size: 18px; }
  .btn-rewards {
    padding: 8px 30px;
    font-size: 18px; }
  .btn-red {
    padding: 8px 30px;
    font-size: 18px; }
  .btn-background {
    padding: 8px 30px;
    font-size: 18px; }
  .main_section {
    padding: 25px 0; }
    .main_section p {
      padding-right: 10%;
      padding-left: 10%;
      font-size: 20px; } }

@media (min-width: 992px) {
  .general-container {
    margin-top: 150px; }
  .header {
    margin-top: -150px; }
  #phone_brand {
    height: 42px;
    position: relative;
    width: 100%;
    background: #169CF7;
    margin-left: 0; }
    #phone_brand .padlock_icon {
      margin-top: -2px;
      margin-right: 2px; }
    #phone_brand .header_items {
      width: 100%;
      max-width: 1098px;
      height: 42px;
      position: relative;
      left: 50%;
      transform: translateX(-50%); }
    #phone_brand #phone .icon {
      top: -3px;
      margin-right: -4px; }
    #phone_brand #brand_text .text {
      color: #169CF7;
      text-transform: uppercase;
      line-height: 76px;
      font-size: 1rem;
      text-align: right;
      padding-right: 122px;
      margin-top: -10px; }
    #phone_brand #brand_text .brand {
      background-image: url(../images/logo_aquamax.svg);
      background-repeat: no-repeat;
      background-size: contain;
      position: absolute;
      width: 210px;
      height: 71px;
      top: 18px;
      left: 35px; }
  .brochure_title_section {
    background-color: white;
    padding-top: 8px;
    margin-bottom: -25px; } }

@media (max-width: 572px) {
  .video_box {
    margin: 0 auto;
    margin-top: 25px;
    width: 100%;
    max-width: 200px;
    min-width: 200px;
    height: 80px;
    background-color: #fff;
    background-clip: border-box;
    border: 1px solid rgba(0, 0, 0, 0.125);
    border-radius: .25rem; }
    .video_box .thumbnail {
      position: relative;
      width: 100%;
      height: 78px;
      border-right: 0;
      cursor: pointer;
      display: inline-block; }
    .video_box .description {
      display: none; }
  .video_box_modal .modal-dialog {
    margin-top: 20px;
    width: auto;
    max-width: 100%; }
  .video_box_modal .modal-body {
    padding: 25px !important; }
    .video_box_modal .modal-body .youtube_video iframe {
      min-height: 200px !important;
      width: 100% !important; } }

@media (max-width: 767px) {
  .case_studies_page .black_wash {
    height: 178px !important;
    margin-top: -193px !important; } }

@media (min-width: 1200px) {
  .container-fluid {
    max-width: 1440px; } }

@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min--moz-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio: 2 / 1), only screen and (min-device-pixel-ratio: 2), only screen and (min-resolution: 192dpi), only screen and (min-resolution: 2dppx) {
  /* Retina-specific stuff here */ }

/*@media screen and (min-width: 320px) and (max-width: 767px) and (orientation: landscape) {
  html {
    transform: rotate(-90deg);
    transform-origin: left top;
    width: 100vh;
    overflow-x: hidden;
    position: absolute;
    top: 100%;
    left: 0;
  }
}*/
@media (max-width: 460px) {
  #phone_brand #phone {
    margin: 24px 0 0 12px; }
    #phone_brand #phone img {
      margin-top: -12px; }
  #phone_brand #phone .number {
    margin-left: 0px;
    font-size: 18px; } }

@media (max-width: 324px) {
  #phone_brand #phone .number {
    margin-left: 0px;
    font-size: 15px; } }

.disclaimer {
  color: #333;
  font-size: 12px;
  padding: 20px; }

/* GENERIC PAGE HEADER IMAGE */
.gp_image_desktop {
  display: none;
  width: 100%; }

.gp_image_mobile {
  display: block;
  width: 100%; }

@media (min-width: 576px) {
  .gp_image_desktop {
    display: block; }
  .gp_image_mobile {
    display: none; } }

/* ALERT */
.alert-rheem {
  position: relative;
  background-color: #f4f4f4;
  margin-right: -15px;
  margin-left: -15px;
  padding: 20px;
  padding-top: 30px;
  padding-bottom: 30px;
  margin-bottom: 0; }

.alert-rheem .alert-title {
  font-size: 23px;
  color: #333333;
  text-align: center;
  line-height: 42px;
  padding-bottom: 10px; }

.alert-rheem .alert-text {
  font-size: 16px;
  color: #333333;
  text-align: center;
  line-height: 20px;
  max-width: 900px;
  margin: 0 auto;
  padding-bottom: 20px; }

.alert-rheem .alert-button {
  text-align: center; }

.alert-rheem .alert-button .blocks_link_red {
  text-transform: uppercase; }

.alert-rheem .close {
  position: absolute;
  right: 25px;
  top: 25px;
  color: #169CF7;
  opacity: 1;
  cursor: pointer; }

#loading-mask {
  position: fixed;
  width: 100vw;
  height: 100vh;
  background: white;
  z-index: 10000;
  margin-top: -150px;
  overflow: hidden; }
  #loading-mask h1 {
    text-align: center;
    color: black;
    padding-top: 50%;
    transform: translateY(-50%); }
  #loading-mask .preloader {
    position: absolute;
    text-align: center;
    height: 20px;
    width: 20px;
    top: calc(50vh - 10px);
    left: calc(50vw - 10px); }
  #loading-mask .c-three-dots-loader {
    position: relative;
    display: inline-block;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    margin: -20px 24px 20px;
    animation-fill-mode: both;
    animation: three-dots-loader-animation 2s infinite ease-in-out;
    animation-delay: -0.16s;
    color: #169CF7; }
  #loading-mask .c-three-dots-loader:before,
  #loading-mask .c-three-dots-loader:after {
    content: '';
    position: absolute;
    width: 20px;
    height: 20px;
    top: 0;
    animation: three-dots-loader-animation 2s infinite ease-in-out;
    border-radius: 50%; }
  #loading-mask .c-three-dots-loader:before {
    left: -24px;
    animation-delay: -0.32s; }
  #loading-mask .c-three-dots-loader:after {
    left: 24px; }
  #loading-mask .load-mask-wrapper {
    position: absolute;
    text-align: center;
    height: 200px;
    width: 200px;
    top: calc(50vh - 100px);
    left: calc(50vw - 100px); }
  #loading-mask .load-mask-innerDots {
    position: absolute;
    top: 6px;
    left: 6px;
    width: 100%;
    height: 100%; }
  #loading-mask .load-mask-outerPlane {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

@media (max-width: 767px) {
  #loading-mask {
    margin-top: 0; }
  .html_generic .generic_table tr td {
    display: block;
    width: 100%;
    padding-right: 0; } }

@media (min-width: 767px) {
  .black_wash {
    height: 240px;
    background-color: black;
    width: 100%;
    margin-top: -240px;
    opacity: 0; } }

@keyframes three-dots-loader-animation {
  0%,
  80%,
  100% {
    box-shadow: 0 20px 0 -24px; }
  40% {
    box-shadow: 0 20px 0 0; } }

.nav-tabs {
  border: 0; }
  .nav-tabs .nav-link {
    color: #495057;
    background-color: transparent;
    border: 0;
    text-align: center;
    text-transform: uppercase;
    font-size: 18px; }
  .nav-tabs .nav-link.active {
    border-bottom: solid 4px #169CF7; }

/* home */
.page_home h2 {
  font-size: 1.9rem; }

.page_home h3 {
  font-size: 0.7em;
  text-transform: uppercase;
  margin: 0; }

.page_home .home_section img {
  margin-bottom: 20px; }

#hot_water {
  color: #fff;
  background: #169CF7;
  padding: 100px 0;
  overflow: hidden;
  height: 430px;
  max-height: 430px;
  width: 100%;
  max-width: 1440px;
  position: absolute;
  z-index: 10;
  transition-timing-function: ease-in;
  -moz-transition-timing-function: ease-in;
  -webkit-transition-timing-function: ease-in;
  -o-transition-transition-timing-function: ease-in;
  -moz-transition-duration: .5s;
  -webkit-transition-duration: .5s;
  -o-transition-duration: .5s;
  transition-duration: .5s; }
  #hot_water a.toggle_action {
    position: absolute;
    width: 14px;
    height: 14px;
    top: 18px;
    right: 13px;
    z-index: 10; }
  #hot_water a.expand_action {
    background-image: url(../images/hot_water_plus.png); }
  #hot_water a.collapse_action {
    background-image: url(../images/hot_water_minus.png);
    height: 2px;
    top: 25px; }
  #hot_water h3 {
    font-size: 1.25em;
    text-transform: none; }
  #hot_water .btn {
    margin-top: 20px;
    padding: 8px 25px;
    font-size: 1em; }

#home_products {
  padding: 75px 0 30px 0; }

#home_offers,
#video_carousel,
#home_banner {
  height: 640px;
  position: relative;
  overflow: hidden; }
  #home_offers .non_style,
  #video_carousel .non_style,
  #home_banner .non_style {
    color: white;
    text-decoration: none; }
  #home_offers .non_style:hover,
  #video_carousel .non_style:hover,
  #home_banner .non_style:hover {
    color: white;
    text-decoration: none; }
  #home_offers .bg-light-blue .non_style,
  #video_carousel .bg-light-blue .non_style,
  #home_banner .bg-light-blue .non_style {
    color: #333;
    text-decoration: none; }
  #home_offers .bg-light-blue .non_style:hover,
  #video_carousel .bg-light-blue .non_style:hover,
  #home_banner .bg-light-blue .non_style:hover {
    color: #333;
    text-decoration: none; }
  #home_offers .carousel-inner,
  #video_carousel .carousel-inner,
  #home_banner .carousel-inner {
    height: 100%; }
    #home_offers .carousel-inner .offer,
    #video_carousel .carousel-inner .offer,
    #home_banner .carousel-inner .offer {
      height: 100%; }
      #home_offers .carousel-inner .offer.bg-gray,
      #video_carousel .carousel-inner .offer.bg-gray,
      #home_banner .carousel-inner .offer.bg-gray {
        color: #fff;
        background-color: #8A9892; }
      #home_offers .carousel-inner .offer.bg-light-blue,
      #video_carousel .carousel-inner .offer.bg-light-blue,
      #home_banner .carousel-inner .offer.bg-light-blue {
        color: #333;
        background-color: #B1E5E6; }
      #home_offers .carousel-inner .offer .offer_save_image,
      #video_carousel .carousel-inner .offer .offer_save_image,
      #home_banner .carousel-inner .offer .offer_save_image {
        margin-top: 34px;
        padding: 0; }
        #home_offers .carousel-inner .offer .offer_save_image > div,
        #video_carousel .carousel-inner .offer .offer_save_image > div,
        #home_banner .carousel-inner .offer .offer_save_image > div {
          max-width: 259px;
          position: relative; }
        #home_offers .carousel-inner .offer .offer_save_image img,
        #video_carousel .carousel-inner .offer .offer_save_image img,
        #home_banner .carousel-inner .offer .offer_save_image img {
          max-height: 169px;
          width: 100%; }
      #home_offers .carousel-inner .offer .badge-primary,
      #video_carousel .carousel-inner .offer .badge-primary,
      #home_banner .carousel-inner .offer .badge-primary {
        color: #fff;
        background: #169CF7;
        border-radius: 29px;
        width: 58px;
        height: 58px;
        margin-bottom: 0;
        padding: 0;
        position: absolute;
        font-size: 1em;
        padding-top: 10px;
        text-align: center;
        font-weight: normal;
        line-height: 18px;
        top: 0px;
        right: 0px; }
      #home_offers .carousel-inner .offer .offer_text,
      #video_carousel .carousel-inner .offer .offer_text,
      #home_banner .carousel-inner .offer .offer_text {
        margin-top: 0;
        margin-left: 4.16%; }
      #home_offers .carousel-inner .offer p,
      #video_carousel .carousel-inner .offer p,
      #home_banner .carousel-inner .offer p {
        font-size: 0.9rem;
        font-weight: 400;
        letter-spacing: 0.03rem;
        margin-bottom: 0;
        line-height: 1.2; }
  #home_offers .carousel-control-prev,
  #home_offers .carousel-control-next,
  #video_carousel .carousel-control-prev,
  #video_carousel .carousel-control-next,
  #home_banner .carousel-control-prev,
  #home_banner .carousel-control-next {
    opacity: 1;
    width: 64px; }
    #home_offers .carousel-control-prev .arrow,
    #home_offers .carousel-control-next .arrow,
    #video_carousel .carousel-control-prev .arrow,
    #video_carousel .carousel-control-next .arrow,
    #home_banner .carousel-control-prev .arrow,
    #home_banner .carousel-control-next .arrow {
      background-color: #fff;
      background-repeat: no-repeat;
      width: 100%;
      height: 64px;
      border-radius: 32px;
      background-size: 20%;
      background-position: center; }
  #home_offers .carousel-control-prev,
  #video_carousel .carousel-control-prev,
  #home_banner .carousel-control-prev {
    left: 50px; }
    #home_offers .carousel-control-prev .arrow,
    #video_carousel .carousel-control-prev .arrow,
    #home_banner .carousel-control-prev .arrow {
      background-image: url(../images/carousel_arrow_previous.png);
      background-position: 38px center; }
  #home_offers .carousel-control-next,
  #video_carousel .carousel-control-next,
  #home_banner .carousel-control-next {
    right: 50px; }
    #home_offers .carousel-control-next .arrow,
    #video_carousel .carousel-control-next .arrow,
    #home_banner .carousel-control-next .arrow {
      background-image: url(../images/carousel_arrow_next.png);
      background-position: 14px center; }

#video_carousel .carousel-inner .offer .offer_text {
  max-width: 100% !important;
  margin-left: 0 !important;
  text-align: center;
  color: white; }

#video_carousel .carousel-inner .offer .offer_section_title {
  color: white;
  max-width: 650px;
  text-align: center;
  margin-left: 50%;
  transform: translateX(-50%); }

#video_carousel .carousel-inner .offer .offer_title {
  color: white;
  max-width: 650px;
  text-align: center;
  margin-left: 50%;
  transform: translateX(-50%);
  line-height: 20px;
  padding-top: 5px;
  padding-bottom: 5px;
  font-size: 1.2rem; }

#video_carousel .carousel-inner .bg_image {
  width: 100%;
  z-index: -10000;
  position: absolute;
  min-height: 100%; }

#home_solar {
  padding: 25px 0; }
  #home_solar .solar_button {
    width: 190px; }

#home_plumbers {
  position: relative;
  padding: 25px 0; }
  #home_plumbers > div {
    z-index: 10; }
  #home_plumbers .background {
    background-color: #F7F7F7;
    width: 100%;
    height: 230px;
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: 5; }

/* animate.css custom configuration */
#hot_water.animated.fadeIn {
  animation-duration: 3s; }

#hot_water.animated.fadeOut {
  animation-duration: 3s; }

#hot_water.collapsed {
  max-height: 50px;
  padding: 0px 0;
  transition-timing-function: ease-in;
  -moz-transition-timing-function: ease-in;
  -webkit-transition-timing-function: ease-in;
  -o-transition-transition-timing-function: ease-in;
  -moz-transition-duration: .5s;
  -webkit-transition-duration: .5s;
  -o-transition-duration: .5s;
  transition-duration: .5s; }

.products_title {
  color: #169CF7;
  height: auto;
  overflow: hidden;
  font-size: 2.25em; }

.commercial_title {
  color: #169CF7;
  font-size: 30px; }

.commercial_products_image {
  margin-bottom: 25px;
  max-width: 85%; }

.commercial_section p {
  padding-right: 10%;
  padding-left: 10%;
  font-size: 20px; }

.btn-offer-link,
.btn-video-link {
  margin-top: 10px;
  color: white;
  border-color: white; }

.btn-offer-link:hover,
.btn-video-link:hover {
  margin-top: 10px;
  color: #169CF7;
  border-color: white;
  background-color: white; }

.bg-light-blue .btn-primary {
  color: #333 !important;
  border-color: #333 !important; }

.bg-light-blue .btn-primary:hover {
  color: #169CF7 !important;
  border-color: #169CF7 !important; }

/* PRODUCTS section ************************************************** */
.products_section {
  background: #FFF;
  padding-top: 60px;
  padding-bottom: 60px;
  padding-right: 30px;
  padding-left: 30px; }
  .products_section .title {
    text-align: center;
    margin-bottom: 32px; }
  .products_section .items {
    text-align: left;
    justify-content: center; }
    .products_section .items .item {
      max-width: 100%;
      padding-bottom: 3px;
      margin-top: 15px;
      margin-bottom: 15px; }
      .products_section .items .item .news_box {
        border: 0;
        text-align: center; }
        .products_section .items .item .news_box .btn-primary {
          color: #333333;
          background: transparent;
          border: 2px solid #333333;
          border-radius: 30px;
          text-transform: uppercase;
          font-weight: bold;
          padding: 5px 10px;
          font-size: 0.8em;
          cursor: pointer;
          line-height: 24px; }
        .products_section .items .item .news_box .btn-primary:hover {
          color: #fff;
          background: #333333;
          border: 2px solid #333333; }
        .products_section .items .item .news_box .card-body {
          padding: 11px;
          padding-left: 0;
          padding-right: 0;
          padding-top: 25px; }
          .products_section .items .item .news_box .card-body .card-title {
            font-size: 19px; }
      .products_section .items .item img {
        width: 100%;
        border-radius: 50%;
        max-width: 220px;
        margin-left: 50%;
        transform: translateX(-50%); }
      .products_section .items .item p {
        color: #666;
        font-size: 16px; }
        .products_section .items .item p a {
          font-size: 1.2rem;
          color: #169CF7; }
        .products_section .items .item p a:hover {
          text-decoration: none; }
      .products_section .items .item .image {
        width: 50px; }
      .products_section .items .item .title {
        margin-bottom: 0;
        width: calc(100% - 65px);
        margin-left: 65px;
        margin-top: -65px;
        text-align: left; }
      .products_section .items .item .info {
        margin-left: 65px;
        text-align: left; }

/* news section ************************************************** */
.news_section {
  background: #FFF;
  padding-top: 60px;
  padding-bottom: 60px;
  padding-right: 30px;
  padding-left: 30px;
  margin-left: -15px;
  margin-right: -15px; }
  .news_section .title {
    text-align: center;
    margin-bottom: 32px; }
  .news_section .items {
    text-align: left;
    justify-content: center; }
    .news_section .items .item {
      max-width: 100%;
      padding-bottom: 25px; }
      .news_section .items .item img {
        width: 100%; }
      .news_section .items .item p {
        color: #666;
        font-size: 16px; }
        .news_section .items .item p a {
          font-size: 1.2rem;
          color: #169CF7; }
        .news_section .items .item p a:hover {
          text-decoration: none; }
      .news_section .items .item .image {
        width: 50px; }
      .news_section .items .item .card-title {
        font-size: 1.3rem; }
      .news_section .items .item .card-date {
        color: #B5B5B5;
        font-size: 14px; }
      .news_section .items .item .title {
        margin-bottom: 0;
        width: calc(100% - 65px);
        margin-left: 65px;
        margin-top: -65px;
        text-align: left; }
      .news_section .items .item .info {
        margin-left: 65px;
        text-align: left; }
    .news_section .items .item2 .news_box .card-img-top,
    .news_section .items .item3 .news_box .card-img-top {
      border-top-left-radius: calc(0.25rem - 1px);
      border-top-right-radius: 0;
      border-bottom-left-radius: calc(0.25rem - 1px); }
    .news_section .items .item2 .news_box img,
    .news_section .items .item3 .news_box img {
      width: 125px;
      display: inline; }
    .news_section .items .item2 .news_box .card-body,
    .news_section .items .item3 .news_box .card-body {
      width: calc(100% - 125px);
      position: absolute;
      float: right;
      display: inline;
      right: 0;
      padding: 10px; }
    .news_section .items .item2 .news_box .card-title,
    .news_section .items .item3 .news_box .card-title {
      font-size: 16px;
      margin-bottom: 0px; }
    .news_section .items .item2 .news_box .card-text,
    .news_section .items .item3 .news_box .card-text {
      display: none;
      font-size: 16px;
      margin-bottom: 0px; }
    .news_section .items .item2 .news_box .card-date,
    .news_section .items .item3 .news_box .card-date {
      display: block;
      font-size: 14px;
      margin-bottom: 0px;
      color: #B5B5B5; }

/* half section ************************************************** */
.half_section {
  margin: 0;
  padding: 0;
  background: #F7F7F7;
  position: relative;
  max-height: unset;
  overflow: hidden;
  min-height: unset; }
  .half_section .description {
    padding-left: 25px;
    padding-right: 25px;
    padding-top: 50px;
    padding-bottom: 50px;
    vertical-align: middle;
    height: min-content;
    background: #f7f7f7; }
    .half_section .description .title {
      font-size: 38px; }
    .half_section .description .text {
      font-size: 16px;
      color: #666666;
      margin-bottom: 35px; }
  .half_section .image {
    padding: 0;
    position: relative; }
    .half_section .image img {
      width: 100%;
      margin-bottom: 0; }

#home_banner .carousel-control-prev {
  left: 0px; }

#home_banner .carousel-control-next {
  right: 0px; }

#home_banner .carousel-item {
  position: relative; }
  #home_banner .carousel-item .item {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 70%;
    max-width: 500px;
    z-index: 2; }
    #home_banner .carousel-item .item h2 {
      text-align: center !important; }
    #home_banner .carousel-item .item h3 {
      text-align: center !important; }
    #home_banner .carousel-item .item p {
      text-align: center !important; }

#home_banner .black_wash {
  height: 100%;
  background-color: black;
  width: 100%;
  margin-top: 0px;
  opacity: 0.25;
  z-index: 1; }

/* AQUAMAX */
.intro_section {
  position: relative;
  width: 100%;
  margin: 0 auto; }
  .intro_section h2 {
    font-size: 30px; }
  .intro_section .title {
    max-width: 920px;
    margin: 0 auto;
    margin-bottom: 45px; }
  .intro_section .items .item img {
    width: 120px; }
  .intro_section .items .item p {
    color: #333;
    font-size: 24px;
    line-height: 32px; }
  .intro_section .items .item .news_box .card-body {
    padding-bottom: 0;
    padding-right: 0;
    padding-left: 0; }

.ap_section {
  background: linear-gradient(#F7F7F7, #FFFFFF); }
  .ap_section .wrap_product {
    padding-top: 100px;
    padding-bottom: 40px; }
  .ap_section .image img {
    max-width: 80%;
    max-height: 420px;
    width: auto; }
  .ap_section .description {
    background: transparent; }
  .ap_section .description .title {
    font-size: 40px;
    margin-bottom: 20px; }
  .ap_section .description .text {
    font-size: 18px;
    color: #8D8D8D;
    margin-bottom: 35px; }
  .ap_section .btn-primary {
    padding: 15px 30px;
    font-size: 18px;
    line-height: 24px; }

.wtb_home_section {
  background: #169CF7;
  color: #fff;
  min-height: auto;
  position: relative; }
  .wtb_home_section .wrap_wtb {
    position: relative;
    top: unset;
    left: unset;
    transform: unset;
    max-width: 920px;
    width: 100%;
    height: 100%;
    height: unset;
    margin: 0 auto;
    padding-top: 150px;
    padding-bottom: 150px; }
  .wtb_home_section .description .title {
    font-size: 40px;
    color: #fff;
    margin-bottom: 15px; }
  .wtb_home_section .description .text {
    font-size: 18px;
    color: #fff; }
  .wtb_home_section .wtb_section_gray {
    background: transparent; }
  .wtb_home_section .map_finder {
    background: transparent;
    padding-top: 0;
    padding-bottom: 0;
    padding-left: 25px;
    padding-right: 25px;
    margin-bottom: 0;
    margin-left: -15px;
    margin-right: -15px; }
    .wtb_home_section .map_finder .search_box {
      position: relative;
      display: flex;
      max-width: 445px;
      margin: 0 auto;
      margin-bottom: 10px;
      margin-top: 15px; }
      .wtb_home_section .map_finder .search_box img {
        position: absolute;
        right: 20px;
        top: 15px;
        cursor: pointer; }
      .wtb_home_section .map_finder .search_box input {
        padding-left: 30px;
        margin-right: 30px;
        font-family: futura-pt, futura, 'Open Sans', "Trebuchet MS", Arial, sans-serif;
        font-style: normal;
        font-weight: 500;
        border: 0px solid #D1D2D4;
        border-radius: 2px;
        padding: 25px 0.75rem;
        color: #333;
        width: calc(100% - 45px); }
      .wtb_home_section .map_finder .search_box .easy-autocomplete {
        background: #fff; }
      .wtb_home_section .map_finder .search_box .easy-autocomplete-container ul {
        border: 0px solid #D1D2D4;
        color: #333; }
    .wtb_home_section .map_finder .use_current_location {
      color: #FFF;
      font-size: 16px;
      cursor: pointer;
      display: inline-block;
      text-decoration: unset; }
      .wtb_home_section .map_finder .use_current_location img {
        margin-top: 15px;
        margin-right: 5px; }

.promo_section {
  background: #FFF; }

/* min-width media queries ************************************************** */
@media (min-width: 576px) {
  #hot_water {
    height: 440px;
    max-height: 440px; }
    #hot_water h2 {
      font-size: 2.25em; }
    #hot_water h3 {
      max-width: 100%;
      margin: 0 auto;
      line-height: 50px; }
    #hot_water .btn {
      margin-top: 4px; }
  #home_products .products_title {
    width: 450px;
    height: auto;
    margin-left: 50%;
    transform: translateX(-50%); }
  #home_offers,
  #video_carousel,
  #home_banner {
    height: 660px; }
    #home_offers .carousel-inner .offer .offer_save_image,
    #video_carousel .carousel-inner .offer .offer_save_image,
    #home_banner .carousel-inner .offer .offer_save_image {
      margin-top: 45px; }
      #home_offers .carousel-inner .offer .offer_save_image > div,
      #video_carousel .carousel-inner .offer .offer_save_image > div,
      #home_banner .carousel-inner .offer .offer_save_image > div {
        max-width: 338px;
        position: relative; }
      #home_offers .carousel-inner .offer .offer_save_image img,
      #video_carousel .carousel-inner .offer .offer_save_image img,
      #home_banner .carousel-inner .offer .offer_save_image img {
        max-height: 220px; }
    #home_offers .carousel-inner .offer .offer_text,
    #video_carousel .carousel-inner .offer .offer_text,
    #home_banner .carousel-inner .offer .offer_text {
      margin-top: 90px;
      margin-left: 4%;
      max-width: 30%; }
    #home_offers .non_style,
    #video_carousel .non_style,
    #home_banner .non_style {
      color: white;
      text-decoration: none; }
    #home_offers .non_style:hover,
    #video_carousel .non_style:hover,
    #home_banner .non_style:hover {
      color: white;
      text-decoration: none; }
  #home_solar .solar_image {
    margin-right: 16.666667%; }
  #home_solar .solar_button {
    width: 270px; }
  #home_plumbers {
    margin-bottom: 95px;
    margin-top: 25px; }
    #home_plumbers .plumbers_text {
      margin-top: 12px; }
    #home_plumbers .background {
      width: 61.5%;
      bottom: -25px; }
  .commercial_title {
    font-size: 2.5rem; }
  #home_plumbers .plumbers_image {
    width: 325px;
    margin-bottom: -30px; } }

@media (min-width: 767px) {
  #hot_water {
    height: 400px;
    max-height: 400px; }
    #hot_water h3 {
      max-width: 75%; }
  #home_products img {
    width: 260px; }
  #home_offers .carousel-inner .offer .offer_text,
  #video_carousel .carousel-inner .offer .offer_text,
  #home_banner .carousel-inner .offer .offer_text {
    margin-left: 4%;
    max-width: 38%; }
  #home_plumbers .plumbers_image {
    width: 255px;
    margin-bottom: -30px; }
  #home_plumbers .background {
    bottom: 0px; }
  .products_section {
    background: #FFF;
    padding-top: 80px;
    padding-bottom: 80px;
    padding-right: 50px;
    padding-left: 50px; }
    .products_section .title {
      text-align: center;
      margin-bottom: 45px; }
    .products_section .items {
      text-align: left; }
      .products_section .items .item {
        max-width: 100%;
        margin-top: 0;
        margin-bottom: 0; }
        .products_section .items .item .news_box {
          width: 100%;
          max-width: 320px;
          margin-left: 50%;
          transform: translateX(-50%); }
          .products_section .items .item .news_box .btn-primary {
            color: #333333;
            background: transparent;
            border: 2px solid #333333;
            border-radius: 30px;
            text-transform: uppercase;
            font-weight: bold;
            padding: 8px 20px;
            font-size: 16px;
            cursor: pointer; }
          .products_section .items .item .news_box .card-body {
            padding: 1.65rem; }
            .products_section .items .item .news_box .card-body .card-title {
              font-size: 28px;
              padding-top: 10px;
              padding-bottom: 5px; }
            .products_section .items .item .news_box .card-body .card-text {
              padding-bottom: 10px; }
            .products_section .items .item .news_box .card-body .card-date {
              color: #F7F7F7; }
        .products_section .items .item img {
          width: 90px; }
        .products_section .items .item p a {
          font-size: 1.2rem;
          color: #169CF7; }
        .products_section .items .item p a:hover {
          text-decoration: none; }
        .products_section .items .item .image {
          width: auto; }
        .products_section .items .item .title {
          margin-bottom: 0;
          width: auto;
          margin-left: 0;
          margin-top: 0;
          text-align: center; }
        .products_section .items .item .info {
          margin-left: 0;
          text-align: center; }
      .products_section .items .btn-primary {
        padding: 8px 10px;
        height: auto;
        line-height: 18px; }
  #home_banner .carousel-inner .offer .offer_text {
    left: 50%;
    transform: translateX(-50%);
    bottom: 25px;
    position: absolute;
    margin-left: 0; }
  .news_section {
    background: #FFF;
    padding-top: 80px;
    padding-bottom: 80px;
    padding-right: 50px;
    padding-left: 50px; }
    .news_section .title {
      text-align: center;
      margin-bottom: 45px; }
    .news_section .items {
      text-align: left; }
      .news_section .items .item {
        max-width: 100%;
        padding-bottom: 3px; }
        .news_section .items .item .news_box {
          width: 100%;
          max-width: 320px;
          margin-left: 50%;
          transform: translateX(-50%); }
          .news_section .items .item .news_box .card-date {
            color: #B5B5B5; }
        .news_section .items .item img {
          width: 100%; }
        .news_section .items .item p {
          color: #666;
          font-size: 16px; }
          .news_section .items .item p a {
            font-size: 1.2rem;
            color: #169CF7; }
          .news_section .items .item p a:hover {
            text-decoration: none; }
        .news_section .items .item .image {
          width: auto; }
        .news_section .items .item .title {
          margin-bottom: 0;
          width: auto;
          margin-left: 0;
          margin-top: 0;
          text-align: center; }
        .news_section .items .item .info {
          margin-left: 0;
          text-align: center; }
      .news_section .items .item2 .news_box .card-img-top,
      .news_section .items .item3 .news_box .card-img-top {
        border-top-left-radius: calc(0.25rem - 1px);
        border-top-right-radius: calc(0.25rem - 1px);
        border-bottom-left-radius: 0; }
      .news_section .items .item2 .news_box img,
      .news_section .items .item3 .news_box img {
        width: 100%;
        display: block; }
      .news_section .items .item2 .news_box .card-body,
      .news_section .items .item3 .news_box .card-body {
        width: 100%;
        position: relative;
        float: none;
        display: block;
        right: auto;
        padding: 2rem; }
      .news_section .items .item2 .news_box .card-title,
      .news_section .items .item3 .news_box .card-title {
        font-size: 1.3rem;
        margin-bottom: 0.75rem; }
      .news_section .items .item2 .news_box .card-text,
      .news_section .items .item3 .news_box .card-text {
        display: block;
        font-size: 16px;
        margin-bottom: 1rem; }
      .news_section .items .item2 .news_box .card-date,
      .news_section .items .item3 .news_box .card-date {
        display: block;
        font-size: 14px;
        margin-bottom: 1rem; }
  .half_section {
    margin: 0;
    padding: 0;
    background: #F7F7F7;
    position: relative;
    max-height: 420px;
    overflow: hidden;
    min-height: 340px; }
    .half_section .description {
      padding-left: calc(10% - 35px);
      padding-right: 40px;
      padding-top: 0;
      padding-bottom: 0;
      vertical-align: middle;
      height: min-content;
      background: #f7f7f7;
      position: absolute;
      top: 50%;
      transform: translateY(-50%); }
      .half_section .description .title {
        font-size: 38px; }
      .half_section .description .text {
        font-size: 16px;
        color: #666666;
        margin-bottom: 35px; }
    .half_section .image {
      padding: 0;
      position: absolute;
      top: 50%;
      right: 0;
      transform: translateY(-50%); }
      .half_section .image img {
        width: 100%;
        margin-bottom: 0; }
  #home_banner .carousel-control-prev {
    left: 50px; }
  #home_banner .carousel-control-next {
    right: 50px; }
  #home_banner .carousel-item {
    position: relative; }
    #home_banner .carousel-item .item {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      width: 80%;
      max-width: 800px;
      z-index: 2; }
      #home_banner .carousel-item .item h1 {
        text-align: center !important;
        font-size: 50px; }
      #home_banner .carousel-item .item h2 {
        text-align: center !important; }
      #home_banner .carousel-item .item h3 {
        text-align: center !important; }
      #home_banner .carousel-item .item p {
        text-align: center !important;
        font-size: 20px; }
  #home_banner .black_wash {
    height: 100%;
    background-color: black;
    width: 100%;
    margin-top: 0px;
    opacity: 0.25;
    z-index: 1; }
  .ap_section {
    min-height: 660px;
    background: linear-gradient(#F7F7F7, #FFFFFF); }
    .ap_section .wrap_product {
      max-width: 1050px;
      position: relative;
      width: 100%;
      height: 100%;
      height: 660px;
      margin: 0 auto;
      padding-top: 0;
      padding-bottom: 0; }
    .ap_section .image img {
      max-width: 80%;
      max-height: 420px;
      width: auto; }
    .ap_section .description {
      background: transparent; }
    .ap_section .description .title {
      font-size: 50px;
      margin-bottom: 20px; }
    .ap_section .description .text {
      font-size: 20px;
      color: #8D8D8D;
      margin-bottom: 35px; }
    .ap_section .btn-primary {
      padding: 15px 30px;
      font-size: 18px;
      line-height: 24px; }
  .ap_section_2 .description {
    padding-left: calc(10% - 35px);
    padding-right: 40px;
    padding-top: 0;
    padding-bottom: 0;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%); }
  .ap_section_2 .image {
    padding: 0;
    vertical-align: middle;
    height: min-content;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: unset; }
  .wtb_home_section {
    background: #169CF7;
    color: #fff;
    min-height: 660px; }
    .wtb_home_section .wrap_wtb {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      max-width: 920px;
      width: 100%;
      height: 100%;
      height: auto;
      margin: 0 auto;
      padding-top: 0;
      padding-bottom: 0; }
    .wtb_home_section .description .title {
      font-size: 50px;
      color: #fff;
      margin-bottom: 15px; }
    .wtb_home_section .description .text {
      font-size: 20px;
      color: #fff; }
    .wtb_home_section .wtb_section_gray {
      background: transparent;
      margin-left: -15px;
      margin-right: -15px; }
    .wtb_home_section .map_finder {
      background: transparent;
      padding-top: 0;
      padding-bottom: 0;
      padding-left: 60px;
      padding-right: 60px;
      margin-bottom: 0;
      margin-left: -15px;
      margin-right: -15px; }
      .wtb_home_section .map_finder .search_box {
        position: relative;
        display: flex;
        max-width: 445px;
        margin: 0 auto;
        margin-bottom: 10px;
        margin-top: 15px; }
        .wtb_home_section .map_finder .search_box img {
          position: absolute;
          right: 20px;
          top: 15px;
          cursor: pointer; }
        .wtb_home_section .map_finder .search_box input {
          padding-left: 30px;
          font-family: futura-pt, futura, 'Open Sans', "Trebuchet MS", Arial, sans-serif;
          font-style: normal;
          font-weight: 500;
          border: none;
          border-radius: 0;
          padding: 25px 0.75rem;
          color: #333; }
        .wtb_home_section .map_finder .search_box .easy-autocomplete {
          border: none;
          background: #fff; }
        .wtb_home_section .map_finder .search_box .easy-autocomplete-container {
          left: 0;
          width: 100%; }
        .wtb_home_section .map_finder .search_box .easy-autocomplete-container ul {
          border: 0px solid #D1D2D4;
          color: #333; }
      .wtb_home_section .map_finder .use_current_location {
        color: #FFF;
        font-size: 16px;
        cursor: pointer;
        display: inline-block;
        text-decoration: underline; }
        .wtb_home_section .map_finder .use_current_location img {
          margin-top: 15px;
          margin-right: 5px; }
  .promo_section {
    background: #FFF; } }

@media (min-width: 991px) {
  #hot_water h3 {
    max-width: 100%; }
  #home_offers .carousel-inner .offer .offer_text,
  #video_carousel .carousel-inner .offer .offer_text,
  #home_banner .carousel-inner .offer .offer_text {
    max-width: 325px; }
  #home_plumbers .plumbers_image {
    width: 325px;
    margin-bottom: -30px; }
  #home_plumbers .background {
    bottom: 0;
    height: 100%; } }

/* max-width media queries ************************************************** */
@media (min-width: 576px) and (max-width: 767px) {
  #home_banner .carousel-inner .offer .offer_text {
    left: 50%;
    transform: translateX(-50%);
    bottom: unset;
    position: absolute;
    margin-left: 0;
    min-width: 90%; }
  #home_banner .carousel-inner .offer .offer_save_image img {
    margin-top: 30px; } }

@media (max-width: 575px) {
  #home_products img {
    max-width: 250px; }
  .btn-offer-link {
    display: none; }
  #video_carousel .offer_text {
    margin-top: 50px !important; }
  #video_carousel .carousel-inner .pv_description {
    display: none; }
  #video_carousel .offer_text {
    margin-top: 100px !important; } }

/* ************************************************** */
/* products */
.easy-autocomplete-container .eac-item {
  text-align: left !important; }

.easy-autocomplete {
  width: 100% !important; }

.products_search {
  z-index: 20 !important; }

.search_section {
  position: relative;
  padding: 20px 0; }
  .search_section input {
    padding-left: 30px; }
  .search_section .ri-search {
    position: absolute;
    top: 12px;
    left: 26px; }
  .search_section .search_description {
    margin-top: 10px; }
    .search_section .search_description p {
      margin-bottom: 0;
      margin-left: 5px; }

.products_search_filter .search_description {
  width: 100%;
  text-align: center; }

.products_back_container a.back {
  padding: 15px 0; }

.product_section {
  padding: 20px 0; }
  .product_section .model p {
    font-size: 18px;
    font-weight: 600; }
  .product_section .btn-primary {
    background: #169CF7;
    color: white;
    border: 2px solid #169CF7;
    margin-top: 15px; }
  .product_section .btn-primary:hover {
    background-color: #066fb6;
    color: white;
    border: 2px solid #066fb6; }
  .product_section .picture {
    position: relative; }
    .product_section .picture img {
      max-width: 100%; }
  .product_section .product_badge {
    right: 0px !important;
    font-size: 10px !important;
    white-space: inherit;
    float: right;
    position: absolute;
    margin-right: 30px;
    background-color: #169CF7;
    color: #fff;
    border-radius: 29px;
    width: 58px;
    height: 58px;
    margin-bottom: 0;
    padding-top: 10px;
    text-align: center;
    font-weight: normal;
    line-height: 18px; }
    .product_section .product_badge .number {
      font-size: 30px;
      margin-bottom: 0; }
    .product_section .product_badge .text {
      margin-top: 4px;
      line-height: 10px; }
    .product_section .product_badge p {
      font-size: 10px; }
  .product_section .description {
    margin-top: 15px; }
    .product_section .description a {
      color: #169CF7;
      text-decoration: underline; }
  .product_section .button {
    margin-top: 35px; }

.category_page_title {
  margin-bottom: 25px; }

.subcategory_page_title {
  color: #169CF7; }

.product_categories .category_item {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 30px; }

.product_categories .category_image {
  width: 65px; }

.product_categories .category_description {
  position: absolute;
  margin-left: 80px;
  top: 50%;
  transform: translateY(-50%); }
  .product_categories .category_description a {
    color: #333; }
  .product_categories .category_description a:hover {
    color: #169CF7;
    text-decoration: none; }
  .product_categories .category_description p {
    display: block;
    margin-bottom: 0;
    line-height: 14px;
    font-size: 14px;
    color: #555; }

.document {
  display: flex;
  flex-direction: row;
  align-items: center; }
  .document img {
    margin-right: 20px; }
  .document a {
    text-transform: uppercase;
    font-size: 15px;
    display: flex;
    align-items: center; }

.features_section {
  padding: 30px;
  background-color: #FFFFFF; }
  .features_section .features_box {
    background: white; }
    .features_section .features_box .icon {
      flex: 1; }
      .features_section .features_box .icon img {
        max-width: 92px;
        max-height: 92px; }
    .features_section .features_box .description {
      flex: 2; }
      .features_section .features_box .description > div,
      .features_section .features_box .description > p {
        color: #8D8D8D; }
      .features_section .features_box .description > p {
        margin-bottom: 8px; }
    .features_section .features_box h5, .features_section .features_box b, .features_section .features_box strong {
      color: #333333; }
  .features_section .features_list {
    list-style-position: inside;
    -moz-column-count: 2;
    -moz-column-gap: 20px;
    -moz-column-fill: auto;
    -webkit-column-count: 2;
    -webkit-column-gap: 20px;
    -webkit-column-fill: auto;
    column-count: 2;
    column-gap: 20px;
    column-fill: auto;
    padding: 0;
    margin-top: 40px;
    margin-bottom: 30px; }
    .features_section .features_list li {
      font-size: 16px;
      color: #169CF7;
      margin-bottom: 8px; }
      .features_section .features_list li span {
        color: #666666; }
  .features_section h4 {
    font-size: 20px;
    margin-bottom: 30px; }
  .features_section .title {
    margin-bottom: 20px; }
  .features_section .capacity {
    text-align: center; }
  .features_section .people {
    text-align: center; }
  .features_section .warranty {
    text-align: center; }
  .features_section .energy-rating {
    text-align: center; }
  .features_section .ri-droplets {
    margin-top: 10px; }
  .features_section .ri-peeps {
    margin-top: 10px; }
  .features_section .value {
    font-size: 23px;
    border: 2px solid #ced4da;
    border-radius: 5px; }

.collapse_section .features ul {
  margin-left: -20px; }

.collapse_section .features li {
  color: #333; }

.collapse_section .owners a {
  color: #169CF7;
  cursor: pointer; }

.collapse_section .owners a:hover {
  color: #169CF7;
  text-decoration: underline; }

.collapse_section .request_a_quote p {
  margin-bottom: 1rem; }

.collapse_section .where_to_buy p {
  margin-bottom: 1rem; }

.collapse_section .specification {
  padding: 0px;
  max-width: 500px; }
  .collapse_section .specification .specification_image {
    padding: 10px;
    width: 100%; }
    .collapse_section .specification .specification_image img {
      width: auto;
      max-height: 385px; }

.collapse_section .brochure {
  max-width: 500px; }
  .collapse_section .brochure p {
    margin: 10px; }
  .collapse_section .brochure .brochure_title {
    font-weight: bold; }
  .collapse_section .brochure .brochure_description {
    color: #999;
    font-weight: bold; }

.collapse_section .link {
  color: #169CF7;
  text-decoration: underline;
  cursor: pointer; }

.collapse_section .link:hover {
  opacity: 0.8;
  text-decoration: underline; }

.collapse_section .link:active {
  color: #066fb6;
  opacity: 1;
  text-decoration: underline; }

.collapse_section .pdf_link {
  padding-bottom: 20px; }

.result_number {
  text-align: left;
  padding-top: 20px;
  padding-bottom: 20px;
  border-top: 2px solid rgba(0, 0, 0, 0.125);
  border-bottom: 2px solid rgba(0, 0, 0, 0.125);
  margin-bottom: 64px; }
  .result_number .container h5 {
    margin-bottom: 0;
    line-height: 40px; }

.filter_section .card {
  border: 0px;
  border-top: 1px solid #A7A9AC;
  margin-bottom: 0; }
  .filter_section .card #heading-0 a {
    float: right;
    margin-top: 3px;
    font-weight: 500; }
  .filter_section .card .card-header {
    padding: 20px 5px; }
    .filter_section .card .card-header .collapse_button {
      font-size: 24px; }
    .filter_section .card .card-header h5 {
      font-size: 30px;
      color: #333; }
      .filter_section .card .card-header h5 .clear_filters {
        font-size: 16px;
        color: #169CF7;
        text-decoration: none; }
  .filter_section .card .card-body {
    padding: 10px 10px 20px 10px; }
    .filter_section .card .card-body .form-check {
      margin-bottom: 10px;
      padding-left: 0; }
      .filter_section .card .card-body .form-check .form-check-label {
        font-size: 14px;
        font-weight: 500;
        color: #8D8D8D;
        cursor: pointer; }
        .filter_section .card .card-body .form-check .form-check-label .icheckbox_minimal-red {
          margin-right: 10px;
          margin-bottom: 4px; }
        .filter_section .card .card-body .form-check .form-check-label a.selected {
          text-decoration: underline;
          font-weight: bold; }

.filter_section .card-header {
  padding: .75rem 1.25rem; }

.load_more_button {
  margin-left: 50%;
  transform: translateX(-50%);
  margin-top: 10px;
  margin-bottom: 20px; }

.btn-view-group {
  display: inline-table;
  float: right; }
  .btn-view-group .btn-switch-view {
    border: 2px solid #D8D8D8;
    border-radius: 0;
    height: 40px; }
    .btn-view-group .btn-switch-view.btn-grid-view {
      border-right: 0; }
    .btn-view-group .btn-switch-view.btn-list-view {
      border-left: 0; }
    .btn-view-group .btn-switch-view.active {
      background: #169CF7;
      border: none;
      color: #fff; }
    .btn-view-group .btn-switch-view:focus {
      box-shadow: none; }

.products {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 45px; }
  .products.items-grid-view .item-list-view {
    display: none !important; }
  .products.items-list-view .item-grid-view {
    display: none !important; }
  .products .no-result {
    text-align: center;
    margin-top: 25px; }
  .products > .row .box_product {
    float: left;
    margin-bottom: 20px; }
  .products .box_product .product_details {
    margin-bottom: 20px;
    overflow: hidden; }
  .products .box_product .short_description {
    overflow: hidden;
    margin-bottom: 0; }
    .products .box_product .short_description ul {
      list-style: none;
      margin-top: 15px;
      margin-bottom: 15px; }
      .products .box_product .short_description ul li::before {
        content: "\2022";
        color: #169CF7;
        font-weight: bold;
        display: inline-block;
        width: 1em;
        margin-left: -24px;
        margin-right: 15px; }
      .products .box_product .short_description ul li {
        font-size: 16px;
        color: #8D8D8D;
        margin-bottom: 20px;
        font-weight: 500; }
  .products .box_product .box_product_model {
    max-height: 48px;
    overflow: hidden; }
  .products .box_product .product_icons {
    text-align: center; }
    .products .box_product .product_icons .product-icon {
      padding: 0; }
      .products .box_product .product_icons .product-icon p {
        font-size: 14px;
        color: #666666;
        padding: 12px;
        line-height: 16px; }
  .products .box_product .learn_more {
    text-align: center;
    margin-top: 20px; }
  .products .box_product .box_content .border_top {
    border-top: 2px solid rgba(0, 0, 0, 0.125);
    width: -webkit-fill-available;
    margin-bottom: 30px;
    margin-right: -15px;
    margin-left: -15px; }
  .products .products_pagination {
    clear: both;
    width: 100%; }
    .products .products_pagination .pagination {
      float: right; }
      .products .products_pagination .pagination .page-item .page-link {
        box-sizing: border-box;
        height: 48px;
        width: 48px;
        border: 1px solid #D8D8D8;
        background-color: #FFFFFF;
        margin: 8px;
        text-align: center;
        line-height: 30px;
        color: #333333;
        font-size: 18px;
        font-weight: 500; }
        .products .products_pagination .pagination .page-item .page-link.active {
          background-color: #169CF7;
          border: none;
          color: #fff; }
      .products .products_pagination .pagination .page-item:first-child .page-link {
        border: none;
        border-radius: 0;
        padding-right: 0; }
      .products .products_pagination .pagination .page-item:last-child .page-link {
        border: none;
        border-radius: 0;
        padding-left: 0; }

.product_categories_result .category_items {
  margin-top: 35px !important; }

.box_product .card-body {
  height: auto;
  overflow: hidden;
  margin-right: 0;
  margin-left: 0;
  padding: 0 0 60px 0; }
  .box_product .card-body ul {
    line-height: 18px; }
  .box_product .card-body .image {
    position: relative;
    height: 300px;
    overflow: hidden;
    width: 100%;
    padding: 0;
    margin-bottom: 30px; }
  .box_product .card-body img {
    position: absolute;
    margin-left: 50%;
    transform: translateX(-50%);
    max-width: 100%;
    bottom: 0; }
  .box_product .card-body p {
    margin-bottom: 0rem;
    font-size: 1rem;
    color: #666666; }
  .box_product .card-body .product-icon img {
    margin-left: 0;
    transform: unset; }

#compare_tool {
  position: fixed;
  bottom: 0;
  z-index: 50;
  width: 100%;
  height: 50px;
  display: none;
  background-color: #169CF7;
  color: #fff;
  font-weight: bold;
  line-height: 40px;
  padding-left: 15px;
  padding-top: 5px; }
  #compare_tool.error {
    background-color: #169CF7; }
  #compare_tool a {
    float: right;
    margin-right: 25px;
    margin-top: 2px; }
  #compare_tool .compare_products {
    position: absolute;
    display: none;
    margin-left: 295px;
    margin-top: -45px; }
  #compare_tool .compare_product {
    position: relative;
    display: inline-block;
    background: white;
    color: #169CF7;
    padding-left: 10px;
    padding-right: 10px;
    padding-top: 5px;
    border-radius: 6px;
    height: 50px;
    margin-left: 10px; }
    #compare_tool .compare_product img {
      height: 35px;
      margin-top: -4px; }
    #compare_tool .compare_product .compare_uncheck {
      cursor: pointer;
      top: -3px;
      position: relative;
      padding-right: 18px; }
      #compare_tool .compare_product .compare_uncheck img {
        height: 12px;
        margin-top: 3px;
        margin-left: 5px;
        margin-right: -15px; }

.related_products_links a {
  color: #169CF7;
  text-transform: uppercase; }
  .related_products_links a i {
    margin-bottom: -2px;
    margin-left: 3px; }

.related_products_links a:hover {
  color: #066fb6; }

.related_products_links a:active {
  color: #066fb6; }

.compare_title_section {
  background: #f7f7f7;
  padding: 0; }
  .compare_title_section h2 {
    padding: 0;
    margin: 0;
    height: 72px;
    line-height: 72px; }

.compare_section {
  max-width: 800px;
  margin-bottom: 25px; }
  .compare_section .compare_tables {
    overflow-x: hidden;
    margin-top: 5px; }
    .compare_section .compare_tables .compare_table {
      padding: 0;
      background-color: #f7f7f7; }
      .compare_section .compare_tables .compare_table table {
        margin-bottom: 0; }
        .compare_section .compare_tables .compare_table table .features {
          margin-bottom: 0;
          padding-bottom: 0; }
        .compare_section .compare_tables .compare_table table p {
          font-size: 1rem !important; }
      .compare_section .compare_tables .compare_table .table-striped tbody tr:nth-of-type(even) {
        background-color: #f7f7f7; }
      .compare_section .compare_tables .compare_table .table-striped tbody tr:nth-of-type(odd) {
        background-color: #fff; }
    .compare_section .compare_tables .compare_table_0,
    .compare_section .compare_tables .compare_table_1 {
      margin-right: -1px; }
  .compare_section .compare_title {
    font-size: 12px;
    margin-bottom: 0px;
    margin-top: -6px;
    color: transparent; }
  .compare_section .product_title {
    padding-top: 0px;
    padding-bottom: 0px;
    background-color: #fff !important;
    color: #000; }
    .compare_section .product_title h6 {
      min-height: 60px;
      max-height: 58px;
      word-wrap: break-word;
      overflow: hidden; }
    .compare_section .product_title a {
      color: #000; }
  .compare_section .table_compare_0 .compare_title {
    color: #808080; }
  .compare_section .compare_images {
    background: #fff !important; }
    .compare_section .compare_images td {
      border-top: 0px;
      padding-bottom: 0px;
      padding-left: 0px;
      padding-right: 0px; }
  .compare_section .star_ico {
    width: 12px;
    margin-left: 0px;
    margin-right: -4px; }
  .compare_section .compare_image {
    position: relative;
    width: 100%;
    max-width: 90px;
    min-width: 90px;
    height: 90px;
    border: solid 1px rgba(0, 0, 0, 0.125);
    margin-left: 50%;
    transform: translateX(-50%);
    overflow: hidden; }
    .compare_section .compare_image .image {
      position: absolute;
      height: 80px;
      margin-left: 50%;
      margin-top: 50%;
      transform: translate(-50%, -50%); }
    .compare_section .compare_image .rheem_close {
      position: absolute;
      float: right;
      margin-top: 2px;
      margin-left: 64px;
      padding: 5px;
      width: 25px;
      cursor: pointer; }
  .compare_section h6 {
    text-align: center;
    margin-top: 5px; }
  .compare_section td {
    font-size: 15px;
    height: 59px;
    border-top: 0px; }
  .compare_section .border_top {
    border-top: 1px solid rgba(0, 0, 0, 0.25); }
  .compare_section .compare_table_names {
    display: none; }
    .compare_section .compare_table_names tr {
      border-right: 1px solid rgba(0, 0, 0, 0.25); }
    .compare_section .compare_table_names .compare_images {
      height: 199px; }
    .compare_section .compare_table_names td {
      vertical-align: middle;
      color: #808080; }
  .compare_section .compare_table_names tr:first-child,
  .compare_section .compare_table_names tr:nth-child(2) {
    border-right: 0px; }

.sticky_text {
  padding: 0.5ex;
  margin: 0 auto; }

.sticky_text.stick {
  margin-top: 95px !important;
  margin: 0 auto;
  position: fixed;
  top: 0;
  z-index: 10000;
  background: #fff;
  margin-left: -12px; }

.sticky_image {
  padding: 0.5ex;
  margin: 0 auto; }

.sticky_image.stick {
  margin-top: 0 !important;
  margin: 0 auto;
  position: fixed;
  top: 0;
  z-index: 10000;
  background: #fff; }

.calculator_result {
  margin-top: 25px; }

@media (min-width: 767px) {
  .animate-in-up.fade-in-up {
    -webkit-transition: all 2s ease;
    -o-transition: all 2s ease;
    transition: all 2s ease;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    opacity: 1; }
  .animated {
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    -o-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: both;
    -moz-animation-fill-mode: both;
    -ms-animation-fill-mode: both;
    -o-animation-fill-mode: both;
    animation-fill-mode: both; }
  .animate-in-up {
    -webkit-transform: translate(-50%, -40%);
    -moz-transform: translate(-50%, -40%);
    -ms-transform: translate(-50%, -40%);
    -o-transform: translate(-50%, -40%);
    transform: translate(-50%, -40%);
    opacity: 0; }
  .box_product:first-child {
    margin-top: 0px; }
  .category_header_background_image {
    width: 100%; }
  .category_header_section {
    position: relative;
    width: 100%;
    min-height: 1px;
    padding: 0; }
    .category_header_section h4 {
      font-size: 2rem; }
    .category_header_section .over_image p {
      max-width: 600px;
      margin-left: 50%;
      transform: translateX(-50%);
      font-size: 18px; }
  .products_back_container {
    display: none; }
  .search_section {
    position: relative;
    padding: 20px 0;
    text-align: center; }
    .search_section .search_input_box {
      margin-left: 50%;
      transform: translateX(-50%);
      width: 80%;
      margin-top: 28px; }
    .search_section input {
      padding: 10px;
      padding-left: 45px;
      width: 100%; }
    .search_section .ri-search {
      top: 12px;
      left: 18px; }
    .search_section .search_description {
      position: absolute;
      left: 50%;
      transform: translateX(-50%);
      top: -10px; }
  .products_search_filter {
    padding: 1px 0; }
    .products_search_filter .search_input_box {
      width: 100%;
      margin-top: 28px; }
    .products_search_filter .search_description {
      position: absolute;
      left: 50%;
      transform: translateX(-50%);
      top: -14px;
      width: 100%; }
  .product_section {
    padding: 80px 0 0 0; }
    .product_section .product_box h1 {
      font-size: 40px; }
    .product_section .product_box img {
      max-width: 100%; }
    .product_section .product_box .button {
      padding-top: 35px;
      padding-bottom: 20px; }
    .product_section .product_box .model {
      margin-top: 20px;
      margin-bottom: 20px; }
    .product_section .product_box .description {
      font-size: 16px;
      color: #8D8D8D; }
    .product_section .product_box .after {
      font-size: 14px;
      color: #B5B5B5; }
    .product_section .model p {
      font-size: 18px; }
    .product_section .picture {
      top: -80px; }
  .product_categories .category_items {
    width: 70%;
    margin-left: 50%;
    transform: translateX(-50%);
    margin-top: 20px; }
  .product_categories .category_item {
    margin-bottom: 45px; }
  .product_categories .category_description h4 {
    margin-bottom: 0; }
  .product_categories .category_description p {
    display: block;
    margin-bottom: 0;
    line-height: 14px;
    font-size: 14px;
    color: #555; }
  .warranty_section {
    padding: 20px 0;
    padding-top: 65px;
    padding-bottom: 65px;
    background-color: #FFFFFF; }
    .warranty_section h4 {
      font-size: 30px;
      margin-bottom: 30px; }
    .warranty_section .warranty {
      margin-bottom: 20px; }
      .warranty_section .warranty h5 {
        font-size: 16px;
        color: #333;
        margin-bottom: 20px; }
      .warranty_section .warranty .warranty_list li {
        font-size: 16px;
        color: #169CF7;
        margin-bottom: 8px; }
        .warranty_section .warranty .warranty_list li span {
          color: #666666; }
    .warranty_section .warranty_text {
      font-size: 16px;
      color: #8D8D8D; }
      .warranty_section .warranty_text p {
        font-size: 16px;
        color: #8D8D8D; }
    .warranty_section .doc_specifications,
    .warranty_section .doc_guides {
      margin-top: 30px; }
  .specifications_section {
    padding: 20px 0;
    padding-top: 65px;
    padding-bottom: 65px;
    background-color: #FFFFFF; }
    .specifications_section h4 {
      font-size: 30px;
      margin-bottom: 30px; }
    .specifications_section table {
      width: 100%;
      margin-bottom: 1rem;
      color: #212529;
      border-collapse: collapse; }
      .specifications_section table th,
      .specifications_section table td {
        padding: 0.75rem;
        vertical-align: top;
        border-bottom: 2px solid white;
        border-right: 2px solid white;
        border-left: 2px solid white;
        background: #F7F7F7;
        font-size: 16px;
        padding-left: 25px;
        padding-right: 25px;
        padding-top: 12px;
        padding-bottom: 12px; }
        .specifications_section table th p,
        .specifications_section table td p {
          margin-bottom: 0; }
      .specifications_section table th {
        vertical-align: bottom;
        border-top: 2px solid #f7f7f7;
        background: #169CF7;
        color: white;
        font-size: 18px;
        font-weight: unset; }
        .specifications_section table th * {
          font-size: 18px; }
    .specifications_section .document {
      margin-top: 45px; }
  .features_section {
    padding: 20px 0;
    padding-top: 65px;
    padding-bottom: 65px;
    background-color: #FFFFFF; }
    .features_section .title {
      margin-bottom: 20px; }
    .features_section .inside_box {
      text-align: left;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      margin: 0 auto 50px auto; }
    .features_section .energy-rating {
      text-align: left;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
    .features_section h5 {
      font-size: 16px; }
    .features_section h4 {
      font-size: 30px;
      margin-bottom: 30px; }
    .features_section .features_box .col-4 {
      text-align: left; }
    .features_section .value {
      text-align: center; }
    .features_section .icon,
    .features_section .description {
      padding-right: 0;
      padding-left: 0; }
    .features_section .icon {
      margin-right: 30px; }
    .features_section .value {
      font-size: 16px;
      padding: 5px;
      padding-left: 10px;
      padding-right: 10px;
      text-align: center;
      width: 104px;
      border: 2px solid #D8D8D8; }
  .collapse_section .card {
    width: 80%;
    margin-left: 50%;
    transform: translateX(-50%);
    z-index: 0; }
  .collapse_section .card-header {
    padding: 0.75rem 1.25rem; }
  .collapse_section .box_product .card {
    width: 100%; }
  .compare_section .product_title {
    height: 40px; }
    .compare_section .product_title h6 {
      min-height: 38px; }
  .compare_section .compare_table_names {
    display: block;
    margin-top: -1px; }
  .compare_section .compare_title {
    display: none; }
  .compare_section .compare_table_1 tr,
  .compare_section .compare_table_2 tr {
    border-left: 1px solid rgba(0, 0, 0, 0.25); }
  .compare_section .compare_table_1 tr:first-child,
  .compare_section .compare_table_1 tr:nth-child(2),
  .compare_section .compare_table_2 tr:first-child,
  .compare_section .compare_table_2 tr:nth-child(2) {
    border-left: 0px; }
  .compare_section td {
    vertical-align: middle; }
  .compare_section .compare_image {
    max-width: 180px;
    height: 180px;
    border-radius: 8px; }
    .compare_section .compare_image .image {
      height: 150px; }
  .compare_section .table_compare_names .compare_image {
    max-width: 180px;
    height: 180px;
    border-radius: 8px;
    border-color: #fff; }
    .compare_section .table_compare_names .compare_image .image {
      height: 150px; }
  .compare_section .sticky_text.stick {
    margin-top: 330px !important;
    min-height: 40px; }
  .compare_section .sticky_image.stick {
    margin-top: 145px !important; }
  .products > .row {
    width: 100%; }
    .products > .row .box_product {
      float: left; }
  .compare_title_section {
    background: #fff;
    padding: 0; }
    .compare_title_section h2 {
      padding: 0;
      margin: 0;
      height: 72px;
      line-height: 72px; }
  #compare_tool {
    position: fixed;
    bottom: 0;
    z-index: 50;
    width: 100%;
    height: 70px;
    display: none;
    background-color: #169CF7;
    color: #fff;
    font-weight: bold;
    line-height: 40px;
    padding-left: 15px;
    padding-top: 15px; }
    #compare_tool.error {
      background-color: #169CF7; }
    #compare_tool a {
      float: right;
      margin-right: 25px;
      margin-top: -3px; }
    #compare_tool .compare_products {
      position: absolute;
      display: block !important;
      margin-left: 295px;
      margin-top: -45px; }
    #compare_tool .compare_product {
      position: relative;
      display: inline-block;
      background: white;
      color: #169CF7;
      padding-left: 10px;
      padding-right: 10px;
      padding-top: 5px;
      border-radius: 6px;
      height: 50px;
      margin-left: 10px; }
      #compare_tool .compare_product img {
        height: 35px;
        margin-top: -4px; }
      #compare_tool .compare_product .compare_uncheck {
        cursor: pointer;
        top: -3px;
        position: relative;
        padding-right: 18px; }
        #compare_tool .compare_product .compare_uncheck img {
          height: 12px;
          margin-top: 3px;
          margin-left: 5px;
          margin-right: -15px; } }

@media (max-width: 400px) {
  .compare_section .product_title {
    height: 100px; } }

@media (max-width: 1090px) {
  .product_categories .category_description p {
    display: none; } }

.box_accessories .card-footer .box_product_model {
  border-right: 0px solid rgba(0, 0, 0, 0.125) !important; }

.products_description {
  padding-top: 100px;
  padding-bottom: 100px;
  color: #8D8D8D;
  font-size: 16px;
  text-align: center; }

.products_description {
  padding-top: 60px;
  padding-bottom: 60px;
  color: #8D8D8D;
  font-size: 16px;
  text-align: center; }
  .products_description h1 {
    color: black;
    margin-bottom: 25px; }

@media (min-width: 767px) {
  .products_description {
    padding-top: 100px;
    padding-bottom: 100px;
    color: #8D8D8D;
    font-size: 16px;
    text-align: center; }
    .products_description h1 {
      color: black;
      margin-bottom: 25px; } }

.blue_block {
  background: #169CF7;
  color: white;
  padding-top: 60px;
  padding-bottom: 60px; }
  .blue_block .header_container {
    margin: 0 auto; }
  .blue_block h2 {
    font-size: 34px;
    width: 80%;
    margin: 0 auto; }
  .blue_block img {
    margin-top: 45px;
    margin-bottom: 25px;
    max-width: 100%; }
  .blue_block h3 {
    font-size: 24px;
    width: 65%;
    margin: 0 auto;
    padding-bottom: 25px; }
  .blue_block p {
    width: 65%;
    margin: 0 auto; }

.blue_block_2 {
  padding-top: 20px;
  padding-bottom: 50px; }
  .blue_block_2 img {
    margin-top: 30px;
    max-width: 90px; }
  .blue_block_2 h3 {
    padding-bottom: 15px; }

.white_block {
  padding-top: 80px;
  padding-bottom: 80px; }
  .white_block h2 {
    font-size: 34px;
    width: 80%;
    margin: 0 auto;
    margin-bottom: 20px; }
  .white_block .btn-primary {
    margin-top: 25px;
    margin-left: 10px;
    margin-right: 10px; }

@media (min-width: 767px) {
  .blue_block {
    background: #169CF7;
    color: white;
    padding-top: 100px;
    padding-bottom: 100px; }
    .blue_block h2 {
      font-size: 40px; }
    .blue_block h3 {
      font-size: 24px;
      width: 80%; }
    .blue_block p {
      width: 80%; }
  .blue_block_2 {
    padding-top: 20px;
    padding-bottom: 50px; }
    .blue_block_2 img {
      margin-top: 30px; }
    .blue_block_2 h3 {
      padding-bottom: 15px; }
  .white_block {
    padding-top: 80px;
    padding-bottom: 80px; }
    .white_block h2 {
      font-size: 40px; } }

/* half section ************************************************** */
.product_t1_section {
  margin: 0;
  padding: 0;
  position: relative;
  max-height: unset;
  overflow: hidden;
  min-height: unset;
  margin-bottom: 60px;
  background: #f7f7f7;
  background: linear-gradient(#F7F7F7, #FFFFFF); }
  .product_t1_section .description {
    padding-left: 25px;
    padding-right: 25px;
    padding-top: 30px;
    padding-bottom: 40px;
    vertical-align: middle;
    height: min-content;
    color: #666; }
    .product_t1_section .description .title {
      font-size: 34px;
      text-align: left !important;
      color: #333;
      margin-bottom: 20px; }
    .product_t1_section .description .text {
      font-size: 16px;
      color: #8D8D8D;
      margin-bottom: 30px; }
      .product_t1_section .description .text h3 {
        font-size: 22px;
        color: #333; }
  .product_t1_section .image {
    padding: 0;
    position: relative; }
    .product_t1_section .image img {
      max-width: 80%;
      width: auto;
      height: auto;
      max-height: 300px;
      margin-bottom: 0;
      margin-top: 130px; }

.detail_1 {
  margin-top: 25px;
  background: #F7F7F7; }

.detail_2 {
  margin-bottom: 85px;
  background: #FFFFFF; }

.outside_product_detail .product_details .nav-tabs {
  border: 0; }

.outside_product_detail .product_details .nav-link {
  color: #8D8D8D;
  background-color: transparent;
  border: 0;
  text-align: center;
  text-transform: uppercase;
  font-size: 18px;
  padding-top: 15px;
  padding-bottom: 10px; }

.outside_product_detail .product_details .nav-link.active {
  border-bottom: solid 6px #169CF7;
  color: #169CF7; }

.page_products_list .products_description {
  padding-top: 50px;
  padding-bottom: 40px;
  color: #8D8D8D;
  font-size: 16px;
  text-align: center; }
  .page_products_list .products_description h2 {
    font-size: 40px;
    color: #333; }
  .page_products_list .products_description h3 {
    font-size: 18px;
    color: #333;
    margin-top: 25px;
    margin-bottom: 25px; }

.page_products_list .box_product .image {
  background: linear-gradient(#F7F7F7, #FFFFFF); }

.page_products_list .box_product .card {
  border: 0;
  border-radius: 0;
  height: auto; }

.page_products_list .box_product .btn-primary {
  width: 100%; }

@media (min-width: 767px) {
  .product_t1_section {
    margin: 0;
    padding: 0;
    position: relative;
    max-height: 800px;
    overflow: hidden;
    min-height: 380px;
    background: transparent; }
    .product_t1_section .row {
      padding-top: 80px;
      padding-bottom: 80px; }
    .product_t1_section .description {
      padding: 0 45px;
      vertical-align: middle;
      height: min-content; }
      .product_t1_section .description .title {
        font-size: 40px;
        margin-bottom: 30px; }
      .product_t1_section .description .text {
        font-size: 16px;
        color: #8D8D8D;
        margin-top: 20px;
        margin-bottom: 40px; }
        .product_t1_section .description .text h3 {
          color: #333333;
          font-size: 24px; }
    .product_t1_section .image {
      padding: 0; }
      .product_t1_section .image img {
        max-width: 100%;
        width: auto;
        margin-bottom: 0;
        margin-top: 0;
        height: auto;
        max-height: 100%; }
  .products_category_section .outside:nth-child(even) {
    background: linear-gradient(#F7F7F7, #FFFFFF); }
    .products_category_section .outside:nth-child(even) .product_t1_section .description {
      vertical-align: middle;
      height: min-content;
      text-align: left;
      color: #333;
      right: 0; }
      .products_category_section .outside:nth-child(even) .product_t1_section .description p {
        color: #666666; }
    .products_category_section .outside:nth-child(even) .product_t1_section .image {
      left: 0;
      display: flex;
      align-items: center; }
  .products_category_section .outside:nth-child(odd) {
    background: linear-gradient(#F7F7F7, #FFFFFF); }
    .products_category_section .outside:nth-child(odd) .product_t1_section .description {
      vertical-align: middle;
      height: min-content;
      text-align: left;
      color: #333;
      left: 0; }
    .products_category_section .outside:nth-child(odd) .product_t1_section .image {
      right: 0;
      order: 2;
      align-items: center;
      display: inline-flex; } }

#product_accordion {
  margin: 35px 25px 45px 25px; }
  #product_accordion .card {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    min-width: 0;
    word-wrap: break-word;
    background-color: #fff;
    background-clip: border-box;
    border: 2px solid rgba(0, 0, 0, 0.125);
    border-radius: 2px solid rgba(0, 0, 0, 0.125);
    margin-bottom: 35px; }
    #product_accordion .card .card-header {
      padding: 5px 1.25rem;
      margin-bottom: 0;
      background-color: white;
      border-bottom: 0; }
      #product_accordion .card .card-header .btn-link {
        position: relative;
        color: #333;
        text-decoration: none;
        padding-left: 0;
        padding-right: 0;
        font-size: 20px;
        width: 100%;
        text-align: left; }
        #product_accordion .card .card-header .btn-link img {
          position: absolute;
          right: 0;
          top: 50%;
          transform: translateY(-50%); }
      #product_accordion .card .card-header .btn-link:hover {
        color: #333;
        text-decoration: none; }
      #product_accordion .card .card-header .btn-link:focus,
      #product_accordion .card .card-header .btn-link.focus {
        text-decoration: none;
        box-shadow: none; }
    #product_accordion .card .card-body {
      background: #fff;
      padding: 20px; }
  #product_accordion .card:last-child {
    border-bottom: 2px solid rgba(0, 0, 0, 0.125); }
  #product_accordion .features_section {
    padding: 0;
    padding-bottom: 20px;
    padding-top: 25px; }
    #product_accordion .features_section .features_box {
      padding: 0 5px; }
      #product_accordion .features_section .features_box .col-6 {
        text-align: center; }
      #product_accordion .features_section .features_box .inside_box {
        margin-bottom: 58px; }
        #product_accordion .features_section .features_box .inside_box .icon {
          margin-bottom: 25px; }
        #product_accordion .features_section .features_box .inside_box .description {
          padding: 0; }
          #product_accordion .features_section .features_box .inside_box .description h5 {
            font-size: 14px;
            margin-left: -15px;
            margin-right: -15px; }
    #product_accordion .features_section .value {
      position: relative;
      font-size: 14px;
      line-height: 12px; }
      #product_accordion .features_section .value span {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%); }
    #product_accordion .features_section .features_list {
      column-count: 1;
      margin-left: 5px;
      margin-right: 5px; }
  #product_accordion .warranty_section h4 {
    font-size: 20px;
    margin-bottom: 30px; }
  #product_accordion .warranty_section .warranty {
    margin-bottom: 20px; }
    #product_accordion .warranty_section .warranty h5 {
      font-size: 16px;
      color: #333;
      margin-bottom: 20px; }
    #product_accordion .warranty_section .warranty .warranty_list {
      margin-left: -15px;
      margin-right: -15px; }
      #product_accordion .warranty_section .warranty .warranty_list li {
        font-size: 16px;
        color: #169CF7;
        margin-bottom: 8px; }
        #product_accordion .warranty_section .warranty .warranty_list li span {
          color: #666666; }
  #product_accordion .warranty_section .warranty_text {
    font-size: 14px;
    color: #808080; }
    #product_accordion .warranty_section .warranty_text p {
      font-size: 14px;
      color: #808080; }
  #product_accordion .warranty_section .doc_specifications,
  #product_accordion .warranty_section .doc_guides {
    margin-top: 30px; }
  #product_accordion .specifications_section {
    padding: 25px 0; }

.filter_mobile .refine_mob_button {
  border: 2px solid rgba(0, 0, 0, 0.125);
  padding: 12px 20px 10px 20px;
  margin-bottom: 20px;
  cursor: pointer; }

.filter_mobile .arrow-down::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 5px solid;
  border-right: 5px solid transparent;
  border-bottom: 0;
  border-left: 5px solid transparent;
  float: right;
  margin-top: 10px;
  color: #FF5800; }

.filter_mobile .arrow-up::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0;
  border-right: 5px solid transparent;
  border-bottom: 5px solid;
  border-left: 5px solid transparent;
  float: right;
  margin-top: 10px;
  color: #FF5800; }

.filter_mobile .card .clear_filters {
  float: unset;
  margin-top: 3px;
  text-align: center;
  width: 100%;
  font-weight: 400; }

.filter_mobile .card:first-child {
  border-top: 0; }
  .filter_mobile .card:first-child .card-header {
    padding-top: 0; }

.product_filter .filter_icon {
  margin-top: 6px; }

.specifications_section,
.doc_brochures,
.doc_specifications,
.doc_guides {
  width: 100%; }
  .specifications_section .document,
  .doc_brochures .document,
  .doc_specifications .document,
  .doc_guides .document {
    display: flex; }
    .specifications_section .document a,
    .doc_brochures .document a,
    .doc_specifications .document a,
    .doc_guides .document a {
      text-transform: none;
      font-size: medium; }

#accordion_mobile {
  width: 100% !important; }

@media (max-width: 768px) {
  .result_number {
    margin-bottom: 40px; }
  .product_section {
    padding: 0 15px; }
    .product_section .product_box img {
      max-height: 325px;
      margin-top: 85px;
      margin-bottom: 55px; }
    .product_section .product_box h1 {
      font-size: 34px; }
  .page_products_list .box_product .card-body {
    padding-bottom: 40px; }
    .page_products_list .box_product .card-body.disabled {
      cursor: not-allowed; }
    .page_products_list .box_product .card-body h4 {
      font-size: 22px; }
    .page_products_list .box_product .card-body .image {
      padding-top: 30px;
      height: 200px; }
      .page_products_list .box_product .card-body .image img {
        max-height: 100%;
        position: relative; }
  .page_products_list .box_product .btn-primary {
    padding: 15px 0; }
  #product_accordion .features_section {
    padding-top: 0; }
  .blue_block img {
    max-width: 150px; } }

.form-control:disabled,
.form-control[readonly] {
  background-color: #fff; }

/* for_plumbers */
/* Login */
#login-main-title {
  background-color: #f7f7f7;
  padding: 10px 0; }

#login-main-title h2 {
  margin-bottom: 0rem; }

form {
  margin-bottom: 0; }
  form .password label {
    min-height: 20px; }
    form .password label a {
      color: #169CF7;
      text-decoration: underline; }
  form .password input {
    margin-top: 2px; }

.sign-up-section {
  padding: 25px 0; }
  .sign-up-section h2 {
    font-size: 1.5em; }

/****************************************************************************/
.for_plumbers_background_image {
  width: 100%;
  max-height: 300px; }

.for_plumbers_form_section_success {
  display: none;
  margin-bottom: 80px; }
  .for_plumbers_form_section_success .success_subtitle {
    color: #777; }
  .for_plumbers_form_section_success .success_image {
    padding: 50px 0; }

.text_image {
  color: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-right: -50%;
  transform: translate(-50%, -50%); }

#for_plumbers_section {
  padding: 20px 0 25px 0; }

#for_plumbers_main_section {
  position: relative;
  width: 100%;
  min-height: 1px;
  max-height: 300px; }

.collapse_minus {
  color: #169CF7 !important; }

.for_pumblers_alerts .card-header {
  background-color: #f7f7f7;
  border-bottom: 0px solid rgba(0, 0, 0, 0.125); }

.for_pumblers_alerts .card-header a {
  color: black;
  text-decoration: none; }

.for_pumblers_alerts .card {
  background-color: #f7f7f7;
  border: 0px solid rgba(0, 0, 0, 0.125);
  border-radius: 0rem; }

.for_pumblers_alert_item {
  padding: 10px 0; }
  .for_pumblers_alert_item a {
    color: #169CF7;
    text-transform: uppercase; }
  .for_pumblers_alert_item a:hover {
    color: #169CF7;
    opacity: 0.8;
    text-transform: uppercase; }
  .for_pumblers_alert_item a:active {
    color: #066fb6;
    opacity: 1;
    text-transform: uppercase; }
  .for_pumblers_alert_item .ri-arrow-next {
    margin-bottom: -2px; }
  .for_pumblers_alert_item .pdf-item {
    text-decoration: underline; }

#find_installation_section {
  padding: 25px 0; }

#handbook_section {
  padding: 25px 0; }

#rewards_section {
  background-color: #b1e5e6;
  padding: 25px 0; }

#order_spares_section {
  background-color: #f7f7f7;
  padding: 25px 0; }

#plumber_training_section {
  padding: 25px 0; }

#relighting_videos_section {
  padding: 25px 0; }

.order_spares_image {
  padding: 10px 0px;
  width: 160px; }

.handbook_image {
  padding: 10px 0px; }

.relighting_videos_image {
  padding: 10px 0px;
  width: 160px; }

.handbook-main-title {
  background-color: #f7f7f7;
  padding: 10px 0; }

.handbook-main-title h2 {
  margin-bottom: 0rem; }

.handbook_text {
  padding: 25px 0; }
  .handbook_text li {
    margin-left: -20px; }

.handbook_copy {
  padding: 25px 0; }
  .handbook_copy a {
    color: #169CF7;
    text-decoration: underline; }
  .handbook_copy a:hover {
    color: #169CF7;
    opacity: 0.8;
    text-decoration: underline; }
  .handbook_copy a:active {
    color: #066fb6;
    opacity: 1;
    text-decoration: underline; }

.handbook_copy_image {
  padding-left: 0;
  text-align: center; }
  .handbook_copy_image img {
    max-width: 100%; }

.handbook_form {
  padding: 25px 0; }
  .handbook_form .form-info p {
    color: #808080;
    font-size: 1rem !important; }

form .g-recaptcha > div {
  margin: 0 auto; }

.page_gas_relighting_videos .videos_container {
  max-width: 800px; }
  .page_gas_relighting_videos .videos_container .title_section {
    margin-bottom: 10px; }
  .page_gas_relighting_videos .videos_container .select_video {
    margin-top: -10px; }
  .page_gas_relighting_videos .videos_container iframe {
    max-width: 100%;
    margin-left: 50%;
    transform: translateX(-50%); }

.or {
  position: absolute;
  margin-left: 50%;
  transform: translateX(-84%);
  margin-top: 50px; }

@media (min-width: 576px) {
  #for_plumbers_main_section .text_image {
    font-size: 50px; }
  #for_plumbers_section {
    padding: 48px 0 35px 0; }
    #for_plumbers_section p {
      padding-right: 10%;
      padding-left: 10%; }
  .for_pumblers_alerts .card-header {
    padding: 0.75rem 8.25rem; }
  .for_pumblers_alerts .card-body {
    padding-top: 0px; }
    .for_pumblers_alerts .card-body hr {
      margin-top: 10px;
      margin-bottom: 10px;
      margin-right: 115px;
      margin-left: 105px; }
  .for_pumblers_alert_item {
    padding: 10px 112px; }
  .page_for_plumbers_handbook {
    width: 80%;
    max-width: 800px;
    margin-left: 50%;
    transform: translateX(-50%); }
  #handbook_section {
    padding: 45px 0px; }
    #handbook_section .handbook_image_box {
      margin-left: 10%; }
      #handbook_section .handbook_image_box .handbook_image {
        max-width: 350px !important; }
    #handbook_section .handbook_description {
      margin-right: 16.666667%; }
  .handbook-main-title {
    background-color: transparent;
    padding: 10px 0;
    padding-bottom: 0px; }
  .handbook-main-title h2 {
    font-size: 2.75rem;
    margin-bottom: 0rem; }
  #rewards_section {
    padding: 45px 0px; }
  #order_spares_section {
    padding: 45px 0px; }
    #order_spares_section .order_spares_image_box {
      margin-right: 16.666667%; }
    #order_spares_section .order_spares_description {
      margin-left: 16.666667%; }
    #order_spares_section .order_spares_image {
      width: auto; }
  #plumber_training_section {
    padding: 45px 0px; }
  #relighting_videos_section {
    position: relative;
    padding: 45px 0px; }
    #relighting_videos_section .relighting_videos_image_box {
      margin-left: 16.666667%; }
    #relighting_videos_section .relighting_videos_description {
      margin-right: 16.666667%;
      position: absolute;
      top: 50%;
      transform: translate(0, -50%);
      right: 0%; }
    #relighting_videos_section .relighting_videos_image {
      width: auto; } }

@media (min-width: 767px) {
  #handbook_form .form-control {
    padding: 7px .75rem; } }

@media (max-width: 767px) {
  .or {
    display: none; } }

/* buy_and_install */
.map {
  position: relative; }

#map {
  height: 580px; }

.map_box_1 {
  position: relative;
  padding: 5px; }

.map_box_2 {
  position: relative;
  margin-top: 10px;
  padding: 5px; }

.address {
  position: relative;
  text-align: center; }
  .address .search_box {
    margin-top: 20px;
    margin-bottom: 20px; }
  .address .easy-autocomplete {
    margin-right: 0px;
    border: 2px solid #D1D2D4;
    border-radius: 2px; }
  .address .easy-autocomplete-container {
    left: -2px;
    width: calc(100% + 4px); }
  .address input {
    padding-left: 30px;
    margin-right: 30px;
    font-family: futura-pt, futura, 'Open Sans', "Trebuchet MS", Arial, sans-serif;
    font-style: normal;
    font-weight: 500;
    border: none;
    padding: 20px 0.75rem;
    color: #8D8D8D; }
  .address .bi-search {
    position: absolute;
    right: 13px;
    top: calc(50% - 10px);
    background: #fff;
    padding-left: 13px; }

.address_bar {
  position: absolute;
  background: #fff;
  width: 100%;
  margin-top: -3px;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-top: 0px;
  border-radius: 0px 0px 5px 5px; }
  .address_bar .address_item {
    list-style: none;
    margin-left: -40px;
    padding: 8px;
    cursor: pointer; }
  .address_bar .address_item:last-child {
    margin-bottom: -16px;
    border-radius: 0px 0px 5px 5px; }
  .address_bar .address_item:hover {
    list-style: none;
    color: #fff;
    background: #169CF7; }

.locate {
  margin-top: 10px; }
  .locate a {
    color: #333; }

.stockists .form-control {
  padding: 0.4rem .75rem !important; }

.stockists #dropdownMenuLink {
  color: #868e96; }

.note {
  margin-top: -8px;
  font-size: 15px; }
  .note p {
    font-size: 15px; }

.map_info {
  padding: 8px; }
  .map_info p {
    font-size: 15px; }
    .map_info p img {
      margin-right: 5px; }
  .map_info a {
    color: #169CF7;
    font-size: 15px; }

@media (min-width: 767px) {
  .map {
    position: relative; }
  #map {
    height: 550px; }
  .map_box_1 {
    position: absolute;
    width: 350px;
    height: 125px;
    margin-top: 60px;
    padding: 25px;
    background-color: #fff;
    z-index: 2; }
  .map_box_2 {
    position: absolute;
    width: 350px;
    height: 185px;
    margin-top: -390px;
    padding: 25px;
    background-color: #fff;
    z-index: 1; } }

.box_map {
  position: relative;
  margin-bottom: 80px; }
  .box_map h2 {
    font-size: 40px;
    margin-bottom: 11px; }
  .box_map p {
    font-size: 16px;
    color: #8D8D8D; }
  .box_map .results {
    height: auto;
    overflow: hidden; }
  .box_map .hide_map {
    background: #169CF7;
    height: 48px;
    color: white;
    text-align: center;
    font-size: 16px;
    padding-top: 12px;
    padding-bottom: 12px;
    cursor: pointer;
    margin-bottom: 45px; }
    .box_map .hide_map p {
      color: white; }

.map_finder {
  background: #f7f7f7;
  padding-top: 50px;
  padding-bottom: 50px;
  padding-left: 25px;
  padding-right: 25px;
  margin-bottom: 45px; }
  .map_finder h5 {
    font-size: 22px;
    margin-bottom: 20px; }
  .map_finder .map_box {
    width: 100%; }
  .map_finder .search_box {
    display: flex;
    margin-top: 20px;
    margin-bottom: 20px; }
    .map_finder .search_box button {
      min-width: 130px; }
  .map_finder .use_current_location img {
    margin-top: -3px;
    margin-right: 9px; }

.stockist_item {
  position: relative;
  padding-top: 30px;
  padding-bottom: 30px;
  padding-left: 0;
  padding-right: 0; }
  .stockist_item h3 {
    font-size: 20px;
    margin-bottom: 10px; }
  .stockist_item p {
    font-size: 16px;
    color: #8D8D8D;
    margin-bottom: 0; }
  .stockist_item a {
    color: #8D8D8D; }
  .stockist_item .btn-primary {
    padding: 6px 28px;
    font-size: 16px;
    line-height: 24px;
    position: relative;
    right: 0px;
    bottom: 0;
    margin-top: 25px; }
  .stockist_item hr {
    border-top: 2px solid rgba(0, 0, 0, 0.1);
    margin-top: 30px; }

.stockist_item:after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  margin-top: 30px;
  border-bottom: 2px solid rgba(0, 0, 0, 0.1);
  bottom: 0; }

.wtb_section h1 {
  font-size: 38px;
  margin-bottom: 15px; }

.wtb_section p {
  font-size: 16px;
  color: #666; }

.wtb_section .wtb_section_1 {
  padding: 45px 25px 25px 25px; }

.wtb_section .all_stockists {
  margin-bottom: 80px; }
  .wtb_section .all_stockists h2 {
    font-size: 24px;
    margin-bottom: 20px; }
  .wtb_section .all_stockists nav {
    border-bottom: 2px solid rgba(0, 0, 0, 0.1);
    margin-bottom: 10px; }
  .wtb_section .all_stockists .row {
    margin-right: 0;
    margin-left: 0; }

.box_map {
  position: relative; }
  .box_map .mp_title {
    padding-left: 25px;
    padding-right: 25px; }
  .box_map .results {
    padding-left: 180px;
    padding-right: 25px; }

@media (min-width: 767px) {
  .address {
    position: relative;
    text-align: center; }
    .address .search_box {
      position: relative; }
    .address .easy-autocomplete {
      margin-right: 0; }
    .address input {
      padding-left: 30px;
      margin-right: 30px;
      font-family: futura-pt, futura, 'Open Sans', "Trebuchet MS", Arial, sans-serif;
      font-style: normal;
      font-weight: 500;
      border: none;
      padding: 20px 0.75rem; }
  .map_finder {
    background: #f7f7f7;
    padding-top: 60px;
    padding-bottom: 60px;
    padding-left: 60px;
    padding-right: 60px;
    margin-bottom: 65px; }
    .map_finder h5 {
      font-size: 24px;
      margin-bottom: 20px; }
    .map_finder .map_box {
      width: 100%; }
    .map_finder .search_box {
      display: flex;
      margin-bottom: 5px;
      margin-top: 40px; }
      .map_finder .search_box button {
        min-width: 130px; }
    .map_finder .use_current_location img {
      margin-top: -5px;
      margin-right: 9px; }
  .stockist_item {
    position: relative;
    padding-top: 30px;
    padding-bottom: 30px;
    padding-left: 15px;
    padding-right: 15px; }
    .stockist_item h3 {
      font-size: 24px;
      margin-bottom: 10px; }
    .stockist_item p {
      font-size: 16px;
      color: #8D8D8D;
      margin-bottom: 0; }
    .stockist_item a {
      color: #8D8D8D; }
    .stockist_item .btn-primary {
      padding: 6px 28px;
      font-size: 16px;
      line-height: 24px;
      position: absolute;
      right: 0px;
      bottom: 35px;
      margin-top: 0; }
    .stockist_item hr {
      border-top: 2px solid rgba(0, 0, 0, 0.1);
      margin-top: 30px; }
  .wtb_section_gray {
    background: #f7f7f7; }
  .wtb_section h1 {
    font-size: 38px;
    margin-bottom: 15px; }
  .wtb_section p {
    font-size: 16px;
    color: #8D8D8D; }
  .wtb_section .wtb_section_1 {
    padding-top: 80px;
    padding-bottom: 80px;
    text-align: center; }
    .wtb_section .wtb_section_1 h2 {
      text-align: center;
      margin-bottom: 20px;
      width: 100%; }
  .wtb_section .all_stockists {
    margin-bottom: 80px; }
    .wtb_section .all_stockists h2 {
      font-size: 24px;
      margin-bottom: 20px; }
    .wtb_section .all_stockists nav {
      border-bottom: 2px solid rgba(0, 0, 0, 0.1);
      margin-bottom: 10px; }
      .wtb_section .all_stockists nav .nav-link {
        width: 12.5%; }
    .wtb_section .all_stockists .row {
      margin-right: 0;
      margin-left: 0; }
    .wtb_section .all_stockists .stockist_item:nth-child(odd) {
      padding-left: 0 !important; }
      .wtb_section .all_stockists .stockist_item:nth-child(odd) .btn-primary {
        right: 15px; }
    .wtb_section .all_stockists .stockist_item:nth-child(even) {
      padding-right: 0 !important; }
  .wtb_section .blocks .col {
    padding: 0; }
  .box_map {
    /* width */
    /* Track */
    /* Handle */
    /* Handle on hover */ }
    .box_map .stockist_item {
      padding-left: 0;
      padding-right: 0; }
    .box_map .stockist_item:after {
      width: calc(100%); }
    .box_map .mp_title {
      padding-left: 10%;
      padding-right: 10%;
      text-align: center; }
      .box_map .mp_title p {
        margin-bottom: 32px; }
    .box_map .results {
      height: 550px;
      overflow: auto;
      scrollbar-color: #169CF7; }
    .box_map .results::-webkit-scrollbar {
      width: 14px; }
    .box_map .results::-webkit-scrollbar-track {
      background: #F7F7F7; }
    .box_map .results::-webkit-scrollbar-thumb {
      background: #8D8D8D;
      border-radius: 10px; }
    .box_map .results::-webkit-scrollbar-thumb:hover {
      background: #8D8D8D; }
    .box_map .map {
      position: absolute;
      right: 0;
      bottom: 0;
      display: block; } }

.use_current_location {
  color: #8D8D8D;
  cursor: pointer;
  display: inline-block;
  text-decoration: underline;
  margin-top: 10px; }

.use_current_location:hover {
  text-decoration: underline; }

@media (max-width: 1024px) {
  .box_map h2 {
    font-size: 34px; }
  .box_map .mp_title {
    padding-left: 25px;
    padding-right: 25px; }
  .box_map .results {
    padding-left: 25px; } }

@media (max-width: 575px) {
  .results .stockist_item {
    display: none; }
    .results .stockist_item:nth-child(-n+6) {
      display: block; }
  #btn-loadmore-stockists {
    background: transparent;
    color: #333;
    border-radius: 25px;
    padding: 10px 20px;
    margin-top: 40px;
    border-color: #333;
    margin-left: auto;
    margin-right: auto; }
  .address .search_box {
    position: relative; } }

.clear_search_criteria {
  color: #169CF7;
  cursor: pointer;
  display: inline-block; }
  .clear_search_criteria:hover {
    text-decoration: underline; }

/* contact_us */
.page_about_contact_us .hot_water_section h3,
.page_lp_contact_us .hot_water_section h3,
.page_contact_us .hot_water_section h3,
.page_request_a_quote .hot_water_section h3 {
  color: white !important; }

.page_about_contact_us .lp_hot_water_red_banner,
.page_lp_contact_us .lp_hot_water_red_banner,
.page_contact_us .lp_hot_water_red_banner,
.page_request_a_quote .lp_hot_water_red_banner {
  margin-top: 10px; }

.page_about_contact_us .contact_us_form_section,
.page_lp_contact_us .contact_us_form_section,
.page_contact_us .contact_us_form_section,
.page_request_a_quote .contact_us_form_section {
  min-height: 400px; }

.page_about_contact_us hr,
.page_lp_contact_us hr,
.page_contact_us hr,
.page_request_a_quote hr {
  margin-top: 150px; }

.page_about_contact_us .state,
.page_lp_contact_us .state,
.page_contact_us .state,
.page_request_a_quote .state {
  margin-bottom: 0px; }

.page_about_contact_us .contact-section,
.page_lp_contact_us .contact-section,
.page_contact_us .contact-section,
.page_request_a_quote .contact-section {
  padding: 25px 0; }

.page_about_contact_us .contact-section p,
.page_lp_contact_us .contact-section p,
.page_contact_us .contact-section p,
.page_request_a_quote .contact-section p {
  margin-bottom: 0.5rem; }

.page_about_contact_us #contact-main-title,
.page_lp_contact_us #contact-main-title,
.page_contact_us #contact-main-title,
.page_request_a_quote #contact-main-title {
  background-color: #f7f7f7;
  padding: 10px 0; }

.page_about_contact_us #contact-main-title h2,
.page_lp_contact_us #contact-main-title h2,
.page_contact_us #contact-main-title h2,
.page_request_a_quote #contact-main-title h2 {
  margin-bottom: 0rem; }

.page_about_contact_us .contact-table table,
.page_lp_contact_us .contact-table table,
.page_contact_us .contact-table table,
.page_request_a_quote .contact-table table {
  width: 100%;
  margin-bottom: 10px; }

.page_about_contact_us .contact-table table a,
.page_lp_contact_us .contact-table table a,
.page_contact_us .contact-table table a,
.page_request_a_quote .contact-table table a {
  color: #333;
  text-decoration: underline; }

.page_about_contact_us .contact-phone a,
.page_lp_contact_us .contact-phone a,
.page_contact_us .contact-phone a,
.page_request_a_quote .contact-phone a {
  color: #169CF7; }

.page_about_contact_us .contact-phone a:hover,
.page_lp_contact_us .contact-phone a:hover,
.page_contact_us .contact-phone a:hover,
.page_request_a_quote .contact-phone a:hover {
  text-decoration: none;
  color: #333; }

.page_about_contact_us .contact-link,
.page_lp_contact_us .contact-link,
.page_contact_us .contact-link,
.page_request_a_quote .contact-link {
  text-decoration: none;
  color: #333; }

.page_about_contact_us .contact-link-red,
.page_lp_contact_us .contact-link-red,
.page_contact_us .contact-link-red,
.page_request_a_quote .contact-link-red {
  text-decoration: none;
  color: #169CF7; }

.page_about_contact_us .contact-link:hover,
.page_lp_contact_us .contact-link:hover,
.page_contact_us .contact-link:hover,
.page_request_a_quote .contact-link:hover {
  text-decoration: none;
  color: #169CF7; }

.page_about_contact_us .contact-link:active,
.page_lp_contact_us .contact-link:active,
.page_contact_us .contact-link:active,
.page_request_a_quote .contact-link:active {
  text-decoration: none;
  color: #066fb6; }

.page_about_contact_us .contact-link-red:hover,
.page_lp_contact_us .contact-link-red:hover,
.page_contact_us .contact-link-red:hover,
.page_request_a_quote .contact-link-red:hover {
  text-decoration: none;
  color: #066fb6; }

.page_about_contact_us .contact-link-red:active,
.page_lp_contact_us .contact-link-red:active,
.page_contact_us .contact-link-red:active,
.page_request_a_quote .contact-link-red:active {
  text-decoration: none;
  color: #066fb6; }

.page_about_contact_us .dropdown_select,
.page_lp_contact_us .dropdown_select,
.page_contact_us .dropdown_select,
.page_request_a_quote .dropdown_select {
  width: 100%; }

.page_about_contact_us .dropdown_select:hover,
.page_lp_contact_us .dropdown_select:hover,
.page_contact_us .dropdown_select:hover,
.page_request_a_quote .dropdown_select:hover {
  text-decoration: none;
  color: #495057; }

.page_about_contact_us .dropdown_select::after,
.page_lp_contact_us .dropdown_select::after,
.page_contact_us .dropdown_select::after,
.page_request_a_quote .dropdown_select::after {
  float: right;
  margin-top: 10px;
  color: #169CF7; }

.page_about_contact_us .dropdown-menu-select,
.page_lp_contact_us .dropdown-menu-select,
.page_contact_us .dropdown-menu-select,
.page_request_a_quote .dropdown-menu-select {
  width: 100%;
  transform: translate3d(0px, 33px, 0px) !important;
  border-radius: 0px 0px 5px 5px;
  border: 2px solid #D1D2D4;
  border-radius: 0;
  border-top: 0px; }
  .page_about_contact_us .dropdown-menu-select .dropdown-item,
  .page_lp_contact_us .dropdown-menu-select .dropdown-item,
  .page_contact_us .dropdown-menu-select .dropdown-item,
  .page_request_a_quote .dropdown-menu-select .dropdown-item {
    cursor: pointer;
    padding: .25rem 1rem; }
  .page_about_contact_us .dropdown-menu-select .dropdown-item:hover,
  .page_lp_contact_us .dropdown-menu-select .dropdown-item:hover,
  .page_contact_us .dropdown-menu-select .dropdown-item:hover,
  .page_request_a_quote .dropdown-menu-select .dropdown-item:hover {
    background-color: #169CF7;
    color: white; }

.page_about_contact_us form .variable_container,
.page_lp_contact_us form .variable_container,
.page_contact_us form .variable_container,
.page_request_a_quote form .variable_container {
  display: none; }

.page_about_contact_us form .variable,
.page_lp_contact_us form .variable,
.page_contact_us form .variable,
.page_request_a_quote form .variable {
  display: none; }

.page_about_contact_us form .g-recaptcha > div,
.page_lp_contact_us form .g-recaptcha > div,
.page_contact_us form .g-recaptcha > div,
.page_request_a_quote form .g-recaptcha > div {
  margin: 0 auto; }

.page_about_contact_us .contact_us_form_section_success,
.page_lp_contact_us .contact_us_form_section_success,
.page_contact_us .contact_us_form_section_success,
.page_request_a_quote .contact_us_form_section_success {
  display: none;
  margin-bottom: 80px; }
  .page_about_contact_us .contact_us_form_section_success .success_subtitle,
  .page_lp_contact_us .contact_us_form_section_success .success_subtitle,
  .page_contact_us .contact_us_form_section_success .success_subtitle,
  .page_request_a_quote .contact_us_form_section_success .success_subtitle {
    color: #777; }
  .page_about_contact_us .contact_us_form_section_success .success_image,
  .page_lp_contact_us .contact_us_form_section_success .success_image,
  .page_contact_us .contact_us_form_section_success .success_image,
  .page_request_a_quote .contact_us_form_section_success .success_image {
    padding: 50px 0; }

.page_about_contact_us .corporate_addresses_link i,
.page_lp_contact_us .corporate_addresses_link i,
.page_contact_us .corporate_addresses_link i,
.page_request_a_quote .corporate_addresses_link i {
  margin-bottom: -2px; }

.page_about_contact_us .corporate_addresses_desktop,
.page_lp_contact_us .corporate_addresses_desktop,
.page_contact_us .corporate_addresses_desktop,
.page_request_a_quote .corporate_addresses_desktop {
  display: none; }
  .page_about_contact_us .corporate_addresses_desktop a,
  .page_lp_contact_us .corporate_addresses_desktop a,
  .page_contact_us .corporate_addresses_desktop a,
  .page_request_a_quote .corporate_addresses_desktop a {
    color: #333;
    line-height: 38px; }
  .page_about_contact_us .corporate_addresses_desktop p,
  .page_lp_contact_us .corporate_addresses_desktop p,
  .page_contact_us .corporate_addresses_desktop p,
  .page_request_a_quote .corporate_addresses_desktop p {
    margin-bottom: -12px; }

.page_about_contact_us_corporate_addresses h2 {
  font-size: 1.9em; }

.page_about_contact_us_corporate_addresses .corporate_section_title {
  padding: 20px 0; }

.page_about_contact_us_corporate_addresses .corporate_addresses .card {
  margin-bottom: 10px;
  border-radius: 0.15rem; }

.page_about_contact_us_corporate_addresses .corporate_addresses .card:last-child {
  margin-bottom: 30px; }

.page_about_contact_us_corporate_addresses .corporate_addresses .card-header {
  background-color: white;
  border-bottom: 0px; }

.page_about_contact_us_corporate_addresses .corporate_addresses .card-header a {
  color: #333; }

.page_about_contact_us_corporate_addresses .corporate_addresses .card-header a:hover {
  text-decoration: none;
  color: #333; }

.page_about_contact_us_corporate_addresses .corporate_addresses .card-body {
  padding: 1rem;
  padding-top: 0px; }

.page_about_contact_us_corporate_addresses .corporate_addresses .card-body p {
  margin-bottom: 0; }

.page_about_contact_us_corporate_addresses .corporate_addresses .card-body .regional_offices_item {
  padding: 12px 0; }

.page_about_contact_us_corporate_addresses .corporate_addresses .collapse table {
  width: 100%; }

.page_about_contact_us_corporate_addresses .corporate_addresses #national_addresses table {
  color: #777;
  max-width: 300px; }
  .page_about_contact_us_corporate_addresses .corporate_addresses #national_addresses table td {
    width: 180px; }

.page_about_contact_us_corporate_addresses .corporate_addresses #regional_addresses p {
  color: #777; }

.page_about_contact_us_corporate_addresses .corporate_addresses #international_addresses table {
  color: #777;
  max-width: 300px; }
  .page_about_contact_us_corporate_addresses .corporate_addresses #international_addresses table td {
    width: 180px; }

.page_about_contact_us_corporate_addresses .corporate_addresses #environmental_addresses {
  color: #777; }
  .page_about_contact_us_corporate_addresses .corporate_addresses #environmental_addresses table {
    color: #777;
    margin-top: 10px;
    max-width: 300px; }
    .page_about_contact_us_corporate_addresses .corporate_addresses #environmental_addresses table td {
      width: 180px; }

@media (min-width: 767px) {
  .page_about_contact_us hr,
  .page_lp_contact_us hr,
  .page_contact_us hr,
  .page_request_a_quote hr {
    margin-top: -5px;
    width: 100%; }
  .page_about_contact_us #contact-main-title,
  .page_lp_contact_us #contact-main-title,
  .page_contact_us #contact-main-title,
  .page_request_a_quote #contact-main-title {
    background-color: transparent;
    padding-bottom: 0px; }
    .page_about_contact_us #contact-main-title h2,
    .page_lp_contact_us #contact-main-title h2,
    .page_contact_us #contact-main-title h2,
    .page_request_a_quote #contact-main-title h2 {
      font-size: 2.75rem; }
  .page_about_contact_us .contact-section-2,
  .page_lp_contact_us .contact-section-2,
  .page_contact_us .contact-section-2,
  .page_request_a_quote .contact-section-2 {
    margin-top: 45px;
    border-left: 1px solid rgba(0, 0, 0, 0.1);
    padding-left: 30px;
    padding-right: 30px; }
  .page_about_contact_us .purpose,
  .page_lp_contact_us .purpose,
  .page_contact_us .purpose,
  .page_request_a_quote .purpose {
    margin-top: 0; }
  .page_about_contact_us .contact-phone a,
  .page_lp_contact_us .contact-phone a,
  .page_contact_us .contact-phone a,
  .page_request_a_quote .contact-phone a {
    font-size: 26px;
    font-weight: bold; }
  .page_about_contact_us .form_subtitle,
  .page_lp_contact_us .form_subtitle,
  .page_contact_us .form_subtitle,
  .page_request_a_quote .form_subtitle {
    margin-bottom: -15px; }
  .page_about_contact_us .corporate_addresses_mobile,
  .page_lp_contact_us .corporate_addresses_mobile,
  .page_contact_us .corporate_addresses_mobile,
  .page_request_a_quote .corporate_addresses_mobile {
    display: none; }
  .page_about_contact_us .corporate_addresses_desktop,
  .page_lp_contact_us .corporate_addresses_desktop,
  .page_contact_us .corporate_addresses_desktop,
  .page_request_a_quote .corporate_addresses_desktop {
    display: block; }
  .page_about_contact_us .dropdown-menu-select,
  .page_lp_contact_us .dropdown-menu-select,
  .page_contact_us .dropdown-menu-select,
  .page_request_a_quote .dropdown-menu-select {
    width: calc(100% - 1px); } }

@media (max-width: 1025px) {
  .contact_us_hr {
    display: none; } }

@media (max-width: 767px) {
  .contact_us_hr {
    display: block;
    margin-top: 200px; } }

.contact_us_container .steps {
  text-align: center;
  padding-bottom: 30px;
  display: inline-flex; }
  .contact_us_container .steps .step {
    display: inline-flex;
    padding-bottom: 15px; }
    .contact_us_container .steps .step .icon {
      padding-bottom: 15px;
      width: 90px;
      margin-right: 20px;
      display: inline-block; }
    .contact_us_container .steps .step .text {
      display: inline-block;
      text-align: left;
      width: calc(100% - 110px); }
    .contact_us_container .steps .step h3 {
      font-size: 18px; }
    .contact_us_container .steps .step p {
      font-size: 16px;
      color: #666; }

.contact_us_container .success_section {
  display: none; }

.contact_us_container .form_section form {
  margin-bottom: 0; }

.contact_us_container .form_section .contact_description {
  padding-top: 10px;
  padding-bottom: 10px; }

.contact_us_container .form_section .instructions {
  font-size: 14px;
  color: #808080;
  margin-bottom: 20px; }

.contact_us_container .form_section .form-group {
  margin-bottom: 20px; }
  .contact_us_container .form_section .form-group .bi {
    color: #169CF7;
    cursor: pointer; }
  .contact_us_container .form_section .form-group .bi-calendar3 {
    position: absolute;
    right: 30px;
    top: 43px; }

.contact_us_container .form_section .form-control {
  padding: 23px 0.75rem; }
  .contact_us_container .form_section .form-control.is-invalid {
    border-color: #D1D2D4; }

.contact_us_container .form_section .form-button {
  margin-bottom: 0; }

.contact_us_container .form_section .dropdown_select {
  padding: 12px 0.75rem;
  height: 50px; }

.contact_us_container .address_section {
  padding: 0 0px;
  margin-top: 60px;
  padding-top: 60px;
  border-top: 2px solid #d1d1d1;
  margin-right: 20px;
  margin-left: 20px;
  width: 100%;
  display: block;
  flex: auto; }
  .contact_us_container .address_section .r_phone_text {
    font-size: 22px;
    line-height: 20px;
    font-weight: 600; }
  .contact_us_container .address_section .r_phone_value .lp_hot_water_icon img {
    margin-top: -10px; }
  .contact_us_container .address_section .r_phone_value .phone_link {
    margin-left: 6px;
    font-size: 26px;
    color: #333;
    font-weight: 600; }
  .contact_us_container .address_section .r_phone_value a:hover {
    text-decoration: none; }
  .contact_us_container .address_section .r_address_text {
    margin-top: 25px;
    margin-bottom: 5px; }
  .contact_us_container .address_section .r_address_value {
    color: #666; }

.dropdown_select::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 5px solid;
  border-right: 5px solid transparent;
  border-bottom: 0;
  border-left: 5px solid transparent;
  float: right;
  margin-top: 10px;
  color: #FF5800; }

.show .dropdown_select::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0;
  border-right: 5px solid transparent;
  border-bottom: 5px solid;
  border-left: 5px solid transparent;
  float: right;
  margin-top: 10px;
  color: #169CF7; }

@media (min-width: 767px) {
  .contact_us_container .steps {
    text-align: center;
    padding-bottom: 80px;
    display: flex; }
    .contact_us_container .steps .step {
      display: block;
      padding-bottom: 0; }
      .contact_us_container .steps .step .icon {
        padding-bottom: 15px;
        width: auto;
        margin-right: 0;
        display: block; }
      .contact_us_container .steps .step .text {
        width: auto;
        display: block;
        text-align: center;
        width: auto; }
      .contact_us_container .steps .step h3 {
        font-size: 20px; }
      .contact_us_container .steps .step p {
        font-size: 16px;
        color: #666; }
  .contact_us_container .success_section {
    display: none; }
  .contact_us_container .form_section .contact_description {
    padding-top: 10px;
    padding-bottom: 10px;
    color: #808080; }
  .contact_us_container .form_section .instructions {
    font-size: 14px;
    color: #808080;
    margin-bottom: 20px; }
  .contact_us_container .form_section .form-group {
    margin-bottom: 30px; }
    .contact_us_container .form_section .form-group label {
      margin-bottom: 5px; }
  .contact_us_container .form_section .form-control {
    padding: 23px 0.75rem; }
  .contact_us_container .form_section .form-button {
    margin-bottom: 0; }
  .contact_us_container .form_section .dropdown_select {
    padding: 12px 0.75rem;
    height: 50px; }
  .contact_us_container .address_section {
    padding: 0 10px 0 60px;
    margin-top: 0;
    margin-bottom: 0;
    border-top: 0;
    margin-left: 0;
    margin-right: 0;
    width: auto;
    display: block;
    flex: 0 0 33.333333%; }
    .contact_us_container .address_section .r_phone_text {
      text-transform: unset;
      font-size: 24px;
      line-height: 20px;
      font-weight: 600; }
    .contact_us_container .address_section .r_phone_value .lp_hot_water_icon img {
      margin-top: -10px; }
    .contact_us_container .address_section .r_phone_value .phone_link {
      margin-left: 6px;
      font-size: 1.5em;
      margin-left: 6px;
      font-size: 30px;
      font-weight: 600;
      color: #333; }
    .contact_us_container .address_section .r_phone_value a:hover {
      text-decoration: none; }
    .contact_us_container .address_section .r_address_text {
      margin-top: 25px;
      margin-bottom: 5px;
      font-size: 18px; }
    .contact_us_container .address_section .r_address_value {
      font-size: 18px;
      color: #808080; } }

/* hydraulic_consultants */
/* help_me_decide */
#help_me_decide_main_section {
  position: relative; }

.help_me_decide_background_image {
  max-height: 300px; }

#help_me_decide_section {
  padding: 25px 0; }

#help_me_decide_main_section {
  position: relative;
  width: 100%;
  min-height: 1px; }

.help_me_decide_container {
  max-width: 500px; }
  .help_me_decide_container .form-control:disabled, .help_me_decide_container .form-control[readonly] {
    background-color: #fff !important; }

.progress_bar_section {
  padding: 25px 0; }
  .progress_bar_section .row {
    margin-right: 0px;
    margin-left: 0px; }
  .progress_bar_section .progress {
    height: 1.5rem;
    border-color: #e4e3e1;
    border-style: solid;
    border-width: 1px;
    width: 14.28%;
    border-radius: 0rem 0rem 0rem 0rem;
    padding-right: 0px;
    padding-left: 0px; }
  .progress_bar_section .bg-rheem {
    background-color: #fff !important; }
  .progress_bar_section .pg-1 {
    width: 14.28%;
    border-radius: 1.25rem 0rem 0rem 1.25rem; }
  .progress_bar_section .pg-7 {
    width: 14.28%;
    border-radius: 0rem 1.25rem 1.25rem 0rem; }
  .progress_bar_section .active {
    background-color: #169CF7 !important; }

.household_section {
  padding: 25px 0; }
  .household_section .household_number {
    position: relative;
    height: 90px; }
    .household_section .household_number .form-control {
      position: absolute;
      top: 50%;
      left: 50%;
      margin-right: -50%;
      transform: translate(-50%, -50%);
      width: 60px;
      height: 60px;
      font-size: 40px;
      padding: .375rem 1rem;
      color: #169CF7; }

.minus-button {
  position: absolute;
  top: 50%;
  left: 30%;
  margin-right: -50%;
  transform: translate(-50%, -50%);
  font-size: 40px;
  cursor: pointer; }

.plus-button {
  position: absolute;
  top: 50%;
  left: 70%;
  margin-right: -50%;
  transform: translate(-50%, -50%);
  font-size: 40px;
  cursor: pointer; }

.bathroom_section {
  padding: 25px 0; }
  .bathroom_section .bathroom_number {
    position: relative;
    height: 90px; }
    .bathroom_section .bathroom_number .form-control {
      position: absolute;
      top: 50%;
      left: 50%;
      margin-right: -50%;
      transform: translate(-50%, -50%);
      width: 60px;
      height: 60px;
      font-size: 40px;
      padding: .375rem 1rem;
      color: #169CF7; }

.bathroom_spa_section {
  padding: 25px 0; }

.long_shower_section {
  padding: 25px 0; }

.laundry_section {
  padding: 25px 0; }

.location_section {
  padding: 25px 0; }
  .location_section .postcode_number {
    position: relative;
    height: 90px; }
    .location_section .postcode_number .form-control {
      position: absolute;
      top: 50%;
      left: 50%;
      margin-right: -50%;
      transform: translate(-50%, -50%);
      width: 150px;
      height: 60px;
      font-size: 40px;
      text-align: center;
      color: #169CF7; }
  .location_section .invalid_postcode {
    text-align: center;
    color: #169CF7; }

.energy_type_section {
  padding: 25px 0; }
  .energy_type_section .energy_type {
    margin-top: 15px; }
  .energy_type_section .energy_type_box {
    position: relative; }
    .energy_type_section .energy_type_box .energy_image {
      position: absolute;
      top: 50%;
      left: 50%;
      margin-right: -50%;
      transform: translate(-50%, -50%); }

.div-checkbox {
  position: relative;
  height: 100px; }

.rheem-checkbox {
  padding: 30px;
  width: 167px;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-right: -50%;
  transform: translate(-50%, -50%); }
  .rheem-checkbox input {
    display: none; }
  .rheem-checkbox label {
    cursor: pointer;
    padding-right: 35px;
    position: relative;
    display: block;
    font-size: 18px;
    padding: 15px 0; }
  .rheem-checkbox input[type="checkbox"] {
    position: absolute;
    visibility: hidden !important; }
  .rheem-checkbox input[type="checkbox"] + label:before,
  .rheem-checkbox input[type="checkbox"] + label:after {
    content: '';
    position: absolute;
    top: 50%;
    margin-top: -7.5px;
    box-sizing: border-box; }
  .rheem-checkbox input[type="checkbox"] + label:before {
    width: 100px;
    height: 45px;
    right: 0px;
    background: #e4e3e1;
    border: 1px solid #e4e3e1;
    border-radius: 22px; }
  .rheem-checkbox input[type="checkbox"]:checked + label:before {
    background: #169CF7;
    border: 1px solid #169CF7; }
  .rheem-checkbox input[type="checkbox"] + label:after {
    width: 42px;
    height: 35px;
    right: 15px;
    background: #FFF;
    border-radius: 25px;
    -webkit-transition: all 200ms ease-out;
    transition: all 200ms ease-out;
    margin-top: -2px;
    margin-right: 35px; }
  .rheem-checkbox input[type="checkbox"]:checked + label:after {
    right: 0px;
    background: #FFF;
    margin-right: 6px; }
  .rheem-checkbox .checkbox-text {
    margin-top: 30px; }

.radio-box {
  width: 75px;
  height: 75px;
  border-radius: 10px;
  background-color: #e4e3e1;
  cursor: pointer;
  margin: 0 auto; }

.radio-box input {
  display: none; }

.radio-active {
  background-color: #169CF7; }

.button_back, .button_next {
  cursor: point; }

.results_section {
  position: relative; }
  .results_section .result_image {
    position: absolute;
    top: -30px;
    left: 50%;
    margin-right: -50%;
    transform: translate(-50%, -50%); }
  .results_section .results_title {
    margin-top: 75px; }
  .results_section .we_recommend_section {
    padding: 25px 0;
    background-color: #f7f7f7; }
  .results_section .more_capacity_product_section {
    padding: 25px 0; }
  .results_section .solar_product_section {
    padding: 25px 0; }
  .results_section .start_again_section {
    padding-bottom: 25px; }

.box_product > .card {
  height: 500px; }
  .box_product > .card ul {
    padding-left: 20px; }

.box_product .card-body h4 {
  color: #333;
  font-size: 24px;
  overflow: hidden; }
  .box_product .card-body h4 a {
    color: #333; }

.box_product .card-body h5 {
  color: #333;
  font-size: 18px;
  overflow: hidden; }

.box_product .card-body p {
  margin-bottom: 0rem;
  font-size: 1rem; }

.box_product .card-body a:hover {
  text-decoration: none; }

.box_product .card-footer {
  margin-top: 11px;
  padding: 0; }
  .box_product .card-footer .box_product_model {
    padding-top: .75rem;
    padding-bottom: .75rem;
    padding-right: 0px;
    padding-left: 24px;
    border-right: 1px solid rgba(0, 0, 0, 0.125);
    text-align: center; }
  .box_product .card-footer .box_product_compare {
    padding-top: .75rem;
    padding-bottom: .75rem;
    padding-left: 0px;
    text-align: center;
    font-size: 14px; }
  .box_product .card-footer .model_no_text {
    display: inline-block;
    font-weight: bold;
    font-size: 14px; }
  .box_product .card-footer .model_no_text_mobile {
    display: none; }
  .box_product .card-footer .model_no {
    font-weight: bold;
    font-size: 16px; }

@media (max-width: 950px) {
  .model_no_text {
    display: none !important; }
  .model_no_text_mobile {
    display: inline-block !important;
    font-weight: bold;
    font-size: 14px; } }

.hmd_container .postcode {
  text-align: left;
  width: 100%;
  max-width: 325px;
  margin: 0 auto;
  padding: 70px 0 70px 0; }
  .hmd_container .postcode p {
    margin-bottom: 5px; }

.hmd_container .calculator_container {
  position: relative;
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
  margin-bottom: 80px; }
  .hmd_container .calculator_container .box_container {
    position: absolute;
    height: 300px;
    z-index: 10;
    left: 50%;
    transform: translateX(-50%);
    border-top: 2px solid #169CF7;
    border-bottom: 2px solid #169CF7;
    border-right: 2px solid #169CF7;
    border-left: 2px solid #169CF7;
    max-width: 205px;
    pointer-events: none; }
    .hmd_container .calculator_container .box_container .title {
      background: #169CF7;
      color: #fff;
      height: 50px;
      padding: 10px 10px 10px 10px;
      font-size: 20px;
      text-align: center; }
  .hmd_container .calculator_container .swiper_container {
    padding-top: 50px;
    padding-bottom: 5px;
    margin-right: -15px;
    margin-left: -15px; }
  .hmd_container .calculator_container .products_container {
    border-top: 2px solid rgba(0, 0, 0, 0.1);
    margin-left: -15px;
    margin-right: -15px; }
    .hmd_container .calculator_container .products_container #products {
      margin-bottom: 0; }
      .hmd_container .calculator_container .products_container #products .product_boxes {
        margin: 0 auto; }
        .hmd_container .calculator_container .products_container #products .product_boxes .box_product {
          display: inline-block;
          max-width: 205px; }
          .hmd_container .calculator_container .products_container #products .product_boxes .box_product .card {
            border-top: 0;
            margin-bottom: 0 !important; }
          .hmd_container .calculator_container .products_container #products .product_boxes .box_product .card-body {
            padding: 10px; }
            .hmd_container .calculator_container .products_container #products .product_boxes .box_product .card-body .image {
              height: 129px;
              margin-bottom: 10px; }
              .hmd_container .calculator_container .products_container #products .product_boxes .box_product .card-body .image img {
                height: 129px; }
            .hmd_container .calculator_container .products_container #products .product_boxes .box_product .card-body h4 {
              font-size: 20px; }
            .hmd_container .calculator_container .products_container #products .product_boxes .box_product .card-body p {
              font-size: 16px; }
            .hmd_container .calculator_container .products_container #products .product_boxes .box_product .card-body .product-icon {
              text-align: left;
              padding-bottom: 10px; }
              .hmd_container .calculator_container .products_container #products .product_boxes .box_product .card-body .product-icon img {
                display: inline;
                width: 38px; }
              .hmd_container .calculator_container .products_container #products .product_boxes .box_product .card-body .product-icon p {
                display: inline;
                font-size: 14px;
                width: 100%; }
          .hmd_container .calculator_container .products_container #products .product_boxes .box_product .product_details {
            height: 165px; }
          .hmd_container .calculator_container .products_container #products .product_boxes .box_product .learn_more {
            margin-top: 10px;
            margin-bottom: 10px; }
        .hmd_container .calculator_container .products_container #products .product_boxes .product-hide {
          display: none; }
        .hmd_container .calculator_container .products_container #products .product_boxes .show-first-place {
          display: block; }
        .hmd_container .calculator_container .products_container #products .product_boxes .show-second-place {
          display: block; }
        .hmd_container .calculator_container .products_container #products .product_boxes .show-third-place {
          display: block; }

@media (min-width: 764px) {
  .hmd_container .calculator_container .box_container {
    max-width: 100%; }
  .hmd_container .calculator_container .products_container #products .product_boxes .box_product {
    max-width: 100%;
    margin: 0 6px; }
  .hmd_container .calculator_container .products_container #products .product_boxes .show-first-place {
    display: inline-block; }
  .hmd_container .calculator_container .products_container #products .product_boxes .show-second-place {
    display: inline-block; }
  .hmd_container .calculator_container .products_container #products .product_boxes .show-third-place {
    display: inline-block; } }

.swiper-container {
  width: 100%;
  height: 84px;
  margin: 0 auto;
  border-top: 2px solid rgba(0, 0, 0, 0.1); }

.swiper_box_product .swiper-container {
  height: auto; }

.swiper-slide {
  text-align: center;
  background: #fff;
  /* Center slide text vertically */
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  font-size: 30px;
  padding-bottom: 8px;
  color: rgba(51, 51, 51, 0.3); }

.swiper_type_product .swiper-slide {
  font-size: 18px; }

.swiper-slide-active {
  color: #333; }

.swiper_data {
  position: absolute;
  top: 90%;
  width: 100%;
  max-width: 300px;
  left: 50%;
  transform: translateX(-50%);
  height: var(--swiper-navigation-size);
  margin-top: calc(0px - (var( --swiper-navigation-size) / 2));
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #666;
  font-size: 16px;
  text-align: center; }

.hmd-swiper-button-prev,
.hmd-swiper-button-next {
  position: absolute;
  top: 50%;
  width: calc(var(--swiper-navigation-size) / 44 * 27);
  height: var(--swiper-navigation-size);
  margin-top: calc(0px - (var(--swiper-navigation-size) / 2));
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
  width: 50px; }

.hmd-swiper-button-prev.swiper-button-disabled,
.hmd-swiper-button-next.swiper-button-disabled {
  opacity: 0;
  cursor: auto;
  pointer-events: none; }

.hmd-swiper-button-prev {
  left: 10px;
  right: auto; }

.hmd-swiper-button-next {
  right: 10px;
  left: auto; }

/* article */
.article_section_title {
  padding-top: 20px; }

.article_date {
  color: #575757; }

.article_buttons {
  padding-bottom: 20px; }
  .article_buttons .button_prev {
    border-right: 1px solid rgba(0, 0, 0, 0.25); }
  .article_buttons a {
    color: #169CF7; }
  .article_buttons a:hover {
    color: #169CF7;
    opacity: 0.8; }
  .article_buttons i {
    margin-bottom: -3px; }

.article_download {
  margin-bottom: 20px; }
  .article_download a {
    color: #169CF7;
    text-decoration: underline;
    text-transform: uppercase; }
  .article_download a:hover {
    color: #169CF7;
    opacity: 0.8;
    text-decoration: underline;
    text-transform: uppercase; }

.article_separator {
  display: none; }

.article_body img {
  max-width: 100%; }

.page_generic_page img {
  max-width: 100%; }

.page_discover_solar .header_page_subsection h2 {
  font-size: 38px; }

.page_discover_solar .header_page_subsection img {
  max-width: 500px;
  width: 100%; }

.page_discover_solar .header_page_subsection h3 {
  text-align: center;
  font-size: 22px; }

.page_discover_solar .header_page_subsection p {
  font-size: 16px; }
  .page_discover_solar .header_page_subsection p em {
    font-size: 14px;
    color: #808080; }

@media (min-width: 767px) {
  .article_page {
    width: 80%;
    margin-left: 50%;
    transform: translateX(-50%); }
  .back_container {
    display: none; }
  .article_separator {
    display: block;
    height: 25px; } }

/* about */
#about_main_section {
  position: relative;
  width: 100%;
  min-height: 1px;
  max-height: 660px; }

#about_main_section .text_image {
  font-size: 40px;
  padding-left: 50px;
  padding-right: 50px; }
  #about_main_section .text_image h1 {
    font-size: 40px; }
  #about_main_section .text_image p {
    font-size: 22px;
    line-height: 26px;
    margin-bottom: 0; }

.select_year_filter {
  position: relative;
  margin-top: 30px; }

.filter_title {
  padding-left: 5px;
  padding-right: 5px;
  margin-bottom: -10px; }
  .filter_title a {
    color: #333;
    text-decoration: underline; }

.results_text {
  text-align: center;
  padding-top: 10px;
  padding-bottom: 10px; }

.media_releases {
  min-height: 200px; }
  .media_releases hr {
    padding-bottom: 15px; }
  .media_releases .load_more_button {
    text-align: center;
    margin-left: 0;
    transform: none; }

.media_release .title {
  font-size: 18px;
  font-weight: 500; }

.media_release .date {
  color: #575757;
  margin-top: 3px;
  margin-bottom: 3px; }

.media_release .description {
  color: #575757;
  margin-bottom: 3px; }

.media_release .link {
  margin-bottom: 15px; }
  .media_release .link a {
    color: #169CF7; }
  .media_release .link a:hover {
    color: #169CF7;
    opacity: 0.8; }
  .media_release .link a:active {
    color: #066fb6;
    opacity: 1; }
  .media_release .link i {
    margin-bottom: -3px; }

.article_section_title {
  padding-top: 20px; }

.article_date {
  color: #575757; }

.article_buttons {
  margin-top: 15px;
  padding-bottom: 20px; }
  .article_buttons a {
    color: #169CF7; }
  .article_buttons a:active {
    color: #066fb6; }
  .article_buttons i {
    margin-bottom: -3px; }

.article_download {
  margin-bottom: 20px; }
  .article_download a {
    color: #169CF7; }

.article_separator {
  display: none; }

.sustainability_section {
  padding: 25px 0;
  position: relative;
  text-align: center; }

.question_section {
  background: #f7f7f7; }

#media_releases_box {
  position: relative;
  padding: 25px 0;
  margin-top: 40px; }
  #media_releases_box > div {
    z-index: 10; }
  #media_releases_box .background {
    background-color: #F7F7F7;
    width: 100%;
    height: 230px;
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: 5; }

@media (min-width: 767px) {
  #about_main_section .text_image {
    font-size: 50px; }
    #about_main_section .text_image h1 {
      font-size: 50px; }
    #about_main_section .text_image p {
      font-size: 24px; }
  .result_media_releases {
    width: 80%;
    margin-left: 50%;
    transform: translateX(-50%); }
  .article_page {
    width: 80%;
    margin-left: 50%;
    transform: translateX(-50%); }
  .back_container {
    display: none; }
  .article_separator {
    display: block;
    height: 25px; }
  .title_section {
    background: #fff;
    padding-top: 20px;
    padding-bottom: 0px; }
    .title_section h2 {
      font-size: 40px; }
  .filter_box {
    position: relative;
    height: 128px; }
    .filter_box .filter_year {
      position: absolute;
      right: 0px; }
    .filter_box .results_text {
      position: absolute; }
    .filter_box .filter_title p {
      line-height: 1; }
  .results_text {
    text-align: left; }
    .results_text h5 {
      margin-top: 35px;
      font-size: 30px; }
  .media_releases {
    margin-bottom: 35px; }
  .media_release .title {
    font-size: 22px;
    font-weight: 500; }
  .sustainability_section {
    text-align: left; }
    .sustainability_section .sustainability_image_box {
      margin-right: 16.666667%; }
    .sustainability_section .sustainability_image {
      float: right;
      width: auto; }
    .sustainability_section .sustainability_text_section {
      margin-left: 16.666667%;
      position: absolute;
      top: 50%;
      transform: translate(0, -50%);
      left: 0%; }
  .question_section p {
    padding-right: 10%;
    padding-left: 10%; }
  #media_releases_box {
    margin-bottom: 95px; }
    #media_releases_box .media_releases_text {
      margin-top: 12px; }
    #media_releases_box .media_releases_image {
      width: 350px;
      margin-top: 12px; }
    #media_releases_box .background {
      width: 61.5%;
      bottom: -25px; } }

@media (max-width: 991px) {
  #media_releases_box .media_releases_image {
    width: 250px !important; } }

/* engineers_facility_managers */
.case_studies_item {
  position: relative;
  max-width: 500px;
  margin-top: 10px;
  padding: 0; }
  .case_studies_item h4 {
    font-size: 1.45rem !important; }
  .case_studies_item .black_wash {
    opacity: 0 !important; }

.case_studies_title_section {
  margin-top: 20px; }

.case_studies_background_image {
  width: 100%; }

.case_studies_items {
  width: 90%;
  margin-left: 50%;
  transform: translateX(-50%); }
  .case_studies_items .header_container {
    min-height: 178px; }
    .case_studies_items .header_container .responsive_src {
      margin-bottom: 15px;
      height: 178px !important; }

.hot_water_section .login_link {
  margin-bottom: 20px; }

.hot_water_section .blocks_link_red i {
  margin-bottom: -3px; }

.engineers_section {
  margin-bottom: 25px; }

#hydraulic_consultants_section {
  position: relative; }

.for_plumbers_background_image {
  width: 100%; }

.text_image {
  color: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-right: -50%;
  transform: translate(-50%, -50%); }

#pool_heating_section {
  padding: 25px 0; }

#technical_advise_section {
  padding: 25px 0; }

#autodesk_section {
  background: #b1e5e6;
  padding: 25px 0; }

#case_studies_section {
  padding: 25px 0; }

#pool_heating_section {
  background: #f7f7f7;
  padding: 25px 0; }

#aquaculture_section {
  padding: 25px 0; }

#innovation_section {
  padding: 25px 0; }

.case_studies_filter {
  width: 100%;
  padding-left: 25px;
  padding-right: 25px;
  margin: 0 auto;
  position: relative;
  max-width: 540px;
  margin-top: 50px;
  padding: 0; }
  .case_studies_filter h3 {
    text-align: center; }

.case_studies_items {
  width: 100%;
  padding-left: 25px;
  padding-right: 25px;
  margin-left: 50%;
  transform: translateX(-50%); }
  .case_studies_items .header_container {
    padding-bottom: 20px; }
    .case_studies_items .header_container h4 {
      font-size: 2rem !important;
      padding-top: 20px; }
    .case_studies_items .header_container h5 {
      color: #868e96;
      padding-bottom: 8px;
      line-height: 20px; }
    .case_studies_items .header_container .category {
      display: none; }
    .case_studies_items .header_container .description {
      padding-top: 20px;
      font-size: 1.1rem; }
      .case_studies_items .header_container .description p {
        font-size: 1.1rem; }
    .case_studies_items .header_container a {
      font-size: 18px;
      text-decoration: underline;
      cursor: pointer; }
    .case_studies_items .header_container .responsive_src {
      margin-bottom: 25px;
      height: 176px !important; }
  .case_studies_items hr:last-child {
    display: none; }

@media (min-width: 767px) {
  .case_studies_page {
    width: 80%;
    margin: 0 auto;
    margin-bottom: 25px; }
  .case_studies_filter {
    width: 70%;
    margin: 0 auto;
    position: relative;
    max-width: 540px;
    margin-top: 50px;
    padding: 0; }
    .case_studies_filter h3 {
      text-align: center; }
  .case_studies_items {
    width: 70%;
    margin-left: 50%;
    transform: translateX(-50%); }
    .case_studies_items .header_container {
      padding-bottom: 20px; }
      .case_studies_items .header_container h4 {
        font-size: 2rem !important;
        padding-top: 20px; }
      .case_studies_items .header_container h5 {
        color: #868e96;
        padding-bottom: 8px;
        line-height: 20px; }
      .case_studies_items .header_container .category {
        display: none; }
      .case_studies_items .header_container .description {
        padding-top: 20px;
        font-size: 1.1rem; }
        .case_studies_items .header_container .description p {
          font-size: 1.1rem; }
      .case_studies_items .header_container a {
        font-size: 18px;
        text-decoration: underline;
        cursor: pointer; }
      .case_studies_items .header_container .responsive_src {
        margin-bottom: 25px;
        height: 176px !important; }
  #technical_advise_section {
    position: relative;
    padding: 45px 0px; }
    #technical_advise_section .technical_advise_image_box {
      margin-left: 16.666667%; }
    #technical_advise_section .technical_advise_description {
      margin-right: 16.666667%;
      position: absolute;
      top: 50%;
      transform: translate(0, -50%);
      right: 0%; }
    #technical_advise_section .technical_advise_image {
      width: 200px;
      padding: 0px 0px;
      margin-top: -10px; }
  #case_studies_section {
    position: relative;
    padding: 45px 0px; }
    #case_studies_section .case_studies_image_box {
      margin-right: 16.666667%; }
    #case_studies_section .case_studies_description {
      margin-left: 16.666667%;
      position: absolute;
      top: 50%;
      transform: translate(0, -50%);
      left: 0%; }
    #case_studies_section .case_studies_image {
      width: 200px;
      padding: 10px 0px; }
  #innovation_section {
    position: relative;
    padding: 0px 0px;
    height: 380px; }
    #innovation_section .innovation_image_box {
      margin-left: 16.666667%;
      margin-top: 190px;
      transform: translateY(-50%); }
      #innovation_section .innovation_image_box .handbook_image {
        padding: 0px 0px; }
    #innovation_section .innovation_description {
      position: absolute;
      top: 50%;
      transform: translate(0, -50%);
      right: 0%;
      background: white;
      height: 380px; }
      #innovation_section .innovation_description .innovation_description_text {
        margin-top: 190px;
        transform: translateY(-50%);
        padding-left: 20px;
        padding-right: 20px; }
    #innovation_section .innovation_image {
      width: auto; }
  #pool_heating_section {
    padding: 50px 0; }
  #autodesk_section {
    padding: 50px 0; } }

/* offers_and_incentives */
.offers_main_title {
  background-color: #f7f7f7;
  padding: 10px 0; }

.offers_main_title h2 {
  margin-bottom: 0rem; }

.offers_text {
  padding: 25px 0; }

.offer_states {
  width: 100%;
  max-width: 850px;
  margin-left: 50%;
  transform: translateX(-50%); }

.offer_state {
  display: block; }

.no_state {
  display: none;
  text-align: center;
  padding: 35px 0; }

.bg-lightblue {
  background-color: #B1E5E6; }

.bg-black {
  background-color: #333; }

.select_offers_state {
  position: relative;
  z-index: 1; }

.offer_details {
  position: relative;
  width: 105%;
  height: 423px;
  text-align: center;
  margin-left: 50%;
  transform: translateX(-50%);
  margin-bottom: 35px; }
  .offer_details .offer_image {
    margin-top: 25px;
    margin-bottom: 25px;
    width: 80%; }
  .offer_details .offer_image_background {
    width: 100%;
    height: 100%;
    opacity: 0.5; }
  .offer_details .badge-primary {
    color: #fff;
    background: #169CF7;
    border-radius: 29px;
    width: 58px;
    height: 58px;
    margin-bottom: 0;
    padding: 0;
    position: absolute;
    font-size: 1em;
    padding-top: 10px;
    text-align: center;
    font-weight: normal;
    line-height: 18px;
    top: 25px;
    right: 35px; }
  .offer_details h2, .offer_details h5, .offer_details p {
    width: 85%;
    margin-left: 50%;
    transform: translateX(-50%); }
  .offer_details a {
    text-decoration: none; }
  .offer_details .bottom {
    position: absolute;
    width: 100%;
    bottom: 5px;
    left: 0px; }
  .offer_details .bottom_black {
    color: #333; }
  .offer_details .bottom_white {
    color: #fff; }

@media (min-width: 576px) {
  .offer_details {
    position: relative;
    width: 387px;
    height: 423px;
    text-align: center;
    margin-left: 50%;
    transform: translateX(-50%);
    margin-bottom: 35px; }
  .offers_main_title {
    background-color: transparent;
    padding: 10px 0;
    padding-top: 25px;
    padding-bottom: 0px; }
  .offers_main_title h2 {
    font-size: 2.75rem;
    margin-bottom: 0rem; }
  .select_offers_state {
    max-width: 500px;
    margin-left: 50%;
    transform: translateX(-50%); } }

.offers_section .outside .item {
  margin-top: 60px;
  margin-bottom: 60px;
  background: #fff; }
  .offers_section .outside .item .image {
    padding-left: 0;
    padding-right: 0; }
  .offers_section .outside .item .description {
    padding-left: 0;
    padding-right: 0;
    padding-top: 30px;
    padding-bottom: 0; }
    .offers_section .outside .item .description .title {
      margin-bottom: 1rem; }
    .offers_section .outside .item .description .date {
      font-size: 14px;
      color: #B5B5B5;
      margin-top: 1rem;
      margin-bottom: 1rem; }
    .offers_section .outside .item .description .text {
      font-size: 16px;
      color: #666666;
      margin-bottom: 30px; }

@media (min-width: 767px) {
  .offers_section .outside .item {
    margin-top: 80px;
    margin-bottom: 80px;
    background: #fff;
    min-height: 300px; }
    .offers_section .outside .item .image {
      padding-left: 0;
      padding-right: 0; }
      .offers_section .outside .item .image img {
        width: 100%;
        max-width: 445px; }
    .offers_section .outside .item .description {
      padding-left: 38px;
      padding-right: 38px;
      padding-top: 0;
      padding-bottom: 0; }
      .offers_section .outside .item .description a:hover {
        text-decoration: none; }
      .offers_section .outside .item .description .title:hover {
        text-decoration: none; }
      .offers_section .outside .item .description .date {
        font-size: 14px;
        color: #B5B5B5;
        margin-top: 1rem;
        margin-bottom: 1rem; }
      .offers_section .outside .item .description .text {
        font-size: 16px;
        color: #666666;
        margin-bottom: 30px; } }

/* help */
.help_page_title {
  padding: 20px 0; }

.hot_water_section {
  background-color: #169CF7; }
  .hot_water_section h2 {
    color: white; }
  .hot_water_section p {
    color: white; }

.collapse_section {
  padding: 25px 0; }

.troubleshooting_page {
  margin-bottom: 20px; }
  .troubleshooting_page .troubleshooting_search {
    position: relative;
    padding-bottom: 20px; }
    .troubleshooting_page .troubleshooting_search input {
      padding-left: 40px; }
    .troubleshooting_page .troubleshooting_search i {
      position: absolute;
      margin-top: -26px;
      margin-left: 17px; }
  .troubleshooting_page .troubleshooting_accordion {
    padding-top: 20px; }
    .troubleshooting_page .troubleshooting_accordion .card-body {
      color: #868e96; }

.faq_page {
  margin-bottom: 20px; }
  .faq_page .faq_filter_accordion h5 a {
    color: #868e96; }
  .faq_page .faq_filter_accordion h5 a:hover {
    color: #868e96; }
  .faq_page .faq_filter_accordion .clear_all {
    text-align: center;
    border-top: 1px solid rgba(0, 0, 0, 0.125);
    border-bottom: 1px solid rgba(0, 0, 0, 0.125);
    margin-left: -16px;
    margin-right: -16px;
    padding-top: 15px;
    padding-bottom: 15px; }
    .faq_page .faq_filter_accordion .clear_all a {
      color: #333; }
    .faq_page .faq_filter_accordion .clear_all a:hover {
      color: #333; }
  .faq_page .faq_filter_accordion .product_category {
    padding-top: 10px;
    color: #868e96; }
    .faq_page .faq_filter_accordion .product_category label {
      position: relative;
      margin-left: 30px;
      width: 100%;
      color: #333; }
      .faq_page .faq_filter_accordion .product_category label input {
        top: 50%;
        transform: translateY(-50%);
        position: absolute;
        margin-left: -25px; }
  .faq_page .faq_accordion {
    margin-top: 0px; }
    .faq_page .faq_accordion .group_name {
      margin-top: 20px; }
    .faq_page .faq_accordion .card-body {
      color: #868e96; }

.accordion_rheem {
  padding-top: 0; }
  .accordion_rheem .card-body {
    color: #868e96;
    padding: 1rem; }
    .accordion_rheem .card-body .short_description {
      color: #333; }
  .accordion_rheem .box_product_model {
    color: #333; }
  .accordion_rheem .box_product_compare {
    color: #333; }

.help_link {
  color: #169CF7;
  text-decoration: underline;
  text-transform: uppercase; }

.help_link:hover {
  color: #169CF7;
  opacity: 0.8;
  text-decoration: underline; }

.help_link:active {
  color: #066fb6;
  opacity: 1;
  text-decoration: underline; }

.installation_guide_box {
  border: 1px solid rgba(0, 0, 0, 0.125);
  border-radius: 0.15rem;
  width: 80%;
  margin-left: 50%;
  transform: translateX(-50%);
  padding: 20px; }
  .installation_guide_box .search_by_name {
    position: relative;
    margin-bottom: 25px; }
    .installation_guide_box .search_by_name input {
      padding-left: 30px; }
    .installation_guide_box .search_by_name i {
      position: absolute;
      margin-left: 12px;
      margin-top: -25px; }

@media (max-width: 567px) {
  .installation_guide_box {
    width: 100%; } }

.stcs_section {
  padding: 20px 0 25px 0; }

.veecs_section {
  padding: 20px 0 25px 0; }

.offer_section {
  padding: 20px 0 25px 0; }

#accordion .calculator {
  position: relative;
  z-index: 15; }
  #accordion .calculator .hot_water_heater_type_container {
    z-index: 17; }
  #accordion .calculator .hot_water_heater_sub_category_container {
    z-index: 16; }

a.link_red {
  color: #169CF7;
  text-decoration: underline; }

a.link_red:hover {
  opacity: 0.8; }

a.link_red:active {
  color: #066fb6;
  opacity: 1; }

.text_gray, .text_gray p, .text_gray li {
  color: rgba(0, 0, 0, 0.6) !important; }

.text_black, .text_black p, .text_black li {
  color: #000; }

.hot_water_heater_sub_category,
.hot_water_heater_product {
  display: none; }

.stcs_calculator_box {
  display: none; }
  .stcs_calculator_box .stcs_calculator_box_1 {
    background-color: rgba(0, 0, 0, 0.2);
    text-align: center;
    padding: 12px; }
  .stcs_calculator_box .stcs_calculator_box_2 {
    background-color: #f7f7f7;
    padding: 12px; }

.rcc_results .result_box .result_text {
  padding: 22px !important; }
  .rcc_results .result_box .result_text .result_hot_water_heater {
    font-size: 22px !important;
    line-height: 34px !important;
    color: #333 !important;
    height: 36px;
    overflow: hidden; }
  .rcc_results .result_box .result_text .result_annual_cost p {
    font-size: 16px !important;
    line-height: 20px !important;
    color: #333 !important; }
  .rcc_results .result_box .result_text .result_annual_cost .result_annual_running_cost {
    font-size: 22px !important;
    margin-top: -25px; }
  .rcc_results .result_box .result_text .result_tariff {
    color: #333 !important; }

.max-width-500 {
  max-width: 500px;
  width: 100%;
  padding-left: 15px;
  padding-right: 15px; }

.rcc_calculator .validation {
  color: #169CF7;
  text-align: center; }

.rcc_calculator .collapse_section .card {
  width: 100%; }
  .rcc_calculator .collapse_section .card .card-body {
    font-size: 14px;
    color: #808080;
    font-style: italic; }
    .rcc_calculator .collapse_section .card .card-body p {
      font-size: 14px; }

.rcc_calculator .result_box {
  position: relative;
  min-height: 190px;
  width: 100%;
  max-width: 500px;
  background: #fff;
  margin-left: 50%;
  transform: translateX(-50%);
  margin-bottom: 20px;
  border: solid 1px rgba(0, 0, 0, 0.2); }
  .rcc_calculator .result_box .result_text {
    padding: 30px; }
    .rcc_calculator .result_box .result_text .result_hot_water_heater {
      font-size: 22px;
      line-height: 5px; }
    .rcc_calculator .result_box .result_text .result_tariff {
      font-size: 15px;
      line-height: 0; }
    .rcc_calculator .result_box .result_text .result_annual_cost {
      margin-top: 40px; }
      .rcc_calculator .result_box .result_text .result_annual_cost p {
        font-size: 16px;
        line-height: 10px; }
      .rcc_calculator .result_box .result_text .result_annual_cost .result_annual_running_cost {
        font-size: 22px;
        float: right;
        margin-top: -30px; }
      .rcc_calculator .result_box .result_text .result_annual_cost p:nth-child(3), .rcc_calculator .result_box .result_text .result_annual_cost p:nth-child(4), .rcc_calculator .result_box .result_text .result_annual_cost p:last-child {
        font-size: 13px !important; }
  .rcc_calculator .result_box .result_image {
    position: relative;
    overflow: hidden; }
    .rcc_calculator .result_box .result_image img {
      position: absolute;
      width: 100%;
      left: 50%;
      top: 50%;
      transform: translate(-50%, -50%); }
  .rcc_calculator .result_box .result_bg {
    position: absolute;
    width: 100%;
    height: 75px;
    background: transparent; }

.rcc_calculator .rcc_accordion_title {
  line-height: 1; }

@media (max-width: 567px) {
  .result_annual_running_cost {
    margin-top: 0 !important;
    float: none !important; } }

@media (min-width: 767px) {
  .troubleshooting_page {
    width: 80%;
    margin-left: 50%;
    transform: translateX(-50%);
    margin-bottom: 50px; }
    .troubleshooting_page .troubleshooting_search input {
      padding: 15px;
      padding-left: 40px; }
    .troubleshooting_page .troubleshooting_search i {
      margin-top: -26px; }
  .faq_page {
    width: 80%;
    margin-left: 50%;
    transform: translateX(-50%);
    margin-bottom: 50px; }
    .faq_page .faq_accordion {
      margin-top: 0px; }
  .stcs_section {
    padding: 48px 0 35px 0; }
    .stcs_section p, .stcs_section a, .stcs_section ul {
      padding-right: 10%;
      padding-left: 10%; }
    .stcs_section ul li {
      line-height: 2; }
  .veecs_section {
    padding: 48px 0 0px 0; }
    .veecs_section p, .veecs_section a, .veecs_section ul {
      padding-right: 10%;
      padding-left: 10%; }
    .veecs_section p a {
      padding-right: 0;
      padding-left: 0; }
    .veecs_section ul li {
      line-height: 2; }
  .offer_section {
    padding: 48px 0 0px 0; }
    .offer_section p, .offer_section ul {
      padding-right: 10%;
      padding-left: 10%; }
    .offer_section ul li {
      line-height: 2; }
  .offer_item .offer_text {
    max-width: 38% !important; }
  .stcs_calculator {
    margin-left: 50%;
    transform: translateX(-50%);
    width: 80%; } }

/* search */
.search_page .search_bar {
  position: relative; }
  .search_page .search_bar form {
    margin-bottom: 0; }
  .search_page .search_bar input {
    border: 1px solid #D1D2D4;
    border-radius: 50px;
    padding: 25px 25px 25px 50px; }
  .search_page .search_bar img {
    position: absolute;
    top: 18px;
    left: 23px; }

.search_page .search_results {
  padding-top: 60px; }
  .search_page .search_results h3 {
    font-size: 24px; }
  .search_page .search_results nav {
    padding-top: 15px; }
    .search_page .search_results nav .nav-tabs {
      width: 100%;
      border-bottom: solid 2px #D1D2D4; }
      .search_page .search_results nav .nav-tabs .nav-item {
        width: 50%;
        text-transform: none;
        font-size: 16px; }
      .search_page .search_results nav .nav-tabs .nav-item.active {
        border-bottom: solid 4px #169CF7; }

.search_page .search_item {
  position: relative;
  padding-top: 35px;
  padding-bottom: 35px;
  border-top: 2px solid #D1D2D4; }
  .search_page .search_item .search_image {
    position: relative;
    width: 170px;
    height: 170px;
    display: inline-block;
    vertical-align: top;
    border: 2px solid #d1d2d4;
    margin-right: 25px;
    margin-bottom: 30px; }
    .search_page .search_item .search_image img {
      max-width: 130px;
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%); }
  .search_page .search_item .search_text {
    position: relative;
    width: 100%;
    display: block; }
    .search_page .search_item .search_text h4 {
      font-size: 20px;
      margin-bottom: 20px; }
      .search_page .search_item .search_text h4 a {
        color: #333;
        font-size: 20px; }
      .search_page .search_item .search_text h4 a:hover {
        text-decoration: none; }
    .search_page .search_item .search_text p {
      color: #666666; }

.search_page #nav-pages .search_item .search_text {
  width: 100%; }

.search_page .search_item:first-child {
  border-top: 0; }

.search_page .no_results {
  margin-top: 35px; }
  .search_page .no_results h4 {
    font-size: 20px;
    margin-bottom: 20px; }
  .search_page .no_results p {
    color: #333;
    margin-bottom: 20px; }

@media (min-width: 767px) {
  .search_page .search_results {
    padding-top: 80px; }
  .search_page .search_item .search_image {
    margin-bottom: 0; }
  .search_page .search_item .search_text {
    width: calc(100% - 200px);
    display: inline-block; } }

/* lp_hot_water */
.page_lp_hot_water .lp_section {
  margin-bottom: 0; }

.page_lp_hot_water .lp_hot_water_red_banner {
  position: relative !important;
  width: auto !important;
  padding: 0px 0px 0px 0px !important; }

.page_lp_hot_water .lp_hot_water_red_banner {
  color: #fff;
  background: #169CF7;
  padding: 100px 0;
  overflow: hidden;
  height: auto;
  width: 100%;
  max-width: 1440px;
  position: absolute;
  z-index: 10;
  transition-timing-function: ease-in;
  -moz-transition-timing-function: ease-in;
  -webkit-transition-timing-function: ease-in;
  -o-transition-transition-timing-function: ease-in;
  -moz-transition-duration: .5s;
  -webkit-transition-duration: .5s;
  -o-transition-duration: .5s;
  transition-duration: .5s; }
  .page_lp_hot_water .lp_hot_water_red_banner a.toggle_action {
    position: absolute;
    width: 14px;
    height: 14px;
    top: 18px;
    right: 13px;
    z-index: 10; }
  .page_lp_hot_water .lp_hot_water_red_banner a.expand_action {
    background-image: url(../images/hot_water_plus.png); }
  .page_lp_hot_water .lp_hot_water_red_banner a.collapse_action {
    background-image: url(../images/hot_water_minus.png);
    height: 2px;
    top: 25px; }
  .page_lp_hot_water .lp_hot_water_red_banner h3 {
    font-size: 1.25em;
    text-transform: none; }
  .page_lp_hot_water .lp_hot_water_red_banner .btn {
    margin-top: 0px;
    margin-bottom: 25px;
    padding: 8px 25px;
    font-size: 1em; }

.page_lp_hot_water .lp_hot_water_red_banner.animated.fadeIn {
  animation-duration: 3s; }

.page_lp_hot_water .lp_hot_water_red_banner.animated.fadeOut {
  animation-duration: 3s; }

.page_lp_hot_water .lp_hot_water_red_banner.collapsed {
  height: 50px;
  padding: 0px 0;
  transition-timing-function: ease-in;
  -moz-transition-timing-function: ease-in;
  -webkit-transition-timing-function: ease-in;
  -o-transition-transition-timing-function: ease-in;
  -moz-transition-duration: .5s;
  -webkit-transition-duration: .5s;
  -o-transition-duration: .5s;
  transition-duration: .5s; }

.page_lp_hot_water .hot_water_title {
  margin-top: 12px; }

.page_lp_hot_water .hot_water_button {
  display: block;
  margin-top: 4px; }

@media (max-width: 576px) {
  .page_lp_hot_water .hot_water_title {
    margin-top: 25px; }
  .page_lp_hot_water .hot_water_button {
    display: block; }
  .page_lp_hot_water .lp_hot_water_red_banner.collapsed {
    height: auto; } }

@media (min-width: 576px) {
  .page_lp_hot_water .hot_water_button {
    display: block; }
  .page_lp_hot_water .lp_hot_water_red_banner h2 {
    font-size: 2.25em; }
  .page_lp_hot_water .lp_hot_water_red_banner h3 {
    max-width: 100%;
    margin: 0 auto;
    line-height: 50px; }
  .page_lp_hot_water .lp_hot_water_red_banner .btn {
    margin-top: 0px;
    margin-bottom: 25px; } }

@media (min-width: 767px) {
  .page_lp_hot_water .hot_water_button {
    display: block; }
  .page_lp_hot_water .lp_hot_water_red_banner h3 {
    max-width: 75%; } }

@media (min-width: 991px) {
  .page_lp_hot_water .hot_water_button {
    display: block; }
  .page_lp_hot_water .lp_hot_water_red_banner h3 {
    max-width: 100%; } }

/* animate */
/*!
 * animate.css -http://daneden.me/animate
 * Version - 3.5.1
 * Licensed under the MIT license - http://opensource.org/licenses/MIT
 *
 * Copyright (c) 2016 Daniel Eden
 */
.animated {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both; }

.animated.infinite {
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite; }

.animated.hinge {
  -webkit-animation-duration: 2s;
  animation-duration: 2s; }

.animated.bounceIn, .animated.bounceOut, .animated.flipOutX, .animated.flipOutY {
  -webkit-animation-duration: .75s;
  animation-duration: .75s; }

@-webkit-keyframes bounce {
  0%, 20%, 53%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translateZ(0);
    transform: translateZ(0); }
  40%, 43% {
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0); }
  40%, 43%, 70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06); }
  70% {
    -webkit-transform: translate3d(0, -15px, 0);
    transform: translate3d(0, -15px, 0); }
  90% {
    -webkit-transform: translate3d(0, -4px, 0);
    transform: translate3d(0, -4px, 0); } }

@keyframes bounce {
  0%, 20%, 53%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translateZ(0);
    transform: translateZ(0); }
  40%, 43% {
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0); }
  40%, 43%, 70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06); }
  70% {
    -webkit-transform: translate3d(0, -15px, 0);
    transform: translate3d(0, -15px, 0); }
  90% {
    -webkit-transform: translate3d(0, -4px, 0);
    transform: translate3d(0, -4px, 0); } }

.bounce {
  -webkit-animation-name: bounce;
  animation-name: bounce;
  -webkit-transform-origin: center bottom;
  transform-origin: center bottom; }

@-webkit-keyframes flash {
  0%, 50%, to {
    opacity: 1; }
  25%, 75% {
    opacity: 0; } }

@keyframes flash {
  0%, 50%, to {
    opacity: 1; }
  25%, 75% {
    opacity: 0; } }

.flash {
  -webkit-animation-name: flash;
  animation-name: flash; }

@-webkit-keyframes pulse {
  0% {
    -webkit-transform: scaleX(1);
    transform: scaleX(1); }
  50% {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
    transform: scale3d(1.05, 1.05, 1.05); }
  to {
    -webkit-transform: scaleX(1);
    transform: scaleX(1); } }

@keyframes pulse {
  0% {
    -webkit-transform: scaleX(1);
    transform: scaleX(1); }
  50% {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
    transform: scale3d(1.05, 1.05, 1.05); }
  to {
    -webkit-transform: scaleX(1);
    transform: scaleX(1); } }

.pulse {
  -webkit-animation-name: pulse;
  animation-name: pulse; }

@-webkit-keyframes rubberBand {
  0% {
    -webkit-transform: scaleX(1);
    transform: scaleX(1); }
  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1); }
  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1); }
  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1); }
  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
    transform: scale3d(0.95, 1.05, 1); }
  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
    transform: scale3d(1.05, 0.95, 1); }
  to {
    -webkit-transform: scaleX(1);
    transform: scaleX(1); } }

@keyframes rubberBand {
  0% {
    -webkit-transform: scaleX(1);
    transform: scaleX(1); }
  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1); }
  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1); }
  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1); }
  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
    transform: scale3d(0.95, 1.05, 1); }
  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
    transform: scale3d(1.05, 0.95, 1); }
  to {
    -webkit-transform: scaleX(1);
    transform: scaleX(1); } }

.rubberBand {
  -webkit-animation-name: rubberBand;
  animation-name: rubberBand; }

@-webkit-keyframes shake {
  0%, to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0); }
  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0); }
  20%, 40%, 60%, 80% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0); } }

@keyframes shake {
  0%, to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0); }
  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0); }
  20%, 40%, 60%, 80% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0); } }

.shake {
  -webkit-animation-name: shake;
  animation-name: shake; }

@-webkit-keyframes headShake {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0); }
  6.5% {
    -webkit-transform: translateX(-6px) rotateY(-9deg);
    transform: translateX(-6px) rotateY(-9deg); }
  18.5% {
    -webkit-transform: translateX(5px) rotateY(7deg);
    transform: translateX(5px) rotateY(7deg); }
  31.5% {
    -webkit-transform: translateX(-3px) rotateY(-5deg);
    transform: translateX(-3px) rotateY(-5deg); }
  43.5% {
    -webkit-transform: translateX(2px) rotateY(3deg);
    transform: translateX(2px) rotateY(3deg); }
  50% {
    -webkit-transform: translateX(0);
    transform: translateX(0); } }

@keyframes headShake {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0); }
  6.5% {
    -webkit-transform: translateX(-6px) rotateY(-9deg);
    transform: translateX(-6px) rotateY(-9deg); }
  18.5% {
    -webkit-transform: translateX(5px) rotateY(7deg);
    transform: translateX(5px) rotateY(7deg); }
  31.5% {
    -webkit-transform: translateX(-3px) rotateY(-5deg);
    transform: translateX(-3px) rotateY(-5deg); }
  43.5% {
    -webkit-transform: translateX(2px) rotateY(3deg);
    transform: translateX(2px) rotateY(3deg); }
  50% {
    -webkit-transform: translateX(0);
    transform: translateX(0); } }

.headShake {
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-name: headShake;
  animation-name: headShake; }

@-webkit-keyframes swing {
  20% {
    -webkit-transform: rotate(15deg);
    transform: rotate(15deg); }
  40% {
    -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg); }
  60% {
    -webkit-transform: rotate(5deg);
    transform: rotate(5deg); }
  80% {
    -webkit-transform: rotate(-5deg);
    transform: rotate(-5deg); }
  to {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); } }

@keyframes swing {
  20% {
    -webkit-transform: rotate(15deg);
    transform: rotate(15deg); }
  40% {
    -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg); }
  60% {
    -webkit-transform: rotate(5deg);
    transform: rotate(5deg); }
  80% {
    -webkit-transform: rotate(-5deg);
    transform: rotate(-5deg); }
  to {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); } }

.swing {
  -webkit-transform-origin: top center;
  transform-origin: top center;
  -webkit-animation-name: swing;
  animation-name: swing; }

@-webkit-keyframes tada {
  0% {
    -webkit-transform: scaleX(1);
    transform: scaleX(1); }
  10%, 20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate(-3deg);
    transform: scale3d(0.9, 0.9, 0.9) rotate(-3deg); }
  30%, 50%, 70%, 90% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate(3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate(3deg); }
  40%, 60%, 80% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate(-3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate(-3deg); }
  to {
    -webkit-transform: scaleX(1);
    transform: scaleX(1); } }

@keyframes tada {
  0% {
    -webkit-transform: scaleX(1);
    transform: scaleX(1); }
  10%, 20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate(-3deg);
    transform: scale3d(0.9, 0.9, 0.9) rotate(-3deg); }
  30%, 50%, 70%, 90% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate(3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate(3deg); }
  40%, 60%, 80% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate(-3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate(-3deg); }
  to {
    -webkit-transform: scaleX(1);
    transform: scaleX(1); } }

.tada {
  -webkit-animation-name: tada;
  animation-name: tada; }

@-webkit-keyframes wobble {
  0% {
    -webkit-transform: none;
    transform: none; }
  15% {
    -webkit-transform: translate3d(-25%, 0, 0) rotate(-5deg);
    transform: translate3d(-25%, 0, 0) rotate(-5deg); }
  30% {
    -webkit-transform: translate3d(20%, 0, 0) rotate(3deg);
    transform: translate3d(20%, 0, 0) rotate(3deg); }
  45% {
    -webkit-transform: translate3d(-15%, 0, 0) rotate(-3deg);
    transform: translate3d(-15%, 0, 0) rotate(-3deg); }
  60% {
    -webkit-transform: translate3d(10%, 0, 0) rotate(2deg);
    transform: translate3d(10%, 0, 0) rotate(2deg); }
  75% {
    -webkit-transform: translate3d(-5%, 0, 0) rotate(-1deg);
    transform: translate3d(-5%, 0, 0) rotate(-1deg); }
  to {
    -webkit-transform: none;
    transform: none; } }

@keyframes wobble {
  0% {
    -webkit-transform: none;
    transform: none; }
  15% {
    -webkit-transform: translate3d(-25%, 0, 0) rotate(-5deg);
    transform: translate3d(-25%, 0, 0) rotate(-5deg); }
  30% {
    -webkit-transform: translate3d(20%, 0, 0) rotate(3deg);
    transform: translate3d(20%, 0, 0) rotate(3deg); }
  45% {
    -webkit-transform: translate3d(-15%, 0, 0) rotate(-3deg);
    transform: translate3d(-15%, 0, 0) rotate(-3deg); }
  60% {
    -webkit-transform: translate3d(10%, 0, 0) rotate(2deg);
    transform: translate3d(10%, 0, 0) rotate(2deg); }
  75% {
    -webkit-transform: translate3d(-5%, 0, 0) rotate(-1deg);
    transform: translate3d(-5%, 0, 0) rotate(-1deg); }
  to {
    -webkit-transform: none;
    transform: none; } }

.wobble {
  -webkit-animation-name: wobble;
  animation-name: wobble; }

@-webkit-keyframes jello {
  0%, 11.1%, to {
    -webkit-transform: none;
    transform: none; }
  22.2% {
    -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
    transform: skewX(-12.5deg) skewY(-12.5deg); }
  33.3% {
    -webkit-transform: skewX(6.25deg) skewY(6.25deg);
    transform: skewX(6.25deg) skewY(6.25deg); }
  44.4% {
    -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
    transform: skewX(-3.125deg) skewY(-3.125deg); }
  55.5% {
    -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
    transform: skewX(1.5625deg) skewY(1.5625deg); }
  66.6% {
    -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
    transform: skewX(-0.78125deg) skewY(-0.78125deg); }
  77.7% {
    -webkit-transform: skewX(0.39062deg) skewY(0.39062deg);
    transform: skewX(0.39062deg) skewY(0.39062deg); }
  88.8% {
    -webkit-transform: skewX(-0.19531deg) skewY(-0.19531deg);
    transform: skewX(-0.19531deg) skewY(-0.19531deg); } }

@keyframes jello {
  0%, 11.1%, to {
    -webkit-transform: none;
    transform: none; }
  22.2% {
    -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
    transform: skewX(-12.5deg) skewY(-12.5deg); }
  33.3% {
    -webkit-transform: skewX(6.25deg) skewY(6.25deg);
    transform: skewX(6.25deg) skewY(6.25deg); }
  44.4% {
    -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
    transform: skewX(-3.125deg) skewY(-3.125deg); }
  55.5% {
    -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
    transform: skewX(1.5625deg) skewY(1.5625deg); }
  66.6% {
    -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
    transform: skewX(-0.78125deg) skewY(-0.78125deg); }
  77.7% {
    -webkit-transform: skewX(0.39062deg) skewY(0.39062deg);
    transform: skewX(0.39062deg) skewY(0.39062deg); }
  88.8% {
    -webkit-transform: skewX(-0.19531deg) skewY(-0.19531deg);
    transform: skewX(-0.19531deg) skewY(-0.19531deg); } }

.jello {
  -webkit-animation-name: jello;
  animation-name: jello;
  -webkit-transform-origin: center;
  transform-origin: center; }

@-webkit-keyframes bounceIn {
  0%, 20%, 40%, 60%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); }
  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1); }
  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03); }
  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97); }
  to {
    opacity: 1;
    -webkit-transform: scaleX(1);
    transform: scaleX(1); } }

@keyframes bounceIn {
  0%, 20%, 40%, 60%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); }
  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1); }
  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03); }
  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97); }
  to {
    opacity: 1;
    -webkit-transform: scaleX(1);
    transform: scaleX(1); } }

.bounceIn {
  -webkit-animation-name: bounceIn;
  animation-name: bounceIn; }

@-webkit-keyframes bounceInDown {
  0%, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -3000px, 0);
    transform: translate3d(0, -3000px, 0); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, 25px, 0);
    transform: translate3d(0, 25px, 0); }
  75% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0); }
  90% {
    -webkit-transform: translate3d(0, 5px, 0);
    transform: translate3d(0, 5px, 0); }
  to {
    -webkit-transform: none;
    transform: none; } }

@keyframes bounceInDown {
  0%, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -3000px, 0);
    transform: translate3d(0, -3000px, 0); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, 25px, 0);
    transform: translate3d(0, 25px, 0); }
  75% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0); }
  90% {
    -webkit-transform: translate3d(0, 5px, 0);
    transform: translate3d(0, 5px, 0); }
  to {
    -webkit-transform: none;
    transform: none; } }

.bounceInDown {
  -webkit-animation-name: bounceInDown;
  animation-name: bounceInDown; }

@-webkit-keyframes bounceInLeft {
  0%, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-3000px, 0, 0);
    transform: translate3d(-3000px, 0, 0); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(25px, 0, 0);
    transform: translate3d(25px, 0, 0); }
  75% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0); }
  90% {
    -webkit-transform: translate3d(5px, 0, 0);
    transform: translate3d(5px, 0, 0); }
  to {
    -webkit-transform: none;
    transform: none; } }

@keyframes bounceInLeft {
  0%, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-3000px, 0, 0);
    transform: translate3d(-3000px, 0, 0); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(25px, 0, 0);
    transform: translate3d(25px, 0, 0); }
  75% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0); }
  90% {
    -webkit-transform: translate3d(5px, 0, 0);
    transform: translate3d(5px, 0, 0); }
  to {
    -webkit-transform: none;
    transform: none; } }

.bounceInLeft {
  -webkit-animation-name: bounceInLeft;
  animation-name: bounceInLeft; }

@-webkit-keyframes bounceInRight {
  0%, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(3000px, 0, 0);
    transform: translate3d(3000px, 0, 0); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(-25px, 0, 0);
    transform: translate3d(-25px, 0, 0); }
  75% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0); }
  90% {
    -webkit-transform: translate3d(-5px, 0, 0);
    transform: translate3d(-5px, 0, 0); }
  to {
    -webkit-transform: none;
    transform: none; } }

@keyframes bounceInRight {
  0%, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(3000px, 0, 0);
    transform: translate3d(3000px, 0, 0); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(-25px, 0, 0);
    transform: translate3d(-25px, 0, 0); }
  75% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0); }
  90% {
    -webkit-transform: translate3d(-5px, 0, 0);
    transform: translate3d(-5px, 0, 0); }
  to {
    -webkit-transform: none;
    transform: none; } }

.bounceInRight {
  -webkit-animation-name: bounceInRight;
  animation-name: bounceInRight; }

@-webkit-keyframes bounceInUp {
  0%, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 3000px, 0);
    transform: translate3d(0, 3000px, 0); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0); }
  75% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0); }
  90% {
    -webkit-transform: translate3d(0, -5px, 0);
    transform: translate3d(0, -5px, 0); }
  to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0); } }

@keyframes bounceInUp {
  0%, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 3000px, 0);
    transform: translate3d(0, 3000px, 0); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0); }
  75% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0); }
  90% {
    -webkit-transform: translate3d(0, -5px, 0);
    transform: translate3d(0, -5px, 0); }
  to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0); } }

.bounceInUp {
  -webkit-animation-name: bounceInUp;
  animation-name: bounceInUp; }

@-webkit-keyframes bounceOut {
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9); }
  50%, 55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1); }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); } }

@keyframes bounceOut {
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9); }
  50%, 55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1); }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); } }

.bounceOut {
  -webkit-animation-name: bounceOut;
  animation-name: bounceOut; }

@-webkit-keyframes bounceOutDown {
  20% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0); }
  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0); } }

@keyframes bounceOutDown {
  20% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0); }
  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0); } }

.bounceOutDown {
  -webkit-animation-name: bounceOutDown;
  animation-name: bounceOutDown; }

@-webkit-keyframes bounceOutLeft {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(20px, 0, 0);
    transform: translate3d(20px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0); } }

@keyframes bounceOutLeft {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(20px, 0, 0);
    transform: translate3d(20px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0); } }

.bounceOutLeft {
  -webkit-animation-name: bounceOutLeft;
  animation-name: bounceOutLeft; }

@-webkit-keyframes bounceOutRight {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(-20px, 0, 0);
    transform: translate3d(-20px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0); } }

@keyframes bounceOutRight {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(-20px, 0, 0);
    transform: translate3d(-20px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0); } }

.bounceOutRight {
  -webkit-animation-name: bounceOutRight;
  animation-name: bounceOutRight; }

@-webkit-keyframes bounceOutUp {
  20% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0); }
  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, 20px, 0);
    transform: translate3d(0, 20px, 0); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0); } }

@keyframes bounceOutUp {
  20% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0); }
  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, 20px, 0);
    transform: translate3d(0, 20px, 0); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0); } }

.bounceOutUp {
  -webkit-animation-name: bounceOutUp;
  animation-name: bounceOutUp; }

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0; }
  to {
    opacity: 1; } }

@keyframes fadeIn {
  0% {
    opacity: 0; }
  to {
    opacity: 1; } }

.fadeIn {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn; }

@-webkit-keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

@keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

.fadeInDown {
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown; }

@-webkit-keyframes fadeInDownBig {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

@keyframes fadeInDownBig {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

.fadeInDownBig {
  -webkit-animation-name: fadeInDownBig;
  animation-name: fadeInDownBig; }

@-webkit-keyframes fadeInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

@keyframes fadeInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

.fadeInLeft {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft; }

@-webkit-keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

@keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

.fadeInLeftBig {
  -webkit-animation-name: fadeInLeftBig;
  animation-name: fadeInLeftBig; }

@-webkit-keyframes fadeInRight {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

@keyframes fadeInRight {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

.fadeInRight {
  -webkit-animation-name: fadeInRight;
  animation-name: fadeInRight; }

@-webkit-keyframes fadeInRightBig {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

@keyframes fadeInRightBig {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

.fadeInRightBig {
  -webkit-animation-name: fadeInRightBig;
  animation-name: fadeInRightBig; }

@-webkit-keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

@keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

.fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp; }

@-webkit-keyframes fadeInUpBig {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

@keyframes fadeInUpBig {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

.fadeInUpBig {
  -webkit-animation-name: fadeInUpBig;
  animation-name: fadeInUpBig; }

@-webkit-keyframes fadeOut {
  0% {
    opacity: 1; }
  to {
    opacity: 0; } }

@keyframes fadeOut {
  0% {
    opacity: 1; }
  to {
    opacity: 0; } }

.fadeOut {
  -webkit-animation-name: fadeOut;
  animation-name: fadeOut; }

@-webkit-keyframes fadeOutDown {
  0% {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0); } }

@keyframes fadeOutDown {
  0% {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0); } }

.fadeOutDown {
  -webkit-animation-name: fadeOutDown;
  animation-name: fadeOutDown; }

@-webkit-keyframes fadeOutDownBig {
  0% {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0); } }

@keyframes fadeOutDownBig {
  0% {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0); } }

.fadeOutDownBig {
  -webkit-animation-name: fadeOutDownBig;
  animation-name: fadeOutDownBig; }

@-webkit-keyframes fadeOutLeft {
  0% {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0); } }

@keyframes fadeOutLeft {
  0% {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0); } }

.fadeOutLeft {
  -webkit-animation-name: fadeOutLeft;
  animation-name: fadeOutLeft; }

@-webkit-keyframes fadeOutLeftBig {
  0% {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0); } }

@keyframes fadeOutLeftBig {
  0% {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0); } }

.fadeOutLeftBig {
  -webkit-animation-name: fadeOutLeftBig;
  animation-name: fadeOutLeftBig; }

@-webkit-keyframes fadeOutRight {
  0% {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0); } }

@keyframes fadeOutRight {
  0% {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0); } }

.fadeOutRight {
  -webkit-animation-name: fadeOutRight;
  animation-name: fadeOutRight; }

@-webkit-keyframes fadeOutRightBig {
  0% {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0); } }

@keyframes fadeOutRightBig {
  0% {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0); } }

.fadeOutRightBig {
  -webkit-animation-name: fadeOutRightBig;
  animation-name: fadeOutRightBig; }

@-webkit-keyframes fadeOutUp {
  0% {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0); } }

@keyframes fadeOutUp {
  0% {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0); } }

.fadeOutUp {
  -webkit-animation-name: fadeOutUp;
  animation-name: fadeOutUp; }

@-webkit-keyframes fadeOutUpBig {
  0% {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0); } }

@keyframes fadeOutUpBig {
  0% {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0); } }

.fadeOutUpBig {
  -webkit-animation-name: fadeOutUpBig;
  animation-name: fadeOutUpBig; }

@-webkit-keyframes flip {
  0% {
    -webkit-transform: perspective(400px) rotateY(-1turn);
    transform: perspective(400px) rotateY(-1turn); }
  0%, 40% {
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out; }
  40% {
    -webkit-transform: perspective(400px) translateZ(150px) rotateY(-190deg);
    transform: perspective(400px) translateZ(150px) rotateY(-190deg); }
  50% {
    -webkit-transform: perspective(400px) translateZ(150px) rotateY(-170deg);
    transform: perspective(400px) translateZ(150px) rotateY(-170deg); }
  50%, 80% {
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  80% {
    -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
    transform: perspective(400px) scale3d(0.95, 0.95, 0.95); }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; } }

@keyframes flip {
  0% {
    -webkit-transform: perspective(400px) rotateY(-1turn);
    transform: perspective(400px) rotateY(-1turn); }
  0%, 40% {
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out; }
  40% {
    -webkit-transform: perspective(400px) translateZ(150px) rotateY(-190deg);
    transform: perspective(400px) translateZ(150px) rotateY(-190deg); }
  50% {
    -webkit-transform: perspective(400px) translateZ(150px) rotateY(-170deg);
    transform: perspective(400px) translateZ(150px) rotateY(-170deg); }
  50%, 80% {
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  80% {
    -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
    transform: perspective(400px) scale3d(0.95, 0.95, 0.95); }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; } }

.animated.flip {
  -webkit-backface-visibility: visible;
  backface-visibility: visible;
  -webkit-animation-name: flip;
  animation-name: flip; }

@-webkit-keyframes flipInX {
  0% {
    -webkit-transform: perspective(400px) rotateX(90deg);
    transform: perspective(400px) rotateX(90deg);
    opacity: 0; }
  0%, 40% {
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  40% {
    -webkit-transform: perspective(400px) rotateX(-20deg);
    transform: perspective(400px) rotateX(-20deg); }
  60% {
    -webkit-transform: perspective(400px) rotateX(10deg);
    transform: perspective(400px) rotateX(10deg);
    opacity: 1; }
  80% {
    -webkit-transform: perspective(400px) rotateX(-5deg);
    transform: perspective(400px) rotateX(-5deg); }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); } }

@keyframes flipInX {
  0% {
    -webkit-transform: perspective(400px) rotateX(90deg);
    transform: perspective(400px) rotateX(90deg);
    opacity: 0; }
  0%, 40% {
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  40% {
    -webkit-transform: perspective(400px) rotateX(-20deg);
    transform: perspective(400px) rotateX(-20deg); }
  60% {
    -webkit-transform: perspective(400px) rotateX(10deg);
    transform: perspective(400px) rotateX(10deg);
    opacity: 1; }
  80% {
    -webkit-transform: perspective(400px) rotateX(-5deg);
    transform: perspective(400px) rotateX(-5deg); }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); } }

.flipInX {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipInX;
  animation-name: flipInX; }

@-webkit-keyframes flipInY {
  0% {
    -webkit-transform: perspective(400px) rotateY(90deg);
    transform: perspective(400px) rotateY(90deg);
    opacity: 0; }
  0%, 40% {
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  40% {
    -webkit-transform: perspective(400px) rotateY(-20deg);
    transform: perspective(400px) rotateY(-20deg); }
  60% {
    -webkit-transform: perspective(400px) rotateY(10deg);
    transform: perspective(400px) rotateY(10deg);
    opacity: 1; }
  80% {
    -webkit-transform: perspective(400px) rotateY(-5deg);
    transform: perspective(400px) rotateY(-5deg); }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); } }

@keyframes flipInY {
  0% {
    -webkit-transform: perspective(400px) rotateY(90deg);
    transform: perspective(400px) rotateY(90deg);
    opacity: 0; }
  0%, 40% {
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  40% {
    -webkit-transform: perspective(400px) rotateY(-20deg);
    transform: perspective(400px) rotateY(-20deg); }
  60% {
    -webkit-transform: perspective(400px) rotateY(10deg);
    transform: perspective(400px) rotateY(10deg);
    opacity: 1; }
  80% {
    -webkit-transform: perspective(400px) rotateY(-5deg);
    transform: perspective(400px) rotateY(-5deg); }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); } }

.flipInY {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipInY;
  animation-name: flipInY; }

@-webkit-keyframes flipOutX {
  0% {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); }
  30% {
    -webkit-transform: perspective(400px) rotateX(-20deg);
    transform: perspective(400px) rotateX(-20deg);
    opacity: 1; }
  to {
    -webkit-transform: perspective(400px) rotateX(90deg);
    transform: perspective(400px) rotateX(90deg);
    opacity: 0; } }

@keyframes flipOutX {
  0% {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); }
  30% {
    -webkit-transform: perspective(400px) rotateX(-20deg);
    transform: perspective(400px) rotateX(-20deg);
    opacity: 1; }
  to {
    -webkit-transform: perspective(400px) rotateX(90deg);
    transform: perspective(400px) rotateX(90deg);
    opacity: 0; } }

.flipOutX {
  -webkit-animation-name: flipOutX;
  animation-name: flipOutX;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important; }

@-webkit-keyframes flipOutY {
  0% {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); }
  30% {
    -webkit-transform: perspective(400px) rotateY(-15deg);
    transform: perspective(400px) rotateY(-15deg);
    opacity: 1; }
  to {
    -webkit-transform: perspective(400px) rotateY(90deg);
    transform: perspective(400px) rotateY(90deg);
    opacity: 0; } }

@keyframes flipOutY {
  0% {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); }
  30% {
    -webkit-transform: perspective(400px) rotateY(-15deg);
    transform: perspective(400px) rotateY(-15deg);
    opacity: 1; }
  to {
    -webkit-transform: perspective(400px) rotateY(90deg);
    transform: perspective(400px) rotateY(90deg);
    opacity: 0; } }

.flipOutY {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipOutY;
  animation-name: flipOutY; }

@-webkit-keyframes lightSpeedIn {
  0% {
    -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
    transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0; }
  60% {
    -webkit-transform: skewX(20deg);
    transform: skewX(20deg); }
  60%, 80% {
    opacity: 1; }
  80% {
    -webkit-transform: skewX(-5deg);
    transform: skewX(-5deg); }
  to {
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }

@keyframes lightSpeedIn {
  0% {
    -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
    transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0; }
  60% {
    -webkit-transform: skewX(20deg);
    transform: skewX(20deg); }
  60%, 80% {
    opacity: 1; }
  80% {
    -webkit-transform: skewX(-5deg);
    transform: skewX(-5deg); }
  to {
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }

.lightSpeedIn {
  -webkit-animation-name: lightSpeedIn;
  animation-name: lightSpeedIn;
  -webkit-animation-timing-function: ease-out;
  animation-timing-function: ease-out; }

@-webkit-keyframes lightSpeedOut {
  0% {
    opacity: 1; }
  to {
    -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
    transform: translate3d(100%, 0, 0) skewX(30deg);
    opacity: 0; } }

@keyframes lightSpeedOut {
  0% {
    opacity: 1; }
  to {
    -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
    transform: translate3d(100%, 0, 0) skewX(30deg);
    opacity: 0; } }

.lightSpeedOut {
  -webkit-animation-name: lightSpeedOut;
  animation-name: lightSpeedOut;
  -webkit-animation-timing-function: ease-in;
  animation-timing-function: ease-in; }

@-webkit-keyframes rotateIn {
  0% {
    transform-origin: center;
    -webkit-transform: rotate(-200deg);
    transform: rotate(-200deg);
    opacity: 0; }
  0%, to {
    -webkit-transform-origin: center; }
  to {
    transform-origin: center;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }

@keyframes rotateIn {
  0% {
    transform-origin: center;
    -webkit-transform: rotate(-200deg);
    transform: rotate(-200deg);
    opacity: 0; }
  0%, to {
    -webkit-transform-origin: center; }
  to {
    transform-origin: center;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }

.rotateIn {
  -webkit-animation-name: rotateIn;
  animation-name: rotateIn; }

@-webkit-keyframes rotateInDownLeft {
  0% {
    transform-origin: left bottom;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    opacity: 0; }
  0%, to {
    -webkit-transform-origin: left bottom; }
  to {
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }

@keyframes rotateInDownLeft {
  0% {
    transform-origin: left bottom;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    opacity: 0; }
  0%, to {
    -webkit-transform-origin: left bottom; }
  to {
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }

.rotateInDownLeft {
  -webkit-animation-name: rotateInDownLeft;
  animation-name: rotateInDownLeft; }

@-webkit-keyframes rotateInDownRight {
  0% {
    transform-origin: right bottom;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    opacity: 0; }
  0%, to {
    -webkit-transform-origin: right bottom; }
  to {
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }

@keyframes rotateInDownRight {
  0% {
    transform-origin: right bottom;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    opacity: 0; }
  0%, to {
    -webkit-transform-origin: right bottom; }
  to {
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }

.rotateInDownRight {
  -webkit-animation-name: rotateInDownRight;
  animation-name: rotateInDownRight; }

@-webkit-keyframes rotateInUpLeft {
  0% {
    transform-origin: left bottom;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    opacity: 0; }
  0%, to {
    -webkit-transform-origin: left bottom; }
  to {
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }

@keyframes rotateInUpLeft {
  0% {
    transform-origin: left bottom;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    opacity: 0; }
  0%, to {
    -webkit-transform-origin: left bottom; }
  to {
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }

.rotateInUpLeft {
  -webkit-animation-name: rotateInUpLeft;
  animation-name: rotateInUpLeft; }

@-webkit-keyframes rotateInUpRight {
  0% {
    transform-origin: right bottom;
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg);
    opacity: 0; }
  0%, to {
    -webkit-transform-origin: right bottom; }
  to {
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }

@keyframes rotateInUpRight {
  0% {
    transform-origin: right bottom;
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg);
    opacity: 0; }
  0%, to {
    -webkit-transform-origin: right bottom; }
  to {
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }

.rotateInUpRight {
  -webkit-animation-name: rotateInUpRight;
  animation-name: rotateInUpRight; }

@-webkit-keyframes rotateOut {
  0% {
    transform-origin: center;
    opacity: 1; }
  0%, to {
    -webkit-transform-origin: center; }
  to {
    transform-origin: center;
    -webkit-transform: rotate(200deg);
    transform: rotate(200deg);
    opacity: 0; } }

@keyframes rotateOut {
  0% {
    transform-origin: center;
    opacity: 1; }
  0%, to {
    -webkit-transform-origin: center; }
  to {
    transform-origin: center;
    -webkit-transform: rotate(200deg);
    transform: rotate(200deg);
    opacity: 0; } }

.rotateOut {
  -webkit-animation-name: rotateOut;
  animation-name: rotateOut; }

@-webkit-keyframes rotateOutDownLeft {
  0% {
    transform-origin: left bottom;
    opacity: 1; }
  0%, to {
    -webkit-transform-origin: left bottom; }
  to {
    transform-origin: left bottom;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    opacity: 0; } }

@keyframes rotateOutDownLeft {
  0% {
    transform-origin: left bottom;
    opacity: 1; }
  0%, to {
    -webkit-transform-origin: left bottom; }
  to {
    transform-origin: left bottom;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    opacity: 0; } }

.rotateOutDownLeft {
  -webkit-animation-name: rotateOutDownLeft;
  animation-name: rotateOutDownLeft; }

@-webkit-keyframes rotateOutDownRight {
  0% {
    transform-origin: right bottom;
    opacity: 1; }
  0%, to {
    -webkit-transform-origin: right bottom; }
  to {
    transform-origin: right bottom;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    opacity: 0; } }

@keyframes rotateOutDownRight {
  0% {
    transform-origin: right bottom;
    opacity: 1; }
  0%, to {
    -webkit-transform-origin: right bottom; }
  to {
    transform-origin: right bottom;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    opacity: 0; } }

.rotateOutDownRight {
  -webkit-animation-name: rotateOutDownRight;
  animation-name: rotateOutDownRight; }

@-webkit-keyframes rotateOutUpLeft {
  0% {
    transform-origin: left bottom;
    opacity: 1; }
  0%, to {
    -webkit-transform-origin: left bottom; }
  to {
    transform-origin: left bottom;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    opacity: 0; } }

@keyframes rotateOutUpLeft {
  0% {
    transform-origin: left bottom;
    opacity: 1; }
  0%, to {
    -webkit-transform-origin: left bottom; }
  to {
    transform-origin: left bottom;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    opacity: 0; } }

.rotateOutUpLeft {
  -webkit-animation-name: rotateOutUpLeft;
  animation-name: rotateOutUpLeft; }

@-webkit-keyframes rotateOutUpRight {
  0% {
    transform-origin: right bottom;
    opacity: 1; }
  0%, to {
    -webkit-transform-origin: right bottom; }
  to {
    transform-origin: right bottom;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    opacity: 0; } }

@keyframes rotateOutUpRight {
  0% {
    transform-origin: right bottom;
    opacity: 1; }
  0%, to {
    -webkit-transform-origin: right bottom; }
  to {
    transform-origin: right bottom;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    opacity: 0; } }

.rotateOutUpRight {
  -webkit-animation-name: rotateOutUpRight;
  animation-name: rotateOutUpRight; }

@-webkit-keyframes hinge {
  0% {
    transform-origin: top left; }
  0%, 20%, 60% {
    -webkit-transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out; }
  20%, 60% {
    -webkit-transform: rotate(80deg);
    transform: rotate(80deg);
    transform-origin: top left; }
  40%, 80% {
    -webkit-transform: rotate(60deg);
    transform: rotate(60deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    opacity: 1; }
  to {
    -webkit-transform: translate3d(0, 700px, 0);
    transform: translate3d(0, 700px, 0);
    opacity: 0; } }

@keyframes hinge {
  0% {
    transform-origin: top left; }
  0%, 20%, 60% {
    -webkit-transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out; }
  20%, 60% {
    -webkit-transform: rotate(80deg);
    transform: rotate(80deg);
    transform-origin: top left; }
  40%, 80% {
    -webkit-transform: rotate(60deg);
    transform: rotate(60deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    opacity: 1; }
  to {
    -webkit-transform: translate3d(0, 700px, 0);
    transform: translate3d(0, 700px, 0);
    opacity: 0; } }

.hinge {
  -webkit-animation-name: hinge;
  animation-name: hinge; }

@-webkit-keyframes rollIn {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0) rotate(-120deg);
    transform: translate3d(-100%, 0, 0) rotate(-120deg); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

@keyframes rollIn {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0) rotate(-120deg);
    transform: translate3d(-100%, 0, 0) rotate(-120deg); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

.rollIn {
  -webkit-animation-name: rollIn;
  animation-name: rollIn; }

@-webkit-keyframes rollOut {
  0% {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0) rotate(120deg);
    transform: translate3d(100%, 0, 0) rotate(120deg); } }

@keyframes rollOut {
  0% {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0) rotate(120deg);
    transform: translate3d(100%, 0, 0) rotate(120deg); } }

.rollOut {
  -webkit-animation-name: rollOut;
  animation-name: rollOut; }

@-webkit-keyframes zoomIn {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); }
  50% {
    opacity: 1; } }

@keyframes zoomIn {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); }
  50% {
    opacity: 1; } }

.zoomIn {
  -webkit-animation-name: zoomIn;
  animation-name: zoomIn; }

@-webkit-keyframes zoomInDown {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

@keyframes zoomInDown {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

.zoomInDown {
  -webkit-animation-name: zoomInDown;
  animation-name: zoomInDown; }

@-webkit-keyframes zoomInLeft {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

@keyframes zoomInLeft {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

.zoomInLeft {
  -webkit-animation-name: zoomInLeft;
  animation-name: zoomInLeft; }

@-webkit-keyframes zoomInRight {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

@keyframes zoomInRight {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

.zoomInRight {
  -webkit-animation-name: zoomInRight;
  animation-name: zoomInRight; }

@-webkit-keyframes zoomInUp {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

@keyframes zoomInUp {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

.zoomInUp {
  -webkit-animation-name: zoomInUp;
  animation-name: zoomInUp; }

@-webkit-keyframes zoomOut {
  0% {
    opacity: 1; }
  50% {
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); }
  50%, to {
    opacity: 0; } }

@keyframes zoomOut {
  0% {
    opacity: 1; }
  50% {
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); }
  50%, to {
    opacity: 0; } }

.zoomOut {
  -webkit-animation-name: zoomOut;
  animation-name: zoomOut; }

@-webkit-keyframes zoomOutDown {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

@keyframes zoomOutDown {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

.zoomOutDown {
  -webkit-animation-name: zoomOutDown;
  animation-name: zoomOutDown; }

@-webkit-keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
    transform: scale(0.1) translate3d(-2000px, 0, 0);
    -webkit-transform-origin: left center;
    transform-origin: left center; } }

@keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
    transform: scale(0.1) translate3d(-2000px, 0, 0);
    -webkit-transform-origin: left center;
    transform-origin: left center; } }

.zoomOutLeft {
  -webkit-animation-name: zoomOutLeft;
  animation-name: zoomOutLeft; }

@-webkit-keyframes zoomOutRight {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
    transform: scale(0.1) translate3d(2000px, 0, 0);
    -webkit-transform-origin: right center;
    transform-origin: right center; } }

@keyframes zoomOutRight {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
    transform: scale(0.1) translate3d(2000px, 0, 0);
    -webkit-transform-origin: right center;
    transform-origin: right center; } }

.zoomOutRight {
  -webkit-animation-name: zoomOutRight;
  animation-name: zoomOutRight; }

@-webkit-keyframes zoomOutUp {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

@keyframes zoomOutUp {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

.zoomOutUp {
  -webkit-animation-name: zoomOutUp;
  animation-name: zoomOutUp; }

@-webkit-keyframes slideInDown {
  0% {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    visibility: visible; }
  to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0); } }

@keyframes slideInDown {
  0% {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    visibility: visible; }
  to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0); } }

.slideInDown {
  -webkit-animation-name: slideInDown;
  animation-name: slideInDown; }

@-webkit-keyframes slideInLeft {
  0% {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible; }
  to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0); } }

@keyframes slideInLeft {
  0% {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible; }
  to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0); } }

.slideInLeft {
  -webkit-animation-name: slideInLeft;
  animation-name: slideInLeft; }

@-webkit-keyframes slideInRight {
  0% {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: visible; }
  to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0); } }

@keyframes slideInRight {
  0% {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: visible; }
  to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0); } }

.slideInRight {
  -webkit-animation-name: slideInRight;
  animation-name: slideInRight; }

@-webkit-keyframes slideInUp {
  0% {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    visibility: visible; }
  to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0); } }

@keyframes slideInUp {
  0% {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    visibility: visible; }
  to {
    -webkit-transform: translateZ(0);
    transform: translateZ(0); } }

.slideInUp {
  -webkit-animation-name: slideInUp;
  animation-name: slideInUp; }

@-webkit-keyframes slideOutDown {
  0% {
    -webkit-transform: translateZ(0);
    transform: translateZ(0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0); } }

@keyframes slideOutDown {
  0% {
    -webkit-transform: translateZ(0);
    transform: translateZ(0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0); } }

.slideOutDown {
  -webkit-animation-name: slideOutDown;
  animation-name: slideOutDown; }

@-webkit-keyframes slideOutLeft {
  0% {
    -webkit-transform: translateZ(0);
    transform: translateZ(0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0); } }

@keyframes slideOutLeft {
  0% {
    -webkit-transform: translateZ(0);
    transform: translateZ(0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0); } }

.slideOutLeft {
  -webkit-animation-name: slideOutLeft;
  animation-name: slideOutLeft; }

@-webkit-keyframes slideOutRight {
  0% {
    -webkit-transform: translateZ(0);
    transform: translateZ(0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0); } }

@keyframes slideOutRight {
  0% {
    -webkit-transform: translateZ(0);
    transform: translateZ(0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0); } }

.slideOutRight {
  -webkit-animation-name: slideOutRight;
  animation-name: slideOutRight; }

@-webkit-keyframes slideOutUp {
  0% {
    -webkit-transform: translateZ(0);
    transform: translateZ(0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0); } }

@keyframes slideOutUp {
  0% {
    -webkit-transform: translateZ(0);
    transform: translateZ(0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0); } }

.slideOutUp {
  -webkit-animation-name: slideOutUp;
  animation-name: slideOutUp; }

/* jquery-ui */
/*! jQuery UI - v1.12.1 - 2016-09-14
* http://jqueryui.com
* Includes: core.css, accordion.css, autocomplete.css, menu.css, button.css, controlgroup.css, checkboxradio.css, datepicker.css, dialog.css, draggable.css, resizable.css, progressbar.css, selectable.css, selectmenu.css, slider.css, sortable.css, spinner.css, tabs.css, tooltip.css, theme.css
* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Arial%2CHelvetica%2Csans-serif&fsDefault=1em&fwDefault=normal&cornerRadius=3px&bgColorHeader=e9e9e9&bgTextureHeader=flat&borderColorHeader=dddddd&fcHeader=333333&iconColorHeader=444444&bgColorContent=ffffff&bgTextureContent=flat&borderColorContent=dddddd&fcContent=333333&iconColorContent=444444&bgColorDefault=f6f6f6&bgTextureDefault=flat&borderColorDefault=c5c5c5&fcDefault=454545&iconColorDefault=777777&bgColorHover=ededed&bgTextureHover=flat&borderColorHover=cccccc&fcHover=2b2b2b&iconColorHover=555555&bgColorActive=007fff&bgTextureActive=flat&borderColorActive=003eff&fcActive=ffffff&iconColorActive=ffffff&bgColorHighlight=fffa90&bgTextureHighlight=flat&borderColorHighlight=dad55e&fcHighlight=777620&iconColorHighlight=777620&bgColorError=fddfdf&bgTextureError=flat&borderColorError=f1a899&fcError=5f3f3f&iconColorError=cc0000&bgColorOverlay=aaaaaa&bgTextureOverlay=flat&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=666666&bgTextureShadow=flat&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=5px&offsetTopShadow=0px&offsetLeftShadow=0px&cornerRadiusShadow=8px
* Copyright jQuery Foundation and other contributors; Licensed MIT */
/* Layout helpers
----------------------------------*/
.ui-helper-hidden {
  display: none; }

.ui-helper-hidden-accessible {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px; }

.ui-helper-reset {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  line-height: 1.3;
  text-decoration: none;
  font-size: 100%;
  list-style: none; }

.ui-helper-clearfix:before,
.ui-helper-clearfix:after {
  content: "";
  display: table;
  border-collapse: collapse; }

.ui-helper-clearfix:after {
  clear: both; }

.ui-helper-zfix {
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
  opacity: 0;
  filter: Alpha(Opacity=0);
  /* support: IE8 */ }

.ui-front {
  z-index: 100; }

/* Interaction Cues
----------------------------------*/
.ui-state-disabled {
  cursor: default !important;
  pointer-events: none; }

/* Icons
----------------------------------*/
.ui-icon {
  display: inline-block;
  vertical-align: middle;
  margin-top: -.25em;
  position: relative;
  text-indent: -99999px;
  overflow: hidden;
  background-repeat: no-repeat; }

.ui-widget-icon-block {
  left: 50%;
  margin-left: -8px;
  display: block; }

/* Misc visuals
----------------------------------*/
/* Overlays */
.ui-widget-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

.ui-accordion .ui-accordion-header {
  display: block;
  cursor: pointer;
  position: relative;
  margin: 2px 0 0 0;
  padding: .5em .5em .5em .7em;
  font-size: 100%; }

.ui-accordion .ui-accordion-content {
  padding: 1em 2.2em;
  border-top: 0;
  overflow: auto; }

.ui-autocomplete {
  position: absolute;
  top: 0;
  left: 0;
  cursor: default; }

.ui-menu {
  list-style: none;
  padding: 0;
  margin: 0;
  display: block;
  outline: 0; }

.ui-menu .ui-menu {
  position: absolute; }

.ui-menu .ui-menu-item {
  margin: 0;
  cursor: pointer;
  /* support: IE10, see #8844 */
  list-style-image: url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"); }

.ui-menu .ui-menu-item-wrapper {
  position: relative;
  padding: 3px 1em 3px .4em; }

.ui-menu .ui-menu-divider {
  margin: 5px 0;
  height: 0;
  font-size: 0;
  line-height: 0;
  border-width: 1px 0 0 0; }

.ui-menu .ui-state-focus,
.ui-menu .ui-state-active {
  margin: -1px; }

/* icon support */
.ui-menu-icons {
  position: relative; }

.ui-menu-icons .ui-menu-item-wrapper {
  padding-left: 2em; }

/* left-aligned */
.ui-menu .ui-icon {
  position: absolute;
  top: 0;
  bottom: 0;
  left: .2em;
  margin: auto 0; }

/* right-aligned */
.ui-menu .ui-menu-icon {
  left: auto;
  right: 0; }

.ui-button {
  padding: .4em 1em;
  display: inline-block;
  position: relative;
  line-height: normal;
  margin-right: .1em;
  cursor: pointer;
  vertical-align: middle;
  text-align: center;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  /* Support: IE <= 11 */
  overflow: visible; }

.ui-button,
.ui-button:link,
.ui-button:visited,
.ui-button:hover,
.ui-button:active {
  text-decoration: none; }

/* to make room for the icon, a width needs to be set here */
.ui-button-icon-only {
  width: 2em;
  box-sizing: border-box;
  text-indent: -9999px;
  white-space: nowrap; }

/* no icon support for input elements */
input.ui-button.ui-button-icon-only {
  text-indent: 0; }

/* button icon element(s) */
.ui-button-icon-only .ui-icon {
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -8px;
  margin-left: -8px; }

.ui-button.ui-icon-notext .ui-icon {
  padding: 0;
  width: 2.1em;
  height: 2.1em;
  text-indent: -9999px;
  white-space: nowrap; }

input.ui-button.ui-icon-notext .ui-icon {
  width: auto;
  height: auto;
  text-indent: 0;
  white-space: normal;
  padding: .4em 1em; }

/* workarounds */
/* Support: Firefox 5 - 40 */
input.ui-button::-moz-focus-inner,
button.ui-button::-moz-focus-inner {
  border: 0;
  padding: 0; }

.ui-controlgroup {
  vertical-align: middle;
  display: inline-block; }

.ui-controlgroup > .ui-controlgroup-item {
  float: left;
  margin-left: 0;
  margin-right: 0; }

.ui-controlgroup > .ui-controlgroup-item:focus,
.ui-controlgroup > .ui-controlgroup-item.ui-visual-focus {
  z-index: 9999; }

.ui-controlgroup-vertical > .ui-controlgroup-item {
  display: block;
  float: none;
  width: 100%;
  margin-top: 0;
  margin-bottom: 0;
  text-align: left; }

.ui-controlgroup-vertical .ui-controlgroup-item {
  box-sizing: border-box; }

.ui-controlgroup .ui-controlgroup-label {
  padding: .4em 1em; }

.ui-controlgroup .ui-controlgroup-label span {
  font-size: 80%; }

.ui-controlgroup-horizontal .ui-controlgroup-label + .ui-controlgroup-item {
  border-left: none; }

.ui-controlgroup-vertical .ui-controlgroup-label + .ui-controlgroup-item {
  border-top: none; }

.ui-controlgroup-horizontal .ui-controlgroup-label.ui-widget-content {
  border-right: none; }

.ui-controlgroup-vertical .ui-controlgroup-label.ui-widget-content {
  border-bottom: none; }

/* Spinner specific style fixes */
.ui-controlgroup-vertical .ui-spinner-input {
  /* Support: IE8 only, Android < 4.4 only */
  width: 75%;
  width: calc( 100% - 2.4em); }

.ui-controlgroup-vertical .ui-spinner .ui-spinner-up {
  border-top-style: solid; }

.ui-checkboxradio-label .ui-icon-background {
  box-shadow: inset 1px 1px 1px #ccc;
  border-radius: .12em;
  border: none; }

.ui-checkboxradio-radio-label .ui-icon-background {
  width: 16px;
  height: 16px;
  border-radius: 1em;
  overflow: visible;
  border: none; }

.ui-checkboxradio-radio-label.ui-checkboxradio-checked .ui-icon,
.ui-checkboxradio-radio-label.ui-checkboxradio-checked:hover .ui-icon {
  background-image: none;
  width: 8px;
  height: 8px;
  border-width: 4px;
  border-style: solid; }

.ui-checkboxradio-disabled {
  pointer-events: none; }

.ui-datepicker {
  width: 17em;
  padding: .2em .2em 0;
  display: none; }

.ui-datepicker .ui-datepicker-header {
  position: relative;
  padding: .2em 0; }

.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
  position: absolute;
  top: 2px;
  width: 1.8em;
  height: 1.8em; }

.ui-datepicker .ui-datepicker-prev-hover,
.ui-datepicker .ui-datepicker-next-hover {
  top: 1px; }

.ui-datepicker .ui-datepicker-prev {
  left: 2px; }

.ui-datepicker .ui-datepicker-next {
  right: 2px; }

.ui-datepicker .ui-datepicker-prev-hover {
  left: 1px; }

.ui-datepicker .ui-datepicker-next-hover {
  right: 1px; }

.ui-datepicker .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-next span {
  display: block;
  position: absolute;
  left: 50%;
  margin-left: -8px;
  top: 50%;
  margin-top: -8px; }

.ui-datepicker .ui-datepicker-title {
  margin: 0 2.3em;
  line-height: 1.8em;
  text-align: center; }

.ui-datepicker .ui-datepicker-title select {
  font-size: 1em;
  margin: 1px 0; }

.ui-datepicker select.ui-datepicker-month,
.ui-datepicker select.ui-datepicker-year {
  width: 45%; }

.ui-datepicker table {
  width: 100%;
  font-size: .9em;
  border-collapse: collapse;
  margin: 0 0 .4em; }

.ui-datepicker th {
  padding: .7em .3em;
  text-align: center;
  font-weight: bold;
  border: 0; }

.ui-datepicker td {
  border: 0;
  padding: 1px; }

.ui-datepicker td span,
.ui-datepicker td a {
  display: block;
  padding: .2em;
  text-align: right;
  text-decoration: none; }

.ui-datepicker .ui-datepicker-buttonpane {
  background-image: none;
  margin: .7em 0 0 0;
  padding: 0 .2em;
  border-left: 0;
  border-right: 0;
  border-bottom: 0; }

.ui-datepicker .ui-datepicker-buttonpane button {
  float: right;
  margin: .5em .2em .4em;
  cursor: pointer;
  padding: .2em .6em .3em .6em;
  width: auto;
  overflow: visible; }

.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current {
  float: left; }

/* with multiple calendars */
.ui-datepicker.ui-datepicker-multi {
  width: auto; }

.ui-datepicker-multi .ui-datepicker-group {
  float: left; }

.ui-datepicker-multi .ui-datepicker-group table {
  width: 95%;
  margin: 0 auto .4em; }

.ui-datepicker-multi-2 .ui-datepicker-group {
  width: 50%; }

.ui-datepicker-multi-3 .ui-datepicker-group {
  width: 33.3%; }

.ui-datepicker-multi-4 .ui-datepicker-group {
  width: 25%; }

.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header {
  border-left-width: 0; }

.ui-datepicker-multi .ui-datepicker-buttonpane {
  clear: left; }

.ui-datepicker-row-break {
  clear: both;
  width: 100%;
  font-size: 0; }

/* RTL support */
.ui-datepicker-rtl {
  direction: rtl; }

.ui-datepicker-rtl .ui-datepicker-prev {
  right: 2px;
  left: auto; }

.ui-datepicker-rtl .ui-datepicker-next {
  left: 2px;
  right: auto; }

.ui-datepicker-rtl .ui-datepicker-prev:hover {
  right: 1px;
  left: auto; }

.ui-datepicker-rtl .ui-datepicker-next:hover {
  left: 1px;
  right: auto; }

.ui-datepicker-rtl .ui-datepicker-buttonpane {
  clear: right; }

.ui-datepicker-rtl .ui-datepicker-buttonpane button {
  float: left; }

.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,
.ui-datepicker-rtl .ui-datepicker-group {
  float: right; }

.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header {
  border-right-width: 0;
  border-left-width: 1px; }

/* Icons */
.ui-datepicker .ui-icon {
  display: block;
  text-indent: -99999px;
  overflow: hidden;
  background-repeat: no-repeat;
  left: .5em;
  top: .3em; }

.ui-dialog {
  position: absolute;
  top: 0;
  left: 0;
  padding: .2em;
  outline: 0; }

.ui-dialog .ui-dialog-titlebar {
  padding: .4em 1em;
  position: relative; }

.ui-dialog .ui-dialog-title {
  float: left;
  margin: .1em 0;
  white-space: nowrap;
  width: 90%;
  overflow: hidden;
  text-overflow: ellipsis; }

.ui-dialog .ui-dialog-titlebar-close {
  position: absolute;
  right: .3em;
  top: 50%;
  width: 20px;
  margin: -10px 0 0 0;
  padding: 1px;
  height: 20px; }

.ui-dialog .ui-dialog-content {
  position: relative;
  border: 0;
  padding: .5em 1em;
  background: none;
  overflow: auto; }

.ui-dialog .ui-dialog-buttonpane {
  text-align: left;
  border-width: 1px 0 0 0;
  background-image: none;
  margin-top: .5em;
  padding: .3em 1em .5em .4em; }

.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset {
  float: right; }

.ui-dialog .ui-dialog-buttonpane button {
  margin: .5em .4em .5em 0;
  cursor: pointer; }

.ui-dialog .ui-resizable-n {
  height: 2px;
  top: 0; }

.ui-dialog .ui-resizable-e {
  width: 2px;
  right: 0; }

.ui-dialog .ui-resizable-s {
  height: 2px;
  bottom: 0; }

.ui-dialog .ui-resizable-w {
  width: 2px;
  left: 0; }

.ui-dialog .ui-resizable-se,
.ui-dialog .ui-resizable-sw,
.ui-dialog .ui-resizable-ne,
.ui-dialog .ui-resizable-nw {
  width: 7px;
  height: 7px; }

.ui-dialog .ui-resizable-se {
  right: 0;
  bottom: 0; }

.ui-dialog .ui-resizable-sw {
  left: 0;
  bottom: 0; }

.ui-dialog .ui-resizable-ne {
  right: 0;
  top: 0; }

.ui-dialog .ui-resizable-nw {
  left: 0;
  top: 0; }

.ui-draggable .ui-dialog-titlebar {
  cursor: move; }

.ui-draggable-handle {
  -ms-touch-action: none;
  touch-action: none; }

.ui-resizable {
  position: relative; }

.ui-resizable-handle {
  position: absolute;
  font-size: 0.1px;
  display: block;
  -ms-touch-action: none;
  touch-action: none; }

.ui-resizable-disabled .ui-resizable-handle,
.ui-resizable-autohide .ui-resizable-handle {
  display: none; }

.ui-resizable-n {
  cursor: n-resize;
  height: 7px;
  width: 100%;
  top: -5px;
  left: 0; }

.ui-resizable-s {
  cursor: s-resize;
  height: 7px;
  width: 100%;
  bottom: -5px;
  left: 0; }

.ui-resizable-e {
  cursor: e-resize;
  width: 7px;
  right: -5px;
  top: 0;
  height: 100%; }

.ui-resizable-w {
  cursor: w-resize;
  width: 7px;
  left: -5px;
  top: 0;
  height: 100%; }

.ui-resizable-se {
  cursor: se-resize;
  width: 12px;
  height: 12px;
  right: 1px;
  bottom: 1px; }

.ui-resizable-sw {
  cursor: sw-resize;
  width: 9px;
  height: 9px;
  left: -5px;
  bottom: -5px; }

.ui-resizable-nw {
  cursor: nw-resize;
  width: 9px;
  height: 9px;
  left: -5px;
  top: -5px; }

.ui-resizable-ne {
  cursor: ne-resize;
  width: 9px;
  height: 9px;
  right: -5px;
  top: -5px; }

.ui-progressbar {
  height: 2em;
  text-align: left;
  overflow: hidden; }

.ui-progressbar .ui-progressbar-value {
  margin: -1px;
  height: 100%; }

.ui-progressbar .ui-progressbar-overlay {
  background: url("data:image/gif;base64,R0lGODlhKAAoAIABAAAAAP///yH/C05FVFNDQVBFMi4wAwEAAAAh+QQJAQABACwAAAAAKAAoAAACkYwNqXrdC52DS06a7MFZI+4FHBCKoDeWKXqymPqGqxvJrXZbMx7Ttc+w9XgU2FB3lOyQRWET2IFGiU9m1frDVpxZZc6bfHwv4c1YXP6k1Vdy292Fb6UkuvFtXpvWSzA+HycXJHUXiGYIiMg2R6W459gnWGfHNdjIqDWVqemH2ekpObkpOlppWUqZiqr6edqqWQAAIfkECQEAAQAsAAAAACgAKAAAApSMgZnGfaqcg1E2uuzDmmHUBR8Qil95hiPKqWn3aqtLsS18y7G1SzNeowWBENtQd+T1JktP05nzPTdJZlR6vUxNWWjV+vUWhWNkWFwxl9VpZRedYcflIOLafaa28XdsH/ynlcc1uPVDZxQIR0K25+cICCmoqCe5mGhZOfeYSUh5yJcJyrkZWWpaR8doJ2o4NYq62lAAACH5BAkBAAEALAAAAAAoACgAAAKVDI4Yy22ZnINRNqosw0Bv7i1gyHUkFj7oSaWlu3ovC8GxNso5fluz3qLVhBVeT/Lz7ZTHyxL5dDalQWPVOsQWtRnuwXaFTj9jVVh8pma9JjZ4zYSj5ZOyma7uuolffh+IR5aW97cHuBUXKGKXlKjn+DiHWMcYJah4N0lYCMlJOXipGRr5qdgoSTrqWSq6WFl2ypoaUAAAIfkECQEAAQAsAAAAACgAKAAAApaEb6HLgd/iO7FNWtcFWe+ufODGjRfoiJ2akShbueb0wtI50zm02pbvwfWEMWBQ1zKGlLIhskiEPm9R6vRXxV4ZzWT2yHOGpWMyorblKlNp8HmHEb/lCXjcW7bmtXP8Xt229OVWR1fod2eWqNfHuMjXCPkIGNileOiImVmCOEmoSfn3yXlJWmoHGhqp6ilYuWYpmTqKUgAAIfkECQEAAQAsAAAAACgAKAAAApiEH6kb58biQ3FNWtMFWW3eNVcojuFGfqnZqSebuS06w5V80/X02pKe8zFwP6EFWOT1lDFk8rGERh1TTNOocQ61Hm4Xm2VexUHpzjymViHrFbiELsefVrn6XKfnt2Q9G/+Xdie499XHd2g4h7ioOGhXGJboGAnXSBnoBwKYyfioubZJ2Hn0RuRZaflZOil56Zp6iioKSXpUAAAh+QQJAQABACwAAAAAKAAoAAACkoQRqRvnxuI7kU1a1UU5bd5tnSeOZXhmn5lWK3qNTWvRdQxP8qvaC+/yaYQzXO7BMvaUEmJRd3TsiMAgswmNYrSgZdYrTX6tSHGZO73ezuAw2uxuQ+BbeZfMxsexY35+/Qe4J1inV0g4x3WHuMhIl2jXOKT2Q+VU5fgoSUI52VfZyfkJGkha6jmY+aaYdirq+lQAACH5BAkBAAEALAAAAAAoACgAAAKWBIKpYe0L3YNKToqswUlvznigd4wiR4KhZrKt9Upqip61i9E3vMvxRdHlbEFiEXfk9YARYxOZZD6VQ2pUunBmtRXo1Lf8hMVVcNl8JafV38aM2/Fu5V16Bn63r6xt97j09+MXSFi4BniGFae3hzbH9+hYBzkpuUh5aZmHuanZOZgIuvbGiNeomCnaxxap2upaCZsq+1kAACH5BAkBAAEALAAAAAAoACgAAAKXjI8By5zf4kOxTVrXNVlv1X0d8IGZGKLnNpYtm8Lr9cqVeuOSvfOW79D9aDHizNhDJidFZhNydEahOaDH6nomtJjp1tutKoNWkvA6JqfRVLHU/QUfau9l2x7G54d1fl995xcIGAdXqMfBNadoYrhH+Mg2KBlpVpbluCiXmMnZ2Sh4GBqJ+ckIOqqJ6LmKSllZmsoq6wpQAAAh+QQJAQABACwAAAAAKAAoAAAClYx/oLvoxuJDkU1a1YUZbJ59nSd2ZXhWqbRa2/gF8Gu2DY3iqs7yrq+xBYEkYvFSM8aSSObE+ZgRl1BHFZNr7pRCavZ5BW2142hY3AN/zWtsmf12p9XxxFl2lpLn1rseztfXZjdIWIf2s5dItwjYKBgo9yg5pHgzJXTEeGlZuenpyPmpGQoKOWkYmSpaSnqKileI2FAAACH5BAkBAAEALAAAAAAoACgAAAKVjB+gu+jG4kORTVrVhRlsnn2dJ3ZleFaptFrb+CXmO9OozeL5VfP99HvAWhpiUdcwkpBH3825AwYdU8xTqlLGhtCosArKMpvfa1mMRae9VvWZfeB2XfPkeLmm18lUcBj+p5dnN8jXZ3YIGEhYuOUn45aoCDkp16hl5IjYJvjWKcnoGQpqyPlpOhr3aElaqrq56Bq7VAAAOw==");
  height: 100%;
  filter: alpha(opacity=25);
  /* support: IE8 */
  opacity: 0.25; }

.ui-progressbar-indeterminate .ui-progressbar-value {
  background-image: none; }

.ui-selectable {
  -ms-touch-action: none;
  touch-action: none; }

.ui-selectable-helper {
  position: absolute;
  z-index: 100;
  border: 1px dotted black; }

.ui-selectmenu-menu {
  padding: 0;
  margin: 0;
  position: absolute;
  top: 0;
  left: 0;
  display: none; }

.ui-selectmenu-menu .ui-menu {
  overflow: auto;
  overflow-x: hidden;
  padding-bottom: 1px; }

.ui-selectmenu-menu .ui-menu .ui-selectmenu-optgroup {
  font-size: 1em;
  font-weight: bold;
  line-height: 1.5;
  padding: 2px 0.4em;
  margin: 0.5em 0 0 0;
  height: auto;
  border: 0; }

.ui-selectmenu-open {
  display: block; }

.ui-selectmenu-text {
  display: block;
  margin-right: 20px;
  overflow: hidden;
  text-overflow: ellipsis; }

.ui-selectmenu-button.ui-button {
  text-align: left;
  white-space: nowrap;
  width: 14em; }

.ui-selectmenu-icon.ui-icon {
  float: right;
  margin-top: 0; }

.ui-slider {
  position: relative;
  text-align: left; }

.ui-slider .ui-slider-handle {
  position: absolute;
  z-index: 2;
  width: 1.2em;
  height: 1.2em;
  cursor: default;
  -ms-touch-action: none;
  touch-action: none; }

.ui-slider .ui-slider-range {
  position: absolute;
  z-index: 1;
  font-size: .7em;
  display: block;
  border: 0;
  background-position: 0 0; }

/* support: IE8 - See #6727 */
.ui-slider.ui-state-disabled .ui-slider-handle,
.ui-slider.ui-state-disabled .ui-slider-range {
  filter: inherit; }

.ui-slider-horizontal {
  height: .8em; }

.ui-slider-horizontal .ui-slider-handle {
  top: -.3em;
  margin-left: -.6em; }

.ui-slider-horizontal .ui-slider-range {
  top: 0;
  height: 100%; }

.ui-slider-horizontal .ui-slider-range-min {
  left: 0; }

.ui-slider-horizontal .ui-slider-range-max {
  right: 0; }

.ui-slider-vertical {
  width: .8em;
  height: 100px; }

.ui-slider-vertical .ui-slider-handle {
  left: -.3em;
  margin-left: 0;
  margin-bottom: -.6em; }

.ui-slider-vertical .ui-slider-range {
  left: 0;
  width: 100%; }

.ui-slider-vertical .ui-slider-range-min {
  bottom: 0; }

.ui-slider-vertical .ui-slider-range-max {
  top: 0; }

.ui-sortable-handle {
  -ms-touch-action: none;
  touch-action: none; }

.ui-spinner {
  position: relative;
  display: inline-block;
  overflow: hidden;
  padding: 0;
  vertical-align: middle; }

.ui-spinner-input {
  border: none;
  background: none;
  color: inherit;
  padding: .222em 0;
  margin: .2em 0;
  vertical-align: middle;
  margin-left: .4em;
  margin-right: 2em; }

.ui-spinner-button {
  width: 1.6em;
  height: 50%;
  font-size: .5em;
  padding: 0;
  margin: 0;
  text-align: center;
  position: absolute;
  cursor: default;
  display: block;
  overflow: hidden;
  right: 0; }

/* more specificity required here to override default borders */
.ui-spinner a.ui-spinner-button {
  border-top-style: none;
  border-bottom-style: none;
  border-right-style: none; }

.ui-spinner-up {
  top: 0; }

.ui-spinner-down {
  bottom: 0; }

.ui-tabs {
  position: relative;
  /* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */
  padding: .2em; }

.ui-tabs .ui-tabs-nav {
  margin: 0;
  padding: .2em .2em 0; }

.ui-tabs .ui-tabs-nav li {
  list-style: none;
  float: left;
  position: relative;
  top: 0;
  margin: 1px .2em 0 0;
  border-bottom-width: 0;
  padding: 0;
  white-space: nowrap; }

.ui-tabs .ui-tabs-nav .ui-tabs-anchor {
  float: left;
  padding: .5em 1em;
  text-decoration: none; }

.ui-tabs .ui-tabs-nav li.ui-tabs-active {
  margin-bottom: -1px;
  padding-bottom: 1px; }

.ui-tabs .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor,
.ui-tabs .ui-tabs-nav li.ui-state-disabled .ui-tabs-anchor,
.ui-tabs .ui-tabs-nav li.ui-tabs-loading .ui-tabs-anchor {
  cursor: text; }

.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor {
  cursor: pointer; }

.ui-tabs .ui-tabs-panel {
  display: block;
  border-width: 0;
  padding: 1em 1.4em;
  background: none; }

.ui-tooltip {
  padding: 8px;
  position: absolute;
  z-index: 9999;
  max-width: 300px; }

body .ui-tooltip {
  border-width: 2px; }

/* Component containers
----------------------------------*/
.ui-widget {
  font-family: Arial,Helvetica,sans-serif;
  font-size: 1em; }

.ui-widget .ui-widget {
  font-size: 1em; }

.ui-widget input,
.ui-widget select,
.ui-widget textarea,
.ui-widget button {
  font-family: Arial,Helvetica,sans-serif;
  font-size: 1em; }

.ui-widget.ui-widget-content {
  border: 1px solid #c5c5c5; }

.ui-widget-content {
  border: 1px solid #dddddd;
  background: #ffffff;
  color: #333333; }

.ui-widget-content a {
  color: #333333; }

.ui-widget-header {
  border: 1px solid #dddddd;
  background: #e9e9e9;
  color: #333333;
  font-weight: bold; }

.ui-widget-header a {
  color: #333333; }

/* Interaction states
----------------------------------*/
.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default,
.ui-button,
html .ui-button.ui-state-disabled:hover,
html .ui-button.ui-state-disabled:active {
  border: 1px solid #c5c5c5;
  background: #f6f6f6;
  font-weight: normal;
  color: #454545; }

.ui-state-default a,
.ui-state-default a:link,
.ui-state-default a:visited,
a.ui-button,
a:link.ui-button,
a:visited.ui-button,
.ui-button {
  color: #454545;
  text-decoration: none; }

.ui-state-hover,
.ui-widget-content .ui-state-hover,
.ui-widget-header .ui-state-hover,
.ui-state-focus,
.ui-widget-content .ui-state-focus,
.ui-widget-header .ui-state-focus,
.ui-button:hover,
.ui-button:focus {
  border: 1px solid #cccccc;
  background: #ededed;
  font-weight: normal;
  color: #2b2b2b; }

.ui-state-hover a,
.ui-state-hover a:hover,
.ui-state-hover a:link,
.ui-state-hover a:visited,
.ui-state-focus a,
.ui-state-focus a:hover,
.ui-state-focus a:link,
.ui-state-focus a:visited,
a.ui-button:hover,
a.ui-button:focus {
  color: #2b2b2b;
  text-decoration: none; }

.ui-visual-focus {
  box-shadow: 0 0 3px 1px #5e9ed6; }

.ui-state-active,
.ui-widget-content .ui-state-active,
.ui-widget-header .ui-state-active,
a.ui-button:active,
.ui-button:active,
.ui-button.ui-state-active:hover {
  border: 1px solid #003eff;
  background: #007fff;
  font-weight: normal;
  color: #ffffff; }

.ui-icon-background,
.ui-state-active .ui-icon-background {
  border: #003eff;
  background-color: #ffffff; }

.ui-state-active a,
.ui-state-active a:link,
.ui-state-active a:visited {
  color: #ffffff;
  text-decoration: none; }

/* Interaction Cues
----------------------------------*/
.ui-state-highlight,
.ui-widget-content .ui-state-highlight,
.ui-widget-header .ui-state-highlight {
  border: 1px solid #dad55e;
  background: #fffa90;
  color: #777620; }

.ui-state-checked {
  border: 1px solid #dad55e;
  background: #fffa90; }

.ui-state-highlight a,
.ui-widget-content .ui-state-highlight a,
.ui-widget-header .ui-state-highlight a {
  color: #777620; }

.ui-state-error,
.ui-widget-content .ui-state-error,
.ui-widget-header .ui-state-error {
  border: 1px solid #f1a899;
  background: #fddfdf;
  color: #5f3f3f; }

.ui-state-error a,
.ui-widget-content .ui-state-error a,
.ui-widget-header .ui-state-error a {
  color: #5f3f3f; }

.ui-state-error-text,
.ui-widget-content .ui-state-error-text,
.ui-widget-header .ui-state-error-text {
  color: #5f3f3f; }

.ui-priority-primary,
.ui-widget-content .ui-priority-primary,
.ui-widget-header .ui-priority-primary {
  font-weight: bold; }

.ui-priority-secondary,
.ui-widget-content .ui-priority-secondary,
.ui-widget-header .ui-priority-secondary {
  opacity: .7;
  filter: Alpha(Opacity=70);
  /* support: IE8 */
  font-weight: normal; }

.ui-state-disabled,
.ui-widget-content .ui-state-disabled,
.ui-widget-header .ui-state-disabled {
  opacity: .35;
  filter: Alpha(Opacity=35);
  /* support: IE8 */
  background-image: none; }

.ui-state-disabled .ui-icon {
  filter: Alpha(Opacity=35);
  /* support: IE8 - See #6059 */ }

/* Icons
----------------------------------*/
/* states and images */
.ui-icon {
  width: 16px;
  height: 16px; }

.ui-icon,
.ui-widget-content .ui-icon {
  background-image: url("images/ui-icons_444444_256x240.png"); }

.ui-widget-header .ui-icon {
  background-image: url("images/ui-icons_444444_256x240.png"); }

.ui-state-hover .ui-icon,
.ui-state-focus .ui-icon,
.ui-button:hover .ui-icon,
.ui-button:focus .ui-icon {
  background-image: url("images/ui-icons_555555_256x240.png"); }

.ui-state-active .ui-icon,
.ui-button:active .ui-icon {
  background-image: url("images/ui-icons_ffffff_256x240.png"); }

.ui-state-highlight .ui-icon,
.ui-button .ui-state-highlight.ui-icon {
  background-image: url("images/ui-icons_777620_256x240.png"); }

.ui-state-error .ui-icon,
.ui-state-error-text .ui-icon {
  background-image: url("images/ui-icons_cc0000_256x240.png"); }

.ui-button .ui-icon {
  background-image: url("images/ui-icons_777777_256x240.png"); }

/* positioning */
.ui-icon-blank {
  background-position: 16px 16px; }

.ui-icon-caret-1-n {
  background-position: 0 0; }

.ui-icon-caret-1-ne {
  background-position: -16px 0; }

.ui-icon-caret-1-e {
  background-position: -32px 0; }

.ui-icon-caret-1-se {
  background-position: -48px 0; }

.ui-icon-caret-1-s {
  background-position: -65px 0; }

.ui-icon-caret-1-sw {
  background-position: -80px 0; }

.ui-icon-caret-1-w {
  background-position: -96px 0; }

.ui-icon-caret-1-nw {
  background-position: -112px 0; }

.ui-icon-caret-2-n-s {
  background-position: -128px 0; }

.ui-icon-caret-2-e-w {
  background-position: -144px 0; }

.ui-icon-triangle-1-n {
  background-position: 0 -16px; }

.ui-icon-triangle-1-ne {
  background-position: -16px -16px; }

.ui-icon-triangle-1-e {
  background-position: -32px -16px; }

.ui-icon-triangle-1-se {
  background-position: -48px -16px; }

.ui-icon-triangle-1-s {
  background-position: -65px -16px; }

.ui-icon-triangle-1-sw {
  background-position: -80px -16px; }

.ui-icon-triangle-1-w {
  background-position: -96px -16px; }

.ui-icon-triangle-1-nw {
  background-position: -112px -16px; }

.ui-icon-triangle-2-n-s {
  background-position: -128px -16px; }

.ui-icon-triangle-2-e-w {
  background-position: -144px -16px; }

.ui-icon-arrow-1-n {
  background-position: 0 -32px; }

.ui-icon-arrow-1-ne {
  background-position: -16px -32px; }

.ui-icon-arrow-1-e {
  background-position: -32px -32px; }

.ui-icon-arrow-1-se {
  background-position: -48px -32px; }

.ui-icon-arrow-1-s {
  background-position: -65px -32px; }

.ui-icon-arrow-1-sw {
  background-position: -80px -32px; }

.ui-icon-arrow-1-w {
  background-position: -96px -32px; }

.ui-icon-arrow-1-nw {
  background-position: -112px -32px; }

.ui-icon-arrow-2-n-s {
  background-position: -128px -32px; }

.ui-icon-arrow-2-ne-sw {
  background-position: -144px -32px; }

.ui-icon-arrow-2-e-w {
  background-position: -160px -32px; }

.ui-icon-arrow-2-se-nw {
  background-position: -176px -32px; }

.ui-icon-arrowstop-1-n {
  background-position: -192px -32px; }

.ui-icon-arrowstop-1-e {
  background-position: -208px -32px; }

.ui-icon-arrowstop-1-s {
  background-position: -224px -32px; }

.ui-icon-arrowstop-1-w {
  background-position: -240px -32px; }

.ui-icon-arrowthick-1-n {
  background-position: 1px -48px; }

.ui-icon-arrowthick-1-ne {
  background-position: -16px -48px; }

.ui-icon-arrowthick-1-e {
  background-position: -32px -48px; }

.ui-icon-arrowthick-1-se {
  background-position: -48px -48px; }

.ui-icon-arrowthick-1-s {
  background-position: -64px -48px; }

.ui-icon-arrowthick-1-sw {
  background-position: -80px -48px; }

.ui-icon-arrowthick-1-w {
  background-position: -96px -48px; }

.ui-icon-arrowthick-1-nw {
  background-position: -112px -48px; }

.ui-icon-arrowthick-2-n-s {
  background-position: -128px -48px; }

.ui-icon-arrowthick-2-ne-sw {
  background-position: -144px -48px; }

.ui-icon-arrowthick-2-e-w {
  background-position: -160px -48px; }

.ui-icon-arrowthick-2-se-nw {
  background-position: -176px -48px; }

.ui-icon-arrowthickstop-1-n {
  background-position: -192px -48px; }

.ui-icon-arrowthickstop-1-e {
  background-position: -208px -48px; }

.ui-icon-arrowthickstop-1-s {
  background-position: -224px -48px; }

.ui-icon-arrowthickstop-1-w {
  background-position: -240px -48px; }

.ui-icon-arrowreturnthick-1-w {
  background-position: 0 -64px; }

.ui-icon-arrowreturnthick-1-n {
  background-position: -16px -64px; }

.ui-icon-arrowreturnthick-1-e {
  background-position: -32px -64px; }

.ui-icon-arrowreturnthick-1-s {
  background-position: -48px -64px; }

.ui-icon-arrowreturn-1-w {
  background-position: -64px -64px; }

.ui-icon-arrowreturn-1-n {
  background-position: -80px -64px; }

.ui-icon-arrowreturn-1-e {
  background-position: -96px -64px; }

.ui-icon-arrowreturn-1-s {
  background-position: -112px -64px; }

.ui-icon-arrowrefresh-1-w {
  background-position: -128px -64px; }

.ui-icon-arrowrefresh-1-n {
  background-position: -144px -64px; }

.ui-icon-arrowrefresh-1-e {
  background-position: -160px -64px; }

.ui-icon-arrowrefresh-1-s {
  background-position: -176px -64px; }

.ui-icon-arrow-4 {
  background-position: 0 -80px; }

.ui-icon-arrow-4-diag {
  background-position: -16px -80px; }

.ui-icon-extlink {
  background-position: -32px -80px; }

.ui-icon-newwin {
  background-position: -48px -80px; }

.ui-icon-refresh {
  background-position: -64px -80px; }

.ui-icon-shuffle {
  background-position: -80px -80px; }

.ui-icon-transfer-e-w {
  background-position: -96px -80px; }

.ui-icon-transferthick-e-w {
  background-position: -112px -80px; }

.ui-icon-folder-collapsed {
  background-position: 0 -96px; }

.ui-icon-folder-open {
  background-position: -16px -96px; }

.ui-icon-document {
  background-position: -32px -96px; }

.ui-icon-document-b {
  background-position: -48px -96px; }

.ui-icon-note {
  background-position: -64px -96px; }

.ui-icon-mail-closed {
  background-position: -80px -96px; }

.ui-icon-mail-open {
  background-position: -96px -96px; }

.ui-icon-suitcase {
  background-position: -112px -96px; }

.ui-icon-comment {
  background-position: -128px -96px; }

.ui-icon-person {
  background-position: -144px -96px; }

.ui-icon-print {
  background-position: -160px -96px; }

.ui-icon-trash {
  background-position: -176px -96px; }

.ui-icon-locked {
  background-position: -192px -96px; }

.ui-icon-unlocked {
  background-position: -208px -96px; }

.ui-icon-bookmark {
  background-position: -224px -96px; }

.ui-icon-tag {
  background-position: -240px -96px; }

.ui-icon-home {
  background-position: 0 -112px; }

.ui-icon-flag {
  background-position: -16px -112px; }

.ui-icon-calendar {
  background-position: -32px -112px; }

.ui-icon-cart {
  background-position: -48px -112px; }

.ui-icon-pencil {
  background-position: -64px -112px; }

.ui-icon-clock {
  background-position: -80px -112px; }

.ui-icon-disk {
  background-position: -96px -112px; }

.ui-icon-calculator {
  background-position: -112px -112px; }

.ui-icon-zoomin {
  background-position: -128px -112px; }

.ui-icon-zoomout {
  background-position: -144px -112px; }

.ui-icon-search {
  background-position: -160px -112px; }

.ui-icon-wrench {
  background-position: -176px -112px; }

.ui-icon-gear {
  background-position: -192px -112px; }

.ui-icon-heart {
  background-position: -208px -112px; }

.ui-icon-star {
  background-position: -224px -112px; }

.ui-icon-link {
  background-position: -240px -112px; }

.ui-icon-cancel {
  background-position: 0 -128px; }

.ui-icon-plus {
  background-position: -16px -128px; }

.ui-icon-plusthick {
  background-position: -32px -128px; }

.ui-icon-minus {
  background-position: -48px -128px; }

.ui-icon-minusthick {
  background-position: -64px -128px; }

.ui-icon-close {
  background-position: -80px -128px; }

.ui-icon-closethick {
  background-position: -96px -128px; }

.ui-icon-key {
  background-position: -112px -128px; }

.ui-icon-lightbulb {
  background-position: -128px -128px; }

.ui-icon-scissors {
  background-position: -144px -128px; }

.ui-icon-clipboard {
  background-position: -160px -128px; }

.ui-icon-copy {
  background-position: -176px -128px; }

.ui-icon-contact {
  background-position: -192px -128px; }

.ui-icon-image {
  background-position: -208px -128px; }

.ui-icon-video {
  background-position: -224px -128px; }

.ui-icon-script {
  background-position: -240px -128px; }

.ui-icon-alert {
  background-position: 0 -144px; }

.ui-icon-info {
  background-position: -16px -144px; }

.ui-icon-notice {
  background-position: -32px -144px; }

.ui-icon-help {
  background-position: -48px -144px; }

.ui-icon-check {
  background-position: -64px -144px; }

.ui-icon-bullet {
  background-position: -80px -144px; }

.ui-icon-radio-on {
  background-position: -96px -144px; }

.ui-icon-radio-off {
  background-position: -112px -144px; }

.ui-icon-pin-w {
  background-position: -128px -144px; }

.ui-icon-pin-s {
  background-position: -144px -144px; }

.ui-icon-play {
  background-position: 0 -160px; }

.ui-icon-pause {
  background-position: -16px -160px; }

.ui-icon-seek-next {
  background-position: -32px -160px; }

.ui-icon-seek-prev {
  background-position: -48px -160px; }

.ui-icon-seek-end {
  background-position: -64px -160px; }

.ui-icon-seek-start {
  background-position: -80px -160px; }

/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */
.ui-icon-seek-first {
  background-position: -80px -160px; }

.ui-icon-stop {
  background-position: -96px -160px; }

.ui-icon-eject {
  background-position: -112px -160px; }

.ui-icon-volume-off {
  background-position: -128px -160px; }

.ui-icon-volume-on {
  background-position: -144px -160px; }

.ui-icon-power {
  background-position: 0 -176px; }

.ui-icon-signal-diag {
  background-position: -16px -176px; }

.ui-icon-signal {
  background-position: -32px -176px; }

.ui-icon-battery-0 {
  background-position: -48px -176px; }

.ui-icon-battery-1 {
  background-position: -64px -176px; }

.ui-icon-battery-2 {
  background-position: -80px -176px; }

.ui-icon-battery-3 {
  background-position: -96px -176px; }

.ui-icon-circle-plus {
  background-position: 0 -192px; }

.ui-icon-circle-minus {
  background-position: -16px -192px; }

.ui-icon-circle-close {
  background-position: -32px -192px; }

.ui-icon-circle-triangle-e {
  background-position: -48px -192px; }

.ui-icon-circle-triangle-s {
  background-position: -64px -192px; }

.ui-icon-circle-triangle-w {
  background-position: -80px -192px; }

.ui-icon-circle-triangle-n {
  background-position: -96px -192px; }

.ui-icon-circle-arrow-e {
  background-position: -112px -192px; }

.ui-icon-circle-arrow-s {
  background-position: -128px -192px; }

.ui-icon-circle-arrow-w {
  background-position: -144px -192px; }

.ui-icon-circle-arrow-n {
  background-position: -160px -192px; }

.ui-icon-circle-zoomin {
  background-position: -176px -192px; }

.ui-icon-circle-zoomout {
  background-position: -192px -192px; }

.ui-icon-circle-check {
  background-position: -208px -192px; }

.ui-icon-circlesmall-plus {
  background-position: 0 -208px; }

.ui-icon-circlesmall-minus {
  background-position: -16px -208px; }

.ui-icon-circlesmall-close {
  background-position: -32px -208px; }

.ui-icon-squaresmall-plus {
  background-position: -48px -208px; }

.ui-icon-squaresmall-minus {
  background-position: -64px -208px; }

.ui-icon-squaresmall-close {
  background-position: -80px -208px; }

.ui-icon-grip-dotted-vertical {
  background-position: 0 -224px; }

.ui-icon-grip-dotted-horizontal {
  background-position: -16px -224px; }

.ui-icon-grip-solid-vertical {
  background-position: -32px -224px; }

.ui-icon-grip-solid-horizontal {
  background-position: -48px -224px; }

.ui-icon-gripsmall-diagonal-se {
  background-position: -64px -224px; }

.ui-icon-grip-diagonal-se {
  background-position: -80px -224px; }

/* Misc visuals
----------------------------------*/
/* Corner radius */
.ui-corner-all,
.ui-corner-top,
.ui-corner-left,
.ui-corner-tl {
  border-top-left-radius: 3px; }

.ui-corner-all,
.ui-corner-top,
.ui-corner-right,
.ui-corner-tr {
  border-top-right-radius: 3px; }

.ui-corner-all,
.ui-corner-bottom,
.ui-corner-left,
.ui-corner-bl {
  border-bottom-left-radius: 3px; }

.ui-corner-all,
.ui-corner-bottom,
.ui-corner-right,
.ui-corner-br {
  border-bottom-right-radius: 3px; }

/* Overlays */
.ui-widget-overlay {
  background: #aaaaaa;
  opacity: .3;
  filter: Alpha(Opacity=30);
  /* support: IE8 */ }

.ui-widget-shadow {
  -webkit-box-shadow: 0px 0px 5px #666666;
  box-shadow: 0px 0px 5px #666666; }
