/* ===================================
   Tipografía Personalizada - Open Sans
   Aplicar en todo el sitio web
   Basado en empaques-para-dispositivos-medicos
====================================== */

/* Importar fuente Open Sans */
@import url('https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,400;0,600;0,700;1,400&display=swap');

/* Aplicar Open Sans Regular (400) al cuerpo del texto y elementos base */
body, 
p, 
div, 
span, 
input, 
textarea, 
select,
label,
li,
td,
th {
    font-family: 'Open Sans', sans-serif !important;
    font-weight: 400 !important;
}

/* Aplicar Open Sans Semibold (600) a títulos y texto resaltado */
h1, h2, h3, h4, h5, h6,
.alt-font,
.main-font,
.font-weight-600,
strong,
b,
.text-bold,
.title,
.heading,
.navbar-brand,
.navbar-nav .nav-link,
.btn,
button {
    font-family: 'Open Sans', sans-serif !important;
    font-weight: 600 !important;
}

/* Aplicar Open Sans Bold (700) a elementos con font-weight-700 */
.font-weight-700,
.alt-font.font-weight-700,
.text-big-h1,
.swiper-slide h1,
.swiper-slide h2,
.slider-medium-screen .swiper-slide h1,
.slider-medium-screen .swiper-slide h2,
.slider-medium-screen .text-big-h1 {
    font-family: 'Open Sans', sans-serif !important;
    font-weight: 700 !important;
}

/* Mantener font-weight específicos para diferentes clases de peso */
.font-weight-100 { font-weight: 100 !important; }
.font-weight-200 { font-weight: 200 !important; }
.font-weight-300 { font-weight: 300 !important; }
.font-weight-400 { font-family: 'Open Sans', sans-serif !important; font-weight: 400 !important; }
.font-weight-500 { font-family: 'Open Sans', sans-serif !important; font-weight: 500 !important; }
.font-weight-600 { font-family: 'Open Sans', sans-serif !important; font-weight: 600 !important; }
.font-weight-700 { font-family: 'Open Sans', sans-serif !important; font-weight: 700 !important; }
.font-weight-800 { font-weight: 800 !important; }
.font-weight-900 { font-weight: 900 !important; }

/* Aplicar a elementos de navegación */
.navbar,
.navbar-nav,
.navbar-nav .nav-link,
.navbar-brand,
header nav .navbar-nav > li > a {
    font-family: 'Open Sans', sans-serif !important;
}

/* Aplicar a formularios */
input, 
textarea, 
select, 
label,
.big-input,
.big-textarea {
    font-family: 'Open Sans', sans-serif !important;
}

/* Aplicar a botones */
.btn,
button,
input[type="submit"],
input[type="button"] {
    font-family: 'Open Sans', sans-serif !important;
}

/* Aplicar a elementos de texto específicos */
.text-white-2,
.text-black,
.text-extra-dark-gray,
.text-dark-gray,
.text-medium-gray,
.text-light-gray,
.text-very-light-gray,
.text-small,
.text-medium,
.text-large,
.text-extra-large,
.text-extra-large-25,
.text-extra-large-30,
.text-big-large,
.title-large-v1,
.title-large,
.title-extra-large {
    font-family: 'Open Sans', sans-serif !important;
}

/* Aplicar a elementos específicos del sitio */
.text-sterimed,
.text-sterimed-color,
.text-solutions-color,
.btn-transparent-sterimed,
.btn-phone-sterimed,
.logo-sterimed,
.logo-grupoeee {
    font-family: 'Open Sans', sans-serif !important;
}

/* Aplicar a elementos de menú y navegación */
.navbar-nav > li > a,
.dropdown-menu > li > a,
.simple-dropdown .dropdown-menu > li a,
nav.navbar.bootsnav ul > li > a {
    font-family: 'Open Sans', sans-serif !important;
}

/* Aplicar a elementos de breadcrumb */
.breadcrumb,
.breadcrumb ul > li,
.breadcrumb ul > li a {
    font-family: 'Open Sans', sans-serif !important;
}

/* Aplicar a elementos de tabla */
table,
thead,
tbody,
tr,
td,
th {
    font-family: 'Open Sans', sans-serif !important;
}

/* Aplicar a elementos de lista */
ul,
ol,
dl,
li {
    font-family: 'Open Sans', sans-serif !important;
}

/* Aplicar a elementos de bloque de cita */
blockquote,
blockquote p {
    font-family: 'Open Sans', sans-serif !important;
}

/* Aplicar a elementos de galería */
.justified-gallery > a > .jg-caption,
.justified-gallery > div > .jg-caption,
.justified-gallery > figure > .jg-caption {
    font-family: 'Open Sans', sans-serif !important;
}

/* Aplicar a elementos de búsqueda */
.search-box input[type="text"],
.search-box input[type="search"] {
    font-family: 'Open Sans', sans-serif !important;
}

/* Aplicar a elementos de modal */
.mfp-close {
    font-family: 'Open Sans', sans-serif !important;
}

/* Aplicar a elementos de imagen button */
.image-button {
    font-family: 'Open Sans', sans-serif !important;
}

/* Aplicar a elementos de dropdown */
.dropdown-style-1 .btn {
    font-family: 'Open Sans', sans-serif !important;
}

/* Asegurar que los placeholders también usen Open Sans */
::-webkit-input-placeholder {
    font-family: 'Open Sans', sans-serif !important;
}
::-moz-placeholder {
    font-family: 'Open Sans', sans-serif !important;
}
:-ms-input-placeholder {
    font-family: 'Open Sans', sans-serif !important;
}

/* ===================================
   EXCLUIR ICONOS DE LA TIPOGRAFÍA PERSONALIZADA
   Los iconos deben mantener su font-family original
   IMPORTANTE: Estas reglas deben ir después de las reglas generales
   para sobrescribir la tipografía aplicada a los iconos
====================================== */

/* Excluir TODOS los elementos <i> con clases de iconos de Font Awesome */
i[class*="fa-"],
i[class^="fa-"],
i.fa-solid,
i.fa-brands,
i.fa-regular,
i.fa-light,
i.fa-thin,
i.fa-duotone,
.fa-solid,
.fa-brands,
.fa-regular,
.fa-light,
.fa-thin,
.fa-duotone,
[class*="fa-solid"],
[class*="fa-brands"],
[class*="fa-regular"] {
    font-family: "Font Awesome 6 Free", "Font Awesome 6 Brands", "Font Awesome 6 Pro" !important;
    font-weight: 900 !important;
}

/* Excluir iconos de Themify */
i[class*="ti-"],
i[class^="ti-"],
.ti-email,
[class*="ti-"] {
    font-family: 'themify' !important;
}

/* Excluir iconos de icon-country y otros iconos personalizados */
.icon-country,
.icon-bar,
[class*="icon-country"],
[class*="icon-bar"] {
    font-family: inherit !important;
}

/* Asegurar que los iconos dentro de elementos mantengan su fuente - mayor especificidad */
.btn i[class*="fa-"],
.btn i[class^="fa-"],
a i[class*="fa-"],
a i[class^="fa-"],
button i[class*="fa-"],
button i[class^="fa-"],
.navbar-nav i[class*="fa-"],
.navbar-nav i[class^="fa-"],
.dropdown-menu i[class*="fa-"],
.dropdown-menu i[class^="fa-"],
header i[class*="fa-"],
header i[class^="fa-"] {
    font-family: "Font Awesome 6 Free", "Font Awesome 6 Brands" !important;
    font-weight: 900 !important;
}

/* Excluir pseudo-elementos before/after que contengan iconos */
[class*="fa-"]:before,
[class*="fa-"]:after,
[class^="fa-"]:before,
[class^="fa-"]:after {
    font-family: "Font Awesome 6 Free", "Font Awesome 6 Brands" !important;
}

[class*="ti-"]:before,
[class*="ti-"]:after,
[class^="ti-"]:before,
[class^="ti-"]:after {
    font-family: 'themify' !important;
}
