/* ==========================================================================
   NEOTEC — Typography tokens
   Source: Neotec Brand Guideline v.01, "Tipografia & Uso de Fonte"
   Real brand webfonts, provided by the user: Satoshi (Regular/Medium/Bold)
   and Switzer (Thin/Regular/Medium). Files in assets/fonts/.
   ========================================================================== */

@font-face {
  font-family: 'Satoshi';
  src: url('../assets/fonts/Satoshi-Regular.otf') format('opentype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Satoshi';
  src: url('../assets/fonts/Satoshi-Medium.otf') format('opentype');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Satoshi';
  src: url('../assets/fonts/Satoshi-Bold.otf') format('opentype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Switzer';
  src: url('../assets/fonts/Switzer-Thin.otf') format('opentype');
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Switzer';
  src: url('../assets/fonts/Switzer-Regular.otf') format('opentype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Switzer';
  src: url('../assets/fonts/Switzer-Medium.otf') format('opentype');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

:root {
  /* ---- Font families ---- */
  --font-display: 'Satoshi', -apple-system, BlinkMacSystemFont, sans-serif; /* Satoshi Medium — H1/display */
  --font-body: 'Switzer', -apple-system, BlinkMacSystemFont, sans-serif;    /* Switzer Regular — everything else */

  /* ---- Tracking ---- */
  --tracking-display: -0.02em;  /* -2%, per guideline H1 spec */
  --tracking-normal: 0em;

  /* ---- Type scale — "Escala Tipográfica" from guideline (size/line-height) ---- */
  --text-h1-size: 48px;
  --text-h1-line: 56px;
  --text-h1-tracking: var(--tracking-display);
  --text-h1-weight: 500; /* Satoshi Medium */
  --text-h1-family: var(--font-display);

  --text-h2-size: 28px;
  --text-h2-line: 36px;
  --text-h2-tracking: var(--tracking-normal);
  --text-h2-weight: 400; /* Switzer Regular */
  --text-h2-family: var(--font-body);

  --text-h3-size: 20px;
  --text-h3-line: 28px;
  --text-h3-tracking: var(--tracking-normal);
  --text-h3-weight: 400;
  --text-h3-family: var(--font-body);

  --text-body-size: 16px;
  --text-body-line: 24px;
  --text-body-tracking: var(--tracking-normal);
  --text-body-weight: 400;
  --text-body-family: var(--font-body);

  --text-caption-size: 12px;
  --text-caption-line: 16px;
  --text-caption-tracking: var(--tracking-normal);
  --text-caption-weight: 400;
  --text-caption-family: var(--font-body);

  /* ---- Extra UI-scale sizes not in the brand sheet but needed for products ---- */
  --text-display-size: 64px;   /* hero/landing oversize, same family/tracking as H1 */
  --text-display-line: 68px;
  --text-label-size: 13px;     /* buttons, form labels, tags */
  --text-label-line: 16px;
  --text-label-weight: 500;
}
