/* Shared type scale for the public Grow Data Skills pages. */
:root {
    --gds-font: "Euclid Circular", system-ui, sans-serif;
    /* The legacy theme sets the root font size to 10px. */
    --gds-type-page: clamp(32px, 23px + 2.55vw, 60px);
    --gds-type-section: clamp(28px, 23px + 1.45vw, 44px);
    --gds-type-subsection: clamp(22px, 18px + .65vw, 28px);
    --gds-type-card: clamp(18px, 16px + .28vw, 21px);
    --gds-type-body: clamp(16px, 15px + .24vw, 18px);
    --gds-type-small: clamp(14px, 13px + .18vw, 16px);
}
body {
    --font-primary: var(--gds-font);
    --font-secondary: var(--gds-font);
    --font-size-b1: var(--gds-type-body);
    --font-size-b2: var(--gds-type-body);
    --font-size-b3: var(--gds-type-small);
    font-family: var(--gds-font);
    font-size: var(--gds-type-body);
}
body :is(h1, h2, h3, h4, h5, h6, p, button, input, textarea, select, summary) {
    font-family: var(--gds-font) !important;
}
body :is(h1, h2, h3, h4, h5, h6) {
    font-weight: 700;
    overflow-wrap: anywhere;
}
body h1 { font-size: var(--gds-type-page) !important; line-height: 1.08; }
body h2 { font-size: var(--gds-type-section) !important; line-height: 1.16; }
body h3 { font-size: var(--gds-type-subsection) !important; line-height: 1.25; }
body :is(h4, h5, h6) { font-size: var(--gds-type-card) !important; line-height: 1.3; }
body :is(.rbt-card-title, .rbt-testimonial-box .title, .gds-story-card h3, .mentor-name) {
    font-size: var(--gds-type-card) !important;
    line-height: 1.3;
}
body p { font-size: var(--gds-type-body) !important; line-height: 1.6; }
body :is(.gds-hero-kicker, .gds-live-date, .gds-mentor-credentials, .gds-spotlight-label, .gds-spotlight-credentials,
         .gds-path-skills, .gds-story-card figcaption p, .gds-app-label, .gds-community-kicker, .gds-footer-legal p,
         .gds-stack-total) {
    font-size: var(--gds-type-small) !important;
}
body :is(.rbt-meta li, .rating-count, .gds-live-meta li, .gds-stack-topics li, .gds-community-label) {
    font-size: var(--gds-type-small);
}
body :is(.accordion-button, .gds-home-faq summary) { font-size: var(--gds-type-body); line-height: 1.45; }
body :is(.ft-title, .gds-footer nav h2, .gds-support-panel h2) {
    font-size: var(--gds-type-card) !important;
    line-height: 1.3;
}
body .gds-page-intro { padding-block: clamp(24px, 4vw, 48px); }
body .gds-page-intro h1 { margin: 0; }
body .gds-page-intro + .rbt-rbt-course-area { scroll-margin-top: 96px; }
body .gds-stat-value {
    font-size: clamp(26px, 20px + 1vw, 38px) !important;
    font-weight: 700;
    line-height: 1.2;
    margin: 0 0 5px;
}
body .gds-hero-mentor-name {
    color: #fff;
    font-size: clamp(24px, 20px + 1vw, 36px) !important;
    font-weight: 700;
    line-height: 1.2;
    margin: 0 0 8px;
}
body .gds-hero-mentor-name a { color: inherit; }
body .gds-hero-mentor-name a:hover { color: #e1c5ff; }
body .gds-role-label { margin: 0 0 8px; }

.gds-career-hero .gds-hero-grid > div > p:not(.gds-hero-kicker) {
    font-size: clamp(17px, 15px + .3vw, 20px) !important;
}
.gds-career-hero .gds-mentor-profile .gds-mentor-credentials {
    font-size: var(--gds-type-body) !important;
}
.gds-career-hero .gds-mentor-credentials strong { font-size: inherit; }
.gds-career-hero .gds-hero-action,
.gds-site-header .gds-offer-action,
.gds-site-header .header-right .rbt-btn,
#gds-mobile-menu .rbt-btn {
    font-size: var(--gds-type-body) !important;
}
