.tam-v2 .material-symbols-outlined {
    font-variation-settings: 'FILL' 0, 'wght' 300, 'GRAD' 0, 'opsz' 24;
    vertical-align: middle;
}

.tam-v2 .tam-v2-editorial-grid {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    gap: 2rem;
}

.tam-v2 .tam-v2-editorial-shadow {
    box-shadow: 0 12px 40px rgba(26, 28, 28, 0.06);
}

.tam-v2 .tam-v2-ledger-border {
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}

.tam-v2 .tam-v2-hero-gradient {
    background: linear-gradient(135deg, #91000a 0%, #b71c1c 100%);
}

.tam-v2 .tam-v2-pdf-btn {
    transition: transform 0.35s ease, box-shadow 0.35s ease;
}

.tam-v2 .tam-v2-pdf-btn:hover,
.tam-v2 .tam-v2-pdf-btn:focus-visible {
    transform: translateY(-2px);
    box-shadow: 0 16px 40px rgba(113, 19, 13, 0.28);
}

.tam-v2 .tam-v2-reveal {
    opacity: 0;
    transform: translateY(2rem);
    transition: opacity 1s ease, transform 1s ease;
}

.tam-v2 .tam-v2-reveal.tam-v2-reveal--visible {
    opacity: 1;
    transform: translateY(0);
}

@media (prefers-reduced-motion: reduce) {
    .tam-v2 .tam-v2-reveal {
        opacity: 1;
        transform: none;
        transition: none;
    }
}

.tam-v2 .tam-v2-progress-bar {
    height: 4px;
    background: rgba(255, 255, 255, 0.1);
}

.tam-v2 .tam-v2-progress-fill {
    height: 100%;
    background: #ffffff;
    transition: width 1.2s ease;
}

.tam-v2 a.tam-v2-compliance-cta {
    text-decoration: none;
    color: inherit;
}

.tam-v2 .tam-v2-compliance-img {
    filter: grayscale(100%) brightness(0.9) contrast(1.25);
    transition: filter 0.6s ease, transform 0.6s ease;
}

/* =============================================
   TABELA DE RESULTADOS — hover sutil
   ============================================= */
.tam-v2 .tam-v2-table-row {
    transition: background-color 0.25s ease;
}

.tam-v2 .tam-v2-table-row:hover {
    background-color: #f3f3f3;
}

/* =============================================
   CARD CINZA → hover bordô com neve premium
   Usado em: card de crédito, debêntures, convênios, métricas, pendências
   ============================================= */
.tam-v2 .tam-v2-card-hover {
    position: relative;
    z-index: 0;
    transition:
        background-color 0.38s ease,
        box-shadow 0.38s ease,
        transform 0.32s ease,
        border-color 0.38s ease;
    overflow: hidden;
}

.tam-v2 .tam-v2-card-hover::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(255,255,255,0.03) 0%, rgba(255,255,255,0.0) 100%);
    opacity: 0;
    transition: opacity 0.38s ease;
    pointer-events: none;
}

.tam-v2 .tam-v2-card-hover:hover,
.tam-v2 .tam-v2-card-hover:focus-within {
    background-color: #71130d !important;
    box-shadow: 0 20px 56px rgba(113, 19, 13, 0.30), 0 2px 8px rgba(113, 19, 13, 0.18);
    transform: translateY(-4px);
    border-color: #71130d !important;
    z-index: 2;
}

.tam-v2 .tam-v2-card-hover:hover::after,
.tam-v2 .tam-v2-card-hover:focus-within::after {
    opacity: 1;
}

/* Todo texto dentro do card → branco no hover (sobrescreve text-secondary, text-bordor, etc.) */
.tam-v2 .tam-v2-card-hover [class*="text-"],
.tam-v2 .tam-v2-card-hover p,
.tam-v2 .tam-v2-card-hover .material-symbols-outlined {
    transition: color 0.38s ease;
}

.tam-v2 .tam-v2-card-hover:hover [class*="text-"],
.tam-v2 .tam-v2-card-hover:focus-within [class*="text-"],
.tam-v2 .tam-v2-card-hover:hover p,
.tam-v2 .tam-v2-card-hover:focus-within p,
.tam-v2 .tam-v2-card-hover:hover .material-symbols-outlined,
.tam-v2 .tam-v2-card-hover:focus-within .material-symbols-outlined {
    color: #ffffff !important;
}

/* Divisórias internas mais legíveis sobre o bordô */
.tam-v2 .tam-v2-card-hover:hover .border-surface-container-highest,
.tam-v2 .tam-v2-card-hover:focus-within .border-surface-container-highest {
    border-color: rgba(255, 255, 255, 0.28) !important;
}

/* Badge branco no hover */
.tam-v2 .tam-v2-card-hover .tam-v2-ch-badge {
    transition: background-color 0.38s ease, color 0.38s ease;
}

.tam-v2 .tam-v2-card-hover:hover .tam-v2-ch-badge,
.tam-v2 .tam-v2-card-hover:focus-within .tam-v2-ch-badge {
    background-color: rgba(255,255,255,0.20) !important;
    color: #ffffff !important;
}

/* =============================================
   CARD BORDÔ → hover cinza premium "snow"
   Usado em: stat card hero, painel real_estate bordô, equity sidebar
   ============================================= */
.tam-v2 .tam-v2-card-snow {
    position: relative;
    z-index: 0;
    transition:
        background-color 0.38s ease,
        box-shadow 0.38s ease,
        transform 0.32s ease;
    overflow: hidden;
}

.tam-v2 .tam-v2-card-snow::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse at 30% 20%, rgba(255,255,255,0.12) 0%, transparent 70%);
    opacity: 0;
    transition: opacity 0.5s ease;
    pointer-events: none;
    z-index: 1;
}

.tam-v2 .tam-v2-card-snow:hover,
.tam-v2 .tam-v2-card-snow:focus-within {
    background-color: #2a2a2a !important;
    box-shadow: 0 24px 64px rgba(26, 28, 28, 0.35), 0 0 0 1px rgba(255,255,255,0.06) inset;
    transform: translateY(-4px);
    z-index: 2;
}

.tam-v2 .tam-v2-card-snow:hover::before,
.tam-v2 .tam-v2-card-snow:focus-within::before {
    opacity: 1;
}

/* Texto já é branco — mantém mas ganha um brilho snow */
.tam-v2 .tam-v2-card-snow .tam-v2-cs-title,
.tam-v2 .tam-v2-card-snow .tam-v2-cs-value,
.tam-v2 .tam-v2-card-snow .tam-v2-cs-label,
.tam-v2 .tam-v2-card-snow .tam-v2-cs-ledger {
    transition: color 0.38s ease;
}

.tam-v2 .tam-v2-card-snow:hover .tam-v2-cs-value,
.tam-v2 .tam-v2-card-snow:focus-within .tam-v2-cs-value {
    color: #f0f0f0 !important;
}

.tam-v2 .tam-v2-card-snow:hover .tam-v2-cs-label,
.tam-v2 .tam-v2-card-snow:focus-within .tam-v2-cs-label,
.tam-v2 .tam-v2-card-snow:hover .tam-v2-cs-ledger,
.tam-v2 .tam-v2-card-snow:focus-within .tam-v2-cs-ledger {
    color: rgba(255,255,255,0.70) !important;
}

/* =============================================
   GRID EMPRESAS (equity) → hover bordô snow
   ============================================= */
.tam-v2 .tam-v2-company-cell {
    transition: background-color 0.32s ease, box-shadow 0.32s ease, transform 0.28s ease;
}

.tam-v2 .tam-v2-company-cell:hover {
    background-color: #71130d !important;
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(113, 19, 13, 0.22);
}

.tam-v2 .tam-v2-company-cell .tam-v2-company-name,
.tam-v2 .tam-v2-company-cell .tam-v2-company-sector {
    transition: color 0.32s ease;
}

.tam-v2 .tam-v2-company-cell:hover .tam-v2-company-name {
    color: #ffffff !important;
}

.tam-v2 .tam-v2-company-cell:hover .tam-v2-company-sector {
    color: rgba(255, 202, 196, 0.85) !important;
}

/* =============================================
   HEDGE box (debêntures) — hover snow suave
   ============================================= */
.tam-v2 .tam-v2-hedge-box {
    transition: background-color 0.38s ease, box-shadow 0.38s ease, transform 0.32s ease;
}

.tam-v2 .tam-v2-hedge-box:hover {
    background-color: #1e1e1e !important;
    box-shadow: 0 20px 56px rgba(26, 28, 28, 0.28);
    transform: translateY(-3px);
}

.tam-v2 .tam-v2-hedge-box .tam-v2-hb-text {
    transition: color 0.38s ease;
}

.tam-v2 .tam-v2-hedge-box:hover .tam-v2-hb-text {
    color: rgba(255,255,255,0.75) !important;
}

.tam-v2 .tam-v2-hedge-box:hover .tam-v2-hb-title {
    color: #ffffff !important;
}

/* =============================================
   SEÇÃO AUTÔNOMA (dark band) — card portfolio snow
   ============================================= */
.tam-v2 .tam-v2-portfolio-card {
    transition: background-color 0.4s ease, box-shadow 0.4s ease, border-color 0.4s ease, transform 0.32s ease;
}

.tam-v2 .tam-v2-portfolio-card:hover {
    background-color: rgba(255,255,255,0.12) !important;
    border-color: rgba(255,255,255,0.30) !important;
    box-shadow: 0 16px 48px rgba(0,0,0,0.35), 0 0 0 1px rgba(255,255,255,0.12) inset;
    transform: translateY(-4px);
}

/* =============================================
   COMPLIANCE image — zoom suave no hover
   ============================================= */
.tam-v2 .tam-v2-compliance-wrap:hover .tam-v2-compliance-img {
    filter: grayscale(0%) brightness(0.95) contrast(1.1);
    transform: scale(1.04);
}
