/* =====================================================================
 * Velocity Capital — Brand Tokens (Explainer Shell)
 * Single source of truth. Swap these to rebrand the entire experience.
 * Every red/white surface tagged with [data-velocity-brand] for one-shot swap.
 * ===================================================================== */

:root {
  /* Surfaces */
  --vc-bg:        #FFFFFF;     /* pure white */
  --vc-bg-soft:   #FAFAFA;
  --vc-surface:   #FFFFFF;

  /* Accent — standard red */
  --vc-accent:    #E63946;
  --vc-accent-hi: #C92B38;
  --vc-accent-lo: #FDECEE;     /* 8% red wash for highlights */

  /* Ink */
  --vc-ink:       #000000;
  --vc-ink-mute:  #6B6B6B;
  --vc-ink-soft:  #999999;

  /* Lines */
  --vc-line:      #E5E5E5;
  --vc-line-soft: #F2F2F2;
  --vc-line-strong: #000000;

  /* Type */
  --vc-font-disp: 'Poppins', sans-serif;
  --vc-font-body: 'Lato', sans-serif;

  /* Scale */
  --vc-h1: 32px;
  --vc-h2: 22px;
  --vc-h3: 16px;
  --vc-body: 14px;
  --vc-small: 12px;
  --vc-eyebrow: 10px;
}

* { box-sizing: border-box; }
*, *::before, *::after { border-radius: 0 !important; }

html, body {
  margin: 0;
  padding: 0;
  background: var(--vc-bg);
  color: var(--vc-ink);
  font-family: var(--vc-font-body);
  font-size: var(--vc-body);
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4, h5, h6 {
  font-family: var(--vc-font-disp);
  color: var(--vc-ink);
  margin: 0 0 12px;
  letter-spacing: -0.01em;
}
h1 { font-size: var(--vc-h1); font-weight: 700; line-height: 1.15; }
h2 { font-size: var(--vc-h2); font-weight: 600; line-height: 1.25; }
h3 { font-size: var(--vc-h3); font-weight: 600; line-height: 1.35; }

p { margin: 0 0 12px; color: var(--vc-ink); }
a { color: var(--vc-accent); text-decoration: none; }
a:hover { color: var(--vc-accent-hi); text-decoration: underline; }

.vc-eyebrow {
  font-family: var(--vc-font-body);
  font-size: var(--vc-eyebrow);
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--vc-accent);
}

.vc-mute { color: var(--vc-ink-mute); }
.vc-soft { color: var(--vc-ink-soft); }

/* Buttons */
.vc-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: var(--vc-font-disp);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 10px 18px;
  cursor: pointer;
  border: 1px solid var(--vc-line-strong);
  background: var(--vc-bg);
  color: var(--vc-ink);
  transition: background 0.12s, color 0.12s, border-color 0.12s;
}
.vc-btn:hover { background: var(--vc-ink); color: var(--vc-bg); }
.vc-btn[data-velocity-brand="primary"] {
  background: var(--vc-accent);
  border-color: var(--vc-accent);
  color: var(--vc-bg);
}
.vc-btn[data-velocity-brand="primary"]:hover {
  background: var(--vc-accent-hi);
  border-color: var(--vc-accent-hi);
}
.vc-btn[data-velocity-brand="ghost"] {
  border-color: var(--vc-line);
  color: var(--vc-ink-mute);
}
.vc-btn[data-velocity-brand="ghost"]:hover {
  border-color: var(--vc-ink);
  background: var(--vc-bg);
  color: var(--vc-ink);
}

/* Wordmark */
.vc-wordmark {
  font-family: var(--vc-font-disp);
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: var(--vc-ink);
  display: inline-flex;
  align-items: center;
  gap: 10px;
}
.vc-wordmark::before {
  content: "";
  display: inline-block;
  width: 12px;
  height: 12px;
  background: var(--vc-accent);
}
.vc-wordmark .vc-wordmark-sub {
  font-family: var(--vc-font-body);
  font-size: 10px;
  font-weight: 400;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--vc-ink-mute);
  margin-left: 4px;
}

/* Whitelabel swap marker — visible only with explainer chrome */
.vc-whitelabel-note {
  display: inline-block;
  padding: 3px 8px;
  font-size: 9px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  background: var(--vc-bg-soft);
  border: 1px solid var(--vc-line);
  color: var(--vc-ink-mute);
}

/* Print baseline (each page can extend) */
@media print {
  body { background: #fff; color: #000; }
  .vc-no-print { display: none !important; }
}
