/* ============================================
   CDL CONSULTANTS — Brand Theme
   Deep Authority Blue + Compliance Red + Gold
   ============================================ */

:root {
  --brand-primary: #0B3C5D;
  --brand-primary-rgb: 11, 60, 93;
  --brand-primary-light: #0E4D76;
  --brand-primary-pale: #E8F0F6;
  --brand-secondary: #C62828;
  --brand-secondary-light: #EF5350;
  --brand-accent: #F2A900;
  --brand-accent-light: #FFD54F;
  --brand-cta: #FF6F00;
  --brand-cta-hover: #E65100;
  --brand-bg: #F5F7FA;
  --brand-bg-blue: #EEF4F9;
  --text-primary: #1A1A1A;
  --text-body: #333333;
  --text-muted: #6B7280;
}

/* Nav accent */
.topbar { background: var(--brand-primary); color: #FFFFFF; }
.topbar a { color: rgba(255,255,255,0.85); }
.navbar { border-bottom: 3px solid var(--brand-primary); }
.nav-links a:hover { background: var(--brand-primary-pale); color: var(--brand-primary); }
.nav-links a.active { color: var(--brand-primary); }
.nav-phone { color: var(--brand-primary); }

/* Brand btn-outline */
.btn-outline {
  border-color: var(--brand-primary);
  color: var(--brand-primary);
}
.btn-outline:hover {
  background: var(--brand-primary);
  color: #FFFFFF;
}

/* Section label / eyebrow */
.section-label { background: var(--brand-primary-pale); color: var(--brand-primary); }
.hero-eyebrow { background: rgba(11,60,93,0.1); color: var(--brand-primary); }

/* Typography headings */
h1, h2, h3, h4 { color: var(--brand-primary); }
.hero h1 { color: var(--brand-primary); }

/* Hero — dark authority gradient + cinematic truck background */
.hero {
  background:
    linear-gradient(135deg, rgba(11,60,93,0.90) 0%, rgba(14,77,118,0.85) 60%, rgba(11,60,93,0.88) 100%),
    url('../images/hero-consultants.jpg') center center / cover no-repeat;
  color: #fff;
  position: relative;
}
.hero h1, .hero h2, .hero h3 { color: #FFFFFF; }
.hero p, .hero-sub { color: rgba(255,255,255,0.88) !important; }
.hero-stat strong { color: #FFFFFF; }
.hero-stat span { color: rgba(255,255,255,0.75); }

/* Inner page hero — same treatment for all subpages */
.page-hero {
  background:
    linear-gradient(135deg, rgba(11,60,93,0.90) 0%, rgba(14,77,118,0.85) 100%),
    url('../images/hero-consultants.jpg') center center / cover no-repeat !important;
  color: #fff;
  position: relative;
}
.page-hero h1, .page-hero h2, .page-hero h3 { color: #FFFFFF !important; }
.page-hero p, .page-hero .hero-sub { color: rgba(255,255,255,0.85) !important; }
.page-hero .section-label { background: rgba(255,255,255,0.15); color: #FFFFFF; }
.page-hero .breadcrumb { color: rgba(255,255,255,0.65) !important; }
.page-hero .breadcrumb a { color: rgba(255,255,255,0.85) !important; }
.page-hero .breadcrumb a:hover { color: #FFFFFF !important; }

/* Trust bar icons */
.trust-item i { color: var(--brand-primary); }

/* Stat numbers */
.stat-number { color: var(--brand-primary); }

/* Service cards — icon boxes */
.icon-box { background: var(--brand-primary-pale); color: var(--brand-primary); }
.service-card:hover .icon-box { background: var(--brand-primary); color: #FFFFFF; }

/* Section: bg-primary */
.bg-primary { background: var(--brand-primary); }
.section-accent { background: var(--brand-bg-blue); }

/* Process step numbers */
.step-number { background: var(--brand-primary); color: #FFFFFF; }

/* Author avatars */
.author-avatar { background: var(--brand-primary); }

/* FAQ icon */
.faq-icon { background: var(--brand-primary-pale); color: var(--brand-primary); }
.faq-item.open { border-color: var(--brand-primary); }
.faq-item.open .faq-icon { background: var(--brand-primary); color: #FFFFFF; }

/* Blog tags */
.blog-tag { background: var(--brand-primary-pale); color: var(--brand-primary); }

/* Links */
a { color: var(--brand-primary); }
a:hover { color: var(--brand-primary-light); }
.nav-links a, .footer-col a, .mobile-menu a { color: inherit; }

/* CTA banner */
.cta-banner { background: var(--brand-primary); color: #FFFFFF; }
.cta-banner h2 { color: #FFFFFF; }
.cta-banner p { color: rgba(255,255,255,0.85); }
.cta-banner .btn-ghost { border-color: rgba(255,255,255,0.5); }

/* Urgency / violation indicators */
.urgency-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  background: #FFEBEE;
  color: var(--brand-secondary);
  font-size: 0.8rem;
  font-weight: 700;
  padding: 0.3rem 0.75rem;
  border-radius: 4px;
  border: 1px solid #FFCDD2;
}
.urgency-badge i { font-size: 0.85rem; }

/* Violation/result badges */
.result-badge-win { background: #E8F5E9; color: #2E7D32; }
.result-badge-violation { background: #FFEBEE; color: var(--brand-secondary); }

/* Horizontal divider accent */
.divider-accent { height: 4px; background: linear-gradient(90deg, var(--brand-primary), var(--brand-accent)); border-radius: 2px; }

/* Footer logo text */
.footer-logo-text { color: #FFFFFF; }
.footer-logo-sub { color: var(--brand-accent); font-size: 0.7rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.1em; }
