.cpr-showcase {
	--cpr-columns: var(--cpr-desktop, 4);
	box-sizing: border-box;
	width: 100%;
	background: #fff;
	color: #374151;
	font-size: 16px;
	line-height: 1.65;
	isolation: isolate;
}
.cpr-showcase *, .cpr-showcase *::before, .cpr-showcase *::after { box-sizing: border-box; }
.cpr-showcase--container { max-width: 1200px; margin-inline: auto; }
.cpr-showcase__track { display: grid; grid-template-columns: repeat(var(--cpr-columns), minmax(0, 1fr)); align-items: stretch; }
.cpr-showcase__card { min-width: 0; border: 1px solid #e5e7eb; background: #fff; }
.cpr-showcase .cpr-showcase__logo {
	display: flex; align-items: center; justify-content: center;
	width: 100%; height: var(--cpr-height, 160px); margin: 0; padding: 24px;
	border: 0; border-radius: 0; background: #fff; color: inherit;
	font: inherit; text-transform: none; letter-spacing: normal; cursor: pointer;
}
.cpr-showcase .cpr-showcase__logo:hover, .cpr-showcase .cpr-showcase__logo[aria-expanded="true"] { background: #fff; }
.cpr-showcase .cpr-showcase__logo img { display: block; width: auto; height: auto; max-width: min(100%, var(--cpr-logo-width, 180px)); max-height: 100%; object-fit: var(--cpr-fit, contain); }
.cpr-showcase button:focus-visible, .cpr-showcase a:focus-visible { outline: 2px solid #2563eb; outline-offset: -4px; }
.cpr-showcase__details { display: grid; grid-template-rows: 1fr; transition: grid-template-rows 250ms ease, visibility 250ms; }
.cpr-showcase.is-ready .cpr-showcase__details { grid-template-rows: 0fr; visibility: hidden; }
.cpr-showcase.is-ready .cpr-showcase__card.is-open .cpr-showcase__details { grid-template-rows: 1fr; visibility: visible; }
.cpr-showcase__details-inner { min-height: 0; overflow: hidden; }
.cpr-showcase__copy { padding: 4px 24px 24px; overflow-wrap: anywhere; }
.cpr-showcase .cpr-showcase__copy h3 { margin: 0 0 12px; color: #111827; font-size: 18px; line-height: 1.4; }
.cpr-showcase .cpr-showcase__copy p { margin: 0 0 12px; }
.cpr-showcase .cpr-showcase__copy a { color: #1d4ed8; text-decoration: underline; }
.cpr-showcase .cpr-showcase__copy img { max-width: 100%; height: auto; }
.cpr-showcase .cpr-showcase__copy pre { white-space: pre-wrap; }
.cpr-showcase .cpr-showcase__copy table { table-layout: fixed; width: 100%; }
.cpr-showcase--slider.is-ready .cpr-showcase__viewport { overflow: hidden; }
.cpr-showcase--slider.is-ready .cpr-showcase__track { display: flex; gap: var(--cpr-gap, 0px); transition: transform var(--cpr-duration, 500ms) ease; will-change: transform; }
.cpr-showcase--slider.is-ready .cpr-showcase__card { flex: 0 0 calc((100% - (var(--cpr-columns) - 1) * var(--cpr-gap, 0px)) / var(--cpr-columns)); }
.cpr-showcase .cpr-showcase__controls { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 12px; padding: 20px; }
.cpr-showcase [hidden] { display: none !important; }
.cpr-showcase .cpr-showcase__controls button { border: 1px solid #d1d5db; border-radius: 4px; background: #fff; color: #111827; padding: 8px 14px; min-width: 44px; min-height: 44px; cursor: pointer; font: inherit; letter-spacing: normal; text-transform: none; margin: 0; }
.cpr-showcase .cpr-showcase__controls button:disabled { opacity: .4; cursor: default; }
.cpr-showcase__sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
@media (max-width: 1024px) { .cpr-showcase { --cpr-columns: var(--cpr-tablet, 2); } }
@media (max-width: 600px) { .cpr-showcase { --cpr-columns: var(--cpr-mobile, 1); } .cpr-showcase__copy { padding-inline: 16px; } }
@media (prefers-reduced-motion: reduce) { .cpr-showcase *, .cpr-showcase *::before { transition: none !important; scroll-behavior: auto !important; } }
