.hero {
      position: relative;
      padding: clamp(84px, 10vw, 138px) 0 clamp(86px, 9vw, 122px);
    }

.hero::before {
      content: "";
      position: absolute;
      inset: 0;
      pointer-events: none;
      background:
        radial-gradient(circle at 68% 35%, rgba(104, 174, 252, 0.08), transparent 27%),
        radial-gradient(circle at 25% 20%, rgba(102, 217, 200, 0.06), transparent 23%);
      mask-image: linear-gradient(to bottom, black, transparent 92%);
    }

.hero-layout {
      position: relative;
      z-index: 1;
      display: grid;
      grid-template-columns: minmax(0, 0.93fr) minmax(480px, 1.07fr);
      align-items: center;
      gap: clamp(50px, 7vw, 88px);
    }

.hero h1 {
      max-width: 760px;
      margin: 0;
      font-size: clamp(3.25rem, 6vw, 6rem);
      line-height: 0.98;
      letter-spacing: -0.065em;
      text-wrap: balance;
    }

.gradient-text {
      color: transparent;
      background: linear-gradient(105deg, var(--accent-strong), var(--blue) 52%, var(--violet));
      background-clip: text;
      -webkit-background-clip: text;
    }

.hero-copy {
      max-width: 670px;
      margin: 27px 0 0;
      color: var(--muted-strong);
      font-size: clamp(1.05rem, 1.5vw, 1.22rem);
      line-height: 1.72;
    }

.hero-actions {
      margin-top: 34px;
      display: flex;
      flex-wrap: wrap;
      gap: 13px;
    }

.trust-line {
      margin: 26px 0 0;
      display: flex;
      flex-wrap: wrap;
      gap: 11px 20px;
      color: var(--muted);
      font-size: 0.82rem;
    }

.trust-item {
      display: inline-flex;
      align-items: center;
      gap: 8px;
    }

.trust-item::before {
      content: "";
      width: 5px;
      height: 5px;
      border-radius: 50%;
      background: var(--accent);
      box-shadow: 0 0 0 4px rgba(102, 217, 200, 0.09);
    }

.hero-visual-wrap {
      position: relative;
      isolation: isolate;
    }

.hero-orbit {
      position: absolute;
      z-index: -1;
      width: 430px;
      aspect-ratio: 1;
      top: 50%;
      left: 50%;
      border: 1px solid rgba(102, 217, 200, 0.11);
      border-radius: 50%;
      transform: translate(-50%, -50%);
    }

.hero-orbit::before,
    .hero-orbit::after {
      content: "";
      position: absolute;
      inset: 14%;
      border: 1px solid rgba(104, 174, 252, 0.11);
      border-radius: inherit;
    }

.hero-orbit::after {
      inset: 31%;
      border-color: rgba(168, 137, 247, 0.14);
    }

.app-preview {
      overflow: hidden;
      border: 1px solid var(--line-strong);
      border-radius: 22px;
      background: #09131d;
      box-shadow: var(--shadow);
      transform: perspective(1300px) rotateY(-4deg) rotateX(2deg);
      transform-origin: center;
    }

.preview-topbar {
      min-height: 42px;
      padding: 0 13px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      border-bottom: 1px solid var(--line);
      background: rgba(15, 29, 42, 0.95);
    }

.window-dots {
      display: flex;
      gap: 6px;
    }

.window-dot {
      width: 7px;
      height: 7px;
      border-radius: 50%;
      background: rgba(190, 210, 224, 0.24);
    }

.preview-label {
      color: var(--muted);
      font-size: 0.66rem;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }

.preview-body {
      min-height: 420px;
      display: grid;
      grid-template-columns: 31% 69%;
    }

.preview-sidebar {
      padding: 13px;
      border-right: 1px solid var(--line);
      background: #0b1620;
    }

.preview-sidebar-title {
      margin-bottom: 11px;
      color: var(--muted);
      font-size: 0.61rem;
      font-weight: 700;
      letter-spacing: 0.09em;
      text-transform: uppercase;
    }

.run-row {
      margin-bottom: 8px;
      padding: 9px;
      border: 1px solid var(--line);
      border-radius: 8px;
      background: rgba(255, 255, 255, 0.018);
    }

.run-row.active {
      border-color: rgba(102, 217, 200, 0.28);
      background: rgba(102, 217, 200, 0.055);
    }

.run-row-head {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 8px;
    }

.run-name {
      color: #d7e1e8;
      font-size: 0.65rem;
      font-weight: 650;
    }

.run-score {
      color: var(--accent-strong);
      font-size: 0.59rem;
    }

.run-meta {
      margin-top: 6px;
      display: flex;
      gap: 5px;
    }

.mini-pill {
      height: 4px;
      border-radius: 99px;
      background: rgba(190, 210, 224, 0.17);
    }

.mini-pill:nth-child(1) { width: 34%; }

.mini-pill:nth-child(2) { width: 24%; }

.mini-pill:nth-child(3) { width: 18%; background: rgba(102, 217, 200, 0.28); }

.preview-workspace {
      padding: 12px;
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      grid-template-rows: 1.15fr 0.85fr;
      gap: 10px;
      background: #08111a;
    }

.preview-panel {
      overflow: hidden;
      min-width: 0;
      border: 1px solid var(--line);
      border-radius: 9px;
      background: rgba(14, 27, 39, 0.95);
    }

.preview-panel.wide {
      grid-column: 1 / -1;
    }

.panel-head {
      height: 31px;
      padding: 0 9px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      border-bottom: 1px solid var(--line);
      color: #cbd6de;
      font-size: 0.61rem;
      font-weight: 650;
    }

.panel-head span:last-child {
      color: var(--muted);
      font-size: 0.54rem;
      font-weight: 500;
    }

.scatter-chart {
      position: relative;
      height: calc(100% - 31px);
      min-height: 142px;
      background:
        radial-gradient(circle at 22% 48%, rgba(104, 174, 252, 0.05), transparent 33%),
        linear-gradient(to right, transparent 49.6%, rgba(190, 210, 224, 0.055) 50%, transparent 50.4%),
        linear-gradient(to bottom, transparent 49.6%, rgba(190, 210, 224, 0.055) 50%, transparent 50.4%);
    }

.point {
      position: absolute;
      width: 5px;
      height: 5px;
      border-radius: 50%;
      opacity: 0.78;
      box-shadow: 0 0 7px currentColor;
    }

.point.a { color: var(--accent); }

.point.b { color: var(--blue); }

.point.c { color: var(--violet); }

.metric-bars {
      height: calc(100% - 31px);
      padding: 14px 13px;
      display: grid;
      align-content: center;
      gap: 11px;
    }

.metric-row {
      display: grid;
      grid-template-columns: 60px 1fr 25px;
      align-items: center;
      gap: 7px;
      color: var(--muted);
      font-size: 0.53rem;
    }

.metric-track {
      overflow: hidden;
      height: 5px;
      border-radius: 99px;
      background: rgba(190, 210, 224, 0.11);
    }

.metric-fill {
      height: 100%;
      border-radius: inherit;
      background: linear-gradient(90deg, var(--blue), var(--accent));
    }

.insight-list {
      height: calc(100% - 31px);
      padding: 10px 12px;
      display: grid;
      align-content: center;
      gap: 7px;
    }

.insight-row {
      display: flex;
      align-items: center;
      gap: 8px;
      color: var(--muted);
      font-size: 0.55rem;
    }

.insight-icon {
      width: 17px;
      height: 17px;
      display: grid;
      place-items: center;
      flex: none;
      border: 1px solid rgba(102, 217, 200, 0.18);
      border-radius: 5px;
      color: var(--accent);
      background: rgba(102, 217, 200, 0.055);
      font-size: 0.55rem;
    }

.hero-float-card {
      position: absolute;
      right: -20px;
      bottom: -25px;
      width: 214px;
      padding: 13px 14px;
      border: 1px solid rgba(102, 217, 200, 0.24);
      border-radius: 13px;
      background: rgba(10, 23, 33, 0.96);
      box-shadow: var(--shadow-soft);
      backdrop-filter: blur(14px);
    }

.float-card-label {
      color: var(--accent-strong);
      font-size: 0.63rem;
      font-weight: 750;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }

.float-card-title {
      margin-top: 5px;
      color: #ecf5f8;
      font-size: 0.82rem;
      font-weight: 650;
    }

.float-card-meta {
      margin-top: 8px;
      display: flex;
      align-items: center;
      gap: 7px;
      color: var(--muted);
      font-size: 0.62rem;
    }

.float-card-meta::before {
      content: "";
      width: 7px;
      height: 7px;
      border-radius: 50%;
      background: var(--accent);
      box-shadow: 0 0 10px rgba(102, 217, 200, 0.65);
    }

.thesis-panel {
      position: relative;
      overflow: hidden;
      padding: clamp(38px, 6vw, 66px);
      border: 1px solid var(--line);
      border-radius: var(--radius-lg);
      background:
        radial-gradient(circle at 8% 18%, rgba(104, 174, 252, 0.09), transparent 27rem),
        radial-gradient(circle at 94% 84%, rgba(102, 217, 200, 0.08), transparent 25rem),
        linear-gradient(145deg, rgba(15, 29, 42, 0.94), rgba(7, 17, 26, 0.96));
      box-shadow: var(--shadow-soft);
    }

.thesis-grid {
      display: grid;
      grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
      gap: clamp(40px, 6vw, 78px);
      align-items: center;
    }

.thesis-copy h2 {
      margin: 0;
      font-size: clamp(2.1rem, 3.8vw, 3.45rem);
      line-height: 1.08;
      letter-spacing: -0.05em;
      text-wrap: balance;
    }

.thesis-copy p {
      margin: 20px 0 0;
      color: var(--muted-strong);
      font-size: 1rem;
      line-height: 1.75;
    }

.thesis-note {
      margin-top: 28px;
      padding-top: 22px;
      display: flex;
      gap: 12px;
      border-top: 1px solid var(--line);
      color: var(--muted);
      font-size: 0.88rem;
      line-height: 1.62;
    }

.thesis-note::before {
      content: "";
      width: 9px;
      height: 9px;
      flex: none;
      margin-top: 0.45em;
      border-radius: 50%;
      background: var(--accent);
      box-shadow: 0 0 13px rgba(102, 217, 200, 0.55);
    }

.investigation-flow {
      position: relative;
      display: grid;
      grid-template-columns: repeat(5, minmax(0, 1fr));
      gap: 10px;
      align-items: stretch;
    }

.investigation-flow::before {
      content: "";
      position: absolute;
      z-index: 0;
      left: 8%;
      right: 8%;
      top: 50%;
      height: 1px;
      background: linear-gradient(90deg, rgba(104, 174, 252, 0.18), rgba(102, 217, 200, 0.45), rgba(168, 137, 247, 0.25));
    }

.flow-node {
      position: relative;
      z-index: 1;
      min-height: 142px;
      padding: 17px 13px;
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      border: 1px solid var(--line);
      border-radius: 14px;
      background: rgba(8, 19, 28, 0.94);
      box-shadow: 0 12px 28px rgba(0, 0, 0, 0.18);
    }

.flow-node:nth-child(2),
    .flow-node:nth-child(4) {
      transform: translateY(18px);
    }

.flow-index {
      color: var(--accent-strong);
      font-size: 0.62rem;
      font-weight: 750;
      letter-spacing: 0.08em;
    }

.flow-node strong {
      font-size: 0.86rem;
      line-height: 1.25;
    }

.flow-node span:last-child {
      color: var(--muted);
      font-size: 0.68rem;
      line-height: 1.4;
    }

.workflow-grid {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 20px;
    }

.workflow-card {
      overflow: hidden;
      min-height: 500px;
      display: flex;
      flex-direction: column;
      border: 1px solid var(--line);
      border-radius: var(--radius-lg);
      background: linear-gradient(145deg, rgba(16, 30, 43, 0.92), rgba(10, 21, 31, 0.94));
      box-shadow: 0 14px 55px rgba(0, 0, 0, 0.14);
      transition: transform 220ms ease, border-color 220ms ease, box-shadow 220ms ease;
    }

.workflow-card:hover {
      transform: translateY(-4px);
      border-color: rgba(102, 217, 200, 0.23);
      box-shadow: 0 22px 65px rgba(0, 0, 0, 0.21);
    }

.workflow-copy {
      padding: 30px 29px 24px;
    }

.workflow-number {
      margin-bottom: 17px;
      display: flex;
      align-items: center;
      gap: 12px;
      color: var(--accent);
      font-size: 0.75rem;
      font-weight: 750;
      letter-spacing: 0.12em;
      text-transform: uppercase;
    }

.workflow-number::after {
      content: "";
      width: 42px;
      height: 1px;
      background: currentColor;
      opacity: 0.55;
    }

.workflow-card h3 {
      margin: 0;
      font-size: clamp(1.45rem, 2vw, 1.85rem);
      line-height: 1.14;
      letter-spacing: -0.035em;
    }

.workflow-card p {
      margin: 14px 0 0;
      color: var(--muted);
      font-size: 0.93rem;
      line-height: 1.66;
    }

.workflow-tags {
      margin-top: 20px;
      display: flex;
      flex-wrap: wrap;
      gap: 7px;
    }

.tag {
      padding: 6px 9px;
      border: 1px solid var(--line);
      border-radius: 7px;
      color: var(--muted-strong);
      background: rgba(255, 255, 255, 0.018);
      font-size: 0.66rem;
    }

.workflow-media {
      min-height: 230px;
      margin-top: auto;
      padding: 18px 18px 0;
      position: relative;
      overflow: hidden;
      border-top: 1px solid rgba(180, 208, 230, 0.08);
      background:
        radial-gradient(circle at 50% 100%, rgba(102, 217, 200, 0.08), transparent 55%),
        rgba(5, 13, 20, 0.5);
    }

.mock-window {
      height: 100%;
      min-height: 220px;
      overflow: hidden;
      border: 1px solid var(--line-strong);
      border-bottom: 0;
      border-radius: 14px 14px 0 0;
      background: #0a141e;
      box-shadow: 0 16px 35px rgba(0, 0, 0, 0.22);
    }

.mock-toolbar {
      min-height: 32px;
      padding: 0 11px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      border-bottom: 1px solid var(--line);
      background: #0e1b27;
      color: var(--muted);
      font-size: 0.58rem;
    }

.mock-toolbar-dots {
      display: flex;
      gap: 5px;
    }

.mock-toolbar-dots span {
      width: 5px;
      height: 5px;
      border-radius: 50%;
      background: rgba(200, 217, 229, 0.22);
    }

.mock-content {
      height: calc(100% - 32px);
      padding: 14px;
    }

.method-stack {
      display: grid;
      gap: 8px;
    }

.method-row {
      padding: 10px;
      display: grid;
      grid-template-columns: 18px 1fr auto;
      align-items: center;
      gap: 9px;
      border: 1px solid var(--line);
      border-radius: 8px;
      color: #d7e2e8;
      font-size: 0.57rem;
    }

.method-row::before {
      content: "";
      width: 9px;
      height: 9px;
      border: 2px solid rgba(102, 217, 200, 0.4);
      border-radius: 3px;
      background: var(--accent);
      box-shadow: inset 0 0 0 2px #0c1722;
    }

.method-row span:last-child {
      color: var(--accent-strong);
      font-size: 0.49rem;
    }

.lineage-tree {
      display: grid;
      gap: 0;
    }

.lineage-row {
      position: relative;
      min-height: 39px;
      padding: 8px 7px 8px 27px;
      display: grid;
      grid-template-columns: 1fr auto;
      align-items: center;
      gap: 8px;
      border-bottom: 1px solid rgba(180, 208, 230, 0.07);
    }

.lineage-row.child {
      margin-left: 17px;
    }

.lineage-row::before {
      content: "";
      position: absolute;
      top: 15px;
      left: 7px;
      width: 8px;
      height: 8px;
      border: 2px solid var(--accent);
      border-radius: 50%;
      box-shadow: 0 0 8px rgba(102, 217, 200, 0.25);
    }

.lineage-row.child::after {
      content: "";
      position: absolute;
      left: -2px;
      top: -15px;
      width: 15px;
      height: 34px;
      border-left: 1px solid rgba(102, 217, 200, 0.3);
      border-bottom: 1px solid rgba(102, 217, 200, 0.3);
      border-radius: 0 0 0 5px;
    }

.lineage-row strong,
    .lineage-row small {
      display: block;
    }

.lineage-row strong {
      color: #dce7ec;
      font-size: 0.55rem;
      font-weight: 620;
    }

.lineage-row small {
      margin-top: 2px;
      color: var(--muted);
      font-size: 0.44rem;
    }

.lineage-score {
      color: var(--accent-strong);
      font-size: 0.53rem;
      font-weight: 700;
    }

.snapshot-mini-grid {
      height: 100%;
      display: grid;
      grid-template-columns: 0.88fr 1.12fr;
      gap: 10px;
    }

.snapshot-meta,
    .snapshot-views {
      padding: 11px;
      border: 1px solid var(--line);
      border-radius: 9px;
      background: rgba(255, 255, 255, 0.015);
    }

.mock-label {
      margin-bottom: 10px;
      color: var(--muted);
      font-size: 0.5rem;
      font-weight: 700;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }

.snapshot-mini-title {
      color: #dce7ed;
      font-size: 0.65rem;
      font-weight: 650;
    }

.snapshot-mini-line {
      margin-top: 9px;
      display: grid;
      grid-template-columns: 44px 1fr;
      gap: 6px;
      color: var(--muted);
      font-size: 0.47rem;
    }

.fingerprint {
      margin-top: 12px;
      padding: 8px;
      border: 1px solid rgba(102, 217, 200, 0.16);
      border-radius: 7px;
      color: var(--accent-strong);
      background: rgba(102, 217, 200, 0.04);
      font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
      font-size: 0.42rem;
      word-break: break-all;
    }

.snapshot-view-row {
      margin-bottom: 7px;
      padding: 8px;
      display: flex;
      align-items: center;
      gap: 8px;
      border: 1px solid var(--line);
      border-radius: 7px;
      color: #d8e3e9;
      font-size: 0.52rem;
    }

.snapshot-view-row::before {
      content: "";
      width: 7px;
      height: 7px;
      flex: none;
      border-radius: 2px;
      background: var(--accent);
      box-shadow: 0 0 8px rgba(102, 217, 200, 0.4);
    }

.responsibility-layout {
      display: grid;
      grid-template-columns: minmax(0, 0.82fr) minmax(0, 1.18fr);
      gap: clamp(40px, 7vw, 84px);
      align-items: center;
    }

.responsibility-copy h2 {
      margin: 0;
      font-size: clamp(2.1rem, 4vw, 3.6rem);
      line-height: 1.08;
      letter-spacing: -0.05em;
      text-wrap: balance;
    }

.responsibility-copy p {
      margin: 20px 0 0;
      color: var(--muted-strong);
      font-size: 1rem;
      line-height: 1.75;
    }

.responsibility-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 16px;
    }

.responsibility-card {
      min-height: 335px;
      padding: 27px 24px;
      border: 1px solid var(--line);
      border-radius: var(--radius);
      background: rgba(8, 19, 28, 0.76);
    }

.responsibility-card.system {
      border-color: rgba(102, 217, 200, 0.2);
      background: linear-gradient(150deg, rgba(102, 217, 200, 0.07), rgba(8, 19, 28, 0.8));
    }

.responsibility-card.researcher {
      border-color: rgba(168, 137, 247, 0.2);
      background: linear-gradient(150deg, rgba(168, 137, 247, 0.06), rgba(8, 19, 28, 0.8));
    }

.responsibility-label {
      color: var(--accent-strong);
      font-size: 0.68rem;
      font-weight: 750;
      letter-spacing: 0.1em;
      text-transform: uppercase;
    }

.researcher .responsibility-label {
      color: #c8b5fb;
    }

.responsibility-card h3 {
      margin: 13px 0 0;
      font-size: 1.24rem;
      letter-spacing: -0.03em;
    }

.responsibility-card ul {
      margin: 22px 0 0;
      padding: 0;
      display: grid;
      gap: 13px;
      list-style: none;
    }

.responsibility-card li {
      position: relative;
      padding-left: 18px;
      color: var(--muted);
      font-size: 0.84rem;
      line-height: 1.55;
    }

.responsibility-card li::before {
      content: "";
      position: absolute;
      top: 0.62em;
      left: 0;
      width: 7px;
      height: 7px;
      border-radius: 2px;
      background: var(--accent);
    }

.researcher li::before {
      background: var(--violet);
    }

.integrations-shell {
      position: relative;
      min-height: 410px;
      display: grid;
      place-items: center;
      border: 1px solid var(--line);
      border-radius: var(--radius-lg);
      overflow: hidden;
      background: rgba(8, 18, 28, 0.66);
      box-shadow: var(--shadow-soft);
    }

.integrations-shell::before {
      content: "";
      position: absolute;
      inset: 0;
      opacity: 0.45;
      background:
        linear-gradient(180deg, rgba(104, 174, 252, 0.07), transparent 22%),
        linear-gradient(180deg, transparent 0%, rgba(168, 137, 247, 0.05) 55%, transparent 100%);
      mask-image: radial-gradient(circle at center, black, transparent 76%);
    }

.integration-network {
      position: relative;
      width: min(900px, 92%);
      height: 300px;
    }

.integration-lines {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
    }

.integration-lines path {
      fill: none;
      stroke: rgba(125, 177, 236, 0.35);
      stroke-width: 1.2;
      stroke-dasharray: 5 8;
    }

.integration-node {
      position: absolute;
      min-width: 132px;
      padding: 13px 16px;
      border: 1px solid var(--line-strong);
      border-radius: 14px;
      background: rgba(14, 29, 43, 0.93);
      color: var(--muted-strong);
      text-align: center;
      font-size: 0.88rem;
      box-shadow: 0 12px 35px rgba(0, 0, 0, 0.2);
      transition: transform var(--ease), border-color var(--ease), color var(--ease);
    }

.integration-node:hover {
      transform: translateY(-3px);
      border-color: rgba(139, 232, 220, 0.5);
      color: var(--text);
    }

.integration-node small {
      display: block;
      margin-top: 3px;
      color: var(--muted);
      font-size: 0.68rem;
      text-transform: uppercase;
      letter-spacing: 0.08em;
    }

.integration-node.center {
      left: 50%;
      top: 50%;
      min-width: 184px;
      padding: 23px 28px;
      color: var(--text);
      border-color: rgba(139, 232, 220, 0.46);
      background: linear-gradient(145deg, rgba(25, 55, 69, 0.97), rgba(20, 34, 55, 0.97));
      box-shadow: 0 0 0 8px rgba(102, 217, 200, 0.04), 0 22px 60px rgba(0, 0, 0, 0.35);
      transform: translate(-50%, -50%);
    }

.integration-node.center:hover {
      transform: translate(-50%, calc(-50% - 3px));
    }

.integration-node.drive { left: 3%; top: 8%; }

.integration-node.sheets { left: 3%; bottom: 8%; }

.integration-node.vertex { left: 23%; top: 2%; }

.integration-node.onedrive { left: 23%; bottom: 2%; }

.integration-node.mlflow { right: 4%; top: 8%; }

.integration-node.notion { right: 4%; bottom: 8%; }

.demo-layout {
      display: grid;
      grid-template-columns: minmax(0, 0.8fr) minmax(560px, 1.2fr);
      align-items: center;
      gap: clamp(48px, 7vw, 86px);
    }

.demo-copy h2 {
      margin: 0;
      font-size: clamp(2.25rem, 4.3vw, 4rem);
      line-height: 1.06;
      letter-spacing: -0.052em;
    }

.demo-copy > p {
      margin: 20px 0 0;
      color: var(--muted-strong);
      font-size: 1.03rem;
      line-height: 1.72;
    }

.demo-points {
      margin: 28px 0 31px;
      padding: 0;
      display: grid;
      gap: 15px;
      list-style: none;
    }

.demo-points li {
      display: flex;
      align-items: flex-start;
      gap: 12px;
      color: var(--muted-strong);
      font-size: 0.91rem;
    }

.demo-check {
      width: 23px;
      height: 23px;
      display: grid;
      place-items: center;
      flex: none;
      margin-top: 1px;
      border: 1px solid rgba(102, 217, 200, 0.2);
      border-radius: 7px;
      color: var(--accent);
      background: rgba(102, 217, 200, 0.05);
    }

.demo-check svg {
      width: 13px;
    }

.demo-caveat {
      margin: -4px 0 28px !important;
      padding: 12px 14px;
      border-left: 2px solid rgba(102, 217, 200, 0.45);
      color: var(--muted) !important;
      background: rgba(102, 217, 200, 0.035);
      font-size: 0.82rem !important;
      line-height: 1.55 !important;
    }

.snapshot-preview-shell {
      position: relative;
    }

.snapshot-preview-shell::before {
      content: "";
      position: absolute;
      inset: 8% -7% -8% 14%;
      z-index: -1;
      border-radius: 40px;
      background: radial-gradient(circle, rgba(102, 217, 200, 0.13), rgba(104, 174, 252, 0.04) 45%, transparent 70%);
      filter: blur(18px);
    }

.snapshot-browser {
      overflow: hidden;
      border: 1px solid var(--line-strong);
      border-radius: 20px;
      background: #08121b;
      box-shadow: var(--shadow);
    }

.snapshot-browser-bar {
      min-height: 45px;
      padding: 0 14px;
      display: grid;
      grid-template-columns: 1fr 2.1fr 1fr;
      align-items: center;
      gap: 10px;
      border-bottom: 1px solid var(--line);
      background: #0e1b27;
    }

.browser-address {
      overflow: hidden;
      padding: 6px 11px;
      border: 1px solid var(--line);
      border-radius: 8px;
      color: var(--muted);
      background: rgba(255, 255, 255, 0.018);
      font-size: 0.54rem;
      white-space: nowrap;
      text-overflow: ellipsis;
    }

.browser-status {
      justify-self: end;
      display: flex;
      align-items: center;
      gap: 6px;
      color: var(--accent-strong);
      font-size: 0.53rem;
    }

.browser-status::before {
      content: "";
      width: 6px;
      height: 6px;
      border-radius: 50%;
      background: var(--accent);
      box-shadow: 0 0 9px rgba(102, 217, 200, 0.6);
    }

.snapshot-browser-content {
      min-height: 430px;
      display: grid;
      grid-template-rows: auto 1fr;
    }

.snapshot-banner {
      padding: 18px 20px;
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 20px;
      border-bottom: 1px solid var(--line);
      background: linear-gradient(100deg, rgba(102, 217, 200, 0.07), rgba(104, 174, 252, 0.035));
    }

.snapshot-banner-kicker {
      color: var(--accent-strong);
      font-size: 0.52rem;
      font-weight: 750;
      letter-spacing: 0.1em;
      text-transform: uppercase;
    }

.snapshot-banner h3 {
      margin: 5px 0 0;
      font-size: 0.9rem;
      letter-spacing: -0.015em;
    }

.snapshot-banner p {
      margin: 5px 0 0;
      color: var(--muted);
      font-size: 0.55rem;
    }

.snapshot-badge {
      flex: none;
      padding: 5px 8px;
      border: 1px solid rgba(102, 217, 200, 0.18);
      border-radius: 99px;
      color: var(--accent-strong);
      background: rgba(102, 217, 200, 0.04);
      font-size: 0.49rem;
    }

.snapshot-workspace {
      padding: 12px;
      display: grid;
      grid-template-columns: 28% 1fr;
      gap: 10px;
      background: #071019;
    }

.snapshot-nav {
      padding: 10px;
      border: 1px solid var(--line);
      border-radius: 9px;
      background: #0b1620;
    }

.snapshot-nav-title {
      margin-bottom: 9px;
      color: var(--muted);
      font-size: 0.49rem;
      font-weight: 700;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }

.anchor-link {
      margin-bottom: 7px;
      padding: 8px;
      border: 1px solid var(--line);
      border-radius: 7px;
      color: #cad6de;
      font-size: 0.52rem;
    }

.anchor-link.active {
      border-color: rgba(102, 217, 200, 0.24);
      color: var(--accent-strong);
      background: rgba(102, 217, 200, 0.04);
    }

.snapshot-main-grid {
      display: grid;
      grid-template-columns: 1.1fr 0.9fr;
      grid-template-rows: 1.08fr 0.92fr;
      gap: 9px;
    }

.snapshot-main-grid .preview-panel:first-child {
      grid-row: 1 / -1;
    }

.snapshot-main-grid .scatter-chart {
      min-height: 295px;
    }

.trust-grid {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 18px;
    }

.trust-card {
      min-height: 255px;
      padding: 27px 24px;
      border: 1px solid var(--line);
      border-radius: var(--radius);
      background: var(--surface-soft);
      transition: border-color var(--ease), transform var(--ease), background var(--ease);
    }

.trust-card:hover {
      transform: translateY(-3px);
      border-color: rgba(102, 217, 200, 0.22);
      background: var(--surface-raised);
    }

.trust-card-icon {
      width: 43px;
      height: 43px;
      display: grid;
      place-items: center;
      border: 1px solid rgba(102, 217, 200, 0.17);
      border-radius: 12px;
      color: var(--accent);
      background: rgba(102, 217, 200, 0.05);
    }

.trust-card-icon svg {
      width: 20px;
      height: 20px;
    }

.trust-card h3 {
      margin: 24px 0 0;
      font-size: 1.1rem;
      letter-spacing: -0.025em;
    }

.trust-card p {
      margin: 11px 0 0;
      color: var(--muted);
      font-size: 0.87rem;
      line-height: 1.65;
    }

.cta-section {
      padding: 0 0 var(--section-space);
    }

.cta-panel {
      position: relative;
      overflow: hidden;
      padding: clamp(48px, 7vw, 78px);
      border: 1px solid rgba(102, 217, 200, 0.17);
      border-radius: 32px;
      background:
        radial-gradient(circle at 86% 25%, rgba(104, 174, 252, 0.14), transparent 26rem),
        radial-gradient(circle at 15% 110%, rgba(102, 217, 200, 0.12), transparent 30rem),
        linear-gradient(135deg, #102231, #0a1924 63%, #0d1a29);
      box-shadow: var(--shadow);
    }

.cta-panel::before {
      content: "";
      position: absolute;
      width: 330px;
      height: 330px;
      right: -72px;
      top: -180px;
      border: 1px solid rgba(255, 255, 255, 0.05);
      border-radius: 50%;
      box-shadow:
        0 0 0 45px rgba(255, 255, 255, 0.018),
        0 0 0 90px rgba(255, 255, 255, 0.012);
    }

.cta-content {
      position: relative;
      z-index: 1;
      max-width: 760px;
    }

.cta-panel h2 {
      margin: 0;
      font-size: clamp(2.25rem, 4.4vw, 4.25rem);
      line-height: 1.04;
      letter-spacing: -0.055em;
      text-wrap: balance;
    }

.cta-panel p {
      max-width: 650px;
      margin: 20px 0 0;
      color: var(--muted-strong);
      font-size: 1rem;
      line-height: 1.7;
    }

.cta-actions {
      margin-top: 30px;
      display: flex;
      flex-wrap: wrap;
      gap: 13px;
    }

@media (max-width: 1060px) {
  .hero-layout,
        .thesis-grid,
        .responsibility-layout,
        .demo-layout {
          grid-template-columns: 1fr;
        }

  .hero-content,
        .thesis-copy,
        .responsibility-copy,
        .demo-copy {
          max-width: 800px;
        }

  .hero-visual-wrap,
        .snapshot-preview-shell {
          width: min(100%, 820px);
          margin-inline: auto;
        }

  .app-preview {
          transform: none;
        }

  .workflow-grid {
          grid-template-columns: repeat(2, minmax(0, 1fr));
        }

  .workflow-card:last-child {
          grid-column: 1 / -1;
        }
}

@media (max-width: 820px) {
  .site-nav,
        .header-cta {
          display: none;
        }

  .investigation-flow {
          grid-template-columns: repeat(3, minmax(0, 1fr));
        }

  .investigation-flow::before {
          display: none;
        }

  .flow-node:nth-child(2),
        .flow-node:nth-child(4) {
          transform: none;
        }

  .workflow-grid,
        .responsibility-grid,
        .trust-grid {
          grid-template-columns: 1fr;
        }

  .workflow-card:last-child {
          grid-column: auto;
        }

  .responsibility-card,
        .trust-card {
          min-height: 0;
        }
}

@media (max-width: 760px) {
  .integrations-shell {
          min-height: 560px;
        }

  .integration-network {
          height: 470px;
        }

  .integration-lines {
          display: none;
        }

  .integration-node,
        .integration-node.center {
          left: 50%;
          right: auto;
          min-width: 184px;
          transform: translateX(-50%);
        }

  .integration-node.center {
          top: 190px;
          transform: translateX(-50%);
        }

  .integration-node.center:hover {
          transform: translateX(-50%) translateY(-3px);
        }

  .integration-node.drive { top: 10px; }

  .integration-node.vertex { top: 70px; }

  .integration-node.sheets { top: 130px; bottom: auto; }

  .integration-node.mlflow { top: 300px; }

  .integration-node.notion { top: 360px; bottom: auto; }

  .integration-node.onedrive { top: 420px; bottom: auto; }
}

@media (max-width: 620px) {
  .hero {
          padding-top: 68px;
        }

  .hero h1 {
          font-size: clamp(3rem, 15vw, 4.5rem);
        }

  .hero-actions,
        .cta-actions {
          display: grid;
        }

  .hero-actions .button,
        .cta-actions .button,
        .demo-copy .button {
          width: 100%;
        }

  .trust-line {
          display: grid;
        }

  .preview-body {
          min-height: 355px;
          grid-template-columns: 35% 65%;
        }

  .preview-workspace {
          padding: 8px;
          grid-template-columns: 1fr;
          grid-template-rows: repeat(3, minmax(120px, auto));
        }

  .preview-panel.wide {
          grid-column: auto;
        }

  .hero-float-card {
          right: 8px;
          bottom: -42px;
          width: 190px;
        }

  .thesis-panel,
        .workflow-copy {
          padding: 25px;
        }

  .investigation-flow {
          grid-template-columns: 1fr 1fr;
        }

  .flow-node {
          min-height: 125px;
        }

  .workflow-media {
          min-height: 220px;
          padding: 14px 14px 0;
        }

  .mock-window {
          min-height: 210px;
        }

  .snapshot-mini-grid {
          grid-template-columns: 1fr;
        }

  .snapshot-meta {
          display: none;
        }

  .snapshot-browser-bar {
          grid-template-columns: auto 1fr;
        }

  .browser-status {
          display: none;
        }

  .snapshot-workspace {
          grid-template-columns: 1fr;
        }

  .snapshot-nav {
          display: none;
        }

  .snapshot-main-grid {
          grid-template-columns: 1fr;
          grid-template-rows: auto;
        }

  .snapshot-main-grid .preview-panel:first-child {
          grid-row: auto;
        }

  .snapshot-main-grid .preview-panel:nth-child(3) {
          display: none;
        }

  .cta-panel {
          padding: 42px 25px;
          border-radius: 24px;
        }
}

.ecosystem-flow {
      position: relative;
      display: grid;
      grid-template-columns: repeat(5, minmax(0, 1fr));
      gap: 14px;
      align-items: stretch;
    }

.ecosystem-flow::before {
      content: "";
      position: absolute;
      top: 31px;
      left: 9%;
      right: 9%;
      height: 1px;
      background: linear-gradient(90deg, rgba(104,174,252,.18), rgba(102,217,200,.55) 48%, rgba(168,137,247,.22));
    }

.ecosystem-stage {
      position: relative;
      min-height: 360px;
      padding: 66px 20px 23px;
      border: 1px solid var(--line);
      border-radius: var(--radius);
      background: linear-gradient(150deg, rgba(15,29,42,.90), rgba(8,19,28,.94));
      box-shadow: 0 14px 42px rgba(0,0,0,.14);
    }

.ecosystem-stage.stage-core {
      border-color: rgba(102,217,200,.23);
      background:
        radial-gradient(circle at 85% 12%, rgba(102,217,200,.08), transparent 14rem),
        linear-gradient(150deg, rgba(17,36,48,.96), rgba(8,21,30,.96));
    }

.stage-marker {
      position: absolute;
      z-index: 2;
      top: 14px;
      left: 20px;
      width: 34px;
      height: 34px;
      display: grid;
      place-items: center;
      border: 1px solid rgba(102,217,200,.30);
      border-radius: 50%;
      color: var(--accent-strong);
      background: #0b1923;
      box-shadow: 0 0 0 7px rgba(102,217,200,.035);
      font-size: .62rem;
      font-weight: 750;
      letter-spacing: .05em;
    }

.stage-kicker {
      color: var(--accent-strong);
      font-size: .65rem;
      font-weight: 750;
      letter-spacing: .09em;
      text-transform: uppercase;
    }

.ecosystem-stage h3 {
      margin: 12px 0 0;
      font-size: 1.14rem;
      line-height: 1.24;
      letter-spacing: -.025em;
    }

.ecosystem-stage > p {
      margin: 12px 0 0;
      color: var(--muted);
      font-size: .82rem;
      line-height: 1.58;
    }

.stage-chips {
      margin-top: 20px;
      display: flex;
      flex-wrap: wrap;
      gap: 7px;
    }

.stage-chip {
      padding: 6px 8px;
      border: 1px solid var(--line);
      border-radius: 7px;
      color: var(--muted-strong);
      background: rgba(255,255,255,.018);
      font-size: .65rem;
      line-height: 1.25;
    }

.stage-chip small {
      display: block;
      margin-top: 3px;
      color: var(--muted);
      font-size: .54rem;
      letter-spacing: .03em;
    }

.stage-chip.status-available {
      border-color: rgba(102,217,200,.18);
      background: rgba(102,217,200,.035);
    }

.stage-chip.status-coming {
      border-color: rgba(168,137,247,.18);
      background: rgba(168,137,247,.03);
    }

.stage-chip.status-available small { color: var(--accent-strong); }

.stage-chip.status-coming small { color: #c8b5fb; }

@media (max-width: 1060px) {
  .ecosystem-flow {
          grid-template-columns: repeat(2, minmax(0, 1fr));
        }

  .ecosystem-flow::before {
          display: none;
        }

  .ecosystem-stage:last-child {
          grid-column: 1 / -1;
          min-height: 0;
        }
}

@media (max-width: 620px) {
  .ecosystem-flow {
          grid-template-columns: 1fr;
        }

  .ecosystem-stage,
        .ecosystem-stage:last-child {
          min-height: 0;
          grid-column: auto;
        }
}