:root{--color-primary: #2563EB;--color-secondary: #3B82F6;--color-accent: #F97316;--color-background: #F8FAFC;--color-foreground: #1E293B;--color-surface: rgba(255, 255, 255, .7);--color-border: rgba(255, 255, 255, .2);--color-overlay: rgba(15, 23, 42, .6);--font-heading: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--transition-base: .15s ease-in-out;--blur-sm: 10px;--blur-md: 20px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .12);--shadow-md: 0 4px 12px rgba(0, 0, 0, .15);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .2)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;font-family:var(--font-body);line-height:1.6;color:var(--color-foreground);background-color:var(--color-background);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{min-height:100vh;display:flex;flex-direction:column;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:600;line-height:1.3;color:var(--color-foreground);margin-bottom:.5em}h1{font-size:clamp(2.5rem,6vw,4.5rem);font-weight:700}h2{font-size:clamp(1.875rem,4vw,2.5rem);text-align:center;margin-bottom:1.5rem}h3{font-size:1.25rem}p{margin-bottom:1rem;color:var(--color-foreground);opacity:.9}.container{width:90%;max-width:1200px;margin:0 auto;padding:0 1rem}.site-header{position:sticky;top:0;z-index:1000;background:#fffc;-webkit-backdrop-filter:blur(var(--blur-sm));backdrop-filter:blur(var(--blur-sm));border-bottom:1px solid var(--color-border);padding:1rem 0;transition:all var(--transition-base)}.site-header .container{display:flex;align-items:center;justify-content:space-between}.logo{font-family:var(--font-heading);font-weight:700;font-size:1.5rem;color:var(--color-primary);text-decoration:none;transition:color var(--transition-base)}.logo:hover{color:var(--color-accent)}.nav-list{display:flex;gap:2rem;list-style:none;margin:0;padding:0}.nav-list a{text-decoration:none;color:var(--color-foreground);font-weight:500;transition:color var(--transition-base);position:relative}.nav-list a:hover{color:var(--color-primary)}.nav-list a:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:2px;background:linear-gradient(90deg,var(--color-primary),var(--color-accent));transition:width var(--transition-base)}.nav-list a:hover:after{width:100%}.nav-toggle{display:none;background:none;border:none;cursor:pointer;color:var(--color-foreground);transition:color var(--transition-base)}.nav-toggle:hover{color:var(--color-primary)}.glass{background:var(--color-surface);backdrop-filter:blur(var(--blur-md));-webkit-backdrop-filter:blur(var(--blur-md));border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);transition:all var(--transition-base);position:relative;overflow:hidden}.glass:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.5),transparent);opacity:.5}.glass:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:#ffffff4d}.hero{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;color:#fff;overflow:hidden;padding:6rem 0 4rem}.hero:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:url(/hero.webp) center/cover no-repeat;background-size:cover;z-index:0}.hero-content{position:relative;z-index:1;text-align:center;max-width:800px;padding:2rem}.hero-title{color:#fff;text-shadow:0 4px 20px rgba(0,0,0,.6);margin-bottom:1.5rem;line-height:1.2;font-weight:700;letter-spacing:-.02em}.hero-subtitle{color:#fffffff2;font-size:1.25rem;max-width:600px;margin:0 auto 2.5rem;text-shadow:0 2px 10px rgba(0,0,0,.5)}.hero-cta{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.hero-cta .btn{padding:.875rem 2rem;font-size:1.1rem;font-weight:600;border-radius:var(--radius-sm)}.hero-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,var(--color-overlay),rgba(15,23,42,.8)),url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100" viewBox="0 0 100 100"><defs><pattern id="grain" width="100" height="100" patternUnits="userSpaceOnUse"><circle cx="10" cy="10" r="1" fill="rgba(255,255,255,0.05)"/></pattern></defs><rect width="100%" height="100%" fill="url(%23grain)"/></svg>');background-size:cover,100px 100px;z-index:0;animation:subtlePulse 30s ease-in-out infinite}@keyframes subtlePulse{0%,to{opacity:.7}50%{opacity:.9}}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;border:none;border-radius:var(--radius-sm);font-family:var(--font-body);font-weight:600;text-decoration:none;cursor:pointer;transition:all var(--transition-base);position:relative;overflow:hidden}.btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s ease}.btn:hover:before{left:100%}.btn-primary{background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));color:#fff;box-shadow:var(--shadow-sm)}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);background:linear-gradient(135deg,#1d4ed8,var(--color-primary))}.btn-accent{background:linear-gradient(135deg,var(--color-accent),#ea580b);color:#fff;box-shadow:var(--shadow-sm)}.btn-accent:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);background:linear-gradient(135deg,#ea580b,#d45a00)}.btn-secondary{background:var(--color-surface);color:var(--color-foreground);border:1px solid var(--color-border);-webkit-backdrop-filter:blur(var(--blur-sm));backdrop-filter:blur(var(--blur-sm))}.btn-secondary:hover{background:#ffffffe6;border-color:var(--color-primary);color:var(--color-primary)}.about{padding:6rem 0;background:linear-gradient(to bottom,var(--color-background),rgba(248,250,252,.8))}.section-title{text-align:center;margin-bottom:2rem;color:var(--color-primary);position:relative;display:inline-block;left:50%;transform:translate(-50%)}.section-title:after{content:"";position:absolute;bottom:-10px;left:50%;transform:translate(-50%);width:60px;height:3px;background:linear-gradient(90deg,var(--color-primary),var(--color-accent));border-radius:2px}.section-copy{max-width:800px;margin:2rem auto 0;text-align:left;line-height:1.8;color:var(--color-foreground);opacity:.9}.services{padding:6rem 0;background:var(--color-background)}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-top:3rem}.service-card{padding:2rem;text-align:center;display:flex;flex-direction:column;align-items:center;height:100%}.service-icon{width:48px;height:48px;margin-bottom:1.5rem;color:var(--color-primary);transition:color var(--transition-base),transform var(--transition-base)}.service-card:hover .service-icon{color:var(--color-accent);transform:scale(1.1)}.service-card h3{margin-bottom:1rem;color:var(--color-foreground)}.service-card p{flex-grow:1;color:var(--color-foreground);opacity:.9;line-height:1.7}.testimonials{padding:6rem 0;background:linear-gradient(to bottom,rgba(248,250,252,.8),var(--color-background))}.contact{padding:6rem 0;background:var(--color-background)}.contact-phone,.contact-whatsapp{text-align:center;margin:1rem 0;font-size:1.25rem}.contact-phone a,.contact-whatsapp a{color:var(--color-primary);text-decoration:none;font-weight:600;transition:color var(--transition-base)}.contact-phone a:hover,.contact-whatsapp a:hover{color:var(--color-accent);text-decoration:underline}.map-wrapper{margin:2rem auto;max-width:800px;border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-md);background:#fff;padding:1px}.footer-address{margin-top:2rem;text-align:center;font-style:normal;color:var(--color-foreground);opacity:.8;max-width:600px;margin-left:auto;margin-right:auto}.site-footer{background:linear-gradient(to top,rgba(248,250,252,.8),var(--color-background));padding:2rem 0;border-top:1px solid var(--color-border);margin-top:auto}.site-footer p{text-align:center;color:var(--color-foreground);opacity:.7;font-size:.875rem}.fade-in{opacity:0;transform:translateY(20px);transition:opacity .6s ease-out,transform .6s ease-out}.fade-in.visible{opacity:1;transform:translateY(0)}@media(max-width:1024px){.services-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}}@media(max-width:768px){.nav-list{position:fixed;top:70px;left:0;right:0;background:#fffffff2;-webkit-backdrop-filter:blur(var(--blur-md));backdrop-filter:blur(var(--blur-md));flex-direction:column;padding:2rem;gap:1rem;transform:translateY(-150%);transition:transform var(--transition-base);box-shadow:var(--shadow-lg);border-bottom:1px solid var(--color-border);z-index:999}.nav-list.active{transform:translateY(0)}.nav-toggle{display:block}.hero-cta{flex-direction:column;align-items:center}.hero-cta .btn{width:100%;max-width:300px}.services-grid{grid-template-columns:1fr}.container{width:95%}h1{font-size:2.5rem}.hero-subtitle{font-size:1.125rem}}@media(max-width:480px){.container{width:100%;padding:0 1.5rem}.hero-content{padding:1rem}.service-card{padding:1.5rem}.btn{padding:.75rem 1.25rem;font-size:1rem}}.btn:focus,.nav-list a:focus{outline:2px solid var(--color-accent);outline-offset:2px}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.cursor-pointer{cursor:pointer}
