:root {
    /* Fluid typography scale based on clamp(2.5rem, 6vw, 6rem) */
    --font-size-h1: clamp(2.5rem, 6vw, 6rem);
    --font-size-h2: clamp(1rem, 2vw, 1.25rem); /* Protective radiological - small caps */
    --font-size-h3: clamp(3rem, 8vw, 8rem); /* ORO - very large */
    --font-size-destacado: clamp(1.5rem, 4vw, 3rem); /* Destacado */
    --font-size-h4: clamp(1.5rem, 3.5vw, 2.5rem);
    --font-size-h5: clamp(1.25rem, 2.5vw, 1.75rem);
    
    --font-size-base: 1rem;
    --font-size-mini: 0.875rem;
    --font-size-micro: 0.75rem;
}

/* Applying typography styles mapping to the design system */
h1, .text-h1 { 
    font-size: var(--font-size-h1); 
    line-height: 1.1; 
    font-weight: 400; 
}
h2, .text-h2 { 
    font-size: var(--font-size-h2); 
    line-height: 1.2; 
    font-weight: 700; 
    text-transform: uppercase; 
}
h3, .text-h3 { 
    font-size: var(--font-size-h3); 
    line-height: 1; 
    font-weight: 300; 
}
h4, .text-h4 { 
    font-size: var(--font-size-h4); 
    line-height: 1.2; 
    font-weight: 400; 
}
h5, .text-h5 { 
    font-size: var(--font-size-h5); 
    line-height: 1.3; 
    font-weight: 400; 
}

.text-destacado { 
    font-size: var(--font-size-destacado); 
    line-height: 1.4; 
    font-weight: 400;
}
.text-base { 
    font-size: var(--font-size-base); 
    line-height: 1.5; 
}
.text-mini { 
    font-size: var(--font-size-mini); 
    line-height: 1.5; 
}
.text-micro { 
    font-size: var(--font-size-micro); 
    line-height: 1.5; 
}