/* ================================================================
   SITE-WIDE PALETTE  —  palette-all-pages.css
   Link on every page just before </head>:
   <link rel="stylesheet" href="palette-all-pages.css">
   ================================================================ */


/* ── CRITICAL: Reset body to white ─────────────────────────── */
/* The original files all set body{background:var(--dark)}      */
/* This must be overridden AFTER that rule loads, so paste this */
/* link tag as the LAST item before </head> in each page.       */
body {
  background: #ffffff !important;
  color: #1a1816 !important;
}


/* ── NAV: dark glass on scroll ──────────────────────────────── */
nav, nav#nb {
  background: rgba(10,9,8,.18) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  transition: background .4s, border-color .4s, backdrop-filter .4s !important;
}
nav.scrolled, nav#nb.scrolled {
  background: rgba(10,9,8,.82) !important;
  backdrop-filter: blur(26px) !important;
  -webkit-backdrop-filter: blur(26px) !important;
  border-bottom-color: rgba(201,163,71,.14) !important;
}


/* ── BURGER MENU: charcoal dark glass ───────────────────────── */
.nav-links.open {
  background: rgba(46,44,42,.95) !important;
  backdrop-filter: blur(26px) !important;
  -webkit-backdrop-filter: blur(26px) !important;
}
.nav-links.open li {
  border-bottom: 1px solid rgba(201,163,71,.10) !important;
  width: 100% !important;
  text-align: center !important;
}
.nav-links.open li:first-child {
  border-top: 1px solid rgba(201,163,71,.10) !important;
}
.nav-links.open a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 52px !important;
  padding: .75rem 2rem !important;
  font-size: 1rem !important;
  letter-spacing: .18em !important;
  color: rgba(232,223,200,.88) !important;
}
.nav-links.open a:hover,
.nav-links.open a:active,
.nav-links.open a.active {
  color: var(--gold, #C9A347) !important;
  background: rgba(201,163,71,.07) !important;
}


/* ── PAGE HEROES: charcoal bg, lighter overlay ──────────────── */
.page-hero {
  background-color: var(--charcoal, #2E2C2A) !important;
  background-size: cover !important;
  background-position: center !important;
}
.page-hero::before {
  background: linear-gradient(
    135deg,
    rgba(46,44,42,.70) 0%,
    rgba(46,44,42,.48) 50%,
    rgba(46,44,42,.25) 100%
  ) !important;
}
.page-hero .page-hero-title { color: #ffffff !important; }
.page-hero .page-hero-lbl   { color: var(--gold, #C9A347) !important; }
.page-hero .page-hero-sub   { color: rgba(255,255,255,.65) !important; }


/* ── HOMEPAGE HERO: keep strong dark overlay ────────────────── */
.hero-overlay {
  background:
    linear-gradient(to top,rgba(10,9,8,.96) 0%,rgba(10,9,8,.78) 30%,rgba(10,9,8,.38) 65%,rgba(10,9,8,.10) 100%),
    linear-gradient(to right,rgba(10,9,8,.22) 0%,transparent 100%) !important;
}
.hero-name    { color: #ffffff !important; }
.hero-tagline { color: rgba(232,223,200,.65) !important; }


/* ── BLOG ARTICLE PAGES: white background, dark text ────────── */
/* Covers blog-1.html through blog-N.html                       */
.art-hero,
.art-hero-inner,
.art-body,
.art-content,
.blog-content,
.post-content,
.article-body,
.article-content {
  background: #ffffff !important;
  color: #1a1816 !important;
}

/* Blog article hero strip (title area) — keep charcoal         */
.art-hero {
  background: var(--charcoal, #2E2C2A) !important;
  color: #ffffff !important;
}
.art-hero h1,
.art-hero .art-title      { color: #ffffff !important; }
.art-hero .art-lbl,
.art-hero .art-cat        { color: var(--gold, #C9A347) !important; }
.art-hero .art-meta,
.art-hero .art-date,
.art-hero .art-author     { color: rgba(255,255,255,.55) !important; }

/* Blog body text — dark on white */
.art-body p,
.art-body li,
.art-content p,
.art-content li,
.blog-content p,
.post-content p           { color: rgba(26,24,22,.72) !important; }

.art-body h2,
.art-body h3,
.art-content h2,
.art-content h3           { color: #1a1816 !important; }

/* Blockquote on blog page */
.art-body blockquote,
.art-content blockquote   {
  border-left-color: var(--gold, #C9A347) !important;
  color: var(--gold-dim, #7A5F1F) !important;
  background: rgba(201,163,71,.04) !important;
}

/* Blog tags */
.art-tag,
.blog-tag,
.post-tag {
  background: rgba(201,163,71,.10) !important;
  border-color: rgba(201,163,71,.25) !important;
  color: #7a5a1a !important;
}

/* Back link */
.art-back,
.back-link {
  color: var(--gold, #C9A347) !important;
}

/* Blog index page grid cards */
.bg-card,
.blog-card,
.post-card {
  background: #ffffff !important;
  border-color: rgba(201,163,71,.12) !important;
}
.bg-card:hover,
.blog-card:hover,
.post-card:hover {
  border-color: rgba(201,163,71,.35) !important;
}
.bg-card h2,
.bg-card h3,
.blog-card h2,
.blog-card h3             { color: #1a1816 !important; }
.bg-card p,
.blog-card p              { color: rgba(26,24,22,.62) !important; }
.bg-card .bg-cat,
.blog-card .bg-cat        { color: var(--gold, #C9A347) !important; }


/* ── CHARCOAL ACCENT SECTIONS ───────────────────────────────── */
#about,
#recognition,
#sk,
#skills,
#vs-strip,
#services,
.sec-teaser:nth-child(even) {
  background: var(--charcoal, #2E2C2A) !important;
}
/* Text on charcoal stays light */
#about .sec-title,
#recognition .sec-title,
#sk .sec-title,
#vs-strip .sec-title,
#services .sec-title        { color: #ffffff !important; }
#about .sec-title em,
#recognition .sec-title em,
#vs-strip .sec-title em,
#services .sec-title em     { color: var(--gold, #C9A347) !important; }
#about .about-text p,
#services .svc-desc         { color: rgba(232,223,200,.65) !important; }

.stat        { background: var(--charcoal, #2E2C2A) !important; }
.stat:hover  { background: var(--charcoal2, #3D3A37) !important; }
.stat-num    { color: var(--gold, #C9A347) !important; }
.stat-lbl    { color: var(--muted, #8A8278) !important; }

.svc         { background: var(--charcoal, #2E2C2A) !important; }
.svc:hover   { background: rgba(201,163,71,.06) !important; }
.svc-name    { color: #ffffff !important; }
.svc-num     { color: rgba(201,163,71,.12) !important; }

.rec         { background: var(--charcoal, #2E2C2A) !important; }
.rec:hover   { background: var(--charcoal2, #3D3A37) !important; }
.rec-title   { color: #ffffff !important; }

.tcard       { background: var(--charcoal2, #3D3A37) !important; }


/* ── HOMEPAGE SEC-TEASERS: alternating white / charcoal ──────── */
.sec-teaser:nth-child(odd)  { background: #ffffff !important; }
.sec-teaser:nth-child(even) { background: var(--charcoal, #2E2C2A) !important; }
.sec-teaser { border-bottom: 1px solid rgba(201,163,71,.15) !important; }

.sec-teaser:nth-child(odd) .st-title  { color: #1a1816 !important; }
.sec-teaser:nth-child(odd) .st-num    { color: rgba(201,163,71,.18) !important; }
.sec-teaser:nth-child(odd) .st-text   { color: rgba(26,24,22,.62) !important; }
.sec-teaser:nth-child(odd) .st-lbl    { color: var(--gold, #C9A347) !important; }
.sec-teaser:nth-child(odd) .st-rule   { background: var(--gold, #C9A347) !important; }
.sec-teaser:nth-child(odd) .st-stat-n { color: var(--gold, #C9A347) !important; }
.sec-teaser:nth-child(odd) .st-stat-l { color: #6b6560 !important; }
.sec-teaser:nth-child(odd) .st-cta    { color: var(--gold, #C9A347) !important; }


/* ── JOURNEY TIMELINE: white, dark text ─────────────────────── */
#tl                { background: #ffffff !important; }
#tl .sec-title     { color: #1a1816 !important; }
#tl .sec-title em  { color: var(--gold, #C9A347) !important; }
#tl .sec-lbl       { color: var(--gold, #C9A347) !important; }
#tl .rule          { background: var(--gold, #C9A347) !important; }
#tl .tl-dot        { border-color: #ffffff !important;
                     box-shadow: 0 0 0 3px rgba(201,163,71,.28) !important; }
#tl .tl-vl         { background: linear-gradient(to bottom,rgba(201,163,71,.45),rgba(201,163,71,.08)) !important; }
#tl .tl-name       { color: #1a1816 !important; }
#tl .tl-role       { color: #6b6560 !important; }
#tl .tl-desc       { color: rgba(26,24,22,.62) !important; }
#tl .tl-badge      { background: rgba(201,163,71,.10) !important;
                     border-color: rgba(201,163,71,.30) !important;
                     color: #7a5a1a !important; }


/* ── CONTACT SECTION: dark (form readability) ───────────────── */
#contact           { background: var(--dark2, #181716) !important; }
#contact .sec-title { color: #ffffff !important; }
#contact .sec-title em { color: var(--gold, #C9A347) !important; }


/* ── FOOTER: near-black ─────────────────────────────────────── */
footer {
  background: var(--black, #0A0908) !important;
  border-top-color: rgba(201,163,71,.08) !important;
}
.fl a, .footer-links a     { color: rgba(232,223,200,.30) !important; }
.fl a:hover,
.footer-links a:hover       { color: var(--gold, #C9A347) !important; }
.fc, .footer-copy           { color: rgba(255,255,255,.14) !important; }