:root{--bg:#000;--text-primary:#b4b4bc8c;--text-secondary:#8c8c9666;--text-dim:#7878824d;--border:#ffffff0f;--cursor-border:#9696a01f}[data-theme=light]{--bg:#f0f0ee;--text-primary:#1e1e26a6;--text-secondary:#3c3c4673;--text-dim:#5a5a6459;--border:#0000000f;--cursor-border:#3c3c4626}*{box-sizing:border-box;margin:0;padding:0}#loader{z-index:9999;background:#000;justify-content:center;align-items:center;transition:opacity .6s,filter .6s;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}[data-theme=light] #loader{background:#f0f0ee}#loader.done{opacity:0;filter:blur(10px);pointer-events:none}.loader-content{align-items:center;gap:1.5rem;display:flex}.loader-number{color:#c8c8d0b3;text-align:right;font-variant-numeric:tabular-nums;min-width:2.5rem;height:1.2em;font-family:Unbounded,sans-serif;font-size:.85rem;font-weight:300;line-height:1.2;position:relative;overflow:hidden}.loader-number-inner{transition:transform 80ms ease-out;display:inline-block}.loader-number-ghost{text-align:right;color:#c8c8d026;filter:blur(3px);pointer-events:none;position:absolute;left:0;right:0}.loader-number-ghost.above{transform:translateY(-100%)}.loader-number-ghost.below{transform:translateY(100%)}[data-theme=light] .loader-number-ghost{color:#1e1e261a}[data-theme=light] .loader-number{color:#1e1e2699}.loader-bar-track{background:#ffffff14;border-radius:1px;width:120px;height:1px;overflow:hidden}[data-theme=light] .loader-bar-track{background:#00000014}.loader-bar-fill{background:#c8c8d099;border-radius:1px;width:0%;height:100%;transition:width .15s}[data-theme=light] .loader-bar-fill{background:#1e1e2680}html,body{background:var(--bg);color:var(--text-primary);cursor:default;-webkit-font-smoothing:antialiased;font-family:Unbounded,sans-serif;font-weight:300;transition:background .8s;overflow-x:hidden}a{color:inherit;text-decoration:none}#fluid{z-index:0;opacity:0;width:100%;height:100%;transition:filter .15s;position:fixed;top:0;bottom:0;left:0;right:0}#fluid.ready{opacity:1}#scroll-space{z-index:-1;pointer-events:none;height:1200vh;position:relative}#ui{z-index:2;pointer-events:none;position:fixed;top:0;bottom:0;left:0;right:0}.hero-definition{z-index:3;opacity:0;pointer-events:none;will-change:opacity, filter;max-width:360px;position:fixed;bottom:4.5rem;left:4.5rem}.hero-definition p{color:#c8c8d0bf;letter-spacing:.01em;font-family:Unbounded,sans-serif;font-size:1.15rem;font-weight:200;line-height:1.6}[data-theme=light] .hero-definition p{color:#1e1e26a6}.scroll-indicator{z-index:3;-webkit-backdrop-filter:blur(16px);opacity:0;pointer-events:none;will-change:opacity, filter;background:#ffffff0a;border:1px solid #ffffff14;border-radius:100px;flex-direction:row;align-items:center;gap:.6rem;padding:.7rem 1.5rem;animation:3s ease-in-out infinite scrollGlow;display:flex;position:fixed;bottom:4.5rem;right:4.5rem}[data-theme=light] .scroll-indicator{background:#00000008;border-color:#00000014}.scroll-indicator-text{letter-spacing:.06em;color:#c8c8d0a6;font-family:Unbounded,sans-serif;font-size:.72rem;font-weight:300}[data-theme=light] .scroll-indicator-text{color:#1e1e268c}.scroll-indicator-arrow{justify-content:center;align-items:center;animation:2.5s ease-in-out infinite arrowPulse;display:flex}.scroll-indicator-arrow svg{stroke:#c8c8d0a6;stroke-width:1.5px;fill:none;width:16px;height:16px}[data-theme=light] .scroll-indicator-arrow svg{stroke:#1e1e268c}@keyframes arrowPulse{0%,to{opacity:.6;transform:translateY(0)}50%{opacity:1;transform:translateY(3px)}}@keyframes scrollGlow{0%,to{box-shadow:0 0 15px #c8c8dc03,0 0 50px #c8c8dc00}50%{box-shadow:0 0 20px #c8c8dc1a,0 0 60px #c8c8dc0d}}[data-theme=light] .scroll-indicator{animation:3s ease-in-out infinite scrollGlowLight}@keyframes scrollGlowLight{0%,to{box-shadow:0 0 8px #0000,0 0 20px #0000}50%{box-shadow:0 0 8px #0000000a,0 0 20px #00000005}}#topbar{--bar-h:38px;z-index:100;pointer-events:none;justify-content:space-between;align-items:center;padding:1.2rem 1.8rem;display:flex;position:fixed;top:0;left:0;right:0}.nav-logo{pointer-events:auto;filter:invert();flex-shrink:0;width:auto;height:28px;display:block}[data-theme=light] .nav-logo{filter:none}#nav{height:var(--bar-h);pointer-events:auto;-webkit-backdrop-filter:blur(16px);background:#ffffff0a;border:1px solid #ffffff14;border-radius:100px;align-items:center;padding:0 2.2rem;display:flex}[data-theme=light] #nav{background:#00000008;border-color:#00000014}.nav-links{gap:1.8rem;display:flex}.nav-links a{letter-spacing:.1em;text-transform:uppercase;color:#c8c8d280;cursor:pointer;font-family:Unbounded,sans-serif;font-size:.78rem;font-weight:400;transition:color .3s}[data-theme=light] .nav-links a{color:#1e1e2873}.nav-links a:hover{color:#f0f0f8d9}[data-theme=light] .nav-links a:hover{color:#14141ecc}.nav-burger{cursor:pointer;pointer-events:auto;background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:36px;height:36px;padding:0;display:none}.nav-burger span{transform-origin:50%;background:#ffffffb3;border-radius:1px;width:22px;height:1.5px;transition:transform .35s cubic-bezier(.16,1,.3,1),opacity .25s;display:block}[data-theme=light] .nav-burger span{background:#14141e99}.nav-burger.open span:first-child{transform:translateY(3.75px)rotate(45deg)}.nav-burger.open span:last-child{transform:translateY(-3.75px)rotate(-45deg)}.mobile-menu{z-index:99;-webkit-backdrop-filter:blur(30px);opacity:0;visibility:hidden;pointer-events:none;background:#000000eb;justify-content:center;align-items:center;transition:opacity .4s,visibility .4s;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}[data-theme=light] .mobile-menu{background:#f0f0eef0}.mobile-menu.open{opacity:1;visibility:visible;pointer-events:auto}.mobile-menu-links{flex-direction:column;align-items:center;gap:2.5rem;display:flex}.mobile-menu-links a{letter-spacing:.06em;color:#dcdce4b3;text-transform:uppercase;cursor:pointer;opacity:0;font-family:Unbounded,sans-serif;font-size:1.4rem;font-weight:400;transition:color .3s,transform .35s cubic-bezier(.16,1,.3,1);transform:translateY(20px)}[data-theme=light] .mobile-menu-links a{color:#1e1e2899}.mobile-menu.open .mobile-menu-links a{opacity:1;transform:translateY(0)}.mobile-menu.open .mobile-menu-links a:first-child{transition-delay:80ms}.mobile-menu.open .mobile-menu-links a:nth-child(2){transition-delay:.14s}.mobile-menu.open .mobile-menu-links a:nth-child(3){transition-delay:.2s}.mobile-menu.open .mobile-menu-links a:nth-child(4){transition-delay:.26s}.mobile-menu-links a:hover{color:#fffffff2}[data-theme=light] .mobile-menu-links a:hover{color:#0a0a14e6}body.fast-scroll .hero-definition,body.fast-scroll .scroll-indicator,body.fast-scroll .capability-info,body.fast-scroll .capability-desc,body.fast-scroll .service-carousel,body.fast-scroll .works-info,body.fast-scroll .works-blur,body.fast-scroll .contact-cta{opacity:0!important;filter:blur()!important;pointer-events:none!important;transition:opacity .3s!important}.contact-cta{z-index:4;pointer-events:none;opacity:0;flex-direction:column;align-items:center;gap:.55rem;text-decoration:none;transition:opacity .8s,transform .8s;display:flex;position:fixed;bottom:16%;left:50%;transform:translate(-50%,12px)}.contact-cta-label{letter-spacing:.32em;text-transform:uppercase;color:#c8c8d273;font-family:Unbounded,sans-serif;font-size:.6rem;font-weight:300}.contact-cta-email{letter-spacing:.005em;color:#ebebf2f2;-webkit-backdrop-filter:blur(12px);background:#ffffff06;border:1px solid #ffffff1f;border-radius:100px;padding:.7rem 1.8rem;font-family:Instrument Serif,serif;font-size:clamp(1.6rem,3vw,2.4rem);font-style:italic;font-weight:400;transition:background .25s,border-color .25s,transform .25s}[data-theme=light] .contact-cta-label{color:#1e1e268c}[data-theme=light] .contact-cta-email{color:#0a0a12eb;background:#00000006;border-color:#0000001f}.contact-cta.visible{opacity:1;pointer-events:auto;transform:translate(-50%)}.contact-cta.visible:hover .contact-cta-email{background:#ffffff0f;border-color:#ffffff38;transform:translateY(-2px)}[data-theme=light] .contact-cta.visible:hover .contact-cta-email{background:#0000000d;border-color:#00000038}@media (max-width:768px){.contact-cta{gap:.4rem;bottom:12%}.contact-cta-label{letter-spacing:.24em;font-size:.5rem}.contact-cta-email{padding:.55rem 1.3rem}}.sr-only-link{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.capability-info{z-index:3;text-align:center;pointer-events:none;opacity:0;will-change:opacity, filter;flex-direction:column;align-items:center;gap:.4rem;width:85%;max-width:500px;display:flex;position:fixed;bottom:12%;left:50%;transform:translate(-50%)}.capability-title{color:#dcdce4e6;letter-spacing:-.01em;font-family:Unbounded,sans-serif;font-size:clamp(1.3rem,2.6vw,1.9rem);font-weight:400;line-height:1.25}.capability-title em{color:#ebebf2fa;font-family:Instrument Serif,serif;font-size:1.25em;font-style:italic;font-weight:400}[data-theme=light] .capability-title{color:#14141cd9}[data-theme=light] .capability-title em{color:#0a0a12f2}.capability-desc{z-index:3;opacity:0;pointer-events:none;will-change:opacity, filter;max-width:360px;position:fixed;bottom:4.5rem;left:4.5rem}.capability-desc-text{color:#c8c8d0b3;letter-spacing:.01em;font-family:Unbounded,sans-serif;font-size:1.05rem;font-weight:200;line-height:1.6}.capability-desc-text em{color:#dcdce4d9;font-family:Instrument Serif,serif;font-size:1.2em;font-style:italic;font-weight:400}[data-theme=light] .capability-desc-text{color:#1e1e26a6}[data-theme=light] .capability-desc-text em{color:#0a0a12d9}.service-carousel{z-index:4;perspective:1000px;pointer-events:none;opacity:0;will-change:opacity;justify-content:center;align-items:center;transition:opacity .35s;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.service-carousel.active{opacity:1;pointer-events:auto;transition:opacity 1.5s cubic-bezier(.22,1,.36,1)}.service-card{-webkit-backdrop-filter:blur(12px);will-change:transform, opacity, filter;width:85vw;max-width:660px;transform-style:preserve-3d;background:#ffffff08;border:1px solid #ffffff0f;border-radius:20px;align-items:center;gap:2.5rem;padding:2.5rem 3rem;transition:none;display:flex;position:absolute}[data-theme=light] .service-card{background:#00000005;border-color:#0000000f}.card-shape{border-radius:12px;flex-shrink:0;width:120px;height:120px;overflow:hidden}.card-content{flex-direction:column;gap:.5rem;display:flex}.card-title{color:#dcdce4d9;font-family:Unbounded,sans-serif;font-size:1.3rem;font-weight:400}.card-title em{color:#ebebf2f2;font-family:Instrument Serif,serif;font-size:1.15em;font-style:italic;font-weight:400}.card-desc{color:#c8c8d066;font-family:Unbounded,sans-serif;font-size:.82rem;font-weight:200;line-height:1.7}[data-theme=light] .card-title{color:#14141ccc}[data-theme=light] .card-title em{color:#0a0a12e6}[data-theme=light] .card-desc{color:#28283066}@media (max-width:768px){.service-card{text-align:center;flex-direction:column;gap:1.5rem;max-width:340px;padding:2rem}.card-shape{width:90px;height:90px}.card-title{font-size:1.05rem}.card-desc{font-size:.68rem}}.works-blur{z-index:1;pointer-events:none;opacity:0;-webkit-backdrop-filter:blur(22px);width:42%;height:100%;transition:opacity .6s;position:fixed;top:0}.works-blur:after{content:"";pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0}.works-blur.active{opacity:1}.works-blur-left{left:0;-webkit-mask-image:linear-gradient(90deg,#000 0%,#0009 50%,#0000 100%);mask-image:linear-gradient(90deg,#000 0%,#0009 50%,#0000 100%)}.works-blur-left:after{background:linear-gradient(90deg,#000000f2 0%,#000000bf 35%,#0000004d 65%,#0000 100%)}.works-blur-right{right:0;-webkit-mask-image:linear-gradient(270deg,#000 0%,#0009 50%,#0000 100%);mask-image:linear-gradient(270deg,#000 0%,#0009 50%,#0000 100%)}.works-blur-right:after{background:linear-gradient(270deg,#000000f2 0%,#000000bf 35%,#0000004d 65%,#0000 100%)}[data-theme=light] .works-blur-left:after{background:linear-gradient(90deg,#f0f0eef2 0%,#f0f0eebf 35%,#f0f0ee4d 65%,#0000 100%)}[data-theme=light] .works-blur-right:after{background:linear-gradient(270deg,#f0f0eef2 0%,#f0f0eebf 35%,#f0f0ee4d 65%,#0000 100%)}.works-info{z-index:5;opacity:0;pointer-events:none;will-change:opacity;align-items:center;gap:1.5rem;transition:opacity .3s;display:flex;position:fixed;bottom:10%;left:50%;transform:translate(-50%)}.works-info.active{opacity:1;pointer-events:auto}.works-number{color:#c8c8d04d;letter-spacing:.1em;font-family:Unbounded,sans-serif;font-size:.7rem;font-weight:200}.works-details{flex-direction:column;gap:.2rem;display:flex}.works-title{color:#dcdce4d9;font-family:Unbounded,sans-serif;font-size:1rem;font-weight:400}.works-meta{color:#c8c8d059;letter-spacing:.05em;font-family:Unbounded,sans-serif;font-size:.6rem;font-weight:200}[data-theme=light] .works-number{color:#1e1e2640}[data-theme=light] .works-title{color:#14141ccc}[data-theme=light] .works-meta{color:#28283059}@media (max-width:768px){.works-info{gap:1rem;margin-top:1.5rem}.works-title{font-size:.85rem}.works-meta{font-size:.5rem}.works-number{font-size:.6rem}}.theme-toggle{-webkit-backdrop-filter:blur(16px);width:var(--bar-h,46px);height:var(--bar-h,46px);cursor:pointer;pointer-events:auto;opacity:.85;color:#ffffffe6;background:#ffffff0a;border:1px solid #ffffff14;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.2rem;line-height:1;transition:opacity .3s,transform .4s cubic-bezier(.16,1,.3,1);display:flex}[data-theme=light] .theme-toggle{color:#14141ecc;background:#00000008;border-color:#00000014}.theme-toggle:hover{opacity:1;transform:scale(1.08)}.cursor-field{display:none}.project-modal{z-index:2000;visibility:hidden;pointer-events:none;justify-content:center;align-items:center;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.project-modal.open{visibility:visible;pointer-events:auto}.modal-backdrop{-webkit-backdrop-filter:blur(24px);opacity:0;background:#0006;transition:opacity .35s;position:absolute;top:0;bottom:0;left:0;right:0}.project-modal.open .modal-backdrop{opacity:1}[data-theme=light] .modal-backdrop{background:#fff6}.modal-card{opacity:0;background:#0c0c0eeb;border:1px solid #ffffff0f;border-radius:16px;width:82vw;max-width:900px;height:82vh;transition:transform .55s cubic-bezier(.16,1,.3,1),opacity .4s;position:relative;overflow:hidden;transform:scale(.88)translateY(40px)}[data-theme=light] .modal-card{background:#f5f5f3f0;border-color:#0000000f}.project-modal.open .modal-card{opacity:1;transform:scale(1)translateY(0)}.modal-close{z-index:10;color:var(--text-secondary);cursor:pointer;pointer-events:auto;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:1.4rem;font-weight:300;transition:color .3s,background .3s;display:flex;position:absolute;top:1.2rem;right:1.5rem}.modal-close:hover{color:var(--text-primary);background:#ffffff0f}[data-theme=light] .modal-close:hover{background:#0000000a}.modal-scroll{scrollbar-width:thin;scrollbar-color:#ffffff14 transparent;height:100%;padding:3rem 3.5rem;overflow-y:auto}.modal-header{justify-content:space-between;align-items:baseline;margin-bottom:.4rem;display:flex}.modal-title{color:var(--text-primary);letter-spacing:-.01em;font-family:Unbounded,sans-serif;font-size:1.6rem;font-weight:500}.modal-year{color:var(--text-dim);font-family:Unbounded,sans-serif;font-size:1rem;font-weight:300}.modal-category{letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary);margin-bottom:2.5rem;font-family:Unbounded,sans-serif;font-size:.65rem;font-weight:400;display:block}.modal-image{border-radius:8px;width:100%;margin:2rem 0;overflow:hidden}.modal-image-full{border-radius:10px;width:calc(100% + 2rem);margin:2.5rem -1rem}.modal-image img{object-fit:cover;width:100%;height:auto;display:block}.modal-image-row{grid-template-columns:1fr 1fr;gap:1rem;margin:2rem 0;display:grid}.modal-image-row .modal-image{margin:0}.modal-gallery{flex-direction:column;gap:1.5rem;margin:1rem 0;display:flex}.modal-video{border-radius:8px;width:100%;padding-bottom:56.25%;position:relative;overflow:hidden}.modal-video iframe{width:100%;height:100%;position:absolute;top:0;bottom:0;left:0;right:0}.modal-section{padding:2rem 0 .5rem}.modal-section-title{letter-spacing:.06em;color:var(--text-primary);margin-bottom:.7rem;font-family:Unbounded,sans-serif;font-size:.75rem;font-weight:400}.modal-section-text{color:var(--text-secondary);font-family:Unbounded,sans-serif;font-size:.7rem;font-weight:200;line-height:1.8}.modal-tools{border-top:1px solid var(--border);gap:1.5rem;margin-top:1rem;padding:1.5rem 0;display:flex}.modal-body{flex-direction:column;gap:1.2rem;margin:1.5rem 0;display:flex}.modal-body p{color:var(--text-secondary);font-family:Unbounded,sans-serif;font-size:.82rem;font-weight:300;line-height:1.75}.modal-details{border-top:1px solid var(--border);border-bottom:1px solid var(--border);gap:3rem;margin:2rem 0;padding:1.5rem 0;display:flex}.modal-footer{color:var(--text-dim);letter-spacing:.08em;justify-content:space-between;align-items:center;padding:3rem 0 1rem;font-family:Unbounded,sans-serif;font-size:.6rem;display:flex}.modal-behance{color:var(--text-dim);text-decoration:none;transition:color .3s}.modal-behance:hover{color:var(--text-primary)}.modal-detail{flex-direction:column;gap:.25rem;display:flex}.detail-label{letter-spacing:.1em;text-transform:uppercase;color:var(--text-dim);font-family:Unbounded,sans-serif;font-size:.55rem;font-weight:400}.detail-value{color:var(--text-primary);font-family:Unbounded,sans-serif;font-size:.78rem;font-weight:400}@media (max-width:1024px){.hero-definition{bottom:3.5rem;left:3rem}}@media (max-width:768px){body{cursor:auto}.cursor-field{display:none}#topbar{--bar-h:40px;padding:.8rem 1rem}#nav{padding:0 1rem}.nav-links{display:none}.nav-burger{display:flex}.theme-toggle{font-size:1.05rem}#scroll-space{height:800vh}.theme-toggle{top:1rem;right:1.2rem}.hero-definition{max-width:180px;bottom:2rem;left:1.5rem}.hero-definition p{font-size:.57rem;font-weight:200;line-height:1.5}.scroll-indicator{gap:.5rem;padding:.45rem 1rem;bottom:2rem;right:1.5rem}.scroll-indicator-text{font-size:.5rem}.scroll-indicator-arrow svg{width:12px;height:12px}.capability-info{gap:.3rem;max-width:90%;bottom:30%}.capability-title{font-size:1.05rem}.capability-desc{max-width:none;bottom:1.5rem;left:1.5rem;right:1.5rem}.capability-desc-text{font-size:.85rem;line-height:1.5}}
