/* ===== GLOBAL TYPOGRAPHY ===== */

html {
    scroll-behavior: smooth;
    font-size: 16px;
}

body {
    font-family: 'Inter', sans-serif;
    font-size: 1rem;          /* 16px */
    font-weight: 400;
    line-height: 1.8;
    letter-spacing: 0;
    color: #e2e2e2;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

/* ===== SEO OPTIMIZED HEADINGS ===== */

h1 {
    font-size: clamp(2.5rem, 5vw, 4.5rem); /* 40px - 72px */
    line-height: 1.1;
    font-weight: 800;
    letter-spacing: -0.03em;
    margin-bottom: 1rem;
}

h2 {
    font-size: clamp(2rem, 4vw, 3.5rem); /* 32px - 56px */
    line-height: 1.2;
    font-weight: 700;
    letter-spacing: -0.02em;
    margin-bottom: 0.875rem;
}

h3 {
    font-size: clamp(1.5rem, 3vw, 2.25rem); /* 24px - 36px */
    line-height: 1.3;
    font-weight: 600;
    margin-bottom: 0.75rem;
}

h4 {
    font-size: clamp(1.25rem, 2.5vw, 1.75rem); /* 20px - 28px */
    line-height: 1.4;
    font-weight: 600;
}

h5 {
    font-size: 1.125rem; /* 18px */
    line-height: 1.5;
    font-weight: 600;
}

h6 {
    font-size: 1rem; /* 16px */
    line-height: 1.5;
    font-weight: 600;
}

/* ===== PARAGRAPHS ===== */

p {
    font-size: clamp(1rem, 1.2vw, 1.125rem); /* 16px - 18px */
    line-height: 1.8;
    margin-bottom: 1.25rem;
}

/* ===== LINKS ===== */

a {
    text-decoration: none;
    transition: all 0.3s ease;
}

a:hover {
    opacity: 0.9;
}

/* ===== LISTS ===== */

ul,
ol {
    font-size: 1rem;
    line-height: 1.8;
    padding-left: 1.5rem;
}

/* ===== SMALL TEXT ===== */

small {
    font-size: 0.875rem; /* 14px */
    line-height: 1.6;
}

/* ===== BUTTONS ===== */

button,
.btn {
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.4;
}

/* ===== MOBILE OPTIMIZATION ===== */

@media (max-width: 768px) {

    body {
        font-size: 16px;
    }

    h1 {
        line-height: 1.15;
    }

    h2 {
        line-height: 1.2;
    }

    p {
        line-height: 1.75;
    }
}