.customer-testimonials{background:#f7f8fc;padding:72px 0;scroll-margin-top:100px}
.customer-testimonials-inner{max-width:1152px;margin:0 auto;padding:0 24px}
.customer-testimonials-eyebrow{text-align:center;font:600 12px/1.5 Outfit,sans-serif;letter-spacing:.12em;color:#f58220;margin:0 0 12px}
.customer-testimonials-title{text-align:center;color:#1a1f6e;font:900 36px/1.2 Outfit,sans-serif;margin:0 0 14px}
.customer-testimonials-intro{text-align:center;color:#64748b;font:400 16px/1.65 Inter,sans-serif;max-width:650px;margin:0 auto}
.customer-video-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;max-width:1000px;margin:36px auto 0}
.customer-video-card{margin:0;min-width:0;background:#fff;border:1px solid #e5e7eb;border-radius:16px;overflow:hidden;box-shadow:0 6px 20px #1a1f6e0b}
.customer-video-media{position:relative;aspect-ratio:9/16;background:#0f1240;isolation:isolate}
.customer-video-play{display:block;position:absolute;inset:0;width:100%;height:100%;border:0;padding:0;background:transparent;color:#fff;cursor:pointer}
.customer-video-poster{display:block;width:100%;height:100%;object-fit:cover}
.customer-video-play:after{content:'';position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#0f1240cc);pointer-events:none}
.customer-video-play-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;width:60px;height:60px;padding-left:4px;border-radius:50%;background:#f58220e8;color:#fff;font-size:25px;box-shadow:0 5px 20px #0004;z-index:1}
.customer-video-play-label{position:absolute;bottom:18px;left:12px;right:12px;text-align:center;font:700 14px/1.4 Outfit,sans-serif;z-index:1}
.customer-video-play:hover .customer-video-play-icon{background:#e8700e}
.customer-video-play:focus-visible{outline:3px solid #f58220;outline-offset:-4px}
.customer-video-frame{position:absolute;inset:0;width:100%;height:100%;border:0}
.customer-video-caption{text-align:center;padding:18px 14px 20px}
.customer-video-caption h3{color:#1a1f6e;font:700 17px/1.4 Outfit,sans-serif;margin:0 0 7px}
.customer-video-caption p{color:#64748b;font:400 13px/1.6 Inter,sans-serif;margin:0 0 12px}
.customer-video-caption a{color:#e8700e;font:600 12px/1.5 Outfit,sans-serif;text-decoration:none}
.customer-video-caption a:hover{text-decoration:underline}
.customer-testimonials-action{text-align:center;margin-top:32px}
.customer-testimonials-action a{display:inline-block;background:#f58220;color:#fff;border-radius:9px;padding:13px 22px;font:700 14px/1.4 Outfit,sans-serif;text-decoration:none}
@media(max-width:850px){.customer-video-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:680px}}
@media(max-width:560px){.customer-testimonials{padding:52px 0}.customer-testimonials-inner{padding:0 20px}.customer-testimonials-title{font-size:29px}.customer-video-grid{grid-template-columns:1fr;max-width:310px;gap:24px}}

/* Homepage: all approved customer videos, three visible at desktop width. */
.customer-carousel{max-width:1000px;margin:36px auto 0}
.customer-carousel .customer-video-track{display:flex;grid-template-columns:none;gap:28px;max-width:none;margin:0;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;border-radius:16px;padding:0 0 2px}
.customer-video-track::-webkit-scrollbar{display:none}
.customer-carousel .customer-video-card{flex:0 0 calc((100% - 56px)/3);scroll-snap-align:start;scroll-snap-stop:always;box-sizing:border-box}
.customer-video-track:focus-visible{outline:3px solid #f58220;outline-offset:5px}
.customer-carousel-controls{display:flex;align-items:center;justify-content:center;gap:18px;margin:22px auto 0}
.customer-carousel-controls button{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid #f58220;border-radius:50%;background:#f58220;color:#fff;font:700 24px/1 Outfit,sans-serif;cursor:pointer}
.customer-carousel-controls button:hover:not(:disabled){background:#e8700e}
.customer-carousel-controls button:disabled{background:#fff;border-color:#d5d9e4;color:#a2a9b6;cursor:default}
.customer-carousel-controls button:focus-visible{outline:3px solid #1a1f6e;outline-offset:3px}
.customer-carousel-status{color:#64748b;font:500 14px/1.5 Inter,sans-serif;margin:0;min-width:140px;text-align:center}
@media(max-width:850px){.customer-carousel{max-width:680px}.customer-carousel .customer-video-card{flex-basis:calc((100% - 28px)/2)}}
@media(max-width:560px){.customer-carousel{max-width:310px}.customer-carousel .customer-video-track{gap:24px}.customer-carousel .customer-video-card{flex-basis:100%}}

/* Side arrows and controllable automatic scrolling. */
.customer-carousel{position:relative}
.customer-carousel>.customer-carousel-prev,.customer-carousel>.customer-carousel-next{position:absolute;top:50%;transform:translateY(-50%);z-index:2;display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid #f58220;border-radius:50%;background:#f58220;color:#fff;font:700 24px/1 Outfit,sans-serif;cursor:pointer;box-shadow:0 3px 12px #1a1f6e18}
.customer-carousel>.customer-carousel-prev{left:-56px}.customer-carousel>.customer-carousel-next{right:-56px}
.customer-carousel>button:hover{background:#e8700e}.customer-carousel>button:focus-visible{outline:3px solid #1a1f6e;outline-offset:3px}
.customer-carousel-controls .customer-carousel-toggle{width:auto;height:auto;min-height:36px;padding:7px 12px;border-radius:7px;background:#fff;color:#1a1f6e;border-color:#d5d9e4;font:600 12px/1.4 Outfit,sans-serif}
.customer-carousel-controls .customer-carousel-toggle:hover:not(:disabled){background:#fff4e8;color:#1a1f6e}
@media(max-width:1150px) and (min-width:851px){.customer-carousel{max-width:calc(100% - 104px)}}
@media(max-width:790px) and (min-width:561px){.customer-carousel{max-width:calc(100% - 92px)}}
@media(max-width:560px){.customer-carousel{max-width:calc(100% - 72px)}.customer-carousel>.customer-carousel-prev,.customer-carousel>.customer-carousel-next{width:32px;height:32px;font-size:20px}.customer-carousel>.customer-carousel-prev{left:-36px}.customer-carousel>.customer-carousel-next{right:-36px}.customer-carousel-controls{gap:10px}.customer-carousel-status{min-width:125px;font-size:12px}}
