  :root{
    --ink:#121922;
    --ink-2:#2b3644;
    --muted:#5a6675;
    --paper:#eef1f4;
    --surface:#ffffff;
    --line:#d6dbe1;
    --line-strong:#b9c1cb;
    --accent:#1b5faa;
    --accent-dark:#0f3f74;
    --signal:#b4491f;
    --radius:6px;
  }
  *{box-sizing:border-box;margin:0;padding:0}
  html{scroll-behavior:smooth}
  body{
    font-family:'IBM Plex Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
    color:var(--ink-2);
    background:var(--paper);
    line-height:1.6;
    font-size:16px;
    -webkit-font-smoothing:antialiased;
  }
  h1,h2,h3,h4{font-family:'Barlow',-apple-system,sans-serif;color:var(--ink);line-height:1.15;font-weight:600}
  a{color:var(--accent);text-decoration:none}
  a:hover{text-decoration:underline}
  .wrap{max-width:1180px;margin:0 auto;padding:0 28px}
  .mono{font-family:'IBM Plex Mono',ui-monospace,mon-serif;font-feature-settings:"tnum"}

  /* top utility bar */
  .topbar{background:var(--ink);color:#c7cfd9;font-size:13px}
  .topbar .wrap{display:flex;justify-content:space-between;align-items:center;height:38px}
  .topbar .crumb{font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.02em}
  .topbar .crumb a{color:#c7cfd9}
  .topbar .brand{font-family:'Barlow';font-weight:700;color:#fff;letter-spacing:.04em}

  /* hero */
  .hero{background:linear-gradient(180deg,#ffffff 0%,#f4f6f8 100%);border-bottom:1px solid var(--line)}
  .hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center;padding:64px 28px 56px}
  .hero .eyebrow{font-family:'IBM Plex Mono',monospace;font-size:12.5px;color:var(--accent);margin-bottom:18px;display:flex;align-items:center;gap:10px}
  .hero .eyebrow::before{content:"";width:26px;height:1px;background:var(--accent)}
  h1{font-size:46px;font-weight:600;letter-spacing:-.01em;margin-bottom:18px}
  .hero .sub{font-size:18px;color:var(--muted);max-width:56ch;margin-bottom:30px}
  .chips{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;margin-bottom:14px}
  .chip{background:var(--surface);padding:14px 16px}
  .chip .k{font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:3px}
  .chip .v{font-family:'IBM Plex Mono',monospace;font-size:14.5px;color:var(--ink);font-weight:500}
  .chip .v.crit{color:var(--signal)}
  .foot{font-size:12.5px;color:var(--muted);margin-bottom:26px}
  .cta-row{display:flex;gap:14px;flex-wrap:wrap}
  .btn{display:inline-block;padding:13px 22px;border-radius:var(--radius);font-family:'Barlow';font-weight:600;font-size:15px;letter-spacing:.01em;transition:.15s;cursor:pointer;border:1px solid transparent}
  .btn-primary{background:var(--accent);color:#fff}
  .btn-primary:hover{background:var(--accent-dark);text-decoration:none}
  .btn-ghost{background:var(--surface);color:var(--ink);border-color:var(--line-strong)}
  .btn-ghost:hover{border-color:var(--accent);color:var(--accent);text-decoration:none}
  .hero-media img{width:100%;height:auto;border-radius:var(--radius);border:1px solid var(--line);display:block}
  .hero-media .cap{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--muted);margin-top:10px}

  /* sections */
  section{padding:60px 0}
  section.alt{background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
  .sec-head{margin-bottom:34px;max-width:78ch}
  h2{font-size:30px;font-weight:600;letter-spacing:-.01em;margin-bottom:14px}
  .sec-head p.lead{font-size:17px;color:var(--ink-2)}
  .sec-head .ans{color:var(--muted);font-size:15.5px}
  .rule{width:46px;height:2px;background:var(--accent);margin-bottom:18px}

  /* generic cards grid */
  .grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
  .grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
  .card{background:var(--surface);padding:24px}
  .grid-4 .card{background:var(--surface)}
  .card h3{font-size:17px;margin-bottom:8px}
  .card p{font-size:14.5px;color:var(--muted)}
  .card .tag{font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--accent);display:block;margin-bottom:8px}

  /* tables */
  table{width:100%;border-collapse:collapse;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
  th,td{text-align:left;padding:13px 16px;border-bottom:1px solid var(--line);font-size:14.5px;vertical-align:top}
  tr:last-child td{border-bottom:none}
  th{font-family:'Barlow';font-weight:600;color:var(--ink);background:#f7f9fb;font-size:13.5px}
  td.mono,th.mono{font-family:'IBM Plex Mono',monospace;font-size:13.5px}

  /* axis compare */
  .axis-compare{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;margin-top:24px}
  .axis-compare .panel{background:var(--surface);padding:22px}
  .axis-compare .panel h4{font-size:16px;margin-bottom:6px}
  .axis-compare .panel .meta{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--muted);margin-bottom:14px}
  .setup{display:flex;align-items:center;gap:8px;margin-bottom:8px;font-size:13.5px;color:var(--muted)}
  .setup .dot{width:9px;height:9px;border:1.5px solid var(--line-strong);border-radius:2px;flex:none}
  .setup.one .dot{border-color:var(--accent);background:var(--accent)}
  .arrow-note{font-size:13.5px;color:var(--muted);margin-top:14px;padding-top:14px;border-top:1px dashed var(--line)}

  /* process steps */
  .steps{display:grid;grid-template-columns:repeat(6,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
  .step{background:var(--surface);padding:20px 18px}
  .step .num{font-family:'IBM Plex Mono',monospace;font-size:13px;color:var(--accent);margin-bottom:10px}
  .step h4{font-size:15px;margin-bottom:6px}
  .step p{font-size:13px;color:var(--muted)}

  /* flow horizontal */
  .flow{display:flex;align-items:stretch;gap:0;flex-wrap:wrap;margin-top:8px}
  .flow .node{flex:1;min-width:120px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:14px 12px;text-align:center;font-size:13.5px;font-weight:500;color:var(--ink)}
  .flow .sep{align-self:center;color:var(--line-strong);padding:0 8px;font-family:'IBM Plex Mono',monospace}

  /* image+text */
  .media-row{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
  .media-row img{width:100%;height:auto;border-radius:var(--radius);border:1px solid var(--line);display:block}
  .media-row .cap{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--muted);margin-top:8px}

  /* case */
  .case{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--surface)}
  .case .pic img{width:100%;height:100%;object-fit:cover;display:block}
  .case .body{padding:30px}
  .case dl{display:grid;grid-template-columns:auto 1fr;gap:8px 18px;font-size:14px;margin-top:14px}
  .case dt{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--muted);padding-top:2px}
  .case dd{color:var(--ink-2)}

  /* FAQ */
  details{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);margin-bottom:10px;overflow:hidden}
  summary{padding:18px 22px;cursor:pointer;font-family:'Barlow';font-weight:600;font-size:16px;color:var(--ink);list-style:none;display:flex;justify-content:space-between;align-items:center}
  summary::-webkit-details-marker{display:none}
  summary::after{content:"+";font-family:'IBM Plex Mono',monospace;color:var(--accent);font-size:20px;font-weight:400}
  details[open] summary::after{content:"–"}
  details .a{padding:0 22px 20px;font-size:14.5px;color:var(--muted);max-width:88ch}

  /* why */
  .why-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}
  .why-list{list-style:none}
  .why-list li{padding:14px 0;border-bottom:1px solid var(--line);display:flex;gap:14px;font-size:15px}
  .why-list li:last-child{border-bottom:none}
  .why-list .b{font-family:'IBM Plex Mono',monospace;color:var(--accent);flex:none}

  /* final cta */
  .final{background:var(--ink);color:#dbe2ea}
  .final h2{color:#fff}
  .final .rule{background:var(--accent)}
  .final p{color:#a9b4c2;max-width:64ch}
  .final .btn-primary{background:var(--accent)}
  .final .btn-ghost{background:transparent;color:#fff;border-color:#3a4656}
  .final .btn-ghost:hover{border-color:#fff;color:#fff}

  footer.site{background:#0c1118;color:#6b7684;font-size:13px;padding:28px 0}
  footer.site .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px}
  footer.site a{color:#9aa6b4}

  @media(max-width:900px){
    .hero-grid,.media-row,.case,.why-grid{grid-template-columns:1fr}
    .grid-4{grid-template-columns:repeat(2,1fr)}
    .grid-3{grid-template-columns:1fr}
    .steps{grid-template-columns:repeat(2,1fr)}
    .axis-compare{grid-template-columns:1fr}
    h1{font-size:34px}
    h2{font-size:25px}
    .topbar .crumb{display:none}
    .flow{flex-direction:column}
    .flow .sep{transform:rotate(90deg);padding:4px 0}
  }
  @media(max-width:560px){
    .grid-4{grid-template-columns:1fr}
    .steps{grid-template-columns:1fr}
    .chips{grid-template-columns:1fr}
  }