.visualization-container{border-style:solid;border-width:var(--size-border-body);height:100dvh;left:0;overflow:hidden;position:fixed;top:0;transition:background-color .2s ease-in-out;width:100vw;z-index:-1}.visualization-canvas{height:100%;width:100%}.visualization-canvas canvas{display:block}.visualization-canvas .loading{font-size:.5em;position:absolute;z-index:-2}.market-change{margin:0}.market-change .percentChangeAmount{display:inline-block;padding-right:1em;position:relative}.market-change.positive .percentChangeAmount:after{content:"\2191";position:absolute;right:0}.market-change.negative .percentChangeAmount:after{content:"\2193";position:absolute;right:0}.market-info{bottom:0;font-size:.75em;opacity:.15;padding:var(--size-spacing-half);position:absolute;right:0}.timeline{list-style-type:none;margin:var(--size-spacing-double) 0;max-width:var(--max-width-content);padding-bottom:var(--size-spacing-base);padding-left:0;padding-top:var(--size-spacing-base);position:relative}.timeline-item{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 4fr}.timeline-item:not(:last-child){margin-bottom:var(--size-spacing-double)}.duration{font-weight:var(--font-weight-bold);opacity:.5}.experience{display:flex;flex-direction:column;gap:.25rem}.responsibilities{margin-bottom:0;margin-top:0}.achievements{display:flex;flex-direction:column;gap:var(--size-spacing-half);list-style-type:disc}.to-case-study-links{display:flex;gap:1rem;margin-top:var(--size-spacing-double)}.to-case-study-link{border-radius:var(--border-radius-small);border-style:solid;border-width:1px;padding:var(--size-spacing-base) var(--size-spacing-base) var(--size-spacing-double);position:relative;text-decoration:none;width:50%}.to-case-study-link:before{content:"Case study";font-size:var(--font-size-small);line-height:1;opacity:.5}.to-case-study-link:hover .case-study-title:after{transform:translateX(.25em)}.case-study-title{position:relative;text-decoration:underline}.to-case-study-link:hover .case-study-title{text-decoration:none}.case-study-title:after{content:"→";display:inline-block;margin-left:var(--size-spacing-quarter);transition:transform var(--transition-timing-base) ease}.case-study-description{font-size:var(--font-size-small)}@media (max-width:768px){.timeline-item{gap:.5rem;grid-template-columns:1fr}}.site-footer{align-items:baseline;display:flex;font-size:var(--font-size-small);gap:var(--size-spacing-double);justify-content:space-between}@media (min-width:768px){.site-footer{margin-top:auto;width:100%}}.home-link{position:relative;transition:transform var(--transition-timing-base) ease}.home-link:before{content:"←";left:calc(var(--size-spacing-base)*-1);position:absolute}.home-link:hover:before{transform:translateX(-.25em)}.contact-info{display:flex;flex-wrap:wrap;gap:var(--size-spacing-half);list-style-type:none;padding:0}:root{--font-serif:"Bodoni 72","Bodini MT",serif;--font-size-base:16px;--font-size-medium:20px;--font-size-large:24px;--font-size-xlarge:48px;--font-size-small:12px;--font-weight-base:400;--font-weight-bold:500;--font-weight-strong:700;--font-line-height:1.5;--size-border-body:1em;--size-spacing-base:1rem;--size-spacing-half:calc(var(--size-spacing-base)/2);--size-spacing-quarter:calc(var(--size-spacing-base)/4);--size-spacing-double:calc(var(--size-spacing-base)*2);--size-text-padding:4px;--color-border-day:#fff;--color-border-night:#000;--color-border-night-rgb:0,0,0;--color-border-day-rgb:255,255,255;--border-radius:1.2em;--border-radius-small:0.6em;--border-radius-circle:50%;--max-width-content:700px;--max-media-width:70vw;--max-media-height:200em;--min-media-width:700px;--transition-timing-base:0.2s;--animation-fade-duration:600ms;--animation-fade-duration-fast:80ms;--animation-easing-fade:cubic-bezier(0.45,0.05,0.2,1);--animation-easing-default:ease;--animation-easing-out:ease-out;--opacity-hidden:0;--opacity-muted:0.15;--opacity-dimmed:0.35;--opacity-hover:0.85;--opacity-visible:1;--shadow-floating:0 4px 20px #00000026,0 0 0 1px #ffffff1a;--shadow-floating-mobile:0 2px 10px #00000026,0 0 0 1px #ffffff1a;--shadow-inner-glow:inset 0 0 20px #ffffff1a;--filter-day:brightness(1.05) contrast(1.02);--filter-night:brightness(0.92) contrast(1.05);--focus-outline:1px dotted;--focus-outline-offset:2px}[data-theme=day]{color-scheme:light}[data-theme=day]:root{--safari-toolbar:var(--color-border-day)}[data-theme=day],[data-theme=day] a{color:var(--color-border-night)}[data-theme=day] .visualization-container{border-color:var(--color-border-day)}[data-theme=day] .loading{color:var(--color-border-day)}[data-theme=day] .to-case-study-link{background-color:var(--color-border-day);border-color:var(--color-border-night)}[data-theme=day] .to-case-study-link:hover{background-color:var(--color-border-night);color:var(--color-border-day)}[data-theme=day] .case-study-content .asset-hover{background-color:var(--color-border-night);border-color:var(--color-border-night)}[data-theme=night]{color-scheme:dark}[data-theme=night]:root{--safari-toolbar:var(--color-border-night)}[data-theme=night],[data-theme=night] a{color:var(--color-border-day)}[data-theme=night] .visualization-container{border-color:var(--color-border-night)}[data-theme=night] .loading{color:var(--color-border-night)}[data-theme=night] .to-case-study-link{background-color:var(--color-border-night);border-color:var(--color-border-day)}[data-theme=night] .to-case-study-link:hover{background-color:var(--color-border-day);color:var(--color-border-night)}[data-theme=night] .case-study-content .asset-hover{background-color:var(--color-border-day);border-color:var(--color-border-day)}*,html{-moz-text-size-adjust:100%;text-size-adjust:100%;-webkit-text-size-adjust:100%}*{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,sans-serif;font-size:var(--font-size-base);font-weight:var(--font-weight-base);line-height:var(--font-line-height);margin:0}code{font-family:source-code-pro,monospace}a:focus,a:hover{text-decoration:none}a:active{outline:1px dotted}h1,h2,h3,h4,h5,h6{margin-bottom:0;margin-top:0}h1{font-family:var(--font-serif)}.container{margin:var(--size-border-body) auto;padding-bottom:var(--size-spacing-double);position:relative;width:calc(100% - var(--size-border-body)*2)}@media (min-width:768px){.container{display:flex;justify-content:center;min-height:calc(100dvh - var(--size-border-body)*2);padding-top:var(--size-spacing-double);width:100%}.container-contents{align-items:flex-start;display:flex;flex-direction:column;max-width:var(--max-width-content)}}@media (max-width:768px){.container-contents{padding:calc(var(--size-border-body)*2) var(--size-border-body) var(--size-border-body)}}.description,.name{margin-bottom:1rem;margin-top:0}.name{font-size:min(17vw,5em);line-height:.85em}.namechanger{display:inline-block;opacity:1;transition:opacity .5s ease-in-out,transform .5s ease-in-out}.namechanger.transitioning{opacity:0;transform:translateY(-4px)}.description{font-size:1.25em}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.namechanger{transition:none!important}.namechanger.transitioning{opacity:1!important;transform:none!important}}.page-loader{align-items:center;display:flex;justify-content:center;min-height:50vh}.visually-hidden{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.error-boundary{align-items:center;background-color:#fff;background-color:var(--color-background,#fff);display:flex;justify-content:center;min-height:100vh;padding:var(--size-spacing-base)}.error-boundary-content{border:2px solid #ccc;border:2px solid var(--color-border,#ccc);border-radius:var(--border-radius);max-width:500px;padding:var(--size-spacing-double);text-align:center}.error-boundary-title{font-family:var(--font-serif);font-size:var(--font-size-medium);margin-bottom:var(--size-spacing-base)}.error-boundary-message{font-size:var(--font-size-small);margin-bottom:var(--size-spacing-double);opacity:.8}.error-boundary-details{margin-bottom:var(--size-spacing-base);text-align:left}.error-boundary-stack{background:#0000000d;border-radius:var(--border-radius-small);font-size:var(--font-size-small);margin-top:var(--size-spacing-half);overflow-x:auto;padding:var(--size-spacing-base)}.error-boundary-actions{display:flex;flex-wrap:wrap;gap:var(--size-spacing-base);justify-content:center}.error-boundary-button{background:#0000;border:2px solid;border-radius:var(--border-radius-small);cursor:pointer;font-size:var(--font-size-small);padding:var(--size-spacing-half) var(--size-spacing-base);transition:background-color .2s ease,color .2s ease}.error-boundary-button:hover{background-color:currentColor}.error-boundary-button--primary{background-color:currentColor;color:#fff;color:var(--color-background,#fff)}.error-boundary-button--primary:hover{background-color:initial;color:currentColor}.case-study{display:grid}.case-study,.case-study-content,.case-study-content .asset-container,.case-study-content .assets{overflow:visible}.case-study-nav{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--size-spacing-double)}.case-study-nav-link{font-size:var(--font-size-small);position:relative}.case-study-nav-link.study-link:after{content:"→";position:absolute;right:calc(var(--size-spacing-base)*-1)}.case-study-nav-link.study-link:hover:after{transform:translateX(.25em)}.case-study-nav-link.active{display:none}.case-study-content section{margin-bottom:var(--size-spacing-double)}.case-study .duration{font-size:var(--font-size-small)}.name-case-study{font-size:var(--font-size-xlarge);line-height:1.2}.subtitle-case-study{font-size:var(--font-size-medium);font-weight:var(--font-weight-base)}.case-study-content .assets{display:flex;flex-direction:column;gap:var(--size-spacing-base);max-width:100vw}.case-study-content .asset-container{margin-bottom:var(--size-spacing-double)}.case-study-content .asset{border-radius:var(--border-radius);display:block;margin-bottom:var(--size-spacing-half);max-width:100%}.case-study-content .asset-hover{border-style:solid;border-width:2px}.asset-caption{font-size:var(--font-size-small);margin:0}@media (max-width:768px){.asset-container{margin-bottom:var(--size-spacing-base)}.case-study-content video{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.case-study-content video::-webkit-media-controls,.case-study-content video::-webkit-media-controls-enclosure{display:none!important}.case-study-content video::-webkit-media-controls-panel,.case-study-content video::-webkit-media-controls-play-button{display:none!important}.case-study-content video::-webkit-media-controls-start-playback-button{display:none!important}}@media (min-width:1024px){.case-study-copy{padding-right:120px}.case-study-content .asset-hover{transition:transform var(--transition-timing-base) ease}.case-study-content .asset-hover:hover{box-shadow:0 0 2em 0 #00000040;transform:scale(1.5)}}.case-study-content .asset-container.memories{margin-top:calc(var(--size-spacing-double) + var(--size-spacing-base));transform:scale(1.2)}
/*# sourceMappingURL=main.b9d5fe76.css.map*/