/* Blog Dark Theme Override — loaded LAST to win specificity */

/* ── Base: midnight background matching homepage ── */
body, html {
  background: #080b14 !important;
  color: #f0f0ec !important;
}

/* Ambient orbital background — matches homepage */
body::before {
  content: '';
  position: fixed;
  top: 0; left: 0; right: 0; bottom: 0;
  background:
    radial-gradient(circle at 10% 14%, rgba(254, 88, 0, 0.14) 0, transparent 21%),
    radial-gradient(circle at 84% 18%, rgba(8, 145, 178, 0.1) 0, transparent 24%),
    radial-gradient(circle at 52% 82%, rgba(254, 88, 0, 0.08) 0, transparent 22%),
    radial-gradient(circle at 82% 76%, rgba(8, 145, 178, 0.06) 0, transparent 27%);
  pointer-events: none;
  z-index: 0;
  animation: blogAmbientDrift 24s ease-in-out infinite alternate;
}

body::after {
  content: '';
  position: fixed;
  top: 0; left: 0; right: 0; bottom: 0;
  pointer-events: none;
  z-index: 0;
  opacity: 0.02;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' fill='%23fff' filter='url(%23n)'/%3E%3C/svg%3E");
}

@keyframes blogAmbientDrift {
  0% { opacity: 0.8; transform: translate3d(-1%, -1%, 0); }
  50% { opacity: 1; transform: translate3d(1%, 0.5%, 0); }
  100% { opacity: 0.85; transform: translate3d(0.5%, -0.5%, 0); }
}

/* Ensure content sits above ambient */
nav, main, footer, .nav-container { position: relative; z-index: 1; }

/* ── All sections transparent ── */
.page-hero, .page-content, .section-shell, .hero,
.featured-stage, .section-shell-soft, .blog-hub-section,
main, section { background: transparent !important; }

/* Hero gradient */
.page-hero {
  background: linear-gradient(180deg, rgba(8,11,20,0.9), transparent) !important;
}

/* ── Nav — force dark (kill white header completely) ── */
nav, .nav-container, .nav-bg,
nav[role="navigation"],
.nav-scrolled {
  background: rgba(8, 11, 20, 0.95) !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
  border-bottom-color: rgba(255, 90, 0, 0.08) !important;
}
.nav-scrolled {
  box-shadow: 0 4px 30px rgba(0,0,0,0.3) !important;
}
/* Nav links dropdown (mobile) */
.nav-links {
  background: rgba(8, 11, 20, 0.98) !important;
  border-top-color: rgba(255, 90, 0, 0.1) !important;
  box-shadow: 0 12px 40px rgba(0,0,0,0.4) !important;
}
.nav-links a { color: #f0f0ec !important; }
.nav-links a:hover { color: #fe5800 !important; }
.nav-brand-name, .nav-brand-tagline, .nav-logo-text { color: #f0f0ec !important; }
.nav-phone { color: #f0f0ec !important; }
/* Nav toggle hamburger bars */
.nav-toggle span { background: #f0f0ec !important; }

/* ── KILL ALL WHITE BACKGROUNDS ── */
*, *::before, *::after {
  --bg-primary: #080b14;
  --bg-secondary: #0d1120;
  --bg-dark: #080b14;
  --text-primary: #f0f0ec;
  --text-secondary: #c0c5d0;
  --text-muted: #9da1b0;
}

/* Cards, blocks, containers → dark glass with visible edges */
.content-block, .story-card, .story-step, .proof-pill,
.service-card, .premium-difference-copy, .premium-point,
.faq-item, .contact-intro-card, .form-container,
.dispatch-feature, .dispatch-mini-card, .dispatch-card,
.journal-issue-card, .journal-wayfinder-card,
.final-cta, .cta-section, .audit-card, .audit-card-inner,
.transform-card, .promise-card, .testimonial-card,
.lf-accent-media, .article-hero-art,
.story-jump-links, .contact-chip,
.premium-process-step, .work-process-step,
.industry-map-card, .service-link-card {
  background: linear-gradient(180deg, rgba(20,24,36,0.95), rgba(14,18,28,0.92)) !important;
  border: 1px solid rgba(254,88,0,0.1) !important;
  color: #f0f0ec !important;
  box-shadow: 0 16px 48px rgba(0,0,0,0.25) !important;
}

/* Service cards + example cards: stronger accent for visibility */
.service-card, .example-card, .work-metric-card,
.industry-map-card, .service-link-card {
  border-left: 3px solid rgba(254,88,0,0.25) !important;
  border-radius: 12px !important;
}

/* Article body container — keep transparent for prose flow */
.story-body, .article-body, .article-content,
.content-main, .post-content,
.page-content .container > article {
  background: transparent !important;
}

/* Content blocks inside page-content: subtle card treatment, not invisible */
.page-content .container > .content-block {
  background: linear-gradient(180deg, rgba(20,24,36,0.6), rgba(14,18,28,0.5)) !important;
  border: 1px solid rgba(254,88,0,0.08) !important;
  border-left: 3px solid rgba(254,88,0,0.25) !important;
  border-radius: 12px !important;
  padding: 32px !important;
  margin-bottom: 24px !important;
}

.page-content .container > .content-block h2 {
  color: #f0f0ec !important;
  font-weight: 700;
}

.page-content .container > .content-block p {
  color: #c0c5d0 !important;
  line-height: 1.7;
}

/* Individual content pieces inside cards */
.content-block > *, .story-card > *, .proof-pill > * {
  color: inherit !important;
}

/* ── Forms ── */
.form-input, .form-textarea, input, textarea, select,
input[type="text"], input[type="email"], input[type="tel"] {
  background: rgba(255,255,255,0.04) !important;
  border-color: rgba(255,255,255,0.12) !important;
  color: #f0f0ec !important;
}
.form-label, label { color: #9da1b0 !important; }
.form-input:focus, .form-textarea:focus,
input:focus, textarea:focus {
  border-color: rgba(255,90,0,0.4) !important;
}

/* ── Typography ── */
h1, h2, h3, h4, h5, h6 { color: #f0f0ec !important; }

p, li, td, dd, .section-description, .section-copy,
.faq-answer, .footer-text {
  color: #c0c5d0 !important;
}

.section-eyebrow { color: #fe5800 !important; }
.dispatch-meta, .dispatch-card-meta { color: rgba(255,255,255,0.5) !important; }

/* ── Links ── */
a:not(.btn):not(.nav-cta):not(.nav-logo):not(.nav-brand) { color: #fe5800; }
.dispatch-read, .dispatch-mini-read, .dispatch-card-read { color: #fe5800 !important; }
.back-links a, .breadcrumbs a { color: #9da1b0 !important; }

/* ── Blockquotes & code ── */
blockquote {
  border-left-color: #fe5800 !important;
  color: #c0c5d0 !important;
  background: rgba(255,90,0,0.04) !important;
}
code, pre, kbd {
  background: rgba(255,255,255,0.06) !important;
  color: #f0f0ec !important;
  border-color: rgba(255,255,255,0.1) !important;
}

/* ── Accent pills / tags ── */
.dispatch-chip, .dispatch-card-chip,
.dispatch-feature-badge, .dispatch-mini-badge, .dispatch-card-badge {
  color: #fe5800 !important;
  background: rgba(255,90,0,0.08) !important;
  border-color: rgba(255,90,0,0.18) !important;
}
.proof-pill, .dispatch-library-pills span,
.journal-intro-flags span, .journal-sidecar-pills span,
.contact-chip {
  background: rgba(255,255,255,0.06) !important;
  border-color: rgba(255,255,255,0.12) !important;
  color: #f0f0ec !important;
}

/* ── Proof panels ── */
.dispatch-proof-panel {
  background: rgba(255,90,0,0.06) !important;
  border-color: rgba(255,90,0,0.15) !important;
}
.dispatch-proof-label { color: #fe5800 !important; }
.dispatch-proof-panel p { color: #c0c5d0 !important; }

/* ── CTA sections ── */
.final-cta h2, .cta-section h2, .audit-card h2 { color: #f0f0ec !important; }
.final-cta p, .cta-section p, .audit-card p { color: #9da1b0 !important; }

/* ── Images ── */
.accent-photo-card, figure { box-shadow: 0 22px 54px rgba(0,0,0,0.3) !important; }

/* ── Content meta ── */
.content-meta { color: rgba(255,255,255,0.5) !important; }

/* ── Footer ── */
footer:last-of-type {
  background: rgba(13, 17, 32, 0.95) !important;
  border-top: 1px solid rgba(255,255,255,0.06);
}
.footer-heading { color: #f0f0ec !important; }
.footer-links a { color: #9da1b0 !important; }
.footer-copyright { color: rgba(255,255,255,0.5) !important; }
.footer-legal a { color: rgba(255,255,255,0.5) !important; }
.footer-credit a { color: #fe5800 !important; }
.footer-bottom { border-color: rgba(255,255,255,0.06) !important; }

/* ── Borders ── */
hr, .divider { border-color: rgba(255,255,255,0.08) !important; }

/* ── Sub-page card overrides (services, work, about, solutions, industries) ── */
.services-grid .service-card,
.service-detail-card,
.work-card, .work-process-step, .case-study-card,
.building-viewer-block, .building-viewer-fallback-card,
.about-card, .team-card, .value-card,
.solution-card, .industry-card, .industry-index-card,
.industry-map-card {
  background: linear-gradient(180deg, rgba(20,24,36,0.95), rgba(14,18,28,0.92)) !important;
  border-color: rgba(255,255,255,0.08) !important;
  color: #f0f0ec !important;
}
.service-card h3, .solution-card h3, .industry-card h3,
.work-card h3, .about-card h3 { color: #f0f0ec !important; }
.service-card p, .solution-card p, .industry-card p,
.work-card p, .about-card p { color: #c0c5d0 !important; }

/* Hero sections on all sub-pages */
.page-hero { background: linear-gradient(180deg, rgba(8,11,20,0.9), transparent) !important; }
.section-eyebrow { color: #fe5800 !important; }
.section-title { color: #f0f0ec !important; }
.section-description { color: #c0c5d0 !important; }

/* Generic white background killer */
[style*="background:#fff"],
[style*="background: #fff"],
[style*="background:white"],
[style*="background: white"] {
  background: linear-gradient(180deg, rgba(20,24,36,0.95), rgba(14,18,28,0.92)) !important;
  color: #f0f0ec !important;
}

/* ── Reduced motion ── */
@media (prefers-reduced-motion: reduce) {
  body::before { animation: none; }
}
