/**
 * BSV CRED — tema light (único modo habilitado)
 * Tokens alinhados ao internet banking titanium-fintech-turquesa (light)
 */

html {
  color-scheme: light;
}

:root {
  --bsv-base: #f4fbf9;
  --bsv-surface: #ffffff;
  --bsv-surface-soft: #eaf6f2;
  --bsv-surface-card: #ffffff;
  --bsv-surface-mid: #e3f1ec;
  --bsv-border: #cfe3dc;
  --bsv-border-hover: color-mix(in srgb, #0c8570 40%, #cfe3dc);

  --bsv-accent: #0c8570;
  --bsv-accent-hover: #0a6f5e;
  --bsv-accent-active: #085a4c;
  --bsv-accent-fill: #57f1cc;
  --bsv-accent-soft: #d4f5ec;
  --bsv-on-accent: #333333;

  --bsv-ink: #333333;
  --bsv-ink-deep: #0f1c1a;
  --bsv-body: #333333;
  --bsv-muted: #4f635e;
  --bsv-inverse: #0f1c1a;

  --bsv-font-body: "Manrope", sans-serif;
  --bsv-font-heading: "Plus Jakarta Sans", sans-serif;
  --bsv-font-button: "Manrope", sans-serif;

  --bsv-gradient-accent: linear-gradient(90deg, #57f1cc 0%, #3ed9b8 100%);
  --bsv-gradient-canvas: linear-gradient(
    165deg,
    #f7fcfa 0%,
    #eef8f4 45%,
    color-mix(in srgb, #f4fbf9 90%, #57f1cc) 100%
  );

  --bsv-header-bg: rgba(244, 251, 249, 0.94);
  --bsv-hero-bg: #f4fbf9;
  --bsv-footer-bg: #eaf6f2;
  --bsv-section-dark-bg: #eaf6f2;
  --bsv-cta-bg: #eaf6f2;
  --bsv-input-bg: #ffffff;
  --bsv-input-border: #cfe3dc;
  --bsv-input-text: #333333;
  --bsv-input-placeholder: #4f635e;
  --bsv-menu-panel-bg: linear-gradient(180deg, #ffffff 0%, #f3faf7 100%);
  --bsv-shadow-soft: 0 12px 28px rgba(15, 28, 26, 0.08);

  --theme-color: #0c8570;
  --theme-title-color: #333333;
  --secondary_color: #333333;
  --brand_color: #0c8570;
}

/* ===== Tipografia ===== */
body,
body.page-legal,
body.page-exclusao-conta {
  background: var(--bsv-gradient-canvas);
  background-attachment: fixed;
  color: var(--bsv-body);
  font-family: var(--bsv-font-body);
  font-weight: 400;
}

h1, h2, h3, h4, h5, h6,
.bank-banner-content h1,
.bank-section-title h1,
.f-widget-title,
.va-menu__label,
.legal-content h1,
.legal-content h2,
.exclusao-conta-intro h1 {
  font-family: var(--bsv-font-heading) !important;
  font-weight: 600 !important;
  color: var(--bsv-ink);
}

.cta-five .cta-content h2 {
  font-family: var(--bsv-font-heading) !important;
  font-weight: 600 !important;
}

p,
li,
.bank-banner-content p,
.bank-banner-content .feature-list li,
.feature-card-widget-8 p,
.saas-feature-card p,
.va-menu__contact-link,
.va-menu__tagline,
.about-widget p,
.footer-link li a,
.legal-content p,
.legal-lead,
.exclusao-conta-intro p,
.form-label,
.form-control {
  font-family: var(--bsv-font-body);
  font-weight: 400;
}

.header-menu .menu > .nav-item > .nav-link,
.short-title-2,
.exclusao-conta-card .form-label {
  font-family: var(--bsv-font-body);
  font-weight: 500;
}

.btn-va,
.theme-btn,
.cta-five .btn-va,
.header-cta .btn-va {
  font-family: var(--bsv-font-button) !important;
  font-weight: 600 !important;
}

#preloader {
  background: #57f1cc !important;
}

/* ===== Header ===== */
.header,
.header .header-menu,
.header-menu.header-menu-4,
.header-menu.navbar_fixed {
  background-color: var(--bsv-header-bg) !important;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

.header {
  border-bottom: 1px solid rgba(15, 28, 26, 0.08);
}

.header-menu.header-menu-4 .navbar .menu > .nav-item > .nav-link,
.header-menu.navbar_fixed.header-menu-4 .navbar .menu > .nav-item > .nav-link,
.header-menu.navbar_fixed.header-menu-1 .navbar .menu > .nav-item > .nav-link,
.header-menu.navbar_fixed.header-menu-3 .navbar .menu > .nav-item > .nav-link {
  color: var(--bsv-ink) !important;
  background: none;
  -webkit-text-fill-color: var(--bsv-ink);
}

.header-menu .menu > .nav-item > .nav-link:hover,
.header-menu.navbar_fixed.header-menu-4 .navbar .menu > .nav-item > .nav-link:hover,
.header-menu.navbar_fixed.header-menu-4 .navbar .menu > .nav-item > .nav-link.active {
  background: none !important;
  -webkit-text-fill-color: var(--bsv-accent) !important;
  color: var(--bsv-accent) !important;
}

.header-menu.navbar_fixed.header-menu-4 .navbar .menu > .nav-item > .nav-link::before {
  background-color: var(--bsv-accent) !important;
}

/* Sticky header: manter primary turquesa (não herdar regras dark do template) */
.header-menu.navbar_fixed.header-menu-4 .btn-va-abrir,
.header-cta .btn-va-abrir {
  background: var(--bsv-accent-fill) !important;
  color: var(--bsv-on-accent) !important;
}

.header-menu.navbar_fixed.header-menu-4 .btn-va-abrir:hover,
.header-menu.navbar_fixed.header-menu-4 .btn-va-abrir:focus,
.header-cta .btn-va-abrir:hover,
.header-cta .btn-va-abrir:focus {
  background: var(--bsv-ink-deep) !important;
  color: #fff !important;
}

.header-menu.navbar_fixed.header-menu-4 .btn-va-ib,
.header-cta .btn-va-ib {
  background: transparent !important;
  color: var(--bsv-ink) !important;
  border-color: var(--bsv-border) !important;
}

.header-menu.navbar_fixed.header-menu-4 .btn-va-ib:hover,
.header-menu.navbar_fixed.header-menu-4 .btn-va-ib:focus,
.header-cta .btn-va-ib:hover,
.header-cta .btn-va-ib:focus {
  color: var(--bsv-accent) !important;
  border-color: var(--bsv-accent) !important;
}

.btn-va-ib {
  color: var(--bsv-ink);
  border-color: var(--bsv-border);
}

.btn-va-ib:hover,
.btn-va-ib:focus {
  color: var(--bsv-accent);
  border-color: var(--bsv-accent);
}

.btn-va-abrir {
  background: var(--bsv-accent-fill);
  color: var(--bsv-on-accent);
}

.btn-va-abrir:hover,
.btn-va-abrir:focus {
  background: var(--bsv-ink-deep);
  color: #fff;
  border-color: transparent;
}

.section-cta.is-light .btn-va-abrir,
.is-light .btn-va-abrir {
  background: var(--bsv-accent-fill);
  color: var(--bsv-on-accent);
}

.section-cta.is-light .btn-va-abrir:hover,
.section-cta.is-light .btn-va-abrir:focus,
.is-light .btn-va-abrir:hover,
.is-light .btn-va-abrir:focus {
  background: var(--bsv-ink-deep);
  color: #fff;
}

.va-menu-toggle {
  border-color: var(--bsv-border);
}

.va-menu-toggle__bars span {
  background: var(--bsv-ink-deep);
}

@media (max-width: 768px) {
  .header {
    border-bottom: 1px solid var(--bsv-border) !important;
    box-shadow: 0 2px 8px rgba(15, 28, 26, 0.06) !important;
  }
}

/* ===== Hero ===== */
.bank-banner-area {
  background: var(--bsv-hero-bg);
}

.bank-banner-content h1 {
  color: var(--bsv-ink);
}

.bank-banner-content p,
.bank-banner-content .feature-list li,
.active-user {
  color: var(--bsv-muted);
}

.bank-banner-content .feature-list li i {
  color: var(--bsv-accent);
}

.bank-banner-content .form-control {
  background: var(--bsv-input-bg);
  border-color: var(--bsv-input-border);
  color: var(--bsv-input-text);
}

.bank-banner-content .form-control::placeholder {
  color: var(--bsv-input-placeholder);
}

.bank-banner-area .wave_img {
  opacity: 0.35;
  filter: invert(1) hue-rotate(160deg);
}

/* ===== Seção soluções ===== */
.section-theme-dark,
.integrate-area.section-theme-dark {
  background-color: var(--bsv-section-dark-bg) !important;
}

.section-theme-dark .text-white,
.section-theme-dark h1.text-white,
.section-theme-dark h4,
.section-theme-dark p.text-white {
  color: var(--bsv-ink) !important;
}

.section-theme-dark .saas-feature-card,
.section-theme-dark .card-servicos {
  background: var(--bsv-surface) !important;
  border: 1px solid var(--bsv-border);
  box-shadow: var(--bsv-shadow-soft);
}

.section-theme-dark .texto-gradiente-turquesa {
  background: linear-gradient(90deg, #0c8570 0%, #0f9f82 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}

/* ===== CTA baixar app ===== */
.cta-baixar-app {
  background-color: var(--bsv-cta-bg);
}

.cta-five {
  background: linear-gradient(135deg, #0c8570 0%, #0f9f82 55%, #57f1cc 140%);
}

.cta-five .cta-content h2,
.cta-five .cta-content p {
  color: #fff;
}

.cta-five .btn-va-ib {
  color: #fff;
  border-color: rgba(255, 255, 255, 0.7);
}

.cta-five .btn-va-ib:hover,
.cta-five .btn-va-ib:focus {
  color: #333333;
  border-color: #fff;
  background: #fff;
}

.cta-five .btn-va-abrir {
  background: var(--bsv-accent-fill);
  color: var(--bsv-on-accent);
}

.cta-five .btn-va-abrir:hover,
.cta-five .btn-va-abrir:focus {
  background: #fff;
  color: #333333;
}

/* ===== Footer ===== */
.bank-footer-area {
  background: var(--bsv-footer-bg);
  border-top-color: var(--bsv-accent);
}

.bank-footer-area .footer_top .f-widget-title {
  color: var(--bsv-ink);
}

.bank-footer-area .about-widget p,
.bank-footer-area .footer-link li a {
  color: var(--bsv-muted);
}

.bank-footer-area .footer-link li a:hover {
  color: var(--bsv-accent);
}

.bank-footer-area .footer-developed-by {
  border-top-color: var(--bsv-border);
}

/* ===== Menu mobile ===== */
.va-menu__panel {
  background:
    radial-gradient(ellipse 80% 40% at 100% 0%, rgba(12, 133, 112, 0.08), transparent 55%),
    var(--bsv-menu-panel-bg);
  border-left-color: var(--bsv-border);
  box-shadow: -24px 0 60px rgba(15, 28, 26, 0.12);
}

.va-menu__brand,
.va-menu__link,
.va-menu__label {
  color: var(--bsv-ink);
}

.va-menu__link {
  border-bottom-color: var(--bsv-border);
}

.va-menu__link:hover,
.va-menu__link:focus {
  color: var(--bsv-accent);
}

.va-menu__index {
  color: color-mix(in srgb, var(--bsv-accent) 70%, transparent);
}

.va-menu__close {
  border-color: var(--bsv-border);
}

.va-menu__close span {
  background: var(--bsv-ink-deep);
}

.va-menu__contact {
  border-top-color: var(--bsv-border);
}

.va-menu__contact-link,
.va-menu__tagline {
  color: var(--bsv-muted);
}

.va-menu__contact-link:hover,
.va-menu__contact-link:focus {
  color: var(--bsv-accent);
}

.va-menu__backdrop {
  background: rgba(15, 28, 26, 0.35);
}

/* ===== Cards / legal ===== */
.client-area .client-slider .single-client {
  background: var(--bsv-surface-card);
  border-color: var(--bsv-border);
}

.client-area .client-slider .single-client .quote,
.client-area .client-slider .single-client .client-info p {
  color: var(--bsv-body);
}

.page-legal {
  background: transparent;
  color: var(--bsv-body);
}

.legal-content h1 {
  color: var(--bsv-ink);
}

.legal-content h2,
.legal-eyebrow a,
.legal-content a {
  color: var(--bsv-accent);
}

.legal-content p,
.legal-lead {
  color: var(--bsv-body);
}

/* ===== Utilitários ===== */
.bg-black {
  background-color: var(--bsv-base) !important;
}

.bg-black-100 {
  background-color: var(--bsv-surface) !important;
}

.text-turquesa1 {
  color: var(--bsv-accent);
}

.process-area,
.bank-app-showcase-area {
  background-color: #ffffff !important;
}

#back-to-top {
  background: var(--bsv-accent-fill);
  color: var(--bsv-on-accent);
}

.theme-btn {
  background: var(--bsv-gradient-accent);
  color: var(--bsv-on-accent);
  font-family: var(--bsv-font-button) !important;
  font-weight: 600 !important;
}

.theme-btn:hover,
.theme-btn:focus {
  background: var(--bsv-ink-deep);
  color: #fff;
}
