.tabulator {
  /*background-color: transparent !important;*/
}
.tabulator .tabulator-row.tabulator-selectable:hover {
  background-color: inherit;
  cursor: pointer;
}
.pricelist.tabulator {
  font-family: Arial;
  font-size: 11px !important;
}
.pricelist.tabulator .tabulator-header .tabulator-col input {
  margin: 0;
}
.pricelist.tabulator .tabulator-tableHolder .tabulator-table {
  color: white;
}
.pricelist.tabulator .tabulator-row .tabulator-cell {
  padding: 8px 0;
}
.report.tabulator {
  font-size: 80% !important;
}
.report.tabulator .tabulator-header .tabulator-headers .tabulator-col {
  color: white !important;
  background-color: var(--bs-dark) !important;
}
.report.tabulator .tabulator-row.tabulator-row-odd {
  background-color: #f3f3f3 !important;
}
.report.tabulator .tabulator-header .tabulator-col {
  border-right: 1px solid #ddd !important;
}
.report.tabulator .tabulator-row .tabulator-cell {
  border-right: 1px solid #ddd !important;
  padding: 1em !important;
}
.ribbon_v1 {
  position: absolute;
  left: -5px;
  top: -5px;
  z-index: 1;
  overflow: hidden;
  width: 75px;
  height: 75px;
  text-align: right;
}
.ribbon_v1 span {
  font-size: 10px;
  font-weight: bold;
  color: #FFF;
  text-transform: uppercase;
  text-align: center;
  line-height: 20px;
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  width: 100px;
  display: block;
  /*background: #79A70A;*/
  background: linear-gradient(#F70505 0%, #8F0808 100%);
  box-shadow: 0 3px 10px -5px #000000;
  position: absolute;
  top: 19px;
  left: -21px;
}
.ribbon_v1 span::before {
  content: "";
  position: absolute;
  left: 0px;
  top: 100%;
  z-index: -1;
  border-left: 3px solid #8F0808;
  border-right: 3px solid transparent;
  border-bottom: 3px solid transparent;
  border-top: 3px solid #8F0808;
}
.ribbon_v1 span::after {
  content: "";
  position: absolute;
  right: 0px;
  top: 100%;
  z-index: -1;
  border-left: 3px solid transparent;
  border-right: 3px solid #8F0808;
  border-bottom: 3px solid transparent;
  border-top: 3px solid #8F0808;
}
.ribbon_v1.orange span {
  background: linear-gradient(#F79E05 0%, #8F5408 100%);
}
.ribbon_v1.orange span::before {
  border-left: 3px solid #8F5408;
  border-right: 3px solid transparent;
  border-bottom: 3px solid transparent;
  border-top: 3px solid #8F5408;
}
.ribbon_v1.orange span::after {
  border-left: 3px solid transparent;
  border-right: 3px solid #8F5408;
  border-bottom: 3px solid transparent;
  border-top: 3px solid #8F5408;
}
/* HTML: <div class="ribbon">Your text content</div> */
.ribbon_v2 {
  font-size: 12px;
  font-weight: bold;
  text-transform: uppercase;
  color: #fff;
}
.ribbon_v2 {
  --f: 0.5em;
  /* control the folded part*/
  --r: 0.8em;
  /* control the ribbon shape */
  position: absolute;
  left: 0px;
  top: calc(-1*var(--f));
  padding: 0.5em;
  background: #F70505;
  border-left: var(--f) solid #0005;
  border-bottom: var(--r) solid #0000;
  clip-path: polygon(var(--f) 0, 100% 0, 100% 100%, calc(50% + var(--f)/2) calc(100% - var(--r)), var(--f) 100%, var(--f) var(--f), 0 var(--f));
}
.ribbon_v2 orange {
  background: #F79E05;
}
.header-down-arrow {
  /*position: absolute;
  bottom: 4vh;
  left: 0;
  right: 0;
  text-align: center;
  z-index: 10;*/
}
.header-down-arrow img {
  animation: fade-slide-up 1s 0.2s ease-out forwards, pulse 2s 3s ease-out infinite;
  opacity: 0;
}
@keyframes pulse {
  0% {
    opacity: 1;
    transform: none;
  }
  50% {
    opacity: 0.8;
    transform: scale(0.8);
  }
  100% {
    opacity: 1;
    transform: none;
  }
}
@keyframes fade-slide-up {
  0% {
    opacity: 0;
    transform: translateY(4rem);
  }
  100% {
    opacity: 1;
    transform: none;
  }
}
@-webkit-keyframes blink {
  0% {
    opacity: 0.9;
  }
  50% {
    opacity: 0.5;
  }
  100% {
    opacity: 0.9;
  }
}
@-moz-keyframes blink {
  0% {
    opacity: 0.9;
  }
  50% {
    opacity: 0.5;
  }
  100% {
    opacity: 0.9;
  }
}
@-o-keyframes blink {
  0% {
    opacity: 0.9;
  }
  50% {
    opacity: 0.5;
  }
  100% {
    opacity: 0.9;
  }
}
@keyframes blink {
  0% {
    opacity: 0.9;
  }
  50% {
    opacity: 0.5;
  }
  100% {
    opacity: 0.9;
  }
}
@-webkit-keyframes breath {
  0% {
    transform: scale(1, 1);
  }
  50% {
    transform: scale(1.03, 1.03);
  }
  100% {
    transform: scale(1, 1);
  }
}
@-moz-keyframes breath {
  0% {
    transform: scale(1, 1);
  }
  50% {
    transform: scale(1.03, 1.03);
  }
  100% {
    transform: scale(1, 1);
  }
}
@-o-keyframes breath {
  0% {
    transform: scale(1, 1);
  }
  50% {
    transform: scale(1.03, 1.03);
  }
  100% {
    transform: scale(1, 1);
  }
}
@keyframes breath {
  0% {
    transform: scale(1, 1);
  }
  50% {
    transform: scale(1.03, 1.03);
  }
  100% {
    transform: scale(1, 1);
  }
}
:root {
  --background-color: #f5f8fb;
  --font-family: "Helvetica", "Arial", "sans-serif";
  --font-size: 17px;
  --color: rgba(0, 0, 0, 0.87);
  --navbar-font-size: 14px;
  --highlight-color: #000000;
  --danger-color: #17a2b8;
  --footer-color: #000000;
}
::-moz-selection {
  /* Code for Firefox */
  background: rgba(0, 0, 0, 0.8);
  color: white;
}
::selection {
  background: rgba(0, 0, 0, 0.8);
  color: white;
}
*:focus {
  outline: none !important;
}
body {
  background: var(--background-color);
  color: var(--color);
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased;
  font-family: var(--font-family);
  font-weight: 300;
  font-size: var(--font-size);
}
#hero {
  max-width: 100%;
  overflow: hidden;
}
label {
  font-size: inherit;
  font-weight: bold;
}
a,
a:focus,
a:visited,
a:active {
  color: var(--color);
  text-decoration: none;
}
a:hover {
  color: var(--color);
  text-decoration: none;
}
.modal {
  overscroll-behavior: contain;
}
#floating-button-ai-search {
  display: none !important;
}
.popup-contact-container {
  display: none;
}
.slick-next:before,
.slick-prev:before {
  color: var(--danger-color) !important;
}
.scrollbar-display-none::-webkit-scrollbar {
  display: none;
}
/* Hide scrollbar for IE, Edge and Firefox */
.scrollbar-display-none {
  -ms-overflow-style: none;
  /* IE and Edge */
  scrollbar-width: none;
  /* Firefox */
}
.help-block {
  font-size: 11px;
}
.page-header {
  border: none;
  margin: 15px 0 15px 0;
}
.block-title {
  display: flex;
  width: 100%;
  justify-content: center;
  align-items: center;
  text-align: center;
}
.block-title:before,
.block-title:after {
  content: '';
  border-top: 2px solid;
  margin: 0 20px 0 0;
  flex: 1 0 20px;
}
.block-title:after {
  margin: 0 0 0 20px;
}
a.lead-title {
  color: white;
}
a.lead-title:hover,
a.lead-title:active,
a.lead-title:focus,
a.lead-title:visited {
  text-decoration: none;
  color: white;
}
.lead-title {
  background-color: rgba(0, 0, 0, 0.7);
  color: white;
  padding: 2px 5px 2px 5px;
  margin: 1px;
}
.bg-ds-dark-mode {
  background-color: #343A3B !important;
}
.bg-ds-dark-mode h2 {
  color: white;
}
section.bg-ds-dark-mode {
  padding-bottom: 20px;
}
.bg-footer {
  background-color: black !important;
}
.bg-highlight {
  background-color: #ad1c3d !important;
}
.bg-ds-red {
  background-color: #ad1c3d !important;
}
.bg-ds-blue {
  /* Unused */
  background-color: #152a49 !important;
}
.bg-ds-beige {
  /* Unused */
  background-color: #e6e1d8 !important;
}
.bg-yellow {
  background-color: #fffc52 !important;
}
.text-black {
  color: black !important;
}
.text-yellow {
  color: #fffc52 !important;
}
div.text-white .close {
  color: white !important;
}
.navbar {
  background: var(--background-color) !important;
}
.navbar-toggler,
.navbar-nav > a {
  color: rgba(0, 0, 0, 0.5) !important;
  border-color: rgba(0, 0, 0, 0.5) !important;
}
.navbar-brand.logo {
  padding: 5px 0 5px 15px;
}
.navbar-fixed-top {
  border: none;
  z-index: 999;
}
.navbar,
.navbar .navbar-nav > a,
.navbar .navbar-nav > div > a {
  color: black !important;
  white-space: nowrap;
}
.navbar .navbar-brand > a,
.navbar .navbar-brand > div > a {
  line-height: 1.2;
  font-size: var(--navbar-font-size);
}
.navbar .navbar-nav > a,
.navbar .navbar-nav > div > a,
.navbar .navbar-nav > div > div > a {
  line-height: 1.2;
  font-size: var(--navbar-font-size);
}
.navbar .navbar-nav > a:hover,
.navbar .navbar-nav > div > a:hover,
.navbar .navbar-nav > div > div > a:hover {
  font-weight: normal;
  text-decoration: underline;
}
.navbar .navbar-brand-title {
  font-weight: bold;
}
@media (max-width: 767px) {
  .navbar-toggle {
    float: left !important;
    margin-right: 0;
    margin-left: 15px;
  }
}
.gallery-container {
  position: relative;
}
.gallery-container .image {
  opacity: 1;
  display: block;
  width: 100%;
  height: auto;
  transition: 0.5s ease;
  backface-visibility: hidden;
}
.gallery-container .middle {
  transition: 0.5s ease;
  opacity: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  text-align: center;
}
.gallery-container.hover:hover .image {
  opacity: 0.3;
}
.gallery-container.hover:hover .middle {
  opacity: 1;
}
.row.make-columns > div {
  display: inline-block;
  padding: 0.5rem;
  width: 100%;
}
.row.align-columns {
  display: flex;
  flex-flow: row wrap;
}
.row.align-columns::before {
  display: block;
}
.dangerous {
  font-size: var(--font-size) !important;
  /*ul {
    list-style: none;
    padding-left: 0;
  }*/
}
.dangerous img {
  max-width: 100%;
}
.dangerous ol,
.dangerous ul {
  list-style-position: inside;
}
.dangerous > ol,
.dangerous > ul {
  padding-left: 0;
}
.unit-mix table {
  font-size: 80% !important;
}
#factsheet .dangerous .gallery-container .image,
#location .dangerous .gallery-container .image {
  width: inherit;
}
html {
  scroll-behavior: auto !important;
}
/* Highlight */
.bg-highlight {
  background: var(--highlight-color) !important;
}
/* Danger */
.bg-danger {
  background-color: var(--danger-color) !important;
}
.btn-danger,
.btn-danger:active,
.btn-danger:visited {
  border: none !important;
  background-color: var(--danger-color) !important;
}
.btn-danger.focus,
.btn-danger:focus {
  box-shadow: none !important;
}
.btn-danger:hover {
  border: none !important;
  background-color: var(--danger-color) !important;
}
.table-danger {
  --bs-table-color: #fff;
  --bs-table-bg: var(--danger-color);
  --bs-table-border-color: var(--danger-color);
  --bs-table-striped-bg: #eccccf;
  --bs-table-striped-color: #000;
  --bs-table-active-bg: #dfc2c4;
  --bs-table-active-color: #000;
  --bs-table-hover-bg: #e5c7ca;
  --bs-table-hover-color: #000;
}
/* Footer */
.bg-footer {
  background: var(--footer-color) !important;
}
.bg-footer div.col,
.bg-footer a {
  filter: invert(100%);
  mix-blend-mode: difference;
}
.cursor-pointer {
  cursor: pointer !important;
}
.fs-70 {
  font-size: 70% !important;
}
.fs-80 {
  font-size: 80% !important;
}
.fs-90 {
  font-size: 90% !important;
}
