.lab-page{flex-direction:column;gap:24px;display:flex}.lab-title{letter-spacing:.003em;font-size:36px;font-weight:400;line-height:1.15}.lab-line{margin-top:-18px;font-size:16px;line-height:1.2}.lab-filters{flex-wrap:wrap;justify-content:center;gap:4px 14px;font-size:16px;display:flex}html:not(.js) .lab-filters{display:none}.lab-filter{color:inherit;font:inherit;letter-spacing:inherit;cursor:pointer;background:0 0;border:0;padding:0}.lab-filter:before{content:"("}.lab-filter:after{content:")"}.lab-filter[aria-pressed=true]:before{content:"["}.lab-filter[aria-pressed=true]:after{content:"]"}.lab-filter-box{display:none}.lab-strip{overscroll-behavior-x:contain;scrollbar-width:thin;align-items:flex-end;gap:24px;margin:0;padding:0 0 12px;list-style:none;display:flex;overflow-x:auto}.lab-cover{flex-direction:column;flex:none;gap:6px;display:flex}.lab-cover[hidden]{display:none}.lab-cover-year{font-size:14px;line-height:1}.lab-cover-link{-webkit-user-drag:none;display:block}.lab-cover-media{display:block;position:relative}.lab-cover-link img{width:auto;height:var(--lab-cover-h,320px);object-fit:cover;-webkit-user-drag:none;display:block}.lab-cover-video{opacity:0;margin:0;transition:opacity .3s;position:absolute;inset:0}.lab-cover-video video{object-fit:cover;width:100%;height:100%;display:block}.lab-cover[data-playing] .lab-cover-video{opacity:1}.lab-stage{display:none}html.folder-book .book-pages .page--lab[data-side=left]{--u:min(calc(100cqw / 1718), calc(100cqh / 883));width:calc(2 * var(--page-w));z-index:1}html.folder-book .page--lab .page-body{padding:0;display:block;position:absolute;inset:0;overflow:clip}html.folder-book .leaf-page>.page--lab[data-side=left]{--u:min(calc(100cqw / 1718), calc(100cqh / 883));width:200%}html.folder-book :is(.page--copy,.lab-mirror) :is(.lab-strip,.lab-cover-link img,.lab-cover-video,.lab-sq,.lab-edge){will-change:auto;transition:none}html.folder-book :is(.page--copy,.lab-mirror) .lab-cover-video{display:none}html.folder-book .lab-mirror{top:0;bottom:0;left:calc(-1 * var(--page-w));width:calc(2 * var(--page-w));pointer-events:none;position:absolute}html.folder-book .lab-page{--ease-out:cubic-bezier(.16, 1, .3, 1);--cover-w:calc(440.5 * var(--u));display:block;position:absolute;inset:0}html.folder-book :is(.lab-title,.lab-line){clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}html.folder-book .lab-filters{top:calc(114 * var(--u));z-index:2;align-items:center;gap:calc(20 * var(--u));height:calc(34.704 * var(--u));font-size:calc(16 * var(--u));line-height:calc(16 * var(--u));letter-spacing:-.003em;white-space:nowrap;flex-wrap:nowrap;position:absolute;left:50%;translate:-50%}html.folder-book .lab-filter{z-index:1;height:100%;transition:color .26s var(--ease-out);position:relative}html.folder-book .lab-filter[aria-pressed=true]{padding-inline:calc(15 * var(--u));background:var(--ink);color:var(--paper)}html.folder-book .lab-filters[data-sliding] .lab-filter[aria-pressed=true]{background:0 0}html.folder-book .lab-filter[aria-pressed=false]:hover{text-underline-offset:.2em;text-decoration:underline 1px}html.folder-book .lab-filter-box{visibility:hidden;background:var(--ink);transform-origin:0 0;width:100px;height:100%;transform:translateX(var(--bx,0px)) scaleX(calc(var(--bw,0) / 100));display:block;position:absolute;top:0;left:0}html.folder-book .lab-filters[data-ready] .lab-filter-box{transition:transform .52s var(--ease-out)}html.folder-book .lab-filters[data-sliding] .lab-filter-box{visibility:visible}html.folder-book .lab-rail{touch-action:pan-y;cursor:grab;position:absolute;bottom:16.9309%;left:0;right:0}html.folder-book .lab-rail[data-dragging]{cursor:grabbing;user-select:none}html.folder-book .lab-strip{gap:calc(30 * var(--u));width:max-content;min-width:100%;padding:0 calc(40 * var(--u));transform:translateX(var(--x,0px));will-change:transform;justify-content:center;overflow:visible}html.folder-book .lab-cover{width:var(--cover-w);gap:0}html.folder-book .lab-cover-year,.lab-frame{display:none}html.folder-book .lab-cover{position:relative}html.folder-book .lab-frame{--sw:1px;--sq:calc(7 * var(--u));--in:calc(3 * var(--u));pointer-events:none;display:block;position:absolute;inset:0}html.folder-book .lab-cover[data-selected] .lab-frame{visibility:hidden}html.folder-book .lab-stage-item>.lab-frame{z-index:1}html.folder-book .lab-edge,html.folder-book .lab-sq{background:var(--ink);display:block;position:absolute}html.folder-book .lab-edge--t,html.folder-book .lab-edge--b{width:100%;height:var(--sw);left:0}html.folder-book .lab-edge--l,html.folder-book .lab-edge--r{width:var(--sw);height:100%;top:0}html.folder-book .lab-edge--t{transform-origin:100%;top:0}html.folder-book .lab-edge--r{transform-origin:50% 100%;right:0}html.folder-book .lab-edge--b{transform-origin:0;bottom:0}html.folder-book .lab-edge--l{transform-origin:50% 0;left:0}html.folder-book .lab-sq{width:var(--sq);height:var(--sq);transition:transform .24s cubic-bezier(.2, 0, 0, 1) calc(var(--k) * 15ms)}html.folder-book .lab-sq--tl{--k:0;--to:translate(var(--in), var(--in));top:calc(var(--sq) / -2);left:calc(var(--sq) / -2)}html.folder-book .lab-sq--tr{--k:1;--to:translate(calc(-1 * var(--in)), var(--in));top:calc(var(--sq) / -2);right:calc(var(--sq) / -2)}html.folder-book .lab-sq--br{--k:2;--to:translate(calc(-1 * var(--in)), calc(-1 * var(--in)));bottom:calc(var(--sq) / -2);right:calc(var(--sq) / -2)}html.folder-book .lab-sq--bl{--k:3;--to:translate(var(--in), calc(-1 * var(--in)));bottom:calc(var(--sq) / -2);left:calc(var(--sq) / -2)}@media (hover:hover){html.folder-book .lab-rail:not([data-dragging]) .lab-cover:hover .lab-sq{transform:var(--to) scale(0);transition:transform .2s cubic-bezier(.4, 0, 1, 1) calc(var(--k) * 15ms)}}html.folder-book .lab-cover:has(.lab-cover-link:focus-visible) .lab-sq,html.folder-book .lab-cover[data-selected] .lab-sq{transform:var(--to) scale(0);transition:transform .2s cubic-bezier(.4, 0, 1, 1) calc(var(--k) * 15ms)}html.folder-book .lab-cover-link:focus-visible{outline:1px solid var(--ink);outline-offset:calc(6 * var(--u))}@media (prefers-reduced-motion:reduce){html.folder-book .lab-sq{transition:none!important}}html.folder-book .lab-cover-link{background:var(--paper-shade,#eee);overflow:hidden}html.folder-book .lab-cover-link img{width:100%;height:auto;max-height:calc(540 * var(--u));object-fit:cover;transition:transform .7s var(--ease-out);transform:scale(1)}html.folder-book .lab-cover-video{transition:opacity .3s ease, transform .7s var(--ease-out)}@media (hover:hover){html.folder-book .lab-rail:not([data-dragging]) .lab-cover-link:hover img,html.folder-book .lab-rail:not([data-dragging]) .lab-cover-link:hover .lab-cover-video{transition-duration:1.1s;transform:scale(1.05)}}html.folder-book .lab-rail[data-dragging] a{pointer-events:none}html.folder-book .lab-stage{z-index:3;font-size:calc(16 * var(--u));display:block;position:absolute;inset:0}html.folder-book .lab-stage[hidden]{display:none}html.folder-book .lab-stage-main,html.folder-book .lab-stage-side{pointer-events:none;align-items:flex-end;display:flex;position:absolute;bottom:17.3273%}html.folder-book .lab-stage-main{left:calc(50% - 290.5 * var(--u));width:calc(581 * var(--u));height:calc(581 * var(--u));justify-content:center}html.folder-book .lab-stage-side{left:calc(50% - (290.5 + 20 + 453) * var(--u));width:calc(453 * var(--u));height:calc(453 * var(--u));justify-content:flex-end}html.folder-book .lab-stage-item{transform-origin:0 0;pointer-events:auto;background:0 0;border:0;flex:none;margin:0;padding:0;display:block;position:relative;overflow:hidden}html.folder-book .lab-stage-pic{transform-origin:50%;display:block;position:absolute;inset:0}html.folder-book .lab-stage-pic :is(figure,img,video){object-fit:cover;width:100%;height:100%;margin:0;display:block}html.folder-book .lab-stage-side .lab-stage-item{cursor:pointer}html.folder-book .lab-stage-side .lab-stage-pic>*{transition:transform .7s var(--ease-out)}@media (hover:hover){html.folder-book .lab-stage-side .lab-stage-item:hover .lab-stage-pic>*{transition-duration:1.1s;transform:scale(1.05)}}html.folder-book .lab-stage[data-wide] .lab-stage-main{left:calc(50% - 520 * var(--u));width:calc(1040 * var(--u));height:calc(585 * var(--u))}html.folder-book .lab-stage[data-wide] .lab-stage-side{left:calc(50% - (520 + 20 + 240) * var(--u));width:calc(240 * var(--u));height:calc(240 * var(--u))}html.folder-book .lab-stage[data-wide] .lab-stage-text{left:calc(50% + (520 + 20) * var(--u));width:calc(280 * var(--u))}html.folder-book .lab-stage-close{width:calc(38 * var(--u));height:calc(38 * var(--u));border:1px solid var(--ink);background:var(--paper);min-width:24px;min-height:24px;color:var(--ink);cursor:pointer;place-items:center;padding:0;transition:background-color .2s,color .2s;display:grid;position:absolute;top:20px;right:20px}html.folder-book .lab-stage-close svg{width:calc(16 * var(--u));height:calc(16 * var(--u))}html.folder-book .lab-stage-close:hover{background:var(--ink);color:var(--paper)}html.folder-book .lab-stage-text{bottom:17.3273%;left:calc(50% + (290.5 + 20) * var(--u));width:calc(308 * var(--u));letter-spacing:.003em;line-height:normal;position:absolute}html.folder-book .lab-stage-dots{align-items:center;gap:calc(12 * var(--u));height:calc(16 * var(--u));min-height:16px;margin-top:calc(20 * var(--u));display:flex;position:absolute}html.folder-book .lab-stage-dots[hidden]{display:none}html.folder-book .lab-stage-segs{gap:calc(4 * var(--u));transform-origin:0 0;flex:1;align-self:stretch;display:flex}html.folder-book .lab-stage-seg{cursor:pointer;background:0 0;border:0;flex:1;min-width:0;margin:0;padding:0;position:relative}html.folder-book .lab-stage-seg>i{background:var(--ink);opacity:.22;height:1px;transition:opacity .32s var(--ease-out);position:absolute;top:50%;left:0;right:0}html.folder-book .lab-stage-seg[aria-current=true]>i{opacity:1}@media (hover:hover){html.folder-book .lab-stage-seg:hover:not([aria-current=true])>i{opacity:.55;transition-duration:.16s}}html.folder-book .lab-stage-seg:focus-visible{outline:1px solid var(--ink);outline-offset:2px}html.folder-book .lab-stage-count{font-variant-numeric:tabular-nums;transform-origin:0 0;flex:none;margin:0}html.folder-book .lab-stage-pile{pointer-events:none;transform-origin:0 0;position:absolute}html.folder-book .lab-stage-pile[hidden]{display:none}html.folder-book .lab-stage-pile>i{border:1px solid color-mix(in srgb, var(--ink) calc(var(--o,.4) * 100%), transparent);background:var(--paper);translate:calc(-9 * var(--u) * var(--k,1)) calc(-9 * var(--u) * var(--k,1));position:absolute;inset:0}html.folder-book .lab-stage-title{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}html.folder-book .lab-stage-live{margin-top:calc(14 * var(--u));color:inherit;text-underline-offset:.2em;text-decoration:underline 1px;display:inline-block}html.folder-book .book-tabs-list>.edge-tab{transform-origin:50% 0;transition:translate .62s var(--tabs-ease,cubic-bezier(.16, 1, .3, 1)) calc((var(--i,1) - 1) * 26ms), scale .62s var(--tabs-ease,cubic-bezier(.16, 1, .3, 1)) calc((var(--i,1) - 1) * 26ms)}html.folder-book .book-tabs-list>.edge-tab .edge-tab-name{transition:opacity .26s ease calc(.16s + (var(--i,1) - 1) * 26ms)}html.folder-book .book[data-tabs=folded] .book-tabs-list>.edge-tab[data-side=left]:not([data-goto=index]){translate:0 calc((164 + (var(--i) - 1) * 19.1) * var(--tab-k,1) * 1px - .142537 * var(--ty,0px));transition:translate .52s cubic-bezier(.7, 0, .2, 1) calc((var(--tabs-n,6) - 1 - var(--i)) * 22ms), scale .52s cubic-bezier(.7, 0, .2, 1) calc((var(--tabs-n,6) - 1 - var(--i)) * 22ms);scale:1 .142537}html.folder-book .book[data-tabs=folded] .book-tabs-list>.edge-tab[data-side=left]:not([data-goto=index]) .edge-tab-name{opacity:0;transition:opacity .14s}@media (prefers-reduced-motion:reduce){html.folder-book :is(.edge-tab,.edge-tab-name){transition:none!important}}html.folder-book .book[data-section=lab] .book-spine{opacity:0}@media (prefers-reduced-motion:reduce){html.folder-book :is(.lab-cover-link img,.lab-cover-video,.lab-filter-box,.lab-stage-side .lab-stage-pic>*,.lab-stage-seg>i){transition:none!important}}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .page--lab[data-side=right]{display:none}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .lab-page{padding-top:60px}portfolio-folder[data-layout=narrow] :is(.lab-title,.lab-line){display:none}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .lab-strip{flex-direction:column;align-items:stretch;gap:10px;padding:0;overflow:visible}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .lab-cover{gap:0}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .lab-cover-year{display:none}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .lab-cover-link img{width:100%;height:auto}html.folder-book .lab-stage-live[hidden]{display:none}html.folder-book .lab-stage-sound{margin-top:calc(14 * var(--u));color:inherit;font:inherit;text-underline-offset:.2em;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline 1px;display:block}html.folder-book .lab-stage-sound[hidden]{display:none}html.folder-book .lab-stage-sound+.lab-stage-live{margin-top:calc(6 * var(--u))}.lp{display:none}portfolio-folder[data-layout=narrow] .book-section[data-section=lab]:has(.lab-page[data-phone]){height:calc(100svh - var(--header-h));min-height:0;padding-bottom:0;overflow:clip}portfolio-folder[data-layout=narrow] .page--lab[data-side=left]:has(.lab-page[data-phone]){height:calc(100svh - var(--header-h) - var(--notch-gap) - 58px);padding-bottom:max(14px, env(safe-area-inset-bottom,0px))}portfolio-folder[data-layout=narrow] .page--lab:has(.lab-page[data-phone]) .page-body{flex:1;min-height:0}portfolio-folder[data-layout=narrow] .lab-page[data-phone]{flex:1;gap:0;min-height:0}portfolio-folder[data-layout=narrow] .lab-page[data-phone] :is(.lab-rail,.lab-stage){display:none}portfolio-folder[data-layout=narrow] .lab-page[data-phone] .lp{flex-direction:column;flex:1;min-height:0;margin-top:16px;display:flex}.lp-stage{touch-action:pan-y;-webkit-user-select:none;user-select:none;flex:1;justify-content:center;align-items:flex-end;min-height:0;display:flex;container-type:size}.lp-main{width:min(100cqw, 100cqh * var(--ar,1.6));aspect-ratio:var(--ar,1.6);background:var(--placeholder);-webkit-user-drag:none;-webkit-touch-callout:none;display:block}.lp-main:focus-visible,.lp-thumb:focus-visible,.lp-x:focus-visible{outline:1px solid var(--ink);outline-offset:3px}.lp-pic{width:100%;height:100%;position:relative;overflow:hidden}.lp-pic figure{width:100%;height:100%;margin:0}.lp-pic :is(img,video){object-fit:cover;-webkit-user-drag:none;pointer-events:none;width:100%;height:100%;display:block}.lp-pic .lab-cover-video{opacity:0;transition:opacity .3s;position:absolute;inset:0}.lp-pic[data-playing] .lab-cover-video{opacity:1}.lp-cap{margin-top:10px}.lp-cap p{margin:0}.lp-desc{letter-spacing:-.003em;text-overflow:ellipsis;white-space:nowrap;min-height:20px;font-size:18px;line-height:20px;overflow:hidden}.lp-link,.lp-count{color:var(--ink);font-size:16px;line-height:18px}.lp-link{text-overflow:ellipsis;white-space:nowrap;min-height:18px;overflow:hidden}.lp-live{color:var(--ink);text-underline-offset:3px;text-decoration:underline}.lp-live[hidden]{display:none}.lp .lp-count{font-variant-numeric:tabular-nums;flex:none;align-items:center;gap:10px;margin:24px 0 0;display:flex}.lp-hint{margin-left:auto;transition:opacity .3s}.lp[data-swiped] .lp-hint{opacity:0}.lp-dots{gap:3px;display:inline-flex}.lp-dots i{background:var(--ink);opacity:.2;width:4px;height:4px}.lp-dots i[data-on]{opacity:1}.lp-rail{margin:16px calc(-1 * var(--phone-x)) 0;padding:0 var(--phone-x) 10px;overscroll-behavior-x:contain;scrollbar-width:none;flex:none;align-items:flex-start;gap:10px;display:flex;bottom:0;overflow-x:auto}.lp-rail::-webkit-scrollbar{display:none}.lp-thumb{height:48px;aspect-ratio:var(--ar,1.6);background:var(--placeholder);color:inherit;cursor:pointer;opacity:.45;border:0;flex:none;padding:0;transition:opacity .2s;position:relative}.lp-thumb[hidden]{display:none}.lp-thumb[data-group]:not([data-first]){margin-left:-6px}.lp-thumb[data-group]{opacity:.8}.lp-thumb[data-group]:after{content:"";background:var(--ink);height:1px;position:absolute;bottom:-6px;left:0;right:-4px}.lp-thumb[data-group][data-last]:after{right:0}.lp-thumb[aria-current=true]{opacity:1}.lp-thumb[aria-current=true]:before{content:"";z-index:1;background:var(--ink);height:3px;position:absolute;bottom:-7px;left:0;right:0}html.lp-locked{overflow:hidden}.lp-view{z-index:29;inset:var(--header-h) 0 0;color:var(--ink);touch-action:none;position:fixed}.lp-view-bg{background:var(--paper);position:absolute;inset:0}.lp-view-in{height:100%;padding-bottom:env(safe-area-inset-bottom,0px);flex-direction:column;display:flex;position:relative;overflow:hidden}.lp-view-bar{flex:none;justify-content:space-between;align-items:center;height:44px;padding-left:14px;display:flex;position:relative}.lp-view-n{color:var(--ink);font-variant-numeric:tabular-nums;margin:0;font-size:16px;line-height:18px}.lp-grab{background:var(--ink);opacity:.2;width:36px;height:3px;margin-left:-18px;position:absolute;top:10px;left:50%}.lp-x{width:44px;height:44px;color:inherit;cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid}.lp-view-media{width:min(100% - 28px, 56svh * var(--ar,1.6));aspect-ratio:var(--ar,1.6);background:var(--placeholder);transform-origin:0 0;flex:none;align-self:center}.lp-view-text{flex-direction:column;gap:10px;padding:16px 14px 0;display:flex;overflow-y:auto}.lp-view-meta{color:var(--ink);justify-content:space-between;align-items:center;margin:0;font-size:16px;line-height:18px;display:flex}.lp-view-meta:not(:has(i)){display:none}.lp-view-desc{letter-spacing:-.003em;max-width:34em;margin:0;font-size:18px;line-height:20px}.lp-view-words{letter-spacing:-.003em;max-width:34em;margin:0;font-size:16px;line-height:18px}.lp-view-desc[hidden],.lp-view-words[hidden],.lp-view-live[hidden],.lp-view-sound[hidden]{display:none}.lp-view-sound{color:inherit;font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;align-self:flex-start;padding:0;font-size:16px;line-height:18px;text-decoration:underline}.lp-view-live{color:inherit;text-underline-offset:3px;align-self:flex-start;font-size:16px;line-height:18px;text-decoration:underline}@media (prefers-reduced-motion:reduce){.lp-thumb,.lp-pic .lab-cover-video{transition:none}}portfolio-folder{--s:1;--hair:calc(1px / var(--s));color:var(--ink);font-family:var(--sans);display:block;position:relative}html.js:not(.folder-ready) .folder-scene{visibility:hidden}@media (width>=1280px){html.js:not(.folder-ready) :is(.folder-runway,.site-foot){visibility:hidden}}html.js.folder-book{overscroll-behavior-x:none}html.js.folder-book .folder-runway{height:calc(100vh + var(--runway,100vh));position:relative}html.js.folder-book .folder-sticky{background:var(--desk);height:100vh;position:fixed;inset:0 0 auto;overflow:clip}.folder-stage{perspective-origin:50%;pointer-events:none;position:absolute;inset:0;overflow:clip}.folder-lens{perspective:var(--perspective,1800px);perspective-origin:inherit;position:absolute;inset:0}.folder-frame{opacity:0;color:var(--ink);pointer-events:none;position:absolute;inset:0}.folder-frame i{transform-origin:0 0;background:currentColor;position:absolute;top:0;left:0}.folder-frame .h{width:1000px;height:var(--frame-w,1px)}.folder-frame .v{width:var(--frame-w,1px);height:1000px}.folder-hint{color:var(--muted);position:absolute;bottom:22px;left:50%;transform:translate(-50%)}.folder-scene,.folder-stack,.folder-nav,.folder-list,.folder{width:0;height:0;transform-style:preserve-3d;margin:0;padding:0;position:absolute;top:0;left:0}.folder-scene{top:50%;left:50%}.folder-list{list-style:none}.file-leaf{width:0;height:0;transform-style:preserve-3d;position:absolute;top:0;left:0}portfolio-folder[data-hit] .folder-sticky{cursor:pointer}.file-board{left:calc(var(--fw) / -2);top:calc(-1 * var(--fh));width:var(--fw);height:var(--fh);background:var(--swatch,var(--paper-inverse));pointer-events:none;position:absolute}.file-leaf{--edge:var(--swatch,var(--paper-inverse))}.board-edge,.tab-edge{background:var(--edge);pointer-events:none;position:absolute}.board-edge{top:calc(-1 * var(--fh))}.board-edge--top{left:calc(var(--fw) / -2);width:var(--fw);height:var(--thick);transform-origin:50% 0;transform:rotateX(-90deg)}.board-edge--left,.board-edge--right{width:var(--thick);height:var(--fh);transform-origin:0;transform:rotateY(90deg)}.board-edge--left{left:calc(var(--fw) / -2)}.board-edge--right{left:calc(var(--fw) / 2)}portfolio-folder[data-edges=off] :is(.board-edge,.tab-edge){visibility:hidden}.cover-front{--swatch:var(--paper-inverse);backface-visibility:hidden}.file-page{left:calc(var(--fh) / -2);top:calc(var(--fh) / -2 - var(--fw) / 2);width:var(--fh);height:var(--fw);background:var(--paper);backface-visibility:hidden;pointer-events:none;position:absolute}.file-page>.page{width:100%;height:100%;display:grid;position:relative;container-type:size}.file-page .spread-foot{display:none}.index-face{transform:rotate(-90deg)}.folder-sheet{--h:calc(var(--fh) * var(--sheet-h));left:calc(var(--fw) * (var(--sheet-inset) - .5));width:calc(var(--fw) * (1 - 2 * var(--sheet-inset)));top:calc(-1 * var(--h));height:var(--h);padding:calc(var(--fh) * .018);background:var(--paper);pointer-events:none;display:grid;position:absolute}.folder-sheet-pic{background:var(--placeholder);min-height:0;overflow:hidden}.folder-sheet-pic img{object-fit:cover;width:100%;height:100%;display:block}.folder-sheet-pic--spread{background:0 0}.folder-sheet-pic--spread img{object-fit:contain;object-position:50% 0%}.folder,.file-cover{--tab-y:calc(-1 * var(--fh) - var(--ftab-d) + var(--hair))}.folder{--tab-x:calc(var(--fw) / -2 + var(--etab-i) + (var(--slot) - 1) * var(--etab-h));--tab-w:var(--etab-h)}.file-cover{--tab-x:calc(var(--fw) / -2);--tab-w:var(--etab-i)}.folder-tabset{top:var(--tab-y);left:var(--tab-x);width:var(--tab-w);height:var(--ftab-d);transform-origin:0 100%;transform-style:preserve-3d;pointer-events:none;position:absolute}.folder-tab{background:var(--swatch);color:var(--swatch-ink);white-space:nowrap;pointer-events:auto;outline:none;justify-content:center;align-items:center;padding:0 12px;text-decoration:none;display:flex;position:absolute;inset:0}.folder-tab:before{content:"";background:var(--swatch);height:3px;position:absolute;top:100%;left:0;right:0}.folder-tab:focus-visible{box-shadow:inset 0 0 0 2.5px var(--focus)}.tab-edge--top{width:100%;height:var(--thick);transform-origin:50% 0;top:0;left:0;transform:rotateX(-90deg)}.tab-edge--left,.tab-edge--right{width:var(--thick);transform-origin:0;height:100%;top:0;transform:rotateY(90deg)}.tab-edge--left{left:0}.tab-edge--right{left:100%}.folder-tab-name{transform:scaleX(var(--unstretch,1));font-size:14px;line-height:1;display:block;position:relative}.file-cover :is(.folder-tab,.folder-tab-name){transform-style:preserve-3d}.file-cover .tab-face,.file-cover .folder-tab-name:after{backface-visibility:hidden;display:block}.file-cover .folder-tab-name:after{content:attr(data-label);position:absolute;inset:0;transform:rotateY(180deg)}portfolio-folder:not([data-open="0"]) .folder-stage *{pointer-events:none!important}.folder-cursor{z-index:35;pointer-events:none;opacity:0;margin:0;transition:opacity .16s;position:fixed;top:0;left:0}.folder-cursor span{background:var(--paper);color:var(--ink);box-shadow:inset 0 0 0 1px var(--hairline);font:400 15px/1 var(--sans);white-space:nowrap;padding:5px 9px 6px;display:block}portfolio-folder[data-cursor] .folder-cursor{opacity:1}.folder-reveal{z-index:38;pointer-events:none;position:fixed;inset:0;overflow:clip}.folder-reveal[hidden]{display:none}.folder-reveal[data-playing]{pointer-events:auto}.folder-reveal-stripe{top:0;bottom:0;left:calc(-1 * var(--pad,0px));width:calc(100% + 2 * var(--pad,0px));will-change:transform;position:absolute;transform:translate(-100%)}.folder-debug{z-index:40;overscroll-behavior:contain;background:var(--paper);width:25rem;max-height:calc(100vh - 140px);box-shadow:0 0 0 1px var(--hairline);color:var(--ink);font:11px/1.45 var(--sans);pointer-events:auto;padding:8px 10px;position:fixed;top:56px;right:12px;overflow:auto}.folder-debug pre{font:inherit;margin:0}.folder-tune summary{cursor:pointer;margin-top:6px}.folder-tune fieldset{border:1px solid var(--hairline);margin:8px 0 0;padding:4px 6px 6px}.folder-tune legend{padding:0 4px;font-weight:500}.folder-tune label{grid-template-columns:10rem 1fr 3rem;align-items:center;gap:6px;display:grid}.folder-tune label:has(input[type=checkbox]){grid-template-columns:auto 1fr}.folder-tune-bar{gap:16px;margin-top:6px;display:flex}.folder-tune button{font:inherit;margin-top:6px}.folder-tune .folder-tune-replay{margin:0 0 0 4px;padding:0 6px}.folder-camera-presets{flex-wrap:wrap;gap:4px;display:flex}.folder-camera-pad{border:1px dashed var(--hairline);height:84px;color:var(--muted);cursor:grab;touch-action:none;user-select:none;place-items:center;margin:8px 0 4px;display:grid}.folder-camera-pad:active{cursor:grabbing}.folder-camera-hint{color:var(--muted);margin-top:4px}.folder-color-row{grid-template-columns:1fr 28px 28px 3.5rem;align-items:center;gap:6px;margin-top:4px;display:grid}.folder-color-row input[type=color]{border:1px solid var(--hairline);cursor:pointer;background:0 0;width:28px;height:20px;padding:0}.folder-color-row output{text-align:right}.folder-color-fail{color:var(--error)}.folder-timeline{cursor:ew-resize;touch-action:none;user-select:none;margin:8px 0 4px 2.2rem;padding-top:14px;position:relative}.folder-timeline-ruler{border-bottom:1px solid var(--hairline);height:12px;position:absolute;inset:0 0 auto}.folder-timeline-ruler span{border-left:1px solid var(--hairline);height:4px;font-size:9px;line-height:1;position:absolute;bottom:0}.folder-timeline-ruler span:not(:empty){height:12px;color:var(--muted);padding-left:2px}.folder-timeline-row{height:12px;margin-top:3px;position:relative}.folder-timeline-row:before{content:attr(data-label);color:var(--muted);font-size:10px;line-height:12px;position:absolute;right:calc(100% + 6px)}.folder-timeline-row i{background:var(--c,var(--ink));position:absolute;top:0;bottom:0}.folder-timeline-row .is-in,.folder-timeline-row .is-out{opacity:.55}.folder-timeline-row .is-in{clip-path:polygon(0 100%,100% 0,100% 100%)}.folder-timeline-row .is-out{clip-path:polygon(0 0,100% 100%,0 100%)}.folder-timeline-row .is-file{background:repeating-linear-gradient(135deg, var(--ink) 0 2px, transparent 2px 5px);box-shadow:inset 0 0 0 1px var(--ink)}.folder-timeline-head{pointer-events:none;background:#e5332a;width:1px;margin-left:-.5px;position:absolute;top:0;bottom:0}.folder-timeline-scrub{width:100%}.folder-timeline-readout{font-variant-numeric:tabular-nums;margin:0}.folder-tune .folder-export{width:100%;margin-top:10px;padding:6px}html:not(.js) .folder-stage,portfolio-folder[data-layout=narrow] .folder-stage{display:none}@media (width<=1279.98px){portfolio-folder:not([data-layout]) .folder-stage{display:none}}.site-foot{padding:32px var(--phone-x,14px) 24px;background:var(--paper);color:var(--ink);font:300 14px / 1.2 var(--sans);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:8px 24px;display:flex;position:relative}.site-foot-links{flex-wrap:wrap;gap:8px 24px;display:flex}.site-foot a{color:inherit;text-decoration:none}.site-foot a:hover,.site-foot a:focus-visible{text-underline-offset:.18em;text-decoration:underline}html.js:not(.folder-book) .site-foot{display:none}html.js.folder-book .site-foot{height:10vh;padding:0 calc(var(--book-left,var(--margin,20px)) + 30px) 30px;font-size:16px}.page{--u:1px;background:var(--paper);color:var(--ink);font-family:var(--sans);position:relative}.page--about{--reel-expand-ink:var(--ink);background:var(--paper-inverse);color:var(--ink-inverse)}.page-body{min-height:0}.page :is(p,h2,h3,ol,ul){margin:0}.page-title{font-size:calc(36 * var(--u));letter-spacing:.003em;font-weight:400;line-height:1.15}.page-foot{align-items:baseline;gap:calc(13 * var(--u));font-size:calc(20 * var(--u));line-height:1.2;display:flex}.page[data-section=index] .page-foot{gap:calc(10 * var(--u));font-size:calc(16 * var(--u))}.page[data-side=left] .page-foot{justify-content:flex-start}.page[data-side=right] .page-foot{flex-direction:row-reverse;justify-content:flex-start}.page-step{color:inherit;font:inherit;text-underline-offset:.18em;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline 1px}.page-step:hover{text-decoration-thickness:2px}.pm{background:var(--placeholder);min-height:0;margin:0;position:relative;overflow:hidden}.pm img,.pm video{object-fit:var(--fit,cover);object-position:var(--pos,50% 50%);width:100%;height:100%;display:block}.pm[style*=--fit\:contain]{background:0 0}.pm figcaption{color:var(--muted);font-size:calc(14 * var(--u));position:absolute;bottom:.8em;left:.8em}.spread :is(p){margin:0}.blk{min-width:0;position:relative}.blk-text{letter-spacing:.003em;font-size:16px;line-height:1.25}.blk-text p+p{margin-top:1.25em}.blk-head{margin:0;line-height:1}.blk-head--link{letter-spacing:-.003em;font-size:16px}.blk-head--link a,.blk-todo{color:inherit;text-underline-position:from-font;text-decoration:underline 1px}.blk-head--link a:hover{text-decoration-thickness:2px}.blk-todo{color:var(--muted);text-decoration-style:dashed}.blk-expand{width:28px;height:28px;color:var(--ink);display:block}.blk-expand svg{width:100%;height:100%;display:block}.blk-expand--off{opacity:.35}a.blk-expand:hover{background:var(--ink);color:var(--paper)}.blk--bg .blk-box{background:var(--blk-bg)}.pm.pm-placeholder{outline:1px solid var(--hairline);outline-offset:-1px;background:var(--placeholder);width:100%;height:100%}.pm-placeholder figcaption{color:var(--ink);letter-spacing:.01em;font-size:12px}html.folder-book .pm-placeholder figcaption{font-size:clamp(10px, calc(14 * var(--u)), 14px)}.spread-step{color:inherit;font:inherit;white-space:nowrap;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:none}.spread-step:hover{text-underline-offset:.18em;text-decoration:underline 1px}html.folder-book .page[data-side=right] .page-foot.spread-foot{top:calc(100% + 12px);bottom:auto;left:calc(34 * var(--u) - var(--page-w));right:calc(34 * var(--u));letter-spacing:-.003em;flex-direction:row;justify-content:space-between;font-size:16px;line-height:16px;position:absolute}html.folder-book .spread-step--next{margin-left:auto}.spread-step-in{text-decoration:inherit;text-decoration-thickness:inherit;display:inline-block}html.folder-book .page-foot.spread-foot--out{pointer-events:none}html.folder-book .spread-step--lab{position:relative}html.folder-book .spread-step--lab .spread-step-arrow{transform:translateX(calc(var(--pull,0) * 10px));transition:transform .26s cubic-bezier(.22,1,.36,1);display:inline-block}html.folder-book .spread-step--lab:after{content:"";height:1px;transform:scaleX(var(--pull,0));transform-origin:0;background:currentColor;transition:transform .26s cubic-bezier(.22,1,.36,1);position:absolute;bottom:-3px;left:0;right:0}html.folder-book .spread-step--lab:hover .spread-step-arrow{transform:translateX(max(4px, calc(var(--pull,0) * 10px)))}.pm.pm-proto{align-items:center;gap:calc(12 * var(--u));background:0 0;flex-direction:column;display:flex;overflow:visible}.pm-proto-phone{aspect-ratio:671/1381;flex:1;max-width:100%;min-height:0;position:relative}.pm-proto-screen{background:#f5f5f5;border-radius:16%/7.4%;width:90.91%;height:96.23%;position:absolute;top:1.88%;left:4.62%;overflow:hidden;container-type:size}.pm .pm-proto-frame{pointer-events:none;object-fit:contain;position:absolute;inset:0}.pm-proto-screen>figure{height:100%;margin:0}.pm-proto-screen iframe{transform:scale(var(--proto-k,1));transform-origin:0 0;background:#fff;border:0;position:absolute;inset:0 auto auto 0}.pm-proto-run{z-index:1;color:#000;white-space:nowrap;border:1px solid #000;padding:2.4cqw 3.6cqw;font-size:5.4cqw;line-height:1.2;text-decoration:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.pm-proto-run:hover{color:#fff;background:#000}.pm-proto[data-running] .pm-proto-run{display:none}.about-intro{gap:calc(55 * var(--u));letter-spacing:-.003em;flex-direction:column;font-size:16px;line-height:1.2;display:flex}.about-bio{max-width:min(100%, calc(425 * var(--u)))}.about-bio p+p{margin-top:1.2em}.about-contact{gap:calc(9 * var(--u));justify-items:start;display:grid}.about-email{color:inherit;overflow-wrap:anywhere;text-decoration:none}.about-email:hover{text-underline-offset:.15em;text-decoration:underline 1px}.about-links{gap:calc(10 * var(--u));flex-wrap:wrap;padding:0;list-style:none;display:flex}.about-links :is(a,span){color:inherit;text-underline-offset:.15em;text-decoration:underline 1px}.about-link--todo{opacity:.5;text-decoration-style:dashed}.about-reel{gap:calc(10 * var(--u));letter-spacing:-.003em;flex-direction:column;min-height:0;font-size:16px;display:flex}.about-reel-head{justify-content:space-between;align-items:end;display:flex}.reel-expand{width:calc(26 * var(--u));height:calc(26 * var(--u));color:var(--paper);display:block}.reel-expand svg{width:100%;height:100%;display:block}.reel-expand:hover{opacity:.8}.about-reel-film{background:var(--paper-inverse)}.contents-list{gap:calc(80 * var(--u));flex-direction:column;padding:0;list-style:none;display:flex}.contents-row{padding:calc(10 * var(--u)) 0;border-bottom:1px solid var(--hairline);color:inherit;justify-content:space-between;align-items:end;gap:1em;line-height:1.2;text-decoration:none;display:flex}.contents-text{flex-direction:column;display:flex}.contents-name{letter-spacing:.003em;font-size:16px}.contents-line,.contents-page{letter-spacing:-.004em;font-size:16px}.contents-row:hover .contents-name{text-underline-offset:.18em;text-decoration:underline 1px}html.folder-book .book{pointer-events:none;position:absolute;inset:0}html.folder-book .book[data-open="1"]{pointer-events:auto}html.folder-book :is(.m-index,.m-notch,.about-title){display:none}html.folder-book .book-pages,html.folder-book .book-tabs,html.folder-book .book-turn{left:var(--book-left);top:var(--book-top);width:var(--book-w);height:var(--book-h);position:absolute}html.folder-book .book-pages{z-index:1;touch-action:pan-y}html.folder-book .book[data-open="1"] .book-pages{cursor:grab}html.folder-book .book-pages img{-webkit-user-drag:none}html.folder-book .book[data-edge=left] .book-pages,html.folder-book .book[data-edge=right] .book-pages{cursor:pointer}html.folder-book .book[data-dragging] .book-pages{cursor:grabbing;user-select:none}html.folder-book .book-section{display:contents}html.folder-book .book-pages .page{width:var(--page-w);height:var(--book-h);display:none;position:absolute;top:0;container-type:size}html.folder-book .book-pages .page[data-side=left]{left:0}html.folder-book .book-pages .page[data-side=right]{left:var(--page-w)}html.folder-book .book-pages .page[data-vis]{display:grid}html.folder-book .book-pages .page[data-vis=pre]{visibility:hidden}html.folder-book .page{--u:min(calc(100cqw / 859), calc(100cqh / 883));grid-template-rows:minmax(0,1fr)}html.folder-book .page-body{padding:calc(40 * var(--u));flex-direction:column;display:flex}html.folder-book .page-foot{bottom:calc(16 * var(--u));position:absolute}html.folder-book .page[data-side=left] .page-foot{left:calc(16 * var(--u))}html.folder-book .page[data-side=right] .page-foot{right:calc(16 * var(--u))}html.folder-book .page--about .page-body{gap:calc(73 * var(--u))}html.folder-book .about-reel{flex:1;justify-content:flex-end}html.folder-book .about-reel-film{aspect-ratio:16/9;flex:0 auto;width:100%}html.folder-book .page--contents .page-body{gap:calc(22 * var(--u))}html.folder-book .page--spread{--ux:calc(100cqw / 857);--uy:calc(100cqh / 883)}html.folder-book .page--spread[data-side=right]{--ux:calc(100cqw / 858)}html.folder-book .page--spread .page-body{padding:0;display:block;position:relative}html.folder-book .spread{position:absolute;inset:0}html.folder-book .blk{left:calc(var(--x) * var(--ux));top:calc(var(--y) * var(--uy));width:calc(var(--w) * var(--ux));height:calc(var(--h) * var(--uy));position:absolute}html.folder-book .blk-box{position:absolute;inset:0}html.folder-book .blk .pm{width:100%;height:100%}html.folder-book .blk-head{bottom:calc(100% + 10 * var(--uy));position:absolute}html.folder-book .blk-head--link{left:0}html.folder-book .blk-head--expand{right:0}html.folder-book .blk-expand{width:calc(28 * var(--u));height:calc(28 * var(--u))}html.folder-book .blk-text{letter-spacing:-.003em;font-size:16px;line-height:1.25}html.folder-book .blk--bottom .blk-box{padding-bottom:calc(14 * var(--uy));inset:auto 0 0}html.folder-book .blk-head--link{font-size:calc(16 * var(--u))}html.folder-book .blk--bg .pm-proto{padding:calc(24 * var(--uy)) 0;box-sizing:border-box}html.folder-book .book-spine{left:calc(var(--book-left) + var(--page-w));top:var(--book-top);width:1px;height:var(--book-h);background:var(--ink);z-index:2;pointer-events:none;position:absolute;transform:translate(-.5px)}.book-edge{display:none}.book-controls{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}html.folder-book .book-tabs{z-index:3;pointer-events:none}.book-tabs-list{margin:0;padding:0;list-style:none}.edge-tab{width:var(--etab-d);height:calc(134px * var(--tab-k,1));box-sizing:border-box;transform:translateY(var(--ty,0px));background:var(--swatch);color:var(--swatch-ink);font-size:clamp(13px, calc(18px * var(--tab-k,1)), 20px);letter-spacing:-.003em;pointer-events:auto;position:absolute;top:0}.edge-tab-link{width:100%;height:100%;color:inherit;flex-direction:column;justify-content:center;align-items:center;text-decoration:none;display:flex;overflow:hidden}.edge-tab-name{writing-mode:vertical-rl;white-space:nowrap;line-height:1;position:relative}.edge-tab[data-side=right]{opacity:var(--tabs-right,1);left:100%}.edge-tab[data-side=left]{left:calc(-1 * var(--etab-d));opacity:var(--tabs-left,1)}.edge-tab[data-side=left] .edge-tab-name{transform:rotate(180deg)}.edge-tab[data-riding]{visibility:hidden}.edge-tab-link:focus-visible{outline-offset:2px}html.folder-book .edge-tab-link[aria-current=page] .edge-tab-name{text-underline-offset:.2em;text-decoration:underline 1px}html.folder-book .book-turn{z-index:4;perspective:var(--book-perspective,2600px);perspective-origin:50%;pointer-events:none}.leaf,.leaf-link{width:0;height:0;transform-style:preserve-3d;position:absolute;top:0;left:0}.leaf{left:var(--page-w)}.leaf-face{background:var(--paper);backface-visibility:hidden;position:absolute;top:0;left:0;overflow:clip}.leaf-face--back{transform:rotateY(180deg)}.leaf-face .pm-proto-phone,.leaf-face .pm-proto-phone *{-webkit-backface-visibility:hidden;backface-visibility:hidden}.leaf-page{position:absolute;top:0}.leaf-page>.page{width:100%;height:100%;display:grid;position:relative;container-type:size}.leaf-shade{background:var(--ink);opacity:0;pointer-events:none;position:absolute;inset:0}.leaf-tab{backface-visibility:hidden;list-style:none;transition:none;left:var(--strip-w)!important;opacity:1!important}.leaf-tab--front{transform:translateY(var(--ty,0px))}.leaf-tab--back{transform:rotateY(180deg) translateY(var(--ty,0px))}:is(html:not(.js),portfolio-folder[data-layout=narrow]) .book-pages,:is(html:not(.js),portfolio-folder[data-layout=narrow]) .book{position:static}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]){--phone-x:14px;--notch-gap:35px;padding-top:var(--header-h);background:var(--paper)}@media (width<=1279.98px){html.js portfolio-folder:not([data-layout]){padding-top:var(--header-h)}}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) :is(.book-tabs,.book-spine,.book-turn,.book-controls,.book-edge),:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .book-section:not([data-current]){display:none}portfolio-folder[data-layout=narrow][data-column=all][data-view=index] .book-section[data-section=index],portfolio-folder[data-layout=narrow][data-column=all][data-view=project] .book-section:not([data-section=index]){display:block}portfolio-folder[data-layout=narrow][data-column=all][data-view=index] .book-section:not([data-section=index]),portfolio-folder[data-layout=narrow][data-column=all][data-view=project] .book-section[data-section=index]{display:none}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .book-section:not([data-section=index]){padding-bottom:var(--notch-gap)}portfolio-folder[data-layout=narrow] .book-section:last-child{min-height:calc(100svh - var(--header-h))}html:not(.js) .book-pages,html:not(.js) .m-index{max-width:760px;margin-inline:auto}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .page{padding:0 var(--phone-x) 10px;letter-spacing:-.003em;flex-direction:column;gap:10px;font-size:16px;line-height:18px;display:flex}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .page-body{flex-direction:column;gap:10px;display:flex}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .page--notes,:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .page--contents,:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .page-step:not(a),portfolio-folder[data-layout=narrow] .page-foot{display:none}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .page-foot{justify-content:space-between;padding-top:16px}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .pm :is(img,video){height:auto}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .pm-proto-phone{flex:none;width:min(100%,320px)}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .pm-proto-phone :is(img,video){height:100%}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .page-title{font-size:36px;line-height:54px}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .spread{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;display:grid}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .blk{grid-column:1/-1}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .blk--portrait{grid-column:span 3}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .blk--third{grid-column:span 2}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .blk--text{margin-top:20px;padding-block:14px}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .blk-text{max-width:350px;font-size:16px;line-height:20px}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .blk--media .blk-box{aspect-ratio:var(--pa);position:relative}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .blk .pm{width:100%;height:100%}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .blk .pm :is(img,video){height:100%}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .blk-head{align-items:center;min-height:44px;display:flex}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .blk-head--expand{justify-content:flex-end}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .blk-head--link a,:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .blk-todo{align-items:center;min-height:44px;display:inline-flex}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .blk-expand{place-items:center;width:44px;height:44px;margin-right:-8px;display:grid}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .blk-expand svg{width:28px;height:28px}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) a.blk-expand:hover{color:var(--ink);background:0 0}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .blk--proto .blk-box{aspect-ratio:auto;padding:24px 0}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .blk--proto .pm-proto-phone{width:min(100%,300px)}html:not(.js) .spread-foot{justify-content:space-between;padding-top:6px;display:flex}html:not(.js) .spread-step[data-step]{display:none}html:not(.js) .spread-step{text-underline-offset:.18em;align-items:center;min-height:44px;text-decoration:underline 1px;display:inline-flex}.about-title{display:none}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .page--about{min-height:50svh;padding:30px var(--phone-x);gap:31px;line-height:16px}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .page--about .page-body{gap:31px}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .about-title{margin-bottom:0;display:block}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .about-intro{gap:10px;font-size:16px;line-height:16px}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .about-bio p+p{margin-top:.5em}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .about-contact{gap:5px}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .about-reel{gap:5px;font-size:16px;line-height:16px;position:relative}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .reel-expand{z-index:1;width:26px;height:26px;position:absolute;top:29px;right:7px}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .about-reel-film{aspect-ratio:9/16;border:0}.m-index{display:none}:is(html:not(.js) portfolio-folder[data-active=index],portfolio-folder[data-layout=narrow][data-view=index]) .m-index{box-sizing:border-box;padding:30px var(--phone-x) 88px;display:block}.m-index-head{align-items:flex-start;gap:12px;margin:0 0 10px;display:flex}.m-index-title{letter-spacing:.003em;margin-top:20px;margin-bottom:10px;font-size:36px;line-height:54px;display:block}.m-index-hint{letter-spacing:.003em;font-size:12px;line-height:18px}.m-index-rows{flex-direction:column;align-items:flex-end;margin:0;padding:0;list-style:none;display:flex}.m-row-slot{width:var(--w,100%);max-width:100%}.m-row{background:var(--swatch);height:42px;color:var(--swatch-ink);white-space:nowrap;-webkit-tap-highlight-color:transparent;justify-content:space-between;align-items:flex-end;gap:12px;padding:5.5px 7px 5.5px 5px;text-decoration:none;display:flex}.m-row-name{letter-spacing:-.003em;font-size:18px;line-height:20px;display:block}.m-row>.m-mask:last-child{min-width:0}.m-row-line{letter-spacing:-.003em;gap:.28em;font-size:14px;line-height:18px;display:flex}.m-row-line .arrow{align-self:center}.m-row-text{text-overflow:ellipsis;min-width:0;overflow:hidden}.m-row:focus-visible{outline-offset:-4px}.m-mask{vertical-align:bottom;display:inline-block;overflow:hidden}.m-notch{display:none}:is(html:not(.js) portfolio-folder,portfolio-folder[data-layout=narrow]) .m-notch{top:calc(var(--header-h) + var(--notch-gap));z-index:5;height:42px;margin:var(--notch-gap) var(--phone-x) 16px;transform-origin:50% 0;pointer-events:none;justify-content:flex-end;display:flex;position:sticky}.m-notch-name{letter-spacing:-.003em;white-space:nowrap;pointer-events:auto;background:var(--swatch);min-width:0;color:var(--swatch-ink);flex:0 201px;align-items:flex-end;gap:.28em;margin:0;padding:5.5px 10px 5.5px 5px;font-size:18px;line-height:20px;display:flex}.mviewer{background:var(--paper-inverse);width:100%;max-width:none;height:100%;max-height:none;color:var(--ink-inverse);font-family:var(--sans);border:0;margin:0;padding:0;position:fixed;inset:0;overflow:hidden}.mviewer::backdrop{background:0 0}html:has(.mviewer[open]){overflow:hidden}.mviewer-stage{position:absolute;inset:72px 40px 40px}.mviewer-stage :is(video,img){object-fit:contain;width:100%;height:100%;display:block}.mviewer-close{border:1px solid var(--ink-inverse);background:var(--paper-inverse);min-width:44px;min-height:44px;color:var(--ink-inverse);font:400 15px / 1 var(--sans);cursor:pointer;align-items:center;gap:.35em;padding:0 12px;display:inline-flex;position:absolute;top:14px;right:14px}.mviewer-close:hover{background:var(--ink-inverse);color:var(--paper-inverse)}@media (width<=1279.98px){.mviewer-stage{inset:64px 0 16px}}.m-ghost{z-index:26;transform-origin:0 0;background:var(--swatch);pointer-events:none;position:fixed}.m-ghost-label{z-index:27;white-space:nowrap;pointer-events:none;margin:0;position:fixed}portfolio-folder.rv-on .rv:not(.rv-in){opacity:0}
