/* style.css - L2H Consultoria (Corporate Crimson) */

:root {
    --accent-color: #B31217; /* Vermelho Corporativo L2H */
    --bg-deep: #0a0c10;      /* Preto profundo (Fundo Principal) */
    --bg-card: #16191d;      /* Cinza escuro (Cards e Modais) */
    --text-main: #ffffff;    /* Branco puro para leitura */
}

body {
    background-color: var(--bg-deep);
    color: var(--text-main);
    font-family: 'Inter', sans-serif;
    line-height: 1.6;
}

/* Sobrescrevendo o Azul Padrão do Bootstrap para o Vermelho L2H */
.text-primary { color: var(--accent-color) !important; }
.bg-primary { background-color: var(--accent-color) !important; }
.border-primary { border-color: var(--accent-color) !important; }

.btn-primary {
    background-color: var(--accent-color);
    border-color: var(--accent-color);
    color: #ffffff;
}
.btn-primary:hover, .btn-primary:focus {
    background-color: #8a0e12; /* Tom mais escuro e sóbrio no hover */
    border-color: #8a0e12;
    color: #ffffff;
}

.btn-outline-primary {
    color: var(--accent-color);
    border-color: var(--accent-color);
}
.btn-outline-primary:hover {
    background-color: var(--accent-color);
    color: #ffffff;
}

/* Menu de Navegação Superior */
.navbar-executive {
    background-color: rgba(10, 12, 16, 0.95);
    backdrop-filter: blur(10px);
    border-bottom: 1px solid #2d3238;
}
.nav-link { color: #ffffff !important; font-weight: 500; transition: 0.3s; opacity: 0.8; }
.nav-link:hover, .nav-link.active { color: var(--accent-color) !important; opacity: 1; }

/* Estilos Base de Layout */
.hero-section { position: relative; height: 100vh; display: flex; align-items: center; justify-content: center; overflow: hidden; background-color: #000; }
#hero-video { position: absolute; top: 50%; left: 50%; min-width: 100%; min-height: 100%; transform: translate(-50%, -50%); object-fit: cover; filter: brightness(0.3); z-index: 0; }
.hero-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: radial-gradient(circle, rgba(0,0,0,0) 0%, rgba(0,0,0,0.8) 100%); z-index: 1; }
.hero-content { z-index: 2; text-align: center; max-width: 900px; padding: 20px; }

h1, h2, h3, h4, h5 { color: #ffffff !important; font-weight: 700; }
p, span, small { color: #ffffff !important; }

.glass-card, .service-card, .card-stats {
    background: var(--bg-card);
    border: 1px solid #2d3238;
    border-radius: 12px;
    padding: 40px;
    transition: all 0.3s ease;
}
.glass-card:hover, .service-card:hover, .card-stats:hover {
    border-color: var(--accent-color);
    transform: translateY(-5px);
    box-shadow: 0 10px 30px rgba(179, 18, 23, 0.15); /* Brilho vermelho sutil */
}

.avatar-executivo { width: 200px; height: 200px; object-fit: cover; border-radius: 50%; border: 4px solid var(--accent-color); box-shadow: 0 0 30px rgba(179, 18, 23, 0.2); }
.highlight-box { background: rgba(179, 18, 23, 0.1); border-left: 4px solid var(--accent-color); padding: 15px; height: 100%; }

/* Box de Chamada para Ação (CTA) - Fundo Cinza Metálico ao invés de Azul */
.cta-box {
    background: linear-gradient(135deg, #1e2227, #16191d);
    border: 1px solid #3d444d;
    border-radius: 15px;
    padding: 50px;
    text-align: center;
}

/* Estilos de Modais e Formulários */
.modal-content { background-color: var(--bg-card); border: 1px solid #3d444d; border-radius: 15px; }
.form-control, .ticker-input { background-color: #0f1113; border: 1px solid #3d444d; color: #ffffff; }
.form-control:focus, .ticker-input:focus { background-color: #16191d; border-color: var(--accent-color); color: #ffffff; box-shadow: 0 0 0 0.25rem rgba(179, 18, 23, 0.25); }
.form-label { font-weight: 600; font-size: 0.9rem; color: #ffffff; }

/* Cor do texto de dica (placeholder) */
.form-control::placeholder, .ticker-input::placeholder { 
    color: #8c939b !important; /* Cinza médio sofisticado */
    opacity: 1 !important; 
}

/* Outros Ajustes Universais */
.chart-container { height: 400px; background: #000; border-radius: 0 0 12px 12px; overflow: hidden; }
.badge-finance { background: rgba(179, 18, 23, 0.1); color: #ff4d4d; border: 1px solid #ff4d4d; padding: 5px 10px; }
.badge-finance-alt { background: rgba(255,193,7,0.1); color: #ffc107; border: 1px solid #ffc107; padding: 5px 10px; }
.icon-circle { width: 60px; height: 60px; background: rgba(179, 18, 23, 0.1); color: var(--accent-color); border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 1.8rem; margin-bottom: 20px; }

/* ========================================== */
/* Estilo Específico do Dashboard Demo        */
/* ========================================== */
.demo-window {
    background: #1e2227;
    border: 1px solid #3d444d;
    border-radius: 12px;
    box-shadow: 0 20px 50px rgba(0,0,0,0.5);
    overflow: hidden;
}
.window-header {
    background: #2d3238;
    padding: 10px 20px;
    display: flex;
    align-items: center;
    gap: 8px;
}
.dot { width: 12px; height: 12px; border-radius: 50%; }
.red { background: #ff5f56; } .yellow { background: #ffbd2e; } .green { background: #27c93f; }

.stat-box {
    background: rgba(255,255,255,0.03);
    border: 1px solid rgba(255,255,255,0.05);
    border-radius: 8px;
    padding: 20px;
}