:root{--bg:#f5f2ed;--ink:#161614;--ink-soft:#6b6960;--rule:#dbd6cc;--accent:#7c989a;--font-display:"Fraunces",Georgia,serif;--font-body:"IBM Plex Sans",-apple-system,BlinkMacSystemFont,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,SFMono-Regular,monospace;--max:1100px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font-family:var(--font-body);font-weight:300;font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;letter-spacing:-.005em}a{color:inherit;text-decoration:none;transition:color .2s ease}a:hover{color:var(--accent)}img{max-width:100%;height:auto;display:block}button{font-family:inherit;background:none;border:0;padding:0;cursor:pointer;color:inherit}.container{max-width:var(--max);margin:0 auto;padding:0 2rem}.nav{padding:1.75rem 0;font-family:var(--font-mono);font-size:13px;letter-spacing:.02em}.nav .container{display:flex;justify-content:space-between;align-items:center}.nav .brand{color:var(--ink);font-weight:400;display:inline-flex;align-items:center;gap:.6rem}.nav .brand-mark{display:block;width:28px;height:28px;transition:transform .4s cubic-bezier(.2,.7,.2,1)}.nav .brand:hover .brand-mark{transform:rotate(-8deg)}.nav ul{display:flex;gap:1.75rem;list-style:none}.nav ul a{color:var(--ink-soft)}.hero{padding:7rem 0 6rem}.hero .greeting{font-family:var(--font-display);font-size:clamp(3.5rem,9vw,7rem);font-weight:300;font-style:italic;font-optical-sizing:none;line-height:.92;letter-spacing:-.035em;margin-bottom:2.5rem}.hero .lede{max-width:580px;font-size:1.2rem;line-height:1.55;font-weight:300;margin-bottom:2.75rem}.hero .lede em{font-style:italic;font-family:var(--font-display);font-weight:400}.hero .actions{display:flex;flex-wrap:wrap;gap:2rem;align-items:center;font-family:var(--font-mono);font-size:13px;letter-spacing:.02em}.hero .actions a{color:var(--ink);border-bottom:1px solid var(--ink);padding-bottom:3px}.hero .actions a:hover{color:var(--accent);border-bottom-color:var(--accent)}section{padding:4.5rem 0}.section-label{font-family:var(--font-mono);font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:var(--ink-soft);margin-bottom:3rem;display:flex;align-items:center;gap:1.25rem}.section-label:before{content:"";width:6px;height:6px;background:var(--accent);border-radius:50%;flex-shrink:0}.section-label:after{content:"";flex:1 1;height:1px;background:var(--rule)}.what .grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:4rem;gap:4rem}.what h3{font-family:var(--font-display);font-weight:400;font-size:1.5rem;margin-bottom:1rem;letter-spacing:-.015em}.what p{color:var(--ink-soft);font-size:.95rem;line-height:1.6}.selected ul{list-style:none}.selected li{display:grid;grid-template-columns:110px 1fr auto;grid-gap:2rem;gap:2rem;padding:1.5rem 0;border-bottom:1px solid var(--rule);align-items:baseline;transition:padding .3s ease}.selected li:first-child{border-top:1px solid var(--rule)}.selected li:hover{padding-left:.75rem}.selected li:hover .title{color:var(--accent)}.selected .date{font-family:var(--font-mono);font-size:13px;color:var(--ink-soft)}.selected .title{font-size:1.05rem;transition:color .2s ease}.selected .kind{font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-soft);text-align:right}.contact{padding:6rem 0 5rem}.contact h2{font-family:var(--font-display);font-weight:300;font-style:italic;font-optical-sizing:none;font-size:clamp(2.75rem,7vw,5rem);letter-spacing:-.025em;line-height:.95;margin-bottom:2rem}.contact .email{font-family:var(--font-mono);font-size:1rem;color:var(--ink);border-bottom:1px solid var(--ink);padding-bottom:3px}.contact .email:hover{color:var(--accent);border-bottom-color:var(--accent)}.footer{padding:2.5rem 0;border-top:1px solid var(--rule);margin-top:2rem}.footer .container{display:flex;justify-content:space-between;align-items:center;font-family:var(--font-mono);font-size:12px;color:var(--ink-soft);letter-spacing:.02em}.footer ul{list-style:none;display:flex;gap:1.5rem}.page{padding:4rem 0 5rem}.page .title{font-family:var(--font-display);font-style:italic;font-weight:300;font-optical-sizing:none;font-size:clamp(2.5rem,6vw,4rem);letter-spacing:-.025em;line-height:.95;margin-bottom:2.5rem}.page .prose{max-width:720px;color:var(--ink)}.page .prose h3{font-family:var(--font-display);font-weight:400;font-size:1.25rem;margin:2rem 0 .75rem;letter-spacing:-.01em}.page .prose p{margin-bottom:1.1rem;color:var(--ink-soft);font-size:1rem;line-height:1.65}.page .prose a{border-bottom:1px solid var(--rule)}.reveal{opacity:0;transform:translateY(14px);animation:reveal 1s cubic-bezier(.2,.7,.2,1) forwards}.reveal:first-child{animation-delay:.1s}.reveal:nth-child(2){animation-delay:.25s}.reveal:nth-child(3){animation-delay:.4s}@keyframes reveal{to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.container{padding:0 1.5rem}body{font-size:16px}.nav{padding:1.25rem 0}.nav ul{gap:1.25rem}.hero{padding:4rem 0 3rem}.hero .lede{font-size:1.1rem}.hero .actions{gap:1.25rem;flex-direction:column;align-items:flex-start}section{padding:3rem 0}.what .grid{gap:2.5rem}.selected li,.what .grid{grid-template-columns:1fr}.selected li{gap:.5rem;padding:1.25rem 0}.selected li:hover{padding-left:0}.selected .date{order:-1}.selected .kind{text-align:left}.contact{padding:4rem 0 3rem}.footer{margin-top:1rem}.footer .container{flex-direction:column;gap:1.25rem;align-items:flex-start}}