/* Ally Public Adjusting — design system (reconstruction per docs/design-spec.md §2).
   Tokens anchored on the mockups' hard evidence: paper #faf8f5, ink #1a1a1a,
   oxblood brand #7a0010. Full component system lands with the page build-out. */

:root {
  --paper: #faf8f5;
  --bone: #f3efe8;
  --ink: #1a1a1a;
  --espresso: #3d3733;
  --oxblood: #7a0010;
  --oxblood-deep: #5c000c;
  --gold: #b08d4f;
  --max: 1160px;
}

* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
  margin: 0;
  background: var(--paper);
  color: var(--ink);
  font: 400 1.06rem/1.65 "Public Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
}

.wrap { max-width: var(--max); margin: 0 auto; padding: 0 20px; }

h1, h2, h3 {
  font-family: "Newsreader", Georgia, "Times New Roman", serif;
  font-weight: 500;
  line-height: 1.15;
  margin: 0 0 0.5em;
}
h1 { font-size: clamp(2rem, 5vw, 3.2rem); }

.lede { font-size: 1.15rem; max-width: 46em; }

.hdr { background: var(--paper); border-bottom: 1px solid var(--bone); }
.nav { display: flex; align-items: center; min-height: 64px; }
.brand { font-family: "Newsreader", Georgia, serif; font-weight: 600; font-size: 1.25rem; }

.sec { padding: 72px 0; }

.btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 13px 22px;
  border-radius: 6px;
  text-decoration: none;
  font-weight: 600;
}
.btn-primary { background: var(--oxblood); color: #fff; }
.btn-primary:hover, .btn-primary:focus-visible { background: var(--oxblood-deep); }

.foot { background: var(--ink); color: var(--paper); padding: 40px 0; font-size: 0.95rem; }
.foot p { margin: 4px 0; }
