/* 08 Proof: who it is for, the founder's note, the newsletter. */
.proof { padding: clamp(96px, 12vw, 160px) 0 0; }

/* Who it is for: four statements, set like an editorial list */
.proof-who-grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(40px, 6vw, 96px); align-items: start; }
.proof-who-intro { padding-top: 26px; }
.proof-h2 { font-size: clamp(32px, 4.2vw, 52px); max-width: 14ch; }
.proof-lede { margin-top: 18px; font-size: 18px; line-height: 1.5; color: var(--body); max-width: 34ch; }

.proof-who { list-style: none; margin: 0; padding: 0; }
.proof-who-i { position: relative; padding: 26px 0; font-size: clamp(19px, 1.75vw, 24px); line-height: 1.42; letter-spacing: -0.012em; color: var(--body); text-wrap: pretty; }
.proof-who-i::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 1px; transform-origin: 0 50%;
  background: linear-gradient(to right, var(--line-strong), var(--line) 160px); }
.proof-who-i:last-child { border-bottom: 1px solid var(--line); }
.proof-k { color: var(--title); font-weight: 600; letter-spacing: -0.016em; }

.proof-who.reveal { opacity: 1; transform: none; }
.proof-who.reveal .proof-who-i { opacity: 0; transform: translateY(10px);
  transition: opacity 600ms var(--ease), transform 600ms var(--ease); transition-delay: calc(var(--i) * 110ms + 120ms); }
.proof-who.reveal .proof-who-i::before { transform: scaleX(0); transition: transform 900ms var(--ease-inout); transition-delay: calc(var(--i) * 110ms); }
.proof-who.is-in .proof-who-i { opacity: 1; transform: none; }
.proof-who.is-in .proof-who-i::before { transform: none; }

/* Founder quote */
.proof-quote { position: relative; margin: clamp(96px, 12vw, 160px) 0 0; padding: clamp(48px, 6vw, 80px) 0;
  display: grid; grid-template-columns: 64px minmax(0, 920px); column-gap: clamp(16px, 3vw, 40px); }
.proof-quote::before, .proof-quote::after { content: ""; position: absolute; left: 0; right: 0; height: 1px; pointer-events: none;
  background: linear-gradient(to right, var(--line-strong), var(--line) 30%, var(--line) 70%, var(--line-soft)); }
.proof-quote::before { top: 0; }
.proof-quote::after { bottom: 0; }
.proof-qmark { grid-row: 1; justify-self: end; width: 44px; height: auto; margin-top: 0.3em; color: color-mix(in oklab, var(--lime) 22%, var(--line-strong)); }
.proof-bq { grid-column: 2; margin: 0; }
.proof-bq p { font-size: clamp(23px, 2.9vw, 38px); font-weight: 500; line-height: 1.3; letter-spacing: -0.022em; color: var(--body-strong); text-wrap: pretty; }
.proof-em { color: var(--title); }
.proof-by { grid-column: 2; display: flex; align-items: center; gap: 14px; margin-top: 36px; }
.proof-av { display: grid; place-items: center; width: 40px; height: 40px; background-color: var(--id-green); font-size: 13px; }
.proof-by-t { display: flex; flex-direction: column; line-height: 1.35; }
.proof-by-n { font-size: 15px; font-weight: 600; color: var(--title); }
.proof-by-r { font-size: 14px; color: var(--muted); }
.proof-note { grid-column: 2; margin-top: 28px; padding-top: 22px; background: linear-gradient(to right, var(--line-strong), var(--line-soft)) no-repeat 0 0 / 40px 1px; max-width: 58ch; font-size: 14px; line-height: 1.55; color: var(--muted); }

/* Newsletter rows */
.proof-reads { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(32px, 6vw, 96px); align-items: start; padding-top: clamp(72px, 9vw, 120px); }
.proof-h3 { font-size: 22px; letter-spacing: -0.018em; }
.proof-reads-sub { margin-top: 10px; font-size: 15px; line-height: 1.5; color: var(--body); max-width: 32ch; }

.proof-links { list-style: none; margin: 0; padding: 0; }
.proof-links > li { border-top: 1px solid var(--line); }
.proof-links > li:last-child { border-bottom: 1px solid var(--line); }
.proof-link { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) auto; column-gap: 20px; row-gap: 4px; align-items: center;
  min-height: 44px; padding: 20px 16px; margin-inline: -16px; border-radius: var(--radius); text-decoration: none; }
.proof-link::before { content: ""; position: absolute; inset: 4px 0; border-radius: var(--radius); opacity: 0; transition: opacity var(--dur-base) var(--ease);
  background: radial-gradient(260px circle at var(--mx, 30%) var(--my, 50%), rgb(255 255 255 / 0.055), transparent 70%),
    linear-gradient(to right, color-mix(in oklab, var(--lime) 9%, var(--card)), var(--card) 70%);
  box-shadow: 0 0 0 1px color-mix(in oklab, var(--lime) 16%, var(--line)), inset 0 1px 0 rgb(255 255 255 / 0.04); }
.proof-link > * { position: relative; }
.proof-link > .sr-only { position: absolute; }
.proof-link-t { grid-column: 1; font-size: 17px; font-weight: 600; letter-spacing: -0.01em; line-height: 1.35; color: var(--title); transition: transform var(--dur-slow) var(--ease); }
.proof-link-d { grid-column: 1; font-size: 14px; line-height: 1.5; color: var(--muted); transition: transform var(--dur-slow) var(--ease); }
.proof-arrow { grid-column: 2; grid-row: 1 / span 2; color: var(--muted); transition: transform var(--dur-slow) var(--ease), color var(--dur-fast) var(--ease); }
.proof-link:hover::before, .proof-link:focus-visible::before { opacity: 1; }
.proof-link:hover .proof-link-t, .proof-link:hover .proof-link-d { transform: translateX(4px); }
.proof-link:hover .proof-arrow, .proof-link:focus-visible .proof-arrow { transform: translate(3px, -3px); color: var(--lime-ink); }

.proof-links.reveal { opacity: 1; transform: none; }
.proof-links.reveal > li { opacity: 0; transform: translateY(8px); transition: opacity 500ms var(--ease), transform 500ms var(--ease); transition-delay: calc(var(--i) * 90ms); }
.proof-links.is-in > li { opacity: 1; transform: none; }

@media (max-width: 960px) {
  .proof-who-grid, .proof-reads { grid-template-columns: minmax(0, 1fr); }
  .proof-who-intro { padding-top: 0; }
  .proof-quote { grid-template-columns: minmax(0, 1fr); }
  .proof-qmark, .proof-bq, .proof-by, .proof-note { grid-column: 1; }
  .proof-qmark { grid-row: auto; justify-self: start; width: 36px; margin: 0 0 20px; }
}
@media (max-width: 480px) {
  .proof-who-i { padding: 20px 0; }
  .proof-link { padding: 18px 12px; margin-inline: -12px; }
}

@media (prefers-reduced-motion: reduce) {
  .proof-who.reveal .proof-who-i, .proof-who.reveal .proof-who-i::before, .proof-links.reveal > li { transition-delay: 0s; }
}
