/* ==========================
   GALERIA DETALHE IMÓVEL
========================== */

.detalhe-container{

    max-width:1280px;

    margin:0 auto;

    padding:0 20px;

}
.galeria-airbnb{

    display:grid;

    grid-template-columns:2fr 1fr;

    gap:8px;

    margin:0px auto;

    border-radius:24px;
    overflow:hidden;
    position:relative;
}

.galeria-acoes{

    position:absolute;

    left:16px;

    right:16px;

    bottom:16px;

    display:flex;

    justify-content:space-between;

    align-items:center;

    z-index:20;

}
.galeria-badge{

    display:flex !important;

    flex-direction:row !important;

    align-items:center;
    gap:10px;

    justify-content:center;

    height:44px;

    padding:0 18px;

    border:none;

    border-radius:12px;

    background:#ffffff;

    color:#111827;

    font-family:'Poppins',sans-serif;

    font-size:14px;

    font-weight:600;

    box-shadow:0 4px 15px rgba(0,0,0,.15);

}
.galeria-badges{

    display:flex;

    align-items:center;

    gap:10px;

}
.galeria-badge.fotos{

    cursor:pointer;

    transition:.3s;

}

.galeria-badge.fotos:hover{

    background:#ff5252;

    color:#fff;

}

.galeria-badge.fotos:hover svg{

    stroke:#fff;

}
.btn-todas-fotos:hover{

    background:#ff5252;

    color:#fff;

}
.foto-principal{

    overflow:hidden;

}

.foto-principal img{

    width:100%;

    height:540px;

    object-fit:cover;

    display:block;

    transition:.4s;

}

.foto-principal img:hover{
    opacity:.92;
}

.fotos-secundarias{

    display:grid;

    grid-template-columns:1fr 1fr;

    grid-template-rows:1fr 1fr;

    gap:8px;

}

.fotos-secundarias img{

    width:100%;

    height:266px;

    object-fit:cover;

    display:block;

    transition:.4s;

}

.fotos-secundarias img:hover{

    transform:none;
    opacity:.7;

}

.foto-extra{

    position:relative;

    overflow:hidden;

}

.foto-extra img{

    width:100%;

    height:266px;

    object-fit:cover;

}

.btn-todas-fotos{

    position:absolute;

    bottom:15px;

    right:15px;

    height:48px;

    padding:0 20px;

    border:none;

    border-radius:12px;

    background:#ffffff;

    color:#111827;

    font-family:'Poppins',sans-serif;

    font-size:15px;

    font-weight:600;

    cursor:pointer;

    box-shadow:0 4px 15px rgba(0,0,0,.15);

    transition:.3s;

}

.btn-todas-fotos:hover{

    transform:translateY(-2px);

}

@media(max-width:992px){

    .galeria-airbnb{

        grid-template-columns:1fr;

    }

    .foto-principal img{

        height:420px;

    }

    .fotos-secundarias{

        grid-template-columns:repeat(2,1fr);

    }

    .fotos-secundarias img,
    .foto-extra img{

        height:180px;

    }

}

@media(max-width:768px){

    .foto-principal img{

        height:300px;

    }

    .fotos-secundarias{

        display:none;

    }

}
.imovel-breadcrumb{

    display:flex;

    align-items:center;

    flex-wrap:wrap;

    gap:10px;

    margin:15px 0;

    color:#6b7280;

    font-size:20px;

    font-weight:500;

}
.breadcrumb-localizacao{

    display:flex;

    align-items:center;

    gap:6px;

    line-height:1;

}

.breadcrumb-localizacao svg{

    width:18px;

    height:18px;

    stroke:#6b7280;

    flex-shrink:0;

}
.foto-miniatura{

    cursor:pointer;

    border:3px solid transparent;

    transition:.3s;

}

.foto-miniatura.ativa{

    border-color:#e5e7eb;

}


.texto-fotos-mobile{
    display:none;
}

@media (max-width: 768px){

    .texto-fotos{
        display:none;
    }

    .texto-fotos-mobile{
        display:inline;
    }

    .imovel-breadcrumb{
        font-size:14px;
    }

}
/* ==========================
   MODAL GALERIA
========================== */

.modal-galeria{

    position:fixed;

    inset:0;

    background:rgba(0, 0, 0, 0.71);

    z-index:9999;

    display:none;

    align-items:center;

    justify-content:center;

}

.modal-galeria.ativo{

    display:flex;

}

.modal-fechar{

    position:absolute;

    top:25px;

    right:25px;

    width:50px;

    height:50px;

    border:none;

    border-radius:50%;

    background:#fff;

    font-size:24px;

    cursor:pointer;

    z-index:10000;

}

.galeria-modal-swiper{

    width:90%;

    height:90vh;

}

.galeria-modal-swiper img{

    width:100%;

    height:100%;

    object-fit:contain;

}

.modal-galeria .swiper-button-next,
.modal-galeria .swiper-button-prev{

    color:#fff;

}
.contador-galeria{

    position:absolute;

    bottom:20px;

    left:50%;

    transform:translateX(-50%);

    z-index:9999;

}

.contador-galeria span{

    background:rgba(0,0,0,.7);

    color:#fff;

    padding:10px 18px;

    border-radius:30px;

    font-size:14px;

    font-weight:600;

}



.imovel-header{

    padding:35px 0 20px;

}

.imovel-status{

    display:flex;

    gap:10px;

    margin-bottom:15px;

}

.status-finalidade,
.status-destaque{

    height:38px;

    padding:0 16px;

    display:flex;

    align-items:center;

    border-radius:999px;

    background:#f3f4f6;

    font-size:13px;

    font-weight:600;

}

.imovel-titulo{

    font-size:26px;

    font-weight:400;

    line-height:1.2;

    color:#111827;

    margin-bottom:20px;

}

.imovel-preco{

    font-size:28px;

    font-weight:500;

    color:#ff5252;

}

.imovel-detalhes{

    display:flex;

    flex-wrap:wrap;

    gap:15px;

    margin-bottom:40px;

}

.detalhe-item{

    display:flex;

    align-items:center;

    gap:10px;

    padding:15px 20px;

    background:#fff;

    border:1px solid #e5e7eb;

    border-radius:14px;

}

.detalhe-item svg{

    width:20px;

    height:20px;

    stroke:#6b7280;

}

.imovel-descricao{

    margin:50px 0;

}

.imovel-descricao h2{

    font-size:20px;

    font-weight:500;

    margin-bottom:20px;

    color:#111827;

}

.descricao-texto{

    font-size:16px;

    line-height:1.9;

    color:#4b5563;

    max-width:900px;

    text-align:justify;

    text-justify:inter-word;

}

.imovel-features{

    margin:60px 0;

}

.imovel-features h2{

    font-size:18px;

    font-weight:500;

    color:#111827;

    margin-bottom:4px;

}

.features-subtitulo{

    font-size:15px;

    color:#6b7280;

    line-height:1.6;

    margin-top:0;

    margin-bottom:30px;

}

.features-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:15px;

}

.feature-item{

    display:flex;

    align-items:center;

    gap:10px;

    padding:16px 18px;

    background:#fff;

    border:1px solid #e5e7eb;

    border-radius:14px;

}

.feature-item svg{

    width:18px;

    height:18px;

    stroke:#22c55e;

    flex-shrink:0;

}

@media(max-width:768px){

    .features-grid{

        grid-template-columns:1fr;

    }

}
.imovel-sidebar{

    max-width:400px;

    margin:50px auto;

}

.sidebar-card{

    background:#fff;

    border:1px solid #e5e7eb;

    border-radius:20px;

    padding:25px;

    margin-bottom:20px;

    box-shadow:0 8px 25px rgba(0,0,0,.05);

}

.sidebar-card h3{

    font-size:18px;

    margin-bottom:10px;

    max-width:400px;

}

.sidebar-card p{

    color:#6b7280;

    margin-bottom:20px;

}

.btn-whatsapp{

    display:flex;

    align-items:center;

    justify-content:center;

    gap:10px;

    width:100%;

    height:54px;

    border-radius:14px;

    background:#25D366;

    color:#fff;

    text-decoration:none;

    font-weight:600;

}

.sidebar-card input,
.sidebar-card textarea{

    width:100%;

    border:1px solid #e5e7eb;

    border-radius:12px;

    padding:12px 15px;

    margin-bottom:12px;

    font-family:'Poppins',sans-serif;

}

.btn-enviar{

    width:100%;

    height:54px;

    border:none;

    border-radius:14px;

    background:#ff5252;

    color:#fff;

    color:#fff;

    font-weight:600;

    cursor:pointer;

}

.btn-telefone{

    display:flex;

    align-items:center;

    justify-content:center;

    gap:10px;

    width:100%;

    height:54px;

    margin-top:10px;

    border-radius:14px;

    border:1px solid #e5e7eb;

    background:#fff;

    color:#111827;

    text-decoration:none;

    font-weight:600;

    cursor:pointer;

}

.btn-telefone:hover{

    border-color:#ff5252;

    color:#ff5252;

}

.telefone-empresa{

    display:none;

    margin-top:10px;

    padding:14px;

    border-radius:14px;

    background:#f8fafc;

    border:1px solid #e5e7eb;

    text-align:center;

    font-size:18px;

    font-weight:700;

    color:#111827;

}

.anunciante-card{

    padding:25px;

}

.anunciante-topo{

    display:flex;

    justify-content:space-between;

    align-items:flex-start;

    margin-bottom:15px;

}

.anunciante-label{

    font-size:14px;

    color:#6b7280;

    margin-bottom:5px;

}

.anunciante-topo h4{

    font-size:16px;

    font-weight:400;

    color:#111827;

    margin:0;

}

.anunciante-logo{

    width:60px;

    height:60px;

    object-fit:contain;

    border-radius:50%;

    border:1px solid #e5e7eb;

    background:#fff;

}

.anunciante-creci{

    margin-bottom:10px;

    color:#4b5563;

    font-weight:400;

}

.anunciante-total{

    display:inline-flex;

    align-items:center;

    gap:8px;

    padding:12px 20px;

    background:linear-gradient(
        135deg,
        #FF4D4D,
        #ff6b6b
    );

    color:#fff;

    border-radius:40px;

    font-size:15px;

    font-weight:600;

    text-decoration:none;

    box-shadow:
        0 6px 16px rgba(255,77,77,.25);

    transition:.25s;

}

.anunciante-total:hover{

    transform:translateY(-2px);

    box-shadow:
        0 10px 22px rgba(255,77,77,.35);

}

.imovel-layout{

    display:grid;

    grid-template-columns:minmax(0,1fr) 380px;

    gap:40px;

    align-items:start;

}

.imovel-main{

    min-width:0;

}

.imovel-sidebar{

    position:sticky;

    top:100px;

}

@media(max-width:992px){

    .imovel-layout{

        grid-template-columns:1fr;

    }

    .imovel-sidebar{

        position:relative;

        top:auto;

    }

}



.section-header{

    margin-bottom:25px;

}

.section-header h2{

    font-size:22px;

    margin-bottom:5px;

    font-weight:500;

}

.section-header p{

    color:#6b7280;

}
.imoveis-semelhantes{

    margin-top:10px;
    margin-bottom:55px;

}

.semelhantes-swiper{

    padding:10px 40px 20px;

}

.semelhantes-swiper .swiper-slide{

    height:auto;

    display:flex;

}
.semelhantes-nav{

    display:flex;

    justify-content:center;

    align-items:center;

    gap:20px;

    margin-top:20px;

}

.semelhantes-nav .swiper-button-prev,
.semelhantes-nav .swiper-button-next{

    position:relative !important;

    left:auto !important;

    right:auto !important;

    top:auto !important;

    margin:0 !important;

    width:44px;

    height:44px;

    background:#fff;

    border:1px solid #e5e7eb;

    border-radius:50%;

    color:#ff5252;

    box-shadow:0 2px 8px rgba(0,0,0,.08);

}

.semelhantes-nav .swiper-button-prev::after,
.semelhantes-nav .swiper-button-next::after{

    font-size:18px;

    font-weight:700;

}
@media(max-width:768px){

    .semelhantes-nav{

        display:flex;

    }

}
.semelhantes-nav{

    display:flex;

    justify-content:center;

    align-items:center;

    gap:15px;

    margin-top:20px;

}

.semelhantes-prev,
.semelhantes-next{

    width:44px;

    height:44px;

    border:1px solid #e5e7eb;

    border-radius:50%;

    background:#fff;

    color:#ff5252;

    font-size:22px;

    cursor:pointer;

    display:flex;

    align-items:center;

    justify-content:center;

    box-shadow:0 2px 8px rgba(0,0,0,.08);

}
.card-semelhante{

    width:100%;

    display:flex;

    flex-direction:column;

    background:#fff;

    border:1px solid #e5e7eb;

    border-radius:16px;

    overflow:hidden;

    text-decoration:none;

    color:inherit;

    transition:.25s;

}

.card-semelhante:hover{

    transform:translateY(-4px);

    box-shadow:0 10px 25px rgba(0,0,0,.08);

}

.card-foto{

    height:220px;

    overflow:hidden;

}

.card-foto img{

    width:100%;

    height:100%;

    object-fit:cover;

    display:block;

}

.card-conteudo{

    padding:18px;

    display:flex;

    flex-direction:column;

    flex:1;

}

.card-preco{

    font-size:20px;

    font-weight:600;

    margin-bottom:12px;

}

.card-bairro{

    display:flex;

    align-items:center;

    gap:6px;

    margin-bottom:15px;

    color:#374151;

    font-weight:600;

}

.card-bairro svg{

    width:16px;

    height:16px;

    color:#ff5252;

}

.card-info{

    display:flex;

    gap:14px;

    margin-bottom:15px;

    color:#6b7280;

    font-size:14px;

}

.card-info span{

    display:flex;

    align-items:center;

    gap:4px;

}

.card-info svg{

    width:15px;

    height:15px;

}

.card-footer{

    margin-top:auto;

}

.property-btn{

    display:flex;

    justify-content:center;

    align-items:center;

    gap:8px;

    height:42px;

    border-radius:10px;

    background:#f3f4f6;

    color:#111827;

    font-weight:600;

    transition:.3s;

}

.card-semelhante:hover .property-btn{

    background:#ff5252;

    color:#fff;

}
.semelhantes-prev,
.semelhantes-next{

    z-index:50 !important;

}


.form-termos{

    font-size:12px;

    color:#6b7280;

    line-height:1.6;

    margin-bottom:15px;

}

.form-termos a{

    color:#111827;

    font-weight:300;

    text-decoration:none;

}

.form-termos a:hover{

    color:#ff5252;

}

.secao-mapa
{
    margin-top:0px;
    margin-bottom: 25px;
}

#mapa-imovel
{
    width:100%;
    height:550px;
    border-radius:16px;
    overflow:hidden;
    border:1px solid #e5e5e5;
}
.mapa-info {
    color:#111;
    font-size:18px;
}
.mapa-titulo{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:8px;
    margin-bottom:20px;
}

.mapa-titulo h2{
    margin:0;
    font-size:32px;
    font-weight:500;
    color:#111;
}

.mapa-bairro{
    font-size:24px;
    font-weight:500;
    color:#111;
}

.mapa-cidade{
    font-size:22px;
    color:#666;
}

.mapa-aviso{
    font-size:14px;
    color:#888;
    font-style:italic;
}
.aviso-portal{

    font-size:11px;

}

.aviso-portal h4{

    font-size:13px;

    margin-bottom:10px;

}

.aviso-portal p{

    font-size:11px;

    line-height:1.6;

    color:#6b7280;

}

.link-dicas{

    color:#ff5252;

    font-weight:600;

    text-decoration:none;

}

.link-dicas:hover{

    text-decoration:underline;

}

.modal-dicas{

    display:none;

    position:fixed;

    inset:0;

    background:rgba(0,0,0,.7);

    z-index:9999;

    padding:20px;

}

.modal-dicas.ativo{

    display:flex;

    align-items:center;

    justify-content:center;

}

.modal-dicas-content{

    background:#fff;

    width:100%;

    max-width:700px;

    max-height:80vh;

    overflow:auto;

    border-radius:20px;

    padding:30px;

    position:relative;

}

.modal-dicas-fechar{

    position:absolute;

    top:15px;

    right:15px;

    border:none;

    background:none;

    font-size:24px;

    cursor:pointer;

}

.modal-dicas-content ul{

    margin-top:20px;

    padding-left:20px;

}

.modal-dicas-content li{

    margin-bottom:12px;

    line-height:1.7;

}

.modal-aviso{

    margin-top:25px;

    padding:15px;

    border-radius:12px;

    background:#f8fafc;

    border:1px solid #e5e7eb;

}

/* =====================================================
   PERFIL DA IMOBILIÁRIA
===================================================== */

.empresa-hero{
    background:#fff;
    border-radius:24px;
    padding:35px;
    display:flex;
    gap:35px;
    align-items:center;
    margin:30px auto;
    max-width:1280px;
    box-shadow:0 4px 20px rgba(0,0,0,.04);
}

.empresa-logo-box{
    width:260px;
    min-width:260px;
    height:200px;
    background:#fff;
    border:1px solid #eee;
    border-radius:20px;
    display:flex;
    align-items:center;
    justify-content:center;
}

.empresa-logo-box img{
    max-width:90%;
    max-height:90%;
    object-fit:contain;
}

.empresa-info{
    flex:1;
    min-width:0;
}

.empresa-badge{
    display:inline-block;
    background:#ffe9e9;
    color:#ff4d4d;
    padding:8px 16px;
    border-radius:30px;
    font-size:14px;
    font-weight:600;
    margin-bottom:15px;
}

.empresa-info h1{
    margin:0 0 20px;
    font-size:38px;
    line-height:1.2;
    word-break:break-word;
}

.empresa-contatos{
    display:flex;
    flex-wrap:wrap;
    gap:25px;
    padding-bottom:20px;
    border-bottom:1px solid #eee;
}

.empresa-item{
    display:flex;
    align-items:center;
    gap:10px;
    color:#555;
    font-size:15px;
}

.empresa-item a{
    color:#555;
    text-decoration:none;
}

.empresa-item a:hover{
    color:#ff4d4d;
}

.empresa-descricao{
    margin-top:20px;
    color:#666;
    font-size:15px;
    line-height:1.7;
}
.empresa-descricao{
    margin-top:20px;
    color:#666;
    font-size:15px;
    line-height:1.7;

    display:flex;
    align-items:center;
    gap:10px;
}

.empresa-descricao svg{
    width:18px;
    height:18px;
    flex-shrink:0;
    color:#ff4d4d;
}

/* =====================================================
   ESTATÍSTICAS
===================================================== */

.empresa-stats{
    background:#fff;
    border-radius:24px;
    padding:25px 30px;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:20px;
    margin:0 auto 40px auto;
    max-width:1280px;
    box-shadow:0 4px 20px rgba(0,0,0,.04);
}

.empresa-stat{
    display:flex;
    align-items:center;
    gap:15px;
}

.empresa-stat strong{
    display:block;
    font-size:34px;
    line-height:1;
}

.empresa-stat span{
    color:#666;
    display:block;
}

.stat-icon{
    width:70px;
    height:70px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
}

.red{
    background:#ffeaea;
    color:#ff4d4d;
}

.green{
    background:#eaf9ef;
    color:#18a558;
}

.blue{
    background:#eaf2ff;
    color:#2563eb;
}

/* =====================================================
   LISTAGEM
===================================================== */

.empresa-listagem-header{
    max-width:1280px;
    margin:0 auto 25px auto;
}

.empresa-listagem-header h2{
    font-size:32px;
    margin:0;
}

/* =====================================================
   RESPONSIVO
===================================================== */

@media (max-width: 992px){

    .empresa-hero{
        padding:25px;
        gap:25px;
    }

    .empresa-logo-box{
        width:180px;
        min-width:180px;
        height:150px;
    }

    .empresa-info h1{
        font-size:30px;
    }

    .empresa-stats{
        grid-template-columns:repeat(3,1fr);
    }
}

@media (max-width: 768px){

    .empresa-hero{
        flex-direction:column;
        text-align:center;
        padding:20px;
    }

    .empresa-logo-box{
        width:100%;
        min-width:auto;
        height:180px;
    }

    .empresa-info h1{
        font-size:24px;
    }

    .empresa-contatos{
        flex-direction:column;
        align-items:center;
        gap:12px;
    }

    .empresa-item{
        justify-content:center;
    }

    .empresa-stats{
        grid-template-columns:1fr;
    }

    .empresa-stat{
        justify-content:center;
        text-align:center;
    }

    .empresa-listagem-header h2{
        font-size:24px;
    }
}

@media (max-width: 480px){

    .empresa-logo-box{
        height:140px;
    }

    .empresa-info h1{
        font-size:20px;
    }

    .empresa-item{
        font-size:14px;
    }

    .empresa-stat strong{
        font-size:28px;
    }
}





/* FUNDO ESCURO */

.modal-lead{
    display:none;
    position:fixed;
    inset:0;
    background:rgba(0,0,0,.65);
    backdrop-filter:blur(4px);
    z-index:99999;
    align-items:center;
    justify-content:center;
    padding:20px;
}

.modal-lead.ativo{
    display:flex;
}

/* CAIXA */

.modal-lead-content{
    position:relative;
    width:100%;
    max-width:480px;
    background:#fff;
    border-radius:18px;
    padding:30px;
    box-shadow:0 20px 60px rgba(0,0,0,.25);
    animation:modalFade .25s ease;
}

/* ANIMAÇÃO */

@keyframes modalFade{
    from{
        opacity:0;
        transform:translateY(20px);
    }
    to{
        opacity:1;
        transform:translateY(0);
    }
}

/* FECHAR */

.modal-fechar{
    position:absolute;
    top:15px;
    right:15px;
    width:36px;
    height:36px;
    border:none;
    border-radius:50%;
    background:#f5f5f5;
    cursor:pointer;
    font-size:18px;
    transition:.2s;
}

.modal-fechar:hover{
    background:#e9e9e9;
}

/* TÍTULO */

.modal-lead-content h3{
    margin:0 0 25px;
    text-align:center;
    font-size:24px;
    font-weight:700;
    color:#222;
}

/* FORM */

#formLead{
    display:flex;
    flex-direction:column;
    gap:14px;
}

/* INPUTS */

#formLead input{
    width:100%;
    height:52px;
    padding:0 16px;
    border:1px solid #ddd;
    border-radius:10px;
    font-size:15px;
    transition:.2s;
    box-sizing:border-box;
}

#formLead input:focus{
    outline:none;
    border-color:#e53935;
    box-shadow:0 0 0 3px rgba(229,57,53,.12);
}

/* BOTÃO */

.btn-enviar-lead{
    height:54px;
    border:none;
    border-radius:10px;
    background:#25D366;
    color:#fff;
    font-size:16px;
    font-weight:700;
    cursor:pointer;
    transition:.2s;
}

.btn-enviar-lead:hover{
    transform:translateY(-1px);
    box-shadow:0 6px 18px rgba(37,211,102,.35);
}

.lead-subtitulo{
    margin:-10px 0 20px;
    text-align:center;
    color:#666;
    font-size:14px;
    line-height:1.5;
}

#resultadoTelefone{
    display:none;
    margin-top:20px;
    padding:20px;
    text-align:center;
    border-radius:10px;
    background:#f5f5f5;
}

#resultadoTelefone h4{
    margin:0 0 10px;
    color:#333;
}

#resultadoTelefone .numero{
    font-size:28px;
    font-weight:700;
    color:#e53935;
}

.erro-campo{
    display:none;
    color:#dc3545;
    font-size:13px;
    margin-top:-8px;
}

.input-erro{
    border-color:#dc3545 !important;
    box-shadow:0 0 0 3px rgba(220,53,69,.12) !important;
}
#resultadoEmail{
    display:none;
    margin-top:15px;
    padding:15px;
    border-radius:10px;
    background:#e8f5e9;
    color:#2e7d32;
    font-weight:600;
    text-align:center;
}
.btn-ligar-agora{
    display:inline-flex;
    align-items:center;
    gap:8px;
    margin-top:15px;
    padding:12px 24px;
    background:#e53935;
    color:#fff;
    text-decoration:none;
    border-radius:8px;
    font-weight:600;
    transition:.2s;
}

.btn-ligar-agora svg{
    width:18px;
    height:18px;
}
/* MOBILE */

@media (max-width:768px){

    .modal-lead-content{
        padding:25px 20px;
        border-radius:16px;
    }

    .modal-lead-content h3{
        font-size:20px;
    }

}



.pagina-institucional{

    padding:50px 0;

}

.institucional-box{

    max-width:1000px;

    margin:0 auto;

    background:#fff;

    padding:40px;

    border-radius:16px;

    box-shadow:0 4px 20px rgba(0,0,0,.05);

}

.institucional-box h1{

    margin-bottom:10px;

}

.institucional-box h2{

    margin-top:35px;

    margin-bottom:15px;

    font-size:22px;

}

.institucional-box p{

    line-height:1.8;

    margin-bottom:15px;

}

.institucional-box ul{

    margin:15px 0 20px 25px;

}

.institucional-box li{

    margin-bottom:8px;

}

.data-atualizacao{

    color:#6b7280;

    margin-bottom:30px;

}

.imovel-breadcrumb-wrap{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:20px;
}
.favoritos-page{
    margin-bottom: 80px;
}
.btn-favorito{
    position:fixed;
    bottom:90px;
    right:20px;

    z-index:999;

    width:58px;
    height:58px;

    border-radius:50%;

    background:#fff;
    color:#666;

    border:1px solid #e5e7eb;

    display:flex;
    align-items:center;
    justify-content:center;

    box-shadow:0 8px 20px rgba(0,0,0,.25);

    padding:0;
}

.btn-favorito svg{
    width:26px;
    height:26px;
    display:block;
}

.btn-favorito:hover{
    color:#ff5252;
    border-color:#ff5252;
    transform:scale(1.05);
}

.btn-favorito.ativo{
    background:#ff5252;
    color:#fff;
    border-color:#ff5252;
}

.btn-remover-favorito{

    position:absolute;

    top:10px;

    right:10px;

    width:40px;

    height:40px;

    border-radius:50%;

    background:#ff5252;

    color:#fff;

    display:flex;

    align-items:center;

    justify-content:center;

    z-index:10;

}
.btn-favorito-card{

    position:absolute;

    top:12px;

    right:12px;

    width:42px;

    height:42px;

    border-radius:50%;

    background:#fff;

    color:#888;

    display:flex;

    align-items:center;

    justify-content:center;

    text-decoration:none;

    z-index:20;

    box-shadow:0 2px 8px rgba(0,0,0,.15);

    transition: all .25s ease;

}

.btn-favorito-card.animando{
    transform: scale(1.25);
}

.btn-favorito-card:hover{

    transform:scale(1.05);

}

.btn-favorito-card.ativo{

    background:#FF4D4D;

    color:#FFF;

    box-shadow:
        0 4px 12px rgba(255,77,77,.35);

}


.property-card{
    position:relative;
}
@media(max-width:768px){

    .imovel-breadcrumb-wrap{
        align-items:flex-start;
    }

    .btn-favorito{
        margin-top:2px;
    }

}

.menu-favoritos{

    position:relative;

    display:flex;

    align-items:center;

    gap:8px;

}

.favoritos-count{

    position:absolute;

    top:-8px;

    right:-8px;

    min-width:20px;

    height:20px;

    padding:0 5px;

    border-radius:20px;

    background:#FF4D4D;

    color:#FFF;

    font-size:11px;

    font-weight:600;

    display:flex;

    align-items:center;

    justify-content:center;
}

/* ==================================================
   SEO LINKS
================================================== */

.seo-links{

    padding: 70px 0;

    background: #fafafa;

    border-top: 1px solid #eee;

}

.seo-links h2{

    font-size: 32px;

    margin-bottom: 40px;

    color: #222;

}

.seo-grid{

    display: grid;

    grid-template-columns: repeat(3, 1fr);

    gap: 50px;

}

.seo-coluna h3{

    font-size: 22px;

    margin-bottom: 20px;

    color: #222;

}

.seo-coluna{

    display: flex;

    flex-direction: column;

    gap: 12px;

}

.seo-coluna a{

    color: #666;

    text-decoration: none;

    transition: .2s;

}

.seo-coluna a:hover{

    color: #FF4D4D;

}

@media(max-width:991px){

    .seo-grid{

        grid-template-columns: repeat(2,1fr);

    }

}

@media(max-width:768px){

    .seo-grid{

        grid-template-columns: 1fr;

    }

}

.anuncie-hero{

    text-align:center;

    padding:20px 20px 60px;

}

.anuncie-tag{

    display:inline-block;

    background:#fff0f0;

    color:#e53935;

    padding:10px 18px;

    border-radius:30px;

    font-size:14px;

    font-weight:600;

    margin-bottom:25px;

}

.anuncie-hero h1{

    max-width:900px;

    margin:0 auto 20px;

    font-size:clamp(2.4rem,5vw,4rem);

    line-height:1.1;

    font-weight:800;

    color:#222;

}

.anuncie-hero h2{

    max-width:850px;

    margin:0 auto 20px;

    font-size:1.4rem;

    line-height:1.5;

    font-weight:500;

    color:#444;

}

.anuncie-hero h3{

    max-width:700px;

    margin:0 auto;

    font-size:1rem;

    line-height:1.7;

    font-weight:400;

    color:#777;

}

.perfil-grid{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:25px;

    max-width:900px;

    margin:auto;

}

.perfil-card{

    background:#fff;

    border-radius:20px;

    padding:35px;

    text-decoration:none;

    color:#716c6c;

    box-shadow:0 8px 25px rgba(0,0,0,.08);

    transition:.25s;

}

.perfil-card:hover{

    transform:translateY(-5px);

    box-shadow:0 12px 30px rgba(0,0,0,.12);

}

.perfil-card .icone{

    width:72px;

    height:72px;

    margin:0 auto 20px;

    border-radius:50%;

    background:#fff5f5;

    display:flex;

    align-items:center;

    justify-content:center;

}
.perfil-card .icone svg{

    width:36px;

    height:36px;

    color:#FF4D4D;

}
@media (max-width: 768px){

    .perfil-grid{

        grid-template-columns:1fr;

        max-width:500px;

    }

    .perfil-card{

        padding:25px;

    }

    .anuncie-hero{

        padding:50px 20px;

    }

    .anuncie-hero h1{

        font-size:32px;

    }

}

.captacao-hero{

    padding:80px 20px 50px;

    text-align:center;

}

.captacao-tag{

    display:inline-block;

    background:#fff0f0;

    color:#e53935;

    padding:10px 18px;

    border-radius:30px;

    font-size:14px;

    font-weight:600;

    margin-bottom:20px;

}

.captacao-hero h1{

    font-size:clamp(2.4rem,5vw,4rem);

    font-weight:800;

    margin-bottom:15px;

}

.captacao-hero h2{

    max-width:800px;

    margin:0 auto 15px;

    font-size:1.4rem;

    font-weight:500;

    color:#444;

}

.captacao-hero p{

    color:#777;

    font-size:1rem;

}
.como-funciona{

    padding:20px 20px;

    text-align:center;

}

.como-funciona h2{

    font-size:2rem;

    font-weight:700;

    margin-bottom:10px;

}

.como-subtitulo{

    color:#666;

    margin-bottom:40px;

}

.passos-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:25px;

}

.passo-card{

    background:#fff;

    padding:30px;

    border-radius:20px;

    box-shadow:0 8px 25px rgba(0,0,0,.06);

    transition:.25s;

}

.passo-card:hover{

    transform:translateY(-5px);

    box-shadow:0 12px 30px rgba(0,0,0,.10);

}

.passo-icon{

    width:70px;

    height:70px;

    margin:0 auto 20px;

    border-radius:50%;

    background:#fff0f0;

    display:flex;

    align-items:center;

    justify-content:center;

}

.passo-icon svg{

    width:34px;

    height:34px;

    color:#FF4D4D;

}

.passo-card h3{

    margin-bottom:10px;

    font-size:18px;

}

.passo-card p{

    color:#666;

    line-height:1.6;

}
.captacao-aviso{

    display:flex;

    align-items:center;

    justify-content:center;

    gap:10px;

    margin:30px 0;

    color:#555;

    font-size:15px;
        
    font-weight:500;

}
.captacao-aviso svg{

    width:18px;

    height:18px;

    color:#22c55e;

}
.btn-captacao{

    display:block;

    margin:30px auto 0;

    background:#FF4D4D;

    color:#fff;

    border:0;

    border-radius:14px;

    padding:18px 40px;

    font-size:16px;

    font-weight:700;

    cursor:pointer;

    transition:.25s;

    margin-bottom:80px;

}

.btn-captacao:hover{

    transform:translateY(-2px);

    box-shadow:0 10px 25px rgba(255,77,77,.30);

}

@media (max-width:768px){

    .passos-grid{

        grid-template-columns:1fr;

    }

}
@media (max-width:768px){

    .captacao-aviso{

        max-width:320px;

        margin:30px auto;

        align-items:flex-start;

        text-align:left;

        line-height:1.6;

    }

    .captacao-aviso svg{

        flex-shrink:0;

        margin-top:2px;


    }

}

.form-captacao{

    max-width:1000px;

    margin:0 auto;

    padding:30px 30px;

}

.form-section{

    margin-bottom:40px;

}

.form-section h2{

    margin-bottom:25px;

    font-size:28px;

    font-weight:700;

}

.form-grid{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:20px;

}

.form-group{

    display:flex;

    flex-direction:column;

}

.form-group label{

    margin-bottom:8px;

    font-weight:600;

    color:#444;

}

.form-group input{

    height:54px;

    padding:0 16px;

    border:1px solid #ddd;

    border-radius:12px;

    font-size:15px;

}

.form-group select{

    height:54px;

    padding:0 16px;

    border:1px solid #ddd;

    border-radius:12px;

    font-size:15px;

    background:#fff;

}

.form-group textarea{

    width:100%;

    padding:16px;

    border:1px solid #ddd;

    border-radius:12px;

    font-size:15px;

    resize:vertical;

    min-height:140px;

    font-family:inherit;

}
.upload-card{

    background:#fff;

    border:2px dashed #e5e7eb;

    border-radius:20px;

    padding:40px;

    text-align:center;

    transition:.25s;

}

.upload-card:hover{

    border-color:#FF4D4D;

}
.upload-icon{

    width:90px;

    height:90px;

    margin:0 auto 20px;

    border-radius:50%;

    background:#fff5f5;

    display:flex;

    align-items:center;

    justify-content:center;

}
.upload-icon svg{

    width:42px;

    height:42px;

    color:#FF4D4D;

}
.upload-card h3{

    font-size:24px;

    margin-bottom:10px;

}
.upload-descricao{

    max-width:600px;

    margin:0 auto 25px;

    color:#666;

    line-height:1.6;

}
.upload-btn{

    display:inline-flex;

    align-items:center;

    gap:10px;

    padding:15px 28px;

    border-radius:14px;

    background:#FF4D4D;

    color:#fff;

    font-weight:600;

    cursor:pointer;

    transition:.25s;

}
.upload-btn:hover{

    transform:translateY(-2px);

}
#fotos{

    display:none;

}
#upload-info{

    margin-top:20px;

    font-weight:600;

    color:#444;

}
.upload-aviso{

    margin-top:25px;

    display:flex;

    align-items:center;

    justify-content:center;

    gap:10px;

    color:#666;

    font-size:14px;

    line-height:1.6;

}
.upload-aviso svg{

    width:18px;

    height:18px;

    color:#22c55e;

}
@media (max-width:768px){

    .upload-card{

        padding:25px;

    }

    .upload-aviso{

        text-align:left;

        align-items:flex-start;

    }

}

.upload-limite{

    margin-top:10px;

    font-size:13px;

    color:#777;

}

.upload-info{

    color:#666;

    margin-bottom:15px;

}

.upload-wrapper{

    text-align:center;

}

.upload-btn{

    display:inline-flex;

    align-items:center;

    gap:10px;

    padding:14px 28px;

    border-radius:14px;

    background:#f8f9fa;

    border:2px dashed #d9d9d9;

    color:#333;

    font-weight:600;

    cursor:pointer;

    transition:.25s;

}

.upload-btn:hover{

    background:#fff5f5;

    border-color:#FF4D4D;

    color:#FF4D4D;

}

.upload-btn svg{

    width:20px;

    height:20px;

}

#fotos{

    display:none;

}

#upload-info{

    margin-top:15px;

    color:#777;

    font-size:14px;

}

.campo-erro{

    margin-top:6px;

    color:#dc2626;

    font-size:13px;

    display:none;

}

.input-erro{

    border:1px solid #dc2626 !important;

}

.preview-fotos{

    display:flex;

    flex-wrap:wrap;

    gap:12px;

    justify-content:center;

    margin-top:20px;

}

.preview-fotos img{

    width:100px;

    height:100px;

    object-fit:cover;

    border-radius:12px;

    border:2px solid #eee;

    box-shadow:0 3px 10px rgba(0,0,0,.08);

}

@media (max-width:768px){

    .preview-fotos img{

        width:80px;

        height:80px;

    }

}

.contador-observacoes{

    margin-top:8px;

    text-align:right;

    font-size:13px;

    color:#777;

}

.preview-item{

    position:relative;

    display:inline-block;

}
.preview-remove{

    position:absolute;

    top:-8px;

    right:-8px;

    width:24px;

    height:24px;

    border:none;

    border-radius:50%;

    background:#ef4444;

    color:#fff;

    cursor:pointer;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:14px;

    font-weight:bold;

    box-shadow:0 2px 8px rgba(0,0,0,.20);

    z-index:10;

}

.preview-remove:hover{

    background:#dc2626;

}




@media (max-width:768px){

    .form-captacao{

        padding:0 25px;

    }

    .form-grid{

        grid-template-columns:1fr;

    }

}

.input-erro{
    border:2px solid #dc2626 !important;
    background:#fff5f5;
}

.campo-erro{
    display:none;
    color:#dc2626;
    font-size:13px;
    margin-top:6px;
}

.hp-field{
    position:absolute;
    left:-9999px;
    top:-9999px;
    opacity:0;
    pointer-events:none;
}

/* =====================================================
   AÇÕES ABAIXO DA GALERIA
===================================================== */

.imovel-acoes-topo {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 14px 0 6px;
}

.imovel-acoes-topo > .imovel-breadcrumb {
    margin: 0;
    margin-right: auto;
    text-align: left;
}

.imovel-acoes-topo > .compartilhar-wrapper {
    margin-left: auto;
}

.btn-acao-topo {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;

    height: 44px;
    padding: 0 16px;

    background: #fff;
    border: 1px solid #e2e2e2;
    border-radius: 8px;

    font-family: 'Poppins', sans-serif;
    font-size: 14px;
    font-weight: 500;
    color: #252525;

    cursor: pointer;
    transition: all 0.2s ease;
}

.btn-acao-topo svg {
    width: 18px;
    height: 18px;
    stroke-width: 1.8;
}

.btn-acao-topo:hover {
    background: #f7f7f7;
    border-color: #cfcfcf;
}

@media (max-width: 768px) {

    .imovel-acoes-topo {
        padding: 10px 0 4px;
    }

    .btn-acao-topo {
        height: 40px;
        padding: 0 13px;
        font-size: 13px;
    }

    .btn-acao-topo svg {
        width: 17px;
        height: 17px;
    }
}

/* =====================================================
   AÇÕES ABAIXO DA GALERIA
===================================================== */

.imovel-acoes-topo {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    padding: 14px 0 6px;
}

/* Botão fechado */
.btn-acao-topo {
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    gap: 0;

    width: 44px;
    height: 44px;
    padding: 0 12px;

    overflow: hidden;
    white-space: nowrap;

    background: #fff;
    border: 1px solid #e2e2e2;
    border-radius: 8px;

    font-family: 'Poppins', sans-serif;
    font-size: 14px;
    font-weight: 500;
    color: #252525;

    cursor: pointer;

    transition:
        width 0.3s ease,
        background 0.2s ease,
        border-color 0.2s ease,
        box-shadow 0.2s ease;
}

/* Ícone */
.btn-acao-topo svg {
    width: 18px;
    height: 18px;
    min-width: 18px;
    stroke-width: 1.8;
}

/* Texto escondido */
.btn-acao-topo span {
    opacity: 0;
    max-width: 0;
    margin-left: 0;

    transition:
        opacity 0.2s ease,
        max-width 0.3s ease,
        margin-left 0.3s ease;
}

/* Expande no hover */
.btn-acao-topo:hover {
    width: 44px;

    background: #f7f7f7;
    border-color: #cfcfcf;

    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.06);
}

/* Revela Compartilhar */
.btn-acao-topo:hover span {
    opacity: 1;
    max-width: 90px;
    margin-left: 8px;
}


/* MOBILE */

@media (max-width: 768px) {

    .imovel-acoes-topo {
        padding: 10px 0 4px;
    }

    .btn-acao-topo {
        width: 40px;
        height: 40px;
        padding: 0 10px;
    }

    .btn-acao-topo svg {
        width: 18px;
        height: 18px;
        min-width: 18px;
    }

    /* No celular não existe hover de verdade,
       então mantemos somente o ícone */
    .btn-acao-topo:hover {
        width: 40px;
    }

    .btn-acao-topo:hover span {
        opacity: 0;
        max-width: 0;
        margin-left: 0;
    }
}

/* =====================================================
   PAINEL DE COMPARTILHAMENTO
===================================================== */

.compartilhar-wrapper {
    position: relative;
    display: flex;
    align-items: center;
}

/* Painel flutuante */
.painel-compartilhamento {
    position: absolute;

    top: 50%;
    right: calc(100% + 10px);

    transform: translateY(-50%);

    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    gap: 7px;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transition:
        opacity 0.2s ease,
        visibility 0.2s ease;
}

/* Quando estiver aberto */
.painel-compartilhamento.ativo {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}


/* =====================================================
   BOTÕES DAS OPÇÕES
===================================================== */

.btn-opcao-compartilhar {
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;

    width: 44px;
    height: 44px;
    padding: 0 12px;

    overflow: hidden;
    white-space: nowrap;

    background: #fff;
    border: 1px solid #e2e2e2;
    border-radius: 8px;

    font-family: 'Poppins', sans-serif;
    font-size: 14px;
    font-weight: 500;
    color: #252525;

    cursor: pointer;

    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.04);

    transition:
        width 0.3s ease,
        background 0.2s ease,
        border-color 0.2s ease,
        box-shadow 0.2s ease;
}


/* Ícones */

.btn-opcao-compartilhar svg {
    width: 18px;
    height: 18px;
    min-width: 18px;
    stroke-width: 1.8;
}


/* X */

.btn-opcao-compartilhar .icone-x {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 18px;
    min-width: 18px;

    font-size: 16px;
    font-weight: 600;
}
.btn-opcao-compartilhar .icone-facebook {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 18px;
    min-width: 18px;

    font-family: Arial, sans-serif;
    font-size: 21px;
    font-weight: 700;
    line-height: 1;
}

/* Texto escondido */

.btn-opcao-compartilhar > span:not(.icone-x):not(.icone-facebook) {
    opacity: 0;
    max-width: 0;
    margin-left: 0;

    transition:
        opacity 0.2s ease,
        max-width 0.3s ease,
        margin-left 0.3s ease;
}


/* Expansão */

.btn-opcao-compartilhar:hover {
    width: 140px;

    background: #f7f7f7;
    border-color: #cfcfcf;

    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.06);
}


/* Texto aparece */

.btn-opcao-compartilhar:hover > span:not(.icone-x):not(.icone-facebook) {
    opacity: 1;
    max-width: 100px;
    margin-left: 8px;
}

/* AGENDAR VISITA */

.contato-tabs {
display: flex;
border-bottom: 1px solid #e5e7eb;
margin-bottom: 22px;
}

.tab-btn {
flex: 1;
background: none;
border: 0;
padding: 14px 10px;
display: flex;
align-items: center;
justify-content: center;
gap: 8px;
color: #6b7280;
font-size: 15px;
font-weight: 500;
cursor: pointer;
border-bottom: 2px solid transparent;
transition: .2s;
}

.tab-btn.active {
color: #E11D48;
border-bottom-color: #E11D48;
}

.tab-content {
display: none;
}

.tab-content.active {
display: block;
}

.contato-card input,
.contato-card textarea,
.contato-card select {
width: 100%;
border: 1px solid #e5e7eb;
border-radius: 12px;
padding: 14px 16px;
font-size: 15px;
margin-bottom: 14px;
background: #fff;
}

.contato-card textarea {
resize: vertical;
min-height: 120px;
}

.campo-label {
display: block;
margin-bottom: 8px;
color: #374151;
font-weight: 600;
font-size: 14px;
}

.aviso-visita {
background: #f8fafc;
border: 1px solid #e5e7eb;
border-radius: 12px;
padding: 14px;
color: #64748b;
font-size: 14px;
line-height: 1.5;
margin-bottom: 16px;
}

.btn-enviar {
width: 100%;
background: #E11D48;
color: #fff;
border: 0;
border-radius: 12px;
padding: 15px;
font-size: 16px;
font-weight: 600;
cursor: pointer;
}

.btn-enviar:hover {
background: #be123c;
}

.agenda-box{
    border:1px solid #e5e7eb;
    border-radius:14px;
    padding:18px;
    margin-bottom:18px;
}

.agenda-header{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:16px;
}

.agenda-header h4{
    margin:0;
    font-size:22px;
    font-weight:700;
}

.agenda-nav{
    display:flex;
    gap:8px;
}

.agenda-nav button{
    width:44px;
    height:44px;
    border:1px solid #e5e7eb;
    background:#fff;
    border-radius:10px;
    cursor:pointer;
    font-size:20px;
    color:#6b7280;
}

.agenda-dias{
    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:8px;
}

.dia-card{
    min-width:0;
    border:1px solid #e5e7eb;
    border-radius:10px;
    padding:10px 4px;
    text-align:center;
    cursor:pointer;
    transition:.2s;
}

.dia-card{
    flex:1;
    border:1px solid #e5e7eb;
    border-radius:10px;
    padding:10px 6px;
    text-align:center;
    cursor:pointer;
    transition:.2s;
}

.dia-card:hover{
    border-color:#E11D48;
}

.dia-card.active{
    border-color:#E11D48;
    background:#fff5f7;
}

.dia-semana{
    font-size:13px;
    color:#6b7280;
}

.dia-numero{
    font-size:26px;
    font-weight:700;
    color:#111827;
    line-height:1;
    margin:6px 0;
}

.dia-mes{
    font-size:13px;
    color:#6b7280;
}

.horarios-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:10px;
    margin-bottom:18px;
}

.hora-btn{
    border:1px solid #e5e7eb;
    background:#fff;
    border-radius:10px;
    padding:12px;
    font-size:15px;
    cursor:pointer;
    transition:.2s;
}

.hora-btn:hover{
    border-color:#E11D48;
    color:#E11D48;
}

.hora-btn.active{
    background:#E11D48 !important;
    color:#fff !important;
    border-color:#E11D48 !important;
}
.sucesso-visita{
    margin-top:16px;
    padding:16px;
    border-radius:12px;
    background:#ecfdf5;
    border:1px solid #bbf7d0;
    color:#166534;
    font-size:14px;
    line-height:1.5;
}
#resultadoVisita{
    display:none;
    margin-top:16px;
    padding:14px 16px;
    border-radius:12px;
    background:#ecfdf5;
    border:1px solid #bbf7d0;
    color:#166534;
    font-size:14px;
    line-height:1.5;
}

#formVisitaConteudo.form-enviado{
    opacity: .35;
    pointer-events: none;
    transition: opacity .3s ease;
}

#resultadoVisita{
    display:none;
    margin-top:16px;
    padding:14px 16px;
    border-radius:12px;
    background:#ecfdf5;
    border:1px solid #bbf7d0;
    color:#166534;
    font-size:14px;
    line-height:1.5;
}
#formEmailConteudo.form-enviado{
    opacity:.35;
    pointer-events:none;
    transition:opacity .3s ease;
}

/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 768px) {

    .painel-compartilhamento {
        gap: 5px;
        right: calc(100% + 7px);
    }

    .btn-opcao-compartilhar {
        width: 40px;
        height: 40px;
        padding: 0 10px;
    }

    .btn-opcao-compartilhar:hover {
        width: 40px;
    }

    .btn-opcao-compartilhar:hover > span:not(.icone-x) {
        opacity: 0;
        max-width: 0;
        margin-left: 0;
    }
}