* {
        box-sizing: border-box;
        margin: 0;
        padding: 0;
      }
      html {
        -webkit-text-size-adjust: 100%;
        -ms-text-size-adjust: 100%;
        -webkit-font-smoothing: antialiased;
      }
      body {
        line-height: 1;
      }
      blockquote {
        quotes: none;
      }
      small {
        font-size: 80%;
      }
      ol,
      ul {
        list-style-type: none;
      }
      sub,
      sup {
        font-size: 75%;
        line-height: 0;
        position: relative;
        vertical-align: baseline;
      }
      a {
        color: currentColor;
        text-decoration: none;
      }
      sup {
        top: -0.5em;
      }
      sub {
        bottom: -0.25em;
      }
      address {
        font-style: normal;
      }
      a:active,
      a:hover,
      button,
      input,
      select,
      textarea {
        outline: 0;
      }
      input,
      textarea {
        border: none;
        padding: 0;
      }
      button {
        background-color: transparent;
        border: none;
        color: currentColor;
        cursor: pointer;
        font-family: SequelWeb, sans-serif;
      }
      svg {
        height: 100%;
        width: 100%;
      }
      table {
        border-collapse: collapse;
        border-spacing: 0;
      }
      img {
        border: 0;
        -ms-interpolation-mode: bicubic;
        height: auto;
        max-width: 100%;
        vertical-align: middle;
        width: 100%;
      }
      article,
      aside,
      details,
      figcaption,
      figure,
      footer,
      header,
      hgroup,
      main,
      nav,
      section,
      summary {
        display: block;
      }
      fieldset {
        border: none;
      }
      @media print {
        * {
          background: transparent !important;
          box-shadow: none !important;
          color: #000 !important;
          filter: none !important;
          text-shadow: none !important;
        }
        a,
        a:visited {
          text-decoration: underline;
        }
        a[href]:after {
          content: " (" attr(href) ")";
        }
        a[href^="#"]:after {
          content: "";
        }
        img {
          max-width: 100% !important;
        }
      }
      ::-moz-selection {
        background-color: #000;
        color: #fff;
        text-shadow: none;
      }
      ::selection {
        background-color: #000;
        color: #fff;
        text-shadow: none;
      }
      html {
        box-sizing: border-box;
        font-size: 62.5%;
      }
      @media (hover: hover) {
        html {
          scrollbar-width: none;
        }
      }
      @media (hover: hover) {
        ::-webkit-scrollbar {
          display: none;
          height: 0;
          width: 0;
        }
      }
      body,
      html {
        height: auto;
        margin: 0;
        min-height: 100%;
        padding: 0;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
      }
      body {
        background-color: #fff;
        color: #1c1c1c;
        font-family: SequelWeb, sans-serif;
        font-size: 1.9rem;
        font-style: normal;
        font-weight: 400;
        overflow-x: hidden;
      }
      .lenis.lenis-stopped,
      .oh {
        overflow: hidden;
      }
      .lenis.lenis-smooth [data-lenis-prevent] {
        overscroll-behavior: contain;
      }
      .page-wrapper {
        min-height: 100lvh;
        position: relative;
      }
      .page {
        background-color: #fff;
        position: relative;
      }
      .page--contact,
      .page--privacy,
      .page--services {
        color: #3b15eb;
      }
      .page--project-dark {
        background-color: #141414;
        color: #a4a4a4;
      }
      @font-face {
        font-display: swap;
        font-family: OwnersWeb;
        font-style: normal;
        font-weight: 600;
        src: url(/fonts/Owners-Bold.woff) format("woff"),
          url(/fonts/Owners-Bold.woff2) format("woff2");
      }
      @font-face {
        font-display: swap;
        font-family: SequelWeb;
        font-style: normal;
        font-weight: 400;
        src: url(/fonts/SequelSans-RomanHead.woff) format("woff"),
          url(/fonts/SequelSans-RomanHead.woff2) format("woff2");
      }
      @font-face {
        font-display: swap;
        font-family: SequelWeb;
        font-style: normal;
        font-weight: 500;
        src: url(/fonts/SequelSans-SemiBoldHead.woff) format("woff"),
          url(/fonts/SequelSans-SemiBoldHead.woff2) format("woff2");
      }
      @font-face {
        font-display: swap;
        font-family: RecklessWeb;
        font-style: normal;
        font-weight: 400;
        src: url(/fonts/RecklessNeue-Book.woff) format("woff"),
          url(/fonts/RecklessNeue-Book.woff2) format("woff2");
      }
      .h1,
      .h2,
      .h3,
      .h4,
      .h5,
      h1,
      h2,
      h3,
      h4,
      h5 {
        font-family: OwnersWeb, sans-serif;
        font-weight: 600;
      }
      .h1,
      h1 {
        font-size: 10rem;
        letter-spacing: -0.01em;
        line-height: 0.8;
      }
      @media (min-width: 768px) {
        .h1,
        h1 {
          font-size: 9.0625vw;
          line-height: 0.9;
          margin-top: 1.1em;
          /*color:#e13021;*/
        }
      }
      .h2,
      h2 {
        font-size: 9rem;
        letter-spacing: -0.02em;
        line-height: 0.81;
      }
      @media (min-width: 1024px) {
        .h2,
        h2 {
          font-size: 12.9375vw;
          letter-spacing: -0.01em;
          line-height: 0.75;
        }
      }
      .h3,
      h3 {
        font-size: 8.5rem;
        letter-spacing: -0.02em;
        line-height: 0.81;
      }
      @media (min-width: 1024px) {
        .h3,
        h3 {
          font-size: 11.875vw;
        }
      }
      .h4,
      h4 {
        font-size: 5.6rem;
        letter-spacing: -0.01em;
        line-height: 0.81;
      }
      @media (min-width: 1024px) {
        .h4,
        h4 {
          font-size: 10vw;
        }
      }
      .h5,
      h5 {
        font-size: 5rem;
        letter-spacing: -0.01em;
        line-height: 0.89;
      }
      @media (min-width: 1024px) {
        .h5,
        h5 {
          font-size: 4.0625vw;
        }
      }
      .nav-label {
        font-family: OwnersWeb, sans-serif;
        font-size: 6.8rem;
        font-weight: 600;
        letter-spacing: -0.02em;
        line-height: 0.81;
      }
      @media (min-width: 1024px) {
        .nav-label {
          font-size: 6.25vw;
        }
      }
      @media (min-width: 1024px) and (min-height: 600px) {
        .nav-label {
          font-size: 8.75vw;
        }
      }
      @media (min-width: 1024px) and (min-height: 680px) {
        .nav-label {
          font-size: 10.625vw;
        }
      }
      .nav-toggle-label-small {
        font-family: SequelWeb, sans-serif;
        font-size: 1.6rem;
        font-weight: 500;
        letter-spacing: 0.01em;
        line-height: 0.8;
      }
      @media (min-width: 1024px) {
        .nav-toggle-label-small {
          font-size: 1.5vw;
        }
      }
      .nav-toggle-label {
        font-family: SequelWeb, sans-serif;
        font-size: 2rem;
        font-weight: 500;
        letter-spacing: 0.01em;
        line-height: 0.8;
        /*mix-blend-mode: difference;*/
      }
      @media (min-width: 1024px) {
        .nav-toggle-label {
          font-size: 1.75vw;
        }
      }
      .btn-label {
        font-family: SequelWeb, sans-serif;
        font-size: 1.6rem;
        letter-spacing: 0.03em;
        line-height: 0.9;
      }
      @media (min-width: 1024px) {
        .btn-label {
          font-size: 1.1875vw;
        }
      }
      .title-pill-label-small {
        font-family: SequelWeb, sans-serif;
        font-size: 1rem;
        font-weight: 400;
        letter-spacing: 0.01em;
        line-height: 1.24;
      }
      @media (min-width: 1024px) {
        .title-pill-label-small {
          font-size: 0.75vw;
        }
      }
      .title-pill-label-medium {
        font-family: SequelWeb, sans-serif;
        font-size: 1.2rem;
        font-weight: 400;
        letter-spacing: 0.03em;
        line-height: 1.1;
      }
      @media (min-width: 1024px) {
        .title-pill-label-medium {
          font-size: 0.875vw;
        }
      }
      .title-pill-label-large {
        font-family: SequelWeb, sans-serif;
        font-size: 1.2rem;
        font-weight: 400;
        letter-spacing: 0.03em;
        line-height: 1.1;
      }
      @media (min-width: 1024px) {
        .title-pill-label-large {
          font-size: 1.1875vw;
        }
      }
      .footer-label {
        font-size: 1.4rem;
        letter-spacing: 0.03em;
        line-height: 1.1;
      }
      @media (min-width: 1024px) {
        .footer-label {
          font-size: 0.875vw;
        }
      }
      .fig-caption {
        font-size: 0.9rem;
        letter-spacing: 0.01em;
        line-height: 1.24;
      }
      .p1,
      .p2,
      .p3 {
        font-family: SequelWeb, sans-serif;
        font-weight: 500;
      }
      .p1 {
        font-size: 2.7rem;
        letter-spacing: -0.02em;
        line-height: 1;
      }
      @media (min-width: 1024px) {
        .p1 {
          font-size: 3.75vw;
        }
      }
      .p2 {
        font-size: 2.7rem;
        letter-spacing: -0.02em;
        line-height: 1;
      }
      @media (min-width: 1024px) {
        .p2 {
          font-size: 2.6875vw;
        }
      }
      .p3 {
        font-size: 2.7rem;
        letter-spacing: -0.02em;
        line-height: 1;
      }
      @media (min-width: 1024px) {
        .p3 {
          font-size: 2vw;
          letter-spacing: -0.01em;
        }
      }
      .p4 {
        font-family: SequelWeb, sans-serif;
        font-size: 1.6rem;
        font-weight: 400;
        letter-spacing: -0.02em;
        line-height: 1.3;
      }
      @media (min-width: 1024px) {
        .p4 {
          font-size: 1.125vw;
        }
      }
      .p1-alt,
      .p2-alt {
        font-family: RecklessWeb, serif;
      }
      .p1-alt {
        font-size: 1.8rem;
        letter-spacing: -0.01em;
        line-height: 1.2;
      }
      @media (min-width: 1024px) {
        .p1-alt {
          font-size: 1.625vw;
          line-height: 1.25;
        }
      }
      .p2-alt {
        font-size: 1.8rem;
        letter-spacing: -0.01em;
        line-height: 1.2;
      }
      @media (min-width: 1024px) {
        .p2-alt {
          font-size: 1.5vw;
          line-height: 1.15;
        }
      }
      .ttu {
        text-transform: uppercase;
      }
      .fw400 {
        font-weight: 400;
      }
      .fw500 {
        font-weight: 500;
      }
      .fw600 {
        font-weight: 600;
      }
      .ff-alt {
        font-family: RecklessWeb, serif;
      }
      .fade-enter-active,
      .fade-leave-active {
        transition: opacity 0.6s linear;
      }
      .fade-enter-from,
      .fade-leave-to {
        opacity: 0;
      }
      .page-enter-active {
        left: 0;
        position: fixed;
        top: 0;
        width: 100%;
        z-index: 800;
      }
      .page-enter-active,
      .page-wrapper {
        transition: transform 1s cubic-bezier(0.43, 0.2, 0.02, 1);
      }
      .nav--open + .page .page-wrapper {
        transform: translateY(-15vh);
      }
      .page-enter-from {
        transform: translateY(100dvh);
      }
      .page-leave-active {
        position: relative;
        transition: transform 0.98s cubic-bezier(0.43, 0.2, 0.02, 1);
        z-index: -2;
      }
      .page-leave-to {
        transform: translateY(-15vh);
      }
      @media (prefers-reduced-motion: no-preference) {
        .anim-word {
          transition: transform 0.8s cubic-bezier(0.14, 1, 0.34, 1);
        }
      }
      .text-splitter p:nth-child(odd) .anim-word:nth-child(odd) {
        transform: translateY(105%);
      }
      .text-splitter p:nth-child(odd) .anim-word:nth-child(2n) {
        transform: translateY(-105%);
      }
      .is-visible .text-splitter p:nth-child(odd) .anim-word {
        transform: translateY(0);
      }
      .text-splitter p:nth-child(2n) .anim-word:nth-child(odd) {
        transform: translateY(-105%);
      }
      .text-splitter p:nth-child(2n) .anim-word:nth-child(2n) {
        transform: translateY(105%);
      }
      .is-visible .text-splitter p:nth-child(2n) .anim-word {
        transform: translateY(0);
      }
      @media (prefers-reduced-motion: no-preference) {
        .anim-char {
          transition: transform 0.6s cubic-bezier(0.14, 1, 0.34, 1);
        }
      }
      .anim-char:nth-child(odd) {
        transform: translateY(-120%);
      }
      .anim-char:nth-child(2n) {
        transform: translateY(120%);
      }
      .is-visible .anim-char {
        transform: translateY(0);
      }
      .anim-line {
        opacity: 0;
        transform: translateY(50%);
      }
      @media (prefers-reduced-motion: no-preference) {
        .anim-line {
          transition: opacity 1s cubic-bezier(0.14, 1, 0.34, 1),
            transform 0.8s cubic-bezier(0.14, 1, 0.34, 1);
        }
      }
      .is-visible .anim-line {
        opacity: 1;
        transform: translateY(0);
      }
      
      @media (prefers-reduced-motion: no-preference) {
        .header-sticky-enter-active,
        .header-sticky-leave-active {
          transition: transform 0.8s cubic-bezier(0.14, 1, 0.34, 1);
        }
      }
      .header-sticky-enter-from,
      .header-sticky-leave-to {
        transform: translateY(calc(-100% - 0.8rem));
      }
      @media (min-width: 1024px) {
        .header-sticky-enter-from,
        .header-sticky-leave-to {
          transform: translateY(calc(-100% - 0.75vw));
        }
      }
    
      @media (prefers-reduced-motion: no-preference) {
        .split-delay-enter-active,
        .split-delay-leave-active {
          transition: transform 1s cubic-bezier(0.14, 1, 0.34, 1);
        }
      }
      .split-delay-enter-from,
      .split-delay-leave-to {
        opacity: 1;
      }
      .title-pill-fade-enter-active {
        transition: opacity 0.4s linear 0.2s;
      }
      .title-pill-fade-leave-active {
        transition: opacity 0.3s linear;
      }
      .title-pill-fade-enter-from,
      .title-pill-fade-leave-to {
        opacity: 0;
      }
      @media (prefers-reduced-motion: no-preference) {
        .nav-normal-enter-active {
          transition: transform 1s cubic-bezier(0.43, 0.2, 0.02, 1),
            opacity 1.4s;
        }
      }
      .nav-normal-enter-active .nav-item:first-child .nav-item__link-label {
        transition-delay: 0.28s;
      }
      .nav-normal-enter-active .nav-item:nth-child(2) .nav-item__link-label {
        transition-delay: 0.36s;
      }
      .nav-normal-enter-active .nav-item:nth-child(3) .nav-item__link-label {
        transition-delay: 0.44s;
      }
      .nav-normal-enter-active .nav-item:nth-child(4) .nav-item__link-label {
        transition-delay: 0.52s;
      }
      .nav-normal-enter-active .nav-item:nth-child(5) .nav-item__link-label {
        transition-delay: 0.6s;
      }
      .nav-normal-enter-active .nav-item:nth-child(6) .nav-item__link-label {
        transition-delay: 0.68s;
      }
      @media (prefers-reduced-motion: no-preference) {
        .nav-normal-leave-active {
          transition: transform 0.8s cubic-bezier(0.43, 0.2, 0.02, 1);
        }
        .nav-normal-enter-active .nav-item__link-label,
        .nav-normal-leave-active .nav-item__link-label {
          transition: transform 0.8s cubic-bezier(0.14, 1, 0.34, 1);
        }
      }
      .nav-normal-enter-from,
      .nav-normal-leave-to {
        transform: translateY(100lvh);
      }
      .nav-normal-enter-from .nav-item:nth-child(odd) .nav-item__link-label {
        transform: translateY(-100%);
      }
      .nav-normal-enter-from .nav-item:nth-child(2n) .nav-item__link-label {
        transform: translateY(100%);
      }
      @media (prefers-reduced-motion: no-preference) {
        .nav-up-enter-active,
        .nav-up-leave-active {
          transition: transform 0.8s cubic-bezier(0.43, 0.2, 0.02, 1),
            opacity 1.1s;
        }
      }
      .nav-up-enter-active.nav,
      .nav-up-leave-active.nav {
        z-index: 0;
      }
      .nav-up-leave-to {
        transform: translateY(-15lvh);
      }
      @media (prefers-reduced-motion: no-preference) {
        .cursor-label-enter-active {
          transition: transform 0.8s cubic-bezier(0.14, 1, 0.34, 1) 0.2s;
        }
        .cursor-label-leave-active {
          transition: transform 0.4s cubic-bezier(1, 0, 0.65, 0.61);
        }
      }
      .cursor-label-enter-from,
      .cursor-label-leave-to {
        transform: translateY(105%);
      }
      @media (prefers-reduced-motion: no-preference) {
        .car-nav-left-enter-active,
        .car-nav-left-leave-active {
          transition: transform 0.8s cubic-bezier(0.14, 1, 0.34, 1);
        }
      }
      .car-nav-left-enter-from {
        transform: translate(100%);
      }
      .car-nav-left-leave-to {
        transform: translate(-100%);
      }
      @media (prefers-reduced-motion: no-preference) {
        .car-nav-right-enter-active,
        .car-nav-right-leave-active {
          transition: transform 0.8s cubic-bezier(0.14, 1, 0.34, 1);
        }
      }
      .car-nav-right-enter-from {
        transform: translate(-100%);
      }
      .car-nav-right-leave-to {
        transform: translate(100%);
      }
      @media (prefers-reduced-motion: no-preference) {
        .link-split-delay-enter-active,
        .link-split-delay-leave-active {
          transition: transform 0.8s cubic-bezier(0.14, 1, 0.34, 1);
        }
      }
      .link-split-delay-enter-from,
      .link-split-delay-leave-to {
        opacity: 1;
      }
      @media (prefers-reduced-motion: no-preference) {
        .framed-assets-enter-active {
          transition: transform 0.8s cubic-bezier(0.14, 1, 0.34, 1),
            opacity 0.8s cubic-bezier(0.14, 1, 0.34, 1);
        }
        .framed-assets-leave-active {
          transition: transform 0.8s cubic-bezier(0.14, 1, 0.34, 1);
        }
      }
      .framed-assets-enter-active {
        z-index: 2;
      }
      .framed-assets-enter-from {
        opacity: 0;
        transform: scale(1.1);
      }
      @media (prefers-reduced-motion: no-preference) {
        .work-index-enter-active,
        .work-index-leave-active {
          transition: transform 0.8s cubic-bezier(0.43, 0.2, 0.02, 1);
        }
      }
      .work-index-enter-from,
      .work-index-leave-to {
        transform: translate(-100vw);
      }
      @keyframes timer {
        to {
          stroke-dashoffset: 0;
        }
      }
      @media (prefers-reduced-motion: no-preference) {
        .contact-modal-enter-active,
        .contact-modal-leave-active {
          transition: transform 0.8s cubic-bezier(0.43, 0.2, 0.02, 1);
        }
      }
      .contact-modal-enter-from {
        transform: translateY(100lvh);
      }
      .contact-modal-leave-to {
        transform: translateY(-100lvh);
      }
      @media (prefers-reduced-motion: no-preference) {
        .cookie-enter-active {
          transition: transform 1s cubic-bezier(0.14, 1, 0.34, 1) 1.4s;
        }
        .cookie-leave-active {
          transition: transform 0.8s cubic-bezier(0.9, 0, 0.1, 1);
        }
      }
      .cookie-enter-from,
      .cookie-leave-to {
        transform: translateY(calc(100% + 2rem));
      }
      @media (min-width: 1024px) {
        .cookie-enter-from,
        .cookie-leave-to {
          transform: translateY(calc(100% + 2.8125vw));
        }
      }
      .grid {
        display: grid;
        grid-template-columns: repeat(5, 1fr);
        margin: 0 auto;
        padding: 0 0.8rem;
        width: 100%;
      }
      @supports (gap: 0) {
        .grid {
          gap: 0 0.8rem;
        }
        @media (min-width: 1024px) {
          .grid {
            gap: 0 0.75vw;
          }
        }
      }
      @media (min-width: 1024px) {
        .grid {
          grid-template-columns: repeat(9, 1fr);
          padding: 0 0.75vw;
        }
      }
      .gutters {
        padding: 0 0.8rem;
      }
      @media (min-width: 1024px) {
        .gutters {
          padding: 0 0.75vw;
        }
      }
  
/*---------------------------------------------MASTER LOGO SETTINGS--------------------------------------------------*/

      /*--------------------ANIMATION SETTINGS------------------------------------------------*/
@keyframes fadeInUp {
  0% {
    /*transform: translateY(100%);*/
    opacity: 0;
  }
  100% {
    /*transform: translateY(0%);*/
    opacity: 1;
  }
}

.fadeInUp-animation {
  animation: 1.5s fadeInUp;
}
      /*--------------------END ANIMATION SETTINGS------------------------------------------------*/
      


      /*--------------------FLAG------------------------------------------------*/
      .header-logo {
        color: currentColor;
        
        display: flex;
        height: 0vw;
        position: relative;
        /*animation: 2.5s fadeInUp;
        animation-delay: 2s;
        width: 7.4rem;*/
        z-index: 500;
      }
      

      @media (min-width: 1024px) {
        .header-logo {
          height: 0vw;
          width: 6vw;
        }
      }

      .header-logo--abs {
        left: 0.8rem;
        position: absolute;
        top: 0.8rem;
      }
      @media (min-width: 1024px) {
        .header-logo--abs {
          left: 0.75vw;
          top: 0.75vw;
        }
      }
      .header-logo--small {
        height: 0rem;
        width: 6rem;
      }
      @media (min-width: 1024px) {
        .header-logo--small {
          height: 0vw;
          width: 3.75vw;
        }
      }
      
      .route-work .header-logo {
        transition: color 0.8s cubic-bezier(0.14, 1, 0.34, 1);
        transition-delay: 0.45s;
      }
      
       .header--index-visible .header-logo {
        color: #ebebeb;
        transition-delay: 0s;
      }
      
      /*------------------------------MASTER SWITCHEROO--------------------------------*/
      .header-sticky .header-logo__svg {
              /*height: 7vw;*/
              width: 14em;
              margin-left: 1em;
              margin-top: -109px;
              background-image: url("/images/republic/theme/logo/logo-type-white.svg");
      }

      
      @media (max-width: 480px) {
        .header-sticky .header-logo__svg {
          width: 9em;
          margin-left: 1%!important;
          margin-top: -49%!important;
          background-image: url("/images/republic/theme/logo/logo-type-white.svg");
          }
    
      }

      
  
      .nav .header-logo__svg  {
          visibility: hidden;
        }
   
  
  /* MASTER REPUBLIC FLAG */
    .header-logo__svg {
        overflow: visible;
        background-image: url("/images/republic/theme/logo/flag-red.gif");
        animation: 2.5s fadeInUp;
        /*animation-delay: -3s;*/
        background-repeat: no-repeat; 
        background-position: center; 
        background-size: contain;
        /*background-color: #ffcc00;*/
        height: 215px;
        width: 248px;
        margin-top: 0px;
        margin-left: 0px;
        opacity: 1;
        z-index: 89;
        /*display: block;*/
      }
      @media (max-width: 480px) {
        .header-logo__svg {
        height: 170px!important;;
        width: 175px!important;
        margin-top: -0.5em !important;
        margin-left: -2% !important;
        opacity: 1;
        z-index: 89;
        /* display: block; */
        }
      }
      @media (max-width: 820px) {
        .header-logo__svg {
        width: 222px;
        margin-top: -4%;
        margin-left: -1%;
        opacity: 1;
        z-index: 89;
        /* display: block; */
        }
      }
/* MOBILE TITLE*/
      @media (max-width: 480px) {
        .home-hero-title {
        margin-top: 85% !important;
        font-size: 2em !important;;
          }
        }

        @media (max-width: 820px) {
          .home-hero-title {
          margin-top: 57%;
          font-size: 3.5em;
          }
        }

       /* MASTER REPUBLIC LETTERS */
      .home-logo__svg {
        overflow: visible;
        background-image: url("/images/republic/theme/logo/logo-type-white.svg");
        animation: 2.5s fadeInUp;
        background-repeat: no-repeat; 
        background-color: #000;
        background-position: center; 
        background-size: contain;
        /*height: 6vw;*/
        /*width: 369px;*/
        margin-top: 0px;
        margin-left: 0px;
        opacity: 1;
        z-index: 999;
        display: block;
      }


  
      .nav-toggle {
        align-items: center;
        display: flex;
        position: relative;
        z-index: 500;
      }
      .nav-toggle--abs {
        position: absolute;
        right: 0.8rem;
        top: 1.4rem;
      }
      @media (min-width: 1024px) {
        .nav-toggle--abs {
          right: 0.75vw;
          top: 1vw;
        }
      }
      @media (hover: hover) {
        .nav-toggle:hover .nav-toggle__label,
        .nav-toggle:hover .nav-toggle__label-wrapper:after {
          transform: translateY(-120%);
          transition-duration: 0.8s;
          transition-timing-function: cubic-bezier(0.14, 1, 0.34, 1);
        }
      }
      .route-work .nav-toggle {
        transition: color 0.8s cubic-bezier(0.14, 1, 0.34, 1);
        transition-delay: 0s;
      }
      .header--index-visible .nav-toggle {
        color: #ebebeb;
        transition-delay: 0.45s;
      }
      @media (hover: hover) {
        .nav-toggle__label-wrapper {
          overflow: hidden;
          position: relative;
        }
        .nav-toggle__label-wrapper:after {
          content: attr(data-label);
          left: 0;
          pointer-events: none;
          position: absolute;
          top: 120%;
          transition: transform 0.4s cubic-bezier(1, 0, 0.65, 0.61);
          white-space: nowrap;
        }
        .nav-toggle__label {
          display: flex;
          transition: transform 0.4s cubic-bezier(1, 0, 0.65, 0.61);
        }
      }
      .nav-toggle__svg {
        height: 2.5rem;
        margin-right: 0.5rem;
        width: 2.5rem;
      }
      @media (min-width: 1024px) {
        .nav-toggle__svg {
          height: 1.1875vw;
          margin-right: 0.4375vw;
          width: 1.1875vw;
        }
      }
      .nav-toggle--close .nav-toggle__svg {
        margin-top: 0.1em;
        transform: rotate(45deg);
      }
      .nav-toggle--small .nav-toggle__svg {
        height: 1rem;
        width: 1rem;
      }
      @media (min-width: 1024px) {
        .nav-toggle--small .nav-toggle__svg {
          height: 1vw;
          width: 1vw;
        }
      }
  
      .header-sticky {
        align-items: center;
        background-color: #000;
        border-radius: 1.3rem;
        color: #fff;
        display: flex;
        justify-content: space-between;
        left: 0.8rem;
        padding: 1rem;
        position: fixed;
        right: 0.8rem;
        top: 0.1rem;
        z-index: 600;
        height:6%;
      }
      @media (min-width: 1024px) {
        .header-sticky {
          border-radius: 0.8125vw;
          left: 0.75vw;
          padding: 0.625vw 0.75vw;
          right: 0.75vw;
          top: 0.75vw;
        }
      }
      .header-sticky__title {
        color: currentColor;
        left: 50%;
        position: absolute;
        text-align: center;
        top: 50%;
        transform: translate(-50%, -50%);
      }
  
      .text-splitter {
        display: block;
        opacity: 0;
        /*line-height: auto;*/
      }
      .text-splitter--splitted {
        opacity: 1;
      }
  
      .title-pill {
        align-items: center;
        display: inline-flex;
        height: 1.6rem;
        padding: 0 0.5rem;
        position: relative;
      }
      @media (min-width: 1024px) {
        .title-pill {
          height: 1vw;
          padding: 0 0.3125vw;
        }
      }
      .title-pill--medium {
        height: 2.4rem;
        padding: 0 0.9rem;
      }
      @media (min-width: 1024px) {
        .title-pill--medium {
          height: 1.5vw;
          padding: 0.0625vw 0.5625vw 0.125vw;
        }
      }
      .title-pill--large {
        height: 2.6rem;
        padding: 0 0.9rem;
      }
      @media (min-width: 1024px) {
        .title-pill--large {
          height: 1.625vw;
          padding: 0.0625vw 0.5625vw 0.125vw;
        }
      }
      .title-pill--filled.title-pill--fill-dark {
        color: #fff;
      }
      .title-pill--filled.title-pill--fill-light {
        color: #1c1c1c;
      }
      .title-pill--filled.title-pill--fill-blue {
        color: #fffbef;
      }
      .title-pill--filled.title-pill--fill-light-blue {
        color: #3b15eb;
      }
      .title-pill__border {
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        position: absolute;
        fill: none;
      }
      .title-pill--fill-dark .title-pill__border {
        fill: #1c1c1c;
      }
      .title-pill--fill-dark .title-pill__border rect {
        stroke: #1c1c1c;
      }
      .title-pill--fill-light .title-pill__border {
        fill: #fff;
      }
      .title-pill--fill-light .title-pill__border rect {
        stroke: #fff;
      }
      .title-pill--fill-blue .title-pill__border {
        fill: #3b15eb;
      }
      .title-pill--fill-blue .title-pill__border rect {
        stroke: #3b15eb;
      }
      .title-pill--fill-light-blue .title-pill__border {
        fill: #fffbef;
      }
      .title-pill--fill-light-blue .title-pill__border rect {
        stroke: #fffbef;
      }
      .title-pill__label {
        position: relative;
        z-index: 1;
      }
  
      .nav-item {
        position: relative;
        width: 100%;
      }
      .nav-item:not(:first-child) {
        padding-top: 0.04em;
      }
      @media (min-width: 1024px) {
        .nav-item:not(:first-child) {
          padding-top: 0.02em;
        }
      }
      @media (hover: hover) {
        .nav-item:hover .nav-item__children {
          pointer-events: auto;
        }
        .nav-item:hover .nav-item__child {
          transform: translateY(0);
          transition-duration: 0.8s;
          transition-timing-function: cubic-bezier(0.14, 1, 0.34, 1);
        }
        .nav-item:hover .nav-item__link {
          color: #ffc700;
        }
      }
      .nav-item__link {
        color: currentColor;
        cursor: pointer;
        display: flex;
        position: relative;
      }
      .nav__list:has(.nav-item:hover .nav-item__link:not(.router-link-active))
        .nav-item__link.router-link-active {
        color: inherit;
      }
      .nav-item__link.router-link-active {
        color: #ffc700;
      }
      .nav-item__link-border {
        background-color: #000;
        height: 0.1rem;
        left: 0;
        pointer-events: none;
        position: absolute;
        right: 0;
        transform-origin: left;
        transition: transform 1.4s cubic-bezier(0.14, 1, 0.34, 1);
      }
      .nav-item__link-border--top {
        top: -0.1rem;
      }
      .nav-item__link-border--bot {
        bottom: 0;
      }
      .nav-item__link-label {
        display: flex;
      }
      .nav-item__children {
        display: none;
      }
      @media (hover: hover) {
        .nav-item__children {
          bottom: 0;
          -moz-column-gap: 0.5vw;
          column-gap: 0.5vw;
          display: flex;
          padding-bottom: 0.4375vw;
          pointer-events: none;
          position: absolute;
          right: 0;
        }
      }
      .nav-item__child {
        border-radius: 1.3rem;
        display: flex;
        overflow: hidden;
        position: relative;
      }
      @media (hover: hover) {
        .nav-item__child {
          transform: translateY(calc(100% + 0.5vw));
          transition: transform 0.4s cubic-bezier(1, 0, 0.65, 0.61);
        }
        .nav-item__child:nth-child(2) {
          transition-delay: 0.1s;
        }
        .nav-item__child:before {
          background-color: currentColor;
          border-radius: 1.3rem;
          content: "";
          top: 0;
          right: 0;
          bottom: 0;
          left: 0;
          position: absolute;
          transform: translateY(calc(100% + 0.1rem));
          transition: transform 0.4s cubic-bezier(1, 0, 0.65, 0.61);
        }
      }
      @media (hover: hover) and (min-width: 1024px) {
        .nav-item__child:before {
          border-radius: 0.8125vw;
        }
      }
      @media (hover: hover) {
        .nav-item__child:hover .title-pill__label {
          color: #f48502;
        }
        .nav-item__child:hover .title-pill__label,
        .nav-item__child:hover:before {
          transition-duration: 0.6s;
          transition-timing-function: cubic-bezier(0.14, 1, 0.34, 1);
        }
        .nav-item__child:hover:before {
          transform: translateY(0);
        }
      }
      @media (min-width: 1024px) {
        .nav-item__child {
          border-radius: 0.8125vw;
        }
      }
      .nav-item__child .title-pill__label {
        position: relative;
        z-index: 1;
      }
      @media (hover: hover) {
        .nav-item__child .title-pill__label {
          transition: color 0.4s cubic-bezier(1, 0, 0.65, 0.61);
        }
      }
  

/*MENU ADJUSTMENTS*/
      .nav {
        background-color: #e13021;
        color: #000;
        display: flex;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0em;
        margin-left: -5em;
        position: fixed;
        z-index: 650;
      }
      @media (max-width: 820px) {
        .nav {
          background-color: #2881c1;
          left: 0em;
          margin-left: -12em;
          bottom: 0em;
          }
        }
      @media (max-width: 480px) {
        .nav {
        background-color: #fa0200;
        left: 0em;
        margin-left: -9em;
        bottom: 0em;
          }
        }




      .nav__title {
        display: none;
      }
      @media (min-width: 768px) {
        .nav__title {
          display: flex;
          left: 50%;
          position: absolute;
          top: 1.125vw;
          transform: translate(-50%);
          z-index: 1;
        }
      }
      .nav__list {
        display: flex;
        flex-direction: column;
        margin-top: auto;
        padding: 0 0.8rem;
        position: relative;
        width: 100%;
        z-index: 1;
      }
      @media (min-width: 1024px) {
        .nav__list {
          padding: 0 0.75vw;
        }
      }
      @media (hover: hover) {
        .nav__list:has(.nav-item:hover) .nav-item .nav-item__link-border {
          transform: scaleX(0);
          transform-origin: right;
        }
        .nav__list:has(.nav-item:hover) .nav-item:hover .nav-item__link-border {
          transform: scaleX(1);
          transform-origin: left;
        }
        .nav__list:has(.nav-item:hover)
          .nav-item:hover
          + .nav-item
          .nav-item__link-border--top {
          transform: scaleX(1);
          transform-origin: left;
        }
      }
  
      .transition-overlay {
        background-color: #0006;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        position: fixed;
      }
  
      .cursor {
        color: #fff;
        display: none;
        height: 10rem;
        left: 0;
        margin-left: -5rem;
        margin-top: -5rem;
        pointer-events: none;
        position: fixed;
        top: 0;
        width: 10rem;
        z-index: 400;
      }
      .cursor:before {
        background-color: #3b15eb;
        border-radius: 50%;
        content: "";
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        position: absolute;
        transform: scale(0);
        transition: transform 0.4s cubic-bezier(1, 0, 0.65, 0.61);
        transition-delay: 0.2s;
      }
      .cursor--visible.cursor--small:before {
        transform: scale(0.65);
      }
      .cursor--visible:before {
        transform: scale(1);
        transition-delay: 0s;
        transition-duration: 0.8s;
        transition-timing-function: cubic-bezier(0.14, 1, 0.34, 1);
      }
      @media (hover: hover) {
        .cursor {
          display: block;
        }
      }
      .cursor__label {
        font-size: 1.4rem;
        font-weight: 500;
        height: 1em;
        left: 0;
        letter-spacing: 0.01em;
        line-height: 1;
        position: absolute;
        right: 0;
        text-align: center;
        top: 50%;
        transform: translateY(-50%);
      }
      .cursor--small .cursor__label {
        font-size: 1rem;
      }
      .cursor__label svg {
        height: 1.2rem;
        margin-left: 0.6rem;
        position: relative;
        top: -0.1rem;
        width: 1.3rem;
      }
      .cursor--small .cursor__label svg {
        height: 0.8rem;
        margin-left: 0.4rem;
        top: unset;
        width: 0.9rem;
      }
      .cursor__label p {
        align-items: center;
        display: flex;
        justify-content: center;
      }
  
      .scrollbar {
        display: none;
      }
      @media (hover: hover) {
        .scrollbar {
          bottom: 0;
          display: block;
          position: fixed;
          right: 0;
          top: 0;
          z-index: 999;
        }
      }
      .scrollbar__wrapper {
        height: 100%;
        position: relative;
      }
      .scrollbar__handle {
        background-color: #0006;
        cursor: grab;
        min-height: 5vw;
        opacity: 0;
        position: absolute;
        right: 0;
        transition: opacity 0.6s cubic-bezier(0.14, 1, 0.34, 1);
        width: 0.375vw;
      }
      .scrollbar--intro-done .scrollbar__handle {
        opacity: 1;
      }
  
      .modal-overlay {
        background-color: #0009;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        position: fixed;
        z-index: 800;
      }
  
      .form-input {
        display: flex;
        flex-direction: column;
        width: 100%;
      }
      .form-input__label {
        font-family: SequelWeb, sans-serif;
        font-size: 1.1rem;
        letter-spacing: 0.04em;
        line-height: 1.454545;
        margin-bottom: 0.5rem;
      }
      @media (min-width: 1024px) {
        .form-input__label {
          font-size: 0.6875vw;
          margin-bottom: 0.3125vw;
        }
      }
      .form-input__el-wrapper {
        display: flex;
        position: relative;
        width: 100%;
      }
      .form-input__el {
        background-color: transparent;
        border: 0.1rem solid;
        color: currentColor;
        height: 4.4rem;
        padding: 0 1rem;
        width: 100%;
      }
      @media (prefers-reduced-motion: no-preference) {
        .form-input__el {
          transition: border-color 0.6s cubic-bezier(0.14, 1, 0.34, 1);
        }
      }
      @media (min-width: 1024px) {
        .form-input__el {
          height: 2.75vw;
          padding: 0 0.625vw;
        }
      }
      .form-input__el:focus,
      .form-input__el:hover {
        border-color: #6ccaff;
      }
      .form-input__el--textarea {
        height: 20.7rem;
        padding: 1rem;
        resize: none;
      }
      @media (min-width: 1024px) {
        .form-input__el--textarea {
          height: 12.9375vw;
          padding: 0.625vw;
        }
      }
      .form-input__el--input {
        max-width: 29.4rem;
      }
      @media (min-width: 1024px) {
        .form-input__el--input {
          max-width: inherit;
        }
      }
      .form-input__el::-moz-placeholder {
        color: #000;
      }
      .form-input__el::placeholder {
        color: #000;
      }
      .form-input__el:-ms-input-placeholder {
        color: #000;
      }
      .form-input__el::-ms-input-placeholder {
        color: #000;
      }
  
      .form-checkbox {
        align-items: center;
        display: flex;
        position: relative;
      }
      .form-checkbox__label {
        font-size: 1.1rem;
        letter-spacing: 0.04em;
        line-height: 1.19;
        margin-left: 1.3rem;
        max-width: 80%;
        position: relative;
        z-index: 1;
      }
      @media (min-width: 1024px) {
        .form-checkbox__label {
          font-size: 0.625vw;
          margin-left: 0.8125vw;
          max-width: 23.3125vw;
        }
      }
      .form-checkbox__label a {
        text-decoration: underline;
      }
      @media (hover: hover) {
        .form-checkbox__label a {
          transition: color 0.8s cubic-bezier(0.14, 1, 0.34, 1);
        }
        .form-checkbox__label a:hover {
          color: #6ccaff;
        }
      }
      .form-checkbox__input {
        cursor: pointer;
        height: 100%;
        left: 0;
        opacity: 0;
        position: absolute;
        top: 0;
        width: 100%;
        z-index: 1;
      }
      .form-checkbox__input:checked ~ .form-checkbox__custom:before {
        transform: scale(1);
      }
      @media (hover: hover) {
        .form-checkbox__input:hover ~ .form-checkbox__custom {
          border-color: #6ccaff;
        }
        .form-checkbox__input:hover ~ .form-checkbox__custom:before {
          background-color: #6ccaff;
        }
      }
      .form-checkbox__custom {
        border: 0.1rem solid #0f00b0;
        display: flex;
        height: 3rem;
        position: relative;
        width: 3rem;
      }
      @media (prefers-reduced-motion: no-preference) {
        .form-checkbox__custom {
          transition: border-color 0.6s cubic-bezier(0.14, 1, 0.34, 1);
        }
      }
      @media (min-width: 1024px) {
        .form-checkbox__custom {
          height: 1.875vw;
          width: 1.875vw;
        }
      }
      .form-checkbox__custom:before {
        background-color: #0f00b0;
        content: "";
        top: 0.15rem;
        right: 0.15rem;
        bottom: 0.15rem;
        left: 0.15rem;
        position: absolute;
        transform: scale(0);
      }
      @media (prefers-reduced-motion: no-preference) {
        .form-checkbox__custom:before {
          transition: transform 0.4s cubic-bezier(0.14, 1, 0.34, 1),
            background-color 0.6s cubic-bezier(0.14, 1, 0.34, 1);
        }
      }
  
      .btn {
        align-items: center;
        border-radius: 1.3rem;
        cursor: pointer;
        display: inline-flex;
        height: 2.6rem;
        overflow: hidden;
        padding: 0 0.7rem;
        position: relative;
        white-space: nowrap;
      }
      @media (min-width: 1024px) {
        .btn {
          border-radius: 0.8125vw;
          height: 1.625vw;
          padding: 0 0.4375vw;
        }
      }
      .btn:before {
        background-color: currentColor;
        border-radius: 1.3rem;
        content: "";
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        position: absolute;
        transform: translateY(calc(100% + 0.1rem));
        transition: transform 0.4s cubic-bezier(1, 0, 0.65, 0.61);
      }
      @media (min-width: 1024px) {
        .btn:before {
          border-radius: 0.8125vw;
        }
      }
      .btn:after {
        border: 0.1rem solid;
        border-radius: 1.3rem;
        content: "";
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        position: absolute;
      }
      @media (min-width: 1024px) {
        .btn:after {
          border-radius: 0.8125vw;
        }
      }
      @media (hover: hover) {
        .btn:hover .btn__label {
          color: #fff;
        }
        .btn:hover .btn__label,
        .btn:hover:before {
          transition-duration: 0.6s;
          transition-timing-function: cubic-bezier(0.14, 1, 0.34, 1);
        }
        .btn:hover:before {
          transform: translateY(0);
        }
      }
      .btn--filled {
        background-color: currentColor;
        border: none;
      }
      @media (hover: hover) {
        .btn--filled:before {
          background-color: #fff;
          top: 0.1rem;
          right: 0.1rem;
          bottom: 0.1rem;
          left: 0.1rem;
        }
        .btn--filled:hover.btn--theme-blue .btn__label {
          color: #3b15eb;
        }
      }
      .btn--small {
        font-size: 1.4rem;
        height: 2.4rem;
        padding: 0 0.9rem;
      }
      @media (min-width: 1024px) {
        .btn--small {
          font-size: 0.875vw;
          height: 1.5vw;
          padding: 0 0.5625vw;
        }
      }
      .btn__label {
        color: #fff;
        position: relative;
        z-index: 1;
      }
      .btn--theme-light .btn__label {
        color: #fff;
      }
      .btn--theme-dark .btn__label {
        color: #1c1c1c;
      }
      .btn--theme-blue .btn__label {
        color: #3b15eb;
      }
      .btn--filled .btn__label {
        color: #fff;
      }
      @media (hover: hover) {
        .btn__label {
          transition: color 0.4s cubic-bezier(1, 0, 0.65, 0.61);
        }
      }
  
      .base-video {
        display: flex;
        position: relative;
      }
      .base-video video,
      .base-video--fit {
        height: 100%;
        width: 100%;
      }
      .base-video video {
        left: 0;
        -o-object-fit: cover;
        object-fit: cover;
        opacity: 0;
        position: absolute;
        top: 0;
        transition: opacity 0.4s;
      }
      .base-video--loaded video {
        opacity: 1;
      }
  
      .base-image {
        display: block;
      }
      .base-image--fit {
        height: 100%;
      }
      .base-image--fit img {
        height: 100%;
        -o-object-fit: cover;
        object-fit: cover;
      }
      .base-image__placeholder {
        opacity: 0;
      }
      .base-image__img {
        opacity: 0;
        transition: opacity 0.8s cubic-bezier(0.14, 1, 0.34, 1);
      }
      .base-image__img--loaded {
        opacity: 1;
      }
  
      .modal-contact {
        background-color: #fff;
        bottom: 0;
        color: #3b15eb;
        left: 0;
        overflow-y: auto;
        padding: 1.8rem 0.8rem;
        position: fixed;
        top: 0;
        width: 100%;
        z-index: 900;
      }
      @media (min-width: 1024px) {
        .modal-contact {
          bottom: unset;
          height: 46.625vw;
          left: calc(50% - 20.625vw);
          padding: 1.3125vw 1.75vw 1.5625vw;
          top: calc(50% - 23.3125vw);
          width: 41.25vw;
        }
      }
      @media (min-width: 1240px) {
        .modal-contact {
          overflow: unset;
        }
      }
      .modal-contact__close-btn {
        align-items: center;
        display: flex;
        height: 4rem;
        justify-content: center;
        position: absolute;
        right: 0.8rem;
        top: 1.8rem;
        width: 4rem;
      }
      @media (min-width: 1024px) {
        .modal-contact__close-btn {
          height: 2.5vw;
          right: 0.5vw;
          top: 0.5vw;
          width: 2.5vw;
        }
      }
      .modal-contact__close-btn:before {
        background-color: currentColor;
        border-radius: 50%;
        content: "";
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        position: absolute;
      }
      .modal-contact__close-btn-svg {
        color: #fff;
        height: 1.2rem;
        position: relative;
        width: 1.2rem;
        z-index: 1;
      }
      @media (min-width: 1024px) {
        .modal-contact__close-btn-svg {
          height: 0.75vw;
          width: 0.75vw;
        }
      }
      .modal-contact__wrapper {
        align-items: flex-start;
        display: flex;
        flex-direction: column;
        height: 100%;
      }
      .modal-contact__title {
        text-wrap: pretty;
      }
      @media (min-width: 1024px) {
        .modal-contact__title {
          padding-right: 3.5625vw;
        }
      }
      .modal-contact__form {
        display: flex;
        flex-direction: column;
        margin-top: 3.3rem;
        row-gap: 1.3rem;
      }
      @media (min-width: 1024px) {
        .modal-contact__form {
          margin-top: auto;
        }
      }
      .modal-contact__row {
        align-items: flex-start;
        -moz-column-gap: 1.3rem;
        column-gap: 1.3rem;
        display: flex;
        flex-direction: column;
        row-gap: 1.3rem;
        width: 100%;
      }
      @media (min-width: 1024px) {
        .modal-contact__row {
          flex-direction: row;
        }
      }
      .modal-contact__row:last-child {
        margin-top: 0.6rem;
        position: relative;
      }
      .modal-contact__success-fig {
        padding: 2rem 0 1.7rem;
      }
      @media (min-width: 1024px) {
        .modal-contact__success-fig {
          padding: 1.8125vw 0 1.5625vw;
        }
      }
      .modal-contact__copy {
        font-size: 1.8rem;
        letter-spacing: -0.01em;
        line-height: 1.25;
        max-width: 33.3rem;
        padding-top: 1.4rem;
      }
      @media (min-width: 1024px) {
        .modal-contact__copy {
          font-size: 1.25vw;
          max-width: 35vw;
          padding-top: 1.25vw;
        }
      }
      .modal-contact__error {
        color: #ff4d00;
        position: absolute;
        right: 0;
        top: 50%;
        transform: translateY(-50%);
      }
      @media (max-width: 767px) {
        .modal-contact__error {
          font-size: 1.2rem;
          max-width: 50%;
          text-align: right;
        }
      }
      .modal-contact__btn {
        transition: opacity 0.8s cubic-bezier(0.14, 1, 0.34, 1);
      }
      .modal-contact__btn--disabled {
        opacity: 0.4;
        pointer-events: none;
      }
  
      .base-hero {
        display: flex;
        flex-direction: column;
        justify-content: center;
        margin-bottom: 6.5rem;
        text-align: center;
      }
      @media (min-width: 1024px) {
        .base-hero {
          margin-bottom: 8.75vw;
        }
      }
      .base-hero__title {
        margin-top: 9.9rem;
      }
      @media (min-width: 1024px) {
        .base-hero__title {
          margin-top: 10vw;
        }
      }
      @media (max-width: 767px) {
        .base-hero__title.h3 {
          font-size: 6.2rem;
        }
      }
      .base-hero__title--corr .oh {
        padding-bottom: 0.06em;
      }
      .base-hero__title-line[data-descender="true"] {
        padding-bottom: 0.12em;
      }
      .base-hero__subtitle {
        font-weight: 400;
        margin: 1.2rem auto 0;
        max-width: 86.66667vw;
        text-wrap: pretty;
      }
      @media (min-width: 1024px) {
        .base-hero__subtitle {
          margin: 1.875vw auto 0;
          max-width: 49.75vw;
        }
        .base-hero__subtitle--wide {
          max-width: 60.75vw;
        }
      }
      .base-hero__subtitle a {
        position: relative;
      }
      .base-hero__subtitle a:after {
        background-color: currentColor;
        bottom: 0;
        content: "";
        height: 0.1rem;
        left: 0;
        position: absolute;
        width: 100%;
      }
      @media (prefers-reduced-motion: no-preference) {
        .base-hero__subtitle a:after {
          transition: transform 0.8s cubic-bezier(0.14, 1, 0.34, 1);
        }
      }
      @media (hover: hover) {
        .base-hero__subtitle a:after {
          transform: scaleX(1);
          transform-origin: left;
        }
        .base-hero__subtitle a:hover:after {
          transform: scaleX(0);
          transform-origin: right;
        }
      }
  
      .error {
        background-color: #0f00b0;
        color: #fff;
        display: flex;
        height: 100dvh;
        justify-content: center;
      }
      .error__pill {
        left: 50%;
        position: absolute;
        top: 0.9375vw;
        transform: translate(-50%);
        z-index: 500;
      }
  
      .header {
        color: var(--color-highlight);
        position: relative;
      }
      .header:before {
        background-color: currentColor;
        bottom: -4.2rem;
        content: "";
        height: 0.2rem;
        left: 0.8rem;
        position: absolute;
        right: 0.8rem;
        transition: color 0.8s cubic-bezier(0.14, 1, 0.34, 1);
        z-index: 500;
        opacity: 0;
      }
      @media (min-width: 1024px) {
        .header:before {
          bottom: -3.5625vw;
          left: 0.75vw;
          right: 0.75vw;
        }
      }
      .page--home .header {
        color: #fff;
      }
      @media (max-width: 1023px) {
        .header--index-visible {
          color: #fff;
        }
      }
      @media (min-width: 1024px) {
        .page:not(.page--home) .header:before {
          display: none;
        }
      }
      .header__title {
        left: 50%;
        position: absolute;
        top: 0.9375vw;
        transform: translate(-50%);
        z-index: 500;
      }
      @media (max-width: 767px) {
        .header__title {
          display: none;
        }
      }
      .route-work .header__title {
        transition: color 0.8s cubic-bezier(0.14, 1, 0.34, 1);
        transition-delay: 0.2s;
      }
      .header--index-visible .header__title {
        color: #ebebeb;
      }
  
      .home-hero {
        color: #fff;
        height: 100svh;
        overflow: hidden;
        position: relative;
      }
      .home-hero__subtitle {
        display: none;
      }
      @media (min-width: 1024px) {
        .home-hero__subtitle {
          display: flex;
          left: 50%;
          position: absolute;
          top: 0.75vw;
          transform: translate(-50%);
          z-index: 500;
        }
      }
      @media (hover: hover) {
        .home-hero__subtitle:before {
          background-color: transparent;
          content: "";
          top: -1.5rem;
          right: -5rem;
          bottom: -1.5rem;
          left: -5rem;
          position: absolute;
        }
      }
      .home-hero__wrapper {
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        position: absolute;
      }
      .home-hero__scroll {
        align-items: center;
        background-color: #fff;
        border-radius: 50%;
        bottom: 0.75vw;
        color: #000;
        display: flex;
        height: 5.5vw;
        justify-content: center;
        position: absolute;
        right: 0.75vw;
        transform: scale(0);
        transition: transform 1s cubic-bezier(0.9, 0, 0.1, 1) 0.5s;
        width: 5.5vw;
        z-index: 500;
      }
      .home-hero--visible .home-hero__scroll {
        transform: scale(1);
        mix-blend-mode: difference;
      }
      @media (max-width: 767px) {
        .home-hero__scroll {
          display: none;
        }
      }
      @media (hover: hover) {
        .home-hero__scroll:hover .home-hero__scroll-label-inner,
        .home-hero__scroll:hover .home-hero__scroll-label:after {
          transform: translateY(-100%);
          transition-duration: 0.8s;
          transition-timing-function: cubic-bezier(0.14, 1, 0.34, 1);
        }
      }
      .home-hero__scroll-label {
        display: flex;
      }
      @media (hover: hover) {
        .home-hero__scroll-label {
          overflow: hidden;
          position: relative;
        }
        .home-hero__scroll-label:after {
          content: attr(data-label);
          left: 0;
          pointer-events: none;
          position: absolute;
          top: 100%;
          transition: transform 0.4s cubic-bezier(1, 0, 0.65, 0.61);
          white-space: nowrap;
        }
      }
      .home-hero__scroll-label-inner {
        display: flex;
      }
      @media (hover: hover) {
        .home-hero__scroll-label-inner {
          transition: transform 0.4s cubic-bezier(1, 0, 0.65, 0.61);
        }
      }
  
      .home-hero-title {
        overflow-y: clip;
        margin-top: 16%;
        vertical-align: middle;
        height: 100%;
        pointer-events: none;
        position: relative;
        text-align: center;
        width: 100%;
        z-index: 500;
        mix-blend-mode: difference; 
        line-height: 1.2em;
      }
      /*
      @media (max-width: 1400px) {
        .home-hero-title {
          left: -0.008em;
          padding-top: 10%;
          white-space: nowrap;
        }
      }
      @media (max-width: 1024px) {
        .home-hero-title {
          padding-top: 10%;
        }
      }
      @media (max-width: 600px) {
        .home-hero-title {
          padding-top: 20%;
        }
      }
      .home-hero-title .oh {
        overflow: inherit;
        overflow-y: clip;
        line-height: 1.2em;
        
      }
      */
  
      .marquee-fade {
        display: flex;
        position: relative;
        -webkit-user-select: none;
        -moz-user-select: none;
        user-select: none;
        white-space: nowrap;
      }
      .marquee-fade__label {
        align-items: center;
        display: flex;
        left: -50%;
        pointer-events: none;
        position: relative;
      }
      .marquee-fade__label:not(:first-child) {
        position: absolute;
        top: 0;
      }
      .marquee-fade__label:not(:first-child):nth-child(2) {
        left: 50%;
      }
      .marquee-fade__label:not(:first-child):nth-child(3) {
        left: 150%;
      }
      .marquee-fade__separator {
        background-color: currentColor;
        border-radius: 50%;
        display: flex;
        height: 0.6rem;
        margin: 0 1rem;
        width: 0.6rem;
      }
      @media (min-width: 1024px) {
        .marquee-fade__separator {
          height: 0.375vw;
          margin: 0 0.625vw;
          width: 0.375vw;
        }
      }
      .marquee-fade__char {
        opacity: 0;
      }
  
      .home-hero-assets {
        overflow: hidden;
        pointer-events: none;
      }
      .home-hero-assets,
      .home-hero-assets__wrapper {
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        position: absolute;
      }
      .home-hero-assets__intro {
        aspect-ratio: 424/273;
        left: 50%;
        position: absolute;
        top: 50%;
        transform: translate(-50%, -50%);
        width: 70vw;
      }
      @media (min-width: 1024px) {
        .home-hero-assets__intro {
          width: 26.5vw;
        }
      }
  
      .home-hero-asset {
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        opacity: 0;
        position: absolute;
      }
      .home-hero-assets--intro .home-hero-asset:last-child {
        z-index: 1;
      }
      .home-hero-assets--intro .home-hero-asset:nth-last-child(2) {
        z-index: 2;
      }
      .home-hero-assets--intro .home-hero-asset:nth-last-child(3) {
        z-index: 3;
      }
      .home-hero-assets--intro .home-hero-asset:nth-last-child(4) {
        z-index: 4;
      }
      .home-hero-assets--intro .home-hero-asset:nth-last-child(5) {
        z-index: 5;
      }
      .home-hero-assets--intro .home-hero-asset:nth-last-child(6) {
        z-index: 6;
      }
      .home-hero-assets--intro .home-hero-asset:nth-last-child(7) {
        z-index: 7;
      }
      .home-hero-assets--intro .home-hero-asset:nth-last-child(8) {
        z-index: 8;
      }
      .home-hero-assets--intro .home-hero-asset:nth-last-child(9) {
        z-index: 9;
      }
      .home-hero-assets--intro .home-hero-asset:nth-last-child(10) {
        z-index: 10;
      }
      .home-hero-assets--intro .home-hero-asset:nth-last-child(11) {
        z-index: 11;
      }
      .home-hero-assets--intro .home-hero-asset:nth-last-child(12) {
        z-index: 12;
      }
      .home-hero-asset__wrapper {
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        position: absolute;
        --clipX: 0%;
        --clipY: 0%;
        --clipYBot: 0%;
        clip-path: inset(var(--clipY) var(--clipX) var(--clipYBot));
      }
      @media (min-width: 1024px) {
        .home-hero-asset__wrapper {
          --clipX: 0%;
          --clipY: 0%;
          clip-path: inset(0 var(--clipX) var(--clipY) var(--clipX));
        }
      }
      .home-hero-asset__fig {
        height: 105%;
        left: 0;
        position: absolute;
        top: -5%;
        width: 100%;
      }
  
      .home-hero-carousel-control {
        border: 0.3rem solid #fff;
        border-radius: 16rem;
        bottom: 2rem;
        cursor: pointer;
        display: flex;
        height: 8.6rem;
        left: 50%;
        margin-left: -7rem;
        overflow: hidden;
        position: absolute;
        transform: scale(0) translateZ(0);
        transition: transform 1s cubic-bezier(0.9, 0, 0.1, 1) 0.5s;
        width: 14rem;
        z-index: 500;
      }
      .home-hero--visible .home-hero-carousel-control {
        transform: scale(1) translateZ(0);
      }
      @media (min-width: 1024px) {
        .home-hero-carousel-control {
          border-radius: 10vw;
          bottom: 0.75vw;
          height: 5.375vw;
          left: 0.75vw;
          margin-left: unset;
          width: 8.75vw;
        }
      }
      .home-hero-carousel-control__wrapper {
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        opacity: 0;
        position: absolute;
      }
      .home-hero-carousel-control__inner {
        display: flex;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        overflow: hidden;
        position: absolute;
        z-index: 500;
      }
      .home-hero-carousel-control__fig {
        width: 100%;
      }
      .home-hero-carousel-control__img {
        filter: grayscale(1);
        width: 100%;
      }
  
      .home-intro {
        padding-bottom: 1.5rem;
        padding-top: 1.2rem;
      }
      @media (min-width: 1024px) {
        .home-intro {
          padding-bottom: 11.125vw;
          padding-top: 0.75vw;
        }
      }
      .home-intro__copy {
        margin-top: 10rem;
        max-width: 37.1rem;
      }
      @media (min-width: 1024px) {
        .home-intro__copy {
          margin-top: 10.5625vw;
          max-width: 90.0625vw;
        }
      }
  
      .home-reel {
        padding-bottom: 3.3rem;
      }
      @media (min-width: 1024px) {
        .home-reel {
          padding-bottom: 0.75vw;
        }
      }
      .home-reel__wrapper {
        aspect-ratio: 374/281;
        grid-column: 1 / span 5;
        margin-bottom: 1.2rem;
        position: relative;
      }
      @media (min-width: 1024px) {
        .home-reel__wrapper {
          aspect-ratio: 16/9;
          grid-column-end: span 6;
          margin-bottom: unset;
          margin-top: auto;
          transform-origin: bottom left;
        }
      }
      .home-reel__thumbnail {
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        position: absolute;
        z-index: 1;
      }
      .home-reel__btn {
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        position: absolute;
        z-index: 3;
      }
      @media (hover: hover) {
        .home-reel__btn:hover .home-reel__btn-svg-wrapper {
          transform: scale(1.25);
          transition-timing-function: cubic-bezier(0.14, 1, 0.34, 1);
        }
      }
      .home-reel__btn-svg-wrapper {
        align-items: center;
        background-color: #fff;
        border-radius: 50%;
        bottom: 2rem;
        color: #000;
        display: flex;
        height: 7.2rem;
        justify-content: center;
        position: absolute;
        right: 2rem;
        width: 7.2rem;
      }
      @media (hover: hover) {
        .home-reel__btn-svg-wrapper {
          transform-origin: bottom right;
          transition: transform 0.8s cubic-bezier(0.9, 0, 0.1, 1);
        }
      }
      @media (min-width: 1024px) {
        .home-reel__btn-svg-wrapper {
          bottom: 1.25vw;
          height: 6.5vw;
          right: 1.25vw;
          width: 6.5vw;
        }
      }
      .home-reel__btn-svg {
        transition: transform 0.5s cubic-bezier(0.14, 1, 0.34, 1),
          opacity 0.3s cubic-bezier(0.14, 1, 0.34, 1);
      }
      .home-reel__btn-svg--play {
        height: 2.1rem;
        margin-left: 0.6rem;
        transition-delay: 0.1s;
        width: 1.8rem;
      }
      @media (min-width: 1024px) {
        .home-reel__btn-svg--play {
          height: 1.9375vw;
          margin-left: 0.375vw;
          width: 1.6875vw;
        }
      }
      .home-reel__wrapper--playing .home-reel__btn-svg--play {
        opacity: 0;
        transform: scale(0.5);
        transition-delay: 0s;
      }
      .home-reel__btn-svg--pause {
        height: 2.2rem;
        left: 50%;
        opacity: 0;
        position: absolute;
        top: 50%;
        transform: translate(-50%, -50%) scale(0.5);
        transition-delay: 0s;
        width: 1.8rem;
      }
      .home-reel__wrapper--playing .home-reel__btn-svg--pause {
        opacity: 1;
        transform: translate(-50%, -50%) scale(1);
        transition-delay: 0.1s;
      }
      @media (min-width: 1024px) {
        .home-reel__btn-svg--pause {
          height: 2vw;
          width: 1.625vw;
        }
      }
      .home-reel__inner {
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        opacity: 0;
        pointer-events: none;
        position: absolute;
        transition: opacity 0.8s cubic-bezier(0.14, 1, 0.34, 1);
        z-index: 2;
      }
      .home-reel__wrapper--enabled .home-reel__inner {
        opacity: 1;
        pointer-events: all;
      }
      .home-reel__ui {
        bottom: 0;
        left: 0;
        pointer-events: none;
        position: absolute;
        right: 0;
        z-index: 2;
      }
      .home-reel__cta-wrapper {
        align-items: flex-start;
        display: flex;
        flex-direction: column;
        grid-column: 1 / span 5;
      }
      @media (min-width: 1024px) {
        .home-reel__cta-wrapper {
          grid-column: 7 / span 3;
          padding-left: 0.75vw;
          position: relative;
        }
        .home-reel__cta-wrapper:after,
        .home-reel__cta-wrapper:before {
          background-color: currentColor;
          bottom: 0;
          content: "";
          left: 0;
          position: absolute;
          top: 0;
          transition: transform 1.2s cubic-bezier(0.9, 0, 0.1, 1);
          width: 0.1rem;
        }
        .home-reel__cta-wrapper:before {
          transform-origin: bottom;
        }
        .home-reel__cta-wrapper:after {
          transform: scaleY(0);
          transform-origin: top;
          transition-delay: 0.2s;
          transition-duration: 1s;
        }
        .home-reel__cta-wrapper.is-visible:before {
          transform: scaleY(0);
        }
        .home-reel__cta-wrapper.is-visible:after {
          transform: scaleY(1);
        }
      }
      .home-reel__copy {
        margin-top: 10rem;
        max-width: 36.6rem;
        padding-bottom: 1.5rem;
      }
      @media (min-width: 1024px) {
        .home-reel__copy {
          margin-top: auto;
          max-width: 30.125vw;
          padding-bottom: 1.75vw;
        }
      }
      .home-reel__cta {
        display: flex;
        transition-delay: 0.96s;
      }
  
      .video-progress-bar {
        background-color: transparent;
        flex: 1;
        height: 0.8rem;
        position: relative;
      }
      .video-progress-bar__inner {
        background-color: #0f00b0;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        transform: scaleX(0);
        transform-origin: left;
        width: 100%;
      }
      .video-progress-bar__range {
        cursor: pointer;
        height: 200%;
        left: 0;
        opacity: 0;
        position: absolute;
        top: -50%;
        width: 100%;
      }
  
      .custom-link {
        cursor: pointer;
        padding-bottom: 0.4rem;
        position: relative;
      }
      .custom-link:after,
      .custom-link:before {
        background-color: currentColor;
        bottom: 0;
        content: "";
        height: 0.1rem;
        position: absolute;
        transition: transform 0.4s cubic-bezier(1, 0, 0.65, 0.61);
        width: 50%;
      }
      .custom-link:before {
        left: 0.4rem;
      }
      @media (min-width: 1024px) {
        .custom-link:before {
          left: 0.1875vw;
        }
      }
      @media (hover: hover) {
        .custom-link:before {
          transform-origin: right;
        }
      }
      .custom-link:after {
        right: 0.4rem;
      }
      @media (min-width: 1024px) {
        .custom-link:after {
          right: 0.1875vw;
        }
      }
      @media (hover: hover) {
        .custom-link:after {
          transform-origin: left;
        }
      }
      @media (min-width: 1024px) {
        .custom-link {
          padding-bottom: 0.4375vw;
        }
      }
      @media (hover: hover) and (prefers-reduced-motion: no-preference) and (prefers-reduced-motion: no-preference) {
        .custom-link:hover .custom-link__word {
          transition-duration: 0.8s;
          transition-timing-function: cubic-bezier(0.14, 1, 0.34, 1);
        }
      }
      @media (hover: hover) and (prefers-reduced-motion: no-preference) {
        .custom-link:hover:before {
          transform-origin: left;
        }
        .custom-link:hover:after {
          transform-origin: right;
        }
        .custom-link:hover:after,
        .custom-link:hover:before {
          transform: scaleX(0);
          transition-duration: 0.8s;
          transition-timing-function: cubic-bezier(0.14, 1, 0.34, 1);
        }
      }
      .custom-link__split {
        pointer-events: none;
        white-space: nowrap;
      }
      .custom-link__split--main.custom-link__split--hovering
        .custom-link__word:nth-child(odd) {
        transform: translateY(100%);
      }
      .custom-link__split--main.custom-link__split--hovering
        .custom-link__word:nth-child(2n) {
        transform: translateY(-100%);
      }
      .custom-link__split--clone {
        left: 0;
        position: absolute;
        top: 0;
        z-index: 1;
      }
      @media (prefers-reduced-motion: no-preference) {
        .custom-link__word {
          transition: transform 0.4s cubic-bezier(1, 0, 0.65, 0.61);
        }
      }
      .custom-link__word--clone:nth-child(odd) {
        transform: translateY(-100%);
      }
      .custom-link__word--clone:nth-child(2n) {
        transform: translateY(100%);
      }
      .custom-link--hovered .custom-link__word--clone {
        transform: translateY(0);
      }
  
      .home-services {
        color: #fff;
        overflow: hidden;
        padding-top: 1.2rem;
        position: relative;
      }
      .home-services:after {
        background-color: #0f00b0;
        content: "";
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        position: absolute;
        z-index: 0;
      }
      @media (min-width: 1024px) {
        .home-services {
          padding-top: 1.375vw;
        }
      }
      .home-services__wrapper {
        align-items: flex-start;
        display: flex;
        flex-direction: column;
        max-width: 35.3rem;
        padding-bottom: 9rem;
        position: relative;
        z-index: 2;
      }
      @media (min-width: 1024px) {
        .home-services__wrapper {
          max-width: 35.5625vw;
          padding-bottom: 7.5vw;
        }
      }
      .home-services__copy {
        padding-bottom: 2rem;
        padding-top: 1.9rem;
      }
      @media (min-width: 1024px) {
        .home-services__copy {
          padding-bottom: 2vw;
          padding-top: 2vw;
        }
      }
      .home-services__cta {
        display: flex;
        transition-delay: 0.52s;
      }
      .home-services__list {
        display: flex;
        flex-direction: column;
        position: relative;
        width: 100%;
        z-index: 2;
      }
      .home-services__list-wrapper {
        position: relative;
      }
      .home-services__figs-wrapper {
        display: none;
      }
      @media (hover: hover) and (min-width: 1240px) {
        .home-services__figs-wrapper {
          bottom: 0.75vw;
          display: flex;
          pointer-events: none;
          position: absolute;
          right: 0;
          top: 0;
          width: 30.3125vw;
          z-index: 3;
        }
      }
      .home-services__figs {
        clip-path: inset(0 0 100% 0);
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        position: absolute;
        transition: clip-path 1s cubic-bezier(0.9, 0, 0.1, 1);
      }
      .home-services__figs--visible {
        clip-path: inset(0 0);
      }
      .home-services__fig {
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        position: absolute;
      }
  
      .home-service-item {
        margin-bottom: 0.5rem;
        margin-top: 0.5rem;
        position: relative;
      }
      @media (min-width: 1024px) {
        .home-service-item {
          margin-bottom: 0.625vw;
          margin-top: 0.625vw;
        }
      }
      .home-service-item:last-child {
        margin-bottom: 0.8rem;
      }
      @media (min-width: 1024px) {
        .home-service-item:last-child {
          margin-bottom: 0.375vw;
        }
      }
      .home-service-item:not(:last-child):after {
        background-color: #fff;
        bottom: -0.5rem;
        content: "";
        height: 0.1rem;
        left: 0;
        position: absolute;
        width: 100%;
      }
      @media (min-width: 1024px) {
        .home-service-item:not(:last-child):after {
          bottom: -0.625vw;
        }
      }
      .home-service-item:first-child
        .home-service-item__label--main
        .home-service-item__label-inner {
        transition-delay: 0.08s;
      }
      .home-service-item:nth-child(2)
        .home-service-item__label--main
        .home-service-item__label-inner {
        transition-delay: 0.16s;
      }
      .home-service-item:nth-child(3)
        .home-service-item__label--main
        .home-service-item__label-inner {
        transition-delay: 0.24s;
      }
      .home-service-item:nth-child(4)
        .home-service-item__label--main
        .home-service-item__label-inner {
        transition-delay: 0.32s;
      }
      .home-service-item:nth-child(5)
        .home-service-item__label--main
        .home-service-item__label-inner {
        transition-delay: 0.4s;
      }
      .home-service-item:nth-child(6)
        .home-service-item__label--main
        .home-service-item__label-inner {
        transition-delay: 0.48s;
      }
      .home-service-item__label {
        display: flex;
      }
      .home-service-item__label--main .home-service-item__label-inner {
        position: static;
        transform: translateY(105%);
        transition: transform 1s cubic-bezier(0.14, 1, 0.34, 1);
      }
      .is-visible
        .home-service-item__label--main
        .home-service-item__label-inner {
        transform: translateY(0);
      }
      .home-service-item__label--ghost {
        color: #6ccaff;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        opacity: 0;
        position: absolute;
        transition: opacity 1s cubic-bezier(0.14, 1, 0.34, 1) 0.9s;
      }
      .is-visible .home-service-item__label--ghost {
        opacity: 1;
      }
      .home-service-item__label-inner {
        color: currentColor;
        display: flex;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        position: absolute;
      }
  
      .home-clients {
        padding-bottom: 10rem;
        padding-top: 1.1rem;
      }
      @media (min-width: 1024px) {
        .home-clients {
          padding-bottom: 11.875vw;
          padding-top: 1.375vw;
        }
      }
      .home-clients__row {
        display: flex;
      }
      @media (min-width: 1024px) {
        .home-clients__list {
          display: flex;
          flex-direction: column;
          justify-content: flex-end;
        }
      }
      .home-clients__list--left {
        grid-column: 1 / span 5;
        padding-top: 10rem;
      }
      @media (min-width: 1024px) {
        .home-clients__list--left {
          grid-column: 1 / span 3;
          padding-top: 10.5vw;
        }
      }
      .home-clients__list--right {
        grid-column: 1 / span 5;
      }
      @media (min-width: 1024px) {
        .home-clients__list--right {
          grid-column: 4 / span 3;
          padding-left: 0.75vw;
          padding-top: 10.5vw;
          position: relative;
        }
        .home-clients__list--right:after,
        .home-clients__list--right:before {
          background-color: currentColor;
          bottom: 0;
          content: "";
          left: 0;
          position: absolute;
          top: -1vw;
          transition: transform 1.2s cubic-bezier(0.9, 0, 0.1, 1);
          width: 0.1rem;
        }
        .home-clients__list--right:before {
          transform-origin: bottom;
          transition-delay: 0.2s;
        }
        .home-clients__list--right:after {
          transform: scaleY(0);
          transform-origin: top;
          transition-delay: 0.5s;
          transition-duration: 1s;
        }
        .home-clients__list--right.is-visible:before {
          transform: scaleY(0);
        }
        .home-clients__list--right.is-visible:after {
          transform: scaleY(1);
        }
      }
      .home-clients__item {
        will-change: transform;
      }
      .home-clients__item:first-child {
        transition-delay: 0.36s;
      }
      .home-clients__item:nth-child(2) {
        transition-delay: 0.42s;
      }
      .home-clients__item:nth-child(3) {
        transition-delay: 0.48s;
      }
      .home-clients__item:nth-child(4) {
        transition-delay: 0.54s;
      }
      .home-clients__item:nth-child(5) {
        transition-delay: 0.6s;
      }
      .home-clients__item:nth-child(6) {
        transition-delay: 0.66s;
      }
      .home-clients__item:nth-child(7) {
        transition-delay: 0.72s;
      }
      .home-clients__item:nth-child(8) {
        transition-delay: 0.78s;
      }
      .home-clients__item:nth-child(9) {
        transition-delay: 0.84s;
      }
      .home-clients__item:nth-child(10) {
        transition-delay: 0.9s;
      }
      .home-clients__item:nth-child(11) {
        transition-delay: 0.96s;
      }
      .home-clients__item:nth-child(12) {
        transition-delay: 1.02s;
      }
      .home-clients__item:nth-child(13) {
        transition-delay: 1.08s;
      }
      .home-clients__item:nth-child(14) {
        transition-delay: 1.14s;
      }
      .home-clients__item:nth-child(15) {
        transition-delay: 1.2s;
      }
      @media (min-width: 1024px) {
        .home-clients__list--right .home-clients__item:first-child {
          transition-delay: 0.66s;
        }
        .home-clients__list--right .home-clients__item:nth-child(2) {
          transition-delay: 0.72s;
        }
        .home-clients__list--right .home-clients__item:nth-child(3) {
          transition-delay: 0.78s;
        }
        .home-clients__list--right .home-clients__item:nth-child(4) {
          transition-delay: 0.84s;
        }
        .home-clients__list--right .home-clients__item:nth-child(5) {
          transition-delay: 0.9s;
        }
        .home-clients__list--right .home-clients__item:nth-child(6) {
          transition-delay: 0.96s;
        }
        .home-clients__list--right .home-clients__item:nth-child(7) {
          transition-delay: 1.02s;
        }
        .home-clients__list--right .home-clients__item:nth-child(8) {
          transition-delay: 1.08s;
        }
        .home-clients__list--right .home-clients__item:nth-child(9) {
          transition-delay: 1.14s;
        }
        .home-clients__list--right .home-clients__item:nth-child(10) {
          transition-delay: 1.2s;
        }
        .home-clients__list--right .home-clients__item:nth-child(11) {
          transition-delay: 1.26s;
        }
        .home-clients__list--right .home-clients__item:nth-child(12) {
          transition-delay: 1.32s;
        }
        .home-clients__list--right .home-clients__item:nth-child(13) {
          transition-delay: 1.38s;
        }
        .home-clients__list--right .home-clients__item:nth-child(14) {
          transition-delay: 1.44s;
        }
        .home-clients__list--right .home-clients__item:nth-child(15) {
          transition-delay: 1.5s;
        }
      }
  
      .home-client--link {
        position: relative;
      }
      @media (hover: hover) {
        .home-client--link {
          align-items: baseline;
          display: flex;
          overflow: hidden;
          transition: color 0.8s cubic-bezier(0.14, 1, 0.34, 1);
        }
        .home-client--link:hover {
          color: #dd1201;
        }
        .home-client--link:hover .home-client__hover {
          transform: translateY(0);
          transition: transform 0.4s cubic-bezier(0.14, 1, 0.34, 1),
            color 0.8s cubic-bezier(0.14, 1, 0.34, 1);
        }
      }
      @media not (hover: hover) {
        .home-client--link:after {
          background-color: currentColor;
          bottom: 0.2rem;
          content: "";
          height: 0.1rem;
          left: 0;
          position: absolute;
          right: 0;
        }
      }
      .home-client__hover {
        color: currentColor;
        display: inline-flex;
        margin-left: 0.625vw;
        transform: translateY(105%);
        transition: transform 0.4s cubic-bezier(1, 0, 0.65, 0.61),
          color 0.8s cubic-bezier(0.14, 1, 0.34, 1);
      }
      @media not (hover: hover) {
        .home-client__hover {
          display: none;
        }
      }
  
      .home-featured-news {
        padding-bottom: 16.6rem;
      }
      @media (min-width: 1024px) {
        .home-featured-news {
          padding-bottom: 20vw;
        }
      }
      .home-featured-news__header {
        display: flex;
        justify-content: space-between;
        padding-bottom: 1.8rem;
      }
      @media (min-width: 1024px) {
        .home-featured-news__header {
          padding-bottom: 1.375vw;
        }
      }
      .home-featured-news__grid {
        align-items: flex-start;
        row-gap: 4rem;
      }
      .home-featured-news__item:first-child {
        grid-column: 1 / span 5;
      }
      @media (min-width: 1024px) {
        .home-featured-news__item:first-child {
          grid-column: 1 / span 5;
        }
        .home-featured-news__item:first-child .list-item__fig {
          aspect-ratio: 1/1;
        }
        .home-featured-news__item:first-child .list-item__wrapper {
          max-width: 31.25vw;
        }
      }
      .home-featured-news__item:nth-child(2) {
        grid-column: 1 / span 5;
      }
      @media (min-width: 1024px) {
        .home-featured-news__item:nth-child(2) {
          grid-column: 6 / span 4;
        }
      }
  
      .list-item {
        display: flex;
      }
      @media (min-width: 1024px) {
        .list-item {
          grid-column: span 1;
        }
      }
      @media (hover: hover) {
        .list-item:hover .list-item__fig--hover {
          opacity: 1;
        }
      }
      @media (min-width: 1024px) {
        .list-item--small:not(:last-child) {
          position: relative;
        }
        .list-item--small:not(:last-child):before {
          background-color: #1c1c1c;
          bottom: -0.6875vw;
          content: "";
          height: 0.1rem;
          left: 0;
          position: absolute;
          right: 0;
        }
        .list-item--marquee {
          width: 36.125vw;
        }
      }
      .list-item__link {
        align-items: center;
        display: flex;
        flex-direction: column;
        row-gap: 1rem;
        width: 100%;
      }
      .list-item__link--note {
        pointer-events: none;
      }
      @media (min-width: 1024px) {
        .list-item__link {
          row-gap: 1vw;
        }
        .list-item--marquee .list-item__link,
        .list-item--small .list-item__link {
          -moz-column-gap: 0.75vw;
          column-gap: 0.75vw;
          flex-direction: row;
        }
      }
      .list-item__tags {
        -moz-column-gap: 0.8rem;
        column-gap: 0.8rem;
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        left: 0;
        padding: 0.8rem;
        position: absolute;
        row-gap: 0.8rem;
        top: 0;
        z-index: 1;
      }
      @media (min-width: 1024px) {
        .list-item__tags {
          -moz-column-gap: 0.5vw;
          column-gap: 0.5vw;
          padding: 0.5625vw 0.75vw;
          row-gap: 0.5vw;
        }
      }
      .list-item__fig-wrapper {
        position: relative;
        width: 100%;
      }
      @media (min-width: 1024px) {
        .list-item--small .list-item__fig-wrapper {
          width: 14.8125vw;
        }
        .list-item--marquee .list-item__fig-wrapper {
          width: 13.625vw;
        }
      }
      .list-item__fig {
        aspect-ratio: 374/231;
        width: 100%;
      }
      @media (min-width: 1024px) {
        .list-item__fig {
          aspect-ratio: 517/321;
        }
      }
      .list-item__fig--main {
        background-color: #1c1c1c1a;
      }
      .list-item__fig--hover {
        display: none;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        position: absolute;
        z-index: 1;
      }
      @media (hover: hover) {
        .list-item__fig--hover {
          display: block;
          opacity: 0;
          transition: opacity 1s cubic-bezier(0.14, 1, 0.34, 1);
        }
      }
      .list-item__content {
        display: flex;
        position: relative;
        text-align: center;
      }
      @media not (hover: hover) {
        .list-item__content {
          align-items: center;
          flex-direction: column;
        }
      }
      @media (min-width: 1024px) {
        .list-item__content {
          max-width: 27.0625vw;
        }
      }
      .list-item--marquee .list-item__content,
      .list-item--small .list-item__content {
        align-items: flex-start;
        flex-direction: column;
        text-align: left;
      }
      .list-item__title {
        font-family: SequelWeb, sans-serif;
        font-size: 1.3rem;
        font-weight: 500;
      }
      @media (max-width: 1023px) {
        .list-item__title {
          max-width: 80%;
        }
      }
      @media (min-width: 1024px) {
        .list-item__title {
          font-size: 1vw;
        }
      }
      .list-item--marquee .list-item__title {
        display: flex;
        flex-direction: column;
      }
      @media (min-width: 1024px) {
        .list-item--marquee .list-item__title {
          max-width: 80%;
          row-gap: 0.6875vw;
        }
      }
      .list-item__excerpt {
        font-family: RecklessWeb, serif;
        font-size: 1.5rem;
        letter-spacing: -0.01em;
        line-height: 1.15;
        text-transform: none;
      }
      @media (min-width: 1024px) {
        .list-item__excerpt {
          font-size: 1.125vw;
        }
      }
      .list-item--marquee .list-item__excerpt {
        padding-top: 0.4rem;
      }
      @media (min-width: 1024px) {
        .list-item--marquee .list-item__excerpt {
          max-width: 20.375vw;
          padding-top: unset;
        }
      }
      .list-item__cta-label,
      .list-item__link--note .list-item__cta-label {
        display: none;
      }
      @media not (hover: hover) {
        .list-item__cta-label {
          display: inline-flex;
          font-family: SequelWeb, sans-serif;
          font-size: 1.4rem;
          font-weight: 500;
          justify-content: center;
          line-height: 1.1;
          margin-top: 1.8rem;
          padding-bottom: 0.4rem;
          position: relative;
        }
      }
      @media (not (hover: hover)) and (min-width: 1024px) {
        .list-item--marquee .list-item__cta-label,
        .list-item--small .list-item__cta-label {
          display: flex;
          justify-content: flex-start;
          left: unset;
          opacity: 1;
          padding-top: 1.6rem;
          position: relative;
          top: unset;
          transform: none;
        }
      }
      .list-item__cta-label:after {
        background-color: currentColor;
        bottom: 0;
        content: "";
        height: 0.1rem;
        left: 0.4rem;
        position: absolute;
        right: 0.4rem;
      }
  
      .list-item-tags {
        -moz-column-gap: 0.8rem;
        column-gap: 0.8rem;
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        row-gap: 0.8rem;
        z-index: 1;
      }
      @media (min-width: 1024px) {
        .list-item-tags {
          -moz-column-gap: 0.5vw;
          column-gap: 0.5vw;
          padding-bottom: 0.875vw;
          row-gap: 0.5vw;
        }
      }
      .list-item-tags--abs {
        left: 0;
        padding: 0.8rem;
        position: absolute;
        top: 0;
      }
      @media (min-width: 1024px) {
        .list-item-tags--abs {
          padding: 0.75vw;
        }
      }
  
      .footer {
        overflow: hidden;
      }
      @media (min-width: 1024px) {
        .footer {
          align-items: flex-end;
        }
      }
      .footer--no-fl {
        padding-bottom: 0.8rem;
      }
      @media (min-width: 1024px) {
        .footer--no-fl {
          padding-bottom: 0.75vw;
        }
      }
      .page--project-dark .footer {
        color: #fff;
      }
      .footer__list {
        align-items: flex-start;
        display: flex;
        flex-direction: column;
      }
      .footer__socials {
        grid-column: 1 / span 5;
        margin-bottom: 4rem;
      }
      @media (min-width: 1024px) {
        .footer__socials {
          grid-column: 1 / span 2;
          margin-bottom: unset;
        }
      }
      .footer__nav {
        grid-column: 1 / span 5;
        margin-bottom: 4rem;
      }
      @media (min-width: 1024px) {
        .footer__nav {
          grid-column: 3 / span 2;
          margin-bottom: unset;
        }
      }
      .footer__legals {
        grid-column: 1 / span 5;
        margin-bottom: 4rem;
      }
      @media (min-width: 1024px) {
        .footer__legals {
          grid-column: 5 / span 2;
          margin-bottom: unset;
        }
      }
      .footer__credits {
        grid-column: 1 / span 5;
        margin-bottom: 7.4rem;
      }
      @media (min-width: 1024px) {
        .base-image {
          grid-column: 7 / span 2;
          margin-bottom: unset;
        }
      }
      .footer__credit {
        display: flex;
      }
      @media (hover: hover) {
        .footer__credit-link {
          overflow: hidden;
          position: relative;
        }
        .footer__credit-link:after {
          content: attr(data-label);
          left: 0;
          pointer-events: none;
          position: absolute;
          top: 100%;
          transition: transform 0.4s cubic-bezier(1, 0, 0.65, 0.61);
          white-space: nowrap;
        }
        .footer__credit-link:hover span,
        .footer__credit-link:hover:after {
          transform: translateY(-100%);
          transition-duration: 0.8s;
          transition-timing-function: cubic-bezier(0.14, 1, 0.34, 1);
        }
        .footer__credit-link span {
          display: flex;
          transition: transform 0.4s cubic-bezier(1, 0, 0.65, 0.61);
        }
      }
  
      .link {
        color: currentColor;
        cursor: pointer;
        display: flex;
      }
      @media (hover: hover) {
        .link--clone-hover {
          overflow: hidden;
          position: relative;
        }
        .link--clone-hover:after {
          content: attr(data-label);
          left: 0;
          pointer-events: none;
          position: absolute;
          top: 100%;
          transition: transform 0.4s cubic-bezier(1, 0, 0.65, 0.61);
          white-space: nowrap;
        }
        .link--clone-hover:hover .link__label,
        .link--clone-hover:hover:after {
          transform: translateY(-100%);
          transition-duration: 0.8s;
          transition-timing-function: cubic-bezier(0.14, 1, 0.34, 1);
        }
      }
      .link__label {
        display: flex;
      }
      @media (hover: hover) {
        .link--clone-hover .link__label {
          transition: transform 0.4s cubic-bezier(1, 0, 0.65, 0.61);
        }
      }
  
      .footer-link {
        grid-column: 1 / span 5;
      }
      @media (min-width: 1024px) {
        .footer-link {
          grid-column: 1 / span 9;
        }
        .footer-link--has-items {
          padding-top: 9.75vw;
        }
      }
      .footer-link__wrapper {
        display: flex;
        flex-direction: column;
        position: relative;
        text-align: left;
      }
      @media (min-width: 1024px) {
        .footer-link__wrapper {
          align-items: baseline;
          flex-direction: row;
          margin-top: 10vw;
        }
        .footer-link--has-items .footer-link__wrapper {
          margin-top: 4.6875vw;
        }
      }
      .footer-link__wrapper.h2 {
        line-height: 0.81;
      }
      @media (max-width: 767px) {
        .footer-link__label--main {
          display: flex;
          flex-direction: column;
        }
      }
      @media (hover: none) {
        .footer-link__label--main .footer-link__word {
          overflow: hidden;
        }
      }
      @media (max-width: 1023px) {
        .footer-link__label .footer-link__word:first-child {
          display: none;
        }
      }
      .footer-link__inner {
        aspect-ratio: 149/91;
        margin-bottom: 0.6rem;
        position: relative;
        width: 38.20513vw;
      }
      @media (max-width: 1023px) {
        .footer-link__inner {
          order: -1;
        }
      }
      @media (min-width: 1024px) {
        .footer-link__inner {
          aspect-ratio: 238/145;
          margin-bottom: unset;
          margin-left: 1.25vw;
          width: 14.875vw;
        }
      }
      .footer-link__inner img,
      .footer-link__inner video {
        display: block;
      }
      .footer-link__fig {
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        position: absolute;
      }
      .footer-link__svg {
        display: flex;
        height: 6.5rem;
        margin-left: auto;
        width: 6.4rem;
      }
      @media (max-width: 767px) {
        .footer-link__svg {
          bottom: 0.7rem;
          position: absolute;
          right: 0.7rem;
        }
      }
      @media (min-width: 1024px) {
        .footer-link__svg {
          height: 9.8125vw;
          width: 9.6875vw;
        }
      }
