/* Approved AI Answers page modules. Loaded only on the AI Answers page. */
.proof-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 32px;
  align-items: stretch;
}
.proof-case {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 32px;
  border: 1px solid var(--line-light);
  border-radius: 14px;
  background: var(--white);
}
.proof-case > * { min-width: 0; }
.ai-answers-proof .proof-label {
  color: var(--green-ink);
  font-size: .8125rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  margin-bottom: 16px;
}
.ai-answers-proof h3 {
  font-family: var(--font-heading);
  font-size: 1.35rem;
  line-height: 1.3;
  margin-bottom: 16px;
}
.proof-results {
  padding-left: 24px;
  margin: 8px 0 24px;
  line-height: 1.75;
}
.proof-results li + li { margin-top: 16px; }
.proof-results strong { color: var(--ink); font-weight: 650; }
.proof-evidence { margin: 0 0 32px; }
.proof-evidence img { display: block; width: 100%; height: auto; border-radius: 14px; }
.proof-table-scroll { width: 100%; max-width: 100%; overflow-x: auto; border: 1px solid var(--line-light); border-radius: 14px; }
.proof-table-scroll:focus-visible { outline: 2px solid var(--green-ink); outline-offset: 4px; }
.proof-scorecard { width: 100%; min-width: 480px; border-collapse: collapse; table-layout: fixed; color: var(--ink); font-size: 15px; line-height: 1.45; }
.proof-scorecard caption { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.proof-scorecard thead { background: var(--slate); color: var(--white); }
.proof-scorecard th, .proof-scorecard td { padding: 8px; border-bottom: 1px solid var(--line-light); text-align: center; vertical-align: middle; overflow-wrap: break-word; }
.proof-scorecard tr > :nth-child(2) { white-space: nowrap; padding-inline: 4px; }
.proof-scorecard col:nth-child(1) { width: 28%; }
.proof-scorecard col:nth-child(2) { width: 10%; }
.proof-scorecard col:nth-child(3) { width: 22%; }
.proof-scorecard col:nth-child(4), .proof-scorecard col:nth-child(5) { width: 20%; }
.proof-scorecard th:first-child { text-align: left; }
.proof-scorecard tbody th { font-weight: 400; }
.proof-scorecard tbody tr:nth-child(even) { background: var(--light); }
.proof-scorecard tbody tr.proof-scorecard-total { background: #DCE2E6; font-weight: 700; }
.proof-scorecard tbody .proof-scorecard-total th { font-weight: 700; }
.excel-evidence { display: flex; flex-direction: column; padding: 32px; border-radius: 14px; background: var(--slate); color: var(--white); }
.excel-evidence figcaption { font-family: var(--font-heading); font-size: 1.35rem; line-height: 1.3; }
.ai-answers-proof .excel-evidence-context { margin: 8px 0 24px; font-size: .9375rem; line-height: 1.5; color: var(--muted-dark); }
.excel-evidence-row + .excel-evidence-row { margin-top: 16px; }
.excel-evidence-label { display: flex; align-items: center; justify-content: space-between; gap: 24px; font-size: 1rem; line-height: 1.5; }
.excel-evidence-label strong { flex-shrink: 0; color: var(--green); font-family: var(--font-heading); font-size: 3rem; font-weight: 600; line-height: 1.1; }
.excel-evidence-label strong span { color: var(--muted-dark); font-size: 1.5rem; }
.excel-evidence-bar { height: 12px; margin-top: 16px; background: rgba(255, 255, 255, .12); border-radius: 4px; overflow: hidden; }
.excel-evidence-bar span { display: block; height: 100%; background: var(--green); }
.excel-evidence-bar--known span { width: 100%; }
.excel-evidence-bar--discovery span { width: calc(100% * 20 / 144); }
.excel-evidence-comparison { margin-top: 24px; padding-top: 16px; border-top: 1px solid rgba(255, 255, 255, .2); }
.ai-answers-proof .excel-evidence-comparison h4 { margin: 0 0 8px; color: var(--white); font-family: var(--font-body); font-size: 1rem; line-height: 1.4; font-weight: 600; }
.ai-answers-proof .excel-matched-context { margin: 0 0 12px; font-size: .9375rem; line-height: 1.5; color: var(--muted-dark); }
.excel-matched-row { display: grid; grid-template-columns: 90px minmax(0, 1fr) 40px; align-items: center; gap: 12px; font-size: .9375rem; line-height: 1.5; }
.excel-matched-row + .excel-matched-row { margin-top: 8px; }
.excel-matched-row strong { text-align: right; font-weight: 650; }
.excel-matched-bar { height: 8px; background: rgba(255, 255, 255, .12); border-radius: 4px; overflow: hidden; }
.excel-matched-bar span { display: block; height: 100%; }
.excel-matched-bar--excel span { width: calc(100% * 5 / 9); background: var(--green); }
.excel-matched-bar--competitor span { width: calc(100% * 2 / 9); background: var(--muted-dark); }
.proof-testimonial {
  display: grid;
  grid-template-columns: 112px minmax(0, 1fr);
  column-gap: 24px;
  margin: auto 0 0;
  padding: 24px;
  background: var(--light);
  border-left: 4px solid var(--green-ink);
  border-radius: 0 14px 14px 0;
}
.proof-portrait {
  grid-row: 1 / span 2;
  width: 112px;
  height: 112px;
  border-radius: 14px;
}
.proof-portrait { overflow: hidden; }
.proof-testimonial img { display: block; width: 100%; height: 100%; object-fit: cover; transform: scale(1.75); transform-origin: center 25%; }
.proof-portrait--gabriel img { transform: scale(2.7); transform-origin: 56% 34%; }
.proof-testimonial blockquote {
  color: var(--ink);
  font-family: var(--font-heading);
  font-size: 1.25rem;
  line-height: 1.55;
  margin: 0 0 16px;
}
.proof-testimonial figcaption { grid-column: 2; font-size: .9375rem; line-height: 1.55; color: var(--muted-light); }
#search-options .product-card .card-link { margin-top: auto; padding-top: 24px; }
#guided-buyer-intelligence .section-intro > p:last-of-type { margin-bottom: 0; }
#guided-buyer-intelligence .section-intro > .btn { margin-top: 32px; min-height: 48px; max-width: 100%; padding: 14px 24px; font-size: .9375rem; }
.buyer-faq-item { border-bottom: 1px solid var(--line-light); }
.buyer-faq-item:first-child { border-top: 1px solid var(--line-light); }
.buyer-faq-item summary { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 24px 0; min-height: 72px; cursor: pointer; list-style: none; }
.buyer-faq-item summary::-webkit-details-marker { display: none; }
.buyer-faq-item summary::after { content: '+'; color: var(--green-ink); font-size: 1.5rem; line-height: 1; flex-shrink: 0; }
.buyer-faq-item[open] summary::after { content: '−'; }
.buyer-faq-item summary h3 { margin: 0; font-family: var(--font-body); font-size: 1.125rem; line-height: 1.45; font-weight: 600; }
.buyer-faq-item summary:focus-visible { outline: 2px solid var(--green-ink); outline-offset: 4px; }
.buyer-faq-answer { padding-bottom: 24px; }
.buyer-faq-answer p { margin: 0; }
.buyer-faq-answer a { color: var(--green-ink); text-decoration: underline; }
@media (min-width: 901px) {
  @supports (grid-template-rows: subgrid) {
    .proof-grid { grid-template-rows: repeat(6, auto); row-gap: 0; }
    .proof-case { display: grid; grid-template-rows: subgrid; grid-row: span 6; row-gap: 0; }
    .proof-testimonial { grid-template-rows: 1fr auto; align-self: stretch; margin-top: 0; }
  }
}
@media (max-width: 900px) {
  .proof-grid { grid-template-columns: 1fr; gap: 24px; }
}
@media (max-width: 600px) {
  .proof-case { padding: 24px; }
  .ai-answers-proof h3 { font-size: 1.25rem; }
  .proof-testimonial { grid-template-columns: 1fr; row-gap: 24px; padding: 24px; }
  .proof-portrait { grid-row: auto; }
  .proof-testimonial figcaption { grid-column: 1; }
  .excel-evidence { padding: 24px; }
  .excel-evidence-label { align-items: flex-start; flex-direction: column; gap: 8px; }
  .excel-evidence-label strong { font-size: 2.5rem; }
  #guided-buyer-intelligence .section-intro > .btn { font-size: 1rem; }
  .buyer-faq-item summary h3 { font-size: 1rem; }
}
