*{box-sizing:border-box;margin:0;padding:0}:root{--primary:#06f;--primary-dark:#0052cc;--secondary:#7c3aed;--accent:#06b6d4;--text-primary:#0a0a0a;--text-secondary:#737373;--bg-light:#fff;--bg-dark:#0a0a0a;--border-light:#e5e5e5;--success:#10b981}html{scroll-behavior:smooth}body{background:var(--bg-light);color:var(--text-primary);-webkit-font-smoothing:antialiased;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.6;overflow-x:hidden}nav{z-index:1000;-webkit-backdrop-filter:saturate(180%)blur(20px);backdrop-filter:saturate(180%)blur(20px);background:#fffffff2;border-bottom:1px solid #0000000d;position:fixed;top:0;left:0;right:0;box-shadow:0 2px 20px #0000000f}.nav-container{justify-content:space-between;align-items:center;max-width:1400px;height:70px;margin:0 auto;padding:0 40px;display:flex}.logo{color:var(--text-primary);letter-spacing:-1px;font-family:Space Grotesk,sans-serif;font-size:26px;font-weight:700;text-decoration:none}.logo-accent{color:var(--primary)}.nav-links{align-items:center;gap:50px;list-style:none;display:flex}.nav-links a{color:var(--text-primary);opacity:.7;font-size:15px;font-weight:500;text-decoration:none;transition:all .3s;position:relative}.nav-links a.active{opacity:1;color:var(--primary)}.nav-links a:after{content:"";background:var(--primary);width:0;height:2px;transition:all .4s;position:absolute;bottom:-5px;left:50%;transform:translate(-50%)}.nav-links a:hover:after,.nav-links a.active:after{width:100%}.nav-cta{background:var(--text-primary);border-radius:50px;padding:10px 24px;color:#fff!important;opacity:1!important}.menu-toggle{cursor:pointer;flex-direction:column;gap:6px;padding:10px;display:none}.menu-toggle span{background:var(--text-primary);border-radius:2px;width:28px;height:2.5px;transition:all .4s cubic-bezier(.4,0,.2,1)}.page-hero{color:#fff;text-align:center;background:linear-gradient(135deg,#7c3aed 0%,#db2777 100%);padding:160px 40px 100px}.page-hero h1{letter-spacing:-2px;margin-bottom:24px;font-family:Space Grotesk,sans-serif;font-size:clamp(48px,7vw,72px);font-weight:800}.page-hero p{max-width:700px;margin:0 auto;font-size:20px}.portfolio-intro{background:#fff;padding:80px 40px}.container-intro{max-width:1200px;margin:0 auto}.intro-content{text-align:center}.intro-content h2{letter-spacing:-1px;margin-bottom:20px;font-family:Space Grotesk,sans-serif;font-size:clamp(32px,5vw,48px);font-weight:800}.intro-content>p{color:var(--text-secondary);max-width:800px;margin:0 auto 40px;font-size:18px;line-height:1.7}.intro-features{flex-wrap:wrap;justify-content:center;gap:40px;margin-top:40px;display:flex}.intro-feature{background:#fafafa;border-radius:50px;align-items:center;gap:12px;padding:16px 24px;transition:all .3s;display:flex}.intro-feature:hover{background:#0066ff0d;transform:translateY(-2px)}.feature-icon{color:var(--primary);justify-content:center;align-items:center;display:inline-flex}.feature-icon svg{color:inherit}.feature-text{color:var(--text-primary);font-size:14px;font-weight:600}.filter-section{text-align:center;background:#fafafa;padding:40px 40px 60px}.filter-buttons{flex-wrap:wrap;justify-content:center;gap:16px;display:flex}.filter-btn{border:2px solid var(--border-light);cursor:pointer;color:var(--text-primary);background:#fff;border-radius:50px;padding:10px 24px;font-size:14px;font-weight:600;transition:all .3s}.filter-btn:hover,.filter-btn.active{background:var(--primary);color:#fff;border-color:var(--primary)}.portfolio-section{background:#fafafa;padding:80px 40px 120px}.portfolio-grid{grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:40px;max-width:1400px;margin:0 auto;transition:opacity .24s,transform .24s;display:grid}.portfolio-grid.is-filtering{opacity:.52;transform:translateY(8px)}.project-card.project-card-btn{border:1px solid var(--border-light);width:100%;font:inherit;text-align:left;color:inherit;appearance:none;background:#fff;margin:0;padding:0;display:block}.project-card{border:1px solid var(--border-light);cursor:pointer;background:#fff;border-radius:20px;transition:all .5s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.project-card:hover{border-color:var(--primary);transform:translateY(-12px);box-shadow:0 24px 60px #0000001f}.project-image{background:linear-gradient(135deg, var(--primary), var(--accent));color:#fff;justify-content:center;align-items:center;width:100%;height:300px;font-size:80px;display:flex;position:relative;overflow:hidden}.project-image img{object-fit:contain;z-index:1;transition:opacity .4s,transform .45s;position:relative}.project-card:hover .project-image img{opacity:.3;transform:scale(1.02)}.project-image-loading{isolation:isolate}.project-image-hidden{opacity:0}.project-image-skeleton{z-index:2;background:linear-gradient(90deg,#ffffff29,#ffffff70,#ffffff29) 0 0/220% 100%;border-radius:14px;animation:1.2s linear infinite shimmer;position:absolute;inset:20px}.project-card:nth-child(2) .project-image{background:linear-gradient(135deg, var(--secondary), #db2777)}.project-card:nth-child(3) .project-image{background:linear-gradient(135deg,#f59e0b,#ef4444)}.project-card:nth-child(4) .project-image{background:linear-gradient(135deg,#10b981,#06b6d4)}.project-card:nth-child(5) .project-image{background:linear-gradient(135deg,#8b5cf6,#ec4899)}.project-card:nth-child(6) .project-image{background:linear-gradient(135deg,#6366f1,#8b5cf6)}.project-overlay{opacity:0;color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10;cursor:pointer;background:#000000b3;justify-content:center;align-items:center;font-size:18px;font-weight:700;transition:opacity .4s;display:flex;position:absolute;inset:0}.project-card:hover .project-overlay{opacity:1}.project-overlay-text{text-align:center;z-index:11;padding:20px;position:relative}.project-overlay-text-with-icon{justify-content:center;align-items:center;gap:8px;display:inline-flex}.project-content{padding:32px}.project-category{color:var(--primary);letter-spacing:1px;text-transform:uppercase;margin-bottom:12px;font-size:13px;font-weight:700}.project-content h3{letter-spacing:-.5px;margin-bottom:12px;font-family:Space Grotesk,sans-serif;font-size:24px;font-weight:700}.project-content p{color:var(--text-secondary);margin-bottom:20px;font-size:15px;line-height:1.7}.project-metrics{border-top:1px solid var(--border-light);border-bottom:1px solid var(--border-light);gap:20px;margin:20px 0;padding:20px 0;display:flex}.metric{flex-direction:column;align-items:flex-start;display:flex}.metric-value{color:var(--primary);font-family:Space Grotesk,sans-serif;font-size:24px;font-weight:800;line-height:1.2}.metric-label{color:var(--text-secondary);margin-top:4px;font-size:12px;font-weight:500}.project-client{border-top:1px solid var(--border-light);align-items:center;gap:8px;margin-top:20px;padding-top:16px;display:flex}.client-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:12px;font-weight:600}.client-name{color:var(--text-primary);font-size:14px;font-weight:600}.project-tags{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.tag{color:var(--primary);background:#0066ff1a;border-radius:12px;padding:6px 12px;font-size:12px;font-weight:600}.view-details-btn{color:var(--primary);cursor:pointer;background:#fff;border:none;border-radius:50px;padding:12px 24px;font-size:14px;font-weight:700;transition:all .3s;box-shadow:0 4px 20px #0003}.view-details-btn:hover{background:var(--primary);color:#fff;transform:translateY(-2px);box-shadow:0 8px 30px #0000004d}.project-modal{z-index:2000;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;pointer-events:none;background:#000000d9;justify-content:center;align-items:center;width:100%;height:100%;padding:40px 20px;transition:opacity .24s;display:flex;position:fixed;top:0;left:0;overflow-y:auto}.project-modal.active{opacity:1;pointer-events:auto}.modal-content{background:#fff;border-radius:24px;width:100%;max-width:900px;max-height:90vh;margin:auto;padding:60px;animation:.35s cubic-bezier(.22,1,.36,1) slideUp;position:relative;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.modal-close{color:var(--text-secondary);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:32px;font-weight:300;transition:all .3s;display:flex;position:absolute;top:24px;right:24px}.modal-close:hover{background:var(--border-light);color:var(--text-primary);transform:rotate(90deg)}.case-study-header{margin-bottom:40px}.case-study-header .project-category{color:var(--primary);letter-spacing:1px;text-transform:uppercase;margin-bottom:12px;font-size:13px;font-weight:700}.case-study-header h2{letter-spacing:-1px;margin-bottom:16px;font-family:Space Grotesk,sans-serif;font-size:42px;font-weight:800}.case-study-header .client-info{border-top:1px solid var(--border-light);gap:24px;margin-top:20px;padding-top:20px;display:flex}.case-study-header .client-info-item{flex-direction:column;display:flex}.case-study-header .client-info-label{color:var(--text-secondary);text-transform:uppercase;margin-bottom:4px;font-size:12px;font-weight:600}.case-study-header .client-info-value{color:var(--text-primary);font-size:16px;font-weight:700}.case-study-content{line-height:1.8}.case-study-content h3{letter-spacing:-.5px;margin:32px 0 16px;font-family:Space Grotesk,sans-serif;font-size:28px;font-weight:700}.case-study-content p{color:var(--text-secondary);margin-bottom:20px;font-size:16px}.case-study-content p strong{color:var(--text-primary);font-weight:700}.case-study-metrics{background:linear-gradient(135deg,#0066ff0d,#7c3aed0d);border-radius:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:24px;margin:40px 0;padding:40px;display:grid}.case-study-metric{text-align:center}.case-study-metric-value{color:var(--primary);margin-bottom:8px;font-family:Space Grotesk,sans-serif;font-size:48px;font-weight:800}.case-study-metric-label{color:var(--text-secondary);font-size:14px;font-weight:600}.case-study-challenge,.case-study-solution,.case-study-results{margin:32px 0}.case-study-challenge h3,.case-study-solution h3,.case-study-results h3{color:var(--primary)}.case-study-tech-stack{margin:32px 0}.case-study-tech-stack h3{margin-bottom:20px}.tech-list{flex-wrap:wrap;gap:12px;display:flex}.tech-item{background:var(--primary);color:#fff;border-radius:50px;padding:10px 20px;font-size:14px;font-weight:600}.case-study-testimonial{border-left:4px solid var(--primary);background:#fafafa;border-radius:20px;margin:40px 0;padding:32px}.case-study-testimonial-text{color:var(--text-primary);margin-bottom:20px;font-size:18px;font-style:italic;line-height:1.7}.case-study-testimonial-author{color:var(--text-primary);font-weight:700}.case-study-testimonial-role{color:var(--text-secondary);margin-top:4px;font-size:14px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-20% 0}}.stats-section{background:var(--bg-dark);color:#fff;padding:100px 40px}.stats-grid{text-align:center;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:60px;max-width:1200px;margin:0 auto;display:grid}.stat-item h3{background:linear-gradient(135deg,#fff,#ffffffb3);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:12px;font-family:Space Grotesk,sans-serif;font-size:56px;font-weight:800}.stat-item p{color:#ffffffb3;font-size:16px}.testimonial-section{background:#fff;padding:120px 40px}.testimonial-content{text-align:center;max-width:900px;margin:0 auto}.quote-icon{color:var(--primary);opacity:.3;margin-bottom:24px;font-size:64px}.testimonial-text{color:var(--text-primary);margin-bottom:40px;font-size:28px;font-weight:500;line-height:1.6}.testimonial-author{margin-bottom:8px;font-size:18px;font-weight:700}.testimonial-role{color:var(--text-secondary);font-size:16px}.cta-section{background:linear-gradient(135deg, var(--primary) 0%, var(--accent) 100%);color:#fff;text-align:center;padding:120px 40px}.cta-content h2{letter-spacing:-2px;margin-bottom:28px;font-family:Space Grotesk,sans-serif;font-size:clamp(40px,6vw,64px);font-weight:800}.cta-content p{margin-bottom:40px;font-size:22px}.btn{color:var(--primary);background:#fff;border-radius:50px;padding:16px 40px;font-weight:700;text-decoration:none;transition:all .4s;display:inline-block}.btn:hover{transform:translateY(-3px);box-shadow:0 15px 40px #0000004d}footer{color:#ffffffb3;background:#0a0a0a;padding:80px 40px 40px}.footer-content{grid-template-columns:2fr 1fr 1fr 1fr;gap:60px;max-width:1400px;margin:0 auto 60px;display:grid}.footer-brand img{margin:0 auto 12px;display:block}.footer-brand h3{color:#fff;text-align:center;margin-bottom:20px;font-family:Space Grotesk,sans-serif;font-size:28px;font-weight:700}.footer-section h4{color:#fff;margin-bottom:20px;font-size:16px;font-weight:700}.footer-section ul{list-style:none}.footer-section ul li{margin-bottom:12px}.footer-section a{color:#fff9;font-size:14px;text-decoration:none;transition:all .3s}.footer-section a:hover{color:#fff}.footer-bottom{text-align:center;border-top:1px solid #ffffff1a;max-width:1400px;margin:0 auto;padding-top:40px;font-size:14px}.whatsapp-float{z-index:1100;opacity:0;pointer-events:none;align-items:center;gap:12px;transition:opacity .4s;display:flex;position:fixed;bottom:24px;right:24px}.whatsapp-float.visible{opacity:1;pointer-events:auto}.whatsapp-prompt{color:#0a0a0a;white-space:nowrap;opacity:0;background:#25d366;border-radius:999px;padding:10px 14px;font-weight:700;transition:opacity .4s,transform .4s;transform:translateY(8px)scale(.98);box-shadow:0 10px 30px #25d36666}.whatsapp-prompt.show{opacity:1;transform:translateY(0)scale(1)}.whatsapp-prompt .char{opacity:0;display:inline-block;transform:translateY(6px)scale(.9)}.whatsapp-prompt.show .char{animation:.6s forwards charPop;animation-delay:calc(var(--i) * 60ms)}.whatsapp-btn{color:#fff;background:#25d366;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;text-decoration:none;transition:transform .2s,box-shadow .2s;display:flex;box-shadow:0 12px 30px #25d36680}.whatsapp-btn:hover{transform:translateY(-2px)scale(1.03);box-shadow:0 16px 40px #25d36699}@keyframes charPop{0%{opacity:0;transform:translateY(6px)scale(.9)}60%{opacity:1;transform:translateY(0)scale(1.06)}to{opacity:1;transform:translateY(0)scale(1)}}.social-links{gap:16px;margin-top:16px;display:flex}.social-links a{color:#ffffffb3;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-size:18px;text-decoration:none;transition:all .4s cubic-bezier(.4,0,.2,1);display:flex}.social-links a:hover{background:var(--primary);color:#fff;border-color:var(--primary);transform:translateY(-4px);box-shadow:0 10px 30px #06f6}@media (max-width:768px){.nav-links{text-align:center;z-index:999;background:#fff;flex-direction:column;gap:0;width:100%;padding:40px 0;transition:all .4s cubic-bezier(.4,0,.2,1);position:fixed;top:70px;left:-100%;box-shadow:0 10px 30px #0000001a}.nav-links li{width:100%;padding:20px 0}.nav-links.active{left:0}.menu-toggle{display:flex}.menu-toggle.active span:first-child{transform:rotate(45deg)translate(8px,8px)}.menu-toggle.active span:nth-child(2){opacity:0}.menu-toggle.active span:nth-child(3){transform:rotate(-45deg)translate(8px,-8px)}.portfolio-intro{padding:60px 20px}.intro-features{gap:16px}.intro-feature{padding:12px 20px;font-size:13px}.portfolio-grid{grid-template-columns:1fr;gap:32px}.project-metrics{flex-direction:column;gap:16px}.metric{flex-direction:row;justify-content:space-between;align-items:center}.modal-content{margin:20px;padding:40px 24px}.case-study-header h2{font-size:32px}.case-study-metrics{grid-template-columns:1fr;padding:24px}.case-study-metric-value{font-size:36px}.client-info{flex-direction:column;gap:16px}.footer-content{grid-template-columns:1fr}}@media (max-width:480px){.project-metrics{gap:12px}.metric-value{font-size:20px}.modal-content{padding:32px 20px}.case-study-header h2{font-size:28px}.tech-list{gap:8px}.tech-item{padding:8px 16px;font-size:12px}}.fade-in{opacity:0;transition:all .8s;transform:translateY(40px)}.fade-in.visible{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){.portfolio-grid,.project-card,.project-image img,.project-modal,.modal-content,.project-image-skeleton{transition:none!important;animation:none!important;transform:none!important}}
