.ccb-root {
	--ccb-radius: 8px;
	--ccb-radius-sm: 6px;
	--ccb-max: 1180px;
	--ccb-narrow: 820px;
	--ccb-shell-pad: 20px;
	--ccb-section-padding-y: clamp(26px, 3.3vw, 47px);
	--ccb-section-pad: var(--ccb-section-padding-y);
	--ccb-section-follow-padding-y: clamp(17px, 1.8vw, 26px);
	--ccb-section-padding-y-tight: clamp(17px, 2.4vw, 29px);
	--ccb-header-gap: clamp(22px, 3vw, 34px);
	color: var(--ccb-text);
	font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	line-height: 1.65;
	overflow-x: clip;
}

.ccb-root *,
.ccb-root *::before,
.ccb-root *::after {
	box-sizing: border-box;
}

.ccb-root p:empty {
	display: none !important;
}

.ccb-root.ccb-document {
	width: 100% !important;
	max-width: none !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	background:
		linear-gradient(180deg, color-mix(in srgb, var(--ccb-canvas) 82%, #fff 18%) 0%, #fff 42%, color-mix(in srgb, var(--ccb-primary-soft) 38%, #fff 62%) 100%);
	overflow-x: clip;
}

body.has-codex-content-blocks .wp-block-post-title,
body.has-codex-content-blocks .entry-title,
body.has-codex-content-blocks .page-title {
	display: none;
}

body.has-codex-content-blocks {
	margin: 0;
	overflow-x: hidden;
}

.ccb-language-switcher {
	display: flex;
	align-items: center;
	gap: 8px;
	color: var(--ccb-text, #334155);
	font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	font-size: .9rem;
	line-height: 1.2;
}

.ccb-language-switcher__label {
	color: var(--ccb-muted, #64748b);
	font-size: .75rem;
	font-weight: 800;
	letter-spacing: 0;
	text-transform: uppercase;
}

.ccb-language-switcher__list {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.ccb-language-switcher__list li {
	margin: 0;
	padding: 0;
	list-style: none;
}

.ccb-language-switcher__item {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 34px;
	padding: 7px 10px;
	border: 1px solid var(--ccb-primary-border, #dbe4ef);
	border-radius: 999px;
	background: color-mix(in srgb, var(--ccb-surface, #fff) 88%, #fff 12%);
	color: var(--ccb-heading, #0f172a);
	font-weight: 800;
	text-decoration: none;
	white-space: nowrap;
}

a.ccb-language-switcher__item:hover,
a.ccb-language-switcher__item:focus {
	border-color: color-mix(in srgb, var(--ccb-primary, #2563eb) 62%, var(--ccb-primary-border, #dbe4ef) 38%);
	background: var(--ccb-primary-soft, #eaf2ff);
	color: var(--ccb-primary-text, #1e3a8a);
}

.ccb-language-switcher__item.is-current {
	border-color: color-mix(in srgb, var(--ccb-primary, #2563eb) 74%, var(--ccb-primary-border, #dbe4ef) 26%);
	background: var(--ccb-primary, #2563eb);
	color: #fff;
}

.ccb-language-switcher--header {
	flex: 0 0 auto;
	position: relative;
}

.ccb-language-switcher__trigger {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 5px;
	width: auto;
	min-width: 40px;
	height: 40px;
	padding: 0 10px;
	border: 1px solid rgba(15,23,42,.16);
	border-radius: 999px;
	background: rgba(255,255,255,.86);
	color: var(--ccb-heading, #0f172a);
	box-shadow: 0 10px 24px rgba(15,23,42,.08);
	cursor: pointer;
}

.ccb-language-switcher__trigger:hover,
.ccb-language-switcher__trigger:focus {
	border-color: color-mix(in srgb, var(--ccb-primary, #2563eb) 54%, rgba(15,23,42,.16) 46%);
	background: #fff;
	color: var(--ccb-primary-text, #1e3a8a);
	outline: none;
}

.ccb-language-switcher__trigger:focus-visible {
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--ccb-primary, #2563eb) 26%, transparent 74%);
}

.ccb-language-switcher__icon {
	width: 20px;
	height: 20px;
	stroke: currentColor;
	stroke-width: 1.8;
	fill: none;
}

.ccb-language-switcher__current {
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1;
}

.ccb-language-switcher__modal[hidden] {
	display: none;
}

.ccb-language-switcher__modal {
	position: fixed;
	inset: 0;
	z-index: 100000;
	display: grid;
	place-items: center;
	padding: 24px;
}

.ccb-language-switcher__backdrop {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	border: 0;
	background: rgba(15,23,42,.48);
	cursor: pointer;
}

.ccb-language-switcher__panel {
	position: relative;
	z-index: 1;
	width: min(420px, 100%);
	max-height: min(640px, calc(100vh - 48px));
	overflow: auto;
	padding: 18px;
	border: 1px solid rgba(15,23,42,.12);
	border-radius: 18px;
	background: var(--ccb-surface, #fff);
	box-shadow: 0 30px 90px rgba(15,23,42,.28);
	color: var(--ccb-text, #334155);
}

.ccb-language-switcher__panel-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 14px;
}

.ccb-language-switcher__panel-head h2 {
	margin: 0;
	color: var(--ccb-heading, #0f172a);
	font-size: 1.08rem;
	line-height: 1.2;
}

.ccb-language-switcher__close {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	padding: 0;
	border: 1px solid var(--ccb-primary-border, #dbe4ef);
	border-radius: 999px;
	background: color-mix(in srgb, var(--ccb-surface, #fff) 90%, #fff 10%);
	color: var(--ccb-heading, #0f172a);
	font-size: 24px;
	line-height: 1;
	cursor: pointer;
}

.ccb-language-switcher--header .ccb-language-switcher__list {
	display: grid;
	grid-template-columns: 1fr;
	gap: 8px;
}

.ccb-language-switcher--header .ccb-language-switcher__item {
	justify-content: flex-start;
	width: 100%;
	min-height: 44px;
	padding: 10px 12px;
	font-size: .95rem;
	box-sizing: border-box;
}

body.ccb-language-picker-open {
	overflow: hidden;
}

body.mls-header-dark .ccb-language-switcher__trigger {
	border-color: rgba(255,255,255,.2);
	background: rgba(255,255,255,.1);
	color: #fff;
	box-shadow: none;
}

body.mls-header-dark .ccb-language-switcher__trigger:hover,
body.mls-header-dark .ccb-language-switcher__trigger:focus {
	background: #fff;
	color: var(--ccb-primary-text, #1e3a8a);
}

.ccb-language-switcher--content {
	width: min(100% - 40px, var(--ccb-max, 1180px));
	margin: 18px auto 0;
	justify-content: flex-end;
}

@media (max-width: 820px) {
	.ccb-language-switcher--header {
		width: auto;
		justify-content: center;
	}

	.ccb-language-switcher__modal {
		padding: 18px;
	}

	.ccb-language-switcher__panel {
		max-height: calc(100vh - 36px);
		border-radius: 16px;
	}
}

.ccb-section {
	position: relative;
	overflow: hidden;
	padding: var(--ccb-section-padding-y) 20px;
}

.ccb-section.ccb-tight {
	padding-block: var(--ccb-section-padding-y-tight);
}

.ccb-section + .ccb-section {
	padding-top: var(--ccb-section-follow-padding-y);
}

.ccb-section::before {
	content: "";
	position: absolute;
	inset: 0;
	pointer-events: none;
	background:
		linear-gradient(120deg, transparent 0%, transparent 62%, color-mix(in srgb, var(--ccb-primary-soft) 48%, transparent) 62%, transparent 82%),
		repeating-linear-gradient(135deg, color-mix(in srgb, var(--ccb-primary-border) 32%, transparent) 0 1px, transparent 1px 18px);
	opacity: .16;
	mask-image: linear-gradient(180deg, transparent, #000 18%, #000 82%, transparent);
}

.ccb-shell {
	position: relative;
	z-index: 1;
	width: min(100%, var(--ccb-max));
	margin-inline: auto;
	min-width: 0;
}

.ccb-narrow {
	width: min(100%, var(--ccb-narrow));
	text-align: center;
}

.ccb-section-head {
	width: min(100%, 760px);
	margin: 0 auto var(--ccb-header-gap);
	text-align: center;
}

.ccb-section-head > :last-child {
	margin-bottom: 0;
}

.ccb-root p {
	white-space: pre-line;
}

.ccb-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	margin: 0 0 14px;
	color: var(--ccb-primary-text);
	font-size: .78rem;
	font-weight: 800;
	letter-spacing: 0;
	text-transform: uppercase;
}

.ccb-eyebrow::before {
	content: "";
	width: 24px;
	height: 2px;
	background: var(--ccb-gradient-primary);
	border-radius: 2px;
}

.ccb-narrow .ccb-eyebrow::after,
.ccb-section-head .ccb-eyebrow::after {
	content: "";
	width: 24px;
	height: 2px;
	background: var(--ccb-gradient-primary);
	border-radius: 2px;
}

.ccb-root h1,
.ccb-root h2,
.ccb-root h3,
.ccb-root p {
	letter-spacing: 0;
}

.ccb-root .ccb-section-title,
.ccb-root h2 {
	max-width: 980px;
	margin: 0 0 18px;
	color: var(--ccb-heading);
	font-size: clamp(2rem, 4.2vw, 4.5rem);
	line-height: 1.02;
	font-weight: 850;
	overflow-wrap: anywhere;
}

.ccb-section-head .ccb-section-title,
.ccb-section-head h2,
.ccb-narrow .ccb-section-title,
.ccb-narrow h2 {
	margin-inline: auto;
	font-size: clamp(2rem, 3.4vw, 3.7rem);
}

.ccb-root h3 {
	margin: 0 0 10px;
	color: var(--ccb-heading);
	font-size: clamp(1.05rem, 1.4vw, 1.35rem);
	line-height: 1.22;
	font-weight: 800;
}

.ccb-root p {
	margin: 0 0 16px;
	color: var(--ccb-text);
	font-size: clamp(1rem, 1.08vw, 1.08rem);
	overflow-wrap: anywhere;
}

.ccb-section-head p,
.ccb-narrow p,
.ccb-hero-copy p {
	color: var(--ccb-muted);
	font-size: clamp(1.02rem, 1.2vw, 1.18rem);
}

.ccb-root .ccb-standard-section {
	overflow: hidden;
	clip-path: none;
	margin-block: 0;
	padding: clamp(8px, 1vw, 14px) 20px;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: var(--ccb-text);
}

.ccb-root .ccb-standard-section + .ccb-standard-section {
	padding-top: clamp(8px, 1vw, 14px);
	border-top: 0;
}

.ccb-root .ccb-standard-section::before,
.ccb-root .ccb-standard-section::after {
	display: none;
}

.ccb-root .ccb-standard-prose,
.ccb-root .ccb-standard-prose :is(h1, h2, h3, p, li, span, strong, em, a, u) {
	text-shadow: none;
}

.ccb-root .ccb-standard-prose {
	width: min(100%, 820px);
	margin-inline: auto;
	color: var(--ccb-text);
}

.ccb-root .ccb-standard-prose .ccb-section-title {
	margin: 0 0 18px;
	color: var(--ccb-heading);
	font-size: clamp(2rem, 3.2vw, 3.35rem);
	font-weight: 850;
	letter-spacing: 0;
	line-height: 1.06;
	text-transform: none;
}

.ccb-root .ccb-standard-prose p {
	max-width: none;
	margin: 0 0 12px;
	color: var(--ccb-text);
	font-size: clamp(1.03rem, 1.12vw, 1.16rem);
	line-height: 1.68;
}

.ccb-root .ccb-standard-prose p + p {
	margin-top: 0;
}

.ccb-root .ccb-standard-prose p:last-child {
	margin-bottom: 0;
}

.ccb-root .ccb-standard-prose .ccb-eyebrow {
	color: var(--ccb-primary-text);
	font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	font-size: .78rem;
	font-weight: 900;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.ccb-root .ccb-standard-prose .ccb-eyebrow::before,
.ccb-root .ccb-standard-prose .ccb-eyebrow::after {
	width: 34px;
	height: 3px;
	border-radius: 999px;
	background: var(--ccb-gradient-primary);
	transform: none;
}

.ccb-root .ccb-standard-panel {
	width: min(100%, 900px);
	padding: clamp(24px, 4vw, 44px);
	border: 1px solid color-mix(in srgb, var(--ccb-primary-border) 72%, #fff 28%);
	border-radius: 8px;
	background: linear-gradient(145deg, rgba(255,255,255,.92), color-mix(in srgb, var(--ccb-surface-alt) 70%, #fff 30%));
	box-shadow: 0 14px 42px rgba(15,31,55,.08);
	clip-path: none;
	color: var(--ccb-text);
}

.ccb-root .ccb-standard-panel p {
	max-width: none;
}

.ccb-cta-row {
	margin-top: 26px;
}

.ccb-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 13px 22px;
	border: 0;
	border-radius: 999px;
	background: var(--ccb-gradient-primary);
	box-shadow: 0 14px 34px color-mix(in srgb, var(--ccb-primary) 28%, transparent);
	color: #fff;
	font-weight: 800;
	text-decoration: none;
	transition: transform .18s ease, box-shadow .18s ease;
}

.ccb-button:hover,
.ccb-button:focus {
	transform: translateY(-2px);
	box-shadow: var(--ccb-shadow-strong);
	color: #fff;
}

.ccb-hero-split {
	padding-top: clamp(70px, 8vw, 128px);
	background:
		linear-gradient(135deg, #fff 0%, color-mix(in srgb, var(--ccb-primary-soft) 54%, #fff 46%) 100%);
}

.ccb-hero-split__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(320px, .88fr);
	gap: clamp(34px, 6vw, 82px);
	align-items: center;
	min-width: 0;
}

.ccb-hero-art {
	position: relative;
	min-height: 420px;
	min-width: 0;
}

.ccb-hero-art--image {
	display: grid;
	align-items: stretch;
	padding: clamp(18px, 3vw, 30px);
	border: 1px solid color-mix(in srgb, var(--ccb-primary-border) 70%, #fff 30%);
	border-radius: var(--ccb-radius);
	background:
		linear-gradient(155deg, rgba(255,255,255,.08) 0 18%, transparent 18% 42%, rgba(255,255,255,.11) 42% 56%, transparent 56%),
		linear-gradient(135deg, color-mix(in srgb, var(--ccb-heading) 92%, #000 8%) 0%, color-mix(in srgb, var(--ccb-primary-dark) 74%, #111 26%) 46%, color-mix(in srgb, var(--ccb-primary) 68%, var(--ccb-accent) 32%) 100%);
	box-shadow: var(--ccb-shadow-strong);
}

.ccb-hero-art--image::before {
	content: "";
	position: absolute;
	inset: 22px;
	border: 1px solid rgba(255,255,255,.18);
	border-radius: 8px;
	pointer-events: none;
}

.ccb-image-hero,
.ccb-image-cta,
.ccb-image-text__image,
.ccb-image-screen,
.ccb-image-pair__image,
.ccb-image-gallery__thumb {
	display: block;
	width: 100%;
	object-fit: cover;
	border-radius: var(--ccb-radius);
	box-shadow: var(--ccb-shadow-strong);
}

.ccb-image-hero {
	aspect-ratio: 4 / 5;
}

.ccb-hero-art--image .ccb-image-hero {
	position: relative;
	z-index: 1;
	height: 100%;
	min-height: 360px;
	border: 1px solid rgba(255,255,255,.28);
	box-shadow: 0 20px 54px rgba(12, 8, 40, .28);
}

.ccb-image-placeholder {
	position: relative;
	overflow: hidden;
	isolation: isolate;
	min-height: 360px;
	border: 1px solid color-mix(in srgb, var(--ccb-primary-border) 70%, #fff 30%);
	background:
		linear-gradient(155deg, rgba(255,255,255,.08) 0 18%, transparent 18% 42%, rgba(255,255,255,.11) 42% 56%, transparent 56%),
		linear-gradient(135deg, color-mix(in srgb, var(--ccb-heading) 92%, #000 8%) 0%, color-mix(in srgb, var(--ccb-primary-dark) 74%, #111 26%) 46%, color-mix(in srgb, var(--ccb-primary) 68%, var(--ccb-accent) 32%) 100%);
}

.ccb-image-placeholder::before {
	content: "";
	position: absolute;
	z-index: 1;
	inset: 24px 28px 112px;
	border: 1px solid rgba(255,255,255,.24);
	border-radius: 8px;
	background:
		linear-gradient(90deg, rgba(255,255,255,.16) 0 16%, transparent 16%),
		linear-gradient(90deg, rgba(255,255,255,.26), rgba(255,255,255,.1)) 22% 24% / 48% 9px no-repeat,
		linear-gradient(90deg, rgba(255,255,255,.18), rgba(255,255,255,.05)) 22% 33% / 62% 7px no-repeat,
		linear-gradient(90deg, rgba(255,255,255,.14), rgba(255,255,255,.04)) 22% 42% / 40% 7px no-repeat,
		linear-gradient(180deg, rgba(255,255,255,.22), rgba(255,255,255,.08)) 22% 60% / 18% 28% no-repeat,
		linear-gradient(180deg, rgba(255,255,255,.18), rgba(255,255,255,.06)) 44% 60% / 18% 28% no-repeat,
		linear-gradient(180deg, rgba(255,255,255,.14), rgba(255,255,255,.05)) 66% 60% / 18% 28% no-repeat,
		linear-gradient(180deg, rgba(255,255,255,.14), transparent 42px);
	box-shadow: inset 0 1px 0 rgba(255,255,255,.18);
	backdrop-filter: blur(8px);
}

.ccb-image-placeholder::after {
	content: "";
	position: absolute;
	z-index: 2;
	left: 10%;
	right: 8%;
	bottom: 12%;
	height: 24%;
	border: 1px solid rgba(255,255,255,.22);
	border-radius: 8px;
	background:
		linear-gradient(90deg, rgba(255,255,255,.3), rgba(255,255,255,.08)) 8% 24% / 36% 8px no-repeat,
		linear-gradient(90deg, rgba(255,255,255,.16), rgba(255,255,255,.04)) 8% 43% / 52% 6px no-repeat,
		linear-gradient(90deg, rgba(255,255,255,.28) 0 18%, transparent 18% 24%, rgba(255,255,255,.2) 24% 50%, transparent 50% 56%, rgba(255,255,255,.14) 56% 78%, transparent 78%) 10% 74% / 76% 32px no-repeat,
		rgba(255,255,255,.14);
	box-shadow: 0 22px 54px rgba(12, 8, 40, .2);
	backdrop-filter: blur(16px);
}

.ccb-image-placeholder span {
	position: absolute;
	z-index: 3;
	left: 13%;
	top: 17%;
	width: 30%;
	height: 8px;
	border-radius: 999px;
	background: rgba(255,255,255,.44);
	box-shadow:
		0 20px 0 rgba(255,255,255,.18),
		0 40px 0 rgba(255,255,255,.12),
		160px 118px 0 22px rgba(255,255,255,.1);
}

.ccb-float-chip {
	position: absolute;
	display: inline-flex;
	align-items: center;
	z-index: 5;
	min-height: 36px;
	padding: 8px 14px;
	border: 1px solid color-mix(in srgb, var(--ccb-primary-border) 72%, #fff 28%);
	border-radius: 999px;
	background: rgba(255,255,255,.9);
	box-shadow: var(--ccb-shadow);
	color: var(--ccb-primary-text);
	font-size: .84rem;
	font-weight: 800;
	backdrop-filter: blur(10px);
}

.ccb-chip-one {
	top: 38px;
	left: -14px;
}

.ccb-chip-two {
	right: -10px;
	bottom: 58px;
}

.ccb-hero-centered {
	color: #fff;
	background:
		linear-gradient(160deg, color-mix(in srgb, var(--ccb-primary-dark) 92%, #000 8%) 0%, var(--ccb-primary) 58%, color-mix(in srgb, var(--ccb-accent) 86%, #000 14%) 100%);
}

.ccb-hero-centered::after {
	content: "";
	position: absolute;
	inset: 18px;
	border: 1px solid rgba(255,255,255,.18);
	border-radius: var(--ccb-radius);
	pointer-events: none;
}

.ccb-hero-centered .ccb-section-title,
.ccb-hero-centered h2,
.ccb-hero-centered p,
.ccb-hero-centered .ccb-eyebrow,
.ccb-hero-dark .ccb-section-title,
.ccb-hero-dark h2,
.ccb-hero-dark p,
.ccb-hero-dark .ccb-eyebrow {
	color: #fff;
}

.ccb-hero-centered .ccb-button,
.ccb-hero-dark .ccb-button {
	background: #fff;
	color: var(--ccb-primary-text);
}

.ccb-hero-dark {
	min-height: 560px;
	display: flex;
	align-items: center;
	background-size: cover;
	background-position: center;
	background-color: var(--ccb-primary-dark);
}

.ccb-dark-cta {
	min-height: clamp(320px, 34vw, 460px);
}

.ccb-intro-panel,
.ccb-icon-list-panel,
.ccb-case-card,
.ccb-product-cta {
	display: grid;
	grid-template-columns: minmax(0, .9fr) minmax(280px, 1fr);
	gap: clamp(22px, 4vw, 48px);
	align-items: center;
	padding: clamp(24px, 4vw, 44px);
	border: 1px solid color-mix(in srgb, var(--ccb-primary-border) 78%, #fff 22%);
	border-radius: var(--ccb-radius);
	background:
		linear-gradient(145deg, rgba(255,255,255,.96), color-mix(in srgb, var(--ccb-primary-soft) 58%, #fff 42%));
	box-shadow: var(--ccb-shadow);
}

.ccb-intro-panel .ccb-section-head,
.ccb-icon-list-panel .ccb-section-head,
.ccb-case-card .ccb-section-head,
.ccb-product-cta .ccb-section-head {
	margin-inline: 0;
	margin-bottom: 0;
	text-align: left;
}

.ccb-intro-panel .ccb-section-head .ccb-section-title,
.ccb-icon-list-panel .ccb-section-head .ccb-section-title,
.ccb-case-card .ccb-section-head .ccb-section-title,
.ccb-product-cta .ccb-section-head .ccb-section-title {
	margin-inline: 0;
}

.ccb-product-cta .ccb-section-title,
.ccb-product-cta h2 {
	font-size: clamp(2rem, 3.35vw, 3.75rem);
	line-height: 1.04;
	overflow-wrap: break-word;
	word-break: normal;
	hyphens: none;
}

.ccb-takeaways,
.ccb-icon-list,
.ccb-case-points {
	display: grid;
	gap: 14px;
	min-width: 0;
	width: 100%;
	max-width: 100%;
}

.ccb-intro-panel .ccb-takeaways {
	--ccb-takeaway-edge-gutter: clamp(10px, 2.4%, 24px);
	--ccb-takeaway-row-gap: clamp(14px, 3%, 30px);
	gap: var(--ccb-takeaway-row-gap);
	padding-block: var(--ccb-takeaway-edge-gutter);
}

@media (min-width: 781px) {
	.ccb-intro-panel .ccb-takeaways {
		min-height: clamp(300px, 25vw, 430px);
		align-content: center;
	}

	.ccb-intro-panel .ccb-takeaways:has(> .ccb-takeaway:nth-child(2):last-child) {
		--ccb-takeaway-edge-gutter: clamp(24px, 8%, 56px);
		--ccb-takeaway-row-gap: clamp(34px, 12%, 82px);
	}

	.ccb-intro-panel .ccb-takeaways:has(> .ccb-takeaway:nth-child(3):last-child) {
		--ccb-takeaway-edge-gutter: clamp(20px, 6%, 46px);
		--ccb-takeaway-row-gap: clamp(24px, 7%, 54px);
	}

	.ccb-intro-panel .ccb-takeaways:has(> .ccb-takeaway:nth-child(4):last-child) {
		--ccb-takeaway-edge-gutter: clamp(14px, 4%, 34px);
		--ccb-takeaway-row-gap: clamp(16px, 4%, 34px);
	}

	.ccb-intro-panel .ccb-takeaways:has(> .ccb-takeaway:nth-child(5):last-child) {
		--ccb-takeaway-edge-gutter: clamp(8px, 2.4%, 22px);
		--ccb-takeaway-row-gap: clamp(12px, 2.4%, 22px);
	}
}

.ccb-takeaway,
.ccb-icon-row,
.ccb-case-points article {
	display: grid;
	grid-template-columns: 44px minmax(0, 1fr);
	gap: 14px;
	align-items: center;
	justify-items: start;
	text-align: left;
	padding: 16px;
	border: 1px solid color-mix(in srgb, var(--ccb-primary-border) 60%, #fff 40%);
	border-radius: var(--ccb-radius);
	background: rgba(255,255,255,.76);
	min-width: 0;
	width: 100%;
	max-width: 100%;
}

.ccb-icon-row {
	grid-template-columns: 57px minmax(0, 1fr);
	column-gap: 18px;
	align-items: center;
}

.ccb-takeaway > span:not(.ccb-takeaway-copy),
.ccb-icon-row > span,
.ccb-card-icon {
	display: grid;
	place-items: center;
	width: 44px;
	height: 44px;
	border-radius: var(--ccb-radius-sm);
	background: var(--ccb-gradient-primary);
	color: #fff;
}

.ccb-icon-row > span {
	width: 57px;
	height: 57px;
}

.ccb-icon-row > span svg {
	width: 29px;
	height: 29px;
}

.ccb-root svg {
	width: 22px;
	height: 22px;
	fill: none;
	stroke: currentColor;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.ccb-root :is(.ccb-card-icon, .ccb-icon-row > span, .ccb-takeaway > span:not(.ccb-takeaway-copy), .ccb-resource-card > span, .ccb-checklist article > span, .ccb-callout > span) svg {
	color: #fff !important;
	stroke: #fff !important;
	opacity: 1 !important;
}

.ccb-takeaway p,
.ccb-takeaway-copy,
.ccb-icon-row p {
	grid-column: 2;
	width: auto !important;
	max-width: none !important;
	min-width: 0;
	margin: 0;
	overflow-wrap: normal;
	word-break: normal;
	hyphens: none;
}

.ccb-icon-row > div {
	grid-column: 2;
	grid-row: 1;
	justify-self: stretch;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0;
	margin-inline: 0 !important;
}

.ccb-icon-row h3,
.ccb-icon-row p {
	display: block;
	width: 100% !important;
	max-width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	text-align: left;
	overflow-wrap: normal;
	word-break: normal;
	hyphens: none;
}

.ccb-case-points article {
	display: block;
}

.ccb-case-points article h3 {
	font-size: 1.05rem;
	line-height: 1.22;
}

.ccb-case-points article p {
	margin-bottom: 0;
}

.ccb-trust-bar {
	display: grid;
	gap: 1px;
	overflow: hidden;
	border: 1px solid color-mix(in srgb, var(--ccb-primary-border) 70%, #fff 30%);
	border-radius: var(--ccb-radius);
	background: color-mix(in srgb, var(--ccb-primary-border) 72%, #fff 28%);
	box-shadow: var(--ccb-shadow);
}

.ccb-trust-bar {
	grid-template-columns: minmax(180px, 1.2fr) repeat(3, minmax(140px, 1fr));
}

.ccb-stat-band {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 14px;
}

.ccb-stat-band--3 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ccb-trust-title,
.ccb-trust-item {
	padding: 24px;
	background: rgba(255,255,255,.9);
}

.ccb-stat-card {
	display: grid;
	align-content: center;
	min-width: 0;
	min-height: 132px;
	padding: 22px;
	border: 1px solid color-mix(in srgb, var(--ccb-primary-border) 72%, #fff 28%);
	border-radius: var(--ccb-radius);
	background:
		linear-gradient(145deg, rgba(255,255,255,.95), color-mix(in srgb, var(--ccb-primary-soft) 54%, #fff 46%));
	box-shadow: 0 14px 34px rgba(15,31,55,.08);
}

.ccb-trust-title {
	font-weight: 850;
	color: var(--ccb-heading);
}

.ccb-trust-item strong {
	display: block;
	color: var(--ccb-heading);
	font-size: clamp(1.5rem, 3vw, 2.6rem);
	line-height: 1;
}

.ccb-stat-card strong {
	display: block;
	max-width: 100%;
	color: var(--ccb-heading);
	font-size: clamp(1.35rem, 2.2vw, 2.1rem);
	line-height: 1.05;
	overflow-wrap: break-word;
}

.ccb-trust-item span {
	display: block;
	margin-top: 8px;
	color: var(--ccb-muted);
	font-weight: 700;
}

.ccb-stat-card span {
	display: block;
	max-width: 100%;
	margin-top: 10px;
	color: var(--ccb-muted);
	font-weight: 750;
	line-height: 1.35;
	overflow-wrap: break-word;
}

.ccb-card-grid,
.ccb-deep-grid,
.ccb-pricing-grid,
.ccb-testimonials {
	display: grid;
	gap: 18px;
}

.ccb-card-grid-3,
.ccb-pricing-grid,
.ccb-testimonials {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ccb-pricing-grid--count-2 {
	grid-template-columns: repeat(2, minmax(280px, 380px));
	justify-content: center;
}

.ccb-pricing-grid:has(> .ccb-price-card:nth-child(2):last-child) {
	grid-template-columns: repeat(2, minmax(280px, 380px));
	justify-content: center;
}

.ccb-pricing-grid--count-3 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ccb-pricing-grid--count-4 {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.ccb-card-grid-4 {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.ccb-feature-card,
.ccb-deep-card,
.ccb-price-card,
.ccb-testimonials figure,
.ccb-faq article,
.ccb-pros-cons article,
.ccb-step,
.ccb-timeline article {
	position: relative;
	padding: 24px;
	border: 1px solid color-mix(in srgb, var(--ccb-primary-border) 70%, #fff 30%);
	border-radius: var(--ccb-radius);
	background:
		linear-gradient(180deg, rgba(255,255,255,.96), color-mix(in srgb, var(--ccb-surface-alt) 68%, #fff 32%));
	box-shadow: 0 14px 38px rgba(15,31,55,.08);
}

.ccb-feature-card::after,
.ccb-deep-card::after,
.ccb-price-card::after {
	content: "";
	position: absolute;
	inset: auto 18px 0;
	height: 3px;
	background: var(--ccb-gradient-primary);
	border-radius: 3px 3px 0 0;
}

.ccb-feature-card {
	text-align: center;
}

.ccb-feature-card .ccb-card-icon {
	width: 70px;
	height: 70px;
	margin: 6px auto 18px;
}

.ccb-feature-card .ccb-card-icon svg {
	width: 35px;
	height: 35px;
}

.ccb-deep-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ccb-deep-card {
	padding: 32px;
	background:
		linear-gradient(150deg, #fff 0%, color-mix(in srgb, var(--ccb-primary-soft) 54%, #fff 46%) 100%);
}

.ccb-deep-num {
	display: inline-flex;
	margin-bottom: 28px;
	color: var(--ccb-primary-text);
	font-size: .9rem;
	font-weight: 900;
}

.ccb-steps {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 18px;
	counter-reset: steps;
}

.ccb-steps--count-3 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ccb-steps--count-4 {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.ccb-steps--count-5 {
	grid-template-columns: repeat(5, minmax(0, 1fr));
}

.ccb-steps--count-6 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ccb-step span {
	display: grid;
	place-items: center;
	width: 42px;
	height: 42px;
	margin-bottom: 18px;
	border-radius: 50%;
	background: var(--ccb-gradient-primary);
	color: #fff;
	font-weight: 900;
}

.ccb-timeline {
	position: relative;
	display: grid;
	gap: 18px;
	padding-left: 30px;
}

.ccb-timeline::before {
	content: "";
	position: absolute;
	top: 8px;
	bottom: 8px;
	left: 8px;
	width: 4px;
	border-radius: 4px;
	background: var(--ccb-gradient-primary);
}

.ccb-timeline article span,
.ccb-paired-label,
.ccb-price-card > span,
.ccb-case-points article span {
	display: inline-flex;
	margin-bottom: 10px;
	color: var(--ccb-primary-text);
	font-size: .78rem;
	font-weight: 850;
	text-transform: uppercase;
	letter-spacing: 0;
}

.ccb-paired,
.ccb-pros-cons {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px;
}

.ccb-paired article {
	position: relative;
	padding: 30px;
	border-radius: var(--ccb-radius);
	box-shadow: var(--ccb-shadow);
}

.ccb-paired article:first-child {
	border: 1px solid color-mix(in srgb, var(--ccb-danger) 32%, #fff 68%);
	background: linear-gradient(145deg, #fff, color-mix(in srgb, var(--ccb-danger) 8%, #fff 92%));
}

.ccb-paired article:last-child {
	border: 1px solid color-mix(in srgb, var(--ccb-success) 32%, #fff 68%);
	background: linear-gradient(145deg, #fff, color-mix(in srgb, var(--ccb-success) 9%, #fff 91%));
}

.ccb-table-wrap {
	overflow-x: auto;
	border: 1px solid color-mix(in srgb, var(--ccb-primary-border) 72%, #fff 28%);
	border-radius: var(--ccb-radius);
	background:
		linear-gradient(145deg, rgba(255,255,255,.98), color-mix(in srgb, var(--ccb-primary-soft) 28%, #fff 72%));
	box-shadow: var(--ccb-shadow);
}

.ccb-table {
	width: 100%;
	min-width: 640px;
	border-collapse: separate;
	border-spacing: 0;
	background: transparent;
}

.ccb-table-wrap--cols-2,
.ccb-table-wrap:has(.ccb-table th:nth-child(2):last-child) {
	width: min(100%, 820px);
	margin-inline: auto;
}

.ccb-table--cols-2,
.ccb-table-wrap:has(.ccb-table th:nth-child(2):last-child) .ccb-table {
	min-width: 0;
}

.ccb-table th,
.ccb-table td {
	padding: 20px 22px;
	border-bottom: 1px solid color-mix(in srgb, var(--ccb-primary-border) 72%, #fff 28%);
	border-right: 1px solid color-mix(in srgb, var(--ccb-primary-border) 62%, #fff 38%);
	text-align: left;
	vertical-align: top;
	overflow-wrap: normal;
	word-break: normal;
	hyphens: none;
	line-height: 1.42;
}

.ccb-table th:last-child,
.ccb-table td:last-child {
	border-right: 0;
}

.ccb-table tbody tr:last-child td {
	border-bottom: 0;
}

.ccb-table th {
	background:
		linear-gradient(135deg, color-mix(in srgb, var(--ccb-primary-dark) 88%, #000 12%), color-mix(in srgb, var(--ccb-primary) 82%, var(--ccb-accent) 18%));
	color: #fff !important;
	font-size: .86rem;
	font-weight: 900;
	letter-spacing: .02em;
	text-transform: uppercase;
}

.ccb-table td {
	background: rgba(255,255,255,.82);
	color: var(--ccb-text);
	font-size: 1rem;
	font-weight: 650;
}

.ccb-table tbody tr:nth-child(even) td {
	background: color-mix(in srgb, var(--ccb-primary-soft) 22%, #fff 78%);
}

.ccb-table td:first-child {
	color: var(--ccb-heading);
	font-weight: 850;
}

.ccb-price-card strong {
	display: block;
	margin: 12px 0;
	color: var(--ccb-heading);
	font-size: clamp(2rem, 3vw, 3rem);
	line-height: 1;
}

.ccb-price-card {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

.ccb-price-card .ccb-cta-row {
	margin: auto 0 0;
	padding-top: 26px;
}

.ccb-price-card .ccb-button {
	margin-top: 0;
}

.ccb-price-card.is-featured {
	background:
		linear-gradient(150deg, color-mix(in srgb, var(--ccb-primary-dark) 96%, #000 4%), color-mix(in srgb, var(--ccb-primary) 78%, var(--ccb-accent) 22%));
	color: #fff;
	transform: translateY(-10px);
}

.ccb-price-card.is-featured h3,
.ccb-price-card.is-featured p,
.ccb-price-card.is-featured strong,
.ccb-price-card.is-featured li,
.ccb-price-card.is-featured span {
	color: #fff;
}

.ccb-mini-list {
	display: grid;
	gap: 9px;
	margin: 18px 0 0;
	padding: 0;
	list-style: none;
}

.ccb-mini-list li {
	position: relative;
	padding-left: 28px;
	color: var(--ccb-text);
}

.ccb-mini-list li::before {
	content: "";
	position: absolute;
	left: 0;
	top: .72em;
	width: 14px;
	height: 2px;
	background: var(--ccb-gradient-primary);
	border-radius: 2px;
}

.ccb-mini-list-check li::before {
	top: .44em;
	width: 16px;
	height: 16px;
	border-radius: 50%;
	background:
		linear-gradient(135deg, var(--ccb-success), color-mix(in srgb, var(--ccb-success) 64%, #fff 36%));
}

.ccb-quote,
.ccb-callout {
	margin: 0;
	padding: clamp(26px, 5vw, 48px);
	border-radius: var(--ccb-radius);
	box-shadow: var(--ccb-shadow);
}

.ccb-quote {
	position: relative;
	overflow: hidden;
	border: 1px solid color-mix(in srgb, var(--ccb-primary-border) 70%, #fff 30%);
	background:
		linear-gradient(135deg, #fff, color-mix(in srgb, var(--ccb-accent-soft) 58%, #fff 42%));
}

.ccb-quote::before {
	content: "\201C";
	position: absolute;
	right: clamp(20px, 4vw, 48px);
	bottom: -34px;
	color: color-mix(in srgb, var(--ccb-accent) 17%, transparent 83%);
	font-size: clamp(7rem, 16vw, 15rem);
	font-weight: 900;
	line-height: 1;
	pointer-events: none;
}

.ccb-quote blockquote {
	position: relative;
	z-index: 1;
	margin: 0;
	color: var(--ccb-heading);
	font-size: clamp(1.35rem, 2.2vw, 2.35rem);
	font-weight: 800;
	line-height: 1.18;
}

.ccb-quote figcaption {
	position: relative;
	z-index: 1;
	margin-top: 18px;
	color: var(--ccb-muted);
	font-weight: 800;
}

.ccb-callout {
	display: flex;
	align-items: flex-start;
	gap: 18px;
	border: 1px solid color-mix(in srgb, var(--ccb-primary-border) 70%, #fff 30%);
	background: #fff;
}

.ccb-callout > div {
	flex: 1 1 auto;
	min-width: 0;
}

.ccb-callout > span {
	flex: 0 0 auto;
	display: grid;
	place-items: center;
	width: 58px;
	height: 58px;
	border-radius: var(--ccb-radius);
	color: #fff;
	background: var(--ccb-gradient-primary);
}

.ccb-callout .ccb-section-title,
.ccb-callout h2 {
	max-width: none;
	font-size: clamp(1.55rem, 2.5vw, 2.8rem);
	line-height: 1.08;
}

.ccb-callout p {
	max-width: 820px;
}

.ccb-callout-warning {
	background: linear-gradient(135deg, #fff, color-mix(in srgb, var(--ccb-warning) 12%, #fff 88%));
}

.ccb-callout-tip {
	background: linear-gradient(135deg, #fff, color-mix(in srgb, var(--ccb-primary-soft) 68%, #fff 32%));
}

.ccb-testimonials figure {
	margin: 0;
}

.ccb-testimonials blockquote {
	margin: 0 0 18px;
	color: var(--ccb-heading);
	font-weight: 720;
}

.ccb-testimonials figcaption {
	display: grid;
	gap: 2px;
	color: var(--ccb-muted);
}

.ccb-image-slider {
	position: relative;
	display: grid;
	gap: 18px;
	overflow: hidden;
}

.ccb-image-slider .ccb-slider__viewport {
	display: grid;
	grid-template-columns: minmax(120px, .38fr) minmax(0, 1.36fr) minmax(120px, .38fr);
	gap: clamp(12px, 2vw, 22px);
	align-items: center;
	min-height: 0;
}

.ccb-image-slider .ccb-slider__slide {
	display: none;
	flex-direction: column;
	justify-content: stretch;
	min-width: 0;
	margin: 0;
	opacity: .52;
	transform: scale(.94);
	transition: opacity .28s ease, transform .28s ease, filter .28s ease;
}

.ccb-image-slider .ccb-slider__slide.is-prev,
.ccb-image-slider .ccb-slider__slide.is-active,
.ccb-image-slider .ccb-slider__slide.is-next {
	display: flex;
}

.ccb-image-slider .ccb-slider__slide.is-prev {
	order: 1;
}

.ccb-image-slider .ccb-slider__slide.is-active {
	order: 2;
	z-index: 2;
	opacity: 1;
	transform: scale(1);
}

.ccb-image-slider .ccb-slider__slide.is-next {
	order: 3;
}

.ccb-image-slider .ccb-slider__image-wrap {
	display: flex;
	align-items: center;
	min-height: 0;
}

.ccb-slider-image {
	display: block;
	width: 100%;
	height: clamp(260px, 36vw, 500px);
	min-height: 0;
	aspect-ratio: 16 / 10;
	object-fit: cover;
	border-radius: var(--ccb-radius);
	background:
		linear-gradient(135deg, color-mix(in srgb, var(--ccb-primary-soft) 70%, #fff 30%), color-mix(in srgb, var(--ccb-accent-soft) 50%, #fff 50%));
	box-shadow: var(--ccb-shadow);
}

.ccb-image-slider .ccb-slider__slide.is-prev .ccb-slider-image,
.ccb-image-slider .ccb-slider__slide.is-next .ccb-slider-image {
	height: clamp(96px, 12vw, 178px);
	aspect-ratio: 16 / 9;
	box-shadow: 0 12px 28px rgba(15,31,55,.12);
}

.ccb-image-slider .ccb-slider__slide figcaption {
	display: grid;
	gap: 5px;
	margin-top: 14px;
	padding-inline: 4px;
}

.ccb-image-slider .ccb-slider__slide figcaption span {
	color: var(--ccb-primary-text);
	font-size: .78rem;
	font-weight: 850;
	text-transform: uppercase;
}

.ccb-image-slider .ccb-slider__slide figcaption strong {
	color: var(--ccb-heading);
	font-size: clamp(1rem, 1.25vw, 1.22rem);
	line-height: 1.18;
}

.ccb-image-slider .ccb-slider__slide figcaption p {
	margin: 0;
	color: var(--ccb-muted);
	font-size: .96rem;
	line-height: 1.45;
}

.ccb-image-slider .ccb-slider__slide.is-prev figcaption,
.ccb-image-slider .ccb-slider__slide.is-next figcaption {
	display: none;
}

.ccb-slider__controls {
	display: flex;
	gap: 10px;
	align-items: center;
	justify-content: center;
}

.ccb-slider__button {
	appearance: none;
	display: grid;
	place-items: center;
	width: 44px;
	height: 44px;
	border: 1px solid color-mix(in srgb, var(--ccb-primary-border) 76%, #fff 24%);
	border-radius: 999px;
	background: linear-gradient(180deg, #fff, color-mix(in srgb, var(--ccb-surface-alt) 70%, #fff 30%));
	color: var(--ccb-heading);
	box-shadow: 0 10px 24px rgba(15,31,55,.1);
	cursor: pointer;
	font: 850 1.65rem/1 var(--ccb-font);
	transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.ccb-slider__button:hover,
.ccb-slider__button:focus-visible {
	border-color: color-mix(in srgb, var(--ccb-primary-border) 62%, var(--ccb-primary) 38%);
	box-shadow: 0 14px 34px rgba(15,31,55,.16);
	transform: translateY(-1px);
}

.ccb-slider__button:focus-visible {
	outline: 3px solid color-mix(in srgb, var(--ccb-primary) 42%, transparent);
	outline-offset: 3px;
}

.ccb-slider__button span {
	display: block;
	transform: translateY(-1px);
}

.ccb-image-slider.is-shifting .ccb-slider__slide.is-active,
.ccb-review-slider.is-shifting .ccb-review-card.is-active {
	animation: ccb-slider-settle .42s ease both;
}

@keyframes ccb-slider-settle {
	from {
		opacity: .72;
		transform: translateY(6px) scale(.98);
	}
	to {
		opacity: 1;
		transform: translateY(0) scale(1);
	}
}

@media (prefers-reduced-motion: reduce) {
	.ccb-image-slider .ccb-slider__slide,
	.ccb-review-slider .ccb-review-card,
	.ccb-slider__button {
		animation: none !important;
		transition: none !important;
	}
}

.ccb-reviews {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr));
	gap: 18px;
}

.ccb-reviews--count-1 {
	grid-template-columns: minmax(0, min(100%, 520px));
	justify-content: center;
}

.ccb-reviews--count-2 {
	grid-template-columns: repeat(2, minmax(260px, 400px));
	justify-content: center;
}

.ccb-reviews--count-3 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ccb-reviews--count-4,
.ccb-reviews--slider {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.ccb-review-slider {
	display: grid;
	gap: 18px;
}

.ccb-reviews--slider .ccb-review-card {
	display: none;
}

.ccb-reviews--slider .ccb-review-card.is-active {
	display: grid;
}

.ccb-review-card {
	display: grid;
	gap: 16px;
	margin: 0;
	padding: 24px;
	border: 1px solid color-mix(in srgb, var(--ccb-primary-border) 70%, #fff 30%);
	border-radius: var(--ccb-radius);
	background:
		linear-gradient(180deg, rgba(255,255,255,.97), color-mix(in srgb, var(--ccb-surface-alt) 68%, #fff 32%));
	box-shadow: 0 14px 38px rgba(15,31,55,.08);
}

.ccb-review-card__rating {
	display: block;
	width: 100%;
}

.ccb-review-stars {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: clamp(3px, .45vw, 8px);
	width: 100%;
	color: color-mix(in srgb, var(--ccb-primary-border) 74%, #fff 26%);
	font-size: clamp(2rem, 4.6vw, 3.5rem);
	line-height: 1;
}

.ccb-review-star {
	display: grid;
	place-items: center;
	min-width: 0;
}

.ccb-review-star > span {
	--ccb-star-fill: 100%;
	position: relative;
	display: block;
	width: 1em;
	height: 1em;
}

.ccb-review-star > span::before,
.ccb-review-star > span::after {
	content: "★";
	position: absolute;
	inset: 0;
	white-space: nowrap;
}

.ccb-review-star > span::before {
	color: color-mix(in srgb, var(--ccb-primary-border) 74%, #fff 26%);
}

.ccb-review-star > span::after {
	width: var(--ccb-star-fill);
	color: #f5a524;
	overflow: hidden;
}

.ccb-review-card blockquote {
	margin: 0;
	color: var(--ccb-heading);
	font-weight: 720;
	line-height: 1.5;
}

.ccb-review-card figcaption {
	display: grid;
	gap: 2px;
	color: var(--ccb-muted);
}

.ccb-review-card figcaption strong {
	color: var(--ccb-heading);
}

.ccb-faq {
	display: grid;
	gap: 14px;
	width: min(100%, 880px);
	margin-inline: auto;
}

.ccb-faq article {
	padding: 22px 24px;
}

.ccb-faq-accordion {
	display: grid;
	gap: 12px;
	width: min(100%, 920px);
	margin-inline: auto;
}

.ccb-faq-accordion__item {
	position: relative;
	overflow: hidden;
	border: 1px solid color-mix(in srgb, var(--ccb-primary-border) 70%, #fff 30%);
	border-radius: var(--ccb-radius);
	background:
		linear-gradient(180deg, rgba(255,255,255,.98), color-mix(in srgb, var(--ccb-surface-alt) 64%, #fff 36%));
	box-shadow: 0 14px 38px rgba(15,31,55,.08);
	transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.ccb-faq-accordion__item.is-open {
	border-color: color-mix(in srgb, var(--ccb-primary-border) 86%, var(--ccb-primary) 14%);
	background:
		linear-gradient(145deg, #fff, color-mix(in srgb, var(--ccb-primary-soft) 50%, #fff 50%));
	box-shadow: var(--ccb-shadow);
}

.ccb-faq-accordion__item h3 {
	margin: 0;
	font-size: 1.05rem;
	line-height: 1.25;
}

.ccb-faq-accordion__button {
	appearance: none;
	-webkit-tap-highlight-color: transparent;
	display: grid;
	grid-template-columns: minmax(0, 1fr) 42px;
	gap: 18px;
	align-items: center;
	width: 100%;
	min-height: 68px;
	padding: 18px 20px;
	border: 0;
	background: transparent;
	box-shadow: none;
	color: var(--ccb-heading);
	font: inherit;
	font-weight: 850;
	line-height: 1.25;
	text-decoration: none;
	text-align: left;
	cursor: pointer;
}

.ccb-faq-accordion__button:hover,
.ccb-faq-accordion__button:active,
.ccb-faq-accordion__button:focus {
	border: 0;
	background: transparent;
	box-shadow: none;
	color: var(--ccb-heading);
	text-decoration: none;
}

.ccb-faq-accordion__button:focus:not(:focus-visible) {
	outline: 0;
}

.ccb-faq-accordion__button:focus-visible {
	outline: 3px solid color-mix(in srgb, var(--ccb-primary) 42%, transparent);
	outline-offset: -3px;
}

.ccb-faq-accordion__button span {
	border: 0;
	box-shadow: none;
	text-decoration: none;
}

.ccb-faq-accordion__icon {
	position: relative;
	display: grid;
	place-items: center;
	width: 42px;
	height: 42px;
	border-radius: var(--ccb-radius-sm);
	background: var(--ccb-gradient-primary);
	box-shadow: 0 10px 24px color-mix(in srgb, var(--ccb-primary) 22%, transparent);
}

.ccb-faq-accordion__icon::before,
.ccb-faq-accordion__icon::after {
	content: "";
	position: absolute;
	width: 16px;
	height: 2px;
	border-radius: 2px;
	background: #fff;
	transition: transform .18s ease, opacity .18s ease;
}

.ccb-faq-accordion__icon::after {
	transform: rotate(90deg);
}

.ccb-faq-accordion__item.is-open .ccb-faq-accordion__icon::after {
	opacity: 0;
	transform: rotate(0deg);
}

.ccb-faq-accordion__panel {
	padding: 0 20px 20px;
}

.ccb-faq-accordion__panel p {
	max-width: 760px;
	margin: 0;
	color: var(--ccb-muted);
}

.ccb-toc {
	position: relative;
	top: auto;
	z-index: 1;
	display: grid;
	grid-template-columns: minmax(160px, .32fr) minmax(0, 1fr);
	align-items: start;
	gap: clamp(20px, 3vw, 36px);
	overflow: visible;
	min-height: 0;
	padding: clamp(22px, 3vw, 36px);
	border: 1px solid color-mix(in srgb, var(--ccb-primary-border) 72%, #fff 28%);
	border-radius: var(--ccb-radius);
	background:
		linear-gradient(135deg, rgba(255,255,255,.96), color-mix(in srgb, var(--ccb-primary-soft) 62%, #fff 38%));
	box-shadow: var(--ccb-shadow);
	backdrop-filter: blur(14px);
}

.ccb-toc strong {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	max-width: 100%;
	color: var(--ccb-heading);
	font-size: .9rem;
	font-weight: 850;
	line-height: 1.15;
	text-transform: uppercase;
	letter-spacing: .02em;
	overflow-wrap: anywhere;
}

.ccb-toc strong::before {
	content: "";
	display: block;
	width: 34px;
	height: 3px;
	border-radius: 999px;
	background: var(--ccb-gradient-primary);
}

.ccb-toc__links {
	list-style: none;
	counter-reset: ccb-toc;
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 6px;
	width: 100%;
	min-width: 0;
	margin: 0;
	padding: 0;
}

.ccb-toc__item {
	min-width: 0;
}

.ccb-toc__item--level-1 {
	counter-increment: ccb-toc;
}

.ccb-toc__item--level-2 {
	padding-left: clamp(18px, 3vw, 32px);
}

.ccb-toc__item--level-3 {
	padding-left: clamp(34px, 5vw, 56px);
}

.ccb-author-bio__links a,
.ccb-team-card__link {
	display: inline-flex;
	align-items: center;
	min-height: 34px;
	padding: 8px 14px;
	border: 1px solid color-mix(in srgb, var(--ccb-primary-border) 70%, #fff 30%);
	border-radius: 999px;
	background: #fff;
	color: var(--ccb-primary-text);
	font-size: .84rem;
	font-weight: 800;
	line-height: 1.15;
	text-decoration: none;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.ccb-toc a {
	display: grid;
	grid-template-columns: 2.25rem minmax(0, 1fr);
	align-items: start;
	gap: 10px;
	width: 100%;
	min-height: 44px;
	padding: 10px 12px;
	border: 1px solid transparent;
	border-radius: 8px;
	background: transparent;
	color: var(--ccb-primary-text);
	font-size: .94rem;
	font-weight: 800;
	line-height: 1.35;
	text-decoration: none;
	white-space: normal;
	overflow: visible;
}

.ccb-toc a::before {
	content: counter(ccb-toc, decimal-leading-zero);
	color: var(--ccb-primary);
	font-size: .76rem;
	font-weight: 900;
	line-height: 1.7;
	text-align: right;
}

.ccb-toc__item--level-2 a::before,
.ccb-toc__item--level-3 a::before {
	content: "";
	width: 18px;
	height: 2px;
	margin-top: .72em;
	border-radius: 999px;
	background: color-mix(in srgb, var(--ccb-primary) 58%, #fff 42%);
	justify-self: end;
}

.ccb-toc__item--level-3 a::before {
	width: 8px;
	height: 8px;
	margin-top: .42em;
}

.ccb-toc a span {
	min-width: 0;
	overflow-wrap: anywhere;
}

.ccb-toc a:hover,
.ccb-toc a:focus-visible {
	border-color: color-mix(in srgb, var(--ccb-primary-border) 72%, #fff 28%);
	background: #fff;
	box-shadow: 0 10px 24px rgba(15,23,42,.08);
	outline: none;
}

.ccb-verdict,
.ccb-newsletter,
.ccb-checklist-panel,
.ccb-author-bio {
	display: grid;
	gap: clamp(22px, 4vw, 42px);
	padding: clamp(24px, 4vw, 44px);
	border: 1px solid color-mix(in srgb, var(--ccb-primary-border) 74%, #fff 26%);
	border-radius: var(--ccb-radius);
	background:
		linear-gradient(145deg, rgba(255,255,255,.96), color-mix(in srgb, var(--ccb-primary-soft) 52%, #fff 48%));
	box-shadow: var(--ccb-shadow);
}

.ccb-team-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(16px, 2.5vw, 26px);
}

.ccb-team-grid--count-2,
.ccb-team-grid--count-4 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ccb-team-card {
	display: grid;
	gap: 18px;
	min-width: 0;
	padding: clamp(22px, 3vw, 30px);
	border: 1px solid color-mix(in srgb, var(--ccb-primary-border) 72%, #fff 28%);
	border-radius: var(--ccb-radius);
	background: linear-gradient(145deg, rgba(255,255,255,.98), color-mix(in srgb, var(--ccb-primary-soft) 40%, #fff 60%));
	box-shadow: var(--ccb-shadow-soft);
}

.ccb-team-card__avatar {
	display: grid;
	place-items: center;
	width: 96px;
	height: 96px;
	overflow: hidden;
	border-radius: 50%;
	background: var(--ccb-gradient-primary);
	color: #fff;
	font-size: 2rem;
	font-weight: 900;
	box-shadow: var(--ccb-shadow-soft);
}

.ccb-team-card__image {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.ccb-team-card h3 {
	margin: 0;
}

.ccb-team-card__role {
	margin: 4px 0 10px;
	color: var(--ccb-primary-text);
	font-weight: 850;
}

.ccb-team-card__copy p:not(.ccb-team-card__role) {
	margin-bottom: 14px;
}

.ccb-verdict {
	grid-template-columns: minmax(0, 1fr) minmax(380px, .5fr);
	align-items: stretch;
}

.ccb-verdict__main {
	min-width: 0;
}

.ccb-verdict__score {
	box-sizing: border-box;
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	align-content: center;
	justify-items: center;
	min-width: 0;
	min-height: 240px;
	padding: 30px 16px;
	border-radius: var(--ccb-radius);
	background:
		linear-gradient(145deg, color-mix(in srgb, var(--ccb-primary-dark) 92%, #000 8%), color-mix(in srgb, var(--ccb-primary) 74%, var(--ccb-accent) 26%));
	color: #fff;
	text-align: center;
}

.ccb-verdict__score span {
	max-width: 100%;
	font-size: .72rem;
	font-weight: 850;
	text-transform: uppercase;
	line-height: 1.15;
	overflow-wrap: normal;
}

.ccb-verdict__score strong {
	display: block;
	width: 100%;
	max-width: 100%;
	margin-top: 8px;
	font-size: clamp(1.85rem, 2.75vw, 2.8rem);
	line-height: 1.05;
	text-wrap: balance;
	overflow-wrap: break-word;
	word-break: normal;
}

.ccb-verdict__fit {
	grid-column: 1 / -1;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
}

.ccb-verdict__fit article,
.ccb-tabs__panel,
.ccb-resource-card,
.ccb-related-card {
	position: relative;
	padding: 22px;
	border: 1px solid color-mix(in srgb, var(--ccb-primary-border) 70%, #fff 30%);
	border-radius: var(--ccb-radius);
	background: rgba(255,255,255,.82);
	box-shadow: 0 14px 38px rgba(15,31,55,.08);
}

.ccb-resource-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.ccb-related-posts {
	display: flex !important;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: center;
	gap: 18px;
	grid-template-columns: none !important;
}

.ccb-resource-grid--count-2 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ccb-resource-grid--count-3 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ccb-resource-grid--count-4 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ccb-resource-grid--count-5 {
	grid-template-columns: repeat(5, minmax(0, 1fr));
}

.ccb-resource-grid--count-6 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ccb-resource-card,
.ccb-related-card {
	display: grid;
	gap: 16px;
	color: inherit;
	text-decoration: none;
}

.ccb-resource-card {
	grid-template-columns: 58px minmax(0, 1fr);
	align-items: center;
	column-gap: 16px;
	row-gap: 0;
	justify-items: start;
	text-align: left;
}

.ccb-resource-card > span {
	display: grid;
	place-items: center;
	width: 54px;
	height: 54px;
	border-radius: var(--ccb-radius-sm);
	background: var(--ccb-gradient-primary);
	color: #fff;
}

.ccb-resource-card strong,
.ccb-resource-card__link,
.ccb-related-card span {
	color: var(--ccb-primary-text);
	font-size: .82rem;
	font-weight: 850;
	text-transform: uppercase;
}

.ccb-resource-card__link,
.ccb-related-card__link {
	text-decoration: none;
}

.ccb-resource-card__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: max-content !important;
	min-width: 0;
	min-height: 34px;
	margin-top: 2px;
	padding: 9px 14px;
	border: 1px solid color-mix(in srgb, var(--ccb-primary) 28%, #fff 72%);
	border-radius: 999px;
	background: color-mix(in srgb, var(--ccb-primary-soft) 72%, #fff 28%);
	box-shadow: 0 10px 22px rgba(15,31,55,.08);
	color: color-mix(in srgb, var(--ccb-primary-dark) 82%, #111 18%);
	line-height: 1;
	white-space: nowrap;
}

.ccb-resource-card__link:hover,
.ccb-related-card__link:hover {
	text-decoration: none;
}

.ccb-related-card__link {
	color: inherit;
}

.ccb-tabs {
	display: grid;
	gap: 16px;
	width: min(100%, 960px);
	margin-inline: auto;
}

.ccb-tabs__list {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	justify-content: center;
	padding: 8px;
	border: 1px solid color-mix(in srgb, var(--ccb-primary-border) 70%, #fff 30%);
	border-radius: var(--ccb-radius);
	background: rgba(255,255,255,.72);
	box-shadow: var(--ccb-shadow);
}

.ccb-tabs__tab {
	appearance: none;
	min-height: 42px;
	padding: 10px 14px;
	border: 0;
	border-radius: 999px;
	background: transparent;
	color: var(--ccb-muted);
	font-weight: 850;
	cursor: pointer;
}

.ccb-tabs__tab.is-active,
.ccb-tabs__tab:focus-visible {
	background: var(--ccb-gradient-primary);
	color: #fff;
	outline: 0;
	box-shadow: 0 12px 28px color-mix(in srgb, var(--ccb-primary) 22%, transparent);
}

.ccb-author-bio {
	grid-template-columns: 112px minmax(0, 1fr);
	align-items: center;
}

.ccb-author-bio__avatar {
	display: grid;
	place-items: center;
	width: 112px;
	height: 112px;
	overflow: hidden;
	border-radius: 50%;
	background: var(--ccb-gradient-primary);
	color: #fff;
	font-size: 2.3rem;
	font-weight: 900;
	box-shadow: var(--ccb-shadow);
}

.ccb-author-bio__avatar img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.ccb-author-bio__role {
	margin-bottom: 10px;
	color: var(--ccb-primary-text);
	font-weight: 850;
}

.ccb-author-bio__links {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 16px;
}

.ccb-newsletter {
	grid-template-columns: minmax(0, 1fr) minmax(300px, .7fr);
	align-items: center;
	background:
		linear-gradient(135deg, color-mix(in srgb, var(--ccb-primary-dark) 94%, #000 6%), color-mix(in srgb, var(--ccb-primary) 78%, var(--ccb-accent) 22%));
}

.ccb-newsletter .ccb-section-title,
.ccb-newsletter h2,
.ccb-newsletter p,
.ccb-newsletter .ccb-eyebrow {
	color: #fff;
}

.ccb-newsletter__form {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 10px;
	padding: 8px;
	border: 1px solid rgba(255,255,255,.24);
	border-radius: 999px;
	background: rgba(255,255,255,.16);
	box-shadow: inset 0 1px 0 rgba(255,255,255,.16);
}

.ccb-newsletter__form label span {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
}

.ccb-newsletter__form input {
	width: 100%;
	min-height: 48px;
	padding: 0 16px;
	border: 0;
	border-radius: 999px;
	background: #fff;
	color: var(--ccb-heading);
}

.ccb-newsletter__form button {
	min-height: 48px;
	padding: 0 18px;
	border: 0;
	border-radius: 999px;
	background: #fff;
	color: var(--ccb-primary-text);
	font-weight: 850;
	cursor: pointer;
}

.ccb-newsletter__form button:disabled {
	cursor: wait;
	opacity: .68;
}

.ccb-newsletter__consent,
.ccb-newsletter__status {
	grid-column: 1 / -1;
	margin: 0;
}

.ccb-newsletter__consent {
	padding: 0 12px 6px;
	color: rgba(255,255,255,.78);
	font-size: .82rem;
	line-height: 1.4;
}

.ccb-newsletter__status {
	padding: 8px 12px;
	border-radius: 999px;
	font-size: .9rem;
	font-weight: 750;
	line-height: 1.35;
}

.ccb-newsletter__status.is-success {
	background: rgba(255,255,255,.92);
	color: color-mix(in srgb, var(--ccb-success) 70%, #062a16 30%);
}

.ccb-newsletter__status.is-error {
	background: rgba(255,255,255,.92);
	color: color-mix(in srgb, var(--ccb-danger) 74%, #32080a 26%);
}

.ccb-newsletter__status.is-busy {
	background: rgba(255,255,255,.84);
	color: var(--ccb-primary-text);
}

.ccb-lead-form {
	display: grid;
	grid-template-columns: minmax(0, .9fr) minmax(320px, 1fr);
	gap: clamp(22px, 4vw, 44px);
	align-items: start;
	padding: clamp(24px, 4vw, 42px);
	border: 1px solid color-mix(in srgb, var(--ccb-primary-border) 72%, #fff 28%);
	border-radius: var(--ccb-radius);
	background: linear-gradient(180deg, var(--ccb-surface), var(--ccb-surface-alt));
	box-shadow: var(--ccb-shadow);
}

.ccb-lead-form__copy {
	min-width: 0;
}

.ccb-lead-form__form {
	display: grid;
	gap: 16px;
	min-width: 0;
}

.ccb-lead-form__field {
	display: grid;
	gap: 7px;
	min-width: 0;
}

.ccb-lead-form__field > label,
.ccb-lead-form__check {
	color: var(--ccb-heading);
	font-size: .94rem;
	font-weight: 850;
	line-height: 1.25;
}

.ccb-lead-form__required {
	color: var(--ccb-danger, #dc2626);
}

.ccb-lead-form input,
.ccb-lead-form textarea,
.ccb-lead-form select {
	width: 100%;
	min-height: 46px;
	padding: 11px 13px;
	border: 1px solid color-mix(in srgb, var(--ccb-primary-border) 75%, #fff 25%);
	border-radius: 8px;
	background: #fff;
	color: var(--ccb-heading);
	font: inherit;
	line-height: 1.35;
	box-shadow: inset 0 1px 1px rgba(12,24,42,.04);
}

.ccb-lead-form textarea {
	min-height: 132px;
	resize: vertical;
}

.ccb-lead-form input:focus,
.ccb-lead-form textarea:focus,
.ccb-lead-form select:focus {
	border-color: var(--ccb-primary);
	outline: 3px solid color-mix(in srgb, var(--ccb-primary) 18%, transparent);
	outline-offset: 1px;
}

.ccb-lead-form__check {
	display: grid;
	grid-template-columns: 20px minmax(0, 1fr);
	gap: 10px;
	align-items: start;
}

.ccb-lead-form__check input {
	width: 18px;
	min-height: 18px;
	height: 18px;
	margin-top: 1px;
	padding: 0;
}

.ccb-lead-form small {
	color: var(--ccb-muted);
	font-size: .86rem;
	line-height: 1.35;
}

.ccb-lead-form__hp {
	position: absolute;
	left: -9999px;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

.ccb-lead-form__actions {
	display: flex;
	justify-content: flex-start;
}

.ccb-lead-form__form button {
	min-height: 48px;
	padding: 0 20px;
	border: 0;
	border-radius: 999px;
	background: var(--ccb-primary);
	color: #fff;
	font-weight: 850;
	cursor: pointer;
	box-shadow: var(--ccb-shadow-soft);
}

.ccb-lead-form__form button:disabled {
	cursor: wait;
	opacity: .68;
}

.ccb-lead-form__status {
	margin: 0;
	padding: 10px 12px;
	border-radius: 8px;
	font-size: .94rem;
	font-weight: 700;
	line-height: 1.35;
}

.ccb-lead-form__status.is-success {
	background: color-mix(in srgb, var(--ccb-success) 12%, #fff 88%);
	color: color-mix(in srgb, var(--ccb-success) 72%, #062a16 28%);
}

.ccb-lead-form__status.is-error {
	background: color-mix(in srgb, var(--ccb-danger) 10%, #fff 90%);
	color: color-mix(in srgb, var(--ccb-danger) 72%, #32080a 28%);
}

.ccb-lead-form__status.is-busy {
	background: color-mix(in srgb, var(--ccb-primary-soft) 60%, #fff 40%);
	color: var(--ccb-primary-text);
}

.ccb-lead-form__empty {
	margin: 0;
	padding: 14px;
	border: 1px dashed color-mix(in srgb, var(--ccb-primary-border) 80%, #fff 20%);
	border-radius: 8px;
	color: var(--ccb-muted);
}

.ccb-video-frame {
	overflow: hidden;
	border: 1px solid color-mix(in srgb, var(--ccb-primary-border) 70%, #fff 30%);
	border-radius: var(--ccb-radius);
	background: color-mix(in srgb, var(--ccb-heading) 94%, #000 6%);
	box-shadow: var(--ccb-shadow-strong);
}

.ccb-video-frame iframe {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 9;
	height: auto;
}

.ccb-video-frame__fallback {
	display: grid;
	place-items: center;
	min-height: 320px;
	color: #fff;
	font-weight: 850;
	text-decoration: none;
}

.ccb-video-poster {
	position: relative;
	display: grid;
	place-items: center;
	overflow: hidden;
	width: 100%;
	aspect-ratio: 16 / 9;
	min-height: 280px;
	color: #fff;
	text-decoration: none;
	isolation: isolate;
}

.ccb-video-poster::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	background:
		linear-gradient(180deg, rgba(10, 18, 40, .06), rgba(10, 18, 40, .46)),
		radial-gradient(circle at center, rgba(255, 255, 255, .14), rgba(10, 18, 40, .28) 58%, rgba(10, 18, 40, .56));
}

.ccb-video-poster__image {
	position: absolute;
	inset: 0;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	object-fit: cover;
	border-radius: 0;
	box-shadow: none;
}

.ccb-video-poster__play {
	position: relative;
	z-index: 2;
	display: grid;
	place-items: center;
	width: 76px;
	height: 76px;
	border: 1px solid rgba(255,255,255,.62);
	border-radius: 999px;
	background: rgba(255,255,255,.24);
	box-shadow: 0 22px 55px rgba(0,0,0,.34);
	backdrop-filter: blur(14px);
}

.ccb-video-poster__play::before {
	content: "";
	width: 0;
	height: 0;
	margin-left: 6px;
	border-top: 14px solid transparent;
	border-bottom: 14px solid transparent;
	border-left: 21px solid currentColor;
	filter: drop-shadow(0 2px 8px rgba(0,0,0,.35));
}

.ccb-video-poster__label {
	position: absolute;
	left: clamp(18px, 4vw, 42px);
	bottom: clamp(18px, 4vw, 36px);
	z-index: 2;
	max-width: min(560px, calc(100% - 36px));
	padding: 10px 16px;
	border: 1px solid rgba(255,255,255,.48);
	border-radius: 999px;
	background: rgba(255,255,255,.18);
	box-shadow: 0 16px 34px rgba(0,0,0,.22);
	backdrop-filter: blur(12px);
	font-size: .86rem;
	font-weight: 900;
	letter-spacing: .02em;
	text-transform: uppercase;
	text-shadow: 0 1px 12px rgba(0,0,0,.42);
}

.ccb-logo-cloud {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 1px;
	overflow: hidden;
	border: 1px solid color-mix(in srgb, var(--ccb-primary-border) 70%, #fff 30%);
	border-radius: var(--ccb-radius);
	background: color-mix(in srgb, var(--ccb-primary-border) 72%, #fff 28%);
	box-shadow: var(--ccb-shadow);
}

.ccb-logo-cloud a,
.ccb-logo-cloud div {
	display: grid;
	place-items: center;
	min-height: 96px;
	padding: 18px;
	background: rgba(255,255,255,.9);
	color: var(--ccb-heading);
	text-align: center;
	text-decoration: none;
}

.ccb-logo-cloud img {
	display: block;
	max-width: 150px;
	max-height: 46px;
	object-fit: contain;
}

.ccb-logo-cloud .is-logo-image-missing img {
	display: none;
}

.ccb-logo-cloud .is-logo-image-missing::after {
	content: attr(data-logo-label);
	color: var(--ccb-heading);
	font-weight: 900;
	line-height: 1.1;
}

.ccb-checklist-panel {
	grid-template-columns: minmax(0, 1fr);
	align-items: start;
}

.ccb-checklist-panel .ccb-section-head {
	width: min(100%, 840px);
	margin: 0 auto 12px;
	text-align: center;
}

.ccb-checklist-panel .ccb-section-head .ccb-section-title {
	margin-inline: auto;
}

.ccb-checklist {
	display: grid;
	width: min(100%, 880px);
	margin-inline: auto;
	gap: 12px;
}

.ccb-checklist article {
	display: grid;
	grid-template-columns: 46px minmax(0, 1fr);
	gap: 14px;
	align-items: center;
	justify-items: start;
	text-align: left;
	padding: 16px;
	border: 1px solid color-mix(in srgb, var(--ccb-primary-border) 60%, #fff 40%);
	border-radius: var(--ccb-radius);
	background: rgba(255,255,255,.78);
}

.ccb-checklist article > span {
	display: grid;
	place-items: center;
	width: 46px;
	height: 46px;
	border-radius: 50%;
	background: var(--ccb-gradient-primary);
	color: #fff;
}

.ccb-checklist p {
	margin-bottom: 0;
}

.ccb-related-card {
	overflow: hidden;
	padding: 0;
	background: #fff;
	box-sizing: border-box;
	flex: 1 1 min(100%, 360px);
	min-width: 0;
	max-width: calc((100% - 36px) / 3);
}

.ccb-related-posts--count-1 .ccb-related-card {
	flex: 0 1 min(100%, 560px);
	max-width: 560px;
}

.ccb-related-posts--count-2 .ccb-related-card {
	max-width: calc((100% - 18px) / 2);
}

@media (max-width: 900px) {
	.ccb-related-card {
		max-width: calc((100% - 18px) / 2);
	}
}

@media (max-width: 640px) {
	.ccb-related-posts {
		justify-content: stretch;
	}

	.ccb-related-card,
	.ccb-related-posts--count-1 .ccb-related-card,
	.ccb-related-posts--count-2 .ccb-related-card {
		flex-basis: 100%;
		max-width: 100%;
	}
}

.ccb-related-card > div:last-child {
	padding: 0 20px 20px;
	box-sizing: border-box;
	min-width: 0;
	max-width: 100%;
}

.ccb-related-card__media {
	display: block;
	aspect-ratio: 16 / 10;
	box-sizing: border-box;
	min-width: 0;
	width: 100%;
	max-width: 100%;
	background:
		linear-gradient(135deg, color-mix(in srgb, var(--ccb-primary-soft) 72%, #fff 28%), color-mix(in srgb, var(--ccb-accent-soft) 62%, #fff 38%));
}

.ccb-related-card__media img {
	display: block;
	width: 100%;
	max-width: 100%;
	height: 100%;
	object-fit: cover;
}

.ccb-related-card__media span {
	display: block;
	width: 100%;
	height: 100%;
	background:
		linear-gradient(135deg, color-mix(in srgb, var(--ccb-primary) 26%, transparent), transparent 52%),
		repeating-linear-gradient(135deg, rgba(255,255,255,.38) 0 1px, transparent 1px 18px);
}

.ccb-product-cta {
	background:
		linear-gradient(135deg, color-mix(in srgb, var(--ccb-primary-dark) 94%, #000 6%), color-mix(in srgb, var(--ccb-primary) 80%, var(--ccb-accent) 20%));
	color: #fff;
}

.ccb-product-cta .ccb-section-title,
.ccb-product-cta h2,
.ccb-product-cta p,
.ccb-product-cta .ccb-eyebrow {
	color: #fff;
}

.ccb-product-cta .ccb-button {
	background: #fff;
	color: var(--ccb-primary-text);
}

.ccb-image-cta {
	aspect-ratio: 16 / 11;
}

.ccb-image-text {
	display: grid;
	grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
	align-items: center;
	gap: clamp(26px, 5vw, 70px);
}

.ccb-image-text--image-right {
	grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
}

.ccb-image-text__media {
	overflow: hidden;
	padding: clamp(6px, 1vw, 10px);
	border: 1px solid color-mix(in srgb, var(--ccb-primary-border) 76%, #fff 24%);
	border-radius: var(--ccb-radius);
	background: color-mix(in srgb, var(--ccb-surface) 94%, #fff 6%);
	box-shadow: 0 16px 42px rgba(15, 23, 42, .1);
}

.ccb-image-text__image {
	aspect-ratio: 4 / 3;
	border-radius: calc(var(--ccb-radius) - 2px);
	box-shadow: none;
}

.ccb-image-text__copy {
	max-width: 64ch;
}

.ccb-image-text__copy .ccb-section-title {
	margin-bottom: clamp(14px, 2vw, 20px);
}

.ccb-image-text__copy p {
	font-size: clamp(1.02rem, 1.15vw, 1.15rem);
	line-height: 1.7;
}

.ccb-image-text--image-right .ccb-image-text__media {
	order: 2;
}

.ccb-image-text--image-right .ccb-image-text__copy {
	order: 1;
}

.ccb-image-full-frame {
	overflow: hidden;
	padding: clamp(6px, 1vw, 10px);
	border: 1px solid color-mix(in srgb, var(--ccb-primary-border) 78%, #fff 22%);
	border-radius: var(--ccb-radius);
	background: color-mix(in srgb, var(--ccb-surface) 92%, #fff 8%);
	box-shadow: 0 18px 44px rgba(15, 23, 42, .11);
}

.ccb-image-screen {
	border-radius: calc(var(--ccb-radius) - 2px);
	box-shadow: none;
	aspect-ratio: 16 / 9;
}

.ccb-image-pair {
	position: relative;
	display: grid;
	grid-template-columns: repeat(11, minmax(0, 1fr));
	align-items: center;
	gap: clamp(14px, 3vw, 36px);
	padding: clamp(8px, 2vw, 22px) clamp(10px, 1.6vw, 18px);
}

.ccb-image-pair__item {
	position: relative;
	margin: 0;
	padding: clamp(5px, .7vw, 8px);
	border: 1px solid color-mix(in srgb, var(--ccb-primary-border) 76%, #fff 24%);
	border-radius: var(--ccb-radius);
	background: color-mix(in srgb, var(--ccb-surface) 95%, #fff 5%);
	box-shadow: var(--ccb-shadow);
}

.ccb-image-pair__item--1 {
	grid-column: 1 / span 6;
	grid-row: 1;
	transform: rotate(-1.6deg);
	z-index: 1;
}

.ccb-image-pair__item--2 {
	grid-column: 6 / span 6;
	grid-row: 1;
	margin-top: clamp(36px, 5vw, 66px);
	transform: rotate(1.4deg);
	z-index: 2;
}

.ccb-image-pair__media {
	overflow: hidden;
	aspect-ratio: 16 / 9;
	border-radius: calc(var(--ccb-radius) - 2px);
}

.ccb-image-pair__image {
	aspect-ratio: 16 / 9;
	height: 100%;
	box-shadow: none;
}

.ccb-image-pair figcaption {
	display: grid;
	gap: 6px;
	padding: clamp(12px, 1.6vw, 18px) clamp(8px, 1.1vw, 12px) 4px;
	color: var(--ccb-body);
}

.ccb-image-pair__item--1 figcaption {
	padding-right: clamp(52px, 7vw, 96px);
}

.ccb-image-pair figcaption span {
	color: var(--ccb-primary-text);
	font-size: .78rem;
	font-weight: 800;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.ccb-image-pair figcaption strong {
	color: var(--ccb-heading);
	font-size: clamp(1.05rem, 1.8vw, 1.35rem);
	line-height: 1.15;
}

.ccb-image-pair figcaption p {
	margin: 0;
	font-size: .96rem;
	line-height: 1.55;
}

.ccb-image-gallery {
	--ccb-gallery-gap: 4px;
	position: relative;
	display: grid;
	gap: var(--ccb-gallery-gap);
	isolation: isolate;
}

.ccb-image-gallery__row {
	display: flex;
	gap: var(--ccb-gallery-gap);
	justify-content: flex-start;
	width: 100%;
}

.ccb-image-gallery__tile {
	position: relative;
	display: block;
	flex: 0 0 var(--ccb-gallery-row-basis);
	min-width: 0;
	aspect-ratio: 1 / 1;
	color: inherit;
	text-decoration: none;
	outline: 0;
}

.ccb-image-gallery__thumb-frame {
	display: block;
	width: 100%;
	height: 100%;
	overflow: hidden;
	background: transparent;
}

.ccb-image-gallery__thumb {
	width: 100%;
	height: 100%;
	min-height: 0;
	aspect-ratio: 1 / 1;
	border-radius: 0;
	box-shadow: none;
	transition: transform .22s ease, filter .22s ease;
}

.ccb-image-gallery__thumb.ccb-image-placeholder {
	min-height: 0;
}

.ccb-image-gallery__thumb.ccb-image-placeholder::before,
.ccb-image-gallery__thumb.ccb-image-placeholder::after {
	display: none;
}

.ccb-image-gallery__tile:hover .ccb-image-gallery__thumb,
.ccb-image-gallery__tile:focus-visible .ccb-image-gallery__thumb {
	transform: scale(1.035);
	filter: saturate(1.05);
}

.ccb-image-gallery__hover {
	display: none;
}

@media (hover: hover) and (pointer: fine) {
	.ccb-image-gallery__hover {
		position: absolute;
		z-index: 30;
		left: 50%;
		top: 50%;
		display: block;
		width: var(--ccb-gallery-hover-width, min(520px, 44vw));
		height: var(--ccb-gallery-hover-height, auto);
		max-width: var(--ccb-gallery-hover-max-width, calc(100vw - 48px));
		max-height: var(--ccb-gallery-hover-max-height, min(82vh, calc(100vh - 48px)));
		aspect-ratio: var(--ccb-gallery-aspect, auto);
		opacity: 0;
		pointer-events: none;
		transform: translate(-50%, -50%) scale(.92);
		transform-origin: center;
		transition: opacity .16s ease, transform .16s ease;
		filter: drop-shadow(0 22px 44px rgba(15, 23, 42, .28));
	}

	.ccb-image-gallery__hover img {
		display: block;
		width: 100%;
		height: 100%;
		object-fit: cover;
		background: transparent;
	}

	.ccb-image-gallery__tile:hover,
	.ccb-image-gallery__tile:focus-visible {
		z-index: 35;
	}

	.ccb-image-gallery__tile:hover .ccb-image-gallery__hover,
	.ccb-image-gallery__tile:focus-visible .ccb-image-gallery__hover {
		opacity: 1;
		transform: translate(-50%, -50%) scale(1);
	}
}

.ccb-image-lightbox {
	position: fixed;
	z-index: 100000;
	inset: 0;
	display: grid;
	grid-template-rows: auto minmax(0, 1fr) auto;
	gap: 14px;
	padding: clamp(18px, 3vw, 34px);
	background: rgba(3, 7, 18, .88);
	color: #fff;
}

.ccb-image-lightbox[hidden] {
	display: none;
}

.ccb-image-lightbox__close {
	justify-self: end;
	display: grid;
	place-items: center;
	width: 42px;
	height: 42px;
	border: 1px solid rgba(255,255,255,.25);
	border-radius: 999px;
	background: rgba(255,255,255,.1);
	color: #fff;
	cursor: pointer;
	font: 800 1rem/1 var(--ccb-font);
}

.ccb-image-lightbox__image {
	align-self: center;
	justify-self: center;
	display: block;
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
	box-shadow: 0 24px 70px rgba(0, 0, 0, .45);
}

.ccb-image-lightbox__caption {
	justify-self: center;
	max-width: min(72ch, 92vw);
	margin: 0;
	color: rgba(255,255,255,.78);
	text-align: center;
}

.ccb-code-embed {
	box-sizing: border-box;
	max-width: 100%;
	min-width: 0;
}

.ccb-code-embed__content {
	min-width: 0;
	max-width: 100%;
	overflow: visible;
}

.ccb-code-embed__content > :first-child {
	margin-top: 0;
}

.ccb-code-embed__content > :last-child {
	margin-bottom: 0;
}

.ccb-code-embed--raw {
	overflow-x: auto;
	padding: clamp(18px, 3vw, 28px);
	border: 1px solid color-mix(in srgb, var(--ccb-primary-border) 72%, #fff 28%);
	border-radius: var(--ccb-radius);
	background: color-mix(in srgb, var(--ccb-surface) 96%, #fff 4%);
	box-shadow: var(--ccb-shadow);
}

.ccb-code-embed--raw .ccb-code-embed__content {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.ccb-code-embed__raw {
	margin: 0;
	white-space: pre;
	tab-size: 4;
	font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
	font-size: .9rem;
	line-height: 1.5;
	overflow-x: auto;
}

.ccb-code-embed--placeholder {
	padding: clamp(18px, 3vw, 28px);
	border: 1px dashed color-mix(in srgb, var(--ccb-primary-border) 72%, #fff 28%);
	border-radius: var(--ccb-radius);
	border-style: dashed;
	background: color-mix(in srgb, var(--ccb-surface) 90%, var(--ccb-primary) 10%);
}

.ccb-code-embed__placeholder {
	display: grid;
	gap: 8px;
	justify-items: start;
	color: var(--ccb-muted);
}

.ccb-code-embed__placeholder strong {
	color: var(--ccb-heading);
	font-size: .95rem;
	text-transform: uppercase;
	letter-spacing: .08em;
}

.ccb-code-embed__placeholder code {
	max-width: 100%;
	padding: 6px 8px;
	border: 1px solid color-mix(in srgb, var(--ccb-primary-border) 70%, #fff 30%);
	border-radius: var(--ccb-radius-sm);
	background: color-mix(in srgb, var(--ccb-surface) 72%, #fff 28%);
	color: var(--ccb-text);
	font-size: .9rem;
	overflow-x: auto;
}

.ccb-map-location {
	display: grid;
	grid-template-columns: minmax(0, .86fr) minmax(320px, 1.14fr);
	gap: clamp(22px, 4vw, 44px);
	align-items: center;
	padding: clamp(22px, 4vw, 40px);
	border: 1px solid color-mix(in srgb, var(--ccb-primary-border) 70%, #fff 30%);
	border-radius: var(--ccb-radius);
	background:
		linear-gradient(135deg, color-mix(in srgb, var(--ccb-surface) 94%, #fff 6%), color-mix(in srgb, var(--ccb-primary-soft) 36%, #fff 64%));
	box-shadow: var(--ccb-shadow);
	box-sizing: border-box;
	min-width: 0;
}

.ccb-map-location__copy,
.ccb-map-location__visual {
	min-width: 0;
}

.ccb-map-location__copy .ccb-section-title {
	margin-inline: 0;
}

.ccb-map-details {
	display: grid;
	gap: 10px;
	margin-top: 18px;
}

.ccb-map-detail {
	position: relative;
	box-sizing: border-box;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	margin: 0;
	padding-left: 24px;
	color: var(--ccb-text);
	font-weight: 650;
	line-height: 1.45;
	overflow-wrap: anywhere;
	word-break: break-word;
}

.ccb-map-detail :is(strong, span, a) {
	overflow-wrap: anywhere;
	word-break: break-word;
}

.ccb-map-detail::before {
	content: "";
	position: absolute;
	top: .62em;
	left: 0;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: var(--ccb-primary);
	box-shadow: 0 0 0 5px color-mix(in srgb, var(--ccb-primary-soft) 78%, transparent);
}

.ccb-map-detail--name::before {
	background: var(--ccb-accent);
}

.ccb-map-detail a {
	color: var(--ccb-primary-text);
	text-decoration: none;
}

.ccb-map-detail a:hover,
.ccb-map-detail a:focus {
	text-decoration: underline;
}

.ccb-map-location__visual {
	display: grid;
	gap: 12px;
}

.ccb-map-facade,
.ccb-map-iframe {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 10;
	overflow: hidden;
	border: 0;
	border-radius: calc(var(--ccb-radius) + 6px);
	box-shadow: 0 24px 60px rgba(15,31,55,.18);
	background: color-mix(in srgb, var(--ccb-primary-soft) 70%, #fff 30%);
}

.ccb-map-facade {
	position: relative;
	padding: 0;
	color: #fff;
	cursor: pointer;
	text-decoration: none;
}

button.ccb-map-facade {
	font: inherit;
	text-align: left;
}

.ccb-map-media,
.ccb-map-image,
.ccb-map-art {
	display: block;
	width: 100%;
	height: 100%;
}

.ccb-map-image {
	object-fit: cover;
}

.ccb-map-art {
	position: relative;
	overflow: hidden;
	background:
		linear-gradient(135deg, rgba(255,255,255,.38), transparent 48%),
		linear-gradient(145deg, #dbeafe 0%, #d9f5df 42%, #edf7e6 100%);
}

.ccb-map-art::before {
	content: "";
	position: absolute;
	inset: 0;
	background:
		linear-gradient(90deg, rgba(255,255,255,.4) 1px, transparent 1px),
		linear-gradient(0deg, rgba(255,255,255,.32) 1px, transparent 1px);
	background-size: 46px 46px;
	opacity: .7;
}

.ccb-map-road {
	position: absolute;
	z-index: 2;
	display: block;
	height: 18px;
	border: 1px solid rgba(86, 101, 123, .1);
	border-radius: 999px;
	background: rgba(255,255,255,.78);
	box-shadow: 0 4px 18px rgba(50, 74, 100, .12);
}

.ccb-map-road--one {
	top: 23%;
	left: -8%;
	width: 74%;
	transform: rotate(-18deg);
}

.ccb-map-road--two {
	top: 54%;
	right: -12%;
	width: 88%;
	transform: rotate(14deg);
}

.ccb-map-road--three {
	top: -12%;
	left: 46%;
	width: 20px;
	height: 125%;
	transform: rotate(8deg);
}

.ccb-map-road--four {
	bottom: 15%;
	left: 9%;
	width: 42%;
	transform: rotate(32deg);
}

.ccb-map-block {
	position: absolute;
	z-index: 1;
	display: block;
	border: 1px solid rgba(45, 72, 96, .08);
	border-radius: 14px;
	background: rgba(255,255,255,.48);
	box-shadow: inset 0 1px 0 rgba(255,255,255,.52);
}

.ccb-map-block--one {
	top: 13%;
	left: 12%;
	width: 24%;
	height: 22%;
}

.ccb-map-block--two {
	right: 13%;
	bottom: 15%;
	width: 28%;
	height: 26%;
	background: rgba(255,255,255,.6);
}

.ccb-map-block--three {
	top: 18%;
	right: 16%;
	width: 18%;
	height: 18%;
	background: color-mix(in srgb, var(--ccb-accent-soft) 72%, #fff 28%);
}

.ccb-map-pin {
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 4;
	width: 42px;
	height: 42px;
	margin: -34px 0 0 -21px;
	border: 3px solid #fff;
	border-radius: 50% 50% 50% 0;
	background: linear-gradient(135deg, var(--ccb-danger), var(--ccb-accent));
	box-shadow: 0 16px 30px rgba(15,31,55,.26);
	transform: rotate(-45deg);
}

.ccb-map-pin::after {
	content: "";
	position: absolute;
	top: 11px;
	left: 11px;
	width: 14px;
	height: 14px;
	border-radius: 50%;
	background: #fff;
}

.ccb-map-facade__shade {
	position: absolute;
	inset: 0;
	z-index: 5;
	background:
		linear-gradient(180deg, transparent 45%, rgba(9, 20, 38, .58) 100%),
		linear-gradient(90deg, rgba(9, 20, 38, .18), transparent 55%);
	pointer-events: none;
}

.ccb-map-facade__action {
	position: absolute;
	left: 16px;
	bottom: 16px;
	z-index: 6;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	max-width: calc(100% - 32px);
	padding: 10px 14px;
	border-radius: var(--ccb-radius-sm);
	background: color-mix(in srgb, var(--ccb-primary-dark) 86%, #000 14%);
	color: #fff;
	font-weight: 900;
	line-height: 1.2;
	box-shadow: 0 12px 28px rgba(0,0,0,.22);
}

.ccb-map-facade__action::after {
	content: "";
	width: 8px;
	height: 8px;
	border-top: 2px solid currentColor;
	border-right: 2px solid currentColor;
	transform: rotate(45deg);
}

.ccb-map-actions {
	margin: 0;
	text-align: right;
}

.ccb-map-open {
	color: var(--ccb-primary-text);
	font-weight: 900;
	text-decoration: none;
}

.ccb-map-open:hover,
.ccb-map-open:focus {
	text-decoration: underline;
}

@media (max-width: 980px) {
	.ccb-hero-split__grid,
	.ccb-intro-panel,
	.ccb-icon-list-panel,
	.ccb-case-card,
	.ccb-product-cta,
	.ccb-map-location,
	.ccb-verdict,
	.ccb-newsletter,
	.ccb-lead-form,
	.ccb-checklist-panel,
	.ccb-paired,
	.ccb-pros-cons,
	.ccb-deep-grid,
	.ccb-pricing-grid,
	.ccb-testimonials,
	.ccb-reviews,
	.ccb-card-grid-3,
	.ccb-resource-grid,
	.ccb-related-posts {
		grid-template-columns: 1fr;
	}

	.ccb-pricing-grid,
	.ccb-pricing-grid--count-2,
	.ccb-pricing-grid--count-3,
	.ccb-pricing-grid--count-4,
	.ccb-pricing-grid:has(> .ccb-price-card:nth-child(2):last-child) {
		grid-template-columns: minmax(0, 1fr);
		justify-content: stretch;
	}

	.ccb-reviews {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.ccb-image-slider .ccb-slider__viewport {
		grid-template-columns: minmax(0, .58fr) minmax(0, 1.2fr) minmax(0, .58fr);
	}

	.ccb-card-grid-4,
	.ccb-steps,
	.ccb-trust-bar,
	.ccb-stat-band,
	.ccb-logo-cloud {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.ccb-related-posts {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.ccb-steps--count-3,
	.ccb-resource-grid--count-3,
	.ccb-related-posts--count-3 {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.ccb-steps--count-4,
	.ccb-resource-grid--count-4,
	.ccb-related-posts--count-2,
	.ccb-related-posts--count-4 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.ccb-steps--count-6,
	.ccb-resource-grid--count-6 {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.ccb-price-card.is-featured {
		transform: none;
	}
}

@media (max-width: 640px) {
	html,
	body {
		overflow-x: hidden;
	}

	.ccb-root.ccb-document {
		width: 100% !important;
		max-width: none !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}

	.ccb-root {
		--ccb-section-padding-y: 24px;
		--ccb-section-follow-padding-y: 13px;
		--ccb-section-padding-y-tight: 18px;
		--ccb-header-gap: 22px;
	}

	.ccb-section {
		padding-inline: 18px;
		overflow-x: hidden;
	}

	.ccb-shell,
	.ccb-narrow {
		width: calc(100vw - 36px) !important;
		max-width: calc(100vw - 36px) !important;
	}

	.ccb-section-head {
		width: 100% !important;
		max-width: 100% !important;
	}

	.ccb-root h1,
	.ccb-root h2 {
		display: block;
		width: auto !important;
		max-width: calc(100vw - 36px) !important;
		font-size: clamp(1.6rem, 7.4vw, 2.05rem);
		line-height: 1.08;
		white-space: normal !important;
	}

	.ccb-root h3,
	.ccb-root p {
		width: auto !important;
		max-width: calc(100vw - 36px) !important;
		white-space: normal !important;
	}

	.ccb-section-head .ccb-section-title,
	.ccb-section-head h2,
	.ccb-narrow .ccb-section-title,
	.ccb-narrow h2 {
		font-size: clamp(1.58rem, 7vw, 1.95rem);
	}

	.ccb-hero-copy p,
	.ccb-section-head p,
	.ccb-narrow p {
		font-size: 1rem;
	}

	.ccb-card-grid-4,
	.ccb-steps,
	.ccb-trust-bar,
	.ccb-stat-band,
	.ccb-verdict__fit,
	.ccb-logo-cloud,
	.ccb-resource-grid,
	.ccb-related-posts {
		grid-template-columns: 1fr;
	}

	.ccb-hero-art {
		min-height: 0;
		max-width: 100%;
		overflow: hidden;
	}

	.ccb-image-hero {
		aspect-ratio: 1 / 1;
		width: calc(100vw - 36px) !important;
		max-width: calc(100vw - 36px) !important;
	}

	.ccb-hero-art--image {
		padding: 16px;
	}

	.ccb-hero-art--image .ccb-image-hero {
		min-height: 260px;
		width: 100% !important;
		max-width: 100% !important;
	}

	.ccb-image-cta,
	.ccb-image-text__image,
	.ccb-image-screen,
	.ccb-image-full-frame .ccb-image-placeholder,
	.ccb-image-pair__image,
	.ccb-product-cta .ccb-image-placeholder {
		width: 100% !important;
		max-width: 100% !important;
	}

	.ccb-image-text,
	.ccb-image-text--image-right {
		grid-template-columns: 1fr;
		gap: 22px;
	}

	.ccb-image-text__media,
	.ccb-image-text--image-right .ccb-image-text__media {
		order: 1;
	}

	.ccb-image-text__copy,
	.ccb-image-text--image-right .ccb-image-text__copy {
		order: 2;
	}

	.ccb-image-pair {
		display: grid;
		grid-template-columns: 1fr;
		gap: 18px;
		padding: 0;
	}

	.ccb-image-pair__item,
	.ccb-image-pair__item--1,
	.ccb-image-pair__item--2 {
		grid-column: 1;
		grid-row: auto;
		margin-top: 0;
		transform: none;
	}

	.ccb-image-gallery__row {
		flex-wrap: wrap;
	}

	.ccb-image-gallery__tile {
		flex-basis: calc((100% - var(--ccb-gallery-gap)) / 2);
	}

	.ccb-hero-copy,
	.ccb-feature-card,
	.ccb-deep-card,
	.ccb-price-card,
	.ccb-testimonials figure,
	.ccb-review-card,
	.ccb-image-slider,
	.ccb-slider__slide,
	.ccb-faq article,
	.ccb-faq-accordion,
	.ccb-faq-accordion__item,
	.ccb-verdict,
	.ccb-resource-card,
	.ccb-tabs,
	.ccb-tabs__panel,
	.ccb-author-bio,
	.ccb-team-card,
	.ccb-newsletter,
	.ccb-video-frame,
	.ccb-logo-cloud,
	.ccb-checklist-panel,
	.ccb-related-card,
	.ccb-pros-cons article,
	.ccb-step,
	.ccb-timeline article,
	.ccb-callout,
	.ccb-case-card,
	.ccb-product-cta,
	.ccb-map-location,
	.ccb-code-embed,
	.ccb-intro-panel,
	.ccb-icon-list-panel {
		box-sizing: border-box;
		max-width: 100%;
		width: 100% !important;
	}

	.ccb-reviews,
	.ccb-reviews--count-2 {
		grid-template-columns: 1fr;
	}

	.ccb-image-slider .ccb-slider__viewport {
		grid-template-columns: 1fr;
		min-height: 0;
	}

	.ccb-image-slider .ccb-slider__slide.is-prev,
	.ccb-image-slider .ccb-slider__slide.is-next {
		display: none;
	}

	.ccb-slider-image,
	.ccb-image-slider .ccb-slider__slide.is-prev .ccb-slider-image,
	.ccb-image-slider .ccb-slider__slide.is-next .ccb-slider-image {
		height: 260px;
		min-height: 0;
		width: 100% !important;
		max-width: 100% !important;
	}

	.ccb-toc {
		position: relative;
		top: auto;
		display: grid;
		grid-template-columns: 1fr;
		align-items: start;
		min-height: 0;
	}

	.ccb-toc__links {
		grid-template-columns: 1fr !important;
		justify-content: stretch;
		overflow-x: visible;
	}

	.ccb-author-bio,
	.ccb-newsletter,
	.ccb-checklist-panel,
	.ccb-team-grid,
	.ccb-team-grid--count-2,
	.ccb-team-grid--count-4 {
		grid-template-columns: 1fr;
	}

	.ccb-table-wrap {
		box-sizing: border-box;
		width: 100% !important;
		max-width: 100% !important;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	.ccb-table {
		width: 100% !important;
		min-width: 0;
		table-layout: fixed;
	}

	.ccb-table th,
	.ccb-table td {
		padding: 12px 10px;
		overflow-wrap: anywhere;
		word-break: normal;
	}

	.ccb-verdict {
		grid-template-columns: 1fr !important;
		overflow: hidden;
		padding: 22px;
	}

	.ccb-verdict__fit {
		grid-template-columns: 1fr !important;
	}

	.ccb-verdict__score {
		min-height: 150px;
		padding: 18px;
	}

	.ccb-verdict__fit article,
	.ccb-mini-list,
	.ccb-mini-list li {
		max-width: 100%;
		overflow-wrap: anywhere;
	}

	.ccb-newsletter__form {
		grid-template-columns: 1fr;
		border-radius: var(--ccb-radius);
	}

	.ccb-newsletter__form button,
	.ccb-lead-form__form button {
		width: 100%;
	}

	.ccb-author-bio__avatar {
		width: 92px;
		height: 92px;
	}

	.ccb-video-poster {
		min-height: 220px;
	}

	.ccb-video-poster__play {
		width: 62px;
		height: 62px;
	}

	.ccb-video-poster__play::before {
		border-top-width: 11px;
		border-bottom-width: 11px;
		border-left-width: 17px;
	}

	.ccb-faq-accordion__button {
		grid-template-columns: minmax(0, 1fr) 38px;
		gap: 14px;
		padding: 16px;
	}

	.ccb-faq-accordion__icon {
		width: 38px;
		height: 38px;
	}

	.ccb-faq-accordion__panel {
		padding: 0 16px 18px;
	}

	.ccb-product-cta {
		grid-template-columns: minmax(0, 1fr) !important;
		overflow: hidden;
	}

	.ccb-map-location {
		grid-template-columns: minmax(0, 1fr) !important;
		padding: 20px;
		overflow: hidden;
	}

	.ccb-map-location :is(h1, h2, h3, p) {
		max-width: 100% !important;
	}

	.ccb-map-facade,
	.ccb-map-iframe {
		aspect-ratio: 4 / 3;
		width: 100% !important;
		max-width: 100% !important;
	}

	.ccb-map-actions {
		text-align: left;
	}

	.ccb-code-embed {
		max-width: 100%;
	}

	.ccb-icon-list-panel {
		padding-inline: 14px;
		overflow: hidden;
	}

	.ccb-icon-list {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0;
		overflow: hidden;
	}

	.ccb-product-cta .ccb-image-cta,
	.ccb-product-cta .ccb-image-placeholder {
		justify-self: stretch;
		min-width: 0 !important;
		width: 100% !important;
		max-width: 100% !important;
	}

	.ccb-hero-centered,
	.ccb-hero-dark {
		text-align: center;
	}

	.ccb-chip-one,
	.ccb-chip-two {
		position: static;
		margin: 12px 8px 0 0;
	}

	.ccb-callout {
		display: grid;
		grid-template-columns: 1fr;
	}

	.ccb-icon-row {
		display: grid !important;
		grid-template-columns: 57px minmax(0, 1fr) !important;
		column-gap: 18px;
		align-items: center !important;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0;
		overflow: hidden;
	}

	.ccb-icon-row > span {
		grid-column: 1;
		grid-row: 1;
		align-self: center;
		justify-self: center;
	}

	.ccb-icon-row > div {
		grid-column: 2;
		grid-row: 1;
		min-width: 0;
		width: 100% !important;
		max-width: 100% !important;
	}

	.ccb-icon-row h3,
	.ccb-icon-row p {
		width: 100% !important;
		max-width: 100% !important;
		text-align: left !important;
		overflow-wrap: anywhere;
	}
}

/* Icon/text layout safeguards. Keep the intentional media-row blocks from
   stacking, but do not force unrelated card or callout layouts into one shape. */
.ccb-root :is(.ccb-icon-row, .ccb-takeaway, .ccb-checklist article, .ccb-resource-card) > p:empty {
	display: none !important;
}

.ccb-root :is(.ccb-takeaway, .ccb-icon-row, .ccb-checklist article, .ccb-resource-card) {
	display: grid !important;
	grid-template-columns: var(--ccb-row-icon-size, 54px) minmax(0, 1fr) !important;
	column-gap: 16px;
	align-items: center !important;
	justify-items: start !important;
	justify-content: stretch;
	text-align: left !important;
	min-width: 0;
	width: 100%;
	max-width: 100%;
}

.ccb-root :is(.ccb-takeaway, .ccb-icon-row) {
	grid-template-columns: var(--ccb-row-icon-size, 54px) minmax(0, 1fr) !important;
	justify-content: stretch;
}

.ccb-root .ccb-takeaway {
	--ccb-row-icon-size: 44px;
}

.ccb-root .ccb-icon-row {
	--ccb-row-icon-size: 57px;
}

.ccb-root .ccb-checklist article {
	--ccb-row-icon-size: 46px;
}

.ccb-root .ccb-resource-card {
	--ccb-row-icon-size: 58px;
}

.ccb-root :is(.ccb-icon-row, .ccb-checklist article, .ccb-resource-card) > span,
.ccb-root .ccb-takeaway > span:not(.ccb-takeaway-copy) {
	grid-column: 1;
	grid-row: 1;
	align-self: center;
	justify-self: center;
	margin: 0 !important;
}

.ccb-root :is(.ccb-icon-row, .ccb-checklist article, .ccb-resource-card) > div,
.ccb-root .ccb-takeaway > p,
.ccb-root .ccb-takeaway > .ccb-takeaway-copy {
	grid-column: 2;
	grid-row: 1;
	align-self: center;
	justify-self: stretch;
	min-width: 0;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	text-align: left !important;
}

.ccb-root :is(.ccb-checklist article, .ccb-resource-card) > div {
	justify-self: stretch;
	width: 100% !important;
}

.ccb-root :is(.ccb-takeaway, .ccb-icon-row, .ccb-checklist article, .ccb-resource-card) :is(h3, p, strong, a, .ccb-resource-card__link) {
	width: auto !important;
	max-width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	text-align: left !important;
	overflow-wrap: break-word;
	word-break: normal;
}

.ccb-root .ccb-icon-row > div {
	display: block;
	justify-self: stretch;
	width: 100% !important;
}

.ccb-root .ccb-icon-row :is(h3, p) {
	display: block;
}

.ccb-root .ccb-resource-card > div > p:has(.ccb-resource-card__link) {
	margin-top: 10px !important;
}

.ccb-root .ccb-resource-card > div > p:has(.ccb-resource-card__link) .ccb-resource-card__link {
	margin-top: 0;
}

.ccb-root .ccb-icon-row p,
.ccb-root .ccb-takeaway p,
.ccb-root .ccb-takeaway-copy,
.ccb-root .ccb-checklist p {
	margin-bottom: 0;
}

.ccb-root .ccb-checklist-panel {
	grid-template-columns: minmax(0, 1fr);
}

.ccb-root .ccb-checklist {
	gap: 14px;
}

.ccb-root .ccb-checklist article {
	align-items: start !important;
	padding: 18px;
	overflow: visible;
}

.ccb-root .ccb-checklist article > span {
	margin-top: 2px !important;
}

.ccb-root .ccb-checklist article h3 {
	display: block;
	color: var(--ccb-heading);
	font-size: clamp(1rem, 1.25vw, 1.22rem);
	line-height: 1.16;
	overflow: visible;
	overflow-wrap: break-word;
	text-overflow: clip;
	white-space: normal;
}

.ccb-root .ccb-checklist article p {
	margin-top: 8px;
	font-size: clamp(.94rem, 1vw, 1.05rem);
	line-height: 1.42;
}

.ccb-root .ccb-section-title.ccb-section-title--placeholder {
	min-height: 1.05em;
	color: var(--ccb-muted);
	font-style: italic;
	opacity: .62;
}

.ccb-root .ccb-section-title.ccb-section-title--placeholder.is-editing-placeholder {
	color: var(--ccb-heading);
	font-style: normal;
	opacity: 1;
}

@media (max-width: 420px) {
	.ccb-verdict,
	.ccb-tabs,
	.ccb-tabs__panel,
	.ccb-resource-card,
	.ccb-related-card,
	.ccb-callout,
	.ccb-author-bio,
	.ccb-newsletter,
	.ccb-lead-form,
	.ccb-checklist-panel {
		padding: 18px;
	}

	.ccb-table th,
	.ccb-table td {
		padding: 10px 8px;
		font-size: .88rem;
	}

	.ccb-root .ccb-icon-row {
		--ccb-row-icon-size: 52px;
		column-gap: 12px;
	}
}
