/* Problema */
.problema { background: var(--branco); }
.problema .wrap { display: grid; grid-template-columns: 1fr 1fr; gap: 56px; align-items: center; }
.problema img { border-radius: var(--raio); }
.dores { list-style: none; padding: 0; margin: 22px 0 0; }
.dores li { padding: 12px 0 12px 40px; position: relative; border-top: 1px solid var(--linha); font-weight: 700; }
.dores li::before { content: "✗"; position: absolute; left: 6px; top: 10px; color: var(--vermelho); font-weight: 900; font-size: 20px; }

/* O que você recebe */
.recebe { background: var(--branco); }
.recebe__grade { display: grid; grid-template-columns: repeat(3, 1fr); gap: 26px; }
.recebe__item { background: var(--branco); border: var(--borda); border-radius: var(--raio); overflow: hidden; }
.recebe__item img { aspect-ratio: 16 / 10; object-fit: cover; width: 100%; border-bottom: var(--borda); }
.recebe__item div { padding: 22px 24px; }
.recebe__item h3 { font-size: 24px; margin-bottom: 6px; }
.recebe__item p { margin: 0; }

/* Quem escreve */
.autor .wrap { display: grid; grid-template-columns: 240px 1fr; gap: 48px; align-items: center; }
.autor img { width: 240px; border-radius: 50%; border: 4px solid var(--tinta); background: var(--branco); }
.autor .cta { margin-top: 10px; }

/* Garantia */
.garantia__caixa { display: grid; grid-template-columns: 220px 1fr; gap: 48px; align-items: center; background: var(--branco); border: var(--borda); border-radius: 28px; padding: 48px; }
.selo { width: 200px; height: 200px; border-radius: 50%; background: var(--amarelo); border: 6px solid var(--tinta); display: grid; place-content: center; text-align: center;
  font-family: var(--fonte-titulo); text-transform: uppercase; transform: rotate(-8deg); box-shadow: 0 10px 0 var(--tinta); }
.selo b { font-size: 76px; line-height: .9; font-weight: 400; display: block; }
.selo span { font-size: 22px; line-height: 1.1; }

/* Perguntas */
.perguntas { background: var(--branco); }
.faq { max-width: 840px; margin: 0 auto; }
.faq__item { border-bottom: 2px solid var(--linha); }
.faq__q { margin: 0; font-family: var(--fonte-texto); text-transform: none; letter-spacing: 0; }
.faq__q button { width: 100%; text-align: left; font-weight: 900; font-size: 20px; line-height: 1.4; background: none; border: 0; padding: 22px 44px 22px 0; cursor: pointer; position: relative; }
.faq__q button::after { content: "+"; position: absolute; right: 6px; top: 16px; font-size: 30px; transition: transform .25s; }
.faq__q button[aria-expanded="true"]::after { transform: rotate(45deg); }
.js .faq__r { max-height: 0; overflow: hidden; transition: max-height .4s ease; }
.faq__r p { margin: 0 0 22px; color: var(--cinza); }

/* Chamada final */
.final { text-align: center; }
.final .lead { margin: 0 auto; }
.final__tres { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; max-width: 980px; margin: 44px auto 0; }
.final__tres > div { display: flex; flex-direction: column; align-items: center; gap: 18px; }
.final .livro3d { width: 190px; }
.final .cta { font-size: 17px; padding: 14px 20px; width: 100%; }

@media (max-width: 900px) {
  .problema .wrap, .autor .wrap, .garantia__caixa { grid-template-columns: 1fr; gap: 30px; }
  .recebe__grade, .final__tres { grid-template-columns: 1fr; }
  .autor img { width: 160px; }
  .garantia__caixa { padding: 30px 24px; }
  .selo { width: 160px; height: 160px; } .selo b { font-size: 60px; }
}
