/* ============================================
   MADESA - Tipografía
   ============================================ */

body {
    font-family: var(--font-body);
    font-size: var(--size-base);
    color: var(--text-primary);
}

/* === HEADINGS === */
h1, h2, h3, h4, h5, h6 {
    font-family: var(--font-display);
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: 1px;
    text-transform: uppercase;
}

h1 { font-size: clamp(2rem, 5vw, 3.5rem); }
h2 { font-size: clamp(1.5rem, 3vw, 2.5rem); }
h3 { font-size: clamp(1.25rem, 2vw, 1.75rem); }
h4 { font-size: var(--size-xl); }
h5 { font-size: var(--size-lg); }
h6 { font-size: var(--size-base); }

/* === PÁRRAFOS === */
p {
    font-family: var(--font-body);
    font-weight: 400;
    line-height: 1.75;
    color: var(--text-secondary);
}

/* === UTILIDADES DE TEXTO === */
.text-display {
    font-family: var(--font-display);
    text-transform: uppercase;
    letter-spacing: 2px;
}

.text-hero {
    font-family: var(--font-display);
    font-size: var(--size-hero);
    font-weight: 700;
    line-height: 1.05;
    letter-spacing: 3px;
    text-transform: uppercase;
}

.text-section-title {
    font-family: var(--font-display);
    font-size: var(--size-4xl);
    font-weight: 700;
    letter-spacing: 3px;
    text-transform: uppercase;
    margin-bottom: var(--space-12);
}

.text-label {
    font-family: var(--font-display);
    font-size: var(--size-xs);
    font-weight: 600;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--text-tertiary);
}

.text-primary-color { color: var(--color-primary); }
.text-white         { color: var(--text-primary); }
.text-secondary-c   { color: var(--text-secondary); }
.text-muted         { color: var(--text-tertiary); }
.text-success       { color: var(--color-success); }
.text-warning       { color: var(--color-warning); }
.text-danger        { color: var(--color-danger); }

.text-center { text-align: center; }
.text-right  { text-align: right; }
.text-left   { text-align: left; }

.font-bold   { font-weight: 700; }
.font-medium { font-weight: 500; }
.font-normal { font-weight: 400; }
.font-light  { font-weight: 300; }

.uppercase { text-transform: uppercase; }
.tracking-wide { letter-spacing: 2px; }
.tracking-wider { letter-spacing: 3px; }

/* Highlight / Accent */
.highlight {
    color: var(--color-primary);
}

.highlight-bg {
    background: linear-gradient(135deg, var(--color-primary), var(--color-primary-light));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}
