@font-face {
  font-family: "Inter variable";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("/fonts/Inter.woff2") format("woff2"); }

@font-face {
  font-family: "Inter variable";
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url("/fonts/Inter-Italic.woff2") format("woff2"); }

* {
  font-synthesis: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-smoothing: antialiased;
  text-rendering: optimizeLegibility; }

body {
  font-family: "Inter variable", sans-serif;
  font-size: 0.9em; }

h1,
h2 {
  letter-spacing: -0.03em; }

h3,
h4 {
  letter-spacing: -0.01em;
  color: #304861; }

h2 {
  line-height: 1 !important; }

h3 {
  line-height: 1.5; }

h5 {
  font-size: 1.25em;
  color: #007bff;
  font-weight: 500; }

.container {
  max-width: 1000px;
  position: relative; }

.navbar {
  height: 59px;
  z-index: 5000;
  max-width: 1010px;
  border-radius: 59px;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  position: fixed;
  top: 20px;
  bottom: auto;
  left: 30px;
  right: 30px;
  color: white; }
  .navbar .navbar-brand img {
    height: 28px;
    margin: -1px 0 0 17px; }
  .navbar:before {
    content: "";
    pointer-events: none;
    position: absolute;
    inset: 0;
    border-radius: 59px;
    z-index: -1;
    opacity: 0;
    background-color: rgba(255, 255, 255, 0.8);
    box-shadow: 0px 0px 0px 1px rgba(38, 46, 98, 0.03), 0px 10px 32px 0px rgba(38, 46, 98, 0.08), 0px 1px 1px 0px rgba(38, 46, 98, 0.03), 0px 4px 6px 0px rgba(38, 46, 98, 0.04), 0px 1px 1px 0px rgba(38, 46, 98, 0.07), 0px 24px 68px 0px rgba(38, 46, 98, 0.06);
    -webkit-backdrop-filter: blur(16px) saturate(250%);
    backdrop-filter: blur(16px) saturate(250%);
    transition: opacity 0.3s cubic-bezier(0.27, 0.01, 0.38, 1.06);
    will-change: opacity; }
  .navbar:after {
    content: "";
    opacity: 0;
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0.5), transparent);
    border-radius: inherit;
    inset: 0;
    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    mask-composite: xor;
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    padding: 1px;
    pointer-events: none;
    position: absolute;
    transition: opacity 0.3s cubic-bezier(0.27, 0.01, 0.38, 1.06);
    will-change: opacity; }
  .navbar.raised:before, .navbar.raised:after {
    opacity: 1; }
  .navbar ul.nav .nav-link:focus-visible {
    box-shadow: none;
    color: black; }
  .navbar ul.nav > li > a, .navbar ul.nav > li .text-muted {
    color: #23517a !important; }
  .navbar ul.nav > li:last-child a {
    color: inherit !important;
    height: 42px;
    font-size: 15px;
    width: 100px;
    line-height: 42px;
    padding: 0;
    margin-left: 10px;
    margin-right: -2px; }
  .navbar .dropdown-menu {
    box-shadow: 0px 0px 0px 1px rgba(38, 46, 98, 0.03), 0px 10px 32px 0px rgba(38, 46, 98, 0.08), 0px 1px 1px 0px rgba(38, 46, 98, 0.03), 0px 4px 6px 0px rgba(38, 46, 98, 0.04), 0px 1px 1px 0px rgba(38, 46, 98, 0.07), 0px 24px 68px 0px rgba(38, 46, 98, 0.06);
    border: none;
    margin-top: 20px; }

main > section.top-cta {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center; }
  main > section.top-cta:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: url(/images/gradient.svg) no-repeat;
    background-size: 100% 100%;
    background-position: bottom;
    transform: scaleY(-1);
    opacity: 0.7;
    z-index: -1; }
  main > section.top-cta h1 {
    color: rgba(0, 23, 47, 0.8);
    line-height: 1.17em;
    margin-top: px; }
    main > section.top-cta h1 mark {
      background: none;
      padding: 0; }
      main > section.top-cta h1 mark:first-of-type {
        background-image: linear-gradient(45deg, #0457e3 0%, #0089de 50%, #00d9e8 100%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        background-clip: text;
        background-size: 100% 100%;
        text-shadow: 0px 1px 3px rgba(4, 120, 227, 0.3); }
      main > section.top-cta h1 mark:last-of-type {
        background-image: linear-gradient(45deg, #0ce57a 0%, #45e74d 50%, #93f349 90%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        background-clip: text;
        text-shadow: 0px 1px 3px rgba(86, 173, 84, 0.4); }
      main > section.top-cta h1 mark:first-of-type:after {
        content: url(/images/underline.svg);
        position: absolute;
        width: 5.7em;
        margin: 0.3em 0 0 -5.6em;
        pointer-events: none;
        -webkit-user-select: none;
        user-select: none; }
      main > section.top-cta h1 mark:last-of-type:after {
        content: url(/images/flare.svg);
        position: absolute;
        width: 3.3em;
        margin: -0.195em 0 0 -3.25em;
        pointer-events: none;
        -webkit-user-select: none;
        user-select: none; }
  main > section.top-cta h3 {
    color: #60758a !important;
    opacity: 0.8;
    font-size: 1.5em;
    margin: 25px 0; }
  main > section.top-cta .btn-lg {
    margin-top: 25px;
    font-size: 1.1rem;
    font-weight: 600;
    padding: 9px 25px;
    border: none; }
    main > section.top-cta .btn-lg i {
      font-size: 0.7rem;
      position: relative;
      top: -1px;
      opacity: 0.7; }
  main > section.top-cta ul {
    margin-top: 30px;
    font-size: 0.9em;
    opacity: 0.5; }
    main > section.top-cta ul li {
      float: left;
      margin-right: 30px; }
      main > section.top-cta ul li:before {
        content: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAyNCAyNCcgY29sb3I9J3JnYigyMjcsIDIyNywgMjI3KSc+PHBhdGggZD0nTTkgMTYuMTdMNC44MyAxMmwtMS40MiAxLjQxTDkgMTkgMjEgN2wtMS40MS0xLjQxeic+PC9wYXRoPjwvc3ZnPg==");
        width: 1.25em;
        display: block;
        float: left;
        margin: 2px 5px 0px 0; }
  main > section.top-cta span {
    float: left;
    width: 50%; }

@keyframes marquee {
  0% {
    left: 0; }
  100% {
    left: -100%; } }

.marquee {
  height: 42px;
  opacity: 0.5;
  width: 100vw;
  overflow: hidden;
  box-sizing: border-box;
  position: relative;
  margin: -70px auto 42px;
  mask-image: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, black 12.5%, black 87.5%, rgba(0, 0, 0, 0) 100%); }

.marquee--inner {
  display: flex;
  width: 200%;
  margin: 0px;
  position: absolute;
  animation: marquee 30s linear infinite; }

/*.marquee--inner:hover {
  animation-play-state: paused;
}*/
.marquee img {
  width: 120px;
  display: inline-block;
  margin: 0 40px;
  float: left;
  transition: all 0.2s ease-out; }

/*.marquee img:hover {
  transform: scale(1.2);
  opacity: .5;
  cursor: pointer;
}*/
div.scroll-animation {
  min-height: 100vh;
  position: relative;
  left: 0;
  right: 0; }

section.why {
  border-top: 1px solid #e9e9e9;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  will-change: transform, height;
  transform: translate3d(0, 0, 0);
  transform-style: preserve-3d;
  background: url(/images/gradient-2.svg) no-repeat;
  background-size: 100% 100%;
  background-position: bottom; }
  section.why.rounded {
    border-radius: 42px !important;
    box-shadow: 0px 0px 0px 1px rgba(38, 46, 98, 0.03), 0px 10px 32px 0px rgba(38, 46, 98, 0.08), 0px 1px 1px 0px rgba(38, 46, 98, 0.03), 0px 4px 6px 0px rgba(38, 46, 98, 0.04), 0px 1px 1px 0px rgba(38, 46, 98, 0.07), 0px 24px 68px 0px rgba(38, 46, 98, 0.06); }
  section.why h2 {
    font-size: 3.5rem; }
  section.why h5 {
    margin-top: 100px; }
  section.why h3 {
    color: #60758a !important;
    opacity: 0.8;
    font-size: 1.5em;
    margin: 20px 0 25px;
    position: relative; }
  section.why ul li img {
    height: 80px;
    margin-bottom: 20px; }
  section.why ul li:nth-of-type(2) img {
    height: 90px;
    margin-top: -5px;
    margin-bottom: 15px; }
  section.why ul li h4 {
    font-size: 1.3em;
    font-weight: bold;
    color: rgba(0, 0, 0, 0.75); }
  section.why ul li h4 + p {
    color: #304861;
    font-weight: 450;
    opacity: 0.7;
    font-size: 1em;
    width: 255px; }
    section.why ul li h4 + p b {
      text-decoration: underline; }

section.benefits {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  background: url(/images/bg-reverse.svg) repeat-x;
  background-position: bottom;
  background-size: 35px auto; }
  section.benefits > div {
    max-width: 1000px;
    width: calc(100vw - 60px);
    margin: 0 auto; }
  section.benefits h5 {
    margin-top: 100px; }
  section.benefits h2 {
    position: relative; }
    section.benefits h2 img {
      image-rendering: pixelated;
      height: 0.85em;
      margin-top: -0.25em;
      margin-left: -0.3em; }
    section.benefits h2:before {
      content: "";
      position: absolute;
      top: 1.282em;
      width: 1000px;
      height: 0.58em;
      background: #007bff;
      left: -0.25em;
      transform-origin: 0 50%;
      transform: rotate(180deg); }
  section.benefits h3 {
    color: #60758a !important;
    opacity: 0.8;
    font-size: 1.5em;
    margin: 20px 0 25px;
    position: relative; }
  section.benefits ul {
    flex-wrap: wrap;
    max-width: 1000px;
    padding: 0;
    justify-content: space-between; }
    section.benefits ul:hover li {
      opacity: 0.55; }
    section.benefits ul li {
      text-align: left;
      margin-bottom: 35px;
      transition: transform 0.25s cubic-bezier(0.27, 0.01, 0.38, 1.06), opacity 0.25s cubic-bezier(0.27, 0.01, 0.38, 1.06);
      will-change: transform, opacity;
      width: calc(33% - 13px); }
      section.benefits ul li:hover {
        opacity: 1;
        transform: scale3d(1.03, 1.03, 1); }
      section.benefits ul li img,
      section.benefits ul li svg {
        height: 40px;
        width: 40px;
        object-fit: contain;
        margin-bottom: 10px; }
      section.benefits ul li svg .fill {
        transition: fill 0.25s cubic-bezier(0.27, 0.01, 0.38, 1.06), opacity 0.25s cubic-bezier(0.27, 0.01, 0.38, 1.06);
        fill: #60758a; }
      section.benefits ul li svg .stroke {
        transition: stroke 0.25s cubic-bezier(0.27, 0.01, 0.38, 1.06), opacity 0.25s cubic-bezier(0.27, 0.01, 0.38, 1.06);
        stroke: #60758a; }
      section.benefits ul li:hover svg .fill {
        fill: #007bff;
        opacity: 1; }
      section.benefits ul li:hover svg .stroke {
        stroke: #007bff;
        opacity: 1; }
      section.benefits ul li h4 {
        font-size: 1.3em;
        font-weight: bold;
        color: rgba(0, 0, 0, 0.75); }
      section.benefits ul li h4 + p {
        color: #304861;
        font-weight: 450;
        opacity: 0.7;
        font-size: 1em;
        width: auto; }
        section.benefits ul li h4 + p b {
          text-decoration: underline; }
  section.benefits + section {
    box-shadow: 0px 0px 0px 1px rgba(38, 46, 98, 0.015), 0px -10px 32px 0px rgba(38, 46, 98, 0.04), 0px -1px 1px 0px rgba(38, 46, 98, 0.015), 0px -4px 6px 0px rgba(38, 46, 98, 0.02), 0px -1px 1px 0px rgba(38, 46, 98, 0.035), 0px -24px 68px 0px rgba(38, 46, 98, 0.03); }

section.how {
  padding: 250px 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center; }
  section.how h2 {
    position: relative;
    height: 128px; }
    section.how h2 img {
      image-rendering: pixelated;
      height: 0.85em;
      margin-top: -0.25em; }
    section.how h2:before {
      content: "";
      position: absolute;
      top: 0.295em;
      width: 1000px;
      height: 0.58em;
      background: #007bff;
      left: 6px;
      transform-origin: 0 50%;
      transform: rotate(180deg); }
  section.how h2 iframe {
    width: 550px;
    height: 550px;
    position: absolute;
    right: -200px;
    top: -200px;
    z-index: -1;
    opacity: 0.3; }
  section.how h2:after {
    content: "";
    background: url(/images/mess-to-line.png);
    background-size: 100% 100%;
    position: absolute;
    top: 0;
    width: 300px;
    height: 300px;
    z-index: -1;
    opacity: 0.3;
    left: 0px;
    right: 0px;
    margin: 0 auto;
    transform: translate(147px, 0px); }
  section.how .container {
    margin-top: 217px; }
    section.how .container::after {
      content: "";
      position: absolute;
      width: 4px;
      top: -53px;
      bottom: 0;
      left: 0;
      right: 0;
      margin: 0 auto;
      background: #3273e9;
      opacity: 0.3;
      z-index: -1; }
    section.how .container .box {
      width: calc(75% + 45px);
      border-radius: 25px;
      -webkit-backdrop-filter: blur(14px);
      backdrop-filter: blur(14px);
      background-color: rgba(200, 200, 200, 0.03) !important;
      box-shadow: 0px 0px 0px 1px rgba(38, 46, 98, 0.03), 0px 10px 32px 0px rgba(38, 46, 98, 0.08), 0px 1px 1px 0px rgba(38, 46, 98, 0.03), 0px 4px 6px 0px rgba(38, 46, 98, 0.04), 0px 1px 1px 0px rgba(38, 46, 98, 0.07), 0px 24px 68px 0px rgba(38, 46, 98, 0.06);
      margin-bottom: 30px;
      font-size: 0.9em;
      overflow: hidden;
      will-change: transform;
      transform: scale3d(0.999, 0.999, 1); }
      section.how .container .box:after {
        content: "";
        background: linear-gradient(to bottom, rgba(40, 47, 60, 0.13), transparent);
        border-radius: inherit;
        inset: 0;
        -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
        mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
        mask-composite: xor;
        -webkit-mask-composite: xor;
        mask-composite: exclude;
        padding: 1px;
        pointer-events: none;
        position: absolute; }
      section.how .container .box > div {
        height: 270px;
        display: none;
        will-change: opacity;
        opacity: 1; }
        section.how .container .box > div.show {
          display: flex; }
    section.how .container .box:nth-of-type(odd) {
      float: left; }
      section.how .container .box:nth-of-type(odd) img,
      section.how .container .box:nth-of-type(odd) video {
        max-width: 300px; }
    section.how .container .box:nth-of-type(even) {
      float: right; }
      section.how .container .box:nth-of-type(even) img,
      section.how .container .box:nth-of-type(even) video {
        transform: translate(13px, 0px);
        max-width: 350px;
        float: right; }
    section.how .container .box:last-child {
      margin-bottom: 100px; }
    section.how .container h5 {
      display: flex;
      align-items: center;
      font-size: 1.1em; }
      section.how .container h5 .badge {
        background: linear-gradient(0deg, #0058e9, #0087e0, #00aec8);
        width: 28px;
        padding: 0;
        height: 27px;
        line-height: 27px; }
        section.how .container h5 .badge .icon-import::before {
          content: url(/images/import.svg);
          display: inline-block;
          width: 20px;
          margin-top: 3.5px; }
        section.how .container h5 .badge .icon-analyze::before {
          content: url(/images/analyze.svg);
          display: inline-block;
          width: 16px;
          margin-top: 4.5px; }
        section.how .container h5 .badge .icon-share::before {
          content: url(/images/share.svg);
          display: inline-block;
          width: 18px;
          margin-top: 3.5px;
          margin-left: 1px; }
    section.how .container h4 {
      font-weight: bold;
      font-size: 2em;
      line-height: 1;
      letter-spacing: -0.02em;
      margin: 0.9rem 0 1.25rem; }
    section.how .container h4 + p,
    section.how .container h4 + p + p,
    section.how .container h4 + p + p + p {
      color: #5e6e8a;
      line-height: 1.6;
      font-size: 0.9rem; }
    section.how .container .btn-light {
      border: none;
      padding: 7px 13px 9px;
      position: relative;
      overflow: hidden; }
      section.how .container .btn-light .progress-inside {
        position: absolute;
        bottom: 0;
        left: 0;
        width: 0%;
        height: 3px;
        background: #007bff; }
        section.how .container .btn-light .progress-inside.animated {
          animation: progress 8s linear; }

@keyframes progress {
  0% {
    width: 0%; }
  100% {
    width: 100%; } }
    section.how .container .btn-light:not(:hover):not(:active) {
      background: white;
      color: #5e6e8a;
      box-shadow: 0px 0.3px 0.7px rgba(0, 0, 0, 0.028), 0px 0.9px 2.2px rgba(0, 0, 0, 0.042), 0px 4px 10px rgba(0, 0, 0, 0.07); }
  section.how .btn-lg {
    font-size: 1.1rem;
    font-weight: 600;
    padding: 9px 25px;
    border: none; }
    section.how .btn-lg i {
      font-size: 0.7rem;
      position: relative;
      top: -1px;
      opacity: 0.7; }
  section.how video {
    pointer-events: none; }

.divider {
  width: 100%;
  height: 20px;
  background: #007bff;
  background-size: 200% 600px;
  background-position: bottom center; }

section.where {
  position: relative;
  height: 140vh;
  min-height: 1120px; }
  section.where:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: url(/images/gradient.svg) no-repeat;
    background-size: 100% 100%;
    background-position: bottom;
    z-index: -1;
    opacity: 0.8; }
  section.where h2 {
    font-size: 2.75rem; }
  section.where .lifecycle {
    position: relative;
    margin: 100px auto 20px;
    --node-width: 120px;
    --node-height: 80px;
    --arrow-height: 250px;
    --arrow-width: calc(0.737 * var(--arrow-height));
    width: calc(var(--arrow-width) * 2 + var(--node-width) * 2 - 10px);
    /* Disable shadows in Safari, significant performance impact */ }
    section.where .lifecycle .node {
      width: var(--node-width);
      height: var(--node-height);
      float: left;
      display: flex;
      justify-content: center;
      align-items: center;
      position: relative;
      font-weight: 600;
      font-size: 1rem;
      color: rgba(0, 0, 0, 0.75);
      border-radius: 15px;
      background: white;
      box-shadow: 0px 0px 0px 1px rgba(38, 46, 98, 0.02), 0px 10px 32px 0px rgba(38, 46, 98, 0.06), 0px 1px 1px 0px rgba(38, 46, 98, 0.02), 0px 4px 6px 0px rgba(38, 46, 98, 0.03), 0px 1px 1px 0px rgba(38, 46, 98, 0.05), 0px 24px 68px 0px rgba(38, 46, 98, 0.04); }
    section.where .lifecycle .node:first-child {
      margin: 0px calc(50% - var(--node-width) / 2 + 3px);
      --color: 170, 208, 75;
      color: RGB(var(--color)); }
      section.where .lifecycle .node:first-child:before {
        content: url(/images/arrow-top-left.svg);
        width: var(--arrow-width);
        height: var(--arrow-height);
        position: absolute;
        right: var(--node-width);
        top: calc(var(--node-height) / 2 - 10px);
        pointer-events: none;
        opacity: 0.5; }
      section.where .lifecycle .node:first-child:after {
        content: url(/images/arrow-top-right.svg);
        width: var(--arrow-width);
        height: var(--arrow-height);
        position: absolute;
        left: var(--node-width);
        top: calc(var(--node-height) / 2 - 3px);
        pointer-events: none;
        opacity: 0.5; }
    section.where .lifecycle .node:nth-child(2) {
      margin-top: calc(var(--arrow-height) - var(--node-height) / 2);
      --color: 38, 206, 223;
      color: RGB(var(--color)); }
    section.where .lifecycle .node:nth-child(3) {
      margin-top: calc(var(--arrow-height) - var(--node-height) / 2);
      float: right;
      --color: 89, 215, 149;
      color: RGB(var(--color)); }
    section.where .lifecycle .node:nth-child(4) {
      margin: calc(var(--arrow-height) - var(--node-height) / 2) calc(50% - var(--node-width) / 2 - 3px) 0px;
      --color: 66, 160, 250;
      color: RGB(var(--color)); }
      section.where .lifecycle .node:nth-child(4):before {
        content: url(/images/arrow-bottom-left.svg);
        width: var(--arrow-width);
        height: var(--arrow-height);
        position: absolute;
        right: var(--node-width);
        bottom: calc(var(--node-height) / 2 - 10px);
        pointer-events: none;
        opacity: 0.5; }
      section.where .lifecycle .node:nth-child(4):after {
        content: url(/images/arrow-bottom-right.svg);
        width: var(--arrow-width);
        height: var(--arrow-height);
        position: absolute;
        left: var(--node-width);
        bottom: calc(var(--node-height) / 2 - 3px);
        pointer-events: none;
        opacity: 0.5; }
    section.where .lifecycle .bubble,
    section.where .lifecycle .bubble:before,
    section.where .lifecycle .bubble:after {
      transition-duration: 0.2s; }
    section.where .lifecycle .bubble,
    section.where .lifecycle .bubble:after {
      border-radius: 50%; }
    section.where .lifecycle .bubble {
      user-select: none;
      background-image: radial-gradient(8% 8% at 22% 28%, white 45%, rgba(255, 255, 255, 0) 50%), radial-gradient(8% 8% at 23% 27%, white 45%, rgba(255, 255, 255, 0) 50%), radial-gradient(8% 8% at 24% 26%, white 45%, rgba(255, 255, 255, 0) 50%), radial-gradient(8% 8% at 25% 25%, white 45%, rgba(255, 255, 255, 0) 50%), radial-gradient(8% 8% at 26% 24%, white 45%, rgba(255, 255, 255, 0) 50%), radial-gradient(8% 8% at 27% 23%, white 45%, rgba(255, 255, 255, 0) 50%), radial-gradient(8% 8% at 28% 22%, white 45%, rgba(255, 255, 255, 0) 50%);
      box-shadow: 0 -0.06rem 0.1rem rgba(var(--color), 0.6) inset, 0 -0.15rem 0.4rem rgba(var(--color), 0.6) inset, 0 0.05rem 0.05rem rgba(var(--color), 0.6) inset, 0.05rem 0 0.1rem rgba(var(--color), 0.6) inset, -0.05rem 0 0.1rem rgba(var(--color), 0.6) inset, 0 0.1rem 0.4rem rgba(var(--color), 0.6) inset;
      position: absolute;
      display: flex;
      align-items: center;
      justify-content: center;
      line-height: 100px;
      font-size: 17px;
      font-weight: 400;
      white-space: nowrap;
      color: #60758a;
      -webkit-tap-highlight-color: transparent;
      animation: float 4s ease-in-out infinite;
      width: 70px;
      height: 70px;
      transform-style: preserve-3d;
      transition-property: box-shadow, transform, width, height;
      transition-timing-function: ease-in-out, ease-in-out, var(--bubbleTiming), var(--bubbleTiming);
      will-change: transform;
      -webkit-appearance: none;
      appearance: none;
      z-index: 0; }
    section.where .lifecycle .bubble:before,
    section.where .lifecycle .bubble:after {
      content: "";
      display: block;
      position: absolute;
      transition-timing-function: var(--bubbleTiming); }
    section.where .lifecycle .bubble:before {
      border-radius: 0.75em;
      content: attr(data-content);
      line-height: 1.5;
      font-size: 40px;
      filter: drop-shadow(0.6rem 0.6rem 4px rgba(0, 0, 0, 0.2));
      top: 50%;
      left: 50%;
      width: 1.5em;
      height: 1.5em;
      transform: translate3d(-50%, -50%, -1px);
      z-index: 999;
      contain: paint;
      buffered-rendering: static; }
    section.where .lifecycle .bubble:after {
      content: "";
      background: radial-gradient(100% 100% at center, rgba(0, 0, 0, 0) 30%, rgba(0, 0, 0, 0.1) 43%, rgba(0, 0, 0, 0) 50%);
      top: 0.6rem;
      left: 0.6rem;
      width: 100%;
      height: 100%;
      transform: translate3d(0, 0, -1px);
      z-index: -2; }
    @supports (-webkit-hyphens: none) {
      section.where .lifecycle .bubble:after {
        display: none; } }
    section.where .lifecycle .bubble:focus:active,
    section.where .lifecycle .bubble:hover:active {
      width: 75px;
      height: 65px; }
    section.where .lifecycle .bubble:focus:before,
    section.where .lifecycle .bubble:hover:before {
      filter: drop-shadow(0.75rem 0.75rem 4px rgba(0, 0, 0, 0.2)); }
    section.where .lifecycle .bubble:focus:after,
    section.where .lifecycle .bubble:hover:after {
      transform: translate3d(0.15rem, 0.15rem, -1px); }

@keyframes float {
  from,
  to {
    transform: translate(0, 3%); }
  25% {
    transform: translate(-3%, 0); }
  50% {
    transform: translate(0, -3%); }
  75% {
    transform: translate(3%, 0); } }
    section.where .lifecycle .node:nth-child(1) .bubble:nth-of-type(1) {
      margin-left: -120px;
      margin-top: 80px;
      animation-direction: reverse; }
    section.where .lifecycle .node:nth-child(1) .bubble:nth-of-type(2) {
      margin-left: 150px;
      margin-top: 160px;
      animation-delay: 0.4s; }
    section.where .lifecycle .node:nth-child(2) .bubble:nth-of-type(1) {
      margin-left: -170px;
      margin-top: -130px;
      animation-delay: 3.1s;
      animation-direction: reverse; }
    section.where .lifecycle .node:nth-child(2) .bubble:nth-of-type(2) {
      margin-left: 140px;
      margin-top: 80px;
      animation-delay: 1.2s;
      animation-direction: reverse; }
    section.where .lifecycle .node:nth-child(3) .bubble:nth-of-type(1) {
      margin-left: -170px;
      margin-top: 30px;
      animation-delay: 2s; }
    section.where .lifecycle .node:nth-child(3) .bubble:nth-of-type(2) {
      margin-left: 165px;
      margin-top: 90px;
      animation-delay: 1.4s;
      animation-direction: reverse; }
    section.where .lifecycle .node:nth-child(4) .bubble:nth-of-type(1) {
      margin-left: -50px;
      margin-top: -210px;
      animation-delay: 3.4s; }
    section.where .lifecycle label {
      position: absolute;
      left: 0;
      right: 0;
      top: calc(var(--arrow-height) + var(--node-height) - 0.5em);
      text-transform: uppercase;
      font-weight: 700;
      letter-spacing: 0.05em;
      font-size: 25px;
      color: #97eadc;
      pointer-events: none; }
    section.where .lifecycle label:nth-of-type(2) {
      left: calc(50% + var(--arrow-width) + var(--node-width) + 30px);
      color: #9beec5; }

.custom-tooltip {
  --bs-tooltip-bg: white;
  --bs-tooltip-color: #60758a;
  --bs-tooltip-border-radius: 10px;
  --bs-tooltip-opacity: 1; }
  .custom-tooltip .tooltip-inner {
    padding: 10px;
    box-shadow: 0px 0px 0px 1px rgba(38, 46, 98, 0.03), 0px 10px 32px 0px rgba(38, 46, 98, 0.08), 0px 1px 1px 0px rgba(38, 46, 98, 0.03), 0px 4px 6px 0px rgba(38, 46, 98, 0.04), 0px 1px 1px 0px rgba(38, 46, 98, 0.07), 0px 24px 68px 0px rgba(38, 46, 98, 0.06); }

section.what {
  background: #304861;
  height: 150vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center; }
  section.what.rounded {
    border-radius: 15px !important; }
  section.what h5 {
    color: #32a3fd; }
  section.what h2 {
    color: white;
    font-size: 3em; }
  section.what .container .diagnose {
    background: #2f5aa9; }
  section.what .container .refine {
    background: #2f7d99; }
  section.what .container .justify {
    background: #2f9479; }
  section.what .container .decision-support {
    background: #63a365; }
  section.what .container .diagnose,
  section.what .container .refine,
  section.what .container .justify,
  section.what .container .decision-support {
    border-radius: 20px;
    height: 270px;
    padding: 25px 30px;
    color: white;
    text-align: left;
    position: relative;
    will-change: transform;
    transition: transform 0.25s cubic-bezier(0.27, 0.01, 0.38, 1.06); }
    section.what .container .diagnose:hover,
    section.what .container .refine:hover,
    section.what .container .justify:hover,
    section.what .container .decision-support:hover {
      transform: scale3d(1.02, 1.02, 1); }
    section.what .container .diagnose h3,
    section.what .container .refine h3,
    section.what .container .justify h3,
    section.what .container .decision-support h3 {
      color: white;
      font-weight: bold;
      font-size: 1.5em; }
    section.what .container .diagnose a,
    section.what .container .refine a,
    section.what .container .justify a,
    section.what .container .decision-support a {
      position: absolute;
      bottom: 25px;
      color: white;
      text-decoration: none; }
    section.what .container .diagnose img,
    section.what .container .refine img,
    section.what .container .justify img,
    section.what .container .decision-support img {
      width: 100px;
      position: absolute;
      bottom: 25px;
      right: 25px; }

section.case-studies {
  background: url(/images/use-cases.svg) no-repeat;
  height: 42.61vw;
  display: flex;
  align-items: center;
  justify-content: start;
  padding: 0 30px; }
  section.case-studies > div {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto; }
  section.case-studies h5 {
    color: white;
    opacity: 0.75; }
  section.case-studies h2 {
    color: white;
    font-size: 3em; }
  section.case-studies h2 + p {
    color: white;
    opacity: 0.9;
    width: 65%; }
  section.case-studies .form-control {
    width: 300px;
    border: none;
    border-radius: 8px;
    padding: 8px 15px;
    box-shadow: 0px 0px 0px 1px rgba(38, 46, 98, 0.09), 0px 10px 32px 0px rgba(38, 46, 98, 0.24), 0px 1px 1px 0px rgba(38, 46, 98, 0.09), 0px 4px 6px 0px rgba(38, 46, 98, 0.12), 0px 1px 1px 0px rgba(38, 46, 98, 0.21), 0px 24px 68px 0px rgba(38, 46, 98, 0.18) !important; }
  section.case-studies label {
    color: white; }
    section.case-studies label a {
      color: white; }
  section.case-studies .btn-lg {
    font-size: 1.1rem;
    font-weight: 600;
    padding: 9px 25px; }
    section.case-studies .btn-lg i {
      font-size: 0.7rem;
      position: relative;
      top: -1px;
      opacity: 0.7; }

footer {
  height: 500px;
  padding: 0 30px;
  position: relative; }
  footer:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: url(/images/gradient.svg) no-repeat;
    background-size: 100% 100%;
    background-position: bottom;
    opacity: 0.5;
    z-index: -1; }
  footer .container.links > div {
    margin-top: 100px;
    width: 190px;
    line-height: 1.8; }
    footer .container.links > div h5 {
      color: #5e6e8a; }
    footer .container.links > div a {
      color: black;
      text-decoration: none;
      position: relative; }
    footer .container.links > div a::before {
      content: "";
      position: absolute;
      width: 100%;
      height: 2px;
      background-color: #5e6e8a;
      opacity: 0.5;
      bottom: 0px;
      left: 0;
      transform-origin: right;
      transform: scaleX(0);
      transition: transform 0.3s cubic-bezier(0.27, 0.01, 0.38, 1.06); }
    footer .container.links > div a:hover::before {
      transform-origin: left;
      transform: scaleX(1); }
  footer div.bottom {
    margin-top: 150px; }
    footer div.bottom h3 {
      position: relative; }
      footer div.bottom h3 img {
        image-rendering: pixelated;
        height: 25px; }
      footer div.bottom h3:before {
        content: "";
        position: absolute;
        top: 18px;
        width: 1000px;
        height: 17px;
        background: #007bff;
        left: 6px;
        transform-origin: 0 50%;
        transform: rotate(180deg); }
    footer div.bottom span {
      opacity: 0.65; }

main.page + footer:after {
  display: none; }

html.lenis {
  height: auto; }

.lenis.lenis-smooth {
  scroll-behavior: auto; }

.lenis.lenis-smooth [data-lenis-prevent] {
  overscroll-behavior: contain; }

.lenis.lenis-stopped {
  overflow: hidden; }

.lenis.lenis-scrolling iframe {
  pointer-events: none; }

main.page {
  padding-top: 160px;
  padding-bottom: 100px;
  border-bottom: 1px solid #e0e0e0; }
  main.page > div {
    max-width: 1000px;
    margin: 0 auto; }
  main.page:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: url(/images/gradient.svg) no-repeat;
    background-size: 100% 45%;
    background-position: bottom;
    transform: scaleY(-1);
    opacity: 1;
    z-index: -1; }

ul.benefits {
  margin-top: 30px;
  font-size: 1rem; }
  ul.benefits li {
    float: left;
    line-height: 2.5; }
    ul.benefits li:before {
      content: url(/images/check.svg);
      width: 1.25em;
      display: block;
      float: left;
      margin: 4px 10px 0px 0; }

.card {
  border: none;
  border-radius: 20px;
  background: white;
  box-shadow: 0px 0px 0px 1px rgba(38, 46, 98, 0.03), 0px 10px 32px 0px rgba(38, 46, 98, 0.08), 0px 1px 1px 0px rgba(38, 46, 98, 0.03), 0px 4px 6px 0px rgba(38, 46, 98, 0.04), 0px 1px 1px 0px rgba(38, 46, 98, 0.07), 0px 24px 68px 0px rgba(38, 46, 98, 0.06); }
  .card .card-body {
    padding: 30px 40px; }

.form-control {
  border-radius: 9px; }

.card .dropdown-toggle,
.card input[type="text"],
.card input[type="email"],
.card textarea {
  background-color: #f6f6f6;
  border: 1px solid transparent; }
  .card .dropdown-toggle:hover,
  .card input[type="text"]:hover,
  .card input[type="email"]:hover,
  .card textarea:hover {
    border: 1px solid #86b7fe; }
  .card .dropdown-toggle:focus,
  .card input[type="text"]:focus,
  .card input[type="email"]:focus,
  .card textarea:focus {
    border: 1px solid #86b7fe;
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
    background: white; }
  .card .dropdown-toggle.is-invalid:hover,
  .card input[type="text"].is-invalid:hover,
  .card input[type="email"].is-invalid:hover,
  .card textarea.is-invalid:hover {
    border: 1px solid #dc3545; }
  .card .dropdown-toggle.is-invalid:focus,
  .card input[type="text"].is-invalid:focus,
  .card input[type="email"].is-invalid:focus,
  .card textarea.is-invalid:focus {
    border: 1px solid #dc3545;
    box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25); }

.card h3 {
  font-size: 24px;
  font-feature-settings: "salt", "cv11", "ccmp", "kern";
  font-weight: 600;
  letter-spacing: -0.5px;
  color: black; }

.card label {
  color: #626266;
  font-size: 14px;
  font-weight: 500; }

.card .btn {
  font-weight: 600;
  border-radius: 8px;
  margin-bottom: 10px; }

.icon {
  width: 1.1rem;
  height: 1.1rem;
  display: inline-block;
  margin: -0.2rem 0 0 5px; }

.input-group-seamless {
  position: relative; }

.input-group-seamless .input-group-text {
  background: white;
  border: none;
  border-radius: 10px;
  position: absolute;
  inset: 1px;
  right: auto;
  pointer-events: none;
  opacity: 0.25; }

.input-group-seamless .input-group-text + input {
  padding-left: 45px; }

ul.questions {
  margin-right: 5px; }
  ul.questions > li {
    border-bottom: 1px solid #ccc;
    margin-bottom: 1rem; }
    ul.questions > li:last-of-type {
      border-bottom: none; }
    ul.questions > li h4 {
      display: block;
      font-size: 20px; }
    ul.questions > li mark {
      padding-left: 0;
      padding-right: 0; }
    ul.questions > li [data-bs-toggle="collapse"] {
      cursor: pointer; }
    ul.questions > li [data-bs-toggle="collapse"] i {
      line-height: 1.2em;
      float: right;
      width: 1rem;
      display: block;
      transition: transform 0.15s cubic-bezier(0.27, 0.01, 0.38, 1.06); }
    ul.questions > li [data-bs-toggle="collapse"] i::before {
      content: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1MTIgNTEyIj48cGF0aCBkPSJNMjMzLjQgMTA1LjRjMTIuNS0xMi41IDMyLjgtMTIuNSA0NS4zIDBsMTkyIDE5MmMxMi41IDEyLjUgMTIuNSAzMi44IDAgNDUuM3MtMzIuOCAxMi41LTQ1LjMgMEwyNTYgMTczLjMgODYuNiAzNDIuNmMtMTIuNSAxMi41LTMyLjggMTIuNS00NS4zIDBzLTEyLjUtMzIuOCAwLTQ1LjNsMTkyLTE5MnoiLz48L3N2Zz4=);
      width: 1rem;
      transform-origin: 50% 50%;
      display: block; }
    ul.questions > li [data-bs-toggle="collapse"][aria-expanded="true"] i {
      transform: rotate(-180deg); }
    ul.questions > li [data-bs-toggle="collapse"] + div p:last-child {
      margin-bottom: 0;
      padding-bottom: 1rem; }

.navbar-toggler {
  border: none; }

@media (max-width: 991px) {
  section.case-studies {
    height: 500px;
    background: #007bff;
    padding: 0 15px; }
    section.case-studies h2 + p {
      width: 100%; }
  section.benefits ul li {
    width: calc(50% - 15px); } }

@media (max-width: 575px) {
  .navbar {
    left: 15px;
    right: 15px; }
  section {
    padding-left: 15px;
    padding-right: 15px; }
  .navbar-collapse > ul.nav {
    position: absolute;
    right: 0px;
    background: white;
    box-shadow: 0px 0px 0px 1px rgba(38, 46, 98, 0.03), 0px 10px 32px 0px rgba(38, 46, 98, 0.08), 0px 1px 1px 0px rgba(38, 46, 98, 0.03), 0px 4px 6px 0px rgba(38, 46, 98, 0.04), 0px 1px 1px 0px rgba(38, 46, 98, 0.07), 0px 24px 68px 0px rgba(38, 46, 98, 0.06);
    border-radius: 0.675rem;
    display: flex;
    flex-direction: column; }
    .navbar-collapse > ul.nav > li:last-child a {
      background: none;
      font-size: var(--bs-nav-link-font-size);
      padding: var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);
      margin: 0;
      border: none;
      color: #23517a !important;
      text-align: left;
      line-height: unset;
      height: unset;
      width: unset; }
    .navbar-collapse > ul.nav .dropdown-menu {
      margin-top: 0;
      right: 0px;
      left: unset; }
  section.benefits > div {
    width: calc(100vw - 30px); }
  section.benefits ul:hover li {
    opacity: 1 !important; }
  section.benefits ul li {
    width: 100%; }
    section.benefits ul li:hover {
      transform: none !important; }
  section.how {
    overflow: hidden; }
    section.how .box > div {
      --bs-gutter-x: 0px;
      --bs-gutter-y: 0px;
      margin: 0;
      padding: 0 !important;
      height: auto !important; }
      section.how .box > div > div:last-child {
        padding: 20px; }
    section.how video.w-100,
    section.how img.w-100 {
      height: 300px;
      width: 100%;
      object-fit: contain;
      object-repeat: repeat-x;
      max-width: none !important;
      border-bottom: 1px solid #60758a40; }
    section.how img.report {
      background: url(/images/report-bg.jpg);
      background-size: 100% 100%; }
  .lifecycle {
    --node-width: 20vw !important;
    --node-height: 50px !important;
    --arrow-height: 60vw !important;
    --arrow-width: calc(0.4 * var(--arrow-height)) !important;
    transform: scale(0.9, 0.9); }
    .lifecycle label {
      display: none; }
    .lifecycle .bubble {
      width: 60px !important;
      height: 60px !important; }
    .lifecycle .node:first-child:before {
      content: url(/images/arrow-top-left-sm.svg) !important; }
    .lifecycle .node:first-child:after {
      content: url(/images/arrow-top-right-sm.svg) !important; }
    .lifecycle .node:nth-child(4):before {
      content: url(/images/arrow-bottom-left-sm.svg) !important; }
    .lifecycle .node:nth-child(4):after {
      content: url(/images/arrow-bottom-right-sm.svg) !important; }
    .lifecycle .node:nth-child(2) .bubble:nth-of-type(1) {
      margin-left: -100px !important; }
    .lifecycle .node:nth-child(4) .bubble:nth-of-type(1) {
      margin-top: -180px !important; }
    .lifecycle .node:nth-child(3) .bubble:nth-of-type(2) {
      margin-left: 90px !important; }
    .lifecycle .node:nth-child(3) .bubble:nth-of-type(1) {
      margin-top: -30px !important; }
    .lifecycle .node:nth-child(2) .bubble:nth-of-type(2) {
      margin-left: 70px !important; }
  footer {
    padding: 0 15px; }
    footer div.bottom h3:before {
      top: 13px; } }

.aiact-risk-classification {
  margin: 50px 10px;
  box-shadow: 0px 0px 0px 1px rgba(38, 46, 98, 0.03), 0px 10px 32px 0px rgba(38, 46, 98, 0.08), 0px 1px 1px 0px rgba(38, 46, 98, 0.03), 0px 4px 6px 0px rgba(38, 46, 98, 0.04), 0px 1px 1px 0px rgba(38, 46, 98, 0.07), 0px 24px 68px 0px rgba(38, 46, 98, 0.06);
  border-radius: 15px;
  position: relative;
  /* left and right pane */ }
  .aiact-risk-classification h3 {
    margin: 20px 0 10px 0;
    text-transform: uppercase;
    font-size: 20px;
    font-weight: bold;
    color: var(--color);
    background: white;
    display: inline-block;
    padding-left: 5px;
    padding-right: 5px;
    /* background line */ }
    .aiact-risk-classification h3::before {
      content: '';
      position: absolute;
      left: 0;
      right: 0;
      top: 32px;
      height: 1.5px;
      background-color: var(--color);
      z-index: -1; }
  .aiact-risk-classification > div {
    padding: 0;
    position: relative;
    /* sub blocks with background */ }
    .aiact-risk-classification > div > div {
      text-align: left;
      padding: 12px 15px;
      margin: 15px;
      border-radius: 10px;
      background: color-mix(in srgb, var(--color) 10%, transparent); }
      .aiact-risk-classification > div > div h4 {
        font-weight: 600;
        font-size: 17px;
        color: black;
        display: inline-flex;
        align-content: center; }
        .aiact-risk-classification > div > div h4 svg {
          width: 20px;
          height: 20px;
          margin-right: 10px; }
          .aiact-risk-classification > div > div h4 svg * {
            fill: var(--color); }
      .aiact-risk-classification > div > div p {
        color: #60758a;
        font-size: 13px; }
      .aiact-risk-classification > div > div > svg {
        display: block;
        width: 170px;
        margin: 0 auto 20px; }
  .aiact-risk-classification ul.purpose-risk {
    display: flex;
    padding: 0;
    margin: 0; }
    .aiact-risk-classification ul.purpose-risk li:first-child {
      text-align: end;
      margin-right: 10px; }
    .aiact-risk-classification ul.purpose-risk li:last-child {
      margin-left: 10px; }
    .aiact-risk-classification ul.purpose-risk h5 {
      color: black;
      font-size: 14px; }
    .aiact-risk-classification ul.purpose-risk h5 + p {
      margin: 0;
      line-height: 1.4; }
  .aiact-risk-classification > div:first-child {
    --color: #007bff; }
    @media only screen and (min-width: 768px) {
      .aiact-risk-classification > div:first-child {
        border-right: 1px solid rgba(0, 0, 0, 0.08); } }
    .aiact-risk-classification > div:first-child h3 {
      padding-left: 17px; }
  .aiact-risk-classification > div:last-child {
    --color: #4add4a;
    text-align: right; }
    .aiact-risk-classification > div:last-child h3 {
      padding-right: 17px; }
