/**
 * Main CSS - Minimal custom styles for SEO site
 * Color scheme: Primary #FBC02D (Golden Yellow)
 * Keep this lightweight for fast page load
 */

/* Color Variables */
:root {
  --primary-color: #FBC02D;
  --primary-dark: #E6A300;
  --primary-light: #FFF59D;
  --accent-color: #FF9800;
  --text-dark: #212121;
  --text-medium: #424242;
  --text-light: #757575;
  --bg-light: #FFFDE7;
  --border-color: #E0E0E0;
}

/* Body and typography */
body {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  line-height: 1.6;
  color: var(--text-dark);
  background-color: #ffffff;
}

/* Headings */
h1, h2, h3, h4, h5, h6 {
  color: var(--text-dark);
  font-weight: 600;
}

/* Links */
a {
  color: var(--primary-color);
  text-decoration: none;
  transition: color 0.2s ease;
}

a:hover {
  color: var(--primary-dark);
  text-decoration: underline;
}

/* Primary Buttons - Custom styling for golden yellow */
.btn-primary {
  background-color: var(--primary-color);
  border-color: var(--primary-color);
  color: #000;
  font-weight: 500;
  transition: all 0.2s ease;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
  background-color: var(--primary-dark);
  border-color: var(--primary-dark);
  color: #000;
  box-shadow: 0 2px 8px rgba(251, 192, 45, 0.3);
}

.btn-primary:active {
  transform: translateY(1px);
}

/* Outline Primary Button */
.btn-outline-primary {
  border-color: var(--primary-color);
  color: var(--primary-color);
  transition: all 0.2s ease;
}

.btn-outline-primary:hover,
.btn-outline-primary:focus,
.btn-outline-primary:active {
  background-color: var(--primary-color);
  border-color: var(--primary-color);
  color: #000;
}

/* Cards */
.card {
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  border-color: var(--border-color);
}

.card:hover {
  transform: translateY(-2px);
  box-shadow: 0 0.5rem 1rem rgba(251, 192, 45, 0.15) !important;
}

/* Card with primary accent */
.card.border-primary {
  border-color: var(--primary-color) !important;
}

/* Tables */
.table {
  font-size: 0.95rem;
}

.table thead {
  background-color: var(--bg-light);
  color: var(--text-dark);
}

/* Navbar */
.navbar {
  background-color: #ffffff !important;
  border-bottom: 2px solid var(--primary-color);
}

.navbar-brand {
  color: var(--text-dark) !important;
  font-weight: 700;
  text-decoration: none;
}

.navbar-brand:hover {
  color: var(--primary-color) !important;
}

.navbar-brand img {
  height: 40px;
  width: auto;
  object-fit: contain;
}

.navbar-brand .me-2 {
  margin-right: 0.5rem;
}

.nav-link {
  color: var(--text-medium) !important;
  transition: color 0.2s ease;
}

.nav-link:hover {
  color: var(--primary-color) !important;
}

/* Footer */
footer {
  margin-top: auto;
  border-top: 2px solid var(--primary-light);
}

/* Highlight/Badge */
.badge.bg-primary {
  background-color: var(--primary-color) !important;
  color: #000;
}

/* Form Focus States */
.form-control:focus,
.form-select:focus {
  border-color: var(--primary-color);
  box-shadow: 0 0 0 0.2rem rgba(251, 192, 45, 0.25);
}

/* Primary Background Section */
.bg-primary-custom {
  background-color: var(--primary-color);
  color: #000;
}

/* Light Background Section */
.bg-light-custom {
  background-color: var(--bg-light);
}

/* Text Colors */
.text-primary-custom {
  color: var(--primary-color) !important;
}

/* Border Colors */
.border-primary-custom {
  border-color: var(--primary-color) !important;
}

/* Print styles */
@media print {
  .navbar,
  footer,
  .btn {
    display: none !important;
  }
}

/* Responsive adjustments */
@media (max-width: 768px) {
  .navbar {
    border-bottom-width: 1px;
  }
}
