/* ==========================================================================
   TECNOWSKY (TECNO PARISCHEWSKY) - SISTEMA TIPOGRÁFICO OFICIAL
   Familia de Fuentes Locales: Nexa
   Ruta: /assets/images/text/
   Jerarquía Oficial:
     - Nexa Heavy (900): Títulos principales h1
     - Nexa Bold (700): Títulos de segundo nivel h2
     - Nexa Light (300): Títulos h3 y h4
     - Nexa ExtraLight (200): Descripciones, textos descriptivos y contenido secundario
   ========================================================================== */

/* 1. Declaraciones @font-face */

/* Nexa Heavy (900) - Títulos Principales h1 */
@font-face {
    font-family: 'Nexa';
    src: url('/assets/images/text/Nexa-Heavy.ttf') format('truetype');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Nexa Heavy';
    src: url('/assets/images/text/Nexa-Heavy.ttf') format('truetype');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

/* Nexa Bold (700) - Títulos de Segundo Nivel h2 */
@font-face {
    font-family: 'Nexa';
    src: url('/assets/images/text/Nexa%20Bold.otf') format('opentype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Nexa Bold';
    src: url('/assets/images/text/Nexa%20Bold.otf') format('opentype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

/* Nexa Light (300) - Títulos h3 y h4 */
@font-face {
    font-family: 'Nexa';
    src: url('/assets/images/text/Nexa%20Light.otf') format('opentype');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Nexa Light';
    src: url('/assets/images/text/Nexa%20Light.otf') format('opentype');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

/* Nexa ExtraLight (200) - Párrafos, descripciones y contenido secundario */
@font-face {
    font-family: 'Nexa';
    src: url('/assets/images/text/Nexa-ExtraLight.ttf') format('truetype');
    font-weight: 200;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Nexa ExtraLight';
    src: url('/assets/images/text/Nexa-ExtraLight.ttf') format('truetype');
    font-weight: 200;
    font-style: normal;
    font-display: swap;
}

/* Amertha - Tipografía Caligráfica Destacada */
@font-face {
    font-family: 'Amertha';
    src: url('/assets/images/text/Amertha_PERSONAL_USE_ONLY.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

/* 2. Variables CSS Centralizadas en :root */
:root {
    --thm-font: 'Nexa', 'Nexa ExtraLight', sans-serif;
    --thm-font-h1: 'Nexa Heavy', 'Nexa', sans-serif;
    --thm-font-h2: 'Nexa Bold', 'Nexa', sans-serif;
    --thm-font-h3: 'Nexa Light', 'Nexa', sans-serif;
    --thm-font-h4: 'Nexa Light', 'Nexa', sans-serif;
    --thm-font-body: 'Nexa ExtraLight', 'Nexa', sans-serif;
    --font-heading: 'Nexa Bold', 'Nexa', sans-serif;
    --font-body: 'Nexa ExtraLight', 'Nexa', sans-serif;
}

/* 3. Asignación Global de Jerarquía Tipográfica */

/* h1: Títulos Principales -> Nexa Heavy (900) */
h1,
.h1,
.h1-title,
.page-header h1,
.page-header__title,
.banner-one__title,
.main-slider__title,
.hero-title,
.display-hero,
.display-1,
.display-2,
.display-3,
.display-4 {
    font-family: 'Nexa Heavy', 'Nexa', sans-serif;
    font-weight: 900;
}

/* h2: Títulos de Segundo Nivel -> Nexa Bold (700) */
h2,
.h2,
.sec-title h2,
.section-title,
.sec-title__title,
.font-heading,
.tecnowsky-home-title,
.feature-card-title,
.portfolio-details h2,
.blog-page h2,
.contact-main-heading,
.display-5,
.display-6 {
    font-family: 'Nexa Bold', 'Nexa', sans-serif;
    font-weight: 700;
}

/* h3: Títulos de Tercer Nivel -> Nexa Light (300) */
h3,
.h3,
.card-title,
.service-details__title,
.feature-one__title,
.portfolio-details h3,
.blog-page h3,
.services-details__sidebar .sidebar__title,
.tecnowsky-sidebar-title,
.services-details__accordion h3,
.tecnowsky-tagline-badge {
    font-family: 'Nexa Light', 'Nexa', sans-serif;
    font-weight: 300;
}

/* h4: Títulos de Cuarto Nivel -> Nexa Light (300) */
h4,
.h4,
.module-title,
.comment-form__title,
.about-one__content-text2-single h4,
.footer-widget__title,
.portfolio-details h4,
.tecnowsky-module-title,
.tecnowsky-enfoque-text,
.sidebar__contact .text-box h4 {
    font-family: 'Nexa Light', 'Nexa', sans-serif;
    font-weight: 300;
}

/* Descripciones, Textos Descriptivos y Contenido Secundario -> Nexa ExtraLight (200) */
body,
p,
.text,
.desc,
.description,
.sub-title,
.subtitle,
.sec-title__text,
.about-one__content-text,
.about-one__content-text p,
.comment-form__text,
.service-details__text,
.footer-widget__about-text,
.tecnowsky-home-desc,
.feature-card-text,
.portfolio-details p,
.blog-page p,
.text-descriptivo,
.text-muted,
.lead,
.services-details__content-text-box1 p,
.services-details__accordion .acc-content p,
.tecnowsky-cat-tagline,
.tecnowsky-hero-subtitle,
input,
textarea,
select,
button,
label {
    font-family: 'Nexa ExtraLight', 'Nexa', sans-serif;
    font-weight: 200;
}

/* Énfasis y Textos en Negrita */
strong,
b,
.fw-bold,
.fw-bolder,
h1 strong,
h2 strong,
h3 strong,
h4 strong,
p strong {
    font-family: 'Nexa Bold', 'Nexa', sans-serif;
    font-weight: 700;
}

/* 4. Clases de Utilidad Tipográfica Nexa */
.font-brand {
    font-family: 'Nexa', sans-serif;
}

.nexa-heavy {
    font-family: 'Nexa Heavy', 'Nexa', sans-serif;
    font-weight: 900;
}

.nexa-bold {
    font-family: 'Nexa Bold', 'Nexa', sans-serif;
    font-weight: 700;
}

.nexa-light {
    font-family: 'Nexa Light', 'Nexa', sans-serif;
    font-weight: 300;
}

.nexa-extralight {
    font-family: 'Nexa ExtraLight', 'Nexa', sans-serif;
    font-weight: 200;
}
