.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}:root{--bg:#f6f7f9;--ink:#0f1216;--muted:#5a6270;--faint:#e3e6eb;--hairline:#e7eaee;--accent:#0e9384;--dot:#0e9384;--rail-bg:#072f2a;--rail-ink:#d5e8e4;--rail-muted:#8aafa9;--rail-accent:#2dd4bf;--serif:"EB Garamond Variable", "Iowan Old Style", Garamond, Georgia, serif;--mono:"Geist Mono Variable", "SF Mono", ui-monospace, "JetBrains Mono", "Menlo", "Consolas", monospace;--maxw:1080px;--pad:clamp(1.25rem, 5vw, 3.5rem);--rail-w:232px}@media (prefers-color-scheme:dark){:root{--bg:#0c0e12;--ink:#e9ecf1;--muted:#8a93a3;--faint:#20242c;--hairline:#1c2027;--accent:#2dd4bf;--dot:#2dd4bf}}:root[data-theme=dark]{color-scheme:dark;--bg:#0c0e12;--ink:#e9ecf1;--muted:#8a93a3;--faint:#20242c;--hairline:#1c2027;--accent:#2dd4bf;--dot:#2dd4bf}:root[data-theme=light]{color-scheme:light;--bg:#f6f7f9;--ink:#0f1216;--muted:#5a6270;--faint:#e3e6eb;--hairline:#e7eaee;--accent:#0e9384;--dot:#0e9384}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);font-family:var(--serif);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;line-height:1.5}.wrap{min-height:100dvh;max-width:var(--maxw);padding:0 var(--pad);flex-direction:column;margin:0 auto;display:flex}.wrap:before{content:"";flex:1;order:1}.wrap>footer{order:2}.mono{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;font-size:.72rem}header{justify-content:flex-end;align-items:center;padding-top:clamp(1.5rem,4vw,2.5rem);padding-bottom:1rem;display:flex}.nav-cluster{align-items:center;gap:clamp(1rem,3vw,2.25rem);display:flex}.brand{color:var(--ink);margin:-6px;padding:6px;text-decoration:none;transition:color .18s;display:inline-block}.brand:hover,.brand:focus-visible{color:var(--accent)}nav ul{gap:clamp(1rem,3vw,2.25rem);margin:0;padding:0;list-style:none;display:flex}nav a{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:.72rem;text-decoration:none;transition:color .18s;display:inline-block;position:relative}nav a:hover,nav a:focus-visible{color:var(--ink)}nav a:after,.links a:after{content:"";background:var(--accent);transform-origin:0;height:1px;transition:transform .28s cubic-bezier(.2,.7,.2,1);position:absolute;bottom:-3px;left:0;right:0;transform:scaleX(0)}nav a:hover:after,nav a:focus-visible:after,.links a:hover:after,.links a:focus-visible:after{transform:scaleX(1)}.theme-toggle{color:var(--muted);cursor:pointer;background:0 0;border:0;place-items:center;margin:0;padding:4px;transition:color .18s;display:inline-grid}.theme-toggle:hover,.theme-toggle:focus-visible{color:var(--ink)}.theme-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}.theme-toggle svg{grid-area:1/1;transition:opacity .25s,transform .35s cubic-bezier(.2,.7,.2,1)}.theme-toggle .icon-sun{opacity:0;transform:rotate(-90deg)scale(.6)}.theme-toggle .icon-moon,:root[data-theme=dark] .theme-toggle .icon-sun{opacity:1;transform:none}:root[data-theme=dark] .theme-toggle .icon-moon{opacity:0;transform:rotate(90deg)scale(.6)}.rail{width:var(--rail-w);background:var(--rail-bg);color:var(--rail-ink);border-right:1px solid color-mix(in srgb, var(--rail-bg) 78%, #000);z-index:10;flex-direction:column;justify-content:space-between;gap:2rem;padding:clamp(1.75rem,4vw,2.75rem) 1.75rem;display:flex;position:fixed;top:0;bottom:0;left:0}.rail .brand{color:var(--rail-ink)}.rail .brand:hover,.rail .brand:focus-visible{color:#fff}.rail nav a{color:var(--rail-muted)}.rail nav a:hover,.rail nav a:focus-visible{color:#fff}.rail nav a:after{background:var(--rail-accent)}.rail a:focus-visible{outline-color:var(--rail-ink)}.rail-top{flex-direction:column;gap:1.5rem;display:flex}.rail-id{white-space:nowrap;flex-direction:column;align-items:flex-start;gap:.35rem;display:flex}.rail-id .w{transition:opacity .3s ease calc(.16s + var(--i) * 70ms), transform .5s cubic-bezier(.2, .7, .2, 1) calc(.16s + var(--i) * 70ms);display:inline-block}.rail nav{transition:opacity .24s .16s,transform .28s cubic-bezier(.2,.7,.2,1) .16s,visibility}.rail-name{letter-spacing:-.015em;font-size:1.28rem;font-weight:560;line-height:1.1}.rail-role{color:var(--rail-muted)}.rail-bottom{flex-direction:column;align-items:flex-start;gap:1.5rem;display:flex}.rail nav ul{flex-direction:column;gap:.9rem}.rail nav a[aria-current=page]{color:#fff}.rail nav a[aria-current=page]:before{content:"";background:#fff;width:.5rem;height:1px;position:absolute;top:50%;left:-.9rem}.rail-collapse{border:1px solid var(--hairline);background:var(--bg);width:28px;height:28px;color:var(--muted);cursor:pointer;border-radius:50%;place-items:center;padding:0;transition:color .18s,border-color .18s;display:grid;position:absolute;bottom:2.25rem;right:-14px;box-shadow:0 1px 3px #00000017}.rail-collapse:hover,.rail-collapse:focus-visible{color:var(--accent);border-color:var(--accent)}.rail-collapse:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.rail-collapse svg{transition:transform .3s cubic-bezier(.2,.7,.2,1)}.rail,.rail~.wrap{transition:width .3s cubic-bezier(.2,.7,.2,1),max-width .3s cubic-bezier(.2,.7,.2,1),padding .3s cubic-bezier(.2,.7,.2,1)}:root[data-rail=collapsed]{--rail-w:62px}:root[data-rail=collapsed] .rail{padding-left:1.15rem;padding-right:1.15rem}:root[data-rail=collapsed] .rail-id{visibility:hidden;transition:visibility 0s linear .14s}:root[data-rail=collapsed] .rail-id .w{opacity:0;transition:opacity .12s,transform .18s;transform:translateY(.5em)}:root[data-rail=collapsed] .rail nav{opacity:0;visibility:hidden;transition:opacity .14s,transform .2s,visibility 0s linear .14s;transform:translate(-10px)}:root[data-rail=collapsed] .rail-collapse svg{transform:rotate(180deg)}.rail-vertical{writing-mode:vertical-rl;white-space:nowrap;letter-spacing:.22em;text-transform:uppercase;color:var(--rail-muted);visibility:hidden;font-size:.66rem;transition:visibility 0s linear .16s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(180deg)}.rail-vertical .w{opacity:0;transition:opacity .14s,transform .2s;display:inline-block;transform:translateY(-.8em)}:root[data-rail=collapsed] .rail-vertical{visibility:visible;transition:visibility}:root[data-rail=collapsed] .rail-vertical .w{opacity:1;transition:opacity .3s ease calc(.2s + var(--i) * 80ms), transform .5s cubic-bezier(.2, .7, .2, 1) calc(.2s + var(--i) * 80ms);transform:none}.rail~.wrap{max-width:calc(var(--maxw) + var(--rail-w));padding-left:calc(var(--rail-w) + var(--pad))}@media (width<=900px){.rail{width:auto;padding:1rem var(--pad);border-right:0;border-bottom:1px solid var(--hairline);flex-direction:row;align-items:center;gap:1rem;position:static}.rail-top{flex-direction:row;align-items:center;gap:.85rem}.rail-role{display:none}.rail-bottom{flex-direction:row;align-items:center;gap:clamp(1rem,3vw,2.25rem)}.rail nav ul{flex-direction:row;gap:clamp(.9rem,3vw,2.25rem)}.rail nav a[aria-current=page]:before,.rail-collapse,.rail-vertical{display:none}:root[data-rail=collapsed] .rail{padding:1rem var(--pad)}:root[data-rail=collapsed] .rail-id,:root[data-rail=collapsed] .rail-id .w,:root[data-rail=collapsed] .rail nav{opacity:1;visibility:visible;transform:none}.rail~.wrap{max-width:var(--maxw);padding-left:var(--pad)}}@media (width<=620px){.rail{flex-wrap:wrap;row-gap:.9rem}.rail-bottom{width:100%}.rail nav ul{flex-wrap:wrap;gap:.75rem 1.35rem}}.hero{padding-top:clamp(3.5rem,14vh,9rem);padding-bottom:clamp(3.5rem,12vh,8rem)}.eyebrow{color:var(--muted);align-items:center;gap:.6rem;margin-bottom:clamp(1.25rem,3vw,2rem);display:flex}.dot{background:var(--dot);width:7px;height:7px;box-shadow:0 0 0 0 color-mix(in srgb, var(--dot) 55%, transparent);border-radius:50%;animation:2.4s ease-out infinite pulse}@keyframes pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--dot) 55%, transparent)}70%{box-shadow:0 0 0 7px color-mix(in srgb, var(--dot) 0%, transparent)}to{box-shadow:0 0 0 0 color-mix(in srgb, var(--dot) 0%, transparent)}}h1{letter-spacing:-.03em;text-wrap:balance;margin:0;font-size:clamp(3rem,10.5vw,7.25rem);font-weight:640;line-height:.94}.lede{max-width:34ch;color:var(--ink);margin:clamp(1.75rem,4vw,2.5rem) 0 0;font-size:clamp(1.1rem,2.1vw,1.5rem);font-weight:400;line-height:1.4}.lede--single{max-width:none}.lede strong{font-weight:640}.meta{color:var(--muted);flex-wrap:wrap;gap:.5rem 1.4rem;margin-top:clamp(1.75rem,4vw,2.5rem);display:flex}.meta span{gap:.5ch;display:inline-flex}.meta b{color:var(--ink);font-weight:500}.clock{font-variant-numeric:tabular-nums}.strip{color:var(--muted);flex-wrap:wrap;align-items:center;gap:.5rem 1.1rem;margin-top:1.1rem;display:flex}.strip b{color:var(--ink);font-variant-numeric:tabular-nums;font-weight:500}.strip>span{gap:.5ch;display:inline-flex}.strip-cells{flex:0 397px;gap:3px;min-width:0;display:flex}.strip-cells i{aspect-ratio:1;background:var(--faint);opacity:0;min-width:0;animation:rise .34s cubic-bezier(.2, .7, .2, 1) calc(.45s + var(--i) * 16ms) forwards;border-radius:1px;flex:1 1 0;position:relative;transform:scale(.4)}.strip-cells i:after{content:"";position:absolute;inset:-6px -1.5px}.strip-cells i:hover{outline:1px solid var(--ink);outline-offset:1.5px}.strip-tail{opacity:0;animation:.42s cubic-bezier(.2,.7,.2,1) 1.45s forwards rise;transform:translateY(8px)}.strip-cells i[data-level="1"]{background:color-mix(in srgb, var(--accent) 28%, var(--faint))}.strip-cells i[data-level="2"]{background:color-mix(in srgb, var(--accent) 52%, var(--faint))}.strip-cells i[data-level="3"]{background:color-mix(in srgb, var(--accent) 76%, var(--faint))}.strip-cells i[data-level="4"]{background:var(--accent)}#about{margin-top:clamp(5rem,13vh,8.5rem)}.about-intro{grid-template-columns:minmax(300px,440px) 1fr;align-items:end;gap:clamp(2rem,5vw,4.5rem);padding-top:clamp(2.5rem,6vw,4rem);display:grid}.lead-statement{letter-spacing:-.02em;text-wrap:balance;margin:0 0 1.2rem;font-size:clamp(1.5rem,3.4vw,2.4rem);font-weight:500;line-height:1.18}.about-intro-text p:not(.lead-statement){color:var(--muted);margin:0 0 1.1rem;font-size:1.2rem;line-height:1.6}.about-intro-text a{color:var(--ink);border-bottom:1px solid var(--accent);padding-bottom:1px;text-decoration:none;transition:color .18s}.about-intro-text a:hover,.about-intro-text a:focus-visible{color:var(--accent)}.story-rows{flex-direction:column;gap:clamp(2.5rem,6vw,4.5rem);margin-top:clamp(2.75rem,6vw,4.5rem);display:flex}.story-row{grid-template-columns:1fr 1fr;align-items:center;gap:clamp(1.5rem,4vw,3.5rem);display:grid}.story-row:nth-child(2n) .story-text{order:2}.story-row:nth-child(2n) .story-media{order:1}.story-text{max-width:44ch}.kicker{color:var(--muted);margin-bottom:.85rem;display:block}.story-text p{color:var(--ink);margin:0;font-size:1.22rem;line-height:1.55}.story-media{aspect-ratio:5/4;border-radius:12px;margin:0;transition:transform .4s cubic-bezier(.2,.8,.2,1)}.story-media:hover{transform:scale(1.015)}.story-photo{aspect-ratio:auto;border:1px solid var(--hairline);overflow:hidden}.story-photo img{width:100%;height:auto;display:block}.story-photo-tall{max-width:20rem;margin-inline:auto}@media (width<=680px){.story-row{grid-template-columns:1fr;gap:1.25rem}.story-row .story-media{order:0}.story-row .story-text{order:1;max-width:none}}.hot-take{border-left:2px solid var(--accent);margin-top:clamp(2.75rem,6vw,4.5rem);padding-left:clamp(1rem,3vw,1.75rem)}.hot-take p{letter-spacing:-.015em;white-space:nowrap;margin:0;font-size:clamp(1rem,1.7vw,1.45rem);font-weight:500;line-height:1.28}@media (width<=680px){.hot-take p{white-space:normal;text-wrap:balance}}.shelf-section{margin-top:clamp(2.5rem,6vw,4.5rem)}.shelf-section:first-of-type{margin-top:0}.shelf-head{border-bottom:1px solid var(--hairline);justify-content:space-between;align-items:baseline;padding-bottom:.85rem;display:flex}.shelf-head .kicker{font-weight:inherit;margin:0}.shelf-count{letter-spacing:.04em;color:var(--muted);font-size:.72rem}.shelf-body{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:start;gap:clamp(1.5rem,4vw,3.5rem);padding-top:clamp(1.5rem,3vw,2.25rem);display:grid}.shelf-index{contain:size;flex-direction:column;align-self:stretch;display:flex}.shelf-tabs{border-bottom:1px solid var(--hairline);flex-wrap:wrap;gap:.4rem 1.4rem;padding:0 .6rem .7rem;display:flex}.shelf-tabs button{font:inherit;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);cursor:pointer;background:0 0;border:0;padding:.2rem 0;font-size:.64rem;transition:color .18s}.shelf-tabs button:hover{color:var(--ink)}.shelf-tabs button[aria-pressed=true]{color:var(--ink);text-decoration:underline 1px var(--accent);text-underline-offset:.55em}.shelf-tabs button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.shelf-list{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--faint) transparent;flex:1;min-height:0;margin:0;padding:0 .4rem 0 0;list-style:none;overflow-y:auto}.shelf-list[data-more=true]{mask:linear-gradient(#000 calc(100% - 3rem),#0000)}.shelf-list li{border-bottom:1px solid var(--hairline)}.shelf-row{width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:2.25rem minmax(0,1fr) auto}.shelf-list .shelf-row{row-gap:.15rem;padding-block:.6rem}.shelf-list .shelf-row .title{font-size:clamp(.95rem,1.3vw,1.05rem);line-height:1.25}.shelf-list .shelf-row :is(.idx,.year){font-size:.64rem}.shelf-row .by{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);grid-area:2/2;font-size:.6rem}.shelf-row .year{grid-area:1/3}.shelf-list .shelf-row .arrow{font-size:.9rem}.shelf-list .shelf-row:hover,.shelf-list .shelf-row:focus-visible,:is(.shelf-body:hover,.shelf-body:focus-within):not(:has(.shelf-row:is(:hover,:focus-visible):not([aria-pressed=true]))) .shelf-row[aria-pressed=true]{padding-left:1.6rem}:is(.shelf-body:hover,.shelf-body:focus-within):not(:has(.shelf-row:is(:hover,:focus-visible):not([aria-pressed=true]))) .shelf-row[aria-pressed=true] .arrow{opacity:1;transform:translateY(-50%)}.shelf-row[aria-pressed=true] .title{color:var(--accent)}.shelf-row:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.deck{--deck-led:color-mix(in srgb, var(--ink) 16%, var(--bg));--deck-ease:cubic-bezier(.45, 0, .25, 1);margin:0}.deck-stage{aspect-ratio:16/10;width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;padding:0;display:block;position:relative;container-type:inline-size}.deck-stage>*{position:absolute}.deck-stage:focus-visible{outline:2px solid var(--accent);outline-offset:6px;border-radius:4px}.deck-scene{pointer-events:none;width:100%;height:100%;inset:0;overflow:visible}.deck-led{fill:var(--deck-led);transition:fill .4s}.deck[data-phase=playing] .deck-led{filter:drop-shadow(0 0 .8px var(--deck-led))}.deck-caption{justify-content:space-between;align-items:center;gap:1rem;min-height:1.75rem;margin-top:.9rem;display:flex}.deck-status,.deck-time,.book-pager{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:.68rem}.deck[data-phase=playing] .deck-status,.deck[data-phase=open] .deck-status{color:var(--accent)}.deck-time{font-variant-numeric:tabular-nums}.book{width:36cqw;height:51cqw;transition:translate 1.1s var(--deck-ease);top:5.5cqw;left:32cqw}.deck--book[data-phase=open] .book{translate:18cqw}.book-page{color:#2a2621;flex-direction:column;justify-content:center;padding:4.4cqw 4.2cqw 6cqw;display:flex;position:absolute;inset:0}.book-block,.book-leaf-front{background:linear-gradient(90deg,#00000021,#0000 9%),#f3eee3;border-radius:0 .5cqw .5cqw 0}.book-left,.book-leaf-back{background:linear-gradient(270deg,#00000021,#0000 9%),#f3eee3;border-radius:.5cqw 0 0 .5cqw}.book-block{z-index:0;box-shadow:.3cqw .3cqw #e4ddcd,.6cqw .6cqw #d8d0be,0 1.8cqw 3.2cqw -1cqw #0000004d}.book-page-text{text-wrap:pretty;font-size:max(2.15cqw,10.5px);line-height:1.45}.book-page-foot{letter-spacing:.14em;text-transform:uppercase;opacity:.55;justify-content:flex-end;font-size:1cqw;display:flex;position:absolute;bottom:3.2cqw;left:4.2cqw;right:4.2cqw}.book-left .book-page-foot,.book-leaf-back .book-page-foot{flex-direction:row-reverse}.book-cover{z-index:1;transform-origin:0;transform-style:preserve-3d;transition:transform 1.1s var(--deck-ease);position:absolute;inset:-.4cqw -.5cqw -.4cqw 0;transform:perspective(240cqw)rotateY(0)}.deck--book[data-phase=idle] .deck-stage:hover .book-cover{transform:perspective(240cqw)rotateY(-14deg)}.deck--book[data-phase=open] .book-cover{transform:perspective(240cqw)rotateY(-180deg)}.book-cover-front,.book-cover-inside{text-align:center;backface-visibility:hidden;flex-direction:column;align-items:center;display:flex;position:absolute;inset:0}.book-cover-front{background:linear-gradient(90deg, #00000047 0 .25cqw, #ffffff0f .25cqw 2cqw, #0003 2cqw 2.2cqw, #0000 2.2cqw), linear-gradient(135deg, #ffffff12, #0000 40% 70%, #0003), repeating-linear-gradient(45deg, #ffffff05 0 .2cqw, #0000 .2cqw .4cqw), var(--base);color:var(--ink-on);border-radius:0 .7cqw .7cqw 0;gap:1.6cqw;padding:11cqw 4cqw 0 5.5cqw;box-shadow:0 .3cqw .6cqw #00000024,0 1.8cqw 3.2cqw -1cqw #0000004d}.book-cover-front:before{content:"";border:.15cqw solid color-mix(in srgb, var(--ink-on) 40%, transparent);position:absolute;inset:2.2cqw 1.8cqw 2.2cqw 3.6cqw}.book-cover-title{letter-spacing:-.01em;text-wrap:balance;font-size:4cqw;line-height:1}.book-cover-by{letter-spacing:.16em;text-transform:uppercase;opacity:.75;font-size:1.1cqw}.book-cover-inside{background:linear-gradient(270deg,#00000021,#0000 9%),#f3eee3;border-radius:.7cqw 0 0 .7cqw;transform:rotateY(180deg)}.book-left{z-index:2;visibility:hidden;opacity:0;width:100%;transition:opacity .2s,visibility 0s linear .2s;inset:0 auto 0 -100%}.book-left[data-shown=true]{visibility:visible;opacity:1;transition:none}.book-leaf{z-index:3;transform-origin:0;transform-style:preserve-3d;visibility:hidden;position:absolute;inset:0}.book-leaf-front,.book-leaf-back{backface-visibility:hidden}.book-leaf-back{transform:rotateY(180deg)}.book-pager{font-variant-numeric:tabular-nums;align-items:center;gap:.65rem;display:inline-flex}.deck--book:not([data-phase=open]) .book-pager{visibility:hidden}.book-pager button{border:1px solid var(--hairline);width:1.75rem;height:1.75rem;color:var(--ink);font:inherit;cursor:pointer;background:0 0;border-radius:50%;place-items:center;padding:0;transition:color .18s,border-color .18s;display:grid}.book-pager button:hover:not(:disabled),.book-pager button:focus-visible{color:var(--accent);border-color:var(--accent)}.book-pager button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.book-pager button:disabled{opacity:.35;cursor:default}.book-announce{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.deck--record{--tt-body:#dc5a2e;--tt-edge:#b9451f;--tt-rim:#cdd2d8;--tt-mat:#25262a;--tt-arm:#f3efe7;--tt-print:#fce6d9;--deck-led:#9e3e1c}.deck--record[data-phase=playing]{--deck-led:#fff4e8}.tt-body{fill:var(--tt-body);stroke:var(--tt-edge);stroke-width:.25px}.tt-rim{fill:var(--tt-rim)}.tt-strobe{fill:none;stroke:#8e959e;stroke-width:.55px;stroke-dasharray:.3 .62}.tt-mat{fill:var(--tt-mat)}.tt-base{fill:var(--tt-edge)}.tt-print{fill:var(--tt-print);font-family:var(--mono);letter-spacing:.08em;font-size:1.7px}.record{aspect-ratio:1;border-radius:50%;width:34cqw;transition:translate .45s cubic-bezier(.2,.8,.2,1);top:14cqw;left:51cqw;box-shadow:0 .4cqw 1.2cqw #0000004d}.deck--record[data-phase=idle] .record{translate:-45.5cqw}.deck--record[data-phase=idle] .deck-stage:hover .record{translate:-35.5cqw}.record-spin{background:radial-gradient(circle closest-side,#0000 96.5%,#2a2a2a 97.5%,#0f0f0f 99%,#0000 100%),repeating-radial-gradient(circle closest-side,#121212 0 .9%,#1c1c1c 1.1% 1.35%),#111;border-radius:50%;position:absolute;inset:0}.record-label{background:radial-gradient(circle closest-side, var(--tt-rim) 0 5%, #0000 5.5%), var(--tone);color:#1d1a16;text-align:center;border-radius:50%;flex-direction:column;align-items:center;padding-top:22%;display:flex;position:absolute;inset:32%}.record-label-title{font-size:1.35cqw;font-weight:600;line-height:1}.record-label-by{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;opacity:.75;font-size:.8cqw;position:absolute;bottom:26%}.record-sheen{pointer-events:none;background:conic-gradient(from 35deg, #0000 0 6%, #ffffff21 11%, #0000 17% 50%, #ffffff1a 61%, #0000 67%);border-radius:50%;position:absolute;inset:0;mask:radial-gradient(circle closest-side,#0000 35%,#000 36% 96%,#0000 97%)}.sleeve{aspect-ratio:1;background:linear-gradient(135deg, #ffffff14, #0000 40% 70%, #0000002e), var(--base);width:37cqw;color:var(--ink-on);border-radius:.5cqw;transition:translate .45s cubic-bezier(.2,.8,.2,1);top:12.5cqw;left:4cqw;overflow:hidden;box-shadow:inset -.35cqw 0 #00000040,0 .3cqw .6cqw #00000024,0 1.6cqw 3cqw -1cqw #0000004d}.deck--record[data-phase=idle] .deck-stage:hover .sleeve{translate:-.8cqw}.sleeve-arc{aspect-ratio:1;border:.25cqw solid color-mix(in srgb, var(--ink-on) 35%, transparent);width:36cqw;box-shadow:0 0 0 3cqw color-mix(in srgb, var(--ink-on) 5%, transparent), 0 0 0 6cqw color-mix(in srgb, var(--ink-on) 3%, transparent);border-radius:50%;position:absolute;top:-6cqw;right:-14cqw}.sleeve-by,.sleeve-detail{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;font-size:1.05cqw;position:absolute;left:2.6cqw}.sleeve-by{top:2.6cqw}.sleeve-detail{opacity:.6;bottom:2.6cqw}.sleeve-title{letter-spacing:-.02em;text-wrap:balance;font-size:4.6cqw;line-height:.95;position:absolute;bottom:5.4cqw;left:2.6cqw;right:2.6cqw}.tonearm{transform-box:view-box;transform-origin:90px 11px;transition:rotate .9s var(--deck-ease);rotate:0deg}.deck[data-phase=playing] .tonearm{rotate:15deg}.deck[data-tracking] .tonearm{transition:rotate var(--clip,240s) linear;rotate:19deg}.tonearm-tube{fill:none;stroke:var(--tt-arm);stroke-width:.75px;stroke-linecap:round;stroke-linejoin:round}.tonearm-weight,.tonearm-head{fill:var(--tt-arm)}.tonearm-pivot{fill:var(--tt-edge);stroke:var(--tt-arm);stroke-width:.5px}.deck-arm-layer{filter:drop-shadow(.3px .5px .4px #00000040)}.deck--game{--tvg-body:#2b2d31;--tvg-top:#36393e;--tvg-edge:#1c1e21;--tv-body:#dcd5c8;--tv-edge:#bdb5a6}.tv-cable{fill:none;stroke:var(--tvg-body);stroke-width:.55px;stroke-linecap:round}.tv-body{fill:var(--tv-body);stroke:var(--tv-edge);stroke-width:.25px}.tv-bezel{fill:#2a2b2e}.tv-knob,.tv-foot{fill:var(--tv-edge)}.tv-grille{stroke:var(--tv-edge);stroke-width:.45px;stroke-linecap:round}.tvg-top{fill:var(--tvg-top);stroke:#45484e;stroke-width:.2px}.tvg-slot{fill:#0e0f11}.tvg-face{fill:var(--tvg-body);stroke:var(--tvg-edge);stroke-width:.25px}.tvg-stripe{stroke:#c8372d;stroke-width:.45px}.tvg-groove,.tvg-port{fill:#17181b}.tvg-power{fill:#9a9da3;transition:translate .35s var(--deck-ease)}.deck--game[data-phase=playing] .tvg-power{translate:3.6px}.tvg-print{fill:#7e828a;font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;font-size:1.05px}.tvg-brand{text-anchor:middle;font-size:1.15px}.tvg-led{fill:#4a1c1a;transition:fill .3s}.deck--game[data-phase=playing] .tvg-led{fill:#ff4d3f;filter:drop-shadow(0 0 .8px #ff4d3f)}.tv-screen{background:radial-gradient(at 50% 45%,#1a1f1d,#07090a 75%);border-radius:1.6cqw/2cqw;width:18.5cqw;height:24.9cqw;transition:box-shadow .4s;top:13.8cqw;left:72.3cqw;overflow:hidden;box-shadow:inset 0 0 1.4cqw #000c}.tv-screen:after{content:"";pointer-events:none;background:repeating-linear-gradient(0deg,#00000047 0 .12cqw,#0000 .12cqw .36cqw),radial-gradient(at 32% 22%,#ffffff17,#0000 45%);position:absolute;inset:0}.deck--game[data-phase=playing] .tv-screen{box-shadow:inset 0 0 1.4cqw #000c, 0 0 2.4cqw color-mix(in srgb, var(--tone) 22%, transparent)}.tv-content{font-family:var(--mono);text-align:center;text-transform:uppercase;color:var(--ink-on);opacity:0;flex-direction:column;justify-content:center;align-items:center;gap:1.3cqw;padding:1.6cqw;display:flex;position:absolute;inset:0}.deck--game[data-phase=playing] .tv-content{animation:.7s ease-out both crt-on}.deck--game[data-phase=stopping] .tv-content{animation:.45s ease-in both crt-off}.tv-title{letter-spacing:.06em;text-wrap:balance;color:var(--tone);text-shadow:0 0 .6cqw color-mix(in srgb, var(--tone) 60%, transparent);font-size:1.9cqw;line-height:1.15}.tv-press{letter-spacing:.2em;font-size:.95cqw;animation:1.1s step-end infinite blink}.tv-maker{letter-spacing:.12em;opacity:.6;font-size:.7cqw}@keyframes crt-on{0%{opacity:1;filter:brightness(4);transform:scale(.6,.004)}35%{opacity:1;filter:brightness(3);transform:scaleY(.004)}to{opacity:1;filter:none;transform:none}}@keyframes crt-off{0%{opacity:1;transform:none}55%{opacity:1;filter:brightness(3);transform:scaleY(.004)}to{opacity:0;transform:scale(0,.004)}}@keyframes blink{50%{opacity:0}}.cartridge{background:linear-gradient(135deg,#ffffff1f,#0000 40% 75%,#00000026),#8f8b83;border-radius:.9cqw .9cqw .5cqw .5cqw;width:19cqw;height:27cqw;transition:translate .35s cubic-bezier(.2,.8,.2,1);top:27cqw;left:37.5cqw;rotate:90deg;box-shadow:inset 0 0 0 .2cqw #00000026,0 .3cqw .6cqw #00000024,0 1.6cqw 3cqw -1cqw #0000004d}.deck--game[data-phase=idle] .cartridge{translate:-32.5cqw -14cqw;rotate:0deg}.deck--game[data-phase=idle] .deck-stage:hover .cartridge{translate:-32.5cqw -15.1cqw}.cartridge:before{content:"";background:repeating-linear-gradient(#00000038 0 .22cqw,#ffffff14 .22cqw .44cqw,#0000 .44cqw .9cqw);height:3.6cqw;position:absolute;top:1.2cqw;left:2cqw;right:2cqw}.cartridge-label{background:linear-gradient(135deg, #ffffff1a, #0000 45%), var(--base);color:var(--ink-on);border-radius:.5cqw;position:absolute;inset:6cqw 1.6cqw 1.8cqw;overflow:hidden;box-shadow:inset 0 0 0 .12cqw #0003}.cartridge-art{flex-direction:column;padding:2.4cqw 1.4cqw 1.4cqw;transition:opacity .15s;display:flex;position:absolute}.cartridge-art--upright{opacity:0;transition-delay:.32s;inset:0}.cartridge-art--flat{width:19.2cqw;height:15.8cqw;transition-delay:.38s;top:50%;left:50%;translate:-50% -50%;rotate:-90deg}.deck--game[data-phase=idle] .cartridge-art--upright,.deck--game[data-phase=ejecting] .cartridge-art--upright{opacity:1}.deck--game[data-phase=idle] .cartridge-art--flat,.deck--game[data-phase=ejecting] .cartridge-art--flat{opacity:0}.deck--game[data-phase=idle] .cartridge-art{transition-delay:0s}.deck--game[data-phase=ejecting] .cartridge-art--flat{transition-delay:.64s}.deck--game[data-phase=ejecting] .cartridge-art--upright{transition-delay:.7s}.cartridge-art:before{content:"";background:var(--tone);height:1.1cqw;position:absolute;top:0;left:0;right:0}.cartridge-detail,.cartridge-by{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;opacity:.7;font-size:.8cqw}.cartridge-title{letter-spacing:-.01em;text-wrap:balance;margin-top:1.2cqw;font-size:2.7cqw;line-height:.95}.cartridge-art--upright .cartridge-title{margin-top:auto}.cartridge-by{margin-top:.8cqw}.console{transition:opacity .35s}.deck--game[data-format=disc] [data-console=cartridge],.deck--game[data-format=cartridge] [data-console=disc]{opacity:0}.deck--game[data-format=disc] .cartridge,.deck--game[data-format=cartridge] .disc,.deck--game[data-phase=playing] .disc{visibility:hidden}.dsc-top{fill:#26282c;stroke:#3a3d42;stroke-width:.2px}.dsc-slot{fill:#050506}.dsc-lip{fill:#1d1f22}.dsc-face{fill:#111214;stroke:#050506;stroke-width:.25px}.dsc-chrome{stroke:#a9adb3;stroke-width:.3px}.dsc-touch{fill:none;stroke:#3a3d42;stroke-width:.2px}.dsc-eject{fill:#3a3d42}.dsc-port{fill:#050506}.dsc-led{fill:#7a2320;transition:fill .3s}.deck--game[data-phase=playing] .dsc-led{fill:#3fe07a;filter:drop-shadow(0 0 .8px #3fe07a)}.disc{background:radial-gradient(circle, #0000 0 .7cqw, #d3d6db .75cqw 1.8cqw, #00000038 1.85cqw 1.95cqw, #0000 2cqw), linear-gradient(135deg, #ffffff24, #0000 45%), var(--base);filter:drop-shadow(0 .5cqw .6cqw #00000038);border-radius:50%;width:13cqw;height:13cqw;transition:translate .35s cubic-bezier(.2,.8,.2,1);top:43.5cqw;left:40.5cqw;box-shadow:inset 0 0 0 .12cqw #ffffff4d;mask:radial-gradient(circle,#0000 .7cqw,#000 .75cqw)}.deck--game[data-phase=idle] .disc{translate:-32.5cqw -23cqw;scale:1.8}.deck--game[data-phase=idle] .deck-stage:hover .disc{translate:-32.5cqw -24cqw}.disc:before{content:"";border:.14cqw solid var(--tone);border-radius:50%;position:absolute;inset:.55cqw}.disc-print{text-align:center;color:var(--ink-on);grid-template-rows:1fr 4cqw 1fr;justify-items:center;padding:1.1cqw 2.2cqw;display:grid;position:absolute;inset:0}.disc-by{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;opacity:.75;align-self:end;padding-bottom:.4cqw;font-size:.5cqw}.disc-title{text-wrap:balance;grid-row:3;align-self:start;padding-top:.3cqw;font-size:1.05cqw;line-height:1.05}.deck-stage .record,.deck-stage .cartridge,.deck-stage .disc{z-index:1}.deck-stage .sleeve,.deck-stage .tv-front{z-index:2}.deck-stage .deck-arm-layer{z-index:4}@media (width<=860px){.shelf-body{grid-template-columns:1fr}.shelf-index{contain:none}.shelf-list{flex:none;max-height:22rem}}.ph{border:1px solid var(--hairline);background:linear-gradient(135deg, color-mix(in srgb, var(--faint) 70%, var(--bg)), var(--bg));place-items:center;display:grid;position:relative;overflow:hidden}.ph-label{color:var(--muted);opacity:.7;font-size:.66rem}.portrait{aspect-ratio:4/5;border:1px solid var(--hairline);border-radius:14px;margin:0;transition:transform .4s cubic-bezier(.2,.8,.2,1);overflow:hidden}.portrait:hover{transform:scale(1.015)}.portrait img{object-fit:cover;object-position:50% 38%;width:100%;height:100%;display:block}@media (width<=680px){.about-intro{grid-template-columns:1fr;align-items:start}.portrait{max-width:300px}}.prose img{transition:transform .4s cubic-bezier(.2,.8,.2,1)}.prose figure:hover img,.prose img:hover{transform:scale(1.015)}.work{margin:0;padding:0;list-style:none}.work li{border-bottom:1px solid var(--hairline)}.row{color:var(--ink);grid-template-columns:3rem minmax(0,1fr) auto auto;align-items:baseline;gap:1rem;padding:clamp(.8rem,1.8vw,1.05rem) .6rem;text-decoration:none;transition:padding-left .22s,color .18s;display:grid;position:relative}.row .idx{font-family:var(--mono);color:var(--muted);letter-spacing:.04em;font-size:.72rem}.row .title{letter-spacing:-.015em;font-size:clamp(1.15rem,2.2vw,1.45rem);font-weight:560;line-height:1.2}.row .tags{flex-wrap:wrap;justify-content:flex-end;gap:.4rem .5rem;display:flex}.row .tags i{letter-spacing:.05em;color:var(--accent);border:1px solid var(--faint);border-radius:100px;padding:.2rem .55rem;font-size:.66rem;font-style:normal;transition:border-color .18s}.row:hover .tags i,.row:focus-visible .tags i{border-color:var(--accent)}.row .year{font-family:var(--mono);color:var(--muted);letter-spacing:.04em;white-space:nowrap;font-size:.72rem}.row .arrow{opacity:0;color:var(--accent);font-size:1.1rem;line-height:1;transition:opacity .2s,transform .2s;position:absolute;top:50%;left:-.2rem;transform:translate(-.4rem,-50%)}.row:hover,.row:focus-visible{outline:none;padding-left:1.9rem}.row:hover .arrow,.row:focus-visible .arrow{opacity:1;transform:translateY(-50%)}.row:hover .title,.row:focus-visible .title{color:var(--accent)}#writing{margin-top:clamp(5rem,13vh,8.5rem)}.posts{margin:0;padding:0;list-style:none}.posts li{border-bottom:1px solid var(--hairline)}.posts li:first-child{border-top:1px solid var(--hairline)}.post-row{color:var(--ink);grid-template-columns:minmax(0,1fr) auto auto;align-items:baseline;gap:1rem;padding:clamp(.8rem,1.8vw,1.05rem) .2rem;text-decoration:none;display:grid}.post-date{color:var(--muted);font-variant-numeric:tabular-nums}.post-title{letter-spacing:-.02em;align-items:baseline;gap:.55rem;margin:0;font-size:clamp(1.15rem,2.2vw,1.45rem);font-weight:620;line-height:1.2;transition:color .18s;display:inline-flex}.post-arrow{color:var(--accent);opacity:0;align-self:center;font-size:.72em;line-height:1;transition:opacity .2s,transform .2s;transform:translate(-.4rem)}.post-row:hover .post-title,.post-row:focus-visible .post-title{color:var(--accent)}.post-row:hover .post-arrow,.post-row:focus-visible .post-arrow{opacity:1;transform:translate(0)}.post-meta{color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums}footer{border-top:1px solid var(--hairline);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1.5rem 2rem;margin-top:clamp(5rem,14vh,9rem);padding:clamp(2.5rem,6vw,4rem) 0 clamp(2rem,5vw,3rem);display:flex}.links{flex-wrap:wrap;gap:.75rem 1.75rem;display:flex}.links a{font-family:var(--mono);letter-spacing:.04em;color:var(--ink);border-bottom:1px solid var(--faint);padding-bottom:2px;font-size:.78rem;text-decoration:none;transition:color .18s;position:relative}.links a:after{background:var(--accent);bottom:-1px}.links a:hover,.links a:focus-visible{color:var(--accent)}.colophon{color:var(--muted)}a:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}@media (width<=720px){.row{grid-template-columns:2rem minmax(0,1fr) auto;row-gap:.5rem}.row .title{grid-area:1/2}.row .year{grid-area:1/3}.row .tags{grid-area:2/2/auto/-1;justify-content:flex-start}}@media (width<=560px){nav ul{gap:.9rem}}.fade{opacity:0;animation:.7s cubic-bezier(.2,.7,.2,1) forwards rise;transform:translateY(12px)}.fade.d1{animation-delay:50ms}.fade.d2{animation-delay:.13s}.fade.d3{animation-delay:.21s}.fade.d4{animation-delay:.29s}.fade.d5{animation-delay:.37s}@keyframes rise{to{opacity:1;transform:none}}[data-enter]>:not(script,style){opacity:0;animation:.7s cubic-bezier(.2,.7,.2,1) forwards rise;transform:translateY(10px)}[data-enter]>:first-child{animation-delay:.24s}[data-enter]>:nth-child(2){animation-delay:.33s}[data-enter]>:nth-child(3){animation-delay:.42s}[data-enter]>:nth-child(4){animation-delay:.51s}[data-enter]>:nth-child(n+5){animation-delay:.6s}.hero-name{font-size:clamp(2.75rem,8.2vw,7.25rem)}.hero-name .mask{vertical-align:top;margin-bottom:-.06em;padding-bottom:.06em;display:inline-block;overflow:hidden}.hero-name .mask+.mask{margin-left:.26em}.hero-name .mask-inner{animation:.72s cubic-bezier(.16,.84,.28,1) forwards mask-rise;display:block;transform:translateY(105%)}.hero-name .l1{animation-delay:.1s}.hero-name .l2{animation-delay:.19s}@keyframes mask-rise{to{transform:none}}.js [data-reveal]>*{opacity:0;transition:opacity .5s cubic-bezier(.2, .7, .2, 1) var(--reveal-delay,0s), transform .5s cubic-bezier(.2, .7, .2, 1) var(--reveal-delay,0s);transform:translateY(8px)}.js [data-reveal]>.revealed{opacity:1;transform:none}.js[data-restored] [data-reveal]>*{opacity:1;transition:none;transform:none}nav a[aria-current=page]{color:var(--ink)}.page-head{padding:clamp(2.5rem,9vh,6rem) 0 clamp(1.75rem,4vw,3rem)}.page-title{letter-spacing:-.03em;margin:0;font-size:clamp(2.4rem,7vw,4.5rem);font-weight:640;line-height:1}.page-sub{color:var(--muted);margin:.9rem 0 0;font-size:clamp(1.05rem,2vw,1.3rem)}.hero--home{flex-direction:column;justify-content:center;min-height:62vh;display:flex}:root[data-theme=dark] .astro-code,:root[data-theme=dark] .astro-code span{color:var(--shiki-dark)!important;background-color:var(--shiki-dark-bg)!important;font-style:var(--shiki-dark-font-style)!important;font-weight:var(--shiki-dark-font-weight)!important;text-decoration:var(--shiki-dark-text-decoration)!important}.astro-code{border:1px solid var(--hairline);font-size:.86rem;line-height:1.7}.notfound{flex-direction:column;justify-content:center;min-height:58vh;display:flex}.notfound-code{color:var(--muted);margin:0 0 1rem}.notfound h1{letter-spacing:-.03em;margin:0;font-size:clamp(2.2rem,6vw,3.6rem);line-height:1.05}.notfound p{color:var(--muted);max-width:46ch;margin:1rem 0 2rem;font-size:clamp(1.02rem,2vw,1.2rem)}.notfound-links{flex-wrap:wrap;gap:1.5rem;display:flex}.notfound-links a{color:var(--muted);text-decoration:none;transition:color .18s}.notfound-links a:hover,.notfound-links a:focus-visible{color:var(--accent)}.toast{z-index:60;background:var(--rail-bg);color:var(--rail-ink);letter-spacing:-.005em;white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;border-radius:999px;align-items:center;gap:.6rem;padding:.72rem 1.15rem;font-size:1.02rem;font-weight:600;line-height:1.25;transition:opacity .2s,transform .2s cubic-bezier(.2,.7,.2,1),visibility .2s;display:flex;position:fixed;bottom:clamp(1.25rem,4vh,2.5rem);left:50%;transform:translate(-50%,14px)scale(.96);box-shadow:0 10px 34px #0000003d}.toast[data-visible=true]{opacity:1;visibility:visible;transition-duration:.34s;transform:translate(-50%)scale(1)}.toast-emoji{font-size:1.15rem}.toast[data-visible=true] .toast-emoji{animation:.5s cubic-bezier(.2,.8,.2,1) toast-pop}.toast.shake{animation:.44s cubic-bezier(.36,.07,.19,.97) toast-shake}.toast.win{box-shadow:0 10px 34px #0000003d, 0 0 0 1px var(--rail-accent)}.toast.win .toast-emoji{z-index:1;animation:1.5s cubic-bezier(.2,.75,.25,1) trophy-pop;position:relative}@keyframes trophy-pop{0%{rotate:0deg;scale:1}18%{rotate:-14deg;scale:3.4}34%{rotate:12deg;scale:3.1}50%{rotate:-8deg;scale:3.3}64%{rotate:6deg;scale:3.1}78%{rotate:-3deg;scale:3.2}to{rotate:0deg;scale:1}}@keyframes toast-pop{0%{rotate:-20deg;scale:.4}60%{rotate:10deg;scale:1.28}to{rotate:0deg;scale:1}}@keyframes toast-shake{0%,to{translate:0}20%{translate:-6px}40%{translate:6px}60%{translate:-3px}80%{translate:3px}}@media (width<=520px){.toast{white-space:normal;text-align:left;max-width:calc(100vw - 2rem)}}::view-transition-old(root){animation:.16s cubic-bezier(.4,0,1,1) both vt-out}::view-transition-new(root){animation:.26s cubic-bezier(.2,.7,.2,1) both vt-in}@keyframes vt-out{to{opacity:0}}@keyframes vt-in{0%{opacity:0;transform:translateY(8px)}}.theme-swap :not(.theme-toggle *){transition:none!important}.theme-swap::view-transition-old(*){animation:none}.theme-swap::view-transition-new(*){animation:.3s both theme-fade}@keyframes theme-fade{0%{opacity:0}}@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media (prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*),[data-astro-transition-scope]{animation:none!important}}
