/* ION Group: firma accesible y adaptable, compartida entre sistemas. */
.ion-company { box-sizing:border-box; display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:12px 20px; max-width:100%; margin:24px auto 12px; padding:16px 20px; border:1px solid #ffffff30; border-radius:16px; background:#18202b; color:#f1f5f9; font:400 13px/1.5 system-ui,sans-serif; }
.ion-company > a { display:inline-flex; align-items:center; justify-content:center; min-height:44px; max-width:100%; }
.ion-company img { display:block; width:156px; max-width:100%; height:auto; object-fit:contain; }
.ion-company-links { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:4px 16px; min-width:0; }
.ion-company .ion-company-links a { display:inline-flex; align-items:center; min-height:44px; color:#e2e8f0; text-decoration:none; overflow-wrap:anywhere; }
.ion-company a:hover { color:#fff; text-decoration:underline; text-underline-offset:4px; }
.ion-company a:focus-visible { outline:3px solid #93c5fd; outline-offset:4px; border-radius:4px; }
.ion-company--system { width:fit-content; }
.ion-top { width:120px; height:auto; max-width:100%; object-fit:contain; padding:8px; border-radius:8px; background:#18202b; }
@media(max-width:480px) { .ion-company { padding:14px; flex-direction:column; gap:6px; } .ion-company-links { flex-direction:column; gap:0; } }
@media print { .ion-company { display:none; } }

/* Paneles internos: firma pequena; las paginas publicas conservan su marca visible. */
.ion-company.ion-company--system { width:fit-content; flex-direction:row; margin:8px auto; padding:0; gap:6px; border:0; border-radius:0; background:transparent; }
.ion-company--system img { width:80px; height:auto; padding:4px 6px; box-sizing:content-box; border-radius:5px; background:#18202b; }
.ion-company--system > a { min-height:44px; }
.ion-company--system .ion-company-links { display:none; }
.ion-top { width:80px; padding:4px 6px; }
