@import 'https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:ital,wght@0,400;0,500;1,400&family=Spectral:ital,wght@0,400;0,500;1,400&family=Caveat:wght@500&display=swap';*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}:root{--ink:#111;--paper:#f5b8b8;--pencil:#444;--faded:#888;--rule:rgba(0, 0, 0, 0.1);--card-bg:rgba(255, 255, 255, 0.6);--font-body:'Spectral', Georgia, serif;--font-mono:'IBM Plex Mono', monospace;--font-hand:'Caveat', cursive;--space-xs:0.5rem;--space-sm:1rem;--space-md:1.5rem;--space-lg:2.5rem;--space-xl:4rem;--gutter:clamp(1.5rem, 5vw, 4rem)}@keyframes daylight{0%{background-color:#f5b8b8}33%{background-color:#b8f5b8}66%{background-color:#b8b8f5}100%{background-color:#f5b8b8}}@keyframes grain{0%,100%{transform:translate(0,0)}10%{transform:translate(-1%,-1%)}20%{transform:translate(1%,1%)}30%{transform:translate(-1%,1%)}40%{transform:translate(1%,-1%)}50%{transform:translate(-1%,0%)}60%{transform:translate(1%,0%)}70%{transform:translate(0%,-1%)}80%{transform:translate(0%,1%)}90%{transform:translate(-1%,-1%)}}html{font-size:16px}body{font-family:var(--font-mono);font-size:14px;line-height:1.6;color:var(--ink);background:var(--paper);animation:daylight 180s ease-in-out infinite;min-height:100vh;position:relative}body::before{content:'';position:fixed;top:-50%;left:-50%;width:200%;height:200%;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");opacity:.03;pointer-events:none;z-index:1000;animation:grain .5s steps(10)infinite}main{padding:var(--space-xl)var(--gutter)var(--space-lg);max-width:1400px;position:relative}a{color:inherit;text-decoration:none;background-image:linear-gradient(var(--ink),var(--ink));background-size:100% 1px;background-position:0 100%;background-repeat:no-repeat;transition:background-size .2s ease}a:hover{background-size:100% 2px}::selection{background:rgba(0,0,0,.1)}.hover-image{position:fixed;top:0;left:0;width:100vw;height:100vh;opacity:0;pointer-events:none;transition:opacity .5s ease;z-index:-1;isolation:isolate}.hover-image::before{content:'';position:absolute;inset:0;background-image:var(--hover-img);background-size:cover;background-position:50%;filter:grayscale(1)contrast(1.1);z-index:1}.hover-image::after{content:'';position:absolute;inset:0;background-color:#f5b8b8;animation:daylight 180s ease-in-out infinite;mix-blend-mode:color;z-index:2}.hover-image.visible{opacity:1}body:has(.hover-image.visible){--text-shadow:0 0 30px rgba(255,255,255,1),
    0 0 60px rgba(255,255,255,0.8),
    0 0 90px rgba(255,255,255,0.6)}body:has(.hover-image.visible) .intro,body:has(.hover-image.visible) .section,body:has(.hover-image.visible) footer{text-shadow:var(--text-shadow)}body:has(.hover-image.visible) main,body:has(.hover-image.visible) footer{position:relative;z-index:1}body:has(.hover-image.visible) .section{background:rgba(255,255,255,.9);backdrop-filter:blur(2px)}.intro{font-family:var(--font-body);font-size:clamp(1.3rem,3vw,1.6rem);line-height:1.8;max-width:58ch;margin-bottom:var(--space-xl);position:relative}.intro p{margin-bottom:var(--space-md)}.intro p:last-child{margin-bottom:0}.intro-name{font-weight:500;letter-spacing:.01em}.intro-current{display:block;margin-top:var(--space-md);padding-left:var(--space-md);border-left:2px solid var(--pencil);font-style:italic;color:var(--pencil);font-size:.95em;line-height:1.7}.intro-bio{display:block;margin-top:var(--space-md);font-family:var(--font-mono);font-size:.75rem;color:var(--faded);letter-spacing:.02em}.sections{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:var(--space-md)}.section{background:var(--card-bg);border:1px solid var(--rule);padding:var(--space-md);position:relative;box-shadow:0 1px 2px rgba(0,0,0,4%),0 2px 4px rgba(0,0,0,2%);transition:transform .2s ease,box-shadow .2s ease}.section:hover{transform:translateY(-2px);box-shadow:0 4px 8px rgba(0,0,0,6%),0 8px 16px rgba(0,0,0,3%)}.section::before{content:'';position:absolute;top:0;right:0;width:20px;height:20px;background:linear-gradient(135deg,transparent 50%,rgba(0,0,0,3%) 50%)}.section::after{content:attr(data-index);position:absolute;top:var(--space-sm);right:var(--space-md);font-family:var(--font-hand);font-size:1.5rem;color:var(--faded);opacity:.5}.section-title{font-family:var(--font-mono);font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.15em;color:var(--pencil);margin-bottom:var(--space-sm);padding-bottom:var(--space-xs);border-bottom:1px solid var(--rule)}.item-list{list-style:none;padding-left:0}.item-list li{margin-bottom:var(--space-sm);padding-bottom:var(--space-sm);border-bottom:1px dashed var(--rule)}.item-list li:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.item-title{font-family:var(--font-body);font-size:1.05rem;font-weight:400;display:block;margin-bottom:.25rem;background:0 0}.item-title:hover{background-image:linear-gradient(var(--ink),var(--ink));background-size:100% 1px;background-position:0 100%}.item-desc{display:block;font-family:var(--font-mono);font-size:11px;color:var(--pencil);line-height:1.5}.item-date{font-size:10px;color:var(--faded)}.section-more{margin-top:var(--space-sm);padding-top:var(--space-sm);border-top:1px solid var(--rule);font-size:11px}.section-more a{color:var(--pencil);background:0 0;transition:color .2s ease}.section-more a:hover{color:var(--ink)}.page-header{margin-bottom:var(--space-lg);padding-bottom:var(--space-md);border-bottom:1px solid var(--rule)}.page-title{font-family:var(--font-body);font-size:clamp(2rem,5vw,3.5rem);font-weight:400;letter-spacing:-.02em;line-height:1.15;margin:0 0 var(--space-xs)}.page-meta{font-family:var(--font-mono);font-size:11px;color:var(--pencil);text-transform:uppercase;letter-spacing:.05em}.content-wrapper{display:grid;grid-template-columns:1fr;gap:var(--space-lg)}@media(min-width:900px){.content-wrapper{grid-template-columns:minmax(0,60ch)minmax(200px,260px)}}.content{font-family:var(--font-body);font-size:1.1rem;line-height:1.8}.content p{margin-bottom:var(--space-md)}.content p:last-child{margin-bottom:0}.content blockquote{margin:var(--space-lg)0;padding:var(--space-md);background:var(--card-bg);border-left:3px solid var(--pencil);font-style:italic}.content img{max-width:100%;height:auto;margin:var(--space-lg)0;box-shadow:0 4px 20px rgba(0,0,0,.1)}.content-sidebar{font-family:var(--font-mono);font-size:11px}.credits,.festivals,.related{margin-bottom:var(--space-md);padding:var(--space-sm);background:var(--card-bg);border:1px solid var(--rule)}.credits h2,.festivals h2,.related h2{font-size:9px;font-weight:500;text-transform:uppercase;letter-spacing:.15em;color:var(--pencil);margin:0 0 var(--space-xs);padding-bottom:var(--space-xs);border-bottom:1px solid var(--rule)}.credits ul,.festivals ul,.related ul{list-style:none;padding-left:0}.credits li,.festivals li,.related li{margin-bottom:.2rem;color:var(--pencil)}.source{display:inline-block;margin-bottom:var(--space-md);padding:var(--space-xs)var(--space-sm);font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.1em;background:var(--card-bg);border:1px solid var(--rule);color:var(--pencil)}.source a{background:0 0}.list-header{margin-bottom:var(--space-lg);padding-bottom:var(--space-md);border-bottom:1px solid var(--rule)}.list-title{font-family:var(--font-body);font-size:clamp(2.5rem,8vw,5rem);font-weight:400;letter-spacing:-.03em;line-height:1;margin:0 0 var(--space-xs)}.list-desc{font-family:var(--font-mono);font-size:12px;color:var(--pencil);max-width:50ch}.list-desc p{margin:0}.list-page .item-list{max-width:700px}.list-page .item-list li{display:grid;grid-template-columns:4rem 1fr;gap:var(--space-sm);padding:var(--space-sm)0;border-bottom:1px solid var(--rule);margin:0;align-items:baseline}.list-page .item-list li:first-child{border-top:1px solid var(--rule)}.list-page .item-date{font-family:var(--font-mono);font-size:11px;color:var(--faded)}.list-page .item-title{font-size:1rem}.list-page .item-desc{grid-column:2;margin-top:.25rem}footer{margin-top:var(--space-xl);padding:var(--space-lg)var(--gutter);font-family:var(--font-mono);font-size:12px;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:var(--space-md);border-top:1px solid var(--rule)}footer .question{font-family:var(--font-body);font-size:clamp(1rem,2vw,1.15rem);font-style:italic;max-width:40ch;color:var(--pencil);line-height:1.5}.footer-meta{text-align:right;font-size:11px}footer .contact{margin-bottom:.25rem}footer .contact a{background:0 0}footer .contact a:hover{background-image:linear-gradient(var(--ink),var(--ink));background-size:100% 1px}footer .links{color:var(--faded)}footer .links a{background:0 0;color:var(--faded);transition:color .2s ease}footer .links a:hover{color:var(--ink)}.back-link{margin-top:var(--space-md);font-size:11px}.back-link a{color:var(--pencil);background:0 0}.back-link a:hover{color:var(--ink)}.back-link a::before{content:"← "}@media(max-width:600px){.sections{grid-template-columns:1fr}.list-page .item-list li{grid-template-columns:1fr;gap:.2rem}.list-page .item-date{order:-1;font-size:10px}.list-page .item-desc{grid-column:1}footer{flex-direction:column;align-items:flex-start}.footer-meta{text-align:left}}.landing{max-width:75ch;padding-top:15vh}.landing-name{font-family:var(--font-body);font-size:clamp(2.5rem,6vw,4rem);font-weight:400;letter-spacing:-.02em;line-height:1.1;margin-bottom:var(--space-lg)}.landing-bio{font-family:var(--font-body);font-size:clamp(1rem,2vw,1.15rem);line-height:1.8;margin-bottom:var(--space-lg)}.landing-bio p{margin-bottom:var(--space-md)}.landing-status{font-family:var(--font-mono);font-size:12px;color:var(--faded);letter-spacing:.02em;margin-bottom:var(--space-md)}.landing-contact{font-family:var(--font-mono);font-size:12px}@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.intro{animation:fadeUp .6s ease-out both}.section{animation:fadeUp .5s ease-out both}.section:nth-child(1){animation-delay:.1s}.section:nth-child(2){animation-delay:.15s}.section:nth-child(3){animation-delay:.2s}.section:nth-child(4){animation-delay:.25s}.section:nth-child(5){animation-delay:.3s}.section:nth-child(6){animation-delay:.35s}footer{animation:fadeUp .5s ease-out .4s both}