:root{--ink:#0b1120;--ink-rgb:11, 17, 32;--surface:#121a2e;--surface-2:#182238;--wash:var(--surface);--signal:#4ce0d2;--signal-rgb:76, 224, 210;--pulse:#ffb454;--pulse-rgb:255, 180, 84;--fog:#8e97ac;--paper:#f5f7fb;--line:#ffffff12;--line-2:#ffffff21}html[data-theme=light]{--ink:#f5f7fb;--ink-rgb:245, 247, 251;--surface:#fff;--surface-2:#eef1f6;--wash:var(--surface);--signal:#0f8c7c;--signal-rgb:15, 140, 124;--pulse:#c97a1f;--pulse-rgb:201, 122, 31;--fog:#5b6478;--paper:#0b1120;--line:#0b112017;--line-2:#0b112029}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scrollbar-gutter:stable}body{background:var(--ink);color:var(--paper);font-family:-apple-system,Segoe UI,Helvetica Neue,Arial,sans-serif;transition:background .3s,color .3s;overflow-x:hidden}.bg-grid{background-image:linear-gradient(rgba(var(--signal-rgb), .05) 1px, transparent 1px), linear-gradient(90deg, rgba(var(--signal-rgb), .05) 1px, transparent 1px);pointer-events:none;z-index:0;background-size:48px 48px;position:fixed;inset:0}section,footer,nav{z-index:2;position:relative}.bg-ink{background:var(--ink)}.bg-surface{background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.bg-wash{background:var(--wash);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.bg-ink,.bg-surface,.bg-wash{isolation:isolate;position:relative}.bg-ink:before,.bg-surface:before,.bg-wash:before{content:"";z-index:-1;background:inherit;position:absolute;inset:-1px calc(-50vw + 50%)}@keyframes blink{0%,to{opacity:1}50%{opacity:.25}}@keyframes wave{0%,to{opacity:.4;height:12%}50%{opacity:1;height:100%}}@keyframes flow{to{stroke-dashoffset:-22px}}@keyframes flowmove{0%{left:0%}to{left:96%}}@keyframes ping{0%{r:56;opacity:.5}to{r:100;opacity:0}}@keyframes node-in{to{opacity:1}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes fill{to{width:92%}}@keyframes ringping{0%{opacity:.6;transform:scale(1)}to{opacity:0;transform:scale(1.6)}}@keyframes rotate-word{0%{opacity:0;transform:translateY(12px)}5%{opacity:1;transform:translateY(0)}22%{opacity:1;transform:translateY(0)}27%{opacity:0;transform:translateY(-12px)}to{opacity:0}}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes pulse-slow{0%,to{opacity:.5;transform:scale(1)}50%{opacity:.9;transform:scale(1.04)}}@keyframes pv-fill{to{width:100%}}@keyframes pv-check-in{to{background:rgba(var(--signal-rgb), .15);border-color:var(--signal);color:var(--signal)}}@keyframes appear{to{opacity:1}}.reveal{opacity:0;transition:opacity .7s,transform .7s;transform:translateY(26px)}.reveal-left{transform:translate(-42px)}.reveal-right{transform:translate(42px)}.reveal-top{transform:translateY(-32px)}.reveal-bottom{transform:translateY(32px)}.reveal.visible{opacity:1;transform:translate(0)}.stagger-child{opacity:0;transform:translateY(20px)}.reveal-stagger.visible .stagger-child{opacity:1;transition:opacity .6s,transform .6s;transform:translateY(0)}.stagger-child:first-child{transition-delay:0s}.stagger-child:nth-child(2){transition-delay:80ms}.stagger-child:nth-child(3){transition-delay:.16s}.stagger-child:nth-child(4){transition-delay:.24s}.stagger-child:nth-child(5){transition-delay:.32s}.stagger-child:nth-child(6){transition-delay:.4s}.stagger-child:nth-child(7){transition-delay:.48s}.stagger-child:nth-child(8){transition-delay:.56s}.dot-blink{background:var(--signal);border-radius:50%;flex-shrink:0;width:7px;height:7px;animation:1.6s ease-in-out infinite blink}.eyebrow{color:var(--signal);align-items:center;gap:8px;margin-bottom:14px;font-size:13px;display:inline-flex}.head-center{text-align:center;max-width:560px;margin:0 auto 40px}.head-center h2{letter-spacing:-.5px;font-size:28px;font-weight:700}.head-center p{color:var(--fog);margin-top:10px;font-size:14.5px}.head-center .eyebrow{justify-content:center}nav{background:var(--ink);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:80px;padding:16px 64px;display:flex}.logo{letter-spacing:-.5px;font-size:20px;font-weight:700}.logo-image{object-fit:contain;width:auto;max-width:220px;height:48px;display:none}html[data-theme=dark] .logo-light,html:not([data-theme]) .logo-light,html[data-theme=light] .logo-dark{display:block}.logo span{color:var(--signal)}nav ul{gap:32px;list-style:none;display:flex}nav a{color:var(--fog);font-size:14px;text-decoration:none;transition:color .2s}.nav-right{align-items:center;gap:14px;display:flex}.nav-cta{background:var(--pulse);color:#3a2205;border-radius:6px;padding:10px 22px;font-size:14px;font-weight:600;text-decoration:none;transition:transform .2s,box-shadow .2s}.nav-cta:hover{box-shadow:0 6px 16px rgba(var(--pulse-rgb), .22);transform:translateY(-1px)}html[data-theme=light] .nav-cta{color:#fff}.theme-toggle{background:var(--surface);border:1px solid var(--line-2);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;width:38px;height:38px;transition:transform .2s,border-color .2s,background .2s;display:flex}.theme-toggle:hover{border-color:rgba(var(--signal-rgb), .45);transform:translateY(-1px)}.theme-toggle svg{width:17px;height:17px;stroke:var(--signal)}.theme-toggle .moon,html[data-theme=light] .theme-toggle .sun{display:none}html[data-theme=light] .theme-toggle .moon{display:block}.hero{grid-template-columns:1fr 1fr;align-items:center;gap:20px;max-width:1220px;margin:0 auto;padding:30px 64px;display:grid;position:relative}.hero-bg-img{opacity:.06;filter:blur(2px);pointer-events:none;z-index:0;background-image:url(https://images.unsplash.com/photo-1451187580459-43490279c0fa?w=800&q=50);background-position:50%;background-size:cover;border-radius:50%;width:520px;height:520px;position:absolute;top:-40px;right:-80px}html[data-theme=light] .hero-bg-img{display:none}.hero h1{letter-spacing:-1px;max-width:520px;font-size:42px;font-weight:700;line-height:1.16}.rotator{vertical-align:bottom;min-width:200px;height:1.16em;display:inline-block;position:relative;overflow:hidden}.rotator span{color:var(--signal);opacity:0;animation:8s infinite rotate-word;display:block;position:absolute;top:0;left:0}.rotator span:first-child{animation-delay:0s}.rotator span:nth-child(2){animation-delay:2s}.rotator span:nth-child(3){animation-delay:4s}.rotator span:nth-child(4){animation-delay:6s}.hero .sub{color:var(--fog);max-width:460px;margin:22px 0 30px;font-size:16px;line-height:1.6}.cta-row{gap:16px;margin-bottom:36px;display:flex}.btn-primary{background:var(--pulse);color:#3a2205;cursor:pointer;border:none;border-radius:6px;padding:14px 26px;font-size:15px;font-weight:600;text-decoration:none}html[data-theme=light] .btn-primary{color:#fff}.btn-ghost{border:1px solid var(--line-2);color:var(--paper);border-radius:6px;padding:14px 26px;font-size:15px;text-decoration:none;position:relative;overflow:hidden}.cta-row .btn-primary,.cta-row .btn-ghost{animation:2.8s ease-in-out infinite cta-attention}.cta-row .btn-ghost{animation-delay:1.4s}.nav-cta,.load-more-btn,.filter-btn{animation:2.8s ease-in-out infinite cta-attention}.load-more-btn{animation-delay:.7s}.filter-btn:nth-child(odd){animation-delay:1.1s}.filter-btn:nth-child(2n){animation-delay:1.8s}.cta-row .btn-primary:after,.cta-row .btn-ghost:after{content:"";pointer-events:none;background:linear-gradient(105deg,#0000,#ffffff47,#0000);width:60%;animation:2.8s ease-in-out infinite cta-shine;position:absolute;inset:0 auto 0 -120%;transform:skew(-18deg)}@keyframes cta-attention{0%,65%,to{box-shadow:0 0 0 rgba(var(--pulse-rgb), 0);transform:scale(1)}72%{box-shadow:0 0 0 7px rgba(var(--pulse-rgb), .12);transform:scale(1.035)}80%{box-shadow:0 0 0 0 rgba(var(--pulse-rgb), 0);transform:scale(1)}}@keyframes cta-shine{0%,55%{left:-120%}75%,to{left:140%}}@media (prefers-reduced-motion:reduce){.cta-row .btn-primary,.cta-row .btn-ghost,.cta-row .btn-primary:after,.cta-row .btn-ghost:after{animation:none}}.stats-row{border-top:1px solid var(--line);gap:32px;max-width:460px;padding-top:24px;display:flex}.stats-row .stat b{font-size:22px;font-weight:700;display:block}.stats-row .stat span{color:var(--fog);margin-top:2px;font-size:12px;display:block}.hub-wrap{z-index:1;width:420px;height:420px;margin:0 auto;position:relative}.hub-wrap svg{width:100%;height:100%;position:absolute;inset:0}.flow-line{stroke:rgba(var(--signal-rgb), .35);stroke-width:1.4px;stroke-dasharray:4 7;animation:1.8s linear infinite flow}.ping-circle{transform-origin:210px 210px;animation:2.6s ease-out infinite ping}.hub-center{background:var(--surface);border:1px solid rgba(var(--signal-rgb), .3);width:100px;height:100px;color:var(--signal);text-align:center;border-radius:50%;justify-content:center;align-items:center;font-size:14px;font-weight:700;display:flex;position:absolute;top:210px;left:210px;transform:translate(-50%,-50%)}.node{background:var(--surface);border:1px solid var(--line-2);opacity:0;width:72px;height:72px;animation:.5s forwards node-in,4.5s ease-in-out infinite float;animation-delay:var(--d), var(--d);border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:4px;margin-top:-36px;margin-left:-36px;display:flex;position:absolute}.node .ic{color:var(--signal);font-size:14px;font-weight:700}.node .lb{color:var(--fog);font-size:9px}.n1{--d:.1s;top:58px;left:210px}.n2{--d:.5s;top:140px;left:352px}.n3{--d:.9s;top:300px;left:352px}.n4{--d:1.3s;top:385px;left:210px}.n5{--d:1.7s;top:300px;left:70px}.n6{--d:2.1s;top:140px;left:70px}.services{padding:70px 64px}.services-grid{grid-template-columns:repeat(4,1fr);gap:16px;max-width:1180px;margin:0 auto;display:grid}.service-card{background:var(--surface-2);border:1px solid var(--line);border-radius:14px;padding:22px;transition:transform .25s,border-color .25s}.service-card:hover{border-color:rgba(var(--signal-rgb), .35);transform:translateY(-6px)scale(1.01)}.service-card .icon-wrap{border-radius:10px;justify-content:center;align-items:center;width:42px;height:42px;margin-bottom:16px;display:flex}.service-card .icon-wrap svg{width:20px;height:20px}.service-card h3{margin-bottom:7px;font-size:15px}.service-card p{color:var(--fog);font-size:12.5px;line-height:1.55}.c-cyan .icon-wrap{background:rgba(var(--signal-rgb), .12)}.c-cyan svg{stroke:var(--signal)}.c-amber .icon-wrap{background:rgba(var(--pulse-rgb), .12)}.c-amber svg{stroke:var(--pulse)}.about{grid-template-columns:.95fr 1.05fr;align-items:center;gap:72px;max-width:1220px;margin:0 auto;padding:104px 64px;display:grid}.visual{height:470px;position:relative}.frame{background:var(--surface);border:1px solid var(--line-2);width:330px;height:390px;box-shadow:22px 22px 0 rgba(var(--signal-rgb), .07), 0 24px 70px #0003;border-radius:16px;position:absolute;top:30px;left:0;overflow:hidden}.frame:after{content:"";background:linear-gradient(180deg, transparent 50%, rgba(var(--ink-rgb), .72));pointer-events:none;position:absolute;inset:0}.frame img{object-fit:cover;opacity:.9;width:100%;height:100%;transition:transform .6s}.about:hover .frame img{transform:scale(1.04)}.frame-tag{background:rgba(var(--ink-rgb), .75);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1px solid var(--line);color:var(--fog);border-radius:10px;padding:10px 12px;font-size:12px;position:absolute;bottom:14px;left:14px;right:14px}.badge-card{background:var(--surface-2);border:1px solid rgba(var(--signal-rgb), .25);border-radius:14px;width:220px;padding:18px;position:absolute;top:-40px;right:0}.badge-card .num{color:var(--signal);font-size:26px;font-weight:700}.badge-card .lb{color:var(--fog);margin-top:2px;font-size:12px}.badge-card .bar{background:var(--line);border-radius:4px;height:4px;margin-top:14px;overflow:hidden}.badge-card .bar span{background:var(--signal);border-radius:4px;width:0%;height:100%;animation:1.6s .3s forwards fill;display:block}.code-chip{background:var(--surface);border:1px solid rgba(var(--pulse-rgb), .25);width:185px;color:var(--fog);border-radius:12px;padding:14px;font-size:11px;line-height:1.7;position:absolute;bottom:15px;right:15px}.code-chip b{color:var(--pulse)}.code-chip .status{color:var(--signal);align-items:center;gap:6px;margin-top:8px;font-size:11px;display:flex}.code-chip .status .d{background:var(--signal);border-radius:50%;width:6px;height:6px;animation:1.6s ease-in-out infinite blink}.about h2{letter-spacing:-.6px;max-width:480px;font-size:32px;font-weight:700;line-height:1.2}.about .lead{color:var(--fog);max-width:480px;margin:18px 0 34px;font-size:15.5px;line-height:1.65}.feature-row{border-top:1px solid var(--line);gap:16px;padding:20px 0;transition:border-color .25s,transform .25s;display:flex}.feature-row:last-child{border-bottom:1px solid var(--line)}.feature-row:hover{border-color:rgba(var(--signal-rgb), .4);transform:translate(6px)}.feature-icon{background:rgba(var(--signal-rgb), .12);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.feature-icon svg{width:18px;height:18px;stroke:var(--signal)}.feature-text h3{margin-bottom:5px;font-size:15.5px}.feature-text p{color:var(--fog);max-width:400px;font-size:13px;line-height:1.55}.about>.reveal:last-child{background:rgba(var(--surface-rgb,18, 26, 46), .32);border:1px solid var(--line);border-radius:18px;padding:30px 34px 26px}@keyframes about-float{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-8px)rotate(1deg)}}.about .badge-card,.about .code-chip{transition:background .3s,border-color .3s,box-shadow .3s}.about .visual.visible .badge-card{animation:4.8s ease-in-out .4s infinite about-float}.about .visual.visible .code-chip{animation:5.4s ease-in-out .8s infinite reverse about-float}.about .reveal:last-child.visible .feature-row{animation:.55s both about-feature-in}.about .reveal:last-child.visible .feature-row:nth-of-type(2){animation-delay:80ms}.about .reveal:last-child.visible .feature-row:nth-of-type(3){animation-delay:.16s}.about .reveal:last-child.visible .feature-row:nth-of-type(4){animation-delay:.24s}@keyframes about-feature-in{0%{opacity:0;transform:translate(14px)}to{opacity:1;transform:translate(0)}}html[data-theme=light] .about .frame{box-shadow:22px 22px 0 rgba(var(--signal-rgb), .1), 0 24px 60px #0b11201f}html[data-theme=light] .about .frame:after{background:linear-gradient(#0000 48%,#0b11208c)}html[data-theme=light] .about .frame-tag{color:var(--paper);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffdb;border-color:#0b11201f}html[data-theme=light] .about .badge-card,html[data-theme=light] .about .code-chip{background:var(--surface);border-color:rgba(var(--signal-rgb), .32);box-shadow:0 14px 30px #0b11201a}html[data-theme=light] .about>.reveal:last-child{background:#ffffffb8;border-color:#0b11201f;box-shadow:0 18px 40px #0b11200f}html[data-theme=light] .about .feature-row:hover{background:rgba(var(--signal-rgb), .04)}@media (prefers-reduced-motion:reduce){.about .visual.visible .badge-card,.about .visual.visible .code-chip,.about .reveal:last-child.visible .feature-row{animation:none}.about .frame img,.feature-row{transition:none}}@media (width<=900px){.projects-grid,.blog-grid,.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.about-story,.contact-grid,.process-grid{grid-template-columns:1fr}.mega-project-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.section-head,.projects-head,.blog-head{flex-wrap:wrap;gap:18px}}@media (width<=1200px){.projects #pGrid{grid-template-columns:minmax(0,1fr)!important;width:100%!important}.projects #pGrid .p-card{width:100%!important;max-width:none!important}}@media (width<=600px){.projects-grid,.blog-grid,.services-grid,.clients-grid,.about-mv-grid,.mega-project-columns{grid-template-columns:1fr}.section,.projects,.blog,.services,.contact,.about-story,.about-mv{padding-left:18px;padding-right:18px}.section-head h2,.projects-head h2,.blog-head h2{font-size:clamp(24px,7vw,34px)}.faq-wrap{grid-template-columns:1fr}.faq-img{min-height:260px}.article-share-links{flex-wrap:wrap}.project-detail-story,.article-body{padding-left:18px;padding-right:18px}.about-story{gap:34px;padding-top:58px;padding-bottom:58px}}@media (width<=900px){.projects #pGrid{grid-template-columns:minmax(0,1fr)!important;width:100%!important}.projects #pGrid .p-card{width:100%!important;max-width:none!important}}@media (width<=380px){.hero h1{font-size:24px}.stack-grid{grid-template-columns:1fr}.social{gap:7px}.social a{width:32px;height:32px}}html[data-theme=light] .about-hero,html[data-theme=light] .about-frame,html[data-theme=light] .about-hero-meta,html[data-theme=light] .about-visual-label,html[data-theme=light] .about-mv-card,html[data-theme=light] .about-quick-facts,html[data-theme=light] .about-fact:not(:last-child),html[data-theme=light] .service-timeline-row,html[data-theme=light] .service-process-step{border-color:var(--line)}html[data-theme=light] .project-detail-story .about-frame{box-shadow:0 24px 70px #0b11201f}.about-redesign{isolation:isolate;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:clamp(44px,7vw,92px);padding-top:118px;padding-bottom:118px;position:relative;overflow:hidden}.about-redesign:before{content:"";background:linear-gradient(90deg, transparent, rgba(var(--signal-rgb), .2), transparent);z-index:-1;height:1px;position:absolute;inset:12% 0 auto}.about-redesign-visual{min-height:560px;position:relative}.about-redesign-glow{background:radial-gradient(circle, rgba(var(--signal-rgb), .17), transparent 68%);filter:blur(8px);pointer-events:none;border-radius:50%;width:340px;height:340px;animation:5s ease-in-out infinite about-glow-pulse;position:absolute;top:12%;left:10%}.about-redesign-grid{opacity:.45;background-image:linear-gradient(rgba(var(--signal-rgb), .08) 1px, transparent 1px), linear-gradient(90deg, rgba(var(--signal-rgb), .08) 1px, transparent 1px);pointer-events:none;background-size:34px 34px;position:absolute;inset:2% 0 6% 4%;-webkit-mask-image:linear-gradient(135deg,#000,#0000 76%);mask-image:linear-gradient(135deg,#000,#0000 76%)}.about-redesign-frame{border:1px solid rgba(var(--signal-rgb), .28);background:var(--surface-2);box-shadow:18px 18px 0 rgba(var(--signal-rgb), .06), 0 30px 80px #00000040;border-radius:24px;transition:transform .5s,border-color .5s;position:absolute;inset:8% 8% 4% 0;overflow:hidden;transform:rotate(-2deg)}.about-redesign-visual:hover .about-redesign-frame{border-color:rgba(var(--signal-rgb), .52);transform:rotate(0)translateY(-6px)}.about-redesign-frame:after{content:"";background:linear-gradient(180deg, transparent 48%, rgba(var(--ink-rgb), .75));pointer-events:none;position:absolute;inset:0}.about-redesign-frame img{object-fit:cover;opacity:.9;width:100%;height:100%;transition:transform .8s;display:block}.about-redesign-visual:hover .about-redesign-frame img{transform:scale(1.06)}.about-redesign-placeholder{width:100%;height:100%;color:var(--signal);justify-content:center;align-items:center;display:flex}.about-redesign-placeholder svg{opacity:.5;width:78px;height:78px}.about-redesign-frame-label{z-index:1;color:var(--paper);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:9px;font-size:12px;display:flex;position:absolute;bottom:20px;left:22px}.about-redesign-signal{z-index:2;border:1px solid var(--line-2);background:rgba(var(--ink-rgb), .86);color:var(--fog);letter-spacing:.12em;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:8px;padding:9px 12px;font:10px/1 monospace;animation:4.8s ease-in-out infinite about-float;position:absolute}.about-redesign-signal b{color:var(--signal);margin-left:6px}.about-redesign-signal-one{top:11%;right:1%}.about-redesign-signal-two{animation-delay:-2.2s;bottom:13%;left:-5%}.about-redesign-status-card{z-index:3;background:var(--surface);border:1px solid rgba(var(--signal-rgb), .28);border-radius:14px;width:min(270px,58%);padding:17px;animation:5.8s ease-in-out -1s infinite reverse about-float;position:absolute;bottom:4%;right:-2%;box-shadow:0 18px 45px #00000040}.about-redesign-status-kicker{color:var(--signal);letter-spacing:.12em;text-transform:uppercase;margin-bottom:11px;font-size:10px;display:block}.about-redesign-status-row{border-top:1px solid var(--line);color:var(--paper);align-items:center;gap:8px;padding:9px 0;font-size:11px;display:flex}.about-redesign-status-icon{width:22px;height:22px;color:var(--signal);background:rgba(var(--signal-rgb), .1);border-radius:6px;justify-content:center;align-items:center;display:inline-flex}.about-redesign-status-icon svg{stroke:currentColor;fill:none;width:13px;height:13px}.about-redesign-status-row i{background:var(--signal);width:5px;height:5px;box-shadow:0 0 0 3px rgba(var(--signal-rgb), .12);border-radius:50%;margin-left:auto}.about-redesign-copy{align-self:center;max-width:610px}.about-redesign-copy h2{letter-spacing:-1.2px;max-width:600px;margin-bottom:18px;font-size:clamp(30px,3.2vw,48px);line-height:1.08}.about-redesign-copy .lead{max-width:540px;margin:0 0 30px;font-size:16px;line-height:1.75}.about-redesign-features{border-top:1px solid var(--line)}.about-redesign-feature{border-bottom:1px solid var(--line);align-items:flex-start;gap:15px;padding:18px 28px 18px 0;transition:padding-left .3s,background .3s;display:flex;position:relative}.about-redesign-feature:hover{background:linear-gradient(90deg, rgba(var(--signal-rgb), .06), transparent);padding-left:10px}.about-redesign-feature .feature-icon{width:38px;height:38px;color:var(--signal);background:rgba(var(--signal-rgb), .1);margin:0}.about-redesign-feature .feature-icon svg{stroke:currentColor;fill:none;width:18px;height:18px}.about-redesign-feature .feature-text h3{color:var(--paper);margin-bottom:4px;font-size:15px}.about-redesign-feature .feature-text p{max-width:500px;color:var(--fog);font-size:13px;line-height:1.55}.about-redesign-arrow{color:var(--signal);opacity:0;transition:opacity .3s,transform .3s;position:absolute;top:23px;right:3px;transform:translate(-8px,8px)}.about-redesign-feature:hover .about-redesign-arrow{opacity:1;transform:translate(0)}.about-redesign-link{color:var(--pulse);align-items:center;gap:10px;margin-top:26px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.about-redesign-link span{transition:transform .25s}.about-redesign-link:hover span{transform:translate(4px,-4px)}@keyframes about-glow-pulse{0%,to{opacity:.55;transform:scale(.94)}50%{opacity:1;transform:scale(1.08)}}@media (prefers-reduced-motion:reduce){.about-redesign-glow,.about-redesign-signal,.about-redesign-status-card{animation:none}.about-redesign-frame,.about-redesign-frame img,.about-redesign-feature,.about-redesign-arrow{transition:none}}@media (width<=900px){.about-redesign{grid-template-columns:1fr;gap:54px}.about-redesign-visual{width:100%;max-width:620px;min-height:500px;margin:0 auto}.about-redesign-copy{max-width:680px;margin:0 auto}}@media (width<=520px){.about-redesign{padding-top:78px;padding-bottom:78px}.about-redesign-visual{min-height:420px}.about-redesign-frame{inset:7% 0 8%}.about-redesign-status-card{width:68%;right:-2%}.about-redesign-signal-two{left:0}}.process{grid-template-columns:.9fr 1.4fr;align-items:center;gap:44px;max-width:1220px;margin:0 auto;padding:70px 64px;display:grid}.process-visual{background:var(--surface);border:1px solid var(--line);border-radius:16px;height:380px;padding:22px;position:relative;overflow:hidden}.process-visual:before{content:"";background:radial-gradient(circle, rgba(var(--signal-rgb), .12), transparent 70%);border-radius:50%;width:180px;height:180px;position:absolute;top:-40px;right:-40px}.pv-head{z-index:1;align-items:center;gap:8px;margin-bottom:20px;display:flex;position:relative}.pv-head .pv-dot{background:var(--line-2);border-radius:50%;width:9px;height:9px}.pv-head .pv-dot:first-child{background:var(--pulse);opacity:.6}.pv-head .pv-dot:nth-child(2){background:var(--fog);opacity:.5}.pv-head .pv-dot:nth-child(3){background:var(--signal);opacity:.6}.pv-head span{color:var(--fog);margin-left:8px;font-size:11.5px}.pv-line{color:var(--fog);z-index:1;margin-bottom:16px;font-size:12.5px;position:relative}.pv-line b{color:var(--signal);font-weight:600}.pv-cursor{background:var(--signal);vertical-align:middle;width:6px;height:13px;margin-left:4px;animation:1s step-end infinite blink;display:inline-block}.pv-row{z-index:1;margin-bottom:16px;position:relative}.pv-row-top{color:var(--fog);justify-content:space-between;margin-bottom:6px;font-size:12px;display:flex}.pv-row-top .pv-check{background:var(--surface-2);border:1px solid var(--line-2);color:#0000;border-radius:50%;justify-content:center;align-items:center;width:14px;height:14px;font-size:9px;transition:all .3s;display:flex}.pv-bar{background:var(--line);border-radius:4px;height:4px;overflow:hidden}.pv-bar span{background:var(--signal);border-radius:4px;width:0%;height:100%;display:block}.pv-row1 .pv-bar span{animation:1.4s .3s forwards pv-fill}.pv-row2 .pv-bar span{animation:1.4s 1.9s forwards pv-fill}.pv-row3 .pv-bar span{animation:1.4s 3.5s forwards pv-fill}.pv-row1 .pv-check{animation:.3s 1.7s forwards pv-check-in}.pv-row2 .pv-check{animation:.3s 3.3s forwards pv-check-in}.pv-row3 .pv-check{animation:.3s 4.9s forwards pv-check-in}.pv-status{color:var(--signal);border-top:1px solid var(--line);z-index:1;opacity:0;align-items:center;gap:8px;padding-top:16px;font-size:12px;animation:.4s 5.2s forwards appear;display:flex;position:absolute;bottom:22px;left:22px;right:22px}.timeline{grid-template-columns:repeat(6,1fr);gap:12px;display:grid;position:relative}.track-line{background:var(--line);z-index:0;height:2px;position:absolute;top:23px;left:8.33333%;right:8.33333%}.track-fill{background:var(--signal);width:0%;height:100%;transition:width .6s;position:absolute;top:0;left:0}.track-dot{background:var(--paper);width:6px;height:6px;box-shadow:0 0 6px 1px var(--signal);opacity:0;border-radius:50%;transition:left .6s,opacity .2s;position:absolute;top:-2px}.step{text-align:center;z-index:1;position:relative}.step .node2{border:2px solid var(--line-2);background:var(--surface);width:46px;height:46px;color:var(--fog);z-index:1;border-radius:50%;justify-content:center;align-items:center;margin:0 auto 18px;font-size:14px;font-weight:700;transition:border-color .4s,color .4s,box-shadow .4s;display:flex;position:relative}.step.active .node2{border-color:var(--signal);color:var(--signal);box-shadow:0 0 0 5px rgba(var(--signal-rgb), .1)}.step h3{margin-bottom:8px;font-size:14.5px;transition:color .4s}.step.active h3{color:var(--signal)}.step p{color:var(--fog);padding:0 6px;font-size:12px;line-height:1.55;transition:color .4s}.step.active p{color:var(--paper)}.stats-strip{grid-template-columns:repeat(4,1fr);gap:20px;max-width:1220px;margin:0 auto;padding:70px 64px;display:grid}.stat-card{background:var(--surface);border:1px solid var(--line);text-align:center;border-radius:14px;padding:26px 20px}.stat-card .num{color:var(--signal);letter-spacing:-1px;font-size:34px;font-weight:700}.stat-card .num span{font-size:22px}.stat-card .lb{color:var(--fog);margin-top:6px;font-size:12.5px}.trust{padding:50px 0;overflow:hidden}.trust p.lb{color:var(--fog);letter-spacing:.4px;text-align:center;margin-bottom:26px;font-size:12.5px}.marquee-outer{width:100%;position:relative;overflow:hidden}.marquee-outer:before,.marquee-outer:after{content:"";z-index:2;width:80px;position:absolute;top:0;bottom:0}.marquee-outer:before{background:linear-gradient(90deg, var(--surface), transparent);left:0}.marquee-outer:after{background:linear-gradient(270deg, var(--surface), transparent);right:0}.marquee-track{width:max-content;animation:22s linear infinite marquee;display:flex}.marquee-group{flex:none;gap:40px;padding-right:40px;display:flex}.logo-chip{background:var(--surface-2);border:1px solid var(--line);white-space:nowrap;border-radius:10px;flex:0 0 268px;justify-content:center;align-items:center;gap:10px;width:268px;min-height:96px;padding:12px 20px;display:flex}.logo-chip img{object-fit:contain;max-width:100%;display:block}.logo-chip .mono{background:rgba(var(--signal-rgb), .15);width:28px;height:28px;color:var(--signal);border-radius:7px;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:flex}.logo-chip span{color:var(--fog);font-size:14px;font-weight:600}.stack{max-width:1220px;margin:0 auto;padding:70px 64px}.stack-grid{grid-template-columns:repeat(6,1fr);gap:14px;display:grid}.stack-item{background:var(--surface-2);border:1px solid var(--line);text-align:center;border-radius:12px;padding:20px 10px;transition:border-color .2s,transform .2s}.stack-item:hover{border-color:rgba(var(--signal-rgb), .35);transform:translateY(-4px)}.stack-item .glyph{color:var(--signal);margin-bottom:8px;font-size:20px;font-weight:700}.stack-item .name{color:var(--fog);font-size:11.5px}.projects{max-width:1220px;margin:0 auto;padding:70px 64px}.filters{flex-wrap:wrap;justify-content:center;gap:10px;margin-bottom:36px;display:flex}.filter-btn{background:var(--surface);border:1px solid var(--line);color:var(--fog);cursor:pointer;border-radius:20px;padding:8px 18px;font-size:13px;transition:all .2s}.filter-btn.active{background:rgba(var(--signal-rgb), .12);border-color:rgba(var(--signal-rgb), .4);color:var(--signal)}.p-grid{grid-template-columns:repeat(3,1fr);align-items:stretch;gap:20px;width:100%;display:grid}@media (width<=600px){.projects #pGrid,.projects #pGrid .p-card,.projects .load-more-wrap,.projects .load-more-wrap .load-more-btn{box-sizing:border-box;min-width:0;width:100%!important;max-width:none!important}.projects #pGrid{grid-template-columns:none;display:block!important}.projects #pGrid .p-card{margin:0 0 20px;width:100%!important;display:block!important}}.p-card{color:inherit;background:var(--surface);border:1px solid var(--line);border-radius:14px;text-decoration:none;transition:transform .25s,border-color .25s;display:block;overflow:hidden}.p-card:hover{border-color:rgba(var(--signal-rgb), .3);transform:translateY(-5px)}.p-thumb{height:160px;position:relative;overflow:hidden}.p-thumb img{object-fit:cover;width:100%;height:100%;transition:transform .4s}.p-card:hover .p-thumb img{transform:scale(1.06)}.p-thumb .tag{background:rgba(var(--ink-rgb), .8);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);border:1px solid rgba(var(--signal-rgb), .3);color:var(--signal);border-radius:20px;padding:4px 10px;font-size:10.5px;position:absolute;top:12px;right:12px}.p-body{padding:18px}.p-body h3{margin-bottom:6px;font-size:15px}.p-body p{color:var(--fog);margin-bottom:12px;font-size:12.5px;line-height:1.5}.p-link{color:var(--pulse);border-bottom:1px solid #0000;font-size:12.5px;text-decoration:none}.p-card:hover .p-link{border-bottom-color:var(--pulse)}.blog{max-width:1220px;margin:0 auto;padding:70px 64px}.blog-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:14px;margin-bottom:40px;display:flex}.blog-head h2{letter-spacing:-.5px;max-width:420px;font-size:28px;font-weight:700}.blog-head p{color:var(--fog);max-width:340px;font-size:14px}.view-all{color:var(--signal);border-bottom:1px solid rgba(var(--signal-rgb), .4);white-space:nowrap;font-size:13.5px;text-decoration:none}.blog-grid{grid-template-columns:repeat(3,1fr);align-items:stretch;gap:20px;width:100%;display:grid}.b-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;transition:transform .25s,border-color .25s;overflow:hidden}.b-card:hover{border-color:rgba(var(--signal-rgb), .3);transform:translateY(-5px)}.b-thumb{height:150px;overflow:hidden}.b-thumb img{object-fit:cover;width:100%;height:100%;transition:transform .4s}.b-card:hover .b-thumb img{transform:scale(1.06)}.b-body{padding:18px}.b-cat{color:var(--signal);text-transform:uppercase;letter-spacing:.4px;font-size:11px;font-weight:600}.b-body h3{margin:8px 0 10px;font-size:15px;line-height:1.4}.b-meta{color:var(--fog);border-top:1px solid var(--line);justify-content:space-between;padding-top:12px;font-size:11.5px;display:flex}.faq-wrap{grid-template-columns:1fr 1fr;align-items:center;gap:50px;max-width:1220px;margin:0 auto;padding:70px 64px;display:grid}.faq-img{border:1px solid var(--line);border-radius:16px;height:600px;overflow:hidden}.faq-img img{object-fit:cover;width:100%;height:100%}.faq-item{background:var(--surface);border:1px solid var(--line);border-radius:12px;margin-bottom:12px;overflow:hidden}.faq-q{cursor:pointer;justify-content:space-between;align-items:center;padding:18px 20px;font-size:14.5px;font-weight:600;display:flex}.faq-q .plus{flex-shrink:0;width:20px;height:20px;position:relative}.faq-q .plus:before,.faq-q .plus:after{content:"";background:var(--signal);transition:transform .25s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.faq-q .plus:before{width:12px;height:2px}.faq-q .plus:after{width:2px;height:12px}.faq-item.open .faq-q .plus:after{opacity:0;transform:translate(-50%,-50%)rotate(90deg)}.faq-a{max-height:0;transition:max-height .3s;overflow:hidden}.faq-a p{color:var(--fog);padding:0 20px 18px;font-size:13.5px;line-height:1.6}.faq-item.open .faq-a{max-height:200px}.service-faqs{padding:70px 64px}.service-faqs-inner{max-width:820px;margin:0 auto}.service-faq-list{max-width:760px;margin:0 auto}.contact{grid-template-columns:1fr .8fr;align-items:start;gap:64px;max-width:1220px;margin:0 auto;padding:92px 64px;display:grid}.contact-form-wrap{background:var(--surface);border:1px solid var(--line-2);border-radius:18px;padding:34px;box-shadow:0 20px 60px #0000001f}.contact h2{letter-spacing:-.6px;max-width:440px;font-size:30px;font-weight:700}.contact .lead{color:var(--fog);max-width:440px;margin:16px 0 32px;font-size:15px;line-height:1.6}.contact-form{grid-template-columns:1fr 1fr;gap:14px;max-width:none;display:grid}.field{flex-direction:column;gap:6px;display:flex}.field.full{grid-column:1/-1}.field label{color:var(--fog);font-size:12.5px}.contact input,.contact select,.contact textarea{background:var(--surface-2);border:1px solid var(--line-2);color:var(--paper);border-radius:8px;padding:11px 12px;font-family:inherit;font-size:13.5px;transition:border-color .2s,background .2s,box-shadow .2s}.contact input:focus,.contact select:focus,.contact textarea:focus{border-color:var(--signal);background:var(--surface);box-shadow:0 0 0 3px rgba(var(--signal-rgb), .12);outline:none}.contact textarea{resize:vertical;min-height:90px}.submit-btn{background:var(--pulse);color:#3a2205;cursor:pointer;border:none;border-radius:8px;grid-column:1/-1;margin-top:4px;padding:13px 20px;font-size:14.5px;font-weight:600;transition:transform .2s,filter .2s}.submit-btn:hover{filter:brightness(1.08);transform:translateY(-2px)}html[data-theme=light] .submit-btn{color:#fff}.contact-right{flex-direction:column;gap:16px;margin-top:-40px;display:flex}.contact-side-intro{border-bottom:1px solid var(--line);align-items:flex-start;gap:14px;margin-bottom:6px;padding:4px 4px 18px;display:flex}.contact-side-mark{width:38px;height:38px;color:var(--pulse);background:rgba(var(--pulse-rgb), .12);border-radius:11px;flex:0 0 38px;justify-content:center;align-items:center;font-size:17px;display:flex}.contact-side-intro .eyebrow{margin-bottom:5px}.contact-side-intro p{color:var(--fog);font-size:13px;line-height:1.55}.d-card{background:var(--surface-2);border:1px solid var(--line);color:inherit;border-radius:14px;align-items:flex-start;gap:14px;padding:20px;text-decoration:none;transition:transform .25s,border-color .25s;display:flex}.d-card:hover{border-color:rgba(var(--signal-rgb), .35);transform:translate(5px)}.d-card .ic{background:rgba(var(--signal-rgb), .12);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.d-card .ic svg{width:18px;height:18px;stroke:var(--signal)}.d-card h4{margin-bottom:4px;font-size:14px}.d-card p{color:var(--fog);font-size:13px}.status-card{background:var(--surface-2);border:1px solid rgba(var(--signal-rgb), .2);border-radius:14px;padding:20px}.service-card,.p-card,.b-card,.d-card,.t-card-mini,.about-mv-card,.stat-card{will-change:transform;transition-timing-function:cubic-bezier(.22,1,.36,1)}.service-card:hover,.p-card:hover,.b-card:hover,.d-card:hover,.t-card-mini:hover,.about-mv-card:hover,.stat-card:hover{box-shadow:0 18px 40px #0000002e, 0 0 0 1px rgba(var(--signal-rgb), .08)}.service-card .icon-wrap,.d-card .ic,.t-card-mini .avatar,.stat-card .num{transition:transform .3s cubic-bezier(.22,1,.36,1),background-color .3s}.service-card:hover .icon-wrap,.d-card:hover .ic,.t-card-mini:hover .avatar,.stat-card:hover .num{transform:translateY(-3px)scale(1.06)}@media (prefers-reduced-motion:reduce){.service-card,.p-card,.b-card,.d-card,.t-card-mini,.about-mv-card,.stat-card,.service-card .icon-wrap,.d-card .ic,.t-card-mini .avatar,.stat-card .num{will-change:auto;transition:none}}.status-card .row{color:var(--signal);align-items:center;gap:8px;margin-bottom:10px;font-size:12.5px;display:flex}.status-card .big{font-size:22px;font-weight:700}.status-card .lb{color:var(--fog);margin-top:2px;font-size:12px}.testi-marquee{padding:80px 0;overflow:hidden}.testi-marquee-outer{width:100%;position:relative;overflow:hidden}.testi-marquee-outer:before,.testi-marquee-outer:after{content:"";z-index:2;width:100px;position:absolute;top:0;bottom:0}.testi-marquee-outer:before{background:linear-gradient(90deg, var(--surface), transparent);left:0}.testi-marquee-outer:after{background:linear-gradient(270deg, var(--surface), transparent);right:0}.testi-track{width:max-content;animation:34s linear infinite marquee;display:flex}.testi-track:hover{animation-play-state:paused}.t-card-mini{background:var(--surface-2);border:1px solid var(--line);cursor:pointer;border-radius:14px;flex-shrink:0;width:280px;margin-top:6px;padding:20px;transition:transform .25s,border-color .25s}.testi-group{flex:none;gap:18px;padding-right:18px;display:flex}.t-card-mini:hover,.t-card-mini:focus-visible{border-color:rgba(var(--signal-rgb), .45);outline:none;transform:translateY(-5px)}.t-card-mini .quote-mark{color:var(--pulse);margin-bottom:4px;font-family:Georgia,serif;font-size:26px;line-height:1}.t-card-mini .stars{gap:2px;margin-bottom:12px;display:flex}.t-card-mini .stars svg{width:12px;height:12px;fill:var(--pulse)}.t-card-mini p.msg{color:var(--paper);line-clamp:3;-webkit-line-clamp:3;-webkit-box-orient:vertical;min-height:60px;margin-bottom:16px;font-size:12.5px;line-height:1.6;display:-webkit-box;overflow:hidden}.t-card-mini .t-foot{border-top:1px solid var(--line);align-items:center;gap:10px;padding-top:14px;display:flex}.t-card-mini .avatar{object-fit:cover;border-radius:50%;width:34px;height:34px}.t-card-mini .avatar-initials{background:rgba(var(--signal-rgb), .14);color:var(--signal);letter-spacing:.04em;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:flex}.testimonial-modal{z-index:100;justify-content:center;align-items:center;padding:24px;display:none;position:fixed;inset:0}.testimonial-modal.open{display:flex}.testimonial-modal-backdrop{background:rgba(var(--ink-rgb), .76);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);position:absolute;inset:0}.testimonial-modal-card{z-index:1;background:var(--surface);border:1px solid rgba(var(--signal-rgb), .3);border-radius:16px;width:min(560px,100%);padding:32px;position:relative;box-shadow:0 24px 80px #00000047}.testimonial-modal-close{color:var(--fog);cursor:pointer;background:0 0;border:0;font-size:28px;line-height:1;position:absolute;top:12px;right:16px}.testimonial-modal-message{color:var(--paper);margin:18px 0 24px;font-size:16px;line-height:1.75}.testimonial-modal-person{border-top:1px solid var(--line);flex-direction:column;gap:4px;padding-top:16px;display:flex}.testimonial-modal-person strong{color:var(--paper);font-size:14px}.testimonial-modal-person span{color:var(--fog);font-size:12px}.t-card-mini .name{font-size:13px;font-weight:600}.t-card-mini .role{color:var(--fog);font-size:11px}.cta-band{text-align:center;max-width:1220px;margin:0 auto;padding:20px 64px 70px}.cta-inner{background:var(--surface);border:1px solid rgba(var(--signal-rgb), .2);border-radius:20px;padding:56px 40px;position:relative;overflow:hidden}.cta-inner .cta-bg-img{opacity:.08;background-image:url(https://images.unsplash.com/photo-1518770660439-4636190af475?w=900&q=50);background-position:50%;background-size:cover;position:absolute;inset:0}.cta-inner:before{content:"";background:radial-gradient(circle, rgba(var(--signal-rgb), .15), transparent 70%);border-radius:50%;width:220px;height:220px;position:absolute;top:-60px;right:-60px}.cta-inner h2{letter-spacing:-.6px;z-index:1;max-width:560px;margin:0 auto 14px;font-size:28px;font-weight:700;position:relative}.cta-inner p{color:var(--fog);z-index:1;max-width:460px;margin:0 auto 26px;font-size:15px;position:relative}.cta-inner .btn-primary{z-index:1;position:relative}footer{background:linear-gradient(180deg, var(--wash), var(--ink));border-top:1px solid var(--line);padding:50px 64px 0}.foot-grid{grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:40px;max-width:1220px;margin:0 auto;padding-bottom:40px;display:grid}.foot-logo{letter-spacing:-.4px;margin-bottom:14px;font-size:19px;font-weight:700;display:inline-block}.foot-logo .logo-image{max-width:220px;height:48px}.foot-logo span{color:var(--signal)}.foot-col p{color:var(--fog);max-width:280px;font-size:13px;line-height:1.6}.social{gap:10px;margin-top:18px;display:flex}.social a{background:var(--surface);border:1px solid var(--line);width:34px;height:34px;color:var(--fog);border-radius:8px;justify-content:center;align-items:center;font-size:13px;text-decoration:none;display:flex}.social a:hover{color:var(--signal);border-color:rgba(var(--signal-rgb), .45);background:var(--surface-2)}.social a.share-btn{border-radius:8px;width:34px;height:34px}.social a.share-btn svg{width:16px;height:16px}.foot-col h4{color:var(--paper);margin-bottom:16px;font-size:13px;font-weight:600}.foot-col ul{list-style:none}.foot-col li{margin-bottom:10px}.foot-col ul a{color:var(--fog);font-size:13px;text-decoration:none}.foot-col ul a:hover{color:var(--signal)}.contact-item{color:var(--fog);align-items:flex-start;gap:10px;margin-bottom:14px;font-size:13px;text-decoration:none;display:flex}a.contact-item:hover{color:var(--signal)}.contact-item svg{width:15px;height:15px;stroke:var(--signal);flex-shrink:0;margin-top:1px}.newsletter form{gap:8px;margin-top:12px;display:flex}.newsletter input{background:var(--surface);border:1px solid var(--line-2);color:var(--paper);border-radius:6px;flex:1;padding:10px 12px;font-size:12.5px}.newsletter button{background:var(--signal);color:var(--ink);cursor:pointer;border:none;border-radius:6px;padding:10px 16px;font-size:12.5px;font-weight:600}.foot-bottom{border-top:1px solid var(--line);max-width:1220px;color:var(--fog);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin:0 auto;padding:20px 0;font-size:12px;display:flex}.foot-bottom a{color:var(--fog);margin-left:18px;text-decoration:none}.whatsapp-float{z-index:60;color:#fff;background:#25d366;border-radius:50%;justify-content:center;align-items:center;width:58px;height:58px;text-decoration:none;transition:transform .25s,box-shadow .25s;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:0 12px 30px #25d36655}.whatsapp-float svg{z-index:2;width:30px;height:30px;position:relative}.whatsapp-float:hover{transform:translateY(-4px)scale(1.04);box-shadow:0 16px 36px #25d36670}.whatsapp-float-ring{border:2px solid #25d36688;border-radius:50%;animation:2s ease-out infinite whatsapp-pulse;position:absolute;inset:-6px}@keyframes whatsapp-pulse{0%{opacity:.9;transform:scale(.82)}70%,to{opacity:0;transform:scale(1.25)}}@media (width<=600px){.whatsapp-float{width:52px;height:52px;bottom:16px;right:16px}.whatsapp-float svg{width:27px;height:27px}}.launcher{background:var(--pulse);cursor:pointer;width:56px;height:56px;box-shadow:0 8px 24px rgba(var(--pulse-rgb), .3);z-index:100;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:fixed;bottom:26px;right:26px}.launcher svg{stroke:#3a2205;width:23px;height:23px}html[data-theme=light] .launcher svg{stroke:#fff}.launcher .ring{border:2px solid var(--pulse);border-radius:50%;animation:2s ease-out infinite ringping;position:absolute;inset:0}.chat-panel{background:var(--surface);border:1px solid rgba(var(--signal-rgb), .2);z-index:100;opacity:0;pointer-events:none;border-radius:16px;flex-direction:column;width:330px;height:420px;transition:all .25s;display:flex;position:fixed;bottom:94px;right:26px;overflow:hidden;transform:translateY(20px)scale(.98);box-shadow:0 20px 50px #00000059}.chat-panel.open{opacity:1;pointer-events:auto;transform:translateY(0)scale(1)}.cp-head{background:var(--surface-2);border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:14px 16px;display:flex}.cp-head .status{background:var(--signal);width:8px;height:8px;box-shadow:0 0 0 3px rgba(var(--signal-rgb), .15);border-radius:50%}.cp-head .info b{font-size:13.5px;display:block}.cp-head .info span{color:var(--fog);font-size:11px}.cp-body{flex-direction:column;flex:1;gap:10px;padding:14px;display:flex;overflow-y:auto}.cp-bubble{border-radius:10px;max-width:82%;padding:10px 13px;font-size:12.5px;line-height:1.5}.cp-bubble.agent{background:var(--surface-2);align-self:flex-start}.cp-bubble.user{background:rgba(var(--signal-rgb), .12);align-self:flex-end}.cp-input{border-top:1px solid var(--line);gap:8px;padding:12px;display:flex}.cp-input input{background:var(--surface-2);border:1px solid var(--line-2);color:var(--paper);border-radius:8px;flex:1;padding:10px 12px;font-size:12.5px}.cp-input button{background:var(--signal);color:var(--ink);cursor:pointer;border:none;border-radius:8px;padding:0 14px;font-weight:700}nav{z-index:100;background:var(--ink);border-bottom:1px solid var(--line);transition:box-shadow .3s,background .3s;position:sticky;top:0}nav.scrolled{background:rgba(var(--ink-rgb), .92);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 24px #00000040}.nav-item{position:static}.nav-item>a{color:var(--fog);padding:8px 0;font-size:14px;text-decoration:none;transition:color .2s;display:inline-block}.nav-item>a:hover{color:var(--paper)}.mega-menu{background:var(--surface);border:1px solid var(--line);opacity:0;visibility:hidden;pointer-events:none;z-index:100;border-radius:16px;grid-template-columns:1.4fr 1fr;gap:34px;width:920px;max-width:calc(100vw - 48px);padding:30px;transition:opacity .2s,transform .2s,visibility .2s;display:grid;position:fixed;top:80px;left:50%;transform:translate(-50%)translateY(6px)scale(.98);box-shadow:0 30px 70px #00000080}.mega-menu.open{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%)translateY(0)scale(1)}.mega-menu.projects-mega{grid-template-columns:1fr}.mega-left-head{color:var(--fog);text-transform:uppercase;letter-spacing:.5px;margin-bottom:14px;font-size:11px}.mega-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.mega-project-columns{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.mega-project-column{min-width:0}.mega-column-title{color:var(--signal);text-transform:uppercase;letter-spacing:.5px;margin:4px 10px 8px;font-size:11px;font-weight:700}.mega-project-column .mega-link{padding-left:10px}.mega-link{color:var(--paper);background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:10px;padding:9px 10px;font-size:13.5px;font-weight:500;text-decoration:none;transition:background .15s,border-color .18s,transform .18s;display:flex}.mega-link:hover{background:var(--surface-2);border-color:var(--line);transform:translateY(-2px)}.mega-link .mi{border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.mega-link .mi svg{fill:none;stroke:currentColor;width:15px;height:15px;display:block}.mega-link.c-cyan .mi{background:rgba(var(--signal-rgb), .14);color:var(--signal)}.mega-link.c-cyan .mi svg{stroke:var(--signal)}.mega-link.c-amber .mi{background:rgba(var(--pulse-rgb), .14);color:var(--pulse)}.mega-link.c-amber .mi svg{stroke:var(--pulse)}.mega-viewall{border-top:1px solid var(--line);color:var(--signal);justify-content:space-between;align-items:center;margin-top:8px;padding-top:14px;font-size:13px;font-weight:600;text-decoration:none;display:flex}.mega-viewall:hover{gap:10px}.mega-right{border-left:1px solid var(--line);padding-left:24px}.mega-right-head{color:var(--fog);text-transform:uppercase;letter-spacing:.4px;margin-bottom:14px;font-size:11px}.mega-blog{border-radius:10px;gap:10px;margin:0 -6px 14px;padding:6px;text-decoration:none;transition:background .18s;display:flex}.mega-blog:hover{background:var(--surface-2)}.mega-blog img{object-fit:cover;border-radius:8px;flex-shrink:0;width:54px;height:54px}.mega-left{flex-direction:column;display:flex}.mega-link .dot{background:var(--signal);border-radius:50%;flex-shrink:0;width:5px;height:5px}.mega-blog-title{color:var(--paper);margin-bottom:3px;font-size:12.5px;line-height:1.4}.mega-blog-meta{color:var(--fog);font-size:11px}.mobile-menu-toggle,.mobile-menu{display:none}@media (width<=960px){nav{min-height:72px;padding:12px 20px}.logo-image{max-width:180px;height:42px}nav .nav-menu,.nav-cta,.mega-menu{display:none!important}.nav-right{gap:10px;margin-left:auto}.mobile-menu-toggle{border:1px solid var(--line-2);background:var(--surface);width:40px;height:40px;color:var(--paper);cursor:pointer;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:5px;margin-left:10px;padding:0;display:inline-flex}.mobile-menu-toggle span{background:currentColor;border-radius:999px;width:17px;height:1.5px;transition:transform .2s,opacity .2s;display:block}.mobile-menu-toggle.open span:first-child{transform:translateY(6.5px)rotate(45deg)}.mobile-menu-toggle.open span:nth-child(2){opacity:0}.mobile-menu-toggle.open span:nth-child(3){transform:translateY(-6.5px)rotate(-45deg)}.mobile-menu{z-index:99;background:rgba(var(--ink-rgb), .98);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);opacity:0;visibility:hidden;max-height:calc(100vh - 72px);padding:12px 20px 24px;transition:opacity .2s,transform .2s,visibility .2s;display:block;position:fixed;top:72px;left:0;right:0;overflow-y:auto;transform:translateY(-10px)}.mobile-menu.open{opacity:1;visibility:visible;transform:translateY(0)}.mobile-menu-inner{max-width:560px;margin:0 auto}.mobile-nav-item{border-bottom:1px solid var(--line)}.mobile-nav-item-row{justify-content:space-between;align-items:center;display:flex}.mobile-nav-item-row>a{color:var(--paper);flex:1;padding:16px 0;font-size:15px;font-weight:600;text-decoration:none;display:block}.mobile-submenu-toggle{background:var(--surface);width:38px;height:38px;color:var(--signal);cursor:pointer;border:0;border-radius:8px;font-size:22px}.mobile-nav-item.expanded .mobile-submenu-toggle span{display:block;transform:rotate(45deg)}.mobile-submenu{border-left:1px solid var(--line-2);padding:0 0 12px 14px;display:none}.mobile-nav-item.expanded .mobile-submenu{gap:2px;display:grid}.mobile-submenu a{color:var(--fog);align-items:center;gap:9px;padding:9px 0;font-size:14px;text-decoration:none;display:flex}.mobile-submenu-icon{width:20px;height:20px;color:var(--signal);justify-content:center;align-items:center;display:inline-flex}.mobile-submenu-icon svg{fill:none;stroke:currentColor;width:15px;height:15px}.mobile-nav-cta{background:var(--pulse);color:#3a2205;text-align:center;border-radius:8px;margin-top:18px;padding:13px 18px;font-weight:700;text-decoration:none;display:block}nav ul{display:none}.hero{grid-template-columns:minmax(0,1fr);padding:24px}.hero>.reveal{opacity:1;transition:none;transform:none}.hero-bg-img{display:none}.hub-wrap.reveal{transform-origin:top;width:420px;max-width:100%;height:420px;margin-bottom:-21px;transform:scale(.95)}.services,.stack,.about,.stats-strip,.p-grid,.projects,.blog,.contact,.cta-band{padding-left:24px;padding-right:24px}.services-grid,.stack-grid{grid-template-columns:repeat(3,1fr)}.about{grid-template-columns:1fr;padding-left:24px;padding-right:24px}.about .visual{width:100%;min-width:0;max-width:520px;height:450px;margin:0 auto}.about .frame{width:min(330px,100% - 42px);max-width:100%}.about .frame img,.about-frame img{object-fit:cover;object-position:center;max-width:100%;height:100%;display:block}.process{grid-template-columns:1fr;padding-left:24px;padding-right:24px}.process-visual{height:auto;padding:18px}.process-visual .pv-status{margin-top:20px;padding-top:16px;position:static}.timeline{grid-template-columns:1fr;gap:0}.track-line,.track-fill,.track-dot{display:none}.step{text-align:left;border-left:2px solid var(--line);align-items:flex-start;gap:16px;margin-left:23px;padding:16px 0 16px 24px;display:flex}.step .node2{flex-shrink:0;margin:0 0 0 -47px}.stats-strip{grid-template-columns:1fr 1fr}.p-grid,.blog-grid{grid-template-columns:1fr}.faq-wrap{grid-template-columns:1fr;padding-left:24px;padding-right:24px}.service-faqs{padding-left:24px;padding-right:24px}.faq-img{height:220px}.contact{grid-template-columns:1fr;padding-left:24px;padding-right:24px}.contact-form{grid-template-columns:1fr}.field.full{grid-column:1}.foot-grid{grid-template-columns:1fr 1fr}footer{padding:50px 24px 0}.t-card-mini{width:240px}.hero h1{font-size:30px}}@media (width<=600px){html,body{overflow-x:hidden}.hub-wrap.reveal{transform-origin:top;flex:0 0 420px;justify-self:auto;width:420px;max-width:none;margin-bottom:-50px;margin-left:-210px;margin-right:0;left:50%;transform:scale(.88)}.hub-wrap.reveal.visible{transform:scale(.88)}.foot-grid{grid-template-columns:1fr}.about{padding-top:72px;padding-bottom:72px}.about .visual{height:410px}.about .frame{width:calc(100% - 18px);height:350px}.about .badge-card{width:190px;padding:15px}.about .code-chip{width:165px;right:0}.about>.reveal:last-child{padding:24px 20px 20px}}@media (width<=480px){nav{padding:10px 14px}.logo-image{max-width:130px;height:36px}.nav-right{gap:8px}.theme-toggle,.mobile-menu-toggle{width:36px;height:36px}.hero{padding:20px 18px}.hero h1{max-width:100%;font-size:26px}.rotator{min-width:140px}.hero .sub{font-size:14px}.cta-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.btn-primary,.btn-ghost{text-align:center;white-space:nowrap;width:100%;padding:13px 8px;font-size:13px}.stats-row{flex-wrap:nowrap;gap:8px;max-width:100%;padding-top:18px}.stats-row .stat{flex:1 1 0;min-width:0}.stats-row .stat b{font-size:19px}.stats-row .stat span{font-size:10px;line-height:1.25}.services-grid{grid-template-columns:1fr}.stack-grid{grid-template-columns:repeat(2,1fr)}.contact-form-wrap{padding:22px 18px}}@media (width<=420px){.hub-wrap.reveal{margin-bottom:-105px;transform:scale(.75)}.hub-wrap.reveal.visible{transform:scale(.75)}}html[data-theme=light] .client-logo-dark{display:none!important}html[data-theme=light] .client-logo-light,html[data-theme=light] .client-logo-dark.client-logo-fallback,html[data-theme=dark] .client-logo-light.client-logo-fallback,html:not([data-theme]) .client-logo-light.client-logo-fallback{display:inline-block!important}.prose-content{color:var(--fog);font-size:16px;line-height:1.4}.prose-content h1,.prose-content h2,.prose-content h3{color:var(--paper);margin:36px 0 14px;padding-left:18px;font-weight:700;line-height:1.3;position:relative}.prose-content h1:before,.prose-content h2:before,.prose-content h3:before{content:"";background:var(--signal);border-radius:3px;width:3px;position:absolute;top:4px;bottom:4px;left:0}.prose-content h2{font-size:22px}.prose-content h3{font-size:18px}.prose-content p{margin-bottom:16px}.prose-content strong{color:var(--paper);font-weight:600}.prose-content ul,.prose-content ol{margin:4px 0 22px;padding:0;list-style:none}.prose-content ul li,.prose-content ol li{color:var(--fog);margin-bottom:12px;padding-left:26px;position:relative}.prose-content ul li:before{content:"";background:rgba(var(--signal-rgb), .9);width:8px;height:8px;box-shadow:0 0 0 3px rgba(var(--signal-rgb), .15);border-radius:50%;position:absolute;top:8px;left:0}.prose-content ol{counter-reset:prose-counter}.prose-content ol li{counter-increment:prose-counter}.prose-content ol li:before{content:counter(prose-counter);background:rgba(var(--signal-rgb), .12);width:18px;height:18px;color:var(--signal);border-radius:5px;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:flex;position:absolute;top:0;left:0}.prose-content li strong{color:var(--paper)}.prose-content a{color:var(--signal);text-underline-offset:3px;text-decoration:underline}.prose-content blockquote{border-left:3px solid var(--signal);background:var(--wash);color:var(--paper);border-radius:0 12px 12px 0;margin:24px 0;padding:16px 20px;font-style:italic}.about-hero{background:linear-gradient(180deg, var(--wash), var(--ink));border-bottom:1px solid #ffffff0f;padding:30px 20px}.about-hero-inner{text-align:center;max-width:900px;margin:0 auto}.about-breadcrumb{color:var(--fog);margin-bottom:24px;font-size:13px}.about-breadcrumb a{color:var(--fog);text-decoration:none}.about-breadcrumb a:hover{color:var(--signal)}.about-breadcrumb span{margin:0 6px}.about-hero-copy h1{color:var(--paper);margin:16px 0;font-size:42px;font-weight:800;line-height:1.2}.about-hero-copy p{color:var(--fog);max-width:560px;margin:0 auto;font-size:16px}.about-hero-meta{background:var(--surface);color:var(--fog);letter-spacing:.03em;border:1px solid #ffffff14;border-radius:999px;align-items:center;gap:10px;margin-top:32px;padding:8px 16px;font-size:12px;display:inline-flex}.about-hero-meta span:first-child{color:var(--signal);font-family:monospace;font-weight:700}.about-story{grid-template-columns:1fr 1fr;align-items:center;gap:60px;max-width:1200px;margin:0 auto;padding:90px 24px;display:grid}.about-visual{position:relative}.about-frame{aspect-ratio:4/5;border:1px solid #ffffff14;border-radius:20px;width:100%;overflow:hidden}.about-frame img{object-fit:cover;width:100%;height:100%;display:block}.service-story .about-frame{min-height:420px}.service-story{align-items:start}.service-story .about-visual{align-self:start}.service-story .about-visual-label{z-index:2;position:absolute;bottom:-18px;left:24px}.service-image-placeholder{background:var(--surface-2);width:100%;height:100%;min-height:420px;color:var(--signal);justify-content:center;align-items:center;display:flex}.service-image-placeholder svg{width:72px;height:72px}.about-visual-label{background:var(--surface);color:var(--paper);border:1px solid #ffffff14;border-radius:10px;align-items:center;gap:8px;padding:10px 16px;font-size:13px;display:flex;position:absolute;bottom:-18px;left:24px}.about-visual-label span{color:var(--fog);font-size:12px}.service-story .about-quick-facts{margin-top:20px}.project-detail-story{max-width:820px;margin:0 auto;padding:80px 24px;display:block}.project-detail-story .about-visual{max-width:820px;margin:0 auto 48px}.project-detail-story .about-frame{aspect-ratio:18/9;border-radius:20px;box-shadow:0 24px 70px #00000040}.project-detail-story .about-story-copy{max-width:820px}.about-story-kicker{text-transform:uppercase;letter-spacing:.08em;color:var(--signal);margin-bottom:14px;font-size:12px;font-weight:700}.about-story-footer{flex-wrap:wrap;align-items:center;gap:20px;margin-top:28px;display:flex}.about-story-footer span{color:var(--fog);font-size:13px}.about-story-footer b{color:var(--pulse)}.about-mv{padding:90px 24px}.about-mv-grid{grid-template-columns:1fr 1fr;gap:24px;max-width:900px;margin:44px auto 0;display:grid}.about-mv-card{background:var(--surface);border:1px solid #ffffff14;border-radius:18px;padding:32px;transition:border-color .25s,transform .25s}.about-mv-card:hover{border-color:rgba(var(--signal-rgb), .4);transform:translateY(-4px)}.about-mv-icon{background:rgba(var(--signal-rgb), .1);width:48px;height:48px;color:var(--signal);border-radius:12px;justify-content:center;align-items:center;margin-bottom:18px;display:flex}.about-mv-icon svg{stroke:currentColor;fill:none;width:22px;height:22px}.about-mv-card h3{color:var(--paper);margin-bottom:10px;font-size:18px;font-weight:700}.about-mv-card p{color:var(--fog);font-size:14px;line-height:1.7}@media (width<=860px){.about-story{grid-template-columns:1fr;min-width:0}.service-story{align-items:start}.about-mv-grid{grid-template-columns:1fr}.about-visual,.about-frame{min-width:0;max-width:100%}.about-hero-copy h1{font-size:30px}}.about-visual{flex-direction:column;display:flex}.about-quick-facts{background:var(--surface);border:1px solid #ffffff14;border-radius:18px;flex-direction:column;flex:1;justify-content:center;gap:18px;margin-top:46px;padding:22px 24px;display:flex}.about-fact{align-items:center;gap:14px;display:flex}.about-fact:not(:last-child){border-bottom:1px solid #ffffff0f;padding-bottom:18px}.about-fact-ic{background:rgba(var(--signal-rgb), .1);width:42px;height:42px;color:var(--signal);border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.about-fact-ic svg{stroke:currentColor;fill:none;width:20px;height:20px}.fact-color-cyan{color:var(--signal);background:rgba(var(--signal-rgb), .1)}.fact-color-orange{color:var(--pulse);background:rgba(var(--pulse-rgb), .1)}.fact-color-green{color:#68d391;background:#68d3911a}.fact-color-purple{color:#b794f4;background:#b794f41a}.fact-color-red{color:#fc8181;background:#fc81811a}.about-fact b{color:var(--paper);margin-bottom:2px;font-size:18px;font-weight:700;display:block}.about-fact span{color:var(--fog);font-size:13px;line-height:1.4}.about-story.single-col{max-width:820px;display:block}.about-hero-meta .meta-accent{color:var(--signal);font-family:monospace;font-weight:700}.about-hero-meta svg{stroke:currentColor;fill:none;width:14px;height:14px;display:block}.article-body{padding:0 0 80px;position:relative}.reading-progress{background:var(--line);z-index:50;height:3px;margin-bottom:40px;position:sticky;top:80px;left:0;right:0}.reading-progress span{background:linear-gradient(90deg, var(--signal), var(--pulse));width:0%;height:100%;transition:width .1s linear;display:block}.article-inner{max-width:820px;margin:0 auto;padding:0 24px}.article-hero-image{aspect-ratio:16/9;border:1px solid var(--line-2);border-radius:20px;width:100%;margin-bottom:36px;overflow:hidden;box-shadow:0 24px 70px #00000040}.article-hero-image img{object-fit:cover;width:100%;height:100%;transition:transform .8s;display:block}.article-hero-image:hover img{transform:scale(1.03)}.article-image-placeholder{background:var(--surface-2);width:100%;height:100%;color:var(--signal);justify-content:center;align-items:center;display:flex}.article-image-placeholder svg{stroke:currentColor;fill:none;width:64px;height:64px}.article-meta-bar{background:var(--surface-2);border:1px solid var(--line);border-radius:16px;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:36px;margin-bottom:44px;padding:20px 24px;display:grid}.article-meta-item{align-items:center;gap:12px;display:flex}.article-meta-ic{background:rgba(var(--signal-rgb), .1);width:38px;height:38px;color:var(--signal);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;transition:transform .25s,background .25s;display:flex}.article-meta-item:hover .article-meta-ic{background:rgba(var(--signal-rgb), .18);transform:translateY(-3px)}.article-meta-ic svg{stroke:currentColor;fill:none;width:17px;height:17px}.article-meta-item b{color:var(--paper);margin-bottom:2px;font-size:13.5px;display:block}.article-meta-item span{color:var(--fog);font-size:11.5px}.article-content{font-size:16.5px;line-height:1.9}.article-content img{border:1px solid var(--line);border-radius:14px;width:100%;margin:28px 0}.article-footer{background:var(--surface-2);border:1px solid rgba(var(--signal-rgb), .18);border-radius:18px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;margin-top:56px;padding:32px;display:flex;position:relative;overflow:hidden}.article-footer:before{content:"";background:radial-gradient(circle, rgba(var(--signal-rgb), .14), transparent 70%);pointer-events:none;border-radius:50%;width:200px;height:200px;position:absolute;top:-70px;right:-70px}.article-footer-copy h3{color:var(--paper);margin-bottom:6px;font-size:18px;font-weight:700}.article-footer-copy p{color:var(--fog);font-size:13.5px}.article-footer-actions{z-index:1;flex-wrap:wrap;gap:12px;display:flex;position:relative}@media (width<=760px){.article-meta-bar{grid-template-columns:1fr;gap:14px}.article-footer{flex-direction:column;align-items:flex-start;padding:24px}.article-content{font-size:15.5px}}.article-share{border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:40px;padding:18px 0 28px;display:flex;position:relative}.article-share-label{text-transform:uppercase;letter-spacing:.08em;color:var(--fog);font-size:12px;font-weight:600}.article-share-links{flex-wrap:wrap;gap:10px;display:flex}.share-btn{background:var(--surface-2);border:1px solid var(--line);width:40px;height:40px;color:var(--fog);cursor:pointer;border-radius:11px;justify-content:center;align-items:center;text-decoration:none;transition:transform .22s,background .22s,color .22s,border-color .22s;display:flex}.share-btn svg{width:16px;height:16px}.share-btn:hover{border-color:rgba(var(--signal-rgb), .4);transform:translateY(-3px)}.share-x:hover{color:#fff;background:#000;border-color:#000}.share-linkedin:hover{color:#fff;background:#0a66c2;border-color:#0a66c2}.share-facebook:hover{color:#fff;background:#1877f2;border-color:#1877f2}.share-whatsapp:hover{color:#fff;background:#25d366;border-color:#25d366}.share-instagram:hover{color:#fff;background:#e1306c;border-color:#e1306c}.share-youtube:hover{color:#fff;background:red;border-color:red}.share-github:hover{color:#fff;background:#24292f;border-color:#24292f}.share-tiktok:hover{color:#fff;background:#111;border-color:#111}.share-telegram:hover{color:#fff;background:#229ed9;border-color:#229ed9}.share-copy:hover{background:rgba(var(--signal-rgb), .14);color:var(--signal)}.share-copied{color:var(--signal);opacity:0;pointer-events:none;font-size:12px;transition:opacity .25s,transform .25s;transform:translateY(4px)}.share-copied.visible{opacity:1;transform:translateY(0)}@media (width<=560px){.article-share{flex-direction:column;align-items:flex-start;gap:12px}}.service-tech-card{background:var(--surface);border:1px solid var(--line-2);border-radius:16px;margin-top:20px;padding:20px}.service-tech-card h4{text-transform:uppercase;letter-spacing:.06em;color:var(--fog);margin-bottom:14px;font-size:12px;font-weight:600}.service-tech-badges{flex-wrap:wrap;gap:8px;display:flex}.tech-badge{color:var(--signal);background:rgba(var(--signal-rgb), .1);border:1px solid rgba(var(--signal-rgb), .25);border-radius:999px;padding:6px 12px;font-size:12px;font-weight:600}.tech-color-orange .tech-badge{color:var(--pulse);background:rgba(var(--pulse-rgb), .1);border-color:rgba(var(--pulse-rgb), .25)}.tech-color-green .tech-badge{color:#68d391;background:#68d3911a;border-color:#68d39140}.tech-color-purple .tech-badge{color:#b794f4;background:#b794f41a;border-color:#b794f440}.service-timeline-card{background:var(--surface);border:1px solid var(--line-2);border-radius:16px;flex-direction:column;gap:16px;margin-top:16px;padding:20px;display:flex}.service-timeline-row{align-items:center;gap:12px;display:flex}.service-timeline-row:not(:last-child){border-bottom:1px solid var(--line);padding-bottom:16px}.service-timeline-ic{background:rgba(var(--pulse-rgb), .1);width:36px;height:36px;color:var(--pulse);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.service-timeline-ic svg{stroke:currentColor;fill:none;width:16px;height:16px}.service-timeline-row b{color:var(--paper);margin-bottom:2px;font-size:13.5px;display:block}.service-timeline-row span{color:var(--fog);font-size:12px}@media (prefers-reduced-motion:no-preference){:where(a,button,.service-card,.p-card,.b-card,.client-chip,.tech-item){-webkit-tap-highlight-color:transparent}.nav-menu>li>a,.nav-cta,.view-all,.btn-primary,.btn-ghost,.filter-btn{transition:color .22s,background-color .22s,border-color .22s,box-shadow .22s,transform .22s cubic-bezier(.2,.8,.2,1)}.nav-menu>li>a:hover{transform:translateY(-1px)}.nav-cta:hover,.btn-primary:hover,.btn-ghost:hover{transform:translateY(-2px)}.service-card,.p-card,.b-card{will-change:transform;box-shadow:0 8px 24px #00000014}.service-card:hover,.p-card:hover,.b-card:hover{box-shadow:0 18px 42px #00000029}.p-card .p-thumb,.b-card .b-thumb,.project-image,.article-hero-image{overflow:hidden}.p-card .p-thumb img,.b-card .b-thumb img,.project-image img,.article-hero-image img{transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .4s}.p-card:hover .p-thumb img,.b-card:hover .b-thumb img,.project-image:hover img,.article-hero-image:hover img{filter:saturate(1.08)contrast(1.02);transform:scale(1.045)}.filter-btn:not(.active):hover{border-color:rgba(var(--signal-rgb), .5);transform:translateY(-2px)}.mega-menu{transform-origin:top;transition:opacity .24s,transform .32s cubic-bezier(.2,.8,.2,1),visibility .24s}.mega-menu.open .mega-link{animation:.34s both mega-item-in}.mega-menu.open .mega-link:nth-child(2){animation-delay:35ms}.mega-menu.open .mega-link:nth-child(3){animation-delay:70ms}.mega-menu.open .mega-link:nth-child(4){animation-delay:.105s}@keyframes mega-item-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
