/*!
 * Main CSS v1.0
 */
/*-------------------------------------------------------------------*/
/* 01 - Bootstrap v4.0.0-beta (https://getbootstrap.com)
/*-------------------------------------------------------------------*/
@media print {
  *,
  *::before,
  *::after {
    text-shadow: none !important;
    box-shadow: none !important;
  }
  a,
  a:visited {
    text-decoration: underline;
  }
  abbr[title]::after {
    content: " (" attr(title) ")";
  }
  pre {
    white-space: pre-wrap !important;
  }
  pre,
  blockquote {
    border: 1px solid #999;
    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;
  }
  .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 #ddd !important;
  }
}

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

*,
*::before,
*::after {
  box-sizing: inherit;
}

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

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

body {
  margin: 0;
  font-family: "Montserrat", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 1.5rem;
  font-weight: normal;
  line-height: 1.8;
  color: #7d98ad;
  background-color: #fff;
}

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

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

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

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

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

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

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

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

dt {
  font-weight: bold;
}

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

blockquote {
  margin: 0 0 1rem;
}

dfn {
  font-style: italic;
}

b,
strong {
  font-weight: bolder;
}

small {
  font-size: 80%;
}

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

sub {
  bottom: -.25em;
}

sup {
  top: -.5em;
}

a {
  color: #2f3d4a;
  text-decoration: none;
  background-color: transparent;
  -webkit-text-decoration-skip: objects;
}

a:hover {
  color: #7ace4c;
  text-decoration: none;
}

a:not([href]):not([tabindex]) {
  color: inherit;
  text-decoration: none;
}

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

a:not([href]):not([tabindex]):focus {
  outline: 0;
}

pre,
code,
kbd,
samp {
  font-family: monospace, 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:not(:root) {
  overflow: hidden;
}

a,
area,
button,
[role="button"],
input,
label,
select,
summary,
textarea {
  -ms-touch-action: manipulation;
      touch-action: manipulation;
}

table {
  border-collapse: collapse;
}

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

th {
  text-align: left;
}

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

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

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

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

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

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

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

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

textarea {
  overflow: auto;
  resize: vertical;
}

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

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

progress {
  vertical-align: baseline;
}

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

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

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

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

output {
  display: inline-block;
}

summary {
  display: list-item;
}

template {
  display: none;
}

[hidden] {
  display: none !important;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  margin-bottom: 2rem;
  font-family: inherit;
  font-weight: 500;
  line-height: 1.2;
  color: #2f3d4a;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

.list-unstyled, .breadcrumb, .filters, .widget ul, .main-navigation ul, .footer-navigation ul {
  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: 5px;
}

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

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

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

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

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

.img-thumbnail {
  padding: 0.25rem;
  background-color: #fff;
  border: 1px solid #ddd;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  max-width: 100%;
  height: auto;
}

.figure {
  display: inline-block;
}

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

.figure-caption {
  font-size: 90%;
  color: #868e96;
}

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

code {
  padding: 0.2rem 0.4rem;
  font-size: 90%;
  color: #bd4147;
  background-color: #f8f9fa;
}

a > code {
  padding: 0;
  color: inherit;
  background-color: inherit;
}

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

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

pre {
  display: block;
  margin-top: 0;
  margin-bottom: 1rem;
  font-size: 90%;
  color: #212529;
}

pre code {
  padding: 0;
  font-size: inherit;
  color: inherit;
  background-color: transparent;
  border-radius: 0;
}

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

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

@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: 1170px;
  }
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.order-2 {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
      -ms-flex-order: 2;
          order: 2;
}

.order-3 {
  -webkit-box-ordinal-group: 4;
  -webkit-order: 3;
      -ms-flex-order: 3;
          order: 3;
}

.order-4 {
  -webkit-box-ordinal-group: 5;
  -webkit-order: 4;
      -ms-flex-order: 4;
          order: 4;
}

.order-5 {
  -webkit-box-ordinal-group: 6;
  -webkit-order: 5;
      -ms-flex-order: 5;
          order: 5;
}

.order-6 {
  -webkit-box-ordinal-group: 7;
  -webkit-order: 6;
      -ms-flex-order: 6;
          order: 6;
}

.order-7 {
  -webkit-box-ordinal-group: 8;
  -webkit-order: 7;
      -ms-flex-order: 7;
          order: 7;
}

.order-8 {
  -webkit-box-ordinal-group: 9;
  -webkit-order: 8;
      -ms-flex-order: 8;
          order: 8;
}

.order-9 {
  -webkit-box-ordinal-group: 10;
  -webkit-order: 9;
      -ms-flex-order: 9;
          order: 9;
}

.order-10 {
  -webkit-box-ordinal-group: 11;
  -webkit-order: 10;
      -ms-flex-order: 10;
          order: 10;
}

.order-11 {
  -webkit-box-ordinal-group: 12;
  -webkit-order: 11;
      -ms-flex-order: 11;
          order: 11;
}

.order-12 {
  -webkit-box-ordinal-group: 13;
  -webkit-order: 12;
      -ms-flex-order: 12;
          order: 12;
}

@media (min-width: 576px) {
  .col-sm {
    -webkit-flex-basis: 0;
        -ms-flex-preferred-size: 0;
            flex-basis: 0;
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    max-width: 100%;
  }
  .col-sm-auto {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: auto;
    max-width: none;
  }
  .col-sm-1 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 8.33333%;
        -ms-flex: 0 0 8.33333%;
            flex: 0 0 8.33333%;
    max-width: 8.33333%;
  }
  .col-sm-2 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 16.66667%;
        -ms-flex: 0 0 16.66667%;
            flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-sm-3 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 25%;
        -ms-flex: 0 0 25%;
            flex: 0 0 25%;
    max-width: 25%;
  }
  .col-sm-4 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 33.33333%;
        -ms-flex: 0 0 33.33333%;
            flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .col-sm-5 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 41.66667%;
        -ms-flex: 0 0 41.66667%;
            flex: 0 0 41.66667%;
    max-width: 41.66667%;
  }
  .col-sm-6 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 50%;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    max-width: 50%;
  }
  .col-sm-7 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 58.33333%;
        -ms-flex: 0 0 58.33333%;
            flex: 0 0 58.33333%;
    max-width: 58.33333%;
  }
  .col-sm-8 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 66.66667%;
        -ms-flex: 0 0 66.66667%;
            flex: 0 0 66.66667%;
    max-width: 66.66667%;
  }
  .col-sm-9 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 75%;
        -ms-flex: 0 0 75%;
            flex: 0 0 75%;
    max-width: 75%;
  }
  .col-sm-10 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 83.33333%;
        -ms-flex: 0 0 83.33333%;
            flex: 0 0 83.33333%;
    max-width: 83.33333%;
  }
  .col-sm-11 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 91.66667%;
        -ms-flex: 0 0 91.66667%;
            flex: 0 0 91.66667%;
    max-width: 91.66667%;
  }
  .col-sm-12 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%;
  }
  .order-sm-1 {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
  }
  .order-sm-2 {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
  }
  .order-sm-3 {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3;
  }
  .order-sm-4 {
    -webkit-box-ordinal-group: 5;
    -webkit-order: 4;
        -ms-flex-order: 4;
            order: 4;
  }
  .order-sm-5 {
    -webkit-box-ordinal-group: 6;
    -webkit-order: 5;
        -ms-flex-order: 5;
            order: 5;
  }
  .order-sm-6 {
    -webkit-box-ordinal-group: 7;
    -webkit-order: 6;
        -ms-flex-order: 6;
            order: 6;
  }
  .order-sm-7 {
    -webkit-box-ordinal-group: 8;
    -webkit-order: 7;
        -ms-flex-order: 7;
            order: 7;
  }
  .order-sm-8 {
    -webkit-box-ordinal-group: 9;
    -webkit-order: 8;
        -ms-flex-order: 8;
            order: 8;
  }
  .order-sm-9 {
    -webkit-box-ordinal-group: 10;
    -webkit-order: 9;
        -ms-flex-order: 9;
            order: 9;
  }
  .order-sm-10 {
    -webkit-box-ordinal-group: 11;
    -webkit-order: 10;
        -ms-flex-order: 10;
            order: 10;
  }
  .order-sm-11 {
    -webkit-box-ordinal-group: 12;
    -webkit-order: 11;
        -ms-flex-order: 11;
            order: 11;
  }
  .order-sm-12 {
    -webkit-box-ordinal-group: 13;
    -webkit-order: 12;
        -ms-flex-order: 12;
            order: 12;
  }
}

@media (min-width: 768px) {
  .col-md {
    -webkit-flex-basis: 0;
        -ms-flex-preferred-size: 0;
            flex-basis: 0;
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    max-width: 100%;
  }
  .col-md-auto {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: auto;
    max-width: none;
  }
  .col-md-1 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 8.33333%;
        -ms-flex: 0 0 8.33333%;
            flex: 0 0 8.33333%;
    max-width: 8.33333%;
  }
  .col-md-2 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 16.66667%;
        -ms-flex: 0 0 16.66667%;
            flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-md-3 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 25%;
        -ms-flex: 0 0 25%;
            flex: 0 0 25%;
    max-width: 25%;
  }
  .col-md-4 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 33.33333%;
        -ms-flex: 0 0 33.33333%;
            flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .col-md-5 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 41.66667%;
        -ms-flex: 0 0 41.66667%;
            flex: 0 0 41.66667%;
    max-width: 41.66667%;
  }
  .col-md-6 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 50%;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    max-width: 50%;
  }
  .col-md-7 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 58.33333%;
        -ms-flex: 0 0 58.33333%;
            flex: 0 0 58.33333%;
    max-width: 58.33333%;
  }
  .col-md-8 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 66.66667%;
        -ms-flex: 0 0 66.66667%;
            flex: 0 0 66.66667%;
    max-width: 66.66667%;
  }
  .col-md-9 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 75%;
        -ms-flex: 0 0 75%;
            flex: 0 0 75%;
    max-width: 75%;
  }
  .col-md-10 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 83.33333%;
        -ms-flex: 0 0 83.33333%;
            flex: 0 0 83.33333%;
    max-width: 83.33333%;
  }
  .col-md-11 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 91.66667%;
        -ms-flex: 0 0 91.66667%;
            flex: 0 0 91.66667%;
    max-width: 91.66667%;
  }
  .col-md-12 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%;
  }
  .order-md-1 {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
  }
  .order-md-2 {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
  }
  .order-md-3 {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3;
  }
  .order-md-4 {
    -webkit-box-ordinal-group: 5;
    -webkit-order: 4;
        -ms-flex-order: 4;
            order: 4;
  }
  .order-md-5 {
    -webkit-box-ordinal-group: 6;
    -webkit-order: 5;
        -ms-flex-order: 5;
            order: 5;
  }
  .order-md-6 {
    -webkit-box-ordinal-group: 7;
    -webkit-order: 6;
        -ms-flex-order: 6;
            order: 6;
  }
  .order-md-7 {
    -webkit-box-ordinal-group: 8;
    -webkit-order: 7;
        -ms-flex-order: 7;
            order: 7;
  }
  .order-md-8 {
    -webkit-box-ordinal-group: 9;
    -webkit-order: 8;
        -ms-flex-order: 8;
            order: 8;
  }
  .order-md-9 {
    -webkit-box-ordinal-group: 10;
    -webkit-order: 9;
        -ms-flex-order: 9;
            order: 9;
  }
  .order-md-10 {
    -webkit-box-ordinal-group: 11;
    -webkit-order: 10;
        -ms-flex-order: 10;
            order: 10;
  }
  .order-md-11 {
    -webkit-box-ordinal-group: 12;
    -webkit-order: 11;
        -ms-flex-order: 11;
            order: 11;
  }
  .order-md-12 {
    -webkit-box-ordinal-group: 13;
    -webkit-order: 12;
        -ms-flex-order: 12;
            order: 12;
  }
}

@media (min-width: 992px) {
  .col-lg {
    -webkit-flex-basis: 0;
        -ms-flex-preferred-size: 0;
            flex-basis: 0;
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    max-width: 100%;
  }
  .col-lg-auto {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: auto;
    max-width: none;
  }
  .col-lg-1 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 8.33333%;
        -ms-flex: 0 0 8.33333%;
            flex: 0 0 8.33333%;
    max-width: 8.33333%;
  }
  .col-lg-2 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 16.66667%;
        -ms-flex: 0 0 16.66667%;
            flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-lg-3 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 25%;
        -ms-flex: 0 0 25%;
            flex: 0 0 25%;
    max-width: 25%;
  }
  .col-lg-4 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 33.33333%;
        -ms-flex: 0 0 33.33333%;
            flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .col-lg-5 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 41.66667%;
        -ms-flex: 0 0 41.66667%;
            flex: 0 0 41.66667%;
    max-width: 41.66667%;
  }
  .col-lg-6 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 50%;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    max-width: 50%;
  }
  .col-lg-7 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 58.33333%;
        -ms-flex: 0 0 58.33333%;
            flex: 0 0 58.33333%;
    max-width: 58.33333%;
  }
  .col-lg-8 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 66.66667%;
        -ms-flex: 0 0 66.66667%;
            flex: 0 0 66.66667%;
    max-width: 66.66667%;
  }
  .col-lg-9 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 75%;
        -ms-flex: 0 0 75%;
            flex: 0 0 75%;
    max-width: 75%;
  }
  .col-lg-10 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 83.33333%;
        -ms-flex: 0 0 83.33333%;
            flex: 0 0 83.33333%;
    max-width: 83.33333%;
  }
  .col-lg-11 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 91.66667%;
        -ms-flex: 0 0 91.66667%;
            flex: 0 0 91.66667%;
    max-width: 91.66667%;
  }
  .col-lg-12 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%;
  }
  .order-lg-1 {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
  }
  .order-lg-2 {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
  }
  .order-lg-3 {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3;
  }
  .order-lg-4 {
    -webkit-box-ordinal-group: 5;
    -webkit-order: 4;
        -ms-flex-order: 4;
            order: 4;
  }
  .order-lg-5 {
    -webkit-box-ordinal-group: 6;
    -webkit-order: 5;
        -ms-flex-order: 5;
            order: 5;
  }
  .order-lg-6 {
    -webkit-box-ordinal-group: 7;
    -webkit-order: 6;
        -ms-flex-order: 6;
            order: 6;
  }
  .order-lg-7 {
    -webkit-box-ordinal-group: 8;
    -webkit-order: 7;
        -ms-flex-order: 7;
            order: 7;
  }
  .order-lg-8 {
    -webkit-box-ordinal-group: 9;
    -webkit-order: 8;
        -ms-flex-order: 8;
            order: 8;
  }
  .order-lg-9 {
    -webkit-box-ordinal-group: 10;
    -webkit-order: 9;
        -ms-flex-order: 9;
            order: 9;
  }
  .order-lg-10 {
    -webkit-box-ordinal-group: 11;
    -webkit-order: 10;
        -ms-flex-order: 10;
            order: 10;
  }
  .order-lg-11 {
    -webkit-box-ordinal-group: 12;
    -webkit-order: 11;
        -ms-flex-order: 11;
            order: 11;
  }
  .order-lg-12 {
    -webkit-box-ordinal-group: 13;
    -webkit-order: 12;
        -ms-flex-order: 12;
            order: 12;
  }
}

@media (min-width: 1200px) {
  .col-xl {
    -webkit-flex-basis: 0;
        -ms-flex-preferred-size: 0;
            flex-basis: 0;
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    max-width: 100%;
  }
  .col-xl-auto {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    width: auto;
    max-width: none;
  }
  .col-xl-1 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 8.33333%;
        -ms-flex: 0 0 8.33333%;
            flex: 0 0 8.33333%;
    max-width: 8.33333%;
  }
  .col-xl-2 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 16.66667%;
        -ms-flex: 0 0 16.66667%;
            flex: 0 0 16.66667%;
    max-width: 16.66667%;
  }
  .col-xl-3 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 25%;
        -ms-flex: 0 0 25%;
            flex: 0 0 25%;
    max-width: 25%;
  }
  .col-xl-4 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 33.33333%;
        -ms-flex: 0 0 33.33333%;
            flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
  .col-xl-5 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 41.66667%;
        -ms-flex: 0 0 41.66667%;
            flex: 0 0 41.66667%;
    max-width: 41.66667%;
  }
  .col-xl-6 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 50%;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    max-width: 50%;
  }
  .col-xl-7 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 58.33333%;
        -ms-flex: 0 0 58.33333%;
            flex: 0 0 58.33333%;
    max-width: 58.33333%;
  }
  .col-xl-8 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 66.66667%;
        -ms-flex: 0 0 66.66667%;
            flex: 0 0 66.66667%;
    max-width: 66.66667%;
  }
  .col-xl-9 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 75%;
        -ms-flex: 0 0 75%;
            flex: 0 0 75%;
    max-width: 75%;
  }
  .col-xl-10 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 83.33333%;
        -ms-flex: 0 0 83.33333%;
            flex: 0 0 83.33333%;
    max-width: 83.33333%;
  }
  .col-xl-11 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 91.66667%;
        -ms-flex: 0 0 91.66667%;
            flex: 0 0 91.66667%;
    max-width: 91.66667%;
  }
  .col-xl-12 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%;
  }
  .order-xl-1 {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
  }
  .order-xl-2 {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
  }
  .order-xl-3 {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3;
  }
  .order-xl-4 {
    -webkit-box-ordinal-group: 5;
    -webkit-order: 4;
        -ms-flex-order: 4;
            order: 4;
  }
  .order-xl-5 {
    -webkit-box-ordinal-group: 6;
    -webkit-order: 5;
        -ms-flex-order: 5;
            order: 5;
  }
  .order-xl-6 {
    -webkit-box-ordinal-group: 7;
    -webkit-order: 6;
        -ms-flex-order: 6;
            order: 6;
  }
  .order-xl-7 {
    -webkit-box-ordinal-group: 8;
    -webkit-order: 7;
        -ms-flex-order: 7;
            order: 7;
  }
  .order-xl-8 {
    -webkit-box-ordinal-group: 9;
    -webkit-order: 8;
        -ms-flex-order: 8;
            order: 8;
  }
  .order-xl-9 {
    -webkit-box-ordinal-group: 10;
    -webkit-order: 9;
        -ms-flex-order: 9;
            order: 9;
  }
  .order-xl-10 {
    -webkit-box-ordinal-group: 11;
    -webkit-order: 10;
        -ms-flex-order: 10;
            order: 10;
  }
  .order-xl-11 {
    -webkit-box-ordinal-group: 12;
    -webkit-order: 11;
        -ms-flex-order: 11;
            order: 11;
  }
  .order-xl-12 {
    -webkit-box-ordinal-group: 13;
    -webkit-order: 12;
        -ms-flex-order: 12;
            order: 12;
  }
}

.table {
  width: 100%;
  max-width: 100%;
  margin-bottom: 1.6rem;
  background-color: transparent;
}

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

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

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

.table .table {
  background-color: #fff;
}

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

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

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

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

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

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

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

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

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

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

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

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

.thead-inverse th {
  color: #fff;
  background-color: #212529;
}

.thead-default th {
  color: #495057;
  background-color: #e9ecef;
}

.table-inverse {
  color: #fff;
  background-color: #212529;
}

.table-inverse th,
.table-inverse td,
.table-inverse thead th {
  border-color: #32383e;
}

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

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

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

@media (max-width: 991px) {
  .table-responsive {
    display: block;
    width: 100%;
    overflow-x: auto;
    -ms-overflow-style: -ms-autohiding-scrollbar;
  }
  .table-responsive.table-bordered {
    border: 0;
  }
}

.form-control {
  display: block;
  width: 100%;
  padding: 1.5rem 2.8rem;
  font-size: 1.5rem;
  line-height: 1.25;
  color: #495057;
  background-color: #fff;
  background-image: none;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 0;
  -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
  transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
}

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

.form-control:focus {
  color: #495057;
  background-color: #fff;
  border-color: #80bdff;
  outline: none;
}

.form-control::-webkit-input-placeholder {
  color: #868e96;
  opacity: 1;
}

.form-control::-moz-placeholder {
  color: #868e96;
  opacity: 1;
}

.form-control:-ms-input-placeholder {
  color: #868e96;
  opacity: 1;
}

.form-control::placeholder {
  color: #868e96;
  opacity: 1;
}

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

select.form-control:not([size]):not([multiple]) {
  height: calc(2.25rem + 2px);
}

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

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

.col-form-label {
  padding-top: calc(1.5rem - 1px * 2);
  padding-bottom: calc(1.5rem - 1px * 2);
  margin-bottom: 0;
}

.col-form-label-lg {
  padding-top: calc(1.8rem - 1px * 2);
  padding-bottom: calc(1.8rem - 1px * 2);
  font-size: 2rem;
}

.col-form-label-sm {
  padding-top: calc(1rem - 1px * 2);
  padding-bottom: calc(1rem - 1px * 2);
  font-size: 1.4rem;
}

.col-form-legend {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
  margin-bottom: 0;
  font-size: 1.5rem;
}

.form-control-plaintext {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
  margin-bottom: 0;
  line-height: 1.25;
  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 {
  padding: 1rem 2rem;
  font-size: 1.4rem;
  line-height: 1.5;
}

select.form-control-sm:not([size]):not([multiple]) {
  height: calc(1.8125rem + 2px);
}

.form-control-lg {
  padding: 1.8rem 3.5rem;
  font-size: 2rem;
  line-height: 1.5;
}

select.form-control-lg:not([size]):not([multiple]) {
  height: calc(2.3125rem + 2px);
}

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

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

.form-row {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -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;
  margin-bottom: 0.5rem;
}

.form-check.disabled .form-check-label {
  color: #868e96;
}

.form-check-label {
  padding-left: 1.25rem;
  margin-bottom: 0;
}

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

.form-check-input:only-child {
  position: static;
}

.form-check-inline {
  display: inline-block;
}

.form-check-inline .form-check-label {
  vertical-align: middle;
}

.form-check-inline + .form-check-inline {
  margin-left: 0.75rem;
}

.invalid-feedback {
  display: none;
  margin-top: .25rem;
  font-size: .875rem;
  color: #dc3545;
}

.invalid-tooltip {
  position: absolute;
  top: 100%;
  z-index: 5;
  display: none;
  width: 250px;
  padding: .5rem;
  margin-top: .1rem;
  font-size: .875rem;
  line-height: 1;
  color: #fff;
  background-color: rgba(220, 53, 69, 0.8);
  border-radius: .2rem;
}

.was-validated .form-control:valid, .form-control.is-valid, .was-validated
.custom-select:valid,
.custom-select.is-valid {
  border-color: #28a745;
}

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

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

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

.was-validated .custom-control-input:valid ~ .custom-control-indicator, .custom-control-input.is-valid ~ .custom-control-indicator {
  background-color: rgba(40, 167, 69, 0.25);
}

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

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

.was-validated .custom-file-input:valid ~ .custom-file-control::before, .custom-file-input.is-valid ~ .custom-file-control::before {
  border-color: inherit;
}

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

.was-validated .form-control:invalid, .form-control.is-invalid, .was-validated
.custom-select:invalid,
.custom-select.is-invalid {
  border-color: #dc3545;
}

.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus, .was-validated
.custom-select:invalid:focus,
.custom-select.is-invalid:focus {
  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, .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-check-input:invalid + .form-check-label, .form-check-input.is-invalid + .form-check-label {
  color: #dc3545;
}

.was-validated .custom-control-input:invalid ~ .custom-control-indicator, .custom-control-input.is-invalid ~ .custom-control-indicator {
  background-color: rgba(220, 53, 69, 0.25);
}

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

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

.was-validated .custom-file-input:invalid ~ .custom-file-control::before, .custom-file-input.is-invalid ~ .custom-file-control::before {
  border-color: inherit;
}

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

.form-inline {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

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

@media (min-width: 576px) {
  .form-inline label {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-bottom: 0;
  }
  .form-inline .form-group {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row wrap;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -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 {
    width: auto;
  }
  .form-inline .form-control-label {
    margin-bottom: 0;
    vertical-align: middle;
  }
  .form-inline .form-check {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: auto;
    margin-top: 0;
    margin-bottom: 0;
  }
  .form-inline .form-check-label {
    padding-left: 0;
  }
  .form-inline .form-check-input {
    position: relative;
    margin-top: 0;
    margin-right: 0.25rem;
    margin-left: 0;
  }
  .form-inline .custom-control {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding-left: 0;
  }
  .form-inline .custom-control-indicator {
    position: static;
    display: inline-block;
    margin-right: 0.25rem;
    vertical-align: text-bottom;
  }
  .form-inline .has-feedback .form-control-feedback {
    top: 0;
  }
}

.btn, input[type="submit"],
.read-more {
  display: inline-block;
  font-weight: normal;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  border: 1px solid transparent;
  padding: 1.5rem 2.8rem;
  font-size: 1.5rem;
  line-height: 1.25;
  -webkit-transition: all 0.15s ease-in-out;
  transition: all 0.15s ease-in-out;
}

.btn:focus, input:focus[type="submit"],
.read-more:focus, .btn:hover, input:hover[type="submit"],
.read-more:hover {
  text-decoration: none;
}

.btn:focus, input:focus[type="submit"],
.read-more:focus, .btn.focus, input.focus[type="submit"],
.focus.read-more {
  outline: 0;
  box-shadow: none;
}

.btn.disabled, input.disabled[type="submit"],
.disabled.read-more, .btn:disabled, input:disabled[type="submit"],
.read-more:disabled {
  opacity: .65;
}

.btn:active, input:active[type="submit"],
.read-more:active, .btn.active, input.active[type="submit"],
.active.read-more {
  background-image: none;
}

a.btn.disabled,
a.disabled.read-more,
fieldset[disabled] a.btn,
fieldset[disabled] a.read-more {
  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 3px rgba(0, 123, 255, 0.5);
}

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

.btn-primary:active, .btn-primary.active,
.show > .btn-primary.dropdown-toggle {
  background-color: #0069d9;
  background-image: none;
  border-color: #0062cc;
}

.btn-secondary {
  color: #fff;
  background-color: #868e96;
  border-color: #868e96;
}

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

.btn-secondary:focus, .btn-secondary.focus {
  box-shadow: 0 0 0 3px rgba(134, 142, 150, 0.5);
}

.btn-secondary.disabled, .btn-secondary:disabled {
  background-color: #868e96;
  border-color: #868e96;
}

.btn-secondary:active, .btn-secondary.active,
.show > .btn-secondary.dropdown-toggle {
  background-color: #727b84;
  background-image: none;
  border-color: #6c757d;
}

.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 3px rgba(40, 167, 69, 0.5);
}

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

.btn-success:active, .btn-success.active,
.show > .btn-success.dropdown-toggle {
  background-color: #218838;
  background-image: none;
  border-color: #1e7e34;
}

.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 3px rgba(23, 162, 184, 0.5);
}

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

.btn-info:active, .btn-info.active,
.show > .btn-info.dropdown-toggle {
  background-color: #138496;
  background-image: none;
  border-color: #117a8b;
}

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

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

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

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

.btn-warning:active, .btn-warning.active,
.show > .btn-warning.dropdown-toggle {
  background-color: #e0a800;
  background-image: none;
  border-color: #d39e00;
}

.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 3px rgba(220, 53, 69, 0.5);
}

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

.btn-danger:active, .btn-danger.active,
.show > .btn-danger.dropdown-toggle {
  background-color: #c82333;
  background-image: none;
  border-color: #bd2130;
}

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

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

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

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

.btn-light:active, .btn-light.active,
.show > .btn-light.dropdown-toggle {
  background-color: #e2e6ea;
  background-image: none;
  border-color: #dae0e5;
}

.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 3px rgba(52, 58, 64, 0.5);
}

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

.btn-dark:active, .btn-dark.active,
.show > .btn-dark.dropdown-toggle {
  background-color: #23272b;
  background-image: none;
  border-color: #1d2124;
}

.btn-outline-primary {
  color: #007bff;
  background-color: transparent;
  background-image: none;
  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 3px rgba(0, 123, 255, 0.5);
}

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

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

.btn-outline-secondary {
  color: #868e96;
  background-color: transparent;
  background-image: none;
  border-color: #868e96;
}

.btn-outline-secondary:hover {
  color: #fff;
  background-color: #868e96;
  border-color: #868e96;
}

.btn-outline-secondary:focus, .btn-outline-secondary.focus {
  box-shadow: 0 0 0 3px rgba(134, 142, 150, 0.5);
}

.btn-outline-secondary.disabled, .btn-outline-secondary:disabled {
  color: #868e96;
  background-color: transparent;
}

.btn-outline-secondary:active, .btn-outline-secondary.active,
.show > .btn-outline-secondary.dropdown-toggle {
  color: #fff;
  background-color: #868e96;
  border-color: #868e96;
}

.btn-outline-success {
  color: #28a745;
  background-color: transparent;
  background-image: none;
  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 3px rgba(40, 167, 69, 0.5);
}

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

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

.btn-outline-info {
  color: #17a2b8;
  background-color: transparent;
  background-image: none;
  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 3px rgba(23, 162, 184, 0.5);
}

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

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

.btn-outline-warning {
  color: #ffc107;
  background-color: transparent;
  background-image: none;
  border-color: #ffc107;
}

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

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

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

.btn-outline-warning:active, .btn-outline-warning.active,
.show > .btn-outline-warning.dropdown-toggle {
  color: #fff;
  background-color: #ffc107;
  border-color: #ffc107;
}

.btn-outline-danger {
  color: #dc3545;
  background-color: transparent;
  background-image: none;
  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 3px rgba(220, 53, 69, 0.5);
}

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

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

.btn-outline-light {
  color: #f8f9fa;
  background-color: transparent;
  background-image: none;
  border-color: #f8f9fa;
}

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

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

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

.btn-outline-light:active, .btn-outline-light.active,
.show > .btn-outline-light.dropdown-toggle {
  color: #fff;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}

.btn-outline-dark {
  color: #343a40;
  background-color: transparent;
  background-image: none;
  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 3px rgba(52, 58, 64, 0.5);
}

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

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

.btn-link {
  font-weight: normal;
  color: #2f3d4a;
  border-radius: 0;
}

.btn-link, .btn-link:active, .btn-link.active, .btn-link:disabled {
  background-color: transparent;
}

.btn-link, .btn-link:focus, .btn-link:active {
  border-color: transparent;
  box-shadow: none;
}

.btn-link:hover {
  border-color: transparent;
}

.btn-link:focus, .btn-link:hover {
  color: #7ace4c;
  text-decoration: none;
  background-color: transparent;
}

.btn-link:disabled {
  color: #868e96;
}

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

.btn-lg {
  padding: 1.8rem 3.5rem;
  font-size: 2rem;
  line-height: 1.5;
}

.btn-sm {
  padding: 1rem 2rem;
  font-size: 1.4rem;
  line-height: 1.5;
}

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

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

.alert-heading {
  color: inherit;
}

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

.alert-dismissible .close {
  position: relative;
  top: -0.75rem;
  right: -1.25rem;
  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: #464a4e;
  background-color: #e7e8ea;
  border-color: #dddfe2;
}

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

.alert-secondary .alert-link {
  color: #2e3133;
}

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

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

.close:focus, .close:hover {
  color: #000;
  text-decoration: none;
  opacity: .75;
}

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

.modal-open {
  overflow: hidden;
}

.modal {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1050;
  display: none;
  overflow: hidden;
  outline: 0;
}

.modal.fade .modal-dialog {
  -webkit-transition: -webkit-transform 0.3s ease-out;
  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, -25%);
      -ms-transform: translate(0, -25%);
          transform: translate(0, -25%);
}

.modal.show .modal-dialog {
  -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
          transform: translate(0, 0);
}

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

.modal-dialog {
  position: relative;
  width: auto;
  margin: 10px;
}

.modal-content {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  outline: 0;
}

.modal-backdrop {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1040;
  background-color: #000;
}

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

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

.modal-header {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 15px;
  border-bottom: 1px solid #e9ecef;
}

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

.modal-body {
  position: relative;
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 auto;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  padding: 15px;
}

.modal-footer {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  padding: 15px;
  border-top: 1px solid #e9ecef;
}

.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: 30px auto;
  }
  .modal-sm {
    max-width: 300px;
  }
}

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

.fade {
  opacity: 0;
  -webkit-transition: opacity 0.15s linear;
  transition: opacity 0.15s linear;
}

.fade.show {
  opacity: 1;
}

.collapse {
  display: none;
}

.collapse.show {
  display: block;
}

tr.collapse.show {
  display: table-row;
}

tbody.collapse.show {
  display: table-row-group;
}

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

.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:focus, a.bg-primary:hover {
  background-color: #0062cc !important;
}

.bg-secondary {
  background-color: #868e96 !important;
}

a.bg-secondary:focus, a.bg-secondary:hover {
  background-color: #6c757d !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.border {
  border: 1px solid #e9ecef !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: #868e96 !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.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-cell {
  display: table-cell !important;
}

.d-flex {
  display: -webkit-box !important;
  display: -webkit-flex !important;
  display: -ms-flexbox !important;
  display: flex !important;
}

.d-inline-flex {
  display: -webkit-inline-box !important;
  display: -webkit-inline-flex !important;
  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-cell {
    display: table-cell !important;
  }
  .d-sm-flex {
    display: -webkit-box !important;
    display: -webkit-flex !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .d-sm-inline-flex {
    display: -webkit-inline-box !important;
    display: -webkit-inline-flex !important;
    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-cell {
    display: table-cell !important;
  }
  .d-md-flex {
    display: -webkit-box !important;
    display: -webkit-flex !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .d-md-inline-flex {
    display: -webkit-inline-box !important;
    display: -webkit-inline-flex !important;
    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-cell {
    display: table-cell !important;
  }
  .d-lg-flex {
    display: -webkit-box !important;
    display: -webkit-flex !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .d-lg-inline-flex {
    display: -webkit-inline-box !important;
    display: -webkit-inline-flex !important;
    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-cell {
    display: table-cell !important;
  }
  .d-xl-flex {
    display: -webkit-box !important;
    display: -webkit-flex !important;
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .d-xl-inline-flex {
    display: -webkit-inline-box !important;
    display: -webkit-inline-flex !important;
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
}

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

@media print {
  .d-print-block {
    display: block !important;
  }
}

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

@media print {
  .d-print-inline {
    display: inline !important;
  }
}

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

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

@media print {
  .d-print-none {
    display: none !important;
  }
}

.embed-responsive {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  overflow: hidden;
}

.embed-responsive::before {
  display: block;
  content: "";
}

.embed-responsive .embed-responsive-item,
.embed-responsive iframe,
.embed-responsive embed,
.embed-responsive object,
.embed-responsive video {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

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

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

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

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

.flex-row {
  -webkit-box-orient: horizontal !important;
  -webkit-box-direction: normal !important;
  -webkit-flex-direction: row !important;
      -ms-flex-direction: row !important;
          flex-direction: row !important;
}

.flex-column {
  -webkit-box-orient: vertical !important;
  -webkit-box-direction: normal !important;
  -webkit-flex-direction: column !important;
      -ms-flex-direction: column !important;
          flex-direction: column !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.align-items-stretch {
  -webkit-box-align: stretch !important;
  -webkit-align-items: stretch !important;
      -ms-flex-align: stretch !important;
          align-items: stretch !important;
}

.align-content-start {
  -webkit-align-content: flex-start !important;
      -ms-flex-line-pack: start !important;
          align-content: flex-start !important;
}

.align-content-end {
  -webkit-align-content: flex-end !important;
      -ms-flex-line-pack: end !important;
          align-content: flex-end !important;
}

.align-content-center {
  -webkit-align-content: center !important;
      -ms-flex-line-pack: center !important;
          align-content: center !important;
}

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

.align-content-around {
  -webkit-align-content: space-around !important;
      -ms-flex-line-pack: distribute !important;
          align-content: space-around !important;
}

.align-content-stretch {
  -webkit-align-content: stretch !important;
      -ms-flex-line-pack: stretch !important;
          align-content: stretch !important;
}

.align-self-auto {
  -webkit-align-self: auto !important;
      -ms-flex-item-align: auto !important;
              -ms-grid-row-align: auto !important;
          align-self: auto !important;
}

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

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

.align-self-center {
  -webkit-align-self: center !important;
      -ms-flex-item-align: center !important;
              -ms-grid-row-align: center !important;
          align-self: center !important;
}

.align-self-baseline {
  -webkit-align-self: baseline !important;
      -ms-flex-item-align: baseline !important;
          align-self: baseline !important;
}

.align-self-stretch {
  -webkit-align-self: stretch !important;
      -ms-flex-item-align: stretch !important;
              -ms-grid-row-align: stretch !important;
          align-self: stretch !important;
}

@media (min-width: 576px) {
  .flex-sm-row {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: normal !important;
    -webkit-flex-direction: row !important;
        -ms-flex-direction: row !important;
            flex-direction: row !important;
  }
  .flex-sm-column {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: normal !important;
    -webkit-flex-direction: column !important;
        -ms-flex-direction: column !important;
            flex-direction: column !important;
  }
  .flex-sm-row-reverse {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: reverse !important;
    -webkit-flex-direction: row-reverse !important;
        -ms-flex-direction: row-reverse !important;
            flex-direction: row-reverse !important;
  }
  .flex-sm-column-reverse {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: reverse !important;
    -webkit-flex-direction: column-reverse !important;
        -ms-flex-direction: column-reverse !important;
            flex-direction: column-reverse !important;
  }
  .flex-sm-wrap {
    -webkit-flex-wrap: wrap !important;
        -ms-flex-wrap: wrap !important;
            flex-wrap: wrap !important;
  }
  .flex-sm-nowrap {
    -webkit-flex-wrap: nowrap !important;
        -ms-flex-wrap: nowrap !important;
            flex-wrap: nowrap !important;
  }
  .flex-sm-wrap-reverse {
    -webkit-flex-wrap: wrap-reverse !important;
        -ms-flex-wrap: wrap-reverse !important;
            flex-wrap: wrap-reverse !important;
  }
  .justify-content-sm-start {
    -webkit-box-pack: start !important;
    -webkit-justify-content: flex-start !important;
        -ms-flex-pack: start !important;
            justify-content: flex-start !important;
  }
  .justify-content-sm-end {
    -webkit-box-pack: end !important;
    -webkit-justify-content: flex-end !important;
        -ms-flex-pack: end !important;
            justify-content: flex-end !important;
  }
  .justify-content-sm-center {
    -webkit-box-pack: center !important;
    -webkit-justify-content: center !important;
        -ms-flex-pack: center !important;
            justify-content: center !important;
  }
  .justify-content-sm-between {
    -webkit-box-pack: justify !important;
    -webkit-justify-content: space-between !important;
        -ms-flex-pack: justify !important;
            justify-content: space-between !important;
  }
  .justify-content-sm-around {
    -webkit-justify-content: space-around !important;
        -ms-flex-pack: distribute !important;
            justify-content: space-around !important;
  }
  .align-items-sm-start {
    -webkit-box-align: start !important;
    -webkit-align-items: flex-start !important;
        -ms-flex-align: start !important;
            align-items: flex-start !important;
  }
  .align-items-sm-end {
    -webkit-box-align: end !important;
    -webkit-align-items: flex-end !important;
        -ms-flex-align: end !important;
            align-items: flex-end !important;
  }
  .align-items-sm-center {
    -webkit-box-align: center !important;
    -webkit-align-items: center !important;
        -ms-flex-align: center !important;
            align-items: center !important;
  }
  .align-items-sm-baseline {
    -webkit-box-align: baseline !important;
    -webkit-align-items: baseline !important;
        -ms-flex-align: baseline !important;
            align-items: baseline !important;
  }
  .align-items-sm-stretch {
    -webkit-box-align: stretch !important;
    -webkit-align-items: stretch !important;
        -ms-flex-align: stretch !important;
            align-items: stretch !important;
  }
  .align-content-sm-start {
    -webkit-align-content: flex-start !important;
        -ms-flex-line-pack: start !important;
            align-content: flex-start !important;
  }
  .align-content-sm-end {
    -webkit-align-content: flex-end !important;
        -ms-flex-line-pack: end !important;
            align-content: flex-end !important;
  }
  .align-content-sm-center {
    -webkit-align-content: center !important;
        -ms-flex-line-pack: center !important;
            align-content: center !important;
  }
  .align-content-sm-between {
    -webkit-align-content: space-between !important;
        -ms-flex-line-pack: justify !important;
            align-content: space-between !important;
  }
  .align-content-sm-around {
    -webkit-align-content: space-around !important;
        -ms-flex-line-pack: distribute !important;
            align-content: space-around !important;
  }
  .align-content-sm-stretch {
    -webkit-align-content: stretch !important;
        -ms-flex-line-pack: stretch !important;
            align-content: stretch !important;
  }
  .align-self-sm-auto {
    -webkit-align-self: auto !important;
        -ms-flex-item-align: auto !important;
                -ms-grid-row-align: auto !important;
            align-self: auto !important;
  }
  .align-self-sm-start {
    -webkit-align-self: flex-start !important;
        -ms-flex-item-align: start !important;
            align-self: flex-start !important;
  }
  .align-self-sm-end {
    -webkit-align-self: flex-end !important;
        -ms-flex-item-align: end !important;
            align-self: flex-end !important;
  }
  .align-self-sm-center {
    -webkit-align-self: center !important;
        -ms-flex-item-align: center !important;
                -ms-grid-row-align: center !important;
            align-self: center !important;
  }
  .align-self-sm-baseline {
    -webkit-align-self: baseline !important;
        -ms-flex-item-align: baseline !important;
            align-self: baseline !important;
  }
  .align-self-sm-stretch {
    -webkit-align-self: stretch !important;
        -ms-flex-item-align: stretch !important;
                -ms-grid-row-align: stretch !important;
            align-self: stretch !important;
  }
}

@media (min-width: 768px) {
  .flex-md-row {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: normal !important;
    -webkit-flex-direction: row !important;
        -ms-flex-direction: row !important;
            flex-direction: row !important;
  }
  .flex-md-column {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: normal !important;
    -webkit-flex-direction: column !important;
        -ms-flex-direction: column !important;
            flex-direction: column !important;
  }
  .flex-md-row-reverse {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: reverse !important;
    -webkit-flex-direction: row-reverse !important;
        -ms-flex-direction: row-reverse !important;
            flex-direction: row-reverse !important;
  }
  .flex-md-column-reverse {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: reverse !important;
    -webkit-flex-direction: column-reverse !important;
        -ms-flex-direction: column-reverse !important;
            flex-direction: column-reverse !important;
  }
  .flex-md-wrap {
    -webkit-flex-wrap: wrap !important;
        -ms-flex-wrap: wrap !important;
            flex-wrap: wrap !important;
  }
  .flex-md-nowrap {
    -webkit-flex-wrap: nowrap !important;
        -ms-flex-wrap: nowrap !important;
            flex-wrap: nowrap !important;
  }
  .flex-md-wrap-reverse {
    -webkit-flex-wrap: wrap-reverse !important;
        -ms-flex-wrap: wrap-reverse !important;
            flex-wrap: wrap-reverse !important;
  }
  .justify-content-md-start {
    -webkit-box-pack: start !important;
    -webkit-justify-content: flex-start !important;
        -ms-flex-pack: start !important;
            justify-content: flex-start !important;
  }
  .justify-content-md-end {
    -webkit-box-pack: end !important;
    -webkit-justify-content: flex-end !important;
        -ms-flex-pack: end !important;
            justify-content: flex-end !important;
  }
  .justify-content-md-center {
    -webkit-box-pack: center !important;
    -webkit-justify-content: center !important;
        -ms-flex-pack: center !important;
            justify-content: center !important;
  }
  .justify-content-md-between {
    -webkit-box-pack: justify !important;
    -webkit-justify-content: space-between !important;
        -ms-flex-pack: justify !important;
            justify-content: space-between !important;
  }
  .justify-content-md-around {
    -webkit-justify-content: space-around !important;
        -ms-flex-pack: distribute !important;
            justify-content: space-around !important;
  }
  .align-items-md-start {
    -webkit-box-align: start !important;
    -webkit-align-items: flex-start !important;
        -ms-flex-align: start !important;
            align-items: flex-start !important;
  }
  .align-items-md-end {
    -webkit-box-align: end !important;
    -webkit-align-items: flex-end !important;
        -ms-flex-align: end !important;
            align-items: flex-end !important;
  }
  .align-items-md-center {
    -webkit-box-align: center !important;
    -webkit-align-items: center !important;
        -ms-flex-align: center !important;
            align-items: center !important;
  }
  .align-items-md-baseline {
    -webkit-box-align: baseline !important;
    -webkit-align-items: baseline !important;
        -ms-flex-align: baseline !important;
            align-items: baseline !important;
  }
  .align-items-md-stretch {
    -webkit-box-align: stretch !important;
    -webkit-align-items: stretch !important;
        -ms-flex-align: stretch !important;
            align-items: stretch !important;
  }
  .align-content-md-start {
    -webkit-align-content: flex-start !important;
        -ms-flex-line-pack: start !important;
            align-content: flex-start !important;
  }
  .align-content-md-end {
    -webkit-align-content: flex-end !important;
        -ms-flex-line-pack: end !important;
            align-content: flex-end !important;
  }
  .align-content-md-center {
    -webkit-align-content: center !important;
        -ms-flex-line-pack: center !important;
            align-content: center !important;
  }
  .align-content-md-between {
    -webkit-align-content: space-between !important;
        -ms-flex-line-pack: justify !important;
            align-content: space-between !important;
  }
  .align-content-md-around {
    -webkit-align-content: space-around !important;
        -ms-flex-line-pack: distribute !important;
            align-content: space-around !important;
  }
  .align-content-md-stretch {
    -webkit-align-content: stretch !important;
        -ms-flex-line-pack: stretch !important;
            align-content: stretch !important;
  }
  .align-self-md-auto {
    -webkit-align-self: auto !important;
        -ms-flex-item-align: auto !important;
                -ms-grid-row-align: auto !important;
            align-self: auto !important;
  }
  .align-self-md-start {
    -webkit-align-self: flex-start !important;
        -ms-flex-item-align: start !important;
            align-self: flex-start !important;
  }
  .align-self-md-end {
    -webkit-align-self: flex-end !important;
        -ms-flex-item-align: end !important;
            align-self: flex-end !important;
  }
  .align-self-md-center {
    -webkit-align-self: center !important;
        -ms-flex-item-align: center !important;
                -ms-grid-row-align: center !important;
            align-self: center !important;
  }
  .align-self-md-baseline {
    -webkit-align-self: baseline !important;
        -ms-flex-item-align: baseline !important;
            align-self: baseline !important;
  }
  .align-self-md-stretch {
    -webkit-align-self: stretch !important;
        -ms-flex-item-align: stretch !important;
                -ms-grid-row-align: stretch !important;
            align-self: stretch !important;
  }
}

@media (min-width: 992px) {
  .flex-lg-row {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: normal !important;
    -webkit-flex-direction: row !important;
        -ms-flex-direction: row !important;
            flex-direction: row !important;
  }
  .flex-lg-column {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: normal !important;
    -webkit-flex-direction: column !important;
        -ms-flex-direction: column !important;
            flex-direction: column !important;
  }
  .flex-lg-row-reverse {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: reverse !important;
    -webkit-flex-direction: row-reverse !important;
        -ms-flex-direction: row-reverse !important;
            flex-direction: row-reverse !important;
  }
  .flex-lg-column-reverse {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: reverse !important;
    -webkit-flex-direction: column-reverse !important;
        -ms-flex-direction: column-reverse !important;
            flex-direction: column-reverse !important;
  }
  .flex-lg-wrap {
    -webkit-flex-wrap: wrap !important;
        -ms-flex-wrap: wrap !important;
            flex-wrap: wrap !important;
  }
  .flex-lg-nowrap {
    -webkit-flex-wrap: nowrap !important;
        -ms-flex-wrap: nowrap !important;
            flex-wrap: nowrap !important;
  }
  .flex-lg-wrap-reverse {
    -webkit-flex-wrap: wrap-reverse !important;
        -ms-flex-wrap: wrap-reverse !important;
            flex-wrap: wrap-reverse !important;
  }
  .justify-content-lg-start {
    -webkit-box-pack: start !important;
    -webkit-justify-content: flex-start !important;
        -ms-flex-pack: start !important;
            justify-content: flex-start !important;
  }
  .justify-content-lg-end {
    -webkit-box-pack: end !important;
    -webkit-justify-content: flex-end !important;
        -ms-flex-pack: end !important;
            justify-content: flex-end !important;
  }
  .justify-content-lg-center {
    -webkit-box-pack: center !important;
    -webkit-justify-content: center !important;
        -ms-flex-pack: center !important;
            justify-content: center !important;
  }
  .justify-content-lg-between {
    -webkit-box-pack: justify !important;
    -webkit-justify-content: space-between !important;
        -ms-flex-pack: justify !important;
            justify-content: space-between !important;
  }
  .justify-content-lg-around {
    -webkit-justify-content: space-around !important;
        -ms-flex-pack: distribute !important;
            justify-content: space-around !important;
  }
  .align-items-lg-start {
    -webkit-box-align: start !important;
    -webkit-align-items: flex-start !important;
        -ms-flex-align: start !important;
            align-items: flex-start !important;
  }
  .align-items-lg-end {
    -webkit-box-align: end !important;
    -webkit-align-items: flex-end !important;
        -ms-flex-align: end !important;
            align-items: flex-end !important;
  }
  .align-items-lg-center {
    -webkit-box-align: center !important;
    -webkit-align-items: center !important;
        -ms-flex-align: center !important;
            align-items: center !important;
  }
  .align-items-lg-baseline {
    -webkit-box-align: baseline !important;
    -webkit-align-items: baseline !important;
        -ms-flex-align: baseline !important;
            align-items: baseline !important;
  }
  .align-items-lg-stretch {
    -webkit-box-align: stretch !important;
    -webkit-align-items: stretch !important;
        -ms-flex-align: stretch !important;
            align-items: stretch !important;
  }
  .align-content-lg-start {
    -webkit-align-content: flex-start !important;
        -ms-flex-line-pack: start !important;
            align-content: flex-start !important;
  }
  .align-content-lg-end {
    -webkit-align-content: flex-end !important;
        -ms-flex-line-pack: end !important;
            align-content: flex-end !important;
  }
  .align-content-lg-center {
    -webkit-align-content: center !important;
        -ms-flex-line-pack: center !important;
            align-content: center !important;
  }
  .align-content-lg-between {
    -webkit-align-content: space-between !important;
        -ms-flex-line-pack: justify !important;
            align-content: space-between !important;
  }
  .align-content-lg-around {
    -webkit-align-content: space-around !important;
        -ms-flex-line-pack: distribute !important;
            align-content: space-around !important;
  }
  .align-content-lg-stretch {
    -webkit-align-content: stretch !important;
        -ms-flex-line-pack: stretch !important;
            align-content: stretch !important;
  }
  .align-self-lg-auto {
    -webkit-align-self: auto !important;
        -ms-flex-item-align: auto !important;
                -ms-grid-row-align: auto !important;
            align-self: auto !important;
  }
  .align-self-lg-start {
    -webkit-align-self: flex-start !important;
        -ms-flex-item-align: start !important;
            align-self: flex-start !important;
  }
  .align-self-lg-end {
    -webkit-align-self: flex-end !important;
        -ms-flex-item-align: end !important;
            align-self: flex-end !important;
  }
  .align-self-lg-center {
    -webkit-align-self: center !important;
        -ms-flex-item-align: center !important;
                -ms-grid-row-align: center !important;
            align-self: center !important;
  }
  .align-self-lg-baseline {
    -webkit-align-self: baseline !important;
        -ms-flex-item-align: baseline !important;
            align-self: baseline !important;
  }
  .align-self-lg-stretch {
    -webkit-align-self: stretch !important;
        -ms-flex-item-align: stretch !important;
                -ms-grid-row-align: stretch !important;
            align-self: stretch !important;
  }
}

@media (min-width: 1200px) {
  .flex-xl-row {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: normal !important;
    -webkit-flex-direction: row !important;
        -ms-flex-direction: row !important;
            flex-direction: row !important;
  }
  .flex-xl-column {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: normal !important;
    -webkit-flex-direction: column !important;
        -ms-flex-direction: column !important;
            flex-direction: column !important;
  }
  .flex-xl-row-reverse {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: reverse !important;
    -webkit-flex-direction: row-reverse !important;
        -ms-flex-direction: row-reverse !important;
            flex-direction: row-reverse !important;
  }
  .flex-xl-column-reverse {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: reverse !important;
    -webkit-flex-direction: column-reverse !important;
        -ms-flex-direction: column-reverse !important;
            flex-direction: column-reverse !important;
  }
  .flex-xl-wrap {
    -webkit-flex-wrap: wrap !important;
        -ms-flex-wrap: wrap !important;
            flex-wrap: wrap !important;
  }
  .flex-xl-nowrap {
    -webkit-flex-wrap: nowrap !important;
        -ms-flex-wrap: nowrap !important;
            flex-wrap: nowrap !important;
  }
  .flex-xl-wrap-reverse {
    -webkit-flex-wrap: wrap-reverse !important;
        -ms-flex-wrap: wrap-reverse !important;
            flex-wrap: wrap-reverse !important;
  }
  .justify-content-xl-start {
    -webkit-box-pack: start !important;
    -webkit-justify-content: flex-start !important;
        -ms-flex-pack: start !important;
            justify-content: flex-start !important;
  }
  .justify-content-xl-end {
    -webkit-box-pack: end !important;
    -webkit-justify-content: flex-end !important;
        -ms-flex-pack: end !important;
            justify-content: flex-end !important;
  }
  .justify-content-xl-center {
    -webkit-box-pack: center !important;
    -webkit-justify-content: center !important;
        -ms-flex-pack: center !important;
            justify-content: center !important;
  }
  .justify-content-xl-between {
    -webkit-box-pack: justify !important;
    -webkit-justify-content: space-between !important;
        -ms-flex-pack: justify !important;
            justify-content: space-between !important;
  }
  .justify-content-xl-around {
    -webkit-justify-content: space-around !important;
        -ms-flex-pack: distribute !important;
            justify-content: space-around !important;
  }
  .align-items-xl-start {
    -webkit-box-align: start !important;
    -webkit-align-items: flex-start !important;
        -ms-flex-align: start !important;
            align-items: flex-start !important;
  }
  .align-items-xl-end {
    -webkit-box-align: end !important;
    -webkit-align-items: flex-end !important;
        -ms-flex-align: end !important;
            align-items: flex-end !important;
  }
  .align-items-xl-center {
    -webkit-box-align: center !important;
    -webkit-align-items: center !important;
        -ms-flex-align: center !important;
            align-items: center !important;
  }
  .align-items-xl-baseline {
    -webkit-box-align: baseline !important;
    -webkit-align-items: baseline !important;
        -ms-flex-align: baseline !important;
            align-items: baseline !important;
  }
  .align-items-xl-stretch {
    -webkit-box-align: stretch !important;
    -webkit-align-items: stretch !important;
        -ms-flex-align: stretch !important;
            align-items: stretch !important;
  }
  .align-content-xl-start {
    -webkit-align-content: flex-start !important;
        -ms-flex-line-pack: start !important;
            align-content: flex-start !important;
  }
  .align-content-xl-end {
    -webkit-align-content: flex-end !important;
        -ms-flex-line-pack: end !important;
            align-content: flex-end !important;
  }
  .align-content-xl-center {
    -webkit-align-content: center !important;
        -ms-flex-line-pack: center !important;
            align-content: center !important;
  }
  .align-content-xl-between {
    -webkit-align-content: space-between !important;
        -ms-flex-line-pack: justify !important;
            align-content: space-between !important;
  }
  .align-content-xl-around {
    -webkit-align-content: space-around !important;
        -ms-flex-line-pack: distribute !important;
            align-content: space-around !important;
  }
  .align-content-xl-stretch {
    -webkit-align-content: stretch !important;
        -ms-flex-line-pack: stretch !important;
            align-content: stretch !important;
  }
  .align-self-xl-auto {
    -webkit-align-self: auto !important;
        -ms-flex-item-align: auto !important;
                -ms-grid-row-align: auto !important;
            align-self: auto !important;
  }
  .align-self-xl-start {
    -webkit-align-self: flex-start !important;
        -ms-flex-item-align: start !important;
            align-self: flex-start !important;
  }
  .align-self-xl-end {
    -webkit-align-self: flex-end !important;
        -ms-flex-item-align: end !important;
            align-self: flex-end !important;
  }
  .align-self-xl-center {
    -webkit-align-self: center !important;
        -ms-flex-item-align: center !important;
                -ms-grid-row-align: center !important;
            align-self: center !important;
  }
  .align-self-xl-baseline {
    -webkit-align-self: baseline !important;
        -ms-flex-item-align: baseline !important;
            align-self: baseline !important;
  }
  .align-self-xl-stretch {
    -webkit-align-self: stretch !important;
        -ms-flex-item-align: stretch !important;
                -ms-grid-row-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;
  }
}

.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;
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  border: 0;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.font-weight-normal {
  font-weight: normal;
}

.font-weight-bold {
  font-weight: bold;
}

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

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

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

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

.text-secondary {
  color: #868e96 !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

.text-muted {
  color: #868e96 !important;
}

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

.visible {
  visibility: visible !important;
}

.invisible {
  visibility: hidden !important;
}

/*-------------------------------------------------------------------*/
/* 02 - Common
/*-------------------------------------------------------------------*/
html {
  font-size: 10px;
}

.btn-transition, .pagination span,
.pagination a,
.page-links span,
.page-links a, .header-appointment-button, .home-features-item, .home-blog img, .woocommerce button.button:disabled,
.woocommerce button.button:disabled[disabled],
.woocommerce a.button,
.woocommerce a.added_to_cart,
.woocommerce button.button,
.woocommerce button.button.disabled,
.woocommerce input.button,
.woocommerce input.button:disabled,
.woocommerce input.button:disabled[disabled],
.woocommerce #respond input#submit,
.woocommerce #respond input[type="submit"],
.woocommerce #respond input#submit.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce button.button.alt.disabled,
.woocommerce input.button.alt, .woocommerce nav.woocommerce-pagination ul a,
.woocommerce nav.woocommerce-pagination ul span,
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
  -webkit-transition: all 0.13s linear;
  transition: all 0.13s linear;
}

.text-transition, a, .woocommerce-loop-product__title {
  -webkit-transition: color 0.13s linear;
  transition: color 0.13s linear;
}

.no-transition {
  -webkit-transition: initial;
  transition: initial;
}

a:focus,
input:focus,
button:focus,
textarea:focus {
  outline: none;
}

table,
blockquote,
p {
  margin-bottom: 3rem;
}

ol,
ul,
dl {
  margin-bottom: 2.5rem;
  padding-left: 1.8rem;
}

hr {
  margin-top: 3rem;
  margin-bottom: 3rem;
}

.image-transition {
  overflow: hidden;
}

.image-transition img {
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.4, 0, 1, 1);
  transition: -webkit-transform 0.3s cubic-bezier(0.4, 0, 1, 1);
  transition: transform 0.3s cubic-bezier(0.4, 0, 1, 1);
  transition: transform 0.3s cubic-bezier(0.4, 0, 1, 1), -webkit-transform 0.3s cubic-bezier(0.4, 0, 1, 1);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.image-transition:hover img {
  -webkit-transform: scale(1.05);
      -ms-transform: scale(1.05);
          transform: scale(1.05);
  -webkit-transition: -webkit-transform 0.4s cubic-bezier(0.4, 0, 1, 1);
  transition: -webkit-transform 0.4s cubic-bezier(0.4, 0, 1, 1);
  transition: transform 0.4s cubic-bezier(0.4, 0, 1, 1);
  transition: transform 0.4s cubic-bezier(0.4, 0, 1, 1), -webkit-transform 0.4s cubic-bezier(0.4, 0, 1, 1);
}

.disable-image-transition:hover img {
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
}

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

.page-content-wrapper {
  margin-bottom: 4rem;
}

.owl-theme .owl-nav.disabled + .owl-dots {
  margin-top: 4.5rem;
}

.owl-theme .owl-dots .owl-dot span {
  width: 1.6rem;
  height: 1.6rem;
  margin: .5rem .6rem;
  border-radius: 50%;
  border: 2px solid transparent;
}

@media (min-width: 1200px) {
  .inspiry-boxed-layout #page {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
  }
  .inspiry-boxed-layout .container {
    width: auto;
    padding-left: 30px;
    padding-right: 30px;
  }
  .inspiry-boxed-layout .flexslider .content-wrapper {
    -webkit-transition: padding 0.3s ease-in-out;
    transition: padding 0.3s ease-in-out;
  }
  .inspiry-boxed-layout .flexslider:hover .content-wrapper {
    padding-left: 45px;
    padding-right: 45px;
  }
  .inspiry-boxed-layout .flex-direction-nav a {
    z-index: 1000;
  }
}

.appointment-modal .close {
  display: none;
  position: absolute;
  top: 8px;
  right: 8px;
  float: none;
  font-size: 2.4rem;
  font-weight: bold;
  text-shadow: none;
  opacity: 1;
  width: 20px;
  height: 20px;
  line-height: 20px;
}

@media (max-width: 767px) {
  .appointment-modal .close {
    display: block;
  }
}

.appointment-modal .row {
  margin-left: -1rem;
  margin-right: -1rem;
}

.appointment-modal .col-md-6 {
  padding-left: 1rem;
  padding-right: 1rem;
}

.appointment-modal-form {
  padding: 4rem 2.5rem 3.6rem;
  border-radius: 5px;
}

.appointment-modal input[type="text"],
.appointment-modal input[type="email"],
.appointment-modal input[type="url"],
.appointment-modal input[type="tel"],
.appointment-modal input[type="number"],
.appointment-modal input[type="date"],
.appointment-modal input[type="range"],
.appointment-modal input[type="password"],
.appointment-modal input[type="text"],
.appointment-modal textarea {
  padding: 1rem 1.5rem;
  font-size: 1.3rem;
}

.appointment-modal textarea {
  display: block;
  height: 130px;
}

.appointment-modal .inspiry-recaptcha-wrapper {
  margin-bottom: 2rem;
}

.appointment-modal .btn, .appointment-modal input[type="submit"],
.appointment-modal .read-more,
.appointment-modal input[type="submit"] {
  padding-top: 1.3rem;
  padding-bottom: 1.3rem;
  font-size: 1.4rem;
}

#error-container:not(:empty),
#message-sent:not(:empty) {
  margin-top: 2rem;
}

#error-container label,
#message-sent label {
  margin-bottom: 0;
}

.fade.in {
  opacity: 1;
}

.modal-backdrop.in {
  opacity: 0.65;
}

.modal.in .modal-dialog {
  top: 17%;
  -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
          transform: translate(0, 0);
}

@media (min-width: 576px) {
  .modal-dialog {
    max-width: 520px;
    margin: 30px auto;
  }
}

.ui-datepicker td span,
.ui-datepicker td a {
  -webkit-transition: none;
  transition: none;
}

.alignnone {
  margin: 5px 30px 20px 0;
}

.aligncenter,
div.aligncenter {
  display: block;
  margin: 5px auto 5px auto;
}

.alignright {
  float: right;
  margin: 5px 0 20px 30px;
}

.alignleft {
  float: left;
  margin: 5px 30px 20px 0;
}

a img.alignright {
  float: right;
  margin: 5px 0 20px 30px;
}

a img.alignnone {
  margin: 5px 30px 20px 0;
}

a img.alignleft {
  float: left;
  margin: 5px 30px 20px 0;
}

a img.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.wp-caption {
  border: 1px solid transparent;
  max-width: 96%;
  /* Image does not overflow the content area */
  padding: 5px 5px 3px;
  text-align: center;
}

.wp-caption.alignnone {
  margin: 5px 30px 20px 0;
}

.wp-caption.alignleft {
  margin: 5px 30px 20px 0;
}

.wp-caption.alignright {
  margin: 5px 0 20px 30px;
}

.wp-caption img {
  border: 0 none;
  height: auto;
  margin: 0;
  max-width: 100%;
  padding: 0;
  width: auto;
}

.wp-caption p.wp-caption-text {
  font-size: 11px;
  line-height: 17px;
  margin: 0;
  padding: 5px 5px 1px;
}

/* Text meant only for screen readers. */
.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden;
}

.screen-reader-text:hover,
.screen-reader-text:active,
.screen-reader-text:focus {
  border-radius: 3px;
  clip: auto !important;
  display: block;
  font-weight: bold;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
  /* Above WP toolbar. */
}

.wp-caption {
  margin-bottom: 1.6em;
  max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
  display: block;
  margin: 0;
}

.wp-caption-text {
  line-height: 1.5;
  padding: 0.5em 0;
}

.gallery {
  margin-bottom: 1.6em;
}

.gallery-item:not(.gallery-common),
.gallery-item:not(.gallery-grid),
.gallery-item:not(.gallery-grid-one) {
  display: inline-block;
  padding: 1.79104477%;
  text-align: center;
  vertical-align: top;
  width: 100%;
}

.search-results .gallery-item.type-gallery-item {
  text-align: inherit;
}

.gallery-columns-2 .gallery-item {
  max-width: 50%;
}

.gallery-columns-3 .gallery-item {
  max-width: 33.33%;
}

.gallery-columns-4 .gallery-item {
  max-width: 25%;
}

.gallery-columns-5 .gallery-item {
  max-width: 20%;
}

.gallery-columns-6 .gallery-item {
  max-width: 16.66%;
}

.gallery-columns-7 .gallery-item {
  max-width: 14.28%;
}

.gallery-columns-8 .gallery-item {
  max-width: 12.5%;
}

.gallery-columns-9 .gallery-item {
  max-width: 11.11%;
}

.gallery-icon img {
  margin: 0 auto;
}

.gallery-caption {
  display: block;
  line-height: 1.5;
  padding: 0.5em 0;
}

.gallery-columns-6 .gallery-caption,
.gallery-columns-7 .gallery-caption,
.gallery-columns-8 .gallery-caption,
.gallery-columns-9 .gallery-caption {
  display: none;
}

.btn, input[type="submit"],
.read-more {
  cursor: pointer;
  border: none;
  border-radius: 0;
}

.btn, input[type="submit"],
.read-more, .btn:active, input:active[type="submit"],
.read-more:active, .btn.active, input.active[type="submit"],
.active.read-more, .btn:focus, input:focus[type="submit"],
.read-more:focus, .btn.focus, input.focus[type="submit"],
.focus.read-more {
  box-shadow: none;
  outline: none;
}

.pagination {
  margin: 3.5rem auto 0;
  text-align: center;
}

.pagination:empty {
  display: none;
}

.pagination span,
.pagination a,
.page-links span,
.page-links a {
  display: inline-block;
  width: 4.4rem;
  height: 4.4rem;
  margin: 0 1px 2px;
  font-size: 1.6rem;
  font-weight: normal;
  line-height: 4.6rem;
  text-align: center;
}

.page-links span,
.page-links a {
  margin-left: 8px;
  margin-right: 8px;
  text-align: center;
}

.banner {
  position: relative;
  padding-top: 4.5rem;
  padding-bottom: 4rem;
  background-repeat: no-repeat;
  background-position: center top;
  background-size: cover;
}

.banner-image-overlay {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  opacity: .88;
}

.banner .container {
  position: relative;
}

.page-title {
  margin-bottom: 0;
  font-size: 2.4rem;
  font-weight: 600;
  line-height: 1;
}

.hide-banner-text {
  min-height: 154px;
}

.hide-banner-text .page-title,
.hide-banner-text .breadcrumb-nav {
  display: none;
}

.breadcrumb {
  margin-top: 1.8rem;
  margin-bottom: 0;
  font-size: 1.5rem;
  font-weight: 300;
}

.breadcrumb > li {
  float: left;
  margin-right: .7rem;
  margin-bottom: 0;
}

.breadcrumb > li:last-child {
  margin-right: 0;
}

.breadcrumb .divider {
  margin-left: .9rem;
}

.breadcrumb .divider:before {
  content: "\f105";
  display: inline-block;
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  font-size: inherit;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
}

.breadcrumb a {
  color: inherit;
}

.filters {
  padding-top: 2rem;
  padding-bottom: 1.1rem;
  margin-bottom: 0;
}

@media (min-width: 992px) {
  .filters {
    padding-top: 0;
    padding-bottom: 0;
  }
}

.filters-wrapper {
  margin-bottom: 5.5rem;
  border-bottom: 1px solid transparent;
}

.filters > li {
  float: left;
  margin: 0 3rem 1rem 0;
}

@media (min-width: 992px) {
  .filters > li {
    margin-bottom: -2px;
  }
}

.filters > li a {
  display: block;
  position: relative;
  border-bottom: 2px solid transparent;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  color: inherit;
}

@media (min-width: 992px) {
  .filters > li a {
    padding-top: 2.4rem;
    padding-bottom: 2.4rem;
  }
  .filters > li a:after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -10px;
    margin-left: -4px;
    border: 4px solid transparent;
  }
}

.widget {
  margin-bottom: 5rem;
}

.widget *:last-child {
  margin-bottom: 0;
}

.widget ul {
  margin-bottom: 0;
}

.widget li {
  overflow: hidden;
}

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

.widget .post-video .video-wrapper {
  padding-bottom: 56.3%;
  position: relative;
  width: 100%;
  height: 0;
}

.widget .post-video iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

@media (max-width: 991px) {
  .sidebar {
    margin-top: 5rem;
  }
}

.sidebar .title {
  margin-bottom: 2.3rem;
  font-size: 2.1rem;
}

.sidebar .widget:last-child {
  margin-bottom: 0;
}

.sidebar .widget_recent_comments li,
.sidebar .widget_recent_entries li,
.sidebar .widget_categories li,
.sidebar .widget_archive li,
.sidebar .widget_pages li,
.sidebar .widget_meta li {
  padding-top: 1rem;
  padding-bottom: 1rem;
  font-size: 1.4rem;
  border-top: 1px solid transparent;
}

.sidebar .widget_recent_comments li:last-child,
.sidebar .widget_recent_entries li:last-child,
.sidebar .widget_categories li:last-child,
.sidebar .widget_archive li:last-child,
.sidebar .widget_pages li:last-child,
.sidebar .widget_meta li:last-child {
  border-bottom: 1px solid transparent;
}

.sidebar .widget_recent_comments li .children,
.sidebar .widget_recent_entries li .children,
.sidebar .widget_categories li .children,
.sidebar .widget_archive li .children,
.sidebar .widget_pages li .children,
.sidebar .widget_meta li .children {
  padding-top: 1rem;
}

.sidebar .widget_recent_comments li .children li:last-child,
.sidebar .widget_recent_entries li .children li:last-child,
.sidebar .widget_categories li .children li:last-child,
.sidebar .widget_archive li .children li:last-child,
.sidebar .widget_pages li .children li:last-child,
.sidebar .widget_meta li .children li:last-child {
  padding-bottom: 0;
  border-bottom: none;
}

.sidebar .widget_recent_comments li:last-child,
.sidebar .widget_recent_entries li:last-child,
.sidebar .widget_categories li:last-child,
.sidebar .widget_archive li:last-child,
.sidebar .widget_pages li:last-child,
.sidebar .widget_meta li:last-child {
  margin-bottom: 0;
}

.site-footer .widget_recent_comments li,
.site-footer .widget_recent_entries li,
.site-footer .widget_categories li,
.site-footer .widget_archive li,
.site-footer .widget_pages li,
.site-footer .widget_meta li {
  margin-bottom: 1.8rem;
}

.site-footer .widget_recent_comments li .children,
.site-footer .widget_recent_entries li .children,
.site-footer .widget_categories li .children,
.site-footer .widget_archive li .children,
.site-footer .widget_pages li .children,
.site-footer .widget_meta li .children {
  margin-top: 1.8rem;
}

.site-footer .widget_recent_comments li:last-child,
.site-footer .widget_recent_entries li:last-child,
.site-footer .widget_categories li:last-child,
.site-footer .widget_archive li:last-child,
.site-footer .widget_pages li:last-child,
.site-footer .widget_meta li:last-child {
  margin-bottom: 0;
}

.widget_recent_entries .post-date {
  display: block;
  font-size: 1.2rem;
}

.widget_wp_email_capture_widget_class .textwidget {
  margin-bottom: 1rem;
}

.widget input[type="text"],
.widget input[type="email"],
.widget input[type="search"] {
  float: left;
  width: 100%;
  padding: 0 2rem;
  margin-bottom: 2.5rem;
  border: 1px solid transparent;
  border-right: none;
}

.widget button,
.widget input[type="text"],
.widget input[type="email"],
.widget input[type="search"],
.widget input[type="submit"] {
  height: 5rem;
}

.widget button,
.widget input[type="submit"] {
  width: 35%;
  padding: 0;
  border: 1px solid transparent;
}

.widget_product_search label,
.widget .search-form label,
.widget_search label {
  display: none;
}

.widget_product_search input[type="text"],
.widget_product_search input[type="email"],
.widget_product_search input[type="search"],
.widget .search-form input[type="text"],
.widget .search-form input[type="email"],
.widget .search-form input[type="search"],
.widget_search input[type="text"],
.widget_search input[type="email"],
.widget_search input[type="search"] {
  width: 81.5%;
  margin-bottom: 0;
}

.widget_product_search button,
.widget_product_search input[type="submit"],
.widget .search-form button,
.widget .search-form input[type="submit"],
.widget_search button,
.widget_search input[type="submit"] {
  width: 18.5%;
  text-indent: -99999px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 20px;
}

.wp-email-capture-error {
  width: 100%;
  background-color: transparent;
  margin: 0 0 8px;
  font-weight: normal;
}

.tagcloud a {
  display: inline-block;
  margin: 0 0.4rem 0.8rem 0;
  padding: 0.7rem 1.4rem;
  font-size: 1.4rem !important;
  text-transform: capitalize;
  border: 1px solid transparent;
  -webkit-transition: all 0.15s linear;
  transition: all 0.15s linear;
}

.widget_calendar {
  text-align: center;
}

.widget_calendar table {
  width: 100%;
}

.widget_calendar caption {
  padding: 0;
  margin-bottom: 1.5rem;
  caption-side: top;
}

.widget_calendar th {
  text-align: center;
}

.widget_calendar th,
.widget_calendar td {
  padding: .9rem .5rem;
  border: 1px solid transparent;
}

.widget_calendar a,
.widget_calendar #today {
  font-weight: 700;
}

.tabs .tab-head {
  text-align: center;
  float: left;
  width: 33.3333333333%;
  position: relative;
  cursor: pointer;
}

.tabs .tabs-content {
  display: none;
  clear: both;
}

.tabs .tab-post-listing {
  margin-bottom: 2rem;
}

.tabs .tab-post-listing:last-child {
  margin-bottom: 0;
}

.tabs .tab-post-listing figure {
  float: left;
  margin: 0 15px 0 0;
}

.tabs .tab-post-listing h6 {
  font-size: 14px;
  margin: 2px 0;
  line-height: 18px;
}

.tabs .tab-post-listing span {
  font-size: 12px;
}

.tabs .avatar {
  width: 100%;
}

.tabs img {
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
}

.tabs img:hover {
  opacity: .8;
}

.sidebar .tab-head {
  padding: 14px 0;
  font-size: 1.3rem;
  border: 1px solid transparent;
}

.sidebar .tab-head + .tab-head {
  border-left: none;
}

.sidebar .tab-head h6 {
  font-size: inherit;
}

.sidebar .tab-head.active {
  background: #fff;
  border-top: 2px solid transparent;
  border-bottom-color: transparent;
}

.sidebar .tabs-content {
  padding: 20px 15px 25px;
  border: 1px solid transparent;
  border-top: none;
}

.sidebar .tab-post-listing figure {
  width: 78px;
}

.site-footer h6 {
  color: inherit;
}

.site-footer .tab-head {
  padding: 8px 10px;
}

.site-footer .tab-head h6 {
  margin: 4px 0;
}

.site-footer .tabs-content {
  padding: 17px 0 0;
  border-top: 2px solid transparent;
}

.site-footer .tab-post-listing figure {
  width: 64px;
}

.widget-popular-blog-posts-list > li:not(:last-child) {
  margin-bottom: 2rem;
}

.widget-popular-blog-posts-figure {
  float: left;
  width: 88px;
  margin: 0 2rem 0 0;
}

.widget-popular-blog-posts img {
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
}

.widget-popular-blog-posts img:hover {
  opacity: .8;
}

.widget-popular-blog-posts-content {
  display: table;
}

.widget-popular-blog-posts-title {
  font-size: 1.4rem;
  font-weight: normal;
  line-height: 1.5;
  margin-bottom: 1rem;
}

.widget-popular-blog-posts-meta {
  font-size: 1.2rem;
}

.widget-popular-blog-posts .blog-link i {
  margin-left: 15px;
  vertical-align: -1px;
  -webkit-transition: color 0.2s linear;
  transition: color 0.2s linear;
}

.site-footer .widget-popular-blog-posts-title {
  color: inherit;
}

/*-------------------------------------------------------------------*/
/* 03 - Header
/*-------------------------------------------------------------------*/
.site-header .stick {
  position: fixed;
  z-index: 9999;
  width: 100%;
  top: 0;
}

@media (max-width: 991px) {
  .site-header .container {
    max-width: 100%;
  }
}

.site-header-top {
  font-weight: 300;
  border-bottom: 1px solid transparent;
}

@media (max-width: 767px) {
  .site-header-top {
    text-align: center;
  }
}

.site-header-top-common, .opening-hours, .header-social-nav, .header-search-form-container input {
  padding-top: 1.4rem;
  padding-bottom: 1.4rem;
}

@media (min-width: 768px) {
  .site-header-top-col-right {
    text-align: right;
  }
}

@media (max-width: 767px) {
  .site-header-middle {
    text-align: center;
  }
}

.site-header-middle .row {
  min-height: 95px;
  padding-top: 1.4rem;
  padding-bottom: 1.4rem;
}

@media (min-width: 768px) {
  .site-header-middle-col-right {
    text-align: right;
  }
}

.opening-hours {
  margin-bottom: 0;
  font-size: 1.4rem;
}

@media (min-width: 768px) {
  .opening-hours .icon-clock {
    margin-right: .8rem;
  }
}

.opening-hours span,
.opening-hours svg {
  display: inline-block;
  vertical-align: middle;
}

.header-social-nav {
  display: inline-block;
  margin-bottom: 0;
  font-size: 1.8rem;
  line-height: 1;
  vertical-align: middle;
}

.header-social-nav a {
  opacity: .6;
}

.header-social-nav a:hover {
  opacity: 1;
}

.header-social-nav > li {
  float: left;
  margin-right: 1.6rem;
}

.header-social-nav > li:last-child {
  margin-right: 0;
}

.header-social-nav + .header-search-form-container {
  margin-left: 1.6rem;
}

.header-search-form-container {
  position: relative;
  display: none;
  min-width: 26.5rem;
  font-size: 1.4rem;
  vertical-align: middle;
  border-left: 1px solid transparent;
}

@media (min-width: 1200px) {
  .header-search-form-container {
    display: inline-block;
  }
}

.header-search-form-container input {
  width: 100%;
  padding-right: 2.8rem;
  padding-left: 1.7rem;
  font-weight: inherit;
  border: none;
}

.header-search-form-container .search-submit {
  position: absolute;
  top: 0;
  right: 0;
  padding: 15px 3px 9px;
  cursor: pointer;
}

.header-search-form-container .search-submit, .header-search-form-container .search-submit:hover, .header-search-form-container .search-submit:focus, .header-search-form-container .search-submit:active {
  background-color: transparent;
  border-color: transparent;
}

@media (max-width: 767px) {
  .site-logo {
    margin-bottom: 1.5rem;
  }
}

.site-logo img {
  display: inline-block;
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}

.site-title {
  display: inline-block;
  margin-bottom: 0;
  font-size: 2.1rem;
  font-weight: 700;
  line-height: 2.4rem;
  vertical-align: middle;
}

.tag-line {
  display: block;
  font-size: 1.2rem;
  vertical-align: middle;
}

@media (min-width: 1366px) {
  .tag-line {
    display: inline-block;
    margin-left: 1.2rem;
  }
}

.header-address {
  position: relative;
  display: inline-block;
  max-width: 238px;
  margin-top: 1rem;
  padding: 0 0 0 3.8rem;
  font-size: 1.4rem;
  line-height: 1.45;
  text-align: left;
}

.header-address > address {
  margin-bottom: 0;
}

@media (min-width: 992px) {
  .header-address + .header-contact-number {
    margin-left: 2rem;
  }
}

.header-address .icon-pin {
  position: absolute;
  top: 2px;
  left: -3.3px;
}

.header-contact-number {
  position: relative;
  display: inline-block;
  margin-top: 1rem;
  padding: 0 0 0 3.3rem;
  text-align: left;
  line-height: 1;
}

.header-contact-number .icon-phone {
  position: absolute;
  top: -1px;
  left: -4px;
  -webkit-transform: rotate(14deg);
      -ms-transform: rotate(14deg);
          transform: rotate(14deg);
}

.header-contact-number > small {
  display: block;
  margin: 0 0 3px;
  font-size: 1.1rem;
  text-transform: uppercase;
}

.header-contact-number > span,
.header-contact-number > a {
  font-size: 2.4rem;
  font-weight: 700;
}

.header-contact-number .desktop-version {
  display: none;
}

@media (min-width: 992px) {
  .header-contact-number .desktop-version {
    display: block;
  }
}

.header-contact-number .mobile-version {
  display: none;
}

@media (max-width: 991px) {
  .header-contact-number .mobile-version {
    display: block;
  }
}

.main-navigation {
  float: left;
}

.main-navigation ul {
  margin-bottom: 0;
}

.main-navigation a {
  display: block;
  padding: 1.2rem .9rem;
  -webkit-transition: color 0s linear, background 0.2s ease-in-out;
  transition: color 0s linear, background 0.2s ease-in-out;
}

@media (min-width: 1200px) {
  .main-navigation a {
    padding-right: 1.9rem;
    padding-left: 1.9rem;
  }
}

.main-navigation .main-menu > li,
.main-navigation .main-menu > ul > .page_item {
  float: left;
}

.main-navigation .main-menu li {
  position: relative;
}

.main-navigation .main-menu li:hover > .children,
.main-navigation .main-menu li:hover > .sub-menu {
  opacity: 1;
  visibility: visible;
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
  z-index: 1000;
}

.main-navigation .children,
.main-navigation .sub-menu {
  display: inline-block;
  position: absolute;
  top: 100%;
  left: 0;
  z-index: -1;
  width: 22rem;
  font-size: 1.5rem;
  opacity: 0;
  visibility: hidden;
  -webkit-transform: translateY(-1rem);
      -ms-transform: translateY(-1rem);
          transform: translateY(-1rem);
  -webkit-transition: all 0.3s ease-in-out, z-index 0.2s ease-in-out 0.1s;
  transition: all 0.3s ease-in-out, z-index 0.2s ease-in-out 0.1s;
}

.main-navigation .children li .children,
.main-navigation .children li .sub-menu,
.main-navigation .sub-menu li .children,
.main-navigation .sub-menu li .sub-menu {
  top: 0;
  left: 22rem;
}

.main-navigation .children a,
.main-navigation .sub-menu a {
  padding: 1rem 2rem;
}

/* Mean menu */
.mean-container {
  float: left;
  position: relative;
  min-height: 46px;
}

.mean-container .mean-bar {
  float: none;
  padding: 0;
  min-height: 46px;
  z-index: 999;
  border-bottom: none !important;
}

.mean-container .mean-nav {
  float: none;
  position: absolute;
  top: 100%;
  left: 0;
  width: 290px;
  margin-top: 0;
  overflow-x: hidden;
  font-size: 1.4rem;
}

.mean-container .mean-nav ul li a {
  border-top: 1px solid transparent;
}

.mean-container .mean-nav ul li a.mean-expand {
  width: 2.4rem;
  height: 2.4rem;
  padding: 1.2rem !important;
  line-height: 2.5rem;
  border-left: 1px solid transparent !important;
  border-bottom: 1px solid transparent !important;
}

.mean-container .mean-nav ul li li a {
  border-top: 1px solid transparent;
}

.mean-container .mean-nav ul li a,
.mean-container .mean-nav ul li li a {
  opacity: 1;
  padding-top: 1.2rem;
  padding-bottom: 1.2rem;
}

.header-appointment-button {
  position: relative;
  float: right;
  display: inline-block;
  padding: 1rem 2rem 1rem 5rem;
  cursor: pointer;
}

@media (min-width: 992px) {
  .header-appointment-button {
    padding-top: 1.2rem;
    padding-bottom: 1.2rem;
  }
}

.header-appointment-button .icon-calendar {
  position: absolute;
  top: 12.35px;
  left: 16px;
}

/*-------------------------------------------------------------------*/
/* 04 - Footer
/*-------------------------------------------------------------------*/
.call-to-action {
  padding: 3rem 0;
}

@media (min-width: 1200px) {
  .call-to-action {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
  .call-to-action .row + .row {
    margin-top: 4rem;
  }
}

.call-to-action a {
  color: inherit;
}

.call-to-action img {
  max-width: 100%;
  height: auto;
}

@media (max-width: 1199px) {
  .call-to-action-item {
    margin-top: 3rem;
    margin-bottom: 3rem;
  }
}

.call-to-action-icon {
  display: inline-block;
  max-width: 49px;
  min-width: 32px;
  padding-right: 17px;
}

.call-to-action-action {
  display: inline-block;
  vertical-align: middle;
  max-width: calc(100% - 49px);
}

.call-to-action-title {
  margin-bottom: .2rem;
  font-size: 1.5rem;
  font-weight: normal;
  color: inherit;
}

.call-to-action-content {
  margin-bottom: 0;
  font-size: 1.5rem;
  line-height: 1.534;
}

.site-footer {
  font-size: 1.4rem;
}

.site-footer a {
  color: inherit;
}

.site-footer .title {
  margin-bottom: 4rem;
  font-size: 1.6rem;
}

.site-footer .widget_recent_comments li,
.site-footer .widget_recent_entries li,
.site-footer .widget_categories li,
.site-footer .widget_archive li,
.site-footer .widget_pages li,
.site-footer .widget_meta li {
  position: relative;
  padding-left: 3rem;
  margin-bottom: 1.5rem;
}

.site-footer .widget_recent_comments li:before,
.site-footer .widget_recent_entries li:before,
.site-footer .widget_categories li:before,
.site-footer .widget_archive li:before,
.site-footer .widget_pages li:before,
.site-footer .widget_meta li:before {
  position: absolute;
  top: 3.3px;
  left: 0;
  content: "";
  display: inline-block;
  width: 18px;
  height: 18px;
  -webkit-transition: background-position 0.4s ease;
  transition: background-position 0.4s ease;
  background-repeat: no-repeat;
  background-position: left 0;
}

.site-footer .widget_recent_comments li:hover:before,
.site-footer .widget_recent_entries li:hover:before,
.site-footer .widget_categories li:hover:before,
.site-footer .widget_archive li:hover:before,
.site-footer .widget_pages li:hover:before,
.site-footer .widget_meta li:hover:before {
  background-position: left -42px;
}

.site-footer-top {
  padding-top: 10rem;
  padding-bottom: 5rem;
}

.site-footer-bottom {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

@media (max-width: 767px) {
  .site-footer-bottom {
    text-align: center;
  }
}

@media (min-width: 768px) {
  .site-footer-bottom-right-col {
    text-align: right;
  }
}

.site-info {
  font-size: 1.3rem;
}

.site-info p {
  margin-bottom: 0;
}

.footer-navigation {
  display: none;
  margin-bottom: 1rem;
}

@media (min-width: 768px) {
  .footer-navigation {
    display: block;
  }
}

.footer-navigation ul {
  margin-bottom: 0;
}

.footer-navigation .footer-menu .page_item,
.footer-navigation .footer-menu > li {
  float: left;
  margin-right: 1.2rem;
}

@media (min-width: 768px) {
  .footer-navigation .footer-menu .page_item,
  .footer-navigation .footer-menu > li {
    margin-right: 2.3rem;
  }
}

.footer-navigation .footer-menu .page_item:last-child,
.footer-navigation .footer-menu > li:last-child {
  margin-right: 0;
}

.footer-navigation .footer-menu .children,
.footer-navigation .footer-menu .sub-menu {
  display: none;
}

.footer-navigation .footer-menu a {
  display: block;
}

.footer-social-nav {
  overflow: hidden;
  margin-bottom: 0;
  line-height: 1;
}

@media (max-width: 767px) {
  .footer-social-nav {
    margin-top: 1rem;
  }
}

.footer-social-nav > li {
  float: left;
  margin-right: 1.5rem;
}

.footer-social-nav > li:last-child {
  margin-right: 0;
}

.footer-social-nav-wrapper {
  display: inline-block;
}

@media (min-width: 768px) {
  .footer-social-nav-wrapper {
    text-align: left;
  }
}

.footer-social-nav-title {
  margin-bottom: 1.4rem;
  font-size: inherit;
  font-weight: 600;
}

@media (max-width: 767px) {
  .footer-social-nav-title {
    display: none;
  }
}

.scroll-top {
  position: fixed;
  right: 18px;
  bottom: 18px;
  z-index: 1000;
  width: 42px;
  height: 42px;
  line-height: 40px;
  font-size: 14px;
  text-align: center;
}

/*-------------------------------------------------------------------*/
/* 05 - Pages
/*-------------------------------------------------------------------*/
.home-section {
  padding-top: 9rem;
  padding-bottom: 9rem;
}

.home-section-header {
  text-align: center;
  margin-bottom: 6.5rem;
}

@media (min-width: 992px) {
  .home-section-header {
    padding-right: 15%;
    padding-left: 15%;
  }
}

.home-section-title {
  font-size: 2.4rem;
  font-weight: 300;
  margin-bottom: 1rem;
}

.home-section-title span {
  font-weight: 600;
}

.home-section-description {
  font-size: 1.5rem;
  font-weight: 300;
}

.home-contents {
  font-size: 1.5rem;
}

.home-contents {
  padding-top: 5rem;
  padding-bottom: 6rem;
}

.flexslider {
  overflow: hidden;
  margin: 0;
  border: none;
  box-shadow: none;
  border-radius: 0;
}

.flexslider .slides > li {
  position: relative;
  overflow: hidden;
}

@media screen and (max-width: 860px) {
  .flexslider .flex-direction-nav .flex-next {
    right: -60px;
  }
  .flexslider .flex-direction-nav .flex-prev {
    left: -60px;
  }
}

.flexslider:hover .flex-direction-nav .flex-next,
.flexslider:hover .flex-direction-nav .flex-prev {
  opacity: 1;
}

.flexslider:hover .flex-direction-nav .flex-next {
  right: 0;
}

.flexslider:hover .flex-direction-nav .flex-prev {
  left: 0;
}

@media screen and (max-width: 860px) {
  .flexslider:hover .flex-direction-nav .flex-next {
    right: 0;
  }
  .flexslider:hover .flex-direction-nav .flex-prev {
    left: 0;
  }
}

.flex-direction-nav a {
  width: 6rem;
  height: 6rem;
  line-height: 6.3rem;
  margin-top: -3rem;
  font-size: 2rem;
  text-align: center;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  text-shadow: none;
}

.flex-direction-nav a:hover {
  opacity: 1;
}

.flex-direction-nav a .fa:before {
  position: relative;
}

.flex-direction-nav a.flex-prev:before, .flex-direction-nav a.flex-next:before {
  display: none;
}

.flex-direction-nav a.flex-next {
  text-align: center;
}

.flex-direction-nav a.flex-next .fa:before {
  right: -.3rem;
}

.flex-control-nav {
  bottom: 1.3rem;
  z-index: 500;
}

.flex-control-paging li {
  min-width: 1.4rem;
  margin-left: 0;
  margin-right: 0;
  vertical-align: middle;
}

.flex-control-paging li a {
  display: block;
  width: .8rem;
  height: .8rem;
  margin: 0 auto;
  border-radius: 50%;
  box-shadow: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.flex-control-paging li a.flex-active {
  width: 1rem;
  height: 1rem;
}

.home-slider {
  position: relative;
}

.home-slider .flexslider.loading {
  min-height: 550px;
  background: transparent no-repeat center center;
}

.home-slider-content-wrapper {
  display: none;
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  z-index: 999;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}

@media (min-width: 576px) {
  .home-slider-content-wrapper {
    display: block;
  }
}

@media (max-width: 991px) {
  .home-slider-content {
    width: 60%;
  }
}

@media (min-width: 768px) {
  .home-slider-content {
    width: 50%;
  }
}

@media (min-width: 1200px) {
  .home-slider-content {
    width: 39%;
  }
}

.home-slider-title {
  margin-bottom: 1.4rem;
  font-size: 2.8rem;
  text-transform: uppercase;
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: -1px;
}

@media (min-width: 992px) {
  .home-slider-title {
    font-size: 3.6rem;
  }
}

.home-slider-description {
  margin-bottom: 0;
  line-height: 2.2rem;
}

.announcement {
  display: none;
  margin-top: 2.5rem;
}

@media (min-width: 1200px) {
  .announcement {
    display: block;
  }
}

.announcement-left-col {
  float: left;
  padding: 2.8rem 1.5rem 0;
  margin-bottom: 2.8rem;
}

.announcement-right-col {
  padding: 4.8rem 1.5rem 0;
  margin-bottom: 2.8rem;
}

.announcement-heading {
  margin-bottom: 0;
  font-size: 2.4rem;
  font-weight: 600;
  line-height: 1.2;
  color: inherit;
}

.announcement span {
  line-height: 1;
}

.announcement .amount {
  font-size: 7.2rem;
  font-weight: 700;
}

.announcement .symbol {
  font-size: 1.8rem;
}

.announcement small {
  display: block;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
}

.announcement .btn, .announcement input[type="submit"],
.announcement .read-more {
  clear: both;
  padding: 1.6rem 2.5rem;
  font-size: 1.4rem;
  font-weight: 700;
  text-align: left;
  background-repeat: no-repeat;
  background-position: 93% center;
  background-size: 18px auto;
}

.announcement .btn:hover, .announcement input:hover[type="submit"],
.announcement .read-more:hover {
  background-position-x: 94%;
}

.rev_slider_wrapper + .home-features,
.home-slider + .home-features,
.home-features.overlap {
  position: relative;
  z-index: 500;
}

@media (min-width: 1200px) {
  .rev_slider_wrapper + .home-features,
  .home-slider + .home-features,
  .home-features.overlap {
    -webkit-transform: translateY(-14.2rem);
        -ms-transform: translateY(-14.2rem);
            transform: translateY(-14.2rem);
    margin-bottom: -12.2rem;
  }
}

.home-features {
  padding-bottom: 5rem;
}

.home-features-item {
  margin-bottom: 3rem;
  padding: 3.7rem 1.5rem 1.5rem;
  text-align: center;
  border-top: 2px solid transparent;
}

@media (min-width: 992px) {
  .home-features-item {
    padding: 4.7rem 4rem 4rem;
  }
}

.home-features-item-image {
  min-height: 68px;
  margin-bottom: 2.3rem;
}

.home-features-item-image img {
  max-width: 60px;
}

.home-features-item-title {
  margin-bottom: 1.7rem;
  font-size: 1.8rem;
  font-weight: 600;
  line-height: 1.3;
}

@media (min-width: 1200px) {
  .home-features-item-title {
    padding: 0 2.8rem;
  }
}

.home-features-item-content {
  font-size: 1.5rem;
  font-weight: 300;
  line-height: 1.8;
}

.home-doctors {
  padding-bottom: 7rem;
}

.home-doctors .btn-wrapper {
  margin-top: 3rem;
}

.home-doctors .btn, .home-doctors input[type="submit"],
.home-doctors .read-more {
  padding-left: 4rem;
  padding-right: 4rem;
}

.home-doctors .overlay {
  background-image: url("../../../common/images/doctor-interface-symbol.png");
  background-color: #7ace4c;
}

.home-services .btn-wrapper {
  position: relative;
  z-index: 500;
  margin-top: -6rem;
}

.home-services .btn, .home-services input[type="submit"],
.home-services .read-more {
  padding: 2.7rem 3.3rem;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 18px auto;
}

.services-item-icon img {
  max-width: 64px;
}

.home-blog figure {
  margin-bottom: 0;
}

.home-blog img {
  width: 100%;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.home-blog img:hover {
  opacity: .9;
}

.home-blog .entry-title {
  margin-bottom: 1.5rem;
  font-size: 1.8rem;
  font-weight: 600;
  line-height: 1.3;
}

.home-blog .entry-content-wrapper p {
  margin-bottom: 0;
  font-size: 1.5rem;
  font-weight: 300;
}

@media (max-width: 991px) {
  .col-large-post {
    margin-bottom: 3rem;
  }
}

.col-large-post .entry-content-wrapper {
  padding: 4.1rem 3.2rem;
}

.col-small-post .row:not(:last-child) {
  margin-bottom: 30px;
}

@media (max-width: 767px) {
  .col-small-post .col-md-6:not(:last-child) {
    margin-bottom: 30px;
  }
}

.col-small-post .entry-content-wrapper {
  padding: 2rem 2.5rem;
}

@media (min-width: 992px) {
  .col-small-post .entry-content-wrapper {
    min-height: 8.3rem;
  }
}

.col-small-post .entry-title {
  margin-bottom: 0;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.5;
}

.testimonials-carousel .owl-item {
  padding: 0 3px 3px;
}

.testimonials-carousel .owl-item img {
  width: auto;
}

.testimonials-carousel-item {
  margin-bottom: 5px;
  padding: 4.7rem 4.5rem;
  border-top: 2px solid transparent;
}

.testimonials-carousel-item-header {
  margin-bottom: 2.8rem;
}

.testimonials-carousel-item-title {
  font-size: 2.4rem;
  font-weight: 300;
}

.testimonials-carousel-item-text {
  font-size: 1.5rem;
  font-weight: 300;
  line-height: 1.8;
}

.testimonial-author-photo {
  float: left;
  width: 70px;
  height: 70px;
  margin-right: 1.6rem;
  border-radius: 50%;
}

.testimonial-author-content {
  display: table;
  padding-top: 1.2rem;
}

.testimonial-author-name {
  font-size: 1.6rem;
  font-weight: 400;
  margin-bottom: .4rem;
}

.testimonial-author-link {
  font-size: 1.4rem;
  font-weight: 300;
}

.doctors-page {
  padding-bottom: 3rem;
}

.doctor-common figure {
  margin-bottom: 0;
}

.doctor-common figure img {
  display: block;
  width: 100%;
  height: auto;
}

.doctor-grid {
  margin-bottom: 3rem;
}

.doctor-grid .entry-title {
  margin-bottom: .5rem;
  font-size: 1.6rem;
  font-weight: 400;
}

.doctor-grid .entry-content {
  padding: 2.5rem 3rem;
}

.doctor-grid .doctor-departments {
  font-size: 1.4rem;
  font-weight: 300;
}

/*------------------------------------------------------*/
/* Doctors Page styles
/*------------------------------------------------------*/
.doctors-single-page {
  padding-top: 9rem;
  padding-bottom: 4rem;
}

.single-side-content {
  margin-bottom: 4rem;
  border-bottom: 1px solid transparent;
}

.single-side-content .entry-title {
  margin-bottom: 2.5rem;
  padding-bottom: 2.5rem;
  font-size: 3rem;
  border-bottom: 2px solid transparent;
}

.single-side-content p {
  margin-bottom: 3rem;
  font-weight: 300;
}

.single-doctor-info {
  margin-bottom: 6rem;
}

.single-doctor-info .doctor-title {
  font-size: 2.4rem;
  margin-bottom: .8rem;
}

.single-doctor-info figure {
  margin-bottom: 3.6rem;
}

.single-doctor-info img {
  width: 100%;
  height: auto;
}

.single-doctor-info .doctor-departments {
  margin-bottom: 1.8rem;
  font-size: 1.4rem;
}

.single-doctor-info .social-icon {
  margin: 0 0 3rem;
}

.single-doctor-info .social-icon a {
  margin-right: 2rem;
  font-size: 1.8rem;
  line-height: 1;
}

.single-doctor-info .social-icon a:last-child {
  margin-right: 0;
}

.single-doctor-specialities {
  padding: 3rem 2.5rem;
  border: 1px solid transparent;
}

.single-doctor-specialities p {
  margin-bottom: 2rem;
}

.single-doctor-specialities p:last-child {
  margin-bottom: 0;
}

.single-doctor-specialities strong {
  margin-right: 5%;
  min-width: 25%;
}

.single-doctor-specialities span {
  overflow: hidden;
  width: 70%;
  font-size: 1.4rem;
}

.related-doctors {
  padding-top: 4rem;
  margin-bottom: 6rem;
}

@media (min-width: 768px) {
  .related-doctors .doctor-grid {
    margin-bottom: 0;
  }
}

.doctors-shortcode .hidden-sm {
  margin-bottom: 50px;
}

.doctors-shortcode .common-doctor .text-content {
  padding: 0 15px 0;
}

.doctor-shortcode-post {
  padding: 0;
}

.doctor-shortcode-post .common-doctor {
  margin-bottom: 20px;
}

.doctor-shortcode-post .common-doctor figure {
  margin-bottom: 0;
}

.doctor-shortcode-post .text-content {
  padding: 3rem 0;
}

.doctor-shortcode-post .doctor-departments {
  margin-bottom: 1.8rem;
  font-size: 1.4rem;
}

.doctor-shortcode-post .social-icon a {
  margin-right: 2rem;
  font-size: 1.8rem;
  line-height: 1;
}

.doctor-shortcode-post.style-vertical {
  margin-top: 5px;
}

@media (min-width: 567px) {
  .doctor-shortcode-post.style-vertical {
    width: 40%;
  }
}

@media (min-width: 768px) {
  .doctor-shortcode-post.style-vertical {
    width: 50%;
  }
}

@media (min-width: 992px) {
  .doctor-shortcode-post.style-vertical {
    width: 41%;
  }
}

@media (min-width: 767px) {
  .doctor-shortcode-post.style-horizontal {
    width: 100%;
  }
}

.style-horizontal .for-border {
  display: none;
}

@media (min-width: 767px) {
  .style-horizontal .text-content ul {
    text-align: inherit;
    padding-left: 0;
    padding-right: 0;
  }
  .style-horizontal.left .text-content {
    padding-left: 0;
    text-align: left;
  }
  .style-horizontal.right .text-content {
    padding-right: 0;
    text-align: right;
  }
}

.services-page {
  padding-top: 9rem;
  padding-bottom: 6rem;
}

.services-item {
  margin-bottom: 3rem;
}

.services-item figure {
  margin-bottom: 0;
}

.services-item p {
  margin-bottom: 0;
}

.services-item-featured img {
  display: block;
  width: 100%;
  height: auto;
}

.services-item-icon {
  padding-top: 5rem;
  text-align: center;
}

.services-item-title {
  margin-bottom: 2.4rem;
  font-size: 1.8rem;
  font-weight: 600;
}

.services-item-content-wrap {
  padding: 4rem 4rem 6rem;
  font-size: 1.5rem;
  font-weight: 300;
  text-align: center;
}

.services-item-one-column {
  margin-bottom: 3rem;
}

@media (max-width: 1199px) {
  .services-item-one-column .services-item-title {
    margin-bottom: 1.1rem;
  }
}

@media (min-width: 992px) {
  .services-item-one-column {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%;
    text-align: left;
  }
}

.services-item-one-column .services-item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin-bottom: 0;
  border: 1px solid transparent;
}

@media (min-width: 992px) {
  .services-item-one-column figure {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 40%;
        -ms-flex: 0 0 40%;
            flex: 0 0 40%;
    max-width: 40%;
  }
}

@media (min-width: 1200px) {
  .services-item-one-column figure {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 30%;
        -ms-flex: 0 0 30%;
            flex: 0 0 30%;
    max-width: 30%;
  }
}

.services-item-one-column .services-item-content-wrap {
  width: 100%;
  padding: 2.5rem;
  box-shadow: none;
}

@media (min-width: 992px) {
  .services-item-one-column .services-item-content-wrap {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 60%;
        -ms-flex: 0 0 60%;
            flex: 0 0 60%;
    max-width: 60%;
    padding: 3rem;
    text-align: left;
  }
}

@media (min-width: 1200px) {
  .services-item-one-column .services-item-content-wrap {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 70%;
        -ms-flex: 0 0 70%;
            flex: 0 0 70%;
    max-width: 70%;
  }
}

.services-item .overlay {
  background-image: url("../../../common/images/medical-interface-symbol.png");
}

/*------------------------------------------------------*/
/* Services Single page Styles
/*------------------------------------------------------*/
.services-single {
  padding: 70px 0;
}

.services-single .flexslider {
  position: relative;
  width: 48%;
  float: left;
  margin-right: 2%;
}

.services-single .flexslider ul {
  margin: 0;
}

.services-single .flexslider .flex-control-nav {
  position: absolute;
  right: 10px;
  bottom: 4px;
  z-index: 999;
  width: auto;
  margin-bottom: 0;
}

.services-single .flexslider .flex-control-nav li {
  margin: 0 6px;
}

.gallery-page {
  padding-bottom: 3rem;
}

.gallery-common figure {
  margin-bottom: 0;
}

.gallery-common figure img {
  display: block;
  width: 100%;
  height: auto;
}

.gallery-grid {
  margin-bottom: 3rem;
  -webkit-transition: box-shadow 0.4s ease;
  transition: box-shadow 0.4s ease;
}

.gallery-grid .entry-title {
  margin-bottom: 1rem;
  font-size: 1.8rem;
}

.gallery-grid .entry-content {
  padding: 4rem;
  text-align: center;
}

.gallery-grid .gallery-item-types {
  font-size: 1.4rem;
  font-weight: 300;
}

.overlay {
  background: center center no-repeat;
  width: 100%;
  height: 100%;
  opacity: 0;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 999;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
}

.overlay-effect {
  position: relative;
  overflow: hidden;
}

.overlay-effect:hover .overlay {
  height: 100%;
  -webkit-transform: rotate(0deg);
      -ms-transform: rotate(0deg);
          transform: rotate(0deg);
  opacity: 0.8;
}

/*------------------------------------------------------*/
/* Gallery Single Page Styles
/*------------------------------------------------------*/
.gallery-single-wrapper {
  padding: 8rem 0 6rem;
}

.gallery-single .gallery-single-post {
  position: relative;
  margin-bottom: 3rem;
}

.gallery-single .gallery-item-types {
  margin-bottom: 2rem;
}

.gallery-single #carousel {
  position: absolute;
  bottom: -35px;
  display: block;
  width: 90%;
  margin: auto 33px;
  padding: 0 48px;
  border: none;
  background: none;
}

.gallery-single #carousel .flex-viewport {
  padding: 8px 9px 8px 8px;
}

.gallery-single #carousel .slides img {
  width: 100% !important;
  cursor: pointer;
}

.gallery-single #carousel .slides img:hover {
  opacity: 0.8;
}

.gallery-single #carousel li {
  margin: 0 10px 0 0;
}

.gallery-single #carousel .flex-direction-nav a {
  width: 48px;
  height: 48px;
  position: absolute;
  top: 50%;
  margin-top: -24px;
  z-index: 9999;
  border-radius: 0;
  opacity: 1 !important;
  font-size: 0;
  -webkit-transition: none;
  transition: none;
}

.gallery-single #carousel .flex-direction-nav a:hover {
  background-position: 19px -31px;
}

.gallery-single #carousel .flex-direction-nav a:before {
  display: none;
}

.gallery-single #carousel .flex-direction-nav .flex-prev {
  background: 19px 19px no-repeat;
  left: 0;
}

.gallery-single #carousel .flex-direction-nav .flex-next {
  background: 19px 19px no-repeat;
  right: 0;
}

.gallery-single .entry-title {
  font-size: 24px;
}

.gallery-single .next-prev-posts {
  margin-bottom: 4rem;
  text-align: right;
}

.gallery-single .next-prev-posts a {
  display: inline-block;
  width: 4.8rem;
  height: 4.8rem;
  line-height: 4.8rem;
  font-size: 1.8rem;
  -webkit-transition: background 0.3s ease;
  transition: background 0.3s ease;
  text-align: center;
}

.gallery-single .next-prev-posts .close {
  display: none;
}

.related-gallery-items {
  margin-top: 4rem;
}

.related-gallery-items .home-section-header {
  margin-bottom: 5rem;
}

.related-gallery-items .gallery-grid .entry-content {
  padding-left: 2.5rem;
  padding-right: 2.5rem;
}

.blog-page {
  padding: 9rem 0 7rem;
}

.blog-page .left_meta time {
  font-size: 18px;
}

@media (min-width: 576px) {
  .blog-page .left_meta time {
    padding: 18px 0 14px;
    display: block;
    text-align: center;
    font-weight: 500;
    text-transform: uppercase;
  }
  .blog-page .left_meta time strong {
    font-size: 30px;
    font-weight: 800;
    line-height: 38px;
    display: block;
  }
}

.blog-page .comments_count {
  display: none;
  text-align: center;
  padding: 14px 5px;
  font-size: 13px;
}

@media (min-width: 576px) {
  .blog-page .comments_count {
    display: block;
  }
}

.blog-page .comments_count a {
  display: inline-block;
  padding: 0 0 0 25px;
  background: 0 6px no-repeat;
  font-weight: 700;
  font-size: 1.5rem;
}

.blog-page .comments_count a:hover {
  background-position: 0 -20px;
}

.blog-page .right-contents:not(.single-right-contents) {
  border-bottom: 1px solid transparent;
  padding-bottom: 40px;
}

@media (min-width: 576px) {
  .blog-page .right-contents {
    float: right;
    width: calc(100% - 115px);
  }
}

.blog-page .post {
  margin-bottom: 40px;
}

.blog-page .post .left_meta {
  border-top: 2px solid transparent;
}

@media (min-width: 576px) {
  .blog-page .post .left_meta {
    width: 85px;
    float: left;
  }
}

.blog-page .sticky .right-contents {
  border-bottom: 2px solid transparent;
}

.blog-page .page {
  margin-bottom: 40px;
}

.blog-page figure {
  margin-bottom: 3rem;
}

.blog-page .post-title,
.blog-page .entry-title {
  margin: 0 0 15px 0;
  line-height: 32px;
}

.blog-page .entry-author {
  margin-bottom: 20px;
}

.blog-page .entry-author {
  display: inline-block;
}

.blog-page .format-quote blockquote.quote {
  font-size: 28px;
  font-weight: 800;
  background: 30px 30px no-repeat;
  padding: 30px 30px 20px 75px;
  margin-bottom: 0;
  border: 0;
  line-height: 36px;
}

.blog-page .format-quote blockquote.quote:before {
  content: normal;
}

.blog-page .format-quote blockquote.quote:after {
  content: normal;
}

.blog-page .format-quote blockquote.quote p {
  border-left: 1px solid transparent;
  padding: 0 0 0 20px;
  margin: 0;
  font-size: 28px;
  line-height: 36px;
  font-weight: 800;
}

.blog-page .format-quote blockquote.quote cite,
.blog-page .format-quote blockquote.quote cite a {
  font-size: 14px;
  font-weight: 400;
  margin: 8px 0;
  display: block;
}

.blog-page .gallery-slider {
  margin-bottom: 25px;
}

.blog-page .gallery-slider.loading {
  min-height: 447px;
  background: no-repeat center center;
}

.blog-page .flex-direction-nav a {
  background-size: cover;
  border-radius: 0;
}

.blog-page .video {
  margin-bottom: 25px;
}

.blog-page .format-link .link {
  background: 30px 25px no-repeat;
  padding: 25px 25px 25px 75px;
}

.blog-page .format-link .link .link-title,
.blog-page .format-link .link .link-title a {
  font-size: 28px;
  line-height: 36px;
  margin: 0 0 15px 0;
}

.blog-page .format-link .link a:hover {
  text-decoration: underline;
}

.blog-page .format-link .link-container {
  padding-left: 20px;
  border-left: 1px solid transparent;
  padding-bottom: 20px;
}

.blog-page .format-audio .audio {
  margin-bottom: 30px;
}

.blog-page .format-audio .audio audio {
  width: 100%;
}

.blog-page blockquote p {
  margin-bottom: 0 !important;
}

.blog-page p.wp-caption {
  margin: 0 !important;
}

.blog-page .flex-direction-nav {
  margin-bottom: 0;
}

.blog-page .flex-direction-nav li {
  margin: 0;
}

.blog-page .slides,
.blog-page .slides > li {
  margin: 0;
}

.main-contents {
  overflow: hidden;
  border-bottom: 1px solid transparent;
  padding-bottom: 40px;
  margin-bottom: 40px;
}

.entry-content {
  font-weight: 300;
}

.entry-content iframe {
  width: 100%;
  height: 280px;
}

@media (min-width: 768px) {
  .entry-content iframe {
    height: 400px;
  }
}

@media (min-width: 992px) {
  .entry-content iframe {
    height: 350px;
  }
}

@media (min-width: 1200px) {
  .entry-content iframe {
    height: 450px;
  }
}

.entry-content blockquote {
  padding: 20px 20px 20px 30px;
  border-left: 5px solid transparent;
  font-style: italic;
}

.entry-content blockquote p {
  margin: 0;
}

.entry-content td, .entry-content th {
  padding: 10px;
}

.entry-content table tbody td {
  border: 1px solid transparent;
}

.entry-content table tbody tr {
  border-top: 1px solid transparent;
}

.entry-content table tbody tr:first-child {
  border-top: 1px solid transparent;
}

.entry-content dl {
  line-height: 24px;
}

.entry-content dt {
  margin-bottom: 10px;
  line-height: 24px;
}

.entry-content dd {
  margin-left: 10px;
  margin-bottom: 10px;
  line-height: 24px;
}

.entry-content ol li,
.entry-content ul li {
  margin-bottom: 1rem;
}

.entry-content address {
  line-height: 24px;
}

.entry-content kbd {
  box-shadow: none;
}

.entry-content pre {
  white-space: pre-wrap;
  border: none;
  padding: 25px;
  margin-bottom: 3rem;
}

.entry-content .gallery img {
  border: none !important;
}

.accordion-content .entry-content {
  margin: 0;
}

.entry-footer {
  text-transform: capitalize;
}

.entry-footer .entry-meta {
  margin: 0;
}

.entry-footer .entry-tags,
.entry-footer .entry-categories {
  display: block;
}

.entry-footer .entry-categories {
  margin-bottom: .5rem;
}

.video .video-wrapper {
  padding-bottom: 56.3%;
  position: relative;
  width: 100%;
  height: 0;
}

.video iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.page-nav-btns {
  margin: 25px 0;
}

.page-nav-btns a {
  padding: 5px 15px;
  margin: 0 10px 0 0;
  display: inline-block;
}

.page-nav-btns a:hover {
  text-decoration: none;
}

/*------------------------------------------------------*/
/* jPlayer Styles
/*------------------------------------------------------*/
.audio-embed {
  margin-bottom: 20px;
}

.jp-jplayer {
  height: 38px;
  background-color: transparent;
  width: 100% !important;
}

.jp-video-container,
.jp-audio-container {
  position: relative;
  width: 100%;
  margin-bottom: 25px;
}

.jp-jplayer-video img {
  margin-bottom: 0 !important;
  width: 100% !important;
  height: auto !important;
  display: block;
}

.jp-jplayer-video {
  overflow: hidden;
}

.jp-jplayer-video video {
  display: block;
  width: 100.2% !important;
}

.jp-video-container {
  margin-bottom: 15px;
}

.jp-audio-container {
  width: 100%;
}

.jp-interface {
  position: relative;
  width: 100%;
  height: 38px;
  background: repeat-x right top;
  z-index: 100;
}

.jp-controls {
  list-style-type: none;
  padding: 0;
  margin: 0 !important;
}

.jp-controls li {
  display: inline;
}

.jp-controls a {
  border-bottom: none;
  position: absolute;
  overflow: hidden;
  text-indent: -9999px;
}

a.jp-play,
a.jp-pause {
  width: 27px;
  height: 27px;
  z-index: 1;
  outline: none;
  top: 11px;
  left: 10px;
}

a.jp-play {
  background: no-repeat 0 0;
}

a.jp-play:hover {
  background: 0 0 no-repeat;
}

a.jp-pause {
  background: 0 0 no-repeat;
  display: none;
}

a.jp-pause:hover {
  background: 0 0 no-repeat;
}

.jp-progress {
  box-sizing: border-box;
  margin: 13px 0;
  padding: 0 100px 0 33px;
  position: absolute;
  height: 10px;
  width: 100%;
}

.jp-seek-bar {
  background: 0 0 repeat-x;
  width: 0;
  height: 12px;
  cursor: pointer;
  position: relative;
  border-radius: 1px;
}

.jp-play-bar {
  width: 0;
  height: 12px;
  top: 0;
  position: relative;
  border-radius: 1px;
}

.jp-volume-bar-container {
  position: absolute;
  top: 0;
  right: 10px;
  width: 54px;
  height: 10px;
  margin: 10px 0;
}

.jp-volume-bar {
  position: relative;
  overflow: hidden;
  background: 0 0 repeat-x;
  width: 100%;
  height: 12px;
  cursor: pointer;
  top: 3px;
  border-radius: 1px;
}

.jp-volume-bar-value {
  width: 0;
  height: 12px;
  margin: 0;
  border-radius: 1px;
}

a.jp-mute,
a.jp-unmute {
  width: 30px;
  height: 30px;
  z-index: 1;
  outline: none;
  top: 11px;
  right: 59px;
}

a.jp-mute {
  background: transparent 0 0 no-repeat;
}

a.jp-mute:hover {
  background: transparent 0 0 no-repeat;
}

a.jp-unmute {
  background: 0 0 no-repeat;
}

a.jp-unmute:hover {
  background: 0 0 no-repeat;
}

.post-password-form {
  margin-bottom: 3rem;
}

.post-password-form label {
  margin-bottom: 0;
}

.post-password-form label input[type="password"] {
  margin-bottom: 0;
  padding-top: .9rem;
  padding-bottom: 1rem;
}

.post-password-form input[type="submit"] {
  vertical-align: bottom;
}

#comments-section {
  margin-bottom: 0;
}

#comments-section #comments-title {
  font-size: 1.8rem;
  margin-bottom: .3rem;
}

#comments-section > ol > li > .children {
  position: relative;
}

#comments-section .comment {
  list-style: none;
}

#comments-section .commentlist {
  margin: 0 0 30px 0;
  padding: 2px 0 5px 0;
  overflow: hidden;
}

.commentlist .children {
  margin: 0;
  padding: 0;
}

#comments-section .children > .comment {
  margin-top: 30px;
}

ol > .comment {
  margin: 30px 0 0;
}

#comments-section article > .comment-wrap {
  position: relative;
  z-index: 999;
  padding: 25px 20px;
}

#comments-section .children article {
  position: relative;
}

#comments-section .children article .left-border {
  position: absolute;
  background: left center no-repeat;
  width: 100%;
  height: 1px;
  top: 49%;
  left: 0;
  display: inline-block;
  z-index: 9;
}

#comments-section .children article .vertical-border {
  position: absolute;
  background: left top repeat-y;
  width: 1px;
  height: 50%;
  bottom: 51%;
  left: 0;
  display: inline-block;
  z-index: 9;
}

#comments-section .author .comment-reply-link {
  font-size: 11px;
}

.commentlist li.pingback {
  margin-left: 0;
  list-style: none;
  border-bottom: 1px solid #dedede;
  padding: 10px;
}

.commentlist li.pingback p {
  margin: 0;
}

.comment-meta {
  position: relative;
}

.comment-meta .comment-reply-link {
  font-size: 12px;
  padding: 5px 0;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 999;
  font-weight: 400;
}

.comment-meta h5.author,
.comment-meta h5.author a {
  font-size: 14px;
  font-weight: 500;
  margin: 0 0 5px 0;
  text-transform: capitalize;
}

.comment-meta h5.author cite,
.comment-meta h5.author a cite {
  font-style: normal;
}

.comment-meta time {
  display: block;
  margin: 0 0 15px 0;
  font-size: 12px;
  line-height: 18px;
}

.comment-body p:last-child {
  margin-bottom: 0;
}

.comment-detail-wrap {
  float: right;
  width: calc(100% - 95px);
}

@media (min-width: 992px) {
  .commentlist .children .depth-2 .comment-wrap {
    margin-left: 95px;
  }
}

@media (min-width: 992px) {
  .commentlist .children .depth-3 .comment-wrap {
    margin-left: 190px;
  }
}

@media (min-width: 1200px) {
  .commentlist .children .depth-4 .comment-wrap {
    margin-left: 285px;
  }
}

#respond {
  margin-top: 2rem;
}

#respond .comment-reply-title {
  font-size: 2.1rem;
}

#respond p {
  margin-bottom: 20px;
}

#respond input[type="text"],
#respond textarea {
  margin-bottom: 5px;
}

#respond #contact-form p.form-allowed-tags,
#respond #respond p.form-allowed-tags {
  font-size: 12px;
}

#respond #contact-form p.form-allowed-tags code,
#respond #respond p.form-allowed-tags code {
  font-size: 12px;
  display: block;
}

.logged-in-as {
  font-size: 14px;
  margin-bottom: 20px;
}

a.avatar {
  width: 80px;
  height: auto;
  margin: 0 15px 10px 0;
  float: left;
}

a.avatar img {
  width: 100%;
  height: auto;
}

#respond .form-submit {
  margin-top: 25px;
}

/*------------------------------------------------------*/
/* News shortcode styles
/*------------------------------------------------------*/
.news-shortcode {
  text-align: center;
}

.news-shortcode .common-blog-post {
  line-height: 20px;
}

.news-shortcode .text-content {
  padding-top: 25px;
}

.news-shortcode .entry-meta {
  font-size: 13px;
  margin-bottom: 15px;
}

.news-shortcode .gallery-slider {
  margin-bottom: 0;
}

.news-shortcode .gallery-slider.loading {
  min-height: 447px;
  background: no-repeat center center;
}

.news-shortcode .flex-direction-nav a {
  width: 60px;
  height: 60px;
  background-size: cover;
  margin-top: -30px;
  border-radius: 0;
}

.news-shortcode .video {
  margin-bottom: 0;
}

.news-shortcode .video .video-wrapper {
  padding-bottom: 61.0%;
  position: relative;
  width: 100%;
  height: 0;
}

.news-shortcode .video iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.news-shortcode .format-link .link {
  background: 30px 25px no-repeat;
  padding: 25px 25px 25px 75px;
}

.news-shortcode .format-link .link h3.link-title,
.news-shortcode .format-link .link h3.link-title a {
  font-size: 28px;
  line-height: 36px;
  margin: 0 0 15px 0;
}

.news-shortcode .format-link .link a:hover {
  text-decoration: underline;
}

.news-shortcode .format-link .link-container {
  padding-left: 20px;
  border-left: 1px solid transparent;
  padding-bottom: 20px;
}

.news-shortcode .format-audio .audio {
  margin-bottom: 30px;
}

.news-shortcode .format-audio .audio audio {
  width: 100%;
}

.news-shortcode blockquote p {
  margin-bottom: 0 !important;
}

.news-shortcode p.wp-caption {
  margin: 0 !important;
}

.news-shortcode .flex-direction-nav {
  margin-bottom: 0;
}

.news-shortcode .flex-direction-nav li {
  margin: 0;
  list-style: none;
}

.news-shortcode .slides,
.news-shortcode .slides > li {
  margin: 0;
}

.news-shortcode .hidden-sm {
  margin-bottom: 50px;
}

.news-shortcode figure {
  margin-bottom: 0;
  overflow: hidden;
}

.contact-page {
  padding: 8rem 0;
}

form input[type="text"],
form input[type="email"],
form input[type="url"],
form input[type="tel"],
form input[type="number"],
form input[type="date"],
form input[type="range"],
form input[type="password"],
form input[type="text"],
form textarea {
  width: 100%;
  height: auto;
  margin-bottom: 2rem;
  padding: 1.3rem 1.7rem;
  border: 1px solid transparent;
}

form input[type="file"] {
  margin-bottom: 3rem;
}

form input.error,
form textarea.error {
  border: 1px solid transparent;
}

form fieldset .common {
  display: inline-block;
  float: left;
  margin-left: 7px;
}

form p {
  margin: 0;
}

#error-container {
  margin: 0;
}

#error-container label {
  display: block;
  font-size: 1.4rem;
}

#message-sent {
  clear: both;
}

.contact-form input[type="text"],
.contact-form textarea {
  font-size: 1.4rem;
}

.contact-form textarea {
  display: block;
  height: 150px;
}

@media (min-width: 1200px) {
  .contact-form input[type="submit"] {
    padding: 1.2rem 3rem;
    margin: 0 0 0 2rem;
    float: right;
  }
}

.contact-form input[type="text"],
.contact-form textarea,
.contact-form .inspiry-recaptcha-wrapper {
  margin-bottom: 3rem;
}

@media (min-width: 1200px) {
  .contact-form #error-container:not(:empty),
  .contact-form #message-sent:not(:empty) {
    margin-top: 0;
  }
}

label.error {
  font-size: 1.4rem;
  font-weight: normal;
}

#contact-loader {
  display: block;
  float: right;
  margin: 1.7rem 0 0 0;
}

.comment-form-cookies-consent input[type="radio"],
.comment-form-cookies-consent input[type="checkbox"] {
  margin-right: .8rem;
}

.comment-form-cookies-consent label {
  margin-bottom: 0;
}

.comment-form-cookies-consent input[type="radio"],
.comment-form-cookies-consent input[type="checkbox"],
.comment-form-cookies-consent label {
  vertical-align: middle;
}

.gdpr-checkbox-wrapper {
  margin-bottom: 2rem;
}

.gdpr-checkbox-wrapper label {
  color: inherit;
}

.gdpr-checkbox-wrapper .gdpr-checkbox-label {
  display: block;
  font-weight: 700;
  margin-bottom: .5rem;
}

.gdpr-checkbox-wrapper .gdpr-text {
  vertical-align: middle;
}

.gdpr-checkbox-wrapper input[type="checkbox"] {
  margin: 0 .5rem 0 0;
}

.wpcf7-form > p {
  font-weight: bold;
  letter-spacing: 1rem;
}

.wpcf7-form span.wpcf7-form-control-wrap {
  display: inline !important;
}

.wpcf7-form span.wpcf7-not-valid-tip {
  font-weight: normal;
  letter-spacing: 0.5rem;
}

.wpcf7-form .wpcf7-form-control {
  margin-top: 5rem;
}

.wpcf7-form .wpcf7-list-item-label {
  font-weight: normal;
}

.wpcf7-form input[type="text"].wpcf7-quiz,
.wpcf7-form input[type="number"],
.wpcf7-form input[type="date"] {
  width: auto;
}

.contact-sidebar {
  margin-top: 5rem;
  font-size: 1.4rem;
}

@media (min-width: 768px) {
  .contact-sidebar {
    margin-top: 0;
  }
}

.contact-sidebar h2 {
  font-size: 2.6rem;
  margin-bottom: 2rem;
}

.contact-sidebar p,
.contact-sidebar address {
  margin-bottom: 2rem;
}

.contact-sidebar strong {
  font-weight: 600;
}

.contact-page-social-media {
  border-top: 1px solid transparent;
  padding-top: 2.5rem;
  margin-top: 2.5rem;
}

.contact-page-social-media-title {
  margin-bottom: 1.5rem;
  font-weight: 600;
}

.contact-page-social-media-list {
  list-style-type: none;
  padding: 0;
  margin: 0;
}

.contact-page-social-media-list li {
  display: inline-block;
  margin: 0 .5rem .5rem 0;
}

.contact-page-social-media-list a {
  display: inline-block;
  width: 36px;
  height: 36px;
  line-height: 39px;
  font-size: 18px;
  text-align: center;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

/* Map Styles */
.default-map-wrapper {
  margin-top: 3rem;
}

.map-wrapper h5 {
  margin-bottom: 2rem;
}

#map-canvas {
  width: 100%;
}

#map-canvas img {
  width: auto;
  max-width: none;
}

.default-map {
  height: 35.5rem;
}

.full-width-map {
  height: 42rem;
}

.appoint-page {
  padding: 8rem 0;
}

.appoint-page .entry-content {
  margin-bottom: 4rem;
}

.appoint-page .appoint-section {
  background: top center;
  padding: 2rem 3rem 7rem;
  border-radius: .5rem;
}

@media (min-width: 768px) {
  .appoint-page .appoint-section {
    margin-left: auto;
    margin-right: auto;
    padding-left: 7rem;
    padding-right: 7rem;
  }
}

@media (min-width: 992px) {
  .appoint-page .appoint-section {
    max-width: 80%;
  }
}

.appoint-page .appoint-section .top-icon {
  width: 100%;
  text-align: center;
  z-index: 99999;
}

.appoint-page .appoint-section .top-icon img {
  pointer-events: none;
}

.appoint-page form {
  background: bottom center repeat-x;
  padding: 8rem 2.5rem 4.5rem;
  margin-top: -3.6rem;
}

.appoint-page form input[type="text"],
.appoint-page form input[type="email"],
.appoint-page form textarea {
  width: 100%;
  border: 0;
  outline: none;
  border-bottom: 1px solid transparent;
  padding: .5rem;
}

.appoint-page form input[type="text"],
.appoint-page form input[type="email"],
.appoint-page form textarea {
  margin-bottom: 4rem;
}

.appoint-page form textarea {
  display: block;
  height: 22.5rem;
  margin-bottom: 3rem;
}

.appoint-page form .inspiry-recaptcha-wrapper {
  margin-bottom: 2.8rem;
}

#appointment-loader {
  display: none;
  margin: 0 2rem;
}

.default-page {
  padding: 9rem 0;
}

.arrow-style {
  padding-left: 0;
  text-align: left;
}

.arrow-style li {
  background: left 3px no-repeat;
  padding-left: 25px;
  line-height: 21px;
  margin-bottom: 30px;
  list-style: none;
}

.arrow-list-one ul {
  list-style: none;
  padding-left: 0;
}

.arrow-list-one ul li {
  padding-left: 25px;
  background: no-repeat 5px 7px;
}

.arrow-list-two ul {
  list-style: none;
  padding-left: 0;
}

.arrow-list-two ul li {
  padding-left: 28px;
  background: no-repeat 0 5px;
}

.arrow-list-three ul {
  list-style: none;
  padding-left: 0;
}

.arrow-list-three ul li {
  padding-left: 25px;
  background: no-repeat 5px 9px;
}

/*  Tabs
---------------------------------*/
.entry-content .tabs-nav {
  margin: 0 !important;
  padding: 0 !important;
}

.entry-content .tabs-nav li {
  float: left;
  margin: 0;
  list-style: none;
  padding: 14px 15px 12px;
  text-align: center;
  cursor: pointer;
  background: transparent;
  border-top: 1px solid transparent;
  border-left: 1px solid transparent;
  border-bottom: none;
  font-size: 15px;
}

.entry-content .tabs-nav li:last-child {
  border-right: 1px solid transparent;
}

.entry-content .tabs-nav li:hover,
.entry-content .tabs-nav li.active {
  background: #fff;
}

.entry-content .tabs-nav li.active {
  border-top: 3px solid transparent;
  margin-bottom: -2px;
  padding-top: 13px;
}

.entry-content .tabs-container {
  margin: 0 0 25px;
  display: block;
  border: 1px solid transparent;
  padding: 30px 30px;
}

.entry-content .tabs-container.vertical {
  width: 80%;
  float: left;
  position: relative;
  left: -1px;
}

.entry-content .tabs-nav.vertical {
  width: 20%;
  float: left;
}

.entry-content .tabs-nav.vertical li {
  float: none;
  border-right: 1px solid transparent;
}

.entry-content .tabs-nav.vertical li:last-child {
  border-bottom: 1px solid transparent;
}

p.message {
  position: relative;
  padding: 2.5rem 2.5rem 2rem;
  font-size: 1.4rem;
  line-height: 24px;
}

p.message .close {
  font-size: 24px;
  line-height: 11px;
  position: absolute;
  top: 10px;
  right: 11px;
  cursor: pointer;
  text-shadow: none;
}

p.message .close:focus {
  outline: none;
}

.alert-info {
  border-left: 3px solid transparent;
}

.alert-warning {
  border-left: 3px solid transparent;
}

.alert-success {
  border-left: 3px solid transparent;
}

.alert-danger {
  border-left: 3px solid transparent;
}

.left-arrow {
  margin: 0;
}

.left-arrow li {
  list-style: circle outside none;
}

.left-arrow:last-of-type {
  margin-bottom: 50px;
}

.dropcap {
  font-size: 44px;
  float: left;
  line-height: 44px;
  margin-right: 10px;
}

.dropcap.bg {
  font-size: 26px;
  float: left;
  line-height: 26px;
  margin: 10px 10px 0 0;
  padding: 5px 8px;
  display: inline-block;
}

table {
  border: 1px solid transparent;
  border-top: 0;
  font-size: 14px;
}

table thead {
  border: 0;
  font-weight: 700;
  padding: 0 1px;
}

table thead tr {
  border: 0;
}

table thead tr th {
  border: 0;
  border-right: 1px solid transparent;
  font-size: 14px;
  font-weight: 700;
}

table thead tr th:first-child {
  border-left: 1px solid transparent;
}

table thead tr th:last-child {
  border-right: 1px solid transparent;
}

table tbody tr:first-child {
  border-top: 0;
}

table tbody td {
  font-size: 14px;
  border: 1px solid transparent;
}

table tbody th {
  font-size: 14px;
  font-weight: 700;
}

table tbody tr {
  border-top: 1px solid transparent;
}

.table thead > tr > th,
.table tbody > tr > th,
.table tfoot > tr > th,
.table thead > tr > td,
.table tbody > tr > td,
.table tfoot > tr > td {
  padding: 16px;
}

.tab-widget .nav-tabs {
  border: 0;
  margin: 0;
}

.tab-widget .nav-tabs > li {
  margin: 0;
  width: 33.33333%;
  height: 55px;
  line-height: 55px;
  display: inline-block;
  cursor: pointer;
}

.tab-widget .nav-tabs > li:last-child {
  border: none;
}

.tab-widget .nav-tabs > li.active,
.tab-widget .nav-tabs > li.active:hover,
.tab-widget .nav-tabs > li.active:focus {
  border: none;
  border-radius: 0;
}

.tab-widget .tab-content {
  padding: 15px;
}

.tab-widget .tab-content figure {
  float: left;
  margin-right: 10px;
}

.tab-widget .tab-post {
  border-bottom: 1px solid transparent;
  padding: 10px;
  margin-bottom: 20px;
}

.tab-widget .tab-post h6 {
  margin: 0;
  font-weight: 500;
  line-height: 18px;
}

.tab-widget .tab-post time {
  font-size: 12px;
  font-weight: 400;
  margin-bottom: 15px;
  display: inline-block;
}

.tab-widget .tab-post p {
  margin: 0;
}

.tab-widget .tab-post:last-child {
  border-bottom: 0;
  padding: 0;
  margin-bottom: 0;
}

.tab-widget .tab-bottom {
  width: 100%;
}

.tab-widget .tab-bottom .left, .tab-widget .tab-bottom .right {
  width: 40px;
  height: 40px;
  display: inline-block;
  cursor: pointer;
}

.tab-widget .tab-bottom .left {
  background: center no-repeat;
  float: left;
}

.tab-widget .tab-bottom .left:hover {
  background: center no-repeat;
}

.tab-widget .tab-bottom .right {
  background: center no-repeat;
  float: right;
}

.tab-widget .tab-bottom .right:hover {
  background: center no-repeat;
}

.tab-var-one .nav-tabs > li {
  border-right: 1px solid transparent;
}

.tab-var-two .nav-tabs > li {
  border-right: 1px solid transparent;
}

.tab-var-three .nav-tabs > li {
  border-right: 1px solid transparent;
}

.flexslider-var-one ol, .flexslider-var-one ul {
  margin: 0;
}

.flexslider-var-one .slides li img {
  box-shadow: inset 0 0 34px 0 #000;
}

.flexslider-var-one .flex-control-thumbs {
  position: relative;
  width: 106px;
  float: left;
  margin-top: -40px;
}

.flexslider-var-one .flex-control-thumbs li {
  width: 106px;
  margin-bottom: 20px;
  position: relative;
}

.flexslider-var-one .flex-control-thumbs li.active {
  background: right center no-repeat;
}

.flexslider-var-one .flex-control-thumbs li.active span {
  position: absolute;
  top: 0;
  left: 0;
  border: 4px solid transparent;
  width: 94%;
  height: 78px;
  display: block;
  z-index: 999;
}

.flexslider-var-one .flex-control-thumbs img {
  width: auto;
  height: auto;
  opacity: 1;
  margin: 0 -4px 0 0;
}

.flexslider-var-one .flex-viewport {
  width: 440px;
  float: right;
}

.flexslider-var-one .flexslider {
  overflow: visible;
}

.flexslider-var-two ol, .flexslider-var-two ul {
  margin: 0;
}

.flexslider-var-two .flex-control-thumbs {
  position: relative;
  width: 100%;
  margin: 0;
  margin-left: -15px;
}

.flexslider-var-two .flex-control-thumbs li {
  width: 100px;
  padding-top: 6px;
  margin-left: 15px;
  position: relative;
}

.flexslider-var-two .flex-control-thumbs li.active {
  background: top center no-repeat;
}

.flexslider-var-two .flex-control-thumbs li.active span {
  position: absolute;
  top: 6px;
  left: 0;
  border: 4px solid transparent;
  width: 100%;
  height: 78px;
  display: block;
  z-index: 999;
}

.flexslider-var-two .flex-control-thumbs img {
  width: auto;
  height: auto;
  opacity: 1;
  margin: 0 -4px 0 0;
}

.flexslider-var-two .flexslider {
  width: 470px;
  float: right;
  overflow: visible;
}

legend {
  padding-top: 1.5rem;
  font-size: 1.8rem;
  font-weight: 700;
  margin-bottom: 0;
}

.faq-page {
  padding-bottom: 5rem;
}

.toggle-main,
.accordion-main {
  margin-bottom: 3.5rem;
}

.toggle-main .toggle,
.accordion-main .accordion {
  margin-bottom: 1rem;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

.toggle-main .toggle-title,
.accordion-main .accordion-title {
  margin: 0;
  height: auto;
  cursor: pointer;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

.toggle-main .toggle-title h3,
.accordion-main .accordion-title h3 {
  padding: 2rem 4rem 2rem 2rem;
  margin: 0;
  font-size: 16px;
  line-height: 24px;
  position: relative;
}

.toggle-main .toggle-title .fa,
.accordion-main .accordion-title .fa {
  margin-right: 0;
  font-size: 18px;
  position: absolute;
  top: 23px;
  right: 23px;
}

.toggle-main .toggle-content,
.accordion-main .accordion-content {
  padding: 3.5rem 15px 1px;
  margin: 0;
  display: none;
}

.toggle-main .toggle.current .toggle-title,
.accordion-main .accordion.current .accordion-title {
  border: none;
}

/* 404 Styles */
.jumbotron {
  background: none;
  padding-top: 7rem;
  padding-bottom: 8rem;
}

.jumbotron h1 {
  font-size: 25rem;
  font-weight: 900;
}

.jumbotron p {
  line-height: 3rem;
}

.jumbotron p:last-child {
  margin-bottom: 0;
}

/*------------------------------------------------------*/
/*  WooCommerce - Shop Pge
/*------------------------------------------------------*/
.shop-page {
  padding: 9rem 0;
}

.woocommerce .woocommerce-result-count {
  margin-top: 1rem;
}

.woocommerce .woocommerce-ordering {
  margin-bottom: 2.5rem;
}

.woocommerce ul.products.columns-3 li.product,
.woocommerce-page ul.products.columns-3 li.product {
  margin-bottom: 3rem;
  padding-bottom: 2.5rem;
  text-align: center;
  background: #fff;
}

@media only screen and (max-width: 767px) {
  .woocommerce ul.products.columns-3 li.product,
  .woocommerce-page ul.products.columns-3 li.product {
    width: 100%;
  }
}

.woocommerce ul.products li.product span.onsale,
.woocommerce-page ul.products li.product span.onsale {
  margin: 0;
  padding: 1rem 1.2rem;
  min-height: 1rem;
  min-width: 1rem;
  line-height: 1rem;
  border-radius: 0;
}

.woocommerce ul.products li.product h3,
.woocommerce-page ul.products li.product h3 {
  padding-right: 1rem;
  padding-left: 1rem;
}

.woocommerce ul.products li.product .price,
.woocommerce-page ul.products li.product .price {
  margin-bottom: 0;
  font-size: 1.5rem;
}

.woocommerce ul.products li.product .price del,
.woocommerce-page ul.products li.product .price del {
  display: inline-block;
}

.woocommerce ul.products li.product mark,
.woocommerce-page ul.products li.product mark {
  background-color: transparent;
}

.woocommerce ul.products li.product .star-rating,
.woocommerce-page ul.products li.product .star-rating {
  margin-right: auto;
  margin-left: auto;
  font-size: 1.3rem;
  line-height: 1.3rem;
  height: 1.4rem;
}

.woocommerce ul.products li.product .read-more,
.woocommerce-page ul.products li.product .read-more {
  margin-top: 1rem;
}

.woocommerce span.onsale,
.woocommerce ul.products li.product span.onsale,
.woocommerce-page ul.products li.product span.onsale {
  top: 0;
  left: 0;
  right: auto;
  margin: 0;
  padding: 1rem 1.2rem;
  min-height: 1rem;
  min-width: 1rem;
  line-height: 1rem;
  border-radius: 0;
}

.woocommerce .added,
.woocommerce ul.products li.product .added,
.woocommerce-page ul.products li.product .added {
  display: none;
}

.woocommerce .added_to_cart,
.woocommerce ul.products li.product .added_to_cart,
.woocommerce-page ul.products li.product .added_to_cart {
  margin-top: 1em;
}

.woocommerce ul.cart_list li .star-rating,
.woocommerce ul.product_list_widget li .star-rating {
  margin: 2px 0;
}

.woocommerce #respond input#submit.loading::after,
.woocommerce a.button.loading::after,
.woocommerce button.button.loading::after,
.woocommerce input.button.loading::after {
  top: 1.3rem;
}

.woocommerce button.button:disabled,
.woocommerce button.button:disabled[disabled],
.woocommerce a.button,
.woocommerce a.added_to_cart,
.woocommerce button.button,
.woocommerce button.button.disabled,
.woocommerce input.button,
.woocommerce input.button:disabled,
.woocommerce input.button:disabled[disabled],
.woocommerce #respond input#submit,
.woocommerce #respond input[type="submit"] {
  padding: 1.2rem 1.5rem 1.3rem;
  font-weight: 400;
  line-height: 1;
  border-radius: 0;
}

.woocommerce button.button:disabled:focus,
.woocommerce button.button:disabled[disabled]:focus,
.woocommerce a.button:focus,
.woocommerce a.added_to_cart:focus,
.woocommerce button.button:focus,
.woocommerce button.button.disabled:focus,
.woocommerce input.button:focus,
.woocommerce input.button:disabled:focus,
.woocommerce input.button:disabled[disabled]:focus,
.woocommerce #respond input#submit:focus,
.woocommerce #respond input[type="submit"]:focus {
  outline: none;
}

.woocommerce nav.woocommerce-pagination ul,
.woocommerce nav.woocommerce-pagination ul li {
  border: none;
}

.woocommerce nav.woocommerce-pagination ul a,
.woocommerce nav.woocommerce-pagination ul span,
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
  display: inline-block;
  width: 4.4rem;
  height: 4.4rem;
  margin: 0 2px 4px;
  font-size: 1.6rem;
  font-weight: normal;
  line-height: 3rem;
  text-align: center;
}

.woocommerce ul.products li.product .woocommerce-loop-category__title,
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h3 {
  font-size: 1.7rem;
}

.woocommerce .products .star-rating {
  margin: 0 0 1rem;
}

.woocommerce-MyAccount-navigation ul {
  list-style: none;
  padding-left: 0;
}

.woocommerce-MyAccount-navigation li {
  padding-bottom: 1rem;
  font-size: 1.4rem;
  border-bottom: 1px solid transparent;
}

.woocommerce-MyAccount-navigation li .children {
  margin-top: 1rem;
}

.woocommerce-MyAccount-navigation li:last-child {
  margin-bottom: 0;
}

.woocommerce table.shop_table td.actions {
  padding-left: 0;
  padding-right: 0;
}

.woocommerce table.shop_table td.woocommerce-orders-table__cell-order-actions a {
  margin: 1px;
  padding: 1px 3px;
  background-color: transparent;
}

.woocommerce-account .woocommerce-MyAccount-navigation {
  width: 23%;
}

.woocommerce-account .woocommerce-MyAccount-content {
  width: 74%;
}

.woocommerce form.checkout_coupon,
.woocommerce form.login,
.woocommerce form.register {
  border-radius: 0;
}

.woocommerce-form__label-for-checkbox {
  margin: .6rem 1rem 0;
}

.woocommerce-form__label-for-checkbox input[type="radio"],
.woocommerce-form__label-for-checkbox input[type="checkbox"] {
  margin: 0 .2rem;
}

@media (min-width: 768px) {
  .detail .property-grid .property-item:nth-child(3n),
  .property-grid .property-item:nth-child(3n) {
    clear: left;
  }
}

@media (min-width: 768px) {
  .property-grid .property-item:nth-child(3n) {
    clear: left;
  }
}

.select2-container--default .select2-selection--single {
  border-radius: 0;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
  line-height: 4.6rem;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 4.6rem;
  width: 3.6rem;
}

.select2-container--default .select2-results__option {
  -webkit-transition: background-color 0.3s ease-in-out;
  transition: background-color 0.3s ease-in-out;
}

.select2-container--default .select2-results__option[data-selected=true] {
  background-color: transparent;
}

.select2-container .select2-selection--single {
  height: 4.8rem;
}

.select2-container .select2-selection--single:focus {
  outline: none;
}

.select2-container .select2-selection--single .select2-selection__rendered {
  padding-left: 1.5rem;
  padding-right: 2.4rem;
}

.select2-dropdown {
  border-radius: 0;
}

.select2-results__option {
  padding: 1rem 1.5rem;
  font-size: 1.4rem;
}

.select2-search--dropdown .select2-search__field {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}

.select2-container .select2-choice {
  padding: .6rem 1.5rem;
  border: 1px solid transparent;
  border-radius: 0;
}

.select2-container--default .select2-results > .select2-results__options {
  max-height: 180px;
}

.select2-container--default .select2-selection--multiple .select2-selection__rendered {
  padding: 1rem;
  display: block;
}

.select2-container--default .select2-selection--multiple {
  border-radius: 0;
}

.widget.woocommerce .select2-container--default .select2-search--inline .select2-search__field {
  margin: 0;
  width: 100% !important;
  padding-left: 1rem;
  padding-right: 1rem;
}

.select2-container .select2-search--inline {
  float: none;
}

.widget.woocommerce .select2-search--inline {
  border: none;
  padding-top: 0;
}

.widget.woocommerce .select2-container--default .select2-selection--multiple .select2-selection__choice {
  border-radius: 0;
  float: none;
  display: inline-block;
  margin-bottom: .5rem;
}

.select2-container--default .select2-selection--multiple .select2-selection__rendered li,
.select2-container .select2-selection--single {
  margin: 0;
}

/*------------------------------------------------------*/
/*  WooCommerce - Product Single Page
/*------------------------------------------------------*/
.woocommerce div.product div.images .flex-control-thumbs {
  margin-top: 3rem;
}

.woocommerce-ordering .select2-container {
  width: 240px !important;
}

.woocommerce div.product form.cart .variations tbody tr,
.woocommerce div.product form.cart .variations tbody tr:first-child {
  border: none;
}

.woocommerce .sku_wrapper {
  margin-bottom: .6rem;
}

.woocommerce .sku_wrapper,
.woocommerce .posted_in {
  display: block;
}

.woocommerce form input[type="number"] {
  padding: .6rem 1.5rem .5rem;
}

.woocommerce .quantity .qty {
  width: 46px;
  text-align: left;
  margin-bottom: 0;
  padding-left: .8rem;
  padding-right: .8rem;
}

.woocommerce .quantity .qty::-webkit-inner-spin-button, .woocommerce .quantity .qty::-webkit-outer-spin-button {
  display: none;
}

.woocommerce div.product form.cart .variations td {
  vertical-align: middle;
}

.woocommerce div.product form.cart .select2-container {
  width: 80% !important;
}

.woocommerce .reset_variations {
  margin-left: 1rem;
}

.woocommerce div.product form.cart .variations td.label {
  padding-right: .4rem;
}

.woocommerce div.product form.cart .variations label {
  font-weight: 500;
  margin-bottom: 0;
}

.woocommerce table.shop_attributes {
  margin-bottom: 1.5rem;
  border: 1px solid transparent;
}

.woocommerce table.shop_attributes th,
.woocommerce table.shop_attributes td {
  padding: 1rem 1.5rem;
}

.woocommerce div.product .woocommerce-tabs ul.tabs {
  background: transparent;
  padding: 0;
  margin: 0;
  border-left: 1px solid transparent;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {
  border-radius: 0;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li:before, .woocommerce div.product .woocommerce-tabs ul.tabs li:after {
  display: none;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
  padding: 1rem;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
  font-weight: 500;
}

.woocommerce div.product .woocommerce-tabs .panel {
  margin: 0;
  padding: 3rem 2.5rem 1.5rem;
  border-radius: 0;
  border: 1px solid transparent;
  border-top: none;
}

.woocommerce div.product .woocommerce-tabs .panel .reply-title,
.woocommerce div.product .woocommerce-tabs .panel h2 {
  font-size: 2.4rem;
  margin-bottom: 1.5rem;
}

.woocommerce div.product .woocommerce-tabs .panel p {
  margin-bottom: 1.5rem;
}

.woocommerce div.product .woocommerce-tabs .panel table p {
  margin-bottom: 0;
}

.woocommerce #reviews #comments ol.commentlist {
  padding: 0;
}

.woocommerce #reviews #comments ol.commentlist li img.avatar {
  width: 6rem;
}

.woocommerce #reviews #comments ol.commentlist li .comment-text {
  margin: 0 0 0 7.5rem;
}

.woocommerce #review_form #respond .stars {
  display: inline-block;
  margin: 1rem 1rem 0;
  vertical-align: middle;
}

.woocommerce #reviews #comment {
  height: 15rem;
}

.woocommerce .related,
.woocommerce .upsells {
  margin-top: 3rem;
}

.woocommerce .related h3,
.woocommerce .upsells h3 {
  font-size: 2.1rem;
  margin-bottom: 2.5rem;
}

@media (min-width: 992px) {
  .woocommerce .related ul,
  .woocommerce .related ul.products,
  .woocommerce .upsells.products ul,
  .woocommerce .upsells.products ul.products,
  .woocommerce-page .related ul,
  .woocommerce-page .related ul.products,
  .woocommerce-page .upsells.products ul,
  .woocommerce-page .upsells.products ul.products {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .woocommerce .related ul li.product,
  .woocommerce .related ul.products li.product,
  .woocommerce .upsells.products ul li.product,
  .woocommerce .upsells.products ul.products li.product,
  .woocommerce-page .related ul li.product,
  .woocommerce-page .related ul.products li.product,
  .woocommerce-page .upsells.products ul li.product,
  .woocommerce-page .upsells.products ul.products li.product {
    margin-bottom: 0;
  }
  .woocommerce .related ul li.product .added_to_cart,
  .woocommerce .related ul.products li.product .added_to_cart,
  .woocommerce .upsells.products ul li.product .added_to_cart,
  .woocommerce .upsells.products ul.products li.product .added_to_cart,
  .woocommerce-page .related ul li.product .added_to_cart,
  .woocommerce-page .related ul.products li.product .added_to_cart,
  .woocommerce-page .upsells.products ul li.product .added_to_cart,
  .woocommerce-page .upsells.products ul.products li.product .added_to_cart {
    margin-top: 1em;
  }
}

/*------------------------------------------------------*/
/*  WooCommerce - Cart Page
/*------------------------------------------------------*/
.woocommerce table thead {
  background-color: transparent;
}

.woocommerce table.shop_table {
  margin-bottom: 3rem;
  border-collapse: collapse;
  border-radius: 0;
  border: none;
}

.woocommerce table.shop_table th {
  font-weight: 500;
  padding: 1rem 0;
}

.woocommerce table thead tr th {
  border: none;
}

.woocommerce table.shop_table td {
  border: none;
  padding: 1rem 0;
}

.woocommerce .woocommerce-input-wrapper {
  width: 100%;
}

.woocommerce table.shop_table tbody th,
.woocommerce table.shop_table tfoot td,
.woocommerce table.shop_table tfoot th {
  font-weight: 500;
}

.woocommerce a.remove:hover {
  background: none;
}

#add_payment_method table.cart .product-thumbnail,
.woocommerce-cart table.cart .product-thumbnail,
.woocommerce-checkout table.cart .product-thumbnail {
  min-width: 6rem;
}

#add_payment_method table.cart img,
.woocommerce-cart table.cart img,
.woocommerce-checkout table.cart img {
  width: 6rem;
}

.woocommerce-cart table.cart td.actions .coupon .input-text {
  padding: .6rem 1.5rem .6rem;
  width: 14rem;
}

#calc_shipping_state_field > span {
  display: block;
  width: 100%;
}

.woocommerce .cart-collaterals .cross-sells h2,
.woocommerce-page .cart-collaterals .cross-sells h2,
.woocommerce .cart-collaterals .cart_totals h2,
.woocommerce-page .cart-collaterals .cart_totals h2 {
  font-size: 1.8rem;
}

.woocommerce .cart-collaterals .cross-sells ul.products li,
.woocommerce-page .cart-collaterals .cross-sells ul.products li {
  width: 100%;
}

@media only screen and (min-width: 520px) {
  .woocommerce .cart-collaterals .cross-sells ul.products,
  .woocommerce-page .cart-collaterals .cross-sells ul.products {
    margin-right: 0;
  }
  .woocommerce .cart-collaterals .cross-sells ul.products li,
  .woocommerce-page .cart-collaterals .cross-sells ul.products li {
    width: calc(50% - 15px);
    margin-left: 1.5rem;
    margin-right: 0;
  }
}

/*------------------------------------------------------*/
/*  WooCommerce - Checkout Page
/*------------------------------------------------------*/
.woocommerce-checkout h3 {
  font-size: 1.8rem;
}

.woocommerce .col2-set .col-1,
.woocommerce .col2-set .col-2,
.woocommerce-page .col2-set .col-1,
.woocommerce-page .col2-set .col-2 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 100%;
      -ms-flex: 0 0 100%;
          flex: 0 0 100%;
  max-width: 100%;
  padding-left: 0;
  padding-right: 0;
}

@media (min-width: 992px) {
  .woocommerce .col2-set .col-1,
  .woocommerce .col2-set .col-2,
  .woocommerce-page .col2-set .col-1,
  .woocommerce-page .col2-set .col-2 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 50%;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    max-width: 50%;
  }
}

@media (max-width: 1199px) {
  .woocommerce .col2-set .col-2,
  .woocommerce-page .col2-set .col-2 {
    padding-top: 3rem;
  }
}

#add_payment_method #payment,
.woocommerce-cart #payment,
.woocommerce-checkout #payment {
  background: #f8f9fa;
  border-radius: 0;
}

.woocommerce form .form-row label {
  font-size: 1.4rem;
  font-weight: 500;
}

#order_review_heading {
  margin-top: 3rem;
  margin-bottom: 1rem;
}

.woocommerce form .form-row textarea {
  height: 13.5rem;
}

.woocommerce-checkout #payment .payment_method_paypal .about_paypal {
  margin-left: 1rem;
}

#ship-to-different-address-checkbox {
  vertical-align: 2px;
  margin-right: .5rem;
}

.woocommerce-checkout #payment ul.payment_methods li input {
  vertical-align: 2px;
}

.woocommerce .woocommerce-customer-details address {
  border-radius: 0;
  padding: 20px 25px;
}

.woocommerce .checkout_coupon .form-row {
  margin-bottom: 0;
}

.woocommerce .checkout_coupon .form-row button.button {
  padding-top: 1.5rem;
  padding-bottom: 1.6rem;
}

.woocommerce-terms-and-conditions-wrapper {
  margin: .5rem 0 2rem 0;
}

.woocommerce-terms-and-conditions {
  box-shadow: none;
}

.woocommerce-terms-and-conditions p {
  margin-bottom: 1rem;
}

/*------------------------------------------------------*/
/*  WooCommerce - Widgets
/*------------------------------------------------------*/
.woocommerce.widget:last-child {
  margin-bottom: 0;
}

.woocommerce.widget .title {
  font-size: 1.8rem;
  margin-bottom: 3rem;
}

.woocommerce.widget .select2-container {
  width: 100% !important;
}

.woocommerce-widget-layered-nav li,
.product-categories li {
  padding-top: 1rem;
  padding-bottom: 1rem;
  font-size: 1.4rem;
  border-top: 1px solid transparent;
}

.woocommerce-widget-layered-nav li:last-child,
.product-categories li:last-child {
  border-bottom: 1px solid transparent;
}

.woocommerce-widget-layered-nav li .children,
.product-categories li .children {
  padding-top: 1rem;
}

.woocommerce-widget-layered-nav li .children li,
.product-categories li .children li {
  padding-left: 2rem;
}

.woocommerce-widget-layered-nav li .children li:last-child,
.product-categories li .children li:last-child {
  padding-bottom: 0;
  border-bottom: none;
}

.woocommerce-widget-layered-nav li:last-child,
.product-categories li:last-child {
  margin-bottom: 0;
}

.woocommerce .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.woocommerce .widget_layered_nav_filters ul li + li {
  margin-left: 1.4rem;
}

.woocommerce ul.cart_list li,
.woocommerce ul.product_list_widget li {
  padding: 0 0 1.5rem;
}

.woocommerce ul.cart_list li img,
.woocommerce ul.product_list_widget li img {
  width: 58px;
}

.widget.woocommerce ul.cart_list li img,
.widget.woocommerce ul.product_list_widget li img {
  margin-top: 7px;
}

.woocommerce .widget_shopping_cart .cart_list li a.remove,
.woocommerce.widget_shopping_cart .cart_list li a.remove {
  top: 2px;
}

.woocommerce a.remove {
  text-align: left;
}

.woocommerce .widget_shopping_cart .total,
.woocommerce.widget_shopping_cart .total {
  padding: 10px 0 0;
}

.woocommerce .woocommerce-widget-layered-nav-list .woocommerce-widget-layered-nav-list__item--chosen a::before,
.woocommerce .widget_layered_nav_filters ul li a::before {
  margin-right: 6px;
  vertical-align: -1px;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice {
  margin-right: 5px;
  margin-top: 5px;
  padding: 0 5px;
  border-radius: 0;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
  margin-right: 5px;
}

.woocommerce .widget_price_filter .price_label {
  margin-top: 1rem;
}

.woocommerce .widget_price_filter .price_label {
  margin-top: .7rem;
  display: inline-block;
  font-weight: bold;
}

.woocommerce .widget_top_rated_products .star-rating,
.woocommerce .widget_recent_reviews .star-rating {
  font-size: 12px;
}
