:root{
  /* Institucional */
  --accent:#5A0616;
  --accent-hover:#48050F;
  --brick:#8B2C1A;
  --sand:#D9CCBD;

  /* Texto */
  --ink:#1C1C1C;
  --ink-muted:#5C5C5C;
  --ink-inverse:#FFFFFF;

  /* Superficie */
  --surface:#FFFFFF;
  --surface-alt:#EFEFEF;
  --field:#FAFAFA;
  --line:#E4E4E4;

  /* Semantica */
  --error:#B3261E;
  --success:#1E6E43;

  /* Aliases */
  --text-body:var(--ink);
  --text-secondary:var(--ink-muted);
  --text-on-accent:var(--ink-inverse);
  --text-accent:var(--accent);
  --surface-page:var(--surface);
  --surface-band:var(--surface-alt);
  --surface-card:var(--surface);
  --surface-accent:var(--accent);
  --surface-brick:var(--brick);
  --surface-field:var(--field);
  --border-default:var(--line);
  --border-focus:var(--accent);
  --line-rule:var(--accent);
  --grid-line:var(--line);

  /* Auxiliares desta pagina */
  --rule-inverse:rgba(255,255,255,0.18);
  --link-inverse-rule:rgba(255,255,255,0.35);
  --link-rule:rgba(90,6,22,0.35);
  --photo-scrim:rgba(0,0,0,0.78);
  --photo-scrim-end:rgba(0,0,0,0);
  --dialog-scrim:rgba(0,0,0,0.72);
  --dot-color:rgba(217,204,189,0.09);
  --placeholder:#DADADA;
  --placeholder-ink:#7A7A7A;

  /* Tipografia */
  --font-core:'Inter',Arial,sans-serif;
  --weight-regular:400;
  --weight-medium:500;
  --weight-semibold:600;

  --size-display:clamp(2.4rem,7vw,3.8rem);
  --size-section:clamp(1.75rem,4vw,2.4rem);
  --size-figure:clamp(2.5rem,6vw,3.5rem);
  --size-subtitle:1.25rem;
  --size-card-title:1.125rem;
  --size-body:1rem;
  --size-body-sm:0.875rem;
  --size-eyebrow:0.75rem;
  --size-label:0.75rem;
  --size-source:0.6875rem;
  --size-button:0.875rem;

  --lh-display:1.08;
  --lh-section:1.15;
  --lh-figure:1;
  --lh-subtitle:1.4;
  --lh-body:1.6;
  --lh-body-sm:1.55;
  --lh-eyebrow:1.3;
  --lh-source:1.4;
  --lh-button:1;

  --ls-display:-0.01em;
  --ls-section:-0.01em;
  --ls-figure:-0.02em;
  --ls-eyebrow:0.18em;
  --ls-label:0.1em;
  --ls-button:0.08em;

  /* Espacamento */
  --space-1:4px;
  --space-2:8px;
  --space-3:12px;
  --space-4:16px;
  --space-5:20px;
  --space-6:24px;
  --space-8:32px;
  --space-12:48px;
  --space-16:64px;
  --space-24:96px;
  --space-32:128px;

  --section-py:clamp(64px,9vw,96px);
  --container-px:clamp(24px,5vw,32px);
  --container-max:1200px;
  --container-text:720px;
  --grid-cell:48px;
  --dot-cell:32px;
  --dot-cell-mobile:24px;
  --field-gap:var(--space-5);

  /* Forma */
  --radius-none:0;
  --radius-sm:2px;
  --border-width:1px;
  --shadow-card:0 2px 12px rgba(0,0,0,0.08);
  --rule-width:40px;
  --rule-height:1px;

  /* Movimento */
  --transition-ui:0.15s linear;
  --transition-word:0.32s linear;
  --word-shift:6px;
}
