/* =====================================================================
   Tema claro das páginas de cidade/serviço (26/09/2026)
   Regra aprovada pelo Abel: escuro só no chassi (menu, topo com foto,
   faixa final e rodapé); o miolo é claro. Cores da identidade:
   creme #F5F6F2, tinta #101408, dourado #E0C68F, dourado-tinta #6B5220.
   Ativa com <body class="tema-claro">.
   ===================================================================== */
body.tema-claro {
  --bg-primary: #F5F6F2; --bg-secondary: #FFFFFF; --bg-card: #FFFFFF; --bg-card-hover: #FFFFFF;
  --text-primary: #101408; --text-secondary: #4A5044; --text-muted: #5E6458;
  --border: #E2E4DC; --border-light: #D6D9CE;
  --sb-sombra: 0 1px 2px rgba(16,20,8,.04), 0 10px 28px -14px rgba(16,20,8,.16);
  background: #F5F6F2; color: #101408;
}
body.tema-claro .liquid-bg, body.tema-claro .cursor-glow { display: none; }

/* chassi escuro: menu, topo, faixa final e rodapé mantêm as variáveis escuras */
body.tema-claro .nav, body.tema-claro .mobile-menu, body.tema-claro .lp-hero, body.tema-claro section.seven-diag-cta,
body.tema-claro .cta-section, body.tema-claro .footer {
  --bg-primary: #0C0A07; --bg-secondary: #12100C; --bg-card: #16130E; --bg-card-hover: #1D1913;
  --text-primary: #FFFFFF; --text-secondary: #C9C6BF; --text-muted: #A19B90;
  --border: rgba(255,255,255,.08); --border-light: rgba(255,255,255,.16);
  color: #FFFFFF;
}
body.tema-claro .nav { background: rgba(12,10,7,.55); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); }
body.tema-claro .nav.scrolled { background: rgba(12,10,7,.9); }
body.tema-claro .footer { background: #0C0A07; }

/* ---------- topo com a foto da cidade ---------- */
body.tema-claro .lp-hero { min-height: 74vh; background: #0C0A07; }
body.tema-claro .lp-hero .hero-photo { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: 0; }
body.tema-claro .lp-hero .lp-hero-photo-scrim {
  position: absolute; inset: 0; z-index: 1;
  background: linear-gradient(90deg, rgba(12,10,7,.92) 0%, rgba(12,10,7,.78) 40%, rgba(12,10,7,.40) 72%, rgba(12,10,7,.25) 100%),
              linear-gradient(0deg, rgba(12,10,7,.85) 0%, rgba(12,10,7,0) 42%);
}
body.tema-claro .lp-hero .lp-hero-sub { color: #E4E1DA; }
body.tema-claro .foto-credito {
  position: absolute; right: 18px; bottom: 14px; z-index: 2; margin: 0; max-width: 60%;
  font-size: .68rem; line-height: 1.4; color: rgba(255,255,255,.72); text-align: right;
}
body.tema-claro .foto-credito a { color: inherit; }
body.tema-claro .foto-legenda {
  display: inline-flex; align-items: center; gap: 8px; margin-top: 22px;
  font-size: .8rem; color: #E4E1DA; letter-spacing: .02em;
}
body.tema-claro .foto-legenda::before { content: ''; width: 22px; height: 1px; background: #E0C68F; }

/* ---------- miolo claro ---------- */
body.tema-claro section:not(.lp-hero):not(.cta-section):not(.seven-diag-cta) { background: #F5F6F2; }
body.tema-claro section.bg-alt { background: #FFFFFF; border-top: 1px solid #E2E4DC; border-bottom: 1px solid #E2E4DC; }
body.tema-claro section:not(.lp-hero):not(.cta-section):not(.seven-diag-cta) .section-label,
body.tema-claro .cl-label { color: #6B5220; }
body.tema-claro section:not(.lp-hero):not(.cta-section):not(.seven-diag-cta) .section-label::before { background: #C0A66F; }
body.tema-claro .section-title { color: #101408; }
body.tema-claro .section-desc, body.tema-claro .prose p { color: #4A5044; }
body.tema-claro .prose p strong { color: #101408; }

body.tema-claro .feature-card, body.tema-claro .crosslink, body.tema-claro .step,
body.tema-claro .faq-item, body.tema-claro .sb-prova-card {
  background: #FFFFFF; border: 1px solid #E2E4DC; border-radius: 18px; box-shadow: var(--sb-sombra);
}
body.tema-claro .bg-alt .feature-card, body.tema-claro .bg-alt .crosslink,
body.tema-claro .bg-alt .step, body.tema-claro .bg-alt .sb-prova-card { background: #F9FAF6; }
body.tema-claro .feature-card:hover, body.tema-claro .crosslink:hover {
  border-color: #D9C49A; transform: translateY(-4px);
  box-shadow: 0 2px 4px rgba(16,20,8,.05), 0 18px 36px -16px rgba(107,82,32,.28);
}
body.tema-claro .feature-card::before { content: ''; position: absolute; left: 0; top: 0; width: 44px; height: 3px; background: linear-gradient(90deg, #E0C68F, #C0A66F); border-radius: 0 0 3px 0; }
body.tema-claro .feature-card h3, body.tema-claro .crosslink h3, body.tema-claro .step h3 { color: #101408; }
body.tema-claro .feature-card p, body.tema-claro .crosslink p, body.tema-claro .step p,
body.tema-claro .faq-item .faq-body, body.tema-claro .check-list li { color: #4A5044; }
body.tema-claro .step .step-num { color: #6B5220; opacity: 1; }
body.tema-claro .check-list li svg { color: #6B5220; stroke: #6B5220; flex: none; }
body.tema-claro .faq-item summary { color: #101408; }
body.tema-claro .faq-item summary::after { color: #6B5220; }
body.tema-claro .cl-arrow { color: #6B5220; }

/* links no texto: dourado-tinta sublinhado (contraste ≥ 7:1 no creme) */
body.tema-claro section:not(.lp-hero):not(.cta-section):not(.seven-diag-cta) p a:not([class]),
body.tema-claro .faq-body a, body.tema-claro .feature-card a { color: #6B5220; text-decoration: underline; text-underline-offset: 3px; }
body.tema-claro .feature-card h3 a { text-decoration: none; color: inherit; }

/* pílulas */
body.tema-claro .pill { background: #FFFFFF; border: 1px solid #D6D9CE; color: #2E3328; }
body.tema-claro .pill:hover { border-color: #C0A66F; color: #6B5220; box-shadow: 0 6px 18px -10px rgba(107,82,32,.4); }

/* faixa de investimento */
body.tema-claro .sb-investimento .reveal { border-top: 3px solid #E0C68F !important; background: #FFFFFF !important; box-shadow: var(--sb-sombra); }
body.tema-claro .sb-investimento a { color: #6B5220 !important; text-decoration: underline; }
body.tema-claro .sb-investimento strong { color: #6B5220; }

/* botões: pílula com degradê do dourado e sombra colorida */
body.tema-claro .btn-primary {
  background: linear-gradient(135deg, #F1DFB8 0%, #E0C68F 48%, #C9AE77 100%); color: #1A1408;
  box-shadow: 0 10px 24px -10px rgba(192,166,111,.75), inset 0 1px 0 rgba(255,255,255,.35);
}
body.tema-claro .btn-primary:hover { box-shadow: 0 14px 30px -10px rgba(192,166,111,.9), inset 0 1px 0 rgba(255,255,255,.4); transform: translateY(-1px); }
body.tema-claro section:not(.lp-hero):not(.cta-section):not(.seven-diag-cta) .btn-secondary { background: #FFFFFF; border-color: rgba(16,20,8,.18); color: #101408; }
body.tema-claro section:not(.lp-hero):not(.cta-section):not(.seven-diag-cta) .btn-secondary:hover { border-color: #C0A66F; color: #6B5220; }

/* faixa final escura com a caixa creme (ritmo: escuro / claro / escuro) */
body.tema-claro .cta-section { background: #101408; }

/* ---------- cartão da cidade (números e marcos) ---------- */
body.tema-claro .cidade-fatos { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 16px; margin-top: 36px; }
body.tema-claro .cidade-fato { background: #FFFFFF; border: 1px solid #E2E4DC; border-radius: 18px; padding: 22px 22px 20px; box-shadow: var(--sb-sombra); }
body.tema-claro .cidade-fato .k { font-size: .7rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: #6B5220; margin-bottom: 8px; }
body.tema-claro .cidade-fato .v { font-family: 'Albert Sans', sans-serif; font-size: 1.12rem; line-height: 1.35; color: #101408; font-weight: 600; }
body.tema-claro .cidade-marcos { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 18px; }
@media (max-width: 860px) {
  body.tema-claro .cidade-fatos { grid-template-columns: repeat(2, minmax(0,1fr)); }
  body.tema-claro .lp-hero { min-height: 68vh; }
  body.tema-claro .foto-credito { max-width: 90%; font-size: .62rem; }
}

/* o CSS base força cards e botões escuros com !important: no tema claro precisa da mesma força */
body.tema-claro section:not(.lp-hero):not(.cta-section):not(.seven-diag-cta) .feature-card {
  background: #FFFFFF !important; border: 1px solid #E2E4DC !important;
  -webkit-backdrop-filter: none; backdrop-filter: none;
}
body.tema-claro section.bg-alt .feature-card { background: #F9FAF6 !important; }
body.tema-claro section:not(.lp-hero):not(.cta-section):not(.seven-diag-cta) .feature-card:hover { border-color: #D9C49A !important; }
body.tema-claro section:not(.lp-hero):not(.cta-section):not(.seven-diag-cta) .btn-secondary {
  background: #FFFFFF !important; border: 1px solid rgba(16,20,8,.18) !important; color: #101408 !important;
}
body.tema-claro section:not(.lp-hero):not(.cta-section):not(.seven-diag-cta) .btn-secondary:hover { border-color: #C0A66F !important; color: #6B5220 !important; }
body.tema-claro .check-list + .prose, body.tema-claro .feature-grid + .prose { margin-top: 30px; }
body.tema-claro .nav { background: rgba(12,10,7,.72) !important; }
body.tema-claro .sb-prova-c, body.tema-claro .sb-prova-est { color: #6B5220; }
body.tema-claro .sb-prova-n { color: #101408; }
/* 4 cards: 2x2 em vez de 3+1 */
@media (min-width: 861px) { body.tema-claro .feature-grid:has(> :nth-child(4):last-child) { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
/* bloco antigo de diagnóstico: faixa escura (chassi) */
body.tema-claro section.seven-diag-cta {
  --text-primary: #FFFFFF; --text-secondary: #C9C6BF; --text-muted: #A19B90; --border: rgba(255,255,255,.1);
  background: #101408 !important; color: #FFFFFF;
}
body.tema-claro section.seven-diag-cta h2 { color: #FFFFFF; }
body.tema-claro section.seven-diag-cta p { color: #D6D3CC; }
body.tema-claro section.seven-diag-cta .seven-diag-badge { color: #EFDCB4; }
body.tema-claro section.seven-diag-cta .seven-diag-sub { color: #C9C6BF; }
/* legendas dos vídeos */
body.tema-claro .pf-reel figcaption { color: #E4E1DA; }
body.tema-claro .pf-reel figcaption .vp-tipo { color: #EFDCB4; }
