/* DataLab homepage polish: explanatory scenarios and a locked dark-only surface. */
:root {
  --paper: #0e1521;
  --white: #151f30;
  --ink: #e8eef8;
  --muted: #a4b1c6;
  --faint: #7d8ca4;
  --line: #2a3951;
  --blue: #9bb5ff;
  --blue-dark: #7898fa;
  --orange: #f0ac76;
}
html { color-scheme: dark; scroll-padding-top: 90px; }
body.home-page { background: #0e1521; color: #e8eef8; }
.site-header { background: rgba(14,21,33,.94); border-bottom-color: #27364d; }
.site-nav a { color: #a4b1c6; }
.mobile-menu-button { background: #1e2b40; color: #e8eef8; border-color: #35445d; }
.site-nav.nav-open { background: #151f30; border-color: #2b3850; }
.hero { position: relative; }
.hero h1 { color: #edf2fb; }
.hero h1 em, .section-heading h2 em { color: #a8bcff; }
.hero-lede, .section-heading > p { color: #a4b1c6; }
.hero-proof { color: #a2b0c5; }
.trust-strip { background: #151f30; border-color: #29364d; }
.trust-inner > span { color: #8b9bb4; }
.trust-inner p { color: #b4c0d2; }
.trust-inner p:not(:last-child) { border-right-color: #334058; }
.capability-card, .card-explore { background: #182235; border-color: #2b3950; }
.capability-card h3 { color: #e8eef8; }
.capability-card p { color: #a0aec3; }
.capability-card:hover { border-color: #4b5f82; box-shadow: 0 12px 30px rgba(0,0,0,.18); }
.mini-metric-row strong { color: #e0e8f5; }
.card-number, .mini-metric-row b { color: #8d9cb4; }
.workflow-section { background: #0b111c; border-top: 1px solid #26334a; border-bottom: 1px solid #26334a; }
.privacy-section { background: transparent; }
.site-footer, .footer-inner { background: #0d131e; border-color: #26334a; }
.footer-inner > p, .footer-links a { color: #a2aec0; }
.footer-year { color: #7e8ca1; }
.button-primary { background: #416cde; color: #fff; }
.button-primary:hover { background: #547ef0; }
.button-light { background: #1e2b40; color: #e8eef8; border-color: #35445d; }
.button-light:hover { background: #273958; color: #dce5ff; }
.button-dark { background: #25334a; color: #e8eef8; border-color: #364660; }
.button-dark:hover { background: #30415b; }

.situations-section { padding-top: 92px; padding-bottom: 90px; }
.situations-heading { align-items: end; margin-bottom: 34px; }
.situations-heading .eyebrow { color: #a8bcff; }
.situations-heading h2 { color: #edf2fb; }
.use-case-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 15px; }
.use-case-card { min-width: 0; padding: 19px 20px 17px; background: linear-gradient(145deg,#182438,#141e2e); border: 1px solid #2b3950; border-radius: 12px; display: flex; flex-direction: column; transition: border-color .16s, transform .16s; }
.use-case-card:hover { transform: translateY(-2px); border-color: #4b6186; }
.use-case-art { position: relative; height: 112px; margin-bottom: 18px; border: 1px solid #2a3951; border-radius: 8px; background: #111a29; overflow: hidden; }
.use-case-kicker { display: block; color: #92a6d7; font-size: 8px; line-height: 1.5; font-weight: 850; letter-spacing: .15em; }
.use-case-card h3 { margin: 8px 0 7px; color: #edf2fb; font-size: 17px; line-height: 1.25; letter-spacing: -.045em; }
.use-case-card p { margin: 0; color: #a0aec3; font-size: 10px; line-height: 1.8; }
.use-case-fit { margin-top: auto; padding-top: 16px; display: flex; flex-wrap: wrap; justify-content: space-between; align-items:center; gap: 7px 12px; }
.use-case-fit span { color: #73849f; font-size: 9px; }
.use-case-fit strong { color: #ced9ed; font-size: 9px; font-weight: 760; }
.art-table-head, .art-table-row { position: relative; z-index: 1; display: grid; grid-template-columns: 1.1fr .8fr 1fr .7fr; gap: 7px; padding: 0 16px; align-items:center; }
.art-table-head { height: 28px; border-bottom: 1px solid #2a3951; background:#172337; }
.art-table-head i { width: 70%; height: 4px; background:#566783; border-radius: 2px; }
.art-table-row { height: 21px; border-bottom: 1px solid rgba(45,61,84,.58); }
.art-table-row i { height: 5px; border-radius: 2px; background:#344863; }
.art-table-row i:nth-child(2) { width:65%; }
.art-table-row .is-gap { height: 14px; width: 80%; border: 1px dashed #e5a36d; background: rgba(229,163,109,.12); }
.art-callout { position:absolute; right:13px; bottom:8px; display:flex; align-items:center; gap:6px; background:#392b25; color:#f3bd8d; border:1px solid #664b37; border-radius:5px; padding:4px 7px; font-size:8px; font-weight:800; }
.art-callout span { display:grid; place-items:center; width:13px; height:13px; border-radius:4px; background:#6b4630; }
.art-clean { display:flex; align-items:center; justify-content:center; gap:13px; }
.art-value { display:flex; align-items:center; gap:3px; height:38px; padding:0 10px; border-radius:7px; border:1px solid #33445f; background:#1b2a40; }
.art-value i { display:block; width:15px; height:6px; border-radius:3px; background:#8ca9f7; }
.art-value-before .art-space { display:block; width:7px; height:28px; border-left:1px dashed #e8a66d; border-right:1px dashed #e8a66d; background:rgba(232,166,109,.08); }
.art-value-after { border-color:#346455; background:#17322f; }
.art-value-after i { background:#82d6bb; }
.art-transform-arrow { color:#91a7d7; font-size:21px; }
.art-transform-tag { position:absolute; bottom:10px; left:calc(50% - 24px); border-radius:4px; background:#263757; color:#b9cbff; padding:3px 7px; font-size:8px; font-weight:850; letter-spacing:.12em; }
.art-pattern { padding:14px 22px 20px; }
.art-chart-grid { position:absolute; inset:12px 18px 25px; display:flex; flex-direction:column; justify-content:space-between; }
.art-chart-grid i { display:block; height:1px; border-top:1px dashed #2d3c54; }
.art-bars { position:absolute; inset:16px 35px 26px; display:flex; align-items:end; gap:12px; }
.art-bars span { flex:1; border-radius:5px 5px 0 0; background:linear-gradient(180deg,#86a7ff,#456dd9); border:1px solid rgba(176,197,255,.24); border-bottom:0; }
.art-bars span:nth-child(4) { background:linear-gradient(180deg,#f2b17a,#be7d4a); }
.art-chart-baseline { position:absolute; height:1px; left:20px; right:20px; bottom:25px; background:#60718d; }
.art-chart-label { position:absolute; right:12px; bottom:6px; color:#8093b5; font-size:7px; }
.art-export { padding:14px 20px; display:flex; flex-direction:column; justify-content:center; gap:8px; }
.art-check-row { display:grid; grid-template-columns:16px 1fr auto; align-items:center; gap:9px; max-width:360px; width:100%; margin:0 auto; }
.art-check-row span { display:grid; place-items:center; width:16px; height:16px; border-radius:5px; background:#1d3b35; color:#8fe1c2; font-size:10px; font-weight:900; }
.art-check-row i { height:5px; max-width:130px; width:100%; border-radius:4px; background:#3a4c65; }
.art-check-row b { min-width:110px; color:#aebdd2; font-size:8px; font-weight:650; }
.art-export-chip { position:absolute; right:10px; bottom:8px; display:flex; gap:6px; align-items:center; padding:4px 8px; background:#243858; border:1px solid #3d5682; color:#c7d7ff; border-radius:5px; font-size:8px; font-weight:800; }
.art-export-chip span { font-size:11px; }
.tool-fit-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:15px; margin-top:18px; }
.tool-fit-card { border-radius:11px; border:1px solid #2b3950; padding:18px 20px; background:#151f30; }
.fit-heading { display:flex; align-items:center; gap:9px; margin-bottom:10px; }
.fit-heading h3 { margin:0; color:#e5edf9; font-size:12px; letter-spacing:-.02em; }
.fit-icon { display:grid; place-items:center; width:22px; height:22px; border-radius:6px; color:#91e3c4; background:#1c3a34; font-size:12px; font-weight:900; }
.fit-boundary .fit-icon { color:#f2bd8c; background:#3b3026; }
.tool-fit-card ul { margin:0; padding-left:18px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px 23px; color:#9eacc1; font-size:10px; line-height:1.65; }
.tool-fit-card li::marker { color:#7386a5; }
.use-case-footnote { display:flex; align-items:center; gap:8px; margin:18px 0 0; color:#73849f; font-size:9px; }
.footnote-dot { width:6px; height:6px; border-radius:50%; background:#7d94c6; }
@media(max-width:820px) {
  .situations-section { padding-top:64px; padding-bottom:65px; }
  .use-case-grid { grid-template-columns:minmax(0,1fr); }
  .use-case-card { display:grid; grid-template-columns:minmax(0,1fr); }
  .use-case-art { height:118px; }
  .tool-fit-card ul { grid-template-columns:minmax(0,1fr); }
}
@media(max-width:560px) {
  .situations-heading h2 { font-size:32px; }
  .use-case-card { padding:15px; }
  .use-case-card h3 { font-size:16px; }
  .tool-fit-grid { grid-template-columns:minmax(0,1fr); }
  .art-check-row b { min-width:100px; }
  .hero-visual { max-width:100%; }
}

/* A visual, scan-friendly summary of the product loop. */
.trust-inner { display: grid; grid-template-columns: 150px minmax(0, 1fr); align-items: center; gap: 28px; padding-top: 15px; padding-bottom: 15px; }
.quick-flow-intro { display: grid; gap: 5px; }
.quick-flow-intro > span { color: #8b9bb4; font-size: 8px; font-weight: 850; letter-spacing: .16em; }
.quick-flow-intro small { color: #d4dced; font-size: 11px; line-height: 1.4; }
.quick-flow { display: grid; grid-template-columns: minmax(0, 1fr) 14px minmax(0, 1fr) 14px minmax(0, 1fr) 14px minmax(0, 1fr) 14px minmax(0, 1fr); align-items: center; gap: 7px; min-width: 0; }
.quick-flow-step { display: grid; grid-template-columns: 24px minmax(0, 1fr); align-items: center; column-gap: 7px; min-width: 0; }
.quick-flow-step > span { grid-row: span 2; display: grid; place-items: center; width: 24px; height: 24px; border: 1px solid #3a4a64; border-radius: 7px; background: #202f48; color: #a9c0ff; font: 750 9px var(--mono, ui-monospace, monospace); }
.quick-flow-step strong { color: #e5ebf6; font-size: 10px; line-height: 1.2; font-weight: 750; }
.quick-flow-step small { color: #93a3bc; font-size: 8px; line-height: 1.35; white-space: nowrap; }
.quick-flow-arrow { color: #7187b7; text-align: center; font-size: 13px; }
@media (max-width: 980px) {
  .trust-inner { grid-template-columns: 1fr; gap: 12px; }
  .quick-flow-intro { display: flex; justify-content: space-between; align-items: baseline; gap: 10px; }
  .quick-flow { gap: 5px; }
}
@media (max-width: 650px) {
  .quick-flow { grid-template-columns: minmax(0, 1fr); gap: 8px; }
  .quick-flow-step { grid-template-columns: 28px minmax(0, 1fr); padding: 8px 10px; border: 1px solid #29374e; border-radius: 9px; background: #182235; }
  .quick-flow-step > span { grid-row: auto; }
  .quick-flow-step strong { font-size: 11px; }
  .quick-flow-step small { white-space: normal; }
  .quick-flow-arrow { display: none; }
}
