/* Brontara public-site consistency layer.
 * Loaded after page-local styles so the established palette and layout remain
 * intact while shared navigation, controls, focus, surfaces, and footer states
 * behave consistently across public pages.
 */
:root {
  --bt-site-bg: var(--bt-bg, #0f1117);
  --bt-site-surface: var(--bt-bg-elev, #151a24);
  --bt-site-surface-2: var(--bt-bg-elev2, #1a2030);
  --bt-site-border: var(--bt-border, #2a3142);
  --bt-site-border-strong: var(--bt-border-strong, #5a6480);
  --bt-site-text: var(--bt-text, #e8e8f0);
  --bt-site-muted: var(--bt-text-muted, #94a3b8);
  --bt-site-accent: var(--bt-accent, #2dd4bf);
  --bt-site-brand: var(--bt-brand, #a78bfa);
}

html { background: var(--bt-site-bg); }
body {
  background: var(--bt-site-bg) !important;
  color: var(--bt-site-text);
  font-family: system-ui, -apple-system, "Segoe UI", sans-serif;
}

/* Shared chrome */
nav {
  background: rgba(15, 17, 23, .94) !important;
  border-bottom-color: var(--bt-site-border) !important;
  min-height: 64px;
}
.nav-logo img { height: 44px !important; width: auto; }
.nav-links a { color: var(--bt-site-muted); }
.nav-links a:hover,
.nav-links a:focus-visible { color: var(--bt-site-text); }
.dropdown-menu,
.mobile-nav {
  background: rgba(21, 26, 36, .98) !important;
  border-color: var(--bt-site-border) !important;
}
.dropdown-menu a:hover,
.dropdown-menu a:focus-visible { background: rgba(124, 58, 237, .12) !important; }
.nav-cta,
.btn-primary,
.btn,
.mobile-nav .nav-cta {
  background: linear-gradient(135deg, #2dd4bf, #14b8a6) !important;
  color: #04231f !important;
}
.nav-cta:hover,
.btn-primary:hover,
.btn:hover { box-shadow: 0 8px 24px rgba(45, 212, 191, .22); }

/* One keyboard-visible interaction treatment across pages. */
:where(a, button, input, select, textarea, summary):focus-visible {
  outline: 3px solid var(--bt-site-accent) !important;
  outline-offset: 3px;
}
.nav-hamburger { border-radius: 8px; }
.nav-hamburger:hover { background: rgba(45, 212, 191, .08); }

/* Shared content surfaces and footer. */
.card,
.contact-cards .card,
.feature-card,
.product-card,
.pricing-card,
.plan,
.bcard,
.step,
.founder-card,
.faq details,
.post-card {
  border-color: var(--bt-site-border) !important;
}
footer,
.site-footer {
  background: var(--bt-site-surface) !important;
  border-top: 1px solid var(--bt-site-border) !important;
  color: var(--bt-site-muted);
}
footer .footer-inner,
.site-footer .footer-inner {
  align-items: center !important;
  justify-content: center !important;
  flex-direction: column !important;
  text-align: center;
}
footer .footer-links,
.site-footer .footer-links {
  justify-content: center !important;
  flex-wrap: wrap;
}
footer .footer-inner > div,
.site-footer .footer-inner > div { text-align: center; }
footer .in {
  align-items: center !important;
  justify-content: center !important;
  flex-direction: column !important;
  text-align: center;
  gap: 16px 28px;
}
footer .links { justify-content: center !important; flex-wrap: wrap; }
footer { text-align: center; }
footer a,
.site-footer a { color: inherit; }
footer a:hover,
.site-footer a:hover { color: var(--bt-site-accent); }

@media (max-width: 680px) {
  nav { padding-left: 16px !important; padding-right: 16px !important; }
  .mobile-nav { top: 64px; padding: 28px 20px; overflow-y: auto; }
  .mobile-nav a { font-size: 20px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
  }
}
