/* ==========================================================================
   Global type scale — ~10% sitewide reduction
   Loaded last so it fine-tunes display and body sizes.
   ========================================================================== */

:root {
    --fs-body: 13px;
    --fs-nav: 12px;
    --fs-eyebrow: 10px;
    --fs-btn: 9px;
    --fs-lead: clamp(14px, 1.05vw, 16px);
    --fs-copy: clamp(12px, 1vw, 14px);
    --fs-copy-sm: clamp(11px, 0.9vw, 13px);
    --fs-section-title: clamp(32px, 3.75vw, 70px);
    --fs-hero-title: clamp(32px, 4.65vw, 88px);
    --fs-page-title: clamp(36px, 5vw, 76px);
    --fs-page-title-lg: clamp(40px, 5.4vw, 84px);
    --fs-card-title: clamp(19px, 1.75vw, 25px);
    --fs-card-title-sm: clamp(17px, 1.45vw, 22px);
    --fs-calendar-title: clamp(16px, 1.35vw, 21px);
}

body {
    font-size: var(--fs-body);
}

.site-nav__link,
.mobile-nav__link {
    font-size: var(--fs-nav);
}

/* Homepage hero */
.hero__title {
    font-size: var(--fs-hero-title);
}

/* Section headings */
.what-is__section-title {
    font-size: clamp(26px, 3.2vw, 52px);
}

.what-is__heading {
    font-size: clamp(26px, 3vw, 44px);
}

.upcoming-events__heading,
.partnering__heading,
.scholarship__heading,
.community__heading {
    font-size: var(--fs-section-title);
}

/* Inner page heroes */
.schedule-hero__title {
    font-size: clamp(42px, 5.85vw, 86px);
}

.instructors-hero__title {
    font-size: clamp(38px, 5.2vw, 78px);
}

.founder-hero__title {
    font-size: clamp(36px, 5vw, 72px);
}

.community-page-hero__title {
    font-size: clamp(36px, 4.95vw, 75px);
}

.scholarship-page-hero__title,
.contact-page-hero__title {
    font-size: clamp(32px, 4.5vw, 64px);
}

/* Section & page intros */
.what-is__intro,
.schedule-hero__lead,
.instructors-hero__lead,
.community-page-hero__lead,
.scholarship-page-hero__lead,
.scholarship-page-section__text,
.page-hero-inner__title {
    font-size: var(--fs-lead);
}

.what-is__item-text,
.what-is__meaning-text,
.instructor-card__bio,
.community-page-card__text,
.scholarship-page-timeline__detail,
.schedule-card__description,
.partnering__input,
.partnering__textarea,
.contact-page-form__input,
.contact-page-form__textarea,
.contact-page-form__select {
    font-size: var(--fs-copy);
}

/* Eyebrows & small labels */
.what-is__meaning-lead,
.schedule-hero__eyebrow,
.instructors-hero__eyebrow,
.founder-hero__eyebrow,
.community-page-hero__eyebrow,
.scholarship-page-hero__eyebrow,
.contact-page-hero__eyebrow,
.upcoming-events__day,
.schedule-filters__btn,
.instructor-card__discipline,
.scholarship-page-section__subtitle,
.scholarship-page-timeline__eyebrow,
.contact-page-form__label {
    font-size: var(--fs-eyebrow);
}

/* Pillar & card titles */
.what-is__item-title {
    font-size: clamp(26px, 2.35vw, 34px);
}

.upcoming-events__date-short,
.upcoming-events__event-title {
    font-size: var(--fs-calendar-title);
}

.upcoming-events__event-with,
.upcoming-events__th {
    font-size: var(--fs-copy-sm);
}

.schedule-card__title,
.instructor-card__name,
.community-page-section__title {
    font-size: var(--fs-card-title);
}

.community-page-card__name,
.scholarship-page-section__title,
.scholarship-page-timeline__label {
    font-size: var(--fs-card-title-sm);
}

.instructor-card__placeholder span {
    font-size: clamp(30px, 3.5vw, 42px);
}

/* Buttons */
.site-cta,
.upcoming-events__btn,
.partnering__btn,
.schedule-card__cta,
.scholarship__btn,
.scholarship-page-timeline__btn,
.contact-page-form__btn {
    font-size: var(--fs-btn);
}

/* Footer */
.site-footer__text {
    font-size: var(--fs-copy-sm);
}

.site-footer__legal {
    font-size: clamp(9px, 0.72vw, 10px);
}

/* Community homepage labels */
.community {
    --community-label-h: clamp(16px, 1.5vw, 28px);
}

/* Scholarship homepage */
.scholarship__text {
    font-size: var(--fs-lead);
}

.partnering__label {
    font-size: var(--fs-copy-sm);
}

@media (max-width: 767px) {
    .hero__title {
        font-size: clamp(26px, 7.2vw, 42px);
    }

    .what-is__section-title,
    .upcoming-events__heading,
    .partnering__heading,
    .scholarship__heading,
    .community__heading {
        font-size: clamp(25px, 6.75vw, 36px);
    }

    .what-is__section-title {
        font-size: clamp(22px, 6.2vw, 32px);
    }

    .what-is__heading {
        font-size: clamp(30px, 8.5vw, 42px);
    }

    .what-is__intro {
        font-size: 14px;
    }

    .upcoming-events__calendar {
        min-width: 560px;
    }
}
