/* ================================================================
   MENTOR FISCAL — DESIGN SYSTEM
   Identidade visual: plataforma fiscal técnica, moderna e sóbria.
   Filosofia: linhas retas, baixo arredondamento, hierarquia clara.
   ================================================================ */


/* ================================================================
   1. TOKENS DE DESIGN — CSS CUSTOM PROPERTIES
   ================================================================ */

:root {
    /* ── Paleta extraída do logo Mentor Fiscal ──────────────────
       Logo: bússola com pétalas navy + cruzamentos verde-oliva.
       Navy  → identidade, estrutura, autoridade
       Olive → acento, diferenciação, identidade da marca
       Blue  → ação, interatividade, CTAs
    ──────────────────────────────────────────────────────────── */

    /* Navy do logo */
    --mf-navy:          #1A3B5C;   /* Azul naval — cor primária da marca */
    --mf-navy-dark:     #102538;   /* Variante escura (hover de nav, rodapé) */
    --mf-dark:          #0E1E2E;   /* Seções escuras, footer */

    /* Verde-oliva do logo — acento e identidade */
    --mf-olive:         #5C7030;   /* Verde-oliva — acento, labels, bordas */
    --mf-olive-hover:   #4A5B25;   /* Hover do olive */
    --mf-olive-light:   #EDF2DF;   /* Fundo claro de elementos olive */
    --mf-olive-mid:     #8FA865;   /* Versão clara para ícones em fundo escuro */

    /* Azul de ação — derivado do navy, mais vivo para CTAs e links */
    --mf-action:        #1A5296;   /* Azul ação — botões, links interativos */
    --mf-action-hover:  #134080;   /* Hover do azul ação */
    --mf-action-light:  #DDE9F7;   /* Fundo claro de elementos de ação */

    /* Textos */
    --mf-heading:       #1A2E42;   /* Títulos — quase navy */
    --mf-body:          #374151;   /* Texto corrido */
    --mf-secondary:     #6B7280;   /* Texto secundário, captions */
    --mf-muted:         #9CA3AF;   /* Texto discreto, meta */

    /* Superfícies e bordas */
    --mf-white:         #FFFFFF;
    --mf-surface:       #F7F9F4;   /* Leve toque olive no fundo de seções */
    --mf-surface-2:     #EFF3EA;   /* Segundo nível — mais olive */
    --mf-border:        #DDE3D4;   /* Borda com leve toque verde */
    --mf-border-strong: #C4CDB8;   /* Borda com mais peso */

    /* Semântico */
    --mf-green:         #3D6B1E;   /* Sucesso / badge "Gratuito" */
    --mf-green-bg:      #E4F0D8;
    --mf-amber:         #92400E;
    --mf-amber-bg:      #FEF9C3;
    --mf-blue-badge:    #1A3B5C;   /* Badge "Mentor" usa o navy */
    --mf-blue-badge-bg: #D8E6F4;

    /* Acento — linha decorativa: usa olive como identidade */
    --mf-accent-line:   var(--mf-olive);

    /* Tipografia */
    --mf-font:          'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --mf-font-mono:     ui-monospace, 'Cascadia Code', 'Source Code Pro', monospace;

    /* Bordas */
    --mf-radius:        3px;       /* Padrão — mínimo, técnico */
    --mf-radius-md:     4px;       /* Cards */
    --mf-radius-pill:   99px;      /* Badges apenas */

    /* Sombras — discretas */
    --mf-shadow-sm:     0 1px 3px rgba(0, 0, 0, 0.07), 0 1px 2px rgba(0, 0, 0, 0.05);
    --mf-shadow-md:     0 4px 12px rgba(0, 0, 0, 0.08);
    --mf-shadow-card:   0 1px 4px rgba(0, 0, 0, 0.06);

    /* Espaçamentos de seção */
    --mf-section-y:     80px;
    --mf-section-y-sm:  56px;

    /* Largura máxima de conteúdo */
    --mf-max-width:     1140px;
}


/* ================================================================
   2. OVERRIDE DA PALETA KADENCE
   Sobrescreve os valores do Customizer para garantir consistência.
   Para editar as cores, altere as variáveis --mf-* acima.
   ================================================================ */

body {
    --global-palette1:          var(--mf-navy);    /* Primária da marca */
    --global-palette2:          var(--mf-action);  /* Interativo / CTA */
    --global-palette3:          var(--mf-heading);
    --global-palette4:          var(--mf-body);
    --global-palette5:          var(--mf-secondary);
    --global-palette6:          var(--mf-border);
    --global-palette7:          var(--mf-surface);
    --global-palette8:          var(--mf-white);
    --global-palette9:          var(--mf-dark);

    --global-palette-btn-bg:        var(--mf-navy);
    --global-palette-btn:           #ffffff;
    --global-palette-btn-hover:     #ffffff;
    --global-palette-btn-bg-hover:  var(--mf-navy-dark);
}


/* ================================================================
   3. TIPOGRAFIA BASE
   ================================================================ */

body,
button,
input,
select,
textarea {
    font-family: var(--mf-font);
    color: var(--mf-body);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

h1, h2, h3, h4, h5, h6 {
    font-family: var(--mf-font);
    color: var(--mf-heading);
    font-weight: 600;
    line-height: 1.25;
    letter-spacing: -0.02em;
}

h1 { font-size: clamp(1.875rem, 1.5rem + 1.5vw, 2.75rem); }
h2 { font-size: clamp(1.5rem, 1.25rem + 1vw, 2.125rem); }
h3 { font-size: clamp(1.25rem, 1.1rem + 0.5vw, 1.625rem); }
h4 { font-size: 1.25rem; }
h5 { font-size: 1.0625rem; }
h6 { font-size: 0.9375rem; }

p {
    line-height: 1.75;
    margin-bottom: 1.25em;
}

a {
    color: var(--mf-action);
    text-decoration: none;
    transition: color 0.15s ease;
}

a:hover {
    color: var(--mf-action-hover);
    text-decoration: underline;
}

strong, b { font-weight: 600; }

small, .text-sm { font-size: 0.875rem; }

/* Subtítulo de seção — usa olive como cor de identidade */
.mf-section-label {
    display: block;
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--mf-olive);
    margin-bottom: 0.5rem;
}

/* Subtítulo descritivo sob títulos de seção */
.mf-section-sub {
    font-size: 1.0625rem;
    color: var(--mf-secondary);
    max-width: 560px;
    line-height: 1.65;
    margin-top: 0.75rem;
    margin-bottom: 0;
}


/* ================================================================
   4. LAYOUT E CONTAINER
   ================================================================ */

.site-container,
.content-container {
    max-width: var(--mf-max-width);
}

/* Seções com padding vertical padrão */
.mf-section {
    padding: var(--mf-section-y) 0;
}

.mf-section--sm {
    padding: var(--mf-section-y-sm) 0;
}

/* Fundo alternado para seções */
.mf-bg-surface   { background-color: var(--mf-surface); }
.mf-bg-surface-2 { background-color: var(--mf-surface-2); }
.mf-bg-white     { background-color: var(--mf-white); }
.mf-bg-dark      { background-color: var(--mf-dark); color: var(--mf-white); }
.mf-bg-navy      { background-color: var(--mf-navy); color: var(--mf-white); }


/* ================================================================
   5. HEADER E NAVEGAÇÃO
   ================================================================ */

.site-header {
    border-bottom: 1px solid var(--mf-border);
    background-color: var(--mf-white) !important;
}

/* Header sticky — Kadence já tem .kadence-sticky-header mas reforçamos */
.kadence-sticky-header .site-header,
.site-header.header-is-sticky {
    box-shadow: 0 1px 8px rgba(0, 0, 0, 0.06);
}

/* Logo */
.site-branding .site-name a,
.site-branding .site-name {
    font-weight: 700;
    letter-spacing: -0.03em;
    color: var(--mf-navy) !important;
    font-size: 1.25rem;
}

/* Navegação principal */
.main-navigation a,
.primary-menu-container a {
    font-size: 0.9375rem;
    font-weight: 500;
    color: var(--mf-heading);
    letter-spacing: 0;
    transition: color 0.15s ease;
}

.main-navigation a:hover,
.primary-menu-container a:hover,
.main-navigation .current-menu-item > a,
.primary-menu-container .current-menu-item > a {
    color: var(--mf-action);
    text-decoration: none;
}

/* Dropdown da navegação */
.main-navigation .sub-menu {
    border: 1px solid var(--mf-border);
    border-top: 2px solid var(--mf-action);
    border-radius: 0 0 var(--mf-radius-md) var(--mf-radius-md);
    box-shadow: var(--mf-shadow-md);
    background: var(--mf-white);
}

.main-navigation .sub-menu a {
    font-size: 0.875rem;
    padding: 0.5rem 1.25rem;
    color: var(--mf-body);
}

.main-navigation .sub-menu a:hover {
    background-color: var(--mf-surface);
    color: var(--mf-action);
}

/* Botão CTA no header */
.header-cta-button,
.header-button {
    background-color: var(--mf-action) !important;
    color: #fff !important;
    padding: 0.45em 1.1em !important;
    border-radius: var(--mf-radius) !important;
    font-size: 0.875rem !important;
    font-weight: 600 !important;
    letter-spacing: 0.01em;
    transition: background-color 0.15s ease !important;
}

.header-cta-button:hover,
.header-button:hover {
    background-color: var(--mf-action-hover) !important;
    text-decoration: none !important;
}


/* ================================================================
   6. BOTÕES
   ================================================================ */

/* Reset do border-radius do Kadence para nosso padrão */
button,
.button,
.wp-block-button__link,
.wp-element-button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
    border-radius: var(--mf-radius) !important;
    font-family: var(--mf-font);
    font-weight: 600;
    letter-spacing: 0.01em;
    font-size: 0.9375rem;
    transition: background-color 0.15s ease, box-shadow 0.15s ease;
}

/* Botão primário */
.mf-btn,
.mf-btn--primary {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    background-color: var(--mf-action);
    color: #fff;
    padding: 0.65em 1.35em;
    border-radius: var(--mf-radius);
    font-family: var(--mf-font);
    font-weight: 600;
    font-size: 0.9375rem;
    letter-spacing: 0.01em;
    text-decoration: none;
    border: none;
    cursor: pointer;
    transition: background-color 0.15s ease;
}

.mf-btn:hover,
.mf-btn--primary:hover {
    background-color: var(--mf-action-hover);
    color: #fff;
    text-decoration: none;
}

/* Botão secundário / ghost */
.mf-btn--ghost {
    background-color: transparent;
    color: var(--mf-action);
    border: 1.5px solid var(--mf-action);
    padding: 0.6em 1.3em;
}

.mf-btn--ghost:hover {
    background-color: var(--mf-action-light);
    color: var(--mf-action-hover);
    text-decoration: none;
}

/* Botão invertido (para fundos escuros) */
.mf-btn--inverse {
    background-color: #fff;
    color: var(--mf-navy);
}

.mf-btn--inverse:hover {
    background-color: #f0f4f8;
    color: var(--mf-navy);
    text-decoration: none;
}

/* Botão ghost invertido */
.mf-btn--ghost-inverse {
    background-color: transparent;
    color: #fff;
    border: 1.5px solid rgba(255,255,255,0.5);
    padding: 0.6em 1.3em;
}

.mf-btn--ghost-inverse:hover {
    border-color: #fff;
    background-color: rgba(255,255,255,0.08);
    color: #fff;
    text-decoration: none;
}

/* Grupo de botões */
.mf-btn-group {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.75rem;
}

/* Seta decorativa em links */
.mf-link-arrow {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    font-weight: 600;
    font-size: 0.9375rem;
    color: var(--mf-action);
    text-decoration: none;
    transition: gap 0.15s ease;
}

.mf-link-arrow::after {
    content: '→';
    transition: transform 0.15s ease;
}

.mf-link-arrow:hover {
    color: var(--mf-action-hover);
    text-decoration: none;
    gap: 0.625rem;
}


/* ================================================================
   7. BADGES
   ================================================================ */

.mf-badge {
    display: inline-block;
    font-family: var(--mf-font);
    font-size: 0.6875rem;
    font-weight: 600;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    padding: 0.25em 0.6em;
    border-radius: var(--mf-radius);
    line-height: 1.4;
}

.mf-badge--free {
    color: var(--mf-green);
    background-color: var(--mf-green-bg);
}

.mf-badge--pro {
    color: var(--mf-blue-badge);
    background-color: var(--mf-blue-badge-bg);
}

.mf-badge--soon {
    color: var(--mf-amber);
    background-color: var(--mf-amber-bg);
}

.mf-badge--new {
    color: #7c3aed;
    background-color: #ede9fe;
}

/* Badge inline com ícone de cadeado */
.mf-badge--locked::before {
    content: '🔒 ';
    font-size: 0.75em;
}


/* ================================================================
   8. CARDS GENÉRICOS
   ================================================================ */

.mf-card {
    background-color: var(--mf-white);
    border: 1px solid var(--mf-border);
    border-radius: var(--mf-radius-md);
    padding: 1.5rem;
    box-shadow: var(--mf-shadow-card);
    transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.mf-card:hover {
    box-shadow: var(--mf-shadow-md);
    transform: translateY(-1px);
}

/* Card com borda de acento à esquerda */
.mf-card--accented {
    border-left: 3px solid var(--mf-accent-line);
    border-left-color: var(--mf-accent-line);
    padding-left: 1.25rem;
}

/* Card escuro (para fundos navy/dark) */
.mf-card--dark {
    background-color: rgba(255,255,255,0.05);
    border-color: rgba(255,255,255,0.12);
    color: #fff;
}

/* Card destaque (ferramenta em evidência) */
.mf-card--featured {
    background-color: var(--mf-navy);
    border-color: var(--mf-navy);
    color: #fff;
}

.mf-card--featured h3,
.mf-card--featured h4,
.mf-card--featured .mf-card__title {
    color: #fff;
}

.mf-card--featured .mf-card__desc {
    color: rgba(255,255,255,0.75);
}


/* ================================================================
   9. CARDS DE FERRAMENTAS (.mf-tool-card)
   Componente central do Mentor Fiscal.
   ================================================================ */

.mf-tools-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 1.25rem;
}

.mf-tool-card {
    background-color: var(--mf-white);
    border: 1px solid var(--mf-border);
    border-top: 3px solid var(--mf-olive);   /* olive como identidade */
    border-radius: 0 0 var(--mf-radius-md) var(--mf-radius-md);
    padding: 1.5rem 1.5rem 1.25rem;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    box-shadow: var(--mf-shadow-card);
    transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.mf-tool-card:hover {
    box-shadow: var(--mf-shadow-md);
    transform: translateY(-2px);
}

/* Ícone da ferramenta — usa olive para reforçar identidade */
.mf-tool-card__icon {
    width: 2.5rem;
    height: 2.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--mf-olive-light);
    color: var(--mf-olive);
    border-radius: var(--mf-radius);
    font-size: 1.125rem;
    flex-shrink: 0;
}

/* Header do card: ícone + badge na mesma linha */
.mf-tool-card__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.5rem;
}

.mf-tool-card__title {
    font-size: 1rem;
    font-weight: 600;
    color: var(--mf-heading);
    margin: 0;
    line-height: 1.3;
}

.mf-tool-card__desc {
    font-size: 0.875rem;
    color: var(--mf-secondary);
    line-height: 1.6;
    margin: 0;
    flex: 1;
}

.mf-tool-card__footer {
    margin-top: auto;
    padding-top: 0.5rem;
}

/* Variante: ferramenta em destaque — navy do logo */
.mf-tool-card--featured {
    background-color: var(--mf-navy);
    border-top-color: var(--mf-olive-mid);
}

.mf-tool-card--featured .mf-tool-card__title {
    color: #fff;
}

.mf-tool-card--featured .mf-tool-card__desc {
    color: rgba(255,255,255,0.72);
}

.mf-tool-card--featured .mf-tool-card__icon {
    background-color: rgba(143,168,101,0.2);  /* olive-mid translúcido */
    color: var(--mf-olive-mid);
}

.mf-tool-card--featured .mf-link-arrow {
    color: var(--mf-olive-mid);
}

/* Ferramenta "em breve" — visual atenuado */
.mf-tool-card--soon {
    opacity: 0.72;
    cursor: default;
}

.mf-tool-card--soon:hover {
    transform: none;
    box-shadow: var(--mf-shadow-card);
}


/* ================================================================
   10. TABELAS FISCAIS
   ================================================================ */

.mf-table,
.entry-content table,
.wp-block-table table {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.9rem;
    border: 1px solid var(--mf-border);
    border-radius: 0;
    overflow: hidden;
}

.mf-table thead,
.entry-content table thead,
.wp-block-table thead {
    background-color: var(--mf-navy);
    color: #fff;
}

.mf-table th,
.entry-content table th,
.wp-block-table th {
    padding: 0.75rem 1rem;
    font-size: 0.8125rem;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    text-align: left;
    color: rgba(255,255,255,0.92);
    border: none;
}

.mf-table td,
.entry-content table td,
.wp-block-table td {
    padding: 0.65rem 1rem;
    border-bottom: 1px solid var(--mf-border);
    vertical-align: top;
    line-height: 1.5;
    color: var(--mf-body);
    font-variant-numeric: tabular-nums;
}

/* Listras zebra */
.mf-table tbody tr:nth-child(even),
.entry-content table tbody tr:nth-child(even),
.wp-block-table tbody tr:nth-child(even) {
    background-color: var(--mf-surface);
}

.mf-table tbody tr:hover,
.entry-content table tbody tr:hover,
.wp-block-table tbody tr:hover {
    background-color: var(--mf-action-light);
}

/* Coluna de código (CST, NCM, CFOP) */
.mf-table td:first-child,
.mf-table th:first-child {
    font-family: var(--mf-font-mono);
    font-size: 0.875rem;
    font-weight: 600;
    white-space: nowrap;
}

/* Wrapper para tabelas em mobile (scroll horizontal) */
.mf-table-wrapper {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    border: 1px solid var(--mf-border);
    border-radius: var(--mf-radius-md);
    margin-bottom: 1.5rem;
}

.mf-table-wrapper .mf-table {
    border: none;
    margin-bottom: 0;
}


/* ================================================================
   11. HOMEPAGE — HERO
   Aplicar classe .mf-hero no bloco de grupo Gutenberg que
   contém a seção hero.
   ================================================================ */

.mf-hero {
    padding: 96px 0 88px;
    background-color: var(--mf-white);
    border-bottom: 1px solid var(--mf-border);
    position: relative;
}

/* Linha decorativa — gradiente navy → olive → navy, como o logo */
.mf-hero::before {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    height: 3px;
    background: linear-gradient(90deg, var(--mf-navy) 0%, var(--mf-olive) 50%, var(--mf-navy) 100%);
}

.mf-hero__eyebrow {
    display: inline-block;
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--mf-olive);
    margin-bottom: 1rem;
    padding: 0.3em 0.7em;
    background-color: var(--mf-olive-light);
    border-radius: var(--mf-radius);
}

.mf-hero__title {
    font-size: clamp(2rem, 1.5rem + 2vw, 3rem);
    font-weight: 700;
    color: var(--mf-heading);
    letter-spacing: -0.03em;
    line-height: 1.15;
    margin-bottom: 1.25rem;
    max-width: 640px;
}

/* Destaque colorido no título */
.mf-hero__title span {
    color: var(--mf-action);
}

.mf-hero__subtitle {
    font-size: 1.0625rem;
    color: var(--mf-secondary);
    line-height: 1.7;
    max-width: 520px;
    margin-bottom: 2rem;
}

.mf-hero__actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.875rem;
}

/* Layout lado a lado: texto + visual */
.mf-hero__layout {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3rem;
    align-items: center;
}

/* Bloco visual à direita do hero — placeholder técnico */
.mf-hero__visual {
    background-color: var(--mf-surface-2);
    border: 1px solid var(--mf-border);
    border-radius: var(--mf-radius-md);
    aspect-ratio: 4/3;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--mf-muted);
    font-size: 0.875rem;
    font-family: var(--mf-font-mono);
}


/* ================================================================
   12. HOMEPAGE — FERRAMENTAS EM DESTAQUE
   Aplicar .mf-tools-section no bloco da seção.
   ================================================================ */

.mf-tools-section {
    padding: var(--mf-section-y) 0;
    background-color: var(--mf-surface);
}

.mf-section-header {
    margin-bottom: 2.5rem;
}

.mf-section-header h2 {
    margin-bottom: 0.5rem;
}

/* Ferramenta principal (Consulta NCM) — ocupa 2 colunas */
.mf-tools-grid .mf-tool-card--featured {
    grid-column: span 2;
    flex-direction: row;
    align-items: flex-start;
    gap: 2rem;
    border-top: none;
    border-left: 4px solid #3B82F6;
    border-radius: var(--mf-radius-md);
}

.mf-tools-grid .mf-tool-card--featured .mf-tool-card__icon {
    width: 3rem;
    height: 3rem;
    font-size: 1.375rem;
    flex-shrink: 0;
}

.mf-tools-grid .mf-tool-card--featured .mf-tool-card__title {
    font-size: 1.125rem;
}

/* Link "ver todas as ferramentas" */
.mf-tools-section__footer {
    margin-top: 2rem;
    text-align: center;
}


/* ================================================================
   13. HOMEPAGE — BLOCO REFORMA TRIBUTÁRIA
   Aplicar .mf-rt-section no bloco de fundo escuro.
   ================================================================ */

.mf-rt-section {
    padding: var(--mf-section-y) 0;
    background-color: var(--mf-dark);
    color: #fff;
    position: relative;
    overflow: hidden;
}

/* Textura sutil de grid no fundo */
.mf-rt-section::before {
    content: '';
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(255,255,255,0.025) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,0.025) 1px, transparent 1px);
    background-size: 48px 48px;
    pointer-events: none;
}

.mf-rt-section h2,
.mf-rt-section h3 {
    color: #fff;
}

.mf-rt-section .mf-section-sub {
    color: rgba(255,255,255,0.65);
}

.mf-rt-section .mf-section-label {
    color: var(--mf-olive-mid);  /* olive claro sobre fundo escuro */
}

/* Pilares da RT — lista de tópicos */
.mf-rt-pillars {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 1rem;
    margin: 2rem 0;
}

.mf-rt-pillar {
    padding: 1rem 1.25rem;
    border: 1px solid rgba(255,255,255,0.1);
    border-left: 3px solid var(--mf-olive-mid);  /* olive no fundo escuro */
    border-radius: 0 var(--mf-radius-md) var(--mf-radius-md) 0;
    background-color: rgba(255,255,255,0.04);
}

.mf-rt-pillar__title {
    font-size: 0.9375rem;
    font-weight: 600;
    color: #fff;
    margin-bottom: 0.25rem;
}

.mf-rt-pillar__desc {
    font-size: 0.8125rem;
    color: rgba(255,255,255,0.55);
    line-height: 1.5;
    margin: 0;
}


/* ================================================================
   14. HOMEPAGE — ARTIGOS RECENTES
   ================================================================ */

.mf-posts-section {
    padding: var(--mf-section-y) 0;
    background-color: var(--mf-white);
}

.mf-posts-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 1.5rem;
}

.mf-post-card {
    border: 1px solid var(--mf-border);
    border-radius: var(--mf-radius-md);
    overflow: hidden;
    background: var(--mf-white);
    display: flex;
    flex-direction: column;
    transition: box-shadow 0.2s ease;
}

.mf-post-card:hover {
    box-shadow: var(--mf-shadow-md);
}

.mf-post-card__image {
    aspect-ratio: 16/9;
    background-color: var(--mf-surface-2);
    overflow: hidden;
}

.mf-post-card__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.3s ease;
}

.mf-post-card:hover .mf-post-card__image img {
    transform: scale(1.02);
}

.mf-post-card__body {
    padding: 1.25rem 1.25rem 1rem;
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.mf-post-card__category {
    font-size: 0.6875rem;
    font-weight: 600;
    letter-spacing: 0.07em;
    text-transform: uppercase;
    color: var(--mf-action);
}

.mf-post-card__title {
    font-size: 1rem;
    font-weight: 600;
    color: var(--mf-heading);
    line-height: 1.35;
    margin: 0;
}

.mf-post-card__title a {
    color: inherit;
    text-decoration: none;
}

.mf-post-card__title a:hover {
    color: var(--mf-action);
}

.mf-post-card__meta {
    font-size: 0.8125rem;
    color: var(--mf-muted);
    margin-top: auto;
    padding-top: 0.5rem;
}


/* ================================================================
   15. HOMEPAGE — PARA QUEM É / BENEFÍCIOS
   ================================================================ */

.mf-profiles-section {
    padding: var(--mf-section-y) 0;
    background-color: var(--mf-surface);
}

.mf-profiles-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 1.25rem;
}

.mf-profile-card {
    padding: 1.5rem;
    background-color: var(--mf-white);
    border: 1px solid var(--mf-border);
    border-radius: var(--mf-radius-md);
}

.mf-profile-card__icon {
    font-size: 1.5rem;
    margin-bottom: 0.875rem;
    line-height: 1;
}

.mf-profile-card__title {
    font-size: 1rem;
    font-weight: 600;
    color: var(--mf-heading);
    margin-bottom: 0.5rem;
}

.mf-profile-card__text {
    font-size: 0.9rem;
    color: var(--mf-secondary);
    line-height: 1.65;
    margin: 0;
}

/* Grade de benefícios */
.mf-benefits-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 1rem;
}

.mf-benefit-item {
    display: flex;
    align-items: flex-start;
    gap: 0.875rem;
    padding: 1rem;
}

.mf-benefit-item__icon {
    width: 1.75rem;
    height: 1.75rem;
    flex-shrink: 0;
    color: var(--mf-action);
    margin-top: 0.1rem;
}

/* Ícone de check como SVG inline ou via before */
.mf-benefit-item__check {
    width: 1.25rem;
    height: 1.25rem;
    border-radius: 50%;
    background-color: var(--mf-action-light);
    color: var(--mf-action);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.625rem;
    font-weight: 700;
    flex-shrink: 0;
}

.mf-benefit-item__text {
    font-size: 0.9rem;
    color: var(--mf-body);
    line-height: 1.5;
}


/* ================================================================
   16. HOMEPAGE — PLANOS
   ================================================================ */

.mf-plans-section {
    padding: var(--mf-section-y) 0;
    background-color: var(--mf-white);
}

.mf-plans-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 1.25rem;
    align-items: start;
}

.mf-plan-card {
    border: 1px solid var(--mf-border);
    border-radius: var(--mf-radius-md);
    padding: 1.75rem 1.5rem;
    background-color: var(--mf-white);
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.mf-plan-card--highlighted {
    border-color: var(--mf-navy);
    border-width: 2px;
    box-shadow: 0 0 0 4px rgba(26, 59, 92, 0.08);
}

.mf-plan-card__label {
    font-size: 0.6875rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--mf-olive);
}

.mf-plan-card__name {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--mf-heading);
    margin: 0;
}

.mf-plan-card__price {
    font-size: 2rem;
    font-weight: 700;
    color: var(--mf-heading);
    letter-spacing: -0.03em;
    line-height: 1;
}

.mf-plan-card__price span {
    font-size: 1rem;
    font-weight: 400;
    color: var(--mf-muted);
    letter-spacing: 0;
}

.mf-plan-card__divider {
    border: none;
    border-top: 1px solid var(--mf-border);
    margin: 0;
}

/* Lista de features */
.mf-plan-features {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.mf-plan-features li {
    font-size: 0.9rem;
    color: var(--mf-body);
    display: flex;
    align-items: flex-start;
    gap: 0.625rem;
    line-height: 1.5;
}

.mf-plan-features li::before {
    content: '✓';
    font-weight: 700;
    font-size: 0.8rem;
    color: var(--mf-olive);  /* olive no check-list de planos */
    margin-top: 0.1rem;
    flex-shrink: 0;
}

.mf-plan-features li.mf-plan-feature--unavailable {
    color: var(--mf-muted);
}

.mf-plan-features li.mf-plan-feature--unavailable::before {
    content: '–';
    color: var(--mf-border-strong);
}

.mf-plan-card__cta {
    margin-top: auto;
}


/* ================================================================
   17. HOMEPAGE — NEWSLETTER / CTA FINAL
   ================================================================ */

.mf-newsletter-section {
    padding: var(--mf-section-y-sm) 0;
    background-color: var(--mf-surface);
    border-top: 1px solid var(--mf-border);
}

.mf-newsletter-inner {
    max-width: 560px;
    margin: 0 auto;
    text-align: center;
}

.mf-newsletter-inner h2 {
    font-size: 1.5rem;
    margin-bottom: 0.5rem;
}

.mf-newsletter-inner p {
    font-size: 0.9375rem;
    color: var(--mf-secondary);
    margin-bottom: 1.5rem;
}

.mf-newsletter-form {
    display: flex;
    gap: 0.625rem;
    max-width: 440px;
    margin: 0 auto;
}

.mf-newsletter-form input[type="email"] {
    flex: 1;
    padding: 0.6em 1em;
    border: 1px solid var(--mf-border-strong);
    border-radius: var(--mf-radius);
    font-family: var(--mf-font);
    font-size: 0.9375rem;
    color: var(--mf-body);
    background: var(--mf-white);
    outline: none;
    transition: border-color 0.15s ease;
}

.mf-newsletter-form input[type="email"]:focus {
    border-color: var(--mf-action);
    box-shadow: 0 0 0 3px var(--mf-action-light);
}

.mf-newsletter-form button {
    flex-shrink: 0;
}

/* CTA section alternativa (fundo navy) */
.mf-cta-section {
    padding: var(--mf-section-y-sm) 0;
    background-color: var(--mf-navy);
    text-align: center;
}

.mf-cta-section h2 {
    color: #fff;
    margin-bottom: 0.75rem;
}

.mf-cta-section p {
    color: rgba(255,255,255,0.7);
    max-width: 480px;
    margin: 0 auto 1.75rem;
}


/* ================================================================
   18. PÁGINA DE FERRAMENTAS
   ================================================================ */

.mf-tools-page-header {
    padding: 60px 0 48px;
    background-color: var(--mf-surface);
    border-bottom: 1px solid var(--mf-border);
}

.mf-tools-page-header h1 {
    margin-bottom: 0.5rem;
}

/* Agrupamento por categoria */
.mf-tools-group {
    margin-bottom: 3rem;
}

.mf-tools-group__title {
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--mf-secondary);
    margin-bottom: 1.25rem;
    padding-bottom: 0.5rem;
    border-bottom: 1px solid var(--mf-border);
}

/* Rodapé da página de ferramentas — roadmap */
.mf-roadmap-section {
    padding: var(--mf-section-y-sm) 0;
    background-color: var(--mf-surface);
    border-top: 1px solid var(--mf-border);
}

.mf-roadmap-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 1rem;
}

.mf-roadmap-item {
    padding: 1rem;
    border: 1px dashed var(--mf-border-strong);
    border-radius: var(--mf-radius-md);
    background: var(--mf-white);
    font-size: 0.875rem;
    color: var(--mf-secondary);
}

.mf-roadmap-item__name {
    font-weight: 600;
    color: var(--mf-body);
    margin-bottom: 0.25rem;
}


/* ================================================================
   19. ARTIGOS / POSTS
   ================================================================ */

/* Cabeçalho do post individual */
.entry-header {
    margin-bottom: 2rem;
}

.entry-header .entry-title {
    font-size: clamp(1.625rem, 1.25rem + 1.5vw, 2.375rem);
    line-height: 1.2;
    letter-spacing: -0.025em;
    margin-bottom: 1rem;
}

/* Breadcrumb / categoria no topo do post */
.entry-meta {
    font-size: 0.875rem;
    color: var(--mf-muted);
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-bottom: 1.5rem;
}

.entry-meta a {
    color: var(--mf-action);
    font-weight: 500;
    text-decoration: none;
}

.entry-meta a:hover {
    text-decoration: underline;
}

/* Separador de meta */
.entry-meta .sep {
    color: var(--mf-border-strong);
}

/* Conteúdo do artigo */
.entry-content {
    font-size: 1rem;
    line-height: 1.8;
    color: var(--mf-body);
}

.entry-content h2,
.entry-content h3,
.entry-content h4 {
    margin-top: 2rem;
    margin-bottom: 0.75rem;
}

.entry-content h2 {
    padding-bottom: 0.5rem;
    border-bottom: 1px solid var(--mf-border);
}

/* Destaque de atenção / nota técnica */
.entry-content .wp-block-callout,
.mf-note {
    padding: 1rem 1.25rem 1rem 1rem;
    border-left: 3px solid var(--mf-action);
    background-color: var(--mf-action-light);
    border-radius: 0 var(--mf-radius) var(--mf-radius) 0;
    font-size: 0.9375rem;
    margin: 1.5rem 0;
}

.mf-note--warning {
    border-left-color: #D97706;
    background-color: #FEF9C3;
}

.mf-note--success {
    border-left-color: var(--mf-green);
    background-color: var(--mf-green-bg);
}

/* Código inline */
.entry-content code {
    font-family: var(--mf-font-mono);
    font-size: 0.875em;
    padding: 0.15em 0.4em;
    background-color: var(--mf-surface-2);
    border: 1px solid var(--mf-border);
    border-radius: 3px;
    color: var(--mf-heading);
}

/* Bloco de código */
.entry-content pre {
    background-color: var(--mf-dark);
    color: #E2E8F0;
    padding: 1.25rem 1.5rem;
    border-radius: var(--mf-radius-md);
    overflow-x: auto;
    font-family: var(--mf-font-mono);
    font-size: 0.875rem;
    line-height: 1.65;
}

/* Tags de artigo */
.entry-tags {
    margin-top: 2rem;
    padding-top: 1rem;
    border-top: 1px solid var(--mf-border);
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.entry-tags a {
    display: inline-block;
    font-size: 0.8125rem;
    font-weight: 500;
    padding: 0.25em 0.75em;
    border: 1px solid var(--mf-border-strong);
    border-radius: var(--mf-radius);
    color: var(--mf-secondary);
    text-decoration: none;
    transition: border-color 0.15s, color 0.15s;
}

.entry-tags a:hover {
    border-color: var(--mf-action);
    color: var(--mf-action);
}

/* Posts relacionados */
.mf-related-posts {
    margin-top: 3rem;
    padding-top: 2rem;
    border-top: 1px solid var(--mf-border);
}

.mf-related-posts h3 {
    font-size: 1rem;
    font-weight: 600;
    margin-bottom: 1.25rem;
    color: var(--mf-secondary);
    text-transform: uppercase;
    letter-spacing: 0.07em;
    font-size: 0.75rem;
}

/* Índice do artigo (sumário) */
.mf-toc {
    padding: 1.25rem 1.5rem;
    background-color: var(--mf-surface);
    border: 1px solid var(--mf-border);
    border-left: 3px solid var(--mf-navy);
    border-radius: 0 var(--mf-radius-md) var(--mf-radius-md) 0;
    margin: 1.5rem 0 2rem;
}

.mf-toc__title {
    font-size: 0.8125rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    color: var(--mf-secondary);
    margin-bottom: 0.75rem;
}

.mf-toc ol,
.mf-toc ul {
    padding-left: 1.25rem;
    margin: 0;
}

.mf-toc li {
    font-size: 0.9rem;
    margin-bottom: 0.3rem;
}

.mf-toc a {
    color: var(--mf-body);
    text-decoration: none;
}

.mf-toc a:hover {
    color: var(--mf-action);
}


/* ================================================================
   20. FOOTER
   ================================================================ */

.site-footer {
    background-color: var(--mf-dark) !important;
    color: rgba(255,255,255,0.7);
    border-top: none !important;
}

.site-footer a {
    color: rgba(255,255,255,0.65);
    text-decoration: none;
    transition: color 0.15s;
}

.site-footer a:hover {
    color: #fff;
    text-decoration: none;
}

/* Grid do rodapé — 4 colunas */
.mf-footer-grid {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr 1fr;
    gap: 2.5rem;
    padding: 60px 0 40px;
}

.mf-footer-col__title {
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: rgba(255,255,255,0.5);
    margin-bottom: 1rem;
}

.mf-footer-nav {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.mf-footer-nav li a {
    font-size: 0.9rem;
}

/* Logo no rodapé */
.mf-footer-brand {
    margin-bottom: 1rem;
}

.mf-footer-brand__name {
    font-size: 1.125rem;
    font-weight: 700;
    color: #fff;
    letter-spacing: -0.02em;
}

.mf-footer-brand__tagline {
    font-size: 0.875rem;
    color: rgba(255,255,255,0.45);
    margin-top: 0.25rem;
}

/* Linha inferior do rodapé */
.mf-footer-bottom {
    border-top: 1px solid rgba(255,255,255,0.08);
    padding: 1.25rem 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 0.75rem;
    font-size: 0.8125rem;
    color: rgba(255,255,255,0.35);
}

.mf-footer-bottom a {
    color: rgba(255,255,255,0.45);
}

.mf-footer-legal {
    font-size: 0.75rem;
    color: rgba(255,255,255,0.3);
    margin-top: 0.5rem;
    line-height: 1.6;
}


/* ================================================================
   21. SIDEBAR
   ================================================================ */

.widget-area .widget {
    margin-bottom: 2rem;
    padding: 1.25rem;
    background: var(--mf-surface);
    border: 1px solid var(--mf-border);
    border-radius: var(--mf-radius-md);
}

.widget-area .widget-title {
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--mf-secondary);
    margin-bottom: 1rem;
    padding-bottom: 0.5rem;
    border-bottom: 1px solid var(--mf-border);
}

.widget-area ul li {
    font-size: 0.9rem;
    padding: 0.35rem 0;
    border-bottom: 1px solid var(--mf-border);
}

.widget-area ul li:last-child {
    border-bottom: none;
}

/* Widget "Ferramentas rápidas" */
.mf-widget-tools a {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--mf-action);
    padding: 0.45rem 0;
    text-decoration: none;
    border-bottom: 1px solid var(--mf-border);
}

.mf-widget-tools a:hover {
    color: var(--mf-action-hover);
}

.mf-widget-tools a:last-child {
    border-bottom: none;
}


/* ================================================================
   22. FORMULÁRIOS
   ================================================================ */

input[type="text"],
input[type="email"],
input[type="search"],
input[type="url"],
input[type="number"],
textarea,
select {
    font-family: var(--mf-font);
    font-size: 0.9375rem;
    color: var(--mf-body);
    border: 1px solid var(--mf-border-strong);
    border-radius: var(--mf-radius);
    padding: 0.55em 0.875em;
    background-color: var(--mf-white);
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
    width: 100%;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="search"]:focus,
input[type="url"]:focus,
input[type="number"]:focus,
textarea:focus,
select:focus {
    outline: none;
    border-color: var(--mf-action);
    box-shadow: 0 0 0 3px var(--mf-action-light);
}

label {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--mf-heading);
    display: block;
    margin-bottom: 0.375rem;
}


/* ================================================================
   23. PAGINAÇÃO
   ================================================================ */

.pagination .page-numbers,
.nav-links .page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.25rem;
    height: 2.25rem;
    border: 1px solid var(--mf-border);
    border-radius: var(--mf-radius);
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--mf-body);
    text-decoration: none;
    transition: border-color 0.15s, background 0.15s;
}

.pagination .page-numbers.current,
.pagination .page-numbers:hover,
.nav-links .page-numbers.current,
.nav-links .page-numbers:hover {
    background-color: var(--mf-action);
    border-color: var(--mf-action);
    color: #fff;
}


/* ================================================================
   24. UTILITÁRIOS
   ================================================================ */

/* Divisor horizontal com texto */
.mf-divider {
    display: flex;
    align-items: center;
    gap: 1rem;
    color: var(--mf-muted);
    font-size: 0.8125rem;
    margin: 1.5rem 0;
}

.mf-divider::before,
.mf-divider::after {
    content: '';
    flex: 1;
    height: 1px;
    background-color: var(--mf-border);
}

/* Destaque de número/estatística */
.mf-stat {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.mf-stat__value {
    font-size: 2rem;
    font-weight: 700;
    color: var(--mf-heading);
    letter-spacing: -0.03em;
    line-height: 1;
}

.mf-stat__label {
    font-size: 0.8125rem;
    color: var(--mf-secondary);
}

/* Tópico com check — genérico */
.mf-check-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.mf-check-list li {
    display: flex;
    align-items: flex-start;
    gap: 0.625rem;
    font-size: 0.9375rem;
    color: var(--mf-body);
}

.mf-check-list li::before {
    content: '✓';
    font-weight: 700;
    color: var(--mf-action);
    font-size: 0.875rem;
    margin-top: 0.15rem;
    flex-shrink: 0;
}

/* Ocultar visualmente mas manter acessível */
.mf-sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0,0,0,0);
    white-space: nowrap;
    border: 0;
}

/* Alinhamento de texto */
.mf-text-center { text-align: center; }
.mf-text-left   { text-align: left; }

/* Limitar largura de texto para legibilidade */
.mf-prose {
    max-width: 680px;
}

.mf-prose-center {
    max-width: 680px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}


/* ================================================================
   25. RESPONSIVO — BREAKPOINTS
   ================================================================ */

/* Tablet: ≤ 1024px */
@media (max-width: 1024px) {
    :root {
        --mf-section-y:    60px;
        --mf-section-y-sm: 40px;
    }

    .mf-hero__layout {
        grid-template-columns: 1fr;
        gap: 2rem;
    }

    .mf-hero__visual {
        display: none; /* Ocultar visual decorativo em tablet */
    }

    .mf-footer-grid {
        grid-template-columns: 1fr 1fr;
        gap: 2rem;
    }

    .mf-tools-grid .mf-tool-card--featured {
        grid-column: span 1;
        flex-direction: column;
    }
}

/* Mobile: ≤ 767px */
@media (max-width: 767px) {
    :root {
        --mf-section-y:    48px;
        --mf-section-y-sm: 32px;
    }

    .mf-hero {
        padding: 64px 0 56px;
    }

    .mf-hero__title {
        font-size: clamp(1.75rem, 5vw, 2.5rem);
    }

    .mf-tools-grid {
        grid-template-columns: 1fr;
    }

    .mf-posts-grid {
        grid-template-columns: 1fr;
    }

    .mf-plans-grid {
        grid-template-columns: 1fr;
    }

    .mf-footer-grid {
        grid-template-columns: 1fr;
        padding: 40px 0 32px;
    }

    .mf-footer-bottom {
        flex-direction: column;
        align-items: flex-start;
        text-align: left;
    }

    .mf-newsletter-form {
        flex-direction: column;
    }

    .mf-newsletter-form input[type="email"],
    .mf-newsletter-form button {
        width: 100%;
    }

    .mf-rt-pillars {
        grid-template-columns: 1fr;
    }

    .mf-profiles-grid,
    .mf-benefits-grid {
        grid-template-columns: 1fr;
    }

    .mf-roadmap-grid {
        grid-template-columns: 1fr 1fr;
    }

    /* Tabelas — scroll horizontal em mobile */
    .entry-content table {
        display: block;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
}

/* Mobile pequeno: ≤ 480px */
@media (max-width: 480px) {
    .mf-roadmap-grid {
        grid-template-columns: 1fr;
    }

    .mf-btn-group {
        flex-direction: column;
        align-items: stretch;
    }

    .mf-btn,
    .mf-btn--primary,
    .mf-btn--ghost {
        text-align: center;
        justify-content: center;
    }
}


/* ================================================================
   26. AJUSTES KADENCE — OVERRIDES ESPECÍFICOS DO TEMA
   Corrige ou adapta comportamentos padrão do Kadence.
   ================================================================ */

/* Remover box-shadow excessiva no hover de botões Kadence */
button:hover,
.button:hover,
.wp-block-button__link:hover,
input[type="submit"]:hover {
    box-shadow: none !important;
}

/* Corrigir border-radius dos blocos Kadence */
.kb-btns-outer-wrap .kt-button,
.kb-btn-custom-colors,
.kt-btn-wrap a {
    border-radius: var(--mf-radius) !important;
}

/* Kadence blocks — ajustes de card/coluna */
.kt-blocks-info-box-link-wrap {
    border-radius: var(--mf-radius-md) !important;
}

.kt-blocks-info-box-link-wrap:hover {
    box-shadow: var(--mf-shadow-md) !important;
}

/* Rank Math breadcrumb */
.rank-math-breadcrumb {
    font-size: 0.8125rem;
    color: var(--mf-muted);
    margin-bottom: 1.5rem;
}

.rank-math-breadcrumb a {
    color: var(--mf-muted);
    text-decoration: none;
}

.rank-math-breadcrumb a:hover {
    color: var(--mf-action);
}

/* WPForms / SureForms — alinhamento visual */
.wpforms-container input[type="text"],
.wpforms-container input[type="email"],
.wpforms-container textarea,
.sureforms-form input[type="text"],
.sureforms-form input[type="email"],
.sureforms-form textarea {
    border-color: var(--mf-border-strong);
    border-radius: var(--mf-radius);
    font-family: var(--mf-font);
}

.wpforms-submit,
.sureforms-submit {
    background-color: var(--mf-action) !important;
    border-radius: var(--mf-radius) !important;
    font-family: var(--mf-font) !important;
    font-weight: 600 !important;
}
