:root{--color-primary:#154578;--color-secondary:#2f3542;--color-light:#f1f2f6;--color-neutral:#ced6e0;--color-accent:#007dfe;--color-white:#fff;--color-success:#27ae60;--font-primary:"Segoe UI", Tahoma, Geneva, Verdana, sans-serif;--font-size-base:16px;--font-size-lg:1.125rem;--font-size-xl:1.5rem;--font-size-2xl:2rem;--font-size-3xl:2.5rem;--line-height-base:1.6;--line-height-tight:1.2;--spacing-xs:.5rem;--spacing-sm:1rem;--spacing-md:1.5rem;--spacing-lg:2rem;--spacing-xl:3rem;--spacing-xxl:4rem;--border-radius:4px;--border-radius-lg:8px;--border-radius-full:9999px;--shadow-sm:0 2px 4px #0000001a;--shadow-md:0 4px 8px #0000001f;--shadow-lg:0 8px 16px #00000026;--shadow-xl:0 12px 24px #0000002e;--transition-base:.3s ease;--z-sticky:1020;--z-modal-backdrop:1040;--z-modal:1050;--container-max-width:1200px;--container-padding:var(--spacing-md)}@media (prefers-color-scheme:dark){:root{--color-light:#2f3542;--color-secondary:#f1f2f6;--color-white:#1a1a1a}}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:var(--font-size-base)}body{font-family:var(--font-primary);font-size:var(--font-size-base);line-height:var(--line-height-base);color:#1a1a1a;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fff;overflow-x:hidden}h1,h2,h3,h4,h5,h6{line-height:var(--line-height-tight);color:var(--color-primary);font-weight:700}h1{font-size:var(--font-size-3xl)}h2{font-size:var(--font-size-2xl)}h3{font-size:var(--font-size-xl)}h4{font-size:var(--font-size-lg)}p{margin-bottom:var(--spacing-sm)}a{color:inherit;transition:var(--transition-base);text-decoration:none}a:hover{color:var(--color-accent)}img{max-width:100%;height:auto;display:block}ul,ol{list-style:none}button{cursor:pointer;font-family:inherit}.container{max-width:var(--container-max-width);padding:0 var(--container-padding);margin:0 auto}.section{padding:var(--spacing-xxl) 0}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.d-flex{display:flex}.d-grid{display:grid}.align-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mt-xl{margin-top:var(--spacing-xl)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.mb-xl{margin-bottom:var(--spacing-xl)}.p-sm{padding:var(--spacing-sm)}.p-md{padding:var(--spacing-md)}.p-lg{padding:var(--spacing-lg)}.p-xl{padding:var(--spacing-xl)}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--color-light)}::-webkit-scrollbar-thumb{background:var(--color-neutral);border-radius:var(--border-radius)}::-webkit-scrollbar-thumb:hover{background:#007dfe}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@keyframes spin{to{transform:rotate(360deg)}}.loading-spinner{border:3px solid var(--color-neutral);border-top-color:var(--color-accent);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite spin}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.fade-in{animation:.6s fadeIn}@media (max-width:768px){html{font-size:14px}.section{padding:var(--spacing-xl) 0}}.header{box-shadow:var(--shadow-sm);padding:var(--spacing-md) 0;z-index:var(--z-sticky);transition:box-shadow var(--transition-base);background-color:#17355a;position:sticky;top:0}.header.scrolled{box-shadow:var(--shadow-md)}.header-content{justify-content:space-between;align-items:center;display:flex}.logo{align-items:center;text-decoration:none;display:flex}.logo-img{width:auto;height:48px;margin-right:1rem;display:block}.logo-text{flex-direction:column;display:flex}.logo h1{color:#fff;letter-spacing:1px;margin:0;font-size:2.5rem;font-weight:700}.logo .tagline{color:#e8f0f7;opacity:.9;text-transform:uppercase;letter-spacing:2px;margin:-5px 0 0;font-size:.75rem}.menu-toggle{cursor:pointer;padding:var(--spacing-xs);z-index:var(--z-modal);background:0 0;border:none;flex-direction:column;gap:5px;display:flex}.menu-toggle span{width:28px;height:3px;transition:var(--transition-base);background-color:#fff;border-radius:2px}.menu-toggle:hover span{background-color:var(--color-accent)}.menu-overlay{width:100%;height:100%;z-index:var(--z-modal-backdrop);background-color:#00000080;animation:.3s fadeIn;position:fixed;top:0;left:0}@media (max-width:968px){.header{padding:var(--spacing-sm) 0}}@media (max-width:768px){.logo h1{font-size:2rem}.logo .tagline{font-size:.65rem}}@media (max-width:480px){.logo h1{font-size:2rem}.logo .tagline{letter-spacing:1px;font-size:.6rem}.menu-toggle span{width:24px}}.nav-overlay{z-index:1100;opacity:0;visibility:hidden;background-color:#00000080;width:100%;height:100%;transition:opacity .3s,visibility .3s;position:fixed;top:0;left:0}.nav-overlay.active{opacity:1;visibility:visible}.nav-menu{width:320px;max-width:100%;height:100vh;box-shadow:var(--shadow-xl);padding:var(--spacing-lg);z-index:1101;background-color:#fff;transition:right .3s;position:fixed;top:0;right:-100%;overflow-y:auto}.nav-menu.active{right:0}.nav-header{margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:2px solid var(--color-neutral);justify-content:space-between;align-items:center;display:flex}.nav-header h2{color:#17355a;margin:0;font-size:1.5rem}.close-menu{color:#17355a;cursor:pointer;transition:var(--transition-base);padding:var(--spacing-xs);background:0 0;border:none;font-size:1.5rem}.close-menu:hover{color:var(--color-accent)}.nav-list{margin:0;padding:0;list-style:none}.nav-list>li{margin-bottom:var(--spacing-xs)}.nav-link,.nav-dropdown{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm);color:#17355a;border-radius:var(--border-radius);transition:var(--transition-base);cursor:pointer;text-align:left;background:0 0;border:none;width:100%;font-family:inherit;font-size:1rem;text-decoration:none;display:flex}.nav-link:hover,.nav-dropdown:hover,.nav-link.active{color:#007dfe;background-color:#007dfe1f}.nav-link:hover i:first-child,.nav-dropdown:hover i:first-child,.nav-link.active i:first-child{color:#007dfe}.nav-link i:first-child,.nav-dropdown i:first-child{color:#17355a;width:20px;font-size:1.125rem}.submenu-icon{color:#17355a;margin-left:auto;font-size:.875rem}.nav-submenu{margin-top:var(--spacing-xs);margin-left:var(--spacing-lg);padding-left:var(--spacing-md);border-left:2px solid var(--color-neutral);list-style:none}.nav-submenu li{margin-bottom:var(--spacing-xs)}.nav-sublink{padding:var(--spacing-xs) var(--spacing-sm);color:#17355a;border-radius:var(--border-radius);transition:var(--transition-base);justify-content:space-between;align-items:center;font-size:.9rem;text-decoration:none;display:flex}.nav-sublink:hover:not(.disabled){color:#007dfe;background-color:#007dfe1f}.nav-sublink.disabled{color:#aaa;cursor:not-allowed;opacity:.65}.nav-dropdown-item{padding:var(--spacing-xs) var(--spacing-sm);color:#17355a;border-radius:var(--border-radius);transition:var(--transition-base);cursor:pointer;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;width:100%;font-family:inherit;font-size:.9rem;display:flex}.nav-dropdown-item:hover,.nav-dropdown-item.expanded{color:#007dfe;background-color:#007dfe1f}.nav-dropdown-item i{margin-left:auto;font-size:.75rem}.nav-subsubmenu{margin-top:4px;margin-left:var(--spacing-md);padding-left:var(--spacing-sm);border-left:2px solid #007dfe4d;list-style:none}.nav-subsubmenu li{margin-bottom:4px}.nav-subsublink{padding:6px var(--spacing-sm);color:#555;border-radius:var(--border-radius);transition:var(--transition-base);font-size:.85rem;text-decoration:none;display:block}.nav-subsublink:hover{color:#007dfe;background-color:#007dfe1f}.coming-soon-badge{color:#999;margin-left:var(--spacing-sm);font-size:.75rem;font-style:italic;display:inline-block}.nav-submenu li.disabled{pointer-events:none}@media (max-width:768px){.nav-menu{width:85%}.nav-header h2{font-size:1.25rem}.nav-link,.nav-dropdown{padding:var(--spacing-xs) var(--spacing-sm);font-size:.95rem}}@media (max-width:480px){.nav-menu{width:100%;padding:var(--spacing-md);right:-100%}.nav-header{margin-bottom:var(--spacing-md)}.social-links a{width:50px;height:50px;font-size:1.25rem}}.footer{padding:var(--spacing-xxl) 0 var(--spacing-lg);background-color:#17355a;margin-top:0;color:#fff!important}.footer,.footer *,.footer a,.footer a:visited,.footer a:hover,.footer a:active,.footer a:focus{color:#fff!important}.footer-grid{gap:var(--spacing-xl);margin-bottom:var(--spacing-xl);grid-template-columns:repeat(2,minmax(250px,1fr));display:grid}.footer-col h3{margin-bottom:var(--spacing-sm);color:var(--color-white);font-size:1.5rem}.footer-logo-img{width:auto;height:48px;margin-bottom:1rem;display:block}.footer-col h4{margin-bottom:var(--spacing-md);color:var(--color-white);font-size:1.125rem}.footer-col p{margin-bottom:var(--spacing-md);color:var(--color-white);font-size:1rem}.footer-tagline{opacity:1;margin-bottom:var(--spacing-sm);color:var(--color-white);font-size:.875rem}.footer-description{opacity:1;margin-bottom:var(--spacing-md);color:var(--color-white);font-size:.9375rem;line-height:1.6}.footer-contact{margin:0;padding:0;list-style:none}.footer-contact li{align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm);color:var(--color-white);font-size:.9375rem;display:flex}.footer-contact i{color:var(--color-white);flex-shrink:0;width:20px}.footer-bottom{text-align:center;color:var(--color-white);font-size:.875rem}@media (max-width:968px){.footer-grid{gap:var(--spacing-xl);grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.footer{padding:var(--spacing-xl) 0 var(--spacing-md)}.footer-grid{gap:var(--spacing-lg);grid-template-columns:1fr}.footer-col h3{font-size:1.25rem}.footer-col h4{font-size:1rem}}@media (max-width:480px){.footer-bottom{font-size:.8125rem}}.btn{justify-content:center;align-items:center;gap:var(--spacing-xs);text-align:center;border-radius:var(--border-radius);cursor:pointer;transition:var(--transition-base);box-shadow:var(--shadow-sm);white-space:nowrap;border:none;padding:.875rem 2rem;font-size:1rem;font-weight:600;text-decoration:none;display:inline-flex}.btn:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn:active{transform:translateY(0)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-primary{background-color:var(--color-accent);color:var(--color-white)}.btn-primary:hover{color:var(--color-white);background-color:#007dfe}.btn-secondary{background-color:var(--color-primary);color:#fff}.btn-secondary:hover{color:#fff;background-color:#007dfe}.btn-outline{color:var(--color-primary);border:2px solid var(--color-primary);box-shadow:none;background-color:#0000}.btn-outline:hover{color:var(--color-white);background-color:#007dfe;border-color:#007dfe}.btn-sm{padding:.5rem 1rem;font-size:.875rem}.btn-md{padding:.875rem 2rem;font-size:1rem}.btn-lg{padding:1.125rem 2.5rem;font-size:1.125rem}.card{background-color:var(--color-white);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);transition:var(--transition-base);overflow:hidden}.card-hover:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.card-clickable{cursor:pointer}.card-padding-sm{padding:var(--spacing-sm)}.card-padding-md{padding:var(--spacing-md)}.card-padding-lg{padding:var(--spacing-lg)}.whatsapp-float-button{color:#fff;cursor:pointer;z-index:1000;background:linear-gradient(135deg,#25d366 0%,#128c7e 100%);border:none;border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;font-size:32px;transition:all .3s;animation:2s ease-in-out infinite pulse;display:flex;position:fixed;bottom:30px;right:30px;box-shadow:0 4px 16px #25d36666}.whatsapp-float-button:hover{animation:none;transform:scale(1.1);box-shadow:0 6px 24px #007dfe99}.whatsapp-float-button:active{transform:scale(.95)}.whatsapp-float-button i{line-height:1}@keyframes pulse{0%,to{box-shadow:0 4px 16px #25d36666}50%{box-shadow:0 4px 24px #25d366b3}}@media (max-width:768px){.whatsapp-float-button{width:55px;height:55px;font-size:28px;bottom:20px;right:20px}}@media (max-height:700px){.whatsapp-float-button{bottom:20px}}.spinner{color:#2f3542;flex-direction:column;align-items:center;gap:8px;display:flex}.spinner-circle{border:3px solid #007dfe33;border-top-color:var(--color-accent);border-radius:50%;width:36px;height:36px;animation:.8s linear infinite spinner-rotate}.spinner-sm .spinner-circle{border-width:2px;width:24px;height:24px}.spinner-lg .spinner-circle{border-width:4px;width:48px;height:48px}.spinner-label{color:#666;font-size:.95rem}@keyframes spinner-rotate{to{transform:rotate(360deg)}}.alert-overlay{z-index:var(--z-modal);padding:var(--spacing-md);background-color:#0a121c73;justify-content:center;align-items:center;animation:.2s ease-out alert-overlay-fade;display:flex;position:fixed;inset:0}.alert{gap:var(--spacing-sm);padding:var(--spacing-md);border-radius:var(--border-radius-lg);color:#922b21;width:100%;max-width:520px;box-shadow:var(--shadow-lg);background-color:#fdedec;border:1px solid #f5b7b1;flex-direction:column;animation:.24s ease-out alert-pop;display:flex;position:relative}.alert-header{justify-content:space-between;align-items:center;gap:var(--spacing-sm);display:flex}.alert-title{margin-bottom:4px;font-size:1rem;display:block}.alert-message{margin:0;font-size:.95rem}.alert-actions{gap:var(--spacing-xs);flex-wrap:wrap;justify-content:center;display:flex}.alert-action{color:#922b21;border-radius:var(--border-radius);cursor:pointer;transition:var(--transition-base);background-color:#fff;border:1px solid #e6b0aa;padding:8px 12px;font-weight:600}.alert-action:hover{background-color:#f9ebea}.alert-close{color:#922b21;cursor:pointer;border-radius:var(--border-radius);transition:var(--transition-base);background-color:#0000;border:1px solid #e6b0aa;padding:2px;font-size:1rem;line-height:1}.alert-close:hover{background-color:#922b2114;transform:scale(1.05)}@keyframes alert-overlay-fade{0%{opacity:0}to{opacity:1}}@keyframes alert-pop{0%{opacity:0;transform:translateY(6px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.app-layout{flex-direction:column;min-height:100vh;display:flex}.main-content{flex:1}
