/* 
 * Smart Fallback CSS para Font Awesome
 * PRESERVA ícones originais quando Font Awesome carrega
 * USA fallback apenas quando necessário
 */

/* Preservar Font Awesome quando disponível */
.fas, .fa, .far, .fab, .fal, .fad {
    font-family: "Font Awesome 6 Free", "Font Awesome 6 Pro", "FontAwesome", inherit;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
    display: inline-block;
    font-weight: 900;
}

/* Fallback APENAS quando Font Awesome falha completamente */
body.vt-no-fontawesome .fas, 
body.vt-no-fontawesome .fa, 
body.vt-no-fontawesome .far, 
body.vt-no-fontawesome .fab {
    font-family: inherit !important;
    font-style: normal !important;
    font-variant: normal !important;
    text-rendering: auto !important;
    line-height: 1 !important;
    display: inline-block !important;
    font-weight: 900 !important;
}

/* Ícones essenciais - FALLBACK apenas quando necessário */
body.vt-no-fontawesome .fa-search::before, 
body.vt-no-fontawesome .fas.fa-search::before { content: '🔍' !important; }

body.vt-no-fontawesome .fa-bars::before, 
body.vt-no-fontawesome .fas.fa-bars::before { content: '☰' !important; }

body.vt-no-fontawesome .fa-times::before, 
body.vt-no-fontawesome .fas.fa-times::before { content: '✕' !important; }

body.vt-no-fontawesome .fa-chevron-left::before, 
body.vt-no-fontawesome .fas.fa-chevron-left::before { content: '‹' !important; }

body.vt-no-fontawesome .fa-chevron-right::before, 
body.vt-no-fontawesome .fas.fa-chevron-right::before { content: '›' !important; }

body.vt-no-fontawesome .fa-chevron-down::before, 
body.vt-no-fontawesome .fas.fa-chevron-down::before { content: '⌄' !important; }

body.vt-no-fontawesome .fa-chevron-up::before, 
body.vt-no-fontawesome .fas.fa-chevron-up::before { content: '⌃' !important; }

/* Ícones de contacto - FALLBACK apenas quando necessário */
body.vt-no-fontawesome .fa-envelope::before, 
body.vt-no-fontawesome .fas.fa-envelope::before { content: '✉' !important; }

body.vt-no-fontawesome .fa-phone::before, 
body.vt-no-fontawesome .fas.fa-phone::before { content: '☎' !important; }

body.vt-no-fontawesome .fa-map-marker-alt::before, 
body.vt-no-fontawesome .fas.fa-map-marker-alt::before { content: '📍' !important; }

/* Ícones de conteúdo - FALLBACK apenas quando necessário */
body.vt-no-fontawesome .fa-calendar::before, 
body.vt-no-fontawesome .fas.fa-calendar::before { content: '📅' !important; }

body.vt-no-fontawesome .fa-folder::before, 
body.vt-no-fontawesome .fas.fa-folder::before { content: '📁' !important; }

body.vt-no-fontawesome .fa-tags::before, 
body.vt-no-fontawesome .fas.fa-tags::before { content: '🏷' !important; }

body.vt-no-fontawesome .fa-share-alt::before, 
body.vt-no-fontawesome .fas.fa-share-alt::before { content: '📤' !important; }

body.vt-no-fontawesome .fa-arrow-right::before, 
body.vt-no-fontawesome .fas.fa-arrow-right::before { content: '→' !important; }

body.vt-no-fontawesome .fa-check::before, 
body.vt-no-fontawesome .fas.fa-check::before { content: '✓' !important; }

/* Ícones de serviços - FALLBACK apenas quando necessário */
body.vt-no-fontawesome .fa-building::before, 
body.vt-no-fontawesome .fas.fa-building::before { content: '🏢' !important; }

body.vt-no-fontawesome .fa-users::before, 
body.vt-no-fontawesome .fas.fa-users::before { content: '👥' !important; }

body.vt-no-fontawesome .fa-map::before, 
body.vt-no-fontawesome .fas.fa-map::before { content: '🗺' !important; }

body.vt-no-fontawesome .fa-home::before, 
body.vt-no-fontawesome .fas.fa-home::before { content: '🏠' !important; }

/* Ícones da empresa (VALORES) - PRESERVA originais bonitos */
/* Apenas fallback quando Font Awesome falha */
body.vt-no-fontawesome .fa-heart::before, 
body.vt-no-fontawesome .fas.fa-heart::before { content: '♥' !important; }

body.vt-no-fontawesome .fa-bullseye::before, 
body.vt-no-fontawesome .fas.fa-bullseye::before { content: '🎯' !important; }

body.vt-no-fontawesome .fa-handshake::before, 
body.vt-no-fontawesome .fas.fa-handshake::before { content: '🤝' !important; }

body.vt-no-fontawesome .fa-user-tie::before, 
body.vt-no-fontawesome .fas.fa-user-tie::before { content: '👤' !important; }

body.vt-no-fontawesome .fa-university::before, 
body.vt-no-fontawesome .fas.fa-university::before { content: '🏛' !important; }

body.vt-no-fontawesome .fa-star::before, 
body.vt-no-fontawesome .fas.fa-star::before { content: '⭐' !important; }

body.vt-no-fontawesome .fa-eye::before, 
body.vt-no-fontawesome .fas.fa-eye::before { content: '👁' !important; }

body.vt-no-fontawesome .fa-leaf::before, 
body.vt-no-fontawesome .fas.fa-leaf::before { content: '🌿' !important; }

/* Outros ícones essenciais - FALLBACK apenas quando necessário */
body.vt-no-fontawesome .fa-image::before, 
body.vt-no-fontawesome .fas.fa-image::before { content: '🖼' !important; }

body.vt-no-fontawesome .fa-plus::before, 
body.vt-no-fontawesome .fas.fa-plus::before { content: '+' !important; }

body.vt-no-fontawesome .fa-award::before, 
body.vt-no-fontawesome .fas.fa-award::before { content: '🏆' !important; }

body.vt-no-fontawesome .fa-book::before, 
body.vt-no-fontawesome .fas.fa-book::before { content: '📚' !important; }

body.vt-no-fontawesome .fa-file-alt::before, 
body.vt-no-fontawesome .fas.fa-file-alt::before { content: '📄' !important; }

body.vt-no-fontawesome .fa-newspaper::before, 
body.vt-no-fontawesome .fas.fa-newspaper::before { content: '📰' !important; }

body.vt-no-fontawesome .fa-map-marked-alt::before, 
body.vt-no-fontawesome .fas.fa-map-marked-alt::before { content: '📍' !important; }

/* Redes sociais fallback */
body.vt-no-fontawesome .fab.fa-facebook::before { content: 'f' !important; }
body.vt-no-fontawesome .fab.fa-instagram::before { content: 'ig' !important; }
body.vt-no-fontawesome .fab.fa-linkedin::before { content: 'in' !important; }

/* Melhorias visuais APENAS para fallbacks */
body.vt-no-fontawesome .fas::before, 
body.vt-no-fontawesome .fa::before, 
body.vt-no-fontawesome .far::before, 
body.vt-no-fontawesome .fab::before {
    margin-right: 0.25em;
    font-size: 0.9em;
    vertical-align: middle;
}

/* Ajustes específicos para fallbacks apenas */
body.vt-no-fontawesome .fa-bars::before { 
    font-size: 1.2em !important; 
    vertical-align: text-top;
}

body.vt-no-fontawesome .fa-times::before { 
    font-size: 1.1em !important; 
    font-weight: bold !important;
}

body.vt-no-fontawesome .fa-search::before { 
    font-size: 1.1em !important; 
}

/* Estados hover para fallbacks apenas */
body.vt-no-fontawesome button:hover .fas::before,
body.vt-no-fontawesome a:hover .fas::before {
    opacity: 0.8;
    transform: scale(1.1);
    transition: all 0.2s ease;
}

/* Compatibilidade com modo escuro - APENAS fallbacks */
@media (prefers-color-scheme: dark) {
    body.vt-no-fontawesome .fas::before, 
    body.vt-no-fontawesome .fa::before {
        filter: brightness(1.2);
    }
}

/* Responsividade - APENAS fallbacks */
@media (max-width: 768px) {
    body.vt-no-fontawesome .fas::before, 
    body.vt-no-fontawesome .fa::before {
        font-size: 0.8em;
    }
}

@media (max-width: 480px) {
    body.vt-no-fontawesome .fas::before, 
    body.vt-no-fontawesome .fa::before {
        font-size: 0.75em;
    }
} 