/* Página do vendedor (nome.cardvip.com.br, 04/11/2026) — cores da CardVip, pensada primeiro para o celular. */
:root {
    --pv-azul: #0647d9;
    --pv-azul-escuro: #08266f;
    --pv-vermelho: #d7272f;
    --pv-ciano: #0ea5e9;
    --pv-texto: #10233f;
    --pv-suave: #5b6b82;
    --pv-fundo: #f4f7fc;
    --pv-verde-zap: #1fa855;
    --pv-raio: 18px;
    --pv-sombra: 0 14px 40px rgba(8, 38, 111, .12);
}

.pv-body { background: var(--pv-fundo); color: var(--pv-texto); font-size: 16px; }
.pv-body main { min-height: 50vh; }

/* topo */
.pv-topo { position: sticky; top: 0; z-index: 30; background: rgba(255, 255, 255, .96); backdrop-filter: blur(8px);
    border-bottom: 1px solid #e3e9f4; padding: 10px 0; }
.pv-marca { display: flex; align-items: center; gap: 10px; text-decoration: none; color: var(--pv-texto); }
.pv-marca img { height: 34px; width: auto; }
.pv-marca-nome { font-weight: 700; font-size: .95rem; color: var(--pv-azul-escuro); border-left: 1px solid #d5deee; padding-left: 10px; }
.pv-btn-zap { background: var(--pv-verde-zap); color: #fff; border-radius: 999px; font-weight: 700; padding: .45rem .95rem; }
.pv-btn-zap:hover { background: #178c45; color: #fff; }

/* hero */
.pv-hero { position: relative; overflow: hidden; color: #fff; padding: 44px 0 64px;
    background: radial-gradient(1200px 500px at 85% -10%, rgba(14, 165, 233, .45), transparent 60%),
                linear-gradient(135deg, var(--pv-azul) 0%, var(--pv-azul-escuro) 100%); }
.pv-hero h1 { font-weight: 800; letter-spacing: -.02em; font-size: clamp(1.75rem, 5.5vw, 3rem); line-height: 1.1; }
.pv-hero h1 span { color: #ffd84d; }
.pv-hero p.lead { color: rgba(255, 255, 255, .88); font-size: clamp(1rem, 2.6vw, 1.2rem); }
.pv-selo { display: inline-flex; align-items: center; gap: 8px; background: rgba(255, 255, 255, .14); border: 1px solid rgba(255, 255, 255, .25);
    border-radius: 999px; padding: 6px 14px; font-size: .85rem; font-weight: 600; }
.pv-cta { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 22px; }
.pv-btn-principal { background: var(--pv-vermelho); color: #fff; font-weight: 800; border-radius: 14px; padding: .9rem 1.4rem;
    box-shadow: 0 10px 24px rgba(215, 39, 47, .35); border: 0; }
.pv-btn-principal:hover { background: #b81f26; color: #fff; }
.pv-btn-claro { background: #fff; color: var(--pv-azul-escuro); font-weight: 700; border-radius: 14px; padding: .9rem 1.3rem; border: 0; }
.pv-btn-claro:hover { background: #eef3ff; color: var(--pv-azul-escuro); }

/* cartão do vendedor */
.pv-cartao-vendedor { background: #fff; color: var(--pv-texto); border-radius: 24px; padding: 26px 22px; box-shadow: var(--pv-sombra);
    text-align: center; max-width: 380px; margin: 0 auto; }
.pv-avatar { width: 132px; height: 132px; border-radius: 50%; margin: -82px auto 14px; border: 6px solid #fff; overflow: hidden;
    background: linear-gradient(135deg, #e8efff, #cfdcff); display: flex; align-items: center; justify-content: center;
    box-shadow: 0 10px 26px rgba(8, 38, 111, .25); }
.pv-avatar img { width: 100%; height: 100%; object-fit: cover; }
.pv-avatar i { font-size: 3.6rem; color: var(--pv-azul); }
.pv-cartao-vendedor h2 { font-size: 1.25rem; font-weight: 800; margin-bottom: 2px; }
.pv-cargo { color: var(--pv-suave); font-weight: 600; font-size: .9rem; }
.pv-confianca { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin-top: 16px; font-size: .78rem; color: var(--pv-suave); }
.pv-confianca i { display: block; font-size: 1.15rem; color: var(--pv-azul); margin-bottom: 4px; }

/* seções */
.pv-secao { padding: 56px 0; }
.pv-secao h2.pv-titulo { font-weight: 800; letter-spacing: -.02em; font-size: clamp(1.45rem, 4vw, 2.1rem); }
.pv-sub { color: var(--pv-suave); max-width: 680px; }
.pv-card { background: #fff; border-radius: var(--pv-raio); padding: 22px; box-shadow: var(--pv-sombra); height: 100%; border: 1px solid #edf1f8; }
.pv-icone { width: 48px; height: 48px; border-radius: 14px; display: flex; align-items: center; justify-content: center;
    background: #eaf0ff; color: var(--pv-azul); font-size: 1.3rem; margin-bottom: 12px; }
.pv-icone img { width: 28px; height: 28px; object-fit: contain; }
.pv-card h3 { font-size: 1.05rem; font-weight: 800; margin-bottom: 6px; }
.pv-card p { color: var(--pv-suave); margin-bottom: 0; font-size: .95rem; }

/* números */
.pv-numeros { background: #fff; border-radius: var(--pv-raio); box-shadow: var(--pv-sombra); margin-top: -40px; position: relative; z-index: 2; }
.pv-numero strong { display: block; font-size: 1.6rem; font-weight: 800; color: var(--pv-azul); }
.pv-numero span { color: var(--pv-suave); font-size: .85rem; }

/* cartões à venda */
.pv-oferta { position: relative; background: #fff; border-radius: 22px; padding: 26px 22px; box-shadow: var(--pv-sombra); height: 100%;
    display: flex; flex-direction: column; border: 2px solid transparent; }
.pv-oferta.pv-destaque { border-color: var(--pv-azul); }
.pv-oferta .pv-fita { position: absolute; top: -12px; left: 50%; transform: translateX(-50%); background: var(--pv-vermelho); color: #fff;
    font-size: .75rem; font-weight: 800; border-radius: 999px; padding: 4px 12px; white-space: nowrap; }
.pv-oferta h3 { font-weight: 800; font-size: 1.2rem; }
.pv-preco { font-size: 2.1rem; font-weight: 800; color: var(--pv-azul-escuro); line-height: 1; }
.pv-preco small { font-size: .9rem; color: var(--pv-suave); font-weight: 600; }
.pv-oferta ul { list-style: none; padding: 0; margin: 14px 0 18px; color: var(--pv-suave); font-size: .92rem; }
.pv-oferta li { padding: 4px 0; }
.pv-oferta li i { color: #1e7b3c; margin-right: 6px; }

/* passos */
.pv-passo { text-align: center; }
.pv-passo .pv-num { width: 44px; height: 44px; border-radius: 50%; background: var(--pv-azul); color: #fff; font-weight: 800;
    display: inline-flex; align-items: center; justify-content: center; margin-bottom: 10px; }

/* faq */
.pv-faq .accordion-item { border: 0; border-radius: 14px !important; margin-bottom: 10px; overflow: hidden; box-shadow: 0 6px 18px rgba(8, 38, 111, .07); }
.pv-faq .accordion-button { font-weight: 700; color: var(--pv-texto); }
.pv-faq .accordion-button:not(.collapsed) { background: #eef3ff; color: var(--pv-azul-escuro); box-shadow: none; }

/* contato */
.pv-contato { background: linear-gradient(135deg, var(--pv-azul-escuro), var(--pv-azul)); color: #fff; border-radius: 26px; padding: 30px 22px; }
.pv-contato .form-control { border-radius: 12px; padding: .75rem .9rem; border: 0; }
.pv-contato label { font-weight: 600; font-size: .9rem; }
.pv-contato .form-check-label { font-weight: 400; font-size: .82rem; color: rgba(255, 255, 255, .85); }
.pv-ok { background: #e7f7ee; color: #14532d; border-radius: 14px; padding: 14px 16px; font-weight: 600; }

/* rodapé */
.pv-rodape { background: #071a4d; color: #c9d6f5; padding: 28px 0 90px; margin-top: 30px; }
.pv-rodape a { color: #fff; text-decoration: none; }
.pv-rodape a:hover { text-decoration: underline; }

/* whatsapp flutuante */
.pv-zap-flutuante { position: fixed; right: 16px; bottom: 16px; z-index: 40; width: 58px; height: 58px; border-radius: 50%;
    background: var(--pv-verde-zap); color: #fff; display: flex; align-items: center; justify-content: center; font-size: 1.9rem;
    box-shadow: 0 12px 28px rgba(31, 168, 85, .45); text-decoration: none; }
.pv-zap-flutuante:hover { color: #fff; transform: scale(1.05); }

@media (min-width: 992px) {
    .pv-hero { padding: 72px 0 110px; }
    .pv-avatar { margin-top: 0; }
    .pv-secao { padding: 80px 0; }
}
