/* Global overrides carried over from the Webflow build */
  * {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -o-font-smoothing: antialiased;
  }
  
  html.js-anim [animate="slide-up"], html.js-anim .divider-horizontal, html.js-anim .divider-vertical{opacity:0;}

  /* Lenis */
  html.lenis {
    height: auto;
  }
  .lenis.lenis-smooth {
    scroll-behavior: auto;
  }
  .lenis.lenis-smooth [data-lenis-prevent] {
    overscroll-behavior: contain;
  }
  .lenis.lenis-stopped {
    overflow: hidden;
  }
  footer {
    background: var(--_primitives---colors--neutral-darkest) !important;
  }
  html { font-size: 1rem }
  @media screen and (max-width:1920px) { html { font-size: 0.875rem; } }
  @media screen and (max-width:1680px) { html { font-size: 0.875rem; } }
  @media screen and (max-width:1440px) { html { font-size: calc(0.7813475546305931rem + 0.10405827263267431vw); } }
  @media screen and (max-width:479px) { html { font-size: calc(0.8748692468619247rem + 0.20920502092050208vw); } }

  /* Ensure all elements inherit the color from its parent */
  a,
  .w-input,
  .w-select,
  .w-tab-link,
  .w-nav-link,
  .w-nav-brand,
  .w-dropdown-btn,
  .w-dropdown-toggle,
  .w-slider-arrow-left,
  .w-slider-arrow-right,
  .w-dropdown-link {
    color: inherit;
    text-decoration: inherit;
    font-size: inherit;
  }

  .w-nav-link {
    margin-left:0;
    margin-right:0;
  }

  /* Focus state style for keyboard navigation for the focusable elements */
  *[tabindex]:focus-visible,
  input[type="file"]:focus-visible {
    outline: 0.125rem solid #4d65ff;
    outline-offset: 0.125rem;
  }

  /* Get rid of top margin on first element in any rich text element */
  .w-richtext > :not(div):first-child, .w-richtext > div:first-child > :first-child {
    margin-top: 0 !important;
  }

  /* Get rid of bottom margin on last element in any rich text element */
  .w-richtext>:last-child, .w-richtext ol li:last-child, .w-richtext ul li:last-child {
    margin-bottom: 0 !important;
  }

  /* Prevent all click and hover interaction with an element */
  .pointer-events-off {
    pointer-events: none;
  }

  /* Enables all click and hover interaction with an element */
  .pointer-events-on {
    pointer-events: auto;
  }

  /* Create a class of .div-square which maintains a 1:1 dimension of a div */
  .div-square::after {
    content: "";
    display: block;
    padding-bottom: 100%;
  }

  /* Make sure containers never lose their center alignment */
  .container-medium,.container-small, .container-large {
    margin-right: auto !important;
    margin-left: auto !important;
  }


  /* Apply "..." after 3 lines of text */
  .text-style-3lines {
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
  }

  /* Apply "..." after 2 lines of text */
  .text-style-2lines {
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
  }

  /* Adds inline flex display */
  .display-inlineflex {
    display: inline-flex;
  }

  /* These classes are never overwritten */
  .hide {
    display: none !important;
  }

  /* Remove default Webflow chevron from form select */
  select{
    -webkit-appearance:none;
  }


  @media screen and (max-width: 991px) {
    .hide, .hide-tablet {
      display: none !important;
    }
  }
  @media screen and (max-width: 767px) {
    .hide-mobile-landscape{
      display: none !important;
    }
  }
  @media screen and (max-width: 479px) {
    .hide-mobile{
      display: none !important;
    }
  }

  .margin-0 {
    margin: 0rem !important;
  }

  .padding-0 {
    padding: 0rem !important;
  }

  .spacing-clean {
    padding: 0rem !important;
    margin: 0rem !important;
  }

  .margin-top {
    margin-right: 0rem !important;
    margin-bottom: 0rem !important;
    margin-left: 0rem !important;
  }

  .padding-top {
    padding-right: 0rem !important;
    padding-bottom: 0rem !important;
    padding-left: 0rem !important;
  }

  .margin-right {
    margin-top: 0rem !important;
    margin-bottom: 0rem !important;
    margin-left: 0rem !important;
  }

  .padding-right {
    padding-top: 0rem !important;
    padding-bottom: 0rem !important;
    padding-left: 0rem !important;
  }

  .margin-bottom {
    margin-top: 0rem !important;
    margin-right: 0rem !important;
    margin-left: 0rem !important;
  }

  .padding-bottom {
    padding-top: 0rem !important;
    padding-right: 0rem !important;
    padding-left: 0rem !important;
  }

  .margin-left {
    margin-top: 0rem !important;
    margin-right: 0rem !important;
    margin-bottom: 0rem !important;
  }

  .padding-left {
    padding-top: 0rem !important;
    padding-right: 0rem !important;
    padding-bottom: 0rem !important;
  }

  .margin-horizontal {
    margin-top: 0rem !important;
    margin-bottom: 0rem !important;
  }

  .padding-horizontal {
    padding-top: 0rem !important;
    padding-bottom: 0rem !important;
  }

  .margin-vertical {
    margin-right: 0rem !important;
    margin-left: 0rem !important;
  }

  .padding-vertical {
    padding-right: 0rem !important;
    padding-left: 0rem !important;
  }

  /* Apply "..." at 100% width */
  .truncate-width { 
    width: 100%; 
    white-space: nowrap; 
    overflow: hidden; 
    text-overflow: ellipsis; 
  }
  /* Removes native scrollbar */
  .no-scrollbar {
    -ms-overflow-style: none;
    overflow: -moz-scrollbars-none; 
  }

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

  @media screen and (min-width: 991px) {
    /* Button */
    .button_icon-wrapper:hover .button_background{
      width:100%;
      background:var(--_primitives---colors--white);
    }

    .button_icon-wrapper:hover .button:not(.is-icon-only){
      color:var(--_primitives---colors--neutral-darkest);
    }

    .button_icon-wrapper:hover .is-icon-only{
      top:0.25rem;
      right:0.25rem;
      height:calc(100% - 0.5rem);
      background:var(--_primitives---colors--neutral-darkest);
    }

    .button_icon-wrapper[data-wf--element---button--variant="secondary"]:hover .is-icon-only{
      color:var(--_primitives---colors--white);
    }

    .button_icon-wrapper .icon-embed-xsmall{
      transition:300ms ease;
    }

    .button_icon-wrapper:hover .icon-embed-xsmall{
      transform:rotate(90deg);
    }

    .footer_link-list:hover a, .navbar_menu-links:hover a{
      opacity:.5;
    }

    .footer_link-list a:hover, .navbar_menu-links a:hover {
      opacity:1;
    }
  }

  footer .square_icon{
    background:transparent !important;
  }
  .header_background-video{
    width:100%;
    height:100%;
    object-fit:cover;
  }

  .square {
    background: var(--color-scheme-1--background);
    opacity: 0;
    aspect-ratio: 1 / 1;
  }

  .square_icon-square svg{
    position:absolute;
    top:0;
    left:0;
  }

  @media screen and (min-width: 991px) {
    .grid_card .card:first-child .border-left{
      display:none;
    }

    .grid_card .card:nth-of-type(3) {
      margin-top: 12.5rem;
    }

    .grid_card .card:last-child .border-right{
      display:none;
    }
  }


  @media screen and (min-width: 1600px) {
    .header_heading{
      font-size:9rem;
    }
  }

  @media screen and (min-width: 991px) {
    .news_item:first-child{
      grid-area: span 1 / span 3 / span 1 / span 3 !important;
    }

    .news_item:nth-child(2n+2){
      grid-area: span 1 / span 2 / span 1 / span 2 !important;
    }
    
    .catchphrase_sticky h2 .char{
    	transition:opacity .3s;
    }
  }
