/* ==========================================================================
   ESTILOS INDEPENDIENTES: NOSOTROS.HTML
   Paleta de Continuidad Institucional con Aislamiento Estructural Completado
   ========================================================================== */

* { margin: 0; padding: 0; box-sizing: border-box; }
body { font-family: Arial, sans-serif; background-color: #0d1b2a; color: #e0e1dd; line-height: 1.6; }
.container { max-width: 1200px; margin: 0 auto; padding: 0 20px; }
.text-center { text-align: center; }
.max-800 { max-width: 800px; margin: 0 auto; }
.align-items-center { align-items: center; }

.top-disclaimer-banner { background-color: #ffb703; color: #023047; padding: 12px 0; font-size: 13px; border-bottom: 3px solid #d90429; }
.container-disclaimer { display: flex; align-items: center; gap: 15px; }

.main-header { background-color: #011627; padding: 20px 0; border-bottom: 1px solid #415a77; }
.header-flex { display: flex; justify-content: space-between; align-items: center; }
.logo-brand { display: flex; align-items: center; gap: 10px; text-decoration: none; }
.logo-text { font-size: 24px; font-weight: bold; color: #ffffff; }
.logo-red { color: #d90429; }
.main-nav { display: flex; gap: 25px; }
.nav-link { color: #e0e1dd; text-decoration: none; font-weight: 600; }
.nav-link.active, .nav-link:hover { color: #d90429; }
.btn-header-action { background: transparent; border: 2px solid #d90429; color: #d90429; padding: 10px 20px; border-radius: 4px; text-decoration: none; font-weight: bold; }

.about-hero { padding: 80px 0; background-color: #1b263b; border-bottom: 2px solid #d90429; }
.badge-about { background-color: #d90429; color: #ffffff; padding: 5px 10px; font-size: 12px; font-weight: bold; text-transform: uppercase; border-radius: 3px; }
.about-hero h1 { font-size: 40px; color: #ffffff; margin-top: 15px; }
.lead-about { font-size: 18px; color: #b5e2fa; margin-top: 15px; }

.corporate-vision { padding: 80px 0; }
.grid-two-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; }
.vision-content h2 { color: #ffffff; font-size: 32px; margin-bottom: 20px; }
.vision-content p { margin-bottom: 15px; color: #e0e1dd; }
.about-img { width: 100%; height: auto; border-radius: 8px; box-shadow: 0 10px 20px rgba(0,0,0,0.4); }

.main-footer { background-color: #011627; padding: 60px 0 20px 0; border-top: 1px solid #415a77; }
.grid-four-columns { display: grid; grid-template-columns: 2fr 1fr 1fr 1fr; gap: 30px; }
.footer-description { color: #778da9; font-size: 14px; }
.footer-navigation-list h4 { color: #ffffff; margin-bottom: 15px; font-size: 14px; text-transform: uppercase; }
.footer-navigation-list ul { list-style: none; }
.footer-navigation-list ul li a { color: #778da9; text-decoration: none; }
.footer-data-item { color: #778da9; font-size: 13px; }
.footer-divider { border: 0; border-top: 1px solid #415a77; margin: 30px 0; }
.footer-disclaimer-legal-box { background-color: #0d1b2a; padding: 20px; border-radius: 4px; }
.footer-disclaimer-legal-box p { font-size: 12px; color: #778da9; line-height: 1.6; }
.footer-bottom-flex { display: flex; justify-content: space-between; align-items: center; margin-top: 20px; }
.copyright, .legal-footer-links a { color: #778da9; font-size: 12px; text-decoration: none; }
.legal-footer-links a { margin-left: 15px; }
.text-white { color: #ffffff; }

@media(max-width: 768px) { .grid-two-columns, .grid-four-columns { grid-template-columns: 1fr; } }