:root{--primary-rgb:10,37,64;--primary:#0a2540;--secondary:#00d4b2;--accent-usa:#0a3161;--accent-mex:#006847;--accent-can:#da291c;--page-bg:#f4f7fa;--surface:#ffffff;--surface-strong:#1e293b;--text-main:#1e293b;--text-muted:#64748b;--border:#e2e8f0;--card-radius:12px}body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;background-color:var(--page-bg);color:var(--text-main);overflow-x:hidden;line-height:1.6}.custom-card{background-color:var(--surface);border:1px solid var(--border);border-radius:var(--card-radius);box-shadow:0 4px 6px -1px rgba(0,0,0,0.05),0 2px 4px -1px rgba(0,0,0,0.03);transition:transform 0.2s ease,box-shadow 0.2s ease}.custom-card:hover{transform:translateY(-2px);box-shadow:0 10px 15px -3px rgba(0,0,0,0.08)}.navbar-custom{background-color:rgba(10,37,64,0.95);backdrop-filter:blur(10px);border-bottom:2px solid var(--secondary);z-index:1030}.navbar-brand img{height:40px;object-fit:contain}.navbar-custom .nav-link{color:#f8fafc !important;font-weight:500;transition:color 0.2s}.navbar-custom .nav-link:hover{color:var(--secondary) !important}.hero-section{padding:120px 0 80px 0;background:linear-gradient(135deg,#0a2540 0%,#111827 100%);color:#ffffff;position:relative;overflow:hidden}.hero-section::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 80% 20%,rgba(0,212,178,0.15) 0%,transparent 50%);pointer-events:none}.hero-title{font-size:2.8rem;font-weight:800;line-height:1.2;letter-spacing:-0.02em}.hero-title span{color:var(--secondary)}.host-bar{height:6px;background:linear-gradient(to right,var(--accent-usa) 33.3%,var(--accent-mex) 33.3%,var(--accent-mex) 66.6%,var(--accent-can) 66.6%)}.group-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem}.group-card{background:var(--surface);border-radius:var(--card-radius);border-top:4px solid var(--primary)}.group-header{background:rgba(10,37,64,0.05);padding:10px 15px;font-weight:700;color:var(--primary)}.table-responsive-custom{overflow-x:auto;-webkit-overflow-scrolling:touch}.badge-live{background-color:var(--accent-can);color:white;animation:pulse-live 1.8s infinite}@keyframes pulse-live{0%{opacity:1}50%{opacity:0.5}100%{opacity:1}}.accordion-button:not(.collapsed){background-color:rgba(0,212,178,0.1);color:var(--primary)}@media (max-width:991.98px){.hero-title{font-size:2.2rem}.hero-section{padding:100px 0 60px 0}}