:where(body:has(.custom-cursor)){--bg-primary:#f7fbfc;--bg-secondary:#edf7fa;--bg-tertiary:#dceff4;--text-main:#07151b;--text-muted:#6b7c85;--accent-subtle:#b8c4c9;--border-color:#07151b14;--font-sans:var(--font-main);--font-serif:var(--font-main)}:where(body:has(.custom-cursor)) *,:where(body:has(.custom-cursor)) :before,:where(body:has(.custom-cursor)) :after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:auto}html.service-animation-lock,html.service-animation-lock body{overflow:hidden!important}:where(body:has(.custom-cursor)){background-color:var(--bg-primary);color:var(--text-main);font-family:var(--font-main);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}:where(body:has(.custom-cursor)) .custom-cursor{pointer-events:none;z-index:9999;border:1px solid #07151b40;border-radius:50%;width:36px;height:36px;transition:width .3s,height .3s,background-color .3s;display:none;position:fixed;top:0;left:0;transform:translate(-50%,-50%)}:where(body:has(.custom-cursor)) .custom-cursor-dot{background-color:var(--text-main);pointer-events:none;z-index:10000;border-radius:50%;width:6px;height:6px;display:none;position:fixed;top:0;left:0;transform:translate(-50%,-50%)}@media (min-width:1025px){:where(body:has(.custom-cursor)) .custom-cursor,:where(body:has(.custom-cursor)) .custom-cursor-dot{display:block}html.service-custom-cursor body,html.service-custom-cursor a,html.service-custom-cursor button,html.service-custom-cursor .project-card,html.service-custom-cursor .stage-card{cursor:none}}:where(body:has(.custom-cursor)) .hero-section{background:linear-gradient(135deg,var(--bg-primary) 0%,var(--bg-secondary) 100%);flex-direction:column;justify-content:center;width:100vw;height:100vh;padding:0 6vw;display:flex;position:relative;overflow:hidden}:where(body:has(.custom-cursor)) .hero-bg-canvas{background:radial-gradient(circle,var(--bg-tertiary) 0%,#f7fbfc00 75%);pointer-events:none;z-index:1;border-radius:50%;width:42vw;height:65vh;position:absolute;top:50%;right:8%;transform:translateY(-50%)}:where(body:has(.custom-cursor)) #scene{z-index:2;pointer-events:none;width:100%;height:100%;display:block;position:absolute;inset:0}:where(body:has(.custom-cursor)) .particle-ui{z-index:5;pointer-events:none;position:absolute;inset:0}:where(body:has(.custom-cursor)) .particle-hint .hint-up,:where(body:has(.custom-cursor)) .particle-hint.is-falling .hint-down{display:none}:where(body:has(.custom-cursor)) .particle-hint.is-falling .hint-up{display:inline}:where(body:has(.custom-cursor)) .particle-hint{text-align:right;letter-spacing:.2em;text-transform:uppercase;color:var(--text-muted);font-size:.7rem;line-height:1.7;transition:opacity .4s;position:absolute;bottom:3rem;right:5vw}:where(body:has(.custom-cursor)) .hero-content{z-index:3;pointer-events:none;max-width:1300px;position:absolute;top:6rem;left:6vw}:where(body:has(.custom-cursor)) .hero-top-label{letter-spacing:.25em;text-transform:uppercase;color:var(--text-muted);margin-bottom:2rem;font-size:.75rem}:where(body:has(.custom-cursor)) .scroll-indicator{z-index:4;align-items:center;gap:1.5rem;display:flex;position:absolute;bottom:3rem;left:6vw}:where(body:has(.custom-cursor)) .scroll-text{letter-spacing:.2em;text-transform:uppercase;color:var(--text-muted);font-size:.7rem}:where(body:has(.custom-cursor)) .scroll-line-wrapper{background-color:var(--border-color);width:1px;height:40px;overflow:hidden}:where(body:has(.custom-cursor)) .scroll-line{background-color:var(--text-main);transform-origin:top;width:100%;height:100%;transform:scaleY(0)}:where(body:has(.custom-cursor)) .works-section{background-color:var(--bg-primary);height:100vh;padding:0;position:relative;overflow:hidden}:where(body:has(.custom-cursor)) .section-header-wrap{z-index:100;pointer-events:none;mix-blend-mode:difference;color:#fff;position:absolute;top:7vh;left:6vw}:where(body:has(.custom-cursor)) .section-tag{letter-spacing:.25em;text-transform:uppercase;color:var(--text-muted);margin-bottom:1rem;font-size:.75rem;display:block}:where(body:has(.custom-cursor)) .section-title{font-family:var(--font-main);letter-spacing:-.01em;color:inherit;font-size:clamp(2.5rem,4.5vw,5rem);font-weight:400}:where(body:has(.custom-cursor)) .projects-viewport{background:var(--bg-primary);position:absolute;inset:0;overflow:hidden}:where(body:has(.custom-cursor)) .project-card{visibility:hidden;will-change:transform;background:var(--bg-secondary);border:0;width:100%;height:100%;margin:0;padding:0;position:absolute;inset:0;overflow:hidden}:where(body:has(.custom-cursor)) .project-visual{background-color:var(--bg-secondary);border-radius:0;width:100%;height:100%;position:absolute;inset:0;overflow:hidden}:where(body:has(.custom-cursor)) .project-visual:after{content:"";pointer-events:none;z-index:2;background:linear-gradient(#00000014 0%,#00000005 42%,#0000002e 100%);position:absolute;inset:0}:where(body:has(.custom-cursor)) .project-visual img{object-fit:cover;will-change:transform,filter,opacity;width:100%;height:100%;display:block;transform:scale(1.06)}:where(body:has(.custom-cursor)) .project-number{z-index:10;letter-spacing:.1em;color:#fff;mix-blend-mode:difference;pointer-events:none;-webkit-text-stroke:.35px #00000080;text-shadow:0 1px 6px #00000073;font-size:.75rem;font-weight:500;position:absolute;top:2rem;left:auto;right:5vw}:where(body:has(.custom-cursor)) .project-info{z-index:12;color:#fff;pointer-events:none;will-change:transform;grid-template-columns:1fr 1.5fr 1fr;align-items:start;gap:2rem;width:100%;min-height:max-content;padding:2rem 5vw;display:grid;position:absolute;top:0;left:0}:where(body:has(.custom-cursor)) .project-category{letter-spacing:.16em;text-transform:uppercase;color:inherit;font-size:.7rem;line-height:1.4}:where(body:has(.custom-cursor)) .project-info>.project-category:first-child{letter-spacing:.08em;width:fit-content;color:var(--text-main);background-color:#eaa043;padding:.5rem .7rem;font-size:clamp(.95rem,1.3vw,1.2rem);font-weight:600;display:inline-flex}:where(body:has(.custom-cursor)) .project-name,:where(body:has(.custom-cursor)) .project-info>.project-category:last-child{mix-blend-mode:difference;-webkit-text-stroke:.35px #00000080;text-shadow:0 1px 6px #00000073}:where(body:has(.custom-cursor)) .project-name{font-family:var(--font-main);color:inherit;letter-spacing:-.01em;-webkit-text-stroke:.6px #0000008c;paint-order:stroke fill;text-shadow:0 2px 10px #00000073;margin:0;font-size:clamp(2rem,3.5vw,4rem);font-weight:400;line-height:.95}@media (min-width:901px){:where(body:has(.custom-cursor)) .project-info>.project-category:first-child{grid-area:1/1}:where(body:has(.custom-cursor)) .project-info>.project-category:last-child{grid-area:1/3}:where(body:has(.custom-cursor)) .project-name{width:calc(38.571vw - 1.714rem);position:absolute;top:5rem}:where(body:has(.custom-cursor)) .project-card:nth-child(odd) .project-name{left:5vw;right:auto}:where(body:has(.custom-cursor)) .project-card:nth-child(2n) .project-name{left:auto;right:5vw}}:where(body:has(.custom-cursor)) .project-inner{will-change:transform;position:absolute;inset:0;overflow:hidden}@media (max-width:900px){:where(body:has(.custom-cursor)) .section-header-wrap{top:5.5vh;left:6vw}:where(body:has(.custom-cursor)) .section-title{max-width:80vw;font-size:clamp(2rem,7vw,3.5rem)}:where(body:has(.custom-cursor)) .project-info{grid-template-columns:1fr;gap:.45rem;padding:1.25rem 5vw}:where(body:has(.custom-cursor)) .project-name{font-size:clamp(2rem,8vw,3.5rem)}:where(body:has(.custom-cursor)) .project-category{font-size:.62rem}:where(body:has(.custom-cursor)) .project-number{top:1.35rem;right:5vw}:where(body:has(.custom-cursor)) .particle-hint{font-size:.6rem;bottom:2rem;right:6vw}}:where(body:has(.custom-cursor)) .project-showcase{background-color:var(--bg-secondary);height:400vh;position:relative}:where(body:has(.custom-cursor)) .project-stage{justify-content:center;align-items:center;height:100vh;display:flex;position:sticky;top:0;overflow:hidden}:where(body:has(.custom-cursor)) .stage-card{background:var(--bg-primary);will-change:transform,opacity;border-radius:8px;grid-template-columns:1.5fr 1fr;align-items:center;gap:4rem;width:78vw;max-width:1250px;height:72vh;padding:3.5rem;display:grid;box-shadow:0 30px 60px #07151b0d}:where(body:has(.custom-cursor)) .stage-image-wrap{border-radius:4px;width:100%;height:100%;max-height:520px;overflow:hidden}:where(body:has(.custom-cursor)) .stage-image-wrap img{object-fit:cover;width:100%;height:100%;display:block}:where(body:has(.custom-cursor)) .stage-content{flex-direction:column;justify-content:center;display:flex}:where(body:has(.custom-cursor)) .stage-tag{letter-spacing:.2em;text-transform:uppercase;color:var(--text-muted);margin-bottom:1.5rem;font-size:.75rem}:where(body:has(.custom-cursor)) .stage-title{font-family:var(--font-main);margin-bottom:1.5rem;font-size:clamp(2rem,3vw,3.5rem);font-weight:400;line-height:1.05}:where(body:has(.custom-cursor)) .stage-desc{color:var(--text-muted);font-size:.95rem;line-height:1.6}:where(body:has(.custom-cursor)) .ethos-section{background-color:var(--bg-primary);align-items:center;min-height:70vh;padding:10vh 10vw;display:flex;position:relative}:where(body:has(.custom-cursor)) .ethos-container{max-width:1300px}:where(body:has(.custom-cursor)) .ethos-statement{font-family:var(--font-main);letter-spacing:-.01em;font-kerning:normal;text-rendering:optimizelegibility;font-variant-ligatures:none;margin-top:3rem;font-size:clamp(1.5rem,2.8vw,3.2rem);font-weight:400;line-height:1.25}:where(body:has(.custom-cursor)) .ethos-word{white-space:nowrap;display:inline-block}:where(body:has(.custom-cursor)) .ethos-char{will-change:opacity;display:inline}:where(body:has(.custom-cursor)) .ethos-statement:after{content:"";vertical-align:-.04em;background-color:currentColor;width:1px;height:.8em;margin-left:.08em;animation:1s steps(2,start) infinite ethos-cursor-blink;display:inline-block}@keyframes ethos-cursor-blink{to{visibility:hidden}}:where(body:has(.custom-cursor)) .visual-composition{width:100%;height:130vh;position:relative}:where(body:has(.custom-cursor)) .story-item{will-change:transform;border-radius:4px;position:absolute;overflow:hidden;box-shadow:0 20px 40px #07151b0f}:where(body:has(.custom-cursor)) .story-img-clip{clip-path:inset(100% 0 0);width:100%;height:100%;transition:clip-path 1.2s cubic-bezier(.16,1,.3,1)}:where(body:has(.custom-cursor)) .story-img-clip img{object-fit:cover;width:100%;height:100%}:where(body:has(.custom-cursor)) .story-item-1{width:36vw;height:52vh;top:5%;left:4%}:where(body:has(.custom-cursor)) .story-item-2{width:28vw;height:42vh;top:12%;right:6%}:where(body:has(.custom-cursor)) .story-item-3{width:30vw;height:48vh;bottom:8%;left:14%}:where(body:has(.custom-cursor)) .story-item-4{width:33vw;height:56vh;bottom:4%;right:10%}:where(body:has(.custom-cursor)) .about-section{background-color:var(--bg-primary);align-items:center;min-height:100vh;padding:22vh 6vw;display:flex;position:relative}:where(body:has(.custom-cursor)) .about-container{max-width:1250px}:where(body:has(.custom-cursor)) .about-paragraph-wrap{margin-top:4rem}:where(body:has(.custom-cursor)) .about-line{font-family:var(--font-main);font-size:clamp(2.5rem,5.2vw,6.2rem);font-weight:400;line-height:1.1;overflow:hidden}:where(body:has(.custom-cursor)) .about-line span{opacity:0;display:block;transform:translateY(110%)}:where(body:has(.custom-cursor)) .contact-section{background-color:var(--text-main);min-height:100vh;color:var(--bg-primary);flex-direction:column;justify-content:space-between;padding:22vh 6vw;display:flex;position:relative}:where(body:has(.custom-cursor)) .contact-heading-wrap{font-family:var(--font-main);letter-spacing:-.03em;font-size:clamp(4.5rem,12vw,16rem);font-weight:400;line-height:.9}:where(body:has(.custom-cursor)) .contact-line{overflow:hidden}:where(body:has(.custom-cursor)) .contact-line span{display:block;transform:translateY(110%)}:where(body:has(.custom-cursor)) .contact-cta{color:inherit;align-self:flex-start;align-items:center;gap:2rem;margin-top:10vh;font-size:1.15rem;font-weight:500;text-decoration:none;display:inline-flex}:where(body:has(.custom-cursor)) .cta-arrow{transition:transform .4s cubic-bezier(.16,1,.3,1);display:inline-flex}:where(body:has(.custom-cursor)) .contact-cta:hover .cta-arrow{transform:translate(10px)}:where(body:has(.custom-cursor)) .contact-cta .cta-text{transition:transform .4s cubic-bezier(.16,1,.3,1)}:where(body:has(.custom-cursor)) .contact-cta:hover .cta-text{transform:translate(4px)}:where(body:has(.custom-cursor)) .site-footer{background-color:var(--text-main);color:var(--bg-primary);border-top:1px solid #ffffff1a;justify-content:space-between;align-items:flex-start;padding:8vh 6vw;display:flex}:where(body:has(.custom-cursor)) .footer-left{flex-direction:column;gap:1rem;display:flex}:where(body:has(.custom-cursor)) .footer-brand{letter-spacing:.2em;font-size:.85rem;font-weight:600}:where(body:has(.custom-cursor)) .footer-rights{color:var(--text-muted);font-size:.75rem}:where(body:has(.custom-cursor)) .footer-nav{gap:5rem;display:flex}:where(body:has(.custom-cursor)) .footer-col{flex-direction:column;gap:.75rem;display:flex}:where(body:has(.custom-cursor)) .footer-col h4{letter-spacing:.15em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.5rem;font-size:.75rem}:where(body:has(.custom-cursor)) .footer-col a{color:inherit;font-size:.85rem;text-decoration:none;transition:opacity .3s}:where(body:has(.custom-cursor)) .footer-col a:hover{opacity:.6}@media (max-width:900px){:where(body:has(.custom-cursor)) .project-stage{height:100svh;padding:0 4vw}:where(body:has(.custom-cursor)) .stage-card{border-radius:10px;grid-template-columns:1fr;gap:1.25rem;width:100%;max-width:520px;height:auto;max-height:82svh;padding:1.5rem;overflow:hidden}:where(body:has(.custom-cursor)) .stage-image-wrap{border-radius:4px;flex-shrink:0;width:100%;height:28svh;min-height:160px;max-height:230px}:where(body:has(.custom-cursor)) .stage-image-wrap img{object-fit:cover;width:100%;height:100%;display:block}:where(body:has(.custom-cursor)) .stage-content{justify-content:flex-start;min-height:0}:where(body:has(.custom-cursor)) .stage-tag{letter-spacing:.18em;margin-bottom:.6rem;font-size:.62rem}:where(body:has(.custom-cursor)) .stage-title{margin-bottom:.75rem;font-size:clamp(1.3rem,5.5vw,1.85rem);line-height:1.15}:where(body:has(.custom-cursor)) .stage-desc{font-size:.82rem;line-height:1.55}:where(body:has(.custom-cursor)) .footer-nav{gap:2rem}:where(body:has(.custom-cursor)) .site-footer{flex-direction:column;gap:3rem}:where(body:has(.custom-cursor)) .story-item{margin-bottom:2rem;width:100%!important;height:42vh!important;position:relative!important}:where(body:has(.custom-cursor)) .visual-composition{height:auto!important}:where(body:has(.custom-cursor)) .hint-cursor{display:none}:where(body:has(.custom-cursor)) .hero-section{padding:0 5vw}:where(body:has(.custom-cursor)) .hero-bg-canvas{width:70vw;height:55vh;right:0}}@media (max-width:480px){:where(body:has(.custom-cursor)) .project-stage{padding:0 5vw}:where(body:has(.custom-cursor)) .stage-card{border-radius:8px;gap:1rem;max-height:80svh;padding:1.15rem}:where(body:has(.custom-cursor)) .stage-image-wrap{height:24svh;min-height:130px;max-height:180px}:where(body:has(.custom-cursor)) .stage-tag{margin-bottom:.5rem;font-size:.58rem}:where(body:has(.custom-cursor)) .stage-title{margin-bottom:.6rem;font-size:clamp(1.15rem,6vw,1.5rem)}:where(body:has(.custom-cursor)) .stage-desc{font-size:.78rem;line-height:1.5}}@media (max-width:900px){:where(body:has(.custom-cursor)) .story-item-1{width:92%!important}:where(body:has(.custom-cursor)) .story-item-3{width:86%!important}}
