/* ================== VARIÁVEIS E RESET ================== */
:root {
    --bg-dark: #0A0F1D;
    --gold: #D4AF37;
    --gold-bright: #FFDF73;
    --gold-dark: #A67C00;
    --font-title: 'Playfair Display', serif;
    --font-body: 'Montserrat', sans-serif;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body, html {
    font-family: var(--font-body);
    color: #ffffff;
    overflow-x: hidden;
    background-color: var(--bg-dark);
    overflow-x: clip !important;
}

main, .stacking-container, .pillars-section {
    overflow: visible !important; 
    clip-path: none !important;
}

/* ================== BACKGROUND RESPONSIVO ================== */
.bg-image-container {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -2;
    /* Substitua 'bg-hero.jpg' pela sua imagem de escritório/luxo */
    background-image: url('bg-hero.jpg'); 
    background-size: cover;
    background-position: center;
    background-attachment: fixed; /* Efeito parallax suave no desktop */
}

.bg-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    /* Gradiente escuro para garantir leitura do texto */
    background: linear-gradient(135deg, rgba(10, 15, 29, 0.95) 0%, rgba(0, 0, 0, 0.7) 100%);
}

/* ================== HERO LAYOUT (DESKTOP) ================== */
.hero-section {
    position: relative;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-bottom: 20vh !important;
}

.hero-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 2rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
    z-index: 10;
}

.hero-content {
    flex: 0 0 55%; /* Ocupa 55% na esquerda */
}

.hero-image-wrapper {
    flex: 0 0 45%; /* Ocupa 45% na direita */
    display: flex;
    justify-content: center;
    position: relative;
}

/* ================== TIPOGRAFIA ================== */
.hero-headline {
    font-family: var(--font-title);
    /* Fluid Typography: Mínimo 1.8rem, escala com a tela (4vw), Máximo 2.8rem */
    font-size: clamp(1.8rem, 4vw, 2.8rem); 
    line-height: 1.3;
    margin-bottom: 1.5rem;
    font-weight: 600;
    
    /* O "Santo Graal" do design moderno: equilibra as linhas para não deixar palavras sozinhas */
    text-wrap: balance; 
}

.gold-text { color: var(--gold); }

/* Classe que o JS vai injetar automaticamente no nome */
.name-brand { 
    font-weight: 700; 
    text-transform: uppercase; 
    letter-spacing: 1px;
    text-shadow: 0 0 10px rgba(212, 175, 55, 0.3);
}

.glow { text-shadow: 0 0 20px rgba(212, 175, 55, 0.5); }

.hero-subheadline {
    font-size: 1.15rem;
    line-height: 1.8;
    color: #E0E0E0;
    margin-bottom: 2.5rem;
}

.hero-headline .d-block {
    display: block;
    margin-top: 0.5rem;
    /* Deixa a frase final sutilmente ajustada à proporção da primeira */
    font-size: clamp(1.6rem, 3.5vw, 2.6rem); 
}

/* ================== IMAGEM DA EXPERT ================== */
.hero-image {
    width: 100%;
    max-width: 450px;
    z-index: 5;
    filter: drop-shadow(0 15px 35px rgba(0,0,0,0.8));
}

.image-glow {
    position: absolute;
    width: 70%;
    height: 70%;
    background: var(--gold);
    filter: blur(100px);
    opacity: 0.15;
    z-index: 1;
    top: 50%;
    transform: translateY(-50%);
}

/* ================== BOTÃO PREMIUM TÁTIL ================== */
.btn-premium-pill {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 1.2rem 2.8rem;
    background: linear-gradient(135deg, var(--gold-dark) 0%, var(--gold) 50%, var(--gold-bright) 100%);
    color: #0A0F1D;
    text-decoration: none;
    font-weight: 700;
    font-size: 1rem;
    border-radius: 50px;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    overflow: hidden;
    transition: all 0.4s ease;
    /* Sombra volumétrica para aspecto 3D (Luxo) */
    box-shadow: 0 10px 25px rgba(212, 175, 55, 0.2), 
                inset 0px 2px 2px rgba(255, 255, 255, 0.5),
                inset 0px -2px 5px rgba(0, 0, 0, 0.2);
}

.btn-premium-pill:hover {
    transform: translateY(-3px) scale(1.02);
    box-shadow: 0 15px 35px rgba(212, 175, 55, 0.4), 
                inset 0px 2px 2px rgba(255, 255, 255, 0.6),
                inset 0px -2px 5px rgba(0, 0, 0, 0.2);
}

.shimmer {
    position: absolute;
    top: 0;
    left: -100%;
    width: 50%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.6), transparent);
    transform: skewX(-20deg);
    animation: light-pass 4s infinite;
}

@keyframes light-pass {
    0% { left: -100%; }
    15% { left: 150%; }
    100% { left: 150%; }
}

/* ================== RODAPÉ GLASSMARQUEE ================== */
.glass-marquee {
    position: absolute;
    bottom: 0;
    width: 100%;
    padding: 1.2rem 0;
    background: rgba(255, 255, 255, 0.05);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border-top: 1px solid rgba(212, 175, 55, 0.2);
    overflow: hidden;
    z-index: 20;
}

.marquee-content {
    display: flex;
    white-space: nowrap;
    animation: scroll 35s linear infinite;
}

.marquee-content span {
    font-size: 0.85rem;
    font-weight: 600;
    letter-spacing: 2px;
    color: var(--gold);
    margin: 0 3rem;
    display: flex;
    align-items: center;
    gap: 8px;
}

@keyframes scroll {
    from { transform: translateX(0); }
    to { transform: translateX(-50%); }
}

/* ================== RESPONSIVIDADE (MOBILE FIRST THINKING) ================== */
@media (max-width: 992px) {
    .bg-image-container {
        background-attachment: scroll; /* Melhora performance no mobile */
    }

    .hero-container {
        flex-direction: column;
        text-align: center;
        padding-top: 4rem;
    }

    .hero-image-wrapper {
        order: -1; /* Força a foto a subir no mobile */
        margin-bottom: 1rem;
    }

    .hero-headline {
        font-size: 2.2rem;
    }

    /* Botão 100% largo no mobile para ser um alvo de clique perfeito */
    .btn-premium-pill {
        width: 100%;
        padding: 1.2rem 0;
    }
}

@media (max-width: 576px) {
    .hero-headline {
        font-size: 1.8rem;
    }
    .hero-subheadline {
        font-size: 1rem;
    }
}


/* ================== EFEITO EMPILHAR (STICKY SCROLL) ================== */
.stacking-container {
    position: relative;
    width: 100%;
}


/* Z-Index garante quem fica em cima de quem */
.hero-section { z-index: 1; }
.pain-section { z-index: 2; }

/* ================== SECTION 2: A DOR (PAIN SECTION) ================== */
.pain-section {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    background-color: var(--bg-dark); /* Fundo de segurança */
}

/* --- Vídeo Desfocado de Fundo --- */
.video-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -2;
    overflow: hidden;
}

.bg-video-blur {
    width: 100%;
    height: 100%;
    object-fit: cover;
    /* Blur severo e escurecimento premium para destacar o texto */
    filter: blur(15px) brightness(0.25) grayscale(30%);
    transform: scale(1.1); /* Impede que bordas brancas do blur apareçam */
}

.video-overlay-luxury {
    position: absolute;
    top: 0; left: 0; width: 100%; height: 100%;
    /* Deixamos o centro muito mais transparente (0.4) para o vídeo brilhar, 
       mantendo as bordas escuras (0.85) para não perder o contraste com o site */
    background: radial-gradient(circle at center, rgba(5, 10, 21, 0.4) 0%, rgba(0, 0, 0, 0.85) 100%);
    z-index: 1;
}
.video-overlay-dark {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: radial-gradient(circle at center, rgba(10, 15, 29, 0.6) 0%, rgba(0, 0, 0, 0.95) 100%);
    z-index: -1;
}

/* --- Conteúdo da Seção 2 --- */
.pain-container {
    max-width: 850px;
    margin: 0 auto;
    padding: 2rem;
    z-index: 10;
}

.pain-headline {
    font-family: var(--font-title);
    font-size: clamp(2.2rem, 5vw, 3.8rem); /* Responsivo */
    color: #FFFFFF;
    margin-bottom: 3.5rem;
    text-wrap: balance;
    position: relative;
    letter-spacing: -0.5px;
}

/* Detalhe de Luxo: Linha Dourada abaixo do Título */
.pain-headline::after {
    content: '';
    display: block;
    width: 60px;
    height: 3px;
    background: linear-gradient(90deg, transparent, var(--gold), transparent);
    margin: 1.5rem auto 0;
    box-shadow: 0 0 15px rgba(212, 175, 55, 0.6);
}

.pain-paragraph {
    font-size: clamp(1.1rem, 2vw, 1.35rem);
    line-height: 1.8;
    color: #D1D5DB; /* Cinza claro elegante */
    margin-bottom: 2rem;
    font-weight: 300;
}

/* --- Conclusão Empática --- */
.pain-conclusion-wrapper {
    margin-top: 4rem;
    padding-top: 2rem;
    border-top: 1px solid rgba(212, 175, 55, 0.15); /* Separador sutil */
}

.pain-conclusion {
    font-family: var(--font-title);
    font-size: clamp(1.8rem, 4vw, 2.6rem);
    font-style: italic;
    color: #FFFFFF;
}

/* Reutilizando as classes de brilho e dourado */
.highlight-gold {
    color: var(--gold-bright);
    font-weight: 600;
}

.glow {
    text-shadow: 0 0 15px rgba(212, 175, 55, 0.5), 0 0 30px rgba(212, 175, 55, 0.2);
}

/* ================== EFEITO DE LUZ NO TÍTULO ================== */

.gold-glow-text {
    color: var(--gold-bright); /* Usando o dourado mais claro para parecer luz */
    font-weight: 700; /* Levemente mais negrito para sustentar o brilho */
    
    /* Múltiplas camadas de sombra para criar o "halo" de luz */
    text-shadow: 
        0 0 10px rgba(255, 255, 255, 0.3),     /* Núcleo branco suave */
        0 0 20px rgba(212, 175, 55, 0.8),      /* Brilho dourado intenso médio */
        0 0 30px rgba(212, 175, 55, 0.6),      /* Expansão do brilho */
        0 0 40px rgba(166, 124, 0, 0.4);       /* Sombra dourada escura externa */
        
    /* Opcional: Uma animação sutil de pulsar para dar vida */
    animation: pulsateLight 2.5s infinite alternate;
}

/* Animação para o brilho pulsar suavemente */
@keyframes pulsateLight {
    0% {
        text-shadow: 
            0 0 10px rgba(255, 255, 255, 0.3),
            0 0 20px rgba(212, 175, 55, 0.8),
            0 0 30px rgba(212, 175, 55, 0.6);
    }
    100% {
        text-shadow: 
            0 0 15px rgba(255, 255, 255, 0.5), /* Brilha mais forte */
            0 0 25px rgba(212, 175, 55, 1),
            0 0 40px rgba(212, 175, 55, 0.8),
            0 0 50px rgba(212, 175, 55, 0.6);
    }
}

/* ================== EFEITO DE DIGITAÇÃO ================== */
.cursor {
    display: inline-block;
    width: 3px;
    background-color: var(--gold-bright);
    margin-left: 5px;
    animation: blink 1s step-end infinite;
    vertical-align: text-bottom;
}

@keyframes blink {
    0%, 100% { opacity: 1; }
    50% { opacity: 0; }
}

/* ================== AJUSTE DE ALINHAMENTO (MOBILE) ================== */
@media (max-width: 768px) {
    .pain-conclusion-wrapper {
        margin-top: 3rem;
        padding-top: 1rem;
        /* Remove a borda superior do desktop */
        border-top: none; 
        
        /* Adiciona um aspecto de citação intimista no mobile */
        text-align: left;
        padding-left: 1.5rem;
        border-left: 4px solid var(--gold);
        background: linear-gradient(90deg, rgba(212, 175, 55, 0.05) 0%, transparent 100%);
    }

    .pain-conclusion {
        font-size: 1.6rem; /* Tamanho ligeiramente ajustado para o mobile */
    }
}

/* ================== HISTORY SECTION (BASE E DIVISÓRIA) ================== */
.history-section {
    position: relative;
    padding: 120px 0;
    
    /* Fundo 100% Sólido forçado para não vazar nada de outras sessões */
    background-color: #0A1633 !important; 
    
    /* Z-index normal de fluxo */
    z-index: 20; 
    overflow: hidden;
    color: #FFFFFF;
}

/* --- Divisória Dourada Animada --- */
.premium-divider {
    position: absolute;
    top: 0; 
    left: 0; 
    width: 100%; 
    height: 2px;
    background: rgba(212, 175, 55, 0.15); /* Trilha base apagada */
    z-index: 30;
    overflow: hidden;
}
.moving-gold-light {
    position: absolute;
    top: 0; 
    left: -100%; 
    width: 40%; 
    height: 100%;
    /* O laser brilhante */
    background: linear-gradient(90deg, transparent, var(--gold-bright), transparent);
    animation: beam-horizontal 4s infinite linear;
}
@keyframes beam-horizontal {
    0% { left: -100%; }
    100% { left: 100%; }
}

/* ================== LAYOUT DO CONTAINER ================== */
.history-container {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    gap: 80px;
    padding: 0 2rem;
    position: relative;
    z-index: 10;
}

/* ================== COLUNA ESQUERDA: IMAGEM ================== */
.history-image-side {
    flex: 0 0 45%;
}

.image-frame {
    position: relative;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 30px 60px rgba(0,0,0,0.6);
    cursor: pointer;
}

.expert-history-img {
    width: 100%;
    display: block;
    transition: transform 0.6s ease;
}

.image-frame:hover .expert-history-img {
    transform: scale(1.05);
}

.frame-detail {
    position: absolute;
    top: 20px; left: 20px; right: 20px; bottom: 20px;
    border: 1px solid rgba(212, 175, 55, 0.3);
    border-radius: 15px;
    pointer-events: none;
}

.click-hint {
    position: absolute;
    bottom: 20px; right: 20px;
    background: var(--gold);
    color: #0A0F1D;
    width: 45px; height: 45px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
    box-shadow: 0 0 20px rgba(212, 175, 55, 0.5);
    transition: all 0.3s ease;
}

.image-frame:hover .click-hint {
    transform: scale(1.1);
    background: var(--gold-bright);
}

/* ================== COLUNA DIREITA: TEXTOS ================== */
.history-text-side {
    flex: 1;
}

.section-label {
    font-family: var(--font-body);
    text-transform: uppercase;
    letter-spacing: 4px;
    color: var(--gold);
    font-size: 0.95rem;
    margin-bottom: 1.5rem;
    font-weight: 600;
}

.history-paragraph {
    font-size: 1.1rem;
    line-height: 1.8;
    color: #D1D5DB;
    margin-bottom: 2rem;
}

.impact-quote {
    margin: 2.5rem 0;
    padding-left: 2rem;
    border-left: 3px solid var(--gold);
}

.impact-quote h3 {
    font-family: var(--font-title);
    font-size: clamp(1.8rem, 3vw, 2.2rem);
    font-style: italic;
    line-height: 1.3;
}

.history-list {
    margin-bottom: 2.5rem;
}

.history-list p {
    margin-bottom: 1rem;
    font-size: 1.1rem;
    display: flex;
    align-items: center;
    gap: 15px;
    color: #E0E0E0;
}

.transformation-title {
    font-family: var(--font-title);
    font-size: 2.2rem;
    margin-bottom: 2rem;
    color: var(--gold-bright);
}

/* ================== GRID DE RESULTADOS ================== */
.results-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-bottom: 3rem;
}

.result-item {
    background: rgba(255, 255, 255, 0.05);
    padding: 1.5rem;
    border-radius: 12px;
    text-align: center;
    font-size: 0.95rem;
    border: 1px solid rgba(212, 175, 55, 0.15);
    transition: transform 0.3s ease, background 0.3s ease;
}

.result-item:hover {
    transform: translateY(-5px);
    background: rgba(212, 175, 55, 0.05);
    border-color: rgba(212, 175, 55, 0.4);
}

.result-item strong {
    display: block;
    color: var(--gold);
    font-size: 1.8rem;
    margin-bottom: 8px;
    font-weight: 700;
}

.final-history-text {
    font-size: 1.2rem;
    line-height: 1.6;
    margin-bottom: 2rem;
}

.final-history-text strong {
    color: var(--gold-bright);
}

/* ================== CTA E ESCASSEZ ================== */
.cta-history-wrapper {
    margin-top: 2rem;
}

.scarcity-text {
    margin-top: 1.2rem;
    font-size: 0.95rem;
    color: #ff4d4d;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 8px;
    animation: pulse-red 2s infinite;
}

@keyframes pulse-red {
    0% { opacity: 0.7; }
    50% { opacity: 1; text-shadow: 0 0 12px rgba(255, 77, 77, 0.5); }
    100% { opacity: 0.7; }
}

/* ================== RESPONSIVIDADE (MOBILE FIRST) ================== */
@media (max-width: 992px) {
    .history-section { padding: 80px 0; }
    
    .history-container {
        flex-direction: column;
        gap: 50px;
    }
    
    .history-image-side { 
        width: 100%; 
        order: -1; /* Foto sempre primeiro no mobile */
    }
    
    .impact-quote {
        padding-left: 0;
        border-left: none;
        border-top: 1px solid var(--gold);
        padding-top: 1.5rem;
        text-align: center;
    }
    
    .results-grid {
        grid-template-columns: 1fr;
    }

    .cta-history-wrapper, .history-list {
        text-align: center;
    }

    .history-list p { justify-content: center; }
    .scarcity-text { justify-content: center; }
    
    .btn-premium-pill { width: 100%; } /* Botão full-width no celular */
}

/* ================== DIVISÓRIA DOURADA COM REFLEXO ================== */
.premium-divider {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 2px; /* Espessura da linha de ouro */
    
    /* Fundo FIXO de ouro (um gradiente suave para dar volume à linha) */
    background: linear-gradient(90deg, #A67C00 0%, #D4AF37 50%, #A67C00 100%);
    box-shadow: 0 0 10px rgba(212, 175, 55, 0.3); /* Sombra base fixa */
    overflow: hidden;
    z-index: 20;
}

/* O reflexo de luz (shimmer) que passa por cima do ouro */
.moving-gold-light {
    position: absolute;
    top: 0;
    left: -200px;
    width: 150px;
    height: 100%;
    
    /* Feixe de luz branco/brilhante translúcido */
    background: linear-gradient(
        90deg, 
        transparent, 
        rgba(255, 255, 255, 0.8), /* Brilho branco no centro */
        transparent
    );
    
    /* Sombra de luz acompanhando o feixe */
    box-shadow: 0 0 20px rgba(255, 255, 255, 0.6);
    
    /* Animação rápida e contínua */
    animation: goldReflection 3.5s linear infinite;
}

@keyframes goldReflection {
    0% { left: -200px; }
    20% { left: 100%; } /* Passa rápido */
    100% { left: 100%; } /* Aguarda um pouco antes de passar de novo (pausa dramática) */
}

/* ================== SUPER CYCLE SECTION (CORRIGIDO: NITIDEZ E ALINHAMENTO) ================== */
.super-cycle-section {
    position: relative;
    padding: 100px 0 120px 0;
    /* Fundo imersivo */
    background-image: url('bg-luxury-office.jpg'); 
    background-size: cover;
    background-position: center;
    background-attachment: scroll; /* Removido o fixed para evitar bugs de desfoque no scroll */
    background-color: var(--bg-dark);
}

.super-cycle-bg-overlay {
    position: absolute;
    top: 0; left: 0; width: 100%; height: 100%;
    /* Overlay escuro e sólido para contraste perfeito */
    background: linear-gradient(180deg, 
        rgba(5, 8, 16, 0.98) 0%, 
        rgba(10, 22, 51, 0.92) 50%, 
        rgba(5, 8, 16, 0.98) 100%);
    z-index: 1;
}

.cycle-container {
    position: relative;
    z-index: 10;
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 2rem;
}

/* --- CABEÇALHO E ALINHAMENTO --- */
.cycle-header {
    text-align: center;
    margin-bottom: 5rem;
    padding-top: 4rem; /* Respiro abaixo do marquee */
}

.cycle-title {
    font-family: var(--font-title);
    font-size: clamp(2.2rem, 4vw, 3.2rem);
    margin-bottom: 1rem;
    line-height: 1.2;
}

.cycle-subtitle {
    font-size: 1.2rem;
    color: #B0B3B8;
    font-weight: 300;
}

/* --- DIVISÓRIAS GLASS MARQUEE (OTIMIZADAS) --- */
.glass-marquee {
    position: absolute;
    width: 100%;
    padding: 1rem 0;
    /* Fundo semi-transparente sem blur para não bugar fontes */
    background: rgba(10, 15, 29, 0.85);
    border-top: 1px solid rgba(212, 175, 55, 0.2);
    border-bottom: 1px solid rgba(212, 175, 55, 0.2);
    overflow: hidden;
    z-index: 20;
    box-shadow: 0 5px 20px rgba(0,0,0,0.5);
}

.marquee-top { top: 0; left: 0; }
.marquee-middle { position: relative; margin: 5rem 0; width: 100vw; left: 50%; transform: translateX(-50%); }

/* --- CARDS PREMIUM FLUTUANTES (NITIDEZ ABSOLUTA) --- */
.diagnosis-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
    margin-bottom: 4rem;
}

.premium-card-float {
    position: relative;
    perspective: 1000px;
}

/* Animação no wrapper, não no card, preserva a fonte */
.premium-card-float:nth-child(odd) { animation: float-slow 6s ease-in-out infinite; }
.premium-card-float:nth-child(even) { animation: float-slow 6s ease-in-out infinite reverse; }

@keyframes float-slow {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-10px); }
}

.card-inner {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.02) 0%, rgba(10, 15, 29, 0.9) 100%);
    
    /* Borda fixa dourada com um brilho suave emanando para fora e para dentro */
    border: 1px solid rgba(212, 175, 55, 0.5);
    box-shadow: 0 0 15px rgba(212, 175, 55, 0.15), inset 0 0 20px rgba(212, 175, 55, 0.05);
    
    border-radius: 16px;
    padding: 2.5rem 2rem;
    height: 100%;
    transition: all 0.4s ease;
    position: relative;
    overflow: hidden;
    text-align: left;
}

.card-inner:hover {
    border-color: var(--gold-bright);
    box-shadow: 0 0 30px rgba(212, 175, 55, 0.5), inset 0 0 25px rgba(212, 175, 55, 0.15);
}
.card-icon {
    font-size: 2rem;
    color: var(--gold);
    margin-bottom: 1.5rem;
    display: block;
}

.card-title {
    font-family: var(--font-title);
    font-size: 1.5rem;
    margin-bottom: 1rem;
    color: var(--gold); /* Título agora é dourado */
    text-shadow: 0 0 12px rgba(212, 175, 55, 0.4); /* Leve aura de luz na palavra */
}

.card-inner p {
    font-size: 1.05rem;
    line-height: 1.6;
    color: #A0AEC0;
}

.card-glow-border {
    position: absolute;
    bottom: 0; left: 0; width: 100%; height: 3px;
    background: linear-gradient(90deg, transparent, var(--gold), transparent);
    opacity: 0;
    transition: 0.5s;
}

.card-inner:hover .card-glow-border { opacity: 1; }

/* --- TRANSIÇÃO (PIVOT) --- */
.pivot-text {
    text-align: center;
    margin: 4rem auto;
    max-width: 800px;
    padding: 0 1rem;
}

.pivot-text h4 {
    font-family: var(--font-title);
    font-size: 2rem;
    margin-bottom: 1rem;
}

.pivot-text p {
    font-size: 1.15rem;
    color: #E2E8F0;
}

/* --- REALIDADE DOS FATOS --- */
.reality-grid-premium {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    margin-bottom: 5rem;
    align-items: center;
}

.reality-title {
    font-size: 1.6rem;
    margin-bottom: 1.8rem;
    color: #FFFFFF;
}

.negative-list-premium { list-style: none; }
.negative-list-premium li {
    font-size: 1.15rem;
    margin-bottom: 1.2rem;
    display: flex;
    align-items: center;
    gap: 15px;
    color: #CBD5E1;
}

.negative-list-premium li i { color: #ff4d4d; }

.consequence-lead {
    font-size: 1.2rem;
    margin-bottom: 1.5rem;
    color: #FFFFFF;
    font-weight: 600;
}

.tag-cloud {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.premium-tag {
    background: rgba(255, 77, 77, 0.05);
    border: 1px solid rgba(255, 77, 77, 0.2);
    padding: 10px 16px;
    border-radius: 50px;
    font-size: 0.9rem;
    color: #ffb3b3;
}

/* --- O CICLO VISUAL --- */
.cycle-visual-premium {
    background: linear-gradient(180deg, rgba(0,0,0,0.6) 0%, rgba(10,15,29,0.9) 100%);
    border: 1px solid rgba(212, 175, 55, 0.15);
    padding: 4rem 2rem;
    border-radius: 20px;
    text-align: center;
    box-shadow: 0 10px 30px rgba(0,0,0,0.3);
}

.cycle-lead-premium {
    font-size: 1.2rem;
    color: var(--gold);
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 2.5rem;
}

.visual-flow {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}
.flow-pill {
    background: #0A0F1D;
    border: 1px solid rgba(212, 175, 55, 0.2); /* Borda apagada inicial */
    padding: 12px 20px;
    border-radius: 8px;
    font-size: 0.9rem;
    font-weight: 600;
    color: #8c96a8; /* Texto apagado inicial */
    
    /* Configuração da animação contínua de 6 segundos */
    animation: illuminateStep 6s infinite;
}

.visual-flow .flow-pill:nth-child(1) { animation-delay: 0s; }
.visual-flow .flow-pill:nth-child(3) { animation-delay: 1s; }
.visual-flow .flow-pill:nth-child(5) { animation-delay: 2s; }
.visual-flow .flow-pill:nth-child(7) { animation-delay: 3s; }

.danger-pill {
    border-color: #ff4d4d;
    background: rgba(255, 77, 77, 0.05);
    color: #ff4d4d;
}

.visual-flow .danger-pill {
    animation: illuminateDanger 6s infinite !important;
    animation-delay: 4s !important; /* Acende por último */
}

.danger-pill span { display: block; font-size: 0.7rem; opacity: 0.8; font-weight: 400; margin-top: 4px; }

.flow-arrow {
    color: rgba(212, 175, 55, 0.2);
    animation: illuminateArrow 6s infinite;
}

.visual-flow .flow-arrow:nth-child(2) { animation-delay: 0.5s; }
.visual-flow .flow-arrow:nth-child(4) { animation-delay: 1.5s; }
.visual-flow .flow-arrow:nth-child(6) { animation-delay: 2.5s; }
.visual-flow .flow-arrow:nth-child(8) { animation-delay: 3.5s; }

/* --- CONCLUSÃO EMOCIONAL --- */
.final-emotional-call {
    text-align: center;
    margin-top: 5rem;
}

.final-emotional-call h3 {
    font-family: var(--font-title);
    font-size: 2.5rem;
    margin-bottom: 2rem;
}

.deserve-stack p {
    font-size: 1.25rem;
    line-height: 1.8;
    color: #E2E8F0;
}

.highlight-peace {
    font-family: var(--font-title);
    font-size: 2.2rem !important;
    color: var(--gold-bright) !important;
    font-weight: 600;
    margin-top: 1.5rem;
}

/* ================== RESPONSIVIDADE ================== */
@media (max-width: 992px) {
    .super-cycle-section { padding: 80px 0; }
    
    /* Alinhamento Mobile Perfeito */
    .diagnosis-grid { grid-template-columns: 1fr; gap: 20px; }
    .reality-grid-premium { grid-template-columns: 1fr; gap: 40px; }
    
    .card-inner {
        padding: 2rem 1.5rem;
        text-align: center; /* Centraliza no mobile para visual de app */
    }

    .card-icon { margin: 0 auto 1rem auto; }

    .reality-text-box, .consequences-box-premium {
        text-align: center;
    }

    .negative-list-premium li { justify-content: center; text-align: left; }
    .tag-cloud { justify-content: center; }

    .visual-flow { flex-direction: column; gap: 15px; }
    .flow-arrow { transform: rotate(90deg); }

    
    
    .btn-premium-pill { width: 100%; display: block; }
}

/* ================== FIX DE EMERGÊNCIA (VISIBILIDADE) ================== */
/* 1. Garante que o texto fique acima do fundo escuro */
.super-cycle-section .cycle-container {
    position: relative;
    z-index: 999 !important; /* Força o conteúdo para frente */
}

.super-cycle-section .super-cycle-bg-overlay {
    z-index: 0 !important; /* Joga a máscara escura para trás */
}

/* 2. Desativa o bloqueio invisível do AOS temporariamente para teste */
.super-cycle-section [data-aos] {
    opacity: 1 !important;
    transform: none !important;
    visibility: visible !important;
}

/* ================== KEYFRAMES DO CICLO ================== */

/* Acendimento Dourado das Etapas 1 a 4 */
@keyframes illuminateStep {
    0%, 100% {
        border-color: rgba(212, 175, 55, 0.2);
        box-shadow: none;
        color: #8c96a8;
        background: #0A0F1D;
    }
    5%, 25% {
        border-color: var(--gold-bright);
        box-shadow: 0 0 25px rgba(212, 175, 55, 0.7), inset 0 0 10px rgba(212, 175, 55, 0.2);
        color: #FFFFFF; /* Texto acende e fica branco */
        background: rgba(212, 175, 55, 0.1);
    }
    30% {
        border-color: rgba(212, 175, 55, 0.2);
        box-shadow: none;
        color: #8c96a8;
        background: #0A0F1D;
    }
}

/* Acendimento Vermelho (Alerta) da Etapa Final */
@keyframes illuminateDanger {
    0%, 100% {
        border-color: rgba(255, 77, 77, 0.2);
        box-shadow: none;
        color: #ff4d4d;
        background: rgba(255, 77, 77, 0.05);
    }
    5%, 25% {
        border-color: #ff4d4d;
        box-shadow: 0 0 35px rgba(255, 77, 77, 0.8), inset 0 0 15px rgba(255, 77, 77, 0.2);
        color: #FFFFFF;
        background: rgba(255, 77, 77, 0.3);
    }
    30% {
        border-color: rgba(255, 77, 77, 0.2);
        box-shadow: none;
        color: #ff4d4d;
        background: rgba(255, 77, 77, 0.05);
    }
}

/* Impulso das Setas */
@keyframes illuminateArrow {
    0%, 100% { 
        color: rgba(212, 175, 55, 0.2); 
        filter: none; 
        transform: translateX(0); 
    }
    5%, 25% { 
        color: var(--gold-bright); 
        filter: drop-shadow(0 0 10px var(--gold)); 
        transform: translateX(8px); 
    }
    30% { 
        color: rgba(212, 175, 55, 0.2); 
        filter: none; 
        transform: translateX(0); 
    }
}


/* ================== SECTION: A TRANSFORMAÇÃO (HIGH TICKET & STICKY) ================== */
.transformation-section {
    position: relative;
    padding: 120px 0;
    
    /* 1. Base sólida para evitar vazamentos */
    background-color: #03060F !important;
    
    /* 2. A Mágica de Luz: Efeito Amanhecer Dourado + Profundidade Azul */
    background-image: 
        /* Luz dourada nascendo do topo central */
        radial-gradient(ellipse at top center, rgba(212, 175, 55, 0.18) 0%, transparent 60%),
        /* Reflexo azul marinho no canto inferior para criar volume 3D */
        radial-gradient(circle at bottom left, rgba(15, 30, 70, 0.5) 0%, transparent 60%),
        /* Sombra de base para assentar o conteúdo */
        linear-gradient(180deg, transparent 70%, #02040A 100%) !important;
        
    color: #FFFFFF;
    z-index: 30; /* Ordem de empilhamento correta */
    overflow: hidden;
}

/* --- Background Video Luxury --- */
.video-overlay-luxury {
    position: absolute;
    top: 0; left: 0; width: 100%; height: 100%;
    /* Gradiente super escuro nas bordas, ligeiramente transparente no centro */
    background: radial-gradient(circle at center, rgba(5, 10, 21, 0.75) 0%, rgba(0, 0, 0, 0.98) 100%);
    z-index: 1;
}

.transformation-container {
    position: relative;
    z-index: 10;
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 2rem;
}
.transformation-section .video-background {
    display: none !important;
}
.transformation-section .premium-divider {
    background: rgba(212, 175, 55, 0.3);
    box-shadow: 0 0 20px rgba(212, 175, 55, 0.2);
}

/* --- Cabeçalho de Visão --- */
.transform-header {
    text-align: center;
    max-width: 800px;
    margin: 0 auto 5rem auto;
}

.transform-title {
    font-family: var(--font-title);
    font-size: clamp(2.5rem, 5vw, 3.8rem);
    margin-bottom: 2rem;
    line-height: 1.2;
}

.transform-intro p {
    font-size: 1.25rem;
    line-height: 1.8;
    color: #CBD5E1;
    margin-bottom: 1rem;
}

.transform-intro p strong { color: #FFFFFF; font-weight: 600; }

/* --- Cards de Visão (Glassmorphism de Luxo) --- */
.vision-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
    margin-bottom: 5rem;
}

.vision-card-glass {
    /* Efeito de vidro que permite ver o vídeo em movimento por trás */
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.05) 0%, rgba(10, 15, 29, 0.6) 100%);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid rgba(212, 175, 55, 0.2);
    border-radius: 16px;
    padding: 2.5rem;
    transition: all 0.4s ease;
    border-left: 4px solid var(--gold);
    box-shadow: 0 10px 30px rgba(0,0,0,0.4);
}

.vision-card-glass:hover {
    transform: translateY(-5px);
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.08) 0%, rgba(10, 15, 29, 0.8) 100%);
    border-color: rgba(212, 175, 55, 0.6);
    box-shadow: 0 15px 40px rgba(0,0,0,0.6);
}

.vision-icon {
    font-size: 2rem;
    color: var(--gold-bright);
    margin-bottom: 1.2rem;
    filter: drop-shadow(0 0 10px rgba(212, 175, 55, 0.4));
}

.vision-card-glass h4 {
    font-family: var(--font-title);
    font-size: 1.4rem;
    margin-bottom: 1rem;
    color: #FFFFFF;
}

.vision-card-glass p {
    font-size: 1.05rem;
    line-height: 1.6;
    color: #E2E8F0;
}

.vision-card-glass p strong { color: var(--gold-bright); }

/* --- Painel de Resultados (O Veredito) --- */
.result-panel-glass {
    background: rgba(10, 15, 29, 0.7);
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
    border: 1px solid var(--gold);
    box-shadow: 0 0 30px rgba(212, 175, 55, 0.15), inset 0 0 20px rgba(212, 175, 55, 0.05);
    border-radius: 20px;
    padding: 4rem 2rem;
    text-align: center;
    margin-bottom: 6rem;
    position: relative;
}

.panel-label {
    position: absolute;
    top: -15px;
    left: 50%;
    transform: translateX(-50%);
    background: var(--gold);
    color: #000;
    padding: 5px 25px;
    border-radius: 30px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-size: 0.85rem;
    box-shadow: 0 0 15px rgba(212, 175, 55, 0.5);
}

.result-highlights {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 15px;
    margin-bottom: 2.5rem;
}

.result-highlights span {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    padding: 12px 20px;
    border-radius: 50px;
    font-size: 1.1rem;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 10px;
}

.result-highlights span i { color: var(--gold-bright); }

.highlight-peace-gold {
    background: rgba(212, 175, 55, 0.15) !important;
    border-color: var(--gold) !important;
    color: #FFFFFF;
    box-shadow: 0 0 15px rgba(212, 175, 55, 0.3);
}

.result-truth {
    font-size: 1.3rem;
    color: #E2E8F0;
    line-height: 1.6;
}

.result-truth em {
    color: var(--gold);
    font-style: italic;
    font-family: var(--font-title);
    font-size: 1.5rem;
    text-shadow: 0 0 10px rgba(212, 175, 55, 0.3);
}

/* --- Comunidade e Plano --- */
.support-system-wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    align-items: center;
    margin-bottom: 6rem;
}

.support-text p {
    font-size: 1.15rem;
    line-height: 1.8;
    color: #CBD5E1;
    margin-bottom: 1.2rem;
}

.support-text h4 {
    font-size: 1.3rem;
    margin-bottom: 1rem;
}

.plan-checklist-glass {
    background: rgba(0, 0, 0, 0.4);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border: 1px solid rgba(212, 175, 55, 0.2);
    border-radius: 16px;
    padding: 3rem;
    box-shadow: 0 20px 40px rgba(0,0,0,0.5);
}

.plan-checklist-glass ul { list-style: none; margin-bottom: 2rem; }
.plan-checklist-glass ul li {
    font-size: 1.15rem;
    margin-bottom: 1.2rem;
    display: flex;
    align-items: center;
    gap: 15px;
    color: #FFFFFF;
}

.plan-checklist-glass ul li i { color: var(--gold); font-size: 1.2rem; filter: drop-shadow(0 0 5px rgba(212,175,55,0.5)); }

.plan-conclusion {
    border-top: 1px solid rgba(212, 175, 55, 0.3);
    padding-top: 1.5rem;
    font-size: 1.25rem;
    font-weight: 600;
    color: var(--gold-bright);
}

.plan-conclusion span {
    display: block;
    font-size: 0.95rem;
    color: #A0AEC0;
    font-weight: 400;
    margin-top: 8px;
    line-height: 1.5;
}

/* --- CTA: Alinhamento Central Perfeito --- */
.cta-high-ticket-wrapper {
    display: flex;
    flex-direction: column; /* Coloca botão e texto um embaixo do outro */
    align-items: center;    /* Centraliza no eixo horizontal */
    text-align: center;
    margin-top: 3rem;
    width: 100%;
}

.btn-large {
    font-size: 1.15rem;
    padding: 1.4rem 3.5rem;
}

.subtext-cta {
    margin-top: 1.2rem;
    font-size: 0.95rem;
    color: var(--gold);
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

/* ================== RESPONSIVIDADE ================== */
@media (max-width: 992px) {
    .transformation-section { padding: 80px 0; }
    
    .vision-grid { grid-template-columns: 1fr; }
    .support-system-wrapper { grid-template-columns: 1fr; gap: 40px; }
    .result-highlights { flex-direction: column; }
    
    .plan-checklist-glass { padding: 2rem 1.5rem; }
    .transform-title { font-size: 2.2rem; }
    
    /* No celular, garante que o botão ocupe largura mas fique centralizado */
    .btn-large { width: 100%; max-width: 400px; } 
}

/* ================== SESSÃO PILARES (BLINDAGEM ABSOLUTA) ================== */

/* 1. REGRA DE OURO GLOBAL: Destrava o site inteiro para o efeito funcionar */
html, body {
    overflow-x: clip !important;
}

/* 2. FORÇA a seção a ser visível para o sticky funcionar */
.pillars-section {
    /* 1. Base 100% sólida em Azul Noturno (Bloqueia qualquer palavra de outra sessão) */
    background-color: #0A1226 !important;
    
    /* 2. Luzes douradas aplicadas apenas como pintura por cima da base sólida */
    background-image: 
        radial-gradient(circle at top right, rgba(212, 175, 55, 0.18) 0%, transparent 40%),
        radial-gradient(circle at bottom left, rgba(212, 175, 55, 0.08) 0%, transparent 50%) !important;
        
    padding: 100px 0 0 0;
    position: relative;
    z-index: 20;
    overflow: visible !important; /* Mantém o empilhamento funcionando */
}


.pillars-intro-content {
    max-width: 800px;
    margin: 0 auto 6rem auto;
    text-align: center;
    padding: 0 2rem;
}

.pillar-intro-text {
    font-size: 1.25rem;
    line-height: 1.8;
    color: #CBD5E1;
    margin-top: 1.5rem;
}

/* --- 3. A NOVA MÁGICA FLEXBOX (Deck de Cartas) --- */
.pillar-deck-wrapper {
    position: relative;
    max-width: 1000px;
    margin: 0 auto;
    padding: 0 2rem 30vh 2rem;
    
    /* A mudança vital: usamos flexbox para gerar a área de rolagem */
    display: flex;
    flex-direction: column;
    /* O "gap" é a distância (pista de rolagem) entre uma carta e outra */
    gap: 60vh; 
    
    overflow: visible !important; /* CRUCIAL */
}

/* Estrutura da Carta Base */
.deck-card {
    position: -webkit-sticky !important;
    position: sticky !important;
    
    background: linear-gradient(135deg, #0A1226 0%, #050810 100%);
    border: 1px solid rgba(212, 175, 55, 0.4);
    border-radius: 30px;
    padding: 4rem;
    box-shadow: 0 -25px 50px rgba(0,0,0,0.9);
    
    /* === A CORREÇÃO ESTÁ AQUI === */
    overflow: hidden !important; /* Prende a luz estritamente dentro da carta */
}

/* O Segredo da Escadinha: Distâncias perfeitas do topo */
.card-1 { top: 12vh !important; z-index: 1; }
.card-2 { top: 15vh !important; z-index: 2; }
.card-3 { top: 18vh !important; z-index: 3; }
.card-4 { top: 21vh !important; z-index: 4; }


/* --- Detalhes Visuais das Cartas (Luz e Textos) --- */
.pillar-light-beam {
    position: absolute;
    top: 0; left: -100%;
    width: 100%; height: 3px;
    background: linear-gradient(90deg, transparent, var(--gold-bright), transparent);
    animation: beam-loop 4s infinite linear;
    z-index: 1;
}

@keyframes beam-loop {
    0% { left: -100%; top: 0; }
    25% { left: 100%; top: 0; }
    50% { left: 100%; top: 100%; }
    75% { left: -100%; top: 100%; }
    100% { left: -100%; top: 0; }
}

.pillar-content { position: relative; z-index: 5; }

.pillar-number {
    font-family: var(--font-title);
    font-size: 5rem;
    color: rgba(212, 175, 55, 0.08);
    position: absolute;
    top: -1rem; right: 2rem;
    font-weight: 700;
    line-height: 1;
}

.pillar-title {
    font-family: var(--font-title);
    font-size: clamp(2rem, 4vw, 3rem);
    margin-bottom: 3rem;
    color: #FFFFFF;
}

.pillar-grid {
    display: grid;
    grid-template-columns: 1.2fr 0.8fr;
    gap: 50px;
    align-items: start;
}

.pillar-info h4 {
    font-size: 1.15rem;
    margin-bottom: 1.5rem;
    color: #FFFFFF;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.pillar-info ul { list-style: none; }
.pillar-info ul li {
    font-size: 1.1rem;
    margin-bottom: 1.2rem;
    display: flex;
    align-items: center;
    gap: 15px;
    color: #CBD5E1;
}

.pillar-result-box {
    background: rgba(212, 175, 55, 0.05);
    border: 1px solid rgba(212, 175, 55, 0.2);
    padding: 2.5rem 2rem;
    border-radius: 20px;
}

.pillar-result-box h5 {
    color: var(--gold-bright);
    font-size: 1.1rem;
    margin-bottom: 1rem;
    text-transform: uppercase;
}

.pillar-result-box p {
    font-size: 1.05rem;
    line-height: 1.6;
    color: #FFFFFF;
}

/* --- Responsividade Mobile --- */
@media (max-width: 992px) {
    .pillar-deck-wrapper {
        gap: 30vh; /* A pista de rolagem é menor no celular */
    }
    
    .deck-card {
        padding: 2.5rem 1.5rem;
        border-radius: 20px;
    }
    
    .pillar-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .pillar-number {
        font-size: 3rem;
        top: 0; right: 1rem;
    }

    .pillar-title { margin-bottom: 2rem; font-size: 2.2rem; }
    
    /* Escadinha menor no celular para não engolir o texto */
    .card-1 { top: 8vh !important; }
    .card-2 { top: 10vh !important; }
    .card-3 { top: 12vh !important; }
    .card-4 { top: 14vh !important; }
}

/* ================== BACKGROUND VIDEO (ESTRUTURA CORRIGIDA) ================== */

/* 1. O Container que segura o vídeo no fundo da seção */
.video-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    z-index: 0; /* Garante que fique atrás de tudo */
}

/* 2. O Vídeo em si (Esticando na tela toda perfeitamente) */
.bg-video-blur {
    position: absolute;
    top: 50%;
    left: 50%;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    /* Centraliza o vídeo e aplica o desfoque/brilho */
    transform: translate(-50%, -50%) scale(1.05); 
    object-fit: cover; /* Faz o vídeo preencher espaços vazios sem distorcer */
    filter: blur(6px) brightness(0.6) grayscale(10%);
    z-index: 0;
}

/* 3. A Máscara de Luxo (O degradê que garante a leitura do texto) */
.video-overlay-luxury {
    position: absolute;
    top: 0; 
    left: 0; 
    width: 100%; 
    height: 100%;
    /* Centro claro para ver o vídeo, bordas escuras para blending */
    background: radial-gradient(circle at center, rgba(5, 10, 21, 0.4) 0%, rgba(0, 0, 0, 0.85) 100%);
    z-index: 1; /* Fica entre o vídeo e o texto */
}


/* ================== SECTION: OBJEÇÃO DE TEMPO (PREMIUM) ================== */
.time-objection-section {
    position: relative;
    padding: 120px 0;
    
    /* 1. Base 100% Sólida em Azul Noturno (Fim do fundo preto) */
    background-color: #050A15 !important;
    
    /* 2. Gradiente: Luz azul royal por baixo e um toque dourado no topo */
    background-image: 
        radial-gradient(circle at top right, rgba(212, 175, 55, 0.12) 0%, transparent 40%),
        radial-gradient(circle at bottom center, rgba(15, 35, 85, 0.5) 0%, transparent 70%) !important;
    
    overflow: hidden;
    z-index: 25;
}
/* --- Elementos de Fundo --- */
.time-watermark {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-family: var(--font-title);
    font-size: 25vw;
    font-weight: 800;
    color: transparent;
    -webkit-text-stroke: 2px rgba(212, 175, 55, 0.03); /* Texto vazado gigante */
    white-space: nowrap;
    z-index: 1;
    pointer-events: none;
}

.time-glow-bg {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 600px;
    height: 600px;
    background: radial-gradient(circle, rgba(212, 175, 55, 0.1) 0%, transparent 70%);
    z-index: 2;
    pointer-events: none;
}

/* --- Container e Painel de Vidro Negro --- */
.time-container {
    position: relative;
    z-index: 10;
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 2rem;
}

.time-glass-panel {
    background: linear-gradient(135deg, rgba(15, 20, 35, 0.8) 0%, rgba(5, 8, 15, 0.95) 100%);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(212, 175, 55, 0.2);
    border-radius: 24px;
    padding: 4rem;
    box-shadow: 0 30px 60px rgba(0,0,0,0.8), inset 0 1px 0 rgba(255,255,255,0.05);
}

.time-content-grid {
    display: grid;
    grid-template-columns: 1fr 2px 1fr;
    gap: 50px;
    align-items: center;
}

/* --- Lado Esquerdo: A Objeção --- */
.objection-label {
    display: inline-block;
    background: rgba(255, 77, 77, 0.1);
    color: #ff4d4d;
    padding: 6px 15px;
    border-radius: 30px;
    font-size: 0.9rem;
    font-weight: 600;
    letter-spacing: 1px;
    text-transform: uppercase;
    margin-bottom: 1.5rem;
    border: 1px solid rgba(255, 77, 77, 0.3);
}

.objection-title {
    font-family: var(--font-title);
    font-size: clamp(2.5rem, 4vw, 4rem);
    color: #FFFFFF;
    line-height: 1.1;
    margin-bottom: 2.5rem;
}

/* O efeito Outline Premium */
.outline-text {
    color: transparent;
    -webkit-text-stroke: 1.5px var(--gold-bright);
    text-shadow: 0 0 15px rgba(212, 175, 55, 0.2);
}

.truth-box {
    border-left: 3px solid var(--gold);
    padding-left: 1.5rem;
}

.truth-title {
    font-size: 1.3rem;
    color: var(--gold-bright);
    margin-bottom: 1rem;
    text-transform: uppercase;
    letter-spacing: 2px;
}

.truth-text {
    font-size: 1.25rem;
    color: #E2E8F0;
    margin-bottom: 1rem;
    line-height: 1.6;
}

.truth-subtext {
    font-size: 1.1rem;
    color: #A0AEC0;
    line-height: 1.6;
}

/* --- Divisória Central Animada --- */
.time-divider {
    position: relative;
    height: 100%;
    width: 2px;
    background: rgba(255, 255, 255, 0.05);
    display: flex;
    justify-content: center;
}

.vertical-beam {
    position: absolute;
    top: 0;
    width: 2px;
    height: 50px;
    background: linear-gradient(180deg, transparent, var(--gold-bright), transparent);
    animation: scanVertical 3s linear infinite;
}

.glowing-orb {
    position: absolute;
    top: 50%;
    width: 12px;
    height: 12px;
    background: var(--gold-bright);
    border-radius: 50%;
    transform: translateY(-50%);
    box-shadow: 0 0 15px var(--gold-bright), 0 0 30px var(--gold);
}

@keyframes scanVertical {
    0% { top: -50px; opacity: 0; }
    10% { opacity: 1; }
    90% { opacity: 1; }
    100% { top: 100%; opacity: 0; }
}

/* --- Lado Direito: A Solução --- */
.time-benefits {
    list-style: none;
    margin-bottom: 3rem;
}

.time-benefits li {
    display: flex;
    align-items: flex-start;
    gap: 20px;
    margin-bottom: 1.8rem;
}

.time-icon {
    font-size: 1.5rem;
    color: var(--gold);
    margin-top: 5px;
}

.time-benefits p {
    font-size: 1.15rem;
    color: #CBD5E1;
    line-height: 1.6;
}

.time-benefits p strong {
    color: #FFFFFF;
}

/* --- Selo de Resultado Final --- */
.time-result-box {
    display: flex;
    align-items: center;
    gap: 20px;
    background: linear-gradient(90deg, rgba(212, 175, 55, 0.1) 0%, transparent 100%);
    border-left: 4px solid var(--gold-bright);
    padding: 1.5rem 2rem;
    border-radius: 0 12px 12px 0;
}

.result-number {
    font-family: var(--font-title);
    font-size: 4rem;
    font-weight: 800;
    line-height: 1;
    background: linear-gradient(180deg, #FFFFFF 0%, var(--gold) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    filter: drop-shadow(0 5px 10px rgba(212, 175, 55, 0.3));
}

.result-text {
    display: flex;
    flex-direction: column;
}

.result-pre {
    font-size: 1rem;
    color: #A0AEC0;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 5px;
}

.result-pos {
    font-size: 1.3rem;
    color: #FFFFFF;
    font-weight: 700;
}

/* --- Responsividade Mobile --- */
@media (max-width: 992px) {
    .time-glass-panel { padding: 2.5rem 1.5rem; }
    
    /* Muda o grid de colunas para linhas (uma em cima da outra) */
    .time-content-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    /* A divisória vira uma linha horizontal no celular */
    .time-divider {
        width: 100%;
        height: 2px;
    }
    
    .vertical-beam {
        height: 2px;
        width: 50px;
        background: linear-gradient(90deg, transparent, var(--gold-bright), transparent);
        animation: scanHorizontal 3s linear infinite;
    }

    .glowing-orb { left: 50%; top: -5px; transform: translateX(-50%); }

    @keyframes scanHorizontal {
        0% { left: -50px; opacity: 0; }
        10% { opacity: 1; }
        90% { opacity: 1; }
        100% { left: 100%; opacity: 0; }
    }

    .time-result-box {
        flex-direction: column;
        text-align: center;
        border-left: none;
        border-top: 4px solid var(--gold-bright);
        border-radius: 0 0 12px 12px;
        background: linear-gradient(180deg, rgba(212, 175, 55, 0.1) 0%, transparent 100%);
    }
}

/* ================== SECTION: OBJEÇÃO DE INVESTIMENTO (MUITO CARO) ================== */
.investment-objection-section {
    position: relative;
    padding: 120px 0;
    background-color: #050A15 !important; /* Azul Noturno Absoluto */
    overflow: hidden;
    z-index: 20;
}

/* Reflexos de luz de fundo */
.invest-glow-bg {
    position: absolute;
    top: 30%;
    right: -10%;
    width: 600px;
    height: 600px;
    background: radial-gradient(circle, rgba(212, 175, 55, 0.08) 0%, transparent 70%);
    pointer-events: none;
    z-index: 1;
}

.invest-container {
    position: relative;
    z-index: 10;
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 2rem;
}

/* --- Cabeçalho --- */
.invest-header {
    text-align: center;
    max-width: 800px;
    margin: 0 auto 4rem auto;
}

.outline-text-gold {
    color: transparent;
    -webkit-text-stroke: 1.5px var(--gold-bright);
    text-shadow: 0 0 25px rgba(212, 175, 55, 0.2);
}

.invest-subtitle {
    font-size: 1.25rem;
    color: #CBD5E1;
    line-height: 1.6;
    margin-top: 1.5rem;
}

/* --- O Grid de Balanço (Cards) --- */
.roi-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    margin-bottom: 5rem;
}

.roi-card {
    background: linear-gradient(135deg, rgba(15, 20, 35, 0.6) 0%, rgba(5, 8, 15, 0.9) 100%);
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
    border-radius: 20px;
    padding: 3rem 2.5rem;
    position: relative;
    overflow: hidden;
}

.roi-card h3 {
    font-family: var(--font-title);
    font-size: 1.5rem;
    color: #FFFFFF;
    margin-bottom: 1.5rem;
}

.roi-card p {
    font-size: 1.1rem;
    color: #A0AEC0;
    line-height: 1.7;
    margin-bottom: 1rem;
}

/* Detalhes Card 1 (Perigo da Inércia) */
.danger-card {
    border: 1px solid rgba(255, 77, 77, 0.2);
    border-top: 4px solid #ff4d4d;
}

.card-icon-danger {
    font-size: 2.5rem;
    color: #ff4d4d;
    margin-bottom: 1.5rem;
    opacity: 0.8;
}

.danger-highlight {
    font-size: 1.3rem;
    color: #ff4d4d;
    margin-bottom: 1.5rem;
    line-height: 1.4;
}

/* Detalhes Card 2 (O Lucro) */
.profit-card {
    border: 1px solid rgba(212, 175, 55, 0.3);
    border-top: 4px solid var(--gold-bright);
    box-shadow: 0 15px 40px rgba(212, 175, 55, 0.1);
}

.card-icon-profit {
    font-size: 2.5rem;
    color: var(--gold-bright);
    margin-bottom: 1.5rem;
    filter: drop-shadow(0 0 10px rgba(212,175,55,0.5));
}

.math-equation {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: rgba(0, 0, 0, 0.4);
    padding: 1.5rem;
    border-radius: 12px;
    margin: 2rem 0;
    border: 1px solid rgba(255, 255, 255, 0.05);
}

.math-step {
    display: flex;
    flex-direction: column;
    text-align: center;
}

.math-step span {
    font-size: 0.9rem;
    color: #A0AEC0;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 5px;
}

.math-step strong {
    font-size: 1.8rem;
    color: #FFFFFF;
    font-family: var(--font-title);
}

.arrow-gold {
    font-size: 1.5rem;
    color: var(--gold);
}

.highlight-step strong {
    color: var(--gold-bright);
    text-shadow: 0 0 15px rgba(212, 175, 55, 0.4);
}

.profit-conclusion {
    color: #FFFFFF !important;
    font-size: 1.2rem !important;
    text-align: center;
}

.payback-tag {
    background: rgba(212, 175, 55, 0.1);
    color: var(--gold-bright);
    padding: 12px 20px;
    border-radius: 8px;
    text-align: center;
    font-weight: 600;
    margin-top: 1.5rem;
    border: 1px dashed rgba(212, 175, 55, 0.3);
}

/* --- Banner de Garantia --- */
.guarantee-banner {
    display: flex;
    align-items: center;
    gap: 40px;
    background: linear-gradient(90deg, #0A1226 0%, #1A1405 100%);
    border: 1px solid var(--gold);
    border-radius: 20px;
    padding: 3rem 4rem;
    box-shadow: 0 20px 50px rgba(0,0,0,0.5), inset 0 0 30px rgba(212,175,55,0.05);
}

.guarantee-icon-wrapper {
    flex-shrink: 0;
    width: 100px;
    height: 100px;
    background: linear-gradient(135deg, var(--gold-bright) 0%, #A67C00 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 0 30px rgba(212, 175, 55, 0.4);
}

.guarantee-icon-wrapper i {
    font-size: 3rem;
    color: #000;
}

.guarantee-text h3 {
    font-family: var(--font-title);
    font-size: 2rem;
    color: var(--gold-bright);
    margin-bottom: 1rem;
}

.guarantee-text p {
    font-size: 1.15rem;
    color: #E2E8F0;
    line-height: 1.7;
    margin: 0;
}

.guarantee-text p strong {
    color: #FFFFFF;
}

/* --- Responsividade Mobile --- */
@media (max-width: 992px) {
    .roi-grid { grid-template-columns: 1fr; }
    
    .guarantee-banner {
        flex-direction: column;
        text-align: center;
        padding: 3rem 2rem;
        gap: 25px;
    }

    .math-equation {
        flex-direction: column;
        gap: 15px;
    }

    .arrow-gold { transform: rotate(90deg); }
}

/* ================== SECTION: DIFERENCIAIS (BARRAS DE LUXO) ================== */
.differentials-section {
    position: relative;
    padding: 120px 0;
    background-color: #050A15 !important;
    overflow: hidden;
    z-index: 20;
}

.diff-glow-bg {
    position: absolute;
    top: 50%;
    left: -10%;
    transform: translateY(-50%);
    width: 800px;
    height: 800px;
    background: radial-gradient(circle, rgba(212, 175, 55, 0.05) 0%, transparent 60%);
    pointer-events: none;
    z-index: 1;
}

.diff-container {
    position: relative;
    z-index: 10;
    max-width: 900px; /* Mais estreito para leitura elegante */
    margin: 0 auto;
    padding: 0 2rem;
}

.diff-header {
    text-align: center;
    margin-bottom: 4rem;
}

.diff-list-wrapper {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

/* A Barra Horizontal */
.diff-bar {
    display: flex;
    align-items: center;
    gap: 30px;
    padding: 2rem 2.5rem;
    background: rgba(255, 255, 255, 0.02);
    border: 1px solid rgba(255, 255, 255, 0.05);
    border-radius: 16px;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    overflow: hidden;
    cursor: default;
}

/* Efeito Hover Premium (Varredura de Luz) */
.diff-bar:hover {
    background: linear-gradient(90deg, rgba(212, 175, 55, 0.1) 0%, rgba(10, 22, 51, 0.4) 100%);
    border-color: rgba(212, 175, 55, 0.3);
    transform: translateX(10px); /* Dá um leve passo à frente */
    box-shadow: -10px 15px 30px rgba(0,0,0,0.4);
}

/* Borda lateral dourada que acende no hover */
.diff-bar::before {
    content: '';
    position: absolute;
    top: 0; left: 0;
    width: 4px;
    height: 100%;
    background: var(--gold-bright);
    opacity: 0;
    transition: 0.4s;
}

.diff-bar:hover::before {
    opacity: 1;
}

/* Caixa do Ícone */
.diff-icon-box {
    flex-shrink: 0;
    width: 60px;
    height: 60px;
    background: rgba(0, 0, 0, 0.4);
    border: 1px solid rgba(212, 175, 55, 0.2);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.8rem;
    color: var(--gold);
    transition: 0.4s;
}

.diff-bar:hover .diff-icon-box {
    background: var(--gold);
    color: #000;
    box-shadow: 0 0 20px rgba(212, 175, 55, 0.4);
}

/* Textos */
.diff-text-content {
    flex-grow: 1;
}

.diff-text-content h4 {
    font-family: var(--font-title);
    font-size: 1.4rem;
    color: #FFFFFF;
    margin-bottom: 0.5rem;
    transition: 0.4s;
}

.diff-bar:hover .diff-text-content h4 {
    color: var(--gold-bright);
}

.diff-text-content p {
    font-size: 1.1rem;
    color: #A0AEC0;
    line-height: 1.6;
    margin: 0;
}

.diff-text-content p strong {
    color: #E2E8F0;
}

/* Seta na Direita */
.diff-arrow {
    font-size: 1.5rem;
    color: rgba(255, 255, 255, 0.1);
    transition: 0.4s;
}

.diff-bar:hover .diff-arrow {
    color: var(--gold);
    transform: translateX(5px);
}

/* --- Responsividade Mobile --- */
@media (max-width: 768px) {
    .diff-bar {
        flex-direction: column;
        text-align: center;
        padding: 2.5rem 1.5rem;
        gap: 20px;
    }
    
    .diff-arrow {
        display: none; /* Esconde a seta no celular para ficar mais limpo */
    }

    .diff-bar:hover {
        transform: translateY(-5px); /* No mobile, o movimento é para cima, não para o lado */
    }
}

/* ================== SECTION: PROCESSO DE APLICAÇÃO (TIMELINE) ================== */
.application-process-section {
    position: relative;
    padding: 120px 0;
    background-color: #03060D !important; /* Azul quase preto, dando profundidade */
    overflow: hidden;
    z-index: 20;
}

.process-glow-bg {
    position: absolute;
    bottom: -10%;
    left: 50%;
    transform: translateX(-50%);
    width: 600px;
    height: 400px;
    background: radial-gradient(ellipse, rgba(212, 175, 55, 0.08) 0%, transparent 70%);
    pointer-events: none;
    z-index: 1;
}

.process-container {
    position: relative;
    z-index: 10;
    max-width: 800px; /* Bem estreito para forçar a leitura focada */
    margin: 0 auto;
    padding: 0 2rem;
}

.process-header {
    text-align: center;
    margin-bottom: 5rem;
}

/* --- A Linha do Tempo --- */
.timeline-wrapper {
    position: relative;
    padding-left: 50px; /* Espaço para a linha e os números à esquerda */
    margin-bottom: 4rem;
}

.timeline-line {
    position: absolute;
    top: 0;
    left: 19px; /* Centraliza exatamente com as bolinhas dos números */
    width: 2px;
    height: 100%;
    background: rgba(255, 255, 255, 0.05);
}

.timeline-progress {
    position: absolute;
    top: 0; left: 0;
    width: 100%;
    height: 50%; /* Altura ilustrativa, pode ser animada via JS se desejar */
    background: linear-gradient(180deg, transparent, var(--gold-bright), transparent);
    animation: flow-down 4s infinite linear;
}

@keyframes flow-down {
    0% { top: -50%; opacity: 0; }
    50% { opacity: 1; }
    100% { top: 100%; opacity: 0; }
}

/* --- Os Passos --- */
.timeline-step {
    position: relative;
    margin-bottom: 4rem;
}

.timeline-step:last-child {
    margin-bottom: 0;
}

/* O Número do Passo (Bolinha Dourada) */
.step-marker {
    position: absolute;
    left: -50px;
    top: 0;
    width: 40px;
    height: 40px;
    background: #050A15;
    border: 2px solid var(--gold);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--font-title);
    font-size: 1.2rem;
    color: var(--gold-bright);
    font-weight: 700;
    box-shadow: 0 0 15px rgba(212, 175, 55, 0.2);
    z-index: 2;
}

/* Conteúdo da Caixa */
.step-content {
    background: rgba(10, 18, 38, 0.6);
    border: 1px solid rgba(255, 255, 255, 0.05);
    border-radius: 16px;
    padding: 2.5rem;
    transition: all 0.4s ease;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

.step-content:hover {
    border-color: rgba(212, 175, 55, 0.3);
    transform: translateY(-5px);
    box-shadow: 0 15px 30px rgba(0,0,0,0.4);
}

.step-icon {
    font-size: 2rem;
    color: var(--gold);
    margin-bottom: 1rem;
}

.step-content h4 {
    font-family: var(--font-title);
    font-size: 1.5rem;
    color: #FFFFFF;
    margin-bottom: 1rem;
}

.step-content p {
    font-size: 1.15rem;
    color: #A0AEC0;
    line-height: 1.7;
    margin: 0;
}

.step-content p strong {
    color: #FFFFFF;
}

/* --- Botão de Ação --- */
.process-cta {
    text-align: center;
    margin-top: 5rem;
}

.btn-gold-pulse {
    display: inline-flex;
    align-items: center;
    gap: 15px;
    background: linear-gradient(90deg, #D4AF37 0%, #FDE08B 50%, #D4AF37 100%);
    background-size: 200% auto;
    color: #000000;
    font-family: var(--font-text);
    font-size: 1.2rem;
    font-weight: 700;
    padding: 20px 50px;
    border-radius: 50px;
    text-transform: uppercase;
    letter-spacing: 1px;
    text-decoration: none;
    transition: 0.5s;
    box-shadow: 0 0 20px rgba(212, 175, 55, 0.4);
    animation: gradient-shift 3s infinite linear;
}

.btn-gold-pulse:hover {
    transform: scale(1.05);
    box-shadow: 0 0 40px rgba(212, 175, 55, 0.6);
}

@keyframes gradient-shift {
    0% { background-position: 0% center; }
    100% { background-position: 200% center; }
}

.security-note {
    font-size: 0.95rem;
    color: #64748B;
    margin-top: 1.5rem;
}

.security-note i {
    color: var(--gold);
}

/* --- Responsividade Mobile --- */
@media (max-width: 768px) {
    .timeline-wrapper {
        padding-left: 30px;
    }
    
    .step-marker {
        left: -30px;
        width: 30px;
        height: 30px;
        font-size: 1rem;
    }
    
    .timeline-line {
        left: -16px;
    }
    
    .step-content {
        padding: 1.8rem 1.5rem;
    }
    
    .btn-gold-pulse {
        width: 100%;
        justify-content: center;
        padding: 18px 20px;
        font-size: 1.1rem;
    }
}

/* ================== FOOTER (RODAPÉ PREMIUM) ================== */
.luxury-footer {
    position: relative;
    background-color: #02040A; /* O tom mais escuro da página para ancorar o design */
    color: #A0AEC0;
    padding-top: 80px;
    z-index: 10;
}

.footer-top-line {
    position: absolute;
    top: 0; left: 0;
    width: 100%;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(212, 175, 55, 0.3), transparent);
}

.footer-container {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 2rem;
}

.footer-grid {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr;
    gap: 60px;
    padding-bottom: 60px;
}

/* --- Coluna 1: Marca --- */
.footer-logo {
    font-family: var(--font-title);
    font-size: 2rem;
    color: var(--gold-bright);
    margin: 0 0 5px 0;
    letter-spacing: 2px;
}

.footer-tagline {
    font-size: 1rem;
    color: #FFFFFF;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin: 0 0 15px 0;
}

.footer-desc {
    font-size: 0.95rem;
    line-height: 1.6;
    color: #64748B;
    max-width: 350px;
}

/* --- Colunas 2 e 3: Títulos --- */
.footer-links h4,
.footer-contact h4 {
    font-family: var(--font-title);
    color: #FFFFFF;
    font-size: 1.2rem;
    margin-bottom: 1.5rem;
    position: relative;
    padding-bottom: 10px;
}

.footer-links h4::after,
.footer-contact h4::after {
    content: '';
    position: absolute;
    bottom: 0; left: 0;
    width: 30px;
    height: 2px;
    background: var(--gold);
}

/* --- Links Institucionais --- */
.footer-links ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer-links li {
    margin-bottom: 12px;
}

.footer-links a {
    color: #A0AEC0;
    text-decoration: none;
    font-size: 0.95rem;
    transition: 0.3s ease;
    display: flex;
    align-items: center;
    gap: 8px;
}

.footer-links a i {
    font-size: 0.7rem;
    color: var(--gold);
    opacity: 0;
    transform: translateX(-10px);
    transition: 0.3s ease;
}

.footer-links a:hover {
    color: var(--gold-bright);
    transform: translateX(5px);
}

.footer-links a:hover i {
    opacity: 1;
    transform: translateX(0);
}

/* --- Contato e Sociais --- */
.contact-info p {
    font-size: 0.95rem;
    margin-bottom: 10px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.contact-info i {
    color: var(--gold);
    font-size: 1.1rem;
}

.social-icons {
    display: flex;
    gap: 15px;
    margin-top: 20px;
}

.social-icons a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 50%;
    color: #FFFFFF;
    font-size: 1.2rem;
    transition: all 0.3s ease;
    text-decoration: none;
}

.social-icons a:hover {
    background: var(--gold);
    border-color: var(--gold-bright);
    color: #000000;
    transform: translateY(-3px);
    box-shadow: 0 5px 15px rgba(212, 175, 55, 0.3);
}

/* --- Barra Inferior --- */
.footer-bottom {
    border-top: 1px solid rgba(255, 255, 255, 0.05);
    padding: 25px 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 0.85rem;
    color: #64748B;
}

/* --- Responsividade Mobile --- */
@media (max-width: 992px) {
    .footer-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }
    
    .footer-brand {
        text-align: center;
    }
    
    .footer-desc {
        margin: 0 auto;
    }

    .footer-links h4::after,
    .footer-contact h4::after {
        left: 50%;
        transform: translateX(-50%);
    }

    .footer-links, .footer-contact {
        text-align: center;
    }

    .footer-links a {
        justify-content: center;
    }

    .contact-info p {
        justify-content: center;
    }

    .social-icons {
        justify-content: center;
    }

    .footer-bottom {
        flex-direction: column;
        gap: 10px;
        text-align: center;
    }
}

/* ================== ELEMENTOS FLUTUANTES E CURSOR ================== */

/* --- Botão Flutuante (Voltar ao Topo) --- */
.back-to-top {
    position: fixed;
    bottom: 40px;
    right: 40px;
    width: 60px;
    height: 60px;
    /* Fundo de vidro escuro com borda dourada */
    background: linear-gradient(135deg, rgba(10, 22, 51, 0.8) 0%, rgba(5, 10, 21, 0.9) 100%);
    border: 1px solid rgba(212, 175, 55, 0.4);
    color: var(--gold-bright);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    box-shadow: 0 10px 30px rgba(0,0,0,0.5);
    z-index: 9990;
    
    /* Oculto por padrão (só aparece quando rolar a tela) */
    opacity: 0;
    visibility: hidden;
    transform: translateY(20px);
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

/* Classe ativada pelo Javascript quando o usuário desce a página */
.back-to-top.show {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

/* Efeito Hover Dourado */
.back-to-top:hover {
    background: linear-gradient(135deg, var(--gold-bright) 0%, #A67C00 100%);
    color: #000000;
    box-shadow: 0 15px 40px rgba(212, 175, 55, 0.4);
    transform: translateY(-5px);
}

@media (max-width: 768px) {
    .back-to-top {
        bottom: 25px;
        right: 25px;
        width: 50px;
        height: 50px;
        font-size: 1.2rem;
    }
}

@media (max-width: 768px) {
    .history-section {
        padding: 80px 0; /* Espaçamento normal para celular */
    }

    .history-section .typing-text {
        font-size: clamp(1.2rem, 5vw, 1.5rem) !important;
        white-space: normal !important; 
        width: 100% !important; 
        border-right: none !important; 
        
        /* Troca a digitação por um surgimento suave */
        animation: none !important; 
        opacity: 0;
        animation: fade-up-mobile 1s forwards 0.5s !important; 
    }
}
/* Animação suave para substituir a digitação no mobile */
@keyframes fade-up-mobile {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* --- Efeito Mouse Dourado (Custom Cursor) --- */
/* Só aplica em computadores (esconde no celular porque lá usamos o dedo) */
@media (hover: hover) and (pointer: fine) {
    body, a, button {
        cursor: none !important; /* Esconde a setinha branca do Windows/Mac */
    }
    
    .cursor-dot {
        position: fixed;
        top: 0; left: 0;
        width: 8px; height: 8px;
        background-color: var(--gold-bright);
        border-radius: 50%;
        transform: translate(-50%, -50%);
        pointer-events: none; /* Para não atrapalhar o clique */
        z-index: 10000;
        transition: width 0.2s, height 0.2s, background-color 0.2s;
    }
    
    .cursor-glow {
        position: fixed;
        top: 0; left: 0;
        width: 40px; height: 40px;
        border: 1px solid rgba(212, 175, 55, 0.5);
        border-radius: 50%;
        transform: translate(-50%, -50%);
        pointer-events: none;
        z-index: 9999;
        transition: width 0.2s, height 0.2s, background-color 0.2s;
    }
    
    /* Quando passar o mouse em cima de um link ou botão, ele infla e muda de cor */
    body.hovering .cursor-dot {
        background-color: #FFFFFF;
        width: 12px; height: 12px;
    }
    
    body.hovering .cursor-glow {
        width: 60px; height: 60px;
        background: rgba(212, 175, 55, 0.1);
        border-color: transparent;
    }
}

/* Responsividade do Botão de WhatsApp */
@media (max-width: 768px) {
    .floating-whatsapp {
        bottom: 25px;
        right: 25px;
        width: 55px;
        height: 55px;
        font-size: 1.8rem;
    }
}



