/**
 * Tipografia unificada para documentos legais (termos.html + modal cadastro).
 * Um único tamanho base; destaque leve só em títulos de seção (h2).
 */

.inst-terms-body,
.signup-scrollable-content {
    font-size: calc(16px * var(--legal-font-scale, 1));
    line-height: 1.6;
    font-weight: 400;
    font-family: 'figtree-regular', Arial, sans-serif;
    color: var(--text-color-2, #1a1a1a);
}

.inst-terms-body p,
.inst-terms-body li,
.signup-scrollable-content p,
.signup-scrollable-content li {
    font-size: inherit;
    line-height: inherit;
    font-weight: 400;
}

.inst-terms-body h1,
.inst-terms-body h2,
.inst-terms-body h3,
.inst-terms-body h4,
.inst-terms-body h5,
.inst-terms-body h6,
.signup-scrollable-content h1,
.signup-scrollable-content h2,
.signup-scrollable-content h3,
.signup-scrollable-content h4,
.signup-scrollable-content h5,
.signup-scrollable-content h6 {
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
    font-weight: 400;
    color: inherit;
    margin: 1.25em 0 0.5em;
    padding: 0;
    position: static;
    display: block;
    text-align: left;
}

/* Títulos de seção principais (ex.: "1. Objetivo", "POLÍTICA DE COOKIES") */
.inst-terms-body h2,
.signup-scrollable-content h2 {
    font-weight: 500;
    color: var(--text-color-2, #1a1a1a);
    margin-top: 1.5em;
}

.inst-terms-body > h2:first-child,
.signup-scrollable-content > h2:first-child,
.inst-terms-body > h1:first-child,
.signup-scrollable-content > h1:first-child {
    margin-top: 0;
}

.inst-terms-body h3,
.signup-scrollable-content h3 {
    font-weight: 400;
    margin-top: 1em;
}

.inst-terms-body .legal-lead,
.signup-scrollable-content .legal-lead {
    font-size: inherit;
    line-height: inherit;
    font-weight: 400;
    margin-bottom: 1em;
}

.inst-terms-body strong,
.inst-terms-body b,
.signup-scrollable-content strong,
.signup-scrollable-content b {
    font-weight: 400;
}

.inst-terms-body a {
    font-weight: 400;
    color: var(--inst-red-2, #e0001a);
    text-decoration: underline;
}

.inst-terms-body a:hover {
    color: var(--inst-red-3, #c41e3a);
}

.signup-scrollable-content a {
    font-weight: 400;
    color: var(--brand-escarlet-color-1, #e0001a);
    text-decoration: underline;
}

.signup-scrollable-content a:hover {
    color: var(--brand-escarlet-color-2, #c41e3a);
}

.inst-terms-body ul,
.signup-scrollable-content ul {
    margin: 0 0 1em;
    padding-left: 1.25rem;
}

.inst-terms-body li,
.signup-scrollable-content li {
    margin-bottom: 0.5em;
}

.signup-scrollable-content h2::after,
.signup-scrollable-content h3::after,
.signup-scrollable-content h4::after,
.signup-scrollable-content h5::after,
.signup-scrollable-content h6::after {
    display: none;
}

/* Página institucional: título da página (fora do corpo do doc) */
.inst-terms-content-card > h1#instTermsTitle {
    font-size: calc(28px * var(--legal-font-scale, 1));
    line-height: 1.2;
    font-weight: 500;
    font-family: 'figtree-medium', Arial, sans-serif;
}

.inst-terms-breadcrumb,
.inst-terms-updated {
    font-weight: 400;
}

/* Modal cadastro: cabeçalho do painel (fora da área rolável) */
.signup-content-section > h1 {
    font-size: calc(1.35rem * var(--legal-font-scale, 1));
    font-weight: 500;
}

.signup-content-section > h2 {
    font-size: calc(1rem * var(--legal-font-scale, 1));
    font-weight: 400;
    color: var(--gray-color-4);
}

.signup-content-section > h2::after {
    display: none;
}

.signup-content-section > p {
    font-size: calc(16px * var(--legal-font-scale, 1));
    font-weight: 400;
}

.signup-scroll-hint {
    font-weight: 400;
}
