@media (prefers-reduced-motion:reduce){*,:before,:after{background-attachment:initial!important;scroll-behavior:auto!important;transition-duration:0s!important;transition-delay:0s!important;animation-duration:1ms!important;animation-iteration-count:1!important;animation-delay:-1ms!important}.skeleton-pulse{background-color:var(--light-color)!important;animation:none!important}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--default-bg:#faf8ff;--default-text:#10002b;--theme-bg:var(--default-bg);--theme-text:var(--default-text);--load-color:color-mix(in srgb, var(--theme-text), transparent 60%);--light-color:color-mix(in srgb, var(--theme-text), transparent 80%);--z-canvas:150;--z-nav:100;--z-ui:200;--z-modal:1000;--z-overlay:9999;--z-modal-ui:40;--z-modal-nav:30;--padding-a:4rem;--space-xs:.5rem;--space-sm:1rem;--space-md:2rem;--space-lg:2.65rem;--space-xl:4rem;--space-xxl:6rem;--space-huge:16rem;--page-gap:5%;--bar-width:42rem;--bar-height:4.05rem;--bar-offset-x:-24rem;--bar-offset-y:8.6rem;--about-img-width:20%;--scroll-btn-bottom:-12rem;--threed-box:12vw;--threed-max:14rem;--size-btn-lg:3.5rem;--play-box:4rem;--radius-img:.75rem;--radius-mini:calc(var(--radius-img) / 2);--radius-notch:calc(var(--radius-img) * 1.15);--opacity-dim:.25;--duration-master:.5s;--duration-fast:.3s;--duration-ui:.2s;--duration-accordion:.4s;--ease-master:cubic-bezier(.16, 1, .3, 1);--ease-bounce:cubic-bezier(.34, 1.56, .64, 1);--ease-ui:ease;--font-primary:"GeneralSans", sans-serif;--text-mini:.8rem;--text-base:1rem;--text-md:1.5rem;--text-lg:1.5rem;--text-xl:2.25rem;--leading-copy:1.4;--leading-base:1.4;--leading-tight:1.1;--leading-header:1;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--target-min-content:20%;--target-min-projects:55%;--target-proj-content:40%;--target-proj-projects:35%;--col-info:15%;--col-content:var(--target-min-content);--col-projects:var(--target-min-projects);--content-margin:calc(var(--col-info) + 5%);--scroll-btn-width-desktop:8rem;--scroll-btn-width-mobile:20rem;--proj-text-width-desktop:14rem;--proj-text-width-mobile:10rem;--nav-btn-size:20rem;--about-content-width:40vw;--about-content-width-tablet:50vw}html.layout-project-open{--col-content:var(--target-proj-content);--col-projects:var(--target-proj-projects)}@media (width>=992px){html.is-about-open body,html.is-about-open #app-wrapper{height:100vh;overflow:hidden}html.is-about-open #content{pointer-events:none!important;-webkit-user-select:none!important;user-select:none!important}html.is-about-open #project-list{-webkit-user-select:none!important;user-select:none!important}}@font-face{font-family:GeneralSans;src:url(/assets/GeneralSans-Regular-qWzDLixW.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:GeneralSans;src:url(/assets/GeneralSans-Italic-BwumvjGH.woff2)format("woff2");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:GeneralSans;src:url(/assets/GeneralSans-Medium-C2ucJIwG.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:GeneralSans;src:url(/assets/GeneralSans-MediumItalic-C3cYcTzO.woff2)format("woff2");font-weight:500;font-style:italic;font-display:swap}@font-face{font-family:GeneralSans;src:url(/assets/GeneralSans-SemiBold-CJIwQqfU.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:GeneralSans;src:url(/assets/GeneralSans-SemiboldItalic-DKukQC7U.woff2)format("woff2");font-weight:600;font-style:italic;font-display:swap}@font-face{font-family:GeneralSans;src:url(/assets/GeneralSans-Bold-dlJ4aeRS.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:GeneralSans;src:url(/assets/GeneralSans-BoldItalic-CIF3g8yN.woff2)format("woff2");font-weight:700;font-style:italic;font-display:swap}*,:before,:after{box-sizing:border-box}.shadow-img:not(.is-loaded){opacity:0;visibility:hidden}[data-sequence-group]{opacity:0}.smart-image.auto-fade{transition:opacity var(--duration-master) var(--ease-master);will-change:opacity;opacity:0}.smart-image.auto-fade.is-loaded{opacity:1;transition-delay:calc(var(--i,0) * .12s)}.media-wrapper.skeleton-pulse{transition:background-color var(--duration-master) var(--ease-master);transition-delay:calc(var(--i,0) * .12s)}.media-wrapper.skeleton-pulse:has(.smart-image.is-loaded){background-color:#0000!important;animation:none!important}.video-wrapper.is-poster-visible .video-el{opacity:0;pointer-events:none}html.is-transitioning,html.is-transitioning *{pointer-events:none!important;cursor:wait!important}html{overscroll-behavior-x:none}body{background-color:var(--theme-bg);color:var(--theme-text);-webkit-font-smoothing:antialiased;font-family:var(--font-primary);font-weight:450;font-size:var(--text-base);line-height:var(--leading-base);margin:0;overflow-x:hidden}a{color:inherit;text-decoration:none}svg{fill:var(--theme-text)}img{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}i,em{font-style:italic}b,strong{font-weight:var(--weight-bold)}b.medium,strong.medium{font-weight:var(--weight-medium)}ul{margin:0}h1,h2,h3{line-height:var(--leading-tight);margin:0;font-weight:400}p{margin:0}.skeleton-pulse{background-color:color-mix(in srgb, black 10%, var(--default-bg));animation:2s ease-in-out infinite placeholder-pulse}.three-scene-wrapper{width:var(--threed-box);height:var(--threed-box);margin:var(--space-md);z-index:var(--z-canvas);opacity:0;visibility:hidden;cursor:grab;position:fixed;bottom:0;left:0}.three-scene-wrapper:active{cursor:grabbing}.three-scene-wrapper .container-3d{border-radius:var(--radius-img);width:100%;height:100%;position:relative;overflow:hidden}.three-scene-wrapper .container-3d canvas{z-index:1;opacity:1;position:relative;width:100%!important;height:100%!important}.scroll-to-top{bottom:var(--scroll-btn-bottom);left:calc(var(--col-info) + var(--col-content) + 8% + var(--padding-a));pointer-events:auto;cursor:pointer;width:var(--scroll-btn-width-desktop);color:var(--theme-text);transform-origin:100% 100%;z-index:var(--z-ui);-webkit-tap-highlight-color:transparent;background:0 0;border:none;outline:none;padding:0;display:block;position:fixed}.model-cycle-btn{bottom:var(--space-md);left:var(--space-md);z-index:var(--z-nav);cursor:pointer;width:2rem;height:2rem;transition:transform var(--duration-master) var(--ease-bounce), opacity var(--duration-fast) var(--ease-ui);-webkit-tap-highlight-color:transparent;opacity:.7;background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:fixed}@media (hover:hover){.model-cycle-btn:hover{opacity:1;transform:rotate(45deg)}}.model-cycle-btn:active{transform:rotate(0)}.model-cycle-btn svg{width:1.5rem;height:1.5rem;stroke:var(--theme-text);fill:none}.fade-btn-enter-active,.fade-btn-leave-active{transition:opacity .5s var(--ease-master)}.fade-btn-enter-from,.fade-btn-leave-to{opacity:0!important}#app-wrapper{width:100%;position:relative}#ui-layer{height:100vh;position:relative}.page-wrap{gap:var(--page-gap);min-height:100dvh;display:flex}canvas{z-index:1}#content,#project-list,#info{will-change:width, flex;transition:none!important}#project-list{width:var(--col-projects)}.page-wrap{gap:var(--page-gap);min-height:100dvh;display:flex;position:relative}@media (width>=992px) and (height<=680px){#app-wrapper,.page-wrap{min-height:680px}#info{top:0;bottom:0;left:0;height:auto!important;min-height:680px!important;position:absolute!important}#project-list{top:0;bottom:0;right:0;height:680px!important;position:absolute!important}.three-scene-wrapper{top:auto!important;bottom:var(--space-md)!important;left:var(--space-md)!important;position:absolute!important}html.is-about-open body,html.is-about-open #app-wrapper{height:auto!important;overflow:auto!important}}#info{padding:var(--padding-a) 0 0 var(--padding-a);gap:var(--space-xl);flex-direction:column;flex:0 0 var(--col-info);width:var(--col-info);max-width:var(--col-info);z-index:var(--z-nav);flex-shrink:0;display:flex;position:fixed}#info .header{gap:var(--space-xl);flex-direction:column;display:flex}#info .header .home-link{z-index:2;-webkit-tap-highlight-color:transparent}#info .header .home-link h1.name{font-weight:var(--weight-bold);color:var(--theme-bg);font-size:var(--text-xl);line-height:var(--leading-header)}#info .header h2.title{font-weight:var(--weight-medium);font-size:var(--text-lg)}#info .header .bar{width:var(--bar-width);height:var(--bar-height);background-color:var(--theme-text);left:var(--bar-offset-x);top:var(--bar-offset-y);transform-origin:0;will-change:transform;position:absolute;transform:rotate(90deg)}#info .about-trigger-area{flex-direction:column;display:flex}#info .about-trigger-area .about-link{font-size:var(--text-lg);font-weight:var(--weight-medium);text-align:left;color:var(--theme-text);cursor:pointer;-webkit-tap-highlight-color:transparent;background-color:#0000;border:0}#info .about-trigger-area .about-link svg.about-arrow{width:1.2rem;fill:var(--theme-text)}@media (hover:hover){#info .about-trigger-area .about-link:hover{opacity:.7}}#info .about-trigger-area .about-content{opacity:0;visibility:hidden;pointer-events:none;width:var(--about-content-width);max-width:80rem;display:none;overflow:hidden}#info .about-trigger-area .about-content .about-inner{align-items:flex-start;gap:var(--space-lg);width:100%;padding-bottom:var(--space-xs);margin-top:var(--space-sm);max-height:calc(100vh - 30rem);padding-right:var(--space-sm);scrollbar-width:thin;scrollbar-color:var(--theme-text) transparent;display:flex;overflow-x:hidden;overflow-y:scroll!important}#info .about-trigger-area .about-content .about-inner::-webkit-scrollbar{width:4px;display:block!important}#info .about-trigger-area .about-content .about-inner::-webkit-scrollbar-thumb{background-color:var(--theme-text);border-radius:4px}#info .about-trigger-area .about-content .about-inner .image{width:var(--about-img-width);aspect-ratio:1;border-radius:50%;flex-shrink:0;position:relative;overflow:hidden}#info .about-trigger-area .about-content .about-inner .image img{object-fit:contain;object-position:top;width:100%;height:100%;position:absolute;top:0;left:0}#info .about-trigger-area .about-content .about-inner .text{gap:var(--space-lg);flex-direction:column;width:100%;max-width:35rem;display:flex}#info .about-trigger-area .about-content .about-inner .text p{margin-bottom:var(--space-xs)}#info .about-trigger-area .about-content .about-inner .text p:last-child{margin-bottom:0}#info .about-trigger-area .about-content .about-inner .text p a.hands-link{background-color:color-mix(in srgb, var(--theme-text) 15%, transparent);white-space:nowrap;border-radius:.25rem;padding:.025rem .1rem .1rem;text-decoration:none}#info .about-trigger-area .about-content .about-inner .text p a.hands-link:hover{background-color:var(--theme-text);color:var(--theme-bg)}#info .about-trigger-area .about-content .about-inner .text .lists{gap:var(--space-sm);display:flex}#info .about-trigger-area .about-content .about-inner .text .lists h2{font-weight:var(--weight-medium);font-size:var(--text-md);margin-bottom:var(--space-xs)}#info .about-trigger-area .about-content .about-inner .text .lists .list{width:50%}#info .about-trigger-area .about-content .about-inner .text .lists .list ul{padding-left:0;list-style:none}#info .about-trigger-area .about-content .about-inner .text .lists .list ul li{padding-bottom:.5rem}#info .about-trigger-area .about-content .about-inner .text .lists .list ul a{border-bottom:1px solid}#content{margin-left:var(--content-margin);width:var(--col-content);max-width:var(--col-content)}#content .project-detail{padding-bottom:var(--space-huge);width:40vw;max-width:90rem;padding-top:var(--padding-a)}#content .project-detail .header{margin-bottom:var(--space-md)}#content .project-detail .header h1.title{font-weight:var(--weight-bold);font-size:var(--text-xl);position:relative;top:-.15em}#content .project-detail .header h2.subtitle{font-weight:var(--weight-medium);font-size:var(--text-lg)}#content .project-detail .content-blocks .section{margin-bottom:var(--space-xl);width:100%}#content .project-detail .content-blocks .section .sequence-item{pointer-events:none}#content .project-detail .content-blocks .section .is-visible{pointer-events:auto}#content .project-detail .content-blocks .section:last-child{margin-bottom:0}#content .project-detail .content-blocks .section h3.subhead{font-weight:var(--weight-bold);font-size:var(--text-base);margin-bottom:.35rem}#content .project-detail .content-blocks .section .text-block{width:60%;margin-bottom:var(--space-md);line-height:var(--leading-copy)}#content .project-detail .content-blocks .section .text-block p{margin-bottom:var(--space-sm)}#content .project-detail .content-blocks .section .text-block p:last-child{margin-bottom:0}#content .project-detail .content-blocks .section .media-wrapper{border-radius:var(--radius-img);min-width:0;position:relative;overflow:hidden}#content .project-detail .content-blocks .section .media-wrapper .image{z-index:2;width:100%;max-width:100%;height:auto;display:block;position:relative}#content .project-detail .content-blocks .section .overlap-container{position:relative}#content .project-detail .content-blocks .section .overlap-container .detail-wrapper{z-index:5;border-radius:var(--radius-img);width:100%;position:relative;overflow:hidden}#content .project-detail .content-blocks .section .overlap-container .detail-wrapper.right{margin-left:auto;margin-right:var(--space-md)}#content .project-detail .content-blocks .section .overlap-container .detail-wrapper.left{margin-right:auto;margin-left:var(--space-md)}#content .project-detail .content-blocks .section .overlap-container .detail-wrapper.center{margin-left:auto;margin-right:auto}#content .project-detail .content-blocks .section .overlap-container .detail-wrapper .image{width:100%;height:auto;display:block}#content .project-detail .content-blocks .section .is-media-block{margin-bottom:1rem}#content .project-detail .content-blocks .section .media-container{gap:var(--space-xs);width:100%;margin-bottom:var(--space-sm);flex-direction:column;display:flex}#content .project-detail .content-blocks .section .media-container:last-child{margin-bottom:0}#content .project-detail .content-blocks .section .media-container .video-wrapper{border-radius:var(--radius-img);background-color:var(--load-color);aspect-ratio:16/9;width:100%;position:relative;overflow:hidden}#content .project-detail .content-blocks .section .media-container .video-wrapper .video-el{opacity:0;transition:opacity var(--duration-master) var(--ease-master);will-change:opacity}#content .project-detail .content-blocks .section .media-container .video-wrapper.is-ready{background-color:#0000;animation:none!important}#content .project-detail .content-blocks .section .media-container .video-wrapper.is-ready .video-el{opacity:1}#content .project-detail .content-blocks .section .media-container .video-wrapper.is-poster-visible .video-el{opacity:0}#content .project-detail .content-blocks .section .media-container .video-wrapper video,#content .project-detail .content-blocks .section .media-container .video-wrapper .video-el{z-index:2;display:block;top:0;left:0;object-fit:cover!important;width:100%!important;height:100%!important;position:absolute!important}#content .project-detail .content-blocks .section .media-container .video-wrapper .video-poster-overlay{z-index:10;cursor:pointer;background-color:var(--load-color);width:100%;height:100%;position:absolute;top:0;left:0}#content .project-detail .content-blocks .section .media-container .video-wrapper .video-poster-overlay:before{content:"";background:color-mix(in srgb, var(--theme-bg) 50%, transparent);z-index:2;width:100%;height:100%;transition:background var(--duration-fast) var(--ease-ui);position:absolute;top:0;left:0}#content .project-detail .content-blocks .section .media-container .video-wrapper .video-poster-overlay .poster-image{object-fit:cover;z-index:1;width:100%;height:100%;position:absolute}#content .project-detail .content-blocks .section .media-container .video-wrapper .video-poster-overlay .play-button{z-index:3;width:100%;height:var(--play-box);background:var(--theme-text);justify-content:flex-end;align-items:center;gap:var(--space-xs);transform-origin:0;transition:all var(--duration-fast) var(--ease-bounce);padding-right:1.5rem;display:flex;position:absolute;top:80%;left:-40%;transform:rotate(-13deg)}#content .project-detail .content-blocks .section .media-container .video-wrapper .video-poster-overlay .play-button .play-text{color:var(--theme-bg);font-size:var(--text-base);transition:color var(--duration-fast) var(--ease-ui)}#content .project-detail .content-blocks .section .media-container .video-wrapper .video-poster-overlay .play-button svg{width:var(--space-md);height:var(--space-md);fill:var(--theme-bg);transition:fill var(--duration-fast) var(--ease-ui)}#content .project-detail .content-blocks .section .media-container .video-wrapper .video-poster-overlay:hover .play-button{background:var(--theme-bg);transform:rotate(-15deg)}#content .project-detail .content-blocks .section .media-container .video-wrapper .video-poster-overlay:hover .play-button svg{fill:var(--theme-text)}#content .project-detail .content-blocks .section .media-container .video-wrapper .video-poster-overlay:hover .play-button .play-text{color:var(--theme-text)}#content .project-detail .content-blocks .section .media-container .video-wrapper .video-poster-overlay:hover:before{background:color-mix(in srgb, var(--theme-bg) 0%, transparent)}#content .project-detail .content-blocks .section .slide-footer{align-items:center;gap:var(--space-xs);letter-spacing:.02rem;flex-direction:row;align-items:flex-start;padding-top:.5rem;display:flex}#content .project-detail .content-blocks .section .slide-footer .caption{font-style:italic;font-weight:var(--weight-medium);font-size:var(--text-mini);flex-grow:2}#content .project-detail .content-blocks .section .slide-footer .indicator{justify-content:flex-end;align-items:center;gap:var(--space-xs);flex-direction:row;flex-grow:1;margin-top:.15rem;display:flex}#content .project-detail .content-blocks .section .slide-footer .indicator .slide-number{font-weight:var(--weight-medium);color:var(--theme-text);letter-spacing:.05em;white-space:nowrap;font-size:.75rem;line-height:1}#content .project-detail .content-blocks .section .slide-footer .indicator .slide-indicator{z-index:100;pointer-events:none;align-items:center;display:flex;position:relative}#content .project-detail .content-blocks .section .slide-footer .indicator .slide-indicator svg{width:var(--space-sm);height:var(--space-sm);overflow:visible;transform:rotate(-90deg)}#content .project-detail .content-blocks .section .slide-footer .indicator .slide-indicator svg circle.bg{fill:none;stroke:var(--theme-text);stroke-width:16px;opacity:.15}#content .project-detail .content-blocks .section .slide-footer .indicator .slide-indicator svg circle.progress{fill:none;stroke:var(--theme-text);stroke-width:16px}#content .project-detail .content-blocks .section .image-block.grid-1-2{gap:var(--space-sm);grid-template-columns:repeat(2,1fr);display:grid}#content .project-detail .content-blocks .section .image-block.grid-1-2 .media-wrapper:first-child{grid-column:1/-1}#content .project-detail .content-blocks .section .image-block{align-items:flex-start;gap:var(--space-sm);flex-wrap:wrap;width:100%;display:flex}#content .project-detail .content-blocks .section .image-block.single .media-wrapper{width:100%}#content .project-detail .content-blocks .section .image-block.twobytwo{gap:var(--space-sm);grid-template-columns:repeat(2,1fr);display:grid!important}#content .project-detail .content-blocks .section .image-block.twobytwo .media-wrapper{width:100%!important}#content .project-detail .content-blocks .section .image-block.onebythree .media-wrapper:first-child{width:100%}#content .project-detail .content-blocks .section .image-block.onebythree .media-wrapper:not(:first-child){width:calc(33.333% - var(--space-sm) * .66)}#content .project-detail .content-blocks .section .image-block.onebytwo .media-wrapper:first-child{width:100%}#content .project-detail .content-blocks .section .image-block.onebytwo .media-wrapper:not(:first-child){width:calc(50% - var(--space-sm) / 2)}#content .project-detail .content-blocks .section .image-block.slideshow{border-radius:var(--radius-img);width:100%;display:block;position:relative;overflow:hidden}#content .project-detail .content-blocks .section .image-block.slideshow .media-wrapper{opacity:0;visibility:hidden;top:0;left:0;width:100%!important;height:100%!important;margin:0!important;position:absolute!important}#content .project-detail .content-blocks .section .image-block.slideshow .media-wrapper.is-active-init{opacity:1;visibility:visible;z-index:2}#content .project-detail .content-blocks .section .image-block.slideshow .media-wrapper .image,#content .project-detail .content-blocks .section .image-block.slideshow .media-wrapper .video-wrapper,#content .project-detail .content-blocks .section .image-block.slideshow .media-wrapper video{object-fit:cover;display:block;width:100%!important;height:100%!important}.sizer-image{visibility:hidden;pointer-events:none;width:100%;margin:0;padding:0;display:block;height:auto!important}@keyframes placeholder-pulse{0%,to{background-color:color-mix(in srgb, var(--theme-text) 10%, var(--theme-bg))}50%{background-color:color-mix(in srgb, var(--theme-text) 20%, var(--theme-bg))}}@keyframes three-pulse-breathe{0%,to{opacity:.05}50%{opacity:.15}}#project-list{width:var(--col-projects);flex:0 0 var(--col-projects);max-width:var(--col-projects);padding:var(--padding-a) 0;gap:var(--space-sm);box-sizing:border-box;flex-direction:column;height:100vh;display:flex}@media (hover:hover){#project-list:hover .project:not(.is-active){opacity:var(--opacity-dim)}}#project-list .project-wrapper{flex:1;width:100%;min-height:0}#project-list .project-wrapper .project{height:100%;transition:opacity var(--duration-ui) var(--ease-ui);display:flex}#project-list .project-wrapper .project a.project-link{width:100%;height:100%;display:block}#project-list .project-wrapper .project a.project-link .thumb{border-radius:var(--radius-img) 0 0 var(--radius-img);width:100%;height:100%;position:relative}#project-list .project-wrapper .project a.project-link .thumb img{object-fit:cover;border-radius:var(--radius-img) 0 0 var(--radius-img);width:100%;height:100%;position:absolute}#project-list .project-wrapper .project a.project-link .thumb .text.notch{background-color:var(--theme-bg);border-top-right-radius:var(--radius-img);padding:var(--space-xs) var(--space-sm) 0 0;z-index:10;text-align:left;justify-content:flex-end;gap:var(--space-xs);font-size:var(--text-base);border-bottom-left-radius:0;flex-direction:row;display:flex;position:absolute;bottom:0;left:0;width:min-content!important;min-width:0!important}#project-list .project-wrapper .project a.project-link .thumb .text.notch .project-title{font-weight:var(--weight-bold);line-height:var(--leading-tight);white-space:nowrap}#project-list .project-wrapper .project a.project-link .thumb .text.notch .project-subtitle{font-weight:var(--weight-medium);line-height:var(--leading-tight);white-space:nowrap}#project-list .project-wrapper .project a.project-link .thumb .text.notch:before,#project-list .project-wrapper .project a.project-link .thumb .text.notch:after{content:"";width:var(--radius-notch);height:var(--radius-notch);background-color:var(--theme-bg);position:absolute;-webkit-mask-image:url("data:image/svg+xml;utf8,<svg viewBox=\"0 0 200 200\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M0 0V200H200C89.54 200 0 110.46 0 0Z\" /></svg>");mask-image:url("data:image/svg+xml;utf8,<svg viewBox=\"0 0 200 200\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M0 0V200H200C89.54 200 0 110.46 0 0Z\" /></svg>");-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}#project-list .project-wrapper .project a.project-link .thumb .text.notch:before{bottom:100%;left:0}#project-list .project-wrapper .project a.project-link .thumb .text.notch:after{bottom:0;left:100%}#project-list .project-wrapper .project.is-dimmed{opacity:var(--opacity-dim)}#project-list .project-wrapper .project.is-active{opacity:1!important}#project-list .project-wrapper .project.is-active a{cursor:default}@media (hover:hover){#project-list .project-wrapper .project:hover{opacity:1!important}}.is-desktop-only{display:block}.is-mobile-only{display:none}.has-shadowbox{cursor:pointer}.shadow-box-wrapper{z-index:var(--z-overlay);cursor:zoom-out;justify-content:center;align-items:center;padding:0;display:flex;position:fixed;inset:0;overflow:hidden}.shadow-box-wrapper .shadow-bg{background-color:var(--theme-bg);z-index:1;position:absolute;inset:0}.shadow-box-wrapper .image-container{z-index:2;cursor:default;place-items:center;width:100vw;height:100vh;display:grid;position:relative;overflow:hidden}.shadow-box-wrapper .shadow-content-wrapper{flex-direction:column;align-items:center;max-width:90vw;max-height:90vh;display:flex;position:relative}.shadow-box-wrapper .image-stage{place-items:center;display:inline-grid;position:relative}.shadow-box-wrapper .slide-wrapper{border-radius:var(--radius-img);grid-area:1/1;line-height:0;display:inline-block;position:relative}.shadow-box-wrapper .shadow-img{object-fit:contain;border-radius:var(--radius-img);width:auto;max-width:100%;height:auto;max-height:80vh;display:block}.shadow-box-wrapper .shadow-caption{color:var(--theme-bg);font-size:var(--text-base);font-weight:var(--weight-medium);text-align:left;pointer-events:none;background-color:var(--theme-text);border-radius:var(--radius-img);width:100%;margin-top:1rem;padding:1rem;display:block}.shadow-box-wrapper .close-btn{top:var(--space-sm);right:var(--space-sm);z-index:var(--z-modal-ui);background-color:var(--theme-bg);color:var(--theme-text);width:var(--size-btn-lg);height:var(--size-btn-lg);cursor:pointer;transition:transform var(--duration-ui) var(--ease-ui);border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute}.shadow-box-wrapper .close-btn:hover{transform:scale(1.1)}.shadow-box-wrapper .close-btn svg{width:var(--space-md);height:var(--space-md)}.shadow-box-wrapper .nav-btn{z-index:var(--z-modal-nav);cursor:pointer;background-color:#0000;border:none;justify-content:center;align-items:center;display:flex;position:absolute;top:50%}.shadow-box-wrapper .nav-btn.prev{left:0}.shadow-box-wrapper .nav-btn.next{right:0}.shadow-box-wrapper .nav-btn svg{width:var(--nav-btn-size);height:auto}@media (width<=1919.98px){:root{--col-info:16%;--col-projects:44%;--target-min-content:30%;--target-min-projects:44%;--target-proj-content:40%;--target-proj-projects:34%;--about-img-width:20%;--threed-box:12vw;--threed-max:12rem}.about-content{max-height:calc(100vh - 30rem);padding-right:var(--space-sm);scrollbar-width:thin;scrollbar-color:var(--theme-text) transparent;overflow-y:auto}.about-content::-webkit-scrollbar{width:4px}.about-content::-webkit-scrollbar-thumb{background-color:var(--theme-text);border-radius:4px}}@media (width<=1599.98px){:root{--col-info:20%;--col-projects:40%;--target-min-projects:40%;--target-proj-projects:30%;--threed-box:15vw;--threed-max:12rem;--about-img-width:20%;--bar-offset-x:-27rem;--bar-offset-y:9rem}.about-content{width:var(--about-content-width-tablet)}.project-link .text{width:var(--proj-text-width-desktop);min-width:var(--proj-text-width-desktop)}}@media (width<=1199.98px){:root{--col-info:22%;--col-projects:33%;--col-content:35%;--target-min-content:38%;--target-min-projects:30%;--target-proj-content:38%;--target-proj-projects:30%;--about-img-width:20%;--threed-box:14vw;--threed-max:20rem}.project-link .text{width:var(--proj-text-width-mobile)!important;min-width:var(--proj-text-width-mobile)!important}.project-link .text .project-title{font-size:var(--text-base)}.text-block{width:100%!important}}@media (width<=991.98px){:root{--text-xl:2rem;--text-lg:1.5rem;--space-huge:5rem;--space-xxl:5rem;--space-xl:3rem;--page-gap:3%;--padding-a:1rem;--threed-box:50vw;--threed-max:50vw;--bar-width:40rem;--bar-height:3.7rem;--bar-offset-x:-28rem;--bar-offset-y:6.6rem;--about-img-width:30%;--scroll-btn-bottom:2rem;--radius-img:.5rem}.three-scene-wrapper{margin:1rem;visibility:visible!important;position:absolute!important;bottom:0!important}.is-desktop-only{display:none!important}.is-mobile-only{display:block!important}.model-cycle-btn{position:absolute;bottom:0;left:0}.model-cycle-btn svg{width:1.5rem;height:1.5rem}.image-block.twobytwo,.image-block.grid-1-2{grid-template-columns:1fr!important}.image-block.onebythree .media-wrapper,.image-block.onebytwo .media-wrapper{width:100%!important}.scroll-to-top{bottom:var(--scroll-btn-bottom);width:var(--scroll-btn-width-mobile);transform-origin:100%;left:auto;right:-14.75rem}#ui-layer{height:auto}#ui-layer .page-wrap{flex-direction:column;height:auto;min-height:auto}#ui-layer .page-wrap #info,#ui-layer .page-wrap #content,#ui-layer .page-wrap #project-list{flex:none;max-width:100%!important}#ui-layer .page-wrap #info{z-index:10;width:100%;padding:var(--space-md) var(--padding-a) 0;gap:var(--space-md);margin-top:2.1rem;position:relative}#ui-layer .page-wrap #info .header{flex-direction:row;gap:5rem}#ui-layer .page-wrap #info .about-trigger-area .about-content{max-height:0;transition:max-height var(--duration-accordion) var(--ease-master);overflow:hidden;width:100%!important}#ui-layer .page-wrap #info .about-trigger-area .about-content.is-expanded{scrollbar-width:none;max-height:1200px;overflow-y:clip}#ui-layer .page-wrap #info .about-trigger-area .about-content.is-expanded::-webkit-scrollbar{display:none}#ui-layer .page-wrap #info .about-trigger-area .about-content .about-inner{gap:var(--space-sm);max-height:initial;flex-direction:column;overflow:visible!important}#ui-layer .page-wrap #info .about-trigger-area .about-content .about-inner .text{max-width:100%}#ui-layer .page-wrap #info .about-trigger-area .about-content .about-inner .text .lists{gap:var(--space-lg)}#ui-layer .page-wrap #content{min-height:calc(var(--threed-box) + 2rem)}#ui-layer .page-wrap #content .three-wrapper{padding-bottom:calc(var(--threed-box) + 2rem);min-height:100vh;padding-top:var(--space-xl)}#ui-layer .page-wrap #content{order:2;width:100%;margin:0;padding:0}#ui-layer .page-wrap #content .project-detail{min-height:auto;padding:var(--space-md) var(--padding-a) 0;width:100%}#ui-layer .page-wrap #project-list{padding:var(--space-xl) 0 0 var(--padding-a);gap:var(--space-sm);order:1;width:100%;height:auto}}@media (width<=991.98px) and (hover:hover){#ui-layer .page-wrap #project-list:has(.project:hover) .project:not(:hover):not(.is-active){opacity:var(--opacity-dim)}}@media (width<=991.98px){#ui-layer .page-wrap #project-list .project-wrapper a.project-link .thumb{min-height:6rem}#ui-layer .page-wrap .has-shadowbox{cursor:default}}@media (width<=575.98px){#ui-layer .page-wrap #info{gap:var(--space-md)}}
