:root {
  --bs-primary: #9F2348!important;
  --bs-primary-rgb: 159,35,72!important;
  --bs-light: #F2F2F2!important;
  --bs-light-rgb: 242,242,242!important; }

.btn {
  border-radius: 0px;
  font-weight: 500; }

.btn:visited {
  color: #ffffff !important; }

.btn-primary {
  background-color: #9F2348 !important;
  border-color: #9F2348 !important; }

.btn-primary:hover, .btn-primary:active, .btn-primary:focus {
  background-color: #751a35 !important;
  border-color: #751a35 !important; }

.loader {
  border: 4px solid #751a3540;
  border-radius: 50%;
  border-top: 4px solid #751a35;
  width: 48px;
  height: 48px;
  -webkit-animation: loader-spin 1s linear infinite;
  animation: loader-spin 1s linear infinite; }

@-webkit-keyframes loader-spin {
  0% {
    -webkit-transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg); } }

@keyframes loader-spin {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }

body {
  color: #828282;
  font: 16px/1.5 "Montserrat",sans-serif;
  font-weight: 500; }

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
  color: #060F19;
  font-family: "PlayfairDisplay", sans-serif !important; }

h1, .h1 {
  font-size: 44px;
  line-height: 1.3; }

h2, .h2 {
  font-size: 42px; }

h3, .h3 {
  font-size: 24px; }

h4, .h4 {
  font-size: 18px; }

h5, .h5 {
  font-size: 14px; }

h6, .h6 {
  font-size: 12px; }

@media only screen and (min-width: 480px) {
  h1 {
    font-size: 48px; }
  h2 {
    font-size: 44px; } }

@media only screen and (min-width: 768px) {
  h1 {
    font-size: 58px; }
  h2 {
    font-size: 46px; } }

@media only screen and (min-width: 992px) {
  h1 {
    font-size: 58px; }
  h2 {
    font-size: 46px; } }

@media only screen and (min-width: 1200px) {
  h1 {
    font-size: 62px; }
  h2 {
    font-size: 48px; } }

@media only screen and (min-width: 1400px) {
  h1 {
    font-size: 70px; }
  h2 {
    font-size: 50px; } }

.no-decor, .no-decor:hover, footer a, footer a:hover {
  color: inherit;
  text-decoration: none; }

.fs-0875 {
  font-size: 0.875rem !important; }

.fs-1125 {
  font-size: 1.125rem !important; }

.nav-link {
  color: #ffffff !important;
  font-size: 14px;
  position: relative;
  padding-left: 15px !important;
  padding-right: 15px !important; }

.nav-link:hover {
  color: #BD9855 !important; }

@media only screen and (min-width: 992px) {
  .nav-link:hover:after {
    content: '';
    position: absolute;
    height: 3px;
    border-radius: 3px;
    background-color: #BD9855;
    transition: background-color 0.3s;
    bottom: 0;
    left: 0;
    right: 0; } }

@media only screen and (max-width: 992px) {
  .navbar-collapse {
    background-color: #000000 !important; } }

/* Placeholder for info-specific styles */
.bg-light-2 {
  background-color: #f8f6ee; }

.custom-header {
  background-color: #060F1A;
  position: relative; }

.custom-header:before {
  content: '';
  position: absolute;
  height: 100%;
  width: 100%;
  background: url(/images/header/bg-mobile.svg) center center;
  background-size: cover;
  opacity: 0.1; }

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

.ar16-9 {
  aspect-ratio: 16/9; }

.image-contain {
  width: 100%;
  height: 100%;
  object-fit: contain; }

.image-cover {
  width: 100%;
  height: 100%;
  object-fit: cover; }

.table > :not(:first-child) {
  border-top: 0px; }

.details-icon {
  filter: invert(44%) sepia(8%) saturate(1049%) hue-rotate(198deg) brightness(92%) contrast(89%); }

.modal-content {
  min-height: 0px !important; }

.modal-body {
  padding: 1.5rem !important; }

/* Bootstrap 3 JS toggles .collapse.in; keep it visible with Bootstrap 5 CSS loaded. */
.collapse.in {
  display: block; }

/* Match legacy navbar spacing to fix slight left offset. */
#header-navbar {
  padding-left: 0;
  padding-right: 0; }

#header-navbar .container {
  width: 1330px;
  max-width: 100%;
  padding-left: 15px;
  padding-right: 15px; }

@media only screen and (max-width: 992px) {
  #header-navbar.navbar-open .navbar-collapse {
    background-color: #000000 !important; }
  #header-navbar .navbar-toggler-icon {
    display: none; }
  #header-navbar .container {
    display: block;
    text-align: left; }
  #header-navbar .navbar-brand {
    display: inline-block; } }

#klaro {
  /* Colors matching site style */
  --dark1: #060F1A;
  /* modal background (like custom-header) */
  --dark2: #751a35;
  /* borders, secondary background (primary hover) */
  --light1: #F2F2F2;
  /* text (like --bs-light) */
  --light2: #c8c8c8;
  /* banner borders */
  --green1: #9F2348;
  /* "Accept" button, links (primary) */
  --green2: #BD9855;
  /* switches (nav accent) */
  --green3: #9F2348;
  /* focus/shadow */
  --blue1: #BD9855;
  /* "Info" button (accent) */
  /* Appearance */
  --border-radius: 0px;
  --font-family: 'Montserrat', sans-serif;
  --font-size: 16px;
  --title-font-family: 'PlayfairDisplay', sans-serif;
  /* Banner position */
  --notice-right: 20px;
  --notice-bottom: 20px;
  --notice-max-width: 420px; }

.cm-btn {
  padding: 0.375em 0.75em !important; }

#klaro .cm-powered-by,
.klaro .cm-powered-by {
  display: none !important; }
