button[data-astro-cid-5hce7sga]{font:inherit;color:inherit}@font-face{font-family:PP Neue Montreal;src:url(/fonts/PPNeueMontreal-Regular.woff2) format("woff2");font-weight:400;font-display:swap}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--color-bg: #ffffff;--color-fg: #000000;--color-accent: #ed0f0a;--color-green: #319f1a;--color-blue: #293c64;--color-red: #ed0f0a;--color-yellow: #d3bd43;--color-orange: #d26a37;--color-purple: #7B2D5F;--color-brown: #5D4037;--font: "PP Neue Montreal", sans-serif;--fs-base: clamp(14px, 1.5625vw, 1.3rem);--fs-body: clamp(14px, 2.5vw, 48px);--fs-secondary: clamp(14px, 1.667vw, 32px);--fs: var(--fs-base);--pad: clamp(32px, 2.5vw, 64px);--pad-sm: clamp(8px, .625vw, 16px);--pad-bottom: calc(var(--pad) - var(--pad-sm) - (var(--fs-secondary) * 1.2));--diagram-edge: #d8d8d8;--diagram-node: #c0c0c0;--diagram-node-mid: #707070;--diagram-node-active: #000000;--diagram-edge-active: var(--color-accent)}[data-theme=dark]{--color-bg: #151b27;--color-fg: #ffffff;--color-accent: #ed0f0a;--color-green: #4dca34;--color-blue: #8aa8d4;--color-red: #f24a46;--color-yellow: #eddb1f;--color-orange: #e8864a;--color-purple: #d4a0c8;--color-brown: #c4a98f;--diagram-edge: #404043;--diagram-node: #404043;--diagram-node-mid: #BCBCBE;--diagram-node-active: #ffffff;--diagram-edge-active: var(--color-accent)}html{overflow-y:scroll;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-weight:400;font-size:inherit}button{font:inherit;color:inherit}body{font-family:var(--font);font-size:var(--fs-body);font-weight:400;line-height:1.2;color:var(--color-fg);background:var(--color-bg);transition:background .3s ease,color .3s ease}a{color:inherit;text-decoration:none}a:hover{color:var(--color-accent);transition:color .15s}img,video{display:block;max-width:100%;height:auto}.nav{position:sticky;top:0;z-index:100;display:flex;justify-content:space-between;align-items:center;padding:var(--pad) var(--pad) 0;background:var(--color-bg);transition:background .3s ease}.nav a[aria-current=page]{color:var(--color-accent)}.theme-toggle{font-family:var(--font);background:none;border:none;padding:0;display:inline-block;width:1.5em;text-align:center;cursor:pointer;color:var(--color-fg)}[data-theme=light] .theme-toggle:before{content:"☽︎"}[data-theme=dark] .theme-toggle:before{content:"☀︎"}.theme-toggle:hover{color:var(--color-accent);transition:color .15s}.page{display:flex;flex-direction:column;gap:var(--pad);padding:var(--pad)}.page-intro{max-width:66.6667%}@media(max-width:760px){.page-intro{max-width:none}}.filter-bar{display:flex;flex-wrap:wrap;row-gap:.2em;column-gap:var(--pad)}.filter-bar button{font-family:var(--font);text-transform:lowercase;background:none;border:none;padding:0;cursor:pointer;color:var(--color-fg);transition:color .15s}.filter-bar button:hover,.filter-bar button[aria-pressed=true]{color:var(--color-accent)}.filter-trigger,.filter-bar .filter-extra{display:none}.filter-bar .filter-more{order:999}.filter-bar.filter-expanded .filter-extra{display:flex}.grid{display:grid;grid-template-columns:1fr 1fr;grid-auto-rows:8px;column-gap:var(--pad);row-gap:0;align-items:start}.grid-item{display:flex;flex-direction:column;gap:var(--pad-sm);margin-bottom:var(--pad-bottom);min-width:0}.grid-item--full{grid-column:1 / -1}.grid-item a{display:flex;flex-direction:column;gap:var(--pad-sm)}.grid-item .label{color:var(--color-fg);font-size:var(--fs-secondary)}.grid-item:not([data-project=snapshot]) .label:after{content:" +";color:var(--color-red);opacity:0;transition:opacity .15s ease}.grid-item:not([data-project=snapshot]):hover .label:after{opacity:1}@media(hover:none){.grid-item:not([data-project=snapshot]) .label:after{opacity:1}}.grid-item .thumb{width:100%;height:auto}.page>article{display:flex;flex-direction:column;gap:var(--pad)}.project-header{display:flex;flex-direction:column;gap:var(--pad);max-width:40ch}.project-header .description p+p{padding-top:1em}.hero-feed{display:flex;flex-direction:column;gap:var(--pad)}.hero-item{display:flex;flex-direction:column;gap:var(--pad-sm);color:var(--color-fg)}.hero-media{width:100%;display:block}.hero-item iframe{width:100%;height:100%;border:none}.hero-item .label{font-size:var(--fs-secondary)}.project-media{display:flex;flex-direction:column;gap:var(--pad)}.project-media-item{display:flex;flex-direction:column;gap:var(--pad-sm)}.project-media img,.project-media iframe{width:100%;display:block}.project-media-frame{width:100%}.project-media-frame iframe{width:100%;height:100%;aspect-ratio:16 / 9;border:none}.project-media .label{font-size:var(--fs-secondary)}.search-bar{display:flex}.search-bar input{font:inherit;color:var(--color-fg);background:none;border:none;border-bottom:1px solid var(--color-fg);padding:0 0 4px;width:100%;outline:none}.search-bar input::placeholder{color:var(--color-fg);opacity:.3}.thumb-video{width:100%;aspect-ratio:16 / 9}.thumb-video iframe{width:100%;height:100%;border:none}.detail{padding:var(--pad) 0;border-top:1px solid var(--color-fg);position:relative;font-size:var(--fs-secondary)}.detail-content{display:flex;flex-direction:column;gap:var(--pad)}.detail-close{position:absolute;top:var(--pad);right:0;font:inherit;background:none;border:none;padding:0;cursor:pointer;color:var(--color-fg)}.detail-close:hover{color:var(--color-accent)}.detail-media img{width:100%}.detail-media iframe{width:100%;aspect-ratio:16 / 9;border:none}.detail-title{line-height:1.2}.detail-meta{opacity:.5}.detail-project-link,.detail-project-name{font:inherit;color:var(--color-accent);background:none;border:none;padding:0;cursor:pointer;text-align:left}.detail-project-link:hover,.detail-project-name:hover{opacity:.5}.detail-credits{display:flex;flex-wrap:wrap;gap:var(--pad);border-top:1px solid var(--color-fg);padding-top:var(--pad)}.detail-credit-role{opacity:.5}.detail-related{column-count:2;column-gap:var(--pad)}.detail-related-thumb{width:100%;height:auto;display:block;margin-bottom:var(--pad);break-inside:avoid;cursor:pointer}.detail-related-thumb:hover{opacity:.7;transition:opacity .15s}.detail-tags{display:flex;flex-wrap:wrap;gap:var(--pad)}.detail-tag-chip{font:inherit;color:var(--color-fg);background:none;border:none;padding:0;cursor:pointer;text-transform:lowercase}.detail-tag-chip:hover{color:var(--color-accent)}.prose p+p{margin-top:1em}.prose h2{margin-top:var(--pad)}.prose h2:first-child{margin-top:0}.prose h2+p{margin-top:.25em}.essay{display:flex;flex-direction:column;gap:var(--pad);width:50%}@media(max-width:760px){:root{--fs-body: var(--fs-base);--fs-secondary: var(--fs-base)}.essay{width:100%}}.essay-title{font-size:clamp(28px,5vw,96px);line-height:1.05;font-weight:400}.essay-date{opacity:.5}.cv{display:flex;flex-direction:column;gap:var(--pad);font-size:var(--fs-secondary)}.cv-category-title{font-size:clamp(28px,5vw,96px);line-height:1.05}.cv-filters{display:flex;gap:var(--pad);margin-bottom:var(--pad-sm);align-items:baseline;flex-wrap:wrap}.cv-filters input,.cv-filters select{font:inherit;color:var(--color-fg);background:none;border:none;border-bottom:1px solid var(--color-fg);border-radius:0;padding:.2em 0}.cv-filters input{min-width:20ch}.cv-filters input::placeholder{color:var(--color-fg);opacity:.3}.cv-head{margin-top:var(--pad);margin-bottom:var(--pad-sm)}.cv-title{font-size:1em;font-weight:400;margin-bottom:.25em}.cv-sub{font-size:.75em;opacity:.4;margin-bottom:var(--pad)}.cv-filters{display:flex;gap:1.5em;align-items:baseline;flex-wrap:wrap;position:sticky;top:calc(var(--pad) + 1.5em - 2px);z-index:11;background:var(--color-bg);padding:var(--pad-sm) 0}.cv-filters input,.cv-filters select{font:inherit;color:var(--color-fg);background:none;border:none;border-bottom:1px solid var(--color-fg);border-radius:0;padding:.25em 0}.cv-filters input{min-width:12em}.cv-filters input:focus,.cv-filters select:focus{outline:none}.cv-filters input::placeholder{color:var(--color-fg);opacity:.3;font-style:italic}.cv-filters select{cursor:pointer;-webkit-appearance:none;appearance:none}.cv-head,.cv-filters,.cv-table-wrap{font-size:var(--fs-secondary)}.cv-table-wrap{margin-top:0}.cv-table{width:100%;border-collapse:separate;border-spacing:0;line-height:1.3;table-layout:fixed}.cv-col-where,.cv-col-when{width:12.5%}.cv-col-what,.cv-col-how,.cv-col-tags{width:25%}.cv-table thead th{background:var(--color-bg);box-shadow:0 -4px 0 var(--color-bg);position:sticky;top:calc(var(--pad) + 1.5em + var(--pad-sm) * 2 + 2.5rem - 7px);z-index:10;padding:.5em .6em .5em 0;text-align:left;font-weight:400;border-bottom:1px solid var(--color-fg);cursor:pointer;user-select:none;white-space:nowrap}.cv-table thead th:hover{color:var(--color-accent)}.cv-sort-arrow{margin-left:.25em;color:var(--color-accent)}.cv-table td{padding:.5em .6em .5em 0;vertical-align:top;border-bottom:1px solid var(--color-fg);overflow-wrap:anywhere}.cv-nowrap{white-space:nowrap}.cv-section-row td{padding:var(--pad) 0 var(--pad-sm);border-bottom:none;cursor:pointer;user-select:none}.cv-section-row h2{display:inline;font-size:clamp(32px,5.5vw,108px);line-height:1.05;font-weight:400}.cv-toggle-arrow,.cv-section-count{font-size:.6em;opacity:.3;margin-left:.6em;transition:opacity .15s}.cv-section-row:hover .cv-toggle-arrow{opacity:1}.cv-section-hidden{display:none}.cv-tag{display:inline-block;color:var(--color-fg);opacity:.4;margin-right:.4em;white-space:nowrap;transition:opacity .15s}.cv-tag:before{content:"#"}.cv-tag:hover{opacity:1}@media(max-width:760px){.cv-table,.cv-table thead,.cv-table tbody,.cv-table tr,.cv-table td{display:block;width:auto}.cv-table colgroup,.cv-table thead{display:none}.cv-table td{padding:0;border-bottom:none}.cv-nowrap{white-space:normal}.cv-row{border-bottom:1px solid var(--color-fg);padding:var(--pad-sm) 0}.cv-row>td{padding:.15em 0}.cv-row>td:nth-child(5){display:none}.cv-section-row td{padding:var(--pad) 0 var(--pad-sm)}}.writing-card{padding:var(--pad);cursor:pointer;container-type:inline-size}.writing-card-title{font-size:clamp(30px,13cqi,120px);line-height:1.05;overflow-wrap:anywhere;color:var(--color-accent)}.grid-item--writing .detail{padding-left:var(--pad);padding-right:var(--pad)}.profile{display:flex;flex-direction:column;gap:var(--pad)}.profile--spread{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--pad);align-items:start}.profile--spread .profile-text{grid-column:1 / span 8}.profile--spread .profile-media{grid-column:9 / span 4}.profile-text,.profile-media{display:flex;flex-direction:column;gap:var(--pad)}.profile-media figure{display:flex;flex-direction:column;align-items:center;gap:var(--pad-sm)}.profile-media img{width:100%;height:auto;display:block}.profile-media figcaption{opacity:.5;text-align:center}@media(max-width:680px){.grid{grid-template-columns:1fr}.writing-card{padding:0}.detail-related{column-count:1}.profile--spread{grid-template-columns:1fr}.filter-trigger{display:block}.filter-bar:not(.filter-open) button:not(.filter-trigger){display:none}.filter-bar.filter-open{position:fixed;inset:0;z-index:200;flex-direction:column;flex-wrap:nowrap;padding:var(--pad);background:var(--color-bg);text-align:left}.filter-bar.filter-open button{text-align:left}.filter-bar.filter-open .filter-trigger:after{content:" ×"}.filter-bar.filter-open .filter-extra{display:block}.filter-bar.filter-open .filter-more{display:none}}
