/* -----SCROLLBAR----- */

html,
body {
  scrollbar-gutter: stable;
  background-color: #2c2c2c;
}

/* -----GSAP PREVENT FLICKER----- */

/* Hide your heading in CSS */
[data-split="heading"] {
  visibility: hidden;
}

/* For Webflow users only: */
/* Make sure the heading does not disappear in the designer or editor */
.wf-design-mode [data-split="heading"],
.w-editor [data-split="heading"] {
  visibility: visible !important;
}

/* ------------------------- Scaling System -------------------------  */

/* Desktop */
:root {
  --size-unit: 16;
  /* body font-size in design - no px */
  --size-container-ideal: 1440;
  /* screen-size in design - no px */
  --size-container-min: 992px;
  --size-container-max: none;
  --size-container: clamp(var(--size-container-min), 100vw, var(--size-container-max));
  --size-font: calc(var(--size-container) / (var(--size-container-ideal) / var(--size-unit)));
}

/* Tablet */
@media screen and (max-width: 991px) {
  :root {
    --size-container-ideal: 834;
    /* screen-size in design - no px */
    --size-container-min: 768px;
    --size-container-max: 991px;
  }
}

/* Mobile Landscape */
@media screen and (max-width: 767px) {
  :root {
    --size-container-ideal: 550;
    /* screen-size in design - no px */
    --size-container-min: 480px;
    --size-container-max: 767px;
  }
}

/* Mobile Portrait */
@media screen and (max-width: 479px) {
  :root {
    --size-container-ideal: 390;
    /* screen-size in design - no px */
    --size-container-min: 320px;
    --size-container-max: 479px;
  }
}

html,
body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  /* Equivalent for Firefox on macOS */
}

body {
  font-size: var(--size-font);
}

a {
  color: inherit;
  text-decoration: none;
}

.container {
  max-width: var(--size-container);
}

.container.medium {
  max-width: calc(var(--size-container) * 0.85);
}

.container.small {
  max-width: calc(var(--size-container) * 0.7);
}

/* -----Underline Link Animation----- */

[data-underline-link] {
  text-decoration: none;
  position: relative;
}

[data-underline-link]::before,
[data-underline-link="alt"]::before,
[data-underline-link="alt"]::after {
  content: "";
  position: absolute;
  top: 60%;
  left: 0;
  width: 100%;
  height: 0.0625em;
  background-color: currentColor;
  transition: transform 0.735s cubic-bezier(0.625, 0.05, 0, 1);
  transform-origin: right;
  transform: scaleX(0) rotate(0.001deg);
}

[data-underline-link="alt"]::before {
  transform-origin: left;
  transform: scaleX(1) rotate(0.001deg);
  transition-delay: 0.3s;
}

[data-underline-link="alt"]::after {
  transform-origin: right;
  transform: scaleX(0) rotate(0.001deg);
  transition-delay: 0s;
}

@media (hover: hover) and (pointer: fine) {

  [data-hover]:hover [data-underline-link]::before,
  [data-underline-link]:hover::before {
    transform-origin: left;
    transform: scaleX(1) rotate(0.001deg);
  }

  [data-hover]:hover [data-underline-link="alt"]::before,
  [data-underline-link="alt"]:hover::before {
    transform-origin: right;
    transform: scaleX(0) rotate(0.001deg);
    transition-delay: 0s;
  }

  [data-hover]:hover [data-underline-link="alt"]::after,
  [data-underline-link="alt"]:hover::after {
    transform-origin: left;
    transform: scaleX(1) rotate(0.001deg);
    transition-delay: 0.3s;
  }
}

/* -----Cursor----- */

body:has(a:hover) .cursor,
body:has(button:hover) .cursor,
body:has([data-cursor]:hover) .cursor {
  width: 2em;
  height: 2em;
  background-color: rgba(125, 164, 203, 0.3);
}

@media (hover: none) and (pointer: coarse) {
  .cursor {
    display: none;
  }
}

/* -----Card Hover----- */

[data-hover-zoom] {
  overflow: hidden;
}

[data-hover-zoom] img {
  transition: transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transform: scale(1);
}

[data-hover-zoom]:hover img {
  transform: scale(1.05);
}

/* -----Bunny Video Background----- */

/* Animation */
[data-bunny-background-init] :is(.bunny-bg__placeholder, .bunny-bg__loading) {
  transition: opacity 0.3s linear, visibility 0.3s linear;
}

/* Placeholder */
[data-bunny-background-init][data-player-status="playing"] .bunny-bg__placeholder,
[data-bunny-background-init][data-player-status="paused"] .bunny-bg__placeholder,
[data-bunny-background-init][data-player-activated="true"][data-player-status="ready"] .bunny-bg__placeholder {
  opacity: 0;
  visibility: hidden;
}

/* Play/Pause */
[data-bunny-background-init][data-player-status="playing"] .bunny-bg__play-svg,
[data-bunny-background-init][data-player-status="loading"] .bunny-bg__play-svg {
  display: none;
}

[data-bunny-background-init][data-player-status="playing"] .bunny-bg__pause-svg,
[data-bunny-background-init][data-player-status="loading"] .bunny-bg__pause-svg {
  display: block;
}

/* Loading */
[data-bunny-background-init][data-player-status="loading"] .bunny-bg__loading {
  opacity: 1;
  visibility: visible;
}

/* -----Loader----- */

.wf-design-mode .loader,
.wf-design-mode .page-loader {
  display: none;
}

[data-load-reset] {
  opacity: 0;
}

/* -----Mobile Menu----- */

/* --------------------------------- Hamburger --------------------------------- */

.bold-nav-full__hamburger .bold-nav-full__hamburger-bar {
  transform: translate(0, 0) rotate(0.001deg);
  transition: transform 0.5s cubic-bezier(.7, 0, .3, 1);
}

.bold-nav-full__hamburger .bold-nav-full__hamburger-bar:nth-child(1) {
  transform: translate(0, -.45em) scale(1, 1) rotate(0.001deg);
}

.bold-nav-full__hamburger .bold-nav-full__hamburger-bar:nth-child(3) {
  transform: translate(0, .45em) scale(1, 1) rotate(0.001deg);
}

/* Hamburger (Navigation Open) */

[data-navigation-status="active"] .bold-nav-full__hamburger-bar:nth-child(1) {
  transform: translate(0, 0) rotate(45deg) scale(1, 1);
}

[data-navigation-status="active"] .bold-nav-full__hamburger-bar:nth-child(2) {
  transform: translate(-150%, 0) rotate(0.001deg) scale(1, 1);
}

[data-navigation-status="active"] .bold-nav-full__hamburger-bar:nth-child(3) {
  transform: translate(0, 0) rotate(-45deg) scale(1, 1);
}

/* --------------------------------- Tile --------------------------------- */

.bold-nav-full__tile {
  transition: clip-path 1s cubic-bezier(.9, 0, .1, 1);
  clip-path: polygon(0% 0%, 100% 0%, 100% 0%, 0% 0%);
}

/* Tile (Navigation Open) */

[data-navigation-status="active"] .bold-nav-full__tile {
  clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
}

/* Tile - Links */

.bold-nav-full__link {
  transform: translateY(100%) rotate(5deg);
  transition: transform 0.75s cubic-bezier(.7, 0, .3, 1);
}

.bold-nav-full__li:nth-child(1) .bold-nav-full__link {
  transition-delay: 0.2s;
}

.bold-nav-full__li:nth-child(2) .bold-nav-full__link {
  transition-delay: 0.15s;
}

.bold-nav-full__li:nth-child(3) .bold-nav-full__link {
  transition-delay: 0.1s;
}

.bold-nav-full__li:nth-child(4) .bold-nav-full__link {
  transition-delay: 0.05s;
}

.bold-nav-full__li:nth-child(5) .bold-nav-full__link {
  transition-delay: 0s;
}

/* Tile - Links (Navigation Open) */

[data-navigation-status="active"] .bold-nav-full__link {
  transform: translateY(0%) rotate(0.001deg);
  transition-delay: 0.3s;
}

[data-navigation-status="active"] .bold-nav-full__li:nth-child(1) .bold-nav-full__link {
  transition-delay: 0.3s;
}

[data-navigation-status="active"] .bold-nav-full__li:nth-child(2) .bold-nav-full__link {
  transition-delay: 0.35s;
}

[data-navigation-status="active"] .bold-nav-full__li:nth-child(3) .bold-nav-full__link {
  transition-delay: 0.4s;
}

[data-navigation-status="active"] .bold-nav-full__li:nth-child(4) .bold-nav-full__link {
  transition-delay: 0.45s;
}

[data-navigation-status="active"] .bold-nav-full__li:nth-child(5) .bold-nav-full__link {
  transition-delay: 0.5s;
}

/* -----HERO SLIDER----- */

[data-image-cycle-item="active"] {
  transition: opacity 0.4s ease 0s, visibility 0s ease 0s;
  opacity: 1;
  visibility: visible;
  z-index: 3;
}

[data-image-cycle-item="previous"] {
  transition: opacity 0.4s ease 0.4s, visibility 0s ease 0.4s;
  opacity: 0;
  visibility: visible;
  z-index: 2;
}

[data-image-cycle-item="not-active"] {
  opacity: 0;
  visibility: hidden;
  z-index: 1;
}
