/* =========================================
   SHARED RESPONSIVE TYPOGRAPHY FOR ALL MODULES
   h1 and h2 Headings - Auto-scaling & Word-break Rules
   ========================================= */

/* Base Typography Rules - Apply to all h1 and h2 */
h1,
h2 {
    /* Word-break rules - only between words, never within */
    word-break: normal;
    overflow-wrap: normal;
    white-space: normal;
    hyphens: none;
    -webkit-hyphens: none;

    /* Overflow protection */
    max-width: 100%;
    overflow: visible;
}

/* Desktop - Base Sizes with Auto-scaling */
h1 {
    font-size: clamp(1.5rem, 5vw, 3rem);
    line-height: 1.2;
}

h2 {
    font-size: clamp(1rem, 4vw, 2.2rem);
    line-height: 1.2;
}

/* Tablet - 1024px */
@media (max-width: 1024px) {
    h1 {
        font-size: clamp(1.3rem, 4vw, 2.5rem);
    }

    h2 {
        font-size: clamp(1rem, 3vw, 1.5rem);
    }
}

/* Mobile - 768px */
@media (max-width: 768px) {
    h1 {
        font-size: clamp(1.2rem, 4vw, 2rem);
    }

    h2 {
        font-size: clamp(1.2rem, 3vw, 1.5rem);
    }
}

/* Extra Small - 380px */
@media (max-width: 380px) {
    h1 {
        font-size: clamp(1rem, 3vw, 1.5rem);
    }

    h2 {
        font-size: clamp(1.0rem, 2.5vw, 1rem);
    }
}

/* Ultra Small - 200px */
@media (max-width: 200px) {
    h1 {
        font-size: clamp(10px, 2.5vw, 12px);
    }

    h2 {
        font-size: clamp(8px, 2vw, 10px);
    }
}