/* ============================================================
   MELHOR PRECO GARANTIDO — /melhor-preco-garantido/ (tarefa 40/60)
   Carrega so nesta rota (inc/melhor-preco.php).
   Breakpoints do tema: 1220 / 970 / 680.
   ============================================================ */

/* o #header e fixo e o global-styles zera o padding do body nas rotas
   proprias: quem afasta o conteudo e o breadcrumb (como na lista de espera) */
body.qs-melhor-preco #breadcrumb { padding-top: 72px; }

.qs-mpg { display: block; width: 100%; float: left; background-color: #fff; }
.qs-mpg h2 {
  margin-bottom: 18px;
  font-size: 28px; font-weight: 900; line-height: 1.2; color: var(--darkblue);
}
.qs-mpg h3 { margin: 28px 0px 12px; font-size: 18px; font-weight: 800; color: var(--darkblue); }
.qs-mpg p { font-size: 16px; line-height: 1.6; color: var(--black); }
.qs-mpg-estreito { max-width: 820px; }
/* o reset do tema tira o negrito do strong */
.qs-mpg strong { font-weight: 800; }

.qs-mpg-sec { padding: 56px 0px; }
.qs-mpg-sec--cinza { background-color: var(--surface-blue, #eef4fa); }
.qs-mpg-lead { margin-bottom: 14px; font-size: 17px; }
.qs-mpg-nota { margin-top: 16px; font-size: 13px !important; color: #6b7780 !important; }

/* ---------- botoes ---------- */
.qs-mpg-bt {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  min-height: 48px; padding: 0px 26px; border: 0px; border-radius: 2rem;
  font-size: 16px; font-weight: 800; text-decoration: none; cursor: pointer;
}
.qs-mpg-bt--forte { background-color: var(--yellow); color: var(--darkblue); }
.qs-mpg-bt--forte:hover { background-color: #ffc46a; }
.qs-mpg-bt--forte[disabled] { opacity: .6; cursor: default; }
.qs-mpg-bt--wa { background-color: #1f9d55; color: #fff; }
.qs-mpg-bt--wa:hover { background-color: #178246; color: #fff; }

/* ---------- dobra ---------- */
.qs-mpg-dobra { padding: 40px 0px 56px; background-color: var(--darkblue); color: #fff; }
.qs-mpg-selo {
  display: inline-flex; align-items: center; gap: 8px; margin-bottom: 16px;
  padding: 6px 14px; border-radius: 2rem; background-color: var(--yellow);
  font-size: 14px; font-weight: 800; color: var(--darkblue);
}
.qs-mpg-dobra h1 { max-width: 820px; margin-bottom: 14px; font-size: 40px; font-weight: 900; line-height: 1.15; color: #fff; }
.qs-mpg-dobra .qs-mpg-sub { max-width: 720px; font-size: 18px; color: #fff; opacity: .92; }
.qs-mpg-ctas { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; }

/* ---------- como funciona ---------- */
.qs-mpg-passos { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin: 0px; padding: 0px; list-style: none; }
.qs-mpg-passos li {
  padding: 22px; border: 1px solid var(--border); border-radius: var(--radius-card, 10px); background-color: #fff;
}
.qs-mpg-num {
  display: inline-flex; align-items: center; justify-content: center;
  width: 36px; height: 36px; margin-bottom: 12px; border-radius: 50%;
  background-color: var(--blue); color: #fff; font-weight: 900;
}
.qs-mpg-passos strong { display: block; margin-bottom: 6px; font-size: 18px; color: var(--darkblue); }
.qs-mpg-passos p { margin: 0px; font-size: 15px; }

/* ---------- comparativo ---------- */
.qs-mpg-comp { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-top: 10px; }
.qs-mpg-col {
  display: flex; flex-direction: column; gap: 8px; padding: 22px;
  border-radius: var(--radius-card, 10px); background-color: #fff; border: 1px solid var(--border);
}
.qs-mpg-col > strong { margin-bottom: 4px; font-size: 17px; color: var(--darkblue); }
.qs-mpg-barra { display: block; padding: 12px 14px; border-radius: 6px; font-size: 14px; font-weight: 700; }
.qs-mpg-barra--tela { background-color: #dfeaf4; color: var(--darkblue); }
.qs-mpg-barra--taxa { background-color: #fde2e0; color: #9b2c22; }
.qs-mpg-barra--zero { background-color: #dff3e6; color: #17693a; }
.qs-mpg-fim { margin-top: 6px; font-weight: 800; }
.qs-mpg-col--outro .qs-mpg-fim { color: #9b2c22; }
.qs-mpg-col--aqui  .qs-mpg-fim { color: #17693a; }
.qs-mpg-col--aqui { border-color: #9fd3b2; }

/* ---------- regras ---------- */
.qs-mpg-lista { margin: 0px; padding: 0px; list-style: none; }
.qs-mpg-lista li { display: flex; gap: 10px; margin-bottom: 10px; font-size: 15px; line-height: 1.5; color: var(--black); }
.qs-mpg-lista i { margin-top: 4px; }
.qs-mpg-lista--sim i { color: #17693a; }
.qs-mpg-lista--nao i { color: #b3261e; }
.qs-mpg-ol { margin: 0px; padding-left: 22px; }
.qs-mpg-ol li { margin-bottom: 10px; font-size: 15px; line-height: 1.5; color: var(--black); list-style: decimal; }

/* ---------- outros selos ---------- */
.qs-mpg-selos { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; margin: 0px; padding: 0px; list-style: none; }
.qs-mpg-selos li { padding: 20px; border-radius: var(--radius-card, 10px); background-color: #fff; border: 1px solid var(--border); }
.qs-mpg-selos i { font-size: 22px; color: var(--blue); }
.qs-mpg-selos strong { display: block; margin: 10px 0px 6px; font-size: 16px; color: var(--darkblue); }
.qs-mpg-selos p { margin: 0px; font-size: 14px; }

/* ---------- formulario ---------- */
.qs-mpg-form {
  padding: 26px; border: 1px solid var(--border); border-radius: var(--radius-card, 10px); background-color: var(--surface, #f7f9fb);
}
.qs-mpg-linha { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.qs-mpg-campo { display: block; margin-bottom: 16px; }
.qs-mpg-campo span { display: block; margin-bottom: 6px; font-size: 14px; font-weight: 700; color: var(--darkblue); }
.qs-mpg-campo input {
  width: 100%; height: 46px; padding: 0px 14px;
  border: 1px solid var(--border); border-radius: 6px; background-color: #fff; font-size: 15px; color: var(--black);
}
.qs-mpg-campo input[type=file] { height: auto; padding: 10px 12px; }
.qs-mpg-campo input:focus { outline: none; border-color: var(--blue); box-shadow: 0px 0px 0px 3px rgba(0, 86, 145, .12); }
.qs-mpg-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.qs-mpg-form .qs-mpg-bt { width: 100%; margin-top: 8px; }
.qs-mpg-msg { margin-top: 12px; font-size: 14px !important; }
.qs-mpg-msg.qs-kommo-erro { color: #b3261e !important; }
.qs-mpg-ouwa { margin-top: 14px; font-size: 14px !important; }
.qs-mpg-ouwa a { font-weight: 700; color: #178246; }
.qs-mpg-pronto { padding: 26px; border-radius: var(--radius-card, 10px); background-color: #dff3e6; text-align: center; }
.qs-mpg-pronto strong { display: block; margin-bottom: 8px; font-size: 20px; color: #17693a; }

/* ---------- FAQ ---------- */
.qs-mpg-faq details { border-bottom: 1px solid var(--border); background-color: #fff; }
.qs-mpg-faq details:first-child { border-top: 1px solid var(--border); }
.qs-mpg-faq summary {
  padding: 18px 16px; font-size: 16px; font-weight: 700; color: var(--darkblue); cursor: pointer; list-style-position: inside;
}
.qs-mpg-faq details p { margin: 0px; padding: 0px 16px 18px; font-size: 15px; }

/* ---------- telas menores ---------- */
@media (max-width: 970px) {
  .qs-mpg-passos { grid-template-columns: 1fr; }
  .qs-mpg-selos { grid-template-columns: 1fr 1fr; }
  .qs-mpg-dobra h1 { font-size: 32px; }
}
@media (max-width: 680px) {
  .qs-mpg-sec { padding: 40px 0px; }
  .qs-mpg h2 { font-size: 23px; }
  .qs-mpg-dobra { padding: 28px 0px 40px; }
  .qs-mpg-dobra h1 { font-size: 27px; }
  .qs-mpg-dobra .qs-mpg-sub { font-size: 16px; }
  .qs-mpg-ctas .qs-mpg-bt { width: 100%; }
  .qs-mpg-comp, .qs-mpg-selos, .qs-mpg-linha { grid-template-columns: 1fr; }
  .qs-mpg-linha { gap: 0px; }
  .qs-mpg-form { padding: 18px; }
}
