/* heterotroph.info — mountain service light theme: #2563EB primary, #16A34A accent, #FFFFFF bg, #1F2937 text */
:root {
  --primary-50: #eff6ff;
  --primary-100: #dbeafe;
  --primary-200: #bfdbfe;
  --primary-300: #93c5fd;
  --primary-400: #3b82f6;
  --primary-500: #2563eb;
  --primary-600: #1d4ed8;
  --primary-700: #1e40af;
  --primary-rgb: 37, 99, 235;
  --neutral-50: #f9fafb;
  --neutral-100: #f3f4f6;
  --neutral-200: #e5e7eb;
  --neutral-300: #d1d5db;
  --neutral-400: #9ca3af;
  --neutral-500: #6b7280;
  --neutral-600: #4b5563;
  --neutral-700: #374151;
  --neutral-800: #1f2937;
  --neutral-900: #111827;
  --surface-primary: #ffffff;
  --surface-secondary: #f9fafb;
  --surface-accent: #eff6ff;
  --text-primary: #1f2937;
  --text-secondary: #4b5563;
  --text-accent: #2563eb;
  --button-primary-bg: #2563eb;
  --button-primary-text: #ffffff;
  --button-secondary-bg: #f3f4f6;
  --button-secondary-text: #1f2937;
  --border-light: #e5e7eb;
  --border-medium: #d1d5db;
  --accent-highlight: #16a34a;
  --accent-rgb: 22, 163, 74;
}

html { scroll-behavior: smooth; }

body {
  background-color: #ffffff !important;
  color: #1f2937 !important;
}

.text-muted, .top_body_base.text-muted, .page_section_subtitle, .blog-desc, .lead.text-muted {
  color: #6b7280 !important;
}

.text-secondary { color: #4b5563 !important; }

.header-clean {
  background: rgba(255, 255, 255, 0.97) !important;
  border-bottom: 1px solid #e5e7eb;
  backdrop-filter: blur(10px);
}

.header-clean .navbar-light .nav-link { color: #1f2937 !important; }
.header-clean .navbar-light .nav-link:hover,
.header-clean .navbar-light .nav-link:focus,
.header-clean .navbar-light .nav-link.active { color: #2563eb !important; }
.header-clean .brand-text { color: #1f2937 !important; }
.header-clean .custom-toggler .line { background: #1f2937 !important; }

.btn-primary {
  background-color: #2563eb !important;
  border-color: #2563eb !important;
}

.btn-outline-primary {
  color: #2563eb !important;
  border-color: #2563eb !important;
}

.btn-outline-primary:hover {
  background-color: #2563eb !important;
  color: #fff !important;
}

.btn-leadgen-submit {
  background: linear-gradient(135deg, #2563eb, #1d4ed8) !important;
}

.usp-item-accent.accent-1 { background: #2563eb !important; }
.usp-item-accent.accent-2 { background: #16a34a !important; }
.usp-item-accent.accent-3 { background: #3b82f6 !important; }

.service-card-featured .service-card-inner {
  border-color: #16a34a !important;
}

.blog-card-link, .service-cta, a { color: #2563eb; }
.blog-card-link:hover, .service-cta:hover { color: #1d4ed8; }

.disclaimer-section-mountain {
  background: #f9fafb;
  border-top: 1px solid #e5e7eb;
  border-bottom: 1px solid #e5e7eb;
}

.disclaimer-section-mountain .disclaimer-card {
  background: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 1rem;
  padding: 2rem;
  box-shadow: 0 4px 24px rgba(37, 99, 235, 0.06);
}

.disclaimer-section-mountain h2 {
  font-size: 1.25rem;
  color: #1f2937;
  margin-bottom: 1rem;
}

.disclaimer-section-mountain p {
  color: #4b5563;
  font-size: 0.9rem;
  line-height: 1.65;
  margin-bottom: 0.75rem;
}

.disclaimer-section-mountain h2 i { color: #2563eb; }

.footer-professional-blue-01 {
  background: #1f2937 !important;
  color: #f9fafb !important;
}

.footer-professional-blue-01 .core_section_title,
.footer-professional-blue-01 .premium_caption,
.footer-professional-blue-01 .top_body_base,
.footer-professional-blue-01 .footer-link {
  color: #e5e7eb !important;
}

.footer-professional-blue-01 .footer-link:hover { color: #16a34a !important; }

.footer-professional-blue-01 .footer-divider {
  border-color: #374151 !important;
}

.article-container .blog-article h2 {
  margin-top: 2rem;
  color: #1f2937;
}

.article-container .blog-article p,
.article-container .blog-article li {
  color: #4b5563;
  line-height: 1.7;
}

.article-meta {
  color: #6b7280;
  font-size: 0.875rem;
  margin-bottom: 0.5rem;
}

.contacts-accordion .accordion-button:not(.collapsed) {
  background: #eff6ff !important;
  color: #1f2937 !important;
}

.contacts-accordion .accordion-button.collapsed {
  background: #ffffff !important;
  color: #1f2937 !important;
}

.legal-content h1, .legal-content h2 { color: #1f2937; }
.legal-content p, .legal-content li { color: #4b5563; line-height: 1.7; }

@media (max-width: 991px) {
  .header-clean .navbar-collapse {
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 0.75rem;
    padding: 1rem;
    margin-top: 0.5rem;
  }
}
