/**
 * Enjaz Studio V2
 * Kinetic Editorial Performance system
 *
 * This layer deliberately avoids generic card grids, decorative glass and
 * ornamental gradients. Geometry, rhythm and motion are derived from the
 * approved E-to-arrow mark and the plan / execute / achieve journey.
 */

:root {
	--ej2-ink: #10263d;
	--ej2-ink-deep: #081a2b;
	--ej2-blue: #073b82;
	--ej2-blue-bright: #087cca;
	--ej2-cyan: #25c3c7;
	--ej2-cyan-soft: #8ce5df;
	--ej2-green: #00a88f;
	--ej2-green-deep: #087f70;
	--ej2-emerald: #00a88f;
	--ej2-paper: #f5f9fc;
	--ej2-paper-warm: #fbfcfd;
	--ej2-white: #ffffff;
	--ej2-text: #14283d;
	--ej2-text-soft: #526579;
	--ej2-line: rgba(16, 38, 61, 0.14);
	--ej2-line-strong: rgba(16, 38, 61, 0.26);
	--ej2-accent-line: linear-gradient(90deg, var(--ej2-blue) 0%, var(--ej2-cyan) 56%, var(--ej2-green) 100%);
	--ej2-font-display: "Alexandria", "IBM Plex Sans Arabic", system-ui, sans-serif;
	--ej2-font-body: "IBM Plex Sans Arabic", "Alexandria", system-ui, sans-serif;
	--ej2-font-latin: "Manrope", system-ui, sans-serif;
	--ej2-container: min(1220px, calc(100vw - 56px));
	--ej2-container-wide: min(1400px, calc(100vw - 56px));
	--ej2-space-section: clamp(4.5rem, 7.2vw, 7.5rem);
	--ej2-display: clamp(3rem, 5.25vw, 5.2rem);
	--ej2-h2: clamp(2.25rem, 4.7vw, 5rem);
	--ej2-h3: clamp(1.3rem, 2vw, 2rem);
	--ej2-lead: clamp(1.08rem, 1.4vw, 1.35rem);
	--ej2-ease: cubic-bezier(0.22, 1, 0.36, 1);
	--ej2-fast: 180ms;
	--ej2-medium: 520ms;
	--ej2-slow: 900ms;
}

html {
	scroll-behavior: smooth;
}

body.enjaz-v2 {
	margin: 0;
	background: var(--ej2-paper-warm);
	color: var(--ej2-text);
	font-family: var(--ej2-font-body);
	font-size: 16px;
	line-height: 1.78;
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
}

body.enjaz-v2 * {
	box-sizing: border-box;
}

body.enjaz-v2 :where(h1, h2, h3, h4) {
	color: var(--ej2-ink);
	font-family: var(--ej2-font-display);
	font-weight: 700;
	letter-spacing: -0.035em;
	line-height: 1.17;
}

body.enjaz-v2 :where(a, button, summary, input, textarea, select) {
	-webkit-tap-highlight-color: transparent;
}

body.enjaz-v2 :where(a, button, summary, input, textarea, select):focus-visible {
	outline: 3px solid color-mix(in srgb, var(--ej2-cyan) 70%, white);
	outline-offset: 4px;
}

body.enjaz-v2 img {
	max-width: 100%;
	height: auto;
}

.enjaz-v2 .enjaz-container,
.ej2-container {
	width: var(--ej2-container);
	max-width: none;
	margin-inline: auto;
}

.enjaz-v2 .enjaz-container--wide,
.ej2-container--wide {
	width: var(--ej2-container-wide);
	max-width: none;
	margin-inline: auto;
}

.ej2-kicker {
	display: inline-grid;
	grid-template-columns: 0.42rem auto;
	align-items: start;
	gap: 0.72rem;
	margin: 0 0 0.75rem;
	color: var(--ej2-green-deep);
	font-family: var(--ej2-font-body);
	font-size: 0.79rem;
	font-weight: 650;
	letter-spacing: 0;
	line-height: 1.6;
}

.ej2-kicker::before {
	content: "";
	width: 0.42rem;
	height: 1.52rem;
	margin-top: -0.04rem;
	background: linear-gradient(180deg, var(--ej2-cyan) 0 48%, var(--ej2-emerald) 48% 100%);
	clip-path: polygon(0 0, 100% 0, 100% 64%, 46% 100%, 46% 64%, 0 64%);
}

.ej2-kicker--inverse {
	color: #8ce5df;
}

/*
 * Section signature — a compact directional notch derived from the Enjaz
 * upward path. It replaces the generic line/dot eyebrow used by template UIs.
 */
.enjaz-v2 .enjaz-eyebrow,
.enjaz-v2 .enjaz-kicker {
	display: inline-grid;
	grid-template-columns: 0.42rem auto;
	align-items: start;
	gap: 0.72rem;
	width: fit-content;
	min-height: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
}

.enjaz-v2 .enjaz-eyebrow::before,
.enjaz-v2 .enjaz-kicker::before {
	content: "";
	width: 0.42rem;
	height: 1.52rem;
	margin-top: -0.04rem;
	border-radius: 0;
	background: linear-gradient(180deg, var(--ej2-cyan) 0 48%, var(--ej2-emerald) 48% 100%);
	clip-path: polygon(0 0, 100% 0, 100% 64%, 46% 100%, 46% 64%, 0 64%);
}

.ej2-section-intro--spaced {
	margin-top: 1.5rem;
}

.ej2-section-title {
	max-width: 18ch;
	margin: 0;
	font-size: var(--ej2-h2);
}

.ej2-section-title--compact {
	font-size: clamp(2rem, 3.6vw, 3.8rem);
}

.ej2-section-intro {
	max-width: 58ch;
	margin: 0;
	color: var(--ej2-text-soft);
	font-size: var(--ej2-lead);
}

.ej2-section-head {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(18rem, 0.7fr);
	gap: clamp(2rem, 4vw, 4rem);
	align-items: end;
	margin-bottom: clamp(3rem, 6vw, 5.5rem);
}

.ej2-rule {
	width: 100%;
	height: 1px;
	background: var(--ej2-line);
}

/* Header */
.enjaz-v2 .enjaz-header {
	position: sticky;
	top: 0;
	z-index: 1000;
	border-bottom: 1px solid transparent;
	background: color-mix(in srgb, var(--ej2-paper-warm) 96%, transparent);
	transition: border-color var(--ej2-fast) ease, box-shadow var(--ej2-fast) ease, background var(--ej2-fast) ease;
}

.enjaz-v2 .enjaz-header.is-scrolled {
	border-bottom-color: var(--ej2-line);
	background: rgba(251, 252, 253, 0.98);
	box-shadow: 0 10px 40px rgba(8, 26, 43, 0.055);
}

.enjaz-v2 .enjaz-header__inner {
	min-height: 84px;
	gap: clamp(0.8rem, 1.35vw, 1.6rem);
}

.enjaz-v2 .enjaz-brand {
	width: clamp(112px, 10vw, 156px);
	flex: 0 0 auto;
}

.enjaz-v2 .enjaz-brand img {
	display: block;
	width: 100%;
	height: auto;
}

.enjaz-v2 .enjaz-social-icon {
	display: block;
	width: 1.12rem;
	height: 1.12rem;
	fill: currentColor;
	transition: transform var(--ej2-fast) var(--ej2-ease);
}

/* Controlled Enjaz SVG vocabulary replacing the legacy icon font. */
.enjaz-v2 .enjaz-line-icon {
	display: inline-block;
	width: 1.35em;
	height: 1.35em;
	flex: 0 0 auto;
	vertical-align: -0.2em;
	overflow: visible;
	color: currentColor;
}

.enjaz-v2 :is(
	.service-icon,
	.card-icon,
	.feature-icon,
	.stat-icon,
	.badge-icon,
	.process-icon,
	.step-icon,
	.job-icon,
	.benefit-icon,
	.icon-wrapper
) > .enjaz-line-icon {
	width: 1.8em;
	height: 1.8em;
}

.enjaz-v2 :is(a, button) > .enjaz-line-icon {
	width: 1.1em;
	height: 1.1em;
}

.enjaz-v2 .enjaz-line-icon--spin {
	animation: enjaz-icon-spin 0.8s linear infinite;
}

.enjaz-v2 .enjaz-jobs-empty-icon {
	width: 3rem;
	height: 3rem;
	margin-block-end: 1rem;
	color: #526579;
}

@keyframes enjaz-icon-spin {
	to {
		transform: rotate(360deg);
	}
}

@media (prefers-reduced-motion: reduce) {
	.enjaz-v2 .enjaz-line-icon--spin {
		animation: none;
	}
}

.enjaz-v2 .enjaz-social-links a:hover .enjaz-social-icon,
.enjaz-v2 .enjaz-social-links a:focus-visible .enjaz-social-icon {
	transform: scale(1.08);
}

.enjaz-v2 .enjaz-dock-icon {
	display: grid;
	width: 2.75rem;
	height: 2.75rem;
	flex: 0 0 auto;
	place-items: center;
	border-radius: 50%;
	background: var(--enjaz-growth-soft);
	color: #06685d;
	font-family: var(--ej2-font-latin);
	font-size: 0;
	font-weight: 800;
}

.enjaz-v2 .enjaz-dock-icon svg {
	display: block;
	width: 1.22rem;
	height: 1.22rem;
	fill: currentColor;
}

.enjaz-v2 .enjaz-dock-icon--stroke svg {
	fill: none;
	stroke: currentColor;
	stroke-width: 1.9;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.enjaz-v2 .enjaz-dock-toggle-icon {
	display: grid;
	width: 1.55rem;
	height: 1.55rem;
	place-items: center;
}

.enjaz-v2 .enjaz-dock-toggle-icon > span {
	display: grid;
	grid-area: 1 / 1;
	place-items: center;
	transition: opacity var(--ej2-fast) var(--ej2-ease), transform var(--ej2-fast) var(--ej2-ease);
}

.enjaz-v2 .enjaz-dock-toggle-icon .enjaz-line-icon {
	display: block;
	width: 1.45rem;
	height: 1.45rem;
}

.enjaz-v2 .enjaz-dock-toggle-icon__open {
	opacity: 0;
	transform: rotate(-45deg) scale(0.8);
}

.enjaz-v2 .enjaz-contact-dock.is-open .enjaz-dock-toggle-icon__closed {
	opacity: 0;
	transform: scale(0.8);
}

.enjaz-v2 .enjaz-contact-dock.is-open .enjaz-dock-toggle-icon__open {
	opacity: 1;
	transform: rotate(45deg) scale(1);
}

.enjaz-v2 .enjaz-nav__list {
	gap: clamp(0.05rem, 0.45vw, 0.42rem);
}

.enjaz-v2 :where(.enjaz-nav__link, .enjaz-nav__trigger) {
	position: relative;
	min-height: 44px;
	padding: 0.55rem clamp(0.38rem, 0.55vw, 0.62rem);
	color: var(--ej2-ink);
	font-size: clamp(0.82rem, 0.78vw, 0.92rem);
	font-weight: 600;
}

.enjaz-v2 :where(.enjaz-nav__link, .enjaz-nav__trigger)::after {
	position: absolute;
	right: 0.65rem;
	bottom: 0.15rem;
	width: 0;
	height: 2px;
	background: var(--ej2-green);
	content: "";
	transition: width var(--ej2-fast) ease;
}

.enjaz-v2 :where(.enjaz-nav__link, .enjaz-nav__trigger):hover::after,
.enjaz-v2 :where(.enjaz-nav__link, .enjaz-nav__trigger):focus-visible::after {
	width: calc(100% - 1.3rem);
}

.enjaz-v2 .enjaz-nav__submenu {
	min-width: 19rem;
	padding: 0.7rem;
	border: 1px solid var(--ej2-line);
	border-radius: 0.25rem;
	background: var(--ej2-white);
	box-shadow: 0 24px 64px rgba(8, 26, 43, 0.13);
}

/* Focus remains on the trigger after a click; aria-expanded owns visibility. */
.enjaz-v2 .enjaz-nav__item:focus-within > .enjaz-nav__trigger[aria-expanded="false"] + .enjaz-nav__submenu {
	opacity: 0;
	pointer-events: none;
	transform: translate(-50%, -0.4rem);
}

[dir="rtl"] .enjaz-v2 .enjaz-nav__item:focus-within > .enjaz-nav__trigger[aria-expanded="false"] + .enjaz-nav__submenu {
	transform: translate(50%, -0.4rem);
}

.enjaz-v2 .enjaz-nav__submenu--services {
	inset-inline-start: 50%;
	width: min(58rem, calc(100vw - 3rem));
	padding: 0;
	overflow: hidden;
}

.enjaz-v2 .enjaz-nav__mega-intro {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 2rem;
	padding: 1.2rem 1.35rem;
	border-bottom: 1px solid var(--ej2-line);
	background: var(--ej2-paper);
}

.enjaz-v2 .enjaz-nav__mega-intro p {
	max-width: 44ch;
	margin: 0;
	color: var(--ej2-text-soft);
	font-size: 0.86rem;
}

.enjaz-v2 .enjaz-nav__mega-intro a {
	display: inline-flex;
	align-items: center;
	gap: 0.55rem;
	color: var(--ej2-blue);
	font-size: 0.86rem;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
}

.enjaz-v2 .enjaz-nav__service-groups {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.enjaz-v2 .enjaz-nav__service-group {
	padding: 1.15rem;
}

.enjaz-v2 .enjaz-nav__service-group:not(:last-child) {
	border-inline-end: 1px solid var(--ej2-line);
}

.enjaz-v2 .enjaz-nav__service-group h2 {
	margin: 0 0 0.55rem;
	color: var(--ej2-green-deep);
	font-family: var(--ej2-font-body);
	font-size: 0.76rem;
	font-weight: 700;
}

.enjaz-v2 .enjaz-nav__sublist--services {
	display: grid;
	gap: 0.08rem;
}

.enjaz-v2 .enjaz-nav__sublist--services a {
	min-height: 0;
	padding: 0.58rem 0.65rem;
	font-size: 0.84rem;
}

.enjaz-v2 .enjaz-nav__sublist a {
	display: block;
	padding: 0.72rem 0.8rem;
	border-inline-start: 2px solid transparent;
	color: var(--ej2-text);
	font-size: 0.9rem;
	line-height: 1.5;
	transition: border-color var(--ej2-fast), color var(--ej2-fast), background var(--ej2-fast);
}

.enjaz-v2 .enjaz-nav__sublist a:hover,
.enjaz-v2 .enjaz-nav__sublist a:focus-visible {
	border-inline-start-color: var(--ej2-green);
	background: var(--ej2-paper);
	color: var(--ej2-blue);
}

.enjaz-v2 .enjaz-language-link {
	border: 1px solid var(--ej2-line-strong);
	border-radius: 50%;
	background: transparent;
}

.enjaz-v2 .enjaz-button {
	min-height: 48px;
	padding: 0.78rem 1.35rem;
	border: 1px solid var(--ej2-ink);
	border-radius: 0.25rem;
	box-shadow: none;
	font-size: 0.94rem;
	font-weight: 700;
	transition: transform var(--ej2-fast) var(--ej2-ease), background var(--ej2-fast), color var(--ej2-fast), border-color var(--ej2-fast);
}

.enjaz-v2 .enjaz-button:hover,
.ej2-button:hover {
	transform: translateY(-2px);
}

.enjaz-v2 .enjaz-button--primary:hover,
.ej2-button--primary:hover {
	border-color: var(--ej2-green-deep);
	background: var(--ej2-green-deep);
}

.ej2-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.8rem;
	min-height: 52px;
	padding: 0.82rem 1.4rem;
	border: 1px solid var(--ej2-ink);
	border-radius: 0.25rem;
	color: var(--ej2-ink);
	font-weight: 700;
	text-decoration: none;
	transition: transform var(--ej2-fast) var(--ej2-ease), color var(--ej2-fast), background var(--ej2-fast), border-color var(--ej2-fast);
}

.enjaz-v2 .enjaz-button--primary,
body.enjaz-v2 .ej2-button--primary {
	border-color: var(--ej2-blue);
	background: var(--ej2-blue);
	color: var(--ej2-white);
}

body.enjaz-v2 .ej2-button--primary:visited {
	color: var(--ej2-white);
}

.ej2-button--ghost:hover {
	background: var(--ej2-ink);
	color: var(--ej2-white);
}

.ej2-button--inverse {
	border-color: rgba(255, 255, 255, 0.48);
	color: var(--ej2-white);
}

.ej2-button--inverse:hover {
	border-color: var(--ej2-white);
	background: var(--ej2-white);
	color: var(--ej2-ink);
}

.ej2-button__arrow {
	font-family: var(--ej2-font-latin);
	font-size: 1.15rem;
	transition: transform var(--ej2-fast) var(--ej2-ease);
}

[dir="rtl"] .ej2-button:hover .ej2-button__arrow {
	transform: translateX(-0.35rem);
}

/* Homepage narrative */
.ej2-home {
	overflow: clip;
}

.ej2-hero {
	position: relative;
	display: flex;
	min-height: calc(100svh - 84px);
	align-items: center;
	padding-block: clamp(3.5rem, 5vw, 5.5rem);
	border-bottom: 1px solid var(--ej2-line);
	background:
		linear-gradient(90deg, transparent 0 49.95%, rgba(16, 38, 61, 0.055) 50%, transparent 50.05%),
		linear-gradient(var(--ej2-paper-warm), var(--ej2-paper-warm));
}

.ej2-hero::before {
	position: absolute;
	top: 0;
	right: max(28px, calc((100vw - 1400px) / 2));
	left: max(28px, calc((100vw - 1400px) / 2));
	height: 3px;
	background: var(--ej2-accent-line);
	content: "";
}

.ej2-hero__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.08fr) minmax(23rem, 0.92fr);
	gap: clamp(3rem, 7vw, 8rem);
	align-items: center;
}

.ej2-hero__copy {
	position: relative;
	z-index: 2;
}

.ej2-hero__title {
	max-width: 22ch;
	margin: 0;
	font-size: clamp(3.2rem, 4.55vw, 4.6rem);
	font-weight: 750;
	letter-spacing: -0.015em;
	line-height: 1.13;
}

.ej2-hero__title-line {
	display: block;
}

.ej2-hero__brand-line {
	display: flex;
	flex-wrap: wrap;
	gap: 0.04em 0.22em;
	align-items: baseline;
}

.ej2-hero__title-accent {
	position: relative;
	display: inline-block;
	padding-block-end: 0.25em;
	color: var(--ej2-blue);
	isolation: isolate;
}

.ej2-hero__title-accent::after {
	position: absolute;
	inset-inline-start: 0.02em;
	inset-block-end: 0.015em;
	width: calc(100% + 0.52em);
	height: 0.2em;
	background: linear-gradient(270deg, var(--ej2-blue) 0 38%, var(--ej2-cyan) 68%, var(--ej2-emerald) 100%);
	content: "";
	clip-path: polygon(100% 37%, 12% 37%, 12% 0, 0 50%, 12% 100%, 12% 63%, 100% 63%);
	transform: scaleX(0);
	transform-origin: right center;
	transition: transform 1.1s 250ms var(--ej2-ease);
}

html[dir="ltr"] .ej2-hero__title-accent::after {
	background: linear-gradient(90deg, var(--ej2-blue) 0 38%, var(--ej2-cyan) 68%, var(--ej2-emerald) 100%);
	clip-path: polygon(0 37%, 88% 37%, 88% 0, 100% 50%, 88% 100%, 88% 63%, 0 63%);
	transform-origin: left center;
}

.enjaz2-ready .ej2-hero__title-accent::after {
	transform: scaleX(1);
}

.ej2-hero__lead {
	max-width: 58ch;
	margin: 1.5rem 0 0;
	color: var(--ej2-text-soft);
	font-size: clamp(1.08rem, 1.55vw, 1.4rem);
	line-height: 1.9;
}

.ej2-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.8rem;
	margin-top: 1.6rem;
}

.ej2-hero__proof {
	display: flex;
	flex-wrap: wrap;
	gap: 0.8rem 1.5rem;
	margin: 1.5rem 0 0;
	padding: 0;
	color: var(--ej2-text-soft);
	font-size: 0.84rem;
	font-weight: 600;
	list-style: none;
}

.ej2-hero__proof li {
	position: relative;
	padding-inline-start: 1rem;
}

.ej2-hero__proof li::before {
	position: absolute;
	top: 0.7em;
	inset-inline-start: 0;
	width: 0.42rem;
	height: 0.42rem;
	border-radius: 50%;
	background: var(--ej2-green);
	content: "";
}

.ej2-hero__visual {
	position: relative;
	min-height: min(43vw, 610px);
	border-inline-start: 1px solid var(--ej2-line);
}

.ej2-journey-mark {
	position: absolute;
	inset: 2% 0 0;
	width: 100%;
	height: 100%;
	overflow: visible;
}

.ej2-journey-mark__guide {
	fill: none;
	stroke: rgba(16, 38, 61, 0.09);
	stroke-width: 1;
}

.ej2-journey-mark__path {
	fill: none;
	stroke: url(#ej2-journey-gradient);
	stroke-dasharray: 980;
	stroke-dashoffset: 980;
	stroke-linecap: round;
	stroke-width: 11;
	transition: stroke-dashoffset 1.8s 180ms var(--ej2-ease);
}

.enjaz2-ready .ej2-journey-mark__path {
	stroke-dashoffset: 0;
}

.ej2-journey-mark__node {
	fill: var(--ej2-paper-warm);
	stroke: var(--ej2-blue-bright);
	stroke-width: 4;
	transform: scale(0);
	transform-box: fill-box;
	transform-origin: center;
	transition: transform 420ms var(--ej2-ease);
}

.enjaz2-ready .ej2-journey-mark__node:nth-of-type(1) { transition-delay: 420ms; }
.enjaz2-ready .ej2-journey-mark__node:nth-of-type(2) { transition-delay: 760ms; }
.enjaz2-ready .ej2-journey-mark__node:nth-of-type(3) { transition-delay: 1110ms; }
.enjaz2-ready .ej2-journey-mark__node:nth-of-type(4) { transition-delay: 1450ms; }
.enjaz2-ready .ej2-journey-mark__node { transform: scale(1); }

.ej2-logo-island {
	position: absolute;
	top: 36%;
	right: 35%;
	width: min(34%, 190px);
	aspect-ratio: 593 / 698;
	transform: translate(50%, -50%);
	--ej2-logo-x: 0;
	--ej2-logo-y: 0;
	--ej2-logo-scroll: 0;
	contain: layout paint;
}

.ej2-logo-stage,
.ej2-hero__mark {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
}

.ej2-logo-stage {
	perspective: 900px;
	transform: rotateX(calc(var(--ej2-logo-y) * -1.5deg)) rotateY(calc(var(--ej2-logo-x) * 1.8deg));
	transform-style: preserve-3d;
	transition: transform 180ms linear;
}

.ej2-hero__mark {
	display: block;
	object-fit: contain;
	filter: none;
}

.ej2-hero__mark--fallback {
	position: static;
	height: auto;
}

.ej2-logo-island.is-react-mounted > .ej2-hero__mark--fallback {
	display: none;
}

.ej2-logo-layer {
	position: absolute;
	inset: 0;
	transition: transform 1.15s var(--ej2-ease);
	will-change: transform;
}

.ej2-logo-layer--body {
	clip-path: polygon(0 18%, 66% 18%, 68% 48%, 92% 58%, 92% 100%, 0 100%);
	transform: translate3d(calc(var(--ej2-logo-x) * -3px), calc(18px + var(--ej2-logo-y) * 2px), 0) scale(0.96);
	animation: ej2-logo-breathe 6.8s ease-in-out infinite;
}

.ej2-logo-layer--flow {
	clip-path: polygon(0 19%, 63% 18%, 100% 46%, 90% 70%, 22% 87%, 0 72%);
	transform: translate3d(calc(18px + var(--ej2-logo-x) * 4px), calc(var(--ej2-logo-y) * 3px), 18px);
	animation: ej2-logo-flow 5.4s ease-in-out infinite;
}

.ej2-logo-layer--arrow {
	clip-path: polygon(49% 0, 100% 0, 100% 58%, 78% 56%, 57% 40%);
	transform: translate3d(calc(26px + var(--ej2-logo-x) * 7px), calc(-20px + var(--ej2-logo-y) * 5px - var(--ej2-logo-scroll) * 8px), 34px) rotate(1.5deg);
	animation: ej2-logo-arrow-flight 4.2s ease-in-out infinite;
}

.ej2-logo-island.is-assembled .ej2-logo-layer--body {
	transform: translate3d(calc(var(--ej2-logo-x) * -3px), calc(var(--ej2-logo-y) * 2px), 0) scale(1);
}

.ej2-logo-island.is-assembled .ej2-logo-layer--flow {
	transform: translate3d(calc(var(--ej2-logo-x) * 4px), calc(var(--ej2-logo-y) * 3px), 18px);
}

.ej2-logo-island.is-assembled .ej2-logo-layer--arrow {
	transform: translate3d(calc(var(--ej2-logo-x) * 7px), calc(var(--ej2-logo-y) * 5px - var(--ej2-logo-scroll) * 8px), 34px) rotate(0);
}

.ej2-logo-island.is-offscreen .ej2-logo-layer { animation-play-state: paused; }

@keyframes ej2-logo-breathe {
	0%, 100% { opacity: 0.99; translate: 0 0; }
	50% { opacity: 1; translate: 0 2px; }
}

@keyframes ej2-logo-flow {
	0%, 100% { opacity: 0.96; translate: -1px 1px; }
	50% { opacity: 1; translate: 2px -2px; }
}

@keyframes ej2-logo-arrow-flight {
	0%, 100% { opacity: 0.98; translate: 0 0; }
	50% { opacity: 1; translate: 4px -6px; }
}

.ej2-journey-label {
	position: absolute;
	padding-bottom: 0.4rem;
	border-bottom: 1px solid var(--ej2-line-strong);
	color: var(--ej2-text-soft);
	font-size: 0.79rem;
	font-weight: 600;
}

.ej2-journey-label strong {
	display: block;
	color: var(--ej2-ink);
	font-family: var(--ej2-font-display);
	font-size: clamp(1rem, 1.4vw, 1.35rem);
}

.ej2-journey-label--plan { right: auto; bottom: 1%; left: 0; }
.ej2-journey-label--execute { right: auto; bottom: 38%; left: 0; }
.ej2-journey-label--achieve { top: 2%; right: 0; left: auto; }

.ej2-proof-rail {
	border-bottom: 1px solid var(--ej2-line);
	background: var(--ej2-white);
}

.ej2-proof-rail__inner {
	display: grid;
	grid-template-columns: 0.55fr repeat(4, 1fr);
	align-items: stretch;
}

.ej2-proof-rail__label,
.ej2-proof-rail__item {
	display: flex;
	min-height: 92px;
	align-items: center;
	padding: 1.25rem clamp(1rem, 2.4vw, 2.2rem);
	border-inline-end: 1px solid var(--ej2-line);
}

.ej2-proof-rail__label {
	color: var(--ej2-text-soft);
	font-size: 0.78rem;
	font-weight: 700;
}

.ej2-proof-rail__item {
	color: var(--ej2-ink);
	font-family: var(--ej2-font-display);
	font-size: clamp(0.92rem, 1.2vw, 1.08rem);
	font-weight: 650;
	text-decoration: none;
}

.ej2-proof-rail__item:last-child {
	border-inline-end: 0;
}

.ej2-proof-rail__item[href]:hover {
	background: var(--ej2-paper);
	color: var(--ej2-blue);
}

/* About */
.ej2-about {
	padding-block: var(--ej2-space-section);
	border-bottom: 1px solid var(--ej2-line);
	background:
		linear-gradient(90deg, transparent 0 49.95%, var(--ej2-line) 49.95% 50.05%, transparent 50.05%),
		var(--ej2-paper);
}

.ej2-about__grid {
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
	gap: clamp(3rem, 8vw, 9rem);
}

.ej2-about__heading {
	align-self: start;
}

.ej2-about__lead {
	max-width: 24ch;
	margin: 1.65rem 0 0;
	color: var(--ej2-green-deep);
	font-family: var(--ej2-font-display);
	font-size: clamp(1.2rem, 2vw, 1.75rem);
	font-weight: 650;
	line-height: 1.65;
}

.ej2-about__content {
	padding-top: 0.3rem;
}

.ej2-about__content > p {
	max-width: 62ch;
	margin: 0 0 1.6rem;
	color: var(--ej2-text);
	font-size: clamp(1rem, 1.35vw, 1.18rem);
	line-height: 2;
}

.ej2-about__content ul {
	margin: 2rem 0;
	padding: 0;
	border-top: 1px solid var(--ej2-line-strong);
	list-style: none;
}

.ej2-about__content li {
	position: relative;
	padding: 1rem 2rem 1rem 0;
	padding-inline-start: 2rem;
	padding-inline-end: 0;
	border-bottom: 1px solid var(--ej2-line);
	color: var(--ej2-ink);
	font-weight: 650;
}

.ej2-about__content li::before {
	position: absolute;
	top: 1.55rem;
	right: auto;
	inset-inline-start: 0;
	width: 0.8rem;
	height: 2px;
	background: var(--ej2-cyan);
	content: "";
}

.ej2-about__content > a {
	display: inline-flex;
	align-items: center;
	gap: 0.7rem;
	color: var(--ej2-blue);
	font-weight: 750;
	text-decoration: none;
}

.ej2-about__content > a:hover {
	color: var(--ej2-green-deep);
}

.ej2-about__content .ej2-about__promise {
	display: inline-flex;
	margin: 0 0 1.6rem;
	padding: 0.65rem 1rem;
	border-inline-start: 3px solid var(--ej2-green);
	background: var(--ej2-white);
	color: var(--ej2-blue);
}

.ej2-positioning {
	padding-block: var(--ej2-space-section);
}

.ej2-positioning__grid {
	display: grid;
	grid-template-columns: minmax(18rem, 0.72fr) minmax(0, 1.28fr);
	gap: clamp(4rem, 9vw, 10rem);
}

.ej2-positioning__aside {
	position: sticky;
	top: 120px;
	align-self: start;
}

.ej2-positioning__statement {
	margin: 0;
	color: var(--ej2-ink);
	font-family: var(--ej2-font-display);
	font-size: clamp(1.6rem, 3vw, 3.1rem);
	font-weight: 650;
	line-height: 1.45;
}

.ej2-positioning__statement em {
	color: var(--ej2-green-deep);
	font-style: normal;
}

.ej2-process {
	margin: 0;
	padding: 0;
	list-style: none;
}

.ej2-process__item {
	display: grid;
	grid-template-columns: 4rem minmax(0, 1fr);
	gap: clamp(1.2rem, 3vw, 2.5rem);
	padding-block: clamp(2rem, 4vw, 3.6rem);
	border-top: 1px solid var(--ej2-line);
}

.ej2-process__item:last-child {
	border-bottom: 1px solid var(--ej2-line);
}

.ej2-process__number {
	color: var(--ej2-green-deep);
	font-family: var(--ej2-font-latin);
	font-size: 0.82rem;
	font-weight: 800;
}

.ej2-process__title {
	margin: 0 0 0.85rem;
	font-size: clamp(1.55rem, 2.6vw, 2.65rem);
}

.ej2-process__text {
	max-width: 60ch;
	margin: 0;
	color: var(--ej2-text-soft);
	font-size: 1.03rem;
}

/* Services: an accessible vertical index, not a card grid */
.ej2-services {
	padding-block: var(--ej2-space-section);
	background:
		linear-gradient(90deg, rgba(37, 195, 199, 0.035) 1px, transparent 1px) 0 0 / min(12vw, 160px) 100%,
		linear-gradient(180deg, var(--ej2-ink) 0%, var(--ej2-ink-deep) 100%);
	color: var(--ej2-white);
}

.ej2-services .ej2-kicker {
	color: #8ce5df;
}

body.enjaz-v2 .ej2-services .ej2-section-title,
body.enjaz-v2 .ej2-services .ej2-service-panel__title,
.ej2-services .ej2-section-intro {
	color: var(--ej2-white);
}

.ej2-services .ej2-section-intro {
	color: rgba(255, 255, 255, 0.67);
}

.ej2-services__explorer {
	min-height: 620px;
	border-top: 1px solid rgba(255, 255, 255, 0.18);
	border-bottom: 1px solid rgba(255, 255, 255, 0.18);
}

.ej2-services__items {
	position: relative;
	min-height: 620px;
	margin: 0;
	padding: 0;
}

.ej2-service-item {
	display: block;
	width: 38%;
	margin-inline-end: auto;
}

.ej2-services__tab {
	position: relative;
	display: grid;
	width: 100%;
	height: 104px;
	grid-template-columns: 0.8rem 1fr auto;
	gap: 1rem;
	align-items: center;
	padding: 1.45rem clamp(1rem, 2vw, 1.8rem);
	border: 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.13);
	border-inline-end: 1px solid rgba(255, 255, 255, 0.18);
	background: transparent;
	color: rgba(255, 255, 255, 0.65);
	cursor: pointer;
	font: inherit;
	text-align: start;
	transition: color var(--ej2-fast), background var(--ej2-fast);
	list-style: none;
}

.ej2-services__tab::-webkit-details-marker { display: none; }

.ej2-services__tab::before {
	position: absolute;
	top: 0;
	bottom: 0;
	inset-inline-start: -1px;
	width: 3px;
	background: var(--ej2-cyan);
	content: "";
	transform: scaleY(0);
	transform-origin: bottom;
	transition: transform var(--ej2-medium) var(--ej2-ease);
}

.ej2-services__tab:hover,
.ej2-service-item[open] > .ej2-services__tab {
	background: rgba(255, 255, 255, 0.045);
	color: var(--ej2-white);
}

.ej2-service-item[open] > .ej2-services__tab::before {
	transform: scaleY(1);
}

.ej2-services__tab-index {
	width: 0.5rem;
	height: 0.5rem;
	border: 1px solid rgba(140, 229, 223, 0.72);
	border-radius: 50%;
	transition: border-color var(--ej2-fast), background var(--ej2-fast), transform var(--ej2-fast);
}

.ej2-service-item[open] > .ej2-services__tab .ej2-services__tab-index {
	border-color: var(--ej2-cyan);
	background: var(--ej2-cyan);
	transform: scale(1.2);
}

.ej2-services__tab-title {
	font-family: var(--ej2-font-display);
	font-size: clamp(1rem, 1.4vw, 1.25rem);
	font-weight: 650;
}

.ej2-services__tab-arrow {
	font-family: var(--ej2-font-latin);
	font-size: 1.35rem;
	line-height: 1;
	transition: transform var(--ej2-fast) var(--ej2-ease);
}

.ej2-service-item[open] > .ej2-services__tab .ej2-services__tab-arrow {
	transform: rotate(180deg);
}

.ej2-service-panel {
	display: none;
	position: absolute;
	top: 0;
	bottom: 0;
	inset-inline-end: 0;
	width: 62%;
	overflow-y: auto;
	padding: clamp(2.5rem, 4vw, 4rem);
}

.ej2-service-item[open] > .ej2-service-panel {
	display: block;
}

.ej2-service-panel__signal {
	display: inline-flex;
	align-items: end;
	gap: 0.45rem;
	height: 3rem;
	margin-bottom: 2rem;
}

.ej2-service-panel__signal > span {
	display: block;
	width: 0.55rem;
	background: var(--ej2-cyan);
}

.ej2-service-panel__signal > span:nth-child(1) { height: 28%; opacity: 0.5; }
.ej2-service-panel__signal > span:nth-child(2) { height: 58%; opacity: 0.72; }
.ej2-service-panel__signal > span:nth-child(3) { height: 100%; background: var(--ej2-green); }

.ej2-service-panel__title {
	max-width: 16ch;
	margin: 0 0 1.25rem;
	color: var(--ej2-white);
	font-size: clamp(2rem, 4vw, 4.3rem);
}

.ej2-service-panel__description {
	max-width: 58ch;
	margin: 0;
	color: rgba(255, 255, 255, 0.68);
	font-size: clamp(1rem, 1.4vw, 1.22rem);
}

.ej2-service-panel__links {
	display: flex;
	flex-wrap: wrap;
	gap: 0;
	margin: 2.3rem 0 0;
	padding: 0;
	border-top: 1px solid rgba(255, 255, 255, 0.16);
	list-style: none;
}

.ej2-service-panel__links li {
	flex: 1 1 50%;
}

.ej2-service-panel__links a {
	display: flex;
	min-height: 104px;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding: 0.85rem 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.16);
	color: var(--ej2-white);
	font-weight: 600;
	text-decoration: none;
}

.ej2-service-panel__links a > span {
	display: grid;
	gap: 0.38rem;
}

.ej2-service-panel__links strong {
	color: var(--ej2-white);
	font-size: 0.96rem;
}

.ej2-service-panel__links small {
	max-width: 42ch;
	color: rgba(255, 255, 255, 0.62);
	font-size: 0.875rem;
	font-weight: 450;
	line-height: 1.75;
}

.ej2-service-panel__links a::after {
	color: var(--ej2-cyan);
	content: "←";
	font-family: var(--ej2-font-latin);
	transition: transform var(--ej2-fast) var(--ej2-ease);
}

.ej2-service-panel__links a:hover::after {
	transform: translateX(-0.35rem);
}

.ej2-service-panel__cta {
	display: inline-flex;
	align-items: center;
	gap: 0.75rem;
	margin-top: 2rem;
	color: var(--ej2-cyan);
	font-weight: 700;
	text-decoration: none;
}

/* Evidence */
.ej2-evidence {
	padding-block: var(--ej2-space-section);
}

.ej2-results-head {
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: 2rem;
	margin-top: clamp(3.25rem, 7vw, 6.5rem);
	padding-top: 1.8rem;
	border-top: 1px solid var(--ej2-line-strong);
}

.ej2-results-head .ej2-kicker {
	margin: 0;
}

.ej2-results-head h2 {
	max-width: 18ch;
	margin: 0;
	color: var(--ej2-ink);
	font-size: clamp(1.55rem, 3vw, 3rem);
	line-height: 1.45;
}

.ej2-why-index {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin: 0 0 clamp(4rem, 7vw, 7rem);
	padding: 0;
	border-top: 1px solid var(--ej2-line-strong);
	list-style: none;
}

.ej2-why-index li {
	min-height: 170px;
	padding: clamp(1.5rem, 3vw, 2.7rem);
	border-bottom: 1px solid var(--ej2-line);
}

.ej2-why-index li:nth-child(odd) {
	border-inline-end: 1px solid var(--ej2-line);
}

.ej2-why-index h3 {
	margin: 0 0 0.75rem;
	font-size: clamp(1.2rem, 2vw, 1.7rem);
	line-height: 1.45;
}

.ej2-why-index p {
	max-width: 54ch;
	margin: 0;
	color: var(--ej2-text-soft);
	line-height: 1.9;
}

.ej2-evidence__grid {
	display: grid;
	grid-template-columns: 1.35fr repeat(3, 0.88fr);
	border-top: 1px solid var(--ej2-line-strong);
	border-bottom: 1px solid var(--ej2-line-strong);
}

.ej2-evidence__item {
	min-height: 240px;
	padding: clamp(1.5rem, 3vw, 2.8rem);
	border-inline-end: 1px solid var(--ej2-line);
}

.ej2-evidence__item:last-child {
	border-inline-end: 0;
}

.ej2-evidence__value {
	display: block;
	margin-bottom: 2.5rem;
	color: var(--ej2-blue);
	font-family: var(--ej2-font-display);
	font-size: clamp(2rem, 3.6vw, 4.2rem);
	font-weight: 750;
	letter-spacing: -0.055em;
	line-height: 1;
}

.ej2-evidence__item--featured .ej2-evidence__value {
	font-size: clamp(2.15rem, 3.8vw, 4.5rem);
}

.ej2-evidence__label {
	max-width: 20ch;
	color: var(--ej2-text-soft);
	font-size: 0.94rem;
	font-weight: 600;
}

.ej2-google-proof {
	display: grid;
	grid-template-columns: 0.7fr 1.3fr;
	gap: clamp(3rem, 8vw, 9rem);
	align-items: center;
	margin-top: clamp(5rem, 9vw, 9rem);
	padding: clamp(3rem, 6vw, 6rem);
	border-top: 3px solid transparent;
	background:
		linear-gradient(var(--ej2-ink), var(--ej2-ink)) padding-box,
		var(--ej2-accent-line) border-box;
	color: var(--ej2-white);
}

.ej2-google-proof__mark {
	display: flex;
	min-height: 260px;
	align-items: center;
	justify-content: center;
	padding: clamp(1.5rem, 4vw, 3rem);
	border: 1px solid rgba(255, 255, 255, 0.23);
	background: var(--ej2-white);
	text-decoration: none;
}

.ej2-google-proof__mark img {
	width: min(100%, 11.5rem);
	height: auto;
	aspect-ratio: 1;
	object-fit: contain;
	background: var(--ej2-white);
}

.ej2-google-proof__content h3 {
	max-width: 14ch;
	margin: 0 0 1.25rem;
	color: var(--ej2-white);
	font-size: clamp(2rem, 4vw, 4.2rem);
}

.ej2-google-proof__content p {
	max-width: 56ch;
	color: rgba(255, 255, 255, 0.74);
	font-size: 1.08rem;
}

.ej2-google-proof__content a {
	display: inline-flex;
	margin-top: 1.2rem;
	padding-bottom: 0.35rem;
	border-bottom: 1px solid var(--ej2-cyan);
	color: var(--ej2-white);
	font-weight: 700;
	text-decoration: none;
}

/* Sectors */
.ej2-sectors {
	padding-block: var(--ej2-space-section);
	background: var(--ej2-paper);
}

.ej2-sectors__index {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	margin: 0;
	padding: 0;
	border-top: 1px solid var(--ej2-line-strong);
	list-style: none;
}

.ej2-sectors__item {
	border-bottom: 1px solid var(--ej2-line);
}

.ej2-sectors__item:nth-child(odd) {
	border-inline-end: 1px solid var(--ej2-line);
}

.ej2-sectors__link {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 1.25rem;
	align-items: center;
	min-height: 118px;
	padding: 1.4rem clamp(1rem, 3vw, 2.5rem);
	color: var(--ej2-ink);
	text-decoration: none;
	transition: background var(--ej2-fast), color var(--ej2-fast);
}

.ej2-sectors__link:hover {
	background: var(--ej2-white);
	color: var(--ej2-blue);
}

.ej2-sectors__title {
	font-family: var(--ej2-font-display);
	font-size: clamp(1.1rem, 1.7vw, 1.45rem);
	font-weight: 650;
}

.ej2-sectors__arrow {
	font-family: var(--ej2-font-latin);
	transition: transform var(--ej2-fast) var(--ej2-ease);
}

.ej2-sectors__link:hover .ej2-sectors__arrow {
	transform: translateX(-0.4rem);
}

/* Partners and voices */
.ej2-partners {
	padding-block: var(--ej2-space-section);
	background: var(--ej2-white);
}

.ej2-partner-field {
	display: grid;
	gap: 0.75rem;
	margin-top: clamp(2rem, 4vw, 3.5rem);
	overflow: hidden;
}

.ej2-partner-line {
	display: flex;
	overflow: hidden;
	border-top: 1px solid var(--ej2-line);
	border-bottom: 1px solid var(--ej2-line);
	direction: ltr;
	background: color-mix(in srgb, var(--ej2-paper) 74%, white);
}

.ej2-partner-line__track {
	display: flex;
	gap: 0;
	min-width: max-content;
	animation: ej2-marquee 34s linear infinite;
	will-change: transform;
}

.ej2-partner-line--reverse .ej2-partner-line__track {
	animation-direction: reverse;
	animation-duration: 38s;
}

.ej2-partner-line:hover .ej2-partner-line__track,
.ej2-partner-line:focus-within .ej2-partner-line__track {
	animation-play-state: paused;
}

.ej2-partner-line__item {
	display: grid;
	grid-template-rows: 4.75rem auto;
	align-content: center;
	justify-items: center;
	gap: 0.7rem;
	width: clamp(10.75rem, 14vw, 13rem);
	min-height: 10rem;
	margin: 0;
	padding: 1rem 0.9rem;
	border-inline-end: 1px solid var(--ej2-line);
	direction: rtl;
	background: transparent;
	overflow: hidden;
}

.ej2-partner-line__logo {
	display: grid;
	width: 100%;
	height: 4.75rem;
	place-items: center;
	padding: 0.35rem;
	border-radius: 0.55rem;
	overflow: hidden;
}

.ej2-partner-line__logo--dark {
	background: var(--ej2-ink);
}

.ej2-partner-line__item img {
	max-width: min(100%, 9rem);
	max-height: 4.1rem;
	object-fit: contain;
	filter: grayscale(1);
	opacity: 0.68;
	transition: filter var(--ej2-fast), opacity var(--ej2-fast), transform var(--ej2-fast);
}

.ej2-partner-line__item:hover img,
.ej2-partner-line__item:focus-within img {
	filter: none;
	opacity: 1;
	transform: scale(1.025);
}

.ej2-partner-line__item figcaption {
	display: grid;
	gap: 0.1rem;
	width: 100%;
	min-width: 0;
	text-align: center;
	overflow: hidden;
}

.ej2-partner-line__item figcaption strong {
	color: var(--ej2-ink);
	font-size: clamp(0.84rem, 1vw, 0.95rem);
	line-height: 1.45;
	white-space: normal;
	overflow-wrap: anywhere;
	word-break: normal;
}

.ej2-partner-line__item figcaption span {
	color: var(--ej2-muted);
	font-size: 0.72rem;
	line-height: 1.5;
	white-space: normal;
	overflow-wrap: anywhere;
}

@keyframes ej2-marquee {
	to { transform: translate3d(-50%, 0, 0); }
}

.ej2-voices {
	display: grid;
	grid-template-columns: 0.55fr 1.45fr;
	gap: clamp(3rem, 8vw, 8rem);
	margin-top: clamp(5rem, 10vw, 10rem);
}

.ej2-voices__intro {
	align-self: start;
}

.ej2-voices__list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.ej2-voice {
	padding: clamp(2rem, 4vw, 4rem) 0;
	border-top: 1px solid var(--ej2-line);
}

.ej2-voice:last-child {
	border-bottom: 1px solid var(--ej2-line);
}

.ej2-voice__text {
	max-width: 30ch;
	margin: 0 0 1.4rem;
	color: var(--ej2-ink);
	font-family: var(--ej2-font-display);
	font-size: clamp(1.45rem, 2.7vw, 2.75rem);
	font-weight: 600;
	line-height: 1.5;
}

.ej2-voice figcaption {
	display: grid;
	gap: 0.25rem;
	color: var(--ej2-text-soft);
	font-size: 0.9rem;
	font-weight: 650;
}

.ej2-voice figcaption strong {
	color: var(--ej2-ink);
	font-size: 1rem;
	font-weight: 750;
}

.ej2-voice figcaption span {
	font-weight: 550;
}

/* Journal */
.ej2-journal {
	padding-block: var(--ej2-space-section);
	background: var(--ej2-ink);
	color: var(--ej2-white);
}

body.enjaz-v2 .ej2-journal .ej2-section-title,
body.enjaz-v2 .ej2-journal .ej2-article__title {
	color: var(--ej2-white);
}

body.enjaz-v2 .ej2-journal .ej2-section-intro {
	color: rgba(255, 255, 255, 0.66);
}

.ej2-journal__list {
	border-top: 1px solid rgba(255, 255, 255, 0.2);
}

.ej2-article {
	display: grid;
	grid-template-columns: minmax(180px, 0.35fr) minmax(0, 1fr) auto;
	gap: clamp(1.5rem, 4vw, 4rem);
	align-items: center;
	padding-block: clamp(1.8rem, 3.5vw, 3.3rem);
	border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}

.ej2-article__media {
	display: block;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	background: rgba(255, 255, 255, 0.06);
}

.ej2-article__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	filter: saturate(0.84);
	transition: transform var(--ej2-slow) var(--ej2-ease), filter var(--ej2-medium);
}

.ej2-article:hover .ej2-article__media img {
	filter: saturate(1);
	transform: scale(1.035);
}

.ej2-article__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem 1rem;
	margin-bottom: 0.8rem;
	color: var(--ej2-cyan);
	font-size: 0.76rem;
	font-weight: 700;
}

.ej2-article__title {
	max-width: 36ch;
	margin: 0;
	color: var(--ej2-white);
	font-size: clamp(1.2rem, 1.75vw, 1.75rem);
	line-height: 1.55;
}

.ej2-article__title a {
	color: inherit;
	text-decoration: none;
}

.ej2-article__arrow {
	display: grid;
	width: 54px;
	height: 54px;
	place-items: center;
	border: 1px solid rgba(255, 255, 255, 0.35);
	border-radius: 50%;
	color: var(--ej2-white);
	font-family: var(--ej2-font-latin);
	text-decoration: none;
	transition: background var(--ej2-fast), color var(--ej2-fast), transform var(--ej2-fast) var(--ej2-ease);
}

.ej2-article__arrow:hover {
	background: var(--ej2-white);
	color: var(--ej2-ink);
	transform: translateX(-0.35rem);
}

/* FAQ closing callout: self-contained because public FAQ routes do not load Tailwind utilities. */
.enjaz-v2 .enjaz-faq-cta {
	position: relative;
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: center;
	gap: clamp(1.1rem, 2.5vw, 2rem);
	width: min(100%, 58rem);
	margin: clamp(3rem, 7vw, 5rem) auto 0;
	padding: clamp(1.4rem, 3vw, 2.2rem);
	overflow: hidden;
	border: 1px solid rgba(103, 232, 226, 0.2);
	border-radius: 1.5rem;
	background:
		linear-gradient(90deg, rgba(17, 148, 137, 0.18), transparent 42%),
		var(--ej2-ink-deep);
	box-shadow: 0 24px 70px rgba(8, 26, 43, 0.2);
	color: #fff;
	text-align: start;
}

.enjaz-v2 .enjaz-faq-cta::before {
	position: absolute;
	inset: 0;
	background-image:
		linear-gradient(rgba(255, 255, 255, 0.045) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255, 255, 255, 0.045) 1px, transparent 1px);
	background-size: 4rem 4rem;
	content: "";
	mask-image: linear-gradient(90deg, #000, transparent 72%);
	pointer-events: none;
}

.enjaz-v2 .enjaz-faq-cta > * {
	position: relative;
	z-index: 1;
}

.enjaz-v2 .enjaz-faq-cta__icon {
	display: grid;
	width: clamp(3.6rem, 6vw, 4.6rem);
	aspect-ratio: 1;
	place-items: center;
	border: 1px solid rgba(103, 232, 226, 0.35);
	border-radius: 50%;
	background: rgba(7, 178, 162, 0.12);
	color: var(--ej2-cyan);
}

.enjaz-v2 .enjaz-faq-cta__icon .enjaz-line-icon {
	width: 1.85rem;
	height: 1.85rem;
}

.enjaz-v2 .enjaz-faq-cta__content {
	min-width: 0;
}

.enjaz-v2 .enjaz-faq-cta__eyebrow {
	display: block;
	margin-block-end: 0.5rem;
	color: var(--ej2-cyan);
	font-size: 0.76rem;
	font-weight: 800;
	letter-spacing: 0.03em;
}

.enjaz-v2 .enjaz-faq-cta h2 {
	margin: 0;
	color: #fff;
	font-size: clamp(1.4rem, 2.4vw, 2rem);
	line-height: 1.35;
}

.enjaz-v2 .enjaz-faq-cta p {
	max-width: 39rem;
	margin: 0.55rem 0 0;
	color: rgba(255, 255, 255, 0.74);
	font-size: 0.96rem;
	line-height: 1.8;
}

.enjaz-v2 .enjaz-faq-cta__actions {
	display: flex;
	flex-direction: column;
	gap: 0.65rem;
	min-width: 12rem;
}

.enjaz-v2 .enjaz-faq-cta__button {
	display: inline-flex;
	min-height: 3rem;
	align-items: center;
	justify-content: center;
	gap: 0.55rem;
	padding: 0.7rem 1rem;
	border: 1px solid rgba(255, 255, 255, 0.28);
	border-radius: 0.85rem;
	color: #fff;
	font-size: 0.88rem;
	font-weight: 800;
	text-decoration: none;
	transition: transform var(--ej2-fast) var(--ej2-ease), border-color var(--ej2-fast), background var(--ej2-fast);
}

.enjaz-v2 .enjaz-faq-cta__button svg {
	width: 1.15rem;
	height: 1.15rem;
	flex: 0 0 auto;
}

.enjaz-v2 .enjaz-faq-cta__button--primary {
	border-color: transparent;
	background: var(--ej2-green-deep);
}

.enjaz-v2 .enjaz-faq-cta__button--secondary {
	background: rgba(255, 255, 255, 0.06);
}

.enjaz-v2 .enjaz-faq-cta__button:hover {
	border-color: rgba(103, 232, 226, 0.7);
	background: #087f70;
	color: #fff;
	transform: translateY(-2px);
}

.enjaz-v2 .enjaz-faq-cta__button:focus-visible {
	outline: 3px solid rgba(103, 232, 226, 0.7);
	outline-offset: 3px;
}

@media (max-width: 760px) {
	.enjaz-v2 .enjaz-faq-cta {
		grid-template-columns: auto minmax(0, 1fr);
	}

	.enjaz-v2 .enjaz-faq-cta__actions {
		grid-column: 1 / -1;
		flex-direction: row;
		min-width: 0;
	}

	.enjaz-v2 .enjaz-faq-cta__button {
		flex: 1 1 0;
	}
}

@media (max-width: 520px) {
	.enjaz-v2 .enjaz-faq-cta {
		grid-template-columns: 1fr;
		justify-items: center;
		padding: 1.5rem 1.1rem;
		text-align: center;
	}

	.enjaz-v2 .enjaz-faq-cta__actions {
		width: 100%;
		flex-direction: column;
	}
}

/* FAQ */
.ej2-faq {
	padding-block: var(--ej2-space-section);
}

.ej2-faq__grid {
	display: grid;
	grid-template-columns: 0.6fr 1.4fr;
	gap: clamp(3rem, 8vw, 8rem);
}

.ej2-faq__aside {
	position: sticky;
	top: 120px;
	align-self: start;
}

.ej2-faq__list {
	border-top: 1px solid var(--ej2-line-strong);
}

.ej2-faq details {
	border-bottom: 1px solid var(--ej2-line);
}

.ej2-faq summary {
	position: relative;
	display: flex;
	min-height: 88px;
	align-items: center;
	justify-content: space-between;
	gap: 1.5rem;
	padding: 1.25rem 0;
	color: var(--ej2-ink);
	cursor: pointer;
	font-family: var(--ej2-font-display);
	font-size: clamp(1.05rem, 1.6vw, 1.35rem);
	font-weight: 650;
	list-style: none;
}

.ej2-faq summary::-webkit-details-marker { display: none; }

.ej2-faq summary::after {
	display: grid;
	width: 34px;
	height: 34px;
	flex: 0 0 auto;
	place-items: center;
	border: 1px solid var(--ej2-line-strong);
	border-radius: 50%;
	content: "+";
	font-family: var(--ej2-font-latin);
	font-size: 1.1rem;
	transition: transform var(--ej2-fast) var(--ej2-ease), background var(--ej2-fast), color var(--ej2-fast);
}

.ej2-faq details[open] summary::after {
	background: var(--ej2-ink);
	color: var(--ej2-white);
	transform: rotate(45deg);
}

.ej2-faq__answer {
	max-width: 66ch;
	padding: 0 0 1.8rem;
	color: var(--ej2-text-soft);
}

/* Final conversion */
.ej2-final {
	position: relative;
	padding-block: var(--ej2-space-section);
	overflow: hidden;
	background:
		linear-gradient(120deg, rgba(37, 195, 199, 0.08), transparent 42%),
		var(--ej2-ink);
	color: var(--ej2-white);
}

.ej2-final::before {
	position: absolute;
	top: -45%;
	left: -9%;
	width: 50vw;
	aspect-ratio: 1;
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 50%;
	content: "";
}

.ej2-final__title {
	position: relative;
	max-width: 15ch;
	margin: 0 0 2rem;
	color: var(--ej2-white);
	font-size: clamp(2.8rem, 6.8vw, 7rem);
	letter-spacing: -0.055em;
}

body.enjaz-v2 .ej2-final__title {
	color: var(--ej2-white);
}

.ej2-final__intro {
	position: relative;
	max-width: 60ch;
	margin: 0;
	color: rgba(255, 255, 255, 0.74);
	font-size: var(--ej2-lead);
}

.ej2-final__paths {
	position: relative;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	margin-top: clamp(3rem, 6vw, 5rem);
	border-top: 1px solid rgba(255, 255, 255, 0.25);
	border-bottom: 1px solid rgba(255, 255, 255, 0.25);
}

.ej2-final__path {
	display: flex;
	min-height: 170px;
	align-items: center;
	justify-content: space-between;
	gap: 1.5rem;
	padding: clamp(1.5rem, 3vw, 3rem);
	color: var(--ej2-white);
	text-decoration: none;
	transition: background var(--ej2-fast);
}

.ej2-final__path:not(:last-child) {
	border-inline-end: 1px solid rgba(255, 255, 255, 0.25);
}

.ej2-final__path:hover {
	background: rgba(255, 255, 255, 0.075);
}

.ej2-final__path--secondary {
	background: rgba(255, 255, 255, 0.035);
}

.ej2-final__path strong {
	display: block;
	margin-bottom: 0.45rem;
	font-family: var(--ej2-font-display);
	font-size: clamp(1.15rem, 1.55vw, 1.55rem);
}

.ej2-final__path small {
	display: block;
	color: rgba(255, 255, 255, 0.68);
	font-size: 0.9rem;
}

.ej2-final__path-arrow {
	font-family: var(--ej2-font-latin);
	font-size: 2rem;
	transition: transform var(--ej2-fast) var(--ej2-ease);
}

.ej2-final__path:hover .ej2-final__path-arrow {
	transform: translateX(-0.45rem);
}

.ej2-final__motivation {
	position: relative;
	margin: 1.35rem 0 0;
	color: rgba(255, 255, 255, 0.72);
	font-size: 0.92rem;
}

/* Footer refinement */
.enjaz-v2 .enjaz-footer {
	border: 0;
	background: linear-gradient(180deg, #081a2b 0%, #061522 100%);
	color: rgba(255, 255, 255, 0.7);
}

.enjaz-v2 .enjaz-footer__grid {
	grid-template-columns: minmax(17rem, 1.35fr) minmax(9rem, 0.62fr) minmax(19rem, 1.05fr) minmax(16rem, 0.9fr);
	gap: clamp(2rem, 3.8vw, 4.8rem);
	padding-block: clamp(4rem, 7vw, 7rem);
	border-bottom: 1px solid rgba(255, 255, 255, 0.14);
}

.enjaz-v2 .enjaz-footer__brand > a:first-child {
	display: inline-block;
	position: relative;
	max-width: min(15rem, 82%);
	padding: 0 0 1.15rem;
	color: var(--ej2-white);
	background: transparent;
}

.enjaz-v2 .enjaz-footer__brand > a:first-child::after {
	content: "";
	position: absolute;
	inset-inline-start: 0;
	inset-block-end: 0;
	width: min(9rem, 66%);
	height: 2px;
	background: linear-gradient(90deg, var(--ej2-blue), var(--ej2-cyan), var(--ej2-emerald));
}

.enjaz-v2 .enjaz-footer__brand-logo {
	display: block;
	width: 100%;
	height: auto;
	filter: brightness(0) invert(1);
	opacity: 0.96;
	transition: opacity var(--ej2-fast) var(--ej2-ease), transform var(--ej2-fast) var(--ej2-ease);
}

.enjaz-v2 .enjaz-footer__brand > a:first-child:hover .enjaz-footer__brand-logo,
.enjaz-v2 .enjaz-footer__brand > a:first-child:focus-visible .enjaz-footer__brand-logo {
	opacity: 1;
	transform: translateY(-2px);
}

.enjaz-v2 .enjaz-footer__description {
	font-size: 0.94rem;
	line-height: 1.9;
}

.enjaz-v2 .enjaz-footer__links--services {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	column-gap: 1.25rem;
}

.enjaz-v2 .enjaz-footer__links--services a {
	font-size: 0.84rem;
	line-height: 1.55;
}

.enjaz-v2 .enjaz-footer__contact {
	font-size: 0.86rem;
	line-height: 1.8;
}

.enjaz-v2 .enjaz-partner-badge {
	border-color: rgba(37, 195, 199, 0.24);
	background: rgba(255, 255, 255, 0.07);
}

.enjaz-v2 .enjaz-partner-badge img {
	width: 5rem;
	height: 5rem;
	object-fit: contain;
	filter: none;
}

.enjaz-v2 .enjaz-footer__registry {
	display: grid;
	grid-template-columns: auto minmax(12rem, 1fr) minmax(14rem, auto);
	align-items: center;
	gap: clamp(1rem, 2vw, 1.75rem);
	margin-block: clamp(2rem, 4vw, 3rem);
	padding: clamp(1.15rem, 2.4vw, 1.75rem);
	border: 1px solid rgba(37, 195, 199, 0.24);
	background:
		linear-gradient(90deg, rgba(37, 195, 199, 0.065), transparent 42%),
		rgba(255, 255, 255, 0.035);
}

.enjaz-v2 .enjaz-footer__registry-icon {
	display: grid;
	width: 4.25rem;
	height: 4.25rem;
	place-items: center;
	border: 1px solid rgba(140, 229, 223, 0.36);
	color: var(--ej2-cyan);
	background: rgba(255, 255, 255, 0.045);
}

.enjaz-v2 .enjaz-footer__registry-icon svg {
	width: 2.75rem;
	height: 2.75rem;
}

.enjaz-v2 .enjaz-footer__registry-copy {
	display: grid;
	gap: 0.3rem;
}

.enjaz-v2 .enjaz-footer__registry-copy > span,
.enjaz-v2 .enjaz-footer__registry-source small {
	color: #b8c9d6;
	font-size: 0.78rem;
}

.enjaz-v2 .enjaz-footer__registry-copy strong {
	color: var(--ej2-white);
	font-size: clamp(1rem, 1.35vw, 1.2rem);
	font-variant-numeric: tabular-nums;
}

.enjaz-v2 .enjaz-footer__registry-source {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 0.2rem 1rem;
	align-items: center;
	min-height: 3.5rem;
	padding-inline: 1rem;
	border-inline-start: 1px solid rgba(255, 255, 255, 0.16);
	color: var(--ej2-white);
}

.enjaz-v2 .enjaz-footer__registry-source span:first-child {
	font-weight: 700;
}

.enjaz-v2 .enjaz-footer__registry-source small {
	grid-column: 1;
}

.enjaz-v2 .enjaz-footer__registry-source > span:last-child {
	grid-column: 2;
	grid-row: 1 / span 2;
	color: var(--ej2-cyan);
	font-size: 1.2rem;
}

.enjaz-v2 .enjaz-footer__registry-source:hover {
	color: var(--ej2-cyan-soft);
}

.enjaz-v2 .enjaz-footer__sectors {
	position: relative;
	padding: clamp(2rem, 4vw, 3.25rem);
	border: 1px solid rgba(37, 195, 199, 0.18);
	background: rgba(255, 255, 255, 0.025);
}

.enjaz-v2 .enjaz-footer__sectors::before {
	position: absolute;
	inset-block: 2rem;
	inset-inline-start: 0;
	width: 3px;
	background: linear-gradient(180deg, var(--ej2-cyan), var(--ej2-green));
	content: "";
}

/* English experience parity --------------------------------------------- */
html[dir="ltr"] body.enjaz-v2,
html[dir="ltr"] body.enjaz-v2 button,
html[dir="ltr"] body.enjaz-v2 input,
html[dir="ltr"] body.enjaz-v2 textarea,
html[dir="ltr"] body.enjaz-v2 select {
	font-family: var(--ej2-font-latin);
}

html[dir="ltr"] body.enjaz-v2 :where(h1, h2, h3, h4),
html[dir="ltr"] .ej2-home--en .ej2-kicker,
html[dir="ltr"] .ej2-en-blog .ej2-kicker {
	font-family: var(--ej2-font-latin);
}

html[dir="ltr"] .ej2-home--en .ej2-hero__title {
	max-width: 15ch;
	font-size: clamp(2.7rem, 5.6vw, 5.9rem);
	line-height: 0.98;
	letter-spacing: -0.06em;
}

html[dir="ltr"] .ej2-home--en .ej2-hero__lead,
html[dir="ltr"] .ej2-home--en .ej2-section-intro,
html[dir="ltr"] .ej2-home--en .ej2-service-panel__description {
	line-height: 1.65;
}

.ej2-en-blog {
	background: var(--ej2-paper);
	color: var(--ej2-ink);
}

.ej2-en-about-v2 {
	background: var(--ej2-paper-warm);
	color: var(--ej2-text);
}

.ej2-en-about-v2__hero {
	padding-block: clamp(6.5rem, 12vw, 11rem);
	background:
		linear-gradient(90deg, rgba(37, 195, 199, 0.1), transparent 46%),
		var(--ej2-ink-deep);
}

.ej2-en-about-v2__hero-grid,
.ej2-en-about-v2__position-grid,
.ej2-en-about-v2__leadership-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(18rem, 0.85fr);
	gap: clamp(3rem, 8vw, 8rem);
	align-items: start;
}

.ej2-en-about-v2__hero h1 {
	max-width: 13ch;
	margin: 0;
	color: var(--ej2-white);
	font-size: clamp(3rem, 6.7vw, 7rem);
	line-height: 0.98;
	letter-spacing: -0.065em;
}

.ej2-en-about-v2__hero-copy {
	padding-block-start: 1.75rem;
	border-block-start: 1px solid rgba(255, 255, 255, 0.28);
}

.ej2-en-about-v2__hero-copy p {
	margin: 0 0 1.3rem;
	color: #d7e4ed;
	font-size: clamp(1rem, 1.3vw, 1.18rem);
	line-height: 1.75;
}

.ej2-en-about-v2__hero-copy a {
	display: inline-flex;
	gap: 0.6rem;
	margin-block-start: 0.75rem;
	color: var(--ej2-cyan-soft, #8ce5df);
	font-weight: 800;
}

.ej2-en-about-v2__position,
.ej2-en-about-v2__values,
.ej2-en-about-v2__leadership {
	padding-block: clamp(5rem, 9vw, 9rem);
}

.ej2-en-about-v2__position h2,
.ej2-en-about-v2__leadership h2 {
	max-width: 14ch;
	margin: 0;
	font-size: clamp(2.5rem, 5vw, 5rem);
	line-height: 1.04;
	letter-spacing: -0.055em;
}

.ej2-en-about-v2__position-grid > div:last-child p {
	margin: 0 0 1.35rem;
	font-size: clamp(1.05rem, 1.35vw, 1.24rem);
	line-height: 1.8;
}

.ej2-en-about-v2__method,
.ej2-en-about-v2__proof {
	padding-block: clamp(5rem, 9vw, 9rem);
	background: var(--ej2-ink-deep);
}

.ej2-en-about-v2__method :is(.ej2-section-title, .ej2-section-intro),
.ej2-en-about-v2__proof :is(.ej2-section-title, .ej2-section-intro) {
	color: var(--ej2-white);
}

.ej2-en-about-v2__method .ej2-section-intro,
.ej2-en-about-v2__proof .ej2-section-intro {
	color: #d7e4ed;
}

.ej2-en-about-v2__method-line {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	margin-block-start: clamp(3rem, 6vw, 6rem);
	border-block: 1px solid rgba(255, 255, 255, 0.24);
}

.ej2-en-about-v2__method-line > div {
	min-height: 18rem;
	padding: clamp(2rem, 4vw, 3.5rem);
	border-inline-end: 1px solid rgba(255, 255, 255, 0.24);
}

.ej2-en-about-v2__method-line > div:last-child {
	border-inline-end: 0;
}

.ej2-en-about-v2__method-line strong {
	display: block;
	margin-block-end: 4rem;
	color: var(--ej2-cyan-soft, #8ce5df);
	font-size: clamp(1.5rem, 2.5vw, 2.5rem);
}

.ej2-en-about-v2__method-line p {
	margin: 0;
	color: #d7e4ed;
	line-height: 1.75;
}

.ej2-en-about-v2__value-list {
	display: grid;
	grid-template-columns: 1fr 1fr;
	margin: clamp(3rem, 6vw, 6rem) 0 0;
	padding: 0;
	border-block-start: 1px solid var(--ej2-line-strong);
	list-style: none;
}

.ej2-en-about-v2__value-list li {
	min-height: 16rem;
	padding: clamp(2rem, 4vw, 3.5rem);
	border-block-end: 1px solid var(--ej2-line-strong);
	border-inline-end: 1px solid var(--ej2-line-strong);
}

.ej2-en-about-v2__value-list li:nth-child(2n) {
	border-inline-end: 0;
}

.ej2-en-about-v2__value-list h3 {
	margin: 0 0 1.25rem;
	font-size: clamp(1.45rem, 2.3vw, 2.2rem);
}

.ej2-en-about-v2__value-list p {
	max-width: 38rem;
	margin: 0;
	color: var(--ej2-text-soft);
	line-height: 1.75;
}

.ej2-en-about-v2__proof-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	margin-block: clamp(3rem, 6vw, 6rem);
	border-block: 1px solid rgba(255, 255, 255, 0.24);
}

.ej2-en-about-v2__proof-grid > div {
	min-height: 12rem;
	display: grid;
	align-content: space-between;
	padding: clamp(1.5rem, 3vw, 2.5rem);
	border-inline-end: 1px solid rgba(255, 255, 255, 0.24);
}

.ej2-en-about-v2__proof-grid > div:last-child {
	border-inline-end: 0;
}

.ej2-en-about-v2__proof-grid strong {
	color: var(--ej2-white);
	font-size: clamp(2rem, 4vw, 4rem);
	line-height: 1;
}

.ej2-en-about-v2__proof-grid span {
	color: #d7e4ed;
	font-size: 0.82rem;
	line-height: 1.55;
}

.ej2-en-about-v2__leaders {
	border-block-start: 1px solid var(--ej2-line-strong);
}

.ej2-en-about-v2__leaders article {
	padding-block: 2rem;
	border-block-end: 1px solid var(--ej2-line-strong);
}

.ej2-en-about-v2__leaders h3 {
	margin: 0 0 0.75rem;
	font-size: clamp(1.4rem, 2.1vw, 2rem);
}

.ej2-en-about-v2__leaders p {
	margin: 0;
	color: var(--ej2-text-soft);
	line-height: 1.75;
}

.ej2-en-about-v2__cta {
	padding-block: clamp(5rem, 9vw, 8rem);
	background: var(--ej2-blue);
}

.ej2-en-about-v2__cta h2 {
	max-width: 18ch;
	margin: 0 0 2.5rem;
	color: var(--ej2-white);
	font-size: clamp(2.5rem, 5vw, 5rem);
	line-height: 1.04;
	letter-spacing: -0.055em;
}

.ej2-en-blog__hero {
	position: relative;
	overflow: hidden;
	padding-block: clamp(6.5rem, 12vw, 11rem) clamp(4.5rem, 8vw, 7.5rem);
	background:
		linear-gradient(90deg, rgba(37, 195, 199, 0.09), transparent 45%),
		var(--ej2-ink-deep);
}

.ej2-en-blog__hero::after {
	position: absolute;
	inset: 0;
	background-image:
		linear-gradient(rgba(255, 255, 255, 0.045) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255, 255, 255, 0.045) 1px, transparent 1px);
	background-size: 8rem 8rem;
	content: "";
	pointer-events: none;
}

.ej2-en-blog__hero-grid {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: minmax(0, 1.35fr) minmax(18rem, 0.65fr);
	gap: clamp(3rem, 8vw, 8rem);
	align-items: end;
}

.ej2-en-blog__hero h1 {
	max-width: 12ch;
	margin: 0;
	color: var(--ej2-white);
	font-size: clamp(3rem, 6.7vw, 7rem);
	line-height: 0.98;
	letter-spacing: -0.065em;
}

.ej2-en-blog__hero-copy {
	padding-block-start: 2rem;
	border-block-start: 1px solid rgba(255, 255, 255, 0.28);
}

.ej2-en-blog__hero-copy p {
	margin: 0 0 2rem;
	color: #d7e4ed;
	font-size: clamp(1rem, 1.35vw, 1.2rem);
	line-height: 1.75;
}

.ej2-en-blog__hero-copy a {
	display: inline-flex;
	gap: 0.65rem;
	align-items: center;
	color: var(--ej2-cyan-soft);
	font-weight: 800;
}

.ej2-en-blog__topics {
	border-block-end: 1px solid var(--ej2-line-strong);
	background: var(--ej2-white);
}

.ej2-en-blog__topics .ej2-container--wide {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	padding-inline: 0;
}

.ej2-en-blog__topics span {
	padding: 1.15rem clamp(0.65rem, 1.6vw, 1.25rem);
	border-inline-end: 1px solid var(--ej2-line);
	color: var(--ej2-text-soft);
	font-size: 0.82rem;
	font-weight: 800;
	text-align: center;
}

.ej2-en-blog__index {
	padding-block: clamp(5rem, 9vw, 9rem);
}

.ej2-en-blog__list {
	margin-block-start: clamp(2.5rem, 5vw, 5rem);
	border-block-start: 1px solid var(--ej2-line-strong);
}

.ej2-en-insight {
	display: grid;
	grid-template-columns: minmax(13rem, 0.42fr) minmax(0, 1fr);
	gap: clamp(1.5rem, 4vw, 4rem);
	align-items: center;
	padding-block: clamp(1.75rem, 3vw, 2.75rem);
	border-block-end: 1px solid var(--ej2-line-strong);
}

.ej2-en-insight__media {
	display: block;
	overflow: hidden;
	aspect-ratio: 16 / 9;
	background: var(--ej2-paper);
}

.ej2-en-insight__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 360ms ease;
}

.ej2-en-insight:hover .ej2-en-insight__media img {
	transform: scale(1.025);
}

.ej2-en-insight__copy {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 0.75rem clamp(1.25rem, 3vw, 3rem);
	align-items: end;
}

.ej2-en-insight__meta {
	grid-column: 1 / -1;
	display: flex;
	gap: 1rem;
	color: var(--ej2-green-deep);
	font-size: 0.75rem;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.06em;
}

.ej2-en-insight h3 {
	max-width: 28ch;
	margin: 0;
	font-size: clamp(1.45rem, 2.5vw, 2.5rem);
	line-height: 1.15;
	letter-spacing: -0.035em;
}

.ej2-en-insight h3 a {
	color: var(--ej2-ink);
}

.ej2-en-insight__link {
	color: var(--ej2-blue);
	font-size: 0.82rem;
	font-weight: 800;
	white-space: nowrap;
}

.ej2-en-blog__cta {
	padding-block: clamp(4.5rem, 8vw, 7.5rem);
	background: var(--ej2-blue);
}

.ej2-en-blog__cta h2 {
	max-width: 16ch;
	margin: 0 0 2.5rem;
	color: var(--ej2-white);
	font-size: clamp(2.4rem, 5vw, 5rem);
	line-height: 1.04;
	letter-spacing: -0.055em;
}

body.enjaz-v2 .enjaz-footer__sectors h2 {
	color: var(--ej2-white);
	font-size: clamp(1.35rem, 2vw, 1.75rem);
}

body.enjaz-v2 .enjaz-footer :is(h2, h3, h4, strong) {
	color: var(--ej2-white);
}

body.enjaz-v2 .enjaz-footer :is(p, li, small) {
	color: #cbd5e1;
}

.enjaz-v2 .enjaz-footer__sectors p {
	color: rgba(255, 255, 255, 0.7);
}

.enjaz-v2 .enjaz-footer__sectors a {
	border-color: rgba(255, 255, 255, 0.18);
	color: rgba(255, 255, 255, 0.82);
}

.enjaz-v2 .enjaz-footer__bottom {
	justify-content: flex-start;
}

.enjaz-v2 .enjaz-footer :where(a, button):focus-visible,
.enjaz-v2 .ej2-final__path:focus-visible {
	outline: 3px solid var(--ej2-cyan);
	outline-offset: 4px;
}

/* Inner service experience */
.enjaz-v2 .enjaz-page-hero {
	border-bottom: 1px solid var(--ej2-line);
	background:
		linear-gradient(90deg, rgba(37, 195, 199, 0.055) 1px, transparent 1px) 0 0 / 10rem 100%,
		var(--ej2-paper-warm);
}

.enjaz-v2 .enjaz-page-hero__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.2fr) minmax(18rem, 0.8fr);
	gap: clamp(2.5rem, 6vw, 7rem);
	align-items: stretch;
}

.enjaz-v2 .enjaz-page-hero__content {
	display: grid;
	align-content: center;
	padding-block: clamp(4rem, 8vw, 8rem);
}

.enjaz-v2 .enjaz-page-hero .enjaz-title {
	max-width: 13ch;
	color: var(--ej2-ink);
	font-size: clamp(3rem, 6.2vw, 6.4rem);
	letter-spacing: -0.04em;
	line-height: 1.15;
}

.enjaz-v2 .enjaz-page-hero .enjaz-lead {
	max-width: 55ch;
	color: var(--ej2-text-soft);
	font-size: clamp(1rem, 1.4vw, 1.2rem);
	line-height: 1.9;
}

.enjaz-v2 .enjaz-page-hero__panel {
	border: 0;
	border-inline-start: 1px solid var(--ej2-line);
	border-radius: 0;
	background: var(--ej2-paper);
	box-shadow: none;
}

.enjaz-v2 .enjaz-services-page .enjaz-section,
.enjaz-v2 .enjaz-service-landing .enjaz-section {
	padding-block: clamp(4.5rem, 8vw, 8rem);
}

.enjaz-v2 .enjaz-services-page .enjaz-section-heading,
.enjaz-v2 .enjaz-service-landing .enjaz-section-heading {
	max-width: 52rem;
	margin-bottom: clamp(2.5rem, 5vw, 4.5rem);
}

.enjaz-v2 .enjaz-services-page .enjaz-section-title,
.enjaz-v2 .enjaz-service-landing .enjaz-section-title {
	max-width: 16ch;
	font-size: clamp(2.25rem, 4.8vw, 5rem);
	letter-spacing: -0.035em;
	line-height: 1.2;
}

.enjaz-v2 .enjaz-services-page .enjaz-proof-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0;
	border-block: 1px solid var(--ej2-line);
}

.enjaz-v2 .enjaz-services-page .enjaz-proof-card {
	min-height: 17rem;
	padding: 2rem;
	border: 0;
	border-inline-end: 1px solid var(--ej2-line);
	border-bottom: 1px solid var(--ej2-line);
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

.enjaz-v2 .enjaz-services-page .enjaz-proof-card:nth-child(3n) {
	border-inline-end: 0;
}

.enjaz-v2 .enjaz-services-bento {
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	gap: 0;
	border-top: 1px solid var(--ej2-line);
}

.enjaz-v2 .enjaz-service-card,
.enjaz-v2 .enjaz-service-card:nth-child(n) {
	min-height: 25rem;
	grid-column: span 4;
	padding: clamp(1.75rem, 3vw, 2.8rem);
	border: 0;
	border-inline-end: 1px solid var(--ej2-line);
	border-bottom: 1px solid var(--ej2-line);
	border-radius: 0;
	background: var(--ej2-white);
	box-shadow: none;
}

.enjaz-v2 .enjaz-service-card:nth-child(3n) {
	border-inline-end: 0;
}

.enjaz-v2 .enjaz-service-card--accent {
	background: var(--ej2-ink);
	color: var(--ej2-white);
}

.enjaz-v2 .enjaz-service-card__number {
	color: var(--ej2-green-deep);
	font-family: var(--ej2-font-latin);
}

.enjaz-v2 .enjaz-service-card__title {
	font-size: clamp(1.4rem, 2vw, 2rem);
	line-height: 1.45;
}

.enjaz-v2 .enjaz-service-card__description {
	font-size: 0.94rem;
	line-height: 1.9;
}

.enjaz-v2 .enjaz-service-card__actions {
	margin-top: auto;
}

.enjaz-v2 .enjaz-section--ink .enjaz-section-title,
.enjaz-v2 .enjaz-section--ink .enjaz-lead,
.enjaz-v2 .enjaz-section--ink .enjaz-eyebrow {
	color: var(--ej2-white);
}

.enjaz-v2 .enjaz-section--ink .enjaz-lead {
	opacity: 0.78;
}

.enjaz-v2 .enjaz-cta-band {
	align-items: end;
	gap: clamp(2rem, 5vw, 6rem);
}

.enjaz-v2 .enjaz-section--ink .enjaz-button--secondary {
	border-color: rgba(255, 255, 255, 0.55);
	background: transparent;
	color: var(--ej2-white);
}

.enjaz-service-value__grid {
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
	gap: clamp(3rem, 7vw, 8rem);
	align-items: start;
}

.enjaz-service-deliverables {
	margin: 0;
	padding: 0;
	border-top: 1px solid var(--ej2-line);
	list-style: none;
}

.enjaz-service-deliverables li {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: 1rem;
	align-items: start;
	padding: 1.35rem 0;
	border-bottom: 1px solid var(--ej2-line);
	color: var(--ej2-ink);
	font-weight: 600;
	line-height: 1.75;
}

[dir="rtl"] .enjaz-service-deliverables li {
	padding: 1.35rem 0;
}

.enjaz-service-deliverables li::before {
	display: none;
}

.enjaz-service-deliverables__icon,
.enjaz-v2 .enjaz-service-landing .enjaz-process__icon {
	display: grid;
	width: 2.75rem;
	height: 2.75rem;
	place-items: center;
	border: 1px solid rgba(8, 127, 112, 0.24);
	color: var(--ej2-green-deep);
	background: linear-gradient(145deg, rgba(37, 195, 199, 0.1), rgba(0, 168, 143, 0.035));
}

.enjaz-service-deliverables__icon .enjaz-line-icon,
.enjaz-v2 .enjaz-service-landing .enjaz-process__icon .enjaz-line-icon {
	width: 1.35rem;
	height: 1.35rem;
}

.enjaz-v2 .enjaz-service-landing .enjaz-service-hero__symbol {
	position: relative;
	display: grid;
	width: clamp(8rem, 14vw, 12rem);
	aspect-ratio: 1;
	place-items: center;
	margin-block-end: 1.5rem;
	border: 1px solid rgba(7, 59, 130, 0.15);
	background:
		linear-gradient(90deg, transparent 49.5%, rgba(7, 59, 130, 0.1) 50%, transparent 50.5%),
		linear-gradient(transparent 49.5%, rgba(7, 59, 130, 0.1) 50%, transparent 50.5%);
}

.enjaz-v2 .enjaz-service-landing .enjaz-service-hero__symbol::before,
.enjaz-v2 .enjaz-service-landing .enjaz-service-hero__symbol::after {
	position: absolute;
	width: 0.72rem;
	height: 0.72rem;
	border: 2px solid var(--ej2-blue);
	border-radius: 50%;
	background: var(--ej2-white);
	content: "";
}

.enjaz-v2 .enjaz-service-landing .enjaz-service-hero__symbol::before {
	inset-inline-start: 13%;
	inset-block-end: 18%;
}

.enjaz-v2 .enjaz-service-landing .enjaz-service-hero__symbol::after {
	inset-inline-end: 12%;
	inset-block-start: 13%;
	border-color: var(--ej2-green);
}

.enjaz-v2 .enjaz-service-landing .enjaz-service-hero__symbol > .enjaz-line-icon {
	position: relative;
	z-index: 2;
	width: clamp(3.25rem, 6vw, 5.4rem);
	height: clamp(3.25rem, 6vw, 5.4rem);
	padding: 0.7rem;
	border: 1px solid rgba(37, 195, 199, 0.32);
	color: var(--ej2-blue);
	background: var(--ej2-white);
}

.enjaz-v2 .enjaz-service-landing .enjaz-service-hero__route {
	position: absolute;
	inset: 20% 15%;
	border-block-end: 3px solid var(--ej2-cyan);
	transform: rotate(-28deg);
	transform-origin: center;
}

.enjaz-v2 .enjaz-service-landing .enjaz-process {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0;
	border-block: 1px solid var(--ej2-line);
	margin: 0;
	padding: 0;
	list-style: none;
}

.enjaz-v2 .enjaz-service-landing .enjaz-process__item {
	min-height: 15rem;
	padding: clamp(1.5rem, 2.5vw, 2.5rem);
	border: 0;
	border-inline-end: 1px solid var(--ej2-line);
	border-radius: 0;
	background: var(--ej2-white);
	box-shadow: none;
}

.enjaz-v2 .enjaz-service-landing .enjaz-process__icon {
	margin-block: 1.1rem 1.35rem;
}

.enjaz-v2 .enjaz-service-landing .enjaz-process__item:last-child {
	border-inline-end: 0;
}

.enjaz-v2 .enjaz-service-landing .enjaz-process__item::before {
	display: none;
}

.enjaz-v2 .enjaz-service-landing .enjaz-process__item::after {
	background: linear-gradient(90deg, rgba(8, 124, 202, 0.3), rgba(0, 168, 143, 0.7));
}

.enjaz-v2 .enjaz-service-landing .enjaz-process__title {
	color: var(--ej2-ink);
}

.enjaz-v2 .enjaz-service-landing .enjaz-process__description {
	color: var(--ej2-text-soft);
}

.enjaz-v2 .enjaz-footer__heading {
	color: var(--ej2-white);
	font-size: 0.96rem;
	letter-spacing: 0;
}

.enjaz-v2 .enjaz-footer a {
	color: rgba(255, 255, 255, 0.72);
}

.enjaz-v2 .enjaz-footer a:hover {
	color: var(--ej2-cyan);
}

/* A closed floating panel must not intercept links beneath its grid wrapper. */
.enjaz-v2 .enjaz-contact-dock {
	pointer-events: none;
}

.enjaz-v2 .enjaz-contact-dock > button,
.enjaz-v2 .enjaz-contact-dock:not(.is-enhanced) .enjaz-contact-dock__actions,
.enjaz-v2 .enjaz-contact-dock.is-open .enjaz-contact-dock__actions {
	pointer-events: auto;
}

.enjaz-v2 .enjaz-contact-dock.is-enhanced .enjaz-contact-dock__actions {
	visibility: hidden;
}

.enjaz-v2 .enjaz-contact-dock.is-enhanced.is-open .enjaz-contact-dock__actions {
	visibility: visible;
}

.enjaz-v2 .enjaz-footer a:focus-visible {
	outline: 2px solid var(--ej2-cyan);
	outline-offset: 5px;
}

.enjaz-v2 .enjaz-contact-dock > button,
.enjaz-v2 .enjaz-back-to-top {
	background: var(--ej2-green-deep);
	box-shadow: 0 14px 36px rgba(8, 26, 43, 0.18);
}

/* Scroll reveal: progressive enhancement only */
.enjaz2-enhanced [data-ej2-reveal] {
	opacity: 0;
	transform: translateY(28px);
	transition: opacity var(--ej2-slow) var(--ej2-ease), transform var(--ej2-slow) var(--ej2-ease);
}

.enjaz2-enhanced [data-ej2-reveal].is-visible {
	opacity: 1;
	transform: none;
}

.enjaz2-capture [data-ej2-reveal] {
	opacity: 1 !important;
	transform: none !important;
}

/* Responsive */
@media (max-width: 1100px) {
	:root {
		--ej2-container: min(100% - 40px, 1040px);
		--ej2-container-wide: min(100% - 40px, 1120px);
	}

	.ej2-hero__grid {
		grid-template-columns: minmax(0, 1.1fr) minmax(18rem, 0.9fr);
		gap: 2.5rem;
	}

	.ej2-hero__title {
		font-size: clamp(3rem, 5.2vw, 4.4rem);
	}

	.ej2-hero__copy {
		align-self: start;
	}

	.ej2-hero__brand-line {
		gap: 0.02em 0.16em;
	}

	.ej2-hero__lead {
		font-size: 1.02rem;
		line-height: 1.78;
	}

	.ej2-evidence__grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.ej2-evidence__item:nth-child(2) {
		border-inline-end: 0;
	}

	.ej2-evidence__item:nth-child(-n+2) {
		border-bottom: 1px solid var(--ej2-line);
	}

	.ej2-final__paths {
		grid-template-columns: repeat(2, 1fr);
	}

	.ej2-final__path:not(:last-child) {
		border-inline-end: 0;
	}

	.ej2-final__path:nth-child(odd) {
		border-inline-end: 1px solid rgba(255, 255, 255, 0.25);
	}

	.ej2-final__path:nth-child(-n+2) {
		border-bottom: 1px solid rgba(255, 255, 255, 0.25);
	}

	.enjaz-v2 .enjaz-footer__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.enjaz-v2 .enjaz-footer__registry {
		grid-template-columns: auto 1fr;
	}

	.enjaz-v2 .enjaz-footer__registry-source {
		grid-column: 1 / -1;
		border-block-start: 1px solid rgba(255, 255, 255, 0.16);
		border-inline-start: 0;
		padding-block-start: 1rem;
	}

	.enjaz-v2 .enjaz-service-card,
	.enjaz-v2 .enjaz-service-card:nth-child(n) {
		grid-column: span 6;
	}

	.enjaz-v2 .enjaz-service-card:nth-child(3n) {
		border-inline-end: 1px solid var(--ej2-line);
	}

	.enjaz-v2 .enjaz-service-card:nth-child(2n) {
		border-inline-end: 0;
	}

	.enjaz-v2 .enjaz-service-landing .enjaz-process {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.enjaz-v2 .enjaz-service-landing .enjaz-process__item:nth-child(2n) {
		border-inline-end: 0;
	}

	.enjaz-v2 .enjaz-service-landing .enjaz-process__item:nth-child(-n + 2) {
		border-bottom: 1px solid var(--ej2-line);
	}
}

@media (max-width: 920px) {
	.enjaz-v2 .enjaz-header__inner {
		min-height: 74px;
	}

	.enjaz-v2 .enjaz-nav {
		background: var(--ej2-paper-warm);
	}

	.enjaz-v2 .enjaz-nav__list {
		padding: 1rem 1.25rem 2rem;
	}

	.enjaz-v2 .enjaz-nav__submenu {
		min-width: 0;
		border: 0;
		box-shadow: none;
	}

	.enjaz-v2 .enjaz-nav__item:focus-within > .enjaz-nav__trigger[aria-expanded="false"] + .enjaz-nav__submenu {
		max-height: 0;
		padding-block: 0;
		transform: none;
	}

	.enjaz-v2 .enjaz-nav__submenu--services {
		width: 100%;
		overflow: hidden;
	}

	.enjaz-v2 .enjaz-nav__trigger[aria-expanded="true"] + .enjaz-nav__submenu--services {
		max-height: min(34rem, calc(100svh - 11rem));
		overflow-y: auto;
		overscroll-behavior: contain;
		scrollbar-color: var(--ej2-green) transparent;
		scrollbar-width: thin;
	}

	.enjaz-v2 .enjaz-nav__mega-intro {
		display: grid;
		gap: 0.65rem;
		padding: 1rem;
	}

	.enjaz-v2 .enjaz-nav__service-groups {
		grid-template-columns: 1fr;
	}

	.enjaz-v2 .enjaz-nav__service-group {
		padding: 0.8rem 1rem;
	}

	.enjaz-v2 .enjaz-nav__service-group:not(:last-child) {
		border-inline-end: 0;
		border-bottom: 1px solid var(--ej2-line);
	}

	.ej2-hero {
		min-height: auto;
		background: var(--ej2-paper-warm);
	}

	.ej2-hero__grid,
	.ej2-positioning__grid,
	.ej2-section-head,
	.ej2-google-proof,
	.ej2-voices,
	.ej2-faq__grid {
		grid-template-columns: 1fr;
	}

	.enjaz-service-value__grid {
		grid-template-columns: 1fr;
	}

	.enjaz-v2 .enjaz-services-page .enjaz-proof-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.enjaz-v2 .enjaz-services-page .enjaz-proof-card:nth-child(3n) {
		border-inline-end: 1px solid var(--ej2-line);
	}

	.enjaz-v2 .enjaz-services-page .enjaz-proof-card:nth-child(2n) {
		border-inline-end: 0;
	}

	.ej2-hero__visual {
		min-height: 480px;
		border-top: 1px solid var(--ej2-line);
		border-inline-start: 0;
	}

	.ej2-positioning__aside,
	.ej2-faq__aside {
		position: static;
	}

	.ej2-about {
		background: var(--ej2-paper);
	}

	.ej2-about__grid {
		grid-template-columns: 1fr;
		gap: 2.5rem;
	}

	.ej2-service-item {
		width: 42%;
	}

	.ej2-service-panel {
		width: 58%;
	}

	.ej2-service-panel {
		padding: 2.4rem;
	}

	.ej2-service-panel__signal {
		margin-bottom: 4rem;
	}

	.ej2-proof-rail__inner {
		grid-template-columns: repeat(2, 1fr);
	}

	.ej2-proof-rail__label,
	.ej2-proof-rail__item {
		border-inline-end: 0;
		border-bottom: 1px solid var(--ej2-line);
	}

	.ej2-proof-rail__label:nth-child(odd),
	.ej2-proof-rail__item:nth-child(odd) {
		border-inline-end: 1px solid var(--ej2-line);
	}
}

@media (max-width: 720px) {
	/* Keep the mobile journey immediate and compositor-friendly. */
	.ej2-journey-mark__path {
		stroke-dashoffset: 0;
		animation: none;
		transition: none;
	}

	:root {
		--ej2-container: calc(100% - 32px);
		--ej2-container-wide: calc(100% - 32px);
		--ej2-space-section: 4.25rem;
	}

	.enjaz-v2 .enjaz-header__inner {
		gap: 0.75rem;
	}

	.enjaz-v2 .enjaz-brand {
		width: 112px;
	}

	.enjaz-v2 .enjaz-header__actions > .enjaz-button {
		display: none;
	}

	.enjaz-v2 .enjaz-footer__registry {
		grid-template-columns: 1fr;
		padding: 1.25rem;
	}

	.enjaz-v2 .enjaz-footer__registry-icon {
		width: 3.75rem;
		height: 3.75rem;
	}

	.enjaz-v2 .enjaz-footer__registry-source {
		grid-column: auto;
		padding-inline: 0;
	}

	.ej2-hero {
		padding-top: 3.8rem;
	}

	.ej2-hero__title {
		max-width: 100%;
		font-size: clamp(2.55rem, 11.2vw, 2.85rem);
		letter-spacing: -0.01em;
		line-height: 1.18;
	}

	.ej2-hero__title-accent::after {
		width: calc(100% + 0.36em);
		height: 0.17em;
	}

	.ej2-hero__title-line + .ej2-hero__title-line {
		margin-top: 0.12em;
	}

	.ej2-hero__brand-line {
		gap: 0.02em 0.18em;
	}

	.ej2-hero__title-accent {
		padding-block-end: 0.2em;
	}

	.ej2-hero__lead {
		font-size: 1.04rem;
		line-height: 1.85;
	}

	.ej2-hero__actions {
		display: grid;
	}

	.ej2-button {
		width: 100%;
	}

	.ej2-hero__proof {
		display: grid;
		gap: 0.55rem;
	}

	.ej2-hero__visual {
		min-height: 390px;
	}

	.ej2-logo-island {
		right: 50%;
		width: 42%;
	}

	.ej2-journey-label--execute {
		display: none;
	}

	.ej2-proof-rail__inner,
	.ej2-sectors__index,
	.ej2-final__paths {
		grid-template-columns: 1fr;
	}

	.ej2-proof-rail__label,
	.ej2-proof-rail__item {
		min-height: 68px;
		border-inline-end: 0;
	}

	.ej2-proof-rail__label:nth-child(odd),
	.ej2-proof-rail__item:nth-child(odd) {
		border-inline-end: 0;
	}

	.ej2-process__item {
		grid-template-columns: 2.7rem 1fr;
	}

	.ej2-services__explorer {
		min-height: auto;
	}

	.ej2-services__items {
		display: block;
		min-height: 0;
	}

	.ej2-service-item {
		display: block;
		width: 100%;
		margin: 0;
		border-bottom: 1px solid rgba(255, 255, 255, 0.14);
	}

	.ej2-services__tab {
		grid-template-columns: 0.8rem 1fr auto;
		min-height: 72px;
		border-inline-end: 0;
		border-bottom: 0;
	}

	.ej2-service-item[open] > .ej2-services__tab {
		border-bottom: 1px solid rgba(255, 255, 255, 0.14);
	}

	.ej2-service-panel {
		position: static;
		width: 100%;
		overflow: visible;
		padding: 2rem 0 2.5rem;
	}

	.ej2-service-panel__signal {
		display: none;
	}

	.ej2-service-panel__links li {
		flex-basis: 100%;
	}

	.enjaz-v2 .enjaz-back-to-top {
		display: none;
	}

	.enjaz-v2 .enjaz-footer__grid {
		grid-template-columns: 1fr;
		gap: 2.75rem;
	}

	.enjaz-v2 .enjaz-footer__links--services {
		grid-template-columns: 1fr;
	}

	.enjaz-v2 .enjaz-services-page .enjaz-proof-grid {
		grid-template-columns: 1fr;
	}

	.enjaz-v2 .enjaz-services-page .enjaz-proof-card,
	.enjaz-v2 .enjaz-services-page .enjaz-proof-card:nth-child(n) {
		min-height: 0;
		border-inline-end: 0;
	}

	.enjaz-v2 .enjaz-service-card,
	.enjaz-v2 .enjaz-service-card:nth-child(n) {
		min-height: 0;
		grid-column: 1 / -1;
		border-inline-end: 0;
	}

	.enjaz-v2 .enjaz-service-landing .enjaz-process {
		grid-template-columns: 1fr;
	}

	.enjaz-v2 .enjaz-service-landing .enjaz-page-hero__grid {
		grid-template-columns: 1fr;
		gap: 0;
	}

	.enjaz-v2 .enjaz-service-landing .enjaz-page-hero__panel {
		border-inline-start: 0;
		border-block-start: 1px solid var(--ej2-line);
	}

	.enjaz-v2 .enjaz-service-landing .enjaz-process__item,
	.enjaz-v2 .enjaz-service-landing .enjaz-process__item:nth-child(n) {
		min-height: 0;
		border-inline-end: 0;
		border-bottom: 1px solid var(--ej2-line);
	}

	.enjaz-v2 .enjaz-service-landing .enjaz-process__item:last-child {
		border-bottom: 0;
	}

	.ej2-evidence__grid {
		grid-template-columns: 1fr;
	}

	.ej2-why-index {
		grid-template-columns: 1fr;
	}

	.ej2-why-index li:nth-child(odd) {
		border-inline-end: 0;
	}

	.ej2-results-head {
		display: grid;
		align-items: start;
		gap: 0.75rem;
	}

	.ej2-evidence__item,
	.ej2-evidence__item:nth-child(2) {
		min-height: 180px;
		border-inline-end: 0;
		border-bottom: 1px solid var(--ej2-line);
	}

	.ej2-evidence__item:last-child {
		border-bottom: 0;
	}

	.ej2-google-proof {
		padding: 2rem;
	}

	.ej2-google-proof__mark {
		min-height: 170px;
	}

	.ej2-sectors__item:nth-child(odd) {
		border-inline-end: 0;
	}

	.ej2-partner-line__item {
		grid-template-columns: none;
		grid-template-rows: 4rem auto;
		gap: 0.55rem;
		width: 9.75rem;
		height: auto;
		min-height: 9rem;
		padding: 0.8rem 0.65rem;
	}

	.ej2-partner-line__logo {
		width: 100%;
		height: 4rem;
	}

	.ej2-partner-line__item img {
		max-height: 3.75rem;
	}

	.ej2-article {
		grid-template-columns: 1fr;
		gap: 1.15rem;
		padding-block: 2rem;
	}

	.ej2-article__media {
		width: 100%;
		aspect-ratio: 16 / 9;
	}

	.ej2-article__meta {
		margin-bottom: 0.65rem;
		font-size: 0.72rem;
	}

	.ej2-article__arrow {
		display: none;
	}

	.ej2-article__title {
		max-width: 100%;
		font-size: 1.18rem;
		line-height: 1.7;
	}

	.ej2-final__path:not(:last-child) {
		border-inline-end: 0;
		border-bottom: 1px solid rgba(255, 255, 255, 0.25);
	}

	.ej2-final__path {
		min-height: 128px;
		padding: 1.35rem 1.15rem;
	}

	.ej2-final__path--secondary {
		min-height: 108px;
	}

	.ej2-final__path:nth-child(odd) {
		border-inline-end: 0;
	}
}

@media (max-width: 920px) {
	.ej2-en-about-v2__hero-grid,
	.ej2-en-about-v2__position-grid,
	.ej2-en-about-v2__leadership-grid {
		grid-template-columns: 1fr;
	}

	.ej2-en-about-v2__method-line,
	.ej2-en-about-v2__proof-grid {
		grid-template-columns: 1fr 1fr;
	}

	.ej2-en-about-v2__method-line > div:nth-child(2n),
	.ej2-en-about-v2__proof-grid > div:nth-child(2n) {
		border-inline-end: 0;
	}

	.ej2-en-blog__hero-grid {
		grid-template-columns: 1fr;
		align-items: start;
	}

	.ej2-en-blog__hero-copy {
		max-width: 42rem;
	}

	.ej2-en-blog__topics .ej2-container--wide {
		grid-template-columns: repeat(3, 1fr);
	}

	.ej2-en-insight {
		grid-template-columns: minmax(10rem, 0.38fr) minmax(0, 1fr);
	}

	.ej2-en-insight__copy {
		grid-template-columns: 1fr;
	}

	.ej2-en-insight__link {
		white-space: normal;
	}
}

@media (max-width: 720px) {
	.ej2-en-about-v2__hero {
		padding-block: 5.5rem;
	}

	.ej2-en-about-v2__hero h1 {
		font-size: clamp(2.65rem, 14vw, 4rem);
		line-height: 1;
	}

	.ej2-en-about-v2__method-line,
	.ej2-en-about-v2__value-list,
	.ej2-en-about-v2__proof-grid {
		grid-template-columns: 1fr;
	}

	.ej2-en-about-v2__method-line > div,
	.ej2-en-about-v2__value-list li,
	.ej2-en-about-v2__proof-grid > div {
		min-height: auto;
		border-inline-end: 0;
	}

	.ej2-en-about-v2__method-line strong {
		margin-block-end: 2rem;
	}

	html[dir="ltr"] .ej2-home--en .ej2-hero__title {
		font-size: clamp(2.35rem, 12vw, 3.4rem);
		line-height: 1.02;
	}

	.ej2-en-blog__hero {
		padding-block: 5.5rem 4rem;
	}

	.ej2-en-blog__hero h1 {
		font-size: clamp(2.65rem, 14vw, 4rem);
		line-height: 1;
	}

	.ej2-en-blog__topics .ej2-container--wide {
		grid-template-columns: repeat(2, 1fr);
	}

	.ej2-en-blog__topics span:nth-child(2n) {
		border-inline-end: 0;
	}

	.ej2-en-insight {
		grid-template-columns: 1fr;
		gap: 1.25rem;
	}

	.ej2-en-insight h3 {
		font-size: 1.5rem;
		line-height: 1.25;
	}

	.ej2-en-blog__cta h2 {
		font-size: clamp(2.25rem, 11vw, 3.25rem);
	}
}

/* English About must remain readable if reveal JavaScript is delayed or absent. */
.ej2-en-about-v2 [data-ej2-reveal] {
	opacity: 1;
	transform: none;
}

.ej2-en-about-v2__value-list li {
	min-height: 12rem;
}

.ej2-en-about-v2 .ej2-google-proof {
	grid-template-columns: minmax(13rem, 0.55fr) minmax(0, 1.45fr);
	gap: clamp(2rem, 5vw, 5rem);
	margin-top: clamp(3rem, 5vw, 5rem);
	padding: clamp(2rem, 4vw, 4rem);
}

.ej2-en-about-v2 .ej2-google-proof__mark {
	min-height: 13rem;
	padding: 1.5rem;
}

.ej2-en-about-v2 .ej2-google-proof__mark img {
	width: min(100%, 13rem);
}

.ej2-en-about-v2 .ej2-google-proof__content h3 {
	max-width: 18ch;
	font-size: clamp(1.9rem, 3vw, 3.1rem);
}

@media (max-width: 920px) {
	.ej2-en-about-v2 .ej2-google-proof {
		grid-template-columns: 1fr;
	}
}

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }

	.ej2-partner-line {
		overflow-x: auto;
		scrollbar-width: thin;
	}

	.ej2-partner-line__track {
		animation: none;
		will-change: auto;
	}

	.ej2-journey-mark__path {
		stroke-dashoffset: 0;
	}

	.ej2-journey-mark__node {
		transform: scale(1);
	}

	.ej2-logo-stage {
		transform: none;
	}

	.ej2-logo-layer,
	.ej2-logo-island.is-assembled .ej2-logo-layer {
		animation: none;
		transition: none;
		transform: none;
		translate: none;
	}

	.enjaz2-enhanced [data-ej2-reveal] {
		opacity: 1;
		transform: none;
	}

	body.enjaz-v2 *,
	body.enjaz-v2 *::before,
	body.enjaz-v2 *::after {
		scroll-behavior: auto !important;
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
	}
}

@media print {
	.enjaz-v2 .enjaz-header,
	.enjaz-v2 .enjaz-contact-dock,
	.enjaz-v2 .enjaz-back-to-top,
	.ej2-hero__visual {
		display: none;
	}

	.ej2-hero {
		min-height: auto;
	}

	.ej2-services {
		background: white;
		color: black;
	}
}

/* The two supplied partner marks keep their original colors at rest. */
.ej2-partner-line__item img[src$='/raseel.jpg'],
.ej2-partner-line__item img[src$='/half-million.webp'] {
	filter: none;
	opacity: 1;
}
