/* ix.css — AI Companies Index (index.labsvirtual.com).
   Same visual system as Insights (ins.css / ins2.css / co.css): warm paper ground, ink type,
   one blue accent, uppercase tracked section heads over a 2px ink rule, mono tickers. */
.ix{--paper:#f6f4ef;--card:#fff;--ink:#141a26;--ink2:#3f4658;--mute:#6a7286;--mute2:#8a8f9c;--line:rgba(20,26,38,.12);--line2:rgba(20,26,38,.2);
  --blue:#1d4ed8;--cta:#2563eb;--amber:#8a5a12;--green:#1f7a4d;--red:#b4321e;--bronze:#8a5a12;--silver:#5b6478;--gold:#6d28d9;
  max-width:1240px;margin:0 auto;padding:28px clamp(16px,4vw,56px) 56px;color:var(--ink)}
.ix *{box-sizing:border-box}
.ix .mono,.ix-tk{font-family:'JetBrains Mono',ui-monospace,monospace}

/* section head: uppercase over a 2px ink rule (as .ic-colhead / .co-bt) */
.ix-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:2px solid var(--ink);margin-top:56px}
.ix-head>span{font-size:11.5px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.ix-head>em{font-style:normal;font-size:11.5px;font-weight:700;color:var(--amber);background:rgba(138,90,18,.1);padding:4px 9px;border-radius:6px}

/* masthead */
.ix-mast{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:48px;align-items:end;padding:26px 0 30px;border-bottom:2px solid var(--ink)}
.ix-kick{display:inline-block;font-size:11.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--blue)}
.ix-mast h1{margin-top:12px;font-size:clamp(36px,5vw,60px);font-weight:800;letter-spacing:-.035em;line-height:1.02;text-wrap:balance}
.ix-dek{margin-top:16px;font-size:18px;line-height:1.6;color:var(--ink2);max-width:44em;text-wrap:pretty}
.ix-figs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-top:1px solid var(--line)}
.ix-fig{padding:16px 0;border-bottom:1px solid var(--line)}
.ix-fig:nth-child(odd){padding-right:20px;border-right:1px solid var(--line)}
.ix-fig:nth-child(even){padding-left:20px}
.ix-fig b{display:block;font-size:44px;font-weight:800;letter-spacing:-.03em;line-height:1;font-variant-numeric:tabular-nums}
.ix-fig span{display:block;margin-top:6px;font-size:13px;color:var(--mute)}

/* controls */
.ix-ctrl{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;justify-content:space-between;margin-top:18px}
.ix-chips{display:flex;flex-wrap:wrap;gap:6px}
.ix-chip{border:1px solid var(--line2);background:transparent;color:var(--ink2);font:inherit;font-size:13px;font-weight:600;padding:9px 14px;border-radius:999px;min-height:40px;cursor:pointer}
.ix-chip:hover{border-color:var(--ink);color:var(--ink)}
.ix-chip:focus-visible,.ix-search input:focus-visible,.ix-row:focus-visible{outline:2px solid var(--cta);outline-offset:2px}
.ix-chip:active{transform:translateY(1px)}
.ix-chip.on{background:var(--ink);border-color:var(--ink);color:#fff}
.ix-chip small{font-weight:500;opacity:.6;margin-left:4px}
.ix-search{display:block;flex:0 1 280px;min-width:0}
.ix-search input{display:block;font:inherit;font-size:14px;color:var(--ink);background:var(--card);border:1px solid var(--line2);border-radius:10px;padding:10px 14px;min-height:42px;width:100%}
.ix-search input:hover{border-color:var(--ink)}

/* table */
.ix-tablewrap{margin-top:16px;overflow-x:auto;background:var(--card);border:1px solid rgba(20,26,38,.1);border-radius:16px}
.ix-table{width:100%;min-width:920px;border-collapse:collapse;font-size:14px}
.ix-table th{text-align:left;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--mute2);padding:14px 16px;border-bottom:1px solid var(--line)}
.ix-table td{padding:14px 16px;border-bottom:1px solid rgba(20,26,38,.07);vertical-align:middle}
.ix-table tr:last-child td{border-bottom:0}
.ix-row{cursor:pointer}
.ix-row:hover td{background:#faf9f6}
.ix-co{display:flex;align-items:center;gap:12px;text-decoration:none}
.ix-co i{width:10px;height:10px;border-radius:50%;flex:0 0 auto}
.ix-co b{display:block;font-weight:700;font-size:15px}
.ix-co .ix-tk{display:block;font-size:11px;color:var(--mute2);letter-spacing:.06em}
.ix-tag{display:inline-block;font-size:10.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:4px 8px;border-radius:6px;background:rgba(20,26,38,.07);color:var(--ink2);margin:2px 4px 2px 0}
.ix-tag.g{color:var(--green);background:rgba(31,122,77,.1)}
.ix-tag.a{color:var(--amber);background:rgba(138,90,18,.1)}
.ix-metric{color:var(--mute);font-size:12.5px;max-width:24ch;line-height:1.35}
.ix-num{font-variant-numeric:tabular-nums;font-weight:700;white-space:nowrap}
.ix-ch{font-variant-numeric:tabular-nums;font-weight:700;white-space:nowrap;font-size:13px}
.ix-ch.up{color:var(--green)}.ix-ch.dn{color:var(--red)}
.ix-spark{display:block;width:110px;height:30px}
.ix-empty{padding:28px 16px;color:var(--mute);font-size:14px}
.ix-note{margin-top:10px;font-size:12.5px;color:var(--mute2)}

/* lenses */
.ix-lenses{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:0}
.ix-lens{padding:22px 22px 6px 0;border-right:1px solid var(--line)}
.ix-lens+.ix-lens{padding-left:22px}
.ix-lens:last-child{border-right:0}
.ix-lens h3{margin:0;font-size:18px;font-weight:800;letter-spacing:-.01em}
.ix-lens .q{margin-top:6px;font-size:14px;color:var(--mute);line-height:1.5}
.ix-lens ul{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-direction:column;gap:12px}
.ix-lens li b{display:block;font-size:14px;font-weight:600;line-height:1.4}
.ix-lens li span{display:block;font-family:'JetBrains Mono',ui-monospace,monospace;font-size:11px;color:var(--mute2);margin-top:2px}
.ix-phase{display:inline-block;margin-top:12px;font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:4px 8px;border-radius:6px}
.ix-phase.now{color:var(--green);background:rgba(31,122,77,.1)}
.ix-phase.next{color:var(--mute);background:rgba(20,26,38,.07)}

/* pipeline (medallion colours: amber = bronze, grey = silver, purple = gold) */
.ix-flow{display:flex;flex-wrap:wrap;align-items:stretch;gap:10px;margin-top:22px}
.ix-step{flex:1 1 170px;min-width:0;background:var(--card);border:1px solid rgba(20,26,38,.1);border-top:3px solid var(--ink);border-radius:12px;padding:16px 16px 18px}
.ix-step>span{display:block;font-size:10.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.ix-step b{display:block;margin-top:8px;font-size:15px;font-weight:700}
.ix-step p{margin-top:6px;font-size:13px;line-height:1.5;color:var(--mute)}
.ix-step.bronze{border-top-color:var(--bronze)}.ix-step.bronze>span{color:var(--bronze)}
.ix-step.silver{border-top-color:var(--silver)}.ix-step.silver>span{color:var(--silver)}
.ix-step.gold{border-top-color:var(--gold)}.ix-step.gold>span{color:var(--gold)}
.ix-step.src>span,.ix-step.out>span{color:var(--blue)}
.ix-arrow{flex:0 0 auto;align-self:center;color:var(--mute2);font-size:20px}
.ix-built{margin-top:14px;display:flex;flex-wrap:wrap;gap:6px 18px;font-family:'JetBrains Mono',ui-monospace,monospace;font-size:12px;color:var(--mute)}

/* observe / measure / model / build */
.ix-layers{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:22px}
.ix-layer{display:flex;flex-direction:column;gap:8px;background:var(--card);border:1px solid rgba(20,26,38,.1);border-radius:14px;padding:20px;text-decoration:none;color:var(--ink)}
.ix-layer:hover{border-color:var(--ink);color:var(--ink)}
.ix-layer:focus-visible{outline:2px solid var(--cta);outline-offset:2px}
.ix-layer>span{font-size:10.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--blue)}
.ix-layer b{font-size:18px;font-weight:800}
.ix-layer p{font-size:13.5px;line-height:1.5;color:var(--mute)}
.ix-layer em{font-style:normal;margin-top:auto;font-size:13px;font-weight:700;color:var(--blue)}
.ix-layer.here{background:#141a26;border-color:#141a26;color:#fff}
.ix-layer.here p{color:#c7cddb}.ix-layer.here>span,.ix-layer.here em{color:#93c5fd}

/* company detail: reuse CompanyPage, swap its Insights crumb for ours */
.ix-detail .co{padding-top:8px}
.ix-detail .co-crumb{display:none}
.ix-crumb{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:13px;color:var(--mute);max-width:1240px;margin:0 auto;padding:24px clamp(20px,4vw,56px) 0}
.ix-crumb a{text-decoration:none;color:var(--mute)}.ix-crumb a:hover{color:var(--blue)}
.ix-crumb i{font-style:normal;opacity:.5}.ix-crumb span{color:var(--ink);font-weight:600}

/* policy + footer */
.ix-policy p{margin-top:12px;font-size:14.5px;line-height:1.65;color:#4a5164;max-width:80ch}
.ix-foot{margin-top:56px;padding-top:24px;border-top:2px solid var(--ink);display:flex;flex-wrap:wrap;gap:16px 32px;align-items:flex-start;justify-content:space-between}
.ix-foot .brand{display:flex;flex-direction:column;gap:6px}
.ix-foot .brand img{filter:invert(1)}
.ix-foot .brand b{font-size:16px;font-weight:800}
.ix-foot .brand span,.ix-foot p{font-size:13px;color:var(--mute);max-width:60ch;line-height:1.55}

@media (max-width:980px){
  .ix-mast{grid-template-columns:1fr;gap:28px}
  .ix-lenses{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ix-lens{padding:20px 16px 8px 0!important;border-right:0;border-bottom:1px solid var(--line)}
  .ix-layers{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ix-arrow{display:none}
}
@media (max-width:560px){
  .ix-lenses,.ix-layers{grid-template-columns:1fr}
  .ix-fig b{font-size:34px}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ix-chip:active{transform:none}}
