/* 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; }
}


/* Tablet header: collapse before the desktop navigation and account control compete for width. */
@media (min-width: 761px) and (max-width: 940px) {
  .site-header { gap: 12px; padding: 0 22px; }
  .site-nav { display: none; position: absolute; top: 75px; left: 0; right: 0; z-index: 35; padding: 16px 22px 18px; flex-direction: column; align-items: stretch; gap: 4px; background: #151f30; border: 1px solid #2b3850; border-top: 0; box-shadow: 0 18px 34px rgba(0,0,0,.26); }
  .site-nav.nav-open { display: flex; }
  .site-nav a { padding: 8px 2px; font-size: 12px; }
  .site-nav .mobile-workspace-link { display: block; }
  .header-cta { margin-left: auto; }
  .mobile-menu-button { display: inline-flex; align-items: center; justify-content: center; margin-left: 0; }
}


/* Mobile header composition: reserve independent slots for the brand, menu control, and account badge. */
.mobile-menu-button svg{display:block;width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.mobile-menu-button[aria-expanded="true"]{border-color:#6077a2;background:#263957}
@media(max-width:760px){
  .site-header{display:grid;grid-template-columns:minmax(0,1fr) 42px 42px;align-items:center;column-gap:9px;height:64px;padding:0 14px}
  .site-header>.brand{grid-column:1;min-width:0;max-width:100%;overflow:hidden}
  .site-header>.brand .brand-copy{min-width:0}
  .site-header>.brand .brand-copy strong{font-size:14px}
  .site-header>.brand .brand-copy small{font-size:7px;letter-spacing:.15em}
  .site-header>.site-nav{position:absolute;top:calc(100% - 1px);left:0;right:0;z-index:35;display:none;flex-direction:column;align-items:stretch;gap:3px;margin:0;padding:12px 16px 16px;background:#151f30;border:1px solid #2b3850;border-top:0;box-shadow:0 18px 34px rgba(0,0,0,.28)}
  .site-header>.site-nav.nav-open{display:flex}
  .site-header>.site-nav a{display:block;padding:10px 8px;border-radius:7px;font-size:12px;line-height:1.35}
  .site-header>.site-nav a:hover{background:#1e2b40}
  .site-header>.header-cta{display:none}
  .site-header>.mobile-menu-button{grid-column:2;justify-self:center;display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;min-width:42px;margin:0;padding:0;border:1px solid #35445d;border-radius:10px;background:#1e2b40;color:#e8eef8}
  .site-header>.sb-account{grid-column:3;justify-self:end;align-self:center;display:flex;align-items:center;justify-content:center;width:42px;height:42px;min-width:42px;margin:0}
  .site-header>.sb-account .sb-account-trigger{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;width:42px;height:42px;min-width:42px;min-height:42px;max-width:42px;margin:0;padding:4px;border-radius:10px}
  .site-header>.sb-account .sb-account-avatar{display:grid;place-items:center;width:30px;height:30px;flex:0 0 30px}
  .site-header>.sb-account .sb-account-trigger-copy,.site-header>.sb-account .sb-account-chevron{display:none}
  .site-header>.sb-account .sb-account-menu{right:0;max-width:calc(100vw - 20px)}
}
@media(max-width:360px){
  .site-header{grid-template-columns:minmax(0,1fr) 40px 40px;column-gap:7px;padding:0 10px}
  .site-header>.mobile-menu-button,.site-header>.sb-account,.site-header>.sb-account .sb-account-trigger{width:40px;height:40px;min-width:40px;min-height:40px}
  .site-header>.sb-account .sb-account-avatar{width:28px;height:28px;flex-basis:28px}
  .site-header>.brand .brand-copy strong{font-size:13px}
}
