/* Editorial customer stories: a featured voice, with more stories beyond the edge. */
.customer-proof{padding:64px 0 72px;background:var(--paper);scroll-margin-top:96px;container-type:inline-size}
.customer-proof-inner{margin:0 auto}
.customer-proof-intro{display:grid;grid-template-columns:minmax(0,1fr) 280px;grid-template-rows:auto auto;align-items:start;gap:16px clamp(32px,6vw,80px);width:calc(100% - 12vw);max-width:1100px;margin:0 auto 28px}
.customer-proof-heading{grid-row:1 / 3;min-width:0}
.customer-proof-eyebrow{margin:0 0 16px;font:600 12px/1.5 var(--sans);letter-spacing:.15em;text-transform:uppercase;color:var(--teal)}
.customer-proof-intro h2{max-width:650px;font:400 clamp(38px,4vw,56px)/1.12 var(--serif);letter-spacing:-.04em;text-wrap:balance}
.customer-proof-stat{padding-top:30px}
.customer-proof-stat strong{display:block;color:var(--teal);font:400 clamp(52px,4.7vw,64px)/1.05 var(--sans);letter-spacing:-.04em;white-space:nowrap}
.customer-proof-stat p{max-width:29ch;margin:8px 0 0;color:var(--muted);font-size:16px;line-height:1.5;text-wrap:pretty}
/* Lucile occupies half the centered content width; smaller stories continue to the viewport edge.
   Container units exclude the scrollbar and keep the first card aligned to the headline. */
.proof-rail{--proof-viewport:100vw;--proof-gap:22px;--proof-side-gutter:max(6vw,calc((var(--proof-viewport) - 1100px)/2));--proof-feature-width:calc((var(--proof-viewport) - var(--proof-side-gutter) - var(--proof-side-gutter))/2);--proof-card-width:calc(var(--proof-feature-width)*.8);position:relative;display:flex;align-items:stretch;gap:var(--proof-gap);overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;padding:4px var(--proof-side-gutter) 12px;scroll-padding-inline:var(--proof-side-gutter);scrollbar-width:none;-ms-overflow-style:none;cursor:grab}
@supports(width:1cqi){.customer-proof-intro{width:calc(100% - 12cqi)}.proof-rail{--proof-viewport:100cqi;--proof-side-gutter:max(6cqi,calc((100cqi - 1100px)/2))}}
.proof-rail::-webkit-scrollbar{display:none;width:0;height:0}
.proof-rail:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-3px}
.proof-card:focus-visible,.proof-video-card>a:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-3px}
.proof-rail.is-dragging{scroll-snap-type:none;scroll-behavior:auto;cursor:grabbing;user-select:none}
.proof-rail.is-dragging a{cursor:grabbing}
.proof-card{flex:0 0 var(--proof-card-width);min-width:0;min-height:300px;display:flex;flex-direction:column;padding:28px;background:var(--gray-100);border:1px solid var(--line);border-radius:14px;box-shadow:none;scroll-snap-align:start;scroll-margin-inline:0}
.customer-proof figure,.customer-proof blockquote{margin:0}
.proof-quote-card blockquote p{font:400 19px/1.45 var(--serif);letter-spacing:-.015em}
.customer-proof-person,.proof-video-attribution{min-height:68px;margin:auto 0 0;padding-top:24px}
.customer-proof-person{display:flex;align-items:center;gap:12px}
.customer-proof-person img{display:block;width:44px;height:44px;object-fit:contain;flex:none}
.customer-proof-person>div{display:flex;flex-direction:column;gap:3px;min-width:0}
.customer-proof-name{display:block;font-size:15px;font-weight:600;line-height:1.4}
.customer-proof-category{display:block;font-size:13px;line-height:1.5;color:var(--muted)}
.customer-proof .customer-proof-feature{flex-basis:var(--proof-feature-width)}
.customer-proof-feature blockquote::before{content:'';display:block;width:24px;height:2px;margin-bottom:16px;background:var(--brand-400)}
.customer-proof-feature blockquote p{font-size:22px;line-height:1.45;letter-spacing:-.025em}
.proof-video-card>a{display:flex;flex:1;flex-direction:column;min-width:0;border-radius:6px}
.proof-video-poster{display:block;position:relative;flex:none;aspect-ratio:16/9;overflow:hidden;border-radius:6px;background:var(--gray-200)}
.proof-video-poster>img{display:block;width:100%;height:100%;object-fit:cover}
.proof-video-poster>img.is-unavailable{visibility:hidden}
.proof-video-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:48px;height:48px;border:1px solid color-mix(in srgb,var(--gray-50) 65%,transparent);border-radius:50%;background:color-mix(in srgb,var(--gray-50) 94%,transparent);color:var(--teal);transition:background-color 180ms ease-out}
.proof-video-play svg{width:22px;height:22px;margin-left:1px}
.proof-video-card>a:hover .proof-video-play{background:var(--paper);color:var(--brand-700)}
.proof-video-attribution{display:flex;flex-direction:column;justify-content:center;gap:3px}
.proof-rail-controls{grid-column:2;display:flex;justify-content:flex-end;gap:10px;margin:0}
.proof-rail-controls[hidden]{display:none}
.proof-rail-controls button{display:grid;place-items:center;width:44px;height:44px;padding:10px;border:1px solid color-mix(in srgb,var(--teal) 22%,transparent);border-radius:50%;background:transparent;color:var(--teal);box-shadow:none;transition:background-color 180ms ease-out,border-color 180ms ease-out}
.proof-rail-controls svg{width:20px;height:20px;stroke-linecap:round;stroke-linejoin:round}
.proof-rail-controls button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px;background:var(--brand-10)}
.proof-rail-controls button:active:not(:disabled){background:var(--brand-25)}
.proof-rail-controls button:disabled{opacity:.35;cursor:default}
@media(hover:hover){
 .proof-rail-controls button:hover:not(:disabled){background:var(--brand-10);border-color:var(--brand-200)}
}
.proof-video-dialog{width:min(960px,calc(100% - 40px));max-width:960px;padding:22px;border-radius:12px;overscroll-behavior:contain}
.proof-video-dialog::backdrop{background:var(--overlay-backdrop)}
.proof-video-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:16px}
.proof-video-dialog-header h2{font:500 20px/1.4 var(--serif)}
.proof-video-close{display:grid;place-items:center;width:40px;height:40px;flex:none;border:1px solid var(--line);border-radius:50%;background:var(--paper);font-size:26px;line-height:1}
.proof-video-player{aspect-ratio:16/9;background:var(--gray-900)}
.proof-video-player iframe{display:block;width:100%;height:100%;border:0}
.proof-video-external{display:inline-block;margin-top:17px;color:var(--muted);font-size:13px;text-decoration:underline;text-underline-offset:3px}
html:has(.proof-video-dialog[open]){overflow:hidden;scrollbar-gutter:stable}
@media(max-width:900px){
 .customer-proof{padding-block:52px 64px}
 .customer-proof-intro{width:90%;grid-template-columns:minmax(0,1fr) auto;gap:22px 20px;margin-bottom:28px}
 .customer-proof-heading{grid-column:1/-1;grid-row:auto}
 .customer-proof-stat{display:flex;align-items:center;gap:22px;padding:0}
 .customer-proof-stat strong{font-size:48px}
 .customer-proof-stat p{margin:0;max-width:29ch}
 .proof-rail-controls{align-self:end}
 .proof-rail{--proof-side-gutter:calc(var(--proof-viewport)*.05);--proof-gap:16px;--proof-card-width:calc((var(--proof-viewport) - var(--proof-side-gutter) - var(--proof-gap))/1.125)}
 .proof-card{padding:24px}
 .customer-proof .customer-proof-feature{flex-basis:var(--proof-card-width)}
 .customer-proof-feature blockquote p{font-size:21px}
}
@media(max-width:600px){
 .customer-proof{padding-block:46px 60px;scroll-margin-top:86px}
 .customer-proof-intro{width:calc(100% - 44px);gap:20px 12px;margin-bottom:24px}
 .customer-proof-eyebrow{margin-bottom:14px}
 .customer-proof-intro h2{font-size:34px;line-height:1.14}
 .customer-proof-stat{grid-column:1/-1;gap:18px}
 .customer-proof-stat strong{font-size:42px}
 .customer-proof-stat p{font-size:14px;line-height:1.5;max-width:27ch}
 .proof-rail-controls{margin-top:-4px}
 .proof-rail{--proof-side-gutter:22px}
 .proof-card,.customer-proof .customer-proof-feature{padding:22px;min-height:0}
 .customer-proof-category{font-size:14px}
 .proof-quote-card blockquote p,.customer-proof-feature blockquote p{font-size:19px;line-height:1.45}
 .proof-video-dialog{width:calc(100% - 24px);padding:14px}
 .proof-video-dialog-header h2{font-size:18px}
}
@media(prefers-reduced-motion:reduce){
 .proof-rail-controls button,.proof-video-play{transition:none}
}
