/* Global Typography Override - Sofia Sans */

* {
  font-family: 'Sofia Sans', sans-serif !important;
  font-optical-sizing: auto;
}

/* Excluir Font Awesome y otros iconos de la tipografía personalizada */
.fa,
.fas,
.far,
.fal,
.fab,
.fa-solid,
.fa-regular,
.fa-light,
.fa-brands,
[class*="fa-"],
[class*="fas-"],
[class*="far-"],
[class*="fal-"],
[class*="fab-"],
.icon,
.ico,
.glyphicon,
.material-icons,
.mdi,
[class*="icon-"],
[class*="ico-"] {
  font-family: "Font Awesome 6 Free", "Font Awesome 6 Pro", "Font Awesome 6 Brands", "Font Awesome 5 Free", "Font Awesome 5 Pro", "Font Awesome 5 Brands", "FontAwesome" !important;
  font-optical-sizing: auto !important;
}

h1, h2, h3, h4, h5, h6 {
  font-family: 'Sofia Sans', sans-serif !important;
  font-optical-sizing: auto;
}

h1 { font-weight: 700 !important; }
h2, h3 { font-weight: 600 !important; }
h4, h5, h6 { font-weight: 500 !important; }

.btn {
  font-family: 'Sofia Sans', sans-serif !important;
  font-optical-sizing: auto;
  font-weight: 600 !important;
}

.navbar-nav .nav-link {
  font-family: 'Sofia Sans', sans-serif !important;
  font-optical-sizing: auto;
  font-weight: 500 !important;
}

.card-title {
  font-family: 'Sofia Sans', sans-serif !important;
  font-optical-sizing: auto;
  font-weight: 600 !important;
}

.form-label {
  font-family: 'Sofia Sans', sans-serif !important;
  font-optical-sizing: auto;
  font-weight: 500 !important;
}

.table th {
  font-family: 'Sofia Sans', sans-serif !important;
  font-optical-sizing: auto;
  font-weight: 600 !important;
}
