@font-face { font-family: 'DM Sans'; font-style: normal; font-weight: 400; font-display: swap; src: url('/fonts/dm-sans-400.ttf') format('truetype'); }
@font-face { font-family: 'DM Sans'; font-style: normal; font-weight: 500; font-display: swap; src: url('/fonts/dm-sans-500.ttf') format('truetype'); }
@font-face { font-family: 'DM Sans'; font-style: normal; font-weight: 600; font-display: swap; src: url('/fonts/dm-sans-600.ttf') format('truetype'); }
@font-face { font-family: 'Libre Caslon Display'; font-style: normal; font-weight: 400; font-display: swap; src: url('/fonts/libre-caslon-display-400.ttf') format('truetype'); }
:root { --ink: #183830; --muted: #42564e; --line: #d9dfd4; --paper: #faf7f0; --panel: #e3ebdd; --serif: 'Libre Caslon Display', Georgia, serif; font-synthesis: none; }
* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-padding-top: 110px; }
body { margin: 0; background: var(--paper); color: var(--ink); font: 400 1rem/1.8 'DM Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; }
::selection { background: #f3ba91; color: var(--ink); }
a { color: inherit; text-underline-offset: 4px; }
a:hover { text-decoration-thickness: 2px; }
a:focus-visible { outline: 3px solid var(--ink); outline-offset: 4px; box-shadow: 0 0 0 4px #fffdf7; }
.wrap { width: min(820px, calc(100% - 48px)); margin-inline: auto; }
header { position: sticky; top: 14px; z-index: 2; width: min(1392px, calc(100% - 32px)); margin: 14px auto 0; border: 1px solid var(--line); border-radius: 12px; background: var(--paper); box-shadow: 0 5px 24px #1838300b; }
@supports ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) { header { background: rgb(250 247 240 / 90%); -webkit-backdrop-filter: blur(20px); backdrop-filter: blur(20px); } }
header .wrap { width: auto; margin: 0; padding: 12px 32px; display: flex; align-items: center; justify-content: space-between; min-height: 68px; gap: 20px; }
.wordmark { font-family: 'DM Sans', sans-serif; font-weight: 600; font-size: 1.65rem; letter-spacing: -.065em; line-height: 1.1; text-decoration: none; white-space: nowrap; }
header nav { display: flex; align-items: center; gap: 28px; }
header nav a { display: inline-flex; align-items: center; font-size: .8125rem; text-decoration: none; min-height: 44px; }
header nav a:hover { text-decoration: underline; }
main { padding: 64px 0 76px; }
.eyebrow { font-size: .625rem; letter-spacing: .19em; font-weight: 500; color: var(--muted); }
h1, h2 { font-family: var(--serif); font-weight: 400; letter-spacing: -.035em; }
h1 { font-size: clamp(3.6rem, 7vw, 5.4rem); line-height: 1.05; margin: 20px 0 16px; }
.dates { color: var(--muted); font-size: .875rem; margin: 0 0 36px; }
.summary { background: var(--panel); padding: 28px 32px; margin: 0 0 44px; border-radius: 7px; border: 1px solid #18383012; }
.summary h2 { margin-top: 0; }
.summary ul { margin: 0; padding-left: 20px; }
h2 { font-size: 2.1rem; line-height: 1.2; margin: 42px 0 15px; }
h3 { font-size: 1.05rem; margin: 28px 0 6px; }
p, li { color: #263d33; overflow-wrap: anywhere; }
li + li { margin-top: 9px; }
.caps { font-size: .92rem; }
.table-scroll { overflow-x: auto; margin: 16px 0; }
table { border-collapse: collapse; width: 100%; font-size: .92rem; min-width: 560px; }
th, td { text-align: left; vertical-align: top; padding: 12px 16px 12px 0; border-bottom: 1px solid var(--line); }
th { font-size: .75rem; letter-spacing: .06em; text-transform: uppercase; color: var(--muted); font-weight: 600; }
footer { background: #f8dfca; border-top: 1px solid #18383016; color: var(--muted); font-size: .8rem; }
footer .wrap { display: flex; justify-content: space-between; gap: 20px; flex-wrap: wrap; padding: 30px 0; }
footer nav { display: flex; gap: 18px; flex-wrap: wrap; }
.skip-link { position: fixed; left: 24px; top: -100px; z-index: 3; background: #fffdf7; padding: 12px 20px; }
.skip-link:focus { top: 18px; }
@media (max-width: 620px) {
  header { top: 10px; margin-top: 10px; width: calc(100% - 20px); }
  header .wrap { padding: 8px 14px; gap: 12px; flex-wrap: wrap; }
  .wordmark { font-size: 1.3rem; }
  header nav { gap: 18px; }
  header nav a { font-size: .75rem; }
  main { padding: 42px 0 52px; }
  h1 { font-size: 3.6rem; }
  h2 { font-size: 1.95rem; }
  .summary { padding: 24px; }
  table { min-width: 0; }
  thead { display: none; }
  tr { display: block; padding: 12px 0; border-bottom: 1px solid var(--line); }
  td { display: block; border: 0; padding: 2px 0; }
  td:first-child { font-weight: 600; }
  .t-ai td:nth-child(3)::before { content: 'Received by: '; color: var(--muted); }
  .t-keep td:nth-child(2)::before { content: 'Why: '; color: var(--muted); }
  .t-keep td:nth-child(3)::before { content: 'How long: '; color: var(--muted); }
}
@media (max-width: 380px) { html { scroll-padding-top: 140px; } header nav { width: 100%; justify-content: space-between; } h1 { font-size: 3.1rem; } }
@media print { header, footer, .skip-link { display: none; } body { background: white; } main { padding-top: 0; } .summary { background: white; border: 1px solid var(--line); } h1 { font-size: 3rem; } h2 { break-after: avoid; } }
@media (forced-colors: active) { a:focus-visible { outline-color: Highlight; box-shadow: none; } }
