.vzct-comparison,
.vzct-comparison * {
	box-sizing: border-box;
}

.vzct-comparison {
	width: min(100%, var(--vzct-max-width, 1200px));
	margin: 0 auto;
	padding: clamp(28px, 4vw, 58px);
	overflow: hidden;
	background: var(--vzct-bg, #0b1b3d);
	border-radius: 2px;
	color: var(--vzct-text, #fff);
	font-family: inherit;
}

.vzct-comparison__intro {
	max-width: 860px;
	margin: 0 auto clamp(30px, 5vw, 52px);
	text-align: center;
}

.vzct-comparison__headline {
	margin: 0 0 14px;
	color: var(--vzct-text, #fff);
	font: inherit;
	font-size: clamp(26px, 3.2vw, 44px);
	font-weight: 500;
	line-height: 1.12;
}

.vzct-comparison__subheadline {
	max-width: 760px;
	margin: 0 auto;
	color: var(--vzct-muted, #b8c0ce);
	font-size: clamp(14px, 1.5vw, 18px);
	line-height: 1.7;
}

.vzct-comparison__table-wrap {
	width: 100%;
	overflow: hidden;
}

.vzct-comparison__table {
	width: 100%;
	margin: 0;
	border: 0 !important;
	border-collapse: collapse;
	border-spacing: 0;
	table-layout: fixed;
	background: transparent;
}

.vzct-comparison__table th,
.vzct-comparison__table td {
	width: 50%;
	border: 0 !important;
	box-shadow: none !important;
	color: var(--vzct-text, #fff);
	text-align: left;
	vertical-align: top;
}

.vzct-comparison__table thead th {
	padding: 19px clamp(18px, 3vw, 32px);
	background: var(--vzct-standard-bg, #0b1b3d);
	font-size: 11px;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.vzct-comparison__table thead th:first-child,
.vzct-comparison__data-row td:first-child {
	background: var(--vzct-positive-bg, #142a52);
}

.vzct-comparison__table thead th:last-child,
.vzct-comparison__data-row td:last-child {
	background: var(--vzct-standard-bg, #0b1b3d);
}

.vzct-comparison__category-row th {
	width: 100%;
	padding: clamp(24px, 3vw, 34px) 4px 10px;
	background: var(--vzct-bg, #0b1b3d) !important;
	color: var(--vzct-muted, #b8c0ce);
	font-size: 10px;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}

.vzct-comparison__data-row td {
	padding: clamp(22px, 3.4vw, 36px) clamp(18px, 3vw, 32px);
}

.vzct-comparison__entry {
	display: grid;
	grid-template-columns: 24px minmax(0, 1fr);
	gap: 14px;
	align-items: start;
}

.vzct-comparison__icon {
	display: block;
	padding-top: 1px;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 22px;
	font-weight: 400;
	line-height: 1;
	text-align: center;
}

.vzct-comparison__entry--positive .vzct-comparison__icon {
	color: var(--vzct-check, #87a88e);
}

.vzct-comparison__entry--negative .vzct-comparison__icon {
	color: var(--vzct-cross, #9aa3b1);
}

.vzct-comparison__copy {
	min-width: 0;
}

.vzct-comparison__copy strong {
	display: block;
	margin: 0 0 8px;
	color: var(--vzct-text, #fff);
	font-size: clamp(14px, 1.35vw, 17px);
	font-weight: 600;
	line-height: 1.4;
}

.vzct-comparison__copy p {
	margin: 0;
	color: var(--vzct-muted, #b8c0ce);
	font-size: clamp(12px, 1.15vw, 15px);
	line-height: 1.65;
}

.vzct-screen-reader-text {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

@media (max-width: 767px) {
	.vzct-comparison {
		padding: 26px 16px;
	}

	.vzct-comparison__table,
	.vzct-comparison__table thead,
	.vzct-comparison__table tbody,
	.vzct-comparison__table tr,
	.vzct-comparison__table th,
	.vzct-comparison__table td {
		display: block;
		width: 100%;
	}

	.vzct-comparison__table thead {
		position: absolute !important;
		width: 1px !important;
		height: 1px !important;
		margin: -1px !important;
		overflow: hidden !important;
		clip: rect(0, 0, 0, 0) !important;
		white-space: nowrap !important;
	}

	.vzct-comparison__category-row th {
		padding: 28px 2px 9px;
	}

	.vzct-comparison__data-row td {
		padding: 20px;
	}

	.vzct-comparison__data-row td::before {
		content: attr(data-label);
		display: block;
		margin: 0 0 17px 38px;
		color: var(--vzct-muted, #b8c0ce);
		font-size: 9px;
		font-weight: 700;
		line-height: 1.4;
		letter-spacing: 0.13em;
		text-transform: uppercase;
	}

	.vzct-comparison__data-row td:last-child {
		padding-top: 22px;
	}

	.vzct-comparison__entry {
		grid-template-columns: 24px minmax(0, 1fr);
		gap: 14px;
	}
}
