/*
 * Final typography scale
 * Keeps the visual hierarchy consistent across the versioned section styles.
 */

:root {
    --type-section: clamp(2.35rem, 3.15vw, 3.65rem);
    --type-section-compact: clamp(2.15rem, 2.75vw, 3.2rem);
    --type-statement: clamp(2.4rem, 3.15vw, 3.65rem);
    --type-group: clamp(1.5rem, 1.8vw, 2rem);
    --type-feature: clamp(1.95rem, 2.45vw, 2.75rem);
    --type-card: clamp(1.2rem, 1.35vw, 1.5rem);
}

/* Primary section headings */
.service-section .section-heading .section-title,
.briefing-intro .section-title,
.sulfur-copy .section-title,
.regional-market-panel .section-title {
    font-size: var(--type-section);
    line-height: 1.28;
    letter-spacing: -0.025em;
}

/* Longer headings need a slightly quieter scale to preserve readable line lengths. */
.khorasan-copy .section-title,
.control-section .section-heading .section-title,
.inquiry-copy .section-title {
    max-width: 19ch;
    font-size: var(--type-section-compact);
    line-height: 1.32;
    letter-spacing: -0.02em;
}

.service-section .section-heading .section-title {
    max-width: 19ch;
}

/* Operational statement and experience marker */
.operation-statement h2 {
    max-width: 20ch;
    font-size: var(--type-statement);
    line-height: 1.3;
    letter-spacing: -0.025em;
}

.operation-year strong {
    font-size: clamp(4.75rem, 7vw, 7.25rem);
    line-height: 0.9;
}

/* Briefing groups */
.briefing-group h3,
.briefing-group:nth-child(2) h3 {
    font-size: var(--type-group);
    line-height: 1.42;
    letter-spacing: -0.015em;
}

.briefing-pair h4 {
    font-size: clamp(1.05rem, 1.15vw, 1.3rem);
    line-height: 1.5;
}

/* Service and benefit cards */
.ledger-item h3 {
    font-size: clamp(1.25rem, 1.5vw, 1.7rem);
    line-height: 1.45;
}

.control-feature h3 {
    max-width: 14ch;
    font-size: var(--type-feature);
    line-height: 1.35;
    letter-spacing: -0.02em;
}

.control-note h3 {
    font-size: var(--type-card);
    line-height: 1.45;
    letter-spacing: -0.01em;
}

/* Collaboration process */
.process-spine > h2 {
    max-width: 20ch;
    font-size: var(--type-section-compact);
    line-height: 1.32;
    letter-spacing: -0.02em;
}

.process-spine li h3 {
    font-size: clamp(1.02rem, 1.05vw, 1.16rem);
    line-height: 1.5;
}

@media (max-width: 64rem) {
    :root {
        --type-section: clamp(2.25rem, 4.8vw, 3.25rem);
        --type-section-compact: clamp(2.1rem, 4.5vw, 3rem);
        --type-statement: clamp(2.3rem, 4.8vw, 3.25rem);
        --type-feature: clamp(1.9rem, 4vw, 2.55rem);
    }

    .operation-year strong {
        font-size: clamp(4.4rem, 10vw, 6.25rem);
    }
}

@media (max-width: 47.99rem) {
    :root {
        --type-section: clamp(2rem, 8vw, 2.65rem);
        --type-section-compact: clamp(1.95rem, 7.6vw, 2.55rem);
        --type-statement: clamp(2rem, 8vw, 2.7rem);
        --type-group: clamp(1.4rem, 5.8vw, 1.8rem);
        --type-feature: clamp(1.8rem, 7.5vw, 2.35rem);
        --type-card: clamp(1.16rem, 4.8vw, 1.38rem);
    }

    .service-section .section-heading .section-title,
    .briefing-intro .section-title,
    .khorasan-copy .section-title,
    .sulfur-copy .section-title,
    .regional-market-panel .section-title,
    .control-section .section-heading .section-title,
    .inquiry-copy .section-title,
    .operation-statement h2,
    .process-spine > h2 {
        max-width: 100%;
        letter-spacing: -0.015em;
    }

    .operation-year strong {
        font-size: clamp(4rem, 20vw, 5.5rem);
    }

    .briefing-pair h4 {
        font-size: clamp(1.02rem, 4.5vw, 1.2rem);
    }

    .ledger-item h3 {
        font-size: clamp(1.2rem, 5vw, 1.5rem);
    }

    .control-feature h3 {
        max-width: 15ch;
    }
}
