
.cgi-rv-top{display:flex;flex-direction:column;gap:1.5rem;align-items:flex-start;margin-bottom:2rem}
@media(min-width:640px){.cgi-rv-top{flex-direction:row;justify-content:space-between;align-items:flex-end}}
.cgi-rv-htext{display:flex;flex-direction:column-reverse;gap:.75rem}
.cgi-rv-eyebrow{font-size:.875rem;text-transform:uppercase;letter-spacing:.1em;color:#525252;margin:0}
html.cgi-dark .cgi-rv-eyebrow{color:#9ca3af}
.cgi-rv-heading{font-family:var(--cgi-font-display,'Amulya',sans-serif)!important;font-weight:700;font-size:clamp(1.875rem,1.1rem + 2.6vw,3rem);line-height:1.1;letter-spacing:-.025em;margin:0}
html.cgi-dark .cgi-iap .cgi-rv-heading{color:#f1f5f9!important}/* home-scoped: .cgi-iap :is(h) inherit rule hides it only here; elsewhere the heading is already light */
body.home .cgi-rv-heading{font-size:2rem}
.cgi-rv-nav{display:none;gap:.75rem}
@media(min-width:640px){.cgi-rv-nav{display:flex}}
.cgi-rv-btn{width:3rem;height:3rem;border-radius:999px;border:0;background:#0a0a0a;color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:opacity .2s}
.cgi-rv-btn:hover{opacity:.85}.cgi-rv-btn svg{width:1.25rem;height:1.25rem}
/* visible horizontal scrollbar (reference scrollbar-lg: ~.8em, gray-100 track + gray-300 thumb) */
.cgi-rv-scroll{display:flex;gap:1.5rem;overflow-x:auto;padding:1rem .25rem;scroll-snap-type:x mandatory;scrollbar-width:auto;scrollbar-color:#d1d5db #f3f4f6}
.cgi-rv-scroll::-webkit-scrollbar{height:.8em;background:transparent}
.cgi-rv-scroll::-webkit-scrollbar-track{background:#f3f4f6;border-radius:.6em}
.cgi-rv-scroll::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:.6em}
.cgi-rv-scroll::-webkit-scrollbar-thumb:hover{background:#9ca3af}
/* card padding mirrors reference: top row p-4, content px-6 sm:px-12, name block my-8 pl-12 pr-6 */
.cgi-rv-card{flex:0 0 auto;width:22rem;scroll-snap-align:start;background:#f3f4f6;border-radius:1.5rem;display:flex;flex-direction:column;transition:transform .2s ease}
@media(min-width:640px){.cgi-rv-card{width:32rem}}
.cgi-rv-card:hover{transform:translateY(-.5rem)}
.cgi-rv-head{display:flex;align-items:center;gap:1rem;padding:1rem}
.cgi-rv-avatar{width:4rem;height:4rem;flex:0 0 auto;border-radius:999px;background:#fff;object-fit:cover;display:block}
.cgi-rv-initials{color:#0a0a0a;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:1.5rem;font-family:var(--cgi-font-display,sans-serif)}
.cgi-rv-stars{display:inline-flex;gap:.15rem}
.cgi-rv-star{width:1.5rem;height:1.5rem;color:#d1d5db}.cgi-rv-star.on{color:#eab308}
.cgi-rv-logo{margin-left:auto;height:3rem;width:7rem;object-fit:contain;object-position:right;mix-blend-mode:darken}
.cgi-rv-quote{display:block;font-family:var(--cgi-font-display,'Amulya',serif);font-size:4.5rem;font-weight:900;line-height:1;margin:1rem 0 0;padding:0 1.5rem;color:#0a0a0a;transform-origin:left center;transition:color .2s,transform .2s}
@media(min-width:640px){.cgi-rv-quote{padding:0 3rem}}
.cgi-rv-card:hover .cgi-rv-quote{color:var(--cgi-accent,#0ea5e9);transform:scale(1.1)}
/* Reviews vary from two lines to a full paragraph; without a cap the tallest one sets the
   height of every card in the carousel. Eight lines keeps the longest ones readable and
   the row even, with the rest trailing off in an ellipsis. */
.cgi-rv-text{flex:1 1 auto;font-size:1.25rem;font-weight:500;line-height:1.4;margin:0;padding:0 1.5rem;display:-webkit-box;-webkit-line-clamp:8;line-clamp:8;-webkit-box-orient:vertical;overflow:hidden}
@media(min-width:640px){.cgi-rv-text{padding:0 3rem}}
.cgi-rv-foot{display:flex;flex-direction:column;gap:.1rem;font-style:italic;font-weight:500;margin:2rem 0;padding:0 1.5rem 0 3rem}
.cgi-rv-line{display:block;width:4rem;border-top:1px solid #d1d5db;margin-bottom:1rem}
.cgi-rv-name{font-size:1rem;margin-bottom:.25rem}
html.cgi-dark .cgi-rv-name{color:#f1f5f9}
.cgi-rv-pos{font-size:.875rem;color:#6b7280}
.cgi-rv-co{font-size:.875rem;color:#6b7280}
html.cgi-dark .cgi-rv-card{background:#171717}
html.cgi-dark .cgi-rv-logo{mix-blend-mode:normal;filter:invert(1)}
html.cgi-dark .cgi-rv-pos{color:#9ca3af}
html.cgi-dark .cgi-rv-quote{color:#e5e7eb}
html.cgi-dark .cgi-rv-line{border-top-color:#3a4252}
html.cgi-dark .cgi-rv-avatar{background:#0a0a0a;color:#e5e7eb}
html.cgi-dark .cgi-rv-co{color:#9ca3af}
html.cgi-dark .cgi-rv-btn{background:#e5e7eb;color:#0a0a0a}
