/* FONTS *******************************************************************************/
@font-face {
  font-family: 'magistral-light';
  src: url('../fonts/Magistral-Light.eot');
  src: local('Magistral Light'), local('Magistral-Light'),
    url('../fonts/Magistral-Light.eot#iefix') format('embedded-opentype'),
    url('../fonts/Magistral-Light.woff2') format('woff2'),
    url('../fonts/Magistral-Light.woff') format('woff'),
    url('../fonts/Magistral-Light.ttf') format('truetype');
  font-weight: 300;
  font-style: normal;
}

@font-face {
  font-family: 'magistral-light-italic';
  src: url('../fonts/Magistral-LightItalic.eot');
  src: local('Magistral Light Italic'), local('Magistral-LightItalic'),
    url('../fonts/Magistral-LightItalic.eot#iefix') format('embedded-opentype'),
    url('../fonts/Magistral-LightItalic.woff2') format('woff2'),
    url('../fonts/Magistral-LightItalic.woff') format('woff'),
    url('../fonts/Magistral-LightItalic.ttf') format('truetype');
  font-weight: 300;
  font-style: italic;
}

@font-face {
  font-family: 'magistral-book';
  src: url('../fonts/Magistral-Book.eot');
  src: local('Magistral Book'), local('Magistral-Book'),
    url('../fonts/Magistral-Book.eot#iefix') format('embedded-opentype'),
    url('../fonts/Magistral-Book.woff2') format('woff2'),
    url('../fonts/Magistral-Book.woff') format('woff'),
    url('../fonts/Magistral-Book.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'magistral-book-italic';
  src: url('../fonts/Magistral-BookItalic.eot');
  src: local('Magistral Book Italic'), local('Magistral-BookItalic'),
    url('../fonts/Magistral-BookItalic.eot#iefix') format('embedded-opentype'),
    url('../fonts/Magistral-BookItalic.woff2') format('woff2'),
    url('../fonts/Magistral-BookItalic.woff') format('woff'),
    url('../fonts/Magistral-BookItalic.ttf') format('truetype');
  font-weight: normal;
  font-style: italic;
}

@font-face {
  font-family: 'magistral-medium';
  src: url('../fonts/Magistral-Medium.eot');
  src: local('Magistral Medium'), local('Magistral-Medium'),
    url('../fonts/Magistral-Medium.eot#iefix') format('embedded-opentype'),
    url('../fonts/Magistral-Medium.woff2') format('woff2'),
    url('../fonts/Magistral-Medium.woff') format('woff'),
    url('../fonts/Magistral-Medium.ttf') format('truetype');
  font-weight: 500;
  font-style: normal;
}

@font-face {
  font-family: 'magistral-medium-italic';
  src: url('../fonts/Magistral-MediumItalic.eot');
  src: local('Magistral Medium Italic'), local('Magistral-MediumItalic'),
    url('../fonts/Magistral-MediumItalic.eot#iefix') format('embedded-opentype'),
    url('../fonts/Magistral-MediumItalic.woff2') format('woff2'),
    url('../fonts/Magistral-MediumItalic.woff') format('woff'),
    url('../fonts/Magistral-MediumItalic.ttf') format('truetype');
  font-weight: 500;
  font-style: italic;
}

@font-face {
  font-family: 'magistral-bold';
  src: url('../fonts/Magistral-Bold.eot');
  src: local('Magistral Bold'), local('Magistral-Bold'),
    url('../fonts/Magistral-Bold.eot#iefix') format('embedded-opentype'),
    url('../fonts/Magistral-Bold.woff2') format('woff2'),
    url('../fonts/Magistral-Bold.woff') format('woff'),
    url('../fonts/Magistral-Bold.ttf') format('truetype');
  font-weight: bold;
  font-style: normal;
}

@font-face {
  font-family: 'magistral-bold-italic';
  src: url('../fonts/Magistral-BoldItalic.eot');
  src: local('Magistral Bold Italic'), local('Magistral-BoldItalic'),
    url('../fonts/Magistral-BoldItalic.eot#iefix') format('embedded-opentype'),
    url('../fonts/Magistral-BoldItalic.woff2') format('woff2'),
    url('../fonts/Magistral-BoldItalic.woff') format('woff'),
    url('../fonts/Magistral-BoldItalic.ttf') format('truetype');
  font-weight: bold;
  font-style: italic;
}

@font-face {
  font-family: 'magistral-extra-bold';
  src: url('../fonts/Magistral-ExtraBold.eot');
  src: local('Magistral Extra Bold'), local('Magistral-ExtraBold'),
    url('../fonts/Magistral-ExtraBold.eot#iefix') format('embedded-opentype'),
    url('../fonts/Magistral-ExtraBold.woff2') format('woff2'),
    url('../fonts/Magistral-ExtraBold.woff') format('woff'),
    url('../fonts/Magistral-ExtraBold.ttf') format('truetype');
  font-weight: 800;
  font-style: normal;
}

@font-face {
  font-family: 'magistral-extra-bold-italic';
  src: url('../fonts/Magistral-ExtraBoldItalic.eot');
  src: local('Magistral Extra Bold Italic'), local('Magistral-ExtraBoldItalic'),
    url('../fonts/Magistral-ExtraBoldItalic.eot#iefix') format('embedded-opentype'),
    url('../fonts/Magistral-ExtraBoldItalic.woff2') format('woff2'),
    url('../fonts/Magistral-ExtraBoldItalic.woff') format('woff'),
    url('../fonts/Magistral-ExtraBoldItalic.ttf') format('truetype');
  font-weight: 800;
  font-style: italic;
}

/* RESET *******************************************************************************/
/*
http://meyerweb.com/eric/tools/css/reset/
v2.0 | 20110126
License: none (public domain)
*/
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  border: 0;
  font: inherit;
  vertical-align: baseline;
  line-height: normal;
  padding: 0;
  margin: 0;
}

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

body {
  background-color: #FFFFFF;
  font-family: 'magistral-light';
}

ol,
ul {
  list-style: none;
}

ol,
ul,
dl {
  margin: 0;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: '';
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* GENERAL *****************************************************************************/
* {
  margin: 0;
  padding: 0;
  line-height: 1;
}

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

a {
  text-decoration: none;
  cursor: pointer;
}

a:hover {
  text-decoration: none;
}

h1 {
  margin: 0 !important;
}

.mr-10 {
  margin-right: 20px;
}

.mx-3 {
  margin-left: 3px;
  margin-right: 3px;
}

.mx-5 {
  margin-left: 5px;
  margin-right: 5px;
}

.my-4 {
  margin-top: 4px;
  margin-bottom: 4px;
}

.my-6 {
  margin-top: 6px;
  margin-bottom: 6px;
}

.mb-6 {
  margin-bottom: 6px;
}

.mb-12 {
  margin-bottom: 12px;
}

.mb-10 {
  margin-bottom: 10px;
}

.mb-15 {
  margin-bottom: 15px;
}

.mb-20 {
  margin-bottom: 20px !important;
}

.mb-25 {
  margin-bottom: 25px;
}

.mb-30 {
  margin-bottom: 30px;
}

.my-10 {
  margin-top: 10px;
  margin-bottom: 10px;
}

.mt-10 {
  margin-top: 10px !important;
}

.mt-12 {
  margin-top: 12px;
}

.mt-15 {
  margin-top: 15px;
}

.mt-20 {
  margin-top: 20px;
}

.mt-25 {
  margin-top: 25px;
}

.mt-50 {
  margin-top: 50px;
}

.p-15 {
  padding: 15px !important;
}

.p-20 {
  padding: 20px !important;
}

.p-25 {
  padding: 25px;
}

.p-50 {
  padding: 50px;
}

.pb-25 {
  padding-bottom: 25px;
}

.pb-30 {
  padding-bottom: 30px;
}

.pb-50 {
  padding-bottom: 50px;
}

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

.pt-5 {
  padding-top: 5px;
}

.pt-10 {
  padding-top: 10px;
}

.pt-15 {
  padding-top: 15px;
}

.pt-20 {
  padding-top: 20px;
}

.pt-30 {
  padding-top: 30px;
}

.pt-40 {
  padding-top: 40px;
}

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

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

.px-25 {
  padding-left: 25px;
  padding-right: 25px;
}

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

.py-25 {
  padding-top: 25px;
  padding-bottom: 25px;
}

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

.py-50 {
  padding-top: 50px;
  padding-bottom: 50px;
}

.section {
  padding: 15px 0;
}

.arrow {
  border: solid #CB0F22;
  border-width: 0 3px 3px 0;
  display: inline-block;
  padding: 3px;
}

.down {
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
}

.up {
  transform: rotate(225deg);
  -webkit-transform: rotate(225deg);
}

.bounce {
  -moz-animation: bounce 2s infinite;
  -webkit-animation: bounce 2s infinite;
  animation: bounce 2s infinite;
}

.fw-light {
  font-family: 'magistral-light';
}

.fw-light-italic {
  font-family: 'magistral-light-italic';
}

.fw-book {
  font-family: 'magistral-book';
}

.fw-book-italic {
  font-family: 'magistral-book-italic';
}

.fw-medium {
  font-family: 'magistral-medium';
}

.fw-medium-italic {
  font-family: 'magistral-medium-italic';
}

.fw-bold {
  font-family: 'magistral-bold';
}

.fw-bold-italic {
  font-family: 'magistral-bold-italic';
}

.fw-extra-bold {
  font-family: 'magistral-extra-bold';
}

.fw-extra-bold-italic {
  font-family: 'magistral-extra-bold-italic';
}

strong {
  font-family: 'magistral-medium';
}

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

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

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

.fs-10 {
  font-size: 10px;
}

.fs-12 {
  font-size: 12px;
}

.fs-13 {
  font-size: 13px;
}

.fs-14 {
  font-size: 14px;
}

.fs-15 {
  font-size: 15px !important;
}

.fs-16 {
  font-size: 16px;
}

.fs-17 {
  font-size: 17px;
}

.fs-18 {
  font-size: 18px;
}

.fs-20 {
  font-size: 20px;
}

.fs-24 {
  font-size: 24px;
}

.fs-32 {
  font-size: 32px;
}

.fs-36 {
  font-size: 36px;
}

.fs-42 {
  font-size: 42px;
}

.fs-48 {
  font-size: 48px;
}

.fs-56 {
  font-size: 56px;
}

.link {
  text-decoration: underline;
}

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

.link2 {
  color: #000000;
}

.link2:hover {
  color: #CB0F22;
}

.ln-1-2 {
  line-height: 1.2;
}

.ln-1-4 {
  line-height: 1.4;
}

.ln-1-6 {
  line-height: 1.6;
}

.ln-2 {
  line-height: 2 !important;
}

.anim-rotate {
  transition: transform .3s linear;
}

.bg-c-1 {
  background-color: #FFFFFF;
}

.bg-c-2 {
  background-color: #b10024;
}

.bg-c-4 {
  background-color: #000000;
}

.bg-c-12 {
  background-color: #c8c8c8;
}

.bg-c-13 {
  background-color: #e0e0e0;
}

.bg-c-14 {
  background-color: #ebebeb;
  background: radial-gradient(circle, rgba(255, 255, 255, 1) 42%, rgba(200, 200, 200, 1) 91%);
}

.bg-c-15 {
  background-color: #d3d2d5;
}

.bg-c-16 {
  background-color: #191a1e;
}

.bg-c-17 {
  background-color: #f8f8f8;
}

.bg-c-18 {
  background-color: #f8f8f8;
}

.bg-c-19 {
  background-color: #47ab3a !important;
}

.bg-c-20 {
  background-color: #000000;
}

.bg-c-21 {
  background-color: #efefef;
}

.bg-c-22 {
  background-color: #bfbfbf;
}

.bg-c-23 {
  background-color: #c9c9c9;
}

.bg-c-24 {
  background-color: #e2e2e2;
}

.bg-c-25 {
  background-color: #efefef;
}

.c-1 {
  color: #FFFFFF;
}

.c-2 {
  color: #000000;
}

.c-3 {
  color: #383837;
}

.c-4 {
  color: #707070;
}

.c-5 {
  color: #999999;
}

.c-6 {
  color: #b3b3b3;
}

.c-7 {
  color: #CB0F22;
}

.c-8 {
  color: #4f4f4f;
}

.c-9 {
  color: #47ab3a;
}

.c-10 {
  color: #4d4d4d;
}

.c-11 {
  color: #666666;
}

.c-12 {
  color: #FFBD33;
}

.mobile {
  display: block;
}

.desktop {
  display: none;
}

.sm-hidden {
  display: none;
}

.social {
  display: none;
}

/* Button */
.button {
  margin: 0;
  border: none;
  overflow: visible;
  font: inherit;
  color: inherit;
  text-transform: none;
  -webkit-appearance: none;
  border-radius: 0;
  display: inline-block;
  box-sizing: border-box;
  padding: 0 30px;
  vertical-align: middle;
  font-size: 0.750rem;
  line-height: 38px;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  transition: 0.1s ease-in-out;
  border: 1px solid #e5e5e5;
}

.button-success {
  background-color: #47ab3a;
  color: #fff;
  border: 1px solid transparent;
}

.button-success:hover {
  background-color: #239414;
  color: #fff;
}

.button-secondary {
  background-color: #fff;
  color: #666;
}

.button-small {
  padding: 0 15px;
  line-height: 28px;
  font-size: 0.875rem;
}

.button-large {
  padding: 0 40px;
  line-height: 53px;
  font-size: 0.875rem;
}

/* Center */
.align-center {
  margin-left: auto;
  margin-right: auto;
}

/* Left/Right */
.align-left {
  margin-top: 0;
  margin-right: 30px;
  float: left;
}

.align-right {
  margin-top: 0;
  margin-left: 30px;
  float: right;
}

.text-small {
  font-size: 0.875rem;
  line-height: 1.5;
}

.text-large {
  font-size: 1.5rem;
  line-height: 1.5;
}

/* NAV *********************************************************************************/

/* nav */
.nav {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
  flex-direction: row;
  -ms-flex-pack: justify;
  justify-content: space-between;
  align-items: center;
  height: 69.5px;
}

.nav ul.social>li>a {
  padding: 27.25px 15px;
}

.nav ul>li>a {
  display: flex;
  padding: 27.50px 15px;
  text-decoration: none;
  text-align: center;
  color: #000000;
  font-size: 12px;
  transition: background-color .3s linear;
}

.nav ul>li>a:hover,
.nav ul>li>a:focus {
  background-color: #000000;
  color: #FFFFFF;
}

/* nav-h */
.nav-h {
  position: relative;
  display: none;
  -ms-flex-direction: row;
  flex-direction: row;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.nav-h ul>li>a {
  display: flex;
  padding: 27px 15px;
  /* 27px */
  text-decoration: none;
  text-align: center;
  color: #4d4d4d;
  font-size: 13px;
  transition: background-color .3s linear;
}

.nav-h ul {
  display: -ms-flexbox;
  display: flex;
}

.nav-h ul>li.nuxt-link-exact-active {
  text-decoration: underline;
  -webkit-text-underline-position: under;
  -ms-text-underline-position: below;
  text-underline-position: under;
  border-radius: 2px;
  text-underline-offset: 2px;
  text-decoration-thickness: 2px;
  font-family: magistral, sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 17px;
}

/* MODAL *******************************************************************************/

.modal {
  position: fixed;
  /* Stay in place */
  z-index: 1;
  /* Sit on top */
  left: 0;
  top: 0;
  width: 100%;
  /* Full width */
  height: 100%;
  /* Full height */
  overflow: auto;
  /* Enable scroll if needed */
  background-color: rgb(0, 0, 0, 0.6);
  /* Fallback color */
}

/* Modal Content/Box */
.modal-content {
  background-color: #fefefe;
  margin: 15% auto;
  /* 15% from the top and centered */
  padding: 25px;
  border: 1px solid #888;
  width: 80%;
  /* Could be more or less, depending on screen size */
  height: 50%;
  overflow: scroll;
}

/* The Close Button */
.close {
  color: #666666;
  float: right;
  font-size: 28px;
  font-weight: bold;
}

.close:hover,
.close:focus {
  color: black;
  text-decoration: none;
  cursor: pointer;
}

/* MAPS ********************************************************************************/

.map {
  position: relative;
  width: 100%;
  height: 300px;
  overflow: hidden;
}

.map iframe {
  padding: 0px;
  background-color: #d1cfd2;
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}


/* FORMS *******************************************************************************/

.selectdiv {
  position: relative;
  margin: 0;
  padding: 0;
}

/* IE11 hide native button (thanks Matt!) */
select::-ms-expand {
  display: none;
}

.selectdiv:after {
  content: '<>';
  font-size: 12px;
  color: #333;
  -webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
  right: 11px;
  /*Adjust for position however you want*/
  top: 9px;
  padding: 0 0 2px;
  border-bottom: 1px solid #999;
  /*left line */
  position: absolute;
  pointer-events: none;
}

.selectdiv select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  /* Add some styling */

  display: block;
  height: 25px;
  float: right;
  margin: 5px 0px;
  padding: 0px 12px;
  font-size: 12px;
  line-height: 1.75;
  color: #333;
  background-color: transparent;
  background-image: none;
  border: 1px solid #cccccc;

  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;

  -ms-word-break: normal;
  word-break: normal;
}

.select1 {
  width: 100%;
}

/* CARDS *******************************************************************************/
article {
  margin-top: 25px;
}

.cards {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: center;
}

.card {
  position: relative;
  margin: 0;
  padding: 0;
  text-align: center;
  /* background-color:#f1f1f1; */
}

.card .image-container {
  overflow: hidden;
}

.card img {
  padding: 0px;
  width: 100%;
  max-width: 340px;
  margin-left: auto;
  margin-right: auto;
  transition: all .2s ease-in-out;
  transform: scale(1);
}

.card img:hover {
  transform: scale(1.1);
}

.card .body {
  padding: 20px;
  margin: 0;
}

.card .body>h3 {
  margin-bottom: 15px;
  padding: 0;
  font-size: 14px;
  font-weight: bold;
  line-height: 30px;
}

.card .body>p {
  line-height: 1.7;
  font-size: 16px;
}

/* POSITIONS ***************************************************************************/

.relative {
  position: relative;
}

.absolute {
  position: absolute;
}

.static {
  position: static;
}

.fixed {
  position: fixed;
}

/* FLEX ********************************************************************************/

.flex {
  display: -ms-flexbox;
  display: flex;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

/* GRID ********************************************************************************/

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

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

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

/* BREADCRUMB **************************************************************************/

ul.breadcrumb {
  padding: 15px 0px;
  list-style: none;
}

ul.breadcrumb li {
  display: inline;
  font-size: 12px;
}

ul.breadcrumb li+li:before {
  padding: 4px;
  color: #828282;
  content: "/\00a0";
}

ul.breadcrumb li a {
  color: #828282;
  text-decoration: none;
}

ul.breadcrumb li a:hover {
  color: #828282;
  text-decoration: underline;
}

/* VERTICAL MENU ***********************************************************************/

.verticalMenu {
  display: none;
  flex-direction: column;
  width: 300px;
  position: relative;
}

.verticalMenu a {
  margin-bottom: 10px;
  background-color: #f8f8f8;
  padding: 7px 40px 7px 10px;
  border-radius: 10px;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  line-height: normal;
  font-size: 11px;
  color: black;
  font-family: 'magistral-book';
  display: block
}

.verticalMenu a:hover {
  text-decoration: none;
  color: rgba(215, 40, 47, 1);
  font-family: 'magistral-book';
}

.verticalMenu a.nuxt-link-active {
  font-family: 'magistral-medium';
  background: transparent;
}

.verticalMenu a.nuxt-link-active::before {
  content: ".";
  padding-right: 10px;
  position: absolute;
  left: -5px;
}

/* SUB SIDE NAV ************************************************************************/

.sideNavSub {
  position: absolute;
  z-index: 999;
  overflow-x: none;
  overflow-y: scroll;
  top: -1000px;
  width: 100%;
  height: auto;
  text-align: center;
  -webkit-transition: all 350ms cubic-bezier(0.6, 0.05, 0.28, 0.91);
  transition: all 350ms cubic-bezier(0.6, 0.05, 0.28, 0.91);
  background-color: #e0e0e0;
}

.sidenavActiveSub {
  top: 0;
  opacity: 1;
  -webkit-opacity: 1;
}

.sideNavSub>ul {
  position: relative;
  text-align: left;
}

.sideNavSub>ul>li>label,
.sideNavSub>ul>li>a {
  display: block;
  cursor: pointer;
  color: #4f4f4f;
  font-size: 16px;
  padding: 10px;
  text-decoration: none;
  -webkit-transition: all 250ms;
  transition: all 250ms;
}

.sideNavSub>ul>li>a:hover {
  padding: 10px 20px;
  background-color: rgba(52, 56, 56, 0.2);
  text-decoration: none;
}

.sideNavSub>ul>li>label:hover {
  padding: 10px 20px;
  background-color: rgba(52, 56, 56, 0.2);
}

.sideNavSub .sub-menu {
  height: 0;
  font-size: 18px;
  color: #555;
  overflow: hidden;
  -webkit-transition: all 250ms;
  transition: height 1s;
}

.sideNavSub .sub-menu>li>a:before {
  content: '-';
  padding-right: 5px;
}

.sideNavSub .sub-menu>li>a {
  display: block;
  cursor: pointer;
  color: #343838;
  font-size: 14px;
  padding: 8px 20px;
  text-decoration: none;
  -webkit-transition: all 250ms;
  transition: all 250ms;
}

.sideNavSub .sub-menu>li>a:hover {
  padding: 8px 25px;
  background-color: rgba(52, 56, 56, 0.2);
}

.sideNavSub input[type="checkbox"] {
  display: none;
}

.side-nav input[type="checkbox"]+label:after {
  content: '+';
  padding-left: 5px;
}

.sideNavSub input[type="checkbox"]:checked~.sub-menu {
  height: auto;
  background-color: rgba(52, 56, 56, 0.2);
}

.sideNavSub input[type="checkbox"]:checked+label:after {
  padding-left: 5px;
  content: '-';
}

/* SUB BARS ****************************************************************************/

.barsSub {
  background-color: #ffffff;
  max-width: 50px;
  display: flex;
  flex-direction: column;
  -ms-flex-align: center;
  align-items: center;
  align-content: center;
  cursor: pointer;
  padding: 15px;
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
}

.barsSub:hover {
  background-color: #e4e4e4;
}

.barsSub>.bar1,
.bar2,
.bar3 {
  width: 3px;
  height: 3px;
  background-color: rgba(0, 0, 0);
  margin: 2px 0px;
  transition: 0.4s;
  top: 0;
}

.barOpenSub .bar1 {
  transform: translateX(8px) translateY(7px) rotate(90deg);
}

.barOpenSub .bar3 {
  transform: translateX(-8px) translateY(-7px) rotate(90deg);
}

.barsSub:hover>.bar1 {
  background-color: rgba(215, 40, 47);
}

.barsSub:hover>.bar2 {
  background-color: rgba(215, 40, 47);
}

.barsSub:hover>.bar3 {
  background-color: rgba(215, 40, 47);
}


/* HORIZANTAL LIST *********************************************************************/
.hlist {
  display: flex;
  flex-flow: column;
  padding: 0;
  margin: 0;
  margin-left: -10px;
  margin-right: -10px;
  margin-top: 30px;
}

.hlist li {
  list-style-type: none;
  box-sizing: border-box;
  margin: 10px;
}

.hlist li a {
  font-size: 14px;
  color: black;
  display: block;
  height: 30px;
  line-height: 30px;
  font-weight: 600;
}

.hlist li a:hover {
  color: #CB0F22;
}

.hlist li svg {
  display: block;
  float: left;
  width: 100%;
  max-width: 30px;
  margin-right: 10px;
  stroke: #CB0F22;
}

/* Tree Menu */
ul.tree,
ul.tree ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

ul.tree ul {
  margin-left: 10px;
  background: transparent url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAKAQMAAABPHKYJAAAAA1BMVEWIiIhYZW6zAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH1ggGExMZBky19AAAAAtJREFUCNdjYMAEAAAUAAHlhrBKAAAAAElFTkSuQmCC') repeat-y 0 100%;
}

ul.tree li {
  word-break: break-word;
  display: block;
  margin: 0;
  margin-top: 15px;
  padding: 0 12px;
}

ul.tree li a {
  color: black;
}

ul.tree ul li {
  background: transparent url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAUAQMAAACK1e4oAAAABlBMVEUAAwCIiIgd2JB2AAAAAXRSTlMAQObYZgAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9YIBhQIJYVaFGwAAAARSURBVAjXY2hgQIf/GTDFGgDSkwqATqpCHAAAAABJRU5ErkJggg==') no-repeat 0 0;
  -webkit-text-size-adjust: none;
  font-size: 11px !important;
}

/* Tabs */
.tabs {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  padding: 0;
  margin: 0;
  margin-bottom: 10px;
}

.tabs label {
  display: block;
  margin: 0;
  padding: 10px;
  padding-left: 0;
  padding-right: 30px;
  font-weight: 600;
  text-align: center;
  color: #bbb;
  border: 1px solid transparent;
  font-size: 14px;
}

.tabs label.active-link {
  color: #4d4d4d !important;
  cursor: pointer;
  display: block;
  padding: 10px;
  padding-left: 0;
  padding-right: 30px;
}

.tabs label:hover {
  color: #4d4d4d;
  cursor: pointer;
}

.tabs label:before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  margin-right: 10px;
  font-size: 18px;
}

/*
  .tabs label[for*="1"]:before {
    content: "\f015";
  }
  .tabs label[for*="2"]:before {
    content: "\f002";
  }
  .tabs label[for*="3"]:before {
    content: "\f04b";
  }
  .tabs label[for*="4"]:before {
    content: "\f381";
  }
  */

/* CARD *******************************************************************************/

.outer {
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  text-align: center;
  padding: 0;
  margin: 0;
  box-sizing: border-box;
  border: 0;
}

.outer>li {
  border: 0;
  margin-bottom: 15px;
  border-left: 1px solid #b3b3b3;
  position: relative;
}

.outer>li:last-child {
  border-right: 1px solid #b3b3b3;
}

.inner {
  display: flex;
  flex-direction: column;
  border-top: 0px solid #b3b3b3;
  margin: 0;
  box-sizing: border-box;
}

.inner>li {
  padding: 8px;
  border-bottom: 1px solid #b3b3b3;
}

.inner>li>p {
  font-size: 14px;
  padding: 0px;
  margin: 0 auto;
}

.inner>li>p>span {
  padding-left: 2px;
  padding-right: 2px;
}

/* SKELETON ****************************************************************************/

.avatar {
  width: 52px;
  height: 52px;
  background-color: #ccc;
  border-radius: 25%;
  margin: 8px;
  background-image: linear-gradient(90deg, #ddd 0px, #e8e8e8 40px, #ddd 80px);
  background-size: 600px;
  animation: shine-avatar 1.6s infinite linear;
}

.line {
  height: 16px;
  margin-top: 12px;
  border-radius: 7px;
  background-image: linear-gradient(90deg, #ddd 0px, #e8e8e8 40px, #ddd 80px);
  background-size: 1200px;
  animation: shine-lines 1.6s infinite linear;
}

.avatar+.line {
  margin-top: 11px;
  width: 100px;
}

.line~.line {
  background-color: #ddd;
}

@keyframes shine-lines {
  0% {
    background-position: -100px;
  }

  40%,
  100% {
    background-position: 1000px;
  }
}

@keyframes shine-avatar {
  0% {
    background-position: -32px;
  }

  40%,
  100% {
    background-position: 208px;
  }
}

/* ANIMATION ***************************************************************************/

.anim-rotate {
  transition: transform .3s linear;
}

@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@-moz-keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@-o-keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@-webkit-keyframes scale {
  0% {
    transform: scale(0.8);
  }

  100% {
    transform: scale(1);
  }
}

@-moz-keyframes scale {
  0% {
    transform: scale(0.8);
  }

  100% {
    transform: scale(1);
  }
}

@-o-keyframes scale {
  0% {
    transform: scale(0.8);
  }

  100% {
    transform: scale(1);
  }
}

@keyframes scale {
  0% {
    transform: scale(0.8);
  }

  100% {
    transform: scale(1);
  }
}

@-webkit-keyframes translate {
  0% {
    transform: translateX(50px);
  }

  100% {
    transform: translate(0);
  }
}

@-moz-keyframes translate {
  0% {
    transform: translateX(50px);
  }

  100% {
    transform: translate(0);
  }
}

@-o-keyframes translate {
  0% {
    transform: translateX(50px);
  }

  100% {
    transform: translate(0);
  }
}

@keyframes translate {
  0% {
    transform: translateX(50px);
  }

  100% {
    transform: translate(0);
  }
}

@-webkit-keyframes bounce {

  0%,
  20%,
  40%,
  60%,
  80%,
  100% {
    -webkit-transform: translateY(0);
  }

  50% {
    -webkit-transform: translateY(-5px);
  }
}

@-moz-keyframes bounce {

  0%,
  20%,
  40%,
  60%,
  80%,
  100% {
    -webkit-transform: translateY(0);
  }

  50% {
    -webkit-transform: translateY(-5px);
  }
}

@-o-keyframes bounce {

  0%,
  20%,
  40%,
  60%,
  80%,
  100% {
    -webkit-transform: translateY(0);
  }

  50% {
    -webkit-transform: translateY(-5px);
  }
}

@keyframes bounce {

  0%,
  20%,
  40%,
  60%,
  80%,
  100% {
    -webkit-transform: translateY(0);
  }

  50% {
    -webkit-transform: translateY(-5px);
  }
}

.top-bar {
  padding-top: 0px;
}

/* Custom Grid */

.col-container {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  padding: 0;
  margin: 0;
}

.col-left {
  background-color: #efefef;
  width: 0;
}

.col-right {
  background-color: #f8f8f8;
  width: 0;
}

.col-middle {
  display: flex;
  width: 100%;
  margin: 0px;
  padding: 0 15px;
}

.col-middle-l {
  display: none;
  margin: 0;
}

.col-middle-r {
  margin: 0 auto;
  padding: 0;
  padding-bottom: 50px !important;
  width: 100%;
  min-height: 500px;
  position: relative;
  overflow: hidden;
}

/* xs */
@media (max-width: 575px) {

  .outer>li {
    flex: 0 0 100%;
    max-width: 100%;
  }

  .outer>li {
    border-right: 1px solid #b3b3b3;
  }

  .container {
    padding: 0 15px;
  }

  /*
  header {
    padding:15px 30px!important;
  }
  */


}

/* sm */
@media (min-width: 576px) and (max-width: 767px) {

  /* Custom Grid */

  .col-middle {
    max-width: 540px;
    padding: 0;
    margin-right: auto;
    margin-left: auto;
  }

  .container {
    max-width: 540px;
    padding: 0;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

  .mobile {
    display: none;
  }

  .desktop {
    display: block;
  }

  .social {
    display: flex;
  }

  .select1 {
    width: 65%;
  }

  .outer>li {
    flex: 0 0 50%;
    max-width: 50%;
  }

  .outer>li:nth-child(2n+2) {
    border-right: 1px solid #b3b3b3;
  }
}

/* md */
@media (min-width: 768px) and (max-width: 991px) {

  /* Custom Grid */

  .col-middle {
    max-width: 720px;
    padding: 0;
    margin-right: auto;
    margin-left: auto;
  }

  .col-middle-r {
    width: 100%;
  }

  .container {
    max-width: 720px;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

  .sm-hidden {
    display: block;
  }

  .card .body>h3 {
    margin-bottom: 15px;
    padding: 0px 15px;
    font-size: 14px;
    line-height: 30px;
  }

  .outer>li {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }

  .outer>li:nth-child(3n+3) {
    border-right: 1px solid #b3b3b3 !important;
  }

}

/* lg */
@media (min-width: 992px) {

  .col-middle {
    max-width: 960px;
    padding: 0px;
    margin-right: auto;
    margin-left: auto;
  }

  .col-middle-r {
    width: 100%;
    background-color: #f8f8f8 !important;
  }

  .verticalMenu {
    display: flex;
  }

  .nav-h {
    display: -ms-flexbox;
    display: flex;
  }

  .container {
    max-width: 960px
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  .mobile {
    display: none;
  }

  .desktop {
    display: block;
  }

  .section {
    padding: 25px;
  }

  .outer>li {
    flex: 0 0 25%;
    max-width: 25%;
  }

  .outer>li:nth-child(4n+4) {
    border-right: 1px solid #b3b3b3 !important;
  }

  .social {
    display: none;
  }

}

/* xl */
@media (min-width: 1200px) {

  /* Custom */

  .col-left {
    width: calc((100% - 1140px) / 2);
  }

  .col-right {
    width: calc((100% - 1140px) / 2);
  }

  .col-middle {
    display: flex;
    flex-direction: row !important;
    flex-wrap: wrap;
    width: 100%;
    max-width: 1140px;
    padding: 0;
    margin-right: auto;
    margin-left: auto;
  }

  .col-middle-l {
    display: block;
    width: 300px;
    padding-left: 0;
    padding-right: 0;
    padding-top: 70px;
    padding-bottom: 80px;
  }

  .col-middle-r {
    display: block;
    width: 840px;
    padding: 0px;
    padding-top: 65px;
    padding-bottom: 80px;
    padding-left: 50px;
    margin: 0;
  }

  .bg-c-17 {
    background-color: #efefef;
  }

  .bg-c-21 {
    background-color: #f8f8f8;
  }

  .barsSub,
  .sideNavSub {
    display: none;
  }

  .top-bar {
    padding-top: 10px;
  }

  .container {
    max-width: 1140px;
  }

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

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

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

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

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

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

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

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

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

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

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

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

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

}

@media screen and (device-aspect-ratio: 2/3) {

  select,
  textarea,
  input[type="text"],
  input[type="password"],
  input[type="datetime"],
  input[type="datetime-local"],
  input[type="date"],
  input[type="month"],
  input[type="time"],
  input[type="week"],
  input[type="number"],
  input[type="email"],
  input[type="url"] {
    font-size: 16px;
  }
}

/* Fix Input Zoom on iPhone 5, 5C, 5S, iPod Touch 5g */
@media screen and (device-aspect-ratio: 40/71) {

  select,
  textarea,
  input[type="text"],
  input[type="password"],
  input[type="datetime"],
  input[type="datetime-local"],
  input[type="date"],
  input[type="month"],
  input[type="time"],
  input[type="week"],
  input[type="number"],
  input[type="email"],
  input[type="url"] {
    font-size: 16px;
  }
}

/* Fix Input Zoom on iPhone 6, iPhone 6s, iPhone 7  */
@media screen and (device-aspect-ratio: 375/667) {

  select,
  textarea,
  input[type="text"],
  input[type="password"],
  input[type="datetime"],
  input[type="datetime-local"],
  input[type="date"],
  input[type="month"],
  input[type="time"],
  input[type="week"],
  input[type="number"],
  input[type="email"],
  input[type="tel"],
  input[type="url"] {
    font-size: 16px;
  }
}

/* Fix Input Zoom on iPhone 6 Plus, iPhone 6s Plus, iPhone 7 Plus, iPhone 8, iPhone X, XS, XS Max  */
@media screen and (device-aspect-ratio: 9/16) {

  select,
  textarea,
  input[type="text"],
  input[type="password"],
  input[type="datetime"],
  input[type="datetime-local"],
  input[type="date"],
  input[type="month"],
  input[type="time"],
  input[type="week"],
  input[type="number"],
  input[type="email"],
  input[type="tel"],
  input[type="url"] {
    font-size: 16px;
  }
}