.gc-proof {
  --proof-bg: #f4f0e7;
  --proof-card: #fff;
  --proof-ink: #0d1828;
  --proof-muted: #526071;
  --proof-line: #bdc5ce;
  --proof-link: #0e4eaf;
  --proof-star: #956000;
  padding: 72px 0;
  background: var(--proof-bg);
  color: var(--proof-ink);
  scroll-margin-top: 96px;
}
.gc-proof--dark {
  --proof-bg: #020617;
  --proof-card: #0f172a;
  --proof-ink: #f8fafc;
  --proof-muted: #cbd5e1;
  --proof-line: #334155;
  --proof-link: #53dbf2;
  --proof-star: #fbbf24;
}
.gc-proof *, .gc-proof *::before, .gc-proof *::after { box-sizing: border-box; }
.gc-proof__shell { width: min(1180px, calc(100% - 40px)); margin-inline: auto; }
.gc-proof__heading { max-width: 740px; margin: 0 auto 36px; text-align: center; }
.gc-proof__heading h2 { margin: 0 0 16px; font-size: clamp(28px, 3.4vw, 42px); line-height: 1.15; font-weight: 700; letter-spacing: -0.025em; }
.gc-proof__heading p { margin: 0; color: var(--proof-muted); font-size: 16px; line-height: 1.7; }
.gc-proof__reviews { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.gc-proof__review { display: flex; flex-direction: column; min-width: 0; margin: 0; padding: 24px; background: var(--proof-card); border: 1px solid var(--proof-line); border-radius: 12px; }
.gc-proof__rating { display: flex; align-items: center; gap: 3px; color: var(--proof-star); }
.gc-proof__rating svg { display: block; flex: none; }
.gc-proof__rating span { margin-left: 7px; color: var(--proof-muted); font-size: 14px; font-weight: 600; }
.gc-proof__review blockquote { margin: 20px 0 24px; }
.gc-proof__review blockquote p { margin: 0; font-size: 16px; line-height: 1.75; }
.gc-proof__excerpt { color: var(--proof-muted); font-size: 12px; }
.gc-proof__review figcaption { display: flex; flex-direction: column; align-items: flex-start; gap: 4px; margin-top: auto; padding-top: 16px; border-top: 1px solid var(--proof-line); }
.gc-proof__review figcaption strong { font-size: 16px; overflow-wrap: anywhere; }
.gc-proof__review time { color: var(--proof-muted); font-size: 12px; }
.gc-proof__review a { display: inline-flex; align-items: center; gap: 6px; min-height: 40px; font-size: 14px; }
.gc-proof a { color: var(--proof-link); text-underline-offset: 4px; }
.gc-proof a:hover { text-decoration-thickness: 2px; }
.gc-proof a:focus-visible { outline: 3px solid var(--proof-link); outline-offset: 4px; }
.gc-proof__source { margin: 28px 0 0; text-align: center; font-size: 14px; }
.gc-proof__projects { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.gc-proof__project { display: block; min-width: 0; overflow: hidden; border: 1px solid var(--proof-line); border-radius: 12px; background: var(--proof-card); text-decoration: none; }
.gc-proof__project img { display: block; width: 100%; height: auto; aspect-ratio: 36 / 25; object-fit: cover; object-position: top; border-bottom: 1px solid var(--proof-line); }
.gc-proof__project-copy { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; padding: 24px; }
.gc-proof__project h3 { margin: 0; color: var(--proof-ink); font-size: clamp(18px, 2vw, 24px); line-height: 1.3; overflow-wrap: anywhere; }
.gc-proof__project p { margin: 0; color: var(--proof-muted); font-size: 14px; }
.gc-proof__project span { display: inline-flex; align-items: center; gap: 8px; font-size: 14px; font-weight: 600; }
@media (max-width: 959px) { .gc-proof__reviews { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 639px) {
  .gc-proof { padding: 48px 0; }
  .gc-proof__reviews, .gc-proof__projects { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .gc-proof__review, .gc-proof__project-copy { padding: 20px; }
}
