/* Estilos para o Pop-up de Boas-Vindas */
.popup-overlay {
    position: fixed; top: 0; left: 0; width: 100%; height: 100%;
    background-color: rgba(0, 0, 0, 0.7); z-index: 9998; display: flex;
    justify-content: center; align-items: center; opacity: 0;
    visibility: hidden; transition: opacity 0.4s ease, visibility 0.4s ease;
    backdrop-filter: blur(5px); -webkit-backdrop-filter: blur(5px);
}
.popup-overlay.ativo { opacity: 1; visibility: visible; }
.popup-caixa {
    background: linear-gradient(145deg, #ffffff, #f3e8ff); padding: 30px 40px;
    border-radius: 20px; box-shadow: 0 15px 40px rgba(0, 0, 0, 0.3);
    width: 90%; max-width: 600px; text-align: center; position: relative;
    transform: scale(0.8); transition: transform 0.4s cubic-bezier(0.18, 0.89, 0.32, 1.28);
}
.popup-overlay.ativo .popup-caixa { transform: scale(1); }
.popup-titulo {
    font-size: 2.2rem; font-weight: 700; margin-bottom: 15px;
    background: linear-gradient(45deg, #4c1d95, #8b5cf6);
    -webkit-background-clip: text; -webkit-text-fill-color: transparent;
    background-clip: text; color: transparent;
}
.popup-slogan { font-size: 1.1rem; color: #555; margin-bottom: 30px; }
.popup-servicos-lista { display: flex; flex-direction: column; gap: 15px; margin-bottom: 35px; }
.servico-item {
    display: flex; align-items: center; background-color: rgba(255, 255, 255, 0.7);
    padding: 15px; border-radius: 12px; border: 1px solid #e5d4fa;
    transition: all 0.2s ease-in-out;
}
.servico-item:hover { transform: scale(1.03); box-shadow: 0 5px 15px rgba(0,0,0,0.05); }
.servico-item i { font-size: 1.8rem; color: #8b5cf6; margin-right: 15px; width: 40px; }
.servico-item span { font-size: 1rem; color: #333; font-weight: 500; text-align: left; }
.popup-fechar {
    position: absolute; top: 10px; right: 15px; font-size: 2rem;
    color: #aaa; cursor: pointer; transition: transform 0.2s, color 0.2s;
    line-height: 1;
}
.popup-fechar:hover { transform: rotate(90deg); color: #333; }
.servico-item span strong {
    font-size: 1.3rem; /* Aumenta um pouco o tamanho do título do serviço */
}

/* Aumenta o tamanho da fonte da descrição e do preço */
.servico-item small {
    font-size: 1.45rem; /* Aumenta o tamanho da descrição e do preço */
    font-weight: 700;   /* DEIXA EM NEGRITO */
    color: #333;       /* Deixa o texto um pouco mais escuro para melhor leitura */
}
/* ======================================================= */
/* REGRAS DE RESPONSIVIDADE PARA CELULAR (VERSÃO FINAL 2.0) */
/* ======================================================= */

/* ======================================================= */
/* REGRAS DE RESPONSIVIDADE PARA CELULAR (VERSÃO FINAL 3.0) */
/* ======================================================= */

@media (max-width: 768px) {

    .popup-overlay {
        padding: 0;
        align-items: flex-start;
    }

    .popup-caixa {
        width: 100%;
        height: 100%;
        border-radius: 0;
        padding: 20px;
        display: flex;
        flex-direction: column;
        overflow-y: auto;
        transform: none;
        /* CORREÇÃO: Adiciona um espaçamento no final para não ser coberto pelo botão */
        padding-bottom: 120px; 
    }

    .popup-titulo {
        font-size: 1.6rem;
        margin-top: 20px;
    }

    .popup-slogan {
        font-size: 0.95rem;
        margin-bottom: 20px;
    }

    .servico-item {
        padding: 10px;
        text-align: left;
    }

    .servico-item i {
        font-size: 1.4rem;
        margin-right: 10px;
    }

    .servico-item span {
        font-size: 0.85rem;
    }

    .servico-item span strong {
        font-size: 0.9rem;
    }

    .popup-fechar {
        position: fixed;
        top: 15px;
        right: 15px;
        z-index: 10001;
        background: rgba(0, 0, 0, 0.5);
        color: white;
        width: 35px;
        height: 35px;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 50%;
        font-size: 1.5rem;
        line-height: 1;
    }

    /* --- ÁREA DO BOTÃO DE AÇÃO FIXO --- */
    
    /* Cria uma "caixa" invisível no fundo para o botão */
    .popup-cta-container {
        position: fixed;
        bottom: 0;
        left: 0;
        width: 100%;
        padding: 15px;
        background: linear-gradient(to top, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0)); /* Efeito de degradê para suavizar */
        z-index: 10000;
        display: flex;
        justify-content: center;
    }

    .popup-cta {
        /* O botão agora fica DENTRO do container */
        width: 100%;
        max-width: 400px; /* Limita a largura em telas maiores */
        padding: 15px;
        font-size: 1rem;
        /* O estilo do botão (gradiente, cor, etc.) já está definido no CSS principal */
    }
}
.popup-cta {
    display: inline-block;
    background: linear-gradient(145deg, #8A5CF5, #6B46C1); /* Gradiente roxo/lilás */
    color: #fff !important; /* Cor do texto branca, com !important para garantir */
    padding: 15px 35px;
    border-radius: 50px; /* Bordas totalmente arredondadas */
    text-decoration: none !important; /* Remove o sublinhado do link */
    font-weight: bold;
    font-size: 1.1rem;
    transition: transform 0.2s, box-shadow 0.2s;
    border: none;
    cursor: pointer;
}

.popup-cta:hover {
    transform: scale(1.05);
    box-shadow: 0 8px 20px rgba(138, 92, 245, 0.4);
}

/* Garante que os itens de serviço sejam links sem sublinhado */
.servico-item {
    text-decoration: none;
}