:root{--font-display:"Fraunces", ui-serif, Georgia, "Times New Roman", serif;--font-body:"Newsreader", ui-serif, Georgia, "Times New Roman", serif;--text-xs:.8rem;--text-sm:.9rem;--text-base:1.0625rem;--text-md:1.25rem;--text-lg:1.5625rem;--text-xl:1.9531rem;--text-2xl:2.4414rem;--text-display:clamp(2.6rem, 4.5vw + 1rem, 4.2rem);--text-display-s:clamp(2.1rem, 3.5vw + 1rem, 3rem);--space-3xs:.125rem;--space-2xs:.25rem;--space-xs:.5rem;--space-sm:.75rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2.5rem;--space-2xl:4rem;--space-3xl:6rem;--space-4xl:9rem;--page-gutter:clamp(1.25rem, 5vw, 2.5rem);--measure:60ch;--rule:1px;--radius-sm:4px;--dur-micro:.12s;--dur-short:.22s;--dur-long:.42s;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.7, 0, .84, 0);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--z-base:1;--z-sticky:200;--color-paper:oklch(97% .008 75);--color-paper-2:oklch(94% .011 72);--color-rule:oklch(86% .01 68);--color-neutral:oklch(56% .012 55);--color-muted:oklch(44% .014 50);--color-ink:oklch(24% .018 48);--color-accent:oklch(52% .132 42);--color-accent-strong:oklch(46% .14 40);--color-focus:oklch(54% .15 45)}:root[data-theme=dark]{--color-paper:oklch(17% .012 58);--color-paper-2:oklch(21% .014 58);--color-rule:oklch(33% .012 58);--color-neutral:oklch(64% .012 60);--color-muted:oklch(74% .012 62);--color-ink:oklch(93% .01 78);--color-accent:oklch(72% .115 48);--color-accent-strong:oklch(78% .12 50);--color-focus:oklch(74% .13 48)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;overflow-x:clip}body{background-color:var(--color-paper);min-height:100dvh;color:var(--color-ink);font-family:var(--font-body);font-size:var(--text-base);font-variant-numeric:oldstyle-nums;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;transition:background-color var(--dur-short) var(--ease-in-out), color var(--dur-short) var(--ease-in-out);margin:0;font-weight:400;line-height:1.6;overflow-x:clip}:root[data-theme=dark] body{font-weight:350}.page{flex-direction:column;min-height:100dvh;display:flex}.container{width:100%;max-width:46rem;padding-inline:var(--page-gutter);margin-inline:auto}main{flex:auto}.nav-edge{justify-content:space-between;align-items:center;gap:var(--space-md);padding-block:var(--space-lg);display:flex}.wordmark{font-family:var(--font-display);font-optical-sizing:auto;font-weight:600;font-size:var(--text-md);letter-spacing:-.01em;color:var(--color-ink);text-decoration:none}.wordmark:focus-visible{outline:2px solid var(--color-focus);outline-offset:4px;border-radius:var(--radius-sm)}.hero-letter{max-width:var(--measure)}.salutation{font-family:var(--font-display);font-optical-sizing:auto;font-style:normal;font-weight:340;font-size:var(--text-display);letter-spacing:-.02em;margin:0 0 var(--space-xl);overflow-wrap:anywhere;text-wrap:balance;min-width:0;line-height:1.08}.lede{margin:0 0 var(--space-lg);font-size:var(--text-md);color:var(--color-ink);line-height:1.55}.prose p{margin:0 0 var(--space-lg);max-width:var(--measure)}.prose p:last-child{margin-bottom:0}.signoff{margin-top:var(--space-xl);font-family:var(--font-display);font-optical-sizing:auto;font-style:italic;font-size:var(--text-md);color:var(--color-muted)}.asterism{margin-block:var(--space-xl);color:var(--color-neutral);text-align:left;border:0;overflow:visible}.asterism:before{content:"* * *";letter-spacing:.5em;font-size:var(--text-sm);color:var(--color-neutral)}.links{gap:var(--space-md);margin:0;padding:0;list-style:none;display:flex}.link{align-items:center;gap:var(--space-md);padding-block:var(--space-lg);color:var(--color-ink);grid-template-columns:1fr auto;text-decoration:none;display:grid}.link__label{font-family:var(--font-body);font-size:var(--text-sm);letter-spacing:.06em;letter-spacing:.06em;color:var(--color-muted);white-space:nowrap;background-image:linear-gradient(var(--color-accent), var(--color-accent));background-position:0 100%;background-repeat:no-repeat;background-size:0% var(--rule);transition:background-size var(--dur-short) var(--ease-out), color var(--dur-micro) var(--ease-out);padding-bottom:var(--space-3xs);font-weight:600}.link:hover .link__label,.link:focus-visible .link__label{background-size:100% var(--rule);color:var(--color-accent-strong)}.link:focus-visible{outline:2px solid var(--color-focus);outline-offset:4px;border-radius:var(--radius-sm)}.foot-letter{padding-block:var(--space-2xl);max-width:var(--measure)}.letter__close{font-family:var(--font-display);font-optical-sizing:auto;font-style:italic;font-size:var(--text-lg);color:var(--color-ink);margin:0}.letter__sign{font-style:normal;font-weight:600}.foot-letter__meta{margin:var(--space-lg) 0 0;font-size:var(--text-xs);text-align:center;letter-spacing:.02em;color:var(--color-muted)}.reveal{opacity:0;animation:reveal var(--dur-long) var(--ease-out) forwards;animation-delay:calc(var(--i,0) * 70ms);transform:translateY(8px)}@keyframes reveal{to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.15s!important;animation-duration:.15s!important;animation-iteration-count:1!important}.reveal{animation:.15s linear forwards reveal-reduced;transform:none}@keyframes reveal-reduced{to{opacity:1}}}.theme-toggle[data-astro-cid-l6lhmie6]{align-items:center;gap:var(--space-xs);min-height:44px;padding:var(--space-xs) var(--space-sm);border:var(--rule) solid transparent;color:var(--color-muted);font-family:var(--font-body);font-size:var(--text-sm);letter-spacing:.06em;text-transform:uppercase;transition:color var(--dur-micro) var(--ease-out), border-color var(--dur-micro) var(--ease-out), background-color var(--dur-micro) var(--ease-out);background:0 0;border-radius:999px;margin-inline-end:calc(var(--space-sm) * -1);display:inline-flex}.theme-toggle[data-astro-cid-l6lhmie6]:hover{color:var(--color-ink);border-color:var(--color-rule);background-color:var(--color-paper-2)}.theme-toggle[data-astro-cid-l6lhmie6]:active{transform:translateY(1px)}.theme-toggle[data-astro-cid-l6lhmie6]:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}.theme-toggle[data-astro-cid-l6lhmie6]:disabled{opacity:.55;cursor:not-allowed}.theme-toggle__icon[data-astro-cid-l6lhmie6]{display:inline-flex}.theme-toggle__label[data-astro-cid-l6lhmie6]{font-weight:600}.i-sun[data-astro-cid-l6lhmie6]{display:none}.i-moon[data-astro-cid-l6lhmie6],:root[data-theme=dark] .i-sun[data-astro-cid-l6lhmie6]{display:inline}:root[data-theme=dark] .i-moon[data-astro-cid-l6lhmie6]{display:none}@media (width<=26rem){.theme-toggle__label[data-astro-cid-l6lhmie6]{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}
