/* FINDINMOZ AJAX / LISTAGENS — complemento seguro */
.fim-ajax-results.is-loading{
    position: relative;
    min-height: 160px
}

.fim-results-toolbar{
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    margin-bottom: 18px
}

.fim-results-toolbar strong{
    display: block;
    font-size: 18px;
    color: #0f2135
}

.fim-results-toolbar span{
    font-size: 13px;
    color: #64748b
}

.fim-view-switch{
    display: flex;
    gap: 8px;
    flex-wrap: wrap
}

.fim-view-switch a{
    height: 38px;
    padding: 0 12px;
    border: 1px solid var(--fim-border, #e5edf3);
    border-radius: 12px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    text-decoration: none;
    color: #102033;
    font-weight: 800;
    background: #fff
}

.fim-view-switch a.is-active{
    background: linear-gradient(135deg, var(--fim-brand, #20C4A8), var(--fim-brand-2, #17a890));
    color: #fff;
    border-color: transparent
}

.fim-results-list.fim-view-grelha,
.fim-prof-grid.fim-view-grelha{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px
}

.fim-results-list.fim-view-lista,
.fim-prof-grid.fim-view-lista{
    display: grid;
    grid-template-columns: 1fr;
    gap: 14px
}

.fim-results-list.fim-view-compacto,
.fim-prof-grid.fim-view-compacto{
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px
}

.fim-result-card,
.fim-prof-card{
    background: #fff;
    border: 1px solid var(--fim-border, #e5edf3);
    border-radius: 18px;
    box-shadow: 0 12px 34px rgba(15, 23, 42, .06);
    padding: 16px
}

.fim-result-card{
    display: flex;
    gap: 14px
}

.fim-result-logo{
    width: 72px;
    height: 72px;
    border-radius: 16px;
    border: 1px solid var(--fim-border, #e5edf3);
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    background: #fff;
    overflow: hidden
}

.fim-result-logo img{
    width: 100%;
    height: 100%;
    object-fit: contain;
    padding: 7px
}

.fim-view-compacto .fim-result-card,
.fim-view-compacto .fim-prof-card{
    padding: 13px
}

.fim-view-compacto .fim-result-card{
    display: block
}

.fim-view-compacto .fim-result-logo{
    width: 58px;
    height: 58px;
    margin-bottom: 10px
}

.fim-result-content h2,
.fim-prof-card h3{
    font-size: 17px;
    margin: 7px 0
}

.fim-result-content h2 a,
.fim-prof-card h3 a{
    text-decoration: none;
    color: #0f2135
}

.fim-result-content p,
.fim-prof-desc{
    font-size: 13px;
    line-height: 1.5;
    color: #64748b
}

.fim-result-line,
.fim-result-meta,
.fim-result-actions,
.fim-prof-meta,
.fim-prof-actions{
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    align-items: center
}

.fim-result-actions,
.fim-prof-actions{
    justify-content:flex-end;
}

.fim-result-line{
    justify-content: space-between;
    font-size: 12px;
    color: #64748b
}

.fim-result-actions a,
.fim-prof-actions a{
    height: 34px;
    padding: 0 11px;
    border-radius: 10px;
    border: 1px solid var(--fim-border, #e5edf3);
    display: inline-flex;
    align-items: center;
    gap: 6px;
    text-decoration: none;
    color: #102033;
    font-weight: 800;
    font-size: 12px;
    background: #fff
}

.fim-result-actions .is-primary,
.fim-prof-actions .is-primary,
.fim-page-btn.is-primary{
    background: linear-gradient(135deg, var(--fim-brand, #20C4A8), var(--fim-brand-2, #17a890));
    color: #fff;
    border-color: transparent
}

.fim-pagination{
    margin-top: 22px;
    display: flex;
    justify-content: space-between;
    gap: 14px;
    align-items: center;
    flex-wrap: wrap
}

.fim-pagination-actions{
    display: flex;
    gap: 8px;
    flex-wrap: wrap
}

.fim-page-btn,
.fim-page-number{
    min-width: 38px;
    height: 38px;
    padding: 0 12px;
    border-radius: 12px;
    border: 1px solid var(--fim-border, #e5edf3);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    color: #102033;
    font-weight: 900;
    background: #fff
}

.fim-page-number.is-active{
    background: #e8fbf7;
    color: var(--fim-brand-2, #17a890);
    border-color: #b9f2e9
}

.fim-prof-card-top{
    display: flex;
    gap: 12px;
    align-items: center
}

.fim-prof-card-top img{
    width: 68px;
    height: 68px;
    border-radius: 16px;
    object-fit: cover;
    border: 1px solid var(--fim-border, #e5edf3)
}

.fim-prof-category{
    font-size: 12px;
    color: var(--fim-brand-2, #17a890);
    font-weight: 900
}

.fim-prof-rating{
    display: flex;
    gap: 8px;
    align-items: center;
    margin: 10px 0;
    color: #f59e0b
}

.fim-prof-rating small{
    color: #64748b
}

.fim-empty-state{
    background: #fff;
    border: 1px solid var(--fim-border, #e5edf3);
    border-radius: 18px;
    padding: 34px;
    text-align: center;
    color: #64748b
}

@media (max-width:900px){

    .fim-results-list.fim-view-grelha,
.fim-prof-grid.fim-view-grelha,
.fim-results-list.fim-view-compacto,
.fim-prof-grid.fim-view-compacto{
        grid-template-columns: 1fr
    }

    .fim-results-toolbar{
        align-items: flex-start;
        flex-direction: column
    }

    .fim-result-card{
        display: block
    }

    .fim-result-logo{
        margin-bottom: 10px
    }
}


/* FindInMoz — Ranking, status, views e selos */
.fim-rank-mini{
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 9px;
}

.fim-rank-badge{
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 28px;
    padding: 0 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 850;
    background: #f8fafc;
    color: #64748b;
    border: 1px solid #e2e8f0;
}

.fim-rank-badge small{
    opacity: .75;
    font-size: 10px;
}

.fim-rank-badge.gold{
    background: linear-gradient(135deg, #fff7cc, #f5c542);
    color: #5f4300;
}

.fim-rank-badge.warning{
    background: #fffbeb;
    color: #b45309;
}

.fim-rank-badge.success{
    background: #ecfdf5;
    color: #047857;
}

.fim-rank-badge.primary{
    background: #eef2ff;
    color: #3730a3;
}

.fim-rank-badge.info{
    background: #e0f2fe;
    color: #0369a1;
}

.fim-rank-line{
    display: grid;
    gap: 5px;
    min-width: 130px;
}

.fim-rank-line span{
    font-size: 11px;
    font-weight: 850;
    color: #0f766e;
}

.fim-rank-line>div{
    height: 7px;
    border-radius: 999px;
    background: #e2e8f0;
    overflow: hidden;
}

.fim-rank-line>div i{
    display: block;
    height: 100%;
    border-radius: 999px;
    background: linear-gradient(135deg, #20C4A8, #17a890);
}

.fim-status-chip,
.fim-views-chip{
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 27px;
    padding: 0 9px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 800;
    background: #f8fafc;
    color: #64748b;
    border: 1px solid #e2e8f0;
}

.fim-status-chip.ok{
    background: #ecfdf5;
    color: #047857;
    border-color: #bbf7d0;
}

.fim-status-chip i{
    font-size: 7px;
}

.fim-views-chip{
    background: rgba(32, 196, 168, .10);
    color: #0f766e;
    border-color: rgba(32, 196, 168, .18);
}



.fim-advanced-badges{
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
}

.fim-advanced-badge{
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 28px;
    padding: 0 10px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 850;
    background: #f8fafc;
    color: #475569;
    border: 1px solid #e2e8f0;
}

.fim-advanced-badge.gold{
    background: linear-gradient(135deg, #fff7cc, #f5c542);
    color: #5f4300;
}

.fim-advanced-badge.blue{
    background: #eff6ff;
    color: #1d4ed8;
}

.fim-advanced-badge.green{
    background: #ecfdf5;
    color: #047857;
}

.fim-advanced-badge.purple{
    background: #f5f3ff;
    color: #6d28d9;
}

.fim-advanced-badge.orange{
    background: #fff7ed;
    color: #c2410c;
}


/* Ajustes solicitados — compacto 3 colunas, selos entidades e badge profissional na home */
.fim-view-compacto{
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 14px !important;
}

.fim-view-compacto .fim-prof-card{
    min-width: 0 !important;
}

.fim-view-compacto .fim-prof-card-top{
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
}

.fim-view-compacto .fim-prof-card-top img{
    width: 54px !important;
    height: 54px !important;
    border-radius: 18px !important;
}

.fim-view-compacto .fim-prof-desc{
    display: none !important;
}

.fim-view-compacto .fim-prof-actions{
    margin-top: 10px !important;
}









.fim-card-v21.prof .fim-rank-mini{
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 7px !important;
    margin: 10px 0 0 !important;
}

.fim-card-v21.prof .fim-rank-badge{
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
}

@media (max-width:980px){
    .fim-view-compacto{
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width:620px){
    .fim-view-compacto{
        grid-template-columns: 1fr !important;
    }
}


/* Correção visual refinada — homepage profissionais e selos no perfil */
.fim-card-grid-v21.pros{
    align-items: stretch !important;
}

.fim-home-pro-card-v18{
    min-width: 0 !important;
    overflow: hidden !important;
}

.fim-home-pro-card-v18 .photo{
    width: 66px !important;
    height: 66px !important;
    border-radius: 19px !important;
    margin-bottom: 12px !important;
    background: #f1f5f9 !important;
    overflow: hidden !important;
}

.fim-home-pro-card-v18 .photo img{
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    border-radius: 15px !important;
}

.fim-home-pro-card-v18 .fim-rank-mini.compact{
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 6px !important;
    margin: 8px 0 10px !important;
}

.fim-home-pro-card-v18 .fim-rank-badge,
.fim-home-pro-card-v18 .fim-status-chip,
.fim-home-pro-card-v18 .fim-views-chip{
    min-height: 23px !important;
    height: 23px !important;
    padding: 0 8px !important;
    font-size: 10px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
}

.fim-home-pro-card-v18 .fim-rank-badge small{
    font-size: 9px !important;
}

.fim-home-pro-card-v18 .fim-rank-badge i,
.fim-home-pro-card-v18 .fim-status-chip i,
.fim-home-pro-card-v18 .fim-views-chip i{
    font-size: 10px !important;
}









/* Neutraliza classe errada anterior caso exista em cache */
.fim-card-v21.prof .fim-card-logo,
.fim-card-v21.prof .fim-card-logo img{
    width: 66px !important;
    height: 66px !important;
    max-width: 66px !important;
    max-height: 66px !important;
    object-fit: cover !important;
    border-radius: 19px !important;
}


/* Homepage profissionais — ranking premium alinhado */
.fim-home-pro-card-v18 .fim-home-pro-rank-row{
    display: grid !important;
    grid-template-columns: auto minmax(92px, 1fr) !important;
    align-items: center !important;
    gap: 9px !important;
    margin: 10px 0 4px !important;
}

.fim-home-pro-card-v18 .fim-home-pro-rank-row .fim-rank-badge{
    min-height: 26px !important;
    height: 26px !important;
    padding: 0 9px !important;
    border-radius: 999px !important;
    font-size: 11px !important;
    white-space: nowrap !important;
    box-shadow: none !important;
}

.fim-home-pro-card-v18 .fim-home-pro-rank-row .fim-rank-badge small{
    font-size: 9px !important;
}

.fim-home-pro-card-v18 .fim-home-pro-rank-progress{
    height: 8px !important;
    border-radius: 999px !important;
    overflow: hidden !important;
    background: #e5edf3 !important;
}

.fim-home-pro-card-v18 .fim-home-pro-rank-progress span{
    display: block !important;
    height: 100% !important;
    border-radius: 999px !important;
    background: linear-gradient(135deg, #20C4A8, #17a890) !important;
}

.fim-home-pro-card-v18 .fim-home-pro-rank-caption{
    display: block !important;
    margin: 0 0 10px !important;
    color: #64748b !important;
    font-size: 11px !important;
    font-weight: 800 !important;
}

.fim-home-pro-card-v18 .fim-rank-mini,
.fim-home-pro-card-v18 .fim-status-chip,
.fim-home-pro-card-v18 .fim-views-chip{
    display: none !important;
}

.fim-home-pro-card-v18 .photo{
    width: 66px !important;
    height: 66px !important;
    border-radius: 19px !important;
    margin-bottom: 12px !important;
}

.fim-home-pro-card-v18 .photo img{
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}


/* Correção final — compacto 3 colunas e hero premium de entidades */
.fim-results-list.fim-view-compacto,
.fim-prof-grid.fim-view-compacto{
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 14px !important;
}

.fim-results-list.fim-view-compacto .fim-result-card{
    display: grid !important;
    grid-template-columns: 56px minmax(0, 1fr) !important;
    gap: 12px !important;
    align-items: center !important;
    padding: 13px !important;
    border-radius: 18px !important;
    min-width: 0 !important;
}

.fim-results-list.fim-view-compacto .fim-result-logo{
    width: 56px !important;
    height: 56px !important;
    border-radius: 16px !important;
}

.fim-results-list.fim-view-compacto .fim-result-content{
    min-width: 0 !important;
}

.fim-results-list.fim-view-compacto .fim-result-line{
    justify-content: flex-start !important;
    gap: 7px !important;
    margin: 0 0 3px !important;
}

.fim-results-list.fim-view-compacto .fim-result-line span{
    max-width: 100% !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

.fim-results-list.fim-view-compacto .fim-premium-badge,
.fim-results-list.fim-view-compacto .fim-standard-mini-badge,
.fim-results-list.fim-view-compacto .fim-rank-badge,
.fim-results-list.fim-view-compacto .fim-advanced-badge{
    min-height: 22px !important;
    height: 22px !important;
    padding: 0 7px !important;
    font-size: 10px !important;
    line-height: 1 !important;
}

.fim-results-list.fim-view-compacto .fim-result-card h2{
    font-size: 15px !important;
    line-height: 1.2 !important;
    margin: 4px 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

.fim-results-list.fim-view-compacto .fim-result-card p,
.fim-results-list.fim-view-compacto .fim-result-meta,
.fim-results-list.fim-view-compacto .fim-rank-line,
.fim-results-list.fim-view-compacto .rating,
.fim-results-list.fim-view-compacto .fim-card-views,
.fim-results-list.fim-view-compacto .fim-result-actions a:not(.is-primary){
    display: none !important;
}

.fim-results-list.fim-view-compacto .fim-rank-mini{
    margin: 5px 0 0 !important;
    gap: 5px !important;
}

.fim-results-list.fim-view-compacto .fim-result-actions{
    margin-top: 8px !important;
}

.fim-results-list.fim-view-compacto .fim-result-actions .is-primary,
.fim-results-list.fim-view-compacto .fim-card-link{
    min-height: 30px !important;
    height: 30px !important;
    padding: 0 10px !important;
    border-radius: 999px !important;
    font-size: 11px !important;
}

/* Profissionais compacto: sempre 3 colunas, com informação reduzida */
.fim-prof-grid.fim-view-compacto .fim-prof-card{
    display: block !important;
    padding: 14px !important;
    border-radius: 18px !important;
    min-width: 0 !important;
}

.fim-prof-grid.fim-view-compacto .fim-prof-card-top{
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
}

.fim-prof-grid.fim-view-compacto .fim-prof-card-top img{
    width: 54px !important;
    height: 54px !important;
    border-radius: 16px !important;
}

.fim-prof-grid.fim-view-compacto .fim-prof-category{
    max-width: 100% !important;
    min-height: 22px !important;
    padding: 0 8px !important;
    font-size: 10px !important;
}

.fim-prof-grid.fim-view-compacto .fim-prof-card h3{
    font-size: 15px !important;
    line-height: 1.2 !important;
    margin: 4px 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

.fim-prof-grid.fim-view-compacto .fim-prof-card-top p{
    font-size: 11px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

.fim-prof-grid.fim-view-compacto .fim-prof-desc,
.fim-prof-grid.fim-view-compacto .fim-prof-recommended,
.fim-prof-grid.fim-view-compacto .fim-prof-meta,
.fim-prof-grid.fim-view-compacto .fim-status-chip,
.fim-prof-grid.fim-view-compacto .fim-views-chip{
    display: none !important;
}

.fim-prof-grid.fim-view-compacto .fim-prof-rating{
    margin: 9px 0 6px !important;
    gap: 5px !important;
    font-size: 11px !important;
}

.fim-prof-grid.fim-view-compacto .fim-prof-rating small{
    display: none !important;
}

.fim-prof-grid.fim-view-compacto .fim-rank-mini{
    margin: 6px 0 9px !important;
}

.fim-prof-grid.fim-view-compacto .fim-rank-badge{
    min-height: 23px !important;
    height: 23px !important;
    padding: 0 8px !important;
    font-size: 10px !important;
}

.fim-prof-grid.fim-view-compacto .fim-rank-badge small{
    display: none !important;
}

.fim-prof-grid.fim-view-compacto .fim-prof-actions{
    margin-top: 8px !important;
}

.fim-prof-grid.fim-view-compacto .fim-prof-actions a:not(.is-primary){
    display: none !important;
}

.fim-prof-grid.fim-view-compacto .fim-prof-actions a{
    min-height: 30px !important;
    height: 30px !important;
    padding: 0 10px !important;
    border-radius: 999px !important;
    font-size: 11px !important;
}

@media (max-width:1080px){

    .fim-results-list.fim-view-compacto,
.fim-prof-grid.fim-view-compacto{
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width:680px){

    .fim-results-list.fim-view-compacto,
.fim-prof-grid.fim-view-compacto{
        grid-template-columns: 1fr !important;
    }
}

/* Hero entidade: card mais premium e score mais visível */





















/* =========================================================
   FindInMoz — Hero Entidade 2026 Premium Refinado
========================================================= */














































.fim-social-box{
    margin-top: 13px !important;
    padding-top: 0 !important;
    border-top: 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important
}

.fim-social-box>span,
.fim-social-box .fim-social-label{
    display: none !important
}

.fim-social-links,
.fim-social-box .fim-social-links{
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 8px !important
}

.fim-social-links a,
.fim-social-box a{
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    border-radius: 14px !important;
    background: rgba(255, 255, 255, .13) !important;
    border: 1px solid rgba(255, 255, 255, .18) !important;
    color: #f8fffe !important;
    box-shadow: 0 10px 22px rgba(0, 0, 0, .12) !important;
    transition: .22s ease !important
}

.fim-social-links a:hover,
.fim-social-box a:hover{
    transform: translateY(-2px) !important;
    background: rgba(255, 255, 255, .20) !important
}

/* Score card refinado */




































/* Standard distinto */










@media (max-width:760px){
    

    

    

    .fim-social-box,
.fim-social-links{
        justify-content: center !important
    }

    
}


/* Fase exacta — avaliação limpa no hero de entidade */


.fim-entity-rating-clean{
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 7px !important;
    margin: 2px 0 4px !important;
    line-height: 1 !important;
}



.fim-entity-rating-clean .fim-rating-divider{
    color: rgba(255, 255, 255, .5) !important;
    font-size: 12px !important;
    font-weight: 700 !important;
}

.fim-entity-rating-clean .fim-rating-reviews{
    color: #fff !important;
    opacity: .9 !important;
    font-size: 13px !important;
    font-weight: 700 !important;
}


/* Número da avaliação antes das estrelas */
.fim-entity-rating-clean .fim-rating-number{
    color: #fff !important;
    font-size: 12px !important;
    font-weight: 750 !important;
    line-height: 1 !important;
    letter-spacing: -.01em !important;
}


/* Ajustes finais solicitados */
.fim-entity-rating-clean .fim-rating-number{
    color: #ffffff !important;
    font-size: 11px !important;
    font-weight: 400 !important;
    opacity: .96 !important;
}






/* Score premium — pontuação branca, progress glass com shine e 3 zonas */














@keyframes fimScoreShine{

    0%,
45%{
        left: -45%;
        opacity: 0
    }

    55%{
        opacity: .95
    }

    100%{
        left: 115%;
        opacity: 0
    }
}


/* Ajustes finais standard/profile */


/* Card standard */
.fim-standard-locked-card{
    display: grid !important;
    align-content: center !important;
    justify-items: center !important;
    text-align: center !important;
    gap: 10px !important;
    min-height: 230px !important;
    padding: 26px !important;
    border-radius: 30px !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, .12), rgba(255, 255, 255, .06)) !important;
    border: 1px solid rgba(255, 255, 255, .14) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, .12),
        0 20px 50px rgba(0, 0, 0, .16) !important;
    backdrop-filter: blur(14px) !important;
}

.fim-standard-locked-icon{
    width: 58px !important;
    height: 58px !important;
    border-radius: 20px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: rgba(255, 255, 255, .08) !important;
    border: 1px solid rgba(255, 255, 255, .12) !important;
    color: #ffffff !important;
    font-size: 22px !important;
}

.fim-standard-locked-card strong{
    color: #ffffff !important;
    font-size: 26px !important;
    font-weight: 900 !important;
}

.fim-standard-locked-card span{
    max-width: 240px !important;
    color: rgba(255, 255, 255, .82) !important;
    font-size: 15px !important;
    line-height: 1.6 !important;
    font-weight: 600 !important;
}

/* esconder blocos */
.fim-info-social,
.fim-info-map{
    display: none !important;
}


/* Correção final standard hero e info card */


.fim-standard-score-main{
    display: grid !important;
    justify-items: center !important;
    text-align: center !important;
    gap: 8px !important;
    padding: 20px !important;
    border-radius: 24px !important;
    background: linear-gradient(180deg, rgba(255, 255, 255, .13), rgba(255, 255, 255, .07)) !important;
    border: 1px solid rgba(255, 255, 255, .14) !important;
}

.fim-standard-score-main strong{
    width: 52px !important;
    height: 52px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 18px !important;
    background: rgba(255, 255, 255, .10) !important;
    color: #ffffff !important;
    font-size: 21px !important;
}

.fim-standard-score-main span{
    color: #ffffff !important;
    font-size: 18px !important;
    font-weight: 900 !important;
}

.fim-standard-score-main small{
    color: rgba(255, 255, 255, .78) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
}

.fim-standard-premium-only{
    display: grid !important;
    justify-items: center !important;
    text-align: center !important;
    gap: 9px !important;
    padding: 20px !important;
    border-radius: 24px !important;
    background: linear-gradient(180deg, rgba(255, 255, 255, .12), rgba(255, 255, 255, .06)) !important;
    border: 1px solid rgba(255, 255, 255, .14) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .12) !important;
}

.fim-standard-premium-only .fim-standard-locked-icon{
    width: 50px !important;
    height: 50px !important;
    border-radius: 18px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: rgba(255, 255, 255, .10) !important;
    color: #ffffff !important;
    font-size: 20px !important;
}

.fim-standard-premium-only strong{
    color: #ffffff !important;
    font-size: 22px !important;
    font-weight: 900 !important;
}

.fim-standard-premium-only span{
    max-width: 230px !important;
    color: rgba(255, 255, 255, .82) !important;
    font-size: 14px !important;
    line-height: 1.55 !important;
    font-weight: 600 !important;
}


/* Standard hero: card lateral direito com apenas 2 blocos */













/* Ajuste isolado — card lateral Standard leve, sem contacto */





















/* Refinamento final — card Standard premium leve com divider */

























/* Pesquisa — filtro horizontal premium no topo */
.fim-results-layout.fim-results-layout-top{
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 22px !important;
}

.fim-results-filter.fim-results-filter-top{
    position: relative !important;
    top: auto !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 20px !important;
    border-radius: 26px !important;
    background:
        radial-gradient(circle at 8% 0%, rgba(32, 196, 168, .14), transparent 30%),
        linear-gradient(180deg, rgba(255, 255, 255, .96), rgba(248, 255, 253, .92)) !important;
    border: 1px solid rgba(32, 196, 168, .16) !important;
    box-shadow: 0 22px 60px rgba(15, 23, 42, .08) !important;
}

.fim-results-filter.fim-results-filter-top h3{
    margin: 0 0 14px !important;
    font-size: 15px !important;
    font-weight: 900 !important;
    color: #0f2f2c !important;
    letter-spacing: -.02em !important;
}

.fim-premium-horizontal-filter{
    display: grid !important;
    grid-template-columns: 1.45fr .9fr .9fr .72fr .72fr auto !important;
    gap: 11px !important;
    align-items: end !important;
}

.fim-premium-horizontal-filter label{
    display: none !important;
}

.fim-premium-horizontal-filter input,
.fim-premium-horizontal-filter select{
    width: 100% !important;
    min-height: 43px !important;
    border-radius: 15px !important;
    border: 1px solid #dbe8e7 !important;
    background: #ffffff !important;
    color: #102033 !important;
    font-size: 13px !important;
    font-weight: 650 !important;
    padding: 0 13px !important;
    outline: none !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .8) !important;
}

.fim-premium-horizontal-filter input:focus,
.fim-premium-horizontal-filter select:focus{
    border-color: rgba(32, 196, 168, .55) !important;
    box-shadow: 0 0 0 4px rgba(32, 196, 168, .11) !important;
}

.fim-premium-horizontal-filter button{
    min-height: 43px !important;
    border: 0 !important;
    border-radius: 15px !important;
    padding: 0 18px !important;
    white-space: nowrap !important;
    color: #fff !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    background: linear-gradient(135deg, #20C4A8, #17a890) !important;
    box-shadow: 0 14px 30px rgba(32, 196, 168, .20) !important;
}

.fim-results-main{
    min-width: 0 !important;
}

@media (max-width:1120px){
    .fim-premium-horizontal-filter{
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .fim-premium-horizontal-filter button{
        width: 100% !important;
    }
}

@media (max-width:620px){
    .fim-premium-horizontal-filter{
        grid-template-columns: 1fr !important;
    }
}


/* Pesquisa — plano, avatar grid e card standard refinado */
.fim-premium-horizontal-filter{
    grid-template-columns: 1.35fr .82fr .85fr .86fr .70fr .70fr auto !important;
}

.fim-premium-horizontal-filter select:disabled{
    opacity: .48 !important;
    cursor: not-allowed !important;
    background: #f1f5f9 !important;
}

.fim-view-grelha{
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 18px !important;
}

.fim-view-grelha .fim-result-card{
    display: block !important;
    padding: 18px !important;
    border-radius: 24px !important;
}

.fim-view-grelha .fim-result-logo{
    width: 74px !important;
    height: 74px !important;
    min-width: 74px !important;
    max-width: 74px !important;
    border-radius: 24px !important;
    margin: 0 0 14px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
}

.fim-view-grelha .fim-result-logo img{
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    border-radius: 20px !important;
}

.fim-result-card.is-standard{
    background:
        radial-gradient(circle at 92% 8%, rgba(148, 163, 184, .13), transparent 32%),
        linear-gradient(180deg, #ffffff, #f8fafc) !important;
    border: 1px solid #e5eaf0 !important;
    box-shadow: 0 18px 44px rgba(15, 23, 42, .07) !important;
}

.fim-result-card.is-standard .fim-result-logo{
    background: linear-gradient(180deg, #f8fafc, #eef2f7) !important;
    border: 1px solid #e2e8f0 !important;
    color: #64748b !important;
}

.fim-standard-mini-badge{
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    min-height: 26px !important;
    padding: 0 10px !important;
    border-radius: 999px !important;
    background: #f1f5f9 !important;
    color: #064e3b !important;
    border: 1px solid #dbe3ea !important;
    font-size: 11px !important;
    font-weight: 850 !important;
    opacity: 1 !important;
    visibility: visible !important;
}

.fim-standard-locked-text{
    margin: 10px 0 0 !important;
    padding: 10px 12px !important;
    border-radius: 16px !important;
    background: #f8fafc !important;
    border: 1px solid #e5eaf0 !important;
    color: #64748b !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
}

.fim-result-actions{
    display:flex!important;
    justify-content:flex-end!important;
    gap:8px!important;
    margin-top:14px!important;
}

.fim-result-actions .is-primary{
    min-height: 36px !important;
    padding: 0 14px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;
    border-radius: 999px !important;
    background: linear-gradient(135deg, #20C4A8, #17a890) !important;
    color: #fff !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    text-decoration: none !important;
    box-shadow: 0 12px 26px rgba(32, 196, 168, .18) !important;
}

@media (max-width:1100px){
    .fim-view-grelha{
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }

    .fim-premium-horizontal-filter{
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important
    }
}

@media (max-width:680px){
    .fim-view-grelha{
        grid-template-columns: 1fr !important
    }

    .fim-premium-horizontal-filter{
        grid-template-columns: 1fr !important
    }
}


/* =========================================================
   Resultados premium — pesquisa geral e entidades
   Grelha, lista e compacto alinhados ao padrão dos profissionais
========================================================= */

.fim-results-list{
    width: 100% !important;
}

/* Base do card */
.fim-results-list .fim-result-card{
    position: relative !important;
    overflow: hidden !important;
    border-radius: 28px !important;
    background:
        radial-gradient(circle at 92% 8%, rgba(32, 196, 168, .08), transparent 30%),
        linear-gradient(180deg, #ffffff, #fbfefd) !important;
    border: 1px solid #dfecef !important;
    box-shadow: 0 22px 58px rgba(15, 23, 42, .075) !important;
    transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease !important;
}

.fim-results-list .fim-result-card:hover{
    transform: translateY(-3px) !important;
    border-color: rgba(32, 196, 168, .24) !important;
    box-shadow: 0 28px 70px rgba(15, 23, 42, .10) !important;
}

.fim-results-list .fim-result-card::before{
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    background: linear-gradient(135deg, rgba(32, 196, 168, .035), transparent 48%, rgba(255, 255, 255, .72)) !important;
    pointer-events: none !important;
}

.fim-results-list .fim-result-logo,
.fim-results-list .fim-standard-hidden-logo{
    position: relative !important;
    z-index: 2 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
    overflow: hidden !important;
    background:
        radial-gradient(circle at 35% 25%, rgba(255, 255, 255, .95), rgba(226, 232, 240, .75)) !important;
    border: 5px solid #20C4A8 !important;
    box-shadow: 0 16px 34px rgba(32, 196, 168, .16) !important;
    color: #102033 !important;
}

.fim-results-list .fim-result-logo img{
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
}

.fim-results-list .fim-standard-hidden-logo i{
    font-size: 27px !important;
    color: #64748b !important;
}

.fim-results-list .fim-result-content{
    position: relative !important;
    z-index: 2 !important;
    min-width: 0 !important;
}

.fim-results-list .fim-result-line{
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
}

.fim-results-list .fim-result-line>span:first-child{
    display: inline-flex !important;
    align-items: center !important;
    gap: 7px !important;
    min-height: 30px !important;
    padding: 0 12px !important;
    border-radius: 999px !important;
    background: rgba(32, 196, 168, .09) !important;
    color: #0f766e !important;
    font-size: 13px !important;
    font-weight: 850 !important;
}

.fim-results-list .fim-premium-badge,
.fim-results-list .fim-standard-mini-badge{
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    min-height: 27px !important;
    padding: 0 10px !important;
    border-radius: 999px !important;
    font-size: 11px !important;
    font-weight: 900 !important;
    visibility: visible !important;
    opacity: 1 !important;
}

.fim-results-list .fim-premium-badge{
    background: linear-gradient(135deg, #fff7cc, #fbbf24) !important;
    color: #6b4300 !important;
    border: 1px solid rgba(245, 158, 11, .22) !important;
    box-shadow: 0 12px 28px rgba(245, 158, 11, .16) !important;
}

.fim-results-list .fim-standard-mini-badge{
    background: #f1f5f9 !important;
    color: #064e3b !important;
    border: 1px solid #dbe3ea !important;
}

.fim-results-list .fim-result-card h2{
    margin: 10px 0 3px !important;
    color: #102033 !important;
    letter-spacing: -.035em !important;
    font-weight: 850 !important;
}

.fim-results-list .fim-result-card h2 a{
    color: inherit !important;
    text-decoration: none !important;
}

.fim-results-list .fim-result-rating{
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    min-height: 48px !important;
    padding: 0 14px !important;
    border-radius: 20px !important;
    background: #fff8ed !important;
    border: 1px solid #fed7aa !important;
    color: #fb8c00 !important;
    font-weight: 900 !important;
}

.fim-results-list .fim-result-rating small{
    color: #64748b !important;
    font-size: 12px !important;
    font-weight: 750 !important;
}

.fim-results-list .fim-rank-mini{
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
}

.fim-results-list .fim-rank-badge{
    min-height: 29px !important;
    padding: 0 11px !important;
    border-radius: 999px !important;
}

.fim-results-list .fim-rank-line{
    max-width: 160px !important;
}

.fim-results-list .fim-result-card p{
    color: #64748b !important;
    line-height: 1.55 !important;
    font-weight: 500 !important;
}

.fim-results-list .fim-result-meta{
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    align-items: center !important;
}

.fim-results-list .fim-result-meta span{
    display: inline-flex !important;
    align-items: center !important;
    gap: 7px !important;
    min-height: 30px !important;
    padding: 0 10px !important;
    border-radius: 999px !important;
    background: #f8fafc !important;
    border: 1px solid #e5eaf0 !important;
    color: #064e3b !important;
    font-size: 12px !important;
    font-weight: 750 !important;
}

.fim-results-list .fim-result-meta i{
    color: #0f9f8a !important;
}

.fim-results-list .fim-result-actions{
    display: flex !important;
    gap: 10px !important;
}

.fim-results-list .fim-result-actions .is-primary{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    min-height: 40px !important;
    padding: 0 18px !important;
    border-radius: 999px !important;
    background: linear-gradient(135deg, #20C4A8, #17a890) !important;
    color: #fff !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    text-decoration: none !important;
    box-shadow: 0 16px 34px rgba(32, 196, 168, .20) !important;
}

.fim-results-list .fim-result-actions .is-primary:hover{
    filter: brightness(1.03) !important;
    transform: translateY(-1px) !important;
}

/* =========================================================
   GRELHA — 3 colunas, avatar compacto e layout premium
========================================================= */
.fim-results-list.fim-view-grelha{
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 18px !important;
}

.fim-results-list.fim-view-grelha .fim-result-card{
    display: grid !important;
    grid-template-columns: 110px minmax(0, 1fr) !important;
    grid-template-rows: auto 1fr auto !important;
    gap: 0 16px !important;
    min-height: 280px !important;
    padding: 24px !important;
}

.fim-results-list.fim-view-grelha .fim-result-logo,
.fim-results-list.fim-view-grelha .fim-standard-hidden-logo{
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 92px !important;
    height: 92px !important;
    border-radius: 24px !important;
    margin: 0 !important;
}

.fim-results-list.fim-view-grelha .fim-result-logo img{
    border-radius: 18px !important;
}

.fim-results-list.fim-view-grelha .fim-result-content{
    grid-column: 2 !important;
    grid-row: 1 / span 3 !important;
    display: grid !important;
    align-content: start !important;
}

.fim-results-list.fim-view-grelha .fim-result-line{
    min-height: 34px !important;
    margin-bottom: 6px !important;
}

.fim-results-list.fim-view-grelha .fim-result-line .fim-premium-badge,
.fim-results-list.fim-view-grelha .fim-result-line .fim-standard-mini-badge{
    display: none !important;
}

.fim-results-list.fim-view-grelha .fim-result-card h2{
    font-size: 23px !important;
    line-height: 1.16 !important;
    margin: 8px 0 4px !important;
}

.fim-results-list.fim-view-grelha .fim-result-rating{
    grid-column: 1 / -1 !important;
    margin: 18px 0 14px !important;
}

.fim-results-list.fim-view-grelha .fim-rank-mini{
    margin: 4px 0 10px !important;
}

.fim-results-list.fim-view-grelha .fim-rank-line,
.fim-results-list.fim-view-grelha .fim-result-meta span:not(:first-child){
    display: none !important;
}

.fim-results-list.fim-view-grelha .fim-result-card p{
    margin: 2px 0 14px !important;
    font-size: 14px !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 3 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
}

.fim-results-list.fim-view-grelha .fim-result-meta{
    margin-top: auto !important;
}

.fim-results-list.fim-view-grelha .fim-result-actions{
    margin-top: 14px !important;
}

/* =========================================================
   LISTA — card horizontal espaçoso e equilibrado
========================================================= */
.fim-results-list.fim-view-lista{
    display: grid !important;
    gap: 18px !important;
}

.fim-results-list.fim-view-lista .fim-result-card{
    display: grid !important;
    grid-template-columns: 125px minmax(0, 1fr) 250px !important;
    align-items: start !important;
    gap: 20px !important;
    min-height: 210px !important;
    padding: 24px !important;
}

.fim-results-list.fim-view-lista .fim-result-logo,
.fim-results-list.fim-view-lista .fim-standard-hidden-logo{
    width: 100px !important;
    height: 100px !important;
    border-radius: 26px !important;
}

.fim-results-list.fim-view-lista .fim-result-logo img{
    border-radius: 20px !important;
}

.fim-results-list.fim-view-lista .fim-result-content{
    display: contents !important;
}

.fim-results-list.fim-view-lista .fim-result-line,
.fim-results-list.fim-view-lista h2,
.fim-results-list.fim-view-lista p,
.fim-results-list.fim-view-lista .fim-rank-mini,
.fim-results-list.fim-view-lista .fim-result-meta{
    grid-column: 2 !important;
}

.fim-results-list.fim-view-lista .fim-result-rating{
    grid-column: 3 !important;
    grid-row: 1 !important;
    align-self: start !important;
    justify-content: center !important;
    margin-top: 16px !important;
}

.fim-results-list.fim-view-lista h2{
    font-size: 24px !important;
    line-height: 1.2 !important;
    margin-top: 8px !important;
}

.fim-results-list.fim-view-lista p{
    max-width: 900px !important;
    margin: 10px 0 !important;
    font-size: 15px !important;
}

.fim-results-list.fim-view-lista .fim-rank-mini{
    margin-top: 6px !important;
}

.fim-results-list.fim-view-lista .fim-result-actions{
    grid-column: 3 !important;
    grid-row: 3 / span 2 !important;
    align-self: end !important;
    justify-content: flex-end !important;
}

/* =========================================================
   COMPACTO — 3 colunas, informação reduzida
========================================================= */
.fim-results-list.fim-view-compacto{
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 16px !important;
}

.fim-results-list.fim-view-compacto .fim-result-card{
    display: grid !important;
    grid-template-columns: 76px minmax(0, 1fr) !important;
    gap: 14px !important;
    min-height: 160px !important;
    padding: 18px !important;
}

.fim-results-list.fim-view-compacto .fim-result-logo,
.fim-results-list.fim-view-compacto .fim-standard-hidden-logo{
    width: 62px !important;
    height: 62px !important;
    border-radius: 18px !important;
    border-width: 4px !important;
}

.fim-results-list.fim-view-compacto .fim-result-logo img{
    border-radius: 13px !important;
}

.fim-results-list.fim-view-compacto .fim-result-card h2{
    font-size: 18px !important;
    line-height: 1.18 !important;
    margin: 6px 0 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

.fim-results-list.fim-view-compacto .fim-result-line>span:first-child{
    min-height: 25px !important;
    padding: 0 9px !important;
    font-size: 11px !important;
}

.fim-results-list.fim-view-compacto .fim-premium-badge,
.fim-results-list.fim-view-compacto .fim-standard-mini-badge,
.fim-results-list.fim-view-compacto .fim-rank-line,
.fim-results-list.fim-view-compacto .fim-result-meta,
.fim-results-list.fim-view-compacto .fim-result-card p,
.fim-results-list.fim-view-compacto .fim-result-rating small{
    display: none !important;
}

.fim-results-list.fim-view-compacto .fim-result-rating{
    min-height: 36px !important;
    margin: 8px 0 !important;
    padding: 0 10px !important;
    border-radius: 16px !important;
}

.fim-results-list.fim-view-compacto .fim-rank-mini{
    margin: 6px 0 !important;
}

.fim-results-list.fim-view-compacto .fim-rank-badge{
    min-height: 25px !important;
    padding: 0 9px !important;
    font-size: 11px !important;
}

.fim-results-list.fim-view-compacto .fim-rank-badge small{
    display: none !important;
}

.fim-results-list.fim-view-compacto .fim-result-actions{
    margin-top: 10px !important;
}

.fim-results-list.fim-view-compacto .fim-result-actions .is-primary{
    min-height: 34px !important;
    padding: 0 13px !important;
    font-size: 12px !important;
}

/* Responsivo */
@media (max-width:1180px){

    .fim-results-list.fim-view-grelha,
.fim-results-list.fim-view-compacto{
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .fim-results-list.fim-view-lista .fim-result-card{
        grid-template-columns: 110px minmax(0, 1fr) !important;
    }

    .fim-results-list.fim-view-lista .fim-result-rating,
.fim-results-list.fim-view-lista .fim-result-actions{
        grid-column: 2 !important;
        grid-row: auto !important;
        justify-content: flex-end !important;
    }
}

@media (max-width:720px){

    .fim-results-list.fim-view-grelha,
.fim-results-list.fim-view-compacto{
        grid-template-columns: 1fr !important;
    }

    .fim-results-list.fim-view-grelha .fim-result-card,
.fim-results-list.fim-view-lista .fim-result-card,
.fim-results-list.fim-view-compacto .fim-result-card{
        grid-template-columns: 70px minmax(0, 1fr) !important;
        padding: 18px !important;
    }

    .fim-results-list.fim-view-grelha .fim-result-logo,
.fim-results-list.fim-view-lista .fim-result-logo,
.fim-results-list.fim-view-compacto .fim-result-logo,
.fim-results-list.fim-view-grelha .fim-standard-hidden-logo,
.fim-results-list.fim-view-lista .fim-standard-hidden-logo,
.fim-results-list.fim-view-compacto .fim-standard-hidden-logo{
        width: 62px !important;
        height: 62px !important;
        border-radius: 18px !important;
    }

    .fim-results-list.fim-view-grelha .fim-result-content{
        grid-column: 2 !important;
        grid-row: auto !important;
    }
}


/* =========================================================
   Pesquisas — copiar visual aprovado de profissionais.php
   Aplicado apenas a pesquisas.php e pesquisa-entidades.php
========================================================= */

/* Container passa a ter comportamento idêntico ao grid de profissionais */
.fim-results-list.fim-view-grelha,
.fim-results-list.fim-view-lista,
.fim-results-list.fim-view-compacto{
    display: grid !important;
    gap: 16px !important;
}

.fim-results-list.fim-view-grelha{
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.fim-results-list.fim-view-lista{
    grid-template-columns: 1fr !important;
}

.fim-results-list.fim-view-compacto{
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

/* Card base igual ao profissional */
.fim-results-list .fim-result-card{
    position: relative !important;
    display: block !important;
    background: #fff !important;
    border: 1px solid var(--fim-border, #e5edf3) !important;
    border-radius: 18px !important;
    box-shadow: 0 12px 34px rgba(15, 23, 42, .06) !important;
    padding: 16px !important;
    overflow: hidden !important;
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease !important;
}

.fim-results-list .fim-result-card:hover{
    transform: translateY(-2px) !important;
    border-color: rgba(32, 196, 168, .22) !important;
    box-shadow: 0 18px 44px rgba(15, 23, 42, .09) !important;
}

/* Topo do card: logo/avatar + conteúdo como fim-prof-card-top */
.fim-results-list .fim-result-card{
    display: grid !important;
    grid-template-columns: 80px minmax(0, 1fr) !important;
    gap: 12px !important;
    align-items: start !important;
}

.fim-results-list .fim-result-logo,
.fim-results-list .fim-standard-hidden-logo{
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 68px !important;
    height: 68px !important;
    border-radius: 16px !important;
    object-fit: cover !important;
    border: 1px solid var(--fim-border, #e5edf3) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
    background: #fff !important;
    overflow: hidden !important;
    box-shadow: none !important;
    margin: 0 !important;
}

.fim-results-list .fim-result-logo img{
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    padding: 0 !important;
    border-radius: 16px !important;
}

.fim-results-list .fim-standard-hidden-logo{
    background: linear-gradient(180deg, #f8fafc, #eef2f7) !important;
    color: #64748b !important;
}

.fim-results-list .fim-standard-hidden-logo i{
    font-size: 28px !important;
}

.fim-results-list .fim-result-content{
    grid-column: 2 !important;
    min-width: 0 !important;
    display: block !important;
}

/* Categoria como badge igual ao fim-prof-category */
.fim-results-list .fim-result-line{
    display: flex !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    margin: 0 !important;
}

.fim-results-list .fim-result-line>span:first-child{
    display: inline-flex !important;
    align-items: center !important;
    gap: 7px !important;
    min-height: 28px !important;
    padding: 0 11px !important;
    border-radius: 999px !important;
    background: #e9fbf7 !important;
    color: var(--fim-brand-2, #17a890) !important;
    font-size: 12px !important;
    font-weight: 900 !important;
}

.fim-results-list .fim-premium-badge,
.fim-results-list .fim-standard-mini-badge{
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    min-height: 26px !important;
    padding: 0 10px !important;
    border-radius: 999px !important;
    font-size: 11px !important;
    font-weight: 900 !important;
    visibility: visible !important;
    opacity: 1 !important;
}

.fim-results-list .fim-standard-mini-badge{
    background: #f1f5f9 !important;
    color: #64748b !important;
    border: 1px solid #dbe3ea !important;
}

.fim-results-list .fim-premium-badge{
    background: linear-gradient(135deg, #fff7cc, #fbbf24) !important;
    color: #6b4300 !important;
    border: 1px solid rgba(245, 158, 11, .2) !important;
}

/* Nome, descrição e rating no mesmo padrão dos profissionais */
.fim-results-list .fim-result-card h2{
    font-size: 17px !important;
    margin: 7px 0 !important;
    line-height: 1.25 !important;
    letter-spacing: -.02em !important;
}

.fim-results-list .fim-result-card h2 a{
    text-decoration: none !important;
    color: #0f2135 !important;
}

.fim-results-list .fim-result-card p,
.fim-results-list .fim-standard-locked-text{
    font-size: 13px !important;
    line-height: 1.5 !important;
    color: #64748b !important;
    margin: 8px 0 !important;
}

.fim-results-list .fim-result-rating{
    grid-column: 1 / -1 !important;
    display: flex !important;
    gap: 8px !important;
    align-items: center !important;
    margin: 10px 0 !important;
    min-height: auto !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #f59e0b !important;
    font-weight: 900 !important;
}

.fim-results-list .fim-result-rating small{
    color: #64748b !important;
    font-size: 12px !important;
    font-weight: 700 !important;
}

/* Ranking/meta/actions iguais ao fim-prof */
.fim-results-list .fim-rank-mini{
    grid-column: 1 / -1 !important;
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin-top: 9px !important;
}

.fim-results-list .fim-rank-badge{
    min-height: 28px !important;
    padding: 0 10px !important;
    border-radius: 999px !important;
    font-size: 12px !important;
}

.fim-results-list .fim-rank-line{
    display: none !important;
}

.fim-results-list .fim-result-meta{
    grid-column: 1 / -1 !important;
    display: flex !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    margin-top: 10px !important;
}

.fim-results-list .fim-result-meta span{
    height: 34px !important;
    padding: 0 11px !important;
    border-radius: 10px !important;
    border: 1px solid var(--fim-border, #e5edf3) !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    text-decoration: none !important;
    color: #102033 !important;
    font-weight: 800 !important;
    font-size: 12px !important;
    background: #fff !important;
}

.fim-results-list .fim-result-actions{
    grid-column: 1 / -1 !important;
    display: flex !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    margin-top: 12px !important;
}

.fim-results-list .fim-result-actions a{
    height: 34px !important;
    padding: 0 11px !important;
    border-radius: 10px !important;
    border: 1px solid var(--fim-border, #e5edf3) !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    text-decoration: none !important;
    color: #102033 !important;
    font-weight: 800 !important;
    font-size: 12px !important;
    background: #fff !important;
}

.fim-results-list .fim-result-actions .is-primary{
    background: linear-gradient(135deg, var(--fim-brand, #20C4A8), var(--fim-brand-2, #17a890)) !important;
    color: #fff !important;
    border-color: transparent !important;
    box-shadow: none !important;
}

/* Grelha: 3 colunas e card vertical como profissionais */
.fim-results-list.fim-view-grelha .fim-result-card{
    grid-template-columns: 80px minmax(0, 1fr) !important;
    min-height: 0 !important;
}

.fim-results-list.fim-view-grelha .fim-result-card p{
    display: -webkit-box !important;
    -webkit-line-clamp: 3 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
}

/* Lista: mesmo card, mas mais aberto e rating à direita quando houver espaço */
.fim-results-list.fim-view-lista .fim-result-card{
    grid-template-columns: 92px minmax(0, 1fr) auto !important;
    gap: 16px !important;
    align-items: start !important;
}

.fim-results-list.fim-view-lista .fim-result-logo,
.fim-results-list.fim-view-lista .fim-standard-hidden-logo{
    width: 78px !important;
    height: 78px !important;
    border-radius: 18px !important;
}

.fim-results-list.fim-view-lista .fim-result-content{
    grid-column: 2 !important;
}

.fim-results-list.fim-view-lista .fim-result-rating{
    grid-column: 3 !important;
    grid-row: 1 !important;
    justify-content: flex-end !important;
    min-width: 170px !important;
    margin-top: 6px !important;
}

.fim-results-list.fim-view-lista .fim-rank-mini,
.fim-results-list.fim-view-lista .fim-result-meta,
.fim-results-list.fim-view-lista .fim-result-actions{
    grid-column: 2 / -1 !important;
}

/* Compacto: 3 colunas, reduzido como profissionais compacto */
.fim-results-list.fim-view-compacto .fim-result-card{
    grid-template-columns: 64px minmax(0, 1fr) !important;
    gap: 10px !important;
    padding: 13px !important;
}

.fim-results-list.fim-view-compacto .fim-result-logo,
.fim-results-list.fim-view-compacto .fim-standard-hidden-logo{
    width: 58px !important;
    height: 58px !important;
    border-radius: 14px !important;
}

.fim-results-list.fim-view-compacto .fim-result-line>span:first-child{
    min-height: 24px !important;
    padding: 0 8px !important;
    font-size: 11px !important;
}

.fim-results-list.fim-view-compacto .fim-premium-badge,
.fim-results-list.fim-view-compacto .fim-standard-mini-badge,
.fim-results-list.fim-view-compacto .fim-result-rating small,
.fim-results-list.fim-view-compacto .fim-result-card p,
.fim-results-list.fim-view-compacto .fim-result-meta,
.fim-results-list.fim-view-compacto .fim-views-chip,
.fim-results-list.fim-view-compacto .fim-status-chip{
    display: none !important;
}

.fim-results-list.fim-view-compacto .fim-result-card h2{
    font-size: 15px !important;
    margin: 6px 0 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

.fim-results-list.fim-view-compacto .fim-result-rating{
    margin: 8px 0 !important;
}

.fim-results-list.fim-view-compacto .fim-rank-mini{
    margin: 6px 0 !important;
}

.fim-results-list.fim-view-compacto .fim-rank-badge{
    min-height: 24px !important;
    padding: 0 8px !important;
    font-size: 11px !important;
}

.fim-results-list.fim-view-compacto .fim-rank-badge small{
    display: none !important;
}

.fim-results-list.fim-view-compacto .fim-result-actions{
    margin-top: 8px !important;
}

.fim-results-list.fim-view-compacto .fim-result-actions a{
    height: 32px !important;
    border-radius: 10px !important;
}

/* Standard mais limpo e legível */
.fim-results-list .fim-result-card.is-standard{
    background: #fff !important;
}

.fim-results-list .fim-result-card.is-standard .fim-result-logo,
.fim-results-list .fim-result-card.is-standard .fim-standard-hidden-logo{
    border-color: #dbe3ea !important;
    background: #f8fafc !important;
    box-shadow: none !important;
}

/* Responsivo igual ao padrão original */
@media (max-width:1100px){

    .fim-results-list.fim-view-grelha,
.fim-results-list.fim-view-compacto{
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .fim-results-list.fim-view-lista .fim-result-card{
        grid-template-columns: 80px minmax(0, 1fr) !important;
    }

    .fim-results-list.fim-view-lista .fim-result-rating,
.fim-results-list.fim-view-lista .fim-rank-mini,
.fim-results-list.fim-view-lista .fim-result-meta,
.fim-results-list.fim-view-lista .fim-result-actions{
        grid-column: 2 !important;
        grid-row: auto !important;
        justify-content: flex-end !important;
    }
}

@media (max-width:720px){

    .fim-results-list.fim-view-grelha,
.fim-results-list.fim-view-compacto{
        grid-template-columns: 1fr !important;
    }

    .fim-results-list.fim-view-lista .fim-result-card,
.fim-results-list.fim-view-grelha .fim-result-card,
.fim-results-list.fim-view-compacto .fim-result-card{
        grid-template-columns: 68px minmax(0, 1fr) !important;
    }
}


/* =========================================================
   Resultados de pesquisa usando o mesmo modelo de profissionais.php
========================================================= */
.fim-search-results-as-prof.fim-view-grelha{
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 16px !important;
}

.fim-search-results-as-prof.fim-view-lista{
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 14px !important;
}

.fim-search-results-as-prof.fim-view-compacto{
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 12px !important;
}

.fim-search-results-as-prof .fim-prof-card{
    background: #fff !important;
    border: 1px solid var(--fim-border, #e5edf3) !important;
    border-radius: 18px !important;
    box-shadow: 0 12px 34px rgba(15, 23, 42, .06) !important;
    padding: 16px !important;
}

.fim-search-results-as-prof .fim-prof-card-top{
    display: flex !important;
    gap: 12px !important;
    align-items: center !important;
}

.fim-search-results-as-prof .fim-prof-card-top img,
.fim-search-standard-avatar{
    width: 68px !important;
    height: 68px !important;
    border-radius: 16px !important;
    object-fit: cover !important;
    border: 1px solid var(--fim-border, #e5edf3) !important;
    flex: 0 0 auto !important;
}

.fim-search-standard-avatar{
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #f8fafc !important;
    color: #64748b !important;
    font-size: 26px !important;
}

.fim-search-results-as-prof .fim-prof-category{
    display: inline-flex !important;
    align-items: center !important;
    gap: 7px !important;
    min-height: 27px !important;
    padding: 0 10px !important;
    border-radius: 999px !important;
    background: #e9fbf7 !important;
    color: var(--fim-brand-2, #17a890) !important;
    font-size: 12px !important;
    font-weight: 900 !important;
}

.fim-search-results-as-prof .fim-prof-card h3{
    font-size: 17px !important;
    margin: 7px 0 !important;
    line-height: 1.25 !important;
}

.fim-search-results-as-prof .fim-prof-card h3 a{
    text-decoration: none !important;
    color: #0f2135 !important;
}

.fim-search-results-as-prof .fim-prof-card-top p{
    margin: 0 !important;
    color: #64748b !important;
    font-size: 13px !important;
}

.fim-search-results-as-prof .fim-prof-rating{
    display: flex !important;
    gap: 8px !important;
    align-items: center !important;
    margin: 10px 0 !important;
    color: #f59e0b !important;
}

.fim-search-results-as-prof .fim-prof-rating small{
    color: #64748b !important;
}

.fim-search-results-as-prof .fim-prof-desc{
    font-size: 13px !important;
    line-height: 1.5 !important;
    color: #64748b !important;
}

.fim-search-results-as-prof .fim-prof-meta,
.fim-search-results-as-prof .fim-prof-actions{
    display: flex !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
    align-items: center !important;
}

.fim-search-results-as-prof .fim-prof-meta span{
    height: 34px !important;
    padding: 0 11px !important;
    border-radius: 10px !important;
    border: 1px solid var(--fim-border, #e5edf3) !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    color: #102033 !important;
    font-weight: 800 !important;
    font-size: 12px !important;
    background: #fff !important;
}

.fim-search-results-as-prof .fim-prof-actions a{
    height: 34px !important;
    padding: 0 11px !important;
    border-radius: 10px !important;
    border: 1px solid var(--fim-border, #e5edf3) !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    text-decoration: none !important;
    color: #102033 !important;
    font-weight: 800 !important;
    font-size: 12px !important;
    background: #fff !important;
}

.fim-search-results-as-prof .fim-prof-actions .is-primary{
    background: linear-gradient(135deg, var(--fim-brand, #20C4A8), var(--fim-brand-2, #17a890)) !important;
    color: #fff !important;
    border-color: transparent !important;
}

.fim-search-results-as-prof .fim-standard-mini-badge{
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    min-height: 26px !important;
    padding: 0 10px !important;
    border-radius: 999px !important;
    background: #f1f5f9 !important;
    color: #64748b !important;
    border: 1px solid #dbe3ea !important;
    font-size: 11px !important;
    font-weight: 900 !important;
    visibility: visible !important;
    opacity: 1 !important;
}

.fim-search-results-as-prof .fim-standard-locked-text{
    padding: 10px 12px !important;
    border-radius: 14px !important;
    background: #f8fafc !important;
    border: 1px solid #e5edf3 !important;
}

/* Lista fica igual ao comportamento visual aprovado: card horizontal amplo */
.fim-search-results-as-prof.fim-view-lista .fim-prof-card{
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 10px 18px !important;
    align-items: start !important;
}

.fim-search-results-as-prof.fim-view-lista .fim-prof-card-top{
    grid-column: 1 !important;
}

.fim-search-results-as-prof.fim-view-lista .fim-prof-rating{
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-content: flex-end !important;
    min-width: 180px !important;
}

.fim-search-results-as-prof.fim-view-lista .fim-rank-mini,
.fim-search-results-as-prof.fim-view-lista .fim-prof-desc,
.fim-search-results-as-prof.fim-view-lista .fim-prof-meta{
    grid-column: 1 / -1 !important;
}

.fim-search-results-as-prof.fim-view-lista .fim-prof-actions{
    grid-column: 2 !important;
    justify-content: flex-end !important;
}

/* Compacto reduzido como profissionais */
.fim-search-results-as-prof.fim-view-compacto .fim-prof-card{
    padding: 13px !important;
}

.fim-search-results-as-prof.fim-view-compacto .fim-prof-card-top img,
.fim-search-results-as-prof.fim-view-compacto .fim-search-standard-avatar{
    width: 58px !important;
    height: 58px !important;
    border-radius: 14px !important;
}

.fim-search-results-as-prof.fim-view-compacto .fim-prof-category{
    min-height: 24px !important;
    padding: 0 8px !important;
    font-size: 11px !important;
}

.fim-search-results-as-prof.fim-view-compacto .fim-prof-card h3{
    font-size: 15px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

.fim-search-results-as-prof.fim-view-compacto .fim-prof-desc,
.fim-search-results-as-prof.fim-view-compacto .fim-prof-meta,
.fim-search-results-as-prof.fim-view-compacto .fim-views-chip,
.fim-search-results-as-prof.fim-view-compacto .fim-prof-rating small{
    display: none !important;
}

.fim-search-results-as-prof.fim-view-compacto .fim-rank-badge small{
    display: none !important;
}

@media (max-width:1100px){

    .fim-search-results-as-prof.fim-view-grelha,
.fim-search-results-as-prof.fim-view-compacto{
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .fim-search-results-as-prof.fim-view-lista .fim-prof-card{
        grid-template-columns: 1fr !important;
    }

    .fim-search-results-as-prof.fim-view-lista .fim-prof-rating,
.fim-search-results-as-prof.fim-view-lista .fim-prof-actions{
        grid-column: 1 !important;
        justify-content: flex-end !important;
    }
}

@media (max-width:720px){

    .fim-search-results-as-prof.fim-view-grelha,
.fim-search-results-as-prof.fim-view-compacto{
        grid-template-columns: 1fr !important;
    }
}


/* =========================================================
   Entidades em pesquisas — visual próprio, alinhado ao padrão premium
========================================================= */
.fim-search-results-grid{
    display: grid !important;
    gap: 16px !important;
}

.fim-search-results-grid.fim-view-grelha{
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.fim-search-results-grid.fim-view-lista{
    grid-template-columns: 1fr !important;
}

.fim-search-results-grid.fim-view-compacto{
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

/* mantém profissionais dentro da pesquisa com o padrão aprovado */
.fim-search-results-grid .fim-prof-card{
    background: #fff !important;
    border: 1px solid var(--fim-border, #e5edf3) !important;
    border-radius: 18px !important;
    box-shadow: 0 12px 34px rgba(15, 23, 42, .06) !important;
    padding: 16px !important;
}

.fim-search-results-grid .fim-prof-card-top{
    display: flex !important;
    gap: 12px !important;
    align-items: center !important;
}

.fim-search-results-grid .fim-prof-card-top img,
.fim-search-results-grid .fim-search-standard-avatar{
    width: 68px !important;
    height: 68px !important;
    border-radius: 16px !important;
    object-fit: cover !important;
    border: 1px solid var(--fim-border, #e5edf3) !important;
}

.fim-search-results-grid .fim-search-standard-avatar{
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #f8fafc !important;
    color: #64748b !important;
    font-size: 26px !important;
}

/* card entidades */
.fim-entity-result-card{
    position: relative !important;
    display: block !important;
    background:
        radial-gradient(circle at 96% 8%, rgba(32, 196, 168, .07), transparent 30%),
        linear-gradient(180deg, #ffffff, #fbfefd) !important;
    border: 1px solid var(--fim-border, #e5edf3) !important;
    border-radius: 20px !important;
    box-shadow: 0 12px 34px rgba(15, 23, 42, .06) !important;
    padding: 16px !important;
    overflow: hidden !important;
    transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease !important;
}

.fim-entity-result-card:hover{
    transform: translateY(-2px) !important;
    border-color: rgba(32, 196, 168, .22) !important;
    box-shadow: 0 18px 44px rgba(15, 23, 42, .09) !important;
}

.fim-entity-result-top{
    display: flex !important;
    gap: 12px !important;
    align-items: center !important;
}

.fim-entity-result-logo{
    width: 68px !important;
    height: 68px !important;
    border-radius: 18px !important;
    border: 1px solid var(--fim-border, #e5edf3) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
    overflow: hidden !important;
    background: #fff !important;
}

.fim-entity-result-logo img{
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    border-radius: 16px !important;
}

.fim-entity-result-logo.is-locked{
    background: linear-gradient(180deg, #f8fafc, #eef2f7) !important;
    color: #64748b !important;
    font-size: 26px !important;
}

.fim-entity-result-head{
    min-width: 0 !important;
}

.fim-entity-result-badges{
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 8px !important;
}

.fim-entity-type-badge{
    display: inline-flex !important;
    align-items: center !important;
    gap: 7px !important;
    min-height: 27px !important;
    padding: 0 10px !important;
    border-radius: 999px !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    white-space: nowrap !important;
}

.fim-entity-type-badge{
    background: #e9fbf7 !important;
    color: var(--fim-brand-2, #17a890) !important;
}





.fim-entity-result-card h3{
    margin: 7px 0 2px !important;
    font-size: 17px !important;
    line-height: 1.25 !important;
    font-weight: 850 !important;
    letter-spacing: -.02em !important;
}

.fim-entity-result-card h3 a{
    color: #0f2135 !important;
    text-decoration: none !important;
}

.fim-entity-result-location{
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    margin: 0 !important;
    color: #64748b !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
}

.fim-entity-result-location i{
    color: var(--fim-brand-2, #17a890) !important;
}

.fim-entity-result-rating{
    display: flex !important;
    gap: 8px !important;
    align-items: center !important;
    margin: 10px 0 !important;
    color: #f59e0b !important;
    font-weight: 900 !important;
}

.fim-entity-result-rating small{
    color: #64748b !important;
    font-size: 12px !important;
    font-weight: 700 !important;
}

.fim-entity-result-rank{
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin-top: 9px !important;
}

.fim-entity-result-desc{
    margin: 10px 0 !important;
    font-size: 13px !important;
    line-height: 1.5 !important;
    color: #64748b !important;
}

.fim-entity-result-desc.is-standard-note{
    padding: 10px 12px !important;
    border-radius: 14px !important;
    background: #f8fafc !important;
    border: 1px solid #e5edf3 !important;
}

.fim-entity-result-meta,
.fim-entity-result-actions{
    display: flex !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
    align-items: center !important;
}

.fim-entity-result-meta span{
    height: 34px !important;
    padding: 0 11px !important;
    border-radius: 10px !important;
    border: 1px solid var(--fim-border, #e5edf3) !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    color: #102033 !important;
    font-weight: 800 !important;
    font-size: 12px !important;
    background: #fff !important;
}

.fim-entity-result-actions{
    justify-content:flex-end!important;
    margin-top:12px!important;
}

.fim-entity-result-actions a{
    height: 34px !important;
    padding: 0 11px !important;
    border-radius: 10px !important;
    border: 1px solid var(--fim-border, #e5edf3) !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    text-decoration: none !important;
    color: #102033 !important;
    font-weight: 800 !important;
    font-size: 12px !important;
    background: #fff !important;
}

.fim-entity-result-actions .is-primary{
    background: linear-gradient(135deg, var(--fim-brand, #20C4A8), var(--fim-brand-2, #17a890)) !important;
    color: #fff !important;
    border-color: transparent !important;
}

/* visualizações sempre legíveis */
.fim-views-chip.is-visible,
.fim-rank-mini .fim-views-chip,
.fim-entity-result-rank .fim-views-chip{
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    min-height: 28px !important;
    padding: 0 10px !important;
    border-radius: 999px !important;
    background: rgba(32, 196, 168, .10) !important;
    color: #0f766e !important;
    border: 1px solid rgba(32, 196, 168, .18) !important;
    font-size: 11px !important;
    font-weight: 850 !important;
    opacity: 1 !important;
    visibility: visible !important;
}

.fim-views-chip.is-visible i,
.fim-rank-mini .fim-views-chip i,
.fim-entity-result-rank .fim-views-chip i{
    color: #0f9f8a !important;
}

/* lista: horizontal, preservando diferença entre entidades e profissionais */
.fim-search-results-grid.fim-view-lista .fim-entity-result-card{
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 10px 18px !important;
    align-items: start !important;
}

.fim-search-results-grid.fim-view-lista .fim-entity-result-top{
    grid-column: 1 !important;
}

.fim-search-results-grid.fim-view-lista .fim-entity-result-rating{
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-content: flex-end !important;
    min-width: 180px !important;
}

.fim-search-results-grid.fim-view-lista .fim-entity-result-rank,
.fim-search-results-grid.fim-view-lista .fim-entity-result-desc,
.fim-search-results-grid.fim-view-lista .fim-entity-result-meta{
    grid-column: 1 / -1 !important;
}

.fim-search-results-grid.fim-view-lista .fim-entity-result-actions{
    grid-column: 2 !important;
    justify-content: flex-end !important;
}

/* compacto */
.fim-search-results-grid.fim-view-compacto .fim-entity-result-card{
    padding: 13px !important;
}

.fim-search-results-grid.fim-view-compacto .fim-entity-result-logo{
    width: 58px !important;
    height: 58px !important;
    border-radius: 14px !important;
}

.fim-search-results-grid.fim-view-compacto .fim-entity-type-badge{
    min-height: 24px !important;
    padding: 0 8px !important;
    font-size: 11px !important;
}

.fim-search-results-grid.fim-view-compacto .fim-entity-result-card h3{
    font-size: 15px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

.fim-search-results-grid.fim-view-compacto .fim-entity-result-location,
.fim-search-results-grid.fim-view-compacto .fim-entity-result-desc,
.fim-search-results-grid.fim-view-compacto .fim-entity-result-meta,
.fim-search-results-grid.fim-view-compacto .fim-views-chip,
.fim-search-results-grid.fim-view-compacto .fim-entity-result-rating small{
    display: none !important;
}

.fim-search-results-grid.fim-view-compacto .fim-entity-result-rating{
    margin: 8px 0 !important;
}

/* profissionais na pesquisa: corrigir badge de visualizações */
.fim-search-results-grid .fim-prof-card .fim-views-chip{
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    min-height: 28px !important;
    padding: 0 10px !important;
    border-radius: 999px !important;
    background: rgba(32, 196, 168, .10) !important;
    color: #0f766e !important;
    border: 1px solid rgba(32, 196, 168, .18) !important;
    font-size: 11px !important;
    font-weight: 850 !important;
    opacity: 1 !important;
}

/* Responsivo */
@media (max-width:1100px){

    .fim-search-results-grid.fim-view-grelha,
.fim-search-results-grid.fim-view-compacto{
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .fim-search-results-grid.fim-view-lista .fim-entity-result-card{
        grid-template-columns: 1fr !important;
    }

    .fim-search-results-grid.fim-view-lista .fim-entity-result-rating,
.fim-search-results-grid.fim-view-lista .fim-entity-result-actions{
        grid-column: 1 !important;
        justify-content: flex-end !important;
    }
}

@media (max-width:720px){

    .fim-search-results-grid.fim-view-grelha,
.fim-search-results-grid.fim-view-compacto{
        grid-template-columns: 1fr !important;
    }
}


/* =========================================================
   FINAL CONTROLADO — resultados de pesquisa FindInMoz
   Corrige borrações anteriores, entidades próprias e profissionais no padrão original
========================================================= */

.fim-results-grid-final{
    display: grid !important;
    gap: 16px !important;
}

.fim-results-grid-final.fim-view-grelha{
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.fim-results-grid-final.fim-view-lista{
    grid-template-columns: 1fr !important;
}

.fim-results-grid-final.fim-view-compacto{
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

/* Profissionais dentro da pesquisa: respeitar visual de profissionais.php */
.fim-results-grid-final .fim-prof-card{
    background: #fff !important;
    border: 1px solid var(--fim-border, #e5edf3) !important;
    border-radius: 18px !important;
    box-shadow: 0 12px 34px rgba(15, 23, 42, .06) !important;
    padding: 16px !important;
}

.fim-results-grid-final .fim-prof-card-top{
    display: flex !important;
    gap: 12px !important;
    align-items: center !important;
}

.fim-results-grid-final .fim-prof-card-top img,
.fim-results-grid-final .fim-search-avatar-fallback{
    width: 68px !important;
    height: 68px !important;
    border-radius: 16px !important;
    object-fit: cover !important;
    border: 1px solid var(--fim-border, #e5edf3) !important;
    flex: 0 0 auto !important;
}

.fim-results-grid-final .fim-search-avatar-fallback{
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #f8fafc !important;
    color: #64748b !important;
    font-size: 25px !important;
}

.fim-results-grid-final .fim-prof-category{
    font-size: 12px !important;
    color: var(--fim-brand-2, #17a890) !important;
    font-weight: 900 !important;
}

.fim-results-grid-final .fim-prof-card h3{
    font-size: 17px !important;
    margin: 7px 0 !important;
}

.fim-results-grid-final .fim-prof-card h3 a{
    text-decoration: none !important;
    color: #0f2135 !important;
}

.fim-results-grid-final .fim-prof-card-top p,
.fim-results-grid-final .fim-prof-desc{
    font-size: 13px !important;
    line-height: 1.5 !important;
    color: #64748b !important;
}

.fim-results-grid-final .fim-prof-rating{
    display: flex !important;
    gap: 8px !important;
    align-items: center !important;
    margin: 10px 0 !important;
    color: #f59e0b !important;
}

.fim-results-grid-final .fim-prof-rating small{
    color: #64748b !important;
}

.fim-results-grid-final .fim-prof-meta,
.fim-results-grid-final .fim-prof-actions{
    display: flex !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
    align-items: center !important;
}

.fim-results-grid-final .fim-prof-meta span,
.fim-results-grid-final .fim-prof-actions a{
    height: 34px !important;
    padding: 0 11px !important;
    border-radius: 10px !important;
    border: 1px solid var(--fim-border, #e5edf3) !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    text-decoration: none !important;
    color: #102033 !important;
    font-weight: 800 !important;
    font-size: 12px !important;
    background: #fff !important;
}

.fim-results-grid-final .fim-prof-actions .is-primary{
    background: linear-gradient(135deg, var(--fim-brand, #20C4A8), var(--fim-brand-2, #17a890)) !important;
    color: #fff !important;
    border-color: transparent !important;
}

/* Entidades: card próprio e organizado */
.fim-ent-card{
    position: relative !important;
    display: block !important;
    background: #fff !important;
    border: 1px solid var(--fim-border, #e5edf3) !important;
    border-radius: 18px !important;
    box-shadow: 0 12px 34px rgba(15, 23, 42, .06) !important;
    padding: 16px !important;
    overflow: hidden !important;
}

.fim-ent-card.is-premium{
    background:
        radial-gradient(circle at 95% 5%, rgba(32, 196, 168, .08), transparent 28%),
        #fff !important;
}

.fim-ent-card.is-standard{
    background: #fff !important;
}

.fim-ent-card-top{
    display: flex !important;
    gap: 12px !important;
    align-items: center !important;
}

.fim-ent-logo{
    width: 68px !important;
    height: 68px !important;
    border-radius: 16px !important;
    border: 1px solid var(--fim-border, #e5edf3) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
    overflow: hidden !important;
    background: #fff !important;
    text-decoration: none !important;
}

.fim-ent-logo img{
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    border-radius: 16px !important;
}

.fim-ent-logo.is-locked{
    background: #f8fafc !important;
    color: #64748b !important;
    font-size: 25px !important;
}

.fim-ent-badges{
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 8px !important;
}

.fim-ent-category,
.fim-ent-plan{
    display: inline-flex !important;
    align-items: center !important;
    gap: 7px !important;
    min-height: 27px !important;
    padding: 0 10px !important;
    border-radius: 999px !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    white-space: nowrap !important;
}

.fim-ent-category{
    background: #e9fbf7 !important;
    color: var(--fim-brand-2, #17a890) !important;
}

.fim-ent-plan.premium{
    background: linear-gradient(135deg, #fff7cc, #fbbf24) !important;
    color: #6b4300 !important;
    border: 1px solid rgba(245, 158, 11, .20) !important;
}

.fim-ent-plan.standard{
    background: #f1f5f9 !important;
    color: #064e3b !important;
    border: 1px solid #dbe3ea !important;
}

.fim-ent-card h3{
    font-size: 17px !important;
    margin: 7px 0 !important;
}

.fim-ent-card h3 a{
    color: #0f2135 !important;
    text-decoration: none !important;
}

.fim-ent-local{
    display: flex !important;
    gap: 6px !important;
    align-items: center !important;
    margin: 0 !important;
    font-size: 13px !important;
    color: #64748b !important;
    line-height: 1.5 !important;
}

.fim-ent-local i{
    color: var(--fim-brand-2, #17a890) !important;
}

.fim-ent-rating{
    display: flex !important;
    gap: 8px !important;
    align-items: center !important;
    margin: 10px 0 !important;
    color: #f59e0b !important;
    font-weight: 900 !important;
}

.fim-ent-rating small{
    color: #64748b !important;
}

.fim-ent-rank{
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin-top: 9px !important;
}

.fim-ent-desc{
    font-size: 13px !important;
    line-height: 1.5 !important;
    color: #64748b !important;
    margin: 10px 0 !important;
}

.fim-ent-meta,
.fim-ent-actions{
    display: flex !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
    align-items: center !important;
}

.fim-ent-meta span,
.fim-ent-actions a{
    height: 34px !important;
    padding: 0 11px !important;
    border-radius: 10px !important;
    border: 1px solid var(--fim-border, #e5edf3) !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    text-decoration: none !important;
    color: #102033 !important;
    font-weight: 800 !important;
    font-size: 12px !important;
    background: #fff !important;
}

.fim-ent-actions{
    justify-content:flex-end!important;
    margin-top:12px!important;
}

.fim-ent-actions .is-primary{
    background: linear-gradient(135deg, var(--fim-brand, #20C4A8), var(--fim-brand-2, #17a890)) !important;
    color: #fff !important;
    border-color: transparent !important;
}

/* Badge de visualizações: visível em todos os 3 contextos */
.fim-views-chip,
.fim-views-chip-force,
.fim-rank-mini .fim-views-chip,
.fim-ent-rank .fim-views-chip{
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    min-height: 28px !important;
    padding: 0 10px !important;
    border-radius: 999px !important;
    background: linear-gradient(135deg, rgba(255, 255, 255, .18), rgba(255, 255, 255, .08)) !important;
    color: #ffffff !important;
    border: 1px solid rgba(255, 255, 255, .24) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, .22),
        0 10px 24px rgba(15, 23, 42, .10) !important;
    backdrop-filter: blur(14px) !important;
    -webkit-backdrop-filter: blur(14px) !important;
    font-size: 11px !important;
    font-weight: 450 !important;
    opacity: 1 !important;
    visibility: visible !important;
}

.fim-views-chip i,
.fim-views-chip-force i{
    color: #ffffff !important;
}

/* Lista */
.fim-results-grid-final.fim-view-lista .fim-prof-card,
.fim-results-grid-final.fim-view-lista .fim-ent-card{
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 10px 18px !important;
}

.fim-results-grid-final.fim-view-lista .fim-prof-card-top,
.fim-results-grid-final.fim-view-lista .fim-ent-card-top{
    grid-column: 1 !important;
}

.fim-results-grid-final.fim-view-lista .fim-prof-rating,
.fim-results-grid-final.fim-view-lista .fim-ent-rating{
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-content: flex-end !important;
    min-width: 175px !important;
}

.fim-results-grid-final.fim-view-lista .fim-rank-mini,
.fim-results-grid-final.fim-view-lista .fim-prof-desc,
.fim-results-grid-final.fim-view-lista .fim-prof-meta,
.fim-results-grid-final.fim-view-lista .fim-ent-rank,
.fim-results-grid-final.fim-view-lista .fim-ent-desc,
.fim-results-grid-final.fim-view-lista .fim-ent-meta{
    grid-column: 1 / -1 !important;
}

.fim-results-grid-final.fim-view-lista .fim-prof-actions,
.fim-results-grid-final.fim-view-lista .fim-ent-actions{
    grid-column: 2 !important;
    justify-content: flex-end !important;
}

/* Compacto */
.fim-results-grid-final.fim-view-compacto .fim-prof-card,
.fim-results-grid-final.fim-view-compacto .fim-ent-card{
    padding: 13px !important;
}

.fim-results-grid-final.fim-view-compacto .fim-prof-card-top img,
.fim-results-grid-final.fim-view-compacto .fim-search-avatar-fallback,
.fim-results-grid-final.fim-view-compacto .fim-ent-logo{
    width: 58px !important;
    height: 58px !important;
    border-radius: 14px !important;
}

.fim-results-grid-final.fim-view-compacto .fim-prof-card h3,
.fim-results-grid-final.fim-view-compacto .fim-ent-card h3{
    font-size: 15px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

.fim-results-grid-final.fim-view-compacto .fim-prof-desc,
.fim-results-grid-final.fim-view-compacto .fim-prof-meta,
.fim-results-grid-final.fim-view-compacto .fim-ent-desc,
.fim-results-grid-final.fim-view-compacto .fim-ent-meta,
.fim-results-grid-final.fim-view-compacto .fim-ent-local,
.fim-results-grid-final.fim-view-compacto .fim-prof-rating small,
.fim-results-grid-final.fim-view-compacto .fim-ent-rating small{
    display: none !important;
}

@media (max-width:1100px){

    .fim-results-grid-final.fim-view-grelha,
.fim-results-grid-final.fim-view-compacto{
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .fim-results-grid-final.fim-view-lista .fim-prof-card,
.fim-results-grid-final.fim-view-lista .fim-ent-card{
        grid-template-columns: 1fr !important;
    }

    .fim-results-grid-final.fim-view-lista .fim-prof-rating,
.fim-results-grid-final.fim-view-lista .fim-ent-rating,
.fim-results-grid-final.fim-view-lista .fim-prof-actions,
.fim-results-grid-final.fim-view-lista .fim-ent-actions{
        grid-column: 1 !important;
        justify-content: flex-end !important;
    }
}

@media (max-width:720px){

    .fim-results-grid-final.fim-view-grelha,
.fim-results-grid-final.fim-view-compacto{
        grid-template-columns: 1fr !important;
    }
}


/* =========================================================
   Ajustes finais — alinhamento, rating, destaque e standard
========================================================= */

/* Linha final: selo/nível à esquerda e botão Ver perfil à direita */
.fim-results-grid-final .fim-ent-meta,
.fim-results-grid-final .fim-prof-meta{
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
}

.fim-results-grid-final .fim-ent-actions,
.fim-results-grid-final .fim-prof-actions{
    display: flex !important;
    justify-content: flex-end !important;
    align-items: center !important;
    margin-top: 10px !important;
}

.fim-results-grid-final.fim-view-lista .fim-ent-meta,
.fim-results-grid-final.fim-view-lista .fim-prof-meta{
    grid-column: 1 !important;
}

.fim-results-grid-final.fim-view-lista .fim-ent-actions,
.fim-results-grid-final.fim-view-lista .fim-prof-actions{
    grid-column: 2 !important;
    grid-row: auto !important;
    align-self: center !important;
    justify-content: flex-end !important;
}

.fim-results-grid-final .fim-ent-actions .is-primary,
.fim-results-grid-final .fim-prof-actions .is-primary{
    min-height: 34px !important;
    height: 34px !important;
    padding: 0 13px !important;
    border-radius: 10px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;
    white-space: nowrap !important;
}

.fim-results-grid-final .fim-ent-actions .is-primary i,
.fim-results-grid-final .fim-prof-actions .is-primary i{
    font-size: 11px !important;
}

/* Rating menor, mais elegante */
.fim-results-grid-final .fim-ent-rating,
.fim-results-grid-final .fim-prof-rating{
    gap: 6px !important;
    margin: 8px 0 !important;
    color: #f59e0b !important;
}

.fim-results-grid-final .fim-ent-rating span,
.fim-results-grid-final .fim-prof-rating span{
    font-size: 12px !important;
    letter-spacing: .01em !important;
    line-height: 1 !important;
}

.fim-results-grid-final .fim-ent-rating b,
.fim-results-grid-final .fim-prof-rating b{
    font-size: 12px !important;
    font-weight: 800 !important;
    color: #334155 !important;
}

.fim-results-grid-final .fim-ent-rating small,
.fim-results-grid-final .fim-prof-rating small{
    font-size: 11px !important;
    font-weight: 650 !important;
    color: #64748b !important;
}

/* Destaque profissional/premium melhor representado */
.fim-results-grid-final .fim-prof-card.is-featured,
.fim-results-grid-final .fim-ent-card.is-premium{
    border-color: rgba(32, 196, 168, .24) !important;
    box-shadow: 0 16px 42px rgba(15, 23, 42, .075), 0 0 0 1px rgba(32, 196, 168, .05) !important;
}

.fim-results-grid-final .fim-prof-card.is-featured::before,
.fim-results-grid-final .fim-ent-card.is-premium::before{
    content: "Destaque" !important;
    position: absolute !important;
    top: 12px !important;
    right: 12px !important;
    z-index: 3 !important;
    display: inline-flex !important;
    align-items: center !important;
    min-height: 24px !important;
    padding: 0 9px !important;
    border-radius: 999px !important;
    background: linear-gradient(135deg, #ecfdf5, #ccfbf1) !important;
    color: #0f766e !important;
    border: 1px solid rgba(32, 196, 168, .20) !important;
    font-size: 10px !important;
    font-weight: 900 !important;
    letter-spacing: .01em !important;
    box-shadow: 0 10px 22px rgba(32, 196, 168, .10) !important;
}

.fim-results-grid-final .fim-ent-card.is-standard::before{
    content: none !important;
}

/* Badge Premium/Standard das entidades mais legível */
.fim-results-grid-final .fim-ent-plan{
    min-height: 26px !important;
    padding: 0 10px !important;
    font-size: 11px !important;
    opacity: 1 !important;
    visibility: visible !important;
}

.fim-results-grid-final .fim-ent-plan.standard{
    background: #f1f5f9 !important;
    color: #064e3b !important;
    border: 1px solid #d6dee8 !important;
}

.fim-results-grid-final .fim-ent-plan.premium{
    background: linear-gradient(135deg, #fff7cc, #fbbf24) !important;
    color: #6b4300 !important;
}

/* Entidade Standard: mostrar apenas logo bloqueado, categoria, badge standard, nome, mensagem e botão */
.fim-results-grid-final .fim-ent-card.is-standard .fim-ent-rating,
.fim-results-grid-final .fim-ent-card.is-standard .fim-ent-rank,
.fim-results-grid-final .fim-ent-card.is-standard .fim-ent-meta,
.fim-results-grid-final .fim-ent-card.is-standard .fim-views-chip,
.fim-results-grid-final .fim-ent-card.is-standard .fim-rank-badge{
    display: none !important;
}

.fim-results-grid-final .fim-ent-card.is-standard .fim-ent-desc.is-standard-note{
    display: block !important;
    margin: 12px 0 0 !important;
    padding: 10px 12px !important;
    border-radius: 14px !important;
    background: #f8fafc !important;
    border: 1px solid #e5edf3 !important;
    color: #64748b !important;
    font-size: 12.5px !important;
    line-height: 1.45 !important;
    font-weight: 600 !important;
}

.fim-results-grid-final .fim-ent-card.is-standard .fim-ent-actions{
    justify-content: flex-end !important;
}

/* Visualizações sempre visíveis nos Premium e profissionais */
.fim-results-grid-final .fim-views-chip-force,
.fim-results-grid-final .fim-views-chip{
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    min-height: 27px !important;
    padding: 0 9px !important;
    border-radius: 999px !important;
    background: rgba(32, 196, 168, .12) !important;
    color: #0f766e !important;
    border: 1px solid rgba(32, 196, 168, .24) !important;
    font-size: 11px !important;
    font-weight: 850 !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* Compacto: manter botão e standard limpos */
.fim-results-grid-final.fim-view-compacto .fim-ent-card.is-standard .fim-ent-desc.is-standard-note{
    display: block !important;
    font-size: 11.5px !important;
    padding: 8px 10px !important;
}

.fim-results-grid-final.fim-view-compacto .fim-ent-actions,
.fim-results-grid-final.fim-view-compacto .fim-prof-actions{
    justify-content: flex-end !important;
}

.fim-results-grid-final.fim-view-compacto .fim-prof-actions .is-primary,
.fim-results-grid-final.fim-view-compacto .fim-ent-actions .is-primary{
    height: 32px !important;
    min-height: 32px !important;
    padding: 0 11px !important;
    font-size: 11.5px !important;
}

/* Responsivo */
@media (max-width:1100px){

    .fim-results-grid-final.fim-view-lista .fim-ent-actions,
.fim-results-grid-final.fim-view-lista .fim-prof-actions{
        grid-column: 1 !important;
        justify-content: flex-end !important;
    }
}


/* =========================================================
   CORREÇÃO REAL — camada final com classes únicas
========================================================= */
.fim-search-clean-grid.fim-view-grelha{
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 16px !important;
}

.fim-search-clean-grid.fim-view-lista{
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 14px !important;
}

.fim-search-clean-grid.fim-view-compacto{
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 12px !important;
}

.fim-search-clean-grid .fim-clean-card{
    position: relative !important;
    background: #ffffff !important;
    border: 1px solid #e5edf3 !important;
    border-radius: 18px !important;
    box-shadow: 0 12px 34px rgba(15, 23, 42, .06) !important;
    padding: 16px !important;
    overflow: hidden !important;
}

.fim-search-clean-grid .fim-prof-card-top,
.fim-search-clean-grid .fim-ent-card-top{
    display: flex !important;
    gap: 12px !important;
    align-items: center !important;
}

.fim-search-clean-grid .fim-prof-card-top img,
.fim-search-clean-grid .fim-clean-avatar,
.fim-search-clean-grid .fim-ent-logo{
    width: 68px !important;
    height: 68px !important;
    min-width: 68px !important;
    border-radius: 16px !important;
    object-fit: cover !important;
    border: 1px solid #e5edf3 !important;
    background: #fff !important;
    overflow: hidden !important;
    flex: 0 0 auto !important;
}

.fim-search-clean-grid .fim-ent-logo img{
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    border-radius: 16px !important;
}

.fim-search-clean-grid .fim-clean-avatar,
.fim-search-clean-grid .fim-ent-logo.is-locked{
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #f8fafc !important;
    color: #64748b !important;
    font-size: 24px !important;
}

.fim-search-clean-grid .fim-prof-category,
.fim-search-clean-grid .fim-ent-category,
.fim-search-clean-grid .fim-ent-plan{
    display: inline-flex !important;
    align-items: center !important;
    gap: 7px !important;
    min-height: 27px !important;
    padding: 0 10px !important;
    border-radius: 999px !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    white-space: nowrap !important;
}

.fim-search-clean-grid .fim-prof-category,
.fim-search-clean-grid .fim-ent-category{
    background: #e9fbf7 !important;
    color: #17a890 !important;
}

.fim-search-clean-grid .fim-ent-badges{
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 8px !important;
}

.fim-search-clean-grid .fim-ent-plan.premium{
    background: linear-gradient(135deg, #fff7cc, #fbbf24) !important;
    color: #6b4300 !important;
    border: 1px solid rgba(245, 158, 11, .22) !important;
}

.fim-search-clean-grid .fim-ent-plan.standard{
    background: #f1f5f9 !important;
    color: #064e3b !important;
    border: 1px solid #d6dee8 !important;
}

.fim-search-clean-grid .fim-prof-card h3,
.fim-search-clean-grid .fim-ent-card h3{
    font-size: 17px !important;
    line-height: 1.25 !important;
    margin: 7px 0 !important;
    letter-spacing: -.015em !important;
}

.fim-search-clean-grid .fim-prof-card h3 a,
.fim-search-clean-grid .fim-ent-card h3 a{
    color: #0f2135 !important;
    text-decoration: none !important;
}

.fim-search-clean-grid .fim-prof-card-top p,
.fim-search-clean-grid .fim-ent-local{
    margin: 0 !important;
    font-size: 13px !important;
    line-height: 1.5 !important;
    color: #64748b !important;
}

.fim-search-clean-grid .fim-clean-rating{
    display: flex !important;
    gap: 6px !important;
    align-items: center !important;
    margin: 8px 0 !important;
    color: #f59e0b !important;
}

.fim-search-clean-grid .fim-clean-rating span{
    font-size: 12px !important;
    line-height: 1 !important;
}

.fim-search-clean-grid .fim-clean-rating b{
    font-size: 12px !important;
    font-weight: 800 !important;
    color: #334155 !important;
}

.fim-search-clean-grid .fim-clean-rating small{
    font-size: 11px !important;
    color: #64748b !important;
    font-weight: 650 !important;
}

.fim-search-clean-grid .fim-clean-bottomline{
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    margin: 10px 0 !important;
}

.fim-search-clean-grid .fim-clean-left{
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
}

.fim-search-clean-grid .fim-clean-profile-btn{
    min-height: 34px !important;
    height: 34px !important;
    padding: 0 13px !important;
    border-radius: 10px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;
    color: #fff !important;
    background: linear-gradient(135deg, #20C4A8, #17a890) !important;
    border: 0 !important;
    text-decoration: none !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    white-space: nowrap !important;
}

.fim-search-clean-grid .fim-clean-profile-btn i{
    font-size: 11px !important;
}

.fim-search-clean-grid .fim-views-chip-force{
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    min-height: 28px !important;
    padding: 0 10px !important;
    border-radius: 999px !important;
    background: rgba(32, 196, 168, .12) !important;
    color: #0f766e !important;
    border: 1px solid rgba(32, 196, 168, .24) !important;
    font-size: 11px !important;
    font-weight: 850 !important;
    opacity: 1 !important;
    visibility: visible !important;
}

.fim-search-clean-grid .fim-prof-desc,
.fim-search-clean-grid .fim-ent-desc{
    margin: 9px 0 !important;
    font-size: 13px !important;
    line-height: 1.5 !important;
    color: #64748b !important;
}

.fim-search-clean-grid .fim-prof-meta,
.fim-search-clean-grid .fim-ent-meta{
    display: flex !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
    align-items: center !important;
}

.fim-search-clean-grid .fim-prof-meta span,
.fim-search-clean-grid .fim-ent-meta span{
    height: 34px !important;
    padding: 0 11px !important;
    border-radius: 10px !important;
    border: 1px solid #e5edf3 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    color: #102033 !important;
    font-weight: 800 !important;
    font-size: 12px !important;
    background: #fff !important;
}

/* Destaque profissional/premium elegante */
.fim-search-clean-grid .fim-clean-card.is-featured,
.fim-search-clean-grid .fim-clean-card.is-premium{
    border-color: rgba(32, 196, 168, .24) !important;
    box-shadow: 0 16px 42px rgba(15, 23, 42, .075) !important;
}

.fim-search-clean-grid .fim-clean-card.is-featured::before,
.fim-search-clean-grid .fim-clean-card.is-premium::before{
    content: "Destaque" !important;
    position: absolute !important;
    top: 12px !important;
    right: 12px !important;
    min-height: 24px !important;
    padding: 0 9px !important;
    display: inline-flex !important;
    align-items: center !important;
    border-radius: 999px !important;
    background: #ecfdf5 !important;
    color: #0f766e !important;
    border: 1px solid rgba(32, 196, 168, .20) !important;
    font-size: 10px !important;
    font-weight: 900 !important;
}

/* Entidade Standard: só essencial */
.fim-search-clean-grid .fim-ent-card.is-standard .fim-clean-rating,
.fim-search-clean-grid .fim-ent-card.is-standard .fim-clean-left,
.fim-search-clean-grid .fim-ent-card.is-standard .fim-ent-meta,
.fim-search-clean-grid .fim-ent-card.is-standard .fim-ent-desc,
.fim-search-clean-grid .fim-ent-card.is-standard .fim-views-chip-force,
.fim-search-clean-grid .fim-ent-card.is-standard .fim-rank-badge{
    display: none !important;
}

.fim-search-clean-grid .fim-ent-standard-note{
    display: block !important;
    margin: 12px 0 !important;
    padding: 10px 12px !important;
    border-radius: 14px !important;
    background: #f8fafc !important;
    border: 1px solid #e5edf3 !important;
    color: #64748b !important;
    font-size: 12.5px !important;
    line-height: 1.45 !important;
    font-weight: 600 !important;
}

.fim-search-clean-grid .fim-clean-bottomline.is-standard-only{
    justify-content: flex-end !important;
}

/* Lista */
.fim-search-clean-grid.fim-view-lista .fim-clean-card{
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 10px 18px !important;
}

.fim-search-clean-grid.fim-view-lista .fim-prof-card-top,
.fim-search-clean-grid.fim-view-lista .fim-ent-card-top{
    grid-column: 1 !important;
}

.fim-search-clean-grid.fim-view-lista .fim-clean-rating{
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-content: flex-end !important;
    min-width: 160px !important;
}

.fim-search-clean-grid.fim-view-lista .fim-clean-bottomline,
.fim-search-clean-grid.fim-view-lista .fim-prof-desc,
.fim-search-clean-grid.fim-view-lista .fim-ent-desc,
.fim-search-clean-grid.fim-view-lista .fim-prof-meta,
.fim-search-clean-grid.fim-view-lista .fim-ent-meta{
    grid-column: 1 / -1 !important;
}

/* Compacto */
.fim-search-clean-grid.fim-view-compacto .fim-clean-card{
    padding: 13px !important;
}

.fim-search-clean-grid.fim-view-compacto .fim-prof-card-top img,
.fim-search-clean-grid.fim-view-compacto .fim-clean-avatar,
.fim-search-clean-grid.fim-view-compacto .fim-ent-logo{
    width: 58px !important;
    height: 58px !important;
    min-width: 58px !important;
    border-radius: 14px !important;
}

.fim-search-clean-grid.fim-view-compacto .fim-prof-card h3,
.fim-search-clean-grid.fim-view-compacto .fim-ent-card h3{
    font-size: 15px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

.fim-search-clean-grid.fim-view-compacto .fim-prof-desc,
.fim-search-clean-grid.fim-view-compacto .fim-ent-desc,
.fim-search-clean-grid.fim-view-compacto .fim-prof-meta,
.fim-search-clean-grid.fim-view-compacto .fim-ent-meta,
.fim-search-clean-grid.fim-view-compacto .fim-clean-rating small,
.fim-search-clean-grid.fim-view-compacto .fim-ent-local{
    display: none !important;
}

.fim-search-clean-grid.fim-view-compacto .fim-clean-bottomline{
    align-items: center !important;
    margin: 8px 0 0 !important;
}

.fim-search-clean-grid.fim-view-compacto .fim-clean-profile-btn{
    height: 32px !important;
    min-height: 32px !important;
    padding: 0 11px !important;
    font-size: 11.5px !important;
}

@media (max-width:1100px){

    .fim-search-clean-grid.fim-view-grelha,
.fim-search-clean-grid.fim-view-compacto{
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .fim-search-clean-grid.fim-view-lista .fim-clean-card{
        grid-template-columns: 1fr !important;
    }

    .fim-search-clean-grid.fim-view-lista .fim-clean-rating,
.fim-search-clean-grid.fim-view-lista .fim-clean-bottomline{
        grid-column: 1 !important;
    }
}

@media (max-width:720px){

    .fim-search-clean-grid.fim-view-grelha,
.fim-search-clean-grid.fim-view-compacto{
        grid-template-columns: 1fr !important;
    }
}


/* =========================================================
   Ajuste final: botão alinhado com badge pós-descrição e destaque premium
========================================================= */
.fim-search-clean-grid .fim-clean-rankline{
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin: 9px 0 6px !important;
}

.fim-search-clean-grid .fim-clean-footerline{
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    margin-top: 11px !important;
}

.fim-search-clean-grid .fim-clean-footer-left{
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    min-width: 0 !important;
}

.fim-search-clean-grid .fim-clean-level-badge{
    min-height: 34px !important;
    padding: 0 11px !important;
    border-radius: 10px !important;
    border: 1px solid #e5edf3 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    color: #102033 !important;
    font-weight: 800 !important;
    font-size: 12px !important;
    background: #fff !important;
}

.fim-search-clean-grid .fim-clean-profile-btn{
    margin-left: auto !important;
    flex: 0 0 auto !important;
}

.fim-search-clean-grid .fim-ent-meta,
.fim-search-clean-grid .fim-prof-meta,
.fim-search-clean-grid .fim-ent-actions,
.fim-search-clean-grid .fim-prof-actions,
.fim-search-clean-grid .fim-clean-bottomline{
    display: none !important;
}

/* Destaque premium: selo lateral elegante em vez de etiqueta simples */
.fim-search-clean-grid .fim-clean-card.is-featured::before,
.fim-search-clean-grid .fim-clean-card.is-premium::before{
    content: "" !important;
    position: absolute !important;
    inset: auto !important;
    top: 0 !important;
    right: 0 !important;
    width: 72px !important;
    height: 72px !important;
    background: linear-gradient(135deg, rgba(32, 196, 168, .98), rgba(23, 168, 144, .94)) !important;
    clip-path: polygon(100% 0, 0 0, 100% 100%) !important;
    border-radius: 0 18px 0 0 !important;
    box-shadow: none !important;
    border: 0 !important;
    z-index: 2 !important;
}

.fim-search-clean-grid .fim-clean-card.is-featured::after,
.fim-search-clean-grid .fim-clean-card.is-premium::after{
    content: "★" !important;
    position: absolute !important;
    top: 10px !important;
    right: 12px !important;
    width: 24px !important;
    height: 24px !important;
    border-radius: 999px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: rgba(255, 255, 255, .22) !important;
    border: 1px solid rgba(255, 255, 255, .32) !important;
    color: #fff !important;
    font-size: 11px !important;
    font-weight: 900 !important;
    z-index: 3 !important;
    box-shadow: 0 10px 22px rgba(0, 0, 0, .10) !important;
}

.fim-search-clean-grid .fim-clean-card.is-featured,
.fim-search-clean-grid .fim-clean-card.is-premium{
    border-color: rgba(32, 196, 168, .24) !important;
    box-shadow: 0 16px 42px rgba(15, 23, 42, .075), 0 0 0 1px rgba(32, 196, 168, .04) !important;
}

.fim-search-clean-grid .fim-clean-card.is-featured .fim-prof-card-top,
.fim-search-clean-grid .fim-clean-card.is-premium .fim-ent-card-top{
    padding-right: 34px !important;
}

/* Standard continua sem destaque */
.fim-search-clean-grid .fim-ent-card.is-standard::before,
.fim-search-clean-grid .fim-ent-card.is-standard::after{
    content: none !important;
}

/* Compacto mantém alinhamento sem apertar */
.fim-search-clean-grid.fim-view-compacto .fim-clean-footerline{
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 8px !important;
}

.fim-search-clean-grid.fim-view-compacto .fim-clean-level-badge{
    min-height: 30px !important;
    padding: 0 9px !important;
    font-size: 11px !important;
}

.fim-search-clean-grid.fim-view-compacto .fim-clean-rankline .fim-rank-badge small,
.fim-search-clean-grid.fim-view-compacto .fim-clean-rankline .fim-views-chip{
    display: none !important;
}

@media (max-width:720px){
    .fim-search-clean-grid .fim-clean-footerline{
        align-items: flex-start !important;
        flex-direction: column !important;
    }

    .fim-search-clean-grid .fim-clean-profile-btn{
        margin-left: 0 !important;
    }
}


/* =========================================================
   Ajuste final — sem badge repetido, botão à direita e destaque premium
========================================================= */

/* Footer simples: apenas botão alinhado à direita */
.fim-search-clean-grid .fim-clean-footerline,
.fim-search-clean-grid .fim-clean-footerline.is-standard-only{
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 0 !important;
    margin-top: 12px !important;
}

.fim-search-clean-grid .fim-clean-footer-left,
.fim-search-clean-grid .fim-clean-level-badge{
    display: none !important;
}

.fim-search-clean-grid .fim-clean-profile-btn{
    margin-left: auto !important;
    flex: 0 0 auto !important;
}

/* Mensagem standard mais refinada */
.fim-search-clean-grid .fim-ent-standard-note{
    display: block !important;
    margin: 12px 0 !important;
    padding: 11px 13px !important;
    border-radius: 15px !important;
    background: linear-gradient(180deg, #f8fafc, #ffffff) !important;
    border: 1px solid #e5edf3 !important;
    color: #64748b !important;
    font-size: 12.5px !important;
    line-height: 1.45 !important;
    font-weight: 600 !important;
}

/* Neutralizar destaque antigo em canto triangular */
.fim-search-clean-grid .fim-clean-card.is-featured::before,
.fim-search-clean-grid .fim-clean-card.is-premium::before{
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    width: 4px !important;
    height: auto !important;
    border-radius: 18px 0 0 18px !important;
    clip-path: none !important;
    background: linear-gradient(180deg, #20C4A8, #17a890, #8fffe8) !important;
    box-shadow: 0 0 24px rgba(32, 196, 168, .24) !important;
    border: 0 !important;
    z-index: 2 !important;
}

/* Novo destaque: selo premium discreto e corporativo */
.fim-search-clean-grid .fim-clean-card.is-featured::after,
.fim-search-clean-grid .fim-clean-card.is-premium::after{
    content: "Destaque Premium" !important;
    position: absolute !important;
    top: 12px !important;
    right: 12px !important;
    z-index: 4 !important;
    min-height: 27px !important;
    padding: 0 11px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, .96), rgba(236, 253, 245, .94)) !important;
    color: #0f766e !important;
    border: 1px solid rgba(32, 196, 168, .22) !important;
    box-shadow: 0 12px 28px rgba(15, 23, 42, .08), inset 0 1px 0 rgba(255, 255, 255, .85) !important;
    font-size: 10.5px !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    letter-spacing: .01em !important;
}

.fim-search-clean-grid .fim-clean-card.is-featured,
.fim-search-clean-grid .fim-clean-card.is-premium{
    border-color: rgba(32, 196, 168, .22) !important;
    box-shadow: 0 16px 42px rgba(15, 23, 42, .075), 0 0 0 1px rgba(32, 196, 168, .045) !important;
}

.fim-search-clean-grid .fim-clean-card.is-featured .fim-prof-card-top,
.fim-search-clean-grid .fim-clean-card.is-premium .fim-ent-card-top{
    padding-right: 132px !important;
}

/* Em compacto, o selo fica menor para não esmagar o card */
.fim-search-clean-grid.fim-view-compacto .fim-clean-card.is-featured::after,
.fim-search-clean-grid.fim-view-compacto .fim-clean-card.is-premium::after{
    content: "Destaque" !important;
    min-height: 23px !important;
    padding: 0 8px !important;
    font-size: 9.5px !important;
    top: 10px !important;
    right: 10px !important;
}

.fim-search-clean-grid.fim-view-compacto .fim-clean-card.is-featured .fim-prof-card-top,
.fim-search-clean-grid.fim-view-compacto .fim-clean-card.is-premium .fim-ent-card-top{
    padding-right: 72px !important;
}

/* Standard nunca recebe destaque */
.fim-search-clean-grid .fim-ent-card.is-standard::before,
.fim-search-clean-grid .fim-ent-card.is-standard::after,
.fim-search-clean-grid .fim-prof-card.is-standard-search::before,
.fim-search-clean-grid .fim-prof-card.is-standard-search::after{
    content: none !important;
    display: none !important;
}


/* =========================================================
   Refinamento visual — destaque glass shine + card Standard Premium
========================================================= */

/* Destaque: glass gradient com shine animado */
.fim-search-clean-grid .fim-clean-card.is-featured::before,
.fim-search-clean-grid .fim-clean-card.is-premium::before{
    content: "" !important;
    position: absolute !important;
    inset: 0 auto 0 0 !important;
    width: 5px !important;
    height: auto !important;
    border-radius: 18px 0 0 18px !important;
    background:
        linear-gradient(180deg, #fbbf24 0%, #20C4A8 48%, #17a890 100%) !important;
    box-shadow:
        0 0 22px rgba(32, 196, 168, .24),
        0 0 18px rgba(251, 191, 36, .14) !important;
    clip-path: none !important;
    border: 0 !important;
    z-index: 2 !important;
}

.fim-search-clean-grid .fim-clean-card.is-featured::after,
.fim-search-clean-grid .fim-clean-card.is-premium::after{
    content: "Destaque Premium" !important;
    position: absolute !important;
    top: 12px !important;
    right: 12px !important;
    z-index: 4 !important;
    min-height: 28px !important;
    padding: 0 12px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
    color: #064e3b !important;
    border: 1px solid rgba(255, 255, 255, .58) !important;
    background:
        linear-gradient(115deg,
            rgba(255, 255, 255, .88) 0%,
            rgba(236, 253, 245, .82) 22%,
            rgba(32, 196, 168, .22) 45%,
            rgba(251, 191, 36, .30) 64%,
            rgba(255, 255, 255, .88) 100%) !important;
    background-size: 240% 100% !important;
    box-shadow:
        0 14px 30px rgba(15, 23, 42, .10),
        inset 0 1px 0 rgba(255, 255, 255, .85),
        inset 0 -1px 0 rgba(32, 196, 168, .10) !important;
    backdrop-filter: blur(14px) !important;
    -webkit-backdrop-filter: blur(14px) !important;
    font-size: 10.5px !important;
    line-height: 1 !important;
    font-weight: 950 !important;
    letter-spacing: .01em !important;
    animation: fimDestaqueGlassShine 3.8s ease-in-out infinite !important;
}

@keyframes fimDestaqueGlassShine{
    0%{
        background-position: 0% 50%;
        filter: saturate(1)
    }

    45%{
        background-position: 100% 50%;
        filter: saturate(1.08)
    }

    100%{
        background-position: 0% 50%;
        filter: saturate(1)
    }
}

.fim-search-clean-grid .fim-clean-card.is-featured:hover::after,
.fim-search-clean-grid .fim-clean-card.is-premium:hover::after{
    transform: translateY(-1px) !important;
    box-shadow:
        0 18px 36px rgba(15, 23, 42, .12),
        0 0 22px rgba(32, 196, 168, .15),
        inset 0 1px 0 rgba(255, 255, 255, .9) !important;
}

/* Mensagem Standard em formato card premium, com coroa + Premium */
.fim-search-clean-grid .fim-ent-standard-note{
    position: relative !important;
    display: block !important;
    margin: 13px 0 12px !important;
    padding: 18px 20px !important;
    border-radius: 24px !important;
    background:
        radial-gradient(circle at 12% 8%, rgba(251, 191, 36, .12), transparent 32%),
        linear-gradient(180deg, rgba(255, 251, 235, .92), rgba(255, 255, 255, .96)) !important;
    border: 1px solid rgba(251, 191, 36, .42) !important;
    box-shadow:
        0 16px 36px rgba(15, 23, 42, .06),
        inset 0 1px 0 rgba(255, 255, 255, .84) !important;
    overflow: hidden !important;
    color: #064e3b !important;
}

.fim-search-clean-grid .fim-ent-standard-note::before{
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    left: -45% !important;
    width: 35% !important;
    height: 100% !important;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .55), transparent) !important;
    transform: skewX(-22deg) !important;
    animation: fimStandardNoteShine 4.8s ease-in-out infinite !important;
    pointer-events: none !important;
}

@keyframes fimStandardNoteShine{

    0%,
50%{
        left: -45%;
        opacity: 0
    }

    62%{
        opacity: .9
    }

    100%{
        left: 115%;
        opacity: 0
    }
}

.fim-search-clean-grid .fim-ent-standard-note-head{
    position: relative !important;
    z-index: 2 !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    margin-bottom: 9px !important;
}

.fim-search-clean-grid .fim-ent-standard-note-head i{
    width: 28px !important;
    height: 28px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 11px !important;
    color: #d97706 !important;
    background: rgba(251, 191, 36, .16) !important;
    border: 1px solid rgba(251, 191, 36, .28) !important;
    font-size: 13px !important;
}

.fim-search-clean-grid .fim-ent-standard-note-head strong{
    color: #8a3f10 !important;
    font-size: 15px !important;
    line-height: 1.2 !important;
    font-weight: 900 !important;
    letter-spacing: -.015em !important;
}

.fim-search-clean-grid .fim-ent-standard-note>span{
    position: relative !important;
    z-index: 2 !important;
    display: block !important;
    color: #064e3b !important;
    font-size: 13px !important;
    line-height: 1.55 !important;
    font-weight: 500 !important;
}

/* Compacto: manter card Standard elegante sem ficar pesado */
.fim-search-clean-grid.fim-view-compacto .fim-ent-standard-note{
    padding: 12px 13px !important;
    border-radius: 18px !important;
    margin: 9px 0 !important;
}

.fim-search-clean-grid.fim-view-compacto .fim-ent-standard-note-head{
    margin-bottom: 6px !important;
    gap: 7px !important;
}

.fim-search-clean-grid.fim-view-compacto .fim-ent-standard-note-head i{
    width: 23px !important;
    height: 23px !important;
    border-radius: 9px !important;
    font-size: 11px !important;
}

.fim-search-clean-grid.fim-view-compacto .fim-ent-standard-note-head strong{
    font-size: 13px !important;
}

.fim-search-clean-grid.fim-view-compacto .fim-ent-standard-note>span{
    font-size: 11.5px !important;
    line-height: 1.45 !important;
}


/* =========================================================
   Destaque Premium — canto superior direito, glass + shine
   Ajuste isolado: não altera estrutura dos cards
========================================================= */

/* permite o selo respirar fora do card sem cortar */
.fim-search-clean-grid .fim-clean-card.is-featured,
.fim-search-clean-grid .fim-clean-card.is-premium{
    position: relative !important;
    overflow: visible !important;
    border-color: rgba(32, 196, 168, .24) !important;
    box-shadow:
        0 16px 42px rgba(15, 23, 42, .075),
        0 0 0 1px rgba(32, 196, 168, .045) !important;
}

/* elimina versões anteriores do destaque */
.fim-search-clean-grid .fim-clean-card.is-featured::before,
.fim-search-clean-grid .fim-clean-card.is-premium::before{
    content: "" !important;
    position: absolute !important;
    top: -9px !important;
    right: 13px !important;
    width: 132px !important;
    height: 34px !important;
    border-radius: 999px !important;
    background:
        radial-gradient(circle at 18% 20%, rgba(255, 255, 255, .75), transparent 28%),
        linear-gradient(135deg, rgba(255, 255, 255, .82), rgba(32, 196, 168, .22) 42%, rgba(251, 191, 36, .24)) !important;
    filter: blur(10px) !important;
    opacity: .72 !important;
    z-index: 4 !important;
    pointer-events: none !important;
    clip-path: none !important;
    border: 0 !important;
    display: block !important;
}

/* selo final */
.fim-search-clean-grid .fim-clean-card.is-featured::after,
.fim-search-clean-grid .fim-clean-card.is-premium::after{
    content: "★ Destaque" !important;
    position: absolute !important;
    top: -13px !important;
    right: 14px !important;
    z-index: 6 !important;
    height: 32px !important;
    min-height: 32px !important;
    padding: 0 13px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;
    border-radius: 999px !important;
    color: #ffffff !important;
    border: 1px solid rgba(255, 255, 255, .34) !important;
    background:
        linear-gradient(115deg,
            #0f766e 0%,
            #17a890 28%,
            #20C4A8 48%,
            #f5c542 72%,
            #17a890 100%) !important;
    background-size: 260% 100% !important;
    box-shadow:
        0 14px 30px rgba(32, 196, 168, .24),
        0 4px 12px rgba(15, 23, 42, .10),
        inset 0 1px 0 rgba(255, 255, 255, .34),
        inset 0 -1px 0 rgba(0, 0, 0, .08) !important;
    backdrop-filter: blur(14px) !important;
    -webkit-backdrop-filter: blur(14px) !important;
    font-size: 11px !important;
    line-height: 1 !important;
    font-weight: 950 !important;
    letter-spacing: .01em !important;
    white-space: nowrap !important;
    animation: fimDestaqueCantoShine 4.2s ease-in-out infinite !important;
    transform: translateZ(0) !important;
    pointer-events: none !important;
}

/* brilho suave, parecido com botão premium */
@keyframes fimDestaqueCantoShine{
    0%{
        background-position: 0% 50%;
        box-shadow:
            0 14px 30px rgba(32, 196, 168, .20),
            0 4px 12px rgba(15, 23, 42, .10),
            inset 0 1px 0 rgba(255, 255, 255, .30);
    }

    45%{
        background-position: 100% 50%;
        box-shadow:
            0 16px 36px rgba(32, 196, 168, .30),
            0 6px 15px rgba(245, 197, 66, .14),
            inset 0 1px 0 rgba(255, 255, 255, .42);
    }

    100%{
        background-position: 0% 50%;
        box-shadow:
            0 14px 30px rgba(32, 196, 168, .20),
            0 4px 12px rgba(15, 23, 42, .10),
            inset 0 1px 0 rgba(255, 255, 255, .30);
    }
}

/* compacta: selo menor para não interferir */
.fim-search-clean-grid.fim-view-compacto .fim-clean-card.is-featured::before,
.fim-search-clean-grid.fim-view-compacto .fim-clean-card.is-premium::before{
    top: -7px !important;
    right: 10px !important;
    width: 96px !important;
    height: 28px !important;
    filter: blur(8px) !important;
}

.fim-search-clean-grid.fim-view-compacto .fim-clean-card.is-featured::after,
.fim-search-clean-grid.fim-view-compacto .fim-clean-card.is-premium::after{
    content: "★ Destaque" !important;
    top: -10px !important;
    right: 10px !important;
    height: 27px !important;
    min-height: 27px !important;
    padding: 0 10px !important;
    font-size: 9.5px !important;
}

/* standard nunca recebe destaque */
.fim-search-clean-grid .fim-ent-card.is-standard::before,
.fim-search-clean-grid .fim-ent-card.is-standard::after,
.fim-search-clean-grid .fim-prof-card.is-standard-search::before,
.fim-search-clean-grid .fim-prof-card.is-standard-search::after{
    content: none !important;
    display: none !important;
}


/* Fallback: destaque premium como elemento real */
.fim-premium-corner-badge{
    position: absolute;
    top: 12px;
    right: 12px;
    z-index: 20
}


/* =========================================================
   Destaque em fita ao lado do botão Ver perfil
========================================================= */

/* garante que o destaque antigo no canto não aparece */
.fim-premium-corner-badge{
    display: none !important;
}

/* linha inferior: fita à esquerda, botão à direita */
.fim-search-clean-grid .fim-clean-footerline{
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    margin-top: 12px !important;
}

.fim-search-clean-grid .fim-clean-footerline.is-standard-only{
    justify-content: flex-end !important;
}

.fim-search-clean-grid .fim-footer-ribbon-badge{
    position: relative !important;
    min-height: 32px !important;
    padding: 0 13px 0 16px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 7px !important;
    border-radius: 11px 999px 999px 11px !important;
    color: #064e3b !important;
    background:
        linear-gradient(135deg, #e2e8f0 0%, #f8fafc 32%, #cbd5e1 62%, #94a3b8 100%) !important;
    background-size: 220% 100% !important;
    border: 1px solid rgba(245, 208, 110, .56) !important;
    box-shadow:
        0 12px 28px rgba(203, 145, 29, .22),
        inset 0 1px 0 rgba(255, 255, 255, .30) !important;
    font-size: 11px !important;
    line-height: 1 !important;
    font-weight: 950 !important;
    letter-spacing: .01em !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    animation: fimFooterRibbonShine 4s ease-in-out infinite !important;
}

.fim-search-clean-grid .fim-footer-ribbon-badge::before{
    content: "" !important;
    position: absolute !important;
    left: -48% !important;
    top: 0 !important;
    width: 38% !important;
    height: 100% !important;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .55), transparent) !important;
    transform: skewX(-22deg) !important;
    animation: fimFooterRibbonSweep 3.6s ease-in-out infinite !important;
}

.fim-search-clean-grid .fim-footer-ribbon-badge::after{
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    top: 50% !important;
    width: 6px !important;
    height: 6px !important;
    border-radius: 999px !important;
    background: rgba(255, 248, 220, .92) !important;
    transform: translate(5px, -50%) !important;
    box-shadow: 0 0 10px rgba(255, 241, 195, .55) !important;
}

.fim-search-clean-grid .fim-footer-ribbon-badge i{
    position: relative !important;
    z-index: 2 !important;
    font-size: 9px !important;
    color: #7a4b05 !important;
}

.fim-search-clean-grid .fim-footer-ribbon-badge span{
    color: #064e3b !important;
}

.fim-search-clean-grid .fim-footer-ribbon-badge{
    z-index: 1 !important;
}

.fim-search-clean-grid .fim-footer-ribbon-badge>*{
    position: relative !important;
    z-index: 2 !important;
}

@keyframes fimFooterRibbonShine{
    0%{
        background-position: 0% 50%
    }

    45%{
        background-position: 100% 50%
    }

    100%{
        background-position: 0% 50%
    }
}

@keyframes fimFooterRibbonSweep{

    0%,
45%{
        left: -48%;
        opacity: 0
    }

    58%{
        opacity: .9
    }

    100%{
        left: 120%;
        opacity: 0
    }
}

.fim-search-clean-grid .fim-clean-profile-btn{
    margin-left: auto !important;
}

/* compacto: fita menor e mais discreta */
.fim-search-clean-grid.fim-view-compacto .fim-footer-ribbon-badge{
    min-height: 28px !important;
    padding: 0 10px 0 13px !important;
    font-size: 10px !important;
}

.fim-search-clean-grid.fim-view-compacto .fim-footer-ribbon-badge::after{
    width: 5px !important;
    height: 5px !important;
    transform: translate(4px, -50%) !important;
}

@media (max-width:520px){
    .fim-search-clean-grid .fim-clean-footerline{
        align-items: flex-start !important;
        flex-direction: column !important;
    }

    .fim-search-clean-grid .fim-clean-profile-btn{
        margin-left: 0 !important;
    }
}


/* Fallback final — destaque apenas em fita no footer */
.fim-search-clean-grid .fim-clean-card.is-featured::before,
.fim-search-clean-grid .fim-clean-card.is-featured::after,
.fim-search-clean-grid .fim-clean-card.is-premium::before,
.fim-search-clean-grid .fim-clean-card.is-premium::after{
    content: none !important;
    display: none !important;
}

.fim-premium-corner-badge{
    display: none !important;
}


/* =========================================================
   Profissionais — destaque aprovado em fita
   Aplica o mesmo badge aprovado das pesquisas.
========================================================= */

/* remove destaque antigo baseado em pseudo-elementos/cantos */
.fim-prof-grid .fim-prof-card.is-featured::before,
.fim-prof-grid .fim-prof-card.is-featured::after,
.fim-prof-card.is-featured::before,
.fim-prof-card.is-featured::after{
    content: none !important;
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    background: none !important;
    box-shadow: none !important;
    clip-path: none !important;
}

/* mantém card premium sem interferências visuais antigas */
.fim-prof-grid .fim-prof-card.is-featured{
    border-color: rgba(32, 196, 168, .20) !important;
    box-shadow: 0 14px 38px rgba(15, 23, 42, .07) !important;
}

/* ações em linha: fita à esquerda, botões à direita */
.fim-prof-actions.fim-prof-actions-featured{
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
    margin-top: 12px !important;
}

.fim-prof-actions.fim-prof-actions-featured .fim-footer-ribbon-badge{
    margin-right: auto !important;
}

/* badge aprovado: prateado, contraste refinado, texto verde escuro */
.fim-prof-grid .fim-footer-ribbon-badge{
    position: relative !important;
    min-height: 31px !important;
    max-height: 31px !important;
    padding: 0 13px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;
    border-radius: 999px !important;
    overflow: hidden !important;
    color: #064e3b !important;
    background: linear-gradient(135deg, rgba(226, 232, 240, .98) 0%, rgba(248, 250, 252, .98) 32%, rgba(203, 213, 225, .98) 62%, rgba(148, 163, 184, .96) 100%) !important;
    border: 1px solid rgba(148, 163, 184, .55) !important;
    box-shadow: 0 12px 26px rgba(100, 116, 139, .16), inset 0 1px 0 rgba(255, 255, 255, .80), inset 0 -1px 0 rgba(100, 116, 139, .18) !important;
    font-size: 11.5px !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    letter-spacing: -.005em !important;
    white-space: nowrap !important;
    text-decoration: none !important;
}

.fim-prof-grid .fim-footer-ribbon-badge::before{
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    left: -55% !important;
    width: 42% !important;
    height: 100% !important;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .72), transparent) !important;
    transform: skewX(-22deg) !important;
    animation: fimRibbonCleanSweep 4.2s ease-in-out infinite !important;
    pointer-events: none !important;
}

.fim-prof-grid .fim-footer-ribbon-badge i{
    position: relative !important;
    z-index: 2 !important;
    width: 19px !important;
    height: 19px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
    color: #064e3b !important;
    background: linear-gradient(135deg, #ffffff, #cbd5e1) !important;
    font-size: 8px !important;
    box-shadow: 0 8px 14px rgba(100, 116, 139, .12) !important;
}

.fim-prof-grid .fim-footer-ribbon-badge span{
    position: relative !important;
    z-index: 2 !important;
    color: #064e3b !important;
}

/* compacto: badge menor, sem quebrar o card */
.fim-prof-grid.fim-view-compacto .fim-footer-ribbon-badge{
    min-height: 27px !important;
    max-height: 27px !important;
    padding: 0 10px !important;
    gap: 5px !important;
    font-size: 10px !important;
}

.fim-prof-grid.fim-view-compacto .fim-footer-ribbon-badge i{
    width: 16px !important;
    height: 16px !important;
    font-size: 7px !important;
}


/* Override final: remove destaque antigo dos profissionais */
.fim-prof-card.is-featured:before,
.fim-prof-card.is-featured::before,
.fim-prof-card.is-featured:after,
.fim-prof-card.is-featured::after{
    content: none !important;
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    background: none !important;
    border: 0 !important;
    box-shadow: none !important;
    transform: none !important;
    clip-path: none !important;
}


/* =========================================================
   Perfil profissional — botões de ação alinhados ao perfil de entidades
   Escopo: profissional.php / hero do perfil profissional
========================================================= */


@keyframes fimProfessionalActionShine{
    0%{
        left: -42%;
        opacity: 0
    }

    20%{
        opacity: .95
    }

    100%{
        left: 118%;
        opacity: 0
    }
}


/* Fallback — profissional.php botões e pontuação */


/* Ajuste isolado: score profissional branco, sem afectar badges/selos */


/* Fallback — card direito premium do perfil profissional */


/* Fallback — rating inline do card direito profissional */


/* =========================================================
   Hero Alignment Patch — alinhado ao novo header
   Escopo: homepage V21
========================================================= */
.fim-home-v21 .fim-home-hero-v21{
    min-height:580px!important;
}
.fim-home-v21 .fim-hero-v21-grid{
    align-items:center!important;
    gap:30px!important;
    padding:42px 0 54px!important;
}
.fim-home-v21 .fim-v21-kicker{
    min-height:30px!important;
    padding:0 11px!important;
    border-radius:999px!important;
    font-size:12px!important;
    font-weight:850!important;
    background:rgba(255,255,255,.11)!important;
    border:1px solid rgba(255,255,255,.16)!important;
}
.fim-home-v21 .fim-hero-v21-copy h1{
    margin:14px 0 12px!important;
    font-size:clamp(34px,4.4vw,50px)!important;
    line-height:1.035!important;
    font-weight:650!important;
    letter-spacing:-.018em!important;
}
.fim-home-v21 .fim-hero-v21-copy p{
    margin:0 0 18px!important;
    font-size:15px!important;
    line-height:1.58!important;
    font-weight:450!important;
    letter-spacing:.015em!important;
    color:#dffdf8!important;
}
.fim-home-v21 .fim-search-v21{
    max-width:610px!important;
    padding:10px!important;
    border-radius:25px!important;
    background:rgba(255,255,255,.13)!important;
    border:1px solid rgba(255,255,255,.18)!important;
    backdrop-filter:blur(16px)!important;
    -webkit-backdrop-filter:blur(16px)!important;
    box-shadow:0 18px 46px rgba(0,0,0,.16), inset 0 1px 0 rgba(255,255,255,.08)!important;
}
.fim-home-v21 .fim-search-v21-tabs{
    gap:6px!important;
    margin-bottom:8px!important;
}
.fim-home-v21 .fim-search-v21-tabs span{
    min-height:28px!important;
    padding:0 10px!important;
    border-radius:999px!important;
    font-size:11.5px!important;
    font-weight:850!important;
    background:rgba(255,255,255,.095)!important;
    border:1px solid rgba(255,255,255,.14)!important;
}
.fim-home-v21 .fim-search-v21-tabs input:checked + span{
    color:#0f766e!important;
    background:rgba(255,255,255,.97)!important;
    box-shadow:0 8px 18px rgba(15,23,42,.08)!important;
}
.fim-home-v21 .fim-search-v21-row{
    grid-template-columns:minmax(0,1.14fr) minmax(168px,.58fr) 118px!important;
    gap:8px!important;
}
.fim-home-v21 .fim-search-v21-field{
    min-height:43px!important;
    height:43px!important;
    gap:8px!important;
    padding:0 12px!important;
    border-radius:999px!important;
    background:rgba(255,255,255,.96)!important;
    border:1px solid rgba(255,255,255,.28)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.86), 0 8px 18px rgba(15,23,42,.055)!important;
}
.fim-home-v21 .fim-search-v21-field i{
    color:#17a890!important;
    font-size:12px!important;
}
.fim-home-v21 .fim-search-v21-field input{
    font-size:13px!important;
    font-weight:650!important;
    letter-spacing:-.005em!important;
}
.fim-home-v21 .fim-search-v21-submit{
    min-height:43px!important;
    height:43px!important;
    border-radius:999px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:7px!important;
    font-size:12.5px!important;
    font-weight:900!important;
    box-shadow:0 11px 24px rgba(32,196,168,.22)!important;
}
.fim-home-v21 .fim-search-v21-submit i{
    font-size:12px!important;
}
.fim-home-v21 .fim-hero-v21-proof{
    margin-top:15px!important;
    gap:7px!important;
}
.fim-home-v21 .fim-hero-v21-proof span{
    min-height:29px!important;
    padding:0 10px!important;
    border-radius:999px!important;
    font-size:11.5px!important;
    background:rgba(255,255,255,.09)!important;
    border:1px solid rgba(255,255,255,.13)!important;
}
.fim-home-v21 .fim-hero-v21-proof span i{
    color:#9ff8eb!important;
    font-size:11px!important;
}
.fim-home-v21 .fim-hero-v21-proof span strong{
    color:#fff!important;
    font-size:11.5px!important;
    line-height:1!important;
    font-weight:850!important;
}
.fim-home-v21 .fim-hero-v21-panel{
    margin-top:118px!important;
    padding:14px!important;
    border-radius:26px!important;
    background:rgba(255,255,255,.12)!important;
    border:1px solid rgba(255,255,255,.16)!important;
    backdrop-filter:blur(16px)!important;
    -webkit-backdrop-filter:blur(16px)!important;
    box-shadow:0 18px 46px rgba(0,0,0,.16)!important;
}
.fim-home-v21 .fim-hero-v21-panel-head{
    margin-bottom:10px!important;
    font-size:12.5px!important;
    font-weight:750!important;
}
.fim-home-v21 .fim-hero-v21-panel-head i{
    width:33px!important;
    height:33px!important;
    border-radius:13px!important;
}
.fim-home-v21 .fim-hero-v21-mini-card{
    padding:10px!important;
    border-radius:17px!important;
    margin-top:8px!important;
}
.fim-home-v21 .fim-hero-v21-mini-card .mini-logo{
    width:42px!important;
    height:42px!important;
    border-radius:14px!important;
}
@media (max-width:980px){
    .fim-home-v21 .fim-home-hero-v21{
        min-height:auto!important;
    }
    .fim-home-v21 .fim-hero-v21-grid{
        grid-template-columns:1fr!important;
        padding:38px 0 48px!important;
    }
    .fim-home-v21 .fim-hero-v21-panel{
        margin-top:0!important;
    }
}
@media (max-width:680px){
    .fim-home-v21 .fim-search-v21-row{
        grid-template-columns:1fr!important;
    }
    .fim-home-v21 .fim-search-v21-field,
.fim-home-v21 .fim-search-v21-submit{
        height:42px!important;
        min-height:42px!important;
    }
}


/* =========================================================
   Home Body Premium Alignment — corpo alinhado ao header/hero
========================================================= */
.fim-home-v21{
    --home-icon:#20C4A8;
    --home-icon-soft:rgba(32,196,168,.13);
    background:linear-gradient(180deg,#f7fbfb 0%,#ffffff 42%,#f8fafc 100%)!important;
}
.fim-home-v21 .fim-section-v21{
    padding:56px 0!important;
}
.fim-home-v21 .fim-section-v21.soft,
.fim-home-v21 .fim-section-v21.campaigns{
    background:linear-gradient(180deg,#ffffff,#f8fbfb)!important;
}
.fim-home-v21 .fim-section-head-v21{
    max-width:760px!important;
    margin-bottom:20px!important;
}
.fim-home-v21 .fim-section-head-v21 span{
    display:inline-flex!important;
    align-items:center!important;
    min-height:27px!important;
    padding:0 10px!important;
    border-radius:999px!important;
    color:#0f766e!important;
    background:#e9fbf7!important;
    border:1px solid rgba(32,196,168,.16)!important;
    font-size:11px!important;
    font-weight:950!important;
    letter-spacing:.045em!important;
}
.fim-home-v21 .fim-section-head-v21 h2{
    margin:10px 0 8px!important;
    font-size:clamp(26px,3vw,36px)!important;
    line-height:1.08!important;
    letter-spacing:-.028em!important;
}
.fim-home-v21 .fim-section-head-v21 p{
    font-size:14.5px!important;
    line-height:1.6!important;
}

/* Prova/números rápidos */
.fim-home-v21 .fim-proof-v21{
    margin-top:-20px!important;
}
.fim-home-v21 .fim-proof-v21-grid{
    gap:12px!important;
}
.fim-home-v21 .fim-proof-v21-grid article{
    position:relative!important;
    overflow:hidden!important;
    min-height:132px!important;
    padding:15px!important;
    border-radius:22px!important;
    background:rgba(255,255,255,.94)!important;
    border:1px solid rgba(226,232,240,.82)!important;
    box-shadow:0 12px 30px rgba(15,23,42,.055)!important;
}
.fim-home-v21 .fim-proof-v21-grid article::after{
    content:""!important;
    position:absolute!important;
    inset:auto 0 0!important;
    height:3px!important;
    background:linear-gradient(135deg,#20C4A8,#17a890)!important;
    opacity:.85!important;
}
.fim-home-v21 .fim-proof-v21-grid .fim-home-icon{
    width:34px!important;
    height:34px!important;
    border-radius:13px!important;
    margin-bottom:9px!important;
}
.fim-home-v21 .fim-proof-v21-grid strong{
    display:block!important;
    color:#0f2135!important;
    font-size:14.5px!important;
    line-height:1.22!important;
    font-weight:900!important;
}
.fim-home-v21 .fim-proof-v21-grid article > span:not(.fim-home-icon){
    display:block!important;
    margin-top:6px!important;
    color:#64748b!important;
    font-size:11.5px!important;
    line-height:1.46!important;
    font-weight:700!important;
}

/* Cards empresas/profissionais */
.fim-home-v21 .fim-card-grid-v21{
    gap:14px!important;
}
.fim-home-v21 .fim-home-entity-card-v18,
.fim-home-v21 .fim-home-pro-card-v18{
    position:relative!important;
    padding:15px!important;
    border-radius:22px!important;
    background:
        radial-gradient(circle at 100% 0%,rgba(32,196,168,.055),transparent 32%),
        #ffffff!important;
    border:1px solid rgba(226,232,240,.86)!important;
    box-shadow:0 12px 32px rgba(15,23,42,.055)!important;
    overflow:hidden!important;
}
.fim-home-v21 .fim-home-entity-card-v18:hover,
.fim-home-v21 .fim-home-pro-card-v18:hover{
    transform:translateY(-3px)!important;
    border-color:rgba(32,196,168,.22)!important;
    box-shadow:0 18px 44px rgba(15,23,42,.085)!important;
}
.fim-home-v21 .fim-home-entity-card-v18.premium::before,
.fim-home-v21 .fim-home-pro-card-v18.recommended::before,
.fim-home-v21 .fim-home-pro-card-v18.is-featured-home::before{
    content:""!important;
    position:absolute!important;
    inset:0 0 auto 0!important;
    height:3px!important;
    background:linear-gradient(135deg,#20C4A8,#17a890)!important;
}
.fim-home-v21 .fim-home-entity-card-v18 .logo,
.fim-home-v21 .fim-home-pro-card-v18 .photo{
    width:58px!important;
    height:58px!important;
    border-radius:18px!important;
    margin-bottom:10px!important;
}
.fim-home-v21 .fim-home-entity-card-v18 img,
.fim-home-v21 .fim-home-pro-card-v18 img{
    border-radius:14px!important;
}
.fim-home-v21 .fim-home-entity-card-v18 .badge,
.fim-home-v21 .fim-home-pro-card-v18 .badge{
    min-height:24px!important;
    padding:0 8px!important;
    font-size:10.5px!important;
}
.fim-home-v21 .fim-home-entity-card-v18 h3,
.fim-home-v21 .fim-home-pro-card-v18 h3{
    font-size:16px!important;
    line-height:1.2!important;
    margin:7px 0 5px!important;
}
.fim-home-v21 .fim-home-entity-card-v18 p,
.fim-home-v21 .fim-home-pro-card-v18 p{
    font-size:12.5px!important;
    line-height:1.45!important;
}
.fim-home-v21 .rating{
    display:flex!important;
    align-items:center!important;
    flex-wrap:wrap!important;
    gap:6px!important;
    margin-top:8px!important;
}
.fim-home-v21 .fim-home-stars i{
    font-size:10.5px!important;
}
.fim-home-v21 .rating small{
    display:inline-flex!important;
    margin-top:0!important;
    font-size:10.5px!important;
    font-weight:750!important;
}
.fim-home-v21 .local{
    min-height:25px!important;
    display:inline-flex!important;
    align-items:center!important;
    gap:6px!important;
    padding:0 8px!important;
    border-radius:999px!important;
    background:#f8fafc!important;
    border:1px solid #e5edf3!important;
    font-size:11px!important;
}
.fim-home-v21 .fim-card-views,
.fim-home-v21 .fim-home-pro-views{
    background:rgba(32,196,168,.08)!important;
    border-color:rgba(32,196,168,.16)!important;
    color:#0f766e!important;
}
.fim-home-v21 .fim-card-link{
    min-height:31px!important;
    padding:0 10px!important;
    border-radius:999px!important;
    font-size:11.5px!important;
    font-weight:900!important;
}
.fim-home-featured-ribbon{
    position:absolute!important;
    top:10px!important;
    right:10px!important;
    min-height:25px!important;
    padding:0 9px!important;
    display:inline-flex!important;
    align-items:center!important;
    gap:5px!important;
    border-radius:999px!important;
    color:#064e3b!important;
    background:linear-gradient(135deg,#e2e8f0,#f8fafc 35%,#cbd5e1 70%,#94a3b8)!important;
    border:1px solid rgba(148,163,184,.45)!important;
    font-size:9.5px!important;
    font-weight:950!important;
    box-shadow:0 10px 22px rgba(100,116,139,.12)!important;
}

/* Secção Como recomenda */
.fim-trust-method-v22{
    background:linear-gradient(180deg,#f8fbfb,#ffffff)!important;
}
.fim-trust-method-grid-v22{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:14px!important;
}
.fim-trust-method-grid-v22 article{
    padding:18px!important;
    border-radius:22px!important;
    background:#ffffff!important;
    border:1px solid rgba(226,232,240,.86)!important;
    box-shadow:0 12px 30px rgba(15,23,42,.055)!important;
}
.fim-trust-method-grid-v22 .fim-home-icon{
    width:40px!important;
    height:40px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    border-radius:15px!important;
    color:#0f766e!important;
    background:#e9fbf7!important;
    margin-bottom:12px!important;
}
.fim-trust-method-grid-v22 strong{
    display:block!important;
    color:#0f2135!important;
    font-size:15.5px!important;
    margin-bottom:6px!important;
}
.fim-trust-method-grid-v22 article > span:not(.fim-home-icon){
    color:#64748b!important;
    font-size:13px!important;
    line-height:1.48!important;
}

/* CTA empresas/profissionais */
.fim-audience-cta-v22{
    padding:30px 0 44px!important;
    background:#ffffff!important;
}
.fim-audience-cta-grid-v22{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:14px!important;
}
.fim-audience-cta-card-v22{
    position:relative!important;
    overflow:hidden!important;
    min-height:220px!important;
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr)!important;
    gap:16px!important;
    align-items:start!important;
    padding:28px!important;
    border-radius:28px!important;
    color:#fff!important;
    text-decoration:none!important;
    background:
        radial-gradient(circle at 92% 10%,rgba(255,255,255,.15),transparent 30%),
        linear-gradient(135deg,#063247,#08796d 58%,#20C4A8)!important;
    box-shadow:0 16px 42px rgba(15,23,42,.10)!important;
}
.fim-audience-cta-card-v22.professional{
    background:
        radial-gradient(circle at 92% 10%,rgba(255,255,255,.15),transparent 30%),
        linear-gradient(135deg,#061a2b,#0b4c4b 58%,#17a890)!important;
}
.fim-audience-cta-card-v22 .icon{
    width:48px!important;
    height:48px!important;
    border-radius:18px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    background:rgba(255,255,255,.14)!important;
    border:1px solid rgba(255,255,255,.18)!important;
}
.fim-audience-cta-card-v22 span{
    color:#9ff8eb!important;
    font-size:12px!important;
    font-weight:950!important;
    text-transform:uppercase!important;
    letter-spacing:.05em!important;
}
.fim-audience-cta-card-v22 h2{
    color:#fff!important;
}
.fim-audience-cta-card-v22 p{
    margin:0!important;
    color:#dffdf8!important;
    line-height:1.55!important;
}
.fim-audience-cta-card-v22 strong{
    grid-column:1/-1!important;
    justify-self:end!important;
    min-height:36px!important;
    padding:0 13px!important;
    border-radius:999px!important;
    display:inline-flex!important;
    align-items:center!important;
    gap:8px!important;
    color:#0f766e!important;
    background:#ffffff!important;
    font-size:12px!important;
    font-weight:950!important;
}

/* Categorias populares */
.fim-popular-cats-v22{
    background:#ffffff!important;
}
.fim-popular-cats-grid-v22{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:10px!important;
}
.fim-popular-cats-grid-v22 a{
    min-height:64px!important;
    padding:12px!important;
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr)!important;
    gap:4px 10px!important;
    align-items:center!important;
    border-radius:20px!important;
    background:#ffffff!important;
    border:1px solid rgba(226,232,240,.86)!important;
    box-shadow:0 10px 26px rgba(15,23,42,.045)!important;
    color:#0f2135!important;
    text-decoration:none!important;
    transition:.2s ease!important;
}
.fim-popular-cats-grid-v22 a:hover{
    transform:translateY(-2px)!important;
    border-color:rgba(32,196,168,.26)!important;
    background:linear-gradient(135deg,#ffffff,#f1fffc)!important;
}
.fim-popular-cats-grid-v22 .fim-home-icon{
    grid-row:1/3!important;
    width:36px!important;
    height:36px!important;
    border-radius:14px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    background:#e9fbf7!important;
    color:#17a890!important;
}
.fim-popular-cats-grid-v22 a > span:not(.fim-home-icon){
    color:#0f2135!important;
    font-size:13px!important;
    font-weight:950!important;
    line-height:1.2!important;
}
.fim-popular-cats-grid-v22 small{
    color:#64748b!important;
    font-size:11px!important;
    font-weight:800!important;
}

/* Como usar: componente restaurado da homepage, sem duplicar mensagens comerciais. */
.fim-how-section-v22{
    padding-top:34px!important;
    background:linear-gradient(180deg,#f8fbfb,#ffffff)!important;
}
.fim-how-v21{
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:14px!important;
}
.fim-how-v21 article{
    min-height:142px!important;
    padding:20px!important;
    border-radius:22px!important;
    background:#fff!important;
    border:1px solid rgba(226,232,240,.86)!important;
    box-shadow:0 12px 30px rgba(15,23,42,.055)!important;
}
.fim-how-v21 article > .fim-home-icon{
    width:42px!important;
    height:42px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    border-radius:15px!important;
    margin-bottom:13px!important;
}
.fim-how-v21 strong{
    display:block!important;
    color:#0f2135!important;
    font-size:16px!important;
    line-height:1.2!important;
    margin-bottom:7px!important;
}
.fim-how-v21 article > span:not(.fim-home-icon){
    display:block!important;
    color:#64748b!important;
    font-size:13px!important;
    line-height:1.5!important;
}

.fim-home-v21 .fim-campaign-card-v21{
    border-radius:24px!important;
    background:
        radial-gradient(circle at 88% 10%,rgba(255,255,255,.12),transparent 30%),
        linear-gradient(135deg,#061a2b,#0b4c4b)!important;
    box-shadow:0 12px 30px rgba(15,23,42,.075)!important;
}
.fim-home-v21 .fim-benefits-v21 article{
    border-radius:22px!important;
    box-shadow:0 12px 30px rgba(15,23,42,.055)!important;
}
@media (max-width:1120px){
    .fim-trust-method-grid-v22,
.fim-popular-cats-grid-v22{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }
    .fim-how-v21{
        grid-template-columns:repeat(3,minmax(0,1fr))!important;
    }
    .fim-audience-cta-grid-v22{
        grid-template-columns:1fr!important;
    }
}
@media (max-width:760px){
    .fim-trust-method-grid-v22,
.fim-popular-cats-grid-v22,
.fim-audience-cta-grid-v22,
.fim-how-v21{
        grid-template-columns:1fr!important;
    }
    .fim-audience-cta-card-v22{
        grid-template-columns:1fr!important;
        padding:24px!important;
    }
}


/* =========================================================
   Homepage — motion e contraste visual consolidados
   Escopo: apenas home; fonte única para efeitos dos componentes.
   ========================================================= */
.fim-home-v21{
  --home-cyan:#20C4A8;
  --home-cyan-2:#17a890;
  --home-blue:#4a74e6;
  --home-amber:#f59e0b;
  --home-purple:#a855f7;
  --home-rose:#f43f5e;
  --home-sky:#06b6d4;
  --home-dark:#061a2b;
  --home-shadow-soft:0 18px 42px rgba(15,23,42,.08);
  --home-shadow-strong:0 28px 70px rgba(15,23,42,.14);
}
.fim-home-v21 :where(a,button,article,.fim-hero-v21-panel,.fim-pro-banner-v21-card,.fim-audience-cta-card-v22){
  -webkit-tap-highlight-color:transparent;
}
@keyframes fimHomeAuraV28{
  0%,
100%{transform:translate3d(0,0,0) scale(1);opacity:.78}
  50%{transform:translate3d(-10px,8px,0) scale(1.04);opacity:1}
}
@keyframes fimHomeIconPopV28{
  0%,
100%{transform:translateY(0) scale(1) rotate(0deg)}
  50%{transform:translateY(-3px) scale(1.06) rotate(-2deg)}
}
@keyframes fimHomeSoftPulseV28{
  0%,
100%{box-shadow:0 10px 26px rgba(15,23,42,.07)}
  50%{box-shadow:0 18px 38px rgba(15,23,42,.13)}
}
@keyframes fimHomeGradientMoveV28{
  0%{background-position:0% 50%}
  50%{background-position:100% 50%}
  100%{background-position:0% 50%}
}
.fim-home-hero-v21::before,
.fim-home-hero-v21::after{
  content:"";
  position:absolute;
  pointer-events:none;
  z-index:0;
  border-radius:999px;
  filter:blur(6px);
}
.fim-home-hero-v21::before{
  width:390px;
  height:390px;
  right:7%;
  top:10%;
  background:radial-gradient(circle,rgba(32,196,168,.25),transparent 66%);
  animation:fimHomeAuraV28 8s ease-in-out infinite;
}
.fim-home-hero-v21::after{
  width:260px;
  height:260px;
  left:8%;
  bottom:4%;
  background:radial-gradient(circle,rgba(74,116,230,.18),transparent 68%);
  animation:fimHomeAuraV28 10s ease-in-out infinite reverse;
}
.fim-hero-v21-grid{position:relative;z-index:1}
.fim-v21-kicker,
.fim-section-head-v21 > span,
.fim-pro-banner-v21-card > div > span{
  position:relative;
  overflow:hidden;
}
.fim-v21-kicker::after,
.fim-section-head-v21 > span::after,
.fim-pro-banner-v21-card > div > span::after{
  content:"";
  position:absolute;
  inset:0 auto 0 -120%;
  width:70%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.32),transparent);
  transform:skewX(-22deg);
  transition:left .7s ease;
}
.fim-v21-kicker:hover::after,
.fim-section-head-v21:hover > span::after,
.fim-pro-banner-v21-card:hover > div > span::after{left:135%}
.fim-search-v21,
.fim-hero-v21-panel,
.fim-proof-v21-grid article,
.fim-pro-banner-v21-card,
.fim-home-entity-card-v18,
.fim-home-pro-card-v18,
.fim-trust-method-grid-v22 article,
.fim-audience-cta-card-v22,
.fim-popular-cats-grid-v22 a{
  transition:transform .28s cubic-bezier(.2,.72,.2,1),box-shadow .28s ease,border-color .28s ease,filter .28s ease,background .28s ease;
  will-change:transform;
}
.fim-search-v21:focus-within{
  transform:translateY(-2px) scale(1.006);
  box-shadow:0 26px 70px rgba(0,0,0,.22),0 12px 28px rgba(32,196,168,.14);
}
.fim-search-v21-field,
.fim-search-v21-tabs span,
.fim-tabs-v21 button{
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease,background .22s ease,color .22s ease;
}
.fim-search-v21-field:focus-within{
  transform:translateY(-1px);
  box-shadow:0 12px 26px rgba(15,23,42,.12);
  border-color:rgba(32,196,168,.35);
}
.fim-search-v21-tabs span:hover,
.fim-tabs-v21 button:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 24px rgba(15,23,42,.08);
}
.fim-search-v21-submit:hover{
  transform:translateY(-2px) scale(1.012)!important;
}
.fim-hero-v21-panel:hover,
.fim-pro-banner-v21-card:hover{
  transform:translateY(-4px);
  box-shadow:var(--home-shadow-strong);
}
.fim-hero-v21-mini-card:hover{
  transform:translateY(-3px) scale(1.015)!important;
  box-shadow:0 16px 34px rgba(15,23,42,.16);
}
.fim-hero-v21-mini-card:hover .mini-logo img,
.fim-home-entity-card-v18:hover .logo img,
.fim-home-pro-card-v18:hover .photo img{
  transform:scale(1.055);
}
.fim-hero-v21-mini-card .mini-logo img,
.fim-home-entity-card-v18 .logo img,
.fim-home-pro-card-v18 .photo img{
  transition:transform .36s cubic-bezier(.2,.72,.2,1),filter .28s ease;
}
.fim-proof-v21-grid article:hover,
.fim-trust-method-grid-v22 article:hover,
.fim-how-v21 article:hover,
.fim-popular-cats-grid-v22 a:hover{
  transform:translateY(-5px) scale(1.012);
  box-shadow:var(--home-shadow-strong)!important;
  border-color:rgba(32,196,168,.22)!important;
  filter:saturate(1.035);
}
.fim-home-entity-card-v18:hover,
.fim-home-pro-card-v18:hover{
  transform:translateY(-6px) scale(1.012)!important;
  box-shadow:0 26px 62px rgba(15,23,42,.13)!important;
  border-color:rgba(32,196,168,.24)!important;
}
.fim-card-grid-v21 .fim-home-entity-card-v18,
.fim-card-grid-v21 .fim-home-pro-card-v18{
  position:relative;
  overflow:hidden;
}
.fim-card-grid-v21 .fim-home-entity-card-v18::after,
.fim-card-grid-v21 .fim-home-pro-card-v18::after,
.fim-proof-v21-grid article::after,
.fim-trust-method-grid-v22 article::after,
.fim-how-v21 article::after,
.fim-popular-cats-grid-v22 a::after{
  content:"";
  position:absolute;
  inset:0 auto 0 -120%;
  width:54%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.38),transparent);
  transform:skewX(-24deg);
  transition:left .68s ease;
  pointer-events:none;
}
.fim-card-grid-v21 .fim-home-entity-card-v18:hover::after,
.fim-card-grid-v21 .fim-home-pro-card-v18:hover::after,
.fim-proof-v21-grid article:hover::after,
.fim-trust-method-grid-v22 article:hover::after,
.fim-how-v21 article:hover::after,
.fim-popular-cats-grid-v22 a:hover::after{left:135%}
.fim-proof-v21-grid article,
.fim-trust-method-grid-v22 article,
.fim-how-v21 article,
.fim-popular-cats-grid-v22 a{position:relative;overflow:hidden}
.fim-home-v21 :where(.fim-proof-v21-grid article,.fim-trust-method-grid-v22 article,.fim-how-v21 article,.fim-popular-cats-grid-v22 a):nth-child(6n/**/+1){--home-icon:#20C4A8;--home-icon-soft:rgba(32,196,168,.13)}
.fim-home-v21 :where(.fim-proof-v21-grid article,.fim-trust-method-grid-v22 article,.fim-how-v21 article,.fim-popular-cats-grid-v22 a):nth-child(6n/**/+2){--home-icon:#4a74e6;--home-icon-soft:rgba(74,116,230,.13)}
.fim-home-v21 :where(.fim-proof-v21-grid article,.fim-trust-method-grid-v22 article,.fim-how-v21 article,.fim-popular-cats-grid-v22 a):nth-child(6n/**/+3){--home-icon:#f59e0b;--home-icon-soft:rgba(245,158,11,.15)}
.fim-home-v21 :where(.fim-proof-v21-grid article,.fim-trust-method-grid-v22 article,.fim-how-v21 article,.fim-popular-cats-grid-v22 a):nth-child(6n/**/+4){--home-icon:#a855f7;--home-icon-soft:rgba(168,85,247,.13)}
.fim-home-v21 :where(.fim-proof-v21-grid article,.fim-trust-method-grid-v22 article,.fim-how-v21 article,.fim-popular-cats-grid-v22 a):nth-child(6n/**/+5){--home-icon:#f43f5e;--home-icon-soft:rgba(244,63,94,.12)}
.fim-home-v21 :where(.fim-proof-v21-grid article,.fim-trust-method-grid-v22 article,.fim-how-v21 article,.fim-popular-cats-grid-v22 a):nth-child(6n/**/+6){--home-icon:#06b6d4;--home-icon-soft:rgba(6,182,212,.13)}
.fim-home-v21 :where(.fim-proof-v21-grid .fim-home-icon,.fim-trust-method-grid-v22 .fim-home-icon,.fim-how-v21 .fim-home-icon,.fim-popular-cats-grid-v22 .fim-home-icon){
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#fff!important;
  background:var(--home-icon,#20C4A8)!important;
  border:1px solid rgba(255,255,255,.34)!important;
  box-shadow:0 12px 26px rgba(15,23,42,.11),inset 0 1px 0 rgba(255,255,255,.28)!important;
  transition:transform .28s ease,box-shadow .28s ease,background .28s ease;
}
.fim-home-v21 .fim-home-icon > i{
  width:auto!important;height:auto!important;margin:0!important;padding:0!important;
  color:inherit!important;background:transparent!important;border:0!important;box-shadow:none!important;
  font-size:inherit!important;line-height:1!important;
}
.fim-home-v21 :where(.fim-proof-v21-grid article:hover .fim-home-icon,.fim-trust-method-grid-v22 article:hover .fim-home-icon,.fim-how-v21 article:hover .fim-home-icon,.fim-popular-cats-grid-v22 a:hover .fim-home-icon){
  animation:fimHomeIconPopV28 1.7s ease-in-out infinite;
  box-shadow:0 16px 34px rgba(15,23,42,.12);
}
.fim-pro-banner-v21-chips small:nth-child(1) i{color:#f43f5e!important}
.fim-pro-banner-v21-chips small:nth-child(2) i{color:#f59e0b!important}
.fim-pro-banner-v21-chips small:nth-child(3) i{color:#06b6d4!important}
.fim-pro-banner-v21-chips small:nth-child(4) i{color:#20C4A8!important}
.fim-pro-banner-v21-chips small:hover{
  transform:translateY(-2px) scale(1.025);
  background:rgba(255,255,255,.18);
}
.fim-pro-banner-v21-chips small{
  transition:transform .24s ease,background .24s ease,border-color .24s ease;
}
.fim-audience-cta-card-v22.entity{--audience-icon:#20C4A8;--audience-icon-soft:rgba(32,196,168,.14)}
.fim-audience-cta-card-v22.professional{--audience-icon:#4a74e6;--audience-icon-soft:rgba(74,116,230,.14)}
.fim-audience-cta-card-v22:hover{
  transform:translateY(-6px) scale(1.01);
  box-shadow:0 30px 74px rgba(15,23,42,.16)!important;
}
.fim-audience-cta-card-v22 .icon{
  background:var(--audience-icon-soft)!important;
  color:var(--audience-icon)!important;
  transition:transform .28s ease,box-shadow .28s ease,background .28s ease,color .28s ease;
}
.fim-audience-cta-card-v22:hover .icon{
  transform:translateY(-3px) scale(1.065);
  animation:fimHomeSoftPulseV28 1.8s ease-in-out infinite;
}
.fim-section-v21.soft,
.fim-section-v21.campaigns,
.fim-company-banner-v21{
  position:relative;
}
.fim-section-v21.soft::before,
.fim-section-v21.campaigns::before,
.fim-company-banner-v21::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 12% 18%,rgba(32,196,168,.075),transparent 28%),
    radial-gradient(circle at 88% 82%,rgba(74,116,230,.055),transparent 30%);
}
.fim-section-v21.soft > .fim-container,
.fim-section-v21.campaigns > .fim-container,
.fim-company-banner-v21 > .fim-container{position:relative;z-index:1}
.fim-popular-cats-grid-v22 a:hover span{color:#0f2135!important}
.fim-popular-cats-grid-v22 a:hover small{color:#0f766e!important}
.fim-home-v21 .fim-btn:hover,
.fim-home-v21 .fim-card-link:hover,
.fim-pro-banner-v21-card > a:hover,
.fim-company-banner-v21-card strong:hover,
.fim-audience-cta-card-v22 strong:hover{
  transform:translateY(-2px) scale(1.012)!important;
}
.fim-home-v21 .fim-btn i,
.fim-home-v21 .fim-card-link i,
.fim-pro-banner-v21-card > a i,
.fim-company-banner-v21-card strong i,
.fim-audience-cta-card-v22 strong i{
  transition:transform .22s ease;
}
.fim-home-v21 .fim-btn:hover i,
.fim-home-v21 .fim-card-link:hover i,
.fim-pro-banner-v21-card > a:hover i,
.fim-company-banner-v21-card strong:hover i,
.fim-audience-cta-card-v22 strong:hover i{
  transform:translateX(2px) scale(1.06);
}
.fim-home-motion-v28 .fim-hero-v21-copy,
.fim-home-motion-v28 .fim-hero-v21-panel{
  animation:fimHomeEnterV28 .78s cubic-bezier(.2,.72,.2,1) both;
}
.fim-home-motion-v28 .fim-hero-v21-panel{animation-delay:.12s}
@keyframes fimHomeEnterV28{
  from{opacity:0;transform:translateY(18px) scale(.985)}
  to{opacity:1;transform:translateY(0) scale(1)}
}
@media (max-width:760px){
  .fim-home-hero-v21::before,
.fim-home-hero-v21::after{display:none}
  .fim-proof-v21-grid article:hover,
.fim-trust-method-grid-v22 article:hover,
.fim-how-v21 article:hover,
.fim-popular-cats-grid-v22 a:hover,
.fim-home-entity-card-v18:hover,
.fim-home-pro-card-v18:hover,
.fim-audience-cta-card-v22:hover{
    transform:none!important;
  }
}
@media (prefers-reduced-motion:reduce){
  .fim-home-v21 *,
.fim-home-hero-v21::before,
.fim-home-hero-v21::after{
    animation:none!important;
    transition:none!important;
  }
  .fim-home-v21 :where(article,a,button,.fim-search-v21,.fim-hero-v21-panel,.fim-pro-banner-v21-card){
    transform:none!important;
  }
}

/* FindInMoz v7.7 — ícone de visualizações das entidades em amarelo de destaque */
.fim-views-chip i,
.fim-views-chip-force i{
    color: #facc14 !important;
}


/* FindInMoz — paginação pública das avaliações */
.fim-review-pagination{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    flex-wrap:wrap!important;
    gap:7px!important;
    margin-top:18px!important;
    padding-top:16px!important;
    border-top:1px solid rgba(226,232,240,.88)!important;
}
.fim-review-page-btn{
    min-width:36px!important;
    height:36px!important;
    padding:0 11px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:7px!important;
    border-radius:12px!important;
    color:#475569!important;
    background:#ffffff!important;
    border:1px solid rgba(226,232,240,.96)!important;
    box-shadow:0 7px 18px rgba(15,23,42,.035)!important;
    text-decoration:none!important;
    font-size:12px!important;
    font-weight:850!important;
    line-height:1!important;
    transition:transform .2s ease,border-color .2s ease,background .2s ease,color .2s ease!important;
}
a.fim-review-page-btn:hover{
    color:#0f766e!important;
    border-color:rgba(32,196,168,.32)!important;
    background:#f0fdfa!important;
    transform:translateY(-1px)!important;
}
.fim-review-page-btn.is-active{
    color:#ffffff!important;
    background:linear-gradient(135deg,#20C4A8,#17a890)!important;
    border-color:transparent!important;
    box-shadow:0 10px 22px rgba(32,196,168,.20)!important;
}
.fim-review-page-btn.is-nav{
    padding:0 13px!important;
}
.fim-review-page-gap{
    min-width:22px!important;
    text-align:center!important;
    color:#94a3b8!important;
    font-weight:850!important;
}
@media (max-width:560px){
    .fim-review-pagination{
        gap:6px!important;
    }
    .fim-review-page-btn.is-nav span{
        display:none!important;
    }
    .fim-review-page-btn.is-nav{
        width:36px!important;
        padding:0!important;
    }
}

/* ========================================================================== */
/* Homepage v7.50.7.8 — categorias reais em linha + estado vazio subtil      */
/* ========================================================================== */
.fim-home-v21 .fim-tabs-v21.fim-tabs-scroll-v178{
    display:flex!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    gap:8px!important;
    max-width:100%!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    padding:2px 2px 9px!important;
    margin-bottom:18px!important;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior-inline:contain;
    scroll-behavior:smooth;
    scroll-snap-type:x proximity;
    scrollbar-width:thin;
    scrollbar-color:rgba(15,118,110,.22) transparent;
}
.fim-home-v21 .fim-tabs-v21.fim-tabs-scroll-v178::-webkit-scrollbar{
    height:4px;
}
.fim-home-v21 .fim-tabs-v21.fim-tabs-scroll-v178::-webkit-scrollbar-track{
    background:transparent;
}
.fim-home-v21 .fim-tabs-v21.fim-tabs-scroll-v178::-webkit-scrollbar-thumb{
    background:rgba(15,118,110,.20);
    border-radius:999px;
}
.fim-home-v21 .fim-tabs-v21.fim-tabs-scroll-v178::-webkit-scrollbar-thumb:hover{
    background:rgba(15,118,110,.32);
}
.fim-home-v21 .fim-tabs-v21.fim-tabs-scroll-v178 button{
    flex:0 0 auto!important;
    white-space:nowrap!important;
    scroll-snap-align:start;
}
.fim-home-v21 .fim-tabs-v21.fim-tabs-scroll-v178 button.is-empty:not(.active){
    background:#f8fafc!important;
    color:#64748b!important;
    border-color:#e8eef3!important;
}
.fim-home-v21 .fim-tabs-v21.fim-tabs-scroll-v178 button.is-empty:not(.active):hover{
    color:#334155!important;
    border-color:rgba(32,196,168,.24)!important;
}

.fim-home-v21 .fim-home-empty-state-v178{
    grid-column:1/-1!important;
    display:flex!important;
    align-items:center!important;
    gap:18px!important;
    min-height:148px!important;
    padding:24px 26px!important;
    border:1px solid rgba(32,196,168,.16)!important;
    border-radius:22px!important;
    background:
        radial-gradient(circle at 8% 18%,rgba(32,196,168,.09),transparent 30%),
        linear-gradient(135deg,#ffffff 0%,#fbfefd 100%)!important;
    box-shadow:0 12px 34px rgba(15,23,42,.045)!important;
    color:#475569!important;
}
.fim-home-v21 .fim-home-empty-icon-v178{
    flex:0 0 auto!important;
    display:grid!important;
    place-items:center!important;
    width:54px!important;
    height:54px!important;
    border-radius:18px!important;
    background:rgba(32,196,168,.10)!important;
    border:1px solid rgba(32,196,168,.16)!important;
    color:#0f8f7d!important;
    font-size:21px!important;
}
.fim-home-v21 .fim-home-empty-state-v178>div{
    min-width:0!important;
}
.fim-home-v21 .fim-home-empty-state-v178 strong{
    display:block!important;
    margin:0 0 6px!important;
    color:#0f2135!important;
    font-size:16px!important;
    line-height:1.35!important;
    font-weight:850!important;
}
.fim-home-v21 .fim-home-empty-state-v178 p{
    margin:0!important;
    max-width:720px!important;
    color:#64748b!important;
    font-size:13.5px!important;
    line-height:1.6!important;
    font-weight:500!important;
}
.fim-home-v21 .fim-home-empty-state-v178 p strong{
    display:inline!important;
    margin:0!important;
    color:#334155!important;
    font-size:inherit!important;
    font-weight:750!important;
}
@media (max-width:640px){
    .fim-home-v21 .fim-tabs-v21.fim-tabs-scroll-v178{
        margin-right:-4px!important;
        padding-bottom:8px!important;
    }
    .fim-home-v21 .fim-home-empty-state-v178{
        align-items:flex-start!important;
        gap:14px!important;
        min-height:0!important;
        padding:20px!important;
    }
    .fim-home-v21 .fim-home-empty-icon-v178{
        width:46px!important;
        height:46px!important;
        border-radius:15px!important;
        font-size:18px!important;
    }
}

/* v7.50.7.9 — CTA do estado vazio dos destaques da homepage */
.fim-home-v21 .fim-home-empty-cta-v179{
    display:inline-flex!important;
    align-items:center!important;
    gap:8px!important;
    margin-top:12px!important;
    min-height:38px!important;
    padding:0 14px!important;
    border:1px solid rgba(32,196,168,.22)!important;
    border-radius:12px!important;
    background:#fff!important;
    color:#0f8f7d!important;
    font-size:12.5px!important;
    font-weight:800!important;
    text-decoration:none!important;
    transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease!important;
}
.fim-home-v21 .fim-home-empty-cta-v179:hover{
    transform:translateY(-1px)!important;
    border-color:rgba(32,196,168,.42)!important;
    box-shadow:0 8px 20px rgba(15,143,125,.08)!important;
}


/* FindInMoz v7.50.7.11 — Hero sem recomendados elegíveis */
.fim-home-v21 .fim-hero-v21-grid.no-recommendations{
    grid-template-columns:minmax(0,1fr)!important;
}
.fim-home-v21 .fim-hero-v21-grid.no-recommendations .fim-hero-v21-copy{
    max-width:820px;
}
