.pageBody {
	--cyb-original-primary: var(--cyb-primary);
	--cyb-dark: var(--cyb-primary-dark-alt);
	--background-color: var(--cyb-primary-light);
	--white-60: color-mix(in oklab, var(--cyb-white) 60%, transparent);
	--white-80: color-mix(in oklab, var(--cyb-white) 80%, transparent);
	--black-60: color-mix(in oklab, var(--cyb-black) 60%, transparent);
	--black-80: color-mix(in oklab, var(--cyb-black) 80%, transparent);
}
.hidden-elm {
	display: none !important;
}
.white-60 {
	color: var(--white-60);
}
.white-80 {
	color: var(--white-80);
}
.text-white {
	color: var(--cyb-white);
}
.text-dark {
	color: var(--cyb-dark);
}
.black-60 {
	color: var(--black-60);
}
.black-80 {
	color: var(--black-80);
}
.text-2x {
	font-size: 2.5em;
}
.text-xl {
	font-size: 2em;
}
.text-lg {
	font-size: 1.5em;
}
.text-md {
	font-size: 1em;
}
.text-sm {
	font-size: 0.75em;
}
.text-xs {
	font-size: 0.625em;
}
.text-standout {
	color: var(--cyb-primary);
}
.text-uppercase {
	text-transform: uppercase;
}
.text-success {
	color: var(--cyb-success) !important;
}
.text-info {
	color: var(--cyb-primary) !important;
}
svg {
	&.text-success path {
		fill: var(--cyb-success);
	}
	&.text-info path {
		fill: var(--cyb-primary);
	}
}
.text-warning {
	color: var(--cyb-orange) !important;
}
.lh-reset {
	line-height: 1.25em;
}
.lh-1 {
	line-height: 1;
}
.lh-1-5 {
	line-height: 1.5em;
}
.fw-400 {
	font-weight: 400 !important;
}
.fw-700 {
	font-weight: 700 !important;
}
.of-x-auto {
	overflow-x: auto;
}
.border-all {
	border: 1px solid var(--cyb-grey-middle);
}
.border-top {
	border-top: 1px solid var(--cyb-grey-middle);
}
.border-bottom {
	border-bottom: 1px solid var(--cyb-grey-middle);
}
.border-top-bottom {
	border-top: 1px solid var(--cyb-grey-middle);
	border-bottom: 1px solid var(--cyb-grey-middle);
}
.primary-red-bright {
	--cyb-primary: var(--cyb-danger-bright);
	--cyb-dark: var(--cyb-danger-bright);
}
.true-primary {
	--cyb-primary: var(--cyb-original-primary);
	--cyb-dark: var(--cyb-primary-dark-alt);
}
.m-0 {
	margin: 0 !important;
}
.p-0 {
	padding: 0 !important;
}
.m-t-1 {
	margin-top: 1em !important;
}
.w-100 {
	width: 100%;
}
hr.divider {
	border: none;
	border-top: 1px solid var(--cyb-grey-middle);
	margin: 1em 0;
}
.btn {
	&.btn-primary {
		border-color: transparent;
	}
	&.btn-secondary {
		border-color: transparent;
		background-color: var(--cyb-primary-dark);
		color: var(--cyb-white);
		&:hover,
		&:focus,
		&:active,
		&:active:focus {
			background-color: var(--cyb-primary-dark);
			border-color: transparent;
			color: var(--cyb-white);
		}
	}
	&.btn-success {
		border-color: transparent;
		background-color: var(--cyb-success);
		&:hover,
		&:focus,
		&:active,
		&:active:focus {
			background-color: var(--cyb-success-dark);
			border-color: transparent;
		}
	}
	&.btn-warning {
		border-color: transparent;
		background-color: var(--cyb-orange);
		&:hover,
		&:focus,
		&:active,
		&:active:focus {
			background-color: var(--cyb-orange-dark);
			border-color: transparent;
		}
	}
	&.btn-danger {
		border-color: transparent;
		background-color: var(--cyb-danger);
		&:hover,
		&:focus,
		&:active,
		&:active:focus {
			background-color: var(--cyb-danger-dark);
			border-color: transparent;
		}
	}
	&.btn-outline {
		border: 1px solid var(--cyb-blue);
		color: var(--cyb-blue);
		background-color: var(--cyb-white);
		&:hover,
		&:focus,
		&:active,
		&:active:focus {
			color: var(--cyb-white);
			background-color: var(--cyb-blue);
			svg {
				path {
					fill: var(--cyb-white);
				}
			}
		}
		svg {
			path {
				fill: var(--cyb-blue);
			}
		}
	}
	&.btn-white {
		border: 1px solid var(--black-80);
		color: var(--black-80);
		background-color: var(--cyb-white);
		&:hover,
		&:focus,
		&:active,
		&:active:focus {
			border-color: var(--cyb-blue);
			color: var(--cyb-blue);
			background-color: var(--cyb-white);
			svg {
				path {
					fill: var(--cyb-blue);
				}
			}
		}
		svg {
			path {
				fill: var(--black-80);
			}
		}
	}
	&.normalize-btn {
		padding: 0.75em 1.5em;
		border-radius: 0.5em !important;
		text-transform: none;
		font-size: 1em;
	}
	&:has(.fas,.far,.fab,svg) {
		display: flex;
		gap: 1em;
		align-items: center;
		justify-content: center;
	}
}
.rounded-corners {
	border-radius: 0.5em;
}
.large-horizontal-padding {
	padding-left: 20em;
	padding-right: 20em;
}
.grid-section {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
	gap: 2em;
	&.align-center {
		align-items: center;
	}
	&.align-start {
		align-items: start;
	}
	&.justify-center {
		justify-items: center;
	}
	&.grid-1 {
		grid-template-columns: 1fr;
	}
	&.grid-1-1 {
		grid-template-columns: 1fr 1fr;
	}
	&.grid-1-2 {
		grid-template-columns: 1fr 2fr;
	}
	&.grid-2-1 {
		grid-template-columns: 2fr 1fr;
	}
	&.grid-2-3 {
		grid-template-columns: 2fr 3fr;
	}
	&.grid-3-1 {
		grid-template-columns: 3fr 1fr;
	}
	&.grid-3-2 {
		grid-template-columns: 3fr 2fr;
	}
	&.grid-repeat-3 {
		grid-template-columns: repeat(3, 1fr);
	}
	&.grid-auto-1-auto {
		grid-template-columns: auto 1fr auto;
	}
	&.grid-reverse {
		&.grid-1-1 {
			> :nth-child(1) {
				order: 1
			}
			> :nth-child(2) {
				order: -1;
			}
		}
	}
	&.gap-1 {
		gap: 1em;
	}
	&.gap-3 {
		gap: 3em;
	}
	&.gap-4 {
		gap: 4em;
	}
	&.gap-5 {
		gap: 5em;
	}
	&.gap-6 {
		gap: 6em;
	}
	&.gap-7 {
		gap: 7em;
	}
	&.gap-half {
		gap: 0.5em;
	}
	&.no-gap,
	&.gap-0 {
		gap: 0;
	}
	&.gap-row-1 {
		row-gap: 1em;
	}
	&.max-items-700 {
		> * {
			max-width: 700px;
		}
	}
	> .justify-self-end {
		justify-self: end;
	}
	> .grid-item-full {
		grid-column: 1 / -1;
	}
}
.flex-section {
	display: flex;
	gap: 2em;
	&.flex-wrap {
		flex-wrap: wrap;
	}
	&.flex-column {
		flex-direction: column;
	}
	&.flex-row-reverse {
		flex-direction: row-reverse;
	}
	&.align-center {
		align-items: center;
	}
	&.align-start {
		align-items: flex-start;
	}
	&.align-end {
		align-items: flex-end;
	}
	&.justify-center {
		justify-content: center;
	}
	&.justify-start {
		justify-content: flex-start;
	}
	&.justify-end {
		justify-content: flex-end;
	}
	&.justify-space-between {
		justify-content: space-between;
	}
	&.gap-1 {
		gap: 1em;
	}
	&.gap-3 {
		gap: 3em;
	}
	&.gap-4 {
		gap: 4em;
	}
	&.gap-5 {
		gap: 5em;
	}
	&.gap-6 {
		gap: 6em;
	}
	&.gap-7 {
		gap: 7em;
	}
	&.gap-half {
		gap: 0.5em;
	}
	&.no-gap,
	&.gap-0 {
		gap: 0;
	}
	&.flex-items-1 {
		> * {
			flex: 1;
		}
	}
	&.max-items-700 {
		> * {
			max-width: 700px;
		}
	}
	.no-shrink {
		flex-shrink: 0;
	}
	.align-self-start {
		align-self: flex-start;
	}
	.align-self-center {
		align-self: center;
	}
	.justify-self-end {
		justify-self: end;
	}
	.justify-self-center {
		justify-self: center;
	}

}
.circle-image {
	border-radius: 50%;
	overflow: hidden;
	display: flex;
	justify-content: center;
	align-items: center;
	aspect-ratio: 1 / 1;
	picture {
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		height: 100%;
		img {
			object-fit: cover;
			object-position: center;
			width: 100%;
			height: 100%;
		}
	}
}
.circle-icon,
.square-icon {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 4em;
	height: 4em;
	overflow: visible;
	background-color: var(--cyb-blue-light);
	background-color: color-mix(in oklab, var(--cyb-dark) 10%, transparent);
	&.icon-outline {
		background-color: transparent;
		border: 2px solid var(--cyb-dark);
		svg {
			path {
				fill: var(--cyb-dark);
			}
		}
	}
	&.color-reverse {
		background-color: var(--cyb-dark);
		svg {
			path {
				fill: var(--cyb-white);
			}
		}
		&.icon-outline {
		background-color: transparent;
			border-color: var(--cyb-white);
		}
	}
	svg {
		width: 2.5em;
		height: 2.5em;
		overflow: visible;
		path {
			fill: var(--cyb-dark);
		}
	}
}
.circle-icon {
	border-radius: 50%;
}
.square-icon {
	border-radius: 0.5em;
}
.pill {
	background-color: var(--cyb-grey-dark);
	color: var(--cyb-white);
	padding: 0.25em 0.5em;
	font-size: 0.9em;
	border-radius: 1em;
}
.o-60 {
	opacity: 0.6;
}
.p-1 {
	padding: 1em;
}
a.normalize-link {
	color: inherit;
	&:hover,
	&:focus,
	&:active {
		color: inherit;
		text-decoration: underline;
	}
}
.card-section {
	display: flex;
	gap: 2em;
	.card-item {
		flex: 1;
		background-color: var(--cyb-white);
		border-radius: 1em;
		border: 1px solid var(--cyb-grey-middle);
		padding: 2em;
		&.product-card {
			padding: 0;
		}
		&.card-dark {
			background-color: var(--cyb-dark);
			color: var(--cyb-white);
			border-color: var(--cyb-dark);
		}
		&.pad-1 {
			padding: 1em;
		}
	}
}
.tag-list {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5em;
}
.tag-item {
	background-color: var(--cyb-blue-light);
	background-color: color-mix(in oklab, var(--cyb-dark) 10%, transparent);
	color: var(--cyb-dark);
	padding: 0.5em 0.75em;
	border: 1px solid var(--cyb-dark);
	border-color: color-mix(in oklab, var(--cyb-dark) 20%, transparent);
	border-radius: 0.25em;
	font-size: 0.85em;
	line-height: 1em;
	&:hover {
		background-color: var(--cyb-blue);
		color: var(--cyb-white);
		border-color: var(--cyb-blue);
	}
	a {
		&:hover,
		&:focus,
		&:active {
			color: var(--cyb-white) !important;
		}
	}
}
.section-hero {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 1em;
}
.section-label {
	color: var(--cyb-blue-dark);
	background-color: var(--cyb-blue-light);
	padding: 0.5em 0.75em;
	border-radius: 0.5em;
	font-size: 0.9em;
	line-height: 1em;
}
.well {
	-webkit-box-shadow: none;
	box-shadow: none;
	&.well-info {
		background-color: var(--cyb-blue-light);
		border-color: var(--cyb-blue-dark);
		color: var(--cyb-blue-dark);
	}
	&.well-success {
		background-color: var(--cyb-success-light);
		border-color: var(--cyb-success);
		color: var(--cyb-success);
	}
	&.well-warning {
		background-color: var(--cyb-orange-lightest);
		border-color: var(--cyb-orange);
		color: var(--cyb-orange);
	}
	&.well-danger {
		background-color: var(--cyb-danger-light);
		border-color: var(--cyb-danger);
		color: var(--cyb-danger);
	}
	.circle-icon {
		background-color: transparent;
		border: 2px solid var(--cyb-blue-dark);
	}
}
.form-group{
	position: relative;
	&:has(input[required]) label::after {
		content: "*";
		color: var(--cyb-danger);
		margin-left: 0.25em;
	}
	.input-group {
		.input-lg {
			height: 40px;
		}
		&:has(.input-group-btn .btn-white) {
			.input-lg {
				border: 1px solid var(--cyb-black);
				width: auto;
			}
		}
	}
	.char-count {
		position: absolute;
		top: .75em;
		right: 0;
		font-size: .5em;
		color: var(--cyb-grey-dark);
		text-align: right;
		-webkit-user-select: none;
		-moz-user-select: none;
		user-select: none;
	}
}
dialog {
    border: none;
    border-radius: 1em;
	padding: 1em 2em;
	max-width: 800px;
	&.wide {
		max-width: 1200px;
		margin-top: 5vh;
	}
	&.narrow {
		max-width: 400px;
		margin-top: 5vh;
	}
	&:has(.row) .dialog-body {
		padding-left: 15px;
		padding-right: 15px;
	}
	&:has(.dialog-body.no-scroll) {
		overflow: visible;
	}
	&[open] {
		display: flex;
		flex-direction: column;
		gap: 1em;
	}
	&::backdrop {
		background-color: rgba(0,0,0,0.5);
		backdrop-filter: blur(3px);
	}
	&.text-info,
	&.text-primary {
		background-color: var(--cyb-blue-light);
	}
	&.text-success {
		background-color: var(--cyb-success-light);
	}
	&.text-warning {
		background-color: var(--cyb-orange-lightest);
	}
	&.text-danger {
		background-color: var(--cyb-danger-light);
	}
	&#processing-dialog {
		font-size: 2em;
		font-weight: 800;
		.dialog-body {
			overflow: visible;
			padding: 0;
		}
	}
	.dialog-title {
		margin: 0;
	}
	strong.dialog-title {
		font-size: 2em;
	}
	.dialog-body {
		padding: 1em 0;
		max-height: 70vh;
		overflow-y: auto;
		&.no-scroll {
			max-height: unset;
			overflow-y: unset;
		}
		.form-error-message {
			margin-bottom: 0;
			position: fixed;
			top: 0;
			left: 50%;
			transform: translateX(-50%) translateY(-100%);
			text-align: center;
			transition: all 0.5s ease;
			padding: 1em 2em;
			font-weight: 800;
			font-size: 1.5em;
			z-index: 1;
			&.show-error {
				transform: translateX(-50%);
			}
			button.close {
				font-size: 1.25em;
				color: inherit;
				opacity: 0.5;
				position: absolute;
				top: 0.25em;
				right: 0.5em;
			}
		}
	}
	.dialog-footer {
		display: flex;
		justify-content: flex-end;
		gap: 1em;
		&.text-center {
			justify-content: center;
		}
		&.text-left {
			justify-content: flex-start;
		}
	}
}
body:has(dialog[open]) {
	overflow: hidden;
}
#product-category-header #category-header-banner {
	display: grid;
	grid-template-columns: 2.5fr 1fr;
	max-width: 1400px;
	#category-intro {
		h1 {
			span {
				color: var(--cyb-blue);
			}
		}
		h2 {
			font-size: 1.25em;
			font-weight: 300;
			text-align: left;
		}
		p.controlled-width {
			text-align: left;
			margin: 0;
		}
	}
}
#trusted-by-new {
	display: flex;
	flex-direction: column;
	gap: 1em;
	padding: 2em 10em;
	background-color: var(--cyb-white);
	strong {
		color: var(--cyb-grey-medium);
		text-align: center;
		font-size: 1.25em;
		font-weight: 400;
	}
	#trusted-by-content {
		#trusted-by-logos {
			--flex-gap: 5em;
			display: flex;
			justify-content: center;
			align-items: center;
			gap: var(--flex-gap);
			width: 100%;
			.logo-group {
				flex: 1;
				display: flex;
				align-items: center;
				gap: var(--flex-gap);
				&:first-child {
					justify-content: flex-end;
				}
				&:last-child {
					justify-content: flex-start;
				}
			}
			> .trusted-by-logo {
				flex: 0 0 auto;
			}
			.trusted-by-logo {
				svg {
					height: 5em;
					path {
						fill: var(--cyb-grey-medium);
					}
				}
			}
		}
	}
}
#product-category-sub-nav {
	padding: 2em 10em;
	/* position: sticky;
	top: 110px;
	z-index: 999; */
	#sub-nav-links {
		font-size: 1.25em;
		a {
			color: var(--cyb-blue-dark);
			&.flex-nav-link {
				display: flex;
				align-items: center;
				justify-content: center;
				gap: 0.75em;
				figure {
					flex: unset;
					svg {
						width: auto;
						height: 2em;
						path {
							fill: var(--cyb-blue-dark);
						}
					}
				}
				.sub-nav-link-text {
					display: flex;
					flex-direction: column;
					gap: 0;
					p {
						margin: 0;
					}
					small {
						color: var(--cyb-grey-medium);
						font-weight: 400;
						font-size: 0.75em;
					}
				}
			}
		}
	}
}
.product-category-section {
	&.full-width-section {
		.product-category-intro,
		.product-group {
			grid-column: 1 / -1;
		}
		.product-category-intro {
			font-size: 1.5em;
			display: flex;
			flex-direction: column;
			align-items: center;
			gap: 1em;
			h2 {
				margin: 0;
			}
			p {
				font-size: 1.25em;
			}
		}
	}
	.product-category-info {
		top: calc(12em + 110px);
		font-size: 1em;
		z-index: 99;
		border: 1px solid var(--cyb-grey-middle);
		.product-category-hero {
			display: flex;
			flex-direction: column;
			align-items: flex-start;
			gap: 1em;
			.product-category-info-label {
				color: var(--cyb-blue-dark);
				background-color: var(--cyb-blue-light);
				padding: 0.5em 0.75em;
				border-radius: 0.5em;
				font-size: 0.9em;
				line-height: 1em;
			}
			h2 {
				font-size: 2em;
			}
		}
		.product-category-value-adds li {
			gap: 2em;
			figure {
				height: auto;
				width: 2.5em;
				svg {
					height: auto;
					width: 2.5em;
				}
			}
		}
	}
	.product-group {
		grid-template-columns: repeat(auto-fit, minmax(275px, 1fr));
		.product-card {
			font-size: 0.85em;
			.product-image {
				figure {
					justify-content: flex-start;
				}
			}
		}
	}
}
.product-group {
	.product-card {
		.product-image {
			figure {
				> a {
					display: grid;
					grid-template-columns: 1fr;
					justify-items: center;
					align-items: center;
				}
				picture {
					display: flex;
					justify-content: center;
					aspect-ratio: 4 / 3;
					height: 200px;
					img {
						max-height: 100%;
						width: auto;
					}
				}
				.product-extra-info {
					width: 100%;
					&:has(.product-spec-tag) {
						display: flex;
						flex-wrap: wrap;
						gap: 1em;
					}
					&:not(:has(.product-spec-tag)) {
						margin-top: 2em;
						li {
							line-height: 1.2em;
							&:not(:last-child) {
								padding-bottom: 0.5em;
								margin-bottom: 0.5em;
								border-bottom: 1px solid var(--cyb-grey-middle);
							}
						}
					}
					.product-spec-tag {
						font-size: 0.75em;
						padding: 0.25em 0.5em;
						border-radius: 2em;
						background-color: var(--cyb-grey-light);
						border: 1px solid var(--cyb-grey-medium);
						color: var(--cyb-grey-medium);
					}
				}
			}
		}
	}
}
.product-category-section {
	.product-group-alt {
		font-size: 1.2em;
		grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
	}
}
.product-group-alt {
	display: grid;
	grid-template-columns: repeat(2, minmax(200px, 500px));
	justify-content: center;
	gap: 2em;
	font-size: 0.8em;
	&.auto-columns {
		grid-template-columns: repeat(auto-fit, minmax(380px, 1fr));
	}
	&.single-column {
		grid-template-columns: 1fr;
		justify-items: center;
		.product-card {
			min-width: 200px;
			max-width: 500px;
		}
	}
	.product-card {
		display: flex;
		flex-direction: column;
		gap: 1em;
		border: 1px solid var(--cyb-grey-middle);
		border-radius: 1em;
		overflow: hidden;
		background-color: var(--cyb-white);
		&.standout {
			border-color: var(--cyb-blue);
			.product-image {
				.feature-tag {
					background-color: var(--cyb-blue);
				}
			}
			.product-buttons {
				.btn {
					&.btn-primary {
						border-color: var(--cyb-blue);
						background-color: var(--cyb-blue);
						&:hover,
						&:focus {
							border-color: var(--cyb-blue-dark);
							background-color: var(--cyb-blue-dark);
						}
					}
					&.btn-details {
						border-color: var(--cyb-blue);
						&:hover,
						&:focus {
							border-color: var(--cyb-blue-dark);
						}
					}
				}
			}
		}
		.product-image {
			position: relative;
			picture {
				display: flex;
				aspect-ratio: 16 / 10;
				overflow: hidden;
				img {
					object-fit: cover;
					object-position: center;
				}
			}
			.feature-tag {
				position: absolute;
				top: 1em;
				left: 1em;
				background-color: var(--cyb-black);
				color: var(--cyb-white);
				padding: 0.25em 0.75em;
				border-radius: 0.5em;
				font-size: 0.9em;
			}
		}
		.product-details {
			display: grid;
			grid-template-columns: 1fr;
			gap: 1em;
			padding: 0 2em 2em;
			height: 100%;
			a:not(.btn) {
				color: inherit;
				&:hover,
				&:focus {
					color: var(--cyb-blue);
				}
				strong {
					font-size: 1.75em;
				}
			}
			.product-nickname {
				color: var(--cyb-blue);
				margin: 0;
			}
			.product-best-for {
				margin: 0;
			}
			.product-extra-info {
				display: flex;
				flex-direction: column;
				gap: 0.5em;
				margin: 0;
				li {
					display: flex;
					align-items: center;
					gap: 1em;
					.fa-check {
						color: var(--cyb-success-bright);
					}
				}
			}
		}
		.product-buttons {
			display: flex;
			gap: 1em;
			margin-top: 1em;
			align-self: end;
			.btn {
				padding: 0.75em 1.5em;
				border-radius: 0.5em !important;
				text-transform: none;
				font-size: 1em;
				flex: 1;
				&.btn-primary {
					border-color: var(--cyb-black);
					background-color: var(--cyb-black);
					&:hover,
					&:focus {
						border-color: var(--cyb-black);
						border-color: color-mix(in oklab, var(--cyb-black) 40%, transparent);
						background-color: var(--cyb-black);
						background-color: color-mix(in oklab, var(--cyb-black) 40%, transparent);
					}
				}
				&.btn-details {
					border-color: var(--cyb-black);
					color: var(--cyb-black);
					&:hover,
					&:focus {
						border-color: var(--cyb-black) !important;
						border-color: color-mix(in oklab, var(--cyb-black) 40%, transparent) !important;
						color: var(--cyb-white);
						background-color: var(--cyb-black);
						background-color: color-mix(in oklab, var(--cyb-black) 40%, transparent);
					}
				}
			}
		}
	}
}
.set-outer-padding {
	&:has(.product-group-alt) {
		@media (min-width: 1500px) {
			padding-left: 15vw;
			padding-right: 15vw;
		}
	}
	.product-group {
		.product-card {
			border: 1px solid var(--cyb-grey-middle);
		}
	}
}
#comparison-section {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 2em;
	font-size: 1.5em;
	#comparison-intro {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 1em;
		h2 {
			margin: 0;
		}
	}
	#comparison-table {
		font-size: 0.9em;
		thead {
			th {
				text-transform: uppercase;
				color: var(--cyb-grey-medium);
				padding: 0.75em 1.5em;
				&:not(.standard-heading):nth-child(2) {
					background-color: var(--cyb-blue-light);
					color: var(--cyb-blue-dark);
					border-bottom-color: var(--cyb-blue-dark);
				}
				&:not(.standard-heading):nth-child(3) {
					color: var(--cyb-grey-medium);
					color: color-mix(in oklab, var(--cyb-black) 40%, transparent);
				}
			}
		}
		tbody {
			td {
				padding: 0.75em 1.5em;
				line-height: 1.25em;
				&:not(.standard-cell):nth-child(2) {
					background-color: var(--cyb-blue-light);
					color: var(--cyb-blue-dark);
				}
				&:not(.standard-cell):nth-child(3) {
					color: var(--cyb-grey-medium);
					color: color-mix(in oklab, var(--cyb-black) 40%, transparent);
				}
				.comparison-cell-inner {
					display: flex;
					align-items: flex-start;
					gap: 0.5em;
					.fas {
						font-size: 1.25em;
					}
				}
			}
		}
	}
}
.value-prop-section {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 2em;
	font-size: 1.5em;
	&:has(.value-prop-buttons) {
		gap: 0.5em;
	}
	&.dark-background {
		h2 {
			color: var(--cyb-white);
		}
		> p {
			color: var(--white-60);
		}
		.value-prop-buttons {
			.btn {
				transition: all 0.3s ease;
				&.btn-primary {
					background-color: var(--cyb-white);
					color: var(--cyb-dark);
					border-color: var(--cyb-white);
					&:hover,
					&:active,
					&:focus {
						box-shadow: 0 0 1em 0 var(--white-60);
					}
				}
				&.btn-outline {
					border-color: var(--cyb-white);
					color: var(--cyb-white);
					background-color: transparent;
					&:hover,
					&:active,
					&:focus {
						color: var(--cyb-dark);
						background-color: var(--cyb-white);
						border-color: var(--cyb-white);
					}
				}
			}
		}
	}
	h2 {
		margin: 0;
	}
	> p:not(.text-unset) {
		text-align: center;
		font-size: 1.25em;
	}
	.value-prop-icon-grid {
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		gap: 2em;
		.value-prop-icon {
			display: flex;
			flex-direction: column;
			align-items: center;
			gap: 0.5em;
			line-height: 1em;
			figure {
				display: flex;
				justify-content: center;
				align-items: center;
				height: 3em;
				width: 3em;
				padding: 0.5em;
				border-radius: 0.5em;
				background-color: var(--cyb-blue-light);
				background-color: color-mix(in oklab, var(--cyb-white) 60%, transparent);
				svg {
					height: auto;
					width: 100%;
					path {
						fill: var(--cyb-blue-dark);
					}
				}
			}
			strong {
				text-align: center;
				text-transform: uppercase;
				font-size: 0.9em;
				line-height: 1.5em;
			}
			p {
				text-align: center;
				font-size: 0.9em;
				color: var(--cyb-white);
				color: color-mix(in oklab, var(--cyb-white) 60%, transparent);
			}
		}
	}
	.value-prop-buttons {
		display: flex;
		justify-content: center;
		gap: 1em;
		margin-top: 1em;
		.btn {
			font-size: 1em;
			padding: 0.5em 1em;
			border-radius: 0.5em;
		}
	}
	.value-prop-list {
		display: flex;
		justify-content: center;
		align-items: center;
		gap: 2em;
		margin-top: 2em;
		font-size: 0.75em;
		h3 {
			font-size: 1.5em;
		}
	}
}
@media (min-width: 1920px) {
	#product-category-header #category-header-banner {
		#category-intro {
			max-width: 800px;
		}
	}
	.max-xlarge-width {
		width: 1900px;
	}
}
@media (min-width: 1500px) {
	.max-large-width {
		width: 1400px;
	}
}
@media (max-width: 1500px) {
	.max-large-width {
		width: 100%;
	}
	.large-horizontal-padding {
		padding-left: 15em;
		padding-right: 15em;
	}
	#product-category-header.header-with-background {
		padding: 10em 8em;
	}
	#product-category-sub-nav {
		padding: 2em 50px;
		#sub-nav-links {
			font-size: 1.25em;
			justify-content: center;
			flex-direction: row;
			a {
				width: auto;
			}
		}
	}
}
@media (max-width: 1200px) {
	.large-horizontal-padding {
		padding-left: 50px;
		padding-right: 50px;
	}
	.flex-lg-wrap-2 {
		flex-wrap: wrap;
		> * {
			flex: 1 1 calc(50% - 1em) !important;
		}
	}
	dialog {
		&.wide {
			max-width: 100%;
		}
	}
	#trusted-by-new {
		#trusted-by-content {
			scale: 0.9;
		}
	}
	#product-category-sub-nav {
		#sub-nav-links {
			&:has(.flex-nav-link) {
				overflow-x: auto;
				justify-content: flex-start;
				&::-webkit-scrollbar {
					display: none;
				}
			}
			.flex-nav-link {
				flex: 0 0 auto;
			}
		}
	}
	.product-category-section {
		&.full-width-section {
			.product-category-intro {
				font-size: 1.25em;
			}
		}
	}
	#comparison-section {
		font-size: 1.25em;
	}
	.value-prop-section {
		font-size: 1.25em;
	}
}
@media (max-width: 992px) {
	.pageBody h2 {
		text-align: center;
	}
	.flex-section,
	.grid-section {
		&.gap-md-1 {
			gap: 1em;
		}
		&.gap-md-2 {
			gap: 2em;
		}
		&.align-center-md {
			align-items: center;
		}
	}
	.grid-section {
		grid-template-columns: 1fr !important;
		> .justify-self-end {
			justify-self: unset;
		}
	}
	.flex-section:not(.no-stack-md,.flex-md-wrap) {
		flex-direction: column;
		&.flex-row-reverse {
			flex-direction: column;
		}
		&.flex-row-reverse-md {
			flex-direction: column-reverse;
		}
	}
	.flex-md-wrap {
		flex-wrap: wrap;
	}
	.card-section {
		flex-direction: column;
		&.small-grid {
			display: grid;
			grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
			gap: 1em;
			&.grid-1-1 {
				grid-template-columns: 1fr 1fr;
			}
		}
	}
	dialog {
		max-width: calc(100vw - 50px);
		width: calc(100vw - 50px) !important;
	}
	#product-category-header #category-header-banner {
		grid-template-columns: 1fr;
		margin-top: 0;
		#category-intro {
			font-size: 1.25em;
			h1 {
				font-size: 2em;
			}
		}
	}
	#trusted-by-new {
		#trusted-by-content {
			scale: 1;
			#trusted-by-logos {
				--flex-gap: 2em 10em;
				display: grid;
				grid-template-columns: 2fr 1fr;
				.logo-group:last-child {
					grid-column: 1 / -1;
					justify-content: center;
				}
			}
		}
	}
	.product-group-alt {
		.product-card {
			.product-details {
				padding: 1em;
			}
		}
	}
	#comparison-section {
		font-size: 1em;
		#comparison-table {
			thead,
			tbody {
				th,
				td {
					padding: 0.5em 1em;
				}
			}
		}
	}
}
@media (max-width: 768px) {
	.text-xs-sm {
		font-size: 0.625em;
	}
	.flex-md-wrap {
		flex-direction: column;
		&.flex-row-reverse {
			flex-direction: column;
		}
		&.flex-row-reverse-md {
			flex-direction: column-reverse;
		}
	}
	.large-horizontal-padding {
		padding-left: 25px;
		padding-right: 25px;
	}
	.flex-section,
	.grid-section {
		&.gap-sm-1 {
			gap: 1em;
		}
		&.gap-sm-2 {
			gap: 2em;
		}
		.align-sm-center {
			align-items: center;
		}
	}
	.pageBody h2 {
		font-size: 2em;
	}
	#product-category-header.header-with-background {
		padding: 2em 25px;
	}
	#product-category-header #category-header-banner {
		#category-intro {
			font-size: 1em;
		}
	}
	#trusted-by-new {
		#trusted-by-content {
			scale: 1;
			#trusted-by-logos {
				--flex-gap: 2em 7.5em;
				grid-template-columns: 1fr;
				justify-items: center;
				.logo-group {
					justify-content: center;
				}
			}
		}
	}
	#product-category-sub-nav {
		padding: 2em 25px;
		top: 75px;
	}
	.product-category-section {
		&.full-width-section {
			.product-category-intro {
				font-size: 1em;
			}
		}
	}
	.product-group-alt {
		grid-template-columns: 1fr;
		&.auto-columns {
			grid-template-columns: 1fr;
		}
	    .product-card {
            .product-buttons {
				flex-direction: column;
			}
		}
	}
	.value-prop-section {
		&:has(.value-prop-icon-grid) {
			font-size: 1em;
		}
		.value-prop-icon-grid {
			grid-template-columns: repeat(2, 1fr);
		}
		.value-prop-buttons {
			flex-direction: column;
		}
		.value-prop-list {
			display: grid;
			grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
			width: 100%;;
		}
	}
	#comparison-section {
		h2 {
			font-size: 2.5em;
		}
	}
	#faq-section #faq-container > h2 {
		font-size: 2em !important;
		margin: 0;
	}
	.card-section {
	    .card-item {
			padding: 1em;
		}
	}
	.productTechSpecs .productTechSpecRow .tech-spec-label {
		font-size: 1.75em;
	}
}
@media (max-width: 650px) {
	#trusted-by-new {
		#trusted-by-content {
			scale: 1;
		}
	}
}