/* Shared by the reference frontend and the WordPress partial. Use each host's APC tokens. */
.home-proof {
  --proof-navy: var(--color-navy, var(--navy));
  --proof-white: var(--color-white, var(--white));
  --proof-paper: var(--color-paper, var(--paper));
  --proof-ink: var(--color-ink, var(--ink));
  --proof-accent: var(--color-orange-light, var(--orange-light));
  --proof-border: color-mix(in srgb, var(--proof-navy) 15%, transparent);
  color: var(--proof-ink);
  padding-block: 80px;
  container-type: inline-size;
}
.home-proof .container-site { width: 100%; max-width: 1440px; margin-inline: auto; padding-inline: 24px; }
.home-proof .section-heading { display: block; margin: 0 0 40px; }
.home-proof .section-heading .eyebrow { margin: 0 0 20px; font-size: 15px; font-weight: 700; line-height: 1.5; letter-spacing: .14em; text-transform: uppercase; }
.home-proof .h2 { margin: 0; max-width: 56rem; color: inherit; font-size: 36px; font-weight: 300; line-height: 1.02; letter-spacing: -.04em; }
.home-proof .h3 { margin: 0; color: inherit; font-size: 24px; font-weight: 300; line-height: 1.25; letter-spacing: -.03em; }
.home-proof em { font-family: 'APC Display', Georgia, serif; font-style: italic; font-weight: 400; }
.home-achievements { position: relative; isolation: isolate; overflow: hidden; background: var(--proof-navy); color: var(--proof-white); }
.home-achievements::after { content: ''; position: absolute; inset: 0; z-index: -1; background: color-mix(in srgb, var(--proof-navy) 85%, transparent); }
.home-achievements > img { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; }
.home-achievements .eyebrow, .home-achievements .text-accent { color: var(--proof-accent); }
.achievement-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px 24px; margin: 48px 0 0; }
.achievement-grid > div { min-width: 0; display: flex; flex-direction: column; padding-top: 24px; border-top: 1px solid color-mix(in srgb, var(--proof-white) 25%, transparent); }
.achievement-grid dt { order: 2; margin: 12px 0 0; font-size: 14px; font-weight: 400; line-height: 1.5; color: color-mix(in srgb, var(--proof-white) 78%, transparent); }
.achievement-grid dd { margin: 0; font-size: clamp(1.75rem, 7.8cqw, 3rem); font-weight: 300; line-height: 1.1; letter-spacing: -.04em; font-variant-numeric: tabular-nums; }
.home-testimonials { background: var(--proof-paper); }
.home-proof.on-light .eyebrow { color: var(--color-orange-text, var(--orange-text)); }
.testimonial-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.testimonial-grid img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: contain; }
.home-clients { padding-block: 48px; border-top: 1px solid var(--proof-border); background: var(--proof-white); }
.client-strip-heading { display: flex; flex-wrap: wrap; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 32px; }
.client-strip-heading .section-heading { margin-bottom: 0; }
.home-clients :focus-visible { outline: 2px solid var(--proof-navy); outline-offset: 4px; }
.client-logo-viewport { overflow: hidden; }
.client-logo-track { display: flex; width: max-content; animation: client-logos-scroll 96s linear infinite; }
.client-logo-list { display: flex; flex: none; align-items: center; gap: 32px; width: max-content; margin: 0; padding: 8px 32px 8px 0; list-style: none; }
.client-logo-list li { flex: 0 0 152px; width: 152px; }
.client-logo-list img { display: block; width: 100%; height: 80px; object-fit: contain; }
.client-logo-viewport:hover .client-logo-track,
.client-logo-viewport:focus-within .client-logo-track { animation-play-state: paused; }
@keyframes client-logos-scroll { to { transform: translateX(-50%); } }
@media (min-width: 640px) {
  .home-proof .h2 { font-size: 48px; }
  .home-proof .section-heading .eyebrow { font-size: 16px; }
  .home-proof .section-heading { margin-bottom: 56px; }
  .client-strip-heading .section-heading { margin-bottom: 0; }
  .testimonial-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .client-logo-list { gap: 40px; padding-right: 40px; }
  .client-logo-list li { flex-basis: 176px; width: 176px; }
  .client-logo-list img { height: 96px; }
}
@media (min-width: 1024px) {
  .home-proof { padding-block: 112px; }
  .home-proof .container-site { padding-inline: 48px; }
  .home-proof .h2 { font-size: 60px; }
  .achievement-grid { grid-template-columns: 1fr 1fr 1.6fr 1fr; gap: 40px; margin-top: 64px; }
  .achievement-grid dd { font-size: clamp(2.75rem, 4cqw, 4rem); }
  .testimonial-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }
  .home-clients { padding-block: 64px; }
}
@media (prefers-reduced-motion: reduce) {
  .client-logo-track { animation: none; transform: none; }
  .client-logo-viewport { overflow-x: auto; }
  .client-logo-list[aria-hidden='true'] { display: none; }
}
