:root{--bg-dark:#f8fafc;--bg-surface:#fff;--bg-card:#fff;--bg-card-hover:#fff;--glass-border:#0f172a1f;--glass-border-subtle:#0f172a14;--primary-accent:#1e40af;--primary-accent-light:#2563eb;--primary-accent-dark:#1d4ed8;--whatsapp-green:#25d366;--whatsapp-dark:#128c7e;--text-main:#0f172a;--text-muted:#475569;--text-subtle:#64748b;--font-heading:"Outfit", sans-serif;--font-body:"Plus Jakarta Sans", sans-serif;--radius-sm:8px;--radius-md:14px;--radius-lg:20px;--radius-xl:26px;--radius-full:9999px;--shadow-sm:0 4px 14px #0f172a0f;--shadow-lg:0 16px 40px #0f172a14;--transition-fast:.2s ease;--transition-normal:.3s cubic-bezier(.16, 1, .3, 1);--transition-slow:.4s cubic-bezier(.16, 1, .3, 1)}*{box-sizing:border-box;margin:0;padding:0}html,body{scroll-behavior:smooth;font-family:var(--font-body);background-color:var(--bg-dark);color:var(--text-main);touch-action:pan-y!important;overscroll-behavior-x:none!important;width:100%!important;max-width:100vw!important;position:relative!important;overflow-x:hidden!important}body{-webkit-font-smoothing:antialiased;background:#f8fafc;min-height:100vh;line-height:1.55}#root{width:100%!important;max-width:100vw!important;position:relative!important;overflow-x:hidden!important}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--text-main);letter-spacing:-.02em;font-weight:700;line-height:1.2}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}img{object-fit:cover;decoding:async;max-width:100%;display:block}#about,#services,#process,#gallery,#coverage,#contact{content-visibility:auto;contain-intrinsic-size:1px 600px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{0%{border-color:#1e40af4d}50%{border-color:#1e40afcc}to{border-color:#1e40af4d}}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#f1f5f9}::-webkit-scrollbar-thumb{background:#1e40af;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#2563eb}.container{width:90%;max-width:1200px;margin:0 auto}.text-blue{color:#1e40af!important}.badge{border-radius:var(--radius-full);color:#1e40af;transition:border-color var(--transition-normal);background:#1e40af14;border:1px solid #1e40af40;align-items:center;gap:8px;padding:6px 16px;font-size:.84rem;font-weight:700;display:inline-flex}.glass-panel{border-radius:var(--radius-lg);transition:transform var(--transition-normal), border-color var(--transition-normal), box-shadow var(--transition-normal);background:#fff;border:1px solid #0f172a14;box-shadow:0 10px 30px #0f172a0d}.glass-panel:hover{border-color:#1e40af59;transform:translateY(-3px);box-shadow:0 14px 36px #1e40af1f}.btn-primary{border-radius:var(--radius-full);color:#fff;transition:all var(--transition-normal);background:linear-gradient(135deg,#1e40af 0%,#1d4ed8 100%);border:1px solid #fff3;justify-content:center;align-items:center;gap:10px;padding:13px 26px;font-size:.98rem;font-weight:700;display:inline-flex;box-shadow:0 6px 18px #1e40af52}.btn-primary:hover{background:linear-gradient(135deg,#1e3a8a 0%,#1e40af 100%);transform:translateY(-2px);box-shadow:0 8px 24px #1e40af73}.btn-secondary{border-radius:var(--radius-full);color:#0f172a;transition:all var(--transition-normal);background:#fff;border:1px solid #0f172a24;justify-content:center;align-items:center;gap:10px;padding:13px 26px;font-size:.98rem;font-weight:700;display:inline-flex;box-shadow:0 4px 14px #0f172a0f}.btn-secondary:hover{color:#1e40af;background:#f8fafc;border-color:#1e40af;transform:translateY(-2px)}.btn-whatsapp{color:#fff;background:#25d366;border:1px solid #fff3;font-weight:700;box-shadow:0 6px 18px #25d36659}.btn-whatsapp:hover{background:#128c7e;transform:translateY(-2px)}.floating-actions-container{z-index:999;flex-direction:column;align-items:flex-end;gap:10px;display:flex;position:fixed;bottom:20px;right:20px}.floating-btn{color:#fff;width:52px;height:52px;transition:transform var(--transition-normal);border-radius:50%;justify-content:center;align-items:center;text-decoration:none;display:flex;position:relative;box-shadow:0 10px 25px #0f172a33}.floating-btn:hover{transform:scale(1.1)}.floating-btn-whatsapp{background:#25d366}.floating-btn-phone{color:#fff;background:#1e40af}.floating-btn-quote{color:#fff;background:#1e40af;border:2px solid #fff6;box-shadow:0 10px 25px #1e40af66}.floating-tooltip{color:#fff;border-radius:var(--radius-sm);white-space:nowrap;opacity:0;pointer-events:none;background:#0f172a;border:1px solid #ffffff1a;padding:5px 12px;font-size:.8rem;font-weight:600;transition:opacity .2s,transform .2s;position:absolute;right:64px;transform:translate(8px)}.floating-btn:hover .floating-tooltip{opacity:1;transform:translate(0)}.modal-overlay{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1000;background:#0b1120d1;justify-content:center;align-items:center;padding:16px;animation:.25s ease-out fadeIn;display:flex;position:fixed;inset:0}.modal-content{border-radius:var(--radius-xl);background:#fff;border:1px solid #0f172a1f;width:100%;max-width:640px;max-height:90vh;padding:28px;position:relative;overflow-y:auto;box-shadow:0 25px 60px #0f172a40}.modal-close{color:#475569;background:#f1f5f9;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;transition:background .2s;display:flex;position:absolute;top:16px;right:16px}.modal-close:hover{color:#fff;background:#1e40af}@keyframes fadeIn{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.form-group{margin-bottom:16px}.form-label{color:#0f172a;margin-bottom:6px;font-size:.88rem;font-weight:700;display:block}.form-input,.form-select,.form-textarea{border-radius:var(--radius-md);color:#0f172a;background:#f8fafc;border:1px solid #0f172a24;outline:none;width:100%;padding:12px 16px;font-size:.92rem;transition:border-color .2s,box-shadow .2s}.form-input:focus,.form-select:focus,.form-textarea:focus{background:#fff;border-color:#1e40af;box-shadow:0 0 0 3px #1e40af26}.form-select option{color:#0f172a;background:#fff}.section-header{text-align:center;max-width:720px;margin:0 auto 36px}.section-header h2{color:#0f172a;margin-top:10px;margin-bottom:12px;font-size:clamp(1.8rem,3.5vw,2.5rem)}.section-header p{color:#475569;font-size:1rem}.lightbox-overlay{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1100;background:#0b1120eb;justify-content:center;align-items:center;padding:20px;animation:.25s ease-out fadeIn;display:flex;position:fixed;inset:0}.lightbox-img{border-radius:var(--radius-md);border:2px solid #ffffff4d;max-width:92vw;max-height:80vh;box-shadow:0 25px 60px #00000080}.services-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;display:grid}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px;display:grid}section{padding:80px 0}@media (width<=768px){section{padding:44px 0!important}.container{width:92%}.section-header{margin-bottom:20px!important}.section-header h2{font-size:1.5rem!important}.section-header p{font-size:.88rem!important}.services-grid{grid-template-columns:repeat(2,1fr)!important;gap:10px!important}.service-card{padding:14px 10px!important}.service-card-icon{width:38px!important;height:38px!important;margin-bottom:10px!important}.service-card h3{font-size:.98rem!important}.service-card p{margin-bottom:10px!important;font-size:.78rem!important;line-height:1.35!important}.service-card-bullets{display:none!important}.service-card-btn{padding:8px 6px!important;font-size:.75rem!important}.gallery-grid{grid-template-columns:repeat(2,1fr)!important;gap:8px!important}.gallery-card{height:155px!important}.btn-primary,.btn-secondary{padding:11px 20px!important;font-size:.9rem!important}.floating-actions-container{gap:8px;bottom:14px;right:14px}.floating-btn{width:46px;height:46px}.floating-tooltip{display:none!important}.modal-content{padding:20px}html,body,#root,main,section,.container{touch-action:pan-y!important;max-width:100vw!important;overflow-x:hidden!important}}
