@font-face{font-family:Rinter;src:url(../Assets/Web-PS/Rinter.woff2?v=2.0.0)format("woff2"),url(../Assets/Web-TT/Rinter.woff?v=2.0.0)format("woff"),url(../Assets/Web-TT/Rinter.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Rinter;src:local(Helvetica Neue),local(Helvetica),local(Arial);font-weight:400;font-style:normal;font-display:swap;unicode-range:U+52}*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#0a0a0a;--fg:#fff;--dim:#ffffff61;--bar-h:68px;--scene-rail-width:18px;--project-popup-scrollbar-width:var(--scene-rail-width);--project-gallery-rail-gap:12px;--project-fold-rail:26px;--bp-mobile-max:767px;--bp-tablet-min:768px;--bp-tablet-max:1099px;--bp-desktop-min:1100px;--bp-desktop-large-min:1440px;--font:"Rinter", "Helvetica Neue", Helvetica, Arial, sans-serif;--ease:cubic-bezier(.83, 0, .17, 1);--ease-soft:cubic-bezier(.83, 0, .17, 1);--ease-quint:cubic-bezier(.83, 0, .17, 1)}html{background:var(--bg);color:var(--fg);font-family:var(--font);-webkit-font-smoothing:antialiased;overflow:hidden}body{background:var(--bg);font-family:var(--font);padding-bottom:var(--bar-h);transition:background .4s var(--ease), color .4s var(--ease);height:100dvh;overflow:hidden}body,.site-title,.title-prefix,.title-suffix,nav,.info-bar__project,.contact,.about{font-family:var(--font)}html.has-custom-cursor,html.has-custom-cursor *,html.has-custom-cursor :before,html.has-custom-cursor :after{cursor:none!important}.site-header{z-index:110;pointer-events:none;transition:opacity .4s var(--ease-soft);background:0 0;justify-content:space-between;align-items:center;padding:26px clamp(20px,4vw,56px);display:flex;position:fixed;top:0;left:0;right:0}.site-header>*{pointer-events:auto}.site-header__logo{transition:opacity .3s var(--ease);align-items:center;text-decoration:none;display:flex}.site-header__logo:hover{opacity:.7}.logo-persistent{width:auto;height:26px;display:block}.site-header__nav{align-items:center;gap:36px;display:flex}.site-header__mobile-actions{align-items:center;gap:12px;display:none}.nav-link{font-family:var(--font);color:var(--fg);cursor:pointer;transition:opacity .3s var(--ease);background:0 0;border:none;padding:6px 0;font-size:17px;text-decoration:none;position:relative}.nav-link:after{content:"";background:var(--fg);width:0;height:1px;transition:width .4s var(--ease);position:absolute;bottom:0;left:0}.nav-link:hover:after{width:100%}.nav-link:hover{opacity:.8}.mobile-contact-btn{color:#000;min-height:32px;font-family:var(--font);letter-spacing:.03em;-webkit-backdrop-filter:blur(12px);transition:background .3s var(--ease), border-color .3s var(--ease), transform .3s var(--ease), opacity .3s var(--ease);background:#ffffff6b;border:1px solid #00000024;border-radius:9999px;justify-content:center;align-items:center;padding:7px 14px;font-size:13px;text-decoration:none;display:none;box-shadow:0 4px 18px #0000000f}.mobile-contact-btn:hover{background:#ffffff8f;border-color:#0000002e;transform:translateY(-1px)}.menu-toggle{-webkit-backdrop-filter:blur(12px);cursor:pointer;width:36px;height:36px;transition:background .3s var(--ease), border-color .3s var(--ease), opacity .5s var(--ease-quint);background:#ffffff6b;border:1px solid #00000024;border-radius:50%;justify-content:center;align-items:center;padding:6px;display:none;position:relative;box-shadow:0 4px 18px #0000000f}.menu-toggle:hover{background:#ffffff8f;border-color:#0000002e}.menu-toggle span{background:var(--fg);width:14px;height:2px;transition:transform .35s var(--ease), opacity .35s var(--ease);border-radius:999px;position:absolute;top:50%;left:50%}.menu-toggle span:first-child{transform:translate(-50%,-50%)rotate(0)}.menu-toggle span:nth-child(2){transform:translate(-50%,-50%)rotate(90deg)}.menu-toggle span:nth-child(3){opacity:0}.scene-rail{z-index:140;width:var(--scene-rail-width);-webkit-backdrop-filter:blur(12px)saturate(180%);cursor:pointer;background:#ffffff40;border:1px solid #fff6;border-radius:9999px;height:clamp(200px,42vh,420px);position:fixed;top:50%;right:clamp(16px,3vw,40px);overflow:hidden;transform:translateY(-50%);box-shadow:0 4px 24px #0000001f}body.light-mode .scene-rail{background:#ffffff4d;border-color:#ffffff8c;box-shadow:0 4px 24px #00000014}.scene-rail__thumb{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;will-change:transform, height;background:#0000008c;border-radius:9999px;height:32px;position:absolute;top:0;left:1px;right:1px;box-shadow:inset 0 1px #ffffff1f,0 2px 6px #00000029}.scene-rail__thumb:active,.scene-rail__thumb.is-dragging{cursor:grabbing}.scene-rail__thumb:focus-visible{outline-offset:3px;outline:2px solid #ffffffd9}body.light-mode .scene-rail__thumb:focus-visible{outline-color:#000000a6}body.scene-rail-dragging{-webkit-user-select:none;user-select:none}body.overlay-open .scene-rail{visibility:hidden;pointer-events:none;transition:opacity .4s var(--ease), visibility .4s var(--ease);opacity:0!important}.page-overlay{z-index:180;opacity:0;pointer-events:none;transition:opacity .8s var(--ease-quint), backdrop-filter .8s var(--ease-quint);-webkit-backdrop-filter:blur(24px)saturate(160%);background:#ffffffbf;place-items:center;display:grid;position:fixed;inset:0}.page-overlay.is-open{opacity:1;pointer-events:auto}@media (width<=767px){.page-overlay{background:var(--bg);-webkit-backdrop-filter:none}.page-panel--about .about__photo-wrap{display:none}body.overlay-open .info-bar{visibility:hidden!important}}.page-overlay__panel{-webkit-overflow-scrolling:touch;opacity:0;visibility:hidden;transition:transform .8s var(--ease-quint), opacity .8s var(--ease-quint);will-change:transform, opacity;justify-content:center;align-items:center;padding:120px clamp(16px,4vw,56px) 100px;display:flex;position:absolute;inset:0;overflow-y:auto;transform:translate(100%)}.page-panel--about{overflow-y:hidden}.page-overlay__panel.is-active{opacity:1;visibility:visible;transform:translate(0)}.page-overlay__panel.is-exiting{visibility:visible;pointer-events:none}.page-overlay__content{width:min(960px,92vw);max-height:none;box-shadow:none;background:0 0;border:none;border-radius:28px;padding:clamp(28px,4vw,48px);overflow:visible}.page-overlay__back{margin-bottom:clamp(22px,3vw,32px)}body.light-mode .page-overlay__content{box-shadow:none;background:0 0;border:none}.overlay-close{-webkit-backdrop-filter:blur(12px)saturate(140%);width:44px;height:44px;color:var(--fg);cursor:pointer;transition:all .3s var(--ease);z-index:300;background:#ffffff14;border:1px solid #ffffff26;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:100px;left:clamp(20px,4vw,32px);box-shadow:0 4px 12px #00000026}body.light-mode .overlay-close{background:#fff9;border:1px solid #fff6;box-shadow:0 4px 12px #0000000d}.overlay-close:hover{background:#ffffff26;transform:scale(1.05)}body.light-mode .overlay-close:hover{background:#fffc}.custom-cursor{background:var(--fg);width:6px;height:6px;box-shadow:none;pointer-events:none;opacity:0;transition:transform .12s var(--ease), background .3s var(--ease), opacity .25s var(--ease), width .24s var(--ease-soft), height .24s var(--ease-soft), border-color .24s var(--ease-soft), box-shadow .24s var(--ease-soft);z-index:999;border:1px solid #0000;border-radius:50%;position:fixed;top:0;left:0;transform:translate(-50%,-50%)scale(1)}.custom-cursor:before,.custom-cursor:after{content:"";opacity:0;width:14px;height:2px;transition:opacity .18s var(--ease);background:#0a0a0a;border-radius:999px;position:absolute;top:50%;left:50%}.custom-cursor:before{transform:translate(-50%,-50%)}.custom-cursor:after{transform:translate(-50%,-50%)rotate(90deg)}html.has-custom-cursor .custom-cursor{opacity:1}.custom-cursor.is-interactive{transform:translate(-50%,-50%)scale(3)}.custom-cursor.is-clicking{transform:translate(-50%,-50%)scale(.85)}.custom-cursor.is-interactive.is-clicking{transform:translate(-50%,-50%)scale(2.55)}.custom-cursor.is-project-trigger{-webkit-backdrop-filter:blur(8px)saturate(140%);background:#ffffff2e;border-color:#0000001a;width:20px;height:20px;transform:translate(-50%,-50%)scale(1);box-shadow:0 10px 24px #0000001f}.custom-cursor.is-project-trigger:before,.custom-cursor.is-project-trigger:after{opacity:0}.custom-cursor.is-project-trigger.is-clicking{background:#ffffff47;transform:translate(-50%,-50%)scale(.92)}body.light-mode .custom-cursor.is-project-trigger{background:#0a0a0a1f;border-color:#ffffff24;box-shadow:0 10px 24px #00000014}body.light-mode .custom-cursor.is-project-trigger.is-clicking{background:#0a0a0a33}.custom-cursor.is-hidden{opacity:0}.logo-cursor-btn{-webkit-backdrop-filter:blur(12px)saturate(140%);pointer-events:none;opacity:0;will-change:transform, opacity;width:52px;height:52px;transition:opacity .2s var(--ease-quint), transform .2s var(--ease-quint);z-index:9999;background:#fff3;border:1px solid #fff6;border-radius:50%;justify-content:center;align-items:center;display:flex;position:fixed;top:0;left:0;transform:translate(-50%,-50%)scale(.8);box-shadow:0 4px 20px #0000001a}.logo-cursor-btn img{object-fit:contain;width:20px;height:20px;display:block}.logo-cursor-btn.visible{opacity:1;transform:translate(-50%,-50%)scale(1)}body.light-mode .logo-cursor-btn{background:#0a0a0a1f;border-color:#ffffff29;box-shadow:0 4px 20px #00000014}body.light-mode{--bg:#fff;--fg:#0a0a0a;--dim:#0000009e}body.light-mode ::-webkit-scrollbar-thumb{background:#0000001f}body.light-mode .info-desc.is-hovered{color:var(--fg)}body.light-mode .info-bar{background:#ffffff8c;border:1px solid #0000001f;box-shadow:0 10px 40px #00000014}.about,.contact{justify-content:center;align-items:center;display:flex}.about__inner{grid-template-columns:1fr 1fr;align-items:center;gap:clamp(32px,5vw,80px);width:100%;max-width:960px;display:grid}@media (width>=768px) and (width<=1099px){.site-header{padding:20px}.site-header__nav{gap:26px}.logo-persistent{height:22px}.scene-rail{display:none}.intro{padding:14vh 20px 10vh}.scene__logo-wrap{--logo-unit:clamp(150px, 44vw, 400px);padding:0}.scene__logo{max-height:58vh;animation:10s cubic-bezier(.83,0,.17,1) infinite logo-float}.scenes{scroll-snap-type:none}.scene{scroll-snap-align:none;scroll-snap-stop:normal}.page-overlay__panel{padding:96px 20px 80px}.page-overlay__content{border-radius:22px;width:min(820px,94vw);padding:24px}.info-desc{padding:0 24px;font-size:13px}.info-bar{--bar-pad-x:20px}}@media (prefers-reduced-motion:reduce){.scene__logo{animation:none}}.about__text{flex-direction:column;order:1;gap:18px;display:flex}.about__photo-wrap{aspect-ratio:4/5;border-radius:22px;order:2;position:relative;overflow:hidden}.about__photo{filter:grayscale(.15);object-fit:cover;object-position:50% 15%;width:100%;height:100%;transition:filter .6s var(--ease), transform .6s var(--ease);display:block}.about__photo-wrap:hover .about__photo{filter:grayscale(0);transform:scale(1.02)}@media (width<=1099px){.about__inner{grid-template-columns:1fr;gap:28px}.about__photo-wrap{aspect-ratio:16/9;order:1;width:100%;max-width:560px;margin:0 auto}.about__text{order:2}}.about__heading,.contact__heading{font-family:var(--font);color:var(--fg);letter-spacing:.02em;margin-bottom:12px;font-size:clamp(28px,4vw,34px);font-weight:400;line-height:1.15}.about__paragraph{font-family:var(--font);color:var(--dim);letter-spacing:.01em;font-size:14px;line-height:1.7}.contact__inner{text-align:center;width:100%;max-width:480px}.contact__form{text-align:left;flex-direction:column;gap:24px;display:flex}.form-group{flex-direction:column;gap:8px;display:flex}.form-label{font-family:var(--font);color:var(--dim);letter-spacing:.06em;text-transform:uppercase;font-size:12px}.form-label--center{text-align:center}.form-hint{font-family:var(--font);color:var(--dim);text-align:center;margin-top:-4px;font-size:12px}.form-input,.form-textarea{font-family:var(--font);color:var(--fg);border:none;border-bottom:1px solid var(--dim);letter-spacing:.01em;background:0 0;outline:none;padding:10px 0;font-size:14px}.form-input:focus,.form-textarea:focus{border-color:var(--fg)}.form-input[aria-invalid=true],.form-textarea[aria-invalid=true]{border-color:#f97c7c}.form-input::placeholder,.form-textarea::placeholder{color:var(--dim);opacity:.6}.form-textarea{resize:vertical;min-height:100px;line-height:1.6}.budget-group{flex-direction:column;gap:12px;display:flex}.budget-options{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.budget-option{position:relative}.budget-option input[type=radio]{opacity:0;pointer-events:none;position:absolute}.budget-option label{font-family:var(--font);color:var(--dim);border:1px solid var(--dim);cursor:pointer;transition:transform .2s var(--ease), opacity .2s var(--ease);-webkit-user-select:none;user-select:none;border-radius:40px;padding:8px 20px;font-size:14px;display:inline-block}.budget-option label:hover{border-color:var(--fg);color:var(--fg);transform:translateY(-1px)}.budget-option input[type=radio]:checked+label{background:var(--fg);color:var(--bg);border-color:var(--fg)}.form-submit{font-family:var(--font);color:var(--fg);border:1px solid var(--dim);cursor:pointer;letter-spacing:.04em;transition:transform .2s var(--ease), opacity .2s var(--ease);background:0 0;border-radius:40px;align-self:center;margin-top:8px;padding:12px 32px;font-size:14px}.form-submit:hover{background:var(--fg);color:var(--bg);border-color:var(--fg);transform:translateY(-1px)}.form-submit--success{pointer-events:none;transition:background .4s var(--ease-quint), border-color .4s var(--ease-quint), color .2s var(--ease-quint);transform:none;color:#fff!important;opacity:1!important;background:#48c774eb!important;border-color:#48c774eb!important}.ohnohoney{opacity:0;z-index:-1;width:0;height:0;position:absolute;top:0;left:0;overflow:hidden}.form-status{font-family:var(--font);text-align:center;font-size:12px;line-height:1.5}.form-status[data-state=error]{color:#f97c7c}.form-status[data-state=success]{color:#a2e0a0f2}.form-privacy{font-family:var(--font);color:var(--dim);text-align:center;max-width:34ch;margin:0 auto;font-size:12px;line-height:1.6}.form-privacy a{color:inherit;text-underline-offset:.18em;text-decoration-thickness:1px}img{display:block}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:2px}.scenes{z-index:2;scrollbar-width:none;touch-action:pinch-zoom;height:100dvh;position:relative;overflow-y:auto}.scenes::-webkit-scrollbar{display:none}.scene{scroll-snap-align:start;scroll-snap-stop:always;width:100%;height:100dvh;transition:background .4s var(--ease);contain:layout paint;background:0 0;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.scene--intro{contain:layout;justify-content:center;overflow:visible}@media (width>=768px){.scene{opacity:0;pointer-events:none;transition:background .4s var(--ease), opacity .6s var(--ease-quint), transform .6s var(--ease-quint);transform:translateY(38px)}.scene.is-current,.scene--intro{opacity:1;pointer-events:auto;transform:translateY(0)}}.intro{z-index:1;text-align:center;justify-content:center;align-items:center;width:100%;height:100%;padding:clamp(56px,9vw,120px) clamp(20px,4vw,56px);display:flex;position:relative;overflow:visible}.intro__bg{object-fit:contain;opacity:0;pointer-events:none;width:140vmax;height:140vmax;transition:transform .9s var(--ease), opacity .6s var(--ease);z-index:0;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-61deg)scale(.72)}.scene--intro.is-active .intro__bg{opacity:.22;transform:translate(-50%,-50%)rotate(-16deg)scale(1)}body.light-mode .intro__bg{filter:invert()}body.light-mode .scene--intro.is-active .intro__bg{opacity:.18}.intro__content{opacity:0;width:100%;max-width:1100px;transition:opacity .6s var(--ease), transform .6s var(--ease);z-index:2;position:relative;transform:translateY(10px)}.intro__content.is-visible{opacity:1;transform:translateY(0)}.site-title-block{text-align:right;flex-direction:column;align-items:flex-end;width:fit-content;max-width:100%;margin:0 auto;line-height:1.2;display:flex;overflow:visible}.site-kicker{letter-spacing:.1em;text-transform:uppercase;color:var(--dim);text-align:right;margin-bottom:clamp(8px,1.4vw,14px);font-family:inherit;font-size:clamp(17px,2.2vw,22px);line-height:1;display:block}.site-title{font-family:inherit;font-size:15vw;font-weight:inherit;white-space:nowrap;letter-spacing:-.02em;color:var(--fg);flex-direction:row;justify-content:flex-end;align-items:baseline;margin:0;line-height:1.2;display:flex;overflow:visible}@media (width>=768px){.site-title{font-size:10vw}}@media (width<=767px){.site-title{font-size:15vw}}.title-prefix{white-space:nowrap;line-height:1.2;display:inline-block;overflow:visible}.title-suffix{flex-shrink:0;line-height:1.2;display:inline-block;overflow:visible}.site-year{opacity:.5;text-align:right;margin-top:4px;font-family:inherit;font-size:.85rem}.scene-vectors{z-index:1;pointer-events:none;position:fixed;inset:0}.scene__vector{left:var(--vx);top:var(--vy);--vector-unit:clamp(300px, 34vw, 530px);width:calc(var(--vector-unit) * var(--vk,1) * var(--vscale,1));opacity:0;pointer-events:none;will-change:transform, opacity;position:absolute;transform:translate(-50%,-50%)}.scene__vector-img{width:100%;height:auto;display:block}@media (width<=1099px) and (orientation:portrait){.scene__vector{--vector-unit:clamp(240px, 58vw, 430px);left:calc(var(--vx) * .8 + 10%);top:min(calc((var(--vy) - 50%) * 1.3 + 50%), 78%)}}.scene__logo-wrap{--logo-unit:clamp(150px, 40vw, 520px);--logo-k:1.8;z-index:2;width:min(88vw, 1180px, calc(var(--logo-unit) * var(--logo-k-active,var(--logo-k)) * var(--logo-scale,1)));place-items:center;padding:0;display:grid;position:relative}@media (width<=1099px){.scene__logo-wrap{--logo-k-active:var(--logo-k-compact)}}.scene__logo-wrap:after{content:"";z-index:10;position:absolute;inset:-15vh -10vw}.scene__logo{object-fit:contain;width:100%;height:auto;max-height:65vh;transform:scale(calc(1 + .04 * var(--logo-proximity,0)));transition:opacity .35s var(--ease);will-change:transform, opacity;grid-area:1/1}body.has-expanded-footer .scene__logo-wrap{pointer-events:none}body:has(.info-bar.is-expanded) .scene__logo-wrap{pointer-events:none}body:has(.info-bar.is-project-mode) .scene__logo-wrap{pointer-events:none}@keyframes logo-float{0%{transform:translateY(0)}50%{transform:translateY(-8px)}to{transform:translateY(0)}}.scene__logo--base{opacity:1}.scene__logo--color{opacity:0;pointer-events:none}.scene__logo-wrap.is-color .scene__logo--base{opacity:0}.scene__logo-wrap.is-color .scene__logo--color{opacity:1}.scene__project-cta{display:none}@media (width>=768px){.scene__project-cta{left:50%;bottom:calc(var(--bar-h) + 56px);z-index:2;-webkit-backdrop-filter:blur(12px)saturate(145%);min-height:46px;font-family:var(--font);letter-spacing:.04em;color:var(--fg);cursor:pointer;transition:transform .3s var(--ease), background .3s var(--ease), border-color .3s var(--ease), box-shadow .3s var(--ease), opacity .42s var(--ease-quint);background:#ffffff6b;border:1px solid #0000001f;border-radius:9999px;justify-content:center;align-items:center;padding:12px 28px;font-size:14px;display:inline-flex;position:absolute;transform:translate(-50%);box-shadow:0 10px 30px #00000014}.scene__project-cta:hover{background:#ffffff8f;border-color:#0000002e;transform:translate(-50%)translateY(-2px);box-shadow:0 14px 34px #0000001a}.scene__project-cta:focus-visible{outline-offset:4px;outline:2px solid #00000085}body.has-expanded-footer .scene__project-cta,body.project-popup-open .scene__project-cta{opacity:0;pointer-events:none}body:has(.info-bar.is-expanded) .scene__project-cta{opacity:0;pointer-events:none}body.is-scrolling-scenes .scene__project-cta{opacity:0;pointer-events:none;transition:opacity .18s var(--ease-quint)}}.info-desc.is-hovered{color:#fff;transform:translateY(-4px)scale(1.02)}.info-desc{bottom:calc(var(--bar-h) + 20px);z-index:125;pointer-events:none;font-family:var(--font);color:var(--dim);text-align:center;transition:transform .4s var(--ease), color .4s var(--ease), opacity .4s var(--ease);will-change:transform, color, opacity;transform-origin:bottom;margin-bottom:12px;padding:0 clamp(20px,4vw,56px);font-size:14px;line-height:1.4;position:fixed;left:0;right:0}.mobile-desc{left:0;right:0;bottom:calc(84px + 12px + env(safe-area-inset-bottom));z-index:125;text-align:center;flex-direction:column;align-items:center;gap:10px;padding:0 18px;display:none;position:fixed}.mobile-desc__text{font-family:var(--font);color:var(--dim);flex-wrap:wrap;justify-content:center;margin:0;font-size:13px;line-height:1.5;display:flex}.word-wrap{vertical-align:top;line-height:normal;display:inline-block;overflow:hidden}.project-popup__word{opacity:0;transition:transform .45s var(--ease), opacity .45s var(--ease);display:inline-block;transform:translateY(100%)}.project-popup__description p{overflow:hidden}.modal-line{opacity:0;animation:lineSlideUp .38s var(--ease-quint) forwards;display:block;transform:translateY(100%)}@keyframes lineSlideUp{to{opacity:1;transform:translateY(0)}}.word-inner{opacity:0;transition:transform .6s var(--ease-soft), opacity .6s var(--ease-soft);will-change:transform, opacity;display:inline-block;transform:translateY(100%)}.word-inner.is-visible{opacity:1;transform:translateY(0)}.mobile-desc__more{font-family:var(--font);color:#000;-webkit-backdrop-filter:blur(12px);letter-spacing:.04em;cursor:pointer;opacity:1;transition:transform .35s var(--ease), background .35s var(--ease), border-color .35s var(--ease), box-shadow .35s var(--ease), opacity .42s var(--ease-quint);background:#fff3;border:1px solid #ffffff59;border-radius:9999px;padding:10px 24px;font-size:12px;box-shadow:0 4px 20px #0000001a}body.is-scrolling-scenes .mobile-desc__more{opacity:0;pointer-events:none;transition:opacity .18s var(--ease-quint)}.mobile-desc__more:hover{background:#ffffff47;border-color:#ffffff80}.mobile-desc__more:active{background:#ffffff52;transform:scale(.95)}body.light-mode .mobile-desc__more{background:#ffffff75;border-color:#0000001f;box-shadow:0 4px 18px #00000014}body.light-mode .mobile-desc__more:hover{background:#ffffff94;border-color:#0000002e}body.light-mode .mobile-desc__more:active{background:#ffffffa8}.mobile-desc.is-empty,body.overlay-open .mobile-desc,body.has-expanded-footer .mobile-desc{opacity:0;pointer-events:none}body:has(.info-bar.is-expanded) .mobile-desc{opacity:0;pointer-events:none}.info-bar{--footer-visible:1;--footer-expand:0;--expand-target:min(calc(100dvh - 96px), max(400px, min(50vh, 26vh + 20vw)));z-index:120;height:calc(var(--bar-h) + (var(--expand-target) - var(--bar-h)) * var(--footer-expand));--bar-pad-x:clamp(16px, 3vw, 16px);--toggle-size:38px;--toggle-inset:calc((var(--bar-h) - 2px - var(--toggle-size)) / 2);--toggle-gap:10px;--author-rest-pad:16px;--author-slide:.6s;padding:0 var(--bar-pad-x);-webkit-backdrop-filter:blur(16px)saturate(140%);font-family:var(--font);letter-spacing:.015em;opacity:var(--footer-visible);transform:translateY(calc((1 - var(--footer-visible)) * 120%));pointer-events:none;transition:background .4s var(--ease), border-color .4s var(--ease), box-shadow .4s var(--ease), opacity .5s var(--ease-soft), transform .5s var(--ease-soft);background:#0a0a0a73;border:1px solid #ffffff2e;border-radius:40px;font-size:14px;position:fixed;bottom:16px;left:16px;right:16px;overflow:hidden;box-shadow:0 10px 40px #00000047}.info-bar.is-visible{pointer-events:auto}.info-bar.is-project-mode{--expand-target:calc(100dvh - 32px)}.info-bar.is-project-open,.info-bar.is-project-swapping{background:#0a0a0a9e}body.light-mode .info-bar.is-project-open,body.light-mode .info-bar.is-project-swapping{background:#ffffffb3}body.overlay-open .info-bar{opacity:0!important;pointer-events:none!important;transform:translateY(120%)!important}.info-bar__collapsed{width:100%;min-height:calc(var(--bar-h) - 2px);opacity:calc(1 - var(--footer-expand) * 1.45);transform:translateY(calc(var(--footer-expand) * -16px));grid-template-columns:1fr auto 1fr;align-items:center;display:grid;position:relative}.info-bar__show-more{justify-content:center;align-items:center;display:none;position:absolute;inset:0}.info-bar__left{justify-content:flex-start;align-items:center;min-width:0;display:flex;position:relative}.info-bar--menu .info-bar__left{margin-left:calc(var(--toggle-inset) - var(--bar-pad-x))}.info-bar__center{justify-content:center;align-items:center;min-width:0;display:flex}.info-bar__right{justify-content:flex-end;align-items:center;min-width:0;display:flex}.info-bar__toggle{left:var(--toggle-inset);top:var(--toggle-inset);z-index:3;opacity:0;pointer-events:none;color:#0a0a0a;box-sizing:border-box;width:var(--toggle-size);height:var(--toggle-size);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:opacity var(--author-slide) var(--ease-quint), transform .3s var(--ease-quint), box-shadow .3s var(--ease-quint), background-image .3s var(--ease-quint), border-color .3s var(--ease-quint);background:#fff linear-gradient(135deg,#fff,#fff);border:1px solid #0000001f;border-radius:50%;flex-shrink:0;margin:0;padding:0;position:absolute;transform:translate(0);box-shadow:0 2px 6px #00000014}.info-bar.is-visible.is-at-bottom{--bar-pad-x:26px}.info-bar__toggle:hover{background-image:linear-gradient(135deg,#f2f2f2,#fff);border-color:#0000002e;box-shadow:0 4px 12px #00000024}.info-bar__toggle:active{transform:scale(.9);box-shadow:0 1px 3px #0000001a}.info-bar__toggle:focus,.info-bar__menu-close:focus{outline:none}.info-bar__toggle:focus-visible,.info-bar__menu-close:focus-visible{outline-offset:-3px;outline:2px solid #0000008c}.info-bar__author{color:#0a0a0a;padding-left:var(--author-rest-pad);white-space:nowrap;text-overflow:ellipsis;transition:transform var(--author-slide) var(--ease-quint);font-size:clamp(11px,.414vw + 9.45px,14px);overflow:hidden}.info-bar--menu:hover .info-bar__author,.info-bar--menu.is-expanded .info-bar__author,.info-bar--menu.is-at-bottom .info-bar__author{transform:translateX(calc(var(--toggle-size) + var(--toggle-gap) - var(--author-rest-pad)))}.info-bar--menu:hover .info-bar__toggle,.info-bar--menu.is-at-bottom .info-bar__toggle{opacity:.65;pointer-events:auto;transform:translate(0)}.info-bar--menu.is-expanded .info-bar__toggle{opacity:0;pointer-events:none}@media (hover:none),(pointer:coarse){.info-bar--menu .info-bar__toggle{opacity:.65;pointer-events:auto;transform:translate(0)}.info-bar--menu .info-bar__author{transform:translateX(calc(var(--toggle-size) + var(--toggle-gap) - var(--author-rest-pad)))}}.info-bar__menu-close{top:var(--toggle-inset);right:var(--toggle-inset);z-index:3;width:var(--toggle-size);height:var(--toggle-size);box-sizing:border-box;color:#0a0a0a;cursor:pointer;opacity:0;pointer-events:none;-webkit-tap-highlight-color:transparent;transition:opacity .42s var(--ease-quint), box-shadow .3s var(--ease-quint), border-color .3s var(--ease-quint);background:#fff;border:1px solid #0000001f;border-radius:50%;padding:0;transition-delay:0s;position:absolute;box-shadow:0 2px 6px #00000014}.info-bar.is-expanded .info-bar__menu-close{opacity:.65;pointer-events:auto;transition-delay:.14s}.info-bar.is-expanded .info-bar__menu-close:hover{opacity:1;border-color:#0000002e;box-shadow:0 4px 12px #00000024}.info-bar__menu-close:active{transform:scale(.9)}.icon-close{width:12px;height:12px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.icon-close:before,.icon-close:after{content:"";background:currentColor;border-radius:1px;width:100%;height:2px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(45deg)}.icon-close:after{transform:translate(-50%,-50%)rotate(-45deg)}.info-bar.is-bar-busy .info-bar__toggle{opacity:0;pointer-events:none;transition:opacity .22s var(--ease-quint)}.info-bar.is-project-open .info-bar__toggle,.info-bar.is-project-swapping .info-bar__toggle{opacity:1;pointer-events:auto;transform:translate(0)}.info-bar--menu.is-project-closing:hover .info-bar__toggle{opacity:0;pointer-events:none}.icon-toggle{width:12px;height:12px;transition:transform .4s var(--ease-quint);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(0)}.icon-toggle:before,.icon-toggle:after{content:"";background:currentColor;border-radius:1px;width:100%;height:2px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.icon-toggle:after{transform:translate(-50%,-50%)rotate(90deg)}.info-bar.is-project-mode .icon-toggle{transform:translate(-50%,-50%)rotate(45deg)}.icon-chevron{border-bottom:2px solid;border-right:2px solid;border-radius:1px;width:8px;height:8px;position:absolute;top:50%;left:50%}.icon-chevron--down{transform:translate(-50%,calc(-50% - 2.5px))rotate(45deg)}.icon-chevron--up{transform:translate(-50%,calc(2.5px - 50%))rotate(-135deg)}.icon-chevron--left{transform:translate(calc(2.5px - 50%),-50%)rotate(135deg)}.project-nav{top:var(--toggle-inset);left:calc(var(--toggle-inset) + var(--toggle-size) + var(--toggle-gap));z-index:3;height:var(--toggle-size);color:#0a0a0a;opacity:0;pointer-events:none;transition:opacity var(--author-slide) var(--ease-quint);background:#fff;border:1px solid #0000001f;border-radius:9999px;align-items:center;padding:0 3px;display:flex;position:absolute;box-shadow:0 2px 6px #00000014}.project-nav[hidden]{display:none}.info-bar.is-project-open .project-nav,.info-bar.is-project-swapping .project-nav{opacity:1;pointer-events:auto}.project-nav__btn{width:32px;height:var(--toggle-size);color:inherit;opacity:.7;cursor:pointer;transition:opacity .3s var(--ease-quint), transform .3s var(--ease-quint);background:0 0;border:0;border-radius:9999px;margin:0;padding:0;position:relative}.project-nav__btn:hover{opacity:1}.project-nav__btn:active{transform:scale(.88)}.project-nav__btn:focus-visible{opacity:1;outline-offset:-3px;outline:2px solid #0000008c}.project-nav__sep{background:#00000024;flex:none;width:1px;height:15px}.info-bar__separator{color:var(--dim);font-size:10px}.info-bar__expanded{pointer-events:none;flex-direction:column;justify-content:space-between;display:flex;position:absolute;inset:clamp(16px,3vh,40px) clamp(16px,3vw,40px)}.info-bar.is-expanded .info-bar__expanded{pointer-events:auto}.info-bar__project{z-index:2;pointer-events:none;flex-direction:column;display:none;position:absolute;inset:0}.info-bar.is-project-mode .info-bar__project{display:flex}.info-bar.is-project-open .info-bar__project,.info-bar.is-project-swapping .info-bar__project{pointer-events:auto}.info-bar__project .project-popup__gallery-shell{opacity:clamp(0, (var(--footer-expand) - .15) * 1.3, 1)}.info-bar.is-project-closing .project-popup__gallery-shell,.info-bar.is-project-swapping .project-popup__gallery{opacity:var(--project-fade,1)}.info-bar__project .project-popup__title{opacity:0;transition:opacity .42s var(--ease-quint), transform .42s var(--ease-quint);transition-delay:.3s;transform:translate(28px)}.info-bar.is-project-open .project-popup__title{opacity:1;transition-delay:0s;transform:translate(0)}.info-bar.is-project-swapping:not(.is-project-open) .project-popup__title{transition-delay:.14s}.project-popup__body{min-width:0;min-height:0;transition:opacity .36s var(--ease-soft), filter .36s var(--ease-soft), transform .36s var(--ease-soft);flex:1;grid-template-columns:minmax(240px,.25fr) minmax(0,.75fr);gap:30px;padding:30px;display:grid}.project-popup__copy,.project-popup__gallery-shell{min-width:0;min-height:0}.project-popup__copy{scrollbar-width:none;word-break:break-word;overflow-wrap:anywhere;transition:opacity .5s var(--ease-quint);overflow:hidden auto}.project-popup__copy::-webkit-scrollbar{display:none}.project-popup__copy,.project-popup__body{--project-scroll-fade-size:68px;--project-scroll-fade-gap:0px;--project-scroll-fade-top:0;--project-scroll-fade-bottom:0}.project-popup__copy.is-fade-top,.project-popup__copy.is-fade-bottom,.project-popup__body.is-fade-top,.project-popup__body.is-fade-bottom{-webkit-mask-image:linear-gradient(to bottom, transparent 0, #000 calc(var(--project-scroll-fade-size) * var(--project-scroll-fade-top)), #000 calc(100% - var(--project-scroll-fade-size) * var(--project-scroll-fade-bottom)), transparent 100%);-webkit-mask-image:linear-gradient(to bottom, transparent 0, #000 calc(var(--project-scroll-fade-size) * var(--project-scroll-fade-top)), #000 calc(100% - var(--project-scroll-fade-size) * var(--project-scroll-fade-bottom)), transparent 100%);mask-image:linear-gradient(to bottom, transparent 0, #000 calc(var(--project-scroll-fade-size) * var(--project-scroll-fade-top)), #000 calc(100% - var(--project-scroll-fade-size) * var(--project-scroll-fade-bottom)), transparent 100%)}.project-popup__copy.is-fade-top:before,.project-popup__copy.is-fade-bottom:after,.project-popup__body.is-fade-top:before,.project-popup__body.is-fade-bottom:after{content:"";z-index:2;height:var(--project-scroll-fade-size);pointer-events:none;-webkit-backdrop-filter:blur(5px);flex:none;display:block;position:sticky}.project-popup__copy.is-fade-top:before,.project-popup__body.is-fade-top:before{margin-bottom:calc((var(--project-scroll-fade-size) + var(--project-scroll-fade-gap)) * -1);opacity:var(--project-scroll-fade-top);top:0;-webkit-mask-image:linear-gradient(#000 12%,#0000 100%);mask-image:linear-gradient(#000 12%,#0000 100%)}.project-popup__copy.is-fade-bottom:after,.project-popup__body.is-fade-bottom:after{margin-top:calc((var(--project-scroll-fade-size) + var(--project-scroll-fade-gap)) * -1);opacity:var(--project-scroll-fade-bottom);bottom:0;-webkit-mask-image:linear-gradient(#0000 0%,#000 88%);mask-image:linear-gradient(#0000 0%,#000 88%)}.project-popup__gallery-shell{grid-template-columns:minmax(0, 1fr) var(--project-popup-scrollbar-width);gap:var(--project-gallery-rail-gap);align-items:stretch;min-width:0;height:100%;display:grid}.project-popup__gallery-shell.is-scrollbar-hidden{grid-template-columns:minmax(0,1fr);gap:0}.project-popup__copy-inner{max-width:500px;padding-bottom:48px}.info-bar__project .project-popup__copy-inner{padding-top:calc(var(--toggle-inset) + var(--toggle-size) + 6px)}.project-popup__title{letter-spacing:-.03em;color:var(--fg);margin:0 0 20px;font-size:clamp(2rem,3vw,3rem);font-weight:400;line-height:1.05}.project-popup__type-char{visibility:hidden}.project-popup__type-char.is-typed{visibility:visible}.project-popup__description{flex-direction:column;gap:16px;display:flex}.project-popup__paragraph{color:var(--dim);opacity:.92;max-width:42ch;min-height:0;font-size:15px;line-height:1.8}.project-popup__paragraph.is-visible{color:var(--dim)}.project-popup__word-wrap{vertical-align:top;line-height:inherit;display:inline-block;overflow:hidden}.project-popup__word{opacity:0;transition:transform .65s var(--ease-soft), opacity .65s var(--ease-soft);will-change:transform, opacity;display:inline-block;transform:translateY(115%)}.project-popup__word.is-visible{opacity:1;transform:translateY(0)}.project-popup__gallery{overscroll-behavior-y:contain;scrollbar-width:none;will-change:scroll-position;contain:layout style;background:0 0;border:none;border-radius:0;min-width:0;height:100%;position:relative;overflow:hidden scroll}.project-popup__gallery:focus-visible{outline-offset:6px;outline:2px solid #ffffffbf}.project-popup__gallery:focus-visible+.project-popup__scrollbar{box-shadow:0 4px 24px #00000029}body.light-mode .project-popup__gallery:focus-visible{outline-color:#0000008a}.project-popup__gallery::-webkit-scrollbar{width:0;height:0}.project-popup__gallery-item{aspect-ratio:1685/1191;cursor:default;background:0 0;border:0;width:100%;min-height:clamp(420px,62vh,860px);padding:0;display:block;position:relative;overflow:hidden}.project-popup__gallery-badge{display:none!important}.scene__logo-wrap[data-project-trigger]:focus-visible{outline-offset:6px;outline:2px solid #ffffffbf}body.light-mode .scene__logo-wrap[data-project-trigger]:focus-visible{outline-color:#0000008a}html:not(.is-tabbing) :focus-visible{outline:none!important}.project-popup__gallery-image{pointer-events:none;object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity .55s var(--ease-quint), box-shadow .75s var(--ease-quint);display:block;box-shadow:0 2px 6px #0000001a;cursor:default!important}@media (hover:hover){.project-popup__gallery-item:hover .project-popup__gallery-image{box-shadow:0 4px 14px #00000029}}@media (width>=900px){.info-bar__project .project-popup__gallery{contain:none;will-change:auto;border-radius:24px;flex-direction:column;gap:14px;padding:0;display:flex}.project-popup__gallery .project-popup__gallery-item{flex:none}.project-popup__gallery .project-popup__gallery-image{border-radius:24px}}.project-popup__gallery-item picture{width:100%;height:100%;display:block}.project-popup__gallery-image{aspect-ratio:var(--ar-wide)}@media (width<=1099px){.project-popup__gallery-image{aspect-ratio:var(--ar-feed,var(--ar-wide))}}@media (width<=767px){.project-popup__gallery-image{aspect-ratio:var(--ar-story,var(--ar-feed,var(--ar-wide)))}}.project-popup__gallery-image.is-loaded{opacity:1}.project-popup__scrollbar{width:var(--project-popup-scrollbar-width);min-width:var(--project-popup-scrollbar-width);-webkit-backdrop-filter:blur(12px)saturate(180%);cursor:grab;background:#ffffff40;border:1px solid #fff6;border-radius:9999px;height:100%;position:relative;overflow:hidden;box-shadow:0 4px 24px #0000001f}.project-popup__scrollbar:active{cursor:grabbing}body.light-mode .project-popup__scrollbar{background:#ffffff4d;border-color:#ffffff8c;box-shadow:0 4px 24px #00000014}.project-popup__scrollbar[hidden]{display:none}.project-popup__scrollbar-thumb{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;will-change:transform, height;background:#0000008c;border-radius:9999px;height:48px;position:absolute;top:0;left:1px;right:1px;box-shadow:inset 0 1px #ffffff1f,0 2px 6px #00000029}.project-popup__scrollbar-thumb.is-tweening{transition:height .5s var(--ease-quint), transform .5s var(--ease-quint)}.project-popup__scrollbar-thumb:active{cursor:grabbing}.project-popup__scrollbar-thumb:focus-visible{outline-offset:3px;outline:2px solid #ffffffd9}body.light-mode .project-popup__scrollbar-thumb:focus-visible{outline-color:#000000a6}.project-rail{display:none}@media (width>=1100px){.info-bar .project-popup__body{--project-body-gap:30px;--project-body-pad-x:32px;--project-fold-margin:calc(var(--project-body-pad-x) + var(--project-fold-rail) + var(--project-body-gap));--project-fold-rail-gap:calc((var(--project-fold-margin) - var(--project-popup-scrollbar-width)) / 2);gap:var(--project-body-gap);grid-template-columns:calc(var(--project-copy-w,25%) - (var(--project-copy-w,25%) - var(--project-fold-rail)) * var(--project-fold,0)) minmax(0, 1fr);padding:30px var(--project-body-pad-x);padding-right:calc(var(--project-body-pad-x) + (var(--project-fold-rail-gap) - var(--project-body-pad-x)) * var(--project-fold,0));grid-template-rows:minmax(0,1fr)}.info-bar .project-popup__gallery-shell{gap:calc(var(--project-gallery-rail-gap) + (var(--project-fold-rail-gap,var(--project-gallery-rail-gap)) - var(--project-gallery-rail-gap)) * var(--project-fold,0))}}@media (width>=900px) and (width<=1099px){.info-bar .project-popup__body{--project-body-gap:24px;--project-body-pad-x:24px;--project-fold-margin:calc(var(--project-body-pad-x) + var(--project-fold-rail) + var(--project-body-gap));--project-fold-rail-gap:calc((var(--project-fold-margin) - var(--project-popup-scrollbar-width)) / 2);gap:var(--project-body-gap);grid-template-columns:calc(var(--project-copy-w,32%) - (var(--project-copy-w,32%) - var(--project-fold-rail)) * var(--project-fold,0)) minmax(0, 1fr);padding:20px var(--project-body-pad-x) 28px;padding-right:calc(var(--project-body-pad-x) + (var(--project-fold-rail-gap) - var(--project-body-pad-x)) * var(--project-fold,0));grid-template-rows:minmax(0,1fr)}.info-bar .project-popup__gallery-shell{gap:calc(var(--project-gallery-rail-gap) + (var(--project-fold-rail-gap,var(--project-gallery-rail-gap)) - var(--project-gallery-rail-gap)) * var(--project-fold,0))}}@media (width>=900px){.info-bar.is-project-copy-out .project-popup__copy,.info-bar.is-project-compact .project-popup__copy{opacity:0;pointer-events:none}.info-bar.is-project-nav-compact .project-nav{top:calc(var(--toggle-inset) + var(--toggle-size) + var(--toggle-gap));left:var(--toggle-inset);width:var(--toggle-size);flex-direction:column;height:auto;padding:3px 0}.info-bar.is-project-nav-compact .project-nav__btn{width:var(--toggle-size);height:32px}.info-bar.is-project-nav-compact .project-nav__sep{width:15px;height:1px}.project-nav__btn--fold .icon-chevron{transition:transform .6s var(--ease-quint)}.info-bar.is-project-nav-compact .project-nav__btn--fold .icon-chevron{transform:translate(calc(-50% - 2.5px),-50%)rotate(-45deg)}.info-bar.is-project-folding .project-nav{opacity:0;pointer-events:none;transition:opacity .42s var(--ease-quint)}.project-rail{left:var(--toggle-inset);top:calc(var(--toggle-inset) + var(--toggle-size) + var(--toggle-gap) + (32px * 3 + 2px + 6px + 2px) + 18px);bottom:var(--toggle-inset);z-index:3;width:var(--toggle-size);opacity:0;pointer-events:none;transition:opacity .6s var(--ease-quint);justify-content:center;align-items:flex-start;display:flex;position:absolute}.info-bar.is-project-nav-compact.is-project-open:not(.is-project-folding) .project-rail{opacity:1}.project-rail__title{writing-mode:vertical-rl;max-height:100%;color:var(--fg);letter-spacing:-.01em;white-space:nowrap;font-size:clamp(1rem,1.15vw,1.25rem);font-weight:400;line-height:1;overflow:hidden}}.project-rail[hidden]{display:none}@media (width<=899px){.project-nav__btn--fold,.project-nav__btn--fold+.project-nav__sep{display:none}}body.project-popup-open,body.project-popup-open .scenes{overflow:hidden}body.project-popup-open .mobile-desc,body.project-popup-open .scene-rail{opacity:0!important;pointer-events:none!important;transform:translateY(120%)!important}body.project-popup-open .scene__logo-wrap{opacity:0;pointer-events:none;transition:opacity .36s var(--ease-soft)}body.project-popup-open .site-header{opacity:0;pointer-events:none}body.project-popup-scroll-dragging{-webkit-user-select:none;user-select:none}@media (pointer:coarse){#customCursor,.custom-cursor,#logoCursorBtn,.logo-cursor-btn{pointer-events:none!important;display:none!important}}.info-bar__name{color:var(--fg);font-family:var(--font);white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:clamp(11px,.414vw + 9.45px,14px);overflow:hidden}.info-bar__author{text-overflow:ellipsis;min-width:0;overflow:hidden;color:#000!important}.info-bar__industry{color:var(--fg);font-family:var(--font);white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:clamp(11px,.414vw + 9.45px,14px);overflow:hidden}.info-bar__year{color:var(--fg);white-space:nowrap;text-overflow:ellipsis;min-width:0;padding-right:16px;font-size:clamp(11px,.414vw + 9.45px,14px);overflow:hidden}.info-bar__menu{flex-direction:column;gap:clamp(4px,1vh,10px);display:flex}.info-bar__menu-link{font-family:var(--font);letter-spacing:0;color:var(--fg);opacity:0;width:fit-content;transition:opacity .42s var(--ease-quint), transform .42s var(--ease-quint);font-size:clamp(26px,4.8vw,72px);line-height:.95;text-decoration:none;transition-delay:.42s;transform:translate(28px)}.info-bar #footerContact{transition-delay:.28s}.info-bar #footerAbout{transition-delay:.35s}.info-bar.is-expanded #footerHome{transition-delay:0s}.info-bar.is-expanded #footerAbout{transition-delay:70ms}.info-bar.is-expanded #footerContact{transition-delay:.14s}.info-bar.is-expanded .info-bar__menu-link{opacity:1;transform:translate(0)}.info-bar.is-expanded .info-bar__menu-link:hover{opacity:.76;transform:translate(2px)}.footer-bottom-row{justify-content:space-between;align-items:flex-end;display:flex}.footer-identity-name{font-family:var(--font);color:var(--fg);letter-spacing:-.02em;opacity:0;transition:opacity .42s var(--ease-quint), transform .42s var(--ease-quint);margin-bottom:8px;font-size:clamp(32px,5vw,84px);font-weight:400;line-height:1.05;transition-delay:.18s;transform:translate(28px)}.footer-identity-title{font-family:var(--font);color:var(--dim);letter-spacing:.01em;opacity:0;transition:opacity .42s var(--ease-quint), transform .42s var(--ease-quint);font-size:clamp(15px,1.8vw,22px);transition-delay:.11s;transform:translate(28px)}.info-bar.is-expanded .footer-identity-name{transition-delay:.24s}.info-bar.is-expanded .footer-identity-title{transition-delay:.31s}.info-bar.is-expanded .footer-identity-name,.info-bar.is-expanded .footer-identity-title{opacity:1;transform:translate(0)}.footer-meta{color:var(--dim);letter-spacing:.04em;text-transform:uppercase;opacity:0;transition:opacity .42s var(--ease-quint), transform .42s var(--ease-quint);flex-direction:row;align-items:center;gap:12px;font-size:clamp(13px,1.5vw,16px);transition-delay:0s;display:flex;transform:translateY(20px)}.info-bar.is-expanded .footer-meta{opacity:1;transition-delay:.42s;transform:translateY(0)}.footer-city{opacity:.9}.footer-time{font-variant-numeric:tabular-nums;color:var(--fg)}.footer-socials{opacity:0;transition:opacity .42s var(--ease-quint), transform .42s var(--ease-quint);flex-wrap:wrap;justify-content:flex-start;gap:16px;margin-top:10px;transition-delay:0s;display:flex;transform:translateY(20px)}.info-bar.is-expanded .footer-socials{opacity:1;transition-delay:.42s;transform:translateY(0)}.footer-social-link{font-family:var(--font);color:#ffffff73;transition:color .3s var(--ease);font-size:14px;text-decoration:none}.footer-social-link:hover{color:var(--fg)}body.light-mode .footer-social-link{color:#00000073}body.light-mode .footer-social-link:hover{color:var(--fg)}.typing:after{content:"|";opacity:.7;margin-left:1px;animation:.7s step-end infinite blink}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.is-hidden{opacity:0!important;transform:translateY(8px)!important}@media (width<=767px){html,body,html.overlay-open,body.overlay-open{height:100%;overflow:hidden}body.overlay-open .scenes{overflow:hidden}.scenes{scroll-snap-type:y mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;height:100dvh;display:block;overflow:hidden auto}.scenes::-webkit-scrollbar{display:none}.scene{scroll-snap-align:start;scroll-snap-stop:always;width:100%;height:100dvh;min-height:100dvh;padding:0}.scene__logo-wrap{--logo-unit:clamp(140px, 48vw, 320px);padding:0}.scene__logo{max-height:48vh}.scene--intro{justify-content:center}.intro{text-align:center;align-items:center;padding:16vh 16px 10vh}.intro__meta{flex-direction:column;align-items:center;gap:8px}.site-header{padding:16px}.logo-persistent{height:27px}.site-header__nav{display:none}.site-header__mobile-actions{display:flex}.nav-link{font-size:15px}.mobile-contact-btn{min-height:36px;transition:background .3s var(--ease), border-color .3s var(--ease), transform .5s var(--ease-quint), opacity .3s var(--ease);padding:8px 16px;font-size:14px;display:inline-flex}.menu-toggle{width:36px;height:36px;display:flex}.menu-toggle span{width:14px}body.has-expanded-footer .menu-toggle{opacity:0;pointer-events:none}body.has-expanded-footer .mobile-contact-btn{transform:translate(52px)}.custom-cursor{display:none}.page-overlay__panel{-webkit-overflow-scrolling:touch;align-items:center;padding:88px 16px;overflow-y:auto}.page-overlay__content{border-radius:18px;width:100%;max-height:none;padding:20px;overflow:visible}.about__photo-wrap{max-width:420px}.about__text{text-align:center;align-items:center}.about__paragraph{text-align:center;font-size:15px}.contact__inner{margin:0 auto}.budget-options{flex-flow:wrap;justify-content:center;align-items:center}.budget-option label{text-align:center;min-width:120px}.project-popup__body{-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;flex-direction:column;gap:18px;padding:16px;display:flex;overflow-y:auto}.project-popup__copy,.project-popup__gallery{overflow:visible}.project-popup__title{margin-bottom:14px;font-size:clamp(34px,11vw,52px)}.project-popup__paragraph{max-width:none;font-size:16px;line-height:1.75}.project-popup__gallery,body.light-mode .project-popup__gallery{contain:none;will-change:auto;scrollbar-width:none;background:0 0;border:none;border-radius:22px;height:auto;max-height:none;overflow:visible;transform:none}.project-popup__gallery,.modal-images{padding-left:12px;padding-right:12px}.project-popup__gallery-item{min-height:clamp(260px,48vh,520px)}.info-desc,.info-bar--menu:not(.is-project-mode) .info-bar__toggle{display:none}.info-bar--menu:not(.is-project-mode) .info-bar__left{margin-left:0}.info-bar--menu:not(.is-project-mode){cursor:pointer}.info-bar__left,.info-bar__center,.info-bar__right{display:none}.info-bar__show-more{font-family:var(--font);text-transform:uppercase;letter-spacing:.06em;color:#0a0a0a;font-size:18px;display:flex}.info-bar__expanded{inset:18px}.info-bar__menu-link{font-size:clamp(28px,9.5vw,42px)}.footer-bottom-row{flex-direction:column;align-items:flex-start;gap:12px}.footer-identity-name{margin-bottom:0;font-size:clamp(28px,9vw,38px)}.footer-identity-title{font-size:18px}.footer-meta{display:none}.footer-socials{row-gap:14px}.footer-social-link[href^=mailto\:],.footer-social-link[href^=tel\:]{flex-basis:100%}.footer-social-link{font-size:18px}.info-bar.is-project-mode{left:calc(16px - 16px * var(--footer-expand));right:calc(16px - 16px * var(--footer-expand));bottom:calc(16px - 16px * var(--footer-expand));--bar-pad-x:0px;--expand-target:100dvh;border-radius:calc(40px - 40px * var(--footer-expand));box-shadow:none;-webkit-backdrop-filter:blur(20px);background:#fffffff0;border:0;display:block!important}.info-bar.is-project-mode.is-project-open,.info-bar.is-project-mode.is-project-swapping,body.light-mode .info-bar.is-project-mode.is-project-open,body.light-mode .info-bar.is-project-mode.is-project-swapping{background:#fffffff0}.info-bar.is-project-mode .info-bar__toggle{--toggle-size:44px;left:20px;top:calc(16px + env(safe-area-inset-top));opacity:0;box-shadow:none;-webkit-backdrop-filter:blur(12px);transition:opacity .4s var(--ease-quint);background:#ffffff9e;border:1px solid #00000024}.info-bar.is-project-open .info-bar__toggle,.info-bar.is-project-swapping .info-bar__toggle{opacity:1}.info-bar.is-project-mode .project-nav{--toggle-size:44px;left:calc(20px + var(--toggle-size) + var(--toggle-gap));top:calc(16px + env(safe-area-inset-top));opacity:0;pointer-events:none;box-shadow:none;-webkit-backdrop-filter:blur(12px);transition:opacity .4s var(--ease-quint);background:#ffffff9e;border-color:#00000024}.info-bar.is-project-open .project-nav,.info-bar.is-project-swapping .project-nav{opacity:1;pointer-events:auto}.project-nav__btn{width:38px}.info-bar.is-project-mode .icon-toggle{color:#000;filter:drop-shadow(0 1px 3px #fffc);width:16px;height:16px}.mobile-desc,.scene-rail{display:none!important}.gradient-overlay{display:block}.scene-rail,.mobile-desc{display:none!important}.mobile-desc__more{display:none}.show-more-btn{-webkit-backdrop-filter:blur(12px);color:#000;cursor:pointer;background:#fff3;border:1px solid #ffffff59;border-radius:9999px;padding:10px 24px;box-shadow:0 4px 20px #0000001a}body.light-mode .mobile-desc__more,body.light-mode .show-more-btn{background:#ffffff75;border-color:#0000001f;box-shadow:0 4px 18px #00000014}body.light-mode .mobile-desc__more:hover,body.light-mode .show-more-btn:hover{background:#ffffff94;border-color:#0000002e}body.light-mode .mobile-desc__more:active,body.light-mode .show-more-btn:active{background:#ffffffa8}body.modal-open #navLogo,body.modal-open #menuToggle,body.modal-open #mobileContactBtn{display:none}.project-popup__body{z-index:1;overscroll-behavior-y:contain;scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;flex-direction:column;flex:1;gap:0;min-height:0;padding:0;display:flex;position:relative;overflow:hidden auto}.project-popup__body::-webkit-scrollbar{width:0;height:0;display:none}.project-popup__copy,.modal-description,.modal-images{background:0 0}.project-popup__copy{flex:none;width:100%;padding:0;overflow:visible}.project-popup__copy-inner{width:100%;max-width:none;padding-bottom:0}.info-bar__project .project-popup__copy-inner{padding-top:0}.project-popup__title{padding:calc(16px + env(safe-area-inset-top) + 44px + 14px) 20px 0;text-align:left;color:#000;margin:0;font-size:clamp(30px,8.5vw,42px);line-height:1.02}.project-popup__description{gap:0;padding:14px 20px 24px}.project-popup__paragraph{position:relative}.project-popup__paragraph,.project-popup__paragraph.is-visible{-webkit-line-clamp:unset;color:#000000b3;opacity:1;max-width:none;max-height:none;margin:0 0 12px;font-size:1.05rem;line-height:1.65;display:block;overflow:visible}.project-popup__paragraph:last-child{margin-bottom:0}.project-popup__gallery-shell{background:0 0;flex:none;min-width:0;height:auto;margin:0;padding:0;display:block}.project-popup__gallery-shell.is-scrollbar-hidden{gap:0}.project-popup__gallery{contain:none;will-change:auto;background:0 0;border:none;border-radius:0;flex-direction:column;gap:8px;height:auto;margin:0;padding:0;display:flex;overflow:visible;transform:none}.project-popup__gallery::-webkit-scrollbar{width:0;height:0}.project-popup__gallery-item{opacity:1;aspect-ratio:auto;min-height:0;padding:0;overflow:visible;transform:none}.project-popup__gallery-item:last-child{padding-bottom:calc(16px + env(safe-area-inset-bottom))}.project-popup__gallery-image,.modal-images img{object-fit:contain;border-radius:12px;width:100%;height:auto;display:block}.project-popup__scrollbar{display:none}}@media (width>=768px){.project-popup__body{grid-template-columns:minmax(240px,.25fr) minmax(0,.75fr);gap:30px;min-width:0;padding:24px 30px 30px;display:grid;overflow:hidden}.project-popup__copy,.project-popup__gallery-shell{min-width:0;min-height:0}.project-popup__copy{scrollbar-width:none;word-break:break-word;overflow-wrap:anywhere;overflow:hidden auto}.project-popup__copy-inner{max-width:none;padding-bottom:0}.project-popup__copy::-webkit-scrollbar{display:none}.project-popup__gallery-shell{grid-template-columns:minmax(0, 1fr) var(--project-popup-scrollbar-width);align-items:stretch;gap:12px;height:100%;display:grid}.project-popup__gallery-shell.is-scrollbar-hidden{grid-template-columns:minmax(0,1fr);gap:0}.project-popup__title{margin:0 0 20px;font-size:clamp(2rem,3vw,3rem);line-height:1.05}.project-popup__description{flex-direction:column;gap:16px;display:flex}.project-popup__paragraph{color:var(--dim);opacity:.92;max-width:42ch;min-height:0;font-size:15px;line-height:1.8}.project-popup__paragraph.is-visible{color:var(--dim)}.project-popup__gallery{overscroll-behavior-y:contain;scrollbar-width:none;will-change:scroll-position;contain:layout style;background:0 0;border:none;border-radius:0;min-width:0;height:100%;position:relative;overflow:hidden scroll}.project-popup__gallery::-webkit-scrollbar{width:0;height:0}.project-popup__gallery-item{cursor:default;aspect-ratio:auto;background:0 0;border:0;width:100%;min-height:0;padding:0;display:block;position:relative;overflow:visible}.project-popup__gallery-image{object-fit:contain;width:100%;height:auto;display:block}}@media (width>=768px) and (width<=899px){.project-popup__body{--project-scroll-fade-gap:22px;scrollbar-width:none;-ms-overflow-style:none;border-radius:24px;flex-direction:column;gap:22px;margin:22px;padding:0;display:flex;overflow:hidden auto}.project-popup__body::-webkit-scrollbar{width:0;height:0;display:none}.project-popup__copy{min-height:auto;overflow:visible}.project-popup__copy-inner,.project-popup__paragraph{max-width:none}.project-popup__gallery-shell{flex-shrink:0;height:auto;margin-top:auto;display:block}.project-popup__gallery{contain:none;will-change:auto;background:0 0;border:none;flex-direction:column;gap:14px;height:auto;display:flex;overflow:visible;transform:none}body.light-mode .project-popup__gallery{background:0 0;border-color:#0000}.project-popup__gallery-image{border-radius:24px}.project-popup__scrollbar{display:none}}@media (width>=900px) and (width<=1099px){.project-popup__body{--project-copy-w:32%}.project-popup__copy-inner{max-width:none}}@media (width>=1100px) and (width<=1439px){.project-popup__body{--project-copy-w:25%}.project-popup__copy-inner{max-width:500px;padding-bottom:48px}}@media (width>=1440px){.project-popup__body{--project-copy-w:23%}.project-popup__copy-inner{max-width:500px;padding-bottom:48px}}body.is-intro .info-bar__industry{visibility:hidden}.privacy-page{max-width:680px;font-family:var(--font,"Rinter", sans-serif);margin:0 auto;padding:80px 24px 120px}.privacy-back{color:#00000073;margin-bottom:40px;font-size:.85rem;text-decoration:none;display:inline-block}.privacy-back:hover{color:#000}.privacy-page h1{letter-spacing:-.03em;margin-bottom:6px;font-size:2rem;font-weight:400}.privacy-date{color:#0006;margin-bottom:48px;font-size:.78rem}.privacy-page section{margin-bottom:36px}.privacy-page h2{letter-spacing:.08em;text-transform:uppercase;color:#0006;margin-bottom:10px;font-size:.78rem;font-weight:400}.privacy-page p{color:#000000bf;margin-bottom:12px;font-size:.95rem;line-height:1.7}.privacy-page a{color:#000;text-underline-offset:3px}@media (width<=767px){.modal-images,.modal-image-panel,.project-popup__images{box-sizing:border-box;padding-left:14px;padding-right:14px}.modal-images img,.modal-image-panel img,.project-popup__images img{object-fit:contain;border-radius:12px;width:100%;height:auto;margin-bottom:10px;display:block;margin-left:0!important;margin-right:0!important}}.gradient-overlay{--cx1:50%;--cy1:50%;--cx2:30%;--cy2:60%;--cx3:70%;--cy3:40%;--cx4:60%;--cy4:70%;z-index:0;pointer-events:none;height:100vh;opacity:var(--overlay-a,0);position:fixed;top:0;left:0;right:0}.gradient-blob{filter:blur(150px);will-change:transform, left, top;opacity:0;transition:background .8s var(--ease);border-radius:50%;position:absolute}.gradient-blob--1{background:var(--blob-c1,#f15a24);width:1000px;height:1000px;left:var(--cx1);top:var(--cy1);opacity:var(--blob-a1,0);animation:15s cubic-bezier(.83,0,.17,1) infinite alternate blob-drift-1;transform:translate(-50%,-50%)}.gradient-blob--2{background:var(--blob-c2,#e9c695);width:1200px;height:1200px;left:var(--cx2);top:var(--cy2);opacity:var(--blob-a2,0);animation:18s cubic-bezier(.83,0,.17,1) infinite alternate blob-drift-2;transform:translate(-50%,-50%)}.gradient-blob--3{background:var(--blob-c3,#e9c695);width:1200px;height:1200px;left:var(--cx3);top:var(--cy3);opacity:var(--blob-a3,0);animation:21s cubic-bezier(.83,0,.17,1) infinite alternate blob-drift-3;transform:translate(-50%,-50%)}.gradient-blob--4{background:var(--blob-c4,#f15a24);width:1000px;height:1000px;left:var(--cx4);top:var(--cy4);opacity:var(--blob-a4,0);animation:17s cubic-bezier(.83,0,.17,1) infinite alternate blob-drift-4;transform:translate(-50%,-50%)}.gradient-overlay--page{--overlay-a:1;--blob-a1:.28;--blob-a2:.22;--blob-a3:.18;--blob-a4:.16;filter:blur();animation:page-blobs-fade .9s var(--ease) forwards}@keyframes page-blobs-fade{0%{opacity:1;filter:blur()}to{opacity:0;filter:blur(26px)}}@keyframes blob-drift-1{0%{transform:translate(-50%,-50%)scale(1)translateY(0)}50%{transform:translate(-50%,-50%)scale(1.05)translateY(-3%)}to{transform:translate(-50%,-50%)scale(1.12)translateY(2%)}}@keyframes blob-drift-2{0%{transform:translate(-50%,-50%)scale(1)translate(0)}50%{transform:translate(-50%,-50%)scale(1.08)translate(-2%)}to{transform:translate(-50%,-50%)scale(1.16)translate(3%)}}@keyframes blob-drift-3{0%{transform:translate(-50%,-50%)scale(1)translate(0)}50%{transform:translate(-50%,-50%)scale(1.1)translate(2%)}to{transform:translate(-50%,-50%)scale(1.18)translate(-3%)}}@keyframes blob-drift-4{0%{transform:translate(-50%,-50%)scale(1)translateY(0)}50%{transform:translate(-50%,-50%)scale(1.06)translateY(3%)}to{transform:translate(-50%,-50%)scale(1.14)translateY(-2%)}}@media (width<=767px){.gradient-overlay{--cx1:50%;--cy1:18%;--cx2:20%;--cy2:42%;--cx3:80%;--cy3:58%;--cx4:50%;--cy4:84%}.gradient-blob{filter:blur(140px)}.gradient-blob--1{width:760px;height:760px}.gradient-blob--2,.gradient-blob--3{width:620px;height:620px}.gradient-blob--4{background:var(--blob-c2,#e9c695);width:760px;height:760px}}
