*,
*::before,
*::after {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

:root {
	--white: #ffffff;
	--off-white: #f3f3f3;
	--near-black: #0a0a0b;
	--teal: #14b8a6;
	--teal-hover: #0d9488;
	--blue: #4976eb;
	--slate: #4c608a;

	--black: #000000;
	--dark-2: #171b25;
	--dark-3: #1e2432;
	--dark-5: #292b2f;

	--grey-1: #727272;
	--grey-3: #919191;
	--grey-4: #b9b9b9;
	--grey-7: #f2f2f2;

	--white--8: rgba(255, 255, 255, 0.08);
	--white--10: rgba(255, 255, 255, 0.1);
	--white--15: rgba(255, 255, 255, 0.15);
	--white--20: rgba(255, 255, 255, 0.2);
	--white--30: rgba(255, 255, 255, 0.3);
	--white--40: rgba(255, 255, 255, 0.4);
	--white--50: rgba(255, 255, 255, 0.5);
	--white--60: rgba(255, 255, 255, 0.6);
	--white--70: rgba(255, 255, 255, 0.7);
	--white--80: rgba(255, 255, 255, 0.8);
	--white--90: rgba(255, 255, 255, 0.9);

	/* Legacy aliases for unused components */
	--white-90: var(--white--90);
	--white-70: var(--white--70);
	--white-50: var(--white--50);
	--white-30: var(--white--30);
	--white-15: var(--white--15);
	--white-08: var(--white--8);

	--teal--6: color-mix(in srgb, var(--teal) 6%, transparent);

	--font: 'Maven Pro', system-ui, Arial, sans-serif;
	--wrap: 1180px;
	--gutter: 40px;
	--r-pill: 48px;

	--space-sm: 24px;
	--space-md: 34px;
	--space-xl: 90px;
	--section-pad: 90px;
	--section-title-gap: 56px;
	--radius-card: 8px;
	--grid-gap: 24px;

	--track-display: 0.08em;
	--track-meta: 0.16em;
	--text-meta: 12px;
	--text-body: 16px;
	--text-body-lh: 1.625;
	--hairline: 1px solid var(--white--8);
	--inset-gutter: max(var(--gutter), calc((100vw - var(--wrap)) / 2 + var(--gutter)));
	--card-wash: linear-gradient(135deg,
			color-mix(in srgb, var(--teal) 10%, transparent),
			transparent 42%);

	--marquee-logo-height: 32px;
	--marquee-padding-block: 28px;
	--marquee-height: calc(var(--marquee-logo-height) + var(--marquee-padding-block) + var(--marquee-padding-block));

	interpolate-size: allow-keywords;
}

html {
	scroll-behavior: smooth;
	-webkit-font-smoothing: antialiased;
	background: var(--black);
	color: var(--white);
}

body {
	font-family: var(--font);
	font-size: 14px;
	line-height: 22px;
	font-weight: 400;
	color: var(--white);
	background: var(--black);
	/* clip (not hidden) so position:sticky keeps working */
	overflow-x: clip;
}

.wrap {
	max-width: var(--wrap);
	margin: 0 auto;
	padding: 0 var(--gutter);
}

/* ── Buttons ── */

#page-container .btn.btn.btn.btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-family: var(--font) !important;
	font-size: 14px !important;
	line-height: 18px !important;
	letter-spacing: 0.2em !important;
	font-weight: 500 !important;
	text-transform: uppercase !important;
	text-decoration: none !important;
	padding: 13px 32px !important;
	border-radius: var(--r-pill) !important;
	border: 1px solid var(--white--50) !important;
	color: var(--white) !important;
	background: transparent !important;
	cursor: pointer;
	will-change: color, border-color, background;
	backdrop-filter: blur(6px);
	transition:
		color 0.5s ease,
		border-color 0.5s ease,
		background 0.5s ease;
}

#page-container .btn-outline.btn-outline.btn-outline.btn-outline:hover {
	color: var(--teal) !important;
	background: color-mix(in srgb, var(--near-black) 70%, transparent) !important;
	border-color: color-mix(in srgb, var(--teal-hover) 20%, var(--white--15)) !important;
}

#page-container .btn-fill.btn-fill.btn-fill.btn-fill {
	background: var(--teal) !important;
	border-color: var(--teal) !important;
	color: var(--near-black) !important;
}

#page-container .btn-fill.btn-fill.btn-fill.btn-fill:hover {
	background: var(--teal-hover) !important;
	border-color: var(--teal-hover) !important;
	color: var(--black) !important;
}

/* ── Sections ── */

.section {
	padding: var(--section-pad) 0;
	border-bottom: var(--hairline);
	position: relative;
}

.section:last-of-type {
	/* border-bottom: none; */
	border-bottom: var(--hairline);
}

.seyond-refresh.seyond-refresh.seyond-refresh.seyond-refresh,
.seyond-refresh--divider.seyond-refresh--divider.seyond-refresh--divider.seyond-refresh--divider {
	background-color: transparent !important;
}

.seyond-refresh.seyond-refresh.seyond-refresh.seyond-refresh :is(h1, h2, h3, h4, h5, h6),
.seyond-refresh--divider.seyond-refresh--divider.seyond-refresh--divider.seyond-refresh--divider :is(h1, h2, h3, h4, h5, h6) {
	color: var(--white) !important;
}

.seyond-refresh.seyond-refresh.seyond-refresh.seyond-refresh :is(p, li, .et_pb_text),
.seyond-refresh--divider.seyond-refresh--divider.seyond-refresh--divider.seyond-refresh--divider :is(p, li, .et_pb_text) {
	color: var(--white--70) !important;
}

/* Hairline divider between sections, matching the border-bottom every
   .section gets on the homepage. Divi sections can carry their own border
   settings, so this is hardened the same way as everything above. */
.seyond-refresh--divider.seyond-refresh--divider.seyond-refresh--divider.seyond-refresh--divider {
	border-bottom: var(--hairline) !important;
}

/* .seyond-refresh--divider.seyond-refresh--divider.seyond-refresh--divider.seyond-refresh--divider:last-child {
	border-bottom: none !important;
} */

.section-title,
.section-title.section-title.section-title.section-title :is(h1, h2, h3, h4, h5, h6) {
	font-size: clamp(28px, 4vw, 40px) !important;
	line-height: 1.12 !important;
	font-weight: 400 !important;
	letter-spacing: var(--track-display) !important;
	text-transform: uppercase !important;
	color: var(--white) !important;
}

.section-title {
	text-align: center;
	text-wrap: balance;
	margin-bottom: var(--section-title-gap);
}

.section-title--start {
	text-align: left;
}

.section-title--start.section-title--start.section-title--start.section-title--start :is(h1, h2, h3, h4, h5, h6) {
	text-align: left !important;
}

.section-title-accent,
.section-title-accent.section-title-accent.section-title-accent.section-title-accent :is(h1, h2, h3, h4, h5, h6, span) {
	color: var(--teal) !important;
}

.section-cta {
	display: flex;
	justify-content: center;
	margin-top: var(--space-sm);
}

/* Align full-bleed panels with the centered .wrap column */
.inset-gutter-left {
	padding-left: var(--inset-gutter);
}

.inset-gutter-right {
	padding-right: var(--inset-gutter);
}

/* ── Surfaces ── */

.card.card.card.card {
	background: var(--card-wash), var(--dark-2) !important;
	border: var(--hairline) !important;
	border-radius: var(--radius-card) !important;
}

.card--accent.card--accent.card--accent.card--accent {
	border-color: color-mix(in srgb, var(--teal-hover) 10%, var(--white--8)) !important;
}

.card--pad.card--pad.card--pad.card--pad {
	padding: var(--space-md) !important;
}

.media-cover {
	overflow: hidden;
	background: var(--dark-3);
}

.media-cover>img,
.media-cover>video {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* ── Video modules (.seyond-video) ── */

.seyond-video {
	position: relative;
	padding: 6px !important;
	background: var(--card-wash), var(--dark-2) !important;
	border: var(--hairline) !important;
	border-radius: calc(var(--radius-card) + 6px) !important;
	box-shadow:
		0 24px 60px rgba(0, 0, 0, 0.45),
		0 0 90px color-mix(in srgb, var(--teal) 8%, transparent);
}

.seyond-video::before {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
	box-shadow: inset 0 1px 0 var(--white--10);
	pointer-events: none;
}

.seyond-video .et_pb_video_box {
	display: block;
	border-radius: var(--radius-card);
	overflow: hidden;
	background: var(--dark-3);
}

.seyond-video .et_pb_video_box video {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 9;
	object-fit: cover;
}

@supports (animation-timeline: view()) {
	@media (prefers-reduced-motion: no-preference) {

		.seyond-video--skew,
		.seyond-video--skew-left,
		.seyond-video--skew-right {
			--skew-dir: 1;
			animation: seyond-video-reveal linear both;
			animation-timeline: view();
			animation-range: entry 130% exit -80%;
		}

		.seyond-video--skew-right {
			--skew-dir: 1;
		}

		/* Smart alternation: flip direction in even rows. */
		.et_pb_row:nth-of-type(even) .seyond-video--skew {
			--skew-dir: 1;
		}

		.et_pb_row:nth-of-type(even) .seyond-video--skew-left {
			--skew-dir: -1;
		}

		@keyframes seyond-video-reveal {
			from {
				opacity: 0.4;
				transform: perspective(1000px) rotateY(0deg) rotateX(0deg);
			}

			to {
				opacity: 1;
				transform:
					perspective(1000px) rotateY(calc(var(--skew-dir) * 10deg)) rotateX(2deg);
			}
		}
	}
}

.seyond-video--overlay {
	background: radial-gradient(circle at 50% 50%, #131922 0%, #0b0e14 100%) !important;
	overflow: hidden;
	box-shadow: 0 24px 60px rgba(0, 0, 0, 0.45);
}

.seyond-video--overlay::before,
.seyond-video--overlay::after {
	content: "";
	position: absolute;
	inset: 6px;
	border-radius: var(--radius-card);
	mask-image: linear-gradient(to top, #000 0%, rgba(0, 0, 0, 0.55) 45%, transparent 85%);
	-webkit-mask-image: linear-gradient(to top, #000 0%, rgba(0, 0, 0, 0.55) 45%, transparent 85%);
	box-shadow: none;
	pointer-events: none;
	z-index: 2;
	transition: opacity 0.4s ease;
}

.seyond-video--overlay::before {
	background:
		linear-gradient(color-mix(in srgb, var(--teal) 12%, transparent) 1px, transparent 1px),
		linear-gradient(90deg, color-mix(in srgb, var(--teal) 12%, transparent) 1px, transparent 1px),
		radial-gradient(circle at 50% 115%, color-mix(in srgb, var(--teal) 48%, transparent), transparent 70%);
	background-size: 30px 30px, 30px 30px, 100% 100%;
}

.seyond-video--overlay::after {
	background: radial-gradient(circle at 50% 115%, color-mix(in srgb, var(--teal) 60%, transparent), transparent 70%);
	opacity: 0;
}

.seyond-video--overlay:hover::after {
	opacity: 1;
}

.seyond-video--overlay .et_pb_video_box {
	position: relative;
	z-index: 1;
}

/* ── Play overlay (.seyond-video--play-overlay) ── */
/* Scrim + button live on .et_pb_video_box's pseudo-elements: the wrapper's own
   ::before/::after are already claimed by .seyond-video and .seyond-video--overlay. */

@property --play-glow-alpha {
	syntax: "<number>";
	inherits: false;
	initial-value: 0.1;
}

@property --play-scrim-alpha {
	syntax: "<number>";
	inherits: false;
	initial-value: 0.62;
}

@property --play-vignette-alpha {
	syntax: "<number>";
	inherits: false;
	initial-value: 0.48;
}

@property --play-wash-alpha {
	syntax: "<number>";
	inherits: false;
	initial-value: 0.16;
}

.seyond-video--play-overlay:not(.seyond-video--autoplay):not(.is-playing) {
	cursor: pointer;
}

.seyond-video--play-overlay:not(.seyond-video--autoplay):not(.is-playing) video {
	pointer-events: none;
}

.seyond-video--play-overlay:not(.seyond-video--autoplay) .et_pb_video_box {
	position: relative;
}

.seyond-video--play-overlay:not(.seyond-video--autoplay) .et_pb_video_box::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	border-radius: inherit;
	pointer-events: none;
	--play-glow-alpha: 0.1;
	--play-scrim-alpha: 0.62;
	--play-vignette-alpha: 0.48;
	--play-wash-alpha: 0.16;
	background:
		radial-gradient(circle at 50% 50%,
			hsl(from var(--teal) h s l / var(--play-glow-alpha)) 0,
			transparent 34%),
		linear-gradient(hsl(from var(--teal) h s l / var(--play-wash-alpha)),
			hsl(from var(--teal) h s l / var(--play-wash-alpha))),
		radial-gradient(ellipse at center,
			transparent 30%,
			hsl(from var(--near-black) h s l / var(--play-vignette-alpha)) 100%),
		linear-gradient(to bottom,
			hsl(from var(--dark-2) h s l / 0.18) 0%,
			hsl(from var(--dark-2) h s l / var(--play-scrim-alpha)) 100%);
	transition:
		opacity 0.3s ease,
		visibility 0.3s,
		--play-glow-alpha 0.55s ease,
		--play-scrim-alpha 0.55s ease,
		--play-vignette-alpha 0.55s ease,
		--play-wash-alpha 0.55s ease;
}

.seyond-video--play-overlay:not(.seyond-video--autoplay):not(.is-playing) .et_pb_video_box::before {
	pointer-events: auto;
}

/* Play button — ring matches .btn-outline; triangle is a sharp equilateral clip-path. */
.seyond-video--play-overlay:not(.seyond-video--autoplay) .seyond-video__play {
	position: absolute;
	inset: 0;
	margin: auto;
	display: grid;
	place-items: center;
	width: 48px;
	height: 48px;
	z-index: 2;
	border-radius: 50%;
	border: 1px solid var(--white--30);
	color: var(--white);
	background: transparent;
	color: var(--white);
	background:
		color-mix(in srgb, var(--near-black) 30%, transparent) !important;
	;
	backdrop-filter: blur(2px);
	pointer-events: none;
	will-change: color, border-color, background, backdrop-filter;
	transition:
		opacity 0.3s ease,
		visibility 0.3s,
		color 0.5s ease,
		border-color 0.5s ease,
		background 0.5s ease,
		backdrop-filter 0.5s ease;
}

/* Equilateral play triangle (side = height, width = √3/2 · side), optically nudged right. */
.seyond-video--play-overlay:not(.seyond-video--autoplay) .seyond-video__play::before {
	content: "";
	width: 12px;
	height: calc(12px * 2 / 1.7320508);
	background: currentColor;
	clip-path: polygon(0 0, 100% 50%, 0 100%);
	translate: 1px 0;
}

.seyond-video--play-overlay:not(.seyond-video--autoplay):not(.is-playing):hover .et_pb_video_box::before {
	--play-glow-alpha: 0.3;
	--play-scrim-alpha: 0.38;
	--play-vignette-alpha: 0.28;
	--play-wash-alpha: 0.22;
}

.seyond-video--play-overlay:not(.seyond-video--autoplay):not(.is-playing):hover .seyond-video__play {
	color: var(--teal);
	background: color-mix(in srgb, var(--near-black) 72%, var(--teal) 8%) !important;
	border-color: var(--teal);
	backdrop-filter: blur(4px);
}

.seyond-video--play-overlay.is-playing .et_pb_video_box::before,
.seyond-video--play-overlay.is-playing .seyond-video__play {
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
}

/* ── Type ── */

.meta-label,
.meta-label.meta-label.meta-label.meta-label :is(h1, h2, h3, h4, h5, h6, p, span) {
	font-size: var(--text-meta) !important;
	font-weight: 500 !important;
	letter-spacing: var(--track-meta) !important;
	text-transform: uppercase !important;
	color: var(--teal) !important;
	/* text-wrap: balance; */
}

.seyond-video_label {
	position: relative;
	z-index: 3;
	width: fit-content;
	max-width: calc(100% - 32px);
	margin: -30px 0 14px 16px !important;
	padding: 7px 12px 6px !important;
	border: 1px solid var(--white--30);
	--inset: 4px;
	/* border-shape: polygon(0 0, 100% 0, calc(100% - var(--inset)) 100%, 0 100%) */
	border-shape: polygon(0 0, calc(100% - var(--inset)) 0, calc(100% + var(--inset)) 100%, 0 100%);
	background: color-mix(in srgb, var(--near-black) 30%, transparent) !important;
	-webkit-backdrop-filter: blur(2px);
	backdrop-filter: blur(2px);
	pointer-events: none;
	transition:
		border-color 0.4s ease,
		background 0.4s ease,
		transform 0.4s ease;
}

.seyond-video_label,
.seyond-video_label .et_pb_text_inner,
.seyond-video_label :is(h1, h2, h3, h4, h5, h6, p) {
	text-align: left !important;
}

.seyond-video_label .et_pb_text_inner {
	position: relative;
}

.seyond-video_label.seyond-video_label.seyond-video_label.seyond-video_label :is(h1, h2, h3, h4, h5, h6) {
	font-size: var(--text-meta) !important;
	line-height: 1.2 !important;
	font-weight: 500 !important;
	letter-spacing: var(--track-meta) !important;
}

.seyond-video:hover+.seyond-video_label {
	transform: translateY(-2px);
	border-color: var(--teal);
	background: color-mix(in srgb, var(--near-black) 72%, var(--teal) 8%) !important;
}

.text-body-muted,
.text-body-muted.text-body-muted.text-body-muted.text-body-muted :is(p, span) {
	font-size: var(--text-body) !important;
	line-height: var(--text-body-lh) !important;
	color: var(--white--70) !important;
}

.link-quiet,
.link-quiet a {
	color: inherit;
	text-decoration: none;
	transition: color 0.4s ease;
}

.link-quiet.link-quiet.link-quiet.link-quiet:hover,
.link-quiet.link-quiet.link-quiet.link-quiet a:hover {
	color: var(--teal) !important;
}

/* ── Arrow buttons (carousel) — kept for classic News.svelte ── */

.arrow-btn {
	--arrow-stem: 32px;
	--arrow-stem-hover: 4em;
	--arrow-chev: 6px;
	--arrow-mark: calc(var(--arrow-stem) + var(--arrow-chev));
	--arrow-btn-w: 75px;
	width: var(--arrow-btn-w);
	height: 36px;
	border-radius: 36px;
	border: 1px solid var(--white--30);
	background: transparent;
	color: var(--white);
	display: inline-flex;
	align-items: center;
	justify-content: flex-start;
	padding-left: calc((var(--arrow-btn-w) - var(--arrow-mark)) / 2);
	box-sizing: border-box;
	cursor: pointer;
	transition:
		border-color 0.4s ease,
		color 0.4s ease,
		background 0.4s ease;
	flex-shrink: 0;
}

.arrow-btn:hover {
	border-color: var(--teal);
	color: var(--teal);
}

.arrow-btn.prev {
	/* justify-content: flex-start; */
	padding-left: 0;
	padding-right: calc((var(--arrow-btn-w) - var(--arrow-mark)) / 2);
}

.arrow-mark {
	display: inline-flex;
	align-items: center;
	gap: 0;
}

.arrow-btn.prev .arrow-mark {
	flex-direction: row-reverse;
}

.arrow-stem {
	display: block;
	width: var(--arrow-stem-hover);
	height: 1px;
	background: currentColor;
	flex-shrink: 0;
	transform: scaleX(calc(var(--arrow-stem) / var(--arrow-stem-hover)));
	transform-origin: left center;
	transition: transform 0.5s ease;
}

.arrow-btn:hover .arrow-stem {
	transform: scaleX(1);
}

.arrow-btn.prev .arrow-stem {
	transform-origin: right center;
}

.arrow-chev {
	display: block;
	width: var(--arrow-chev);
	height: 11px;
	flex-shrink: 0;
	margin-left: -5px;
}

.arrow-btn.prev .arrow-chev {
	transform: scaleX(-1);
	margin-left: 0;
	margin-right: -5px;
}

@media (max-width: 900px) {
	:root {
		--gutter: 8vw;
		--section-pad: 56px;
		--section-title-gap: 36px;
	}
}

/*
 * Tables
 *
 * `.seyond-table--key-value`: label/value rows (/applications/railway/)
 * `.seyond-table--comparison`: decision factor + three compared cols (/solid-state-lidar).
 */

.seyond-refresh .seyond-table.seyond-table,
.seyond-refresh .seyond-table.seyond-table .et_pb_module_inner,
.seyond-refresh .seyond-table.seyond-table .dipi-table-maker,
.seyond-refresh .seyond-table.seyond-table .dipi_use_parent_button_icon {
	border: none !important;
	background: transparent !important;
	box-shadow: none !important;
}

.seyond-refresh .seyond-table.seyond-table table {
	position: relative;
	width: 100%;
	border-collapse: collapse;
	border: none !important;
	border-top: var(--hairline) !important;
	font-family: var(--font);
	font-variant-numeric: tabular-nums;
}

.seyond-refresh .seyond-table.seyond-table .dipi-table-maker tr th,
.seyond-refresh .seyond-table.seyond-table .dipi-table-maker tr td {
	padding: 16px 18px !important;
	border: none !important;
	border-width: 0 0 1px !important;
	border-style: none none solid !important;
	border-color: transparent transparent var(--white--8) !important;
	border-radius: 0 !important;
	background: transparent !important;
	text-align: left !important;
	vertical-align: middle;
	overflow: visible !important;
	transition: background 0.35s ease;
}

.seyond-refresh .seyond-table.seyond-table .dipi-table-maker tr:hover th,
.seyond-refresh .seyond-table.seyond-table .dipi-table-maker tr:hover td {
	background: var(--teal--6) !important;
}

.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr:hover th:first-child,
.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr:hover td:first-child {
	background: linear-gradient(90deg, transparent, var(--teal--6)) !important;
}

.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr:hover th:last-child,
.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr:hover td:last-child {
	background: linear-gradient(90deg, var(--teal--6), transparent) !important;
}

.seyond-refresh .seyond-table.seyond-table .dipi-cell {
	height: auto !important;
	padding: 0 !important;
	margin: 0 !important;
	border: none !important;
	background: transparent !important;
	box-shadow: none !important;
}

.seyond-refresh .seyond-table.seyond-table .dipi_table_item-content-wrapper,
.seyond-refresh .seyond-table.seyond-table .dipi_table_item-content,
.seyond-refresh .seyond-table.seyond-table .dipi-content-wrapper,
.seyond-refresh .seyond-table.seyond-table .dipi-content-text {
	padding: 0 !important;
	margin: 0 !important;
	border: none !important;
	background: transparent !important;
	box-shadow: none !important;
	align-items: flex-start !important;
	justify-content: flex-start !important;
}

.seyond-refresh .seyond-table.seyond-table .dipi-content-heading,
.seyond-refresh .seyond-table.seyond-table .dipi-content-heading span {
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
	background: transparent !important;
	font-family: var(--font) !important;
	line-height: 1.4 !important;
	text-align: inherit !important;
}

/* DIPI injects a copy of each column heading into its mobile cells. */
.seyond-refresh .seyond-table.seyond-table .dipi-col-header {
	display: none !important;
	height: 0 !important;
	overflow: hidden !important;
	padding: 0 !important;
	margin: 0 !important;
}

/* Key/value table: column 1 = label, column 2 = value. */
.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr th:first-child,
.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr td:first-child {
	width: 62%;
	padding-right: 28px !important;
}

.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr th:last-child,
.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr td:last-child {
	width: 42%;
	padding-left: 12px !important;
	text-align: right !important;
}

.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr th:first-child,
.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr td:first-child,
.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr th:first-child .dipi-content-heading,
.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr td:first-child .dipi-content-heading,
.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr th:first-child .dipi-content-heading span,
.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr td:first-child .dipi-content-heading span {
	font-size: 12px !important;
	font-weight: 500 !important;
	letter-spacing: 0.04em !important;
	color: var(--white--50) !important;
	text-transform: uppercase !important;
	text-align: left !important;
	text-wrap: balance;
}

.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr th:last-child,
.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr td:last-child,
.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr th:last-child .dipi-content-heading,
.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr td:last-child .dipi-content-heading,
.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr th:last-child .dipi-content-heading span,
.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr td:last-child .dipi-content-heading span,
.seyond-refresh .seyond-table:not(.seyond-table--comparison) .sy-spec-value,
.seyond-refresh .seyond-table:not(.seyond-table--comparison) .sy-spec-value .dipi-content-heading,
.seyond-refresh .seyond-table:not(.seyond-table--comparison) .sy-spec-value .dipi-content-heading span {
	font-size: 15px !important;
	font-weight: 500 !important;
	letter-spacing: 0.01em !important;
	color: var(--white) !important;
	text-transform: none !important;
	text-align: right !important;
}

.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr th:last-child .dipi_table_item-content,
.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr td:last-child .dipi_table_item-content,
.seyond-refresh .seyond-table:not(.seyond-table--comparison) .sy-spec-value .dipi_table_item-content {
	align-items: flex-end !important;
	justify-content: flex-end !important;
}

.seyond-refresh .seyond-table--comparison.seyond-table--comparison table {
	table-layout: fixed;
	margin-bottom: 0;
}

.seyond-refresh .seyond-table--comparison.seyond-table--comparison .dipi-table-maker tr> :first-child {
	width: 22%;
}

.seyond-refresh .seyond-table--comparison.seyond-table--comparison .dipi-table-maker tr> :not(:first-child) {
	width: 26%;
}

.seyond-refresh .seyond-table--comparison.seyond-table--comparison .dipi-table-maker tbody tr> :first-child,
.seyond-refresh .seyond-table--comparison.seyond-table--comparison .dipi-table-maker tbody tr> :first-child .dipi-content-heading,
.seyond-refresh .seyond-table--comparison.seyond-table--comparison .dipi-table-maker tbody tr> :first-child .dipi-content-heading span {
	font-size: 11px !important;
	font-weight: 600 !important;
	letter-spacing: 0.05em !important;
	line-height: 1.35 !important;
	color: var(--white--50) !important;
	text-transform: uppercase !important;
	text-align: left !important;
	text-wrap: balance;
}

.seyond-refresh .seyond-table--comparison.seyond-table--comparison .dipi-table-maker tbody tr> :not(:first-child),
.seyond-refresh .seyond-table--comparison.seyond-table--comparison .dipi-table-maker tbody tr> :not(:first-child) .dipi-content-heading,
.seyond-refresh .seyond-table--comparison.seyond-table--comparison .dipi-table-maker tbody tr> :not(:first-child) .dipi-content-heading span {
	font-size: 14px !important;
	font-weight: 400 !important;
	letter-spacing: 0 !important;
	line-height: 1.5 !important;
	color: var(--white--80) !important;
	text-transform: none !important;
	text-align: left !important;
}

.seyond-refresh .seyond-table--comparison.seyond-table--comparison .dipi-table-maker thead th,
.seyond-refresh .seyond-table--comparison.seyond-table--comparison .dipi-table-maker thead th .dipi-content-heading,
.seyond-refresh .seyond-table--comparison.seyond-table--comparison .dipi-table-maker thead th .dipi-content-heading span {
	font-size: 11px !important;
	font-weight: 600 !important;
	letter-spacing: 0.05em !important;
	line-height: 1.35 !important;
	color: var(--white) !important;
	text-transform: uppercase !important;
	text-align: left !important;
}

.seyond-refresh .seyond-table--comparison.seyond-table--comparison .dipi-table-maker thead th {
	padding-top: 18px !important;
	padding-bottom: 18px !important;
	background: var(--teal--6) !important;
	vertical-align: bottom;
}

@media (max-width: 900px) {

	/*
	 * DIPI accordion collapses sibling cells below 767px. Both variants keep
	 * every cell visible and provide their own responsive layout.
	 */
	.seyond-refresh .seyond-table.seyond-table .dipi-table-maker[data-break="mobile"] .js-accordion:not(.opened)~td,
	.seyond-refresh .seyond-table.seyond-table .dipi-table-maker[data-break="mobile"] .js-accordion:not(.opened)~th {
		display: block !important;
		width: 100% !important;
		height: auto !important;
	}

	.seyond-refresh .seyond-table.seyond-table .dipi-table-maker tr:hover th,
	.seyond-refresh .seyond-table.seyond-table .dipi-table-maker tr:hover td {
		background: transparent !important;
	}

	.seyond-refresh .seyond-table.seyond-table .dipi-cell,
	.seyond-refresh .seyond-table.seyond-table .dipi_table_item-content-wrapper,
	.seyond-refresh .seyond-table.seyond-table .dipi_table_item-content,
	.seyond-refresh .seyond-table.seyond-table .dipi-content-wrapper,
	.seyond-refresh .seyond-table.seyond-table .dipi-content-text {
		width: 100% !important;
		align-items: flex-start !important;
		justify-content: flex-start !important;
	}

	/* Key/value rows stack their value beneath the label. */
	.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker table tbody {
		gap: 0 !important;
	}

	.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr {
		display: grid !important;
		grid-template-columns: 1fr !important;
		gap: 6px !important;
		padding: 16px 18px !important;
		border-bottom: var(--hairline) !important;
		transition: background 0.35s ease;
	}

	.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr:hover {
		background: linear-gradient(90deg, transparent, var(--teal--6) 50%, transparent) !important;
	}

	.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr:hover th,
	.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr:hover td,
	.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr:hover th:first-child,
	.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr:hover td:first-child,
	.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr:hover th:last-child,
	.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr:hover td:last-child {
		background: transparent !important;
	}

	.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr th,
	.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr td {
		display: block !important;
		width: 100% !important;
		height: auto !important;
		padding: 0 !important;
		border: none !important;
		background: transparent !important;
		text-align: left !important;
	}

	.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr th:first-child,
	.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr td:first-child,
	.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr th:first-child .dipi-content-heading,
	.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr td:first-child .dipi-content-heading,
	.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr th:first-child .dipi-content-heading span,
	.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr td:first-child .dipi-content-heading span {
		font-size: 11px !important;
		letter-spacing: 0.03em !important;
		line-height: 1.35 !important;
	}

	.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr th:last-child,
	.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr td:last-child,
	.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr th:last-child .dipi-content-heading,
	.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr td:last-child .dipi-content-heading,
	.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr th:last-child .dipi-content-heading span,
	.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr td:last-child .dipi-content-heading span,
	.seyond-refresh .seyond-table:not(.seyond-table--comparison) .sy-spec-value,
	.seyond-refresh .seyond-table:not(.seyond-table--comparison) .sy-spec-value .dipi-content-heading,
	.seyond-refresh .seyond-table:not(.seyond-table--comparison) .sy-spec-value .dipi-content-heading span {
		width: 100% !important;
		font-size: 14px !important;
		text-align: left !important;
	}

	.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr th:last-child .dipi_table_item-content,
	.seyond-refresh .seyond-table:not(.seyond-table--comparison) .dipi-table-maker tr td:last-child .dipi_table_item-content,
	.seyond-refresh .seyond-table:not(.seyond-table--comparison) .sy-spec-value .dipi_table_item-content {
		align-items: flex-start !important;
		justify-content: flex-start !important;
	}

	/* Each comparison row becomes a decision-factor card. */
	.seyond-refresh .seyond-table--comparison.seyond-table--comparison .dipi-table-maker thead {
		display: none !important;
	}

	.seyond-refresh .seyond-table--comparison.seyond-table--comparison .dipi-table-maker tbody,
	.seyond-refresh .seyond-table--comparison.seyond-table--comparison .dipi-table-maker tbody tr {
		display: block !important;
		width: 100% !important;
	}

	.seyond-refresh .seyond-table--comparison.seyond-table--comparison .dipi-table-maker tbody tr {
		padding: 20px 18px 18px !important;
		border-bottom: var(--hairline) !important;
		transition: background-color 0.35s ease;
	}

	.seyond-refresh .seyond-table--comparison.seyond-table--comparison .dipi-table-maker tbody tr:hover {
		background: var(--teal--6) !important;
	}

	.seyond-refresh .seyond-table--comparison.seyond-table--comparison .dipi-table-maker tbody tr>th,
	.seyond-refresh .seyond-table--comparison.seyond-table--comparison .dipi-table-maker tbody tr>td {
		display: block !important;
		width: 100% !important;
		height: auto !important;
		padding: 0 !important;
		border: none !important;
		background: transparent !important;
		text-align: left !important;
	}

	.seyond-refresh .seyond-table--comparison.seyond-table--comparison .dipi-table-maker tbody tr> :first-child {
		margin-bottom: 14px !important;
		padding-bottom: 12px !important;
		border-bottom: 1px solid var(--white--8) !important;
	}

	.seyond-refresh .seyond-table--comparison.seyond-table--comparison .dipi-table-maker tbody tr> :first-child,
	.seyond-refresh .seyond-table--comparison.seyond-table--comparison .dipi-table-maker tbody tr> :first-child .dipi-content-heading,
	.seyond-refresh .seyond-table--comparison.seyond-table--comparison .dipi-table-maker tbody tr> :first-child .dipi-content-heading span {
		font-size: 13px !important;
		color: var(--white) !important;
	}

	.seyond-refresh .seyond-table--comparison.seyond-table--comparison .dipi-table-maker tbody tr> :not(:first-child) {
		display: flex !important;
		flex-direction: column !important;
		align-items: flex-start !important;
		gap: 6px !important;
		padding: 14px 0 !important;
		position: relative !important;
	}

	.seyond-refresh .seyond-table--comparison.seyond-table--comparison .dipi-table-maker tbody tr> :not(:first-child) .dipi-col-header,
	.seyond-refresh .seyond-table--comparison.seyond-table--comparison .dipi-table-maker[data-break="mobile"] tbody tr> :not(:first-child) .dipi-col-header {
		display: block !important;
		position: static !important;
		inset: auto !important;
		top: auto !important;
		right: auto !important;
		bottom: auto !important;
		left: auto !important;
		width: auto !important;
		max-width: 100% !important;
		height: auto !important;
		overflow: visible !important;
		padding: 0 !important;
		margin: 0 !important;
		border: none !important;
		background: transparent !important;
		box-shadow: none !important;
		z-index: auto !important;
	}

	.seyond-refresh .seyond-table--comparison.seyond-table--comparison .dipi-table-maker tbody tr> :not(:first-child) .dipi-col-header .dipi-cell,
	.seyond-refresh .seyond-table--comparison.seyond-table--comparison .dipi-table-maker tbody tr> :not(:first-child) .dipi-col-header .dipi_table_item-content-wrapper,
	.seyond-refresh .seyond-table--comparison.seyond-table--comparison .dipi-table-maker tbody tr> :not(:first-child) .dipi-col-header .dipi_table_item-content,
	.seyond-refresh .seyond-table--comparison.seyond-table--comparison .dipi-table-maker tbody tr> :not(:first-child) .dipi-col-header .dipi-content-wrapper,
	.seyond-refresh .seyond-table--comparison.seyond-table--comparison .dipi-table-maker tbody tr> :not(:first-child) .dipi-col-header .dipi-content-text {
		display: block !important;
		width: auto !important;
		height: auto !important;
		padding: 0 !important;
		margin: 0 !important;
		border: none !important;
		background: transparent !important;
		box-shadow: none !important;
	}

	.seyond-refresh .seyond-table--comparison.seyond-table--comparison .dipi-table-maker tbody tr> :not(:first-child) .dipi-col-header,
	.seyond-refresh .seyond-table--comparison.seyond-table--comparison .dipi-table-maker tbody tr> :not(:first-child) .dipi-col-header .dipi-content-heading,
	.seyond-refresh .seyond-table--comparison.seyond-table--comparison .dipi-table-maker tbody tr> :not(:first-child) .dipi-col-header .dipi-content-heading span {
		font-family: var(--font) !important;
		font-size: 10px !important;
		font-weight: 600 !important;
		letter-spacing: 0.05em !important;
		line-height: 1.35 !important;
		color: var(--white--50) !important;
		text-transform: uppercase !important;
		text-align: left !important;
		background: transparent !important;
	}

	.seyond-refresh .seyond-table--comparison.seyond-table--comparison .dipi-table-maker tbody tr> :not(:first-child)>.dipi-cell {
		display: block !important;
		position: static !important;
		width: 100% !important;
		min-width: 0 !important;
		height: auto !important;
	}

	.seyond-refresh .seyond-table.seyond-table .js-accordion::before,
	.seyond-refresh .seyond-table.seyond-table .js-accordion::after,
	.seyond-refresh .seyond-table.seyond-table [data-icon]::before {
		display: none !important;
	}
}