:root { color-scheme:light; --paper:#f7f6ef; --ink:#24332b; --muted:#53665c; --accent:#245a3f; --soft:#e8ece2; --line:#cbd2c7; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--paper); font:16px/1.6 system-ui,-apple-system,"Segoe UI",sans-serif; }
a { color:var(--accent); text-underline-offset:4px; }
a:hover { text-decoration-thickness:2px; }
:focus-visible { outline:3px solid var(--accent); outline-offset:4px; }
.wrap { max-width:1168px; margin:auto; padding:0 32px; }
.skip { position:absolute; top:-80px; left:16px; background:var(--paper); padding:12px; z-index:2; }
.skip:focus { top:8px; }
header.wrap { display:flex; justify-content:space-between; align-items:center; gap:24px; padding-top:24px; padding-bottom:24px; border-bottom:1px solid var(--line); }
.wordmark { font-size:24px; font-weight:700; letter-spacing:-1px; text-decoration:none; color:var(--ink); }
.wordmark span { color:var(--accent); }
nav { display:flex; gap:24px; font-size:14px; flex-wrap:wrap; }
.hero { display:grid; grid-template-columns:1.45fr 1fr; align-items:end; gap:64px; padding-top:64px; padding-bottom:64px; }
.eyebrow { font-size:12px; text-transform:uppercase; letter-spacing:1.2px; font-weight:700; color:var(--accent); margin:0 0 16px; }
h1,h2 { font-family:Georgia,"Times New Roman",serif; font-weight:500; line-height:1.08; }
h1 { font-size:clamp(44px,5.3vw,72px); letter-spacing:-2px; margin:0 0 24px; }
h2 { font-size:40px; letter-spacing:-1px; margin:0 0 24px; }
h3 { font-size:20px; line-height:1.3; margin:0 0 16px; }
p { margin:0 0 16px; max-width:68ch; }
.intro { font-size:18px; max-width:46ch; }
.small { font-size:14px; }
.muted { color:var(--muted); }
.actions { display:flex; align-items:center; gap:24px; flex-wrap:wrap; margin-top:32px; font-size:14px; }
.button { display:inline-block; color:var(--paper); background:var(--accent); padding:12px 24px; border-radius:4px; text-decoration:none; font-weight:600; }
.button:hover { background:#18462e; }
.proof { background:var(--soft); padding:32px; }
.proof h2 { font-size:40px; }
dl { margin:0 0 24px; }
dl div { display:flex; justify-content:space-between; gap:24px; padding:12px 0; border-bottom:1px solid #b8c6b6; }
dt { font-size:14px; }
dd { margin:0; font-size:20px; font-weight:600; }
.section { padding-top:64px; padding-bottom:64px; border-top:1px solid var(--line); }
.section-heading { display:flex; justify-content:space-between; align-items:end; gap:64px; margin-bottom:32px; }
.section-heading p:not(.eyebrow) { max-width:48ch; color:var(--muted); }
.section-heading h2 { margin-bottom:0; }
.comparison,.scope-grid { display:grid; grid-template-columns:1fr 1fr; gap:48px; }
.table-scroll { overflow-x:auto; margin-bottom:16px; }
table { width:100%; border-collapse:collapse; font-size:14px; text-align:left; }
caption { text-align:left; color:var(--muted); margin-bottom:12px; font-size:12px; }
th { font-size:12px; font-weight:600; white-space:nowrap; }
th,td { padding:12px 8px; border-bottom:1px solid var(--line); }
th:first-child,td:first-child { padding-left:0; }
.duplicate { background:#eee1cf; }
code { font-family:ui-monospace,Consolas,monospace; }
.sample-links { display:flex; gap:24px; flex-wrap:wrap; margin:24px 0 16px; font-size:14px; }
.scope-grid { margin:32px 0; }
ul { margin:0; padding-left:20px; }
li { padding:0 0 12px 4px; }
.method { background:var(--soft); padding:32px; }
.method p { max-width:88ch; }
.method p:last-child { margin-bottom:0; }
.contact { background:#e8ece2; }
.contact-grid { display:grid; grid-template-columns:1.4fr 1fr; gap:64px; align-items:start; }
.contact-details { border-top:3px solid var(--accent); padding-top:24px; overflow-wrap:anywhere; }
footer.wrap { padding-top:32px; padding-bottom:32px; display:flex; justify-content:space-between; gap:48px; }
footer p:last-child { max-width:62ch; }
@media(max-width:800px) {
  .hero { grid-template-columns:1fr; gap:32px; padding-top:48px; padding-bottom:48px; }
  .hero h1 br { display:none; }
  h1 { max-width:12ch; }
  .proof { max-width:600px; }
  .section-heading { display:block; }
  .section-heading h2 { margin-bottom:24px; }
  .comparison,.scope-grid,.contact-grid { grid-template-columns:1fr; gap:32px; }
  .section { padding-top:48px; padding-bottom:48px; }
  footer.wrap { display:block; }
}
@media(max-width:520px) {
  .wrap { padding-left:24px; padding-right:24px; }
  header.wrap { align-items:flex-start; flex-direction:column; gap:16px; }
  nav { gap:16px; font-size:13px; }
  h2,.proof h2 { font-size:32px; }
  .proof,.method { padding:24px; }
  th,td { padding:12px 6px; }
  th:first-child { white-space:normal; }
  .actions,.sample-links { gap:16px; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
