/* DFARS Readiness: Ops Checklist. Olive drab, checkbox rows, stencil type. */
:root{
  --bg:#faf7ec; --surface:#f0ead4; --card:#fffdf4; --ink:#2e331f; --muted:#6d7257;
  --accent:#5a6132; --accent-ink:#faf7ec; --line:#ddd3b4; --check:#7a8455;
  --font-display:'Oswald','Arial Narrow',sans-serif;
  --font-stencil:'Saira Stencil One','Oswald',sans-serif;
  --font-mono:'IBM Plex Mono',ui-monospace,monospace;
}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);
  font-family:-apple-system,'Segoe UI',sans-serif;font-size:17px;line-height:1.7}
a{color:var(--accent)}
.banner{background:var(--accent);color:var(--accent-ink);
  font-family:var(--font-stencil);font-size:12px;letter-spacing:3px;
  text-align:center;padding:9px 12px;text-transform:uppercase}
.topbar{display:flex;align-items:baseline;gap:20px;padding:16px 24px;
  border-bottom:4px solid var(--accent);background:var(--bg);
  position:sticky;top:0;z-index:10}
.wordmark{font-family:var(--font-display);font-size:24px;font-weight:700;
  color:var(--ink);text-decoration:none;text-transform:uppercase;letter-spacing:1px}
.tagline{color:var(--muted);font-size:14px;font-family:var(--font-mono)}
.topbar nav{margin-left:auto;display:flex;gap:18px}
.topbar nav a{color:var(--muted);text-decoration:none;font-size:14px;
  font-family:var(--font-display);text-transform:uppercase;letter-spacing:1px}
.topbar nav a:hover{color:var(--accent)}
.doc-wrap{display:flex;max-width:1180px;margin:0 auto;align-items:flex-start}
.doc-side{width:290px;flex-shrink:0;padding:30px 10px 30px 24px;position:sticky;top:73px}
.side-title{font-family:var(--font-stencil);font-size:13px;letter-spacing:2px;
  text-transform:uppercase;color:var(--accent);margin:0 0 12px}
.doc-side ul{list-style:none;padding:0;margin:0}
.doc-side li{margin:0 0 6px}
.doc-side li a{display:block;color:var(--ink);text-decoration:none;font-size:15px;
  padding:8px 10px 8px 34px;border:1px solid transparent;position:relative}
.doc-side li a::before{content:"";position:absolute;left:10px;top:12px;width:13px;height:13px;
  border:2px solid var(--check);border-radius:2px;background:transparent}
.doc-side li a:hover{border-color:var(--line);background:var(--card)}
.side-cta{margin-top:26px;background:var(--accent);color:var(--accent-ink);
  padding:18px;border-radius:3px}
.side-cta p{margin:0 0 12px;font-family:var(--font-display);text-transform:uppercase;
  letter-spacing:1px;font-size:15px}
.btn{display:inline-block;background:var(--accent-ink);color:var(--accent);
  padding:10px 18px;text-decoration:none;font-weight:700;
  font-family:var(--font-display);font-size:14px;text-transform:uppercase;letter-spacing:1px}
.doc-main{flex:1;padding:36px 40px 60px;max-width:760px}
.doc-main h1{font-family:var(--font-display);font-size:40px;text-transform:uppercase;
  letter-spacing:.5px;line-height:1.15;margin:.2em 0 .4em}
.doc-main h2{font-family:var(--font-stencil);font-size:16px;letter-spacing:2px;
  text-transform:uppercase;color:var(--accent);margin:2.2em 0 1em;
  border-bottom:2px dashed var(--line);padding-bottom:8px}
.lede{font-size:19px;color:var(--muted)}
.rows{display:flex;flex-direction:column;gap:0;margin-top:18px;counter-reset:step}
.guide-row{display:flex;gap:18px;align-items:flex-start;text-decoration:none;
  background:var(--card);border:1px solid var(--line);border-left:5px solid var(--accent);
  padding:18px 20px;margin-bottom:12px;color:var(--ink)}
.guide-row:hover{border-color:var(--accent)}
.guide-row .num{font-family:var(--font-mono);font-size:15px;color:var(--accent);
  border:2px solid var(--check);width:34px;height:34px;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;border-radius:3px;font-weight:500}
.guide-row strong{font-family:var(--font-display);font-size:19px;text-transform:uppercase;
  letter-spacing:.4px;display:block}
.row-desc{display:block;color:var(--muted);font-size:15px;margin-top:4px}
.meta{color:var(--muted);font-size:13px;font-family:var(--font-mono);letter-spacing:.5px}
.crumb{font-family:var(--font-mono);font-size:13px;color:var(--muted);
  text-transform:uppercase;letter-spacing:1px}
.body h2{font-family:var(--font-display);font-size:25px;margin-top:1.7em;
  text-transform:uppercase;letter-spacing:.4px;color:var(--accent)}
.body p{margin:1em 0}
.body ul,.body ol{margin:1em 0;padding-left:1.4em}
.body li{margin:.4em 0}
.entity{background:var(--card);border:2px solid var(--accent);padding:8px 22px;margin:24px 0}
.doc-foot{border-top:4px solid var(--accent);margin-top:0;padding:26px 24px;
  color:var(--muted);font-size:15px;background:var(--surface)}
.fine{font-size:13px}
@media(max-width:900px){.doc-wrap{flex-direction:column}.doc-side{width:100%;position:static}.doc-main{padding:24px 20px}}
