:root {
  /* Baqueiro Desarrollo Web · tokens v2.0 · outubro 2026 */

  /* navy (marca = 700) */
  --bq-navy-50: #F1F5FE;
  --bq-navy-100: #E0E8F9;
  --bq-navy-200: #C2D1F3;
  --bq-navy-300: #95ADE5;
  --bq-navy-400: #6583CE;
  --bq-navy-500: #3D5CB5;
  --bq-navy-600: #2B4696;
  --bq-navy-700: #1A2F70;
  --bq-navy-800: #13224F;
  --bq-navy-900: #0A1636;
  --bq-navy-950: #050C20;

  /* ouro (marca = 400) */
  --bq-gold-50: #FFFAE8;
  --bq-gold-100: #FFF2C6;
  --bq-gold-200: #FFE490;
  --bq-gold-300: #FFD456;
  --bq-gold-400: #FDC82C;
  --bq-gold-500: #E7AD00;
  --bq-gold-600: #C48D02;
  --bq-gold-700: #93660D;
  --bq-gold-800: #785214;
  --bq-gold-900: #57380E;

  /* neutros */
  --bq-neutral-0: #FFFFFF;
  --bq-neutral-50: #F6F7FA;
  --bq-neutral-100: #ECEEF4;
  --bq-neutral-200: #DCE0E9;
  --bq-neutral-300: #BEC4D2;
  --bq-neutral-400: #8F97AB;
  --bq-neutral-500: #667087;
  --bq-neutral-600: #4B5468;
  --bq-neutral-700: #363D50;
  --bq-neutral-800: #232A3B;
  --bq-neutral-900: #141927;

  /* funcionais */
  --bq-success: #1E7F4F;
  --bq-success-bg: #E6F4EC;
  --bq-warning: #9A5B00;
  --bq-warning-bg: #FFF4DC;
  --bq-error: #B3261E;
  --bq-error-bg: #FCE9E7;
  --bq-info: #3D5CB5;
  --bq-info-bg: #F1F5FE;

  /* papeis */
  --bq-brand: var(--bq-navy-700);
  --bq-accent: var(--bq-gold-400);
  --bq-text: var(--bq-neutral-800);
  --bq-text-muted: var(--bq-neutral-500);
  --bq-heading: var(--bq-navy-700);
  --bq-link: var(--bq-navy-500);
  --bq-link-hover: var(--bq-navy-600);
  --bq-bg: var(--bq-neutral-0);
  --bq-bg-alt: var(--bq-neutral-50);
  --bq-bg-dark: var(--bq-navy-700);
  --bq-bg-deep: var(--bq-navy-900);
  --bq-border: var(--bq-neutral-200);

  /* tipografia */
  --bq-font-display: 'League Spartan', Arial, sans-serif;
  --bq-font-body: 'Inter', Verdana, Arial, sans-serif;
  --bq-font-mono: 'JetBrains Mono', Consolas, monospace;
  --bq-text-display: clamp(2.375rem, 1.6rem + 3.2vw, 3.5rem);
  --bq-text-h1: clamp(2rem, 1.5rem + 2.2vw, 2.75rem);
  --bq-text-h2: clamp(1.7rem, 1.35rem + 1.5vw, 2.125rem);
  --bq-text-h3: clamp(1.3125rem, 1.15rem + .7vw, 1.5rem);
  --bq-text-h4: 1.1875rem;
  --bq-text-lead: 1.25rem;
  --bq-text-body: 1.0625rem;
  --bq-text-small: .875rem;
  --bq-text-eyebrow: .8125rem;
  --bq-leading-body: 1.65;
  --bq-leading-tight: 1.1;

  /* espaco (base 8) */
  --bq-space-1: 4px;
  --bq-space-2: 8px;
  --bq-space-3: 12px;
  --bq-space-4: 16px;
  --bq-space-5: 24px;
  --bq-space-6: 32px;
  --bq-space-7: 48px;
  --bq-space-8: 64px;
  --bq-space-9: 96px;
  --bq-space-10: 128px;

  /* forma */
  --bq-radius-sm: 6px;
  --bq-radius-md: 12px;
  --bq-radius-lg: 20px;
  --bq-radius-pill: 999px;
  --bq-shadow: 0 1px 2px rgb(10 22 54 / .08), 0 8px 24px rgb(10 22 54 / .10);
  --bq-focus: 0 0 0 2px #fff, 0 0 0 4px var(--bq-navy-500);
  --bq-container: 1200px;
  --bq-measure: 720px;
}

/* base sugerida */
body { font-family: var(--bq-font-body); font-size: var(--bq-text-body); line-height: var(--bq-leading-body); color: var(--bq-text); font-feature-settings: "cv11", "ss01"; }
h1, h2, h3, h4 { font-family: var(--bq-font-display); color: var(--bq-heading); line-height: var(--bq-leading-tight); letter-spacing: -0.01em; }
h1 { font-size: var(--bq-text-h1); font-weight: 700; } h2 { font-size: var(--bq-text-h2); font-weight: 700; } h3 { font-size: var(--bq-text-h3); font-weight: 600; }
a { color: var(--bq-link); text-underline-offset: 3px; } a:hover { color: var(--bq-link-hover); text-decoration-thickness: 2px; }
:focus-visible { outline: none; box-shadow: var(--bq-focus); border-radius: var(--bq-radius-sm); }
.bq-eyebrow { font-family: var(--bq-font-mono); font-size: var(--bq-text-eyebrow); font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--bq-gold-700); }
.bq-btn { display: inline-flex; align-items: center; gap: 8px; min-height: 48px; padding: 0 22px; border-radius: var(--bq-radius-sm); font: 600 1rem/1 var(--bq-font-body); text-decoration: none; border: 1.5px solid transparent; }
.bq-btn--primary { background: var(--bq-gold-400); color: var(--bq-navy-700); } .bq-btn--primary:hover { background: var(--bq-gold-300); } .bq-btn--primary:active { background: var(--bq-gold-500); }
.bq-btn--secondary { background: transparent; color: var(--bq-navy-700); border-color: var(--bq-navy-700); } .bq-btn--secondary:hover { background: var(--bq-navy-700); color: #fff; }
.bq-card { background: #fff; border-radius: var(--bq-radius-md); box-shadow: var(--bq-shadow); padding: var(--bq-space-6); }
