/* app.css — Apex Council Global Theme */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;600;700&family=Playfair+Display:wght@600;700&display=swap');

:root {
  /* New Corporate Identity */
  --apex-brand: #002a5c;  /* Navy */
  --apex-hover: #001a3d;  /* Darker Navy */
  --apex-gold: #c5a065;   /* Accent Gold */
  --neutral-gray: #f3f4f6;
}

/* Global Base */
body {
  background: #ffffff;
  color: #1e293b;
  font-family: 'Inter', sans-serif; /* Standard Body Font */
  margin: 0;
  -webkit-font-smoothing: antialiased;
}

/* Standard Headings (Serif) */
h1, h2, h3, h4, h5, .font-serif {
  font-family: 'Playfair Display', serif;
}

/* Navbar */
header {
  background: var(--apex-brand);
}
.nav-link {
  color: rgba(255,255,255,0.9);
  font-weight: 500;
  text-decoration: none;
  transition: all 0.2s ease;
}
.nav-link:hover {
  color: #ffffff;
  border-bottom: 1px solid var(--apex-gold);
}

/* === Button Resets & Global Styles === */
/* Note: We removed the generic 'button' selector to prevent conflicts */

.btn-apex,
input[type="submit"],
a.btn-primary {
  background-color: var(--apex-brand);
  color: #fff;
  border: none;
  border-radius: 6px;
  padding: 0.75rem 1.5rem;
  font-weight: 600;
  cursor: pointer;
  text-align: center;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
  text-decoration: none;
}

.btn-apex:hover,
input[type="submit"]:hover,
a.btn-primary:hover {
  background-color: var(--apex-hover);
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(0, 42, 92, 0.2);
}

/* Secondary Outline Buttons */
.btn-secondary {
  background-color: transparent;
  color: var(--apex-brand);
  border: 1px solid var(--apex-brand);
  border-radius: 6px;
  padding: 0.75rem 1.5rem;
  font-weight: 600;
  text-decoration: none;
  transition: all 0.3s ease;
}
.btn-secondary:hover {
  background-color: var(--neutral-gray);
}

/* Footer */
footer {
  background: #0f172a;
  border-top: 1px solid #1e293b;
  color: #94a3b8;
  font-size: 0.9rem;
  text-align: center;
  padding: 2rem 0;
}