  :root{
    --ink:#15212b; --ledger:#2b6a4f; --flag:#9f3a2c; --brass:#96742f; --paper:#f4f5f2;
    --surface:#fff; --rule:#d9ddd6; --rule-soft:#e8ebe5;
    --mid:#4d5a63; --dim:#6f7b83; --tint:#eef2ec; --tintw:#f8efed; --tintn:#f6f1e4;
    --serif:'Iowan Old Style','Palatino Linotype',Palatino,Georgia,serif;
    --sans:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Arial,sans-serif;
    --mono:ui-monospace,SFMono-Regular,'SF Mono',Menlo,Consolas,monospace;
  }
  *{box-sizing:border-box}
  body{margin:0;background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;
    font-family:var(--sans);font-size:1.125rem;line-height:1.62}
  a{color:var(--ledger);text-decoration:none}
  .navlink{font-size:1rem;color:var(--mid)}
  .navlink:hover{color:var(--ink)}
  .navlink.on{color:var(--ink);padding-bottom:2px;border-bottom:2px solid var(--ledger)}
  .btnp{font-family:inherit;font-size:.97rem;font-weight:600;padding:9px 14px;border-radius:3px;
    background:var(--ledger);color:#fff;border:1px solid transparent;cursor:pointer}
  .btnp:hover{background:#22553f}
  .btnm{font-family:inherit;font-size:1.02rem;font-weight:600;padding:13px 18px;border-radius:3px;
    border:1px solid transparent;background:#6aae8b;color:#10171d;cursor:pointer;line-height:1.2}
  .btnm:hover{background:#8ac2a4}
  .btno{font-family:inherit;font-size:.97rem;font-weight:600;padding:10px 15px;border-radius:3px;
    border:1px solid var(--rule);color:var(--ink);display:inline-block}
  .btno:hover{border-color:var(--ink)}
  .flink{font-size:.97rem;color:var(--mid)}
  .flink:hover{color:var(--ink)}
  .page{display:none}
  .page.on{display:block}
  .eyeb{font-family:var(--mono);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ledger)}
  .rule{height:1px;flex:1;background:var(--rule)}
  .mono{font-family:var(--mono);font-variant-numeric:tabular-nums}
  .chip{font-family:var(--mono);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;
    padding:3px 8px;border-radius:2px;background:var(--tint);color:var(--ledger);white-space:nowrap}
  .chip.est{background:var(--tintn);color:var(--brass)}
  .chip.dis{background:var(--tintw);color:var(--flag)}
  .card{background:var(--surface);border:1px solid var(--rule);border-radius:3px;padding:22px 24px}
  .wrap{max-width:1160px;margin:0 auto;padding:0 40px}
  .sec{max-width:1160px;margin:0 auto;padding:56px 40px 0}
  h1,h2,h3{font-family:var(--serif);font-weight:600;margin:0;text-wrap:pretty}
  input:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--ledger);outline-offset:2px}
  .receipt{cursor:pointer;transition:border-color .12s,transform .12s}
  .receipt:hover{border-color:var(--ink);transform:translateY(-2px)}
  .receipt::after{content:"See the chart →";font-family:var(--mono);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ledger);margin-top:8px}
  .bar{height:22px;background:var(--tint);border-radius:2px;display:block}
  .bar>span{display:block;height:22px;border-radius:2px}
  .brow{display:grid;grid-template-columns:8.5rem minmax(0,1fr) 4.6rem;gap:14px;align-items:center}
  /* ---------- tablet ---------- */
  @media(max-width:1024px){
    .wrap,.sec{padding-left:28px;padding-right:28px}
    /* every explicit two-column grid collapses */
    [style*="grid-template-columns:minmax"]{grid-template-columns:1fr!important;gap:32px!important}
    /* dark CTA blocks */
    [style*="border-radius:3px;padding:44px 48px"]{padding:32px!important}
  }

  /* ---------- phone ---------- */
  @media(max-width:768px){
    body{font-size:1rem}
    .wrap,.sec{padding-left:18px;padding-right:18px}
    .sec{padding-top:40px}
    h1{font-size:1.85rem!important;line-height:1.18!important}
    h2{font-size:1.35rem!important}

    /* chart rows: label above, bar and value on one line */
    .brow{grid-template-columns:1fr auto!important;gap:5px 10px!important}
    .brow>span:first-child{grid-column:1/-1}
    .brow>.bar{grid-column:1}
    .brow>span:last-child{text-align:right!important}

    /* research list + timeline rows stack */
    [style*="grid-template-columns:9rem"],
    [style*="grid-template-columns:7rem"]{grid-template-columns:1fr!important;gap:8px!important}

    /* padding trims */
    .card{padding:18px 20px!important}
    [style*="padding:28px 32px"],[style*="padding:26px 28px"],[style*="padding:32px"]{padding:20px!important}
    [style*="border-radius:3px;padding:44px 48px"]{padding:24px 20px!important}
    section[style*="padding-top:56px"]{padding-top:36px!important;padding-bottom:36px!important}

    /* nav scrolls sideways instead of stacking into a tall block */
    header nav{width:100%;overflow-x:auto;flex-wrap:nowrap!important;gap:16px!important;
      -webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:2px}
    header nav::-webkit-scrollbar{display:none}
    header nav a{white-space:nowrap;flex:0 0 auto}
    header{position:static}

    /* tap targets */
    input,select,button,.btnp,.btno,.btnm{min-height:44px;font-size:1rem!important}
    .navlink{padding:6px 0}
  }

  @media(max-width:900px){ .hidesm{display:none!important} }

  /* never scroll sideways */
  html,body{max-width:100%;overflow-x:hidden}
  img,table{max-width:100%}