.pageBody {
	--cyb-original-primary: var(--cyb-primary);
	--cyb-dark: var(--cyb-primary-dark-alt);
	--background-color: var(--cyb-primary-light);
	--white-5: color-mix(in oklab, var(--cyb-white) 5%, transparent);
	--white-10: color-mix(in oklab, var(--cyb-white) 10%, transparent);
	--white-60: color-mix(in oklab, var(--cyb-white) 60%, transparent);
	--white-80: color-mix(in oklab, var(--cyb-white) 80%, transparent);
	--black-5: color-mix(in oklab, var(--cyb-black) 5%, transparent);
	--black-10: color-mix(in oklab, var(--cyb-black) 10%, transparent);
	--black-20: color-mix(in oklab, var(--cyb-black) 20%, transparent);
	--black-40: color-mix(in oklab, var(--cyb-black) 40%, transparent);
	--black-60: color-mix(in oklab, var(--cyb-black) 60%, transparent);
	--black-80: color-mix(in oklab, var(--cyb-black) 80%, transparent);
	--blue-40: color-mix(in oklab, var(--cyb-blue) 40%, transparent);
}
.hidden-elm {
	display: none !important;
}
.invisible-elm {
	visibility: hidden !important;
}
.dotted-background {
	--background-dots: var(--black-10);
	&.dark-background {
		--background-dots: var(--white-10);
	}
	background-image: radial-gradient(var(--background-dots) 1.25px, transparent 1.25px);
	background-size: 2.5em 2.5em;
}
.grid-background {
	background-image: linear-gradient(to right,rgba(255,255,255,0.075) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,0.075) 1px,transparent 1px);
	background-size: 64px 64px;
}
.white-opaque-background {
	background-color: var(--white-5);
}
.orange-background {
	background-color: var(--cyb-orange-light);
}
.blue-background {
	background-color: var(--cyb-blue);
}
.white-60 {
	color: var(--white-60);
}
.white-80 {
	color: var(--white-80);
}
.font-mono {
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !important;
}
.text-decoration-none {
	text-decoration: none !important;
}
.text-white {
	color: var(--cyb-white);
}
.text-black {
	color: var(--cyb-black);
}
.text-dark {
	color: var(--cyb-dark);
}
.text-italic {
	font-style: italic;
}
.black-20 {
	color: var(--black-20);
}
.black-40 {
	color: var(--black-40);
}
.black-60 {
	color: var(--black-60);
}
.black-80 {
	color: var(--black-80);
}
.text-3x {
	font-size: 3em;
}
.text-2x {
	font-size: 2.5em;
}
.text-xl {
	font-size: 2em;
}
.text-lg {
	font-size: 1.5em;
}
.text-bigger {
	font-size: 1.25em;
}
.text-md {
	font-size: 1em;
}
.text-middle {
	font-size: 0.875em;
}
.text-sm {
	font-size: 0.75em;
}
.text-xs {
	font-size: 0.625em;
}
.text-standout {
	color: var(--cyb-primary);
}
.text-uppercase {
	text-transform: uppercase;
}
.text-capitalize {
	text-transform: capitalize;
}
.text-success {
	color: var(--cyb-success) !important;
}
.text-info {
	color: var(--cyb-primary) !important;
}
.text-normal {
	font-weight: normal !important;
}
.text-strong {
	font-weight: bold !important;
}
.text-nowrap {
	white-space: nowrap;
}
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;
}
.ls-0-25 {
	letter-spacing: 0.25em;
}
.fw-400 {
	font-weight: 400 !important;
}
.fw-700 {
	font-weight: 700 !important;
}
.of-x-auto {
	overflow-x: auto;
}
.border-none {
	border: none !important;
}
.border-all {
	border: 1px solid var(--cyb-grey-middle);
	&.white-opaque-background {
		border-color: var(--white-10);
	}
}
.border-top {
	border-top: 1px solid var(--cyb-grey-middle);
}
.border-bottom {
	border-bottom: 1px solid var(--cyb-grey-middle);
}
.border-left {
	border-left: 1px solid var(--cyb-grey-middle);
}
.border-left-2 {
	border-left: 2px solid var(--cyb-grey-middle);
}
.border-top-bottom {
	border-top: 1px solid var(--cyb-grey-middle);
	border-bottom: 1px solid var(--cyb-grey-middle);
}
.border-warning {
	border-color: var(--cyb-orange);
}
.border-2 {
	border-width: 2px !important;
}
.border-3 {
	border-width: 3px !important;
}
.border-radius-half,
.rounded-corners {
	border-radius: 0.5em;
}
.border-radius-1 {
	border-radius: 1em;
}
.border-radius-2 {
	border-radius: 2em;
}
.border-radius-3 {
	border-radius: 3em;
}
.border-radius-4 {
	border-radius: 4em;
}
.border-radius-5 {
	border-radius: 5em;
}
.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;
}
.p-half {
	padding: 0.5em !important;
}
.p-1 {
	padding: 1em !important;
}
.p-1-5 {
	padding: 1.5em !important;
}
.p-2 {
	padding: 2em !important;
}
.p-3 {
	padding: 3em !important;
}
.p-4 {
	padding: 4em !important;
}
.p-r-1 {
	padding-right: 1em;
}
.p-l-0 {
	padding-left: 0 !important;
}
.p-l-1 {
	padding-left: 1em;
}
.p-l-2 {
	padding-left: 2em;
}
.p-r-0 {
	padding-right: 0 !important;
}
.p-t-0 {
	padding-top: 0 !important;
}
.p-t-1 {
	padding-top: 1em !important;
}
.p-t-2 {
	padding-top: 2em !important;
}
.p-t-3 {
	padding-top: 3em !important;
}
.p-t-4 {
	padding-top: 4em !important;
}
.p-t-5 {
	padding-top: 5em !important;
}
.p-b-0 {
	padding-bottom: 0 !important;
}
.p-b-1 {
	padding-bottom: 1em !important;
}
.p-b-2 {
	padding-bottom: 2em !important;
}
.p-b-3 {
	padding-bottom: 3em !important;
}
.p-b-4 {
	padding-bottom: 4em !important;
}
.p-b-5 {
	padding-bottom: 5em !important;
}
.m-t-1 {
	margin-top: 1em !important;
}
.m-t-3 {
	margin-top: 3em !important;
}
.m-b-half {
	margin-bottom: 0.5em !important;
}
.m-b-1 {
	margin-bottom: 1em !important;
}
.m-b-2 {
	margin-bottom: 2em !important;
}
.w-100 {
	width: 100%;
}
.position-relative {
	position: relative;
}
.position-absolute {
	position: absolute;
}
.overflow-clip {
	overflow: clip;
}
.bq-reset {
	margin: 0;
	padding: 0;
	border-left: none;
}
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-outline-orange {
			border-color: var(--cyb-orange);
			color: var(--cyb-orange);
			&:hover,
			&:focus,
			&:active,
			&:active:focus {
				color: var(--cyb-white);
				background-color: var(--cyb-orange);
				svg {
					path {
						fill: var(--cyb-white);
					}
				}
			}
			svg {
				path {
					fill: var(--cyb-orange);
				}
			}
			&.btn-outline-orange-black {
				color: var(--cyb-black);
			}
		}
		&.btn-outline-grey {
			border-color: var(--cyb-grey-middle);
			color: var(--cyb-grey-dark);
			&:hover,
			&:focus,
			&:active,
			&:active:focus {
				border-color: var(--cyb-grey-dark);
				color: var(--cyb-white);
				background-color: var(--cyb-grey-dark);
				svg {
					path {
						fill: var(--cyb-white);
					}
				}
			}
			svg {
				path {
					fill: var(--cyb-grey-dark);
				}
			}
		}
		&.btn-outline-black {
			border-color: var(--cyb-black);
			color: var(--cyb-black);
			&:hover,
			&:focus,
			&:active,
			&:active:focus {
				color: var(--cyb-white);
				background-color: var(--cyb-orange);
				border-color: var(--cyb-orange);
				svg {
					path {
						fill: var(--cyb-white);
					}
				}
			}
			svg {
				path {
					fill: var(--cyb-orange);
				}
			}
		}
	}
	&.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);
			}
		}
	}
	&.btn-transparent {
		border: 1px solid transparent;
		color: var(--black-80);
		background-color: transparent;
		padding-left: 0;
		padding-right: 0;
		&:hover,
		&:focus,
		&:active,
		&:active:focus {
			border-color: transparent;
			color: var(--cyb-black);
			text-decoration: underline;
			background-color: transparent;
			svg {
				path {
					fill: var(--cyb-black);
				}
			}
		}
		svg {
			path {
				fill: var(--cyb-blue);
			}
		}
		&.btn-transparent-white {
			color: var(--white-80);
			&:hover,
			&:focus,
			&:active,
			&:active:focus {
				color: var(--cyb-white);
				svg {
					path {
						fill: var(--cyb-white);
					}
				}
			}
			svg {
				path {
					fill: var(--cyb-white);
				}
			}
		}
		&.btn-transparent-blue {
			color: var(--cyb-blue);
			&:hover,
			&:focus,
			&:active,
			&:active:focus {
				color: var(--cyb-orange);
				svg {
					path {
						fill: var(--cyb-orange);
					}
				}
			}
			svg {
				path {
					fill: var(--cyb-blue);
				}
			}
		}
	}
	&.btn-bordered {
		border: 1px solid var(--cyb-blue);
		color: var(--cyb-blue);
		background-color: transparent;
		&:hover,
		&:focus,
		&:active,
		&:active:focus {
			color: var(--cyb-white);
			background-color: transparent;
			svg {
				path {
					fill: var(--cyb-white);
				}
			}
		}
		svg {
			path {
				fill: var(--cyb-blue);
			}
		}
		&.btn-bordered-white {
			border-color: var(--cyb-white);
			color: var(--cyb-white);
			&:hover,
			&:focus,
			&:active,
			&:active:focus {
				color: var(--cyb-white);
				box-shadow: 0 0 0.5em 0 var(--white-60);
				svg {
					path {
						fill: var(--cyb-white);
					}
				}
			}
			svg {
				path {
					fill: var(--cyb-white);
				}
			}
		}
	}
	&.normalize-btn {
		padding: 0.75em 1.5em;
		border-radius: 0.5em !important;
		text-transform: none;
		font-size: 1em;
		&.btn-sm {
			padding: 0.5em 1em;
			font-size: 0.9em;
		}
	}
	&.btn-pill {
		padding: 0.5em 1.5em;
		border-radius: 2em !important;
		text-transform: none;
		font-size: 1em;
	}
	&:has(.fas,.far,.fab,svg) {
		display: flex;
		gap: 1em;
		align-items: center;
		justify-content: center;
		> i {
			width: 1.25em;
			display: inline-block;
			text-align: center;
		}
	}
	&.btn-flex {
		display: flex;
	}
}
.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;
	}
	&.justify-space-between {
		justify-content: space-between;
	}
	&.grid-1 {
		grid-template-columns: 1fr;
	}
	&.grid-1-1 {
		grid-template-columns: 1fr 1fr;
	}
	&.grid-1-2 {
		grid-template-columns: 1fr 2fr;
	}
	&.grid-1-3 {
		grid-template-columns: 1fr 3fr;
	}
	&.grid-1-4 {
		grid-template-columns: 1fr 4fr;
	}
	&.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-1 {
		row-gap: 1em;
	}
	&.row-gap-2 {
		row-gap: 2em;
	}
	&.row-gap-3 {
		row-gap: 3em;
	}
	&.row-gap-4 {
		row-gap: 4em;
	}
	&.row-gap-5 {
		row-gap: 5em;
	}
	&.row-gap-6 {
		row-gap: 6em;
	}
	&.row-gap-7 {
		row-gap: 7em;
	}
	&.row-gap-half {
		row-gap: 0.5em;
	}
	&.grid-auto-rows-1 {
		grid-auto-rows: 1fr;
	}
	&.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;
	}
	&.row-gap-1 {
		row-gap: 1em;
	}
	&.row-gap-2 {
		row-gap: 2em;
	}
	&.row-gap-3 {
		row-gap: 3em;
	}
	&.row-gap-4 {
		row-gap: 4em;
	}
	&.row-gap-5 {
		row-gap: 5em;
	}
	&.row-gap-6 {
		row-gap: 6em;
	}
	&.row-gap-7 {
		row-gap: 7em;
	}
	&.row-gap-half {
		row-gap: 0.5em;
	}
	&.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: flex-end;
	}
	.justify-self-center {
		justify-self: center;
	}
	.flex-item-full {
		flex: 1 1 100%;
	}

}
.object-cover {
	object-fit: cover;
}
.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%;
		}
	}
}
.square-image,
.four-three-image {
	overflow: hidden;
	display: flex;
	justify-content: center;
	align-items: center;
	picture {
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		height: 100%;
		img {
			object-fit: cover;
			object-position: center;
			width: 100%;
			height: 100%;
		}
	}
}
.square-image {
	aspect-ratio: 1 / 1;
}
.four-three-image {
	aspect-ratio: 4 / 3;
}
.circle-icon,
.square-icon {
	--foreground-color: var(--cyb-dark);
	--background-color: color-mix(in oklab, var(--foreground-color) 10%, transparent);
	--background-color-fallback: var(--cyb-blue-light);
	display: flex;
	justify-content: center;
	align-items: center;
	width: 4em;
	height: 4em;
	overflow: visible;
	background-color: var(--background-color-fallback);
	background-color: var(--background-color);
	color: var(--foreground-color);
	&.icon-outline {
		background-color: transparent;
		border: 2px solid var(--foreground-color);
		svg {
			path {
				fill: var(--foreground-color);
			}
		}
	}
	&.color-reverse {
		background-color: var(--foreground-color);
		color: var(--cyb-white);
		svg {
			path {
				fill: var(--cyb-white);
			}
		}
		&.icon-outline {
			background-color: transparent;
			border-color: var(--cyb-white);
		}
	}
	&.icon-orange {
		--foreground-color: var(--cyb-orange);
		--background-color: var(--cyb-orange-light);
		--background-color-fallback: var(--cyb-orange-light);
	}
	&.icon-orange-light {
		--foreground-color: var(--cyb-orange);
		--background-color: color-mix(in oklab, var(--foreground-color) 20%, transparent);
		--background-color-fallback: var(--cyb-orange-light);
	}
	&.icon-green {
		--foreground-color: var(--cyb-success);
		--background-color-fallback: var(--cyb-success-light);
	}
	&.icon-blue {
		--foreground-color: var(--cyb-blue);
		--background-color-fallback: var(--cyb-blue-light);
	}
	&.icon-white {
		--foreground-color: var(--cyb-white);
		--background-color-fallback: var(--white-10);
	}
	&.small-icon {
		width: 2em;
		height: 2em;
		svg {
			width: 1.5em;
			height: 1.5em;
		}
	}
	svg {
		width: 2.5em;
		height: 2.5em;
		overflow: visible;
		path {
			fill: var(--foreground-color);
		}
	}
}
.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;
	&.pill-primary {
		background-color: var(--cyb-primary-light);
		color: var(--cyb-primary);
		svg path {
			fill: var(--cyb-primary);
		}
	}
	&.pill-default {
		background-color: var(--cyb-grey-light);
		color: var(--cyb-grey-dark);
		svg path {
			fill: var(--cyb-grey-dark);
		}
	}
	&.pill-white {
		background-color: var(--cyb-white);
		color: var(--cyb-grey-dark);
		svg path {
			fill: var(--cyb-grey-dark);
		}
	}
	&.pill-orange {
		background-color: var(--cyb-orange);
		color: var(--cyb-black);
		svg path {
			fill: var(--cyb-black);
		}
	}
	&.pill-outline {
		background-color: transparent;
		outline: 1px solid var(--cyb-grey-middle);
		color: var(--cyb-grey-dark);
	}
	&.pill-p-1 {
		padding: 0.5em 1em;
	}
}
.ul-arrow-after {
	> li:not(:last-child) {
		position: relative;
		margin-right: 1.5em;
		&::after {
			content: "→";
			position: absolute;
			top: 50%;
			right: -1.5em;
			transform: translateY(-50%);
		}
	}
}
.icon-list {
	display: flex;
	flex-direction: column;
	gap: 1em;
	li {
		&:not(:last-child) {
			border-bottom: 1px solid var(--cyb-grey-middle);
			padding-bottom: 1em;
		}
		figure.square-icon {
			font-size: 0.75em;
		}
	}
}
.o-80 {
	opacity: 0.8;
}
.o-60 {
	opacity: 0.6;
}
a {
	&.normalize-link {
		color: inherit;
		&:hover,
		&:focus,
		&:active {
			color: inherit;
			text-decoration: underline;
		}
	}
	&.no-focus-outline {
		&:focus {
			outline: none;
		}
	}
}
.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;
		}
		&.card-primary {
			background-color: var(--cyb-orange);
			border-color: var(--cyb-orange);
			color: var(--cyb-white);
			.black-60 {
				color: var(--white-60);
			}
			.text-warning {
				color: var(--cyb-white) !important;
			}
			.btn-outline-orange {
				&:hover,
				&:focus,
				&:active,
				&:active:focus {
					color: var(--cyb-orange);
					background-color: var(--cyb-white);
					background-color: color-mix(in oklab, var(--cyb-white) 90%, transparent);
					svg {
						path {
							fill: var(--cyb-orange);
						}
					}
				}
			}
		}
		&.card-secondary {
			background-color: var(--cyb-primary-light);
			background-color: color-mix(in oklab, var(--cyb-primary) 5%, transparent);
			border-color: var(--cyb-primary);
			border-color: color-mix(in oklab, var(--cyb-primary) 20%, transparent);
		}
		&.card-secondary-orange {
			background-color: var(--cyb-orange-light);
			background-color: color-mix(in oklab, var(--cyb-orange) 5%, transparent);
			border-color: var(--cyb-orange);
			border-color: color-mix(in oklab, var(--cyb-orange) 20%, transparent);
		}
	}
}
.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;
}
.cyb-box-shadow {
	-webkit-box-shadow: var(--cyb-box-shadow);
	box-shadow: var(--cyb-box-shadow);
}
.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],select[required],textarea[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;
	}
	.resize-none {
		resize: none;
	}
}
.rounded-form {
	.form-control {
		border-radius: 0.5em;
		border-color: var(--cyb-grey-middle);
		box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 1px 3px 0px, rgba(0, 0, 0, 0.1) 0px 1px 2px -1px;
		padding: 0.75em 1em;
	}
	select.form-control {
		padding: 0.5em 1em;
	}
	label {
		&:has(> input[type="checkbox"]) {
			cursor: pointer;
			border: 1px solid var(--cyb-grey-middle);
			border-radius: 0.5em;
			padding: 0.75em 1em;
			font-weight: 400;
			color: var(--black-80);
		}
	}
}
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: 2.5em;
			font-weight: 900;
			text-align: left;
			color: var(--cyb-blue);
		}
		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);
	contain: layout;
	strong {
		color: var(--cyb-grey-medium);
		text-align: center;
		font-size: 1.25em;
		font-weight: 400;
		line-height: 1.5;
	    display: block;
		min-height: 24px;
	}
	#trusted-by-content {
		#trusted-by-logos {
			--flex-gap: 5em;
			display: flex;
			justify-content: center;
			align-items: center;
			gap: var(--flex-gap);
			width: 100%;
			min-height: 5em;
			.logo-group {
				flex: 1;
				display: flex;
				align-items: center;
				gap: var(--flex-gap);
				min-height: 5em;
				&: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;
					max-width: 100%;
					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;
					&:not(.product-image-standalone) {
						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;
				&.product-image-standalone {
					justify-content: center;
					align-items: center;
					padding: 2em;
					@media (min-width: 992px) {
						height: calc(300px + 4em);
					}
				}
				&:not(.product-image-standalone) {
					aspect-ratio: 16 / 10;
					overflow: hidden;
					img {
						object-fit: cover;
						object-position: center;
						transform: translateZ(0);
						backface-visibility: hidden;
						will-change: transform;
					}
				}
			}
			.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: start;
					gap: 1em;
					.fa-check {
						color: var(--cyb-success-bright);
						line-height: inherit;
					}
				}
			}
		}
		.product-buttons {
			display: flex;
			flex-wrap: wrap;
			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;
				min-width: 160px;
				&.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;
		}
	}
}
.inline-container {
	container-type: inline-size;
}
.three-column-grid,
.four-column-grid {
	grid-template-columns: 1fr;
}
.five-column-grid {
	grid-template-columns: repeat(2, 1fr);
}
.three-column-grid,
.four-column-grid,
.five-column-grid {
	&.border-cells {
		overflow: hidden;
		border: 1px solid var(--cyb-grey-middle);
		& > * {
			border: none;
			box-shadow: 1px 1px 0 0 var(--cyb-grey-middle);
		}
	}
}
.max-small-width {
	max-width: 400px;
}
@container (min-width: 600px) {
	.three-column-grid,
	.four-column-grid,
	.five-column-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}
@container (min-width: 800px) {
	.five-column-grid {
		grid-template-columns: repeat(4, 1fr);
	}
}
@container (min-width: 1000px) {
	.three-column-grid {
		grid-template-columns: repeat(6, 1fr);
	}
	.four-column-grid {
		grid-template-columns: repeat(8, 1fr);
	}
	.five-column-grid {
		grid-template-columns: repeat(10, 1fr);
	}
	.three-column-grid,
	.four-column-grid,
	.five-column-grid {
		> * {
			grid-column: span 2;
		}
	}
	.managed-width {
		max-width: 75%;
	}
}
@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;
	}
	.max-middle-width {
		width: 1200px;
	}
}
@media (min-width: 992px) {
	.max-medium-width {
		width: 892px;
	}
}
@media (max-width: 1500px) {
	.max-large-width {
		width: 100%;
	}
	.max-middle-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-section {
		.flex-lg-1 {
			flex: 1 1 100%;
		}
		.shrink-lg {
			flex-shrink: 1;
		}
	}
	.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) {
	.max-medium-width {
		width: 100%;
	}
	.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;
		}
	}
	.flex-section {
		&.align-start-md {
			align-items: flex-start;
		}
	}
	.grid-section {
		&:not(.no-stack-md) {
			grid-template-columns: 1fr !important;
		}
		&.align-start-md {
			align-items: start;
		}
		> .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-wrapper {
			width: 100%;
			overflow-x: auto;
			-webkit-overflow-scrolling: touch;
			#comparison-table {
				width: 100%;
				th:first-child,
				td:first-child {
					position: sticky;
					left: 0;
					background-color: var(--cyb-white);
					z-index: 2;
					&::after {
						content: "";
						position: absolute;
						top: 0;
						right: -5px;
						bottom: 0;
						width: 5px;
						box-shadow: inset 4px 0 4px -4px rgba(0, 0, 0, 0.15);
						pointer-events: none;
					}
				}
				thead,
				tbody {
					th,
					td {
						word-break: keep-all;
						white-space: nowrap;
					}
				}
			}
		}
		#comparison-table {
			thead,
			tbody {
				th,
				td {
					padding: 0.5em 1em;
				}
			}
		}
	}
}
@media (max-width: 768px) {
	.text-xs-sm {
		font-size: 0.625em;
	}
	.flex-md-wrap {
		&:not(.no-stack-md) {
			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;
		}
	}
	.flex-section {
		&.stack-sm {
			flex-direction: column;
		}
		&.align-stretch-sm {
			align-items: stretch;
		}
		> .align-self-start-sm {
			align-self: flex-start;
		}
	}
	.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;
		}
	}
	.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;
		}
	}
}