/* Página /precos: tabela comparativa, dúvidas e chamada final (os cards vêm do pricing.css) */
.precos-page { --pr-line: #262626; --pr-muted: #9b9b9b; --pr-pink: #ff2d9b; background: #0d0d0d; color: #fff; font-family: 'Quicksand', sans-serif; }
.precos-page main { overflow-x: clip; }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

.pc-h2 { margin: 16px 0 12px; font-size: clamp(28px, 4vw, 40px); line-height: 1.15; font-weight: 700; letter-spacing: -.02em; text-wrap: balance; }
.pc-h2 em { font-style: normal; color: #ff2d9b; }
.pc-lead { margin: 0; color: #9b9b9b; font-size: 16px; line-height: 1.55; text-wrap: balance; }

/* Tabela comparativa */
.pc-compare { max-width: 960px; margin: 0 auto; padding: 72px 20px; text-align: center; }
.pc-compare .pc-lead { max-width: 560px; margin: 0 auto 36px; }
.pc-table-wrap { border: 1px solid #262626; border-radius: 22px; background: #121212; overflow: hidden; }
.pc-table { width: 100%; border-collapse: collapse; font-size: 14px; text-align: center; }
.pc-table th, .pc-table td { padding: 14px 12px; border-bottom: 1px solid #1f1f1f; }
.pc-table thead th { padding: 22px 12px 18px; vertical-align: bottom; font-weight: 400; }
.pc-table thead b { display: block; font-size: 16px; font-weight: 700; }
.pc-table thead small { display: block; margin-top: 4px; color: #9b9b9b; font-size: 13px; }
.pc-table thead em { display: inline-block; margin-bottom: 8px; padding: 3px 9px; border-radius: 999px; background: #ff2d9b; color: #fff; font-style: normal; font-size: 10.5px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.pc-table tbody th { text-align: left; font-weight: 600; color: #e6e6e6; width: 38%; }
.pc-table tbody th small { display: block; margin-top: 2px; color: #7d7d7d; font-weight: 400; font-size: 12.5px; }
.pc-table td { color: #cfcfcf; font-weight: 600; }
.pc-table .rec { background: rgba(255, 45, 155, .05); }
.pc-table .yes { color: #ff2d9b; font-size: 16px; }
.pc-table .no { color: #4a4a4a; }
.pc-table .pc-group th { padding: 22px 16px 8px; text-align: left; font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: #7d7d7d; border-bottom: 0; background: transparent; }
.pc-table tfoot td { padding: 18px 12px 22px; border-bottom: 0; }
.pc-pick { display: inline-flex; align-items: center; justify-content: center; min-width: 120px; height: 42px; padding: 0 18px; border-radius: 999px; border: 1px solid #333; color: #fff; text-decoration: none; font-weight: 700; font-size: 14px; transition: background-color .2s, border-color .2s; }
.pc-pick:hover { background: #1b1b1b; border-color: #555; }
.pc-pick--rec { border: 0; background: linear-gradient(180deg, #ff2d9b, #e0177f); }
.pc-pick--rec:hover { background: linear-gradient(180deg, #ff47a8, #e8228a); }

/* Dúvidas */
.pc-faq { display: grid; grid-template-columns: 320px minmax(0, 1fr); gap: 48px; max-width: 1000px; margin: 0 auto; padding: 72px 20px; }
.pc-faq-side { align-self: start; position: sticky; top: 96px; }
.pc-help { display: inline-flex; margin-top: 24px; padding: 11px 18px; border-radius: 999px; border: 1px solid #333; color: #fff; text-decoration: none; font-weight: 700; font-size: 14px; }
.pc-help:hover { border-color: #555; background: #161616; }
.pc-hours { display: block; margin-top: 10px; color: #7d7d7d; font-size: 13px; }
.pc-faq-list { border-top: 1px solid #262626; }
.pc-faq-list details { border-bottom: 1px solid #262626; }
.pc-faq-list summary { position: relative; padding: 20px 40px 20px 0; cursor: pointer; list-style: none; font-size: 16px; font-weight: 700; }
.pc-faq-list summary::-webkit-details-marker { display: none; }
.pc-faq-list summary::after { content: "+"; position: absolute; right: 4px; top: 50%; transform: translateY(-50%); color: #ff2d9b; font-size: 22px; font-weight: 400; }
.pc-faq-list details[open] summary::after { content: "−"; }
.pc-faq-list p { margin: -6px 0 20px; color: #a8a8a8; font-size: 15px; line-height: 1.6; }

/* Chamada final */
.pc-cta { max-width: 640px; margin: 0 auto; padding: 72px 20px 110px; text-align: center; }
.pc-cta .pc-lead { margin-bottom: 28px; }
.pc-cta-btn { display: inline-flex; align-items: center; gap: 8px; height: 54px; padding: 0 30px; border-radius: 999px; background: linear-gradient(180deg, #ff2d9b, #e0177f); color: #fff; text-decoration: none; font-weight: 700; font-size: 16px; }
.pc-cta-btn:hover { filter: brightness(1.06); }

@media (max-width: 760px) {
    /* Celular: o nome do recurso ocupa a linha de cima e os 3 valores ficam lado a lado embaixo */
    .pc-table, .pc-table thead, .pc-table tbody, .pc-table tfoot { display: block; }
    .pc-table tr { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-bottom: 1px solid #1f1f1f; }
    .pc-table th, .pc-table td { display: block; border-bottom: 0; padding: 10px 4px; font-size: 13px; }
    .pc-table thead tr > :first-child, .pc-table tfoot tr > :first-child { display: none; }
    .pc-table thead th { padding: 16px 4px 14px; }
    .pc-table thead b { font-size: 14px; }
    .pc-table thead em { font-size: 9px; padding: 3px 6px; }
    .pc-table tbody th { grid-column: 1 / -1; width: auto; padding: 14px 14px 0; }
    .pc-table tbody td { padding: 6px 4px 14px; }
    .pc-table .pc-group { display: block; }
    .pc-table .pc-group th { padding: 20px 14px 8px; }
    .pc-table tbody tr:not(.pc-group) th small { display: inline; margin-left: 6px; }
    .pc-table tfoot tr { border-bottom: 0; }
    .pc-table tfoot td { padding: 14px 4px 18px; }
    .pc-pick { min-width: 0; width: 100%; padding: 0 8px; height: 38px; font-size: 13px; }
    .pc-faq { grid-template-columns: 1fr; gap: 24px; }
    .pc-faq-side { position: static; }
}
