body.fixed-app{margin:0;padding:0}.app-layout,body.fixed-app{overflow:hidden;height:100vh;width:100%}.app-layout{display:flex;padding-top:0}.index-wrapper{width:40%;height:100%;display:flex;flex-direction:column;border-right:1px solid hsla(0,0%,100%,.05);position:relative;z-index:5;background:var(--c-dark)}.portfolio-title{text-align:center;font-size:clamp(2.2rem,3.5vw,3.8rem);line-height:1;white-space:normal;word-break:break-word;margin:0;padding:clamp(80px,10vh,110px) 5vw clamp(10px,1.5vh,20px);border-bottom:1px solid hsla(0,0%,100%,.05);flex-shrink:0}.portfolio-title span{color:var(--c-cyan)}.index-panel{flex:1 1;position:relative;overflow:hidden!important;justify-content:flex-start}.category-list,.index-panel{display:flex;flex-direction:column}.category-list{list-style:none;justify-content:space-evenly;padding:0;margin:0;width:100%;height:100%}.cat-item{padding:clamp(6px,1.5vh,18px) 5vw;border-bottom:1px solid hsla(0,0%,100%,.08);cursor:pointer;transition:transform .6s cubic-bezier(.7,0,.2,1),background .8s ease,opacity .8s ease,padding-left .4s ease;width:100%;position:relative}.cat-item:first-child{border-top:1px solid hsla(0,0%,100%,.08)}.cat-item:before{content:"";position:absolute;left:0;top:0;bottom:0;width:0;background:var(--c-cyan);transition:width .4s cubic-bezier(.16,1,.3,1);opacity:.5}.cat-item:hover:before{width:2px}.cat-item.is-active:before{width:0}.cat-header{display:flex;align-items:center;gap:20px;width:100%}.cat-header:after{content:"\2192";font-size:1.2rem;color:var(--c-cyan);margin-left:auto;opacity:0;transform:translateX(-10px);transition:opacity .3s ease,transform .3s ease}.cat-item:hover .cat-header:after{opacity:.5;transform:translateX(0)}.cat-item.is-active .cat-header:after{opacity:1;transform:translateX(0)}.cat-num{font-family:monospace;font-size:1.2rem;color:hsla(0,0%,100%,.4);transition:color .4s,transform .4s;pointer-events:none}.cat-title{font-size:clamp(1.4rem,2vw,2.2rem);font-weight:400;color:hsla(0,0%,100%,.6);transition:color .4s,letter-spacing .4s;pointer-events:none;margin:0}.cat-item:hover .cat-title{color:var(--white);letter-spacing:.02em}.cat-item:hover .cat-num{color:hsla(0,0%,100%,.7)}@media (min-width:1001px){.cat-item.is-active{transform:translateX(15px);background:linear-gradient(90deg,rgba(118,207,223,.04),transparent);border-left:3px solid var(--c-cyan)}}.cat-item.is-active .cat-num{color:var(--c-cyan);font-weight:700}.cat-item.is-active .cat-title{color:var(--white);font-weight:700}.cat-item.iot-highlight{border-top:1px solid rgba(118,207,223,.15);border-bottom:1px solid rgba(118,207,223,.15);background:linear-gradient(90deg,rgba(118,207,223,.03),transparent)}.cat-item.iot-highlight .cat-num.iot-num{font-size:.85rem;color:var(--c-cyan);font-weight:700;letter-spacing:.05em}.cat-item.iot-highlight .cat-title{color:hsla(0,0%,100%,.8)}.cat-item.iot-highlight:hover .cat-title{color:var(--c-cyan)}@media (min-width:1001px){.cat-item.iot-highlight.is-active{background:linear-gradient(90deg,rgba(118,207,223,.08),transparent);border-left:3px solid var(--c-cyan)}}.mobile-accordion-body{display:none}.explore-cta-wrapper{display:none!important}.services-visual{width:60%;height:100%;position:relative;overflow:hidden;background:#020408}.detail-images,.srv-img{position:absolute;inset:0;z-index:1}.srv-img{-webkit-clip-path:inset(100% 0 0 0);clip-path:inset(100% 0 0 0);transition:opacity .8s ease,-webkit-clip-path 1.2s cubic-bezier(.7,0,.2,1);transition:clip-path 1.2s cubic-bezier(.7,0,.2,1),opacity .8s ease;transition:clip-path 1.2s cubic-bezier(.7,0,.2,1),opacity .8s ease,-webkit-clip-path 1.2s cubic-bezier(.7,0,.2,1);opacity:0}.srv-img img{width:100%;height:100%;object-fit:cover;transform:scale(1.15);transition:transform 2.5s cubic-bezier(.7,0,.2,1),filter 1.5s ease;filter:brightness(.5) saturate(.8)}.img-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,6,12,.95),rgba(3,6,12,.55) 45%,rgba(3,6,12,.1))}.srv-img.is-active{-webkit-clip-path:inset(0 0 0 0);clip-path:inset(0 0 0 0);z-index:2;opacity:1}.srv-img.is-active img{transform:scale(1);filter:brightness(.65) saturate(1)}.srv-img.is-exiting{z-index:1;-webkit-clip-path:inset(0 0 0 0);clip-path:inset(0 0 0 0);opacity:0;transition:opacity .6s ease .3s}.detail-content{position:absolute;inset:0;z-index:5;padding:clamp(3rem,5vw,6rem);display:flex;align-items:center}.sub-cat-group{width:100%;position:absolute;left:clamp(3rem,5vw,6rem);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(15px);transition:opacity .5s ease,visibility 0s .5s,transform .5s ease}.sub-cat-group.is-active{opacity:1;visibility:visible;pointer-events:auto;position:relative;left:0;transform:translateY(0);transition:opacity .6s ease .3s,visibility 0s 0s,transform .6s ease .3s}.sub-title{font-size:clamp(2.5rem,4vw,4rem);color:var(--white);margin-bottom:20px;line-height:1.1;font-weight:700;opacity:0;transform:translateY(40px);transition:all .8s cubic-bezier(.7,0,.2,1);text-shadow:0 2px 20px rgba(0,0,0,.5)}.sub-divider{width:0;height:2px;background:var(--theme-grad);margin-bottom:40px;transition:width 1s cubic-bezier(.7,0,.2,1);box-shadow:0 0 12px rgba(118,207,223,.3)}.sub-list{display:flex;flex-direction:column;gap:0}.sub-item{font-size:clamp(1.1rem,1.5vw,1.3rem);display:flex;align-items:center;gap:20px;opacity:0;transform:translateY(20px);transition:all .6s cubic-bezier(.7,0,.2,1);padding:clamp(10px,1.2vh,16px) 0;border-bottom:1px solid hsla(0,0%,100%,.04);position:relative;cursor:default}.sub-item:last-child{border-bottom:none}.sub-item span{font-size:.85rem;color:var(--c-cyan);font-family:monospace;font-weight:700;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(118,207,223,.2);border-radius:4px;flex-shrink:0;transition:background .3s,border-color .3s}.sub-item:hover span{background:rgba(118,207,223,.1);border-color:rgba(118,207,223,.4)}.sub-item:hover{color:var(--white)}.sub-cat-group.iot-mega-group .sub-title{font-size:clamp(2rem,3.5vw,3.5rem)}.cta-narration{font-size:clamp(1.1rem,1.5vw,1.3rem);color:hsla(0,0%,100%,.7);line-height:1.6;max-width:80%;margin-bottom:40px}.cta-narration,.premium-btn-large{opacity:0;transform:translateY(20px);transition:all .6s cubic-bezier(.7,0,.2,1)}.premium-btn-large{display:inline-flex;align-items:center;gap:15px;padding:20px 45px;background:rgba(118,207,223,.05);border:1px solid rgba(118,207,223,.3);color:var(--white);text-transform:uppercase;font-weight:700;letter-spacing:2px;border-radius:50px;text-decoration:none;font-size:1rem}.premium-btn-large svg{width:22px;height:22px;color:var(--c-cyan);transition:transform .4s ease}.premium-btn-large:hover{background:rgba(118,207,223,.15);border-color:var(--c-cyan)}.premium-btn-large:hover svg{transform:translateX(5px)}.sub-cat-group.is-active .sub-title{opacity:1;transform:translateY(0);transition-delay:.4s}.sub-cat-group.is-active .sub-divider{width:80px;transition-delay:.6s}.sub-cat-group.is-active .sub-item{opacity:1;transform:translateY(0)}.sub-cat-group.is-active .sub-item:first-child{transition-delay:.7s}.sub-cat-group.is-active .sub-item:nth-child(2){transition-delay:.8s}.sub-cat-group.is-active .sub-item:nth-child(3){transition-delay:.9s}.sub-cat-group.is-active .sub-item:nth-child(4){transition-delay:1s}.sub-cat-group.is-active .sub-item:nth-child(5){transition-delay:1.1s}.sub-cat-group.is-active .sub-item:nth-child(6){transition-delay:1.2s}.sub-cat-group.is-active .sub-item:nth-child(7){transition-delay:1.3s}.sub-cat-group.cta-mega-group.is-active .cta-narration{opacity:1;transform:translateY(0);transition-delay:.7s}.sub-cat-group.cta-mega-group.is-active .premium-btn-large{opacity:1;transform:translateY(0);transition-delay:.9s}@media (max-width:1000px){body.fixed-app,html{position:relative;height:auto;overflow:visible!important;overscroll-behavior:auto}#site-header{position:fixed!important;background:linear-gradient(180deg,rgba(3,6,12,.9),transparent)!important}.app-layout{flex-direction:column;height:auto;width:100%;overflow:visible!important;padding-top:0}.index-wrapper{flex:1 1;width:100%;height:auto;border-right:none;overflow:visible;display:flex;flex-direction:column}.portfolio-title{padding:120px 5vw 20px;font-size:2.2rem;text-align:left;border-bottom:none;flex-shrink:0}.portfolio-title br{display:none}.services-visual{display:none!important}.index-panel{flex:1 1;position:relative;overflow:visible!important;display:flex;flex-direction:column;justify-content:flex-start}.category-list{padding:10px 5vw 0;width:100%;margin:0;flex-shrink:0}.cat-item{transform:none!important;border-bottom:1px solid hsla(0,0%,100%,.08);width:100%;padding:0;border-left:none!important}.cat-item.is-active{background:linear-gradient(90deg,rgba(118,207,223,.05),transparent)}.cat-header{padding:25px 0;width:100%}.cat-title{font-size:1.5rem;margin:0}body.page-services .index-wrapper{padding:0!important}body.page-services .portfolio-title{text-align:left!important;margin-bottom:0!important}body.page-services .category-list{align-items:stretch!important;padding:10px 5vw 0!important}body.page-services .category-list .cat-item{max-width:none!important;align-items:stretch!important;text-align:left!important;margin:0!important}body.page-services .cat-header{justify-content:flex-start!important}body.page-services .mac-inner{align-items:flex-start!important}body.page-services .mobile-accordion-body img{height:140px!important;max-width:none!important}.mobile-accordion-body{display:grid!important;grid-template-rows:0fr;overflow:hidden;transition:grid-template-rows 1.1s cubic-bezier(.7,0,.2,1),opacity .8s ease-out .2s;width:100%;opacity:0;transform:none!important}.cat-item.is-active .mobile-accordion-body{grid-template-rows:1fr;opacity:1}.mac-inner{padding:0 0 35px;width:100%;overflow:hidden;min-height:0}.mac-inner img{width:100%;height:140px;object-fit:cover;border-radius:8px;margin-bottom:20px;filter:brightness(.8)}.mac-title{font-size:1.5rem;color:var(--white);font-weight:700;margin-bottom:15px;margin-top:0}.mac-list{display:flex;flex-direction:column;gap:12px}.mac-item{display:flex;align-items:flex-start;gap:15px;font-size:1rem;color:hsla(0,0%,100%,.8);line-height:1.4;opacity:0}.mac-item span{color:var(--c-cyan);font-family:monospace;font-size:.9rem;margin-top:2px}.cat-item.is-active .mac-item{animation:slideInHeavy .8s cubic-bezier(.7,0,.2,1) forwards}.cat-item.is-active .mac-item:first-child{animation-delay:.3s}.cat-item.is-active .mac-item:nth-child(2){animation-delay:.4s}.cat-item.is-active .mac-item:nth-child(3){animation-delay:.5s}.cat-item.is-active .mac-item:nth-child(4){animation-delay:.6s}.cat-item.is-active .mac-item:nth-child(5){animation-delay:.7s}.cat-item.is-active .mac-item:nth-child(6){animation-delay:.8s}.cat-item.is-active .mac-item:nth-child(7){animation-delay:.9s}@keyframes slideInHeavy{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}body.page-services .explore-cta-wrapper{width:auto!important;max-width:none!important;margin:40px 5vw 80px!important;padding:30px!important;background:rgba(118,207,223,.05)!important;border:1px solid rgba(118,207,223,.15)!important;border-left:none!important;border-radius:12px!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:20px!important;text-align:left!important;opacity:1!important;visibility:visible!important;transform:none!important;pointer-events:auto!important}body.page-services .explore-cta-wrapper .cta-content p{color:hsla(0,0%,100%,.8)!important;font-size:1.05rem!important;line-height:1.5!important;margin:0!important;text-align:left!important}body.page-services .explore-cta-wrapper .premium-cta-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;padding:16px 30px!important;background:rgba(118,207,223,.1)!important;border:1px solid rgba(118,207,223,.3)!important;color:var(--white)!important;text-transform:uppercase!important;font-weight:700!important;letter-spacing:2px!important;border-radius:50px!important;text-decoration:none!important;width:100%!important;font-size:.9rem!important}body.page-services .explore-cta-wrapper .premium-cta-btn svg{width:20px!important;height:20px!important;color:var(--c-cyan)!important;transition:transform .3s!important}body.page-services .explore-cta-wrapper .premium-cta-btn:hover svg{transform:translateX(5px)!important}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}