@font-face{font-family:'Inter';src:url('/assets/front/fonts/inter-400.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:'Inter';src:url('/assets/front/fonts/inter-500.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:'Inter';src:url('/assets/front/fonts/inter-600.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:'Inter';src:url('/assets/front/fonts/inter-700.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:'Inter';src:url('/assets/front/fonts/inter-800.woff2') format('woff2');font-weight:800;font-style:normal;font-display:swap}@font-face{font-family:'Inter';src:url('/assets/front/fonts/inter-900.woff2') format('woff2');font-weight:900;font-style:normal;font-display:swap}:root{--primary:#2e5693;--primary-dark:#1f3d6e;--primary-light:#d4e5f5;--primary-xlight:#ebf2fa;--secondary:#1a2e50;--accent:#5790cc;--svc-dev:#f59e0b;--svc-dev-bg:#fffbeb;--svc-dev-light:#fef3c7;--svc-design:#dc2626;--svc-design-bg:#fef2f2;--svc-design-light:#fee2e2;--svc-seo:#0d9488;--svc-seo-bg:#f0fdfa;--svc-seo-light:#ccfbf1;--svc-maint:#7c3aed;--svc-maint-bg:#f5f3ff;--svc-maint-light:#ede9fe;--text:#374151;--text-light:#6b7280;--heading:#111827;--bg-light:#f7fafd;--bg-white:#fff;--border:#e5e7eb;--border-light:#f3f4f6;--shadow-sm:0 1px 3px rgba(0,0,0,.08);--shadow:0 4px 16px rgba(46,86,147,.10);--shadow-md:0 8px 32px rgba(46,86,147,.13);--shadow-lg:0 20px 60px rgba(46,86,147,.16);--shadow-xl:0 30px 80px rgba(46,86,147,.20);--radius-sm:8px;--radius:8px;--radius-lg:8px;--radius-xl:8px;--t:all .3s cubic-bezier(.4,0,.2,1);--t-slow:all .5s cubic-bezier(.4,0,.2,1);--nav-height:106px}*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--text);background:var(--bg-white);line-height:1.7;-webkit-font-smoothing:antialiased;overflow-x:hidden}h1,h2,h3,h4,h5,h6{color:var(--heading);font-weight:700;line-height:1.25;letter-spacing:-.02em}a{color:var(--primary);text-decoration:none;transition:var(--t)}a:hover{color:var(--primary-dark)}img{max-width:100%;height:auto}::selection{background:var(--primary-light);color:var(--primary-dark)}.skip-link{position:absolute;top:-100%;left:0;padding:12px 24px;background:var(--primary);color:#fff;font-weight:700;font-size:14px;z-index:9999;border-radius:0 0 var(--radius-sm) 0;text-decoration:none;transition:top .2s}.skip-link:focus{top:0}:focus-visible{outline:3px solid var(--primary);outline-offset:3px}:focus:not(:focus-visible){outline:0}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:var(--bg-light)}::-webkit-scrollbar-thumb{background:var(--primary);border-radius:8px}#mainNav{height:auto;padding-top:18px;padding-bottom:18px;background:rgba(255,255,255,.96);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid transparent;transition:var(--t);z-index:1050}#mainNav.scrolled{box-shadow:0 2px 24px rgba(46,86,147,.10);border-bottom-color:var(--border-light)}.nav-logo{height:70px;width:auto;object-fit:contain;display:block}.navbar-nav .nav-link{color:var(--text) !important;font-weight:500;font-size:14px;padding:8px 14px !important;border-radius:var(--radius-sm);transition:var(--t);position:relative}.navbar-nav .nav-link::after{content:'';position:absolute;bottom:3px;left:50%;right:50%;height:2px;background:var(--primary);border-radius:8px;transition:var(--t)}.navbar-nav .nav-link:hover::after,.navbar-nav .nav-link.active::after{left:14px;right:14px}.navbar-nav .nav-link:hover,.navbar-nav .nav-link.active{color:var(--primary) !important}.btn-nav{font-size:14px !important;padding:9px 20px !important;border-radius:var(--radius-sm) !important;font-weight:600 !important;display:inline-flex !important;align-items:center !important;gap:6px !important}.toggler-icon{display:flex;flex-direction:column;gap:5px}.toggler-icon span{display:block;width:22px;height:2px;background:var(--heading);border-radius:8px;transition:var(--t)}.btn{font-weight:600;border-radius:var(--radius-sm);transition:var(--t);padding:12px 28px;font-size:15px;letter-spacing:-.01em;border:2px solid transparent;display:inline-flex;align-items:center;gap:6px}.btn:focus-visible{outline:3px solid var(--primary);outline-offset:3px}.btn-primary{background:var(--primary);border-color:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-dark);border-color:var(--primary-dark);color:#fff;transform:translateY(-2px);box-shadow:0 8px 28px rgba(46,86,147,.35)}.btn-outline-primary{background:transparent;border-color:var(--primary);color:var(--primary)}.btn-outline-primary:hover{background:var(--primary);color:#fff;transform:translateY(-2px);box-shadow:0 8px 28px rgba(46,86,147,.25)}.btn-white{background:#fff;border-color:#fff;color:var(--primary)}.btn-white:hover{background:var(--primary-xlight);color:var(--primary-dark);transform:translateY(-2px)}.btn-outline-white{background:transparent;border-color:rgba(255,255,255,.5);color:#fff}.btn-outline-white:hover{background:rgba(255,255,255,.1);border-color:#fff;color:#fff}.btn-lg{padding:14px 36px;font-size:16px}.section{padding:96px 0}.section-sm{padding:56px 0}.section-bg{background:var(--bg-light)}.section-badge{display:inline-flex;align-items:center;gap:6px;background:var(--primary-light);color:var(--primary);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:6px 16px;border-radius:8px;margin-bottom:16px;border:1px solid rgba(46,86,147,.15)}.section-title{font-size:clamp(1.75rem,3vw,2.5rem);font-weight:800;color:var(--secondary);margin-bottom:16px;letter-spacing:-.025em}.section-title span{color:var(--primary)}.section-subtitle{color:var(--text-light);font-size:17px;max-width:580px;line-height:1.7}.hero{min-height:100vh;padding-top:calc(var(--nav-height) + 60px);padding-bottom:80px;background:linear-gradient(135deg,#ebf2fa 0,#fff 55%,#f0f5fc 100%);position:relative;overflow:hidden;display:flex;align-items:center}.hero::before{content:'';position:absolute;top:-200px;right:-200px;width:600px;height:600px;background:radial-gradient(circle,rgba(46,86,147,.07) 0,transparent 70%);border-radius:50%;pointer-events:none}.hero-blob{position:absolute;top:12%;right:3%;width:320px;height:320px;background:linear-gradient(135deg,rgba(46,86,147,.06),rgba(87,144,204,.04));border-radius:60% 40% 70% 30% / 50% 60% 40% 70%;animation:morphBlob 9s ease-in-out infinite;pointer-events:none}@keyframes morphBlob{0%{border-radius:60% 40% 70% 30% / 50% 60% 40% 70%}33%{border-radius:40% 60% 30% 70% / 60% 30% 70% 40%}66%{border-radius:70% 30% 60% 40% / 30% 70% 30% 60%}100%{border-radius:60% 40% 70% 30% / 50% 60% 40% 70%}}.leaf-deco{position:absolute;pointer-events:none;opacity:.10}.leaf-deco svg{fill:var(--primary)}.hero-badge{display:inline-flex;align-items:center;gap:8px;background:var(--primary-light);color:var(--primary);font-size:13px;font-weight:600;padding:7px 18px;border-radius:50px;margin-bottom:24px;border:1px solid rgba(46,86,147,.15)}.hero-badge .badge-dot{width:8px;height:8px;background:var(--primary);border-radius:50%;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.5);opacity:.6}}.hero-title{font-size:clamp(2.2rem,4.5vw,3.5rem);font-weight:900;color:var(--secondary);line-height:1.15;margin-bottom:20px;letter-spacing:-.03em}.hero-title .highlight{color:var(--primary);position:relative}.hero-title .highlight::after{content:'';position:absolute;bottom:2px;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--primary),var(--accent));border-radius:8px;opacity:.35}.hero-subtitle{color:var(--text-light);font-size:17px;max-width:520px;margin-bottom:36px;line-height:1.7}.hero-trust{display:flex;align-items:center;gap:24px;margin-top:40px;flex-wrap:wrap}.hero-trust-item{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-light);font-weight:500}.hero-trust-item i{color:var(--primary);font-size:16px}.hero-trust-sep{width:1px;height:20px;background:var(--border)}.hero-visual{position:relative;display:flex;align-items:center;justify-content:center}.device-laptop{width:100%;max-width:460px;background:var(--secondary);border-radius:8px 8px 0 0;padding:12px 12px 0;box-shadow:var(--shadow-xl);position:relative;z-index:2;animation:floatUp 6s ease-in-out infinite}@keyframes floatUp{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}.device-laptop-screen{background:#fff;border-radius:8px 8px 0 0;overflow:hidden;aspect-ratio:16/10}.mock-ui-bar{background:var(--primary);padding:8px 12px;display:flex;align-items:center;gap:8px}.mock-ui-dots{display:flex;gap:4px}.mock-ui-dots span{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.4)}.mock-ui-logo-block{width:60px;height:8px;background:rgba(255,255,255,.6);border-radius:8px;margin-left:8px}.mock-ui-nav-links{display:flex;gap:6px;margin-left:auto}.mock-ui-nav-links span{width:30px;height:6px;background:rgba(255,255,255,.4);border-radius:8px}.mock-ui-body{padding:14px;background:#f7fafd;display:flex;gap:10px;flex:1}.mock-ui-sidebar{width:56px;display:flex;flex-direction:column;gap:6px}.mock-ui-sidebar span{height:30px;background:var(--border);border-radius:8px}.mock-ui-sidebar span:first-child{background:var(--primary-light)}.mock-ui-main{flex:1;display:flex;flex-direction:column;gap:8px}.mock-ui-hero-block{background:linear-gradient(135deg,var(--primary),var(--accent));border-radius:8px;padding:12px;display:flex;align-items:center;justify-content:space-between}.mock-text-lines{display:flex;flex-direction:column;gap:4px}.mock-text-lines span{height:6px;border-radius:8px;background:rgba(255,255,255,.7)}.mock-text-lines span:first-child{width:80px}.mock-text-lines span:nth-child(2){width:55px}.mock-text-btn{width:48px;height:20px;background:rgba(255,255,255,.25);border-radius:8px}.mock-circle{width:44px;height:44px;background:rgba(255,255,255,.15);border-radius:50%}.mock-cards{display:flex;gap:7px}.mock-card-sm{flex:1;background:#fff;border-radius:8px;padding:8px;box-shadow:var(--shadow-sm)}.mock-card-sm-bar{height:5px;border-radius:8px;background:var(--primary-light);margin-bottom:6px}.mock-card-sm-bars{display:flex;flex-direction:column;gap:3px}.mock-card-sm-bars span{height:4px;border-radius:8px;background:var(--border)}.mock-card-sm-bars span:first-child{width:70%}.mock-chart{background:#fff;border-radius:8px;padding:8px;box-shadow:var(--shadow-sm)}.mock-chart-bars{display:flex;align-items:flex-end;gap:4px;height:40px}.mock-chart-bars span{flex:1;background:var(--primary-light);border-radius:8px 8px 0 0}.mock-chart-bars span:nth-child(2){background:var(--primary);height:70%}.mock-chart-bars span:nth-child(4){background:var(--primary);height:90%}.mock-chart-bars span:nth-child(1){height:40%}.mock-chart-bars span:nth-child(3){height:50%}.mock-chart-bars span:nth-child(5){height:60%}.device-laptop-base{width:100%;height:10px;background:#1a2740;border-radius:0 0 8px 8px}.device-laptop-stand{width:38%;height:6px;background:#0e1a2e;border-radius:0 0 8px 8px;margin:0 auto}.float-card{position:absolute;background:#fff;border-radius:var(--radius);padding:11px 16px;box-shadow:var(--shadow-md);display:flex;align-items:center;gap:10px;font-size:13px;font-weight:600;color:var(--heading);white-space:nowrap;border:1px solid var(--border-light);z-index:5}.float-card-1{top:8%;left:-16px;animation:fc1 5s ease-in-out infinite}.float-card-2{bottom:18%;right:-16px;animation:fc2 5.5s ease-in-out infinite 1s}.float-card-3{bottom:3%;left:8%;animation:fc1 6s ease-in-out infinite .5s}@keyframes fc1{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-8px) rotate(-2deg)}}@keyframes fc2{0%,100%{transform:translateY(0) rotate(2deg)}50%{transform:translateY(-8px) rotate(2deg)}}.service-card{background:#fff;border-radius:var(--radius-lg);padding:36px 30px;box-shadow:var(--shadow-sm);transition:var(--t-slow);height:100%;border:1px solid var(--border-light);position:relative;overflow:hidden;display:flex;flex-direction:column}.service-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;transform:scaleX(0);transition:var(--t-slow);transform-origin:left}.service-card.svc-dev::before{background:var(--svc-dev)}.service-card.svc-design::before{background:var(--svc-design)}.service-card.svc-seo::before{background:var(--svc-seo)}.service-card.svc-maint::before{background:var(--svc-maint)}.service-card:hover::before{transform:scaleX(1)}.service-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-md)}.service-icon-wrap{width:64px;height:64px;border-radius:var(--radius);display:flex;align-items:center;justify-content:center;margin-bottom:24px;transition:var(--t)}.service-icon-wrap i{font-size:28px}.service-card.svc-dev .service-icon-wrap{background:var(--svc-dev-bg);color:var(--svc-dev)}.service-card.svc-design .service-icon-wrap{background:var(--svc-design-bg);color:var(--svc-design)}.service-card.svc-seo .service-icon-wrap{background:var(--svc-seo-bg);color:var(--svc-seo)}.service-card.svc-maint .service-icon-wrap{background:var(--svc-maint-bg);color:var(--svc-maint)}.service-card:hover .service-icon-wrap{transform:scale(1.08) rotate(-3deg)}.service-card.svc-dev:hover .service-icon-wrap{background:var(--svc-dev);color:#fff}.service-card.svc-design:hover .service-icon-wrap{background:var(--svc-design);color:#fff}.service-card.svc-seo:hover .service-icon-wrap{background:var(--svc-seo);color:#fff}.service-card.svc-maint:hover .service-icon-wrap{background:var(--svc-maint);color:#fff}.service-card h3{font-size:19px;margin-bottom:10px;color:var(--secondary)}.service-card p{color:var(--text-light);font-size:14px;margin-bottom:20px;line-height:1.7;flex:1}.service-card-link{display:inline-flex;align-items:center;gap:6px;font-weight:600;font-size:13px;margin-top:auto}.service-card.svc-dev .service-card-link{color:var(--svc-dev)}.service-card.svc-design .service-card-link{color:var(--svc-design)}.service-card.svc-seo .service-card-link{color:var(--svc-seo)}.service-card.svc-maint .service-card-link{color:var(--svc-maint)}.service-card-link i{transition:var(--t)}.service-card:hover .service-card-link i{transform:translateX(4px)}.project-card{border-radius:var(--radius-lg);overflow:hidden;position:relative;cursor:pointer;height:340px;display:flex;flex-direction:column;justify-content:flex-end}.project-card[data-category="e-commerce"]{background:linear-gradient(135deg,#92400e 0,#d97706 100%)}.project-card[data-category="vitrine"]{background:linear-gradient(135deg,#3b0764 0,#7e22ce 100%)}.project-card[data-category="application"]{background:linear-gradient(135deg,#134e4a 0,#0d9488 100%)}.project-card[data-category="seo"]{background:linear-gradient(135deg,#14532d 0,#16a34a 100%)}.project-card[data-category="design"]{background:linear-gradient(135deg,#7f1d1d 0,#dc2626 100%)}.project-card[data-category="immobilier"]{background:linear-gradient(135deg,#7c2d12 0,#ea580c 100%)}.project-card::before{content:'';position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.04) 1px,transparent 1px);background-size:20px 20px}.project-card-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(10,20,40,.92) 0,rgba(10,20,40,.35) 55%,transparent 100%);transition:var(--t-slow)}.project-card:hover .project-card-overlay{background:linear-gradient(to top,rgba(10,20,40,.97) 0,rgba(10,20,40,.6) 60%,rgba(10,20,40,.1) 100%)}.project-card-ui{position:absolute;top:20px;right:20px;width:100px;opacity:.35;transition:var(--t)}.project-card:hover .project-card-ui{opacity:.55;transform:scale(1.05)}.project-ui-bar{height:7px;border-radius:8px;background:rgba(255,255,255,.5);margin-bottom:5px}.project-ui-bar:nth-child(2){width:72%}.project-ui-bar:nth-child(3){width:52%}.project-ui-blocks{display:flex;gap:6px;margin-top:8px}.project-ui-block{height:36px;flex:1;background:rgba(255,255,255,.18);border-radius:8px}.project-card-content{position:relative;z-index:2;padding:24px}.project-cat-badge{display:inline-block;background:rgba(255,255,255,.15);backdrop-filter:blur(8px);color:rgba(255,255,255,.9);font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:4px 12px;border-radius:50px;margin-bottom:8px;border:1px solid rgba(255,255,255,.2)}.project-card-content h3,.project-card-content .project-card-title{color:#fff;font-size:19px;font-weight:700;margin-bottom:8px}.project-card-content p{color:rgba(255,255,255,.75);font-size:13px;margin-bottom:12px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.project-card-link-btn{display:inline-flex;align-items:center;gap:6px;color:#fff;font-size:13px;font-weight:600;opacity:0;transform:translateY(8px);transition:var(--t)}.project-card:hover .project-card-link-btn{opacity:1;transform:translateY(0)}.project-card-link-btn i{transition:var(--t)}.project-card:hover .project-card-link-btn i{transform:translateX(4px)}.stats-section{background:var(--secondary);padding:60px 0;position:relative;overflow:hidden}.stats-section::before{content:'';position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.03) 1px,transparent 1px);background-size:24px 24px}.stat-item{text-align:center;position:relative;z-index:1}.stat-number{font-size:3rem;font-weight:900;color:#fff;letter-spacing:-.03em;line-height:1;margin-bottom:6px}.stat-label{color:rgba(255,255,255,.6);font-size:14px;font-weight:500}.stat-icon{width:48px;height:48px;background:rgba(255,255,255,.08);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;margin:0 auto 16px}.stat-icon i{color:var(--accent);font-size:22px}.cta-section{background:linear-gradient(135deg,#0a1e3c 0,#1a2e50 50%,var(--primary) 100%);padding:96px 0;position:relative;overflow:hidden}.cta-section::before{content:'';position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.04) 1px,transparent 1px);background-size:30px 30px}.cta-wave-top{position:absolute;top:-1px;left:0;right:0;overflow:hidden;line-height:0}.cta-wave-top svg{width:100%;height:60px}.cta-title{color:#fff;font-size:clamp(1.8rem,3.5vw,2.8rem);font-weight:800;margin-bottom:16px;letter-spacing:-.02em}.cta-title span{color:var(--accent)}.cta-subtitle{color:rgba(255,255,255,.7);font-size:17px;margin-bottom:36px;max-width:500px}.cta-icon-wrap{position:relative;display:inline-flex;align-items:center;justify-content:center}.cta-icon-circles{position:absolute;width:200px;height:200px;border-radius:50%;border:1px solid rgba(255,255,255,.1);animation:expandCircle 3s ease-in-out infinite}.cta-icon-circles:nth-child(2){width:280px;height:280px;animation-delay:.5s}.cta-icon-circles:nth-child(3){width:360px;height:360px;animation-delay:1s}@keyframes expandCircle{0%{transform:scale(.95);opacity:.5}50%{transform:scale(1.05);opacity:.1}100%{transform:scale(.95);opacity:.5}}.cta-icon-main{width:100px;height:100px;background:rgba(255,255,255,.12);border-radius:50%;display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.2);position:relative;z-index:1}.cta-icon-main i{font-size:48px;color:#fff}.footer{background:#0a1e3c;position:relative}.footer-wave{line-height:0;margin-top:-1px}.footer-wave svg{display:block;width:100%}.footer-body{padding:80px 0 40px}.footer-logo{height:100px;width:auto;object-fit:contain;filter:brightness(0) invert(1);opacity:.9}.footer-logo:hover{opacity:1}.footer-desc{color:rgba(255,255,255,.82);font-size:14px;line-height:1.8;max-width:300px}.footer-heading{color:#fff;font-weight:700;font-size:12px;letter-spacing:.1em;text-transform:uppercase;margin-bottom:20px}.footer-links{display:flex;flex-direction:column;gap:8px}.footer-links a{color:rgba(255,255,255,.82);font-size:14px;transition:var(--t)}.footer-links a:hover{color:#fff;padding-left:4px}.footer-contact-list{display:flex;flex-direction:column;gap:12px}.footer-contact-list li{display:flex;align-items:flex-start;gap:10px;font-size:14px}.footer-contact-list i{color:var(--accent);font-size:15px;margin-top:2px;flex-shrink:0}.footer-contact-list a,.footer-contact-list span{color:rgba(255,255,255,.85)}.footer-contact-list a:hover{color:#fff}.social-btn{width:40px;height:40px;background:rgba(255,255,255,.08);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.9);font-size:18px;transition:var(--t);border:1px solid rgba(255,255,255,.2)}.social-btn:hover{background:var(--primary);color:#fff;border-color:var(--primary);transform:translateY(-2px)}.footer-bottom{padding:20px 0;border-top:1px solid rgba(255,255,255,.08)}.footer-bottom p{color:rgba(255,255,255,.72);margin-bottom:0}.footer-bottom a{color:rgba(255,255,255,.72)}.footer-bottom a:hover{color:#fff}.footer-nl-field{display:flex;gap:0;margin-bottom:10px}.footer-nl-input{flex:1;padding:10px 16px;border-radius:8px 0 0 8px;border:1.5px solid rgba(255,255,255,.2);border-right:0;background:rgba(255,255,255,.08);color:#fff;font-size:13px;outline:0;transition:border-color .2s,background .2s;min-width:0}.footer-nl-input::placeholder{color:rgba(255,255,255,.4)}.footer-nl-input:focus{border-color:var(--accent);background:rgba(255,255,255,.12)}.footer-nl-btn{padding:10px 18px;border-radius:0 8px 8px 0;border:1.5px solid var(--accent);background:var(--accent);color:#fff;font-size:15px;cursor:pointer;transition:background .2s;flex-shrink:0}.footer-nl-btn:hover{background:#5790cc;border-color:#5790cc}.footer-nl-legal{color:rgba(255,255,255,.65);font-size:11px;margin:0;display:flex;align-items:center;justify-content:space-between;gap:8px}.footer-nl-rss{color:#f97316 !important;font-size:11px;white-space:nowrap}.footer-nl-rss:hover{color:#fb923c !important}.footer-nl-msg{margin-top:8px;padding:8px 12px;border-radius:8px;font-size:13px}.footer-nl-msg.success{background:rgba(16,185,129,.15);color:#6ee7b7}.footer-nl-msg.error{background:rgba(239,68,68,.15);color:#fca5a5}.page-hero{padding-top:calc(var(--nav-height) + 80px);padding-bottom:80px;background:linear-gradient(135deg,#ebf2fa 0,#fff 55%,#f0f5fc 100%);position:relative;overflow:hidden}.page-hero::before{content:'';position:absolute;top:-150px;right:-100px;width:500px;height:500px;background:radial-gradient(circle,rgba(46,86,147,.07) 0,transparent 70%);border-radius:50%}.page-hero-title{font-size:clamp(2rem,4vw,3rem);font-weight:900;color:var(--secondary);margin-bottom:16px;letter-spacing:-.025em}.page-hero-title span{color:var(--primary)}.page-hero-sub{color:var(--text-light);font-size:17px;max-width:600px;line-height:1.7}.service-detail{padding:80px 0}.service-detail:nth-child(even){background:var(--bg-light)}.service-detail-number{font-size:80px;font-weight:900;line-height:1;letter-spacing:-.04em;margin-bottom:-18px}.service-detail.svc-dev .service-detail-number{color:rgba(245,158,11,.35)}.service-detail.svc-design .service-detail-number{color:rgba(220,38,38,.35)}.service-detail.svc-seo .service-detail-number{color:rgba(13,148,136,.3)}.service-detail.svc-maint .service-detail-number{color:rgba(124,58,237,.3)}.service-detail-icon{width:72px;height:72px;border-radius:var(--radius);display:flex;align-items:center;justify-content:center;margin-bottom:24px}.service-detail.svc-dev .service-detail-icon{background:var(--svc-dev);box-shadow:0 8px 20px rgba(245,158,11,.3)}.service-detail.svc-design .service-detail-icon{background:var(--svc-design);box-shadow:0 8px 20px rgba(192,38,211,.3)}.service-detail.svc-seo .service-detail-icon{background:var(--svc-seo);box-shadow:0 8px 20px rgba(13,148,136,.3)}.service-detail.svc-maint .service-detail-icon{background:var(--svc-maint);box-shadow:0 8px 20px rgba(124,58,237,.3)}.service-detail-icon i{font-size:32px;color:#fff}.service-detail h2{font-size:clamp(1.6rem,2.5vw,2rem);color:var(--secondary);margin-bottom:16px}.service-features{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}.service-features li{display:flex;align-items:flex-start;gap:10px;font-size:15px;color:var(--text)}.service-features li i{font-size:18px;flex-shrink:0;margin-top:1px}.service-detail.svc-dev .service-features i{color:var(--svc-dev)}.service-detail.svc-design .service-features i{color:var(--svc-design)}.service-detail.svc-seo .service-features i{color:var(--svc-seo)}.service-detail.svc-maint .service-features i{color:var(--svc-maint)}.service-visual{border-radius:var(--radius-xl);padding:40px;height:100%;min-height:320px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.service-visual::before{content:'';position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.08) 1px,transparent 1px);background-size:20px 20px}.svc-dev-visual{background:linear-gradient(135deg,#fffbeb,#fef3c7)}.svc-design-visual{background:linear-gradient(135deg,#fef2f2,#fee2e2)}.svc-seo-visual{background:linear-gradient(135deg,#f0fdfa,#ccfbf1)}.svc-maint-visual{background:linear-gradient(135deg,#f5f3ff,#ede9fe)}.projects-search-wrap{margin-bottom:24px}.projects-search-field{position:relative;max-width:480px}.projects-search-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--text-light);font-size:15px;pointer-events:none}.projects-search-field .form-control{padding-left:44px;padding-right:44px;height:48px;border-radius:8px;border:2px solid var(--border);font-size:14px;color:var(--text);background:#fff;box-shadow:none;transition:border-color .2s,box-shadow .2s}.projects-search-field .form-control:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(46,86,147,.12);outline:0}.projects-search-field .form-control::placeholder{color:var(--text-light)}.projects-search-clear{position:absolute;right:14px;top:50%;transform:translateY(-50%);background:0;border:0;padding:4px;color:var(--text-light);cursor:pointer;display:flex;align-items:center;font-size:13px;transition:color .15s}.projects-search-clear:hover{color:var(--secondary)}.filter-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:48px}.filter-btn{background:#fff;border:2px solid var(--border);color:var(--text);font-size:13px;font-weight:600;padding:8px 20px;border-radius:8px;cursor:pointer;transition:var(--t);letter-spacing:.01em}.filter-btn:hover{border-color:var(--primary);color:var(--primary)}.filter-btn.active{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 4px 14px rgba(46,86,147,.3)}.filter-btn.active span{background:rgba(255,255,255,.25) !important;color:#fff !important}.filter-btn[data-filter="e-commerce"]:not(.active):hover{border-color:#d97706;color:#d97706}.filter-btn[data-filter="vitrine"]:not(.active):hover{border-color:#7e22ce;color:#7e22ce}.filter-btn[data-filter="application"]:not(.active):hover{border-color:#0d9488;color:#0d9488}.filter-btn[data-filter="seo"]:not(.active):hover{border-color:#16a34a;color:#16a34a}.filter-btn[data-filter="design"]:not(.active):hover{border-color:#dc2626;color:#dc2626}.filter-btn[data-filter="immobilier"]:not(.active):hover{border-color:#ea580c;color:#ea580c}.filter-btn[data-filter="all"].active{background:#2e5693;border-color:#2e5693;box-shadow:0 4px 14px rgba(46,86,147,.3)}.filter-btn[data-filter="e-commerce"].active{background:#d97706;border-color:#d97706;box-shadow:0 4px 14px rgba(217,119,6,.3)}.filter-btn[data-filter="vitrine"].active{background:#7e22ce;border-color:#7e22ce;box-shadow:0 4px 14px rgba(126,34,206,.3)}.filter-btn[data-filter="application"].active{background:#0d9488;border-color:#0d9488;box-shadow:0 4px 14px rgba(13,148,136,.3)}.filter-btn[data-filter="seo"].active{background:#16a34a;border-color:#16a34a;box-shadow:0 4px 14px rgba(245,158,11,.3)}.filter-btn[data-filter="design"].active{background:#dc2626;border-color:#dc2626;box-shadow:0 4px 14px rgba(220,38,38,.3)}.filter-btn[data-filter="immobilier"].active{background:#ea580c;border-color:#ea580c;box-shadow:0 4px 14px rgba(245,158,11,.3)}.filter-btn:focus-visible{outline:3px solid var(--primary);outline-offset:3px}.pagination-wrap{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:56px;flex-wrap:wrap}.page-btn{min-width:40px;height:40px;padding:0 10px;border:2px solid var(--border);background:#fff;color:var(--text);font-size:14px;font-weight:600;border-radius:8px;cursor:pointer;transition:var(--t);line-height:1}.page-btn:hover:not(:disabled){border-color:var(--primary);color:var(--primary)}.page-btn.active{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 4px 14px rgba(46,86,147,.3);pointer-events:none}.page-btn:disabled{opacity:.35;cursor:not-allowed}.page-btn:focus-visible{outline:3px solid var(--primary);outline-offset:3px}.real-card{background:#fff;border-radius:var(--radius-sm);overflow:hidden;box-shadow:var(--shadow-sm);border:1px solid var(--border-light);transition:var(--t-slow);cursor:pointer;height:100%;display:flex;flex-direction:column}.real-card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.real-card:focus-visible{outline:3px solid var(--primary);outline-offset:3px}.real-card-thumb{height:200px;position:relative;overflow:hidden;flex-shrink:0}.real-card-thumb-bg{width:100%;height:100%;display:flex;align-items:center;justify-content:center;position:relative}.real-card-thumb-bg::before{content:'';position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.06) 1px,transparent 1px);background-size:16px 16px}.real-card-thumb-ui{position:relative;z-index:1;width:84%;background:rgba(255,255,255,.12);border-radius:8px;overflow:hidden;border:1px solid rgba(255,255,255,.15)}.real-thumb-bar{height:22px;background:rgba(255,255,255,.2);display:flex;align-items:center;padding:0 8px;gap:4px}.real-thumb-bar span{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.4)}.real-thumb-content{padding:10px;display:flex;flex-direction:column;gap:5px}.real-thumb-content div{height:5px;border-radius:8px;background:rgba(255,255,255,.3)}.real-thumb-content div:nth-child(2){width:75%}.real-thumb-content div:nth-child(3){width:55%}.real-thumb-blocks{display:flex;gap:6px;margin-top:4px}.real-thumb-blocks div{flex:1;height:26px;background:rgba(255,255,255,.15);border-radius:8px}.real-card-body{padding:24px;flex:1;display:flex;flex-direction:column}.real-card-cat{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--primary);margin-bottom:8px}.real-card h3,.real-card .real-card-title{font-size:18px;font-weight:700;color:var(--secondary);margin-bottom:8px;line-height:1.3}.real-card p{color:var(--text-light);font-size:14px;line-height:1.6;flex:1;min-height:calc(14px * 1.6 * 2);margin-bottom:16px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.tech-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:20px}.real-card .tech-tags,.project-card .tech-tags{flex-wrap:nowrap;overflow:hidden}.tech-tag{background:var(--primary-xlight);color:var(--primary);font-size:11px;font-weight:600;padding:4px 10px;border-radius:50px}.real-card-link{display:inline-flex;align-items:center;gap:6px;color:var(--primary);font-size:13px;font-weight:600;margin-top:auto}.real-card-link i{transition:var(--t)}.real-card:hover .real-card-link i{transform:translateX(4px)}.modal-realisation .modal-dialog{max-width:min(640px,96vw);margin:20px auto}.modal-realisation .modal-content{border:0;border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-xl)}.modal-realisation .modal-header{background:var(--secondary);padding:18px 24px;border-bottom:0;align-items:flex-start;flex-shrink:0}.modal-header-left{flex:1;min-width:0}.modal-realisation .modal-title{color:#fff;font-size:18px;font-weight:800;word-break:break-word;margin:0}.modal-realisation .btn-close-white{opacity:.75}.modal-realisation .btn-close-white:hover{opacity:1}.modal-body-scroll{padding:0;max-height:calc(100dvh - 120px);overflow-y:auto;overscroll-behavior:contain}.modal-shots-wrap{background:#0f172a;position:relative}.modal-no-shot{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;height:200px;color:rgba(255,255,255,.4);font-size:13px}.modal-no-shot i{font-size:36px}.modal-shot-viewer{position:relative;background:#0f172a;user-select:none}.modal-shot-img-wrap{overflow:hidden;position:relative;height:320px}.modal-shot-img-wrap img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:contain;object-position:top center;opacity:0;transition:opacity .3s ease;pointer-events:none}.modal-shot-img-wrap img.active{opacity:1}.modal-shot-prev,.modal-shot-next{position:absolute;top:50%;transform:translateY(-50%);z-index:10;background:rgba(255,255,255,.15);border:0;color:#fff;font-size:18px;width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s;backdrop-filter:blur(4px)}.modal-shot-prev{left:10px}.modal-shot-next{right:10px}.modal-shot-prev:hover,.modal-shot-next:hover{background:rgba(255,255,255,.3)}.modal-shot-prev:disabled,.modal-shot-next:disabled{opacity:.25;cursor:default}.modal-shot-dots{display:flex;justify-content:center;gap:6px;padding:10px 0 12px}.modal-shot-dot{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.3);border:0;cursor:pointer;padding:0;transition:background .2s}.modal-shot-dot.active{background:#fff}.modal-info-block{padding:24px}.modal-desc-text{color:var(--text);font-size:15px;line-height:1.75;margin-bottom:0}.modal-tech-label{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-light);margin-bottom:10px;margin-top:4px}.modal-project-badge{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:4px 12px;border-radius:50px;background:rgba(255,255,255,.2);color:#fff;margin-bottom:8px}.modal-meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0;background:var(--bg-light);border-radius:var(--radius);padding:16px}.modal-meta-item{display:flex;flex-direction:column;gap:2px}.modal-meta-label{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-light)}.modal-meta-value{font-size:14px;font-weight:600;color:var(--heading)}.modal-nav{display:flex;align-items:center;gap:6px}.modal-nav-btn{width:32px;height:32px;border-radius:50%;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.3);color:#fff;font-size:14px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s;padding:0}.modal-nav-btn:hover:not(:disabled){background:rgba(255,255,255,.35)}.modal-nav-btn:disabled{opacity:.3;cursor:not-allowed}.modal-nav-counter{color:rgba(255,255,255,.85);font-size:12px;font-weight:600;min-width:36px;text-align:center;white-space:nowrap}.modal-share-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.modal-share-label{font-size:12px;font-weight:600;color:var(--text-light);text-transform:uppercase;letter-spacing:.06em}.modal-share-btn{width:34px;height:34px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:15px;color:#fff;border:0;cursor:pointer;transition:var(--t);text-decoration:none;flex-shrink:0}.modal-share-btn:hover{transform:translateY(-2px);filter:brightness(1.15);color:#fff}.modal-share-fb{background:#1877f2}.modal-share-tw{background:#000}.modal-share-li{background:#0a66c2}.modal-share-copy{background:var(--text-light)}.contact-form-wrap{background:#fff;border-radius:var(--radius-xl);padding:48px;box-shadow:var(--shadow-md);border:1px solid var(--border-light)}.form-floating .form-control,.form-floating textarea,.form-floating select{border:2px solid var(--border);border-radius:var(--radius-sm);font-size:15px;color:var(--heading);transition:var(--t);background:var(--bg-light)}.form-floating .form-control:focus,.form-floating textarea:focus,.form-floating select:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(46,86,147,.12);background:#fff}.form-floating label{color:var(--text-light)}.form-check-input:checked{background-color:var(--primary);border-color:var(--primary)}.form-check-input:focus{box-shadow:0 0 0 3px rgba(46,86,147,.15)}.form-floating select.form-control{cursor:pointer}.contact-info-card{background:#fff;border-radius:var(--radius-lg);padding:22px 26px;margin-bottom:14px;border:1px solid var(--border-light);box-shadow:var(--shadow-sm);display:flex;align-items:flex-start;gap:16px;transition:var(--t)}.contact-info-card:hover{box-shadow:var(--shadow);transform:translateX(4px)}.contact-info-icon{width:48px;height:48px;background:var(--primary-light);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0}.contact-info-icon i{font-size:22px;color:var(--primary)}.contact-info-label{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-light);margin-bottom:2px}.contact-info-value{font-size:15px;font-weight:600;color:var(--heading)}.contact-info-value a{color:var(--heading)}.contact-info-value a:hover{color:var(--primary)}.form-alert{display:none;border-radius:var(--radius-sm);padding:16px 20px;font-size:14px;font-weight:500;align-items:center;gap:10px}.form-alert.show{display:flex}.form-alert-success{background:#f0fdf4;color:#166534;border:1px solid #bbf7d0}.form-alert-error{background:#fef2f2;color:#991b1b;border:1px solid #fca5a5}.faq-section{background:var(--bg-light)}.faq-group{margin-bottom:40px}.faq-group-header{display:flex;align-items:center;gap:10px;margin-bottom:16px}.faq-group-icon{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--accent));display:flex;align-items:center;justify-content:center;color:#fff;font-size:15px;flex-shrink:0}.faq-group-label{font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--primary)}.faq-item{background:#fff;border:1.5px solid var(--border-light);border-radius:var(--radius);overflow:hidden;transition:var(--t);height:100%}.faq-item:hover{border-color:var(--accent);box-shadow:var(--shadow-sm)}.faq-item:has(.collapse.show){border-color:var(--primary)}.faq-btn{width:100%;background:transparent;border:0;padding:16px 18px;text-align:left;font-weight:600;font-size:14px;color:var(--heading);display:flex;align-items:flex-start;justify-content:space-between;gap:12px;cursor:pointer;transition:var(--t);line-height:1.5}.faq-btn:hover{color:var(--primary)}.faq-btn:not(.collapsed){color:var(--primary)}.faq-icon{color:var(--primary);font-size:20px;flex-shrink:0;transform:rotate(45deg);transition:transform .25s ease;margin-top:-1px}.faq-btn.collapsed .faq-icon{transform:rotate(0)}.faq-body{padding:12px 18px 18px;border-top:1px solid var(--border-light);color:var(--text-light);font-size:14px;line-height:1.75}.faq-body strong{color:var(--heading);font-weight:600}.faq-cta-text{color:var(--text-light);font-size:15px}.faq-cta-link{color:var(--primary);font-weight:600;text-decoration:none;border-bottom:1.5px solid transparent;transition:var(--t)}.faq-cta-link:hover{border-bottom-color:var(--primary)}.legal-toc{position:sticky;top:calc(var(--nav-height) + 24px);background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px}.legal-toc-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text-light);margin-bottom:16px}.legal-toc-list{list-style:none;padding:0;margin:0}.legal-toc-list li{margin-bottom:2px}.legal-toc-list a{display:block;padding:6px 10px;border-radius:var(--radius-sm);font-size:13px;color:var(--text-light);font-weight:500;transition:var(--t);text-decoration:none}.legal-toc-list a:hover{background:var(--primary-xlight);color:var(--primary);padding-left:14px}.legal-rgpd-badge{display:flex;align-items:center;gap:8px;background:linear-gradient(135deg,var(--primary-xlight),#e0f0e0);border:1px solid var(--primary-light);border-radius:var(--radius);padding:12px 16px;font-size:13px;font-weight:700;color:var(--primary)}.legal-rgpd-badge i{font-size:18px;color:#16a34a}.legal-cards{display:flex;flex-direction:column;gap:16px}.legal-card{display:flex;gap:20px;align-items:flex-start;background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius-lg);padding:28px 28px 28px 24px;transition:var(--t)}.legal-card:hover{box-shadow:var(--shadow);border-color:var(--primary-light)}.legal-card-contact{background:linear-gradient(135deg,var(--secondary) 0,var(--primary) 100%);border-color:transparent;color:#fff}.legal-card-contact h2,.legal-card-contact .legal-card-body h2,.legal-card-contact .legal-card-body p,.legal-card-contact .legal-card-icon{color:#fff}.legal-card-icon{font-size:22px;color:var(--primary);flex-shrink:0;width:48px;height:48px;background:var(--primary-xlight);border-radius:var(--radius);display:flex;align-items:center;justify-content:center;margin-top:2px}.legal-card-contact .legal-card-icon{background:rgba(255,255,255,.15);color:#fff}.legal-card-body{flex:1;min-width:0}.legal-card-body h2{font-size:17px;font-weight:800;color:var(--secondary);margin:0 0 12px}.legal-card-body p{font-size:14px;line-height:1.8;color:var(--text);margin-bottom:0}.legal-card-body a{color:var(--primary);text-decoration:underline}.legal-card-body a:hover{color:var(--primary-dark)}.legal-card-contact .legal-card-body a{color:rgba(255,255,255,.85)}.legal-card-contact .legal-card-body .btn{text-decoration:none}.legal-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.legal-tag{display:inline-flex;align-items:center;gap:6px;background:var(--primary-xlight);color:var(--primary);border:1px solid var(--primary-light);border-radius:50px;padding:5px 12px;font-size:13px;font-weight:600}.legal-tag i{font-size:12px;color:#16a34a}.legal-notice{display:flex;align-items:flex-start;gap:10px;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:var(--radius);padding:12px 16px;font-size:13px;color:#166534;line-height:1.6}.legal-notice i{color:#16a34a;font-size:16px;flex-shrink:0;margin-top:2px}.legal-rights-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;margin:14px 0}.legal-right-item{background:var(--bg-light);border-radius:var(--radius);padding:14px;display:flex;flex-direction:column;gap:4px}.legal-right-item strong{font-size:13px;font-weight:800;color:var(--primary)}.legal-right-item span{font-size:12px;color:var(--text-light);line-height:1.4}@keyframes fadeInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{from{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}@keyframes scaleIn{from{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.animate-fade-up{animation:fadeInUp .6s ease-out both}.animate-fade-left{animation:fadeInLeft .6s ease-out both}.animate-scale{animation:scaleIn .6s ease-out both}.delay-1{animation-delay:.1s}.delay-2{animation-delay:.2s}.delay-3{animation-delay:.3s}.delay-4{animation-delay:.4s}.btn-spinner{display:none;width:18px;height:18px;border-radius:50%;border:2px solid transparent;border-top-color:currentColor;animation:spin .6s linear infinite}.btn-sending .btn-spinner{display:inline-block}.btn-sending .btn-text{display:none}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:991px){:root{--nav-height:62px}#mainNav{padding-top:10px;padding-bottom:10px}.nav-logo{height:42px}#navbarNav{background:#fff;border-top:1px solid var(--border-light);border-bottom:1px solid var(--border-light);margin:10px -12px -10px;padding:12px 0 16px;box-shadow:0 8px 24px rgba(0,0,0,.08)}#navbarNav .navbar-nav{gap:0 !important}#navbarNav .nav-link{padding:13px 20px !important;font-size:15px !important;border-radius:0 !important;border-bottom:1px solid var(--border-light)}#navbarNav .nav-link::after{display:none}#navbarNav .nav-item:last-child .nav-link{border-bottom:0}#navbarNav .nav-item.ms-lg-2{margin:12px 16px 0 !important}#navbarNav .btn-nav{width:100%;justify-content:center;padding:13px 20px !important;font-size:15px !important;border-radius:var(--radius-sm) !important}.section{padding:72px 0}.hero{padding-top:calc(var(--nav-height) + 40px)}.device-laptop{max-width:360px}.float-card{display:none}.hero-trust-sep{display:none}.modal-realisation .modal-dialog{max-width:100vw;margin:0;height:100dvh;max-height:100dvh;border-radius:0}.modal-realisation .modal-content{border-radius:0;height:100dvh}.modal-shot-img-wrap{height:240px}.modal-meta-grid{grid-template-columns:1fr 1fr}.contact-form-wrap{padding:32px 24px}.service-detail{padding:60px 0}.service-detail-number{font-size:60px}}@media(max-width:767px){:root{--nav-height:58px}#mainNav{padding-top:8px;padding-bottom:8px}.nav-logo{height:38px}.section{padding:56px 0}.section-title{font-size:1.65rem}.section-subtitle{font-size:15px}.hero{padding-top:calc(var(--nav-height) + 32px);padding-bottom:48px}.hero-title{font-size:1.85rem;line-height:1.2}.hero-subtitle{font-size:15px}.hero-actions{flex-direction:column;gap:12px}.hero-actions .btn{width:100%;justify-content:center}.hero-trust{flex-wrap:wrap;gap:10px;justify-content:center}.stat-number{font-size:2rem}.project-card{height:260px}.real-card-thumb{height:160px}.filter-btn{font-size:12px;padding:6px 12px}.projects-search-field{max-width:100%}.cta-title{font-size:1.6rem}.cta-subtitle{font-size:15px}.contact-form-wrap{padding:24px 16px}.about-photo-badge{right:0;bottom:-10px}.timeline-item{padding-left:48px}.footer-body{padding:56px 0 28px}.footer-logo{height:40px}.nav-logo{height:38px}}@media(max-width:575px){:root{--nav-height:54px}.nav-logo{height:34px}.hero-title{font-size:1.6rem}.hero-badge{font-size:11px;padding:5px 12px}.btn-lg{padding:13px 22px;font-size:14px}.hero-trust{flex-direction:column;gap:8px;align-items:flex-start}.hero-trust-sep{display:none}.device-laptop{max-width:280px}.cta-wave-top{display:none}.faq-group .row .col-lg-6{flex:0 0 100%;max-width:100%}.modal-shot-img-wrap{height:200px}.filter-wrap{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:8px;justify-content:flex-start}.filter-wrap::-webkit-scrollbar{display:none}.filter-btn{white-space:nowrap;flex-shrink:0}.modal-tech-list{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px}.modal-tech-list::-webkit-scrollbar{display:none}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms !important;transition-duration:.01ms !important}}.about-photo-wrap{position:relative;display:inline-block}.about-photo{width:100%;max-width:360px;height:auto;border-radius:var(--radius-xl);object-fit:cover;object-position:top center;box-shadow:var(--shadow-lg);display:block}.about-photo-wrap.about-photo-placeholder::before{content:'';display:block;width:100%;max-width:360px;height:440px;border-radius:var(--radius-xl);background:linear-gradient(135deg,var(--secondary) 0,var(--primary) 100%);box-shadow:var(--shadow-lg)}.about-photo-wrap.about-photo-placeholder img{display:none}.about-photo-badge{position:absolute;bottom:-16px;right:-16px;background:var(--primary);color:#fff;border-radius:var(--radius-lg);padding:14px 20px;text-align:center;box-shadow:var(--shadow-md);display:flex;flex-direction:column;align-items:center;min-width:100px}.about-photo-badge-number{font-size:28px;font-weight:900;line-height:1}.about-photo-badge-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;opacity:.85;margin-top:3px}.about-intro-title{font-size:clamp(2rem,4vw,3rem);font-weight:900;color:var(--heading);line-height:1.1;margin-bottom:4px}.about-intro-title span{color:var(--primary)}.about-intro-role{font-size:14px;font-weight:600;color:var(--text-light);text-transform:uppercase;letter-spacing:.08em;margin-bottom:24px}.about-intro-text{color:var(--text);font-size:16px;line-height:1.8;margin-bottom:14px}.about-stats-section{background:var(--secondary);padding:64px 0}.about-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:32px;text-align:center}.about-stat-item{display:flex;flex-direction:column;align-items:center;gap:8px}.about-stat-number{font-size:clamp(2.4rem,4vw,3.5rem);font-weight:900;color:#fff;line-height:1;font-variant-numeric:tabular-nums}.about-stat-label{font-size:13px;font-weight:600;color:rgba(255,255,255,.65);text-transform:uppercase;letter-spacing:.06em}.skill-card{background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius-lg);padding:28px 24px;height:100%;transition:var(--t)}.skill-card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px);border-color:transparent}.skill-card-icon{width:52px;height:52px;border-radius:var(--radius);display:flex;align-items:center;justify-content:center;font-size:22px;margin-bottom:16px}.skill-card-title{font-size:16px;font-weight:800;color:var(--heading);margin-bottom:12px}.skill-list{list-style:none;padding:0;margin:0}.skill-list li{padding:4px 0;font-size:14px;color:var(--text-light);display:flex;align-items:center;gap:8px}.skill-list li::before{content:'';width:5px;height:5px;border-radius:50%;background:var(--primary);flex-shrink:0}.about-values-section{background:var(--bg-light)}.value-card{background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius-lg);padding:32px 28px;height:100%;transition:var(--t)}.value-card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px);border-color:transparent}.value-card-icon{width:56px;height:56px;background:var(--primary-xlight);border-radius:var(--radius);display:flex;align-items:center;justify-content:center;font-size:24px;color:var(--primary);margin-bottom:18px}.value-card h3{font-size:17px;font-weight:800;color:var(--heading);margin-bottom:10px}.value-card p{font-size:14px;color:var(--text-light);line-height:1.7;margin:0}.about-cta-block{background:linear-gradient(135deg,var(--secondary) 0,var(--primary) 100%);border-radius:var(--radius-xl);padding:60px 40px;text-align:center;color:#fff}.about-cta-block h2{font-size:clamp(1.6rem,3vw,2.2rem);font-weight:900;margin-bottom:12px;color:#fff}.about-cta-block p{font-size:16px;color:rgba(255,255,255,.8);max-width:520px;margin:0 auto 28px;line-height:1.7}.about-cta-block .btn-primary{background:#fff;color:var(--primary);border-color:#fff;font-weight:700}.about-cta-block .btn-primary:hover{background:var(--primary-light);border-color:var(--primary-light)}@media(max-width:991px){.about-photo{max-width:280px}.about-photo-wrap.about-photo-placeholder::before{max-width:280px;height:340px}.about-photo-badge{bottom:-12px;right:0}}@media(max-width:575px){.about-cta-block{padding:40px 20px}.about-photo-badge{right:auto;left:50%;transform:translateX(-50%);bottom:-20px}}.faq-search-wrap{max-width:640px;margin:0 auto 40px}.faq-search-field{position:relative;display:flex;align-items:center}.faq-search-icon{position:absolute;left:16px;font-size:16px;color:var(--text-light);pointer-events:none;z-index:1}.faq-search-field .form-control{padding-left:44px;padding-right:44px;border-radius:50px;border:2px solid var(--border);height:52px;font-size:15px;box-shadow:var(--shadow-sm);transition:border-color .2s,box-shadow .2s}.faq-search-field .form-control:focus{border-color:var(--primary);box-shadow:0 0 0 4px rgba(46,86,147,.1)}.faq-search-clear{position:absolute;right:12px;background:0;border:0;color:var(--text-light);cursor:pointer;padding:6px;font-size:14px;line-height:1;border-radius:50%;transition:color .15s,background .15s}.faq-search-clear:hover{color:var(--heading);background:var(--bg-light)}#binbinFab{position:fixed;bottom:24px;right:24px;z-index:9990;display:flex;flex-direction:column;align-items:flex-end;gap:12px}.binbin-btn{width:58px;height:58px;border-radius:50%;background:var(--primary);border:0;cursor:pointer;box-shadow:0 6px 24px rgba(46,86,147,.45);display:flex;align-items:center;justify-content:center;color:white;font-size:26px;position:relative;transition:transform .2s,box-shadow .2s;flex-shrink:0}.binbin-btn:hover{transform:scale(1.08);box-shadow:0 10px 32px rgba(46,86,147,.55)}.binbin-btn:active{transform:scale(.96)}.binbin-badge{position:absolute;top:-3px;right:-3px;background:#ef4444;color:white;border-radius:50%;width:20px;height:20px;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;border:2px solid white;line-height:1}.binbin-notif{display:none;position:relative;cursor:pointer}.binbin-notif.show{display:block}.binbin-notif-bubble{background:white;border-radius:8px 8px 0 8px;padding:12px 36px 12px 16px;font-size:13px;font-weight:500;color:var(--heading);box-shadow:0 8px 32px rgba(0,0,0,.14);white-space:nowrap;position:relative;animation:binbinPop .35s cubic-bezier(.34,1.56,.64,1)}.binbin-notif-arrow{width:12px;height:10px;background:white;clip-path:polygon(0 0,100% 0,100% 100%);margin-left:auto;margin-right:22px;box-shadow:2px 2px 4px rgba(0,0,0,.06)}.binbin-notif-close{position:absolute;top:6px;right:8px;background:0;border:0;cursor:pointer;color:var(--text-light);font-size:14px;padding:2px;line-height:1;border-radius:50%;transition:color .15s}.binbin-notif-close:hover{color:var(--heading)}.binbin-window{position:fixed;bottom:96px;right:24px;width:370px;max-width:calc(100vw - 32px);height:500px;max-height:calc(100svh - 120px);background:white;border-radius:8px;box-shadow:0 20px 60px rgba(0,0,0,.16);display:flex;flex-direction:column;overflow:hidden;z-index:9989;transform:scale(.85) translateY(16px);opacity:0;visibility:hidden;pointer-events:none;transition:transform .25s cubic-bezier(.34,1.56,.64,1),opacity .2s,visibility 0s .25s;transform-origin:bottom right}.binbin-window.open{transform:scale(1) translateY(0);opacity:1;visibility:visible;pointer-events:all;transition:transform .25s cubic-bezier(.34,1.56,.64,1),opacity .2s,visibility 0s 0s}.binbin-header{background:linear-gradient(135deg,var(--primary) 0,var(--secondary) 100%);color:white;padding:14px 16px;display:flex;align-items:center;gap:10px;flex-shrink:0}.binbin-avatar{width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;font-size:22px;flex-shrink:0}.binbin-header-name{font-size:15px;font-weight:700;line-height:1.2}.binbin-header-status{font-size:11px;opacity:.85;display:flex;align-items:center;gap:5px}.binbin-online-dot{width:7px;height:7px;background:#4ade80;border-radius:50%;display:inline-block;animation:binbinBlink 2.2s infinite}.binbin-close{margin-left:auto;background:rgba(255,255,255,.18);border:0;color:white;width:30px;height:30px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;transition:background .15s;flex-shrink:0}.binbin-close:hover{background:rgba(255,255,255,.32)}.binbin-messages{flex:1;overflow-y:auto;padding:14px 12px 8px;display:flex;flex-direction:column;gap:10px;scroll-behavior:auto}.binbin-messages::-webkit-scrollbar{width:4px}.binbin-messages::-webkit-scrollbar-thumb{background:var(--border);border-radius:8px}.binbin-msg{display:flex;gap:6px;max-width:88%}.binbin-msg.bot{align-self:flex-start}.binbin-msg.user{align-self:flex-end;flex-direction:row-reverse;max-width:80%}.binbin-msg-avatar{width:28px;height:28px;border-radius:50%;background:var(--primary-xlight);display:flex;align-items:center;justify-content:center;font-size:15px;flex-shrink:0;margin-top:2px}.binbin-msg-bubble{padding:9px 13px;border-radius:8px;font-size:13.5px;line-height:1.55}.bot .binbin-msg-bubble{background:#f1f5f9;color:var(--heading);border-bottom-left-radius:4px}.user .binbin-msg-bubble{background:var(--primary);color:white;border-bottom-right-radius:4px}.binbin-msg-bubble a{color:var(--primary);text-decoration:underline}.user .binbin-msg-bubble a{color:#c7d9f7}.binbin-msg-bubble strong{font-weight:700}.binbin-msg-bubble em.binbin-source{display:block;font-style:italic;font-size:11.5px;opacity:.65;margin-bottom:5px;font-weight:500}.binbin-typing{display:flex;align-items:center;gap:4px;padding:10px 14px;background:#f1f5f9;border-radius:8px;border-bottom-left-radius:4px;width:fit-content}.binbin-typing span{width:7px;height:7px;background:#94a3b8;border-radius:50%;animation:binbinBounce 1.4s infinite}.binbin-typing span:nth-child(2){animation-delay:.18s}.binbin-typing span:nth-child(3){animation-delay:.36s}.binbin-chips{display:flex;flex-wrap:wrap;gap:6px;padding:4px 12px 8px;flex-shrink:0;min-height:0}.binbin-chip{background:var(--primary-xlight);color:var(--primary);border:1px solid rgba(46,86,147,.2);border-radius:10px;padding:5px 13px;font-size:12px;font-weight:500;cursor:pointer;transition:background .15s,color .15s,border-color .15s;white-space:normal;word-break:break-word;text-align:left;line-height:1.35;font-family:inherit;max-width:100%}.binbin-chip:hover{background:var(--primary);color:white;border-color:var(--primary)}.binbin-expand{background:transparent;border:0;color:rgba(255,255,255,.8);padding:4px 6px;border-radius:6px;cursor:pointer;font-size:14px;line-height:1;transition:background .15s,color .15s;display:flex;align-items:center}.binbin-expand:hover{background:rgba(255,255,255,.2);color:white}.binbin-window.expanded{width:480px;height:680px;max-width:calc(100vw - 32px);max-height:calc(100svh - 120px)}.binbin-input-area{padding:10px 12px 12px;border-top:1px solid var(--border);display:flex;gap:8px;align-items:center;flex-shrink:0}.binbin-input{flex:1;border:1.5px solid var(--border);border-radius:50px;padding:9px 15px;font-size:13.5px;outline:0;font-family:inherit;color:var(--heading);background:var(--bg-light);transition:border-color .15s,background .15s}.binbin-input:focus{border-color:var(--primary);background:white}.binbin-send{width:38px;height:38px;border-radius:50%;background:var(--primary);border:0;color:white;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;transition:background .15s,transform .1s;flex-shrink:0}.binbin-send:hover{background:var(--secondary)}.binbin-send:active{transform:scale(.9)}@keyframes binbinPop{from{opacity:0;transform:scale(.8) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes binbinBounce{0%,60%,100%{transform:translateY(0)}30%{transform:translateY(-6px)}}@keyframes binbinBlink{0%,100%{opacity:1}50%{opacity:.4}}@media(max-width:480px){#binbinFab{bottom:16px;right:16px}.binbin-window{right:0;bottom:0;width:100%;max-width:100%;height:100svh;max-height:100svh;border-radius:8px 8px 0 0;transform:scale(1) translateY(100%)}.binbin-window.open{transform:scale(1) translateY(0)}}html[data-binbin-open="1"] .binbin-window{transform:scale(1) translateY(0) !important;opacity:1 !important;visibility:visible !important;pointer-events:all !important;transition:none !important}html[data-binbin-open="1"] .binbin-window.expanded{width:480px !important;height:680px !important}.faq-cat-link{display:inline-flex;align-items:center;gap:6px;padding:7px 16px;border-radius:50px;font-size:13px;font-weight:500;color:var(--text);background:white;border:1.5px solid var(--border);text-decoration:none;transition:background .15s,color .15s,border-color .15s,box-shadow .15s;white-space:nowrap}.faq-cat-link:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-xlight)}.faq-cat-link.active{background:var(--primary);color:white;border-color:var(--primary);box-shadow:0 4px 12px rgba(46,86,147,.25)}.faq-cat-count{background:rgba(0,0,0,.08);border-radius:50px;padding:1px 8px;font-size:11px;font-weight:700;line-height:1.6}.faq-cat-link.active .faq-cat-count{background:rgba(255,255,255,.25)}.faq-group-count{margin-left:auto;font-size:12px;color:var(--text-light);font-weight:500}.tooltip .tooltip-inner{font-size:11px;padding:4px 10px;border-radius:6px;background-color:#1a2740;color:#e8edf5;box-shadow:0 2px 8px rgba(0,0,0,.35);max-width:320px;white-space:nowrap}.tooltip.bs-tooltip-top .tooltip-arrow::before{border-top-color:#1a2740}.tooltip.bs-tooltip-bottom .tooltip-arrow::before{border-bottom-color:#1a2740}.sitemap-group{background:var(--bg-card,#fff);border:1px solid var(--border);border-radius:12px;overflow:hidden;height:100%}.sitemap-group-header{display:flex;align-items:center;gap:10px;padding:16px 20px;background:linear-gradient(135deg,var(--primary) 0,var(--secondary) 100%);color:white}.sitemap-group-header i{font-size:18px;flex-shrink:0}.sitemap-group-header h2{font-size:15px;font-weight:700;margin:0;color:white;display:flex;align-items:center;gap:8px}.sitemap-count{background:rgba(255,255,255,.25);border-radius:20px;padding:1px 8px;font-size:12px;font-weight:600}.sitemap-links{list-style:none;margin:0;padding:8px 0}.sitemap-links--scroll{max-height:320px;overflow-y:auto}.sitemap-links--scroll::-webkit-scrollbar{width:4px}.sitemap-links--scroll::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.sitemap-links li a{display:flex;align-items:baseline;gap:6px;padding:8px 20px;color:var(--text);text-decoration:none;font-size:14px;transition:background .15s,color .15s,padding-left .15s;line-height:1.4}.sitemap-links li a:hover{background:var(--primary-xlight,#ebf2fa);color:var(--primary);padding-left:26px}.sitemap-links li a i{color:var(--primary);font-size:10px;flex-shrink:0;margin-top:2px}.sitemap-date{margin-left:auto;font-size:11px;color:var(--text-muted,#9ca3af);white-space:nowrap;flex-shrink:0}.sitemap-tags-grid{display:flex;flex-wrap:wrap;gap:8px;padding:14px 16px}.sitemap-tag{display:inline-block;background:var(--primary-xlight,#ebf2fa);color:var(--primary);border:1px solid rgba(46,86,147,.18);border-radius:20px;padding:4px 13px;font-size:12.5px;font-weight:500;text-decoration:none;transition:background .15s,color .15s,border-color .15s}.sitemap-tag:hover{background:var(--primary);color:white;border-color:var(--primary)}