/*
Theme Name:    SimulaDinheiro Astra Child
Theme URI:     https://simuladinheiro.com
Description:   Child theme do Astra pro SimulaDinheiro. Concentra TODO o CSS/JS/PHP de customização aqui em vez de espalhar em 40+ mu-plugins. Migração gradual: cada mu-plugin SD vai sendo movido pra este tema (ver functions.php).
Author:        Bruno Cassola
Author URI:    https://simuladinheiro.com
Template:      astra
Version:       1.0.0
Updated:       2026-06-01
Text Domain:   simuladinheiro-astra-child
*/

/* Fontes Google — migrado de sd-theme-premium-v1.php */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Playfair+Display:wght@600;700&display=swap');


/* ===========================================================================
   ESTRUTURA DO TEMA
   ---------------------------------------------------------------------------
   style.css       → este arquivo (CSS global migrado dos mu-plugins, em fases)
   functions.php   → hooks PHP migrados, enqueue de assets
   assets/css/     → CSS específico por componente (calc, header, footer, ...)
   assets/js/      → JS específico
   inc/            → módulos PHP separados por função
   =========================================================================== */

/* ===== TOKENS (CSS variables) — única fonte da verdade ===== */
:root {
    /* Verde Simula Dinheiro */
    --sd-green-900: #0B3D2E;
    --sd-green-800: #08291F;
    --sd-green-700: #134E3A;
    --sd-green-600: #216f62;
    --sd-green-500: #278575;
    --sd-green-300: #A8D4C0;
    --sd-green-50:  #E6EFEA;

    /* Dourado */
    --sd-gold-700:  #B89549;
    --sd-gold-500:  #C9A961;
    --sd-gold-300:  #FAF6EC;

    /* Roxo Nubank */
    --sd-nu-900:    #1C0330;
    --sd-nu-800:    #320754;
    --sd-nu-500:    #8D0CE3;
    --sd-nu-400:    #9333EA;
    --sd-nu-300:    #C084FC;

    /* Neutros */
    --sd-text:      #303030;
    --sd-white:     #FFFFFF;

    /* Status */
    --sd-success:   #16A34A;
    --sd-warning:   #F59E0B;
    --sd-danger:    #DC2626;

    /* Tipografia */
    --sd-font-body:    "Inter", system-ui, sans-serif;
    --sd-font-display: "Playfair Display", Georgia, serif;

    /* Raios e sombras */
    --sd-radius-md:  12px;
    --sd-radius-lg:  16px;
    --sd-shadow-md:  0 4px 12px rgba(0,0,0,0.08);

    /* Largura máxima de container */
    --sd-max-content: 1180px;
}

/* ===== Nota de migração =====
   Até esta primeira versão, NENHUM mu-plugin foi migrado ainda — só o esqueleto
   + tokens estão aqui. Conforme cada categoria for migrada, este arquivo cresce
   E o mu-plugin correspondente é REMOVIDO do /wp-content/mu-plugins/.

   Próximas migrações planejadas (em ordem de risco crescente):
   1. fixes-temp (em andamento — só sd-script-entities-fix.php migra pra functions.php)
   2. design-system (6 plugins → 1 bloco aqui)
   3. layout (8 plugins → consolidar)
   4. calc (12 plugins → /assets/css/calc.css)
   5. nubank (3 plugins → /assets/css/nubank.css)
   6. home / sections-rich
*/


/* ===========================================================================
   MIGRAÇÕES DE MU-PLUGINS — FASE 3 (2026-06-01)
   Origens: 5 mu-plugins consolidados aqui (eram CSS-only).
   Após este append + remoção dos plugins originais, o site continua igual.
   =========================================================================== */


/* === Migrado de sd-header-bege-v1.php === */

/* Header bege em todas paginas (logo area) */
html body .ast-primary-header-bar,
html body .ast-primary-header-bar.main-header-bar,
html body .main-header-bar-wrap,
html body .main-header-bar,
html body #masthead .main-header-bar,
html body #masthead .ast-mobile-header-wrap .ast-primary-header-bar,
html body .ast-above-header-bar,
html body .ast-below-header-bar {
    background-color: #FAF6EC !important;
    background-image: none !important;
}


/* === Migrado de sd-design-system-v1.php === */

/* === SD DESIGN SYSTEM v1 — Tipografia + Estrutura editorial profissional === */
/* Aplica em .entry-content de TODAS as paginas, sem afetar calcs/Nubank/footer */

html body .entry-content { color: #1f2937; line-height: 1.65; }

/* === Hierarquia tipografica === */
html body .entry-content h1 { font-family: 'Playfair Display', Georgia, serif !important; font-size: 38px !important; line-height: 1.15 !important; color: #0B3D2E !important; margin: 0 0 24px !important; letter-spacing: -0.01em !important; font-weight: 800 !important; }
html body .entry-content h2 { font-family: 'Playfair Display', Georgia, serif !important; font-size: 28px !important; line-height: 1.2 !important; color: #0B3D2E !important; margin: 48px 0 16px !important; padding: 0 0 12px !important; letter-spacing: -0.005em !important; font-weight: 700 !important; border-bottom: 2px solid #C9A961 !important; position: relative !important; }
html body .entry-content h2::after { content: '' !important; position: absolute !important; bottom: -2px !important; left: 0 !important; width: 60px !important; height: 4px !important; background: #0B3D2E !important; }
html body .entry-content h3 { font-family: 'Inter', system-ui, sans-serif !important; font-size: 21px !important; line-height: 1.3 !important; color: #0B3D2E !important; margin: 32px 0 12px !important; font-weight: 700 !important; }
html body .entry-content h3::before { content: '— ' !important; color: #C9A961 !important; font-weight: 700 !important; }
html body .entry-content h4 { font-family: 'Inter', system-ui, sans-serif !important; font-size: 17px !important; line-height: 1.35 !important; color: #134E3A !important; margin: 24px 0 10px !important; font-weight: 700 !important; text-transform: uppercase !important; letter-spacing: 0.6px !important; }

/* === Paragrafos === */
html body .entry-content p { margin: 0 0 18px !important; font-size: 16.5px !important; line-height: 1.75 !important; color: #1f2937 !important; }
html body .entry-content p:first-of-type::first-letter { /* drop cap discreto */
    /* float: left; font-family: 'Playfair Display', Georgia, serif; font-size: 56px; line-height: 0.85; padding: 6px 8px 0 0; color: #C9A961; font-weight: 800; */
}

/* === Strong / em === */
html body .entry-content strong, html body .entry-content b { color: #0B3D2E !important; font-weight: 700 !important; }
html body .entry-content em { color: #134E3A !important; font-style: italic !important; }

/* === Separadores HR === */
html body .entry-content hr { border: 0 !important; height: 1px !important; background: linear-gradient(90deg, transparent 0%, #C9A961 50%, transparent 100%) !important; margin: 40px auto !important; max-width: 600px !important; position: relative !important; }
html body .entry-content hr::after { content: '◆' !important; display: block !important; position: relative !important; top: -14px !important; text-align: center !important; color: #C9A961 !important; background: #ffffff !important; width: 30px !important; margin: 0 auto !important; font-size: 14px !important; }

/* === Listas === */
html body .entry-content ul, html body .entry-content ol { margin: 0 0 22px !important; padding-left: 28px !important; }
html body .entry-content ul li, html body .entry-content ol li { margin-bottom: 8px !important; line-height: 1.7 !important; }
html body .entry-content ul { list-style: none !important; padding-left: 4px !important; }
html body .entry-content ul li { position: relative !important; padding-left: 22px !important; }
html body .entry-content ul li::before { content: '◆' !important; color: #C9A961 !important; position: absolute !important; left: 0 !important; top: 0 !important; font-size: 11px !important; }
html body .entry-content ol { padding-left: 28px !important; }
html body .entry-content ol li::marker { color: #C9A961 !important; font-weight: 700 !important; }

/* === Blockquote === */
html body .entry-content blockquote { margin: 28px 0 !important; padding: 20px 28px !important; border-left: 4px solid #C9A961 !important; background: #FAF6EC !important; font-style: italic !important; color: #134E3A !important; font-size: 17px !important; line-height: 1.6 !important; border-radius: 0 8px 8px 0 !important; }
html body .entry-content blockquote p { margin-bottom: 0 !important; }

/* === Imagens === */
html body .entry-content img:not(.custom-logo):not([class*="wp-emoji"]):not([class*="emoji"]) { max-width: 100% !important; height: auto !important; border-radius: 12px !important; box-shadow: 0 6px 18px rgba(0,0,0,0.08) !important; margin: 16px auto !important; display: block !important; }
html body .entry-content figure { margin: 32px auto !important; text-align: center !important; }
html body .entry-content figcaption { font-size: 13px !important; color: #6b7280 !important; margin-top: 10px !important; font-style: italic !important; }

/* === Tabela === */
html body .entry-content table:not(.sd-fc table):not([class*="sd-"]) { width: 100% !important; border-collapse: collapse !important; margin: 24px 0 !important; font-size: 15px !important; border-radius: 8px !important; overflow: hidden !important; box-shadow: 0 2px 8px rgba(0,0,0,0.06) !important; }
html body .entry-content table:not(.sd-fc table):not([class*="sd-"]) th { background: #0B3D2E !important; color: #fff !important; padding: 12px 16px !important; text-align: left !important; font-weight: 700 !important; }
html body .entry-content table:not(.sd-fc table):not([class*="sd-"]) td { padding: 11px 16px !important; border-bottom: 1px solid #e5e7eb !important; }
html body .entry-content table:not(.sd-fc table):not([class*="sd-"]) tr:nth-child(even) td { background: #FAF6EC !important; }

/* === Links === */
html body .entry-content a:not(.sd-fc a):not(.sd-cta):not([class*="sd-"]):not([class*="ast-"]):not(.btn) { color: #0B3D2E !important; text-decoration: underline !important; text-decoration-color: #C9A961 !important; text-underline-offset: 3px !important; text-decoration-thickness: 1.5px !important; font-weight: 600 !important; }
html body .entry-content a:not(.sd-fc a):not(.sd-cta):not([class*="sd-"]):not([class*="ast-"]):not(.btn):hover { color: #C9A961 !important; }

/* === Espacamento de secoes === */
html body .entry-content section { margin: 40px 0 !important; }

/* === Drop cap em paragrafos de introducao (opcional, so' em paginas institucionais) === */
html body.page-id-12 .entry-content p:first-of-type::first-letter,
html body.page-id-27995 .entry-content p:first-of-type::first-letter,
html body.page-id-3 .entry-content p:first-of-type::first-letter,
html body.page-id-27996 .entry-content p:first-of-type::first-letter,
html body.page-id-1092 .entry-content p:first-of-type::first-letter {
    float: left !important;
    font-family: 'Playfair Display', Georgia, serif !important;
    font-size: 60px !important;
    line-height: 0.85 !important;
    padding: 8px 10px 0 0 !important;
    color: #C9A961 !important;
    font-weight: 800 !important;
}

/* === NAO aplicar nada do design system DENTRO da calculadora === */
html body .entry-content .sd-fc h1,
html body .entry-content .sd-fc h2,
html body .entry-content .sd-fc h3,
html body .entry-content .sd-fc h4,
html body .entry-content .sd-fc p,
html body .entry-content .sd-fc-result h1,
html body .entry-content .sd-fc-result h2,
html body .entry-content .sd-fc-result h3,
html body .entry-content .sd-fc-result h4,
html body .entry-content .sd-fc-result p {
    border: 0 !important;
    background: transparent !important;
    padding: 0 !important;
}
html body .entry-content .sd-fc h2::after,
html body .entry-content .sd-fc h3::before { content: none !important; }

/* === Mobile === */
@media (max-width: 768px) {
    html body .entry-content h1 { font-size: 28px !important; margin-bottom: 18px !important; }
    html body .entry-content h2 { font-size: 22px !important; margin: 32px 0 12px !important; }
    html body .entry-content h3 { font-size: 18px !important; margin: 24px 0 10px !important; }
    html body .entry-content p { font-size: 15.5px !important; line-height: 1.7 !important; }
    html body .entry-content blockquote { padding: 16px 20px !important; font-size: 15.5px !important; }
}


/* === Migrado de sd-theme-premium-v1.php === */
/* === Tipografia: body Inter, headings Playfair === */
body, body p, body li, body span, body label, body input, body select, body textarea {
    font-family: "Inter", sans-serif !important;
}
.entry-content h1, .entry-content h2, .entry-content h3, .entry-content h4,
.entry-title, .ast-section-title, .ast-blog-single-element h1,
.wp-block-heading, body main h1, body main h2, body main h3,
.widget-title, .ast-widget-title {
    font-family: "Playfair Display", "Inter", serif !important;
    color: #0B3D2E !important;
    letter-spacing: -0.3px !important;
}

/* === Sections da home: fundo creme + accent dourado === */
body.home .entry-content > section, body.page-id-26737 .entry-content > section {
    background: #F5EFE0 !important;
    border-top: 3px solid #C9A961 !important;
    padding: 48px 24px !important;
    margin-bottom: 0 !important;
}

/* === Hero (primeira section) = verde escuro full-bleed === */
body.home .entry-content > section:first-of-type, body.page-id-26737 .entry-content > section:first-of-type {
    border-top: none !important;
    background: linear-gradient(135deg, #0B3D2E 0%, #134E3A 100%) !important;
    color: white !important;
    padding: 72px 32px 80px !important;
    position: relative !important;
    overflow: hidden !important;
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    box-sizing: border-box !important;
}
body.home .entry-content > section:first-of-type::before, body.page-id-26737 .entry-content > section:first-of-type::before {
    content: "" !important;
    display: none !important;
    background: rgba(201, 169, 97, 0.15) !important;
    color: #C9A961 !important;
    padding: 5px 14px !important;
    border-radius: 4px !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 1.5px !important;
    margin-bottom: 18px !important;
    border: 1px solid rgba(201, 169, 97, 0.35) !important;
    font-family: "Inter", sans-serif !important;
}
body.home .entry-content > section:first-of-type::after, body.page-id-26737 .entry-content > section:first-of-type::after {
    content: "" !important;
    position: absolute !important;
    top: -60px !important;
    right: -80px !important;
    width: 400px !important;
    height: 400px !important;
    background: radial-gradient(circle, rgba(201,169,97,0.18) 0%, transparent 70%) !important;
    pointer-events: none !important;
    z-index: 0 !important;
}
.entry-content > section:first-of-type > div,
.entry-content > section:first-of-type > * {
    position: relative !important;
    z-index: 1 !important;
}
body.home .entry-content > section:first-of-type h1, body.page-id-26737 .entry-content > section:first-of-type h1 {
    color: #FFFFFF !important;
    font-family: "Playfair Display", serif !important;
    font-size: 44px !important;
    line-height: 1.15 !important;
    margin-bottom: 18px !important;
    margin-top: 18px !important;
    max-width: 760px !important;
    letter-spacing: -0.5px !important;
    font-weight: 700 !important;
}
body.home .entry-content > section:first-of-type p, body.page-id-26737 .entry-content > section:first-of-type p {
    color: #C8D4CE !important;
    font-size: 16px !important;
    line-height: 1.6 !important;
    max-width: 580px !important;
    margin-bottom: 28px !important;
    font-family: "Inter", sans-serif !important;
}
.entry-content > section:first-of-type a,
.entry-content > section:first-of-type a.sd-cta-primary {
    background: #C9A961 !important;
    color: #0B3D2E !important;
    padding: 14px 28px !important;
    border-radius: 6px !important;
    font-weight: 700 !important;
    font-size: 14px !important;
    text-decoration: none !important;
    display: inline-block !important;
    border: 2px solid #C9A961 !important;
    transition: all 0.2s ease !important;
    font-family: "Inter", sans-serif !important;
    letter-spacing: 0.3px !important;
    margin-right: 8px !important;
    margin-bottom: 6px !important;
}
.entry-content > section:first-of-type a:hover,
.entry-content > section:first-of-type a.sd-cta-primary:hover {
    background: #B8965A !important;
    border-color: #B8965A !important;
    transform: translateY(-1px) !important;
}

/* === Esconder botão Ver Caixinha Nubank no hero (v1 + 2026-06-01) === */
body.home .entry-content > section:first-of-type a.sd-cta-secondary,
body.page-id-26737 .entry-content > section:first-of-type a.sd-cta-secondary {
    display: none !important;
}

body.home .entry-content > section:first-of-type a.sd-cta-secondary, body.page-id-26737 .entry-content > section:first-of-type a.sd-cta-secondary {
    background: transparent !important;
    color: #FFFFFF !important;
    border: 2px solid rgba(255, 255, 255, 0.35) !important;
}
body.home .entry-content > section:first-of-type a.sd-cta-secondary:hover, body.page-id-26737 .entry-content > section:first-of-type a.sd-cta-secondary:hover {
    background: rgba(255, 255, 255, 0.08) !important;
    border-color: #FFFFFF !important;
    transform: translateY(-1px) !important;
}

/* === Cards de calc na home (divs com h3 dentro) — descend combinator === */
.entry-content section div:has(> h3) {
    transition: all 0.2s ease !important;
}
.entry-content section div:has(> h3):hover {
    border-color: #C9A961 !important;
    box-shadow: 0 6px 20px rgba(11, 61, 46, 0.1) !important;
    transform: translateY(-1px) !important;
}

/* === Links CTA dentro dos cards: dourado === */
.entry-content section div:has(> h3) > a,
.entry-content section div > a[href*="/calc"], 
.entry-content section div > a[href*="/financiamento"],
.entry-content section div > a[href*="/recisao"],
.entry-content section div > a[href*="/quanto"],
.entry-content section div > a[href*="/comparativo"] {
    color: #0B3D2E !important;
    font-weight: 700 !important;
    border: 1px solid #C9A961 !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
    font-family: "Inter", sans-serif !important;
    display: inline-block !important;
    margin-top: 6px !important;
}
.entry-content section div:has(> h3) > a:hover,
.entry-content section div > a[href*="/calc"]:hover,
.entry-content section div > a[href*="/financiamento"]:hover,
.entry-content section div > a[href*="/recisao"]:hover,
.entry-content section div > a[href*="/quanto"]:hover,
.entry-content section div > a[href*="/comparativo"]:hover {
    color: #C9A961 !important;
    border-bottom-color: #0B3D2E !important;
}

/* === Vars CSS das calculadoras: paleta verde + dourado === */
:root {
    --sd-primary: #0B3D2E !important;
    --sd-primary-dark: #08291F !important;
    --sd-hero-from: #0B3D2E !important;
    --sd-hero-to: #134E3A !important;
    --sd-card-border: #C9A961 !important;
    --sd-chart-border: #C9A961 !important;
    --sd-success: #C9A961 !important;
    --sd-text: #1A1F2E !important;
}
#sd_areaCalc, #sd_areaCalc.sd-theme-nubank, .sd-theme-nubank {
    --sd-primary: #0B3D2E !important;
    --sd-primary-dark: #08291F !important;
    --sd-hero-from: #0B3D2E !important;
    --sd-hero-to: #134E3A !important;
    --sd-card-border: #C9A961 !important;
    --sd-chart-border: #C9A961 !important;
    --sd-success: #C9A961 !important;
}

/* === Calcs Nubank: hex inline roxo vira verde === */
[style*="#8D0CE3"], [style*="#8d0ce3"] { background-color: #0B3D2E !important; }
[style*="#5C0892"], [style*="#5c0892"] { background-color: #08291F !important; }
[style*="background:#8D0CE3"], [style*="background: #8D0CE3"] { background: #0B3D2E !important; }
[style*="background:#5C0892"], [style*="background: #5C0892"] { background: #08291F !important; }
[style*="color:#8D0CE3"], [style*="color: #8D0CE3"] { color: #0B3D2E !important; }
[style*="border-color:#8D0CE3"] { border-color: #C9A961 !important; }
[style*="border: 5px solid #374151"], [style*="border:5px solid #374151"] { border-color: #C9A961 !important; }
[style*="linear-gradient"][style*="8D0CE3"],
[style*="linear-gradient"][style*="5C0892"],
[style*="linear-gradient"][style*="8d0ce3"],
[style*="linear-gradient"][style*="5c0892"] {
    background-image: linear-gradient(135deg, #0B3D2E, #134E3A) !important;
    background: linear-gradient(135deg, #0B3D2E, #134E3A) !important;
}

/* === Botoes Exportar / Email = dourado === */
button[onclick*="exportarPDF"], button[onclick*="exportar"],
button[onclick*="checkEmail"], button[onclick*="enviarEmail"],
button[onclick*="salvarEmail"], button[onclick*="email"],
a[onclick*="exportarPDF"], a[onclick*="checkEmail"] {
    background: #C9A961 !important;
    background-color: #C9A961 !important;
    color: #0B3D2E !important;
    border-color: #C9A961 !important;
    font-weight: 700 !important;
}
button[onclick*="exportarPDF"]:hover, button[onclick*="checkEmail"]:hover {
    background: #B8965A !important;
}

/* === Botao Calcular === */
button[onclick*="calcular"], button[onclick*="sdCalc"], button[onclick*="Calcular"],
button[onclick*="calc"], #sd_btnCalcular, .sd-btn-calcular {
    background: #0B3D2E !important;
    background-color: #0B3D2E !important;
    color: #FFFFFF !important;
    border-color: #0B3D2E !important;
    font-weight: 700 !important;
}

/* === Links no conteudo: verde escuro hover dourado === */
.entry-content a:not(.wp-block-button__link):not(.menu-link) {
    color: #0B3D2E;
    text-decoration: underline;
    text-decoration-color: rgba(201, 169, 97, 0.5);
    text-underline-offset: 3px;
}
.entry-content a:not(.wp-block-button__link):not(.menu-link):hover {
    color: #C9A961;
    text-decoration-color: #C9A961;
}

/* === Botoes Astra/Spectra === */
.wp-block-button__link, .ast-custom-button,
.uagb-button-wrapper a.uagb-buttons-repeater {
    background: #0B3D2E !important;
    color: #FFFFFF !important;
    font-family: "Inter", sans-serif !important;
    font-weight: 700 !important;
    border-radius: 6px !important;
}
.wp-block-button__link:hover, .ast-custom-button:hover {
    background: #C9A961 !important;
    color: #0B3D2E !important;
}

/* === Footer Astra: verde escuro === */
.site-footer, .ast-footer-overlay, #colophon,
footer.site-footer .ast-builder-grid-row-container,
.site-below-footer-wrap, .site-primary-footer-wrap, .ast-below-footer-wrap {
    background: #0B3D2E !important;
    color: #E6EFEA !important;
}
.site-footer h1, .site-footer h2, .site-footer h3, .site-footer h4,
.site-footer .widget-title, .site-footer .ast-widget-title {
    color: #FFFFFF !important;
    font-family: "Playfair Display", serif !important;
}
.site-footer p, .site-footer span, .site-footer li {
    color: #C8D4CE !important;
}
.site-footer a {
    color: #C8D4CE !important;
    text-decoration: none !important;
}
.site-footer a:hover {
    color: #C9A961 !important;
}
.ast-small-footer, .site-below-footer-wrap {
    background: #08291F !important;
    border-top: 1px solid rgba(201, 169, 97, 0.2) !important;
}

/* === Card hover sd-card === */
#sd_areaCalc .sd-card:hover, [class*="sd-card"]:hover {
    border-color: #C9A961 !important;
}

/* === Tabelas dentro de calculadoras: header verde === */
#sd_blocoResultado table thead, #sd_blocoResultado table th,
#sd_areaCalc table thead, #sd_areaCalc table th {
    background: #0B3D2E !important;
    color: white !important;
}

/* === Separador HR vira accent dourado === */
.entry-content hr.wp-block-separator {
    border-color: #C9A961 !important;
    background: #C9A961 !important;
    opacity: 0.4 !important;
}


/* === Logo horizontal "Simula Dinheiro" === */
.custom-logo, .site-logo-img img, .ast-logo-svg-icon, img.custom-logo {
    content: url("/wp-content/uploads/2026/06/simula-dinheiro-logo-h.png?v=20260601001") !important;
    max-width: 280px !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
}
.custom-logo-link, .site-logo-img {
    display: inline-block !important;
}

/* === Hero texto alinhado a esquerda + maxwidth controlado === */
body.home .entry-content > section:first-of-type, body.page-id-26737 body.home .entry-content > section:first-of-type, body.page-id-26737 .entry-content > section:first-of-type {
    text-align: left !important;
}
body.home .entry-content > section:first-of-type > div, body.page-id-26737 .entry-content > section:first-of-type > div {
    max-width: 1100px !important;
    margin: 0 auto !important;
    text-align: left !important;
}
.entry-content > section:first-of-type h1,
.entry-content > section:first-of-type p,
.entry-content > section:first-of-type a {
    text-align: left !important;
}/* === RESULTADO PADRAO calcs nao-Nubank (2026-06-01) === */
body:not(.sd-nubank-page) [style*="linear-gradient(135deg,#2563eb"],
body:not(.sd-nubank-page) [style*="linear-gradient(135deg, #2563eb"],
body:not(.sd-nubank-page) [style*="linear-gradient(135deg,#1d4ed8"],
body:not(.sd-nubank-page) [style*="linear-gradient(135deg, #1d4ed8"],
body:not(.sd-nubank-page) [style*="linear-gradient(135deg,#3b82f6"],
body:not(.sd-nubank-page) [style*="background:linear-gradient(135deg,#2563eb"] {
    background: linear-gradient(135deg, #0B3D2E 0%, #1A6347 100%) !important;
    color: #fff !important;
}
body:not(.sd-nubank-page) [style*="color:#5B5BD6"],
body:not(.sd-nubank-page) [style*="color: #5B5BD6"],
body:not(.sd-nubank-page) [style*="color:#2563eb"],
body:not(.sd-nubank-page) [style*="color: #2563eb"],
body:not(.sd-nubank-page) [style*="color:#1d4ed8"],
body:not(.sd-nubank-page) [style*="color: #1d4ed8"],
body:not(.sd-nubank-page) [style*="color:#1e40af"] {
    color: #0B3D2E !important;
}
body:not(.sd-nubank-page) [style*="background:#DBEAFE"],
body:not(.sd-nubank-page) [style*="background: #DBEAFE"],
body:not(.sd-nubank-page) [style*="background:#dbeafe"],
body:not(.sd-nubank-page) [style*="background:#EFF6FF"],
body:not(.sd-nubank-page) [style*="background:#eff6ff"],
body:not(.sd-nubank-page) [style*="background-color:#DBEAFE"] {
    background: #F0F6F3 !important;
    border-color: #C9A961 !important;
}
body:not(.sd-nubank-page) [style*="border:1px solid #93c5fd"],
body:not(.sd-nubank-page) [style*="border: 1px solid #93c5fd"],
body:not(.sd-nubank-page) [style*="border:1px solid #BFDBFE"],
body:not(.sd-nubank-page) [style*="border:2px solid #93c5fd"] {
    border-color: #C9A961 !important;
}
body:not(.sd-nubank-page) .sd-hero,
body:not(.sd-nubank-page) #sd_heroResult {
    background: linear-gradient(135deg, #0B3D2E 0%, #1A6347 100%) !important;
    color: #fff !important;
    border-radius: 14px !important;
    padding: 22px !important;
    margin-bottom: 14px !important;
}
body:not(.sd-nubank-page) #sd_blocoResultado .sd-card-block,
body:not(.sd-nubank-page) #sd_cardsResult > div {
    border-radius: 12px !important;
    border: 1px solid #C9A961 !important;
    background: #fff !important;
    margin-bottom: 10px !important;
    padding: 14px 16px !important;
}
body:not(.sd-nubank-page) .sd-big {
    font-family: "DM Serif Display", Georgia, serif !important;
    color: #0B3D2E !important;
    font-weight: 400 !important;
}


/* === Body bg areia APENAS na home (2026-06-01, refinado) === */
body.home, body.page-id-26737, body.home .ast-separate-container, body.page-id-26737 .ast-separate-container { background-color: #F5EFE0 !important; }
body.page:not(.home):not(.page-id-26737), body.page:not(.home):not(.page-id-26737) .ast-separate-container { background-color: #FFFFFF !important; }


/* === Hub intro verde escuro (2026-06-01) === */
body .sd-hub .sd-intro,
body .sd-hub-intro,
body .sd-hub-hero { background: linear-gradient(135deg, #0B3D2E 0%, #1A6347 100%) !important; color: #fff !important; }
body .sd-hub .sd-intro h1,
body .sd-hub .sd-intro h2,
body .sd-hub .sd-intro h3,
body .sd-hub .sd-intro p,
body .sd-hub .sd-intro a { color: #fff !important; }


/* === sd-card border gold + bg areia (2026-06-01) === */
body .sd-hub .sd-card,
body .sd-card { border: 1px solid #C9A961 !important; background: #FDF9F0 !important; }
body .sd-hub .sd-card:hover { border-color: #B89549 !important; box-shadow: 0 6px 18px rgba(201,169,97,0.18) !important; }

/* === Hub pages verde escuro (2026-06-01) === */
body .sd-card-icon { background: #0B3D2E !important; color: #C9A961 !important; }
body .sd-card-icon svg { color: #C9A961 !important; stroke: #C9A961 !important; fill: #C9A961 !important; }
body .sd-card-icon svg * { stroke: #C9A961 !important; fill: #C9A961 !important; }
body .sd-tag { background: #0B3D2E !important; color: #fff !important; }
body .sd-cta { background: #C9A961 !important; color: #0B3D2E !important; border: 1px solid #B89549 !important; font-weight: 700 !important; }
body .sd-cta:hover { background: #B89549 !important; color: #0B3D2E !important; box-shadow: 0 6px 16px rgba(201,169,97,0.35) !important; }


/* === sd-fc-card calc nao-Nubank borda fina gold (2026-06-01) === */
html body:not(.sd-nubank-page) .entry-content .sd-fc .sd-fc-card { background-color: #ffffff !important; background: #ffffff !important; background-image: none !important; border: none !important; box-shadow: none !important; }
html body:not(.sd-nubank-page) .entry-content .sd-fc .sd-fc-form { background-color: #ffffff !important; }
html body:not(.sd-nubank-page) .entry-content .sd-fc .sd-fc-result { background-color: #FAFBF7 !important; }
html body:not(.sd-nubank-page) .entry-content .sd-fc .sd-fc-head { background: linear-gradient(135deg, #0B3D2E 0%, #134E3A 100%) !important; background-color: #0B3D2E !important; }

/* === Fix responsivo calcs mobile (2026-06-01) === */
@media (max-width: 880px) {
    body .sd-fc { max-width: 100% !important; padding: 0 12px !important; box-sizing: border-box !important; }
    body .sd-fc-card { max-width: 100% !important; width: 100% !important; box-sizing: border-box !important; overflow: hidden !important; }
    body .sd-fc-body { display: block !important; grid-template-columns: 1fr !important; }
    body .sd-fc-form, body .sd-fc-result { width: 100% !important; max-width: 100% !important; padding: 22px 18px !important; box-sizing: border-box !important; border-right: none !important; }
    body .sd-fc-form { border-bottom: 1px solid #E8EAE4 !important; }
    body .sd-fc-iw input[type=number], body .sd-fc-iw input[type=text], body .sd-fc-iw select { font-size: 17px !important; padding: 13px 14px 13px 42px !important; max-width: 100% !important; box-sizing: border-box !important; }
    body .sd-fc-qp { display: flex !important; flex-wrap: wrap !important; gap: 6px !important; }
    body .sd-fc-qp button { font-size: 12px !important; padding: 6px 10px !important; }
    body .sd-fc-actions { flex-wrap: wrap !important; }
    body .sd-fc-actions .sd-fc-btn { min-width: 130px !important; flex: 1 1 130px !important; }
}
@media (max-width: 480px) {
    body .sd-fc { padding: 0 8px !important; }
    body .sd-fc-head { padding: 22px 18px !important; }
    body .sd-fc-head h1 { font-size: 21px !important; }
    body .sd-fc-form, body .sd-fc-result { padding: 18px 14px !important; }
}

/* === Outras simulacoes botoes branco+gold v4 (2026-06-01) === */
html body.home .entry-content section[style*="#EEEEEE"] a,
html body.page-id-26737 .entry-content section[style*="#EEEEEE"] a,
html body.home .entry-content section[style*="EEEEEE"] a,
html body.page-id-26737 .entry-content section[style*="EEEEEE"] a,
html body.home .entry-content section[style*="0F2A1A"] a,
html body.page-id-26737 .entry-content section[style*="0F2A1A"] a,
html body.home .entry-content section[style*="0B3D2E"] a,
html body.page-id-26737 .entry-content section[style*="0B3D2E"] a {
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #0B3D2E !important;
    border: 1.5px solid #C9A961 !important;
    font-weight: 700 !important;
    transition: all 0.2s ease !important;
}
html body.home .entry-content section[style*="#EEEEEE"] a:hover,
html body.page-id-26737 .entry-content section[style*="#EEEEEE"] a:hover,
html body.home .entry-content section[style*="0F2A1A"] a:hover,
html body.page-id-26737 .entry-content section[style*="0F2A1A"] a:hover,
html body.home .entry-content section[style*="0B3D2E"] a:hover,
html body.page-id-26737 .entry-content section[style*="0B3D2E"] a:hover {
    background: #FAF5E8 !important;
    background-color: #FAF5E8 !important;
    border-color: #B89549 !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 6px 16px rgba(201,169,97,0.35) !important;
}


/* === Borda gold nos botoes Calcular/Limpar v1 (2026-06-01) === */
html body .entry-content .sd-fc-btn,
html body .entry-content .sd-fc-btn-p,
html body .entry-content .sd-fc-btn-s,
html body .entry-content button.sd-fc-btn {
    border: 1.5px solid #C9A961 !important;
    border-width: 1.5px !important;
    border-style: solid !important;
    border-color: #C9A961 !important;
}
html body .entry-content .sd-fc-btn:hover,
html body .entry-content .sd-fc-btn-p:hover,
html body .entry-content .sd-fc-btn-s:hover {
    border-color: #B89549 !important;
}

/* === Esconde box autor (2026-06-01) === */
body .sd-author-box { display: none !important; }


/* === Override final calc card (carrega por ultimo) === */
html body.ast-page-builder-template:not(.sd-nubank-page) .entry-content .sd-fc .sd-fc-card,
html body.page:not(.sd-nubank-page) .entry-content .sd-fc .sd-fc-card {
    background: #ffffff !important;
    background-color: #ffffff !important;
    background-image: none !important;
    border: none !important;
    box-shadow: none !important;
    color: #1A1F2E !important;
}


/* === Migrado de sd-hero-badge-v1.php === */

.sd-hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: <?php echo esc_attr($b['bg']); ?>;
    color: <?php echo esc_attr($b['fg']); ?>;
    padding: 6px 14px 6px 10px;
    border-radius: 999px;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    font-weight: 700;
    margin: 0 0 14px;
    border: 1.5px solid <?php echo esc_attr($b['fg']); ?>;
}
.sd-hero-badge svg { width: 16px; height: 16px; }

/* Icones nos H2 (genericos pra dar peso visual) */
html body .entry-content h2:not(.sd-fc h2) {
    padding-left: 0 !important;
    position: relative !important;
}
html body .entry-content h2:not(.sd-fc h2)::before {
    content: '' !important;
    display: inline-block !important;
    width: 22px !important;
    height: 22px !important;
    margin-right: 10px !important;
    vertical-align: -3px !important;
    background: no-repeat center/contain;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230B3D2E' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'><polyline points='3 17 9 11 13 15 21 7'/><polyline points='14 7 21 7 21 14'/></svg>");
}

/* === Nao aplicar em paginas calcs/hub que ja' tem seu hero === */
html body.home .sd-hero-badge,
html body.page-id-26737 .sd-hero-badge { display: none !important; }


/* === Migrado de sd-simuladores-cta-bege.php === */

    html body .entry-content #simuladores a.sd-simul-cta {
        background: #FAF6E8 !important;
        background-color: #FAF6E8 !important;
        border-color: #B89549 !important;
        text-decoration: none !important;
        transition: background .2s ease, border-color .2s ease;
    }
    html body .entry-content #simuladores a.sd-simul-cta:hover {
        background: #FFF8DC !important;
        background-color: #FFF8DC !important;
        border-color: #FFCD3C !important;
    }
    

/* ===========================================================================
   MIGRAÇÕES DE MU-PLUGINS — FASE 4 LAYOUT (2026-06-01)
   6 mu-plugins simples migrados aqui (CSS-only):
     - sd-pages-layout-v1.php
     - sd-header-socials.php
     - sd-footer-organize-v1.php
     - sd-home-separators-v1.php
     - sd-hero-extend-v1.php
     - sd-blog-section-bege.php
   NÃO migrados (PHP dinâmico complexo, ficam em mu-plugins/):
     - sd-header-height-v1.php (37KB, REST API + filter the_content)
     - sd-menu-color-v1.php (24KB, JS menu mobile + função geradora de CSS)
   =========================================================================== */


/* === Migrado de sd-pages-layout-v1.php === */

/* Aplicar APENAS no nivel 1 (filhos diretos do entry-content) — nao alcanca filhos dentro da calc */
body:not(.home):not(.page-id-26737) .entry-content > h1,
body:not(.home):not(.page-id-26737) .entry-content > h2,
body:not(.home):not(.page-id-26737) .entry-content > h3,
body:not(.home):not(.page-id-26737) .entry-content > h4,
body:not(.home):not(.page-id-26737) .entry-content > p,
body:not(.home):not(.page-id-26737) .entry-content > ul,
body:not(.home):not(.page-id-26737) .entry-content > ol,
body:not(.home):not(.page-id-26737) .entry-content > blockquote,
body:not(.home):not(.page-id-26737) .entry-content > figure,
body:not(.home):not(.page-id-26737) .entry-content > .wp-block-image,
body:not(.home):not(.page-id-26737) .entry-content > .wp-block-paragraph,
body:not(.home):not(.page-id-26737) .entry-content > .wp-block-heading,
body:not(.home):not(.page-id-26737) .entry-content > .wp-block-list,
body:not(.home):not(.page-id-26737) .entry-content > img,
body:not(.home):not(.page-id-26737) .entry-content > div.gb-text,
body:not(.home):not(.page-id-26737) .entry-content > .wp-block-buttons {
    max-width: 820px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    box-sizing: border-box !important;
}

/* Paragrafos */
body:not(.home):not(.page-id-26737) .entry-content > p,
body:not(.home):not(.page-id-26737) .entry-content > .wp-block-paragraph {
    line-height: 1.7 !important;
    font-size: 17px !important;
    color: #1F2937 !important;
    margin-bottom: 18px !important;
}

/* Headings centralizados */
body:not(.home):not(.page-id-26737) .entry-content > h1,
body:not(.home):not(.page-id-26737) .entry-content > h2,
body:not(.home):not(.page-id-26737) .entry-content > h3,
body:not(.home):not(.page-id-26737) .entry-content > h4,
body:not(.home):not(.page-id-26737) .entry-content > .wp-block-heading {
    text-align: center !important;
    margin-top: 32px !important;
    margin-bottom: 16px !important;
}

/* Imagens centralizadas — APENAS filhas diretas (nao toca img dentro da calc) */
body:not(.home):not(.page-id-26737) .entry-content > img,
body:not(.home):not(.page-id-26737) .entry-content > figure img,
body:not(.home):not(.page-id-26737) .entry-content > .wp-block-image img {
    display: block !important;
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: 780px !important;
    height: auto !important;
    border-radius: 12px !important;
}

/* Listas */
body:not(.home):not(.page-id-26737) .entry-content > ul,
body:not(.home):not(.page-id-26737) .entry-content > ol,
body:not(.home):not(.page-id-26737) .entry-content > .wp-block-list {
    padding-left: 48px !important;
    padding-right: 20px !important;
}
body:not(.home):not(.page-id-26737) .entry-content > ul li,
body:not(.home):not(.page-id-26737) .entry-content > ol li {
    line-height: 1.7 !important;
    font-size: 17px !important;
    margin-bottom: 8px !important;
}

/* Divisor dourado */
.sd-divider-gold {
    border: 0 !important;
    border-top: 3px solid #B89549 !important;
    width: 100% !important;
    max-width: 720px !important;
    margin: 48px auto !important;
    height: 0 !important;
    background: transparent !important;
    opacity: 1 !important;
    padding: 0 !important;
}

@media (max-width: 768px) {
    .sd-divider-gold {
        border-top-width: 2px !important;
        margin: 32px auto !important;
    }
    body:not(.home):not(.page-id-26737) .entry-content > p,
    body:not(.home):not(.page-id-26737) .entry-content > ul li,
    body:not(.home):not(.page-id-26737) .entry-content > ol li {
        font-size: 16px !important;
    }
    body:not(.home):not(.page-id-26737) .entry-content > img,
    body:not(.home):not(.page-id-26737) .entry-content > figure img {
        max-width: 100% !important;
    }
}


/* ---- */



/* === Migrado de sd-header-socials.php === */

.ast-primary-header-bar { position: relative !important; }
.sd-header-socials { position: absolute !important; top: 50% !important; right: 32px !important; transform: translateY(-50%) !important; display: flex !important; gap: 10px !important; align-items: center !important; z-index: 100 !important; }
.sd-header-socials a { display: inline-flex; align-items: center; justify-content: center; width: 38px; height: 38px; border-radius: 10px; background: #ffffff; border: 1px solid rgba(0,0,0,0.08); box-shadow: 0 2px 6px rgba(0,0,0,0.06); transition: transform .15s ease, box-shadow .15s ease; text-decoration: none !important; }
.sd-header-socials a:hover { transform: translateY(-2px); box-shadow: 0 6px 14px rgba(0,0,0,0.12); }
.sd-header-socials svg { width: 20px; height: 20px; display: block; }
@media (max-width: 921px) { .sd-header-socials { right: 60px !important; gap: 6px !important; } .sd-header-socials a { width: 34px; height: 34px; } }
@media (max-width: 544px) { .sd-header-socials { display: none !important; } }


/* ---- */



/* === Migrado de sd-footer-organize-v1.php === */

/* Esconde widgets originais: Paginas (block-22), Ultimos Posts (block-21) e Receba Novidades (text-4) */
.site-footer .footer-widget-area:has(#text-4),
.site-footer #text-4 { display: none !important; }

.sd-footer-full {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    max-width: 1280px !important;
    margin: 0 auto 32px auto !important;
    padding: 0 24px !important;
    box-sizing: border-box !important;
    display: grid !important;
    grid-template-columns: 1fr 280px !important;
    gap: 24px 40px !important;
}
.sd-footer-full .sd-foot-pages {
    display: flex; flex-direction: column;
}
.sd-footer-full .sd-foot-posts {
    display: flex; flex-direction: column;
}
.sd-footer-full h3.sd-foot-master {
    color: #ffffff !important;
    font-size: 17px !important;
    font-weight: 700 !important;
    margin: 0 0 16px 0 !important;
    padding: 0 0 10px 0 !important;
    border-bottom: 1px solid rgba(201,169,97,0.35) !important;
    font-family: inherit !important;
    letter-spacing: 0.3px !important;
}
.sd-footer-full .sd-foot-grid {
    display: grid !important;
    grid-template-columns: repeat(5, 1fr) !important;
    gap: 12px 24px !important;
}
.sd-footer-full .sd-foot-cat h4 {
    font-size: 12px !important;
    color: #C9A961 !important;
    margin: 0 0 8px 0 !important;
    padding: 0 0 5px 0 !important;
    border-bottom: 1px solid rgba(201,169,97,0.25) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    font-weight: 700 !important;
    font-family: inherit !important;
}
.sd-footer-full ul.sd-foot-list,
.sd-footer-full ul.sd-foot-posts-list {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}
.sd-footer-full ul.sd-foot-list li { padding: 4px 0 !important; margin: 0 !important; line-height: 1.35 !important; }
.sd-footer-full ul.sd-foot-list a {
    color: rgba(255,255,255,0.85) !important;
    font-size: 13px !important;
    text-decoration: none !important;
}
.sd-footer-full ul.sd-foot-list a:hover { color: #C9A961 !important; }
.sd-footer-full ul.sd-foot-posts-list li { padding: 8px 0 !important; margin: 0 !important; border-bottom: 1px solid rgba(255,255,255,0.08) !important; }
.sd-footer-full ul.sd-foot-posts-list li:last-child { border-bottom: 0 !important; }
.sd-footer-full ul.sd-foot-posts-list a {
    color: rgba(255,255,255,0.88) !important;
    font-size: 13px !important;
    text-decoration: none !important;
    line-height: 1.4 !important;
    display: block;
}
.sd-footer-full ul.sd-foot-posts-list a:hover { color: #C9A961 !important; }

@media (max-width: 1024px) {
    .sd-footer-full { grid-template-columns: 1fr !important; }
    .sd-footer-full .sd-foot-grid { grid-template-columns: repeat(3, 1fr) !important; }
}
@media (max-width: 640px) {
    .sd-footer-full .sd-foot-grid { grid-template-columns: repeat(2, 1fr) !important; gap: 12px 16px !important; }
}
@media (max-width: 380px) {
    .sd-footer-full .sd-foot-grid { grid-template-columns: 1fr !important; }
}


/* ---- */



/* === Migrado de sd-home-separators-v1.php === */

/* Esconder hr entre "Simuladores Financeiros" e "Simuladores de Consumo" (5o hr do entry-content) */
body.page-id-26737 .entry-content > hr.wp-block-separator:nth-of-type(5),
body.home .entry-content > hr.wp-block-separator:nth-of-type(5) {
    display: none !important;
}

/* Estender bg verde escuro da section "Outras simulacoes" ate a linha dourada de "Ultimos do Blog" - zerar margin-top de #sd-ultimos-blog */
body.page-id-26737 #sd-ultimos-blog,
body.home #sd-ultimos-blog {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    border-bottom: 3px solid #C9A961 !important;
}
/* zerar gap entre #sd-ultimos-blog e #sd-faq (que vem logo depois) */
body.page-id-26737 #sd-ultimos-blog + #sd-faq,
body.home #sd-ultimos-blog + #sd-faq {
    margin-top: 0 !important;
    padding-top: 48px !important;
}

/* Links da section verde "Outras simulacoes financeiras" em dourado #B89549 (era branco). Specificity massiva pra vencer sd-design-system-v1. */
html body.home.home.home.home.home.home.home .entry-content.entry-content.entry-content section[style*="#EEEEEE"] a,
html body.page-id-26737.page-id-26737.page-id-26737.page-id-26737.page-id-26737.page-id-26737.page-id-26737 .entry-content.entry-content.entry-content section[style*="#EEEEEE"] a {
    color: #B89549 !important;
    text-decoration: none !important;
    background: rgba(255,255,255,0.06) !important;
    border: 1px solid rgba(184,149,73,0.6) !important;
}
html body.home.home.home.home.home.home.home .entry-content.entry-content.entry-content section[style*="#EEEEEE"] a:hover,
html body.page-id-26737.page-id-26737.page-id-26737.page-id-26737.page-id-26737.page-id-26737.page-id-26737 .entry-content.entry-content.entry-content section[style*="#EEEEEE"] a:hover {
    background: #B89549 !important;
    border-color: #B89549 !important;
    color: #FFFFFF !important;
    text-decoration: none !important;
}

/* Links dos cards da home: sem sublinhado + cor dourada. Specificity massiva pra vencer sd-design-system-v1 (que usa :not multiplos = ~5 classes) */
html body.home.home.home.home.home.home.home .entry-content.entry-content.entry-content section > div > div > div > a,
html body.page-id-26737.page-id-26737.page-id-26737.page-id-26737.page-id-26737.page-id-26737.page-id-26737 .entry-content.entry-content.entry-content section > div > div > div > a {
    color: #B89549 !important;
    text-decoration: none !important;
    font-weight: 600 !important;
}
html body.home.home.home.home.home.home.home .entry-content.entry-content.entry-content section > div > div > div > a:hover,
html body.page-id-26737.page-id-26737.page-id-26737.page-id-26737.page-id-26737.page-id-26737.page-id-26737 .entry-content.entry-content.entry-content section > div > div > div > a:hover {
    color: #FFFFFF !important;
    background: #B89549 !important;
    text-decoration: none !important;
}

/* Ocultar o primeiro hr (entre "Simuladores mais importantes" e a section verde) */
body.page-id-26737 .entry-content > hr.wp-block-separator:first-of-type,
body.home .entry-content > hr.wp-block-separator:first-of-type {
    display: none !important;
}

/* === Padronizar tamanho dos 5 botoes CTA dos cards de "Simuladores mais importantes" === */
html body.page-id-26737 .entry-content section#simuladores div[style*="border:1px solid"] a,
html body.home .entry-content section#simuladores div[style*="border:1px solid"] a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    width: 100% !important;
    min-height: 64px !important;
    box-sizing: border-box !important;
    padding: 12px 16px !important;
    line-height: 1.3 !important;
    margin-top: auto !important;
}
/* Card vira flex-column pra o botao ficar no fundo, todos com mesma altura */
html body.page-id-26737 .entry-content section#simuladores > div > div > div[style*="border:1px solid"],
html body.home .entry-content section#simuladores > div > div > div[style*="border:1px solid"] {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
}

/* === Centralizar conteudo (h2 + botoes) da section verde "Outras simulacoes" === */
body.page-id-26737 .entry-content section[style*="#EEEEEE"],
body.home .entry-content section[style*="#EEEEEE"] {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
}
body.page-id-26737 .entry-content section[style*="#EEEEEE"] > div,
body.home .entry-content section[style*="#EEEEEE"] > div {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    max-width: 1100px !important;
}
body.page-id-26737 .entry-content section[style*="#EEEEEE"] h2,
body.home .entry-content section[style*="#EEEEEE"] h2 {
    margin-top: 0 !important;
    margin-bottom: 32px !important;
}

/* === Remover separador decorativo abaixo dos h2 das sections da home === */
/* Cobre h2 "Simuladores mais importantes" + "Outras simulacoes financeiras" (ambos em section > div > h2) */
html body.page-id-26737 .entry-content section h2,
html body.home .entry-content section h2 {
    border-bottom: 0 !important;
    border: 0 !important;
    padding-bottom: 0 !important;
}
html body.page-id-26737 .entry-content section h2::after,
html body.home .entry-content section h2::after {
    display: none !important;
    content: none !important;
    background: transparent !important;
    height: 0 !important;
    width: 0 !important;
}

/* Divisores hr full-width dourados — entre blocos, sem margin */
body.page-id-26737 .entry-content .wp-block-separator,
body.page-id-26737 .entry-content [data-ast-blocks-layout] .wp-block-separator,
body.home .entry-content .wp-block-separator,
body.home .entry-content [data-ast-blocks-layout] .wp-block-separator {
    max-width: 100vw !important;
    width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    border: 0 !important;
    border-top: 3px solid #B89549 !important;
    height: 0 !important;
    background: transparent !important;
    opacity: 1 !important;
}

/* Bege da home — base */
body.home, body.page-id-26737,
body.home .ast-separate-container, body.page-id-26737 .ast-separate-container {
    background-color: #FAF6EC !important;
}
body.home .ast-primary-header-bar, body.home .ast-primary-header-bar.main-header-bar,
body.home .main-header-bar-wrap, body.home #masthead .ast-mobile-header-wrap .ast-primary-header-bar,
body.page-id-26737 .ast-primary-header-bar, body.page-id-26737 .ast-primary-header-bar.main-header-bar,
body.page-id-26737 .main-header-bar-wrap, body.page-id-26737 #masthead .ast-mobile-header-wrap .ast-primary-header-bar {
    background-color: #FAF6EC !important;
}

/* Hero (primeira section) mantem verde escuro */
body.home .entry-content > section:first-of-type,
body.page-id-26737 .entry-content > section:first-of-type {
    background: linear-gradient(135deg, #0B3D2E 0%, #134E3A 100%) !important;
}

/* Section verde "Outras simulacoes" */
body.page-id-26737 .entry-content section[style*="#EEEEEE"],
body.home .entry-content section[style*="#EEEEEE"] {
    background-color: #0B3D2E !important;
    background-image: linear-gradient(135deg, #0B3D2E 0%, #134E3A 100%) !important;
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 60px !important;
    padding-bottom: 60px !important;
}
body.page-id-26737 .entry-content section[style*="#EEEEEE"] h2,
body.home .entry-content section[style*="#EEEEEE"] h2 { color: #FFFFFF !important; }
/* Links da section verde: texto preto + borda fina gold + fundo branco */
html body.page-id-26737.page-id-26737.page-id-26737.page-id-26737 .entry-content section[style*="#EEEEEE"] a,
html body.home.home.home.home .entry-content section[style*="#EEEEEE"] a {
    color: #111111 !important;
    background: #FFFFFF !important;
    border: 1px solid #B89549 !important;
    text-decoration: none !important;
    font-weight: 700 !important;
    border-radius: 8px !important;
    padding: 10px 20px !important;
    transition: all .2s ease !important;
}
html body.page-id-26737.page-id-26737.page-id-26737.page-id-26737 .entry-content section[style*="#EEEEEE"] a:hover,
html body.home.home.home.home .entry-content section[style*="#EEEEEE"] a:hover {
    background: #B89549 !important;
    color: #FFFFFF !important;
    border-color: #B89549 !important;
}

/* Blocos bege/branco — transicao EXATA nos separadores (margin 0 + padding interno) */
body.home .sd-block, body.page-id-26737 .sd-block {
    width: 100vw !important;
    margin: 0 calc(50% - 50vw) !important;
    padding: 56px calc(50vw - 410px) !important;
    box-sizing: border-box !important;
}
body.home .sd-block.sd-bege, body.page-id-26737 .sd-block.sd-bege { background-color: #FAF6EC !important; }
body.home .sd-block.sd-branco, body.page-id-26737 .sd-block.sd-branco { background-color: #FFFFFF !important; }
body.home .sd-block > *, body.page-id-26737 .sd-block > * {
    max-width: 820px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}
@media (max-width: 900px) {
    body.home .sd-block, body.page-id-26737 .sd-block { padding: 40px 24px !important; }
}
@media (max-width: 768px) {
    body.home .sd-block, body.page-id-26737 .sd-block { padding: 32px 20px !important; }
}
html body.page-id-26737 .entry-content a[style*="#00A86B"],html body.page-id-26737 .entry-content a[style*="#00a86b"],html body.home .entry-content a[style*="#00A86B"],html body.home .entry-content a[style*="#00a86b"]{color:#B89549!important;border:1px solid #B89549!important;padding:10px 20px!important;border-radius:8px!important;display:inline-block!important;transition:all .2s ease!important}html body.page-id-26737 .entry-content a[style*="#00A86B"]:hover,html body.home .entry-content a[style*="#00A86B"]:hover{background:#B89549!important;color:#fff!important}html body.page-id-26737 .entry-content section a[href][style*="00A86B"],html body.page-id-26737 .entry-content section a[href][style*="00a86b"],html body.home .entry-content section a[href][style*="00A86B"],html body.home .entry-content section a[href][style*="00a86b"]{color:#B89549!important;text-decoration:none!important;border:1px solid #B89549!important;padding:10px 20px!important;border-radius:8px!important;display:inline-block!important;font-weight:700!important;background:transparent!important}html body.page-id-26737 .entry-content section a[href][style*="00A86B"]:hover,html body.home .entry-content section a[href][style*="00A86B"]:hover{background:#B89549!important;color:#FFFFFF!important;text-decoration:none!important}html body.page-id-26737 .entry-content section a[style*="text-decoration:none"]{text-decoration:none!important}html body.page-id-26737 .entry-content > section:first-of-type,html body.home .entry-content > section:first-of-type{margin-top:0!important;margin-bottom:0!important;padding-top:96px!important;padding-bottom:96px!important}html body.page-id-26737 .entry-content,html body.home .entry-content{padding-top:0!important;margin-top:0!important}html body.page-id-26737 #content,html body.page-id-26737 .site-content,html body.home #content,html body.home .site-content{padding-top:0!important;margin-top:0!important}html body.page-id-26737.home .entry-content > section:first-of-type,html body.page-id-26737.ast-page-builder-template .entry-content > section:first-of-type,html body.home.ast-page-builder-template .entry-content > section:first-of-type{margin:0!important;margin-top:0!important;margin-bottom:0!important;padding-top:96px!important;padding-bottom:96px!important}html body[class~="page-id-26737"] article.post-26737 .entry-content > section:first-of-type,html body[class~="home"] article[class*="post-26737"] .entry-content > section:first-of-type{margin:-60px 0 -40px!important;margin-top:-60px!important;margin-bottom:-40px!important;padding-top:130px!important;padding-bottom:100px!important;width:100vw!important;max-width:100vw!important;margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important;position:relative!important;z-index:0!important}

/* ---- */



/* === Migrado de sd-hero-extend-v1.php === */

    /* Pinta o gap (margin-top 40px do #simuladores) de verde, coincidindo com o verde do hero. */
    #simuladores {
        position: relative;
    }
    #simuladores::before {
        content: "";
        position: absolute;
        top: -40px;            /* cobre exatamente o margin-top de 40px */
        left: 50%;
        transform: translateX(-50%);
        width: 100vw;
        height: 40px;
        background: #0B3D2E;   /* mesmo verde do gradient do hero */
        z-index: 1;
        pointer-events: none;
    }
    @media (max-width: 900px) {
        /* No mobile o margin-top pode ser menor; ajustar se necessário */
        #simuladores::before { height: 40px; top: -40px; }
    }
    

/* ---- */



/* === Migrado de sd-blog-section-bege.php === */

/* OVERRIDE: section Ultimos do Blog com fundo BEGE em vez de verde */
html body .entry-content section.sd-ub-section,
html body.home .entry-content section.sd-ub-section,
html body.page-id-26737 .entry-content section.sd-ub-section,
html body .entry-content section#sd-ultimos-blog {
    background: #FAF6E8 !important;
    background-color: #FAF6E8 !important;
}
/* Titulo em verde escuro pra ficar legivel */
html body .entry-content section.sd-ub-section h2,
html body .entry-content section#sd-ultimos-blog h2 {
    color: #0B3D2E !important;
}
/* Botao Ver todos - branco com borda dourada */
html body .entry-content section.sd-ub-section .sd-ub-vt,
html body .entry-content section.sd-ub-section a[href*="/blog"] {
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #0B3D2E !important;
    border: 2px solid #B89549 !important;
}
/* Cards continuam brancos (ja sao) com borda dourada se quiser */
html body .entry-content section.sd-ub-section .sd-ub-card {
    border: 1px solid #B89549 !important;
}


/* ---- */



/* =========================================================================
   FIX RE-MIGRADO 2026-06-01: largura .sd-fc (originalmente em sd-padronizacao.css)
   Foi removido por engano na Fase 1, restaurado agora.
   ========================================================================= */
html body.page .entry-content .sd-fc,
html body.ast-page-builder-template .entry-content .sd-fc,
html body .entry-content div.sd-fc {
    max-width: 1180px !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
}
html body .entry-content .sd-fc .sd-fc-card,
html body .entry-content .sd-fc .sd-fc-body,
html body .entry-content #sd_areaCalc,
html body .entry-content #sd_blocoResultado {
    max-width: 100% !important;
    width: 100% !important;
    box-sizing: border-box !important;
}
html body .entry-content .sd-fc img {
    max-width: 100% !important;
    height: auto !important;
}
/* BUG fix: plugin SD injeta sd-injected dentro de .sd-card — esconde */
html body .entry-content .sd-card .sd-outras-simulacoes,
html body .entry-content .sd-card .sd-injected,
html body .entry-content .sd-card section.sd-outras-simulacoes,
html body .entry-content .sd-card .sd-rank-grid,
html body .entry-content .sd-card section.sd-injected {
    display: none !important;
}
@media (max-width: 768px) {
    html body .entry-content .sd-fc {
        padding-left: 8px !important;
        padding-right: 8px !important;
    }
}


/* =========================================================================
   FIX CASCATA 2026-06-01: regra ULTRA específica pra vencer sd-theme-premium-v1
   ========================================================================= */
html body.page .entry-content div.sd-fc[class],
html body.ast-page-builder-template .entry-content div.sd-fc[class],
html body .entry-content > div.sd-fc[class] {
    max-width: 1180px !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
}


/* =========================================================================
   FIX FINAL 2026-06-01 — vence cascata
   Especificidade ultra-alta (.sd-fc duplicado) pra vencer body:has(...) etc.
   ========================================================================= */
html body.page .entry-content > .sd-fc.sd-fc,
html body.ast-page-builder-template .entry-content > .sd-fc.sd-fc,
html body.page .entry-content .sd-fc.sd-fc,
html body.ast-page-builder-template .entry-content .sd-fc.sd-fc {
    max-width: 1180px !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
}

/* ===== FIX FOOTER GRID 2026-06-02 ===== */
/* Esconder widget areas vazias/newsletter (1 e 4) */
.site-footer aside[data-section="sidebar-widgets-footer-widget-1"],
.site-footer aside[data-section="sidebar-widgets-footer-widget-4"] {
    display: none !important;
}
/* Container do above-footer vira grid 4fr (Páginas) + 1fr (Últimos) */
.site-above-footer-wrap .ast-builder-footer-grid-columns {
    display: grid !important;
    grid-template-columns: 4fr 1fr !important;
    gap: 48px !important;
    max-width: 1280px !important;
    margin: 0 auto !important;
    padding: 48px 24px !important;
}
/* Reordenar: widget-3 (Páginas) primeiro, widget-2 (Últimos) segundo */
.site-above-footer-wrap aside[data-section="sidebar-widgets-footer-widget-2"] { grid-column: 2 !important; }
.site-above-footer-wrap aside[data-section="sidebar-widgets-footer-widget-3"] { grid-column: 1 !important; }
/* Sub-grid 5 colunas dentro do widget-3 (HTML custom) */
.sd-footer-5cols {
    display: grid !important;
    grid-template-columns: repeat(5, 1fr) !important;
    gap: 24px !important;
    width: 100% !important;
}
.sd-footer-5cols .sd-footer-col h4 {
    color: #B89549 !important;
    font: 700 13px/1.2 'Inter', system-ui, sans-serif !important;
    letter-spacing: 0.06em !important;
    text-transform: uppercase !important;
    margin: 0 0 16px 0 !important;
    padding-bottom: 10px !important;
    border-bottom: 1px solid rgba(184, 149, 73, 0.3) !important;
}
.sd-footer-5cols .sd-footer-col ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}
.sd-footer-5cols .sd-footer-col ul li { margin: 0 0 8px 0 !important; padding: 0 !important; }
.sd-footer-5cols .sd-footer-col ul li a {
    color: #C8D4CE !important;
    text-decoration: none !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
}
.sd-footer-5cols .sd-footer-col ul li a:hover { color: #B89549 !important; }
/* Heading "Páginas e Calculadoras" do block-29 — fica acima das 5 cols */
.site-above-footer-wrap aside[data-section="sidebar-widgets-footer-widget-3"] h3 {
    color: #ffffff !important;
    font: 700 16px/1.3 'Inter', system-ui, sans-serif !important;
    margin: 0 0 20px 0 !important;
    text-transform: none !important;
}
/* Heading "Últimos Posts" igual */
.site-above-footer-wrap aside[data-section="sidebar-widgets-footer-widget-2"] h3 {
    color: #ffffff !important;
    font: 700 16px/1.3 'Inter', system-ui, sans-serif !important;
    margin: 0 0 20px 0 !important;
}
/* Mobile: 2 colunas no grid principal vira 1 col */
@media (max-width: 900px) {
    .site-above-footer-wrap .ast-builder-footer-grid-columns {
        grid-template-columns: 1fr !important;
        gap: 32px !important;
    }
    .sd-footer-5cols { grid-template-columns: repeat(2, 1fr) !important; gap: 20px !important; }
}
@media (max-width: 480px) {
    .sd-footer-5cols { grid-template-columns: 1fr !important; }
}
/* ===== fim FIX FOOTER GRID ===== */
