:root{color-scheme:light}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth}body{min-height:100vh;margin:0;background:#fff;color:#222}a{color:inherit}img{max-width:100%;height:auto}button,input,select,textarea{font:inherit}.fade-page-in{min-height:100vh}.cursor-wrapper{pointer-events:none;position:fixed;inset:0;z-index:100;cursor:none}.inner-dot,.outer-circle{position:fixed;top:0;left:0;will-change:transform}.site-header{position:relative}.site-header--menu-open .site-header__logo--primary,.site-header__logo--inverted{display:none}.site-header--menu-open .site-header__logo--inverted{display:block}.site-header--menu-open .navigation-button{color:rgba(255,255,255,.5);border-color:rgba(255,255,255,.5)}.site-header--menu-open .navigation-button:hover{background-color:#fff;border-color:#fff;color:#222}.site-header--menu-open .menu-toggle-line{background-color:#fff}.menu-overlay-spacer{height:115px}.menu-overlay.is-open{display:block}.menu-toggle-button{background:transparent;border:0;padding:0}.menu-toggle-line{transition:margin .3s,transform .6s ease,background-color .3s}.menu-toggle:not(.menu-toggle-close):hover .menu-toggle-line:first-child{margin-bottom:3px}.menu-toggle:not(.menu-toggle-close):hover .menu-toggle-line:last-child{margin-top:3px}.back-to-top:focus-visible,.button:focus-visible,.footer-logo:focus-visible,.item-navigation-link:focus-visible,.link-block:focus-visible,.menu-toggle-button:focus-visible,.nav-menu-link:focus-visible,.project-card-link:focus-visible{outline:2px solid #ea384c;outline-offset:6px}.menu-toggle.menu-toggle-close .menu-toggle-line:first-child{transform:translateY(8px) rotate(45deg)}.menu-toggle.menu-toggle-close .menu-toggle-line:last-child{transform:translateY(-8px) rotate(-45deg)}.menu-toggle.menu-toggle-close:hover .menu-toggle-line:first-child{transform:translateY(8px) rotate(45deg)}.menu-toggle.menu-toggle-close:hover .menu-toggle-line:last-child{transform:translateY(-8px) rotate(-45deg)}body.site-menu-open{overflow:hidden}.site-header{position:absolute;inset:0 0 auto;z-index:11;width:100%}.site-header--inner{position:relative}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.media-shimmer-wrapper{position:relative;overflow:hidden;display:inline-block;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 37%,#f0f0f0 63%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite;border-radius:.8rem}.richtext-media-block .media-shimmer-wrapper{display:block;margin-left:auto;margin-right:auto;width:fit-content}.media-shimmer-wrapper img,.media-shimmer-wrapper video{display:block;opacity:0;transition:opacity .3s ease}.media-shimmer-wrapper--loaded{background:none;animation:none}.media-shimmer-wrapper--loaded img,.media-shimmer-wrapper--loaded video{opacity:1}.portfolio-home-hero{position:relative;min-height:100vh;min-height:100svh;display:grid;grid-template-columns:1fr;grid-template-rows:1fr auto 1fr;overflow:hidden}.portfolio-home-hero-grid{position:absolute;inset:0;z-index:0;opacity:.2}.portfolio-home-hero-grid canvas{width:100%;height:100%;display:block}.portfolio-home-hero .scroll-title,.portfolio-home-hero-copy{pointer-events:none;position:relative;z-index:1}.portfolio-home-hero-copy{grid-row:2;align-self:center;justify-self:center;width:100%}.portfolio-home-hero .scroll-title{grid-row:3;align-self:end;justify-self:center;padding-bottom:40px}.hero-wave{transform-origin:70% 70%;display:inline-block;animation:hero-wave 2.6s ease-in-out infinite}.portfolio-card-link{display:block}.portfolio-card-link:hover .heading-9,.portfolio-card-link:hover .project-grid-title{opacity:.72}.project-grid-title-overlay{pointer-events:none}.portfolio-card-empty{background:linear-gradient(140deg,rgba(234,56,76,.24),rgba(22,22,22,.08)),linear-gradient(220deg,rgba(255,255,255,.25),rgba(255,255,255,0));min-height:420px}.portfolio-home-more-work{display:flex;justify-content:center;padding-bottom:80px}.portfolio-ripple-card{width:auto;max-width:100%;display:inline-flex;position:relative;overflow:hidden}.portfolio-ripple-card canvas{position:absolute;inset:0;width:100%!important;height:100%!important;display:block}.portfolio-ripple-card__fallback{z-index:0;width:auto;max-width:100%;height:auto;max-height:600px;transition:opacity .25s ease;position:relative;display:block}.portfolio-ripple-card.is-ready .portfolio-ripple-card__fallback{opacity:0}.hover-3d{display:inline-grid;perspective:75rem;--transform:0,0;--shine:100% 100%;--shadow:0rem 0rem 0rem;--ease:linear(0,0.931 13.8%,1.196 21.4%,1.343 29.8%,1.378 36%,1.365 43.2%,1.059 78%,1);filter:drop-shadow(var(--shadow) .1rem #00000003) drop-shadow(var(--shadow) .2rem #00000003) drop-shadow(var(--shadow) .3rem #00000003) drop-shadow(var(--shadow) .4rem #00000003);transition:filter .4s ease-out}.hover-3d>:nth-child(n+2){isolation:isolate;z-index:1;scale:1.2}.hover-3d__content{overflow:hidden;grid-area:1/1/4/4;margin:0;transform:rotate3d(var(--transform),0,10deg);transition:transform var(--ease) .5s,scale var(--ease) .5s,outline-color ease-out .5s;outline:.5px solid #0000;outline-offset:-1px;border-radius:.8rem;position:relative;will-change:transform,scale}.hover-3d__content:before{content:"";pointer-events:none;position:absolute;z-index:1;width:33%;height:33%;scale:500%;opacity:0;filter:blur(.75rem);background-image:radial-gradient(circle at 50%,#fff3 10%,transparent 50%);translate:var(--shine);transition:translate .4s ease-out,opacity .4s ease-out}.hover-3d:hover{--ease:linear(0,0.708 15.2%,0.927 23.6%,1.067 33%,1.12 41%,1.13 50.2%,1.019 83.2%,1)}.hover-3d:hover>.hover-3d__content{outline-color:#fff1;scale:1.05}.hover-3d:hover>.hover-3d__content:before{opacity:1}.hover-3d__content img{display:block;width:100%;height:auto;max-width:400px}.hover-3d>:nth-child(2){grid-area:1/1/2/2}.hover-3d>:nth-child(3){grid-area:1/2/2/3}.hover-3d>:nth-child(4){grid-area:1/3/2/4}.hover-3d>:nth-child(5){grid-area:2/1/3/2}.hover-3d>:nth-child(6){grid-area:2/3/3/4}.hover-3d>:nth-child(7){grid-area:3/1/4/2}.hover-3d>:nth-child(8){grid-area:3/2/4/3}.hover-3d>:nth-child(9){grid-area:3/3/4/4}.hover-3d:has(>:nth-child(2):hover){--transform:-1,1;--shine:0% 0%;--shadow:-0.5rem -0.5rem}.hover-3d:has(>:nth-child(3):hover){--transform:-1,0;--shine:100% 0%;--shadow:0rem -0.5rem}.hover-3d:has(>:nth-child(4):hover){--transform:-1,-1;--shine:200% 0%;--shadow:0.5rem -0.5rem}.hover-3d:has(>:nth-child(5):hover){--transform:0,1;--shine:0% 100%;--shadow:-0.5rem 0rem}.hover-3d:has(>:nth-child(6):hover){--transform:0,-1;--shine:200% 100%;--shadow:0.5rem 0rem}.hover-3d:has(>:nth-child(7):hover){--transform:1,1;--shine:0% 200%;--shadow:-0.5rem 0.5rem}.hover-3d:has(>:nth-child(8):hover){--transform:1,0;--shine:100% 200%;--shadow:0rem 0.5rem}.hover-3d:has(>:nth-child(9):hover){--transform:1,-1;--shine:200% 200%;--shadow:0.5rem 0.5rem}.about-me-section .flex-row{gap:40px;align-items:flex-start;border-top:1px solid #e0e0e0}.about-me-section .flex-row>.item-bordered{border-top:none!important}.about-me-section .about-me-copy{flex:1 1 0%!important;max-width:none!important;width:auto!important}.about-me-section .item-shrink{flex:0 0 auto!important}.about-me-section .hover-3d__content img{max-width:500px}.about-me-copy .about-me-paragraph{max-width:none!important;width:100%!important}.about-me-copy .about-me-paragraph+.about-me-paragraph{margin-top:30px}.project-cover-full-width{width:100%;overflow:hidden}.project-cover-full-width img{width:100%;height:auto;display:block}.project-detail-richtext{max-width:100%}.project-detail-richtext iframe{width:100%;min-height:420px}.project-detail-richtext .richtext-media-block,.project-detail-richtext figure{width:100%;max-width:620px;margin-left:auto;margin-right:auto}.project-detail-richtext .media-block--wide{max-width:900px;margin-left:auto;margin-right:auto}.project-detail-richtext .media-block--full{max-width:100%;margin-left:auto;margin-right:auto}.project-detail-richtext .richtext-media-block picture,.project-detail-richtext figure img,.project-detail-richtext figure>div{display:block;width:100%}.project-detail-richtext .richtext-media-block img{display:block;width:100%;height:auto}.media-block-caption{margin-top:6px;text-align:center}.media-block-caption p{font-style:italic!important;font-size:13px!important;color:#888!important;margin-bottom:0!important}.project-detail-richtext .payload-richtext{max-width:100%}.project-detail-richtext .payload-richtext h2,.project-detail-richtext h2{margin-top:40px!important;margin-bottom:4px!important}.project-detail-richtext .payload-richtext h3,.project-detail-richtext h3{margin-top:28px!important;margin-bottom:4px!important}.project-detail-richtext .payload-richtext h4,.project-detail-richtext h4{margin-top:20px!important;margin-bottom:2px!important}.project-detail-richtext .payload-richtext p,.project-detail-richtext p{margin-top:0!important;margin-bottom:12px!important}.project-detail-richtext .payload-richtext ol,.project-detail-richtext .payload-richtext ul{max-width:620px;margin:20px auto 30px;padding-left:32px}.project-detail-richtext .payload-richtext ul{list-style:disc}.project-detail-richtext .payload-richtext ol{list-style:decimal}.project-detail-richtext .payload-richtext li+li{margin-top:10px}.project-detail-richtext .payload-richtext li>ol,.project-detail-richtext .payload-richtext li>ul{margin-top:10px;margin-bottom:0}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes hero-wave{0%,55%,to{transform:rotate(0deg)}10%{transform:rotate(14deg)}18%{transform:rotate(-8deg)}26%{transform:rotate(14deg)}34%{transform:rotate(-4deg)}42%{transform:rotate(10deg)}}@media (pointer:coarse){.container__selected-work,.menu-toggle,.navigation-bar,.navigation-bar-controls,.portfolio-heading.scroll-title,.project-grid-item,.project-image,.project-large,.section,.section-2,.section-3,a,body,button{cursor:auto!important}}@media screen and (max-width:991px){.portfolio-home-hero{min-height:100vh;min-height:100svh}.portfolio-home-hero-grid{display:none}.portfolio-home-hero .scroll-title,.portfolio-home-hero-copy{pointer-events:auto}}@media screen and (max-width:767px){.portfolio-ripple-card canvas{display:none}.portfolio-ripple-card__fallback{opacity:1!important}.project-detail-richtext iframe{min-height:260px}}@media screen and (max-width:479px){.portfolio-home-hero .scroll-title{padding-bottom:20px}.portfolio-home-more-work{padding-bottom:40px}.about-me-copy .about-me-paragraph+.about-me-paragraph{margin-top:20px}.project-detail-richtext iframe{min-height:200px}}@layer payload-default{}@layer payload-default{}.admin-bar{left:0;position:absolute;right:0;top:0;width:100%;z-index:1000}@media(max-width:768px){.admin-bar{display:none}}