@font-face{font-family:"DM Serif Display";font-style:normal;font-weight:400;font-display:swap;src:url(/assets/dm-serif-display-400-C5_t9oOD.woff2) format("woff2")}@font-face{font-family:"DM Serif Display";font-style:italic;font-weight:400;font-display:swap;src:url(/assets/dm-serif-display-400-italic-DpcbibHm.woff2) format("woff2")}@font-face{font-family:Crimson Pro;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/crimson-pro-400-B4SlG4wx.woff2) format("woff2")}@font-face{font-family:Crimson Pro;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/crimson-pro-500-D6GH0edE.woff2) format("woff2")}@font-face{font-family:Crimson Pro;font-style:italic;font-weight:400;font-display:swap;src:url(/assets/crimson-pro-400-italic-BJbyz_Tg.woff2) format("woff2")}:root{--paper: #efe8da;--paper-light: #f8f3e8;--paper-hover: #fcf9f2;--paper-edge: #ddd2bd;--paper-deep: #cfc2a9;--ink: #1a1815;--ink-2: #4b443c;--ink-3: #6f665a;--brass: #82622a;--display: "DM Serif Display", Georgia, "Times New Roman", serif;--text: "Crimson Pro", Georgia, "Times New Roman", serif;--measure: 1040px;--rule: 1px solid var(--ink);--step: 26px;--edge: 9px}@media (max-width: 720px){:root{--step: 8px;--edge: 7px}}*,*:before,*:after{box-sizing:border-box}html{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--text);font-size:19px;line-height:1.55}a{color:inherit;text-decoration:none}h1,h2,h3{font-family:var(--display);font-weight:400;margin:0}p{margin:0}img{display:block;max-width:100%}:focus-visible{outline:2px solid var(--brass);outline-offset:3px}.text-link{text-decoration:underline;text-decoration-color:var(--brass);text-decoration-thickness:1px;text-underline-offset:3px}.text-link:hover{text-decoration-thickness:2px}.page{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:0 clamp(20px,4vw,48px) 48px}.measure{width:100%;max-width:var(--measure)}.skip-link{position:absolute;left:16px;top:-60px;padding:8px 14px;background:var(--ink);color:var(--paper)}.skip-link:focus{top:12px}.key{display:inline-block;width:22px;height:13px;background:var(--paper-light);border:var(--rule)}.key--owned{border-left:4px solid var(--brass)}.site-header{display:flex;justify-content:space-between;align-items:center;padding:28px 0}.wordmark{display:flex;align-items:center;gap:12px;font-family:var(--display);font-size:22px}.mark{display:flex;flex-direction:column;gap:3px}.mark span{display:block;width:22px;height:3px;background:var(--ink)}.mark span:nth-child(2){margin-left:3px}.mark span:nth-child(3){margin-left:6px;background:var(--brass)}.site-nav{display:flex;gap:26px;font-size:18px}.site-nav a{padding-bottom:2px;border-bottom:1px solid transparent}.site-nav a:hover{border-bottom-color:var(--ink)}.site-nav a.active{border-bottom-color:var(--brass)}.site-main{width:100%;display:flex;justify-content:center}.site-footer{margin-top:auto;padding-top:88px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:16px;color:var(--ink-3)}.site-footer-links{display:flex;gap:22px}@media (max-width: 560px){.site-header{flex-direction:column;align-items:flex-start;gap:14px}.site-nav{gap:20px}}.stack-list{list-style:none;margin:0;padding:0}.slab{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px 40px;align-items:end;width:calc(100% - var(--below) * var(--step) * 2);margin:0 auto var(--edge);padding:30px clamp(20px,3vw,34px) 28px;background:var(--paper-light);border:var(--rule)}.slab:after{content:"";position:absolute;left:-1px;right:-1px;top:100%;height:var(--edge);background:var(--paper-edge);border:var(--rule);border-top:none;border-bottom:none}.slab--owned{border-left:5px solid var(--brass);padding-left:clamp(16px,3vw,30px)}.slab--owned:after{left:-5px}.slab:hover{background:var(--paper-hover)}.slab-text{display:flex;flex-direction:column;gap:8px;min-width:0}.slab-name{font-family:var(--display);font-size:clamp(32px,4.2vw,44px);line-height:1.02;justify-self:start}.slab:hover .slab-name{text-decoration:underline;text-decoration-color:var(--brass);text-decoration-thickness:2px;text-underline-offset:6px}.slab-tag{max-width:58ch;font-size:19px;line-height:1.5;color:var(--ink-2);text-wrap:pretty}.slab-credit{font-size:16px;font-style:italic;color:var(--ink-3);white-space:nowrap}.plinth{position:relative;height:14px;margin-bottom:var(--edge);background:var(--paper-edge);border:var(--rule)}.plinth:after{content:"";position:absolute;left:-1px;right:-1px;top:100%;height:var(--edge);background:var(--paper-deep);border:var(--rule);border-top:none}.stack-key{display:flex;flex-wrap:wrap;align-items:center;gap:8px 0;margin-top:26px;font-size:16px;color:var(--ink-3)}@media (max-width: 720px){.slab{grid-template-columns:1fr;padding:24px 20px 22px}.slab--owned{padding-left:18px}.slab-credit{white-space:normal}}.stack-key-item{display:inline-flex;align-items:center;gap:10px;margin-right:22px}.hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:32px 56px;align-items:end;width:100%;padding:48px 0 88px}.hero--books{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center}.hero--books .hero-intro{margin-top:40px}.hero-title{font-size:clamp(76px,12.5vw,164px);line-height:.86;letter-spacing:-.02em}.hero--books .hero-title{font-size:clamp(76px,11vw,150px)}.hero-title-indent{display:inline-block;padding-left:.42em}.hero-dot{color:var(--brass)}.hero-intro{max-width:34ch;padding-bottom:.6em;font-size:21px;line-height:1.5;color:var(--ink-2);text-wrap:pretty}.books{position:relative;width:100%;height:540px}.books canvas{display:block}@media (min-width: 820px) and (min-height: 620px){.drop-stage--pinned{height:calc(100svh + 90vh)}.drop-stage--pinned .drop-frame{position:sticky;top:0;height:100svh;display:flex;align-items:center}.drop-stage--pinned .hero{padding:0}.drop-stage--pinned .books{height:min(72svh,600px)}}.stack-heading{margin-bottom:22px;font-size:30px}@media (max-width: 820px){.hero,.hero--books{grid-template-columns:1fr;padding:28px 0 56px}.hero-intro{padding-bottom:0;max-width:40ch}.hero--books .hero-intro{margin-top:28px}.books{height:380px}}.notfound{max-width:680px;padding-top:88px}.notfound-title{font-size:clamp(44px,6.5vw,76px);line-height:1;letter-spacing:-.01em}.notfound-text{margin-top:20px;font-size:21px;color:var(--ink-2)}.notfound-link{display:inline-block;margin-top:26px;font-size:19px}.detail{padding-top:20px}.detail-back{font-size:17px}.detail-head{padding:48px 0 40px;border-bottom:var(--rule)}.detail-credit{display:flex;align-items:center;gap:10px;font-size:17px;font-style:italic;color:var(--ink-3)}.detail-title{margin-top:14px;font-size:clamp(56px,8vw,104px);line-height:.95;letter-spacing:-.015em}.detail-tag{margin-top:22px;max-width:48ch;font-size:22px;line-height:1.5;color:var(--ink-2);text-wrap:pretty}.detail-figure{margin:40px 0 0;border:var(--rule)}.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:40px 72px;padding-top:40px}.detail-body{display:flex;flex-direction:column;gap:18px;max-width:64ch}.detail-body p{font-size:20px;line-height:1.65;text-wrap:pretty}.detail-body .detail-pending{font-style:italic;color:var(--ink-3)}.detail-facts{margin:0;align-self:start;display:flex;flex-direction:column;gap:16px}.detail-facts dt{font-size:15px;font-style:italic;color:var(--ink-3)}.detail-facts dd{margin:2px 0 0;font-size:18px}.detail-next{margin-top:64px;font-size:18px;color:var(--ink-3)}@media (max-width: 760px){.detail-head{padding:32px 0 30px}.detail-grid{grid-template-columns:1fr;gap:32px}.detail-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px}}.resume{max-width:780px;padding-top:32px}.resume-head{padding-bottom:28px;border-bottom:var(--rule)}.resume-name{font-size:clamp(48px,7vw,80px);line-height:1;letter-spacing:-.015em}.resume-role{margin-top:12px;font-size:21px;font-style:italic;color:var(--ink-2)}.resume-contact{list-style:none;margin:16px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px 26px;font-size:17px;color:var(--ink-2)}.resume-section{margin-top:48px}.resume-section h2{margin-bottom:18px;font-size:28px}.resume-summary{max-width:62ch;font-size:20px;line-height:1.6;color:var(--ink-2);text-wrap:pretty}.resume-job+.resume-job{margin-top:34px}.resume-job-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px 20px;flex-wrap:wrap}.resume-job-head h3{font-size:24px;line-height:1.15}.resume-dates{font-size:16px;color:var(--ink-3);white-space:nowrap}.resume-org{margin-top:4px;font-size:17px;font-style:italic;color:var(--ink-3)}.resume-points{margin:14px 0 0;padding-left:1.1em;display:flex;flex-direction:column;gap:9px}.resume-points li{padding-left:4px;font-size:18px;line-height:1.55;color:var(--ink-2);text-wrap:pretty}.resume-points li::marker{color:var(--brass)}.resume-columns{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:0 56px}.resume-skills{margin:0;display:flex;flex-direction:column;gap:14px}.resume-skills dt{font-size:15px;font-style:italic;color:var(--ink-3)}.resume-skills dd{margin:1px 0 0;font-size:18px;line-height:1.45}.resume-plain{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px;font-size:18px}.resume-plain li{display:flex;flex-direction:column}.resume-degree{font-family:var(--display);font-size:20px;line-height:1.2}.resume-school{font-size:16px;color:var(--ink-3)}.resume-subhead{margin-top:36px}.resume-foot{margin-top:56px;padding-top:20px;border-top:var(--rule);font-size:17px;font-style:italic;color:var(--ink-3)}.resume-foot a{font-style:normal}@media (max-width: 680px){.resume-columns{grid-template-columns:1fr}}
