:root {
  /* Cores primárias oficiais */
  --blue: #325FEC;
  --blue-dark: #00203E;
  --orange: #FF6200;
  --white: #FFFFFF;
  --black: #000000;

  /* Cores secundárias oficiais, uso funcional */
  --turquoise: #00A4B7;
  --cyan: #00B1EB;
  --lavender: #A78BFA;
  --green: #47AF64;
  --grey-dark: #666666;
  --grey-mid: #B2B2B2;
  --grey-light: #D9D9D9;

  /* Transparências derivadas das cores oficiais */
  --tint-blue: rgba(50, 95, 236, 0.055);
  --tint-dark: rgba(0, 32, 62, 0.035);
  --line-dark: rgba(0, 32, 62, 0.14);
  --line-light: rgba(255, 255, 255, 0.18);
  --line-light-2: rgba(255, 255, 255, 0.34);
  --veil-dark: rgba(0, 32, 62, 0.74);
  --veil-dark-soft: rgba(0, 32, 62, 0.45);
  --shadow-panel: 0 28px 56px -28px rgba(0, 32, 62, 0.3);
  --shadow-bar: 0 10px 24px -22px rgba(0, 32, 62, 0.55);
  --shadow-lift: 0 18px 32px -24px rgba(0, 32, 62, 0.35);

  --font-display: "Poppins", "Segoe UI", system-ui, sans-serif;
  --font-body: "Noto Sans", "Segoe UI", system-ui, sans-serif;

  --shell: 1280px;
  --gutter: 32px;
  --measure: 62ch;

  --header-h: 80px;
  --util-h: 36px;
  --subnav-h: 56px;
  --anchor-offset: calc(var(--header-h) + var(--subnav-h) + 20px);

  /* Geometria oficial: 20° */
  --slant: 20deg;
  --notch: 64px;
  --notch-x: 23px;
  --notch-lg: 104px;
  --notch-lg-x: 38px;

  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 24px;
  --space-6: 32px;
  --space-7: 48px;
  --space-8: 64px;
  --space-9: 96px;
  --space-10: 128px;
  --section-y: clamp(64px, 8vw, 112px);

  --ease: cubic-bezier(0.2, 0.7, 0.3, 1);
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --t-fast: 150ms;
  --t-mid: 320ms;
  --t-slow: 560ms;
}

@media (max-width: 1023px) {
  :root {
    --header-h: 68px;
    --subnav-h: 52px;
    --notch: 44px;
    --notch-x: 16px;
    --notch-lg: 64px;
    --notch-lg-x: 23px;
  }
}

@media (max-width: 767px) {
  :root {
    --gutter: 20px;
    --header-h: 64px;
  }
}
