@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Inter:opsz,wght@14..32,100..900&family=Space+Grotesk:wght@300..700&display=swap");
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html {
  font-size: 62.5%;
  margin: 0;
}

body {
  font-family: "Inter", sans-serif;
  font-size: 1.6rem;
  line-height: 1.5;
  color: #101931;
  background-color: #EFF2F9;
}

h1, h2 {
  font-family: "Space Grotesk", sans-serif;
}

.fixed-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1000;
  background-color: #101931;
  padding: 1.6rem 2.4rem;
  transform: translateY(-100%);
  opacity: 0;
  transition: transform 0.3s ease, opacity 0.3s ease;
}
.fixed-header.visible {
  transform: translateY(0);
  opacity: 1;
}
.fixed-header_container {
  max-width: 140rem;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 2.4rem;
}
.fixed-header_logo {
  flex: 1;
}
.fixed-header_logo img {
  height: 2rem;
}
.fixed-header_nav {
  display: flex;
  gap: 2.4rem;
}
.fixed-header_nav li {
  list-style: none;
}
.fixed-header_nav li a {
  text-decoration: none;
  color: rgba(239, 242, 249, 0.8);
  font-weight: 500;
}
.fixed-header_nav li a:hover {
  color: #EFF2F9;
}
.fixed-header_nav li.active a {
  color: #EFF2F9;
}
.fixed-header .btn {
  padding: 0.8rem 1.6rem;
  font-size: 1.4rem;
}

.has-dropdown {
  position: relative;
}
.has-dropdown > a {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
}
.has-dropdown > a .chevron {
  transition: transform 0.3s ease;
}
.has-dropdown:hover > a .chevron {
  transform: rotate(180deg);
}
.has-dropdown:hover .dropdown-menu {
  opacity: 1;
  visibility: visible;
  transform: translateX(-50%) translateY(1.2rem);
  pointer-events: auto;
}
.has-dropdown:hover .dropdown-menu.dropdown-solutions {
  transform: translateX(-75%) translateY(1.2rem);
}

.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%) translateY(1.2rem);
  background-color: #FFFFFF;
  border-radius: 12px;
  padding: 1.6rem;
  min-width: 28rem;
  box-shadow: 0 12px 40px rgba(16, 25, 49, 0.15);
  border: 1px solid rgba(180, 189, 212, 0.4);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: all 0.3s ease;
  z-index: 1000;
  text-align: left;
}
.dropdown-menu::before {
  content: "";
  position: absolute;
  top: -2rem;
  left: 0;
  right: 0;
  height: 2rem;
}
.dropdown-menu.dropdown-platforms {
  min-width: 32rem;
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
}
.dropdown-menu.dropdown-solutions {
  min-width: -moz-max-content;
  min-width: max-content;
  transform: translateX(-75%) translateY(1.2rem);
}
.dropdown-menu.dropdown-solutions .dropdown-columns {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.6rem;
}
.dropdown-menu a {
  color: #101931 !important;
  font-weight: 500 !important;
}
.dropdown-menu a:hover {
  color: #101931 !important;
}
.dropdown-menu .dropdown-item {
  display: flex !important;
  align-items: flex-start;
  gap: 1.2rem;
  padding: 1.2rem;
  border-radius: 8px;
  text-decoration: none;
  transition: background-color 0.2s ease;
}
.dropdown-menu .dropdown-item:hover {
  background-color: #EFF2F9;
}
.dropdown-menu .dropdown-item:hover .dropdown-icon {
  background-color: #16D9A8;
  color: #101931;
}
.dropdown-menu .dropdown-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 4rem;
  height: 4rem;
  border-radius: 8px;
  background-color: rgba(16, 25, 49, 0.05);
  color: #101931;
  flex-shrink: 0;
  transition: all 0.2s ease;
}
.dropdown-menu .dropdown-icon svg {
  width: 2rem;
  height: 2rem;
}
.dropdown-menu .dropdown-content {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
}
.dropdown-menu .dropdown-content .title {
  font-weight: 600;
  font-size: 1.5rem;
}
.dropdown-menu .dropdown-content .desc {
  font-size: 1.3rem;
  color: rgba(16, 25, 49, 0.7) !important;
  line-height: 1.4;
  font-weight: 400 !important;
}
.dropdown-menu .dropdown-columns {
  display: flex;
  gap: 3.2rem;
}
.dropdown-menu .dropdown-col {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
  flex: 1;
}
.dropdown-menu .dropdown-col .col-title {
  font-size: 1.2rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #101931;
  font-weight: 600;
  padding: 0 1.2rem;
  margin-bottom: 0.4rem;
  opacity: 0.6;
  white-space: nowrap;
}
.dropdown-menu .dropdown-col a {
  display: block;
  color: rgba(16, 25, 49, 0.8) !important;
  text-decoration: none;
  font-size: 1.4rem;
  padding: 0.8rem 1.2rem;
  border-radius: 6px;
  transition: all 0.2s ease;
  white-space: nowrap;
}
.dropdown-menu .dropdown-col a:hover {
  color: #101931 !important;
  background-color: #EFF2F9;
}

.mobile-only-btn {
  display: none;
}

.btn {
  display: inline-flex;
  padding: 1rem 2.4rem;
  align-items: center;
  gap: 2px;
  border-radius: 100px;
  background: #16D9A8;
  box-shadow: 0 0 0 2px #16D9A8 inset, 0 0 0 3px rgba(255, 255, 255, 0.48) inset, 0 4px 16px 0 rgba(22, 217, 168, 0.24);
  text-decoration: none;
  color: #101931;
  font-weight: 500;
  font-size: 1.6rem;
  line-height: 1.5;
  transition: all 0.3s ease;
}

.hero {
  margin: 2.4rem 2.4rem 0 2.4rem;
  border-radius: 24px;
  background: url("../media/images/g-bg-1.jpg") no-repeat center center;
  background-size: cover;
  min-height: calc(90svh - 4.8rem);
}
.hero_heading {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 3.2rem;
}
.hero_heading--nav {
  display: flex;
  gap: 2.4rem;
}
.hero_heading--nav li {
  list-style: none;
}
.hero_heading--nav li a {
  text-decoration: none;
  color: rgba(239, 242, 249, 0.8);
  font-weight: 500;
}
.hero_heading--nav li a:hover {
  color: #EFF2F9;
}
.hero_heading--nav li.active a {
  color: #EFF2F9;
}
.hero_content {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 3.2rem;
  text-align: center;
}
.hero_content h1 {
  max-width: 65rem;
  font-size: 4.8rem;
  line-height: 1.1;
  font-weight: 400;
  color: #EFF2F9;
  margin-bottom: 1.6rem;
}
.hero_content h1 span {
  color: #16D9A8;
  font-weight: 700;
}
.hero_content p {
  font-size: 1.8rem;
  font-weight: 400;
  color: #B4BDD4;
  margin-bottom: 4rem;
}
.hero_content--cta {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1.6rem;
}
.hero_content--cta a {
  text-decoration: none;
}

.hero-pipeline-window {
  position: relative;
  width: 85%;
  max-width: 100rem;
  min-height: 48rem;
  background-color: #FFFFFF;
  border-radius: 1.6rem;
  padding: 1.2rem;
  margin: -8rem auto 8rem auto;
  border: solid 0.1rem rgba(180, 189, 212, 0.4);
}
.hero-pipeline-window::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 70%;
  height: 8rem;
  background: rgba(16, 25, 49, 0.16);
  filter: blur(5rem);
  border-radius: 50%;
  z-index: -1;
  transform: translate(-50%, 50%);
}
.hero-pipeline-window .window_buttons {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 0.6rem;
  margin-bottom: 1.2rem;
}
.hero-pipeline-window .window_buttons .button {
  width: 1.6rem;
  height: 1.6rem;
  border-radius: 50%;
  background-color: #B4BDD4;
}
.hero-pipeline-window .window_buttons .button.red {
  background-color: #FE5F57;
}
.hero-pipeline-window .window_buttons .button.yellow {
  background-color: #FEBC2D;
}
.hero-pipeline-window .window_buttons .button.green {
  background-color: #28C83F;
}
.hero-pipeline-window .pipeline-ui {
  background: #F8FAFF;
  border-radius: 1.2rem;
  height: 100%;
  min-height: 45rem;
  padding: 4rem 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.6rem;
  border: 1px solid rgba(180, 189, 212, 0.2);
}
.hero-pipeline-window .pl-column {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 2.4rem;
  z-index: 10;
}
.hero-pipeline-window .pl-column.pl-inputs {
  flex: 0 0 26rem;
  margin-left: -10rem;
}
.hero-pipeline-window .pl-column.pl-outputs {
  flex: 0 0 26rem;
  margin-right: -10rem;
}
.hero-pipeline-window .pl-column.pl-center {
  flex: 0 0 28rem;
  align-items: center;
  z-index: 20;
}
.hero-pipeline-window .pl-column.pl-pipes {
  flex: 0 0 14rem;
  height: 30rem;
  position: relative;
}
.hero-pipeline-window .pl-column.pl-pipes .pipe-svg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: visible;
}
.hero-pipeline-window .pl-column.pl-pipes .pipe-svg .p-line {
  fill: none;
  stroke: rgba(180, 189, 212, 0.8);
  stroke-width: 3;
  stroke-dasharray: 6 6;
  animation: dashFlow 20s linear infinite;
}
.hero-pipeline-window .pl-column.pl-pipes .pipe-svg .p-line.out {
  stroke-dasharray: none;
  stroke: rgba(180, 189, 212, 0.6);
}
.hero-pipeline-window .pl-node {
  background: #FFFFFF;
  border-radius: 1.2rem;
  padding: 1.6rem;
  display: flex;
  align-items: center;
  gap: 1.6rem;
  box-shadow: 0 4px 16px rgba(16, 25, 49, 0.04);
  border: 1px solid rgba(180, 189, 212, 0.2);
  transition: transform 0.3s ease;
  position: relative;
}
.hero-pipeline-window .pl-node:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(16, 25, 49, 0.08);
}
.hero-pipeline-window .pl-node.in-node {
  animation: nodePulse 3s ease-in-out infinite;
}
.hero-pipeline-window .pl-node.in-node .pl-icon {
  width: 4rem;
  height: 4rem;
  border-radius: 1rem;
  background: rgba(16, 25, 49, 0.04);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #101931;
}
.hero-pipeline-window .pl-node.in-node span {
  font-size: 1.4rem;
  font-weight: 500;
  color: #101931;
}
.hero-pipeline-window .pl-node.in-node.in-1 {
  animation-delay: 0s;
}
.hero-pipeline-window .pl-node.in-node.in-2 {
  animation-delay: 1s;
}
.hero-pipeline-window .pl-node.in-node.in-3 {
  animation-delay: 2s;
}
.hero-pipeline-window .pl-node.out-node {
  flex-direction: column;
  align-items: stretch;
  gap: 1.6rem;
}
.hero-pipeline-window .pl-node.out-node .out-header {
  display: flex;
  align-items: center;
  gap: 1.2rem;
}
.hero-pipeline-window .pl-node.out-node .pl-icon {
  width: 4.8rem;
  height: 4.8rem;
  border-radius: 1.2rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
.hero-pipeline-window .pl-node.out-node .pl-icon.purple {
  background: rgba(144, 72, 216, 0.1);
  color: #9048D8;
}
.hero-pipeline-window .pl-node.out-node .pl-icon.blue {
  background: rgba(35, 100, 226, 0.1);
  color: #2364E2;
}
.hero-pipeline-window .pl-node.out-node .out-title {
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
}
.hero-pipeline-window .pl-node.out-node .out-title h4 {
  font-size: 1.5rem;
  font-weight: 600;
  color: #101931;
}
.hero-pipeline-window .pl-node.out-node .out-title span {
  font-size: 1.2rem;
  color: rgba(16, 25, 49, 0.6);
}
.hero-pipeline-window .pl-node.out-node .out-status {
  display: flex;
  align-items: center;
  gap: 1.2rem;
}
.hero-pipeline-window .pl-node.out-node .out-status .process-bar {
  flex: 1;
  height: 0.6rem;
  background: rgba(180, 189, 212, 0.2);
  border-radius: 0.3rem;
  overflow: hidden;
  position: relative;
}
.hero-pipeline-window .pl-node.out-node .out-status .process-bar .fill {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  border-radius: 0.3rem;
  width: 100%;
  transform-origin: left;
}
.hero-pipeline-window .pl-node.out-node .out-status .process-bar .fill.purple-fill {
  background: #9048D8;
  animation: barFillLoop 3s ease-in-out infinite;
}
.hero-pipeline-window .pl-node.out-node .out-status .process-bar .fill.blue-fill {
  background: #2364E2;
  animation: barFillLoop 4s ease-in-out infinite;
}
.hero-pipeline-window .pl-node.out-node .out-status .status-txt {
  font-size: 1.2rem;
  font-weight: 500;
  color: rgba(16, 25, 49, 0.6);
  min-width: 6.4rem;
}
.hero-pipeline-window .pl-core-engine {
  position: relative;
  width: 24rem;
  height: 24rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
.hero-pipeline-window .pl-core-engine .pl-core-rings {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.hero-pipeline-window .pl-core-engine .pl-core-rings .ring {
  position: absolute;
  border-radius: 50%;
  border: 1px solid rgba(22, 217, 168, 0.3);
}
.hero-pipeline-window .pl-core-engine .pl-core-rings .ring.r-1 {
  width: 12rem;
  height: 12rem;
  border-style: dashed;
  animation: spin 10s linear infinite;
}
.hero-pipeline-window .pl-core-engine .pl-core-rings .ring.r-2 {
  width: 18rem;
  height: 18rem;
  border: 2px solid rgba(22, 217, 168, 0.1);
  animation: spinReverse 15s linear infinite;
}
.hero-pipeline-window .pl-core-engine .pl-core-rings .ring.r-3 {
  width: 24rem;
  height: 24rem;
  border: 1px dashed rgba(22, 217, 168, 0.2);
  animation: spin 25s linear infinite;
}
.hero-pipeline-window .pl-core-engine .pl-core-center {
  position: relative;
  width: 10rem;
  height: 10rem;
  background: radial-gradient(circle at center, #101931 40%, rgba(22, 217, 168, 0.1) 100%);
  border-radius: 50%;
  box-shadow: 0 0 0 8px rgba(22, 217, 168, 0.1), 0 0 20px 4px rgba(22, 217, 168, 0.4), 0 12px 32px rgba(22, 217, 168, 0.2);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 20;
  animation: corePulse 1.5s ease-in-out infinite alternate;
}
.hero-pipeline-window .pl-core-engine .pl-core-center .pl-core-icon {
  color: #101931;
  animation: iconFloat 3s ease-in-out infinite alternate;
  filter: drop-shadow(0 0 8px rgba(22, 217, 168, 0.6));
}
.hero-pipeline-window .pl-core-engine .pl-core-center .pl-core-icon svg {
  fill: #FFFFFF !important;
}
.hero-pipeline-window .pl-core-engine .pl-core-center::before, .hero-pipeline-window .pl-core-engine .pl-core-center::after {
  content: "";
  position: absolute;
  inset: -4px;
  border-radius: 50%;
  background: conic-gradient(from 0deg, transparent 0deg, rgba(22, 217, 168, 0.4) 90deg, transparent 180deg);
  z-index: -1;
  animation: spin 2s linear infinite;
}
.hero-pipeline-window .pl-core-engine .pl-core-center::after {
  inset: -8px;
  background: conic-gradient(from 180deg, transparent 0deg, rgba(144, 72, 216, 0.4) 90deg, transparent 180deg);
  animation: spinReverse 3s linear infinite;
  opacity: 0.7;
}
.hero-pipeline-window .pl-core-engine .pl-orbit-tags {
  position: absolute;
  inset: -4rem;
  pointer-events: none;
}
.hero-pipeline-window .pl-core-engine .pl-orbit-tags .pl-tag {
  position: absolute;
  padding: 0.6rem 1.2rem;
  background: #FFFFFF;
  border-radius: 100px;
  font-size: 1.2rem;
  font-weight: 600;
  color: #101931;
  box-shadow: 0 4px 12px rgba(16, 25, 49, 0.08);
  border: 1px solid rgba(16, 25, 49, 0.15);
  white-space: nowrap;
}
.hero-pipeline-window .pl-core-engine .pl-orbit-tags .pl-tag.tag-1 {
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
  animation: floatTag 3s ease-in-out infinite 1s;
}
.hero-pipeline-window .pl-core-engine .pl-orbit-tags .pl-tag.tag-2 {
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 50%);
  animation: floatTag 3s ease-in-out infinite 1.5s;
}
.hero-pipeline-window .pl-core-engine .pl-orbit-tags .pl-tag.tag-3 {
  left: 0;
  top: 50%;
  transform: translate(-50%, -50%);
  animation: floatTag 3s ease-in-out infinite 0.75s;
}
.hero-pipeline-window .pl-core-engine .pl-orbit-tags .pl-tag.tag-4 {
  right: 0;
  top: 50%;
  transform: translate(50%, -50%);
  animation: floatTag 3s ease-in-out infinite 2.25s;
}
@keyframes dashFlow {
  to {
    stroke-dashoffset: -100;
  }
}
@keyframes corePulse {
  0% {
    transform: scale(0.95);
    box-shadow: 0 0 0 4px rgba(22, 217, 168, 0.1), 0 8px 24px rgba(22, 217, 168, 0.15);
  }
  100% {
    transform: scale(1.05);
    box-shadow: 0 0 0 12px rgba(22, 217, 168, 0.2), 0 16px 40px rgba(22, 217, 168, 0.4);
  }
}
@keyframes iconFloat {
  0% {
    transform: translateY(-3px);
  }
  100% {
    transform: translateY(3px);
  }
}
@keyframes spin {
  100% {
    transform: rotate(360deg);
  }
}
@keyframes spinReverse {
  100% {
    transform: rotate(-360deg);
  }
}
@keyframes floatTag {
  0%, 100% {
    margin-top: 0;
  }
  50% {
    margin-top: -6px;
  }
}
@keyframes nodePulse {
  0%, 100% {
    border-color: rgba(180, 189, 212, 0.2);
  }
  50% {
    border-color: rgba(22, 217, 168, 0.6);
  }
}
@keyframes barFillLoop {
  0% {
    transform: scaleX(0);
  }
  40%, 60% {
    transform: scaleX(1);
  }
  100% {
    transform: scaleX(1);
    opacity: 0;
  }
}
section {
  width: 100%;
}
section > .wrapper {
  max-width: 140rem;
  margin: 0 auto;
  padding: 0 2.4rem;
}

.models {
  margin-top: 5.6rem;
  margin-bottom: 10.4rem;
}
.models_container {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 4rem;
}
.models_container li {
  list-style: none;
}

.features {
  background: linear-gradient(180deg, rgba(239, 242, 249, 0) 0%, rgba(255, 255, 255, 0.64) 15%);
  padding-bottom: 9.6rem;
}
.features h2 {
  text-align: center;
  font-size: 3.2rem;
  font-weight: 400;
  line-height: 1.4;
}
.features h2 .break-desktop {
  display: block;
}
.features h2 .icon {
  height: 3.2rem;
  width: 3.2rem;
  border-radius: 0.8rem;
  background-color: #16D9A8;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.features h2 .icon svg {
  height: 1.8rem;
  width: 1.8rem;
}
.features h2 .icon.no-fill {
  background-color: transparent;
  vertical-align: -20%;
}
.features h2 .icon.no-fill svg {
  height: 3.2rem;
  width: 3.2rem;
}
.features_grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: 1fr 9.6rem;
  grid-column-gap: 2.4rem;
  grid-row-gap: 2.4rem;
  min-height: 47.6rem;
  margin-top: 5.6rem;
}
.features_grid .feature {
  background-color: #FFFFFF;
  border-radius: 2.4rem;
}
.features_grid .feature.files {
  grid-area: 1/1/2/2;
  background: url("../media/images/files_bg.jpg") no-repeat center center;
  background-size: 150%;
  position: relative;
}
.features_grid .feature.files.revealed {
  animation: panFilesBg 10s ease-out forwards;
}
.features_grid .feature.files .files_visual {
  position: relative;
  width: 100%;
  background-color: #101931;
  background: url("../media/svg/document.svg") no-repeat center center;
  background-size: contain;
  top: -3.2rem;
}
.features_grid .feature.files .files_container {
  position: absolute;
  width: calc(100% - 2.4rem);
  bottom: 1.2rem;
  left: 1.2rem;
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
  padding: 1.6rem;
  border-radius: 1.2rem;
  background: #FFFFFF;
  box-shadow: 0 0.2rem 0.8rem 0 rgba(16, 25, 49, 0.08);
}
.features_grid .feature.files .files_container p {
  font-size: 1.6rem;
  line-height: 1.4;
  color: #101931;
  width: 100%;
  max-width: 32rem;
}
.features_grid .feature.files .files_container .files_footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.features_grid .feature.files .files_container .files_footer--formats {
  display: flex;
  gap: 0.4rem;
}
.features_grid .feature.files .files_container .files_footer--formats .format {
  padding: 0.6rem 0.8rem;
  border-radius: 0.6rem;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1;
}
.features_grid .feature.files .files_container .files_footer--formats .format.green {
  background: #B3F28C;
  color: #346217;
}
.features_grid .feature.files .files_container .files_footer--formats .format.red {
  background: #FFA5A5;
  color: #8F2727;
}
.features_grid .feature.files .files_container .files_footer--formats .format.blue {
  background: #9DD5FF;
  color: #155586;
}
.features_grid .feature.files .files_container .files_footer--txt {
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.4;
  opacity: 0.5;
}
.features_grid .feature.flow {
  grid-area: 1/2/2/3;
  background: #EBF1FF;
  padding: 4rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 4rem;
}
.features_grid .feature.flow .flow_title {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.features_grid .feature.flow .flow_title p {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.2;
  min-width: 24rem;
  width: 50%;
  color: #101931;
}
.features_grid .feature.flow .flow_visual {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
}
.features_grid .feature.flow .flow_visual .flow_line {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.6rem;
}
.features_grid .feature.flow .flow_visual .flow_line .box {
  display: flex;
  border-radius: 1.2rem;
  background: #FFFFFF;
  box-shadow: 0 2px 8px 0 rgba(16, 25, 49, 0.08);
  padding: 1.6rem;
  height: 8rem;
  min-height: 8rem;
  min-width: 8rem;
  flex: 1;
  gap: 0.8rem;
  opacity: 0;
  transform: translateY(16px);
}
.features_grid .feature.flow .flow_visual .flow_line .box.icon-only {
  padding: 0;
  max-height: 4.8rem;
  max-width: 4.8rem;
  justify-content: center;
  align-items: center;
}
.features_grid .feature.flow .flow_visual .flow_line .box.icon-only .box_icon {
  width: 4rem;
  height: 4rem;
}
.features_grid .feature.flow .flow_visual .flow_line .box_icon {
  width: 4.8rem;
  height: 4.8rem;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
}
.features_grid .feature.flow .flow_visual .flow_line .box_skelatons {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 0.4rem;
  width: 100%;
}
.features_grid .feature.flow .flow_visual .flow_line .box_skelatons .skelaton {
  height: 0.8rem;
  border-radius: 0.2rem;
  width: 100%;
  background-color: #B4BDD4;
}
.features_grid .feature.flow .flow_visual .flow_line .box_skelatons .skelaton.last {
  margin-top: 0.6rem;
}
.features_grid .feature.flow .flow_visual .flow_line .arrow {
  height: 100%;
  width: 4.8rem;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  opacity: 0;
  transform: translateX(-16px);
}
.features_grid .feature.flow .flow_visual .flow_line .arrow.right {
  background-image: url("../media/svg/arrow-right.svg");
}
.features_grid .feature.flow .flow_visual .flow_line .arrow.down_left {
  background-image: url("../media/svg/arrow-down-left.svg");
}
.features_grid .feature.flow.revealed .flow_visual .flow_line .box {
  animation: flowReveal 0.6s cubic-bezier(0.22, 1, 0.36, 1) forwards !important;
}
.features_grid .feature.flow.revealed .flow_visual .flow_line .arrow {
  animation: flowRevealArrow 0.6s cubic-bezier(0.22, 1, 0.36, 1) forwards !important;
}
.features_grid .feature.flow.revealed .flow_visual .flow_line:nth-child(1) .box:first-child {
  animation-delay: 0.1s !important;
}
.features_grid .feature.flow.revealed .flow_visual .flow_line:nth-child(1) .arrow {
  animation-delay: 0.5s !important;
}
.features_grid .feature.flow.revealed .flow_visual .flow_line:nth-child(1) .box:last-child {
  animation-delay: 0.9s !important;
}
.features_grid .feature.flow.revealed .flow_visual .flow_line:nth-child(2) .arrow {
  animation-delay: 1.3s !important;
}
.features_grid .feature.flow.revealed .flow_visual .flow_line:nth-child(2) .box {
  animation-delay: 1.7s !important;
}
.features_grid .feature.tasks {
  grid-area: 1/3/2/4;
  display: flex;
}
.features_grid .feature.tasks .tasks_visual.chat-visual {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  border-radius: 1.6rem;
  overflow: hidden;
  background: url("../media/images/g-bg-1.jpg") no-repeat center center;
  background-size: cover;
  padding: 3.2rem 2.4rem 0 2.4rem;
  position: relative;
}
.features_grid .feature.tasks .tasks_visual.chat-visual .chat-visual_title {
  width: 100%;
  text-align: left;
}
.features_grid .feature.tasks .tasks_visual.chat-visual .chat-visual_title p {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.3;
  color: #FFFFFF;
  max-width: 24rem;
  margin-bottom: 1.6rem;
}
.features_grid .feature.tasks .tasks_visual.chat-visual .chat-interface.cropped {
  min-height: unset;
  width: 100%;
  max-width: 100%;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  transform: translateY(100%);
  opacity: 0;
  border: none;
  box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.15);
}
.features_grid .feature.tasks .tasks_visual.chat-visual .chat-interface.cropped .chat-header {
  padding: 1.2rem;
  gap: 0.8rem;
}
.features_grid .feature.tasks .tasks_visual.chat-visual .chat-interface.cropped .chat-header_icon {
  width: 2.4rem;
  height: 2.4rem;
}
.features_grid .feature.tasks .tasks_visual.chat-visual .chat-interface.cropped .chat-messages {
  padding: 1.6rem;
  min-height: 22rem;
  padding-bottom: 2rem;
  gap: 1.2rem;
  background: #FAFBFD;
  position: relative;
  overflow: hidden;
}
.features_grid .feature.tasks .tasks_visual.chat-visual .chat-interface.cropped .chat-messages .chat-message {
  opacity: 0;
  transform: translateY(10px);
}
.features_grid .feature.tasks .tasks_visual.chat-visual .chat-interface.cropped .chat-messages .chat-message p {
  padding: 0.8rem 1.2rem;
  font-size: 1.2rem;
}
.features_grid .feature.tasks .tasks_visual.chat-visual .chat-interface.cropped .chat-messages .chat-message.typing-indicator {
  background: #FFFFFF;
  padding: 0.8rem 1.2rem;
  border-radius: 1.6rem 1.6rem 1.6rem 0.4rem;
  box-shadow: 0 2px 8px rgba(16, 25, 49, 0.06);
  display: flex;
  gap: 0.4rem;
  align-items: center;
  width: -moz-fit-content;
  width: fit-content;
}
.features_grid .feature.tasks .tasks_visual.chat-visual .chat-interface.cropped .chat-messages .chat-message.typing-indicator .dot {
  width: 0.6rem;
  height: 0.6rem;
  background: #B4BDD4;
  border-radius: 50%;
  animation: typingDot 1.4s infinite ease-in-out both;
}
.features_grid .feature.tasks .tasks_visual.chat-visual .chat-interface.cropped .chat-messages .chat-message.typing-indicator .dot:nth-child(1) {
  animation-delay: -0.32s;
}
.features_grid .feature.tasks .tasks_visual.chat-visual .chat-interface.cropped .chat-messages .chat-message.typing-indicator .dot:nth-child(2) {
  animation-delay: -0.16s;
}
.features_grid .feature.tasks .tasks_visual.chat-visual .chat-interface.cropped .chat-messages .chat-message.ai.reply p {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
  width: 18rem;
}
.features_grid .feature.tasks .tasks_visual.chat-visual .chat-interface.cropped .chat-messages .chat-message.ai.reply p .skelaton {
  height: 0.6rem;
  background: #E2E8F0;
  border-radius: 0.2rem;
  width: 100%;
}
.features_grid .feature.tasks .tasks_visual.chat-visual .chat-interface.cropped .chat-messages .chat-message.ai.reply p .skelaton.short {
  width: 65%;
}
.features_grid .feature.tasks.revealed .tasks_visual.chat-visual .chat-interface.cropped {
  animation: slideUpChatVisual 0.8s ease-out forwards;
}
.features_grid .feature.tasks.revealed .tasks_visual.chat-visual .msg-1 {
  animation: msgAppear 0.4s ease-out 0.8s forwards;
}
.features_grid .feature.tasks.revealed .tasks_visual.chat-visual .msg-2 {
  animation: msgAppear 0.4s ease-out 1.4s forwards, msgDisappear 0.4s ease-in 3.4s forwards;
  transform-origin: left bottom;
}
.features_grid .feature.tasks.revealed .tasks_visual.chat-visual .msg-3 {
  animation: msgAppear 0.4s ease-out 3.8s forwards;
}
.features_grid .feature.insight {
  background-color: #16D9A8;
  display: flex;
  align-items: center;
  gap: 1.2rem;
}
.features_grid .feature.insight .insight_content {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: 1.2rem;
  line-height: 0.7;
  padding: 2.4rem;
}
.features_grid .feature.insight .insight_content > span {
  font-size: 4rem;
  display: flex;
  align-items: baseline;
}
.features_grid .feature.insight .insight_content > span .counter {
  font-size: 4rem;
}
.features_grid .feature.insight .insight_content > span > span:not(.counter) {
  font-size: 3.2rem;
}
.features_grid .feature.insight .insight_content p {
  font-size: 1.8rem;
}

@keyframes panFilesBg {
  0% {
    background-position: 0% 50%;
  }
  100% {
    background-position: 100% 50%;
  }
}
@keyframes flowReveal {
  0% {
    opacity: 0;
    transform: translateY(16px) scale(0.95);
    box-shadow: 0 0px 0px 0 rgba(16, 25, 49, 0);
  }
  100% {
    opacity: 1;
    transform: translateY(0) scale(1);
    box-shadow: 0 8px 24px 0 rgba(16, 25, 49, 0.12);
  }
}
@keyframes flowRevealArrow {
  0% {
    opacity: 0;
    transform: translateX(-16px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes floatingCardAppear {
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes timelineGrow {
  to {
    transform: scaleY(1);
  }
}
@keyframes laserScan {
  0% {
    transform: translateY(0);
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  90% {
    opacity: 1;
    transform: translateY(12rem);
  }
  100% {
    transform: translateY(12rem);
    opacity: 0;
  }
}
@keyframes popIn {
  to {
    opacity: 1;
    transform: translate(0, 0) scale(1);
  }
}
@keyframes popIn3D {
  to {
    opacity: 1;
    transform: translateZ(var(--tz)) scale(1);
  }
}
@keyframes slideInLeft {
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes slideInRight {
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes popInScale {
  to {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes msgAppear {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes msgDisappear {
  to {
    opacity: 0;
    max-height: 0;
    padding: 0;
    margin: 0;
    border: 0;
    overflow: hidden;
  }
}
@keyframes typingDot {
  0%, 80%, 100% {
    transform: scale(0);
  }
  40% {
    transform: scale(1);
  }
}
@keyframes processTaskIcon {
  0% {
    transform: rotate(0deg);
    background-image: url("../media/svg/item-loading.svg");
  }
  99% {
    transform: rotate(360deg);
    background-image: url("../media/svg/item-loading.svg");
  }
  100% {
    transform: rotate(360deg);
    background-image: url("../media/svg/item-done.svg");
  }
}
@keyframes slideUpChatVisual {
  from {
    transform: translateY(100%);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}
.solutions {
  padding: 8.8rem 0 6.4rem 0;
}
.solutions h2 {
  text-align: center;
  font-size: 2.4rem;
  font-size: 700;
  line-height: 1;
}
.solutions h2 > div {
  font-size: 3.2rem;
  font-weight: 400;
  line-height: 1.6;
}
.solutions h2 > div > span {
  border-bottom: solid 0.2rem #16D9A8;
}
.solutions_container {
  display: flex;
  gap: 2.4rem;
  margin-top: 4rem;
}
.solutions .solution {
  display: flex;
  flex-direction: column;
  border-radius: 2.4rem;
  background-color: #FFFFFF;
  min-height: 80svh;
  padding: 3.2rem;
  flex: 1;
  gap: 3.2rem;
}
.solutions .solution_container {
  display: flex;
  flex-direction: column;
  flex: 1;
}
.solutions .solution_container .heading {
  display: flex;
  gap: 1.2rem;
  align-items: center;
  margin-bottom: 1.6rem;
}
.solutions .solution_container .heading_icon {
  width: 6.4rem;
  height: 6.4rem;
  border-radius: 1.6rem;
  background-color: #16D9A8;
  background: #16D9A8 url("../media/svg/stars-02.svg") no-repeat center center;
  display: flex;
  align-items: center;
}
.solutions .solution_container .heading_txt {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.solutions .solution_container .heading_txt h3 {
  font-size: 2rem;
}
.solutions .solution_container .heading_txt h4 {
  font-size: 1.4rem;
  font-weight: 500;
  opacity: 0.7;
}
.solutions .solution_container .content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
  gap: 2.4rem;
  flex: 1;
}
.solutions .solution_container .content p {
  width: 80%;
}
.solutions .solution_container .content a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.4rem 0.6rem;
  border-bottom: solid 0.2rem #16D9A8;
  text-decoration: none;
  font-weight: 600;
  color: #101931;
  gap: 0.4rem;
}
.solutions .solution_visual {
  flex: 1;
  background-color: #EBF1FF;
  border-radius: 1.2rem;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  container-type: inline-size;
  container-name: solutionvisual;
}
.solutions .solution_visual.insurgen_visual.open-visual.wow-visual, .solutions .solution_visual.opsgen_visual.open-visual.wow-visual {
  align-items: center;
  padding: 4rem;
  background: url("../media/images/g-bg-3.jpg") no-repeat center center;
  background-size: cover;
  min-height: 38rem;
  position: relative;
  perspective: 1000px;
  overflow: hidden;
  /* InsurGen™ Scanner Visual */
}
.solutions .solution_visual.insurgen_visual.open-visual.wow-visual .wow-scanner, .solutions .solution_visual.opsgen_visual.open-visual.wow-visual .wow-scanner {
  width: 24rem;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 5;
}
.solutions .solution_visual.insurgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc, .solutions .solution_visual.opsgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc {
  width: 100%;
  background: rgba(255, 255, 255, 0.95);
  border-radius: 1.2rem;
  padding: 2.4rem;
  box-shadow: 0 16px 40px rgba(16, 25, 49, 0.1), 0 0 0 1px rgba(255, 255, 255, 0.5);
  position: relative;
  transform-style: preserve-3d;
  transform: rotateX(10deg) rotateY(-5deg);
}
.solutions .solution_visual.insurgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .doc-header, .solutions .solution_visual.opsgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .doc-header {
  display: flex;
  align-items: center;
  gap: 1.2rem;
  margin-bottom: 2rem;
}
.solutions .solution_visual.insurgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .doc-header .doc-icon, .solutions .solution_visual.opsgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .doc-header .doc-icon {
  width: 3.2rem;
  height: 3.2rem;
  background: rgba(22, 217, 168, 0.15);
  border-radius: 0.8rem;
  position: relative;
}
.solutions .solution_visual.insurgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .doc-header .doc-icon::after, .solutions .solution_visual.opsgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .doc-header .doc-icon::after {
  content: "";
  position: absolute;
  inset: 0.8rem;
  background: repeating-linear-gradient(to bottom, #16D9A8, #16D9A8 2px, transparent 2px, transparent 4px);
}
.solutions .solution_visual.insurgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .doc-header .doc-title, .solutions .solution_visual.opsgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .doc-header .doc-title {
  font-size: 1.5rem;
  font-weight: 600;
  color: #101931;
}
.solutions .solution_visual.insurgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .doc-body, .solutions .solution_visual.opsgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .doc-body {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.solutions .solution_visual.insurgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .doc-body .skel, .solutions .solution_visual.opsgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .doc-body .skel {
  height: 0.8rem;
  background: rgba(16, 25, 49, 0.06);
  border-radius: 0.4rem;
}
.solutions .solution_visual.insurgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .doc-body .skel.w-full, .solutions .solution_visual.opsgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .doc-body .skel.w-full {
  width: 100%;
}
.solutions .solution_visual.insurgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .doc-body .skel.w-3-4, .solutions .solution_visual.opsgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .doc-body .skel.w-3-4 {
  width: 75%;
}
.solutions .solution_visual.insurgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .doc-body .skel.w-1-2, .solutions .solution_visual.opsgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .doc-body .skel.w-1-2 {
  width: 50%;
}
.solutions .solution_visual.insurgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .doc-body .skel-box, .solutions .solution_visual.opsgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .doc-body .skel-box {
  height: 6.4rem;
  background: rgba(16, 25, 49, 0.04);
  border-radius: 0.8rem;
  margin-top: 1rem;
  border: 1px dashed rgba(16, 25, 49, 0.1);
}
.solutions .solution_visual.insurgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .scanner-laser, .solutions .solution_visual.opsgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .scanner-laser {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 2px;
  background: #16D9A8;
  box-shadow: 0 0 12px 2px #16D9A8;
  opacity: 0;
}
.solutions .solution_visual.insurgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .wow-insight, .solutions .solution_visual.opsgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .wow-insight {
  position: absolute;
  display: flex;
  align-items: center;
  gap: 1.2rem;
  background: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(8px);
  padding: 1.2rem 1.6rem;
  border-radius: 100px;
  box-shadow: 0 8px 24px rgba(16, 25, 49, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.6);
  z-index: 10;
  opacity: 0;
}
.solutions .solution_visual.insurgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .wow-insight .insight-icon, .solutions .solution_visual.opsgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .wow-insight .insight-icon {
  width: 3.2rem;
  height: 3.2rem;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.solutions .solution_visual.insurgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .wow-insight .insight-icon.green, .solutions .solution_visual.opsgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .wow-insight .insight-icon.green {
  background: rgba(22, 217, 168, 0.15);
  color: #16D9A8;
}
.solutions .solution_visual.insurgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .wow-insight .insight-icon.yellow, .solutions .solution_visual.opsgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .wow-insight .insight-icon.yellow {
  background: rgba(255, 209, 102, 0.15);
  color: #D4A000;
}
.solutions .solution_visual.insurgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .wow-insight .insight-icon.purple, .solutions .solution_visual.opsgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .wow-insight .insight-icon.purple {
  background: rgba(144, 72, 216, 0.15);
  color: #9048D8;
}
.solutions .solution_visual.insurgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .wow-insight .insight-text, .solutions .solution_visual.opsgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .wow-insight .insight-text {
  display: flex;
  flex-direction: column;
  line-height: 1.2;
}
.solutions .solution_visual.insurgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .wow-insight .insight-text span, .solutions .solution_visual.opsgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .wow-insight .insight-text span {
  font-size: 1.1rem;
  color: rgba(16, 25, 49, 0.6);
}
.solutions .solution_visual.insurgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .wow-insight .insight-text strong, .solutions .solution_visual.opsgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .wow-insight .insight-text strong {
  font-size: 1.3rem;
  color: #101931;
  font-weight: 600;
}
.solutions .solution_visual.insurgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .wow-insight.in-1, .solutions .solution_visual.opsgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .wow-insight.in-1 {
  top: -2rem;
  right: -4rem;
  --tz: 40px;
  transform: translateZ(var(--tz)) scale(0.9);
}
.solutions .solution_visual.insurgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .wow-insight.in-2, .solutions .solution_visual.opsgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .wow-insight.in-2 {
  bottom: 6rem;
  left: -4rem;
  --tz: 30px;
  transform: translateZ(var(--tz)) scale(0.9);
}
.solutions .solution_visual.insurgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .wow-insight.in-3, .solutions .solution_visual.opsgen_visual.open-visual.wow-visual .wow-scanner .scanner-doc .wow-insight.in-3 {
  bottom: -2rem;
  right: 2rem;
  --tz: 50px;
  transform: translateZ(var(--tz)) scale(0.9);
}
.solutions .solution_visual.insurgen_visual.open-visual.wow-visual, .solutions .solution_visual.opsgen_visual.open-visual.wow-visual {
  /* OpsGen™ Transformation Visual */
}
.solutions .solution_visual.insurgen_visual.open-visual.wow-visual .wow-transformation, .solutions .solution_visual.opsgen_visual.open-visual.wow-visual .wow-transformation {
  position: relative;
  width: 100%;
  max-width: 38rem;
  height: 28rem;
  z-index: 5;
  margin: 0 auto;
}
.solutions .solution_visual.insurgen_visual.open-visual.wow-visual .wow-transformation .trans-doc, .solutions .solution_visual.opsgen_visual.open-visual.wow-visual .wow-transformation .trans-doc {
  position: absolute;
  top: 0;
  left: 0;
  background: #FFFFFF;
  border-radius: 1.2rem;
  padding: 2.4rem;
  box-shadow: 0 16px 40px rgba(16, 25, 49, 0.08);
  width: 22rem;
  opacity: 0;
  transform: translate(-20px, -20px);
  z-index: 1;
}
.solutions .solution_visual.insurgen_visual.open-visual.wow-visual .wow-transformation .trans-doc .tdoc-header, .solutions .solution_visual.opsgen_visual.open-visual.wow-visual .wow-transformation .trans-doc .tdoc-header {
  font-size: 1.4rem;
  font-weight: 600;
  color: #101931;
  margin-bottom: 1.6rem;
  border-bottom: 1px solid rgba(16, 25, 49, 0.1);
  padding-bottom: 0.8rem;
}
.solutions .solution_visual.insurgen_visual.open-visual.wow-visual .wow-transformation .trans-doc .tdoc-body, .solutions .solution_visual.opsgen_visual.open-visual.wow-visual .wow-transformation .trans-doc .tdoc-body {
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
}
.solutions .solution_visual.insurgen_visual.open-visual.wow-visual .wow-transformation .trans-doc .tdoc-body .skel, .solutions .solution_visual.opsgen_visual.open-visual.wow-visual .wow-transformation .trans-doc .tdoc-body .skel {
  height: 0.6rem;
  background: rgba(16, 25, 49, 0.08);
  border-radius: 0.3rem;
}
.solutions .solution_visual.insurgen_visual.open-visual.wow-visual .wow-transformation .trans-json, .solutions .solution_visual.opsgen_visual.open-visual.wow-visual .wow-transformation .trans-json {
  position: absolute;
  bottom: 0;
  right: 0;
  background: #1E293B;
  border-radius: 1.2rem;
  padding: 2.4rem;
  box-shadow: 0 16px 40px rgba(30, 41, 59, 0.2);
  width: 26rem;
  opacity: 0;
  transform: translate(20px, 20px);
  z-index: 2;
}
.solutions .solution_visual.insurgen_visual.open-visual.wow-visual .wow-transformation .trans-json .json-header, .solutions .solution_visual.opsgen_visual.open-visual.wow-visual .wow-transformation .trans-json .json-header {
  font-size: 1.2rem;
  font-family: monospace;
  color: rgba(255, 255, 255, 0.5);
  margin-bottom: 1.6rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  padding-bottom: 0.8rem;
}
.solutions .solution_visual.insurgen_visual.open-visual.wow-visual .wow-transformation .trans-json .json-body, .solutions .solution_visual.opsgen_visual.open-visual.wow-visual .wow-transformation .trans-json .json-body {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
  font-family: monospace;
  font-size: 1.3rem;
}
.solutions .solution_visual.insurgen_visual.open-visual.wow-visual .wow-transformation .trans-json .json-body .j-line, .solutions .solution_visual.opsgen_visual.open-visual.wow-visual .wow-transformation .trans-json .json-body .j-line {
  color: #FFFFFF;
}
.solutions .solution_visual.insurgen_visual.open-visual.wow-visual .wow-transformation .trans-json .json-body .j-line .k, .solutions .solution_visual.opsgen_visual.open-visual.wow-visual .wow-transformation .trans-json .json-body .j-line .k {
  color: #7DD3FC;
}
.solutions .solution_visual.insurgen_visual.open-visual.wow-visual .wow-transformation .trans-json .json-body .j-line .v, .solutions .solution_visual.opsgen_visual.open-visual.wow-visual .wow-transformation .trans-json .json-body .j-line .v {
  color: #A7F3D0;
}
@container solutionvisual (max-width: 650px) {
  .solutions .solution_visual .wow-scanner {
    flex-direction: column;
    gap: 1.6rem;
    padding: 2.4rem 1.6rem;
    height: auto;
  }
  .solutions .solution_visual .wow-scanner .scanner-doc {
    transform: none;
    width: 100%;
    max-width: 32rem;
    margin-bottom: 2rem;
  }
  .solutions .solution_visual .wow-scanner .scanner-doc .wow-insight {
    position: static;
  }
  .solutions .solution_visual .wow-scanner .scanner-doc .wow-insight.in-1, .solutions .solution_visual .wow-scanner .scanner-doc .wow-insight.in-2, .solutions .solution_visual .wow-scanner .scanner-doc .wow-insight.in-3 {
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
    transform: translateY(0) !important;
    margin-bottom: 1.2rem;
  }
  .solutions .solution_visual .wow-transformation {
    max-width: 32rem;
    height: 24rem;
    padding: 0;
  }
  .solutions .solution_visual .wow-transformation .trans-doc {
    width: 75%;
    padding: 1.6rem;
  }
  .solutions .solution_visual .wow-transformation .trans-json {
    width: 85%;
    padding: 1.6rem;
  }
}
.solutions .solution.revealed .insurgen_visual.wow-visual .scanner-laser {
  animation: laserScan 2.5s ease-in-out infinite;
}
.solutions .solution.revealed .insurgen_visual.wow-visual .in-1 {
  animation: popIn3D 0.5s cubic-bezier(0.22, 1, 0.36, 1) 0.3s forwards;
}
.solutions .solution.revealed .insurgen_visual.wow-visual .in-2 {
  animation: popIn3D 0.5s cubic-bezier(0.22, 1, 0.36, 1) 0.6s forwards;
}
.solutions .solution.revealed .insurgen_visual.wow-visual .in-3 {
  animation: popIn3D 0.5s cubic-bezier(0.22, 1, 0.36, 1) 0.9s forwards;
}
.solutions .solution.revealed .opsgen_visual.wow-visual .trans-doc {
  animation: popIn 0.5s cubic-bezier(0.22, 1, 0.36, 1) 0.2s forwards;
}
.solutions .solution.revealed .opsgen_visual.wow-visual .trans-json {
  animation: popIn 0.5s cubic-bezier(0.22, 1, 0.36, 1) 0.6s forwards;
}
.solutions .cta {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 6.4rem 0 1.6rem 0;
}

.clients .wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4rem;
  flex-direction: row-reverse;
  flex-wrap: wrap;
}
.clients img {
  height: 2.4rem;
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.clients img.big {
  height: 4.8rem;
}

.faq {
  padding: 6.4rem 0;
}
.faq .wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  max-width: 80rem;
  margin: 0 auto;
}
.faq_header {
  text-align: center;
  margin-bottom: 4.8rem;
}
.faq_header h2 {
  font-size: 4rem;
  color: #101931;
  margin-bottom: 1.6rem;
}
.faq_header h2 span {
  color: #16D9A8;
}
.faq_header p {
  font-size: 1.8rem;
  color: rgba(16, 25, 49, 0.7);
}
.faq_container {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
}
.faq_item {
  border: 1px solid rgba(180, 189, 212, 0.4);
  border-radius: 1.2rem;
  background: #EFF2F9;
  overflow: hidden;
  transition: all 0.3s ease;
}
.faq_item.active {
  background: #FFFFFF;
  border-color: #16D9A8;
  box-shadow: 0 8px 24px rgba(16, 25, 49, 0.05);
}
.faq_item.active .faq_question {
  color: #101931;
}
.faq_item.active .faq_question .chevron {
  transform: rotate(180deg);
  color: #16D9A8;
}
.faq_question {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 2.4rem;
  background: none;
  border: none;
  cursor: pointer;
  text-align: left;
  font-family: "Space Grotesk", sans-serif;
  font-size: 2rem;
  font-weight: 600;
  color: #101931;
  transition: all 0.3s ease;
}
.faq_question:hover {
  color: #16D9A8;
}
.faq_question .chevron {
  flex-shrink: 0;
  margin-left: 2rem;
  transition: transform 0.3s ease, color 0.3s ease;
  color: rgba(16, 25, 49, 0.5);
}
.faq_answer {
  height: 0;
  overflow: hidden;
  transition: height 0.3s ease;
}
.faq_answer_content {
  padding: 0 2.4rem 2.4rem 2.4rem;
  font-size: 1.6rem;
  line-height: 1.6;
  color: rgba(16, 25, 49, 0.7);
}

.faq-clients {
  padding: 3.2rem 0;
}
.faq-clients .wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.faq-clients h3 {
  font-size: 1.6rem;
  color: #101931;
  font-family: "Space Grotesk", sans-serif;
}
.faq-clients .clients-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 3.2rem;
  align-items: center;
  justify-content: center;
}
.faq-clients .clients-grid img {
  height: 2.4rem;
  -o-object-fit: contain;
     object-fit: contain;
  opacity: 1;
}
.faq-clients .clients-grid img.big {
  height: 4.8rem;
}

.book {
  padding: 6.4rem 0;
}
.book .wrapper {
  display: flex;
  align-items: stretch;
  gap: 6.4rem;
}
.book_visual {
  flex: 1;
  border-radius: 24px;
  background: radial-gradient(150.25% 82.67% at 53.82% 63.66%, #1C3064 0%, #101931 100%);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 4.8rem;
  position: relative;
  overflow: hidden;
}
.book_visual::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: url("../media/images/g-bg-2.jpg") no-repeat center center;
  background-size: cover;
  opacity: 0.4;
  z-index: 0;
}
.book_visual::after {
  content: "";
  position: absolute;
  width: 50rem;
  height: 50rem;
  background: radial-gradient(circle, rgba(22, 217, 168, 0.15) 0%, rgba(22, 217, 168, 0) 70%);
  border-radius: 50%;
  top: -10rem;
  right: -10rem;
  z-index: 0;
  animation: pulse-glow 8s ease-in-out infinite alternate;
}
@keyframes pulse-glow {
  0% {
    transform: scale(1);
    opacity: 0.5;
  }
  100% {
    transform: scale(1.2);
    opacity: 1;
  }
}
.book_visual .review_carousel {
  position: relative;
  width: 100%;
  max-width: 60rem;
  z-index: 1;
}
.book_visual .review_carousel .review_slides {
  position: relative;
  min-height: 34rem;
}
.book_visual .review_carousel .review_slide {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.5s ease-in-out, visibility 0.5s ease-in-out;
}
.book_visual .review_carousel .review_slide.active {
  opacity: 1;
  visibility: visible;
  position: relative;
}
.book_visual .review_carousel .review_nav {
  display: flex;
  gap: 1.2rem;
  margin-top: 1.6rem;
  padding: 0 3.2rem;
}
.book_visual .review_carousel .review_nav button {
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 50%;
  width: 4rem;
  height: 4rem;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  color: #FFFFFF;
  transition: all 0.3s ease;
}
.book_visual .review_carousel .review_nav button:hover {
  background: #16D9A8;
  border-color: #16D9A8;
  color: #101931;
}
.book_visual .review_carousel .review_nav button svg {
  width: 2rem;
  height: 2rem;
}
.book_visual .review_card {
  padding: 3.2rem;
  color: #FFFFFF;
  width: 100%;
  position: relative;
}
.book_visual .review_card .quote-mark {
  margin-bottom: 3.2rem;
  display: flex;
}
.book_visual .review_card .quote-mark svg {
  width: 4.8rem;
  height: 4.8rem;
  color: #16D9A8;
  fill: currentColor;
  opacity: 0.9;
}
.book_visual .review_card .review_content p {
  font-size: 2.8rem;
  line-height: 1.4;
  font-weight: 400;
  margin-bottom: 4.8rem;
  font-family: "Space Grotesk", sans-serif;
  letter-spacing: -0.5px;
  opacity: 0.95;
}
.book_visual .review_card .review_author {
  display: flex;
  align-items: center;
  gap: 2.4rem;
}
.book_visual .review_card .review_author .author_info {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
  flex: 1;
}
.book_visual .review_card .review_author .author_info strong {
  font-size: 1.8rem;
  font-weight: 600;
  color: #FFFFFF;
  font-family: "Space Grotesk", sans-serif;
}
.book_visual .review_card .review_author .author_info span {
  font-size: 1.4rem;
  color: rgba(255, 255, 255, 0.8);
  font-weight: 400;
}
.book_visual .review_card .review_author .author_logo {
  display: flex;
  align-items: center;
  justify-content: center;
}
.book_visual .review_card .review_author .author_logo img {
  height: 6.4rem;
  width: auto;
  -o-object-fit: contain;
     object-fit: contain;
  pointer-events: none;
}
.book_visual .floating_stats {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 2;
  transition: opacity 0.3s ease;
}
.book_visual .floating_stats .stat_badge {
  position: absolute;
  background: #101931;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 10rem;
  padding: 1.2rem 2.4rem 1.2rem 1.2rem;
  display: flex;
  align-items: center;
  gap: 1.2rem;
  color: #FFFFFF;
  font-weight: 600;
  font-size: 1.5rem;
  box-shadow: 0 12px 24px rgba(0, 0, 0, 0.3);
}
.book_visual .floating_stats .stat_badge .stat_icon {
  width: 3.6rem;
  height: 3.6rem;
  border-radius: 50%;
  background: rgba(22, 217, 168, 0.15);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #16D9A8;
}
.book_visual .floating_stats .stat_badge.stat-1 {
  top: 15%;
  right: 4%;
  animation: fade-float-1 8s ease-in-out infinite;
}
.book_visual .floating_stats .stat_badge.stat-2 {
  top: 15%;
  right: 4%;
  animation: fade-float-2 8s ease-in-out infinite;
}
@keyframes fade-float-1 {
  0%, 40% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
  20% {
    opacity: 1;
    transform: translateY(-15px) scale(1);
  }
  45%, 95% {
    opacity: 0;
    transform: translateY(15px) scale(0.9);
  }
  100% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}
@keyframes fade-float-2 {
  0%, 45% {
    opacity: 0;
    transform: translateY(15px) scale(0.9);
  }
  50%, 90% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
  70% {
    opacity: 1;
    transform: translateY(-15px) scale(1);
  }
  95%, 100% {
    opacity: 0;
    transform: translateY(15px) scale(0.9);
  }
}
.book_content {
  flex: 1;
  padding: 6.4rem 0;
}
.book_content h2 {
  font-size: 2.4rem;
  font-weight: 400;
  line-height: 1.3;
  margin-bottom: 4.8rem;
}
.book_content h2 div {
  font-size: 5.6rem;
  font-weight: 700;
  line-height: 1.2;
  max-width: -moz-max-content;
  max-width: max-content;
  border-bottom: solid 0.4rem #16D9A8;
  margin-top: 0.8rem;
}

.form {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
}
.form_row {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 2.4rem;
}
.form_controller {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
  flex: 1;
}
.form_controller label {
  font-size: 1.4rem;
  font-weight: 600;
  padding-left: 0.4rem;
}
.form_controller label span {
  font-weight: 400;
  opacity: 0.7;
}
.form_controller input[type=text], .form_controller input[type=email], .form_controller input[type=tel], .form_controller textarea {
  padding: 0.9rem 1.2rem;
  font-family: inherit;
  font-size: 1.4rem;
  border-radius: 0.6rem;
  background-color: #FFFFFF;
  border: solid 0.1rem #B4BDD4;
  min-height: 4rem;
  transition: border-color 0.2s ease;
}
.form_controller input[type=text]:focus, .form_controller input[type=email]:focus, .form_controller input[type=tel]:focus, .form_controller textarea:focus {
  outline: none;
  border-color: #16D9A8;
}
.form_controller textarea {
  resize: vertical;
  min-height: 10rem;
  padding-top: 1.2rem;
}
.form-submit {
  margin-top: 0.8rem;
}

.phone-input-group {
  display: flex;
  align-items: stretch;
}

.form_footer {
  justify-content: space-between;
  margin-top: 1.6rem;
}

.form_disclaimer {
  font-size: 1.3rem;
  color: rgba(16, 25, 49, 0.6);
  max-width: 28rem;
  line-height: 1.5;
}
.form_disclaimer a {
  color: #101931;
  text-decoration: underline;
}
.form_disclaimer a:hover {
  color: #16D9A8;
}

.country-code-wrapper {
  position: relative;
  flex-shrink: 0;
}

.country-code-input {
  width: 9.6rem;
  padding: 0.9rem 1.2rem;
  font-family: inherit;
  font-size: 1.4rem;
  border-radius: 0.6rem 0 0 0.6rem !important;
  background-color: #FFFFFF;
  border: solid 0.1rem #B4BDD4;
  border-right: none !important;
  min-height: 4rem;
  cursor: pointer;
  transition: border-color 0.2s ease;
  text-align: center;
}
.country-code-input:focus {
  outline: none;
  border-color: #16D9A8;
}

.phone-number-input {
  flex: 1;
  border-radius: 0 0.6rem 0.6rem 0 !important;
}

.country-dropdown {
  position: absolute;
  top: calc(100% + 0.4rem);
  left: 0;
  width: 28rem;
  max-height: 0;
  overflow: hidden;
  background: #FFFFFF;
  border-radius: 0.8rem;
  box-shadow: 0 8px 32px rgba(16, 25, 49, 0.15);
  z-index: 100;
  opacity: 0;
  visibility: hidden;
  transition: max-height 0.25s ease, opacity 0.2s ease, visibility 0.2s ease;
}
.country-dropdown.open {
  max-height: 32rem;
  opacity: 1;
  visibility: visible;
}
.country-dropdown .country-search {
  width: 100%;
  padding: 1.2rem 1.6rem;
  font-family: inherit;
  font-size: 1.4rem;
  border: none;
  border-bottom: solid 0.1rem #B4BDD4;
  background: #EFF2F9;
}
.country-dropdown .country-search:focus {
  outline: none;
}
.country-dropdown .country-search::-moz-placeholder {
  color: rgba(16, 25, 49, 0.4);
}
.country-dropdown .country-search::placeholder {
  color: rgba(16, 25, 49, 0.4);
}
.country-dropdown .country-list {
  list-style: none;
  margin: 0;
  padding: 0.4rem 0;
  max-height: 26rem;
  overflow-y: auto;
}
.country-dropdown .country-list li {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1rem 1.6rem;
  cursor: pointer;
  transition: background-color 0.15s ease;
}
.country-dropdown .country-list li:hover, .country-dropdown .country-list li.highlighted {
  background-color: #EBF1FF;
}
.country-dropdown .country-list li .country-flag {
  font-size: 1.8rem;
  line-height: 1;
}
.country-dropdown .country-list li .country-name {
  flex: 1;
  font-size: 1.4rem;
  color: #101931;
}
.country-dropdown .country-list li .country-dial-code {
  font-size: 1.3rem;
  color: rgba(16, 25, 49, 0.5);
}

.product-hero {
  min-height: calc(90svh - 4.8rem);
}
.product-hero .hero_content h1 {
  max-width: 72rem;
  font-size: 5.6rem;
}
.product-hero .hero_content p {
  max-width: 64rem;
  font-size: 1.8rem;
}

.product-badge {
  display: inline-block;
  padding: 0.6rem 1.6rem;
  background: rgba(22, 217, 168, 0.15);
  border: 1px solid rgba(22, 217, 168, 0.3);
  border-radius: 100px;
  color: #16D9A8;
  font-size: 1.4rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin-bottom: 2rem;
}

.btn-outline {
  background: transparent;
  box-shadow: 0 0 0 2px rgba(239, 242, 249, 0.3) inset;
  color: #EFF2F9;
}
.btn-outline svg {
  stroke: #EFF2F9;
}
.btn-outline:hover {
  background: rgba(239, 242, 249, 0.1);
}

.btn-large {
  padding: 1.4rem 3.2rem;
  font-size: 1.8rem;
}

.product-window {
  position: relative;
  margin-top: -8rem;
  margin-bottom: 8rem;
}

.window_content {
  margin-top: 1.6rem;
  background: linear-gradient(180deg, #E8EDF8 0%, #F1F5FF 100%);
  border-radius: 1.2rem;
  min-height: 48rem;
  overflow: hidden;
}
.window_content .window_ui {
  display: flex;
  height: 48rem;
}
.window_content .ui-sidebar {
  width: 6.4rem;
  background: #101931;
  padding: 1.6rem;
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
}
.window_content .ui-sidebar_logo {
  width: 3.2rem;
  height: 3.2rem;
  background: #16D9A8;
  border-radius: 0.8rem;
}
.window_content .ui-sidebar_nav {
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
}
.window_content .ui-sidebar_item {
  width: 3.2rem;
  height: 3.2rem;
  background: rgba(239, 242, 249, 0.1);
  border-radius: 0.6rem;
}
.window_content .ui-sidebar_item.active {
  background: rgba(22, 217, 168, 0.2);
  border: 1px solid rgba(22, 217, 168, 0.4);
}
.window_content .ui-main {
  flex: 1;
  padding: 2.4rem;
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.window_content .ui-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.window_content .ui-header_title {
  width: 16rem;
  height: 2.4rem;
  background: rgba(16, 25, 49, 0.1);
  border-radius: 0.4rem;
}
.window_content .ui-header_actions {
  display: flex;
  gap: 1rem;
}
.window_content .ui-btn {
  width: 8rem;
  height: 3.2rem;
  background: rgba(16, 25, 49, 0.08);
  border-radius: 0.6rem;
}
.window_content .ui-btn.primary {
  background: #16D9A8;
}
.window_content .ui-content {
  display: flex;
  gap: 2rem;
  flex: 1;
}
.window_content .ui-table {
  background: #FFFFFF;
  border-radius: 1.2rem;
  padding: 2.4rem;
  box-shadow: 0 2px 8px rgba(16, 25, 49, 0.06);
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
}
.window_content .ui-table_header {
  display: flex;
  gap: 2.4rem;
  padding-bottom: 1.6rem;
  border-bottom: 1px solid rgba(16, 25, 49, 0.06);
}
.window_content .ui-table_header .ui-table_cell {
  height: 1.2rem;
  background: rgba(16, 25, 49, 0.12);
  border-radius: 0.3rem;
}
.window_content .ui-table_row {
  display: flex;
  gap: 2.4rem;
  align-items: center;
}
.window_content .ui-table_row .ui-table_cell {
  height: 1.2rem;
  background: rgba(16, 25, 49, 0.06);
  border-radius: 0.3rem;
}
.window_content .ui-table_row .ui-table_cell.badge {
  height: 2.4rem;
  border-radius: 1.2rem;
}
.window_content .ui-table .ch-1, .window_content .ui-table .cw-1 {
  width: 15%;
}
.window_content .ui-table .ch-2, .window_content .ui-table .cw-2 {
  width: 45%;
}
.window_content .ui-table .ch-3, .window_content .ui-table .cw-3 {
  width: 20%;
}
.window_content .ui-table .ch-4, .window_content .ui-table .cw-4 {
  width: 20%;
}
.window_content .ui-table .animated-ui-row {
  position: relative;
  opacity: 0;
  transform: translateY(1rem) scale(0.95);
  margin-top: -2.8rem;
  margin-bottom: 0;
  pointer-events: none;
  animation: rowSlideIn 15s cubic-bezier(0.4, 0, 0.2, 1) infinite both;
}
.window_content .ui-table .animated-ui-row::after {
  content: "";
  position: absolute;
  inset: -0.8rem -1.2rem;
  background: rgba(22, 217, 168, 0.15);
  border-radius: 0.6rem;
  z-index: 0;
  animation: rowHighlight 15s cubic-bezier(0.4, 0, 0.2, 1) infinite both;
}
.window_content .ui-table .animated-ui-row .ui-table_cell {
  position: relative;
  z-index: 1;
}
.window_content .ui-table .animated-ui-row .ui-table_cell.cell-anim {
  animation: rowCellPop 15s cubic-bezier(0.4, 0, 0.2, 1) infinite both;
}
.window_content .ui-table .animated-ui-row.row-1, .window_content .ui-table .animated-ui-row.row-1::after, .window_content .ui-table .animated-ui-row.row-1 .cell-anim {
  animation-delay: 0s;
}
.window_content .ui-table .animated-ui-row.row-2, .window_content .ui-table .animated-ui-row.row-2::after, .window_content .ui-table .animated-ui-row.row-2 .cell-anim {
  animation-delay: 3s;
}
.window_content .ui-table .animated-ui-row.row-3, .window_content .ui-table .animated-ui-row.row-3::after, .window_content .ui-table .animated-ui-row.row-3 .cell-anim {
  animation-delay: 6s;
}
.window_content .ui-table .animated-ui-row.row-4, .window_content .ui-table .animated-ui-row.row-4::after, .window_content .ui-table .animated-ui-row.row-4 .cell-anim {
  animation-delay: 9s;
}
.window_content .ui-table .animated-ui-row.row-5, .window_content .ui-table .animated-ui-row.row-5::after, .window_content .ui-table .animated-ui-row.row-5 .cell-anim {
  animation-delay: 12s;
}

@keyframes rowSlideIn {
  0%, 15.9% {
    opacity: 0;
    transform: translateY(1rem) scale(0.95);
    margin-top: -2.8rem;
    margin-bottom: 0;
    pointer-events: none;
  }
  16%, 90% {
    opacity: 1;
    transform: translateY(0) scale(1);
    margin-top: 0;
    margin-bottom: 0;
    pointer-events: auto;
  }
  95%, 100% {
    opacity: 0;
    transform: translateY(-1rem) scale(0.95);
    margin-top: -2.8rem;
    margin-bottom: 0;
    pointer-events: none;
  }
}
@keyframes rowHighlight {
  0%, 15.9% {
    opacity: 0;
    transform: scale(0.95);
    background: rgba(22, 217, 168, 0);
  }
  16% {
    opacity: 1;
    transform: scale(1);
    background: rgba(22, 217, 168, 0.3);
  }
  22% {
    opacity: 0;
    background: rgba(22, 217, 168, 0);
  }
  100% {
    opacity: 0;
    background: rgba(22, 217, 168, 0);
  }
}
@keyframes rowCellPop {
  0%, 15.9% {
    background: rgba(16, 25, 49, 0.06);
  }
  16% {
    background: #16D9A8;
  }
  22% {
    background: rgba(16, 25, 49, 0.06);
  }
  100% {
    background: rgba(16, 25, 49, 0.06);
  }
}
.ui-card {
  background: #FFFFFF;
  border-radius: 1.2rem;
  padding: 2rem;
  box-shadow: 0 2px 8px rgba(16, 25, 49, 0.06);
  flex: 1;
}
.ui-card.large {
  flex: 1.5;
}
.ui-card_header {
  width: 60%;
  height: 1.6rem;
  background: rgba(16, 25, 49, 0.12);
  border-radius: 0.3rem;
  margin-bottom: 1.6rem;
}
.ui-card_body {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
}

.ui-line {
  height: 1rem;
  background: rgba(16, 25, 49, 0.06);
  border-radius: 0.2rem;
}
.ui-line.animated-ui-line {
  animation: linePop 4s cubic-bezier(0.4, 0, 0.2, 1) infinite;
}

.floating-card {
  position: absolute;
  display: flex;
  align-items: center;
  gap: 1.2rem;
  background: #FFFFFF;
  padding: 1.2rem 1.6rem;
  border-radius: 1.2rem;
  box-shadow: 0 8px 32px rgba(16, 25, 49, 0.12), 0 2px 8px rgba(16, 25, 49, 0.08);
  animation: float 4s ease-in-out infinite;
  z-index: 10;
}
.floating-card_icon {
  width: 4rem;
  height: 4rem;
  background: rgba(16, 25, 49, 0.08);
  border-radius: 0.8rem;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #101931;
}
.floating-card_icon.success {
  background: rgba(40, 200, 63, 0.12);
  color: #28C83F;
}
.floating-card_icon.warning {
  background: rgba(254, 188, 45, 0.12);
  color: #d4a000;
}
.floating-card_content {
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
}
.floating-card_label {
  font-size: 1.2rem;
  color: rgba(16, 25, 49, 0.6);
}
.floating-card_value {
  font-size: 1.4rem;
  font-weight: 600;
  color: #101931;
}
.floating-card.card-1 {
  top: 8rem;
  right: 8%;
  animation-delay: 0s;
}
.floating-card.card-2 {
  bottom: 12rem;
  left: 6%;
  animation-delay: 1.3s;
}
.floating-card.card-3 {
  top: 50%;
  right: 4%;
  animation-delay: 2.6s;
}

@keyframes float {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-12px);
  }
}
.section-header {
  text-align: center;
  max-width: 72rem;
  margin: 0 auto 6.4rem;
}
.section-header h2 {
  font-size: 3.6rem;
  font-weight: 400;
  line-height: 1.2;
  margin-bottom: 2rem;
}
.section-header h2 span {
  color: #16D9A8;
  font-weight: 700;
}
.section-header p {
  font-size: 1.8rem;
  color: rgba(16, 25, 49, 0.7);
  line-height: 1.6;
}

.domains {
  padding: 3.2rem 0 6.4rem 0;
  background: linear-gradient(180deg, rgba(239, 242, 249, 0) 0%, rgba(255, 255, 255, 0.8) 100%);
}
.domains_grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2.4rem;
}

.domain-card {
  background: #FFFFFF;
  border-radius: 1.6rem;
  padding: 3.2rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 1.6rem;
  border: 1px solid rgba(180, 189, 212, 0.4);
  transition: all 0.3s ease;
}
.domain-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 32px rgba(16, 25, 49, 0.04);
  border-color: rgba(16, 25, 49, 0.2);
}
.domain-card_icon {
  width: 5.6rem;
  height: 5.6rem;
  background: #e4f0ff;
  border-radius: 1.2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #2364E2;
}
.domain-card h3 {
  font-size: 1.6rem;
  font-weight: 600;
}

.feature-section {
  padding: 8rem 0 !important;
}
.feature-section.assistant {
  background: #FFFFFF;
}
.feature-section.narrative {
  background: linear-gradient(180deg, rgba(235, 241, 255, 0.5) 0%, #FFFFFF 100%);
}
.feature-section.intelligence {
  background: #FFFFFF;
  padding-top: 2.4rem;
}
.feature-section.documents {
  background: #EFF2F9;
}
.feature-section.dual-features {
  background: linear-gradient(180deg, #FFFFFF 0%, #EFF2F9 100%);
  padding-bottom: 4.8rem;
}

.feature-row {
  display: flex;
  align-items: center;
  gap: 8rem;
}
.feature-row.reverse {
  flex-direction: row-reverse;
}

.feature-content {
  flex: 1;
}
.feature-content h2 {
  font-size: 3.2rem;
  font-weight: 400;
  line-height: 1.2;
  margin-bottom: 2rem;
}
.feature-content h2 span {
  color: #16D9A8;
  font-weight: 700;
}
.feature-content > p {
  font-size: 1.6rem;
  color: rgba(16, 25, 49, 0.7);
  line-height: 1.7;
  margin-bottom: 3.2rem;
}

.feature-tag {
  display: inline-block;
  padding: 0.4rem 1.2rem;
  background: #e4f0ff;
  border-radius: 0.6rem;
  color: #1C3064;
  font-size: 1.3rem;
  font-weight: 600;
  margin-bottom: 1.6rem;
}

.feature-list {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
}
.feature-list li {
  display: flex;
  align-items: flex-start;
  gap: 1.2rem;
  font-size: 1.5rem;
  color: #101931;
}
.feature-list li svg {
  flex-shrink: 0;
  color: #16D9A8;
  margin-top: 0.2rem;
}
.feature-list.compact li {
  font-size: 1.4rem;
}

.feature-visual {
  flex: 1;
  display: flex;
  justify-content: center;
  align-items: center;
}
.feature-visual.g-bg-1 {
  padding: 6.4rem 4rem;
  background: #F7EEFE;
  border-radius: 1.6rem;
  background: url("../media/images/g-bg-1.jpg") no-repeat center center;
  background-size: cover;
}
.feature-visual.g-bg-2 {
  padding: 6.4rem 4rem;
  background: #F7EEFE;
  border-radius: 1.6rem;
  background: url("../media/images/g-bg-2.jpg") no-repeat center center;
  background-size: cover;
}
.feature-visual.g-bg-3 {
  padding: 6.4rem 4rem;
  background: #F7EEFE;
  border-radius: 1.6rem;
  background: url("../media/images/g-bg-3.jpg") no-repeat center center;
  background-size: cover;
}

.chat-interface {
  width: 100%;
  max-width: 44rem;
  border-radius: 1.6rem;
  box-shadow: 0 8px 40px rgba(16, 25, 49, 0.1);
  overflow: hidden;
  border: 1px solid rgba(180, 189, 212, 0.4);
}

.chat-header {
  display: flex;
  align-items: center;
  gap: 1.2rem;
  padding: 1.6rem 2rem;
  background: #101931;
  color: #EFF2F9;
}
.chat-header_icon {
  width: 3.2rem;
  height: 3.2rem;
  background: rgba(22, 217, 168, 0.15);
  border-radius: 0.8rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
.chat-header span {
  font-weight: 600;
  font-size: 1.4rem;
}

.chat-messages {
  padding: 2rem;
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
  min-height: 28rem;
  background: rgba(250, 251, 253, 0.9) !important;
}

.chat-message {
  max-width: 85%;
}
.chat-message.user {
  align-self: flex-end;
}
.chat-message.user p {
  background: #101931;
  color: #EFF2F9;
  padding: 1.2rem 1.6rem;
  border-radius: 1.6rem 1.6rem 0.4rem 1.6rem;
  font-size: 1.4rem;
}
.chat-message.ai {
  align-self: flex-start;
}
.chat-message.ai p {
  background: #FFFFFF;
  color: #101931;
  padding: 1.2rem 1.6rem;
  border-radius: 1.6rem 1.6rem 1.6rem 0.4rem;
  font-size: 1.4rem;
  box-shadow: 0 2px 8px rgba(16, 25, 49, 0.06);
  margin-bottom: 1rem;
}
.chat-message.ai ul {
  background: #FFFFFF;
  padding: 1.2rem 1.6rem 1.2rem 3.2rem;
  border-radius: 1.2rem;
  margin-bottom: 1rem;
  box-shadow: 0 2px 8px rgba(16, 25, 49, 0.06);
}
.chat-message.ai ul li {
  font-size: 1.3rem;
  margin-bottom: 0.6rem;
  color: rgba(16, 25, 49, 0.8);
}
.chat-message.ai ul li strong {
  color: #101931;
}

.chat-sources span {
  font-size: 1.2rem;
  color: rgba(16, 25, 49, 0.5);
  background: rgba(22, 217, 168, 0.1);
  padding: 0.4rem 0.8rem;
  border-radius: 0.4rem;
}

.chat-input {
  display: flex;
  gap: 1rem;
  padding: 1.6rem 2rem;
  background: #FFFFFF;
  border-top: 1px solid rgba(180, 189, 212, 0.4);
}
.chat-input input {
  flex: 1;
  padding: 1rem 1.4rem;
  border: 1px solid #B4BDD4;
  border-radius: 0.8rem;
  font-size: 1.4rem;
  font-family: inherit;
}
.chat-input input::-moz-placeholder {
  color: rgba(16, 25, 49, 0.4);
}
.chat-input input::placeholder {
  color: rgba(16, 25, 49, 0.4);
}
.chat-input input:focus {
  outline: none;
  border-color: #16D9A8;
}
.chat-input button {
  width: 4rem;
  height: 4rem;
  background: #16D9A8;
  border: none;
  border-radius: 0.8rem;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  color: #101931;
}

.narrative-card {
  width: 100%;
  max-width: 44rem;
  background: #FFFFFF;
  border-radius: 1.6rem;
  padding: 2.4rem;
  box-shadow: 0 8px 40px rgba(16, 25, 49, 0.1);
  border: 1px solid rgba(180, 189, 212, 0.4);
}

.narrative-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 2.4rem;
}
.narrative-header h4 {
  font-size: 1.6rem;
  font-weight: 600;
}

.narrative-badge {
  font-size: 1.1rem;
  padding: 0.4rem 0.8rem;
  background: rgba(22, 217, 168, 0.1);
  color: #1C3064;
  border-radius: 0.4rem;
  font-weight: 500;
}

.timeline {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.timeline-item {
  display: flex;
  gap: 1.6rem;
  padding-bottom: 2rem;
  position: relative;
}
.timeline-item:not(:last-child)::before {
  content: "";
  position: absolute;
  left: 0.6rem;
  top: 2rem;
  bottom: 0;
  width: 2px;
  background: #B4BDD4;
}
.timeline-item.active .timeline-dot {
  background: #16D9A8;
  box-shadow: 0 0 0 4px rgba(22, 217, 168, 0.2);
}
.timeline-item:last-child {
  padding-bottom: 0;
}

.timeline-dot {
  width: 1.4rem;
  height: 1.4rem;
  background: #B4BDD4;
  border-radius: 50%;
  flex-shrink: 0;
  margin-top: 0.3rem;
}

.timeline-content {
  flex: 1;
}

.timeline-date {
  font-size: 1.2rem;
  color: rgba(16, 25, 49, 0.5);
  font-weight: 500;
  display: block;
  margin-bottom: 0.4rem;
}

.timeline-content p {
  font-size: 1.4rem;
  color: #101931;
  line-height: 1.4;
}

.intelligence-grid {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
  width: 100%;
  max-width: 40rem;
}

.intel-card {
  background: #FFFFFF;
  border-radius: 1.6rem;
  padding: 2rem;
  box-shadow: 0 4px 20px rgba(16, 25, 49, 0.08);
  border: 1px solid rgba(180, 189, 212, 0.4);
}
.intel-card h4 {
  font-size: 1.4rem;
  font-weight: 600;
  margin-bottom: 1.6rem;
  color: rgba(16, 25, 49, 0.7);
}

.people-list {
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
}

.person {
  display: flex;
  align-items: center;
  gap: 1.2rem;
}

.person-avatar {
  width: 4rem;
  height: 4rem;
  background: linear-gradient(135deg, #16D9A8 0%, rgb(17.3054393305, 170.6945606695, 132.1506276151) 100%);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #101931;
  font-size: 1.2rem;
  font-weight: 700;
}

.person-info {
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
}

.person-name {
  font-size: 1.4rem;
  font-weight: 600;
  color: #101931;
}

.person-role {
  font-size: 1.2rem;
  color: rgba(16, 25, 49, 0.5);
}

.overview-stats {
  display: flex;
  gap: 2.4rem;
  margin-bottom: 1.6rem;
}

.stat {
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
}
.stat-value {
  font-size: 2.4rem;
  font-weight: 700;
  color: #101931;
}
.stat-label {
  font-size: 1.2rem;
  color: rgba(16, 25, 49, 0.5);
}

.progress-bar {
  height: 0.6rem;
  background: rgba(16, 25, 49, 0.1);
  border-radius: 0.3rem;
  overflow: hidden;
  margin-bottom: 0.8rem;
}

.progress-fill {
  height: 100%;
  background: #16D9A8;
  border-radius: 0.3rem;
}

.progress-label {
  font-size: 1.2rem;
  color: rgba(16, 25, 49, 0.5);
}

.docs-analysis {
  width: 100%;
  max-width: 44rem;
  background: #FFFFFF;
  border-radius: 1.6rem;
  padding: 2.4rem;
  box-shadow: 0 8px 40px rgba(16, 25, 49, 0.1);
  border: 1px solid rgba(180, 189, 212, 0.4);
}

.docs-header {
  margin-bottom: 2.4rem;
}
.docs-header h4 {
  font-size: 1.6rem;
  font-weight: 600;
}

.docs-stats {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
  margin-bottom: 2.4rem;
}

.doc-type {
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
}
.doc-type_bar {
  height: 0.8rem;
  background: rgba(16, 25, 49, 0.08);
  border-radius: 0.4rem;
  overflow: hidden;
}
.doc-type_fill {
  height: 100%;
  border-radius: 0.4rem;
}
.doc-type_fill.medical {
  background: #6366F1;
}
.doc-type_fill.legal {
  background: #F59E0B;
}
.doc-type_fill.police {
  background: #EF4444;
}
.doc-type_fill.other {
  background: #B4BDD4;
}
.doc-type_info {
  display: flex;
  justify-content: space-between;
}
.doc-type_label {
  font-size: 1.3rem;
  color: #101931;
}
.doc-type_count {
  font-size: 1.3rem;
  color: rgba(16, 25, 49, 0.5);
}

.docs-total {
  display: flex;
  align-items: center;
  gap: 1.2rem;
  padding-top: 2rem;
  border-top: 1px solid rgba(180, 189, 212, 0.4);
}
.docs-total_number {
  font-size: 3.2rem;
  font-weight: 700;
  color: #16D9A8;
}
.docs-total_label {
  font-size: 1.4rem;
  color: rgba(16, 25, 49, 0.6);
}

.dual-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 3.2rem;
}

.dual-card {
  background: #FFFFFF;
  border-radius: 2.4rem;
  padding: 4rem;
  box-shadow: 0 4px 24px rgba(16, 25, 49, 0.06);
  border: 1px solid rgba(180, 189, 212, 0.4);
}
.dual-card .feature-tag {
  margin-bottom: 1.2rem;
}
.dual-card h2 {
  font-size: 2.4rem;
  font-weight: 400;
  line-height: 1.2;
  margin-bottom: 1.6rem;
}
.dual-card h2 span {
  color: #16D9A8;
  font-weight: 700;
}
.dual-card > p {
  font-size: 1.5rem;
  color: rgba(16, 25, 49, 0.7);
  line-height: 1.6;
  margin-bottom: 2.4rem;
}

.final-cta {
  padding: 9.6rem 0;
  background: radial-gradient(ellipse at 50% 100%, #1C3064 0%, #101931 70%);
}
.final-cta_content {
  text-align: center;
  max-width: 64rem;
  margin: 0 auto;
}
.final-cta_content h2 {
  font-size: 4rem;
  font-weight: 400;
  color: #EFF2F9;
  line-height: 1.2;
  margin-bottom: 2rem;
}
.final-cta_content h2 span {
  color: #16D9A8;
  font-weight: 700;
}
.final-cta_content p {
  font-size: 1.8rem;
  color: rgba(239, 242, 249, 0.7);
  margin-bottom: 4rem;
  line-height: 1.6;
}

.footer {
  padding: 4rem 0;
  background: #101931;
}
.footer .logo img {
  max-height: 4rem;
}
.footer .wrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.footer_logo img {
  height: 2.4rem;
}
.footer p {
  color: rgba(239, 242, 249, 0.5);
  font-size: 1.4rem;
}

.footer-full {
  background: #101931;
  padding: 6.4rem 0 3.2rem;
}
.footer-full .wrapper {
  max-width: 140rem;
  margin: 0 auto;
  padding: 0 2.4rem;
}
.footer-full_top {
  display: flex;
  gap: 8rem;
  padding-bottom: 4.8rem;
  border-bottom: 1px solid rgba(239, 242, 249, 0.1);
}
.footer-full_brand {
  flex: 0 0 28rem;
}
.footer-full_brand p {
  font-size: 1.4rem;
  line-height: 1.6;
  color: rgba(239, 242, 249, 0.6);
  margin-bottom: 2.4rem;
}
.footer-full_brand .logo {
  display: flex;
  flex-direction: column;
  gap: 0;
  align-items: start;
}
.footer-full_brand .logo img {
  height: 3.2rem;
  line-height: 1;
  margin: 0 0 1.2rem 0;
  padding: 0;
}
.footer-full_brand .logo h4 {
  font-size: 1.4rem;
  font-weight: 600;
  color: #EFF2F9;
  margin-bottom: 2rem;
  line-height: 1;
}
.footer-full_social {
  display: flex;
  gap: 1.2rem;
}
.footer-full_social a {
  width: 3.6rem;
  height: 3.6rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(239, 242, 249, 0.08);
  border-radius: 0.8rem;
  color: rgba(239, 242, 249, 0.6);
  transition: all 0.2s ease;
}
.footer-full_social a:hover {
  background: #16D9A8;
  color: #101931;
}
.footer-full_social a svg {
  width: 1.8rem;
  height: 1.8rem;
}
.footer-full_links {
  flex: 1;
  display: flex;
  justify-content: space-between;
  gap: 4rem;
}
.footer-full_column h4 {
  font-size: 1.4rem;
  font-weight: 600;
  color: #EFF2F9;
  margin-bottom: 2rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.footer-full_column ul {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
}
.footer-full_column li a {
  font-size: 1.4rem;
  color: rgba(239, 242, 249, 0.6);
  text-decoration: none;
  transition: color 0.2s ease;
}
.footer-full_column li a:hover {
  color: #16D9A8;
}
.footer-full_bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 3.2rem;
}
.footer-full_bottom p {
  font-size: 1.3rem;
  color: rgba(239, 242, 249, 0.4);
}
.footer-full_legal {
  display: flex;
  gap: 2.4rem;
}
.footer-full_legal a {
  font-size: 1.3rem;
  color: rgba(239, 242, 249, 0.4);
  text-decoration: none;
  transition: color 0.2s ease;
}
.footer-full_legal a:hover {
  color: rgba(239, 242, 249, 0.7);
}

.animate-on-scroll {
  opacity: 0;
  transform: translateY(24px);
  will-change: opacity, transform;
  transition: opacity 0.7s cubic-bezier(0.22, 1, 0.36, 1), transform 0.7s cubic-bezier(0.22, 1, 0.36, 1);
}
.animate-on-scroll.revealed {
  opacity: 1;
  transform: translateY(0);
}

.animate-grid-feature {
  opacity: 0;
  transform: translateY(40px);
  will-change: opacity, transform;
  transition: opacity 0.8s cubic-bezier(0.22, 1, 0.36, 1), transform 0.8s cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: calc(var(--stagger, 0) * 0.2s);
}
.animate-grid-feature.revealed {
  opacity: 1;
  transform: translateY(0);
}

.floating-card.animate-on-scroll {
  transform: translateY(32px);
}
.floating-card.animate-on-scroll.revealed {
  transform: translateY(0);
  animation: float 4s ease-in-out infinite;
  animation-delay: calc(var(--stagger, 0) * 0.4s);
}
.floating-card.card-1 {
  --stagger: 0;
}
.floating-card.card-2 {
  --stagger: 1;
}
.floating-card.card-3 {
  --stagger: 2;
}

.section-header.animate-on-scroll {
  transform: translateY(32px) scale(0.98);
}
.section-header.animate-on-scroll.revealed {
  transform: translateY(0) scale(1);
}

.feature-row.animate-on-scroll .feature-content {
  opacity: 0;
  transform: translateX(-40px);
  transition: opacity 0.8s cubic-bezier(0.22, 1, 0.36, 1) 0.1s, transform 0.8s cubic-bezier(0.22, 1, 0.36, 1) 0.1s;
}
.feature-row.animate-on-scroll .feature-visual {
  opacity: 0;
  transform: translateX(40px);
  transition: opacity 0.8s cubic-bezier(0.22, 1, 0.36, 1) 0.2s, transform 0.8s cubic-bezier(0.22, 1, 0.36, 1) 0.2s;
}
.feature-row.animate-on-scroll.reverse .feature-content {
  transform: translateX(40px);
}
.feature-row.animate-on-scroll.reverse .feature-visual {
  transform: translateX(-40px);
}
.feature-row.animate-on-scroll.revealed .feature-content,
.feature-row.animate-on-scroll.revealed .feature-visual {
  opacity: 1;
  transform: translateX(0);
}
.feature-row.animate-on-scroll .feature-list li {
  opacity: 0;
  transform: translateX(-16px);
  transition: opacity 0.5s cubic-bezier(0.22, 1, 0.36, 1), transform 0.5s cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: calc(0.4s + var(--stagger, 0) * 0.08s);
}
.feature-row.animate-on-scroll.revealed .feature-list li {
  opacity: 1;
  transform: translateX(0);
}

.domain-card.animate-on-scroll {
  transition-delay: calc(var(--stagger, 0) * 0.08s);
  transform: translateY(24px) scale(0.95);
}
.domain-card.animate-on-scroll.revealed {
  transform: translateY(0) scale(1);
}

.dual-card.animate-on-scroll:first-child {
  transform: translateX(-32px);
}
.dual-card.animate-on-scroll:last-child {
  transform: translateX(32px);
  transition-delay: 0.1s;
}
.dual-card.animate-on-scroll.revealed {
  transform: translateX(0);
}

.chat-interface.animate-on-scroll {
  transform: translateY(32px) scale(0.97);
}
.chat-interface.animate-on-scroll.revealed {
  transform: translateY(0) scale(1);
}
.chat-interface.animate-on-scroll .chat-message {
  opacity: 0;
  transform: translateY(12px);
  transition: opacity 0.5s cubic-bezier(0.22, 1, 0.36, 1), transform 0.5s cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: calc(0.5s + var(--stagger, 0) * 0.2s);
}
.chat-interface.animate-on-scroll.revealed .chat-message {
  opacity: 1;
  transform: translateY(0);
}

.narrative-card.animate-on-scroll .timeline-item {
  opacity: 0;
  transform: translateX(-16px);
  transition: opacity 0.5s cubic-bezier(0.22, 1, 0.36, 1), transform 0.5s cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: calc(0.3s + var(--stagger, 0) * 0.12s);
}
.narrative-card.animate-on-scroll.revealed .timeline-item {
  opacity: 1;
  transform: translateX(0);
}
.narrative-card.animate-on-scroll .timeline-item::before {
  transform: scaleY(0);
  transform-origin: top;
  transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: calc(0.4s + var(--stagger, 0) * 0.12s);
}
.narrative-card.animate-on-scroll.revealed .timeline-item::before {
  transform: scaleY(1);
}

.intelligence-grid.animate-on-scroll .person {
  opacity: 0;
  transform: translateX(-12px);
  transition: opacity 0.4s cubic-bezier(0.22, 1, 0.36, 1), transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: calc(0.4s + var(--stagger, 0) * 0.1s);
}
.intelligence-grid.animate-on-scroll.revealed .person {
  opacity: 1;
  transform: translateX(0);
}
.intelligence-grid.animate-on-scroll .progress-fill {
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.8s cubic-bezier(0.22, 1, 0.36, 1) 0.6s;
}
.intelligence-grid.animate-on-scroll.revealed .progress-fill {
  transform: scaleX(1);
}
.intelligence-grid.animate-on-scroll .stat-value {
  opacity: 0;
  transform: translateY(8px);
  transition: opacity 0.5s ease 0.5s, transform 0.5s ease 0.5s;
}
.intelligence-grid.animate-on-scroll.revealed .stat-value {
  opacity: 1;
  transform: translateY(0);
}

.docs-analysis.animate-on-scroll .doc-type {
  opacity: 0;
  transition: opacity 0.5s cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: calc(0.3s + var(--stagger, 0) * 0.1s);
}
.docs-analysis.animate-on-scroll .doc-type_fill {
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.7s cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: calc(0.5s + var(--stagger, 0) * 0.1s);
}
.docs-analysis.animate-on-scroll.revealed .doc-type {
  opacity: 1;
}
.docs-analysis.animate-on-scroll.revealed .doc-type_fill {
  transform: scaleX(1);
}
.docs-analysis.animate-on-scroll .docs-total_number {
  opacity: 0;
  transform: scale(0.8);
  transition: opacity 0.5s cubic-bezier(0.34, 1.56, 0.64, 1) 0.8s, transform 0.5s cubic-bezier(0.34, 1.56, 0.64, 1) 0.8s;
}
.docs-analysis.animate-on-scroll.revealed .docs-total_number {
  opacity: 1;
  transform: scale(1);
}

.final-cta_content.animate-on-scroll {
  transform: translateY(40px) scale(0.95);
}
.final-cta_content.animate-on-scroll.revealed {
  transform: translateY(0) scale(1);
}
.final-cta_content.animate-on-scroll h2, .final-cta_content.animate-on-scroll p, .final-cta_content.animate-on-scroll .btn {
  opacity: 0;
  transform: translateY(16px);
  transition: opacity 0.6s cubic-bezier(0.22, 1, 0.36, 1), transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);
}
.final-cta_content.animate-on-scroll h2 {
  transition-delay: 0.1s;
}
.final-cta_content.animate-on-scroll p {
  transition-delay: 0.2s;
}
.final-cta_content.animate-on-scroll .btn {
  transition-delay: 0.3s;
}
.final-cta_content.animate-on-scroll.revealed h2, .final-cta_content.animate-on-scroll.revealed p, .final-cta_content.animate-on-scroll.revealed .btn {
  opacity: 1;
  transform: translateY(0);
}

@media (prefers-reduced-motion: reduce) {
  .animate-on-scroll,
  .animate-on-scroll * {
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
  }
}
.opsgen-window {
  background: linear-gradient(180deg, #E4F0FF 0%, #C0DCFF 100%);
}
.opsgen-window::after {
  background: rgba(35, 100, 226, 0.16);
}

.opsgen-sidebar .ui-sidebar_logo {
  background: #9048D8;
}
.opsgen-sidebar .ui-sidebar_item.active {
  background: rgba(144, 72, 216, 0.2);
  border: 1px solid rgba(144, 72, 216, 0.4);
}

.opsgen-btn {
  background: #9048D8 !important;
}

.modern-flowchart {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.6rem;
  padding: 3.2rem;
  background: #FFFFFF;
  border-radius: 2.4rem;
  box-shadow: 0 8px 32px rgba(16, 25, 49, 0.08);
}
.modern-flowchart .flow-node {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.2rem;
  flex: 1;
}
.modern-flowchart .flow-node_icon {
  width: 6.4rem;
  height: 6.4rem;
  background: rgba(16, 25, 49, 0.06);
  border-radius: 1.6rem;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #101931;
  transition: all 0.3s ease;
  position: relative;
}
.modern-flowchart .flow-node.purple .flow-node_icon {
  background: rgba(144, 72, 216, 0.1);
  color: #9048D8;
  border: 1px solid rgba(144, 72, 216, 0.2);
}
.modern-flowchart .flow-node.blue .flow-node_icon {
  background: rgba(35, 100, 226, 0.1);
  color: #2364E2;
  border: 1px solid rgba(35, 100, 226, 0.2);
}
.modern-flowchart .flow-node.green .flow-node_icon {
  background: rgba(22, 217, 168, 0.1);
  color: #16D9A8;
  border: 1px solid rgba(22, 217, 168, 0.2);
}
.modern-flowchart .flow-node span {
  font-size: 1.3rem;
  font-weight: 500;
  color: #101931;
  text-align: center;
}
.modern-flowchart .flow-node:hover .flow-node_icon {
  transform: translateY(-4px);
  box-shadow: 0 8px 24px rgba(16, 25, 49, 0.1);
}
.modern-flowchart .flow-arrow {
  color: #B4BDD4;
  display: flex;
  align-items: center;
}

.opsgen-doc-ui .doc-viewer_header {
  background: #101931;
}
.opsgen-doc-ui .doc-badge {
  background: rgba(144, 72, 216, 0.2) !important;
  color: #E9D5FF !important;
}
.opsgen-doc-ui .doc-line.highlight {
  background: rgba(35, 100, 226, 0.1) !important;
}
.opsgen-doc-ui .doc-line.highlight::before {
  background: #2364E2 !important;
}
.opsgen-doc-ui .field-value.success {
  color: #9048D8 !important;
}

.opsgen-process-timeline {
  display: flex;
  flex-direction: column;
  gap: 0;
}
.opsgen-process-timeline .pt-item {
  display: flex;
  gap: 2rem;
  padding-bottom: 2.4rem;
  position: relative;
}
.opsgen-process-timeline .pt-item:not(:last-child)::before {
  content: "";
  position: absolute;
  left: 2.3rem;
  top: 4.8rem;
  bottom: 0;
  width: 2px;
  background: rgba(35, 100, 226, 0.2);
}
.opsgen-process-timeline .pt-item_icon {
  width: 4.8rem;
  height: 4.8rem;
  background: rgba(35, 100, 226, 0.08);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #2364E2;
  flex-shrink: 0;
  z-index: 1;
  border: 2px solid #FFFFFF;
  box-shadow: 0 4px 12px rgba(16, 25, 49, 0.05);
}
.opsgen-process-timeline .pt-item_icon.purple {
  background: rgba(144, 72, 216, 0.08);
  color: #9048D8;
}
.opsgen-process-timeline .pt-item_icon.done {
  background: #2364E2;
  color: #FFFFFF;
}
.opsgen-process-timeline .pt-item_content {
  padding-top: 1.2rem;
}
.opsgen-process-timeline .pt-item_content h5 {
  font-size: 1.4rem;
  font-weight: 600;
  color: #101931;
  margin-bottom: 0.4rem;
}
.opsgen-process-timeline .pt-item_content p {
  font-size: 1.3rem;
  color: rgba(16, 25, 49, 0.6);
}

.opsgen-invoice-ui .invoice-header-bar {
  background: #9048D8 !important;
}
.opsgen-invoice-ui .validation-item.success {
  border-left-color: #2364E2 !important;
}
.opsgen-invoice-ui .validation-icon {
  background: rgba(35, 100, 226, 0.1) !important;
  color: #2364E2 !important;
}
.opsgen-invoice-ui .erp-sync {
  background: #2364E2 !important;
}

.opsgen-dashboard .ar-metric.success {
  background: rgba(144, 72, 216, 0.08) !important;
}
.opsgen-dashboard .ar-metric.success .ar-metric_value {
  color: #9048D8 !important;
}
.opsgen-dashboard .ar-metric.warning {
  background: rgba(35, 100, 226, 0.08) !important;
}
.opsgen-dashboard .ar-metric.warning .ar-metric_value {
  color: #2364E2 !important;
}
.opsgen-dashboard .ar-list_status.validated {
  background: #9048D8 !important;
}
.opsgen-dashboard .ar-list_badge {
  background: rgba(144, 72, 216, 0.1) !important;
  color: #9048D8 !important;
}
.opsgen-dashboard .ar-list_badge.pending {
  background: rgba(35, 100, 226, 0.1) !important;
  color: #2364E2 !important;
}

.opsgen-contract-ui .clause-marker.warning {
  background: #2364E2 !important;
}
.opsgen-contract-ui .clause-marker.critical {
  background: #9048D8 !important;
}
.opsgen-contract-ui .clause-tag {
  background: rgba(35, 100, 226, 0.1) !important;
  color: #2364E2 !important;
}
.opsgen-contract-ui .obligation-item {
  border-left-color: #9048D8 !important;
}

.opsgen-audit .log-action {
  color: #2364E2 !important;
}
.opsgen-audit .audit-metric_icon.success {
  background: rgba(144, 72, 216, 0.12) !important;
  color: #9048D8 !important;
}

.modern-flowchart.animate-on-scroll {
  transform: translateY(24px) scale(0.97);
}
.modern-flowchart.animate-on-scroll.revealed {
  transform: translateY(0) scale(1);
}
.modern-flowchart.animate-on-scroll .flow-node, .modern-flowchart.animate-on-scroll .flow-arrow {
  opacity: 0;
  transform: translateY(16px);
  transition: opacity 0.5s cubic-bezier(0.22, 1, 0.36, 1), transform 0.5s cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: calc(0.2s + var(--stagger, 0) * 0.15s);
}
.modern-flowchart.animate-on-scroll.revealed .flow-node, .modern-flowchart.animate-on-scroll.revealed .flow-arrow {
  opacity: 1;
  transform: translateY(0);
}

.opsgen-process-timeline.animate-on-scroll .pt-item {
  opacity: 0;
  transform: translateX(-16px);
  transition: opacity 0.5s cubic-bezier(0.22, 1, 0.36, 1), transform 0.5s cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: calc(0.2s + var(--stagger, 0) * 0.15s);
}
.opsgen-process-timeline.animate-on-scroll.revealed .pt-item {
  opacity: 1;
  transform: translateX(0);
}
.opsgen-process-timeline.animate-on-scroll .pt-item:not(:last-child)::before {
  transform: scaleY(0);
  transform-origin: top;
  transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: calc(0.3s + var(--stagger, 0) * 0.15s);
}
.opsgen-process-timeline.animate-on-scroll.revealed .pt-item:not(:last-child)::before {
  transform: scaleY(1);
}

.opsgen-invoice-ui.animate-on-scroll .validation-item {
  opacity: 0;
  transform: translateX(16px);
  transition: opacity 0.4s cubic-bezier(0.22, 1, 0.36, 1), transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: calc(0.2s + var(--stagger, 0) * 0.12s);
}
.opsgen-invoice-ui.animate-on-scroll.revealed .validation-item {
  opacity: 1;
  transform: translateX(0);
}
.opsgen-invoice-ui.animate-on-scroll .erp-sync {
  opacity: 0;
  transform: translateY(12px);
  transition: opacity 0.4s ease 0.6s, transform 0.4s ease 0.6s;
}
.opsgen-invoice-ui.animate-on-scroll.revealed .erp-sync {
  opacity: 1;
  transform: translateY(0);
}

.opsgen-contract-ui.animate-on-scroll .obligation-item {
  opacity: 0;
  transform: translateY(16px);
  transition: opacity 0.5s cubic-bezier(0.22, 1, 0.36, 1), transform 0.5s cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: calc(0.2s + var(--stagger, 0) * 0.15s);
}
.opsgen-contract-ui.animate-on-scroll.revealed .obligation-item {
  opacity: 1;
  transform: translateY(0);
}

@keyframes fgNodePop {
  0% {
    opacity: 0;
    transform: scale(0.8);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes fgPathShow {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fgPathFill {
  0% {
    transform: translateX(-100%);
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes igDocSlide {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes igScan {
  0% {
    opacity: 0;
    transform: translateY(-5rem);
  }
  20% {
    opacity: 1;
    transform: translateY(-5rem);
  }
  80% {
    opacity: 1;
    transform: translateY(5rem);
  }
  100% {
    opacity: 0;
    transform: translateY(5rem);
  }
}
@keyframes igChipPop {
  0% {
    opacity: 0;
    transform: translateX(-20px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
.contact-page .fixed-header {
  transform: translateY(0) !important;
  opacity: 1 !important;
  position: fixed !important;
  background-color: #101931 !important;
}
.contact-page .contact-book {
  padding-top: 4.8rem;
}
.contact-page .contact-hero {
  padding-top: 14rem;
  padding-bottom: 2.4rem;
  text-align: center;
}
.contact-page .contact-hero h1 {
  font-size: 5.6rem;
  line-height: 1.1;
  font-weight: 500;
  color: #101931;
  margin-bottom: 2.4rem;
  font-family: "Space Grotesk", sans-serif;
  letter-spacing: -1.5px;
}
.contact-page .contact-hero h1 strong {
  font-weight: 600;
}
.contact-page .contact-hero p {
  font-size: 2rem;
  color: #101931;
  max-width: 60rem;
  margin: 0 auto;
}
.contact-page .contact-info-list {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
  width: 100%;
  max-width: 40rem;
  position: relative;
  z-index: 1;
}
.contact-page .contact-info-list .contact-card {
  display: flex;
  align-items: center;
  gap: 2rem;
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.15);
  padding: 2.4rem;
  border-radius: 16px;
  backdrop-filter: blur(10px);
  transition: all 0.3s ease;
}
.contact-page .contact-info-list .contact-card:hover {
  background: rgba(255, 255, 255, 0.15);
  transform: translateY(-2px);
  border-color: rgba(22, 217, 168, 0.3);
}
.contact-page .contact-info-list .contact-card_icon {
  width: 4.8rem;
  height: 4.8rem;
  border-radius: 12px;
  background: rgba(22, 217, 168, 0.2);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #16D9A8;
}
.contact-page .contact-info-list .contact-card_icon svg {
  width: 2.4rem;
  height: 2.4rem;
}
.contact-page .contact-info-list .contact-card_content {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
}
.contact-page .contact-info-list .contact-card_content strong {
  color: #FFFFFF;
  font-size: 1.8rem;
  font-weight: 500;
}
.contact-page .contact-info-list .contact-card_content a {
  color: rgba(255, 255, 255, 0.8);
  font-size: 1.6rem;
  text-decoration: none;
  transition: color 0.3s ease;
}
.contact-page .contact-info-list .contact-card_content a:hover {
  color: #16D9A8;
}

.nav-toggle {
  display: none;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 0.5rem;
  width: 4rem;
  height: 4rem;
  background: transparent;
  border: none;
  cursor: pointer;
  padding: 0.8rem;
  z-index: 1001;
}
.nav-toggle span {
  display: block;
  width: 2.4rem;
  height: 0.2rem;
  background-color: #B4BDD4;
  border-radius: 0.2rem;
  transition: all 0.3s ease;
}
.nav-toggle.active span:nth-child(1) {
  transform: rotate(45deg) translate(0.5rem, 0.5rem);
}
.nav-toggle.active span:nth-child(2) {
  opacity: 0;
}
.nav-toggle.active span:nth-child(3) {
  transform: rotate(-45deg) translate(0.5rem, -0.5rem);
}

@media screen and (max-width: 968px) {
  .nav-toggle {
    display: flex;
  }
  .fixed-header_container {
    flex-wrap: wrap;
  }
  .fixed-header_nav,
  .hero_heading--nav {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    height: 100vh;
    background-color: #101931;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 3.2rem;
    padding: 6rem 2.4rem;
    transform: translateX(100%);
    opacity: 0;
    visibility: hidden;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 1000;
    overflow-y: auto;
  }
  .fixed-header_nav.active,
  .hero_heading--nav.active {
    transform: translateX(0);
    opacity: 1;
    visibility: visible;
  }
  .fixed-header_nav li,
  .hero_heading--nav li {
    text-align: center;
    width: 100%;
  }
  .fixed-header_nav li a,
  .hero_heading--nav li a {
    font-size: 2.4rem;
    color: #FFFFFF;
    font-weight: 600;
  }
  .fixed-header_nav .mobile-only-btn,
  .hero_heading--nav .mobile-only-btn {
    display: block;
    margin-top: 1.6rem;
  }
  .fixed-header_nav .mobile-only-btn .btn,
  .hero_heading--nav .mobile-only-btn .btn {
    display: inline-flex !important;
    background: #16D9A8 !important;
    color: #101931 !important;
    font-size: 1.6rem !important;
    font-weight: 500 !important;
    padding: 1rem 2.4rem !important;
    width: auto;
    opacity: 1 !important;
    border-radius: 100px !important;
    box-shadow: 0 0 0 2px #16D9A8 inset, 0 0 0 3px rgba(255, 255, 255, 0.48) inset, 0 4px 16px 0 rgba(22, 217, 168, 0.24) !important;
    gap: 2px;
  }
  .fixed-header_nav .mobile-only-btn .btn svg,
  .hero_heading--nav .mobile-only-btn .btn svg {
    width: 2rem;
    height: 2rem;
  }
  .fixed-header_nav .mobile-only-btn .btn:hover,
  .hero_heading--nav .mobile-only-btn .btn:hover {
    color: #101931 !important;
    background: #16D9A8 !important;
  }
  .fixed-header_nav .has-dropdown,
  .hero_heading--nav .has-dropdown {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .fixed-header_nav .has-dropdown .dropdown-menu,
  .hero_heading--nav .has-dropdown .dropdown-menu {
    position: static;
    transform: none;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    max-height: 0;
    overflow: hidden;
    padding: 0;
    margin-top: 0;
    transition: max-height 0.3s ease, padding 0.3s ease, margin 0.3s ease;
    box-shadow: none;
    border: none;
    background: #101931;
    border-radius: 0;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .fixed-header_nav .has-dropdown.open .dropdown-menu,
  .hero_heading--nav .has-dropdown.open .dropdown-menu {
    max-height: 80rem;
    padding: 1.6rem 0 0 0;
    margin-top: 1.6rem;
  }
  .fixed-header_nav .dropdown-menu.dropdown-solutions,
  .hero_heading--nav .dropdown-menu.dropdown-solutions {
    min-width: unset;
    width: 100%;
    transform: none !important;
  }
  .fixed-header_nav .dropdown-menu.dropdown-solutions .dropdown-columns,
  .hero_heading--nav .dropdown-menu.dropdown-solutions .dropdown-columns {
    display: flex;
    flex-direction: column;
    gap: 1.6rem;
    align-items: center;
    width: 100%;
  }
  .fixed-header_nav .dropdown-menu.dropdown-solutions .dropdown-col,
  .hero_heading--nav .dropdown-menu.dropdown-solutions .dropdown-col {
    width: 100%;
    align-items: center;
  }
  .fixed-header_nav .dropdown-menu.dropdown-solutions .dropdown-col .col-title,
  .hero_heading--nav .dropdown-menu.dropdown-solutions .dropdown-col .col-title {
    color: #FFFFFF;
    padding: 0.5rem 1rem;
    margin-bottom: 0.4rem;
    opacity: 0.5;
    text-align: center;
  }
  .fixed-header_nav .dropdown-menu.dropdown-solutions .dropdown-col a,
  .hero_heading--nav .dropdown-menu.dropdown-solutions .dropdown-col a {
    text-align: center;
    padding: 1rem;
    width: 100%;
    background: transparent !important;
  }
  .fixed-header_nav .dropdown-menu.dropdown-solutions .dropdown-col a:hover,
  .hero_heading--nav .dropdown-menu.dropdown-solutions .dropdown-col a:hover {
    color: #FFFFFF !important;
    background: transparent !important;
  }
  .fixed-header_nav .dropdown-menu a,
  .hero_heading--nav .dropdown-menu a {
    color: #FFFFFF !important;
    font-size: 1.8rem !important;
    opacity: 0.7;
    font-weight: 400 !important;
  }
  .fixed-header_nav .dropdown-menu a:hover,
  .hero_heading--nav .dropdown-menu a:hover {
    opacity: 1;
  }
  .fixed-header_nav .dropdown-menu .dropdown-item,
  .hero_heading--nav .dropdown-menu .dropdown-item {
    padding: 1rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.8rem;
    width: 100%;
  }
  .fixed-header_nav .dropdown-menu .dropdown-item:hover,
  .hero_heading--nav .dropdown-menu .dropdown-item:hover {
    background-color: transparent;
  }
  .fixed-header_nav .dropdown-menu .dropdown-icon,
  .hero_heading--nav .dropdown-menu .dropdown-icon {
    display: none;
  }
  .fixed-header_nav .dropdown-menu .dropdown-content,
  .hero_heading--nav .dropdown-menu .dropdown-content {
    align-items: center;
  }
  .fixed-header_nav .dropdown-menu .dropdown-content .title,
  .hero_heading--nav .dropdown-menu .dropdown-content .title {
    font-size: 1.8rem;
    font-weight: 400;
    color: #FFFFFF;
  }
  .fixed-header_nav .dropdown-menu .dropdown-content .desc,
  .hero_heading--nav .dropdown-menu .dropdown-content .desc {
    display: none;
  }
  .fixed-header .btn.header-cta {
    display: none;
  }
  .hero_heading {
    flex-wrap: wrap;
    position: relative;
  }
  .hero-nav-toggle {
    position: absolute;
    top: 2.4rem;
    right: 2.4rem;
  }
}
@media (max-width: 768px) {
  .hero {
    margin: 1.6rem 1.6rem 0 1.6rem;
    border-radius: 1.6rem;
  }
  .hero_heading {
    padding: 2.4rem;
  }
  .hero_heading--logo img {
    height: 2rem;
  }
  .hero_content {
    padding: 2.4rem 1.6rem;
  }
  .hero_content h1 {
    font-size: 3.2rem;
  }
  .hero_content p {
    font-size: 1.6rem;
    margin-bottom: 3.2rem;
  }
  .hero {
    min-height: auto;
    padding-bottom: 8rem;
  }
  .hero-nav-toggle {
    top: 2.4rem;
    right: 1.6rem;
  }
}
.solution-page .solution-hero {
  background: url("../media/images/g-bg-1.jpg") no-repeat center center;
  background-size: cover;
  min-height: auto;
  padding-bottom: 8rem;
  margin-bottom: 8rem;
  padding-top: 14rem; /* accounts for static header */
}
.solution-page .solution-hero .wrapper {
  max-width: 140rem;
  margin: 0 auto;
  padding: 0 2.4rem;
  display: grid;
  grid-template-columns: 1fr 0.8fr;
  gap: 8rem;
  align-items: center;
}
.solution-page .solution-hero .hero_content {
  text-align: left;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 0;
}
.solution-page .solution-hero .hero_content .product-badge {
  margin-bottom: 2.4rem;
}
.solution-page .solution-hero .hero_content h1 {
  font-size: 5.6rem;
  color: #FFFFFF;
  line-height: 1.1;
  margin-bottom: 2.4rem;
  max-width: 100%;
}
.solution-page .solution-hero .hero_content h1 span {
  color: #16D9A8;
}
.solution-page .solution-hero .hero_content p {
  color: #B4BDD4;
  font-size: 2rem;
  margin-bottom: 4rem;
  max-width: 90%;
}
.solution-page .solution-hero .hero_content--cta {
  justify-content: flex-start;
}
.solution-page .solution-hero .hero-visual {
  position: relative;
}
.solution-page .solution-hero .hero-visual .intel-card {
  background: #FFFFFF;
  padding: 3.2rem;
  border-radius: 20px;
  box-shadow: 0 20px 40px rgba(16, 25, 49, 0.08);
  transform: rotate(2deg);
  transition: transform 0.3s ease;
}
.solution-page .solution-hero .hero-visual .intel-card:hover {
  transform: rotate(0);
}
.solution-page .section-header {
  text-align: center;
  max-width: 80rem;
  margin: 0 auto 4.8rem auto;
}
.solution-page .section-header .feature-tag {
  justify-content: center;
  margin-bottom: 1.6rem;
}
.solution-page .section-header h2 {
  font-size: 4rem;
  margin-bottom: 1.6rem;
}
.solution-page .section-header h2 span {
  color: #16D9A8;
}
.solution-page .section-header p {
  font-size: 1.8rem;
  color: rgba(16, 25, 49, 0.7);
}
.solution-page .process-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 3.2rem;
  margin-bottom: 8rem;
}
.solution-page .process-grid .process-step {
  background: #FFFFFF;
  padding: 4rem 3.2rem;
  border-radius: 24px;
  box-shadow: 0 4px 20px rgba(16, 25, 49, 0.05);
  position: relative;
  border: 1px solid rgba(180, 189, 212, 0.2);
}
.solution-page .process-grid .process-step .step-number {
  width: 4.8rem;
  height: 4.8rem;
  background: #F7EEFE;
  color: #9048D8;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 2rem;
  margin-bottom: 2.4rem;
}
.solution-page .process-grid .process-step h4 {
  font-size: 2.2rem;
  margin-bottom: 1.6rem;
  color: #101931;
}
.solution-page .process-grid .process-step p {
  color: rgba(16, 25, 49, 0.7);
  font-size: 1.6rem;
  line-height: 1.6;
}
.solution-page .capabilities-section {
  background: #101931;
  color: #FFFFFF;
  padding: 8rem 4.8rem;
  border-radius: 4rem;
  width: calc(100% - 4.8rem);
  max-width: 140rem;
  margin: 0 auto 8rem auto;
}
.solution-page .capabilities-section .section-header h2, .solution-page .capabilities-section .section-header p {
  color: #FFFFFF;
}
.solution-page .capabilities-section .section-header p {
  opacity: 0.8;
}
.solution-page .capabilities-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2.4rem;
  max-width: 140rem;
  margin: 0 auto;
}
.solution-page .capabilities-grid .capability-card {
  background: rgba(255, 255, 255, 0.05);
  padding: 4rem;
  border-radius: 24px;
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
  border: 1px solid rgba(255, 255, 255, 0.1);
  transition: background 0.3s ease;
}
.solution-page .capabilities-grid .capability-card:hover {
  background: rgba(255, 255, 255, 0.08);
}
.solution-page .capabilities-grid .capability-card .cap-icon {
  width: 5.6rem;
  height: 5.6rem;
  background: rgba(22, 217, 168, 0.1);
  color: #16D9A8;
  border-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.solution-page .capabilities-grid .capability-card .cap-icon svg {
  width: 2.8rem;
  height: 2.8rem;
}
.solution-page .capabilities-grid .capability-card h4 {
  font-size: 2.4rem;
  font-weight: 600;
}
.solution-page .capabilities-grid .capability-card p {
  color: rgba(255, 255, 255, 0.7);
  font-size: 1.6rem;
  line-height: 1.6;
}
@media (max-width: 992px) {
  .solution-page .solution-hero .wrapper {
    grid-template-columns: 1fr;
    text-align: center;
  }
  .solution-page .solution-hero .wrapper .hero_content {
    align-items: center;
    text-align: center;
  }
  .solution-page .solution-hero .wrapper .hero_content p {
    max-width: 100%;
  }
  .solution-page .solution-hero .wrapper .hero_content--cta {
    justify-content: center;
  }
  .solution-page .process-grid, .solution-page .capabilities-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 1024px) {
  .features_grid {
    grid-template-columns: repeat(2, 1fr) !important;
    grid-template-rows: auto !important;
  }
  .features_grid .feature {
    grid-area: auto !important;
  }
  .features_grid .feature.files {
    min-height: 38rem;
  }
  .features_grid .feature.tasks {
    grid-column: span 2;
  }
  .features_grid .feature.insight:last-child {
    grid-column: span 2;
  }
  .solutions_container {
    flex-direction: column;
    gap: 3.2rem;
  }
  .solution {
    width: 100%;
  }
  .hero-pipeline-window {
    width: 95%;
    margin-top: -4rem;
  }
  .hero-pipeline-window .pipeline-ui {
    flex-direction: column;
    gap: 2.4rem;
    align-items: center;
    padding: 3.2rem 1.6rem;
    position: relative;
  }
  .hero-pipeline-window .pipeline-ui::before {
    content: "";
    position: absolute;
    top: 4rem;
    bottom: 21rem;
    left: 50%;
    width: 2px;
    margin-left: -1px;
    background-image: linear-gradient(to bottom, rgba(22, 217, 168, 0.8) 50%, rgba(22, 217, 168, 0.2) 50%);
    background-size: 2px 16px;
    z-index: 5;
    animation: flowDown 3s linear infinite;
  }
  .hero-pipeline-window .pipeline-ui::after {
    content: "";
    position: absolute;
    top: 4rem;
    left: 50%;
    width: 8px;
    height: 8px;
    margin-left: -4px;
    background-color: #16D9A8;
    border-radius: 50%;
    z-index: 6;
    box-shadow: 0 0 12px 4px rgba(22, 217, 168, 0.8);
    animation: particleDown 2.5s ease-in-out infinite;
  }
  @keyframes flowDown {
    from {
      background-position: 0 0;
    }
    to {
      background-position: 0 160px;
    }
  }
  @keyframes particleDown {
    0% {
      top: 4rem;
      opacity: 0;
    }
    10% {
      opacity: 1;
    }
    90% {
      opacity: 1;
    }
    100% {
      top: calc(100% - 21rem);
      opacity: 0;
    }
  }
  .hero-pipeline-window .pl-column.pl-inputs, .hero-pipeline-window .pl-column.pl-outputs {
    margin: 0;
    flex: auto;
    width: 100%;
    flex-direction: row;
    justify-content: center;
    align-items: stretch;
    gap: 1.2rem;
    position: relative;
  }
  .hero-pipeline-window .pl-column.pl-inputs::after {
    content: "";
    position: absolute;
    bottom: -4.4rem;
    left: 16.66%;
    right: 16.66%;
    height: 4.4rem;
    border-bottom: 2px dashed rgba(22, 217, 168, 0.5);
    border-left: 2px dashed rgba(22, 217, 168, 0.5);
    border-right: 2px dashed rgba(22, 217, 168, 0.5);
    border-radius: 0 0 12px 12px;
    z-index: 4;
    pointer-events: none;
  }
  .hero-pipeline-window .pl-column.pl-outputs::before {
    content: "";
    position: absolute;
    top: -4.4rem;
    left: 25%;
    right: 25%;
    height: 4.4rem;
    border-top: 2px dashed rgba(22, 217, 168, 0.5);
    border-left: 2px dashed rgba(22, 217, 168, 0.5);
    border-right: 2px dashed rgba(22, 217, 168, 0.5);
    border-radius: 12px 12px 0 0;
    z-index: 4;
    pointer-events: none;
  }
  .hero-pipeline-window .pl-column.pl-center {
    flex: auto;
    width: 100%;
    margin: 6.4rem 0;
  }
  .hero-pipeline-window .pl-node {
    width: 100%;
    z-index: 10;
  }
  .hero-pipeline-window .pl-node.in-node, .hero-pipeline-window .pl-node.out-node {
    flex-direction: column;
    padding: 1.2rem 0.8rem;
    gap: 0.8rem;
    text-align: center;
    max-width: none;
    flex: 1;
  }
  .hero-pipeline-window .pl-node.in-node .pl-icon, .hero-pipeline-window .pl-node.out-node .pl-icon {
    margin: 0 auto;
  }
  .hero-pipeline-window .pl-node.out-node .out-header {
    flex-direction: column;
    gap: 0.8rem;
  }
  .hero-pipeline-window .pl-node.out-node .out-status {
    flex-direction: column;
    gap: 0.4rem;
  }
  .hero-pipeline-window .pl-core-engine {
    z-index: 10;
    background: transparent;
  }
  .hero-pipeline-window .pl-core-engine .pl-orbit-tags .pl-tag.tag-1 {
    top: 50% !important;
    left: 0 !important;
    bottom: auto !important;
    right: auto !important;
    transform: translate(-50%, -50%) !important;
    animation: none !important;
    margin: 0 !important;
  }
  .hero-pipeline-window .pl-core-engine .pl-orbit-tags .pl-tag.tag-2 {
    top: 50% !important;
    left: auto !important;
    bottom: auto !important;
    right: 0 !important;
    transform: translate(50%, -50%) !important;
    animation: none !important;
    margin: 0 !important;
  }
  .hero-pipeline-window .pl-core-engine .pl-orbit-tags .pl-tag.tag-3 {
    top: 0 !important;
    left: 50% !important;
    bottom: auto !important;
    right: auto !important;
    transform: translate(-50%, -50%) !important;
    animation: none !important;
    margin: 0 !important;
  }
  .hero-pipeline-window .pl-core-engine .pl-orbit-tags .pl-tag.tag-4 {
    top: auto !important;
    left: 50% !important;
    bottom: 0 !important;
    right: auto !important;
    transform: translate(-50%, 50%) !important;
    animation: none !important;
    margin: 0 !important;
  }
  .hero-pipeline-window .pl-pipes {
    display: none;
  }
  .models_container {
    flex-wrap: wrap;
    gap: 2.4rem;
    padding: 0 2.4rem;
  }
  .footer .wrapper {
    flex-direction: column;
    gap: 4rem;
  }
  .contact-wrapper {
    flex-direction: column;
  }
  .solutions .wrapper h2 {
    text-align: center;
  }
  .book {
    padding: 4rem 0;
  }
  .book .wrapper {
    flex-direction: column;
    gap: 4rem;
  }
  .book_visual {
    padding: 3.2rem;
  }
  .book_visual .floating_stats {
    display: none;
  }
  .book_content {
    padding: 0;
  }
  .book_content h2 div {
    font-size: 3.6rem !important;
    width: auto;
  }
  .footer-full_top {
    flex-direction: column;
    gap: 4.8rem;
  }
  .footer-full_brand {
    flex: auto;
  }
  .footer-full_links {
    flex-wrap: wrap;
    gap: 3.2rem;
  }
  .footer-full_column {
    flex: 1 1 calc(50% - 3.2rem);
  }
}
@media (max-width: 768px) {
  .features_grid {
    grid-template-columns: 1fr !important;
  }
  .features_grid .feature {
    grid-area: auto !important;
  }
  .features_grid .feature.files {
    order: 1;
    min-height: 38rem;
  }
  .features_grid .feature.flow {
    order: 2;
    padding: 2.4rem;
  }
  .features_grid .feature.flow .flow_title p {
    min-width: auto;
    width: 100%;
  }
  .features_grid .feature.flow .flow_visual .flow_line {
    gap: 0.8rem;
  }
  .features_grid .feature.flow .flow_visual .flow_line .box {
    min-width: 0;
    padding: 1.2rem;
  }
  .features_grid .feature.flow .flow_visual .flow_line .arrow {
    width: 3.2rem;
  }
  .features_grid .feature.tasks {
    order: 3;
  }
  .features_grid .feature.tasks .tasks_visual.chat-visual {
    padding: 2.4rem 1.6rem 0 1.6rem;
  }
  .features_grid .feature.insight {
    order: 4;
  }
  .features h2 {
    padding: 0 1.6rem;
  }
  .features h2 .break-desktop {
    display: inline;
  }
  .hero-pipeline-window {
    margin-top: -6rem;
    min-height: auto;
  }
  .hero-pipeline-window .pipeline-ui {
    padding: 1.6rem 1.2rem;
    gap: 1.6rem;
  }
  .hero-pipeline-window .pipeline-ui::before {
    top: 2rem;
    bottom: 16rem;
  }
  .hero-pipeline-window .pipeline-ui::after {
    top: 2rem;
    animation: particleDownMobile 2.5s ease-in-out infinite;
  }
  @keyframes particleDownMobile {
    0% {
      top: 2rem;
      opacity: 0;
    }
    10% {
      opacity: 1;
    }
    90% {
      opacity: 1;
    }
    100% {
      top: calc(100% - 16rem);
      opacity: 0;
    }
  }
  .hero-pipeline-window .pl-column.pl-inputs, .hero-pipeline-window .pl-column.pl-outputs {
    gap: 0.8rem;
  }
  .hero-pipeline-window .pl-column.pl-center {
    margin: 4rem 0;
  }
  .hero-pipeline-window .pl-node.in-node, .hero-pipeline-window .pl-node.out-node {
    padding: 1rem 0.4rem;
    gap: 0.6rem;
  }
  .hero-pipeline-window .pl-node.in-node .pl-icon, .hero-pipeline-window .pl-node.out-node .pl-icon {
    width: 2.8rem;
    height: 2.8rem;
  }
  .hero-pipeline-window .pl-node.in-node .pl-icon svg, .hero-pipeline-window .pl-node.out-node .pl-icon svg {
    width: 1.4rem;
    height: 1.4rem;
  }
  .hero-pipeline-window .pl-node.in-node span, .hero-pipeline-window .pl-node.out-node span {
    line-height: 1.2;
  }
  .hero-pipeline-window .pl-node.out-node {
    padding: 1rem 0.4rem;
    gap: 0.8rem;
  }
  .hero-pipeline-window .pl-node.out-node .pl-icon {
    width: 3.2rem;
    height: 3.2rem;
  }
  .hero-pipeline-window .pl-node.out-node .pl-icon svg {
    width: 1.6rem;
    height: 1.6rem;
  }
  .hero-pipeline-window .pl-node.out-node .out-status .process-bar {
    height: 0.4rem;
  }
  .hero-pipeline-window .pl-core-engine {
    width: 14rem;
    height: 14rem;
  }
  .hero-pipeline-window .pl-core-engine .pl-core-center .pl-core-icon svg {
    width: 2rem;
    height: 2rem;
  }
  .hero-pipeline-window .pl-core-engine .pl-orbit-tags {
    inset: -1.6rem;
  }
  .hero-pipeline-window .pl-core-engine .pl-orbit-tags .pl-tag {
    padding: 0.3rem 0.8rem;
  }
  .hero_content {
    padding: 4.8rem 1.6rem;
  }
  .hero_content h1 svg {
    width: 2.4rem;
    height: 2.4rem;
  }
  .footer_content {
    flex-direction: column;
    gap: 2.4rem;
  }
  .footer_content_col {
    width: 100%;
  }
  .cta {
    padding: 0 2.4rem;
    text-align: center;
  }
  .form_row {
    flex-direction: column;
    align-items: flex-start;
    gap: 1.6rem;
  }
  .form_controller {
    width: 100%;
  }
  .form_footer {
    flex-direction: column;
    align-items: stretch;
    gap: 2.4rem;
  }
  .form_footer .btn {
    width: 100%;
    justify-content: center;
  }
  .form_footer .form_disclaimer {
    max-width: 100%;
    text-align: center;
  }
  .book_visual {
    padding: 3.2rem 1.6rem;
    border-radius: 1.6rem;
  }
  .book_visual .review_card {
    padding: 1.6rem;
  }
  .book_visual .review_card .quote-mark {
    margin-bottom: 2.4rem;
  }
  .book_visual .review_card .quote-mark svg {
    width: 3.2rem;
    height: 3.2rem;
  }
  .book_visual .review_card .review_content p {
    font-size: 2rem;
    margin-bottom: 3.2rem;
  }
  .book_visual .review_card .review_author {
    flex-direction: column;
    align-items: flex-start;
    gap: 1.6rem;
  }
  .book_visual .review_carousel .review_nav {
    padding: 1.6rem 1.6rem;
    margin-top: 0;
  }
  .book_content {
    padding: 2.4rem 1.6rem;
  }
  .book_content h2 {
    font-size: 2.4rem;
    margin-bottom: 3.2rem;
  }
  .book_content h2 div {
    padding-top: 0.8rem;
    font-size: 4.8rem !important;
  }
  .form input[type=text],
  .form input[type=email],
  .form input[type=tel] {
    min-height: 4.8rem;
  }
  .footer-full_links {
    gap: 3.2rem 1.6rem;
  }
  .footer-full_column {
    flex: 0 0 calc(50% - 0.8rem);
    min-width: 0;
  }
  .footer-full_column:nth-child(1) {
    order: 2;
  }
  .footer-full_column:nth-child(2) {
    order: 1;
  }
  .footer-full_column:nth-child(3) {
    order: 3;
  }
  .footer-full_column:nth-child(4) {
    order: 4;
  }
  .footer-full_bottom {
    flex-direction: column;
    gap: 1.6rem;
    align-items: flex-start;
  }
  .footer-full_legal {
    flex-wrap: wrap;
    gap: 1.6rem;
  }
  .faq-clients .clients-grid {
    gap: 2.4rem;
  }
  .faq-clients .clients-grid img {
    height: 2rem;
  }
  .faq-clients .clients-grid img.big {
    height: 3.6rem;
  }
  .contact-hero {
    padding-top: 10rem;
  }
  .clients {
    margin-bottom: 6.4rem;
  }
}
@media (max-width: 480px) {
  html {
    font-size: 55%;
  }
  .btn {
    font-size: 1.8rem;
  }
  .hero_content h1 {
    font-size: 4rem;
    margin-bottom: 2.4rem;
  }
  .hero_content p {
    font-size: 2rem;
    margin-bottom: 3.2rem;
  }
  .solution_visual {
    transform: scale(1);
    transform-origin: center;
    padding: 0rem !important;
  }
  .features {
    padding-bottom: 6.4rem;
    margin-top: -1.6rem;
  }
  .features .box.icon-only {
    max-width: 8rem !important;
  }
  .features .insight {
    padding: 0.8rem 0;
  }
  .features_grid {
    margin-top: 7rem;
  }
  .models {
    margin-bottom: 8rem;
  }
  .solutions .solution {
    padding: 1.6rem;
  }
  .solutions .solution_container {
    padding: 0 1.6rem 1.6rem 1.6rem;
  }
}/*# sourceMappingURL=main.css.map */