/* @font-face{
    font-family:'FolioStd';
    src:url("FolioStd/FolioStd-Light.woff2") format("woff2"),
    url("FolioStd/FolioStd-Light.woff") format("woff");font-weight:normal
}

@font-face{
    font-family:'GT-Sectra';
    src:url("assets/GT-Sectra-Display-Regular.woff2") format("woff2"),
    url("assets/GT-Sectra-Display-Regular.woff") format("woff");font-weight:normal
} */
/* Neue Haas Grotesk Thin (200) - Lighter variant */
@font-face {
  font-family: "Neue Haas Grotesk";
  src: url("assets/NeueHaasGrotesk/NHaasGroteskDSPro-25Th.ttf") format("truetype");
  font-weight: 200;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Neue Haas Grotesk";
  src: url("assets/NeueHaasGrotesk/NHaasGroteskDSPro-35XLt.ttf") format("truetype");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
/* Neue Haas Grotesk Light (400) - Used for body text and headings */
@font-face {
  font-family: "Neue Haas Grotesk";
  src: url("assets/NeueHaasGrotesk/NHaasGroteskDSPro-45Lt.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
/* Neue Haas Grotesk Medium (500) - Used for <strong> tags */
@font-face {
  font-family: "Neue Haas Grotesk";
  src: url("assets/NeueHaasGrotesk/NHaasGroteskDSPro-65Md.ttf") format("truetype");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
/* Sylvie - single weight */
@font-face {
  font-family: "Sylvie";
  src: url("assets/sylvie/Sylvie.otf") format("opentype"), url("assets/sylvie/Sylvie.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
/* Apercu Pro Mono - main font */
@font-face {
  font-family: "Apercu Pro Mono";
  src: url("assets/Apercu Pro Mono/Apercu Pro Mono.woff2") format("woff2"), url("assets/Apercu Pro Mono/Apercu Pro Mono.woff") format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
/* CSS Custom Properties for Grid System */
:root {
  --grid-unit-vw: 8.333333vw;
  --grid-unit-percent: 8.333333%;
  --fixed-unit: 60px;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

.distortion-canvas {
  position: absolute;
  top: -20%;
  left: 0;
  width: 100%;
  height: 140%;
  pointer-events: none;
}

.video-bg {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  object-fit: cover;
  z-index: -2;
  pointer-events: none;
}

.gradient-bg {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: white;
  pointer-events: none;
  z-index: -1;
}

/* Fixed black square that inverts colors */
.color-inverter {
  position: fixed;
  bottom: 20px;
  right: 20px;
  width: 60px;
  height: 60px;
  background-color: black;
  mix-blend-mode: difference;
  z-index: 9999;
  pointer-events: none;
}

body {
  font-family: "Neue Haas Grotesk";
  font-weight: 200;
  font-style: normal;
  font-size: clamp(16px, 1.6vw, 18px);
  line-height: clamp(22px, 2vw, 24px);
  letter-spacing: 0.2vw;
  color: #212121;
  background-color: #f5f5f5;
  cursor: none;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTAwIiBoZWlnaHQ9IjEwMCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMTAwIDEwMCI+PHJlY3QgeD0iOTcuNSIgeT0iOTcuNSIgd2lkdGg9IjIuNSIgaGVpZ2h0PSIyLjUiIGZpbGw9IiM4MDgwODAiLz48L3N2Zz4=");
  background-size: 4.166666vw 4.166666vw;
  background-position: 0 0;
  background-repeat: repeat;
}
@media (min-width: 768px) {
  body {
    background-position: 0 780px;
  }
}
@media (min-width: 1024px) {
  body {
    background-position: 0 780px;
  }
}
@media (min-width: 1280px) {
  body {
    background-position: 0 660px;
  }
}
body main {
  filter: blur(0px);
  transition: ease 0.4s filter;
}
body.overlay-open {
  overflow: hidden;
}
body.overlay-open main {
  filter: blur(12px);
}

/* Text selection styling */
::selection {
  background-color: #99857a;
  color: white;
}

.font-decorative {
  font-family: "Apercu Pro Mono", "PT Mono", monospace;
  text-transform: uppercase;
}

.font-normal {
  font-family: "Apercu Pro Mono", "PT Mono", monospace;
  text-transform: uppercase;
}

h2 {
  text-transform: uppercase;
  font-size: clamp(28px, 4vw, 36px);
  line-height: clamp(28px, 4vw, 64px);
  font-style: normal;
  font-weight: 400;
  margin-bottom: 1vw;
  letter-spacing: 0.2vw;
}

em {
  font-family: "Sylvie", "Neue Haas Grotesk", "PT Mono", monospace;
  letter-spacing: 0.5vw;
  font-size: 102%;
}

p {
  opacity: 0.9;
  line-height: 180%;
  font-weight: 200;
}

.page-heading h1, .page-heading h3 {
  font-family: "Neue Haas Grotesk", "PT Mono", monospace;
  text-transform: uppercase;
  letter-spacing: 0.3vw;
  font-weight: 400;
  color: #404040;
}
.page-heading h3 {
  font-weight: 300;
  margin-bottom: 20px;
  opacity: 0.6;
}
@media (min-width: 768px) {
  .page-heading h1, .page-heading h3 {
    font-size: 3vw;
    line-height: 3vw;
  }
  .page-heading h3 {
    font-size: 1.1vw;
    margin-bottom: 0.5vw;
  }
  .page-heading p {
    margin: 0px;
    padding: 0px;
  }
  .page-heading a {
    text-decoration: none;
    color: inherit;
  }
  .page-heading a:hover {
    background-color: rgb(196, 196, 196);
    color: white;
  }
}

h1:not(.page-heading) .part2 {
  margin-left: 1.5em;
}

.name-bold {
  font-weight: 400;
}

a {
  color: #110e75;
  cursor: none;
}

a:hover {
  color: #0098AB;
}

/* Keep custom cursor on all clickable elements */
button,
input[type=button],
input[type=submit],
input[type=reset],
.clickable,
[onclick] {
  cursor: none;
}

/* Custom cursor element */
.custom-cursor {
  position: fixed;
  width: 32px;
  height: 32px;
  pointer-events: none;
  z-index: 100000;
  mix-blend-mode: difference;
  opacity: 1;
}
.custom-cursor svg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.custom-cursor .cursor-circle {
  display: block;
}
.custom-cursor .cursor-x {
  display: none;
  transform: scale(0.6);
}
.custom-cursor.show-x .cursor-circle {
  display: none !important;
}
.custom-cursor.show-x .cursor-x {
  display: block !important;
  visibility: visible !important;
}
.custom-cursor circle {
  fill: none;
  stroke: white;
  transition: fill 0.2s ease;
}
.custom-cursor.filled circle {
  fill: white;
}

/* List styling */
ul {
  list-style: none;
}

li {
  margin-bottom: 1rem;
}

/* Grid System */
.grid-container {
  margin: 0 auto;
  position: relative;
  z-index: 1;
}

.grid-row {
  position: relative;
  width: 100%;
  margin-bottom: 20px;
}

.color {
  background: black;
}

.block-solid {
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}

.block-image-logo {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}

/* Video styling for blocks */
.block video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: -1;
}

/* Disable hover effects on touch devices */
@media (hover: none) and (pointer: coarse) {
  .block:hover {
    transform: none;
    box-shadow: none;
  }
}
/* Block content styling */
.block-content {
  display: flex;
  flex-direction: column;
  height: 100%;
}

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

.block-text {
  flex: 1;
  font-size: 0.9rem;
  line-height: 1.4;
}

.block-title {
  color: #9a9a9a;
  padding-right: 16%;
  padding-top: 4vw;
}
.block-title u {
  color: black;
}

.wrapper {
  position: relative;
  height: 100%;
}

/* Block title right alignment */
.block-title.right {
  right: 0;
  left: auto;
  text-align: right;
}

.whiteback {
  background-color: #f5f5f5;
  box-shadow: 0px 0px 0px 10px #f5f5f5;
  z-index: 100;
}

.grid-container {
  margin: 0 20px;
}

.links {
  padding-top: 1vw;
}

/* Mobile styles - ensure images are visible on mobile */
@media (max-width: 767px) {
  .block {
    position: relative;
    width: 100%;
    margin-bottom: 20px;
  }
  .wrapper {
    position: relative;
    width: 100%;
    height: auto;
    min-height: 200px;
    display: block;
  }
  .block-image-logo {
    position: relative;
    width: 100%;
    height: auto;
    min-height: 200px;
    object-fit: contain;
    display: block;
  }
  .block-title {
    position: relative;
  }
  /* Keep same background colors on mobile as desktop */
}
footer {
  font-size: 2.4vw;
  font-weight: 300;
  line-height: 4vw;
  text-align: center;
  text-transform: uppercase;
  height: 100vh;
  padding-top: 30vh;
}

a {
  color: black;
}

a:hover {
  background: black;
  color: white;
}

/* Medium screen classes (m_ prefix) - applies on screens 768px and larger */
@media (min-width: 768px) {
  img {
    display: none;
  }
  .grid-row {
    margin-bottom: 0;
  }
  .grid-container {
    margin: 0 auto;
  }
  /* Block system - single block per row */
  .block {
    position: absolute;
    overflow: visible;
  }
  .block-title {
    height: 8.333333vw;
    bottom: -8.333333vw;
    position: absolute;
    z-index: 100;
    padding-top: 2vw;
    box-sizing: border-box;
  }
  .block-title__left {
    height: 8.333333vw;
    bottom: -8.333333vw;
    position: absolute;
    z-index: 100;
    padding-top: 1rem;
    padding-right: 20%;
    box-sizing: border-box;
    line-height: 1.5vw;
    width: 50%;
    bottom: auto;
    left: calc(-50% - 20px);
    text-align: right;
    padding-right: 20px;
  }
  .block-title__right {
    height: 8.333333vw;
    bottom: -8.333333vw;
    position: absolute;
    z-index: 100;
    padding-top: 1rem;
    padding-right: 20%;
    box-sizing: border-box;
    line-height: 1.5vw;
    bottom: auto;
    right: calc(-50% - 20px);
    width: 50%;
    padding-right: 20px;
  }
  /* Gradient style classes */
  .gradient-style-2 .wrapper {
    background: #a6bcbc;
  }
  .gradient-style-3 .wrapper {
    background: #bca6ab;
  }
  .gradient-style-4 .wrapper {
    background: #a9a6bc;
  }
  .gradient-style-5 .wrapper {
    background: #c7d3ca;
  }
  .gradient-style-6 .wrapper {
    background: #A0A1BE;
  }
  .gradient-style-7 .wrapper {
    background: #d6d5d3;
  }
  /* Block image styling */
  .block-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
  }
  /* Medium screen width classes */
  .m_w1 {
    width: 8.333333% !important;
  }
  .m_w2 {
    width: 16.666666% !important;
  }
  .m_w3 {
    width: 24.999999% !important;
  }
  .m_w4 {
    width: 33.333332% !important;
  }
  .m_w5 {
    width: 41.666665% !important;
  }
  .m_w6 {
    width: 49.999998% !important;
  }
  .m_w7 {
    width: 58.333331% !important;
  }
  .m_w8 {
    width: 66.666664% !important;
  }
  .m_w9 {
    width: 74.999997% !important;
  }
  .m_w10 {
    width: 83.33333% !important;
  }
  .m_w11 {
    width: 91.666663% !important;
  }
  .m_w12 {
    width: 99.999996% !important;
  }
  /* Medium screen height classes */
  .m_h1 {
    height: 8.333333vw !important;
  }
  .m_h2 {
    height: 16.666666vw !important;
  }
  .m_h3 {
    height: 24.999999vw !important;
  }
  .m_h4 {
    height: 33.333332vw !important;
  }
  .m_h5 {
    height: 41.666665vw !important;
  }
  .m_h6 {
    height: 49.999998vw !important;
  }
  .m_h7 {
    height: 58.333331vw !important;
  }
  .m_h8 {
    height: 66.666664vw !important;
  }
  .m_h9 {
    height: 74.999997vw !important;
  }
  .m_h10 {
    height: 83.33333vw !important;
  }
  .m_h11 {
    height: 91.666663vw !important;
  }
  .m_h12 {
    height: 99.999996vw !important;
  }
  /* Medium screen left offset classes */
  .m_l0 {
    left: 0 !important;
  }
  .m_l1 {
    left: 8.333333% !important;
  }
  .m_l2 {
    left: 16.666666% !important;
  }
  .m_l3 {
    left: 24.999999% !important;
  }
  .m_l4 {
    left: 33.333332% !important;
  }
  .m_l5 {
    left: 41.666665% !important;
  }
  .m_l6 {
    left: 49.999998% !important;
  }
  .m_l7 {
    left: 58.333331% !important;
  }
  .m_l8 {
    left: 66.666664% !important;
  }
  .m_l9 {
    left: 74.999997% !important;
  }
  .m_l10 {
    left: 83.33333% !important;
  }
  .m_l11 {
    left: 91.666663% !important;
  }
  .m_l12 {
    left: 99.999996% !important;
  }
  /* Medium screen top offset classes */
  .m_t0 {
    top: 0 !important;
  }
  .m_t1 {
    top: 8.333333vw !important;
  }
  .m_t2 {
    top: 16.666666vw !important;
  }
  .m_t3 {
    top: 24.999999vw !important;
  }
  .m_t4 {
    top: 33.333332vw !important;
  }
  .m_t5 {
    top: 41.666665vw !important;
  }
  .m_t6 {
    top: 49.999998vw !important;
  }
  .m_t7 {
    top: 58.333331vw !important;
  }
  .m_t8 {
    top: 66.666664vw !important;
  }
  .m_t9 {
    top: 74.999997vw !important;
  }
  .m_t10 {
    top: 83.33333vw !important;
  }
  .m_t11 {
    top: 91.666663vw !important;
  }
  .m_t12 {
    top: 99.999996vw !important;
  }
  /* Medium screen negative top offset classes */
  .m_t1neg {
    top: -8.333333vw !important;
  }
  .m_t2neg {
    top: -16.666666vw !important;
  }
  .m_t3neg {
    top: -24.999999vw !important;
  }
  .m_t4neg {
    top: -33.333332vw !important;
  }
  .m_t5neg {
    top: -41.666665vw !important;
  }
  .m_t6neg {
    top: -49.999998vw !important;
  }
  .m_t7neg {
    top: -58.333331vw !important;
  }
  .m_t8neg {
    top: -66.666664vw !important;
  }
  .m_t9neg {
    top: -74.999997vw !important;
  }
  .m_t10neg {
    top: -83.33333vw !important;
  }
  .m_t11neg {
    top: -91.666663vw !important;
  }
  .m_t12neg {
    top: -99.999996vw !important;
  }
  /* Medium screen row height classes */
  .row_m_h0 {
    height: 0 !important;
    margin-top: 0 !important;
  }
  .row_m_h1 {
    height: 8.333333vw !important;
    margin-top: 0 !important;
  }
  .row_m_h2 {
    height: 16.666666vw !important;
    margin-top: 0 !important;
  }
  .row_m_h3 {
    height: 24.999999vw !important;
    margin-top: 0 !important;
  }
  .row_m_h4 {
    height: 33.333332vw !important;
    margin-top: 0 !important;
  }
  .row_m_h5 {
    height: 41.666665vw !important;
    margin-top: 0 !important;
  }
  .row_m_h6 {
    height: 49.999998vw !important;
    margin-top: 0 !important;
  }
  .row_m_h7 {
    height: 58.333331vw !important;
    margin-top: 0 !important;
  }
  .row_m_h8 {
    height: 66.666664vw !important;
    margin-top: 0 !important;
  }
  .row_m_h9 {
    height: 74.999997vw !important;
    margin-top: 0 !important;
  }
  .row_m_h10 {
    height: 83.33333vw !important;
    margin-top: 0 !important;
  }
  .row_m_h11 {
    height: 91.666663vw !important;
    margin-top: 0 !important;
  }
  .row_m_h12 {
    height: 99.999996vw !important;
    margin-top: 0 !important;
  }
  /* Medium screen fixed row height classes */
  .row_m_fixed_h0 {
    height: 0 !important;
    margin-top: 0 !important;
  }
  .row_m_fixed_h1 {
    height: 60px !important;
    margin-top: 0 !important;
  }
  .row_m_fixed_h2 {
    height: 120px !important;
    margin-top: 0 !important;
  }
  .row_m_fixed_h3 {
    height: 180px !important;
    margin-top: 0 !important;
  }
  .row_m_fixed_h4 {
    height: 240px !important;
    margin-top: 0 !important;
  }
  .row_m_fixed_h5 {
    height: 300px !important;
    margin-top: 0 !important;
  }
  .row_m_fixed_h6 {
    height: 360px !important;
    margin-top: 0 !important;
  }
  .row_m_fixed_h7 {
    height: 420px !important;
    margin-top: 0 !important;
  }
  .row_m_fixed_h8 {
    height: 480px !important;
    margin-top: 0 !important;
  }
  .row_m_fixed_h9 {
    height: 540px !important;
    margin-top: 0 !important;
  }
  .row_m_fixed_h10 {
    height: 600px !important;
    margin-top: 0 !important;
  }
  .row_m_fixed_h11 {
    height: 660px !important;
    margin-top: 0 !important;
  }
  .row_m_fixed_h12 {
    height: 720px !important;
    margin-top: 0 !important;
  }
  /* Medium screen auto height classes */
  .row_m_auto {
    height: auto !important;
    margin-top: 8.333333vw;
  }
  .m_h_auto {
    height: auto !important;
  }
  /* Medium screen negative left offset classes */
  .m_l1neg {
    left: -8.333333% !important;
  }
  .m_l2neg {
    left: -16.666666% !important;
  }
  .m_l3neg {
    left: -24.999999% !important;
  }
  .m_l4neg {
    left: -33.333332% !important;
  }
  .m_l5neg {
    left: -41.666665% !important;
  }
  .m_l6neg {
    left: -49.999998% !important;
  }
  .m_l7neg {
    left: -58.333331% !important;
  }
  .m_l8neg {
    left: -66.666664% !important;
  }
  .m_l9neg {
    left: -74.999997% !important;
  }
  .m_l10neg {
    left: -83.33333% !important;
  }
  .m_l11neg {
    left: -91.666663% !important;
  }
  .m_l12neg {
    left: -99.999996% !important;
  }
  /* Block title left offset classes - medium screen */
  .block-title.m_l1 {
    left: 8.333333%;
  }
  .block-title.m_l2 {
    left: 16.666666%;
  }
  .block-title.m_l3 {
    left: 24.999999%;
  }
  .block-title.m_l4 {
    left: 33.333332%;
  }
  .block-title.m_l5 {
    left: 41.666665%;
  }
  .block-title.m_l6 {
    left: 49.999998%;
  }
  .block-title.m_l7 {
    left: 58.333331%;
  }
  .block-title.m_l8 {
    left: 66.666664%;
  }
  .block-title.m_l9 {
    left: 74.999997%;
  }
  .block-title.m_l10 {
    left: 83.33333%;
  }
  .block-title.m_l11 {
    left: 91.666663%;
  }
  .block-title.m_l12 {
    left: 99.999996%;
  }
}
/* Large screen classes (l_ prefix) - applies on screens 1024px and larger */
@media (min-width: 1024px) {
  /* Large screen width classes */
  .l_w1 {
    width: 8.333333% !important;
  }
  .l_w2 {
    width: 16.666666% !important;
  }
  .l_w3 {
    width: 24.999999% !important;
  }
  .l_w4 {
    width: 33.333332% !important;
  }
  .l_w5 {
    width: 41.666665% !important;
  }
  .l_w6 {
    width: 49.999998% !important;
  }
  .l_w7 {
    width: 58.333331% !important;
  }
  .l_w8 {
    width: 66.666664% !important;
  }
  .l_w9 {
    width: 74.999997% !important;
  }
  .l_w10 {
    width: 83.33333% !important;
  }
  .l_w11 {
    width: 91.666663% !important;
  }
  .l_w12 {
    width: 99.999996% !important;
  }
  /* Large screen height classes */
  .l_h1 {
    height: 8.333333vw !important;
  }
  .l_h2 {
    height: 16.666666vw !important;
  }
  .l_h3 {
    height: 24.999999vw !important;
  }
  .l_h4 {
    height: 33.333332vw !important;
  }
  .l_h5 {
    height: 41.666665vw !important;
  }
  .l_h6 {
    height: 49.999998vw !important;
  }
  .l_h7 {
    height: 58.333331vw !important;
  }
  .l_h8 {
    height: 66.666664vw !important;
  }
  .l_h9 {
    height: 74.999997vw !important;
  }
  .l_h10 {
    height: 83.33333vw !important;
  }
  .l_h11 {
    height: 91.666663vw !important;
  }
  .l_h12 {
    height: 99.999996vw !important;
  }
  /* Large screen left offset classes */
  .l_l0 {
    left: 0 !important;
  }
  .l_l1 {
    left: 8.333333% !important;
  }
  .l_l2 {
    left: 16.666666% !important;
  }
  .l_l3 {
    left: 24.999999% !important;
  }
  .l_l4 {
    left: 33.333332% !important;
  }
  .l_l5 {
    left: 41.666665% !important;
  }
  .l_l6 {
    left: 49.999998% !important;
  }
  .l_l7 {
    left: 58.333331% !important;
  }
  .l_l8 {
    left: 66.666664% !important;
  }
  .l_l9 {
    left: 74.999997% !important;
  }
  .l_l10 {
    left: 83.33333% !important;
  }
  .l_l11 {
    left: 91.666663% !important;
  }
  .l_l12 {
    left: 99.999996% !important;
  }
  /* Large screen top offset classes */
  .l_t0 {
    top: 0 !important;
  }
  .l_t1 {
    top: 8.333333vw !important;
  }
  .l_t2 {
    top: 16.666666vw !important;
  }
  .l_t3 {
    top: 24.999999vw !important;
  }
  .l_t4 {
    top: 33.333332vw !important;
  }
  .l_t5 {
    top: 41.666665vw !important;
  }
  .l_t6 {
    top: 49.999998vw !important;
  }
  .l_t7 {
    top: 58.333331vw !important;
  }
  .l_t8 {
    top: 66.666664vw !important;
  }
  .l_t9 {
    top: 74.999997vw !important;
  }
  .l_t10 {
    top: 83.33333vw !important;
  }
  .l_t11 {
    top: 91.666663vw !important;
  }
  .l_t12 {
    top: 99.999996vw !important;
  }
  /* Large screen negative top offset classes */
  .l_t1neg {
    top: -8.333333vw !important;
  }
  .l_t2neg {
    top: -16.666666vw !important;
  }
  .l_t3neg {
    top: -24.999999vw !important;
  }
  .l_t4neg {
    top: -33.333332vw !important;
  }
  .l_t5neg {
    top: -41.666665vw !important;
  }
  .l_t6neg {
    top: -49.999998vw !important;
  }
  .l_t7neg {
    top: -58.333331vw !important;
  }
  .l_t8neg {
    top: -66.666664vw !important;
  }
  .l_t9neg {
    top: -74.999997vw !important;
  }
  .l_t10neg {
    top: -83.33333vw !important;
  }
  .l_t11neg {
    top: -91.666663vw !important;
  }
  .l_t12neg {
    top: -99.999996vw !important;
  }
  /* Large screen row height classes */
  .row_l_h0 {
    height: 0 !important;
    margin-top: 0 !important;
  }
  .row_l_h1 {
    height: 8.333333vw !important;
    margin-top: 0 !important;
  }
  .row_l_h2 {
    height: 16.666666vw !important;
    margin-top: 0 !important;
  }
  .row_l_h3 {
    height: 24.999999vw !important;
    margin-top: 0 !important;
  }
  .row_l_h4 {
    height: 33.333332vw !important;
    margin-top: 0 !important;
  }
  .row_l_h5 {
    height: 41.666665vw !important;
    margin-top: 0 !important;
  }
  .row_l_h6 {
    height: 49.999998vw !important;
    margin-top: 0 !important;
  }
  .row_l_h7 {
    height: 58.333331vw !important;
    margin-top: 0 !important;
  }
  .row_l_h8 {
    height: 66.666664vw !important;
    margin-top: 0 !important;
  }
  .row_l_h9 {
    height: 74.999997vw !important;
    margin-top: 0 !important;
  }
  .row_l_h10 {
    height: 83.33333vw !important;
    margin-top: 0 !important;
  }
  .row_l_h11 {
    height: 91.666663vw !important;
    margin-top: 0 !important;
  }
  .row_l_h12 {
    height: 99.999996vw !important;
    margin-top: 0 !important;
  }
  /* Large screen fixed row height classes */
  .row_l_fixed_h0 {
    height: 0 !important;
    margin-top: 0 !important;
  }
  .row_l_fixed_h1 {
    height: 60px !important;
    margin-top: 0 !important;
  }
  .row_l_fixed_h2 {
    height: 120px !important;
    margin-top: 0 !important;
  }
  .row_l_fixed_h3 {
    height: 180px !important;
    margin-top: 0 !important;
  }
  .row_l_fixed_h4 {
    height: 240px !important;
    margin-top: 0 !important;
  }
  .row_l_fixed_h5 {
    height: 300px !important;
    margin-top: 0 !important;
  }
  .row_l_fixed_h6 {
    height: 360px !important;
    margin-top: 0 !important;
  }
  .row_l_fixed_h7 {
    height: 420px !important;
    margin-top: 0 !important;
  }
  .row_l_fixed_h8 {
    height: 480px !important;
    margin-top: 0 !important;
  }
  .row_l_fixed_h9 {
    height: 540px !important;
    margin-top: 0 !important;
  }
  .row_l_fixed_h10 {
    height: 600px !important;
    margin-top: 0 !important;
  }
  .row_l_fixed_h11 {
    height: 660px !important;
    margin-top: 0 !important;
  }
  .row_l_fixed_h12 {
    height: 720px !important;
    margin-top: 0 !important;
  }
  /* Large screen auto height classes */
  .row_l_auto {
    height: auto !important;
    margin-top: 8.333333vw;
  }
  .l_h_auto {
    height: auto !important;
  }
}
/* Extra Large screen classes (xl_ prefix) - applies on screens 1280px and larger */
@media (min-width: 1280px) {
  /* Extra Large screen width classes */
  .xl_w1 {
    width: 8.333333% !important;
  }
  .xl_w2 {
    width: 16.666666% !important;
  }
  .xl_w3 {
    width: 24.999999% !important;
  }
  .xl_w4 {
    width: 33.333332% !important;
  }
  .xl_w5 {
    width: 41.666665% !important;
  }
  .xl_w6 {
    width: 49.999998% !important;
  }
  .xl_w7 {
    width: 58.333331% !important;
  }
  .xl_w8 {
    width: 66.666664% !important;
  }
  .xl_w9 {
    width: 74.999997% !important;
  }
  .xl_w10 {
    width: 83.33333% !important;
  }
  .xl_w11 {
    width: 91.666663% !important;
  }
  .xl_w12 {
    width: 99.999996% !important;
  }
  /* Extra Large screen height classes */
  .xl_h1 {
    height: 8.333333vw !important;
  }
  .xl_h2 {
    height: 16.666666vw !important;
  }
  .xl_h3 {
    height: 24.999999vw !important;
  }
  .xl_h4 {
    height: 33.333332vw !important;
  }
  .xl_h5 {
    height: 41.666665vw !important;
  }
  .xl_h6 {
    height: 49.999998vw !important;
  }
  .xl_h7 {
    height: 58.333331vw !important;
  }
  .xl_h8 {
    height: 66.666664vw !important;
  }
  .xl_h9 {
    height: 74.999997vw !important;
  }
  .xl_h10 {
    height: 83.33333vw !important;
  }
  .xl_h11 {
    height: 91.666663vw !important;
  }
  .xl_h12 {
    height: 99.999996vw !important;
  }
  /* Extra Large screen left offset classes */
  .xl_l0 {
    left: 0 !important;
  }
  .xl_l1 {
    left: 8.333333% !important;
  }
  .xl_l2 {
    left: 16.666666% !important;
  }
  .xl_l3 {
    left: 24.999999% !important;
  }
  .xl_l4 {
    left: 33.333332% !important;
  }
  .xl_l5 {
    left: 41.666665% !important;
  }
  .xl_l6 {
    left: 49.999998% !important;
  }
  .xl_l7 {
    left: 58.333331% !important;
  }
  .xl_l8 {
    left: 66.666664% !important;
  }
  .xl_l9 {
    left: 74.999997% !important;
  }
  .xl_l10 {
    left: 83.33333% !important;
  }
  .xl_l11 {
    left: 91.666663% !important;
  }
  .xl_l12 {
    left: 99.999996% !important;
  }
  /* Extra Large screen top offset classes */
  .xl_t0 {
    top: 0 !important;
  }
  .xl_t1 {
    top: 8.333333vw !important;
  }
  .xl_t2 {
    top: 16.666666vw !important;
  }
  .xl_t3 {
    top: 24.999999vw !important;
  }
  .xl_t4 {
    top: 33.333332vw !important;
  }
  .xl_t5 {
    top: 41.666665vw !important;
  }
  .xl_t6 {
    top: 49.999998vw !important;
  }
  .xl_t7 {
    top: 58.333331vw !important;
  }
  .xl_t8 {
    top: 66.666664vw !important;
  }
  .xl_t9 {
    top: 74.999997vw !important;
  }
  .xl_t10 {
    top: 83.33333vw !important;
  }
  .xl_t11 {
    top: 91.666663vw !important;
  }
  .xl_t12 {
    top: 99.999996vw !important;
  }
  /* Extra Large screen negative top offset classes */
  .xl_t1neg {
    top: -8.333333vw !important;
  }
  .xl_t2neg {
    top: -16.666666vw !important;
  }
  .xl_t3neg {
    top: -24.999999vw !important;
  }
  .xl_t4neg {
    top: -33.333332vw !important;
  }
  .xl_t5neg {
    top: -41.666665vw !important;
  }
  .xl_t6neg {
    top: -49.999998vw !important;
  }
  .xl_t7neg {
    top: -58.333331vw !important;
  }
  .xl_t8neg {
    top: -66.666664vw !important;
  }
  .xl_t9neg {
    top: -74.999997vw !important;
  }
  .xl_t10neg {
    top: -83.33333vw !important;
  }
  .xl_t11neg {
    top: -91.666663vw !important;
  }
  .xl_t12neg {
    top: -99.999996vw !important;
  }
  /* Extra Large screen row height classes */
  .row_xl_h0 {
    height: 0 !important;
    margin-top: 0 !important;
  }
  .row_xl_h1 {
    height: 8.333333vw !important;
    margin-top: 0 !important;
  }
  .row_xl_h2 {
    height: 16.666666vw !important;
    margin-top: 0 !important;
  }
  .row_xl_h3 {
    height: 24.999999vw !important;
    margin-top: 0 !important;
  }
  .row_xl_h4 {
    height: 33.333332vw !important;
    margin-top: 0 !important;
  }
  .row_xl_h5 {
    height: 41.666665vw !important;
    margin-top: 0 !important;
  }
  .row_xl_h6 {
    height: 49.999998vw !important;
    margin-top: 0 !important;
  }
  .row_xl_h7 {
    height: 58.333331vw !important;
    margin-top: 0 !important;
  }
  .row_xl_h8 {
    height: 66.666664vw !important;
    margin-top: 0 !important;
  }
  .row_xl_h9 {
    height: 74.999997vw !important;
    margin-top: 0 !important;
  }
  .row_xl_h10 {
    height: 83.33333vw !important;
    margin-top: 0 !important;
  }
  .row_xl_h11 {
    height: 91.666663vw !important;
    margin-top: 0 !important;
  }
  .row_xl_h12 {
    height: 99.999996vw !important;
    margin-top: 0 !important;
  }
  /* Extra Large screen fixed row height classes */
  .row_xl_fixed_h0 {
    height: 0 !important;
    margin-top: 0 !important;
  }
  .row_xl_fixed_h1 {
    height: 60px !important;
    margin-top: 0 !important;
  }
  .row_xl_fixed_h2 {
    height: 120px !important;
    margin-top: 0 !important;
  }
  .row_xl_fixed_h3 {
    height: 180px !important;
    margin-top: 0 !important;
  }
  .row_xl_fixed_h4 {
    height: 240px !important;
    margin-top: 0 !important;
  }
  .row_xl_fixed_h5 {
    height: 300px !important;
    margin-top: 0 !important;
  }
  .row_xl_fixed_h6 {
    height: 360px !important;
    margin-top: 0 !important;
  }
  .row_xl_fixed_h7 {
    height: 420px !important;
    margin-top: 0 !important;
  }
  .row_xl_fixed_h8 {
    height: 480px !important;
    margin-top: 0 !important;
  }
  .row_xl_fixed_h9 {
    height: 540px !important;
    margin-top: 0 !important;
  }
  .row_xl_fixed_h10 {
    height: 600px !important;
    margin-top: 0 !important;
  }
  .row_xl_fixed_h11 {
    height: 660px !important;
    margin-top: 0 !important;
  }
  .row_xl_fixed_h12 {
    height: 720px !important;
    margin-top: 0 !important;
  }
  /* Extra Large screen auto height classes */
  .row_xl_auto {
    height: auto !important;
    margin-top: 8.333333vw;
  }
  .xl_h_auto {
    height: auto !important;
  }
}
/* Fixed pixel negative top offset classes */
.t1neg_fixed {
  top: -60px;
}

.t2neg_fixed {
  top: -120px;
}

.t3neg_fixed {
  top: -180px;
}

.t4neg_fixed {
  top: -240px;
}

.t5neg_fixed {
  top: -300px;
}

.t6neg_fixed {
  top: -360px;
}

.t7neg_fixed {
  top: -420px;
}

.t8neg_fixed {
  top: -480px;
}

.t9neg_fixed {
  top: -540px;
}

.t10neg_fixed {
  top: -600px;
}

.t11neg_fixed {
  top: -660px;
}

.t12neg_fixed {
  top: -720px;
}

.footer {
  background-color: grey;
}

/* Overlay styles */
.overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 10000;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.8s ease;
}
.overlay.active {
  opacity: 1;
  pointer-events: auto;
}

.overlay-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(130, 130, 130, 0.6);
  z-index: 10001;
}

.overlay-content {
  position: fixed;
  top: 8.333333vw;
  left: 8.333333vw;
  right: 8.333333vw;
  bottom: 8.333333vw;
  background-color: rgb(255, 255, 255);
  z-index: 10002;
  overflow-y: auto;
  box-sizing: border-box;
  clip-path: inset(100% 0px 0px);
  transform: translateY(-100px) scale(0.9);
}
.overlay-content .main-image {
  position: relative;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  width: 100%;
  max-height: 65vh;
  height: auto;
  min-height: 0;
  background-color: black;
  display: flex;
  justify-content: center;
  align-items: center;
}
.overlay-content .main-image .gallery-wrapper {
  position: relative;
  width: 100%;
  max-height: 65vh;
  height: auto;
  min-height: 0;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
}
.overlay-content .main-image .gallery-item {
  display: none;
  width: 100%;
  max-height: 65vh;
  height: auto;
  min-height: 0;
}
.overlay-content .main-image .gallery-item.active {
  display: flex;
  justify-content: center;
  align-items: center;
}
.overlay-content .main-image .gallery-item img, .overlay-content .main-image .gallery-item video {
  max-width: 100%;
  max-height: 65vh;
  width: auto;
  height: auto;
  object-fit: contain;
  display: block;
}
.overlay-content .main-image .gallery-item video {
  max-width: 100%;
  width: auto;
}
.overlay-content .main-image .gallery-nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background-color: rgba(0, 0, 0, 0.5);
  color: white;
  border: none;
  width: 50px;
  height: 50px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  z-index: 100;
  transition: background-color 0.3s ease;
  border-radius: 50%;
  pointer-events: auto;
}
.overlay-content .main-image .gallery-nav:hover {
  background-color: rgba(0, 0, 0, 0.8);
}
.overlay-content .main-image .gallery-nav.gallery-prev {
  left: 20px;
}
.overlay-content .main-image .gallery-nav.gallery-next {
  right: 20px;
}
.overlay-content .main-image .gallery-nav:disabled {
  opacity: 0.3;
  cursor: not-allowed;
}
.overlay-content .main-image .gallery-indicators {
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 10px;
  z-index: 10;
}
.overlay-content .main-image .gallery-indicator {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.5);
  border: 2px solid rgba(255, 255, 255, 0.8);
  cursor: pointer;
  transition: all 0.3s ease;
  pointer-events: auto;
  padding: 0;
}
.overlay-content .main-image .gallery-indicator.active {
  background-color: white;
  transform: scale(1.2);
}
.overlay-content .main-image .gallery-indicator:hover {
  background-color: rgba(255, 255, 255, 0.8);
}
.overlay-content .main-image:has(.gallery-item:only-child) .gallery-nav,
.overlay-content .main-image:has(.gallery-item:only-child) .gallery-indicators {
  display: none;
}
.overlay-content .main-image img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
  margin: 0 auto;
}
.overlay-content .main-image:has(img:not(.gallery-item img)) {
  background: none;
  background-color: black;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-height: 65vh;
  height: auto;
  min-height: 0;
}
.overlay-content .main-image:has(img:not(.gallery-item img)) img {
  max-width: 100%;
  max-height: 65vh;
  width: auto;
  height: auto;
  object-fit: contain;
}
.overlay-content .main-image video:not(.gallery-item video) {
  display: block;
  max-width: 100%;
  width: auto;
  height: auto;
  max-height: 65vh;
  object-fit: contain;
  background-color: black;
}
.overlay-content .main-image:has(video:not(.gallery-item video)) {
  background: none;
  background-color: black;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-height: 65vh;
  height: auto;
  min-height: 0;
}
.overlay-content .main-image:has(video:not(.gallery-item video)) video {
  max-width: 100%;
  max-height: 65vh;
  width: auto;
  height: auto;
}
.overlay-content .info {
  padding: 2vw 3vw;
  display: flex;
  flex-direction: column;
  gap: 2vw;
}
.overlay-content .info .info-left {
  width: 100%;
}
.overlay-content .info .info-right {
  width: 100%;
}
.overlay-content .info .info-right ul li {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  .overlay-content .info {
    flex-direction: row;
  }
  .overlay-content .info .info-left {
    width: 70%;
  }
  .overlay-content .info .info-right {
    width: 30%;
  }
}
@media (min-width: 1024px) {
  .overlay-content {
    top: 4.1666665vw;
    left: 4.1666665vw;
    right: 4.1666665vw;
    bottom: 4.1666665vw;
  }
}
@media (min-width: 1280px) {
  .overlay-content {
    top: 4.1666665vw;
    left: 16.666666vw;
    right: 16.666666vw;
    bottom: 4.1666665vw;
  }
}
.overlay-content h3 {
  font-weight: normal;
  font-size: 3vw;
  margin-bottom: 1vw;
}
.overlay-content p {
  margin-bottom: 1em;
}
.overlay-content a {
  color: #0098AB;
}
.overlay-content a:hover {
  color: #00c4d8;
}

.overlay-content-wrapper {
  width: 100%;
  height: 100%;
  box-sizing: border-box;
}

.overlay.active .overlay-content {
  animation: clipPathReveal 0.8s ease-in-out forwards 0.3s;
}

@keyframes clipPathReveal {
  0% {
    clip-path: inset(100% 3vw 3vw);
    transform: translateY(-100px) scale(0.9);
  }
  50% {
    clip-path: inset(0% 3vw 3vw);
    transform: translateY(0px) scale(0.9);
  }
  100% {
    clip-path: inset(0% 0px 0px);
    transform: translateY(0px) scale(1);
  }
}

/*# sourceMappingURL=style.css.map */
