:root {
  --ease-power1-in: cubic-bezier(0.55, 0.085, 0.68, 0.53);
  --ease-power1-out: cubic-bezier(0.25, 0.46, 0.45, 0.94);
  --ease-power1-inOut: cubic-bezier(0.455, 0.03, 0.515, 0.955);
  --ease-power2-in: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  --ease-power2-out: cubic-bezier(0.215, 0.61, 0.355, 1);
  --ease-power2-inOut: cubic-bezier(0.645, 0.045, 0.355, 1);
  --ease-power3-in: cubic-bezier(0.895, 0.03, 0.685, 0.22);
  --ease-power3-out: cubic-bezier(0.165, 0.84, 0.44, 1);
  --ease-power3-inOut: cubic-bezier(0.77, 0, 0.175, 1);
  --ease-power4-in: cubic-bezier(0.755, 0.05, 0.855, 0.06);
  --ease-power4-out: cubic-bezier(0.23, 1, 0.32, 1);
  --ease-power4-inOut: cubic-bezier(0.86, 0, 0.07, 1);
  --ease-expo-in: cubic-bezier(0.95, 0.05, 0.795, 0.035);
  --ease-expo-out: cubic-bezier(0.19, 1, 0.22, 1);
  --ease-expo-inOut: cubic-bezier(1, 0, 0, 1);
  --ease-back-in: cubic-bezier(0.6, -0.28, 0.735, 0.045);
  --ease-back-out: cubic-bezier(0.175, 0.885, 0.32, 1.275);
  --ease-back-inOut: cubic-bezier(0.68, -0.55, 0.265, 1.55);
  --ease-sine-in: cubic-bezier(0.47, 0, 0.745, 0.715);
  --ease-sine-out: cubic-bezier(0.39, 0.575, 0.565, 1);
  --ease-sine-inOut: cubic-bezier(0.445, 0.05, 0.55, 0.95);
  --ease-circ-in: cubic-bezier(0.6, 0.04, 0.98, 0.335);
  --ease-circ-out: cubic-bezier(0.075, 0.82, 0.165, 1);
  --ease-circ-inOut: cubic-bezier(0.785, 0.135, 0.15, 0.86);
  --ease-bounce: cubic-bezier(0.17, 0.67, 0.3, 1.33);
  --ease-slow-out: cubic-bezier(0, 1, 0.4, 1);
  --ease-smooth: cubic-bezier(0.4, 0, 0.2, 1);
  --ease: var(--ease-smooth);
  --transition-duration-fast: 0.15s;
  --transition-duration: 0.3s;
  --transition-duration-medium: 0.45s;
  --transition-duration-slow: 0.6s;
  --transition-duration-slower: 0.9s;
  --transition-duration-slowest: 1.2s;
  --std-hover: all var(--transition-duration-medium) var(--ease-smooth);
}

::-webkit-scrollbar {
  display: none;
}

/* Or set width/height to 0 */
::-webkit-scrollbar {
  width: 0px;
  height: 0px;
}

* {
  -ms-overflow-style: none; /* Internet Explorer 10+ */
  scrollbar-width: none; /* Firefox */
  -webkit-tap-highlight-color: transparent;
}

*::-webkit-scrollbar {
  display: none; /* Safari and Chrome */
}

.nav-link,
.press-card,
.capability-card,
/* .process-bg, */
.process-block,
.process-line,
.marquee-item_layout,
.press-item, .scrub-bg_wrap img {
  transition: var(--std-hover);
}

.tooltip-section {
  opacity: 0;
}

.scrub-bg_wrap img {
  transition-duration: 1.2s;
}

.process-line {
  transition-duration: 900ms;
}

.process-block.is-active {
  color: var(--color--black);
}

.process-block.is-active .process-line {
  max-width: 100%;
}

.press-card.remove {
  opacity: 0;
  visibility: hidden;
}

.tooltip-trigger {
  text-decoration-line: underline;
  text-decoration-style: dotted;
  text-decoration-skip-ink: auto;
  text-decoration-thickness: 5%;
  text-underline-offset: 0%;
  text-underline-position: from-font;
}

.is-active .marquee-item_num {
  opacity: 1;
}

.marquee-section {
  height: 100svh;
}

.section-nav_label {
  box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.08);
}

/* .footer-bot_wrap {
  left: 45%;
  transition: all 1s cubic-bezier(0.38, 0, 0.215, 1);
}

.footer-top_bg-el {
  transition: all 1s cubic-bezier(0.38, 0, 0.215, 1);
}

.footer-top_bg-el.is-1 {
  right: 38.5em;
}

.footer-top_bg-el.is-2 {
  right: 30em;
}

.footer-top_bg-el.is-3 {
  right: 40em;
}

.footer-in_view .footer-top_bg-el.is-1 {
  right: 23.5em;
}

.footer-in_view .footer-top_bg-el.is-2 {
  right: 6.7em;
}

.footer-in_view .footer-top_bg-el.is-3 {
  right: 0em;
}

.footer-in_view .footer-bot_wrap {
  left: 0%;
} */

.press-card_title {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  -webkit-mask-image: linear-gradient(
    to right,
    black calc(100% - var(--size--2-625em)),
    transparent 100%
  );
  mask-image: linear-gradient(
    to right,
    black calc(100% - var(--size--2-625em)),
    transparent 100%
  );
}

.c-split-mask {
  padding-right: 0.1em;
  margin-right: -0.1em;
  padding-block: 0.1em;
  margin-block: -0.1em;
}

/* Desktop CSS */
@media (min-width: 992px) and (pointer: fine) {
  .capability-card:hover {
    background: var(--color--blue);
  }

  .email-wrap:hover .is-contact_static {
    display: none;
  }

  .email-wrap:hover .is-contact_hover {
    display: flex;
  }

  .is-active .marquee-item_layout {
    transform: translateX(var(--size--3-5em));
  }
}

/* Mobile CSS */
@media (max-width: 991px) and (pointer: coarse) {
  .capability-card.in-view {
    background: var(--color--blue);
  }

  .email-wrap.show .is-contact_static {
    display: none;
  }

  .email-wrap.show .is-contact_hover {
    display: flex;
  }

  .tooltip {
    padding: var(--size--1em);
    grid-column-gap: var(--size--0-5em);
    grid-row-gap: var(--size--0-5em);
    border-radius: var(--radius--sm);
    background-color: var(--color--white);
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
    width: 90vw;
    font-size: 0.571429em;
    display: none;
    position: absolute;
    bottom: 100%;
    left: auto;
    transform: none;
  }
}
