:root {
  --brand-primary: #0A4A6B;
  --brand-primary-dark: #052F4A;
  --brand-primary-light: #1A5D7A;
  --brand-secondary: #8C9DA5;
  --brand-secondary-light: #A0B0B8;
  --brand-accent: #D35400;
  --brand-accent-light: #E86A0A;
  --brand-accent-dark: #B84800;
  --brand-neutral: #1A1A2E;
  --brand-neutral-light: #2D2D44;
  --brand-white: #FFFFFF;
  --brand-bg: #F4F6F8;
  --brand-bg-alt: #E8ECF0;
  --brand-text: #1A1A2E;
  --brand-text-muted: #8C9DA5;
}

body {
  background: var(--brand-bg);
  color: var(--brand-text);
  font-family: 'Segoe UI', system-ui, -apple-system, sans-serif;
}

/* ── Buttons ── */
.btn-brand-primary {
  background: var(--brand-primary);
  color: var(--brand-white);
  border: none;
  transition: background .2s, transform .2s, box-shadow .2s;
}
.btn-brand-primary:hover {
  background: var(--brand-primary-dark);
  color: var(--brand-white);
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(10, 74, 107, .3);
}

.btn-brand-accent {
  background: var(--brand-accent);
  color: var(--brand-white);
  border: none;
  transition: background .2s, transform .2s, box-shadow .2s;
}
.btn-brand-accent:hover {
  background: var(--brand-accent-dark);
  color: var(--brand-white);
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(211, 84, 0, .3);
}

.btn-brand-outline {
  background: transparent;
  color: var(--brand-primary);
  border: 2px solid var(--brand-primary);
  transition: background .2s, color .2s, transform .2s;
}
.btn-brand-outline:hover {
  background: var(--brand-primary);
  color: var(--brand-white);
  transform: translateY(-1px);
}

.btn-brand-outline-light {
  background: transparent;
  color: var(--brand-white);
  border: 2px solid rgba(255,255,255,.5);
  transition: background .2s, transform .2s;
}
.btn-brand-outline-light:hover {
  background: rgba(255,255,255,.15);
  color: var(--brand-white);
  transform: translateY(-1px);
}

/* ── Links ── */
a { color: var(--brand-primary); transition: color .2s; }
a:hover { color: var(--brand-accent); }

/* ── Text colors ── */
.text-brand-primary { color: var(--brand-primary) !important; }
.text-brand-accent  { color: var(--brand-accent) !important; }
.text-brand-neutral { color: var(--brand-neutral) !important; }
.text-brand-muted   { color: var(--brand-text-muted) !important; }

/* ── Backgrounds ── */
.bg-brand-primary { background: var(--brand-primary) !important; }
.bg-brand-accent  { background: var(--brand-accent) !important; }
.bg-brand-neutral { background: var(--brand-neutral) !important; }
.bg-brand-light   { background: var(--brand-bg) !important; }

/* ── Badges ── */
.badge-brand {
  background: var(--brand-accent);
  color: var(--brand-white);
  font-size: 10px;
  padding: 2px 7px;
  border-radius: 10px;
}

/* ── Cards ── */
.card-brand {
  border: none;
  background: var(--brand-white);
  border-radius: 12px;
  box-shadow: 0 1px 4px rgba(0,0,0,.06);
  transition: box-shadow .2s, transform .2s;
}
.card-brand:hover {
  box-shadow: 0 4px 16px rgba(0,0,0,.1);
  transform: translateY(-2px);
}

/* ── Form elements ── */
.form-brand:focus {
  border-color: var(--brand-primary);
  box-shadow: 0 0 0 3px rgba(10, 74, 107, .15);
}

/* ── Section backgrounds ── */
.section-primary {
  background: var(--brand-primary);
  color: var(--brand-white);
}
.section-alt {
  background: var(--brand-bg-alt);
}
