/* Página de planos: preços logo depois do topo, plano destacado e comparação
   com "incluso / não incluso". Usa as cores da instalação (--primary). */

.page-planos {
    background: #f8fafc;
    --plano-borda: #d5dbe6;
    --plano-texto: #0f172a;
    --plano-texto-2: #475569;
    --plano-verde: #0f7a41;
}

/* ===== PLANOS ===== */
.planos-lista {
    margin-top: -44px;
    padding-bottom: 40px;
}

.planos-grid {
    display: grid;
    gap: 16px;
    max-width: 1040px;
    margin: 0 auto;
}

@media (min-width: 768px) {
    .planos-grid {
        grid-template-columns: repeat(auto-fit, minmax(290px, 1fr));
        align-items: stretch;
        gap: 20px;
    }
}

/* No celular o plano destacado vem primeiro */
@media (max-width: 767.98px) {
    .plano--destaque {
        order: -1;
    }
}

.plano {
    position: relative;
    display: flex;
    flex-direction: column;
    padding: 24px 20px 20px;
    background: #fff;
    border: 1.5px solid var(--plano-borda);
    border-radius: 16px;
    color: var(--plano-texto);
}

@media (min-width: 768px) {
    .plano {
        padding: 28px 24px 24px;
    }
}

.plano--destaque {
    border: 2px solid var(--primary, #2d2b52);
    box-shadow: 0 10px 28px rgba(15, 23, 42, 0.12);
}

.plano-selo {
    position: absolute;
    top: -14px;
    left: 20px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 5px 12px;
    border-radius: 8px;
    /* cor de destaque da instalação (a mesma do botão "Anunciar agora"); texto escuro = contraste > 10:1 */
    background: var(--primary-color, #ffb81c);
    color: #1a1200;
    font-size: 13px;
    font-weight: 800;
    box-shadow: 0 4px 10px rgba(15, 23, 42, 0.18);
}

.plano-selo svg {
    width: 14px;
    height: 14px;
    fill: currentColor;
}

.plano-nome {
    margin: 0;
    font-size: 20px;
    font-weight: 800;
    color: var(--plano-texto);
}

.plano-resumo {
    margin: 6px 0 0;
    font-size: 15px;
    line-height: 1.45;
    color: var(--plano-texto-2);
}

.plano-preco {
    margin: 16px 0 18px;
    padding-bottom: 18px;
    border-bottom: 1px solid #e5e9f0;
}

.plano-valor {
    margin: 0;
    font-size: 40px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: -0.02em;
    color: var(--plano-texto);
    font-variant-numeric: tabular-nums;
}

.plano-valor .moeda {
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 0;
}

.plano-valor--gratis {
    color: var(--plano-verde);
}

.plano-periodo {
    margin: 8px 0 0;
    font-size: 15px;
    line-height: 1.4;
    color: var(--plano-texto-2);
}

/* segunda linha do preço, sem ponto solto: "por 12 meses" em cima, "equivale a ..." embaixo */
.plano-equivale {
    display: block;
    margin-top: 2px;
    font-weight: 600;
    color: var(--plano-texto);
}

.plano-itens {
    flex: 1;
    margin: 0 0 22px;
    padding: 0;
    list-style: none;
}

.plano-item {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 6px 0;
    font-size: 16px;
    line-height: 1.4;
    color: var(--plano-texto);
}

.plano-item svg {
    flex: none;
    width: 20px;
    height: 20px;
    margin-top: 1px;
    color: var(--plano-verde);
}

.plano-item--nao {
    color: #64748b;
}

.plano-item--nao svg {
    color: #94a3b8;
}

.plano-extra {
    display: inline-block;
    padding: 1px 8px;
    border: 1px solid var(--plano-borda);
    border-radius: 6px;
    font-size: 13px;
    font-weight: 600;
    color: var(--plano-texto-2);
    white-space: nowrap;
}

.plano-sr {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
}

/* ===== BOTÕES ===== */
.plano-cta {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    padding: 0 18px;
    border-radius: 12px;
    font-size: 16px;
    font-weight: 700;
    text-align: center;
    text-decoration: none;
    transition: background-color 0.15s, color 0.15s;
}

.plano-cta--primario {
    background: var(--primary, #2d2b52);
    color: #fff;
}

.plano-cta--primario:hover {
    background: color-mix(in srgb, var(--primary, #2d2b52) 80%, #000);
    color: #fff;
}

.plano-cta--secundario {
    background: #fff;
    color: var(--primary, #2d2b52);
    box-shadow: inset 0 0 0 2px var(--primary, #2d2b52);
}

.plano-cta--secundario:hover {
    background: #f1f5f9;
    color: var(--primary, #2d2b52);
}

.plano-cta:focus-visible,
.planos-duvidas a:focus-visible {
    outline: 3px solid #1d4ed8;
    outline-offset: 2px;
}

.planos-duvidas {
    margin: 22px 0 0;
    text-align: center;
    font-size: 16px;
    color: var(--plano-texto-2);
}

.planos-duvidas a {
    font-weight: 700;
    color: var(--primary, #2d2b52);
    text-decoration: underline;
    text-underline-offset: 3px;
}

.planos-vazio {
    max-width: 420px;
    margin: 0 auto;
    padding: 28px 20px;
    background: #fff;
    border: 1.5px solid var(--plano-borda);
    border-radius: 16px;
    text-align: center;
    color: var(--plano-texto-2);
}

/* ===== O QUE SUA EMPRESA GANHA ===== */
.planos-ganha {
    padding: 40px 0 56px;
    background: #fff;
    border-top: 1px solid #e5e9f0;
}

.planos-ganha h2 {
    margin: 0 0 24px;
    text-align: center;
    font-size: 24px;
    font-weight: 800;
    letter-spacing: -0.01em;
    color: var(--plano-texto);
}

.ganha-lista {
    display: grid;
    gap: 20px 32px;
    max-width: 1040px;
    margin: 0 auto;
    padding: 0;
    list-style: none;
}

@media (min-width: 768px) {
    .ganha-lista {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

.ganha-lista li {
    display: flex;
    gap: 14px;
    align-items: flex-start;
}

.ganha-lista svg {
    flex: none;
    width: 40px;
    height: 40px;
    padding: 9px;
    border-radius: 10px;
    background: color-mix(in srgb, var(--primary, #2d2b52) 10%, #fff);
    color: var(--primary, #2d2b52);
}

.ganha-lista h3 {
    margin: 0 0 2px;
    font-size: 17px;
    font-weight: 700;
    color: var(--plano-texto);
}

.ganha-lista p {
    margin: 0;
    font-size: 15px;
    line-height: 1.5;
    color: var(--plano-texto-2);
}

/* Celular: o WhatsApp flutuante cobria os itens dos planos (a dúvida pelo WhatsApp tem link próprio na página) */
@media (max-width: 768px) {
    .wa-widget-container {
        display: none !important;
    }
}

/* Desktop: a lista de itens começa na mesma altura nos três planos */
@media (min-width: 768px) {
    .plano-preco {
        min-height: 118px;
    }
}
