@font-face{font-family:Oooh Baby;src:url(/fonts/oooh-baby-regular.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:General Sans;src:url(/fonts/general-sans-400.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:General Sans;src:url(/fonts/general-sans-600.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Gambetta;src:url(/fonts/gambetta-400.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}:root{font-family:var(--body);--body:"Gambetta", Georgia, serif;color:#26312c;font-synthesis:none;--ink:#26312c;--muted:#5c655d;--link:#3d5948;--display:"General Sans", Arial, sans-serif;background:#f4f1e9}*{box-sizing:border-box}body{isolation:isolate;margin:0}::selection{color:#f4f1e9;background:#3d5948}a{color:var(--link);text-underline-offset:.25em;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--link);outline-offset:5px}button{font:inherit;cursor:pointer}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--display);text-wrap:balance;letter-spacing:-.025em;font-weight:600;line-height:1.14}p{line-height:1.65}img{max-width:100%;display:block}header,footer{font-family:var(--display);justify-content:space-between;align-items:center;gap:24px;max-width:1440px;margin:auto;padding:30px 5vw;display:flex}header{font-size:15px}header a{color:var(--ink);text-decoration:none}.wordmark{font-weight:600}nav{gap:30px;display:flex}nav a.active,nav a:hover,nav a:focus-visible{text-decoration-line:underline}.personal-home{max-width:1440px;margin:auto;padding:0 5vw}.home-details{grid-template-columns:1.25fr 1fr;gap:clamp(48px,9vw,130px);padding:90px 0 70px;display:grid}.home-details h2{margin-bottom:25px;font-size:clamp(1.8rem,3vw,2.5rem)}.letter{max-width:62ch}.letter p{margin-bottom:24px;font-size:18px}.home-writing{padding-top:5px}.reading-slip{border-bottom:1px solid #c9cec4;padding-bottom:48px}.reading-slip h2{font-size:30px}.reading-slip h2 a{color:var(--ink);text-decoration:none}.reading-slip h2 a:hover{text-decoration:underline}.reading-slip p,.closing-note{font-size:17px}.closing-note{margin-top:48px}.reading{max-width:760px;min-height:55vh;margin:70px auto 110px;padding:0 28px}.reading h1{margin-bottom:30px;font-size:clamp(2.6rem,5vw,4rem)}.reading h2{margin-top:46px;margin-bottom:20px;font-size:30px}.reading p,.reading li{font-size:18px;line-height:1.75}.reading .lede{margin-bottom:35px;font-size:22px;line-height:1.55}.reading .small-label{color:var(--muted);font-size:14px}.back{margin-bottom:30px;display:inline-block}.post-list{padding:0;list-style:none}.post-list li{border-bottom:1px solid #c9cec4;padding:30px 0}.post-list a{font-family:var(--display);font-size:28px}.post-list p{margin:15px 0}.post-list time{color:var(--muted);font-size:14px}pre{background:#e9e6de;padding:20px;overflow:auto}footer{color:var(--muted);border-top:1px solid #c9cec4;font-size:14px}footer p{margin:0}footer>div{gap:25px;display:flex}footer>span{display:none}footer a{color:inherit}.skip{position:absolute;top:-100px}.skip:focus{z-index:10;background:#f4f1e9;padding:10px;top:8px;left:8px}.ambient-warmth{z-index:-1;pointer-events:none;background:radial-gradient(at 70% 35%,#efd28929,#0000 58%);position:fixed;inset:-25%}@media (width<=900px){.home-details{gap:45px}}@media (width<=600px){header{flex-direction:column;align-items:flex-start;gap:20px;padding:24px 6vw}nav{gap:28px}.personal-home{padding:0 6vw}.home-details{grid-template-columns:1fr;gap:45px;padding:50px 0}.home-details h2{font-size:32px}.letter p{font-size:17px}.reading{margin:35px auto 65px;padding:0 6vw}.reading .lede{font-size:21px}footer{flex-wrap:wrap;gap:20px;padding:25px 6vw}footer p{width:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.link-preview{z-index:100;width:min(320px,100vw - 24px);color:var(--ink);font:15px/1.45 var(--display);background:#fffdf8;border:1px solid #c9cec4;border-radius:10px;display:block;position:fixed;overflow:hidden;box-shadow:0 8px 24px #26312c18}.link-preview>img{aspect-ratio:1200/630;object-fit:cover;width:100%;height:auto}.link-preview-copy{gap:6px;padding:14px 16px;display:grid}.link-preview strong{font-size:17px;font-weight:600}.link-preview-domain{color:var(--muted);font-size:13px}.portrait-hero{border-bottom:1px solid #c9cec4;grid-template-columns:1fr 1fr;align-items:center;gap:24px;padding:24px 0 40px;display:grid}.hero-intro{z-index:2;max-width:530px;padding-bottom:32px;position:relative}.hero-intro .first-line{letter-spacing:-.035em;text-wrap:balance;margin-bottom:24px;font-size:clamp(2.6rem,4.5vw,4rem);line-height:1.08}.hero-intro>p{max-width:40ch;font-size:19px}.portrait-signature{isolation:isolate;justify-self:center;width:100%;max-width:560px;padding-bottom:36px;position:relative}.hero-portrait{object-fit:contain;width:auto;max-width:100%;height:590px;margin:auto;-webkit-mask-image:linear-gradient(90deg,#000 80%,#0000),linear-gradient(#000 68%,#0000 98%);mask-image:linear-gradient(90deg,#000 80%,#0000),linear-gradient(#000 68%,#0000 98%);-webkit-mask-composite:source-in;mask-composite:intersect}.portrait-name{z-index:1;letter-spacing:-.035em;white-space:nowrap;text-align:center;text-shadow:0 2px 12px #f4f1e9,0 4px 28px #f4f1e9;pointer-events:none;width:112%;margin:0;font-family:Oooh Baby,cursive;font-size:clamp(2.7rem,5.8vw,5.2rem);font-weight:400;line-height:1.25;position:absolute;bottom:48px;left:-6%;transform:rotate(-7deg)}@media (width<=900px) and (width>=601px){.hero-portrait{height:440px}.portrait-hero{gap:12px;padding-top:40px}.hero-intro .first-line{font-size:40px}.hero-intro>p{font-size:17px}}@media (width<=600px){header{gap:14px;padding-top:18px;padding-bottom:18px}.portrait-hero{grid-template-columns:1fr;gap:0;padding:12px 0 16px}.hero-intro{max-width:none;padding-bottom:0}.hero-intro .first-line{text-wrap:pretty;margin-bottom:16px;font-size:clamp(2rem,8.8vw,2.6rem)}.hero-intro>p{margin-bottom:10px;font-size:16px;line-height:1.5}.portrait-signature{width:min(100%,300px);margin-top:-4px;padding-bottom:0}.hero-portrait{width:auto;max-width:100%;height:280px}.portrait-name{width:110%;font-size:clamp(2.5rem,11vw,3rem);bottom:16px;left:-5%}}:root{--ease-out:cubic-bezier(.23, 1, .32, 1)}@media (prefers-reduced-motion:no-preference){.hero-intro .first-line{animation:hero-arrive .5s var(--ease-out) both}.hero-intro>p{animation:hero-arrive .5s 50ms var(--ease-out) both}.portrait-signature{animation:portrait-arrive .6s 80ms var(--ease-out) both}.signature-ink{animation:1.8s linear .48s both signature-write}.signature-underline path{animation:signature-underline-write .55s 2.35s var(--ease-out) both}}.signature-ink{display:inline-block}.signature-underline{width:88%;height:auto;margin:-.08em auto 0;display:block;overflow:visible}.signature-underline path{stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:0}@keyframes signature-underline-write{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}@keyframes signature-write{0%{clip-path:inset(-35% 100% -35% -8%)}12%{clip-path:inset(-35% 90% -35% -8%)}24%{clip-path:inset(-35% 72% -35% -8%)}34%{clip-path:inset(-35% 64% -35% -8%)}43%{clip-path:inset(-35% 61% -35% -8%)}55%{clip-path:inset(-35% 43% -35% -8%)}67%{clip-path:inset(-35% 33% -35% -8%)}78%{clip-path:inset(-35% 17% -35% -8%)}90%{clip-path:inset(-35% 7% -35% -8%)}to{clip-path:inset(-35% -8%)}}@keyframes hero-arrive{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes portrait-arrive{0%{opacity:0;transform:translateY(14px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.link-preview:not([data-keyboard=true]){opacity:1;transition:opacity .15s var(--ease-out), transform .15s var(--ease-out);transform:translateY(0)}@starting-style{.link-preview:not([data-keyboard=true]){opacity:0;transform:translateY(4px)}}}@media (width>=1440px){header,footer,.personal-home{max-width:1680px;padding-left:72px;padding-right:72px}.portrait-hero{grid-template-columns:1.1fr 1fr;gap:48px}.hero-intro{max-width:660px}.hero-intro>p{max-width:46ch}.portrait-signature{max-width:620px}.hero-portrait{height:640px}}@media (width>=901px){.hero-title-line{white-space:nowrap;display:block}.hero-intro .first-line{font-size:clamp(2.6rem,4.1vw,4rem)}}.about-page{max-width:1180px;margin:72px auto 100px;padding:0 5vw}.about-opening{max-width:850px;padding-bottom:64px}.about-label{font:14px/1.5 var(--display);color:var(--muted);margin-bottom:18px}.about-opening h1{margin-bottom:28px;font-size:clamp(2.6rem,5vw,4.5rem)}.about-lede{margin-bottom:0;font-size:clamp(22px,2.3vw,29px);line-height:1.5}.about-chapter{border-top:1px solid #c9cec4;grid-template-columns:minmax(180px,1fr) minmax(0,2fr);gap:clamp(32px,6vw,88px);padding:56px 0;display:grid}.about-margin h2{max-width:15ch;font-size:27px;line-height:1.25}.about-prose{max-width:62ch}.about-prose p,.about-callout>p:last-child{margin-bottom:24px;font-size:19px;line-height:1.75}.about-prose>:last-child{margin-bottom:0}.about-prose h3{margin:36px 0 18px;font-size:20px}.about-prose h3:first-child{margin-top:0}.about-callout{background:#e6e9df;margin:8px 0 56px;padding:clamp(28px,5vw,64px)}.about-statement{font:400 clamp(28px, 3.3vw, 40px)/1.3 var(--body);max-width:31ch;margin-bottom:24px}.about-callout>p:last-child{max-width:62ch;margin-bottom:0}.about-contact{border-top:1px solid #c9cec4;justify-content:space-between;align-items:baseline;gap:20px;padding-top:36px;display:flex}.about-contact p{margin:0;font-size:22px}.about-contact a{font:16px/1.5 var(--display);flex-shrink:0}@media (width<=700px){.about-page{margin:36px auto 64px;padding:0 6vw}.about-opening{padding-bottom:36px}.about-chapter{grid-template-columns:1fr;gap:20px;padding:36px 0}.about-margin h2{max-width:24ch;margin-bottom:0}.about-label{margin-bottom:12px}.about-prose p,.about-callout>p:last-child{font-size:18px}.about-callout{margin-bottom:36px}.about-contact{display:block}.about-contact p{margin-bottom:16px}}@media (prefers-reduced-motion:no-preference){.reading>h1,.about-opening{animation:page-arrive .45s var(--ease-out) backwards}.reading>.lede{animation:page-arrive .45s 40ms var(--ease-out) backwards}.reading>:is(p:not(.lede),ul,article),.about-page>:is(.about-chapter,.about-callout,.about-contact){animation:page-arrive .45s 80ms var(--ease-out) backwards}}@keyframes page-arrive{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}html[data-input=keyboard] :is(.reading,.about-page,.portrait-hero) *{animation:none!important}
