.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}:root{--color-primary: #4d6dff;--color-primary-dark: #3a56cc;--color-primary-light: #7d94fd;--color-accent: #a2b2fb;--color-accent-light: #d1d7f9;--color-biomedica: #4d6dff;--color-semiconductores: #7b61ff;--color-industrial: #ff8c42;--color-white: #f8f7f7;--color-gray-light: #c4c4c5;--color-gray: #989898;--color-text: #2a2a2a;--color-text-light: #666666}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,system-ui,-apple-system,sans-serif;color:var(--color-text);background:var(--color-white);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden;width:100%}img{max-width:100%;height:auto;display:block}a{color:var(--color-primary);text-decoration:none;transition:color .2s ease}a:hover{color:var(--color-primary-dark)}h1,h2,h3,h4,h5,h6{line-height:1.2}.container{max-width:1200px;margin:0 auto;padding:0 2rem}.site-header{background:#fff;box-shadow:0 2px 15px #4d6dff14;padding:1rem 2rem;position:sticky;top:0;z-index:100}.header-container{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between}.logo{display:flex;align-items:center}.logo img{height:50px;width:auto}.site-nav{display:flex;align-items:center;gap:2rem}.site-nav>a{color:var(--color-text)!important;font-weight:500;position:relative}.site-nav>a:hover{color:var(--color-primary)!important}.site-nav>a:after{content:"";position:absolute;bottom:-4px;left:0;width:0;height:2px;background:var(--color-primary);transition:width .2s ease}.site-nav>a:hover:after{width:100%}.nav-dropdown{position:relative}.dropdown-toggle{display:flex;align-items:center;gap:4px;background:none;border:none;font-family:inherit;font-size:1rem;font-weight:500;color:var(--color-text);cursor:pointer;padding:0;min-height:44px}.dropdown-toggle:hover{color:var(--color-primary)}.dropdown-icon{transition:transform .2s}.dropdown-toggle[aria-expanded=true] .dropdown-icon{transform:rotate(180deg)}.dropdown-menu{position:absolute;top:100%;left:0;background:#fff;min-width:240px;border-radius:8px;box-shadow:0 10px 30px #0000001a;opacity:0;visibility:hidden;transform:translateY(-10px);transition:all .2s;z-index:200;padding:.5rem 0;border:1px solid var(--color-gray-light)}.dropdown-menu.active{opacity:1;visibility:visible;transform:translateY(0)}.dropdown-menu a{display:block;padding:.8rem 1.2rem;color:var(--color-text)!important;transition:background .2s}.dropdown-menu a:hover{background:var(--color-accent-light);color:var(--color-primary)!important}.dropdown-menu a:after{display:none}.btn-contacto{background:var(--color-primary)!important;color:#fff!important;padding:.7rem 1.4rem;border-radius:50px;font-weight:600;display:inline-flex!important;align-items:center;gap:.5rem;transition:all .2s ease;box-shadow:0 4px 10px #4d6dff33}.btn-contacto:hover{background:var(--color-primary-dark)!important;color:#fff!important;transform:translateY(-2px);box-shadow:0 6px 15px #4d6dff4d}.menu-toggle{display:none;background:none;border:none;cursor:pointer;padding:8px;min-height:44px;transition:transform .2s}.menu-toggle:hover{transform:scale(1.1)}.desktop-only{display:flex}.mobile-menu{position:fixed;top:0;right:-100%;width:100%;max-width:400px;height:100vh;background:#fff;box-shadow:-5px 0 30px #0000001a;z-index:1000;transition:right .3s ease-in-out;display:flex;flex-direction:column;padding:1.5rem}.mobile-menu.active{right:0}.mobile-menu-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:1.5rem;border-bottom:1px solid var(--color-gray-light)}.menu-close{background:none;border:none;cursor:pointer;padding:8px;min-height:44px;transition:transform .2s}.menu-close:hover{transform:scale(1.1)}.mobile-nav{display:flex;flex-direction:column;gap:.25rem;padding:1.5rem 0;flex:1;overflow-y:auto}.mobile-nav a{font-size:1.2rem;font-weight:500;color:var(--color-text);text-decoration:none;padding:.8rem 0;border-bottom:1px solid var(--color-gray-light);transition:color .2s;min-height:44px;display:flex;align-items:center}.mobile-nav a:hover{color:var(--color-primary)}.mobile-divider{height:1px;background:var(--color-gray-light);margin:.75rem 0}.mobile-section-title{font-size:.9rem;font-weight:600;color:var(--color-primary);text-transform:uppercase;letter-spacing:1px;padding:.5rem 0}.mobile-menu-footer{padding-top:1.5rem;border-top:1px solid var(--color-gray-light)}.btn-contacto-mobile{display:flex;align-items:center;justify-content:center;gap:8px;background:var(--color-primary);color:#fff!important;padding:1rem;border-radius:50px;text-decoration:none;font-weight:600;font-size:1.1rem;transition:background .2s;min-height:44px}.btn-contacto-mobile:hover{background:var(--color-primary-dark)}.site-footer{background:var(--color-text);color:var(--color-gray-light);padding:2.5rem 2rem;margin-top:4rem}.footer-container{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr auto 1fr;gap:2rem;align-items:start}.footer-info h3{color:var(--color-accent);margin-bottom:.8rem;font-size:1.5rem}.footer-info p{margin:.25rem 0;color:#aaa}.footer-links{display:flex;flex-direction:column;gap:.5rem}.footer-links h4{color:var(--color-accent);margin-bottom:.5rem}.footer-links a{color:#aaa;text-decoration:none;transition:color .2s}.footer-links a:hover{color:#fff}.footer-legal{text-align:right}.footer-legal p{color:#888;font-size:.9rem}.btn-primary{background:var(--color-primary);color:#fff!important;padding:.8rem 1.8rem;border-radius:8px;text-decoration:none;font-weight:600;display:inline-block;transition:background .2s}.btn-primary:hover{background:var(--color-primary-dark)}.btn-secondary{background:transparent;color:var(--color-primary)!important;padding:.8rem 1.8rem;border-radius:8px;text-decoration:none;font-weight:600;border:2px solid var(--color-primary);display:inline-block;transition:all .2s}.btn-secondary:hover{background:var(--color-accent-light)}.btn-large{display:inline-block;background:#fff;color:var(--color-primary)!important;padding:1rem 2.5rem;border-radius:50px;text-decoration:none;font-size:1.2rem;font-weight:600;transition:transform .2s}.btn-large:hover{transform:scale(1.02)}.btn-outline{display:inline-flex;align-items:center;gap:8px;color:var(--color-primary)!important;text-decoration:none;font-weight:600}.btn-outline:hover{color:var(--color-primary-dark)!important}.page-container{max-width:1200px;margin:0 auto;padding:2rem}.page-title{font-size:2.8rem;color:var(--color-text);margin-bottom:2rem;border-bottom:3px solid var(--color-primary);display:inline-block;padding-bottom:.5rem}.hero{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center;max-width:1200px;margin:0 auto;padding:3rem 2rem}.hero h1{font-size:2.8rem;color:var(--color-text);margin-bottom:1rem;line-height:1.2}.hero-subtitle{font-size:1.2rem;color:var(--color-text-light);margin-bottom:2rem}.hero-buttons{display:flex;gap:1rem}.hero-image img{width:100%;border-radius:16px;box-shadow:0 20px 40px #4d6dff1a}.cta{background:linear-gradient(135deg,var(--color-primary-dark) 0%,var(--color-primary) 100%);color:#fff;text-align:center;padding:4rem 2rem;border-radius:24px;margin:3rem auto;max-width:1200px}.cta h2{font-size:2.2rem;margin-bottom:1rem}.cta p{color:var(--color-accent-light);margin-bottom:1.5rem}@media(max-width:992px){.footer-container{grid-template-columns:1fr 1fr}.footer-legal{grid-column:span 2;text-align:center}}@media(max-width:768px){.site-nav,.desktop-only{display:none!important}.menu-toggle{display:block}.header-container{padding:.5rem 0}.logo img{height:40px}.hero{grid-template-columns:1fr;padding:2rem 1.5rem}.hero h1{font-size:2rem}.hero-buttons{flex-direction:column}.page-title{font-size:2rem}.footer-container{grid-template-columns:1fr;text-align:center;gap:1.5rem}.footer-links{align-items:center}.footer-legal{grid-column:span 1}.cta{margin:2rem 1rem;padding:2.5rem 1.5rem}.cta h2{font-size:1.6rem}}@media(max-width:480px){.mobile-menu{max-width:100%}.btn-contacto span{display:none}}::view-transition-old(root){animation:fade-out .2s ease-out forwards}::view-transition-new(root){animation:fade-in .3s ease-in forwards}@keyframes fade-out{0%{opacity:1}to{opacity:0}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){::view-transition-old(root),::view-transition-new(root){animation:none!important}}
