:root{
  color-scheme: light;
  --paper:#ECEBE6;
  --surface:#F3F2EE;
  --ink:#000000;
  --ink-soft:#3A3A38;
  --ink-faint:#76756F;
  --rule:#CBCAC4;
  --measure:34rem;
}
*{box-sizing:border-box}
body{
  margin:0;background:var(--paper);color:var(--ink);
  font-family:"IBM Plex Sans","Helvetica Neue",Arial,sans-serif;
  font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased;
}
.wrap{max-width:60rem;margin:0 auto;padding-inline:24px}
.lede,.body-col{max-width:var(--measure)}
h1,h2,h3{font-family:Newsreader,Georgia,"Times New Roman",serif;font-weight:300;text-wrap:balance;margin:0;color:var(--ink)}
h1{font-size:clamp(2.4rem,6vw,3.9rem);line-height:1.08;letter-spacing:-.015em}
h2{font-size:clamp(1.6rem,3.4vw,2.25rem);line-height:1.18}
h3{font-size:1.15rem;line-height:1.3}
p{margin:0}
a{color:inherit}
.eyebrow{font-family:"IBM Plex Mono",ui-monospace,Menlo,monospace;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-faint)}
.masthead{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-block:28px 0}
.mark{font-family:Newsreader,Georgia,serif;font-size:1.05rem;letter-spacing:.14em;text-transform:uppercase}
.mark a{text-decoration:none}
nav{display:flex;gap:20px;font-size:.85rem}
nav a{text-decoration:none;color:var(--ink-soft);border-bottom:1px solid transparent;padding-bottom:2px}
nav a:hover{border-bottom-color:var(--ink)}
section{padding-block:clamp(44px,6.5vw,76px)}
.rule{border:0;border-top:1px solid var(--rule);margin:0}
.hero{display:grid;gap:26px;padding-block:clamp(40px,7vw,84px) clamp(36px,5vw,60px)}
.hero p.lede{font-size:clamp(1.05rem,2.2vw,1.2rem);color:var(--ink-soft)}
.meta{display:flex;gap:10px 20px;flex-wrap:wrap;align-items:center}
.btn{display:inline-block;font-size:.92rem;padding:11px 22px;border:1px solid var(--ink);border-radius:2px;text-decoration:none;background:var(--ink);color:var(--paper);transition:opacity .18s ease}
.btn:hover{opacity:.82}
.btn.ghost{background:transparent;color:var(--ink)}
.steps{display:grid;margin-top:30px;border-top:1px solid var(--rule)}
.step{display:grid;grid-template-columns:3rem 1fr;gap:18px;padding-block:22px;border-bottom:1px solid var(--rule);align-items:start}
.step .num{font-family:"IBM Plex Mono",monospace;font-size:.78rem;color:var(--ink-faint);padding-top:.4em;font-variant-numeric:tabular-nums}
.step p{color:var(--ink-soft);margin-top:6px;max-width:var(--measure)}
.contact{display:grid;gap:18px}
.contact-lines{font-family:"IBM Plex Mono",monospace;font-size:.95rem;overflow-wrap:anywhere}
.copy{font:inherit;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;background:transparent;border:1px solid var(--rule);color:var(--ink-faint);border-radius:2px;padding:4px 9px;margin-left:8px;cursor:pointer}
.copy:hover{color:var(--ink);border-color:var(--ink)}
footer{padding-block:34px 54px;color:var(--ink-faint);font-size:.82rem;display:grid;gap:8px}
footer p{max-width:44rem}
:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
