:root{--font-editorial:"redaction-35", Georgia, serif;--font-work-display:"hardcover-vf", Georgia, serif;--font-work-body:"General Sans", "Helvetica Neue", Arial, sans-serif;--page-background:#f7f7f7;--case-study-background:#fff;--artwork-shadow:0 2.3px 11.4px #8080801a;--ease-out:cubic-bezier(.23, 1, .32, 1);--ease-in-out:cubic-bezier(.77, 0, .175, 1);--ease-drawer:cubic-bezier(.32, .72, 0, 1);--reveal-duration:.4s;--reveal-ease:cubic-bezier(.2, 0, 0, 1);--page-width:1542px;color:#000;background:var(--page-background);font-family:var(--font-editorial);font-synthesis:none;text-rendering:optimizelegibility}*{box-sizing:border-box}html{background:var(--page-background);scroll-behavior:smooth;scrollbar-width:none;min-width:320px;overflow-x:clip}body{background:var(--page-background);color:#000;opacity:1;min-width:320px;min-height:100vh;transition:opacity var(--reveal-duration) var(--reveal-ease);margin:0;overflow-x:clip}body:has(.freeform-shell){transition:none}@starting-style{body:not(:has(.freeform-shell)){opacity:0}}@media (prefers-reduced-motion:no-preference){body:has(.freeform-shell){--reveal-duration:.3s}}@media (prefers-reduced-motion:reduce){:root{--reveal-duration:.2s;--reveal-ease:ease}}button,a{font:inherit}a{color:inherit;text-underline-offset:.18em;text-decoration-thickness:1px}::selection{color:#271812;background:#e6da6c9e}:focus-visible{outline-color:#271812b8}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.site-shell{isolation:isolate;position:relative}:root{--cursor-dot:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Ccircle cx='8' cy='8' r='7.5' fill='black'/%3E%3C/svg%3E") 8 8, none}html,html *{cursor:var(--cursor-dot)!important}.liquid-cursor-layer{z-index:1000;pointer-events:none;-webkit-user-select:none;user-select:none;position:fixed;inset:0}.liquid-cursor{pointer-events:none;-webkit-user-select:none;user-select:none;will-change:transform;height:80px;position:fixed;inset:0 auto auto 0;transform:translate(-500px,-500px)}.liquid-cursor-trail{opacity:0;pointer-events:none;will-change:transform, opacity;background:#000;border-radius:50%;width:15px;height:15px;position:absolute;inset:0 auto auto 0}.liquid-cursor-surface{color:#fff;background:#000;position:absolute;inset:0}.liquid-cursor-sheen{background:radial-gradient(at 35% 15%,#fff3,#0000 65%);position:absolute;inset:0}.liquid-cursor-label{justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.liquid-cursor-content{white-space:nowrap;font:500 13px/1 var(--font-work-body);align-items:center;gap:4px;padding-inline:12px;display:flex}.liquid-cursor-content img{width:18px;height:18px;display:block}.liquid-cursor-content[data-unlinked]{opacity:.75}@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){body[data-liquid-cursor] #work,body[data-liquid-cursor] #work *,body[data-liquid-cursor] [data-cursor-scope],body[data-liquid-cursor] [data-cursor-scope] *{cursor:none!important}}@media (prefers-reduced-motion:reduce),(hover:none),(pointer:coarse){.liquid-cursor-layer{display:none}}@media (prefers-contrast:more),(prefers-reduced-transparency:reduce){.liquid-cursor-sheen{display:none}}html[data-project-transition]{--project-slide-duration:.4s;--project-slide-ease:var(--ease-drawer);--portfolio-depth:160px;--portfolio-blur:8px;scroll-behavior:auto}html[data-project-transition=mobile]{--project-slide-duration:.32s;--portfolio-depth:80px;--portfolio-blur:4px}html[data-project-transition][data-project-transition-direction=back]{--project-slide-duration:.22s;--project-slide-ease:var(--ease-out)}html[data-project-transition=mobile][data-project-transition-direction=back]{--project-slide-duration:.18s}html[data-project-transition] .liquid-cursor-layer{visibility:hidden}html[data-project-transition] body[data-liquid-cursor] #work,html[data-project-transition] body[data-liquid-cursor] #work *{cursor:var(--cursor-dot)!important}html:is([data-project-transition=slide],[data-project-transition=mobile]) .case-study-left-panel{view-transition-name:project-left}html:is([data-project-transition=slide],[data-project-transition=mobile]) :is(.case-study-article,.gallery-content){view-transition-name:project-right}html[data-project-transition]::view-transition-group(root){animation:none}html[data-project-transition]::view-transition-group(project-left){animation:none}html[data-project-transition]::view-transition-group(project-right){animation:none}html[data-project-transition]::view-transition-group(root){z-index:0}html[data-project-transition]::view-transition-group(project-left){z-index:1}html[data-project-transition]::view-transition-group(project-right){z-index:1}html[data-project-transition]::view-transition-image-pair(root){isolation:isolate}html[data-project-transition]::view-transition-image-pair(project-left){isolation:isolate}html[data-project-transition]::view-transition-image-pair(project-right){isolation:isolate}html[data-project-transition]::view-transition-old(root){mix-blend-mode:normal;animation:none}html[data-project-transition]::view-transition-new(root){mix-blend-mode:normal;animation:none}html[data-project-transition]::view-transition-old(project-left){mix-blend-mode:normal;animation:none}html[data-project-transition]::view-transition-new(project-left){mix-blend-mode:normal;animation:none}html[data-project-transition]::view-transition-old(project-right){mix-blend-mode:normal;animation:none}html[data-project-transition]::view-transition-new(project-right){mix-blend-mode:normal;animation:none}html:is([data-project-transition=slide],[data-project-transition=mobile])::view-transition{background:var(--case-study-background)}html:is([data-project-transition=slide],[data-project-transition=mobile])[data-project-transition-direction=enter]::view-transition-new(root){display:none}html:is([data-project-transition=slide],[data-project-transition=mobile])[data-project-transition-direction=back]::view-transition-old(root){display:none}html:is([data-project-transition=slide],[data-project-transition=mobile])[data-project-transition-direction=enter]::view-transition-old(root){transform-origin:50%;animation:portfolio-recede var(--project-slide-duration) var(--project-slide-ease) both}html:is([data-project-transition=slide],[data-project-transition=mobile])[data-project-transition-direction=back]::view-transition-new(root){transform-origin:50%;animation:portfolio-restore var(--project-slide-duration) var(--project-slide-ease) both}html[data-project-transition-direction=enter]::view-transition-new(project-left){animation:project-left-in var(--project-slide-duration) var(--project-slide-ease) both}html[data-project-transition-direction=enter]::view-transition-new(project-right){animation:project-right-in var(--project-slide-duration) var(--project-slide-ease) both}html[data-project-transition-direction=back]::view-transition-old(project-left){animation:project-left-out var(--project-slide-duration) var(--project-slide-ease) both}html[data-project-transition-direction=back]::view-transition-old(project-right){animation:project-right-out var(--project-slide-duration) var(--project-slide-ease) both}html[data-project-transition=reduced]::view-transition-old(root){animation:.12s linear both project-fade-out}html[data-project-transition=reduced]::view-transition-new(root){animation:.12s linear both project-fade-in}@keyframes project-left-in{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes project-right-in{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes portfolio-recede{0%{filter:blur();opacity:1;transform:perspective(1400px)translateZ(0)}to{transform:perspective(1400px) translateZ(calc(-1 * var(--portfolio-depth)));filter:blur(var(--portfolio-blur));opacity:0}}@keyframes portfolio-restore{0%{transform:perspective(1400px) translateZ(calc(-1 * var(--portfolio-depth)));filter:blur(var(--portfolio-blur));opacity:1}to{filter:blur();opacity:1;transform:perspective(1400px)translateZ(0)}}@keyframes project-left-out{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes project-right-out{0%{transform:translate(0)}to{transform:translate(100%)}}@keyframes project-fade-in{0%{opacity:0}to{opacity:1}}@keyframes project-fade-out{0%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){html[data-project-transition][data-project-transition-direction]::view-transition-new(root){animation:.12s linear both project-fade-in}html[data-project-transition][data-project-transition-direction]::view-transition-new(project-left){animation:.12s linear both project-fade-in}html[data-project-transition][data-project-transition-direction]::view-transition-new(project-right){animation:.12s linear both project-fade-in}html[data-project-transition][data-project-transition-direction]::view-transition-old(root){animation:.12s linear both project-fade-out}html[data-project-transition][data-project-transition-direction]::view-transition-old(project-left){animation:.12s linear both project-fade-out}html[data-project-transition][data-project-transition-direction]::view-transition-old(project-right){animation:.12s linear both project-fade-out}}.freeform-shell{--unit:1px;--canvas-bottom-fade:80px;--canvas-dot-pattern:radial-gradient(circle, #00000018 .75px, transparent 1px);--canvas-dot-spacing:24px 24px;background:var(--page-background);height:100dvh;min-height:320px;position:relative;overflow:clip}.portfolio-artwork,.portfolio-route-content,.portfolio-panel{position:absolute;inset:0}.portfolio-panel:focus-visible{outline-offset:-8px}.portfolio-panel-experience{overscroll-behavior-y:none;scrollbar-width:none;scroll-padding-block:24px;overflow-y:auto}.freeform-shell:not([data-editing]) .portfolio-route-content{bottom:13px}.freeform-shell:not([data-editing]) .freeform-viewport{scroll-padding-bottom:var(--canvas-bottom-fade)}.freeform-viewport{touch-action:pinch-zoom;overscroll-behavior:none;cursor:grab;-webkit-user-select:none;user-select:none;background-image:var(--canvas-dot-pattern);background-size:var(--canvas-dot-spacing);background-position:50%;position:absolute;inset:0;overflow:clip}.freeform-camera{position:absolute;top:50%;left:50%}.freeform-world{position:absolute}.canvas-clipboard{--clipboard-scale:1.4625;--clipboard-width:293.217px;--clipboard-height:314.861px;width:var(--clipboard-width);height:var(--clipboard-height);transform:translate(-50%, -50%) scale(var(--clipboard-scale));z-index:3;position:absolute;top:50%;left:50%}.freeform-project{z-index:1;position:absolute;translate:-50% -50%}.freeform-project:hover,.freeform-project:focus-within{z-index:4}@media (width<=700px){.canvas-clipboard{--clipboard-scale:1.1}}@media (width<=360px){.canvas-clipboard{--clipboard-scale:1.0125}}html[data-portfolio-transition]{view-transition-name:none;scroll-behavior:auto}html[data-portfolio-transition] .portfolio-route-content{view-transition-name:portfolio-content}html[data-portfolio-transition]::view-transition{pointer-events:none}html[data-portfolio-transition]::view-transition-group(portfolio-content){animation:none}html[data-portfolio-transition]::view-transition-group(portfolio-tabs){animation:none}html[data-portfolio-transition]::view-transition-group(portfolio-tabs){z-index:1}html[data-portfolio-transition]::view-transition-old(portfolio-tabs){display:none}html[data-portfolio-transition]::view-transition-new(portfolio-tabs){animation:none}html[data-portfolio-transition]::view-transition-image-pair(portfolio-content){isolation:isolate}html[data-portfolio-transition]::view-transition-old(portfolio-content){mix-blend-mode:normal}html[data-portfolio-transition]::view-transition-new(portfolio-content){mix-blend-mode:normal}html[data-portfolio-transition]::view-transition-old(portfolio-content){animation:.2s linear both portfolio-page-out}html[data-portfolio-transition]::view-transition-new(portfolio-content){animation:portfolio-page-in .25s linear both, portfolio-page-settle .25s var(--ease-drawer) both}html[data-portfolio-transition] .liquid-cursor-layer{visibility:hidden}html[data-portfolio-transition] body[data-liquid-cursor] #work,html[data-portfolio-transition] body[data-liquid-cursor] #work *{cursor:var(--cursor-dot)!important}@keyframes portfolio-page-out{to{opacity:0}}@keyframes portfolio-page-in{0%{opacity:0}to{opacity:1}}@keyframes portfolio-page-settle{0%{transform:translateY(16px)}to{transform:translateY(0)}}html[data-portfolio-transition=reduced]::view-transition-old(portfolio-content){animation:.15s linear both portfolio-page-out}html[data-portfolio-transition=reduced]::view-transition-new(portfolio-content){animation:.15s linear both portfolio-page-in}@media (prefers-reduced-motion:reduce){html[data-portfolio-transition]::view-transition-old(portfolio-content){animation:.15s linear both portfolio-page-out}html[data-portfolio-transition]::view-transition-new(portfolio-content){animation:.15s linear both portfolio-page-in}}.freeform-shell[data-editing]{--playground-width:310px;--playground-accent:#327366}.freeform-shell[data-editing] .freeform-viewport{right:var(--playground-width)}.freeform-shell[data-editing] .canvas-controls{left:calc((100% - var(--playground-width)) / 2)}.freeform-shell[data-editing] .canvas-clipboard{pointer-events:none}.cluster-playground{z-index:30;width:var(--playground-width);background:var(--page-background);color:#333;font:13px/1.45 var(--font-work-body);accent-color:var(--playground-accent);font-variant-numeric:tabular-nums;border-left:1px solid #deded9;flex-direction:column;display:flex;position:absolute;inset:0 0 0 auto}.cluster-playground button,.cluster-playground input,.cluster-playground select,.cluster-playground textarea{font:inherit}.cluster-playground button,.playground-preview{cursor:pointer;min-height:36px}.cluster-playground button{color:#333;background:0 0;border:1px solid #d9d9d4;border-radius:5px;padding:0 10px}.cluster-playground button:hover:not(:disabled),.playground-preview:hover{background:#eeeee9}.cluster-playground button:disabled{color:#777;opacity:.5;cursor:default}.cluster-playground :focus-visible{outline:2px solid var(--playground-accent,#327366);outline-offset:3px}.playground-header{border-bottom:1px solid #e4e4df;justify-content:space-between;align-items:center;gap:8px;padding:16px 62px 16px 18px;display:flex}.playground-header h2{color:#252923;letter-spacing:-.02em;margin:0;font-size:17px;font-weight:500}.playground-preview{text-underline-offset:3px;border-radius:5px;align-items:center;padding:0 8px;display:flex}.playground-body{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#babab2 transparent;flex:1;min-height:0;padding:0 18px;overflow-y:auto}.playground-intro{color:#65655e;margin:18px 0 20px}.cluster-playground fieldset{border:0;min-width:0;margin:0;padding:0}.playground-select-label{margin-bottom:7px;font-weight:500;display:block}.cluster-playground select{color:#333;text-overflow:ellipsis;background:#fff;border:1px solid #d9d9d4;border-radius:5px;width:100%;height:40px;padding:0 8px;display:block}.playground-selection-meta{color:#696960;justify-content:space-between;align-items:center;margin-top:3px;font-size:12px;display:flex}.playground-selection-meta button{text-underline-offset:3px;border:0;padding-right:0;text-decoration:underline}.playground-fields{margin:16px 0 20px}.playground-field{margin-top:16px}.playground-field-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.playground-number{background:#fff;border:1px solid #d9d9d4;border-radius:5px;align-items:center;gap:3px;width:93px;padding-right:8px;display:flex}.playground-number:focus-within{outline:2px solid var(--playground-accent);outline-offset:2px}.playground-number input{color:#333;background:0 0;border:0;width:100%;min-width:0;height:34px;padding:0 0 0 8px}.playground-number input:focus-visible{outline:none}.playground-number span{color:#76766d;font-size:11px}.cluster-playground input[type=range]{cursor:pointer;width:100%;height:30px;margin:4px 0 0;display:block}.playground-dimension,.playground-hint{color:#696960;margin:2px 0 0;font-size:12px}.playground-hint{margin-top:12px}.playground-actions{align-items:center;gap:7px;display:flex}.playground-actions .playground-reset{margin-left:auto;padding-inline:8px}.playground-view{border-top:1px solid #e4e4df;margin-top:22px;padding-top:20px}.playground-export{border-top:1px solid #e4e4df;margin-top:20px;padding-bottom:12px}.playground-export summary{cursor:pointer;align-content:center;min-height:44px}.playground-export p{color:#696960;margin:0 0 12px}.playground-export textarea{resize:vertical;color:#333;background:#f5f5f1;border:1px solid #d9d9d4;border-radius:5px;width:100%;min-height:150px;margin-top:12px;padding:10px;font:11px/1.5 ui-monospace,monospace;display:block}.playground-export .playground-export-status{margin:8px 0 0}.playground-footer{padding:14px 18px max(14px, env(safe-area-inset-bottom));border-top:1px solid #e4e4df}.playground-footer p{color:#696960;margin:0 0 6px;font-size:12px}.playground-footer button{text-underline-offset:3px;border:0;min-height:30px;padding:0;text-decoration:underline}.editable-cluster-artwork{pointer-events:none;width:100%;height:100%}.editable-cluster[data-selected]{z-index:5}.cluster-move-target{outline-offset:6px;touch-action:none;cursor:grab;background:0 0;border:0;outline:1px solid #0000;padding:0;position:absolute;inset:0}.cluster-move-target:active{cursor:grabbing}.cluster-move-target:hover{outline-color:#abb9b2}.editable-cluster[data-selected] .cluster-move-target,.cluster-move-target:focus-visible{outline-color:var(--playground-accent)}.cluster-selection-label{transform-origin:0 100%;visibility:hidden;background:var(--playground-accent);color:#fff;font:12px/16px var(--font-work-body);white-space:nowrap;pointer-events:none;border-radius:3px 3px 0 0;padding:4px 7px;position:absolute;top:-8px;left:-7px;transform:translateY(-100%)}.editable-cluster[data-selected] .cluster-selection-label{visibility:visible}.cluster-resize-handle{cursor:nwse-resize;touch-action:none;background:0 0;border:0;width:30px;height:30px;padding:0;position:absolute;bottom:-6px;right:-6px;translate:50% 50%}.cluster-resize-handle span{border:1.5px solid var(--playground-accent);background:#fff;border-radius:2px;width:10px;height:10px;margin:auto;display:block}.cluster-resize-handle:focus-visible{outline:2px solid var(--playground-accent)}@media (width<=700px){.freeform-shell[data-editing]{--playground-height:min(48dvh, 400px)}.freeform-shell[data-editing] .freeform-viewport{right:0;bottom:var(--playground-height)}.cluster-playground{width:100%;height:var(--playground-height);border-top:1px solid #deded9;border-left:0;inset:auto 0 0}.playground-header{padding:8px 16px}.playground-body{padding-inline:16px}.cluster-playground button,.playground-preview{min-height:44px}.cluster-playground input[type=range],.cluster-playground select,.playground-number input{height:44px}.playground-footer{padding:4px 16px max(4px, env(safe-area-inset-bottom));justify-content:space-between;align-items:center;gap:12px;display:flex}.playground-footer p{max-width:55%;margin:0}.playground-footer button{white-space:nowrap;font-size:12px}.freeform-shell[data-editing] .canvas-controls{left:50%;bottom:calc(var(--playground-height) + 8px);gap:12px;font-size:11px}.cluster-resize-handle{width:44px;height:44px}}.work-view-panels{--work-view-duration:.25s;position:absolute;inset:0}.work-view-panel{opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--work-view-duration) linear, visibility 0s linear var(--work-view-duration);position:absolute;inset:0}.work-view-panel[data-active=true]{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}.work-view-panels[data-motion=instant] .work-view-panel{transition:none}@media (prefers-reduced-motion:reduce){.work-view-panels{--work-view-duration:.12s}}.work-view-toggle{z-index:20;top:max(16px, env(safe-area-inset-top));width:max-content;font:500 13px/18px var(--font-work-body);isolation:isolate;opacity:1;transform-origin:50% 0;transition:transform .25s var(--ease-out), opacity .2s var(--ease-out);border-radius:999px;margin-inline:auto;padding:0 4px;display:flex;position:absolute;inset-inline:0;transform:none}@starting-style{.work-view-toggle{opacity:0;transform:translateY(-25%)scale(.96)}}.work-view-toggle:before{z-index:-2;border-radius:inherit;content:"";background:#fffdf5;position:absolute;inset:4px 0;box-shadow:0 2px 12px #2718121a}.work-view-toggle-selection{z-index:-1;background:var(--work-accent);width:84px;transition:transform .18s var(--ease-out);border-radius:999px;position:absolute;inset:8px auto 8px 4px;transform:translate(0)}.work-view-toggle[data-view=list] .work-view-toggle-selection{transform:translate(100%)}.work-view-toggle button{color:#524a31;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;gap:6px;width:84px;min-height:44px;padding:10px 8px;display:flex}.work-view-toggle button[aria-pressed=true]{color:#211b06}.work-view-toggle button:focus-visible{outline-offset:1px;outline:2px solid #211b06}.work-view-toggle svg{stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.work-canvas{position:absolute;inset:0}.work-canvas .freeform-viewport{scroll-padding-top:76px}.work-canvas[data-mobile=true] .portfolio-artwork{translate:0 calc(430px - 50dvh)}.work-canvas[data-mobile=true] .canvas-clipboard{top:calc(50% - 150px)}.work-list{overscroll-behavior-y:contain;scrollbar-width:none;color:#292722;font-family:var(--font-work-body);background:#f3f1ee;scroll-padding-block:88px 96px;position:absolute;inset:0;overflow-y:auto}.work-list-content{max-width:1040px;padding:96px 32px calc(96px + env(safe-area-inset-bottom));margin-inline:auto}.work-list-introduction{--letter-scale:1.1;isolation:isolate;grid-template-columns:minmax(0,1fr);grid-template-rows:calc(314.861px * var(--letter-scale));padding:max(56px, env(safe-area-inset-top)) 24px 72px;justify-items:center;display:grid;position:relative}.work-list-introduction:before{z-index:-1;background-image:var(--canvas-dot-pattern);background-size:var(--canvas-dot-spacing);pointer-events:none;content:"";background-position:top;position:absolute;inset:0}.work-list-introduction+.work-list-content{padding-top:0}.work-list-introduction>div{width:293.217px;height:314.861px;transform:scale(var(--letter-scale));transform-origin:top}.work-list-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:28px 20px;margin:0;padding:0;list-style:none;display:grid}@media (hover:hover) and (pointer:fine){.work-view-toggle button:hover{color:#211b06}}@media (width<=700px){.work-list{scroll-padding-top:24px}.work-list-content{padding:24px 24px calc(88px + env(safe-area-inset-bottom))}.work-list-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 14px}}@media (width<=360px){.work-list-introduction{--letter-scale:1}.work-list-grid{column-gap:12px}}html:is([data-portfolio-entrance=instant],[data-portfolio-tab-motion=instant]) .work-view-toggle{transition:none}.work-view-toggle:has(:focus-visible){transition:none}.work-view-toggle:has(:focus-visible) .work-view-toggle-selection{transition:none}@media (prefers-reduced-motion:reduce){.work-view-toggle{transition:opacity .15s var(--ease-out)}@starting-style{.work-view-toggle{transform:none}}.work-view-toggle-selection{transition:none}}@media (forced-colors:active){.work-view-toggle{border:1px solid buttontext}.work-view-toggle-selection{background:highlight}.work-view-toggle button[aria-pressed=true]{color:highlighttext;forced-color-adjust:none}}.case-study-page,.gallery-page{--case-study-rail-column:252px;--case-study-outer-gutter:max(72px, calc((100vw - 795px) / 2.46));--case-study-sidebar-width:calc(var(--case-study-outer-gutter) + var(--case-study-rail-column) + 1px);--project-rail-width:64px;--project-index-width:min(288px, calc(100vw - 24px));--case-study-title-size:22.4px;--case-study-title-line-height:27.2px;--case-study-heading-size:19.2px;--case-study-heading-line-height:23.2px}:is(html:has(.case-study-page),body:has(.case-study-page)){background:var(--case-study-background)}.case-study-page{--case-study-color:#4d4d4d;--case-study-gutter:20px;--case-study-reading-size:14.4px;--case-study-reading-line-height:19.2px;--case-study-utility-size:10.4px;--case-study-utility-line-height:12.8px;min-height:100vh;color:var(--case-study-color);background:var(--case-study-background);font-family:var(--font-work-body);font-size:var(--case-study-reading-size);font-weight:400;line-height:var(--case-study-reading-line-height)}.case-study-layout{grid-template-columns:var(--case-study-outer-gutter) var(--case-study-rail-column) 1px var(--case-study-gutter) minmax(0, 522px) minmax(32px, 1.46fr);align-items:stretch;width:100%;min-height:100vh;display:grid}.case-study-back{color:inherit;line-height:var(--case-study-reading-line-height);opacity:.4;transition:opacity .14s var(--ease-out);align-items:center;gap:8px;text-decoration:none;display:inline-flex}.case-study-back:focus-visible{opacity:1}.case-study-back span{width:20px;height:20px;transition:transform .14s var(--ease-out);display:inline-block}.case-study-back svg,.case-study-carousel-arrow svg,.case-study-link-list svg{display:block}.case-study-article{min-width:0;padding-top:28px;padding-bottom:calc(96px + env(safe-area-inset-bottom,0px));padding-left:var(--case-study-gutter);background:var(--case-study-background);grid-area:1/4/auto/-1;grid-template-columns:minmax(0,522px) minmax(0,1fr);align-content:start;display:grid}.case-study-video{grid-column:1}.case-study-header,.case-study-section-list{grid-column:1/-1}.case-study-header{grid-template-columns:minmax(0,522px) minmax(0,1fr);align-items:start;min-width:0;display:grid}.case-study-header>:not(.case-study-carousel){grid-column:1}.case-study-header,.case-study-section,.case-study-details,.case-study-carousel{scroll-margin-top:28px}.case-study-title-row{justify-content:flex-start;align-items:baseline;gap:10px;margin-bottom:25px;display:flex}.case-study-title-row h1,.case-study-header>p,.case-study-section h2,.case-study-section h3,.case-study-section p,.case-study-section ul,.case-study-media-block,.case-study-media-figure,.case-study-carousel-count,.case-study-details dl,.case-study-details dd{margin:0}.case-study-title-row h1,.gallery-masthead h1{font-family:var(--font-work-body);font-size:var(--case-study-title-size);font-weight:400;line-height:var(--case-study-title-line-height);letter-spacing:-.01em}.case-study-header>p+p,.case-study-section p+p{margin-top:25px}.case-study-carousel{--case-study-carousel-height:clamp(260px, 25vw, 360px);z-index:1;min-width:0;margin-top:28px;margin-left:calc(var(--case-study-gutter) * -1);isolation:isolate;grid-column:1/-1;position:relative}.case-study-carousel:where(#class-projects-posters){--case-study-carousel-height:clamp(266px, 29.4vw, 406px)}.case-study-carousel.case-study-carousel-hero{--case-study-carousel-height:min(64svh, clamp(360px, 40vw, 560px));margin-top:0;margin-bottom:40px}.case-study-carousel:before{z-index:4;width:calc(var(--case-study-gutter) + 8px);content:"";pointer-events:none;background:linear-gradient(90deg, var(--case-study-background) 0, #ffffffeb 35%, #fff0 100%);position:absolute;top:0;bottom:44px;left:0}.case-study-carousel:not([data-scrollable=true]):before{display:none}.case-study-carousel-viewport{overscroll-behavior-x:contain;cursor:grab;touch-action:pan-y pinch-zoom;outline:none;min-width:0;overflow:hidden}.case-study-carousel-viewport:active{cursor:grabbing}.case-study-carousel-viewport:focus-visible{outline-offset:4px;outline:1px solid #4d4d4d85}.case-study-carousel-track{padding-right:28px;padding-left:var(--case-study-gutter);backface-visibility:hidden;will-change:transform;align-items:stretch;gap:10px;display:flex}.case-study-carousel-slide{width:auto;height:var(--case-study-carousel-height);border-radius:5px;flex:none;min-width:0;margin:0;position:relative;overflow:hidden}.case-study-carousel-slide img{width:auto;max-width:none;height:100%;display:block}.case-study-carousel-controls{width:min(522px, calc(100% - var(--case-study-gutter) - 24px));margin-top:14px;margin-left:var(--case-study-gutter);grid-template-columns:auto auto minmax(80px,1fr);align-items:center;gap:18px;display:grid}.case-study-carousel-arrows{align-items:center;gap:4px;display:flex}.case-study-carousel-arrow{width:40px;height:40px;color:inherit;cursor:pointer;transition:transform .13s var(--ease-out), opacity .13s var(--ease-out), background-color .13s var(--ease-out);background:0 0;border:0;border-radius:50%;place-items:center;padding:0;display:inline-grid}.case-study-carousel-arrow:active:not(:disabled){transform:scale(.97)}.case-study-carousel-arrow:disabled{cursor:default;opacity:.28}.case-study-carousel-arrow:focus-visible{outline-offset:2px;outline:1px solid #4d4d4da3}.case-study-carousel-count{min-width:56px;font-size:var(--case-study-utility-size);line-height:var(--case-study-utility-line-height);font-variant-numeric:tabular-nums;letter-spacing:.02em;opacity:.68}.case-study-carousel-progress{background:#4d4d4d26;border-radius:2px;height:3px;position:relative;overflow:hidden}.case-study-carousel-progress span{border-radius:inherit;background:currentColor;position:absolute;inset:0}.case-study-section-list{margin-top:40px}.case-study-section{grid-template-columns:minmax(0,522px) minmax(0,1fr);align-items:start;min-width:0;display:grid}.case-study-section+.case-study-section{margin-top:52px}.case-study-section>:not(.case-study-carousel),.case-study-subsection>:not(.case-study-carousel){grid-column:1}.case-study-section h2,.gallery-section-heading h2{font-family:var(--font-work-body);font-size:var(--case-study-heading-size);font-weight:400;line-height:var(--case-study-heading-line-height);letter-spacing:-.01em;opacity:.5}.case-study-section h2{margin-bottom:20px}.case-study-section ul{gap:12px;margin-top:24px;padding-left:22px;display:grid}.case-study-section .case-study-after-points{margin-top:24px}.case-study-subsection{grid-column:1/-1;grid-template-columns:minmax(0,522px) minmax(0,1fr);margin-top:28px;display:grid}.case-study-subsection h3{font-size:var(--case-study-heading-size);font-weight:400;line-height:var(--case-study-heading-line-height);letter-spacing:-.01em;text-underline-offset:.18em;margin-bottom:12px;text-decoration:underline;text-decoration-thickness:1px}.case-study-block-list{display:contents}.case-study-block-list>:not(.case-study-carousel):not(.case-study-subsection){grid-column:1}.case-study-block-list>.case-study-subsection{grid-column:1/-1}.case-study-media-block{margin-top:28px}.case-study-media-block:not(.case-study-carousel){grid-column:1}.case-study-media-figure img,.case-study-media-row img,.case-study-media-grid img{width:100%;height:auto;display:block}.case-study-media-row,.case-study-media-grid{align-items:start;gap:10px;display:grid}.case-study-media-row{grid-template-columns:repeat(2,minmax(0,1fr))}.case-study-media-grid{grid-template-columns:repeat(var(--case-study-media-columns,3), minmax(0, 1fr))}.case-study-media-grid[data-columns="2"]{--case-study-media-columns:2}.case-study-media-grid[data-columns="4"]{--case-study-media-columns:4}.case-study-video{aspect-ratio:16/9;background:#f2f2f2;border-radius:9px;margin-top:32px;overflow:hidden}.case-study-video iframe{border:0;width:100%;height:100%;display:block}.case-study-details{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px 24px;min-width:0;display:grid}.case-study-details dl,.case-study-link-list{display:contents}.case-study-header>p+.case-study-details{margin-top:28px}.case-study-details dt{text-transform:lowercase;opacity:.52;margin-bottom:2px;font-size:13px;line-height:16px}.case-study-details dd,.case-study-link-list{overflow-wrap:anywhere;font-size:14px;line-height:20px}.case-study-link-list a{align-items:baseline;gap:4px;max-width:100%;text-decoration:none;display:inline-flex}.case-study-link-list svg{flex:none;align-self:flex-start;margin-top:3px}@media (hover:hover) and (pointer:fine){.case-study-back:hover{opacity:.8}.case-study-back:hover span{transform:translate(-3px)}.case-study-carousel-arrow:hover:not(:disabled){background:#4d4d4d0f}.case-study-link-list a:hover{text-decoration:underline}}@media (width<=1100px) and (width>=821px){.case-study-page,.gallery-page{--case-study-rail-column:200px;--case-study-outer-gutter:max(32px, calc((100vw - 719px) * .55 / 1.55))}.case-study-layout{grid-template-columns:var(--case-study-outer-gutter) var(--case-study-rail-column) 1px 18px minmax(0, 500px) minmax(24px, 1fr)}.case-study-article,.case-study-section,.case-study-subsection,.case-study-header{grid-template-columns:minmax(0,500px) minmax(0,1fr)}.case-study-page{--case-study-gutter:18px}}@media (width<=820px){.case-study-page,.gallery-page{--project-rail-width:60px}.case-study-page{--case-study-gutter:16px}.case-study-article{grid-column:2;grid-template-columns:minmax(0,1fr) 16px;padding-top:20px}.case-study-layout{grid-template-columns:var(--project-rail-width) minmax(0, 1fr)}.case-study-video{grid-column:1}.case-study-header,.case-study-section-list{grid-column:1/-1}.case-study-title-row{gap:8px;margin-bottom:24px}.case-study-carousel{--case-study-carousel-height:clamp(220px, 66vw, 300px);margin-top:28px;margin-left:calc(var(--case-study-gutter) * -1);grid-column:1/-1}.case-study-carousel:where(#class-projects-posters){--case-study-carousel-height:clamp(154px, 46.2vw, 210px)}.case-study-carousel.case-study-carousel-hero{--case-study-carousel-height:min(52svh, clamp(280px, 82vw, 400px));margin-bottom:32px}.case-study-carousel:before{bottom:46px}.case-study-carousel-track{gap:8px;padding-right:16px}.case-study-carousel-controls{gap:14px;width:auto;margin-right:16px}.case-study-carousel-arrow{width:44px;height:44px}.case-study-section-list{margin-top:40px}.case-study-section,.case-study-subsection,.case-study-header{grid-template-columns:minmax(0,1fr) 16px}.case-study-section+.case-study-section{margin-top:48px}.case-study-details{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:16px}.case-study-link-list a{min-height:44px;padding-block:12px}.case-study-media-row,.case-study-media-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.case-study-back span,.case-study-carousel-arrow,.case-study-carousel-progress span{transition-duration:0s}}@media (prefers-contrast:more){.case-study-back,.case-study-carousel-count,.case-study-details dt{opacity:1}.case-study-carousel-progress{background-color:currentColor}}
