/* FIRME FACE® — shared editorial type and spacing roles.
   Loaded last so each section keeps its composition, colors and imagery. */
:root {
  /* Nine fluid roles, shared by every section. */
  --type-display-xl: clamp(2.75rem, 2.1rem + 2.4vw, 4.7rem);
  --type-display-l: clamp(2.5rem, 2rem + 1.9vw, 4.15rem);
  --type-display-m: clamp(1.125rem, .82rem + 1.3vw, 2rem);
  --type-accent-l: clamp(2rem, 1.75rem + 1.1vw, 3.2rem);
  --type-accent-m: clamp(1.25rem, 1.12rem + .4vw, 1.6rem);
  --type-body-l: clamp(1.08rem, 1rem + .28vw, 1.32rem);
  --type-body: clamp(1rem, .95rem + .16vw, 1.09rem);
  --type-small-ui: clamp(.82rem, .77rem + .15vw, .93rem);
  --type-eyebrow: clamp(.68rem, .65rem + .12vw, .78rem);
  --leading-display-xl: 1.01;
  --leading-display: .98;
  --leading-display-m: 1.04;
  --leading-accent: 1.12;
  --leading-body: 1.6;
  --leading-body-l: 1.55;
  --tracking-display: -.025em;
  --tracking-eyebrow: .18em;
  --tracking-button: .04em;
  --space-1: .5rem;
  --space-2: 1rem;
  --space-3: 1.5rem;
  --space-4: 2rem;
  --space-5: 2.5rem;
  --space-6: 3rem;
  --rhythm-eyebrow-heading: var(--space-3);
  --rhythm-heading-body: var(--space-3);
  --rhythm-paragraph: var(--space-2);
  --section-space: clamp(4.5rem, 6vw, 6rem);
  --measure-body: 55ch;
  --measure-editorial: 44ch;
}

/* One eyebrow treatment across the narrative. */
.ff-eyebrow,
.mirror-eyebrow,
.for-whom .fit-header .eyebrow,
.philosophy .universe-copy .eyebrow,
#mentoria .mentorship-intro .eyebrow,
.founder-eyebrow,
.ff-testimonials__eyebrow,
#inscricao .conversion-head .eyebrow,
#inscricao .conversion-form-intro .eyebrow {
  font-family: var(--sans);
  font-size: var(--type-eyebrow);
  font-style: normal;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: var(--tracking-eyebrow);
  text-transform: uppercase;
}
.ff-eyebrow,
.mirror-eyebrow,
.for-whom .fit-header .eyebrow,
.philosophy .universe-copy .eyebrow,
#mentoria .mentorship-intro .eyebrow,
.founder-eyebrow,
.ff-testimonials__eyebrow,
#inscricao .conversion-head .eyebrow {
  margin-bottom: var(--space-3);
}

/* Display hierarchy: H1 remains the largest role; section titles share a scale. */
.ff-copy h1 {
  font-family: var(--serif);
  font-size: var(--type-display-xl);
  font-weight: 500;
  line-height: var(--leading-display-xl);
  letter-spacing: var(--tracking-display);
}
.mirror-intro h2,
.for-whom .fit-header h2,
.philosophy .universe-copy h2,
#mentoria .mentorship-intro h2,
.founder-content h2,
#testimonials-title,
#inscricao .conversion-head h2 {
  font-family: var(--serif);
  font-size: var(--type-display-l);
  font-style: normal;
  font-weight: 400;
  line-height: var(--leading-display);
  letter-spacing: var(--tracking-display);
}
.for-whom .fit-header h2,
.philosophy .universe-copy h2,
.founder-content h2 {
  font-size: var(--type-display-l) !important;
}
#mentoria .mentorship-intro h2 {
  font-size: var(--type-display-l);
  line-height: var(--leading-display);
}
.mirror-intro h2,
#testimonials-title { line-height: var(--leading-display); }
#inscricao .conversion-head h2 { font-size: var(--type-display-l); line-height: var(--leading-display); }

/* Body, introductory text and comfortable line measures. */
.ff-description,
.mirror-support,
.mirror-emphasis,
.mirror-transition,
.philosophy .universe-support,
#mentoria .mentorship-intro .lead,
#mentoria .mentorship-body,
#mentoria .mentorship-accompaniment,
.founder-bio p,
.ff-testimonials__support,
#inscricao .conversion-support {
  font-family: var(--sans);
  font-size: var(--type-body);
  font-weight: 400;
  line-height: var(--leading-body);
}
.ff-description,
.mirror-support,
.mirror-transition,
.philosophy .universe-support,
#mentoria .mentorship-intro .lead,
#mentoria .mentorship-body,
#mentoria .mentorship-accompaniment,
.ff-testimonials__support,
#inscricao .conversion-support { max-width: var(--measure-body); }
.for-whom .fit-header .fit-intro,
.for-whom .fit-transition,
#mentoria .mentorship-lead {
  font-family: var(--sans);
  font-size: var(--type-body-l);
  font-style: normal;
  font-weight: 400;
  line-height: var(--leading-body-l);
  max-width: var(--measure-body);
}
.for-whom .fit-list li,
#mentoria .difference-card p {
  font-family: var(--sans);
  font-size: var(--type-body);
  line-height: var(--leading-body);
}
#mentoria .mentorship-emphasis {
  font-family: var(--serif);
  font-size: var(--type-display-m);
  font-style: normal;
  line-height: var(--leading-display-m);
}
.mirror-thought p {
  font-family: var(--serif);
  font-size: var(--type-accent-m);
  font-style: italic;
  line-height: var(--leading-accent);
}
.founder-bio .founder-listening {
  font-family: var(--sans);
  font-size: var(--type-body-l) !important;
  font-weight: 400;
  line-height: 1.6 !important;
  max-width: 52ch;
}
.founder-bio .founder-credentials,
.founder-bio .founder-credential,
#inscricao .form-shell label,
#inscricao .form-shell input,
#inscricao .form-shell textarea {
  font-family: var(--sans);
  font-style: normal;
}
.founder-bio .founder-credentials { font-size: var(--type-body); }
.founder-bio .founder-credential { font-size: var(--type-small-ui); }
.founder-bio .founder-credential,
.founder-bio .founder-credentials { line-height: var(--leading-body); }
.founder-bio .founder-credentials { max-width: var(--measure-body); }
#inscricao .form-shell label { font-size: var(--type-small-ui); }
#inscricao .form-shell input,
#inscricao .form-shell textarea { font-size: var(--type-body); }
#inscricao .form-shell input::placeholder,
#inscricao .form-shell textarea::placeholder { font-size: var(--type-small-ui); }

/* Emotional passages share Cormorant italic and a calm leading. */
.ff-copy h1 em,
.mirror-emphasis em,
.mirror-transition em,
.for-whom .fit-closing em,
.philosophy .universe-signature em,
#mentoria .mentorship-closing,
.founder-quote,
#inscricao .conversion-head h2 em,
#inscricao .conversion-invitation,
#inscricao .conversion-signature {
  font-family: var(--serif);
  font-style: italic;
  font-weight: 400;
  line-height: var(--leading-accent);
}
.mirror-emphasis em,
.mirror-transition em { font-size: var(--type-accent-l); }
.philosophy .universe-signature {
  font-size: var(--type-accent-l);
  line-height: var(--leading-accent);
}
#mentoria .mentorship-closing { font-size: var(--type-accent-l) !important; }
.founder-quote { font-size: var(--type-accent-l); }
.ff-micro {
  font-family: var(--serif);
  font-size: var(--type-body);
  font-style: italic;
  line-height: var(--leading-accent);
}

/* Navigation and CTAs share legible sizing; shapes and colors stay section-owned. */
.ff-nav,
.ff-copy .ff-button,
.for-whom .fit-closing .fit-cta,
#mentoria .mentorship-cta,
#inscricao .form-shell .form-submit {
  font-family: var(--sans);
  font-size: var(--type-small-ui);
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: var(--tracking-button);
}
#inscricao .form-shell .form-submit { min-height: 52px; }

/* An eight-pixel rhythm, with contextual room for editorial compositions. */
.ff-copy h1 { margin-bottom: var(--space-3); }
.ff-description { margin-bottom: var(--space-3); }
.mirror-intro h2 { margin-bottom: var(--space-3); }
.mirror-support p + p { margin-top: var(--space-2); }
.mirror-emphasis { margin-top: var(--space-3); }
.mirror-transition { margin-top: var(--space-4); }
.for-whom .fit-header .fit-intro { margin-top: var(--space-3); }
.philosophy .universe-support { margin-top: var(--space-3); }
#mentoria .mentorship-intro .lead { margin-top: var(--space-3); }
#mentoria .mentorship-lead { margin-top: var(--space-3); }
.founder-eyebrow { margin-bottom: var(--space-4); }
.founder-content h2 { margin-bottom: var(--space-6); }
.founder-bio .founder-listening + p { margin-top: var(--space-6); }
.founder-bio p + p { margin-top: var(--space-2); }
.founder-bio .founder-credential,
.founder-bio .founder-credentials { margin-top: 1.25rem; }
#inscricao .conversion-head .eyebrow { margin-bottom: var(--space-3); }
#inscricao .conversion-support { margin-top: var(--space-3); }

@media (max-width: 900px) {
  .ff-eyebrow,
  .mirror-eyebrow,
  .for-whom .fit-header .eyebrow,
  .philosophy .universe-copy .eyebrow,
  #mentoria .mentorship-intro .eyebrow,
  .founder-eyebrow,
  .ff-testimonials__eyebrow,
  #inscricao .conversion-head .eyebrow { margin-bottom: var(--space-3); }
  .founder-eyebrow { margin-bottom: var(--space-3); }
  .founder-content h2 { margin-bottom: var(--space-5); }
  .founder-bio .founder-listening + p { margin-top: var(--space-5); }
}

@media (max-width: 599px) {
  .ff-description { max-width: var(--measure-body); }
  #inscricao .conversion-head h2 br { display: none; }
  .founder-content h2 { margin-bottom: var(--space-4); }
  .founder-bio .founder-listening + p { margin-top: 2.25rem; }
  .founder-bio .founder-credential,
  .founder-bio .founder-credentials { margin-top: 1.125rem; }
}

/* Role mapping for editorial details, cards and the final form. */
.ff-copy h1 em,
.mirror-emphasis em,
.mirror-transition em,
.mirror-final,
.for-whom .fit-closing p,
.philosophy .universe-signature,
#mentoria .mentorship-closing,
.ff-testimonials__closing {
  font-family: var(--serif);
  font-size: var(--type-accent-l);
  font-weight: 400;
  line-height: var(--leading-accent);
}
.mirror-thought p,
.mirror-brand span,
#inscricao .conversion-signature,
#inscricao .conversion-invitation {
  font-family: var(--serif);
  font-size: var(--type-accent-m);
  font-style: italic;
  font-weight: 400;
  line-height: var(--leading-accent);
}
.mirror-brand p,
#mentoria .mentorship-emphasis,
#mentoria .difference-card h3,
.founder-indicator strong {
  font-family: var(--serif);
  font-size: var(--type-display-m);
  font-style: normal;
  font-weight: 500;
  line-height: var(--leading-display-m);
}
.ff-trust-inner > span,
.mirror-thought h3,
.ff-testimonials__read-more,
.ff-testimonials__person span,
.footer-credential,
.footer-copyright,
#inscricao .field-error,
#inscricao .form-status {
  font-family: var(--sans);
  font-size: var(--type-small-ui);
  line-height: 1.5;
}
.founder-indicator span {
  font-family: var(--sans);
  font-size: var(--type-eyebrow);
  font-weight: 600;
  line-height: 1.35;
}
.ff-testimonials__quote,
.ff-testimonials__person strong,
.ff-testimonials__support,
.for-whom .fit-list li,
#mentoria .mentorship-accompaniment,
.founder-bio p,
#inscricao .conversion-support {
  font-family: var(--sans);
  font-size: var(--type-body);
  line-height: var(--leading-body);
}
.ff-testimonials__quote { line-height: 1.58; }
.for-whom .fit-header .fit-intro,
#mentoria .mentorship-lead,
.founder-bio .founder-listening {
  font-family: var(--sans);
  font-size: var(--type-body-l) !important;
  line-height: var(--leading-body-l) !important;
}
.ff-testimonials__person span { letter-spacing: normal; }
.ff-testimonials__header h2 { margin-bottom: 0; }
.ff-testimonials__support { margin-top: var(--rhythm-heading-body); }
.for-whom .fit-header .fit-intro,
.philosophy .universe-support,
#mentoria .mentorship-lead,
#inscricao .conversion-support { margin-top: var(--rhythm-heading-body); }
.founder-bio p + p { margin-top: var(--rhythm-paragraph); }
#inscricao .form-shell label,
#inscricao .form-shell input,
#inscricao .form-shell textarea,
#inscricao .form-shell input::placeholder,
#inscricao .form-shell textarea::placeholder {
  font-family: var(--sans);
  font-style: normal;
}
#inscricao .form-shell label,
#inscricao .form-shell input::placeholder,
#inscricao .form-shell textarea::placeholder { font-size: var(--type-small-ui); }
#inscricao .form-shell input,
#inscricao .form-shell textarea { font-size: var(--type-body); }
.ff-copy .ff-button,
.for-whom .fit-closing .fit-cta,
#mentoria .mentorship-cta,
#inscricao .form-shell .form-submit {
  font-family: var(--sans);
  font-size: var(--type-small-ui);
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: var(--tracking-button);
}
