.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}@font-face{font-family:Instrument Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;font-stretch:75% 100%;src:url(/_astro/instrument-sans-latin-ext-wdth-normal.C5E2Gvlv.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;font-stretch:75% 100%;src:url(/_astro/instrument-sans-latin-wdth-normal.BVScPF0l.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-mono-cyrillic-ext-wght-normal.X_5orZeX.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-mono-cyrillic-wght-normal.DiZS0aHC.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-mono-symbols2-wght-normal.CO5SzqOn.woff2) format("woff2-variations");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-mono-vietnamese-wght-normal.DadHysG0.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-mono-latin-ext-wght-normal.Bwz-egvJ.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-mono-latin-wght-normal.XN7g48iV.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #ffffff;--ink: #0d0d0d;--soft: #555555;--muted: #767676;--dim: #8a8a8a;--faint: #b9b9b9;--line: #e7e7e7;--tile: #f4f4f2;--live: #17a35a;--accent: var(--ink);--sans: "Instrument Sans Variable", "Helvetica Neue", Helvetica, Arial, sans-serif;--mono: "Geist Mono Variable", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--fs-mono: 10.5px;--side: 248px;--pad: 16px;--gap: 12px;--bar: 52px;--ease: cubic-bezier(.2, .7, .2, 1);color-scheme:light}html[data-theme=dark]{--bg: #0a0a0a;--ink: #f2f2f2;--soft: #b8b8b8;--muted: #8c8c8c;--dim: #7a7a7a;--faint: #4d4d4d;--line: #242424;--tile: #151515;color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-padding-top:24px}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:14px;line-height:1.45;letter-spacing:-.003em;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img,video,svg{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;letter-spacing:inherit;background:none;border:0;padding:0;cursor:pointer}h1,h2,h3,p,ul,ol,dl,dd,figure{margin:0}ul,ol{padding:0;list-style:none}:focus-visible{outline:2px solid var(--ink);outline-offset:3px}::selection{background:var(--ink);color:var(--bg)}[hidden]{display:none!important}.mono{font-family:var(--mono);font-size:var(--fs-mono);letter-spacing:0}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip{position:fixed;left:12px;top:-60px;z-index:100;background:var(--ink);color:var(--bg);padding:8px 12px;font-size:12px}.skip:focus{top:12px}.dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--live);animation:pulse 2.6s ease-out infinite}@keyframes pulse{0%{box-shadow:0 0 color-mix(in srgb,var(--live) 50%,transparent)}70%,to{box-shadow:0 0 0 7px transparent}}.arrow{display:inline-block;transition:transform .35s var(--ease)}a:hover>.arrow,button:hover>.arrow{transform:translate(4px)}.js .reveal{opacity:0;transform:translateY(14px)}.js .reveal.in{opacity:1;transform:none;transition:opacity .7s var(--ease),transform .7s var(--ease);transition-delay:calc(var(--i, 0) * 55ms)}.js .reveal.in.snap{transition:none}.js:not(.ready) .reveal{animation:show-anyway .6s 2s both}@keyframes show-anyway{to{opacity:1;transform:none}}.side{position:fixed;inset:0 auto 0 0;z-index:40;width:var(--side);padding:var(--pad);display:flex;flex-direction:column;overflow-y:auto;scrollbar-width:none}.side::-webkit-scrollbar{display:none}.side-top{display:flex;justify-content:space-between;align-items:center}.mark{display:inline-flex;align-items:center;font-size:13px;line-height:16px;font-weight:600;letter-spacing:.01em;white-space:pre}.mark-rest{max-width:0;overflow:hidden;opacity:0;transition:max-width .5s var(--ease),opacity .35s}@media(hover:hover){.mark:hover .mark-rest,.mark:focus-visible .mark-rest{max-width:6em;opacity:1}}.menu-btn{display:none;font-size:13px}.side-sheet{display:flex;flex-direction:column;flex:1;min-height:0}.nav{display:grid;justify-items:start;gap:1px;margin-top:30px;font-size:13px}.nav a{color:var(--soft);transition:color .2s}.nav a:hover,.nav a[aria-current=page]{color:var(--ink)}.nav a[aria-current=page]{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}.nav .nav-book{display:inline-flex;align-items:center;gap:7px;margin-top:10px;color:var(--ink)}.index{margin-top:34px}.index li{border-top:1px solid var(--line)}.index li:last-child{border-bottom:1px solid var(--line)}.index a{display:flex;align-items:center;padding:7px 0 8px;font-size:21px;line-height:1.12;letter-spacing:-.018em;transition:color .25s,opacity .25s}.index .sw{flex:none;width:0;height:9px;margin-right:0;background:var(--c, var(--ink));transition:width .3s var(--ease),margin-right .3s var(--ease)}.index a:hover .sw,.index a.is-hot .sw,.index a[aria-current=page] .sw{width:9px;margin-right:8px}.index a[aria-current=page]{color:var(--muted)}.index.has-hot a:not(.is-hot){color:var(--faint)}.side-foot{margin-top:auto;padding-top:28px;display:grid;gap:3px;font-family:var(--mono);font-size:var(--fs-mono);color:var(--muted)}.side-foot .status{display:flex;align-items:center;gap:7px;color:var(--ink)}.side-foot .clock{display:flex;gap:8px;font-variant-numeric:tabular-nums}.side-foot .social{display:flex;gap:12px;margin-top:8px}.side-foot .social a:hover{color:var(--ink)}.main{margin-left:var(--side);padding:var(--pad);min-height:100vh;display:flex;flex-direction:column}.main>.foot{margin-top:auto}.bar{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 26px;padding:13px 0 14px;border-top:1px solid var(--line);font-size:12.5px}.bar h2{font-size:inherit;font-weight:400}.bar sup{font-family:var(--mono);font-size:9px;color:var(--muted);margin-left:3px;vertical-align:.55em;line-height:0}.bar .end{margin-left:auto}.bar a:hover{color:var(--soft)}.chips{display:flex;flex-wrap:wrap;gap:4px 16px}.chips button{color:var(--muted);transition:color .2s}.chips button:hover,.chips button[aria-pressed=true]{color:var(--ink)}.chips button[aria-pressed=true]{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}.intro{display:grid;gap:16px;padding:2px 0 30px}.intro h1{max-width:22em;color:var(--dim);font-size:clamp(26px,2.95vw,46px);font-weight:500;font-stretch:94%;line-height:1.05;letter-spacing:-.03em;text-wrap:balance}.intro h1 span{color:var(--ink)}.proof{display:flex;flex-wrap:wrap;gap:4px 22px;color:var(--muted)}.feature{margin-bottom:46px}.feature-stage{position:relative;width:100%;aspect-ratio:16 / 9;max-height:min(74vh,780px);overflow:hidden;background:var(--tile)}.feature-slide{position:absolute;inset:0;opacity:0;pointer-events:none;transition:opacity .7s var(--ease)}.feature-slide.is-active{opacity:1;pointer-events:auto}.feature-slide video,.feature-slide img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.feature-pause{position:absolute;right:10px;bottom:10px;z-index:2;padding:5px 8px;font-family:var(--mono);font-size:10px;background:#fff;color:#0d0d0d;opacity:0;transition:opacity .25s}.feature-stage:hover .feature-pause,.feature-pause:focus-visible,.feature-pause[aria-pressed=true]{opacity:1}@media(hover:none){.feature-pause{opacity:1}}.feature-tabs{display:grid;grid-template-columns:repeat(var(--n, 4),minmax(0,1fr));gap:var(--gap);margin-top:10px}.feature-tab{position:relative;display:grid;gap:1px;padding-top:10px;text-align:left;color:var(--muted);transition:color .3s}.feature-tab:hover,.feature-tab[aria-current=true]{color:var(--ink)}.feature-tab .line{position:absolute;inset:0 0 auto;height:2px;background:var(--line);overflow:hidden}.feature-tab .line i{display:block;height:100%;background:var(--ink);transform-origin:left center;transform:scaleX(var(--p, 0))}.feature-tab .name{font-size:13px}.feature-tab .cap{font-family:var(--mono);font-size:var(--fs-mono);color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.work{margin-bottom:56px}.work[data-view=grid] .rows,.work[data-view=grid] .peek,.work[data-view=list] .grid{display:none}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px var(--gap)}.tile{display:block;transition:opacity .3s}.grid.has-hot .tile:not(.is-hot){opacity:.5}.tile-media{position:relative;aspect-ratio:3 / 2;overflow:hidden;background:var(--tile)}.tile-media>img,.tile-media>video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease),opacity .5s}.tile-media>video{opacity:0}.tile-media>video.is-playing{opacity:1}.tile:hover .tile-media>img,.tile:hover .tile-media>video{transform:scale(1.025)}.tile-svg{position:absolute;inset:0;display:grid;place-items:center;transition:transform .9s var(--ease)}.tile-svg img{width:30%;height:auto}.tile:hover .tile-svg{transform:scale(1.06)}.tile-monster{position:absolute;left:50%;bottom:-10%;width:76%;translate:-50% 0;transition:transform .9s var(--ease);transform-origin:50% 100%}.tile:hover .tile-monster{transform:scale(1.03)}.tile-meta{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:12px;margin-top:10px}.tile-meta .t{font-size:13px}.tile-meta .y,.tile-meta .c{font-family:var(--mono);font-size:var(--fs-mono);color:var(--muted)}.tile-meta .y{align-self:center}.tile-meta .c{grid-column:1 / -1;margin-top:1px}.rows{border-bottom:1px solid var(--line)}.row a{display:grid;grid-template-columns:minmax(0,1fr) auto 5ch;align-items:baseline;gap:28px;padding:14px 0 17px;border-top:1px solid var(--line);transition:color .25s}.row .t{font-size:clamp(30px,4.6vw,68px);font-weight:500;font-stretch:88%;line-height:.98;letter-spacing:-.04em;transition:transform .45s var(--ease)}.row .d,.row .y{font-family:var(--mono);font-size:var(--fs-mono);color:var(--muted)}.row .y{text-align:right}.row a:hover .t{transform:translate(16px)}.rows:hover .row a:not(:hover),.rows:hover .row a:not(:hover) .d,.rows:hover .row a:not(:hover) .y{color:var(--faint)}.peek{position:fixed;left:0;top:0;z-index:30;width:340px;aspect-ratio:3 / 2;overflow:hidden;background:var(--tile);pointer-events:none;opacity:0;transform:translate3d(var(--x, 0px),var(--y, 0px),0);transition:opacity .25s}.peek.is-on{opacity:1}.peek img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .25s}.peek img.is-on{opacity:1}.strip{margin-bottom:56px}.strip-scroll{display:grid;grid-auto-flow:column;grid-auto-columns:min(74vw,400px);gap:var(--gap);overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;scrollbar-width:none;margin-right:calc(var(--pad) * -1);padding-right:var(--pad)}.strip-scroll::-webkit-scrollbar{display:none}.clip{scroll-snap-align:start}.clip-media{position:relative;aspect-ratio:16 / 9;overflow:hidden;background:#0a0a0a}.clip-media img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease)}.clip-media.is-vertical img{object-fit:contain}.clip:hover .clip-media img{transform:scale(1.03)}.clip-play{position:absolute;left:10px;bottom:10px;display:flex;align-items:center;gap:7px;padding:5px 8px;background:#fff;color:#0d0d0d;font-family:var(--mono);font-size:10px}.clip-play:before{content:"";border-left:7px solid currentColor;border-block:4px solid transparent}.clip-meta{display:flex;justify-content:space-between;gap:12px;margin-top:10px;font-size:13px}.clip-meta .mono{color:var(--muted);align-self:center}.ribbon{display:block;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}.ribbon-track{display:flex;gap:var(--gap);width:max-content;animation:ribbon 70s linear infinite}.ribbon:hover .ribbon-track,.ribbon:focus-visible .ribbon-track{animation-play-state:paused}.ribbon img{height:168px;width:auto;max-width:none;background:var(--tile)}@keyframes ribbon{to{transform:translate(calc(-50% - var(--gap) / 2))}}.cta{padding:34px 0 60px;border-top:1px solid var(--line)}.cta .mono{color:var(--muted)}.cta h2{margin-top:14px;max-width:12em;font-size:clamp(40px,7.4vw,116px);font-weight:500;font-stretch:86%;line-height:.92;letter-spacing:-.045em}.cta h2 a{color:var(--dim)}.cta h2 a span{white-space:nowrap;color:var(--ink);background:linear-gradient(currentColor,currentColor) 0 100% / 0 .055em no-repeat;transition:background-size .5s var(--ease);padding-bottom:.04em}.cta h2 a:hover span,.cta h2 a:focus-visible span{background-size:100% .055em}.cta p{margin-top:18px;font-size:14px;color:var(--muted)}.cta p a{color:var(--ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}.foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 24px;padding:16px 0 4px;border-top:1px solid var(--line);font-family:var(--mono);font-size:var(--fs-mono);color:var(--muted)}.foot nav{display:flex;gap:16px}.foot a:hover{color:var(--ink)}.monster{position:relative;display:block;aspect-ratio:1}button.monster{cursor:pointer}.monster-body{position:absolute;inset:0;transform-origin:50% 100%;animation:breathe 4.2s ease-in-out infinite}.monster img{position:absolute;inset:0;width:100%;height:100%}.monster-eyes{position:absolute;inset:0;-webkit-mask:url(/media/rally/monster/face-eye-mask.png) 0 0 / 100% 100% no-repeat;mask:url(/media/rally/monster/face-eye-mask.png) 0 0 / 100% 100% no-repeat}.pupil{position:absolute;left:39.67%;top:48%;width:4.4%;aspect-ratio:1;border-radius:50%;transform:translate(-50%,-50%);background:radial-gradient(circle at 50% 50%,#0d130c 0 30%,#467f27 33% 60%,#2f5e1b 63% 100%);box-shadow:inset 0 0 0 1px #00000040}.pupil:before{content:"";position:absolute;inset:0;border-radius:50%;background:linear-gradient(rgba(20,35,15,.6),transparent 46%)}.pupil[data-eye=r]{left:60.58%}.pupil:after{content:"";position:absolute;left:24%;top:18%;width:22%;height:22%;border-radius:50%;background:#ffffffd9}.monster-blink{opacity:0}.monster.is-blinking .monster-blink{opacity:1}.monster.is-blinking .monster-eyes{opacity:0}.monster-body.squish{animation:squish .28s ease-out}@keyframes breathe{0%,to{transform:scale(1)}50%{transform:scale(1.012,1.018)}}@keyframes squish{0%{transform:scale(1)}40%{transform:scale(1.04,.95)}to{transform:scale(1)}}.progress{position:fixed;left:var(--side);right:0;top:0;z-index:35;height:2px;pointer-events:none}.progress i{display:block;height:100%;background:var(--accent);transform-origin:left center;transform:scaleX(var(--p, 0))}.p-head{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:26px var(--gap);padding:0 0 38px}.p-head h1{grid-column:1 / -1;margin-left:-.04em;font-size:clamp(58px,10.6vw,172px);font-weight:500;font-stretch:82%;line-height:.86;letter-spacing:-.05em}.p-sum{grid-column:1 / span 6;font-size:clamp(16px,1.42vw,21px);line-height:1.32;letter-spacing:-.012em;text-wrap:pretty}.p-meta{grid-column:9 / -1;align-self:start;display:grid;grid-template-columns:5.5em minmax(0,1fr);gap:5px 12px;font-size:12.5px}.p-meta dt{font-family:var(--mono);font-size:var(--fs-mono);color:var(--muted);padding-top:2px}.blocks{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--gap);align-items:start}.b{grid-column:span var(--span, 6);min-width:0}.b-media{position:relative;overflow:hidden;background:var(--tile)}.b-media>img,.b-media>video,.b-media>a>img{width:100%;height:auto}.b-media>a[data-lightbox]{display:block;cursor:zoom-in}.b figcaption{margin-top:8px;font-family:var(--mono);font-size:var(--fs-mono);color:var(--muted)}.b-film .b-media{background:#000;aspect-ratio:var(--ratio, 16 / 9)}.b-film video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.film-watch{position:absolute;left:12px;bottom:12px;z-index:2;display:inline-flex;align-items:center;gap:8px;padding:8px 12px;background:#fff;color:#0d0d0d;font-size:12.5px;transition:transform .35s var(--ease)}.film-watch:before{content:"";border-left:8px solid currentColor;border-block:5px solid transparent}.film-watch .mono{color:#767676}.b-media:not(.is-ambient)>.film-watch{display:none}.film-watch:hover{transform:translateY(-2px)}.b-svg .b-media{display:grid;place-items:center;aspect-ratio:var(--ratio, 16 / 9)}.b-svg img{width:min(34%,240px);height:auto}.b-note{grid-column:1 / -1;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px var(--gap);padding:46px 0 10px}.b-note h2{grid-column:span 2;font-size:13px;font-weight:500}.b-note p{grid-column:3 / span 3;font-size:15px;line-height:1.38;color:var(--soft);max-width:32em}.b-stats{grid-column:1 / -1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap);padding:6px 0 30px}.b-stats div{border-top:1px solid var(--line);padding-top:12px}.b-stats b{display:block;font-size:clamp(40px,6vw,96px);font-weight:500;font-stretch:84%;line-height:.95;letter-spacing:-.045em}.b-stats span{font-family:var(--mono);font-size:var(--fs-mono);color:var(--muted)}.b-monster{position:relative;overflow:hidden;background:#f4f3ee;height:clamp(320px,46vw,620px)}.b-monster .monster{position:absolute;left:50%;bottom:-8%;height:104%;width:auto;translate:-50% 0}.quip{position:absolute;left:50%;top:12%;z-index:2;padding:9px 13px;border-radius:6px;background:#1c2a1e;color:#f4f3ee;font-family:var(--mono);font-weight:700;font-size:15px;letter-spacing:.12em;white-space:nowrap;box-shadow:3px 6px 12px #0003;pointer-events:none;opacity:0;transform:translate(-50%,8px) rotate(-3deg);transition:opacity .18s,transform .18s}.quip.show{opacity:1;transform:translate(-50%) rotate(-3deg)}.if-touch{display:none}@media(hover:none){.if-hover{display:none}.if-touch{display:inline}}.p-next{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:var(--gap);margin-top:72px;padding:16px 0 44px;border-top:1px solid var(--line)}.p-next .mono{grid-column:1 / -1;color:var(--muted)}.p-next .t{font-size:clamp(48px,9vw,148px);font-weight:500;font-stretch:82%;line-height:.88;letter-spacing:-.05em;transition:transform .5s var(--ease)}.p-next:hover .t{transform:translate(18px)}.p-next .thumb{width:clamp(120px,18vw,280px);aspect-ratio:3 / 2;overflow:hidden;background:var(--tile)}.p-next .thumb img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease)}.p-next:hover .thumb img{transform:scale(1.06)}.page-head{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px var(--gap);padding:0 0 30px}.page-head h1{grid-column:1 / -1;margin-left:-.04em;font-size:clamp(58px,10.6vw,172px);font-weight:500;font-stretch:82%;line-height:.86;letter-spacing:-.05em}.page-head p{grid-column:1 / span 6;font-size:clamp(16px,1.42vw,21px);line-height:1.32;letter-spacing:-.012em;color:var(--soft)}.screen{position:relative;width:100%;aspect-ratio:16 / 9;max-height:78vh;background:#000}.screen video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.nowbar{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:12px 0 34px;font-size:13px}.nowbar-proj{color:var(--muted);margin-left:10px}.nowbar-proj:hover{color:var(--ink)}.nowbar .mono{color:var(--muted)}.reel{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px var(--gap);margin-bottom:60px}.reel button{display:block;width:100%;text-align:left}.reel .ph{display:block;position:relative;aspect-ratio:16 / 9;overflow:hidden;background:#000}.reel .ph img{width:100%;height:100%;object-fit:cover;opacity:.82;transition:opacity .3s,transform .9s var(--ease)}.reel .ph.is-vertical img{object-fit:contain}.reel button:hover .ph img,.reel button[aria-current=true] .ph img{opacity:1}.reel button:hover .ph img{transform:scale(1.03)}.reel button[aria-current=true] .ph:after{content:"Playing";position:absolute;left:8px;top:8px;padding:4px 6px;background:#f2f2f2;color:#0a0a0a;font-family:var(--mono);font-size:9.5px}.reel .meta{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0 10px;margin-top:10px;font-size:13px}.reel .meta .mono{color:var(--muted)}.reel .meta .p{grid-column:1 / -1}.wall{columns:4;column-gap:var(--gap);margin-bottom:60px}.js .wall .reveal{transform:none}.wall-item{position:relative;display:block;-webkit-column-break-inside:avoid;break-inside:avoid;margin-bottom:var(--gap);background:var(--tile);cursor:zoom-in;overflow:hidden}.wall-item img,.wall-item video{width:100%;height:auto;transition:transform .9s var(--ease)}.wall-item:hover img,.wall-item:hover video{transform:scale(1.025)}.wall-item .tag{position:absolute;left:8px;bottom:8px;padding:4px 6px;background:#fff;color:#0d0d0d;font-family:var(--mono);font-size:9.5px;opacity:0;transform:translateY(4px);transition:opacity .2s,transform .3s var(--ease)}.wall-item:hover .tag,.wall-item:focus-visible .tag{opacity:1;transform:none}.info{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0 var(--gap);margin-bottom:60px}.info-lede{grid-column:1 / span 9;font-size:clamp(24px,3.1vw,48px);font-weight:500;font-stretch:92%;line-height:1.06;letter-spacing:-.03em;text-wrap:balance}.info-lede span{color:var(--dim)}.info-stats{grid-column:1 / -1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--gap);margin:56px 0 8px}.info-stats div{border-top:1px solid var(--line);padding-top:12px}.info-stats b{display:block;font-size:clamp(36px,5.2vw,84px);font-weight:500;font-stretch:84%;line-height:.95;letter-spacing:-.045em;font-variant-numeric:tabular-nums}.info-stats span{font-family:var(--mono);font-size:var(--fs-mono);color:var(--muted)}.info-col{grid-column:span 6;margin-top:44px}.info-col h2{font-family:var(--mono);font-size:var(--fs-mono);font-weight:400;color:var(--muted);margin-bottom:10px}.info-col p{font-size:15px;line-height:1.42;color:var(--soft);max-width:34em}.info-col p+p{margin-top:12px}.info-col p a,.list a{color:var(--ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}.list li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;padding:9px 0 10px;border-top:1px solid var(--line);font-size:14px}.list li:last-child{border-bottom:1px solid var(--line)}.list .sub{color:var(--muted);margin-left:8px}.list .mono{color:var(--muted);align-self:center}.book{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:30px var(--gap);margin-bottom:60px}.book-steps{grid-column:1 / span 5}.book-steps li{display:grid;grid-template-columns:2.4em minmax(0,1fr);padding:12px 0 13px;border-top:1px solid var(--line)}.book-steps li:last-child{border-bottom:1px solid var(--line)}.book-steps .mono{color:var(--muted);padding-top:3px}.book-steps b{font-weight:500}.book-steps span.s{display:block;color:var(--muted);font-size:13px}.book-cal{grid-column:7 / -1}.book-card{background:var(--tile);padding:28px;font-size:15px;line-height:1.42}.book-card .or{margin-top:14px;font-size:13px;color:var(--muted)}.book-card .or a{color:var(--ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}.btn{display:inline-flex;align-items:center;gap:10px;margin-top:16px;padding:11px 16px;background:var(--ink);color:var(--bg);font-size:13px}.btn:hover{background:var(--soft)}.lost{display:grid;justify-items:start;gap:18px;max-width:560px}.lost img{width:100%;height:auto;background:#f4f3ee}.lost h1{font-size:clamp(32px,4vw,56px);font-weight:500;font-stretch:90%;line-height:1;letter-spacing:-.035em}.lb{width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:var(--bg);color:var(--ink)}.lb::backdrop{background:transparent}.lb[open]{animation:lb-in .25s var(--ease)}@keyframes lb-in{0%{opacity:0}}.lb-stage{position:absolute;inset:52px 16px 56px;display:flex;align-items:center;justify-content:center;cursor:zoom-out}.lb-stage img,.lb-stage video{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;cursor:default}.lb-bar{position:absolute;inset:auto 16px 16px;display:flex;justify-content:space-between;gap:16px;font-family:var(--mono);font-size:var(--fs-mono);color:var(--muted)}.lb-bar .cap{color:var(--ink)}.lb-nav{display:flex;gap:16px}.lb-bar button:hover,.lb-close:hover{color:var(--ink)}.lb-close{position:absolute;right:16px;top:16px;font-family:var(--mono);font-size:var(--fs-mono);color:var(--muted)}::view-transition-old(root),::view-transition-new(root){animation-duration:.3s}@media(min-width:1800px){.grid{grid-template-columns:repeat(4,minmax(0,1fr))}.wall{columns:5}}@media(max-width:1180px){:root{--side: 216px}.index a{font-size:19px}.wall{columns:3}.reel{grid-template-columns:repeat(3,minmax(0,1fr))}.p-meta{grid-column:8 / -1}}@media(max-width:860px){:root{--pad: 16px;--fs-mono: 11.5px}html.menu-open{overflow:hidden}.side{position:sticky;inset:0 0 auto;width:auto;height:var(--bar);padding:0 var(--pad);overflow:visible;background:var(--bg);display:block}.side-top{height:var(--bar)}.mark{font-size:14px;line-height:18px}.menu-btn{display:block;padding:8px 0 8px 16px}.side-sheet{position:fixed;inset:var(--bar) 0 0 0;padding:4px var(--pad) 22px;background:var(--bg);overflow-y:auto;visibility:hidden;opacity:0;transform:translateY(-8px);transition:opacity .3s var(--ease),transform .4s var(--ease),visibility 0s .3s}.menu-open .side-sheet{visibility:visible;opacity:1;transform:none;transition-delay:0s}.nav{margin-top:8px;gap:0;font-size:clamp(34px,10vw,46px);font-weight:500;font-stretch:86%;line-height:1.08;letter-spacing:-.04em}.nav a{color:var(--ink)}.nav a[aria-current=page]{text-decoration:none;color:var(--dim)}.nav .nav-book{margin-top:0;gap:12px}.nav .nav-book .dot{width:10px;height:10px}.index{margin-top:30px}.index a{font-size:19px}.main{margin-left:0;min-height:calc(100vh - var(--bar));padding-top:6px}.progress{left:0;top:var(--bar)}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.feature-tab .cap{display:none}.work .bar h2{flex:1}.work .bar .chips:not(.end){order:3;width:100%}.p-sum,.page-head p,.info-lede,.book-steps,.book-cal,.p-meta{grid-column:1 / -1}.b-note{padding-top:34px}.b-note h2,.b-note p{grid-column:1 / -1}.info-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px var(--gap)}.info-col{grid-column:1 / -1}.reel{grid-template-columns:repeat(2,minmax(0,1fr))}.wall{columns:2}.ribbon img{height:120px}.peek{display:none}.chips{gap:0 18px}.chips button{padding:7px 0}.foot a{padding:6px 0}}@media(max-width:560px){.grid{grid-template-columns:minmax(0,1fr);gap:26px}.b{grid-column:1 / -1}.b[data-span="2"]{grid-column:span 3}.b-stats{grid-template-columns:minmax(0,1fr);gap:18px}.row a{grid-template-columns:minmax(0,1fr) auto;gap:12px}.row .d{display:none}.feature-tab .name{font-size:12px}.p-next{grid-template-columns:minmax(0,1fr)}.p-next .thumb{display:none}.foot{flex-direction:column}}@media(pointer:coarse){.mark{min-height:44px;padding-right:14px}.side-foot .social a,.nowbar-proj,.bar a{display:inline-block;padding-block:7px}.chips button{min-width:28px;padding-block:7px;text-align:left}.foot a{display:inline-block;min-width:28px;padding-block:7px}.list a,.cta p a{display:inline-block;padding-block:4px}.feature-pause{padding:9px 11px}.lb-bar button,.lb-close{padding:9px 6px}.lb-close{right:10px;top:8px}.lb-bar{bottom:8px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.js .reveal{opacity:1;transform:none}.ribbon{overflow-x:auto}.ribbon-track{animation:none}}.b-loop .b-media video,.is-ambient video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}@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(*){animation:none!important}[data-astro-transition-scope]{animation:none!important}}
