:root {
    --paper: #F7F6F2;
    --paper-2: #EFEDE7;
    --ink: #17181A;
    --ink-2: #4C4E52;
    --stone: #7C7E82;
    --rule: #DAD8D1;
    --moss: #2F4A3C;
    --moss-soft: #E4ECE6;
    --display: "Instrument Serif", "Iowan Old Style", Georgia, serif;
    --body: "Instrument Sans", "Helvetica Neue", Arial, sans-serif;
  }
  @media (prefers-color-scheme: dark) {
    :root:not([data-theme="light"]) {
      --paper: #141516;
      --paper-2: #1C1D1F;
      --ink: #ECEAE3;
      --ink-2: #B9B7B0;
      --stone: #8A8C90;
      --rule: #2C2E31;
      --moss: #9FBEA8;
      --moss-soft: #1E2A23;
    }
  }
  :root[data-theme="dark"] {
    --paper: #141516;
    --paper-2: #1C1D1F;
    --ink: #ECEAE3;
    --ink-2: #B9B7B0;
    --stone: #8A8C90;
    --rule: #2C2E31;
    --moss: #9FBEA8;
    --moss-soft: #1E2A23;
  }

  * { box-sizing: border-box; }
  html { scroll-behavior: smooth; }
  @media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

  body {
    margin: 0;
    background: var(--paper);
    color: var(--ink);
    font-family: var(--body);
    font-size: 17px;
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
  }
  .wrap {
    max-width: 1080px;
    margin: 0 auto;
    padding-inline: clamp(20px, 5vw, 56px);
    padding-block: 0 96px;
  }
  a { color: inherit; text-decoration: none; }
  a:focus-visible, button:focus-visible { outline: 2px solid var(--moss); outline-offset: 4px; }

  /* header */
  .top {
    display: flex; justify-content: space-between; align-items: center;
    padding-block: 28px 0;
    font-size: 14px; letter-spacing: 0.02em;
  }
  .top .name { display: inline-flex; align-items: center; gap: 12px; font-family: var(--display); font-size: 22px; letter-spacing: 0; }
  .mark { display: inline-block; width: 24px; height: 30px; background-color: var(--ink);
    -webkit-mask: url("data:image/png;base64,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") center / contain no-repeat; mask: url("data:image/png;base64,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") center / contain no-repeat; }
  footer .mark { width: 18px; height: 22px; background-color: var(--stone); vertical-align: -5px; margin-right: 8px; }
  .top nav { display: flex; gap: 28px; }
  .top nav a { color: var(--ink-2); border-bottom: 1px solid transparent; padding-bottom: 2px; }
  .top nav a:hover { color: var(--ink); border-color: var(--ink); }

  /* hero */
  .hero {
    display: grid; grid-template-columns: 1.35fr 1fr; gap: 48px clamp(40px, 6vw, 96px); align-items: end;
    padding-block: clamp(56px, 9vw, 112px) clamp(56px, 8vw, 96px); border-bottom: 1px solid var(--rule);
  }
  .portrait { max-width: 100%; aspect-ratio: 4 / 5; overflow: hidden; border-radius: 4px; background: var(--paper-2); }
  .portrait img { display: block; width: 100%; height: 100%; object-fit: cover; }
  .eyebrow {
    font-size: 12px; text-transform: uppercase; letter-spacing: 0.14em;
    color: var(--moss); font-weight: 600; margin: 0 0 28px;
  }
  .hero h1 {
    font-family: var(--display);
    font-weight: 400;
    font-size: clamp(40px, 6.4vw, 78px);
    line-height: 1.04;
    letter-spacing: -0.01em;
    margin: 0;
    max-width: 16ch;
    text-wrap: balance;
  }
  .hero h1 em { font-style: italic; color: var(--moss); }
  .hero-copy { margin-top: 32px; }
  .hero p {
    max-width: 54ch; color: var(--ink-2);
    font-size: 19px; margin: 0;
  }
  .hero .actions { display: flex; flex-wrap: wrap; gap: 14px 28px; align-items: center; margin-top: 40px; }
  .btn {
    display: inline-block; padding: 14px 24px;
    background: var(--ink); color: var(--paper);
    font-size: 15px; font-weight: 500; letter-spacing: 0.01em;
    border-radius: 2px; transition: background .15s ease;
  }
  .btn:hover { background: var(--moss); }
  .link { font-size: 15px; color: var(--ink-2); border-bottom: 1px solid var(--rule); padding-bottom: 2px; }
  .link:hover { color: var(--ink); border-color: var(--ink); }

  /* sections: label left, content right */
  section { display: grid; grid-template-columns: 220px 1fr; gap: 24px 64px; padding-block: 72px; border-bottom: 1px solid var(--rule); }
  section:last-of-type { border-bottom: 0; }
  .label {
    font-size: 12px; text-transform: uppercase; letter-spacing: 0.14em;
    color: var(--stone); font-weight: 600; padding-top: 8px;
  }
  h2 {
    font-family: var(--display); font-weight: 400;
    font-size: clamp(28px, 3.4vw, 40px); line-height: 1.15;
    margin: 0 0 24px; text-wrap: balance; letter-spacing: -0.005em;
  }
  .lede { font-size: 19px; color: var(--ink-2); max-width: 58ch; margin: 0; }
  .body p { max-width: 62ch; color: var(--ink-2); margin: 0 0 18px; }
  .body p:last-child { margin-bottom: 0; }

  /* services list */
  .services { list-style: none; margin: 8px 0 0; padding: 0; }
  .services li {
    display: grid; grid-template-columns: 1fr 1.6fr; gap: 8px 40px;
    padding-block: 26px; border-top: 1px solid var(--rule);
  }
  .services li:last-child { border-bottom: 1px solid var(--rule); }
  .services h3 {
    font-family: var(--display); font-weight: 400; font-size: 26px;
    margin: 0; line-height: 1.2;
  }
  .services .for { font-family: var(--display); font-style: italic; font-size: 19px; color: var(--moss); margin: 6px 0 0; line-height: 1.3; }
  .services p { margin: 0; color: var(--ink-2); font-size: 16px; }
  .pricing { margin: 28px 0 0; font-size: 15px; color: var(--stone); max-width: 58ch; }
  .approach-intro p { max-width: 58ch; color: var(--ink-2); margin: 0 0 14px; }
  .approach-intro p:last-child { margin-bottom: 0; }
  .hero-copy p + p { margin-top: 18px; }
  .hero-copy p.small { font-size: 17px; }
  .contact-card .ask { font-size: 19px; color: var(--ink-2); margin: 0; max-width: 40ch; }
  .contact-actions { display: flex; flex-wrap: wrap; gap: 14px 24px; align-items: center; }

  /* approach */
  .principles { display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px; margin-top: 8px; }
  .principles h3 { font-size: 16px; font-weight: 600; margin: 0 0 8px; }
  .principles p { font-size: 15px; color: var(--ink-2); margin: 0; }

  /* facts */
  .facts { display: grid; grid-template-columns: repeat(4, auto); gap: 40px; margin-top: 36px; justify-content: start; }
  .facts .n { font-family: var(--display); font-size: 40px; line-height: 1; font-variant-numeric: tabular-nums; }
  .facts .t { font-size: 13px; color: var(--stone); margin-top: 8px; letter-spacing: 0.02em; }

  /* contact */
  .contact-card {
    background: var(--paper-2); padding: 40px; border-radius: 4px;
    display: grid; gap: 20px;
  }
  .contact-card .big {
    font-family: var(--display); font-size: clamp(26px, 3.2vw, 36px);
    line-height: 1.2; margin: 0; max-width: 24ch; text-wrap: balance;
  }
  .contact-card .email { font-size: 18px; border-bottom: 1px solid var(--ink); padding-bottom: 2px; display: inline-block; justify-self: start; }
  .contact-card .email:hover { color: var(--moss); border-color: var(--moss); }
  .contact-meta { display: flex; flex-wrap: wrap; gap: 8px 32px; font-size: 14px; color: var(--stone); }

  footer {
    display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px;
    padding-top: 40px; border-top: 1px solid var(--rule);
    font-size: 13px; color: var(--stone);
  }

  @media (max-width: 760px) {
    section { grid-template-columns: 1fr; gap: 16px; padding-block: 56px; }
    .hero { grid-template-columns: 1fr; gap: 40px; }
    .portrait { max-width: 320px; }
    .services li { grid-template-columns: 1fr; }
    .principles { grid-template-columns: 1fr; gap: 28px; }
    .facts { grid-template-columns: 1fr 1fr; gap: 28px; }
    .top nav { gap: 18px; }
    .top nav a:nth-child(2), .top nav a:nth-child(3) { display: none; }
    .contact-card { padding: 28px 24px; }
  }
  /* writing / blog */
.posts { list-style: none; margin: 8px 0 0; padding: 0; }
.posts li { display: grid; grid-template-columns: 160px 1fr; gap: 6px 40px; padding-block: 24px; border-top: 1px solid var(--rule); }
.posts li:last-child { border-bottom: 1px solid var(--rule); }
.post-date { font-size: 13px; color: var(--stone); letter-spacing: 0.02em; padding-top: 6px; font-variant-numeric: tabular-nums; }
.posts h3 { font-family: var(--display); font-weight: 400; font-size: 26px; margin: 0; line-height: 1.2; }
.posts h3 a:hover { color: var(--moss); }
.posts p { margin: 6px 0 0; color: var(--ink-2); font-size: 16px; max-width: 58ch; }
.muted { color: var(--stone); font-size: 15px; }
.more { display: inline-block; margin-top: 28px; }
.page-head { padding-block: clamp(48px, 8vw, 96px) 40px; border-bottom: 1px solid var(--rule); }
.page-head h1 { font-family: var(--display); font-weight: 400; font-size: clamp(36px, 5vw, 60px); line-height: 1.08; margin: 0; letter-spacing: -0.01em; text-wrap: balance; max-width: 22ch; }
.page-head .meta { color: var(--stone); font-size: 14px; margin: 18px 0 0; letter-spacing: 0.02em; }
.article { max-width: 66ch; padding-block: 48px 0; font-size: 18px; line-height: 1.7; color: var(--ink); }
.article h1, .article h2, .article h3 { font-family: var(--display); font-weight: 400; line-height: 1.2; margin: 40px 0 12px; letter-spacing: -0.005em; }
.article h1 { font-size: 34px; } .article h2 { font-size: 30px; } .article h3 { font-size: 24px; }
.article p { margin: 0 0 20px; }
.article a { color: var(--moss); border-bottom: 1px solid var(--rule); }
.article ul, .article ol { padding-left: 24px; margin: 0 0 20px; }
.article li { margin-bottom: 6px; }
.article img { max-width: 100%; height: auto; display: block; margin: 28px 0; border-radius: 3px; }
.article blockquote { margin: 28px 0; padding-left: 20px; border-left: 2px solid var(--moss); color: var(--ink-2); font-style: italic; }
.article hr { border: 0; border-top: 1px solid var(--rule); margin: 40px 0; }
.article table { border-collapse: collapse; width: 100%; font-size: 16px; }
.article td, .article th { border: 1px solid var(--rule); padding: 8px 10px; text-align: left; vertical-align: top; }
.back { display: inline-block; margin-top: 56px; }
@media (max-width: 760px) {
  .posts li { grid-template-columns: 1fr; gap: 4px; }
}

.intro { max-width: 60ch; }
.intro p { color: var(--ink-2); margin: 0 0 16px; }
.intro p.lede { color: var(--ink); font-family: var(--display); font-size: clamp(24px, 3vw, 32px); line-height: 1.25; margin-bottom: 24px; }
.intro p:last-child { margin-bottom: 0; }
