:root{--bg-primary: #0a0a0a;--bg-secondary: #0f0f0f;--text-primary: #ffffff;--text-secondary: #a0a0a0;--accent: #ffffff;--glass-bg: rgba(255, 255, 255, .05);--glass-border: rgba(255, 255, 255, .1);--font: "Poppins", sans-serif;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-2xl: 48px;--space-3xl: 64px;--space-4xl: 96px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--transition: .3s ease}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font);background:var(--bg-primary);color:var(--text-primary);line-height:1.7}.video-fondo{position:fixed;top:0;left:0;width:100%;height:100%;object-fit:cover;z-index:-2}body:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:linear-gradient(to bottom,#000000b3,#00000080);z-index:-1}.container{max-width:1200px;margin:0 auto;padding:0 var(--space-lg)}.nav{position:fixed;top:0;left:0;width:100%;z-index:1000;padding:var(--space-md) var(--space-xl);background:#0009;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:background var(--transition)}.nav-container{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center}.nav-logo{font-size:24px;font-weight:700;color:var(--accent);text-decoration:none;letter-spacing:1px}.nav-links{display:flex;gap:var(--space-xl);list-style:none}.nav-links a{color:var(--text-secondary);text-decoration:none;font-size:14px;font-weight:500;transition:color var(--transition);position:relative}.nav-links a:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:2px;background:var(--accent);transition:width var(--transition)}.nav-links a:hover{color:var(--accent)}.nav-links a:hover:after{width:100%}.nav-toggle{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:4px;z-index:1001}.hamburger-line{display:block;width:26px;height:2px;background:var(--accent);border-radius:2px;transition:transform var(--transition),opacity var(--transition)}.nav-toggle.active .hamburger-line:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-toggle.active .hamburger-line:nth-child(2){opacity:0}.nav-toggle.active .hamburger-line:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.hero{min-height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:var(--space-xl)}.hero-content{max-width:800px}.hero-pretitle{font-size:18px;color:var(--text-primary);margin-bottom:var(--space-sm);font-weight:500}.hero-title{font-size:clamp(40px,8vw,80px);font-weight:700;margin-bottom:var(--space-lg);text-shadow:0 2px 20px rgba(0,0,0,.5);min-height:1.2em}.typewriter{display:inline}.cursor{display:inline-block;width:3px;height:1em;background:var(--accent);margin-left:4px;vertical-align:text-bottom;animation:blink 1s infinite}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.hero-subtitle{font-size:18px;color:var(--text-secondary);margin-bottom:var(--space-xl);max-width:600px;margin-left:auto;margin-right:auto;line-height:1.8}.btn{display:inline-block;padding:var(--space-md) var(--space-xl);border-radius:var(--radius-sm);font-weight:600;font-size:14px;text-decoration:none;transition:all var(--transition);cursor:pointer;border:none;background:#2d2d2d;color:var(--text-primary);font-family:var(--font)}.btn:hover{background:#404040;transform:translateY(-2px);box-shadow:0 4px 15px #ffffff1a}section{padding:var(--space-4xl) 0}.section-title{font-size:clamp(28px,4vw,42px);font-weight:700;text-align:center;margin-bottom:var(--space-2xl);text-shadow:0 2px 15px rgba(0,0,0,.4)}.about{background:#00000080}.about-content{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2xl);align-items:center;max-width:1000px;margin:0 auto}.about-text{padding:var(--space-lg)}.about-text p{font-size:16px;color:var(--text-secondary);margin-bottom:var(--space-md);text-align:left;line-height:1.8}.about-img{width:100%;border-radius:var(--radius-lg);max-width:400px;box-shadow:0 8px 30px #0000004d}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-xl)}.service-card{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:var(--space-xl);text-align:center;transition:all var(--transition)}.service-card:hover{transform:translateY(-5px);background:#ffffff14;box-shadow:0 8px 25px #0003}.service-icon{font-size:48px;margin-bottom:var(--space-md)}.service-card h3{font-size:20px;margin-bottom:var(--space-sm)}.service-card p{font-size:14px;color:var(--text-secondary);line-height:1.7}.projects{background:#00000080}.projects-split{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2xl)}.column-title{font-size:24px;font-weight:600;text-align:center;margin-bottom:var(--space-xl);color:var(--accent);border-bottom:2px solid var(--glass-border);padding-bottom:var(--space-sm)}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-xl)}.column-grid{grid-template-columns:1fr}.project-card{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg);overflow:hidden;transition:all var(--transition)}.project-card:hover{transform:translateY(-5px);box-shadow:0 10px 30px #0000004d}.project-image{width:100%;height:200px;overflow:hidden}.project-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.project-card:hover .project-image img{transform:scale(1.05)}.project-info{padding:var(--space-lg)}.project-title{font-size:20px;font-weight:600;color:var(--text-primary);margin-bottom:var(--space-sm)}.project-description{font-size:14px;color:var(--text-secondary);margin-bottom:var(--space-md)}.project-link{display:inline-block;padding:var(--space-sm) var(--space-lg);font-size:14px}.contact{background:#0000004d}.contact-subtitle{text-align:center;color:var(--text-secondary);margin-bottom:var(--space-xl)}.contact-form{max-width:600px;margin:0 auto;display:flex;flex-direction:column;gap:var(--space-lg)}.form-group{position:relative}.form-group input,.form-group textarea,.form-group select{width:100%;padding:var(--space-md);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-sm);color:var(--text-primary);font-size:16px;font-family:var(--font);outline:none;transition:border-color var(--transition)}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--accent)}.form-group label{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--text-secondary);pointer-events:none;transition:all var(--transition)}.form-group textarea~label{top:16px;transform:none}.form-group input:focus~label,.form-group input:not(:placeholder-shown)~label,.form-group textarea:focus~label,.form-group textarea:not(:placeholder-shown)~label{top:-10px;left:12px;font-size:12px;color:var(--accent);background:var(--bg-primary);padding:0 4px}.form-group select{cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%23a0a0a0' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10l-5 5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center}.form-group select option{background:var(--bg-primary);color:var(--text-primary)}.faq{background:#00000080}.faq-grid{display:flex;flex-direction:column;gap:var(--space-xl);max-width:800px;margin:0 auto}.faq-item{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-md);padding:var(--space-xl);transition:all var(--transition)}.faq-item:hover{background:#ffffff14}.faq-question{font-size:20px;font-weight:600;color:var(--text-primary);margin-bottom:var(--space-md)}.faq-answer{font-size:15px;color:var(--text-secondary);line-height:1.7}.faq-list{margin-top:var(--space-md);padding-left:var(--space-lg);color:var(--text-secondary)}.faq-list li{margin-bottom:var(--space-sm);line-height:1.6}.faq-list strong{color:var(--text-primary)}.footer{padding:var(--space-xl) 0;border-top:1px solid var(--glass-border);text-align:center}.footer p{font-size:14px;color:var(--text-secondary)}.whatsapp-btn{position:fixed;bottom:30px;right:30px;width:60px;height:60px;background:#ffffff26;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.2);border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:1000;animation:pulse 2s infinite;transition:all var(--transition)}.whatsapp-btn:hover{background:#ffffff40;transform:scale(1.1)}.whatsapp-btn svg{width:32px;height:32px;fill:var(--accent)}@keyframes pulse{0%,to{box-shadow:0 0 #ffffff4d}50%{box-shadow:0 0 0 15px #fff0}}.animate-on-scroll{opacity:0;transform:translateY(30px);transition:opacity .6s ease,transform .6s ease}.animate-on-scroll.visible{opacity:1;transform:translateY(0)}@media (max-width: 768px){body:before{background-attachment:scroll}.nav-toggle{display:flex}.nav-links{display:none;position:absolute;top:100%;left:0;width:100%;flex-direction:column;align-items:center;gap:0;background:#000000f2;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:var(--space-md) 0}.nav-links.active{display:flex}.nav-links li{width:100%;text-align:center}.nav-links a{display:block;padding:var(--space-md) var(--space-lg);font-size:16px}.nav-links a:after{display:none}.about-content{grid-template-columns:1fr}.about-text p{text-align:left}.about-img{margin:0 auto}.services-grid,.projects-grid,.projects-split{grid-template-columns:1fr}}
