.d5rc-carousel {
  --d5rc-cols: var(--d5rc-cols-desktop, 3);
  --d5rc-gap: var(--d5rc-gap-desktop, 16px);
  width: 100%; min-width: 0; color: #e7e8ed; font-family: inherit;
}
.d5rc-carousel, .d5rc-carousel * { box-sizing: border-box; }
.d5rc-carousel [hidden] { display: none !important; }
.d5rc-viewport { overflow-x: auto; scrollbar-width: none; overscroll-behavior-x: contain; scroll-snap-type: x mandatory; }
.d5rc-viewport::-webkit-scrollbar { display: none; }
.d5rc-track { display: flex; align-items: stretch; gap: var(--d5rc-gap); direction: ltr; }
.d5rc-slide { flex: 0 0 calc((100% - (var(--d5rc-cols) - 1) * var(--d5rc-gap)) / var(--d5rc-cols)); min-width: 0; display: flex; scroll-snap-align: start; }
.d5rc-card {
  display: flex; flex-direction: column; width: 100%; min-width: 0;
  min-height: var(--d5rc-min-height, 290px); padding: 24px;
  background: #16171b; border: 1px solid #2c2f39; border-radius: 12px;
  overflow-wrap: anywhere;
}
.d5rc-natural-height .d5rc-track { align-items: flex-start; }
.d5rc-card-top { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.d5rc-stars { display: inline-flex; align-items: center; gap: var(--d5rc-star-gap, 3px); flex-shrink: 0; }
.d5rc-star { position: relative; display: block; width: var(--d5rc-star-size, 13px); height: var(--d5rc-star-size, 13px); color: var(--d5rc-star-empty, #343740); }
.d5rc-star svg, .d5rc-star-fill svg { display: block; width: var(--d5rc-star-size, 13px); height: var(--d5rc-star-size, 13px); max-width: none; }
.d5rc-star-fill { position: absolute; inset: 0 auto 0 0; overflow: hidden; color: var(--d5rc-star-color, #ffb511); }
.d5rc-quote { display: block; flex-shrink: 0; width: var(--d5rc-quote-size, 22px); height: var(--d5rc-quote-size, 22px); color: var(--d5rc-quote-color, #575b66); }
.d5rc-quote svg { display: block; width: 100%; height: 100%; }
.d5rc-text {
  padding: 0; margin: var(--d5rc-text-top, 20px) 0 var(--d5rc-text-bottom, 24px);
  border: 0; background: transparent; color: #e7e8ed; font-size: 14px; font-weight: 400;
  line-height: 1.55; font-style: normal; text-align: var(--d5rc-text-align, left);
}
.d5rc-reviewer { display: flex; align-items: center; justify-content: var(--d5rc-reviewer-align, flex-start); gap: var(--d5rc-reviewer-gap, 12px); margin-top: auto; padding-top: 0; }
.d5rc-avatar { display: flex; align-items: center; justify-content: center; flex: 0 0 auto; width: var(--d5rc-avatar-size, 32px); height: var(--d5rc-avatar-size, 32px); border-radius: var(--d5rc-avatar-radius, 50%); overflow: hidden; background: #202228; color: #ffb511; font-size: 12px; font-weight: 700; line-height: 1; }
.d5rc-avatar img { display: block; width: 100%; height: 100%; object-fit: cover; }
.d5rc-reviewer-text { min-width: 0; }
.d5rc-name { margin: 0; padding: 0; color: #f5f5f7; font-size: 13px; font-weight: 600; line-height: 1.4; }
.d5rc-subtitle { margin: var(--d5rc-subtitle-gap, 4px) 0 0; padding: 0; color: #acafbc; font-size: 11px; line-height: 1.4; }
.d5rc-nav { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-top: var(--d5rc-nav-top, 24px); }
.d5rc-nav-center .d5rc-nav { justify-content: center; }
.d5rc-nav-stacked .d5rc-nav { flex-direction: column; justify-content: center; }
.d5rc-dots { display: flex; flex-wrap: wrap; align-items: center; gap: var(--d5rc-dot-gap, 8px); }
.d5rc-buttons { display: flex; align-items: center; gap: var(--d5rc-control-gap, 8px); flex-shrink: 0; }
.d5rc-button { display: inline-flex; align-items: center; justify-content: center; width: var(--d5rc-button-size, 34px); height: var(--d5rc-button-size, 34px); padding: 0; margin: 0; border: var(--d5rc-button-border-width, 1px) solid var(--d5rc-button-border, #2c2f39); border-radius: var(--d5rc-button-radius, 50%); background: var(--d5rc-button-bg, transparent); color: var(--d5rc-button-color, #e6e7ec); cursor: pointer; appearance: none; box-shadow: none; transition: color 160ms, background-color 160ms; }
.d5rc-button svg { display: block; width: var(--d5rc-arrow-size, 14px); height: var(--d5rc-arrow-size, 14px); }
.d5rc-button:hover { color: var(--d5rc-button-hover-color, #ffb511); background: var(--d5rc-button-hover-bg, #202228); }
.d5rc-button:disabled { opacity: .35; cursor: default; }
.d5rc-dot { position: relative; flex: 0 0 auto; width: var(--d5rc-dot-size, 8px); height: var(--d5rc-dot-size, 8px); min-height: 0; padding: 0; margin: 0; border: 0; border-radius: var(--d5rc-dot-radius, 20px); background: var(--d5rc-dot-color, #2c2f39); cursor: pointer; appearance: none; box-shadow: none; transition: width 160ms, background-color 160ms; }
.d5rc-dot::after { content: ''; position: absolute; inset: -7px -3px; }
.d5rc-dot[aria-current="true"] { width: var(--d5rc-dot-active-width, 24px); background: var(--d5rc-dot-active, #ffb511); }
.d5rc-button:focus-visible, .d5rc-dot:focus-visible, .d5rc-viewport:focus-visible { outline: 2px solid var(--d5rc-focus-color, #ffb511); outline-offset: 4px; }
.d5rc-enhanced .d5rc-viewport { overflow: hidden; scroll-snap-type: none; }
.d5rc-enhanced .d5rc-track { will-change: transform; }
.d5rc-swipe .d5rc-viewport { touch-action: pan-y; }
.d5rc-sr-only { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; white-space: nowrap !important; border: 0 !important; }
.d5rc-preview-note, .d5rc-builder-error { padding: 10px 14px; margin: 0 0 12px; border: 1px dashed #9296a4; border-radius: 6px; background: #f7f7fa; color: #363845; font: 12px/1.5 system-ui, sans-serif; }
.d5rc-empty { margin: 0; }
.d5rc-providers { display: flex; flex-wrap: wrap; align-items: center; justify-content: var(--d5rc-providers-align, center); column-gap: var(--d5rc-providers-column-gap, 24px); row-gap: var(--d5rc-providers-row-gap, 12px); margin-top: var(--d5rc-providers-top, 36px); font-size: 10px; line-height: 1.5; }
.d5rc-provider-intro { color: #acafbc; }
.d5rc-provider-link { display: inline-flex; align-items: baseline; gap: 4px; color: #f5f5f7; font-weight: 600; text-decoration: none; transition: color 160ms; }
.d5rc-providers .d5rc-provider-link:hover, .d5rc-providers .d5rc-provider-link:focus-visible { color: var(--d5rc-providers-hover, #ffb511) !important; }
.d5rc-provider-link:focus-visible { outline: 2px solid var(--d5rc-focus-color, #ffb511); outline-offset: 4px; }
.d5rc-provider-arrow { color: var(--d5rc-providers-arrow, #ffb511); }
@media (max-width: 980px) { .d5rc-carousel { --d5rc-cols: var(--d5rc-cols-tablet, 2); --d5rc-gap: var(--d5rc-gap-tablet, 16px); } }
@media (max-width: 767px) { .d5rc-carousel { --d5rc-cols: var(--d5rc-cols-phone, 1); --d5rc-gap: var(--d5rc-gap-phone, 16px); } }
@media (prefers-reduced-motion: reduce) { .d5rc-carousel *, .d5rc-carousel *::after { transition: none !important; animation: none !important; } }
