@font-face { font-family: 'Sofia Pro'; src: url('../fonts/Sofia-Pro-UltraLight.otf') format('opentype'); font-weight: 200; font-style: normal; }
@font-face { font-family: 'Sofia Pro'; src: url('../fonts/Sofia-Pro-ExtraLight.otf') format('opentype'); font-weight: 275; font-style: normal; }
@font-face { font-family: 'Sofia Pro'; src: url('../fonts/Sofia-Pro-Light.otf') format('opentype'); font-weight: 300; font-style: normal; }
@font-face { font-family: 'Sofia Pro'; src: url('../fonts/Sofia-Pro-Regular.otf') format('opentype'); font-weight: 400; font-style: normal; }
@font-face { font-family: 'Sofia Pro'; src: url('../fonts/Sofia-Pro-Medium.otf') format('opentype'); font-weight: 500; font-style: normal; }
@font-face { font-family: 'Sofia Pro'; src: url('../fonts/Sofia-Pro-Semi-Bold.otf') format('opentype'); font-weight: 600; font-style: normal; }
@font-face { font-family: 'Sofia Pro'; src: url('../fonts/Sofia-Pro-Bold.otf') format('opentype'); font-weight: 700; font-style: normal; }
@font-face { font-family: 'Sofia Pro'; src: url('../fonts/Sofia-Pro-Black.otf') format('opentype'); font-weight: 900; font-style: normal; }
@font-face { font-family: 'Bungee Shade'; src: url('../fonts/BungeeShade-Regular.ttf') format('truetype'); font-weight: 400; font-style: normal; }
@font-face { font-family: 'Apple Garamond'; src: url('../fonts/AppleGaramond-Light.ttf') format('truetype'); font-weight: 400; font-style: normal; }

:root {
  --color-white: #ffffff;
  --color-gray-light: #f2f2f2;
  --color-black: #111111;
  --color-gray: #767676;
  --color-border: #c0c0c0;
  --bs-border-color: #c0c0c0;
  --color-border-darker: #b9b9b9;
  --color-red: #EF4141;
  --color-red-soft: #f2d1d1;
  --color-red-inv: #ebabab;
  --font-body: 'Sofia Pro', system-ui, -apple-system, sans-serif;
  --font-mono: ui-monospace, 'SF Mono', 'Cascadia Code', Menlo, monospace;
  --arrow-top-right: url('data:image/svg+xml;utf8,<svg x="0pt" y="0pt" width="16pt" height="16pt" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><g id="Layer_1"><path id="Path_1" style="fill:none;opacity:1;stroke:%23111111;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1;stroke-width:2;" d="M2.625,11.375 C2.625,11.375,11.375,2.625,11.375,2.625 M11.375,2.625 C11.375,2.625,5.25,2.625,5.25,2.625 M11.375,2.625 C11.375,2.625,11.375,8.75,11.375,8.75"/></g></svg>');
  --arrow-top-right-hover: url('data:image/svg+xml;utf8,<svg x="0pt" y="0pt" width="16pt" height="16pt" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><g id="Layer_1"><path id="Path_1" style="fill:none;opacity:1;stroke:%23EF4141;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1;stroke-width:2;" d="M2.625,11.375 C2.625,11.375,11.375,2.625,11.375,2.625 M11.375,2.625 C11.375,2.625,5.25,2.625,5.25,2.625 M11.375,2.625 C11.375,2.625,11.375,8.75,11.375,8.75"/></g></svg>');
  --arrow-top-right-size: 0.9rem;
  --card-cut-size: 40px;
  --bs-link-color-rgb: null;
  --bs-link-hover-color-rgb: null;
}

body {
  background: var(--color-white);
  color: var(--color-black);
  font-family: var(--font-body);
  line-height: 1.6;
  font-weight: 300;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  cursor: none;
  overflow-x: hidden;
  margin: 0;
  padding: 0;
  padding-top: 90px;
  position: relative;
  word-wrap: normal;
  text-rendering: optimizeLegibility;
}

::selection { background: var(--color-red); color: var(--color-white); }

a {
  text-decoration: none;
}
a:hover,
a:focus,
a:active {
  text-decoration: underline;
}
a.disabled-link {
/*   pointer-events: none;  */
  cursor: not-allowed;
}

h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6,
.font-title {
  line-height: 1;
  font-weight: 700;
}
h1, .h1 { font-size: clamp(2.5rem, 4vw, 3.5rem); }
h2, .h2 { font-size: clamp(2rem, 3.5vw, 3rem); }
h3, .h3 { font-size: clamp(1.75rem, 3vw, 2.75rem); }
/* h4, .h4 { font-size: 2.9rem; }
h5, .h5 { font-size: 2.75rem; }
h6, .h6 { font-size: 2.5rem; } */
/* @media (min-width: 550px) and (max-width: 1399px) {
.sidebar-right h2, .sidebar-right .h2 { font-size: 2rem; }
.sidebar-right h3, .sidebar-right .h3 { font-size: 1.5rem; }
.sidebar-right h4, .sidebar-right .h4 { font-size: 1.4rem; }
.sidebar-right h5, .sidebar-right .h5 { font-size: 1.25rem; }
.sidebar-right h6, .sidebar-right .h6 { font-size: 1rem; }
} */
/* @media (max-width: 767px) {
  h1, .h1 { font-size: 2.2rem; }
  h2, .h2 { font-size: 2rem; }
  h3, .h3 { font-size: 1.7rem; }
  h4, .h4 { font-size: 1.6rem; }
  h5, .h5 { font-size: 1.5rem; }
  h6, .h6 { font-size: 1.4rem; }
} */

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0,0,0,0);
  white-space: nowrap;
  border: 0;
}

.size-11 { font-size: 11px !important; }
.size-12 { font-size: 12px !important; }
.size-13 { font-size: 13px !important; }
.size-14 { font-size: 14px !important; }
.size-15 { font-size: 15px !important; }
.size-16 { font-size: 16px !important; }
.size-18 { font-size: 18px !important; }
.size-20 { font-size: 20px !important; }
.size-24 { font-size: 24px !important; }
.size-32 { font-size: 32px !important; }
.size-36 { font-size: 36px !important; }
.size-48 { font-size: 48px !important; }
.size-64 { font-size: 64px !important; }
.size-128 { font-size: 128px !important; }
.list-style-none, .list-no-styles, .list-no-styles li {
  list-style:none !important;
  margin: 0;
  padding: 0;
}

.row {
  margin: 0;
  padding: 0;
}

#offcanvasContent, #offcanvasMap {
  width: min(60vw, 1000px);
}
@media (max-width: 767px) {
  #offcanvasContent, #offcanvasMap {
    width: 95vw;
  }
}

@media (min-width: 768px) {
.reveal{
  position: relative;
  opacity: 0;
  transition: 1s all ease;
}
.reveal.reveal-initialposition-left {
  transform: translateX(-75px);
}
.reveal.reveal-initialposition-right {
  transform: translateX(75px);
}
.reveal.reveal-initialposition-above {
  transform: translateY(-75px);
}
.reveal.reveal-initialposition-lower {
  transform: translateY(75px);
}
.reveal.active{
  transform: translateY(0) translateX(0);
  opacity: 1;
}
}

.linear-slider {
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  display: flex;
  overflow-x: scroll;
  flex-wrap: unset;
  scrollbar-color: var(--color-blue-dark) #f1f1f1;
  scrollbar-width: 2px;
}
.linear-slider > div {
  /* flex: 0 0 70vw;
  width: auto !important; */
  float: none;
  padding: 0 10px;
  scroll-snap-align: start;
}
.linear-slider.slider-slides-narrow > div {
  flex: 0 0 60vw;
}
.linear-slider::-webkit-scrollbar {
    width: 2px;
    height: 2px;
    background: #f1f1f1;
}

.linear-slider::-webkit-scrollbar-track {
    background: #f1f1f1;
}

.linear-slider::-webkit-scrollbar-thumb {
    background: var(--color-blue-dark);
}

.linear-slider::-webkit-scrollbar-thumb:hover {
    background: #555;
}

@media (max-width: 990px) {
  .mobile-slider {
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    display: flex;
    overflow-x: scroll;
    flex-wrap: unset!important;
  }
  .mobile-slider > div, .linear-slider > div, .mobile-slider > li {
    flex: 0 0 70vw;
    width: auto !important;
    float: none;
    padding: 0 10px;
    scroll-snap-align: start;
  }
  .mobile-slider.slider-slides-narrow > div {
    flex: 0 0 60vw;
  }
  .no-border-sm {
    border: none!important;
  }
  .offcanvas-header {
    --bs-offcanvas-padding-y: 1.5rem;
    --bs-offcanvas-padding-x: 1.5rem;
  }
  .offcanvas-header .btn-close, .offcanvas-header .ui-dialog .ui-dialog-titlebar-close, .ui-dialog .offcanvas-header .ui-dialog-titlebar-close {
    --bs-offcanvas-padding-y: 1.5rem;
    --bs-offcanvas-padding-x: 1.5rem;
  }
}

