:root {
  --font-family: 'Montserrat', sans-serif;
  --brandColor: #333E48;
  --brandColorScroll: #636e79;
  --brandColor500: #2C5D82;
  --brandColor300: #2F73A7;
  --btn-primary: #20a8d8;
  --btn-primaryHover: #1F9DCA;
  --btn-success: #3ea662;
  --btn-successHover: #389357;
  --uploadButtonColor: #4DBD74;
  --downloadButtonColor: #20A8D8;
  --popupLayer: rgba(51, 62, 72, 0.5);
  --lineColor: #C6C6C6;
  --errorColor: #DB2121;
  --filterColor: #F5F5F5;
  --filterBorderColor: #D9D9D9;
  --pathColor: #B7B7B7;
  --white: #fff;
  --black: #000;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  font-family: var(--font-family) !important;
  scroll-behavior: smooth;
}

h1, h2, h3, h4, h5, h6 {
  margin: 0 !important;
}

input, textarea, button, select {
  border: 0;
  outline: none !important;
  box-shadow: none !important;
}

input[readonly] {
  background: #e8eef2;
}

.modal-dialog .modal-content .modal-footer button,
.modal-dialog .modal-content .modal-footer label {
  border-radius: 3px;
  font-size: 14px !important;
  padding: 8px 15px;
}

.modal-footer .btn-light {
  background-color: #e8e8e8;
  border: 0px;
}

.dataTables_processing {
  background: var(--white) !important;
  z-index: 10000
}

.dataTables_processing div>div {
  background: var(--brandColor500) !important
}

.alert {
  position: relative;
}

.alert .close {
  background: transparent;
  position: absolute;
  top: 15px;
  right: 15px;
}

.login-form-content .alert {
  margin-bottom: 40px;
}

.btn-success {
  background-color: var(--btn-success) !important;
  border: none !important;
  transition: 0.3s
}

.btn-success:hover {
  background-color: var(--btn-successHover) !important
}

.btn-primary {
  background-color: var(--btn-primary) !important;
  border: none !important;
  transition: 0.3s
}

.btn-primary:hover {
  background-color: var(--btn-primaryHover) !important
}

hr {
  margin: 0 !important
}

ul {
  margin: 0 !important
}

li {
  list-style-type: none
}

a {
  color: var(--black) !important;
  text-decoration: none !important;
}

@media only screen and (min-width: 992px) {
  h1 {
    font-size: 28px !important;
    font-weight: 500;
  }

  h2 {
    font-size: 23px !important;
    font-weight: 600 !important;
  }

  h3 {
    font-size: 18px !important;
    font-weight: 600 !important;
  }

  h4 {
    font-size: 17px !important;
    font-weight: 500;
  }

  h5 {
    font-size: 16px !important;
    font-weight: 500;
  }

  h6 {
    font-size: 15px !important;
    font-weight: 500;
  }

  p {
    font-size: 15px !important
  }

  table thead tr th{
    font-size: 14px !important
  }

  table tbody tr td {
    font-size: 14px !important
  }

  #tab_distinta thead tr th {
    font-size: 14px !important
  }

  #tab_distinta tbody tr td {
    font-size: 14px !important
  }

  .table-length .dataTables_length label {
    font-size: 15px !important
  }

  .table-information .dataTables_info {
    font-size: 15px !important
  }

  .dataTables_paginate .pagination a {
    font-size: 15px !important
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  h1 {
    font-size: 30px !important;
  }

  h2 {
    font-size: 25px !important;
    font-weight: 600 !important;
  }

  h3 {
    font-size: 23px !important;
    font-weight: 600 !important;
  }

  h4 {
    font-size: 17px !important;
  }

  h5 {
    font-size: 16px !important;
  }

  h6 {
    font-size: 15px !important;
  }

  p {
    font-size: 15px !important
  }

  table tbody tr td {
    font-size: 15px !important
  }

  .table-length .dataTables_length label {
    font-size: 15px !important
  }

  .table-information .dataTables_info {
    font-size: 15px !important
  }

  .dataTables_paginate .pagination a {
    font-size: 15px !important
  }
}

@media only screen and (max-width: 767px) {
  h1 {
    font-size: 24px !important;
  }

  h2 {
    font-size: 20px !important;
    font-weight: 600 !important;
  }

  h3 {
    font-size: 18px !important;
    font-weight: 600 !important;
  }

  h4 {
    font-size: 16px !important;
  }

  h5 {
    font-size: 16px !important;
  }

  h6 {
    font-size: 15px !important;
  }

  p {
    font-size: 15px !important;
  }

  table tbody tr td {
    font-size: 15px !important
  }

  .table-length .dataTables_length label {
    font-size: 15px !important
  }

  .table-information .dataTables_info {
    font-size: 15px !important
  }

  .dataTables_paginate .pagination a {
    font-size: 15px !important
  }
}

/***--- General Style Rules ---***/
main {
  width: 100%;
  overflow: hidden;
}

/* Section Padding */
.section-padding-10-0 {
  padding-bottom: 10px;
}

.section-padding-20-0 {
  padding-bottom: 20px;
}

.section-padding-30-0 {
  padding-bottom: 30px;
}

.section-padding-10 {
  padding: 10px 0;
}

.section-padding-20 {
  padding: 20px 0;
}

.section-padding-25 {
  padding: 25px 0;
}

.section-padding-30 {
  padding: 30px 0;
}

.section-padding-40 {
  padding: 40px 0;
}

.section-padding-50 {
  padding: 50px 0;
}

.section-padding-60 {
  padding: 60px 0;
}

.section-padding-70 {
  padding: 70px 0;
}

.section-padding-80 {
  padding: 80px 0;
}

.section-padding-90 {
  padding: 90px 0;
}

.section-padding-100 {
  padding: 100px 0;
}

/* Margin Left */
.ml-5 {
  margin-left: 5px !important
}

.ml-10 {
  margin-left: 10px !important
}

.ml-15 {
  margin-left: 15px !important
}

.ml-20 {
  margin-left: 20px !important
}

/* Margin Right */
.mr-5 {
  margin-right: 5px !important
}

.mr-8 {
  margin-right: 8px !important
}

.mr-10 {
  margin-right: 10px !important
}

.mr-15 {
  margin-right: 15px !important
}

.mr-20 {
  margin-right: 20px !important
}

/* Margin Top */
.mt-5-0 {
  margin-top: 5px !important;
}

.mt-10 {
  margin-top: 10px;
}

.mt-15 {
  margin-top: 15px;
}

.mt-20 {
  margin-top: 20px
}

.mt-30 {
  margin-top: 30px
}

.mt-40 {
  margin-top: 40px
}

.mt-50 {
  margin-top: 50px
}

.mt-60 {
  margin-top: 60px
}

/* Margin Bottom */
.mb-5-0 {
  margin-bottom: 5px !important;
}

.mb-10 {
  margin-bottom: 10px;
}

.mb-15 {
  margin-bottom: 15px;
}

.mb-20 {
  margin-bottom: 20px
}

.mb-30 {
  margin-bottom: 30px
}

.mb-40 {
  margin-bottom: 40px
}

.mb-50 {
  margin-bottom: 50px
}

.mb-60 {
  margin-bottom: 60px
}

/* Padding Left */
.pl-5 {
  padding-left: 5px;
}

.pl-10 {
  padding-left: 10px;
}

.pl-20 {
  padding-left: 20px;
}

.pl-30 {
  padding-left: 30px;
}

/* Padding Right */
.pr-5 {
  padding-right: 5px;
}

.pr-10 {
  padding-right: 10px;
}

.pr-20 {
  padding-right: 20px;
}

.pr-30 {
  padding-right: 30px;
}

/* Title */
.section-heading {
  margin-bottom: 30px;
}

/* Loader */
.loader {
  width: 100%;
  height: 100vh;
  background: var(--white);
  position: fixed;
  z-index: 10000000000;
  overflow: hidden;
}

@keyframes carAnimation {
  0% {
    transform: translateX(0px);
  }

  10% {
    transform: translateX(0px);
  }

  40% {
    transform: translateX(-100px);
  }

  100% {
    transform: translateX(3000px);
  }
}

.loader img {
  width: 55px;
  z-index: 100000;
  animation: carAnimation 1.8s;
  animation-fill-mode: forwards;
}

.loading .loading-icon svg {
  font-size: 10px
}

.body-hidden {
  overflow: hidden;
}