/*
 * Innovant — SSTR-inspired industrial/editorial redesign
 * ------------------------------------------------------
 * Progressive visual override only. This file deliberately changes no markup,
 * copy, routes, imagery, JavaScript behaviour, or business logic.
 *
 * Visual vocabulary:
 * - Innovant blue + neutral gray only
 * - precise 1px rules and square geometry
 * - technical labels, tabular numbers, restrained uppercase display type
 * - image-led hero and clean white / identity-gray work surfaces
 * - clipped-corner calls to action inspired by engineered components
 */

/* ==========================================================================
   01. DESIGN TOKENS / GLOBAL RESET
   ========================================================================== */

:root {
	--sstr-black: #10283a;
	--sstr-graphite: #17344c;
	--sstr-graphite-2: #24465f;
	--sstr-steel: #526d82;
	--sstr-line-dark: #6a879c;
	--sstr-line: #c6d8e6;
	--sstr-line-soft: #e1edf5;
	--sstr-silver: #edf5fb;
	--sstr-paper: #ffffff;
	--sstr-white: #ffffff;
	--sstr-ink: #10283a;
	--sstr-muted: #536a7d;
	--sstr-blue: #0877b9;
	--sstr-blue-bright: #65aeef;
	--sstr-blue-dark: #154d78;
	--sstr-gutter: clamp(20px, 5vw, 80px);
	--sstr-section: clamp(48px, 5vw, 80px);
	--sstr-max: 1440px;
	--sstr-header-h: 78px;
	--sstr-chamfer: 13px;
	--sstr-ease: cubic-bezier(.2, .7, .2, 1);
	--wp--preset--font-family--display: 'Jost', 'Helvetica Neue', Arial, sans-serif;

	/* Re-map the legacy theme palette so hard-coded components inherit the
	 * requested blue/gray identity without changing theme.json. */
	--wp--preset--color--primary: var(--sstr-blue);
	--wp--preset--color--primary-hover: var(--sstr-blue-dark);
	--wp--preset--color--blue: var(--sstr-blue-bright);
	--wp--preset--color--navy: var(--sstr-graphite);
	--wp--preset--color--navy-900: var(--sstr-black);
	--wp--preset--color--accent: var(--sstr-blue-bright);
	--wp--preset--color--accent-dark: var(--sstr-blue);
	--wp--preset--color--secondary: var(--sstr-blue-bright);
	--wp--preset--color--green: var(--sstr-blue);
	--wp--preset--color--ink: var(--sstr-ink);
	--wp--preset--color--body: #304b5e;
	--wp--preset--color--muted: var(--sstr-muted);
	--wp--preset--color--line: var(--sstr-line);
	--wp--preset--color--divider: var(--sstr-line-soft);
	--wp--preset--color--surface: var(--sstr-silver);
	--wp--preset--color--surface-alt: var(--sstr-paper);
	--wp--preset--color--sand: var(--sstr-silver);
	--wp--preset--color--stone: var(--sstr-line);
	--wp--preset--color--base: var(--sstr-paper);
	--wp--preset--color--info: var(--sstr-blue-bright);
	--wp--preset--color--success: var(--sstr-blue);
	--wp--preset--color--warning: var(--sstr-muted);
	--wp--preset--color--danger: var(--sstr-blue-dark);
	/* Fence WordPress core's vivid preset variables into the same identity. */
	--wp--preset--color--pale-pink: var(--sstr-silver);
	--wp--preset--color--vivid-red: var(--sstr-blue-dark);
	--wp--preset--color--luminous-vivid-orange: var(--sstr-blue-bright);
	--wp--preset--color--luminous-vivid-amber: var(--sstr-line);
	--wp--preset--color--light-green-cyan: var(--sstr-line-soft);
	--wp--preset--color--vivid-green-cyan: var(--sstr-blue);
	--wp--preset--color--pale-cyan-blue: var(--sstr-line-soft);
	--wp--preset--color--vivid-cyan-blue: var(--sstr-blue);
	--wp--preset--color--vivid-purple: var(--sstr-blue-dark);
	--wp--custom--border-radius--sm: 0px;
	--wp--custom--border-radius--md: 0px;
	--wp--custom--border-radius--lg: 0px;
	--wp--custom--border-radius--xl: 0px;
	--wp--custom--border-radius--pill: 0px;
	--radius-s: 0px;
	--radius-m: 0px;
	--radius-l: 0px;
	--shadow-sm: none;
	--shadow-md: none;
	--shadow-lg: none;
}

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

html {
	background: var(--sstr-black);
	scroll-padding-block-start: calc(var(--sstr-header-h) + 42px);
}

body {
	background: var(--sstr-paper);
	color: var(--sstr-ink);
	font-family: var(--wp--preset--font-family--body);
	font-size: clamp(1rem, .96rem + .18vw, 1.125rem);
	line-height: 1.55;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}

::selection {
	background: var(--sstr-blue-bright);
	color: var(--sstr-black);
}

.wp-site-blocks {
	background: var(--sstr-paper);
	padding-inline: 0;
}

:where(h1, h2, h3, h4, h5, h6, .wp-block-heading) {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 400;
	letter-spacing: -.035em;
	line-height: 1.02;
}

:where(h1, h2, .innovant-section-head__title, .innovant-archive-hero__title, .innovant-guide-hero__title) {
	text-transform: uppercase;
}

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

:where(a, button, input, select, textarea, summary):focus-visible {
	outline: 2px solid var(--sstr-blue-bright) !important;
	outline-offset: 3px;
}

img {
	max-inline-size: 100%;
}

/* The retained first-visit cinematic originally carried a warm accent. Keep
 * its content and behavior intact while applying the same logo-blue identity. */
html.inv-intro-lock::before {
	background: var(--sstr-graphite);
}

#inv-intro-layer {
	--jteal-lit: var(--sstr-blue-bright);
	--jmid: var(--sstr-blue-bright);
	--jamber: var(--sstr-blue-bright);
	--jnavy2: var(--sstr-graphite);
	--jink: var(--sstr-black);
	--jpaper: var(--sstr-paper);
}

.inv-skip:focus-visible {
	outline-color: var(--sstr-blue-bright);
}

.inv-stage__cta,
.inv-stage__cta:hover,
.inv-nojs__cta {
	background: var(--sstr-blue-bright);
	color: var(--sstr-black);
}

.inv-stage__cta:hover {
	box-shadow: 0 16px 38px rgba(86, 144, 204, .32);
}

/* Clean surfaces: the reference language comes from proportion, rules and
 * motion, not a repeated cross/dot construction pattern. */
:where(.innovant-home-section, .innovant-archive-body, .innovant-guide-detail) {
	background-image: none;
}

/* Remove soft, consumer-app geometry from every existing component family. */
:where(
	.innovant-card,
	.innovant-cptcard,
	.innovant-guide-card,
	.innovant-svc-card,
	.innovant-sectile,
	.innovant-numcard,
	.innovant-faq details,
	.innovant-faq2__item,
	.innovant-tstm__card,
	.innovant-ptnr__item,
	.innovant-hero__panel,
	.innovant-cta-card,
	.innovant-moretopic,
	.innovant-est__result,
	.innovant-form-wrap,
	.innovant-disclosure,
	.innovant-filecard
) {
	border-radius: 0 !important;
	box-shadow: none !important;
}

/* ==========================================================================
   02. BUTTONS / LINKS / CHAMFERED CONTROLS
   ========================================================================== */

:where(
	.innovant-btn,
	.wp-block-button__link,
	.wp-element-button,
	.innovant-form button[type="submit"],
	.innovant-form input[type="submit"],
	.innovant-fbar__submit,
	.innovant-est__cta a,
	.innovant-cta-card a
) {
	min-block-size: 50px;
	padding: 14px 28px;
	border: 0;
	border-radius: 0 !important;
	background: var(--sstr-blue-bright);
	color: var(--sstr-black);
	clip-path: polygon(
		var(--sstr-chamfer) 0,
		calc(100% - var(--sstr-chamfer)) 0,
		100% var(--sstr-chamfer),
		100% calc(100% - var(--sstr-chamfer)),
		calc(100% - var(--sstr-chamfer)) 100%,
		var(--sstr-chamfer) 100%,
		0 calc(100% - var(--sstr-chamfer)),
		0 var(--sstr-chamfer)
	);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	font: 700 .78rem/1 var(--wp--preset--font-family--body);
	letter-spacing: .075em;
	text-decoration: none;
	text-transform: uppercase;
	transition: background-color .2s var(--sstr-ease), color .2s var(--sstr-ease), transform .2s var(--sstr-ease);
}

:where(
	.innovant-btn,
	.wp-block-button__link,
	.wp-element-button,
	.innovant-form button[type="submit"],
	.innovant-form input[type="submit"],
	.innovant-fbar__submit,
	.innovant-est__cta a,
	.innovant-cta-card a
):hover {
	background: var(--sstr-blue);
	color: var(--sstr-white);
	transform: none;
}

.innovant-btn--amber {
	background: var(--sstr-blue-bright);
	color: var(--sstr-black);
}

.innovant-btn--ghost {
	background: rgba(48, 56, 64, .56);
	color: var(--sstr-white);
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .55) !important;
}

.innovant-btn--ghost:hover {
	background: var(--sstr-white);
	color: var(--sstr-black);
}

/* Technical inline-link treatment. */
:where(
	.innovant-cptcard__more,
	.innovant-guide-card__more,
	.innovant-svcdir__all,
	.innovant-roadmap__all,
	.innovant-moretopic__all,
	.innovant-subsvc__more,
	.innovant-relsvc__more
) {
	color: var(--sstr-blue);
	font-size: .75rem;
	font-weight: 800;
	letter-spacing: .09em;
	text-transform: uppercase;
}

/* ==========================================================================
   03. FIXED INDUSTRIAL HEADER / DESKTOP NAVIGATION
   ========================================================================== */

header.wp-block-template-part {
	position: sticky;
	inset-block-start: 0;
	z-index: 1000;
	background: var(--sstr-black);
	border-block-end: 1px solid var(--sstr-line-dark);
}

.innovant-header {
	background: rgba(48, 56, 64, .97);
	box-shadow: none;
	color: var(--sstr-white);
	backdrop-filter: blur(14px);
}

.innovant-header__bar {
	min-block-size: var(--sstr-header-h);
	max-inline-size: none !important;
	margin: 0 !important;
	padding: 0 var(--sstr-gutter);
	gap: clamp(18px, 2.4vw, 42px);
	border-inline: 1px solid rgba(255, 255, 255, .08);
	transition: min-block-size .25s var(--sstr-ease), background-color .25s var(--sstr-ease);
}

.innovant-header.is-scrolled .innovant-header__bar {
	min-block-size: 64px;
	padding-block: 0;
}

html.is-motion .innovant-header.is-scrolled {
	background-color: rgba(48, 56, 64, .94);
}

.innovant-header__brand {
	flex: 0 0 auto;
	padding-inline-end: clamp(16px, 2vw, 32px);
	border-inline-end: 1px solid rgba(255, 255, 255, .14);
}

.innovant-header__brand img {
	block-size: 36px;
	inline-size: auto;
	filter: grayscale(1) brightness(2.8);
}

.innovant-primary-nav {
	flex: 1 1 auto;
	min-inline-size: 0;
}

.innovant-primary-nav__list {
	gap: clamp(14px, 1.7vw, 34px);
}

.innovant-primary-nav__item {
	min-block-size: 44px;
}

.innovant-primary-nav__link {
	padding-block: 15px;
	color: rgba(255, 255, 255, .78);
	font-size: .625rem;
	font-weight: 700;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.innovant-primary-nav__link::before {
	content: "";
	position: absolute;
	inset-inline-start: 0;
	inset-block-start: 7px;
	inline-size: 4px;
	block-size: 4px;
	background: var(--sstr-blue-bright);
	opacity: 0;
	transition: opacity .2s var(--sstr-ease);
}

.innovant-primary-nav__link::after {
	block-size: 1px;
	border-radius: 0;
	background: var(--sstr-blue-bright);
}

.innovant-primary-nav__link:hover::before,
.innovant-primary-nav__link:focus-visible::before,
.innovant-primary-nav__link.is-current::before {
	opacity: 1;
}

.innovant-primary-nav__toggle {
	border-radius: 0;
}

.innovant-primary-nav__submenu {
	margin-block-start: 0;
	padding: 18px;
	background: var(--sstr-graphite);
	border: 1px solid var(--sstr-line-dark);
	border-radius: 0;
	box-shadow: none;
}

.innovant-primary-nav__submenu--mega {
	border-block-start: 1px solid var(--sstr-blue-bright);
	padding: 26px;
}

.innovant-navmega {
	gap: 18px 22px;
}

.innovant-navmega__h {
	padding: 0 0 10px;
	border-block-end: 1px solid var(--sstr-line-dark);
	color: var(--sstr-blue-bright);
	font-size: .68rem;
	letter-spacing: .1em;
}

.innovant-navmega__link,
.innovant-primary-nav__sublink {
	border-radius: 0;
	color: rgba(255, 255, 255, .82);
	font-size: .72rem;
}

.innovant-navmega__link:hover,
.innovant-navmega__link:focus-visible,
.innovant-primary-nav__sublink:hover,
.innovant-primary-nav__sublink:focus-visible {
	background: rgba(86, 144, 204, .14);
	color: var(--sstr-white);
}

.innovant-navmega__all {
	border-color: var(--sstr-line-dark);
}

.innovant-navmega__all a {
	color: var(--sstr-blue-bright);
	text-transform: uppercase;
	letter-spacing: .07em;
}

.innovant-header__actions {
	flex: 0 0 auto;
	min-inline-size: 0;
	gap: 12px;
	padding-inline-start: clamp(14px, 1.6vw, 26px);
	border-inline-start: 1px solid rgba(255, 255, 255, .14);
}

.innovant-header__search {
	flex: 0 1 240px;
	min-inline-size: 0;
	inline-size: clamp(118px, 13vw, 240px);
}

.innovant-header__search .wp-block-search__inside-wrapper {
	block-size: 42px;
	background: transparent;
	border: 1px solid var(--sstr-line-dark);
	border-radius: 0;
}

.innovant-header__search .wp-block-search__input {
	min-inline-size: 0;
	font-size: .68rem;
}

.innovant-header__search:focus-within .wp-block-search__inside-wrapper {
	box-shadow: inset 0 0 0 1px var(--sstr-blue-bright);
}

.innovant-langswitch__list {
	gap: 0;
}

.innovant-header .innovant-langswitch__link {
	font-size: .625rem;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.innovant-header__actions .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	block-size: 46px;
	min-block-size: 46px;
	padding-inline: 22px 14px;
	background: var(--sstr-blue-bright);
	border: 1px solid rgba(255, 255, 255, .3);
	color: var(--sstr-black);
	font-size: .68rem;
	font-weight: 800;
	letter-spacing: .065em;
	white-space: nowrap;
}

.innovant-header__actions .wp-block-button__link:hover {
	background: var(--sstr-white);
	color: var(--sstr-blue-dark);
}

.innovant-header-cta__arrow,
.innovant-i18n-cta__arrow {
	display: inline-grid;
	place-items: center;
	inline-size: 26px;
	block-size: 26px;
	border-inline-start: 1px solid currentColor;
	font-size: .9rem;
	line-height: 1;
	transition: transform .2s var(--sstr-ease);
}

.wp-block-button__link:hover :is(.innovant-header-cta__arrow, .innovant-i18n-cta__arrow) {
	transform: translateX(3px);
}

html[dir="rtl"] :is(.innovant-header-cta__arrow, .innovant-i18n-cta__arrow) {
	transform: scaleX(-1);
}

html[dir="rtl"] .wp-block-button__link:hover :is(.innovant-header-cta__arrow, .innovant-i18n-cta__arrow) {
	transform: scaleX(-1) translateX(3px);
}

/* News ticker becomes a compact engineering-status rail. */
.innovant-ticker {
	display: grid;
	grid-template-columns: max-content clamp(310px, 35vw, 520px) minmax(0, 1fr) 40px;
	align-items: stretch;
	min-block-size: 38px;
	background: var(--sstr-graphite-2);
	border-block-start: 1px solid var(--sstr-line-dark);
	box-shadow: none;
	font-size: .68rem;
}

.innovant-ticker--spotlight-only {
	grid-template-columns: max-content minmax(0, 1fr);
}

.innovant-ticker__label {
	background: var(--sstr-blue-dark);
	border-inline-end: 1px solid var(--sstr-line-dark);
	font-size: .625rem;
	letter-spacing: .1em;
}

.innovant-ticker__spotlight {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	display: flex;
	align-items: center;
	min-inline-size: 0;
	gap: 10px;
	padding: 7px 14px;
	background: rgba(86, 144, 204, .1);
	border-inline-end: 1px solid var(--sstr-line-dark);
	color: var(--sstr-white);
	text-decoration: none;
	box-shadow: inset 3px 0 0 var(--sstr-blue-bright);
	animation: sstr-news-spotlight 2.8s ease-in-out infinite;
}

[dir="rtl"] .innovant-ticker__spotlight {
	box-shadow: inset -3px 0 0 var(--sstr-blue-bright);
}

.innovant-ticker__spotlight::after {
	content: "";
	position: absolute;
	inset-block: 0;
	inset-inline-start: 0;
	z-index: 0;
	inline-size: 28%;
	background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .15), transparent);
	transform: translateX(-170%) skewX(-16deg);
	animation: sstr-news-sheen 3.4s ease-in-out infinite;
	pointer-events: none;
}

.innovant-ticker__spotlight > span {
	position: relative;
	z-index: 1;
}

.innovant-ticker__spotlight-status {
	display: inline-flex;
	align-items: center;
	flex: 0 0 auto;
	gap: 5px;
	color: var(--sstr-blue-bright);
	font-size: .625rem;
	font-weight: 800;
	letter-spacing: .09em;
	line-height: 1;
	text-transform: uppercase;
}

.innovant-ticker__spotlight-pulse {
	inline-size: 6px;
	block-size: 6px;
	background: var(--sstr-blue-bright);
	box-shadow: 0 0 0 0 rgba(86, 144, 204, .68);
	animation: sstr-news-dot 1.4s ease-out infinite;
}

.innovant-ticker__spotlight-title {
	min-inline-size: 0;
	overflow: hidden;
	color: rgba(255, 255, 255, .96);
	font-size: .64rem;
	font-weight: 650;
	letter-spacing: .01em;
	line-height: 1.2;
	text-overflow: ellipsis;
	unicode-bidi: isolate;
	white-space: nowrap;
}

.innovant-ticker__item a[dir="auto"] {
	unicode-bidi: isolate;
}

.innovant-ticker:is(:hover, :focus-within, .is-paused) .innovant-ticker__spotlight,
.innovant-ticker:is(:hover, :focus-within, .is-paused) .innovant-ticker__spotlight::after,
.innovant-ticker:is(:hover, :focus-within, .is-paused) .innovant-ticker__spotlight-pulse {
	animation-play-state: paused !important;
}

.innovant-ticker__spotlight:is(:hover, :focus-visible) {
	background: rgba(86, 144, 204, .22);
	color: var(--sstr-white);
	text-decoration: none;
}

.innovant-ticker__viewport {
	min-inline-size: 0;
}

.innovant-ticker__dot,
.innovant-ticker__item::after {
	background: var(--sstr-blue-bright);
	border-radius: 0;
	box-shadow: none;
}

.innovant-ticker__toggle {
	border-color: var(--sstr-line-dark);
}

.innovant-ticker__item--latest > a {
	display: inline-flex;
	align-items: center;
}

.innovant-ticker__item--deadline > a {
	color: var(--sstr-blue-bright);
	font-weight: 750;
}

.innovant-ticker__item--deadline::after {
	background: var(--sstr-white);
}

.innovant-ticker__latest {
	display: inline-flex;
	align-items: center;
	min-block-size: 20px;
	margin-inline-end: 9px;
	padding-inline: 7px;
	background: var(--sstr-blue-bright);
	color: var(--sstr-black);
	font-size: .55rem;
	font-weight: 800;
	letter-spacing: .08em;
	line-height: 1;
	text-transform: uppercase;
	box-shadow: 0 0 0 0 rgba(86, 144, 204, .58);
	animation: sstr-news-flash 2.2s ease-in-out infinite;
}

.innovant-ticker__latest--fixed {
	flex: 0 0 auto;
	margin-inline: 3px 0;
	text-decoration: none;
}

.innovant-ticker__latest--fixed:is(:hover, :focus-visible) {
	color: var(--sstr-black);
	text-decoration: none;
}

.innovant-guide-card--latest {
	position: relative;
	isolation: isolate;
}

.innovant-latest-badge {
	position: absolute;
	inset-block-start: 12px;
	inset-inline-end: 12px;
	z-index: 5;
	display: inline-flex;
	align-items: center;
	min-block-size: 28px;
	padding-inline: 11px;
	background: var(--sstr-blue-bright);
	color: var(--sstr-black);
	font-size: .62rem;
	font-weight: 800;
	letter-spacing: .09em;
	line-height: 1;
	text-transform: uppercase;
	box-shadow: 0 0 0 0 rgba(86, 144, 204, .48);
	animation: sstr-news-flash 2.2s ease-in-out infinite;
}

/* ==========================================================================
   04. FULL-VIEWPORT DARK IMAGE HERO
   ========================================================================== */

body.home .innovant-hero {
	position: relative;
	display: flex;
	align-items: center;
	min-block-size: max(536px, calc(100svh - 141px));
	margin: 0 !important;
	padding: clamp(44px, 6vh, 76px) var(--sstr-gutter);
	background: var(--sstr-black);
	border-block-end: 1px solid var(--sstr-line-dark);
	color: var(--sstr-white);
	isolation: isolate;
}

body.home .innovant-hero::before {
	z-index: -1;
	background: none;
	opacity: 0;
	mix-blend-mode: normal;
}

body.home .innovant-hero::after {
	inset: 0;
	block-size: auto;
	background:
		linear-gradient(90deg, rgba(48, 56, 64, .87) 0%, rgba(48, 56, 64, .58) 42%, rgba(11, 104, 154, .12) 72%, rgba(48, 56, 64, .34) 100%),
		linear-gradient(0deg, rgba(37, 43, 49, .58), transparent 48%);
}

body.home .innovant-hero__bg {
	z-index: -3;
}

body.home .innovant-hero__layer {
	filter: grayscale(.72) contrast(1.06) brightness(.84);
	background-position: center;
}

body.home .innovant-hero__bg::after {
	background: rgba(11, 104, 154, .08);
	mix-blend-mode: color;
}

body.home .innovant-hero__main::before {
	display: none;
}

body.home .innovant-hero__inner {
	inline-size: min(100%, var(--sstr-max));
	max-inline-size: var(--sstr-max);
	margin-inline: auto;
}

body.home .innovant-hero__grid {
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	gap: 0;
	align-items: end;
}

body.home .innovant-hero__main {
	grid-column: 1 / span 8;
	padding-inline-end: clamp(24px, 5vw, 80px);
}

body.home .innovant-hero__eyebrow.eyebrow {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 0 0 24px;
	color: var(--sstr-blue-bright);
	font-size: .69rem;
	font-weight: 800;
	letter-spacing: .11em;
	text-transform: uppercase;
}

body.home .innovant-hero__eyebrow::before {
	content: "[ INNOVANT / KSA ]";
	inline-size: auto;
	block-size: auto;
	background: none;
	color: rgba(255, 255, 255, .48);
	font-variant-numeric: tabular-nums;
}

body.home .innovant-hero__title {
	max-inline-size: 22ch;
	margin: 0;
	color: var(--sstr-white);
	font-size: clamp(2.35rem, 2.55vw, 2.95rem);
	font-weight: 400;
	letter-spacing: -.035em;
	line-height: 1.02;
	text-transform: uppercase;
}

body.home .innovant-hero__lead {
	max-inline-size: 54ch;
	margin: clamp(18px, 2vw, 28px) 0 22px;
	color: rgba(255, 255, 255, .78);
	font-size: clamp(.98rem, 1.15vw, 1.18rem);
	line-height: 1.55;
}

body.home .innovant-hero__cta {
	margin-block-end: clamp(20px, 3vw, 34px);
}

body.home .innovant-hero__stats {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0;
	padding-block-start: 0;
	border: 1px solid rgba(255, 255, 255, .18);
}

body.home .innovant-hero__stat {
	min-block-size: 78px;
	padding: 14px 16px;
	border-inline-end: 1px solid rgba(255, 255, 255, .18);
}

body.home .innovant-hero__stat:last-child {
	border-inline-end: 0;
}

body.home .innovant-hero__stat-n {
	color: var(--sstr-white);
	font-size: clamp(1rem, 1.2vw, 1.22rem);
	line-height: 1.1;
	text-transform: uppercase;
}

body.home .innovant-hero__stat-l {
	margin-block-start: 10px;
	color: rgba(255, 255, 255, .54);
	font-size: .66rem;
	letter-spacing: .08em;
	text-transform: uppercase;
}

body.home .innovant-hero__panel {
	grid-column: 9 / -1;
	align-self: end;
	padding: clamp(24px, 3vw, 42px);
	background: rgba(47, 48, 50, .76);
	border: 1px solid rgba(255, 255, 255, .25);
	backdrop-filter: blur(8px);
}

.innovant-hspot__head {
	border-color: rgba(255, 255, 255, .2);
}

.innovant-hspot__eyebrow,
.innovant-hspot__num,
.innovant-hspot__go {
	color: var(--sstr-blue-bright);
}

.innovant-hspot__name {
	font-family: var(--wp--preset--font-family--display);
	font-size: clamp(1.2rem, 1.6vw, 1.7rem) !important;
	letter-spacing: -.025em;
	text-transform: uppercase;
}

.innovant-hspot.has-js .innovant-hspot__card {
	transition: opacity .18s var(--sstr-ease);
}

.innovant-hspot.has-js .innovant-hspot__card.is-active {
	transition-delay: .18s;
}

.innovant-hspot__dot {
	block-size: 4px;
	border-radius: 0;
}

.innovant-hspot__dot.is-active {
	background: var(--sstr-blue-bright);
}

/* ==========================================================================
   05. EDITORIAL SECTIONS / TECHNICAL SECTION HEADS
   ========================================================================== */

.innovant-home {
	counter-reset: sstr-section;
	background: var(--sstr-paper);
}

body.home .innovant-home-section {
	counter-increment: sstr-section;
	position: relative;
	margin: 0 !important;
	padding: var(--sstr-section) var(--sstr-gutter);
	background-color: var(--sstr-paper);
	border-block-start: 1px solid var(--sstr-line);
	overflow: visible;
	overflow-x: clip;
}

body.home .innovant-home-section.innovant-band--navy,
body.home .innovant-route-section {
	background-color: var(--sstr-graphite);
	background-image: none;
	color: rgba(255, 255, 255, .78);
}

body.home .innovant-home-section > * {
	max-inline-size: var(--sstr-max);
}

.innovant-home-section .innovant-section-head {
	position: relative;
	max-inline-size: 930px;
	margin-inline: 0;
	margin-block-end: clamp(28px, 3.5vw, 48px);
	padding-block-start: 22px;
	border-block-start: 1px solid currentColor;
}

.innovant-home-section .innovant-section-head::before {
	content: "SECTION / " counter(sstr-section, decimal-leading-zero);
	position: absolute;
	inset-block-start: -1px;
	inset-inline-end: 0;
	padding: 7px 10px;
	background: var(--sstr-ink);
	color: var(--sstr-white);
	font-size: .62rem;
	font-weight: 800;
	font-variant-numeric: tabular-nums;
	letter-spacing: .1em;
}

body.home .innovant-home-section.innovant-band--navy .innovant-section-head::before,
body.home .innovant-route-section .innovant-section-head::before {
	background: var(--sstr-blue-bright);
	color: var(--sstr-black);
}

.innovant-section-head .eyebrow,
.eyebrow {
	margin: 0;
	color: var(--sstr-blue);
	font-size: .68rem;
	font-weight: 800;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.innovant-section-head .eyebrow::before {
	inline-size: 18px;
	block-size: 1px;
	background: currentColor;
}

.innovant-section-head__title {
	max-inline-size: 16ch;
	margin: 20px 0 0;
	color: var(--sstr-ink);
	font-size: clamp(2.1rem, 3.1vw, 3.75rem);
	font-weight: 400;
	letter-spacing: -.04em;
	line-height: .98;
	text-transform: uppercase;
}

.innovant-section-head__intro {
	max-inline-size: 62ch;
	margin-block-start: 26px;
	color: var(--sstr-muted);
	font-size: clamp(1rem, 1.2vw, 1.2rem);
	line-height: 1.55;
}

body.home .innovant-home-section.innovant-band--navy :where(.innovant-section-head__title, h2, h3),
body.home .innovant-route-section :where(.innovant-section-head__title, h2, h3) {
	color: var(--sstr-white);
}

body.home .innovant-home-section.innovant-band--navy :where(.innovant-section-head__intro, .eyebrow),
body.home .innovant-route-section :where(.innovant-section-head__intro, .eyebrow) {
	color: rgba(255, 255, 255, .64);
}

body.home .innovant-home-section.innovant-band--navy .eyebrow,
body.home .innovant-route-section .eyebrow {
	color: var(--sstr-blue-bright);
}

.innovant-overlap-up {
	margin-block-start: 0 !important;
}

.innovant-sep-diagonal {
	clip-path: none !important;
}

.innovant-sep-diagonal::before,
.innovant-sep-diagonal::after {
	display: none !important;
}

/* Existing image backgrounds stay in place, converted to a restrained
	 * monochrome/blue industrial treatment. */
.innovant-secbg .inv-imgframe__img {
	filter: grayscale(.78) contrast(1.06) brightness(.82);
}

.innovant-secbg--navy::after,
.innovant-secbg--teal::after {
	background: linear-gradient(90deg, rgba(48, 56, 64, .92), rgba(11, 104, 154, .58));
}

.innovant-secbg--light::after {
	background: rgba(250, 251, 252, .9);
}

/* ==========================================================================
   06. TRUST / CLIENT / PARTNER BANDS
   ========================================================================== */

.innovant-trust-band {
	padding-block: 44px !important;
}

.innovant-trust {
	text-align: start;
}

.innovant-trust__lead,
.innovant-clients__eyebrow {
	color: var(--sstr-blue-bright);
	font-size: .65rem;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.innovant-trust__list {
	justify-content: flex-start;
	gap: 0;
	border: 1px solid currentColor;
}

.innovant-trust__chip {
	min-block-size: 72px;
	padding: 22px 30px;
	border-inline-end: 1px solid currentColor;
	color: inherit;
	font-size: clamp(.92rem, 1.5vw, 1.25rem);
	text-transform: uppercase;
}

.innovant-clients {
	max-inline-size: none;
	margin: 0;
	padding: clamp(44px, 4vw, 64px) var(--sstr-gutter);
	background: var(--sstr-paper);
	border-block: 1px solid var(--sstr-line);
	color: var(--sstr-ink);
}

.innovant-clients__head,
.innovant-clients__grid {
	max-inline-size: var(--sstr-max);
	margin-inline: auto;
}

.innovant-clients__head {
	margin-block-end: clamp(28px, 3.5vw, 48px);
}

.innovant-clients__title {
	color: var(--sstr-ink);
	font-size: clamp(1.8rem, 2.4vw, 2.75rem);
	text-transform: uppercase;
}

.innovant-clients__grid {
	position: relative;
	display: grid;
	grid-template-columns: repeat(7, minmax(0, 1fr));
	gap: 0;
	inline-size: 100%;
	padding: 0;
	border-block-start: 1px solid var(--sstr-line);
	border-inline-start: 1px solid var(--sstr-line);
	list-style: none;
	overflow: hidden;
	isolation: isolate;
}

.innovant-clients__grid::before {
	content: "";
	position: absolute;
	inset-block: 0;
	inset-inline-start: -24%;
	inline-size: 18%;
	z-index: 2;
	background: linear-gradient(90deg, transparent, rgba(86, 144, 204, .13), transparent);
	transform: skewX(-14deg);
	pointer-events: none;
}

.innovant-clients__item {
	position: relative;
	z-index: 1;
	display: grid;
	place-items: center;
	min-inline-size: 0;
	min-block-size: 92px;
	padding: 14px 18px;
	background: rgba(255, 255, 255, .82);
	border-inline-end: 1px solid var(--sstr-line);
	border-block-end: 1px solid var(--sstr-line);
	overflow: hidden;
	transition: background-color .35s var(--sstr-ease), border-color .35s var(--sstr-ease);
}

.innovant-clients__item::after {
	content: "";
	position: absolute;
	inset-inline: 12px;
	inset-block-end: 0;
	block-size: 2px;
	background: var(--sstr-blue-bright);
	transform: scaleX(0);
	transform-origin: center;
	transition: transform .42s var(--sstr-ease);
}

.innovant-clients__logo {
	inline-size: auto;
	block-size: auto;
	max-inline-size: min(165px, 82%);
	max-block-size: 44px;
	object-fit: contain;
	filter: grayscale(1) contrast(1.08);
	mix-blend-mode: multiply;
	opacity: .68;
	transition: transform .48s var(--sstr-ease), filter .35s var(--sstr-ease), opacity .35s var(--sstr-ease);
}

.innovant-clients__item picture {
	display: grid;
	place-items: center;
	inline-size: 100%;
}

.innovant-clients__name {
	position: absolute;
	inset-inline: 10px;
	inset-block-end: 10px;
	color: var(--sstr-blue-dark);
	font-size: .58rem;
	font-weight: 700;
	line-height: 1.2;
	text-align: center;
	text-transform: uppercase;
	opacity: 0;
	transform: translateY(12px);
	transition: opacity .32s var(--sstr-ease), transform .42s var(--sstr-ease);
}

.innovant-clients__item:is(:hover, :focus-visible, .is-logo-active) {
	background: #f1f6fb;
	border-color: rgba(86, 144, 204, .48);
	outline: none;
	box-shadow: inset 0 0 0 1px rgba(86, 144, 204, .32);
}

.innovant-clients__item:is(:hover, :focus-visible, .is-logo-active)::after {
	transform: scaleX(1);
}

.innovant-clients__item:is(:hover, :focus-visible, .is-logo-active) .innovant-clients__logo {
	filter: grayscale(0) contrast(1.04);
	opacity: 1;
	transform: translateY(-8px) scale(1.025);
}

.innovant-clients__item:is(:hover, :focus-visible, .is-logo-active) .innovant-clients__name {
	opacity: 1;
	transform: translateY(0);
}

.innovant-ptnr {
	max-inline-size: none;
	margin: 0;
	padding: var(--sstr-section) var(--sstr-gutter);
	background: var(--sstr-silver);
	border-block-start: 1px solid var(--sstr-line);
}

.wp-site-blocks > .innovant-ptnr {
	margin-block-start: 0 !important;
}

.innovant-ptnr > * {
	max-inline-size: var(--sstr-max);
	margin-inline: auto;
}

.innovant-ptnr__grid {
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 0;
	border-block-start: 1px solid var(--sstr-line);
	border-inline-start: 1px solid var(--sstr-line);
}

.innovant-ptnr__item {
	min-block-size: 112px;
	padding: 20px;
	background: transparent;
	border: 0;
	border-inline-end: 1px solid var(--sstr-line);
	border-block-end: 1px solid var(--sstr-line);
}

.innovant-ptnr__item:hover {
	background: var(--sstr-white);
	border-color: var(--sstr-line);
}

.innovant-ptnr__logo {
	filter: grayscale(1);
	opacity: .64;
}

.innovant-ptnr__item:hover .innovant-ptnr__logo {
	filter: grayscale(1);
	opacity: 1;
}

/* ==========================================================================
   07. INDEXES, STATS, SECTORS, SERVICES, JOURNEYS
   ========================================================================== */

.innovant-kindex__list {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0;
	border-block-start: 1px solid var(--sstr-line);
	border-inline-start: 1px solid var(--sstr-line);
}

.innovant-kindex__li {
	background: transparent;
}

.innovant-kindex__item {
	min-block-size: 150px;
	padding: 22px;
	background: rgba(242, 244, 245, .84);
	border: 0;
	border-inline-end: 1px solid var(--sstr-line);
	border-block-end: 1px solid var(--sstr-line);
}

.innovant-kindex__item:hover {
	background: var(--sstr-white);
}

.innovant-kindex__num,
.innovant-svcdir__stagenum,
.innovant-numcard__n,
.innovant-sectile__value {
	font-variant-numeric: tabular-nums;
}

.innovant-kindex__num {
	color: var(--sstr-blue);
	font-size: .72rem;
	letter-spacing: .08em;
}

.innovant-kindex__thumb,
.innovant-kindex__ico {
	border-radius: 0;
	filter: grayscale(1);
}

.innovant-kindex__name {
	color: var(--sstr-ink);
	font-family: var(--wp--preset--font-family--display);
	font-size: 1.08rem;
	letter-spacing: -.01em;
	text-transform: uppercase;
}

.innovant-kindex__count {
	color: var(--sstr-muted);
	font-size: .63rem;
	letter-spacing: .09em;
}

.innovant-kindex__arrow {
	color: var(--sstr-blue);
}

.innovant-grid-4,
.innovant-numbers {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0;
	border-block-start: 1px solid currentColor;
	border-inline-start: 1px solid currentColor;
}

.innovant-numcard {
	min-block-size: 148px;
	padding: clamp(20px, 2vw, 28px);
	background: transparent;
	border: 0;
	border-inline-end: 1px solid currentColor;
	border-block-end: 1px solid currentColor;
}

.innovant-numcard__n {
	color: var(--sstr-blue-bright);
	font-size: clamp(2rem, 3vw, 3.4rem);
	letter-spacing: -.035em;
	line-height: 1;
}

.innovant-numcard__meter {
	block-size: 2px;
	border-radius: 0;
	background: rgba(255, 255, 255, .18);
}

.innovant-numcard__meter-fill {
	border-radius: 0;
	background: var(--sstr-blue-bright);
}

.innovant-numcard__l {
	color: inherit;
	font-size: .76rem;
	letter-spacing: .045em;
	text-transform: uppercase;
}

/* The four Saudi-market facts are a single compact viewport block. The copy
 * remains unchanged; only the oversized presentation is corrected. */
body.home .innovant-band--navy.innovant-sep-diagonal {
	padding-block: clamp(36px, 5vh, 56px);
}

body.home .innovant-band--navy.innovant-sep-diagonal .innovant-section-head {
	margin-block-end: clamp(24px, 3vh, 34px);
	padding-block-start: 18px;
}

body.home .innovant-band--navy.innovant-sep-diagonal .innovant-section-head__title {
	font-size: clamp(2rem, 2.75vw, 3.25rem);
}

body.home .innovant-band--navy.innovant-sep-diagonal .innovant-section-head__intro {
	margin-block-start: 16px;
	font-size: clamp(.94rem, 1vw, 1.05rem);
}

.innovant-sectorgrid {
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0;
	border-block-start: 1px solid var(--sstr-line);
	border-inline-start: 1px solid var(--sstr-line);
}

.innovant-sectile {
	min-block-size: 330px;
	padding: 24px;
	background: rgba(242, 244, 245, .88);
	border: 0;
	border-inline-end: 1px solid var(--sstr-line);
	border-block-end: 1px solid var(--sstr-line);
}

.innovant-sectile:hover {
	background: var(--sstr-white);
	border-color: var(--sstr-line);
	transform: none;
}

.innovant-sectile__media {
	block-size: 150px;
	margin: -24px -24px 18px;
	border-radius: 0;
}

.innovant-sectile__media img {
	filter: grayscale(1) contrast(1.08);
}

.innovant-sectile__ico,
.innovant-svcdir__ico {
	border-radius: 0;
	background: var(--sstr-blue-dark);
	color: var(--sstr-white);
}

.innovant-sectile__name,
.innovant-svcdir__title {
	color: var(--sstr-ink);
	font-family: var(--wp--preset--font-family--display);
	text-transform: uppercase;
}

.innovant-sectile__tag {
	border-radius: 0;
	background: rgba(86, 144, 204, .18);
	color: var(--sstr-blue-dark);
}

.innovant-spark__line {
	stroke: var(--sstr-blue);
}

.innovant-spark__area,
.innovant-spark__dot {
	fill: var(--sstr-blue-bright);
}

.innovant-svcdir {
	max-inline-size: none;
	gap: 0;
	border-block-start: 1px solid var(--sstr-line);
}

.innovant-svcdir__stage {
	display: grid;
	grid-template-columns: minmax(210px, .32fr) 1fr;
	gap: 0;
	border-inline: 1px solid var(--sstr-line);
	border-block-end: 1px solid var(--sstr-line);
}

.innovant-svcdir__stagehead {
	display: block;
	margin: 0;
	padding: 28px;
	border: 0;
	border-inline-end: 1px solid var(--sstr-line);
}

.innovant-svcdir__stagenum {
	display: block;
	margin-block-end: 18px;
	color: var(--sstr-blue);
	font-size: .72rem;
	letter-spacing: .08em;
}

.innovant-svcdir__stagename {
	color: var(--sstr-ink);
	font-size: clamp(1.25rem, 2vw, 2rem);
	text-transform: uppercase;
}

.innovant-svcdir__item + .innovant-svcdir__item {
	border-color: var(--sstr-line);
}

.innovant-svcdir__row {
	min-block-size: 118px;
	padding: 20px 24px;
	border-radius: 0;
}

.innovant-svcdir__row:hover,
.innovant-svcdir__row:focus-visible {
	background: rgba(86, 144, 204, .12);
}

.innovant-svcdir__media {
	inline-size: 78px;
	block-size: 78px;
	border-radius: 0;
	box-shadow: none;
}

.innovant-svcdir__media img {
	filter: grayscale(.8) contrast(1.08);
}

.innovant-svcdir__desc {
	color: var(--sstr-muted);
}

.innovant-svcdir__arrow,
.innovant-svcdir__go {
	color: var(--sstr-blue) !important;
}

.innovant-jmap {
	margin-block-end: 64px;
}

.innovant-jmap__track {
	block-size: 1px;
	background: var(--sstr-line);
}

.innovant-jmap__trackfill {
	border-radius: 0;
	background: var(--sstr-blue);
}

.innovant-jmap__list {
	gap: 0;
	border-inline-start: 1px solid var(--sstr-line);
}

.innovant-jmap__item {
	border-inline-end: 1px solid var(--sstr-line);
}

.innovant-jmap__stage {
	padding: 18px 12px 24px;
	border-radius: 0;
}

.innovant-jmap__dot {
	inline-size: 42px;
	block-size: 42px;
	border: 1px solid var(--sstr-line);
	border-radius: 0;
	background: var(--sstr-paper);
	color: var(--sstr-ink);
}

.innovant-jmap__stage:hover .innovant-jmap__dot,
.innovant-jmap__stage:focus-visible .innovant-jmap__dot,
.innovant-jmap__stage.is-active .innovant-jmap__dot {
	background: var(--sstr-blue-bright);
	border-color: var(--sstr-blue-bright);
	color: var(--sstr-black);
}

.innovant-jmap__label {
	color: var(--sstr-ink);
	font-size: .76rem;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.innovant-roadmap-wrap {
	max-inline-size: 1000px;
}

.innovant-roadmap__step {
	padding-inline-start: 92px;
	padding-block-end: 58px;
}

.innovant-roadmap__marker {
	inline-size: 58px;
	block-size: 58px;
	border: 1px solid var(--sstr-line);
	border-radius: 0;
	background: var(--sstr-graphite);
	box-shadow: none;
}

.innovant-roadmap__marker::before {
	border-radius: 0;
	background: var(--sstr-blue-bright);
}

.innovant-roadmap__num {
	border-radius: 0;
	background: var(--sstr-blue-bright);
	color: var(--sstr-black);
}

.innovant-roadmap__title {
	font-size: clamp(1.3rem, 2.2vw, 2rem);
	text-transform: uppercase;
}

.innovant-roadmap__pill,
.innovant-vcaps__chip,
.innovant-chip,
.innovant-meta__chip {
	border-radius: 0;
	box-shadow: none;
}

/* ==========================================================================
   08. ESTIMATOR / ROUTE FINDER / TOOL PANELS
   ========================================================================== */

.innovant-est {
	max-inline-size: none;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0;
	border: 1px solid currentColor;
}

.innovant-est__form {
	padding: clamp(28px, 4vw, 56px);
	border-inline-end: 1px solid currentColor;
}

.innovant-est__field {
	gap: 8px;
}

.innovant-est__label {
	color: inherit;
	font-size: .68rem;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.innovant-est__select,
.innovant-est__number,
.innovant-form :where(input:not([type="checkbox"]):not([type="radio"]), select, textarea),
.innovant-fbar__form :where(input, select),
.wp-block-search__input {
	min-block-size: 52px;
	padding: 12px 14px;
	border: 1px solid var(--sstr-line);
	border-radius: 0;
	background: rgba(255, 255, 255, .82);
	color: var(--sstr-ink);
	font: inherit;
}

.innovant-est__select:focus-visible,
.innovant-est__number:focus-visible,
.innovant-form :where(input, select, textarea):focus-visible {
	border-color: var(--sstr-blue);
	box-shadow: inset 4px 0 0 var(--sstr-blue-bright);
}

.innovant-est__result {
	padding: clamp(30px, 4vw, 56px);
	background: var(--sstr-black);
	border: 0;
	color: var(--sstr-white);
}

.innovant-est__result::before {
	background: none;
	opacity: 0;
}

.innovant-est__result-eyebrow,
.innovant-est__time,
.innovant-route__time {
	color: var(--sstr-blue-bright);
}

.innovant-est__currency {
	border: 1px solid var(--sstr-line-dark);
	border-radius: 0;
	background: transparent;
}

.innovant-est__cur {
	border-radius: 0;
}

.innovant-est__cur.is-active {
	background: var(--sstr-blue-bright);
	color: var(--sstr-black);
}

.innovant-est__time-ico,
.innovant-route__verdict-ico {
	border-radius: 0;
	background: rgba(86, 144, 204, .18) !important;
	color: var(--sstr-blue-bright) !important;
}

.innovant-tools__tabs {
	gap: 0;
	border: 1px solid currentColor;
}

.innovant-tools__tab {
	min-block-size: 48px;
	border-inline-end: 1px solid currentColor;
	border-radius: 0;
	color: inherit;
	font-size: .7rem;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.innovant-tools__tab.is-active {
	background: var(--sstr-blue-bright);
	color: var(--sstr-black);
}

.innovant-route__result,
.innovant-route__row {
	border-color: rgba(255, 255, 255, .18);
}

/* ==========================================================================
   09. CARDS / GUIDES / ARCHIVE GRIDS
   ========================================================================== */

.innovant-grid-3,
.innovant-cptgrid,
.innovant-guide-grid,
.innovant-related-grid,
.innovant-subsvc__grid {
	gap: 0 !important;
	border-block-start: 1px solid var(--sstr-line);
	border-inline-start: 1px solid var(--sstr-line);
}

:where(.innovant-cptcard, .innovant-guide-card, .innovant-related-card, .innovant-subsvc__card) {
	position: relative;
	background: rgba(242, 244, 245, .9);
	border: 0;
	border-inline-end: 1px solid var(--sstr-line);
	border-block-end: 1px solid var(--sstr-line);
	transition: background-color .2s var(--sstr-ease), color .2s var(--sstr-ease);
}

:where(.innovant-cptcard, .innovant-guide-card, .innovant-related-card, .innovant-subsvc__card):hover {
	background: var(--sstr-white);
	border-color: var(--sstr-line);
	box-shadow: inset 0 -4px 0 var(--sstr-blue-bright) !important;
	transform: none;
}

.innovant-cptcard__media,
.innovant-guide-card__media {
	border-radius: 0;
	filter: grayscale(.88) contrast(1.06);
	transition: filter .35s var(--sstr-ease);
}

.innovant-cptcard:hover .innovant-cptcard__media,
.innovant-guide-card:hover .innovant-guide-card__media {
	filter: grayscale(.25) contrast(1.04);
}

.innovant-cardbadge {
	border-radius: 0;
	background: var(--sstr-graphite);
	color: var(--sstr-white);
	box-shadow: none;
}

.innovant-cptcard__body,
.innovant-guide-card__content {
	padding: clamp(22px, 2.7vw, 36px);
}

.innovant-cptcard__kicker,
.innovant-guide-card__topic,
.innovant-card__chips {
	color: var(--sstr-blue);
	font-size: .65rem;
	font-weight: 800;
	letter-spacing: .09em;
	text-transform: uppercase;
}

.innovant-cptcard__title,
.innovant-guide-card__title {
	font-size: clamp(1.2rem, 1.65vw, 1.75rem);
	letter-spacing: -.025em;
	text-transform: uppercase;
}

.innovant-guide-card__foot {
	border-color: var(--sstr-line);
}

.innovant-cptcard--virtual {
	background: rgba(86, 144, 204, .08);
	border: 0;
	border-inline-end: 1px dashed var(--sstr-blue);
	border-block-end: 1px dashed var(--sstr-blue);
}

.innovant-cptgroup {
	margin-block-end: clamp(56px, 7vw, 100px);
}

.innovant-cptgroup__head {
	padding-block-end: 18px;
	border-block-end: 1px solid var(--sstr-line);
}

.innovant-cptgroup__h {
	font-size: clamp(1.55rem, 3vw, 3rem);
	text-transform: uppercase;
}

.innovant-cptgroup__rule {
	inline-size: 42px;
	block-size: 2px;
	background: var(--sstr-blue-bright);
}

.innovant-cptgroup__count,
.innovant-cptgroup__chip {
	border-radius: 0;
	background: var(--sstr-graphite);
	color: var(--sstr-white);
}

.innovant-svcpills {
	inset-block-start: calc(var(--sstr-header-h) + 38px);
	padding: 0;
	background: var(--sstr-paper);
	border: 1px solid var(--sstr-line);
}

.innovant-svcpills__list {
	gap: 0;
}

.innovant-svcpills__pill,
.innovant-topicpills__pill {
	min-block-size: 46px;
	padding: 13px 18px;
	border: 0;
	border-inline-end: 1px solid var(--sstr-line);
	border-radius: 0;
	background: transparent;
	color: var(--sstr-ink);
	font-size: .68rem;
	font-weight: 800;
	letter-spacing: .07em;
	text-transform: uppercase;
}

.innovant-svcpills__pill:hover,
.innovant-topicpills__pill:hover,
.innovant-topicpills__pill.is-active {
	background: var(--sstr-blue-bright);
	border-color: var(--sstr-line);
	color: var(--sstr-black);
}

.innovant-pagination :where(.page-numbers, .wp-block-query-pagination-previous, .wp-block-query-pagination-next) {
	border-radius: 0;
	box-shadow: none;
}

/* ==========================================================================
   10. ARCHIVE HEROES / SEARCH / 404
   ========================================================================== */

.innovant-breadcrumbs {
	margin: 0;
	padding: 12px var(--sstr-gutter);
	background: var(--sstr-graphite);
	border-block: 1px solid var(--sstr-line-dark);
	color: rgba(255, 255, 255, .54);
	font-size: .65rem;
	letter-spacing: .07em;
	text-transform: uppercase;
}

.innovant-breadcrumbs a {
	color: rgba(255, 255, 255, .8);
}

.innovant-archive {
	background: var(--sstr-paper);
}

.innovant-archive-hero {
	position: relative;
	isolation: isolate;
	display: flex;
	min-block-size: clamp(420px, 58vh, 720px);
	flex-direction: column;
	justify-content: flex-end;
	padding: clamp(70px, 10vw, 150px) var(--sstr-gutter) clamp(52px, 7vw, 100px);
	background: var(--sstr-black);
	border-block-end: 1px solid var(--sstr-line-dark);
	overflow: hidden;
}

.innovant-archive-hero::before {
	background:
		linear-gradient(90deg, rgba(34, 35, 38, .86), rgba(34, 35, 38, .24)),
		linear-gradient(0deg, rgba(24, 25, 27, .62), transparent 60%) !important;
}

.innovant-archive-hero::after {
	filter: grayscale(.75) contrast(1.04) brightness(.82);
}

.innovant-archive-hero > * {
	inline-size: min(100%, var(--sstr-max));
	max-inline-size: var(--sstr-max);
	margin-inline: auto;
}

.innovant-archive-hero__eyebrow {
	color: var(--sstr-blue-bright) !important;
}

.innovant-archive-hero__title {
	max-inline-size: 13ch;
	color: var(--sstr-white) !important;
	font-size: clamp(3.2rem, 5.3vw, 5.3rem);
	font-weight: 400;
	letter-spacing: -.04em;
	line-height: .98;
	text-shadow: none !important;
}

.innovant-archive-hero__intro {
	max-inline-size: 58ch;
	color: rgba(255, 255, 255, .72) !important;
	font-size: clamp(1rem, 1.25vw, 1.24rem);
	text-shadow: none !important;
}

.innovant-archive-body {
	padding: var(--sstr-section) var(--sstr-gutter);
	background-color: var(--sstr-paper);
}

.innovant-archive-body > * {
	max-inline-size: var(--sstr-max);
}

.innovant-filterbar,
.innovant-fbar,
.innovant-filters {
	border: 1px solid var(--sstr-line);
	border-radius: 0;
	background: rgba(242, 244, 245, .92);
	box-shadow: none;
}

.innovant-fbar__chip,
.innovant-filters__check {
	border-radius: 0;
}

.innovant-noresults,
body.error404 main,
body.search-no-results main {
	padding: var(--sstr-section) var(--sstr-gutter);
}

/* ==========================================================================
   11. SINGLE DETAIL HEROES / SIDEBARS / LONG-FORM CONTENT
   ========================================================================== */

.innovant-hero-detail,
.innovant-guide-hero {
	position: relative;
	isolation: isolate;
	min-block-size: clamp(430px, 58vh, 700px);
	margin-block-end: 0;
	padding: clamp(48px, 7vw, 100px);
	background: var(--sstr-black) !important;
	border: 1px solid var(--sstr-line-dark);
	border-radius: 0;
	overflow: hidden;
}

.innovant-hero-detail__grid {
	grid-template-columns: repeat(12, minmax(0, 1fr));
	gap: 0;
	align-items: end;
}

.innovant-hero-detail__text {
	grid-column: 1 / span 8;
	position: relative;
	z-index: 2;
}

.innovant-hero-detail h1,
.innovant-guide-hero__title {
	max-inline-size: 14ch;
	color: var(--sstr-white) !important;
	font-size: clamp(2.8rem, 5vw, 5.4rem) !important;
	font-weight: 400;
	letter-spacing: -.04em;
	line-height: .98;
	text-transform: uppercase;
}

.innovant-hero-detail p,
.innovant-guide-hero p {
	max-inline-size: 54ch;
	color: rgba(255, 255, 255, .72) !important;
}

.innovant-svc-heromedia {
	grid-column: 9 / -1;
	border-radius: 0;
}

.innovant-svc-heromedia img {
	filter: grayscale(.8) contrast(1.08);
}

.innovant-tabnav {
	inset-block-start: calc(var(--sstr-header-h) + 38px);
	gap: 0;
	padding: 0 var(--sstr-gutter);
	background: var(--sstr-graphite);
	border: 0;
	border-block-end: 1px solid var(--sstr-line-dark);
	box-shadow: none;
}

.innovant-tabnav__link {
	min-block-size: 48px;
	padding: 16px 18px;
	border-inline-end: 1px solid var(--sstr-line-dark);
	border-block-end: 3px solid transparent;
	color: rgba(255, 255, 255, .64);
	font-size: .65rem;
	font-weight: 800;
	letter-spacing: .07em;
	text-transform: uppercase;
}

.innovant-tabnav__link[aria-current="true"],
.innovant-tabnav__link:hover {
	border-block-end-color: var(--sstr-blue-bright);
	color: var(--sstr-white);
}

.innovant-detail,
.innovant-guide-detail {
	max-inline-size: var(--sstr-max);
	grid-template-columns: minmax(0, 1fr) minmax(280px, 360px);
	gap: clamp(44px, 6vw, 94px);
	padding-inline: var(--sstr-gutter);
}

.innovant-detail__main > .innovant-section,
.innovant-article-body > :where(h2, h3) {
	position: relative;
}

.innovant-section {
	margin-block: 0;
	padding-block: clamp(48px, 6vw, 82px);
	border-block-start: 1px solid var(--sstr-line);
}

.innovant-section > h2,
.innovant-faq > h2,
.innovant-related > h2 {
	font-size: clamp(2rem, 4vw, 4rem);
	text-transform: uppercase;
}

.innovant-detail__aside {
	inset-block-start: calc(var(--sstr-header-h) + 76px);
}

.innovant-meta,
.innovant-moretopic,
.innovant-relsvc {
	padding: 28px;
	background: var(--sstr-silver);
	border: 1px solid var(--sstr-line);
}

.innovant-cta-card {
	position: relative;
	padding: 30px;
	overflow: hidden;
	background: linear-gradient(145deg, var(--sstr-graphite-2), var(--sstr-graphite));
	border: 1px solid var(--sstr-blue-bright);
	border-inline-start-width: 5px;
	color: var(--sstr-white);
}

.innovant-cta-card::after {
	position: absolute;
	inset-block-start: 0;
	inset-inline-end: 0;
	inline-size: 70px;
	block-size: 70px;
	background: linear-gradient(135deg, transparent 48%, rgba(101, 174, 239, .18) 49%);
	content: "";
	pointer-events: none;
}

.innovant-cta-card h3 {
	position: relative;
	z-index: 1;
	max-inline-size: 14ch;
	margin-block-end: 14px;
	color: var(--sstr-white);
	font-size: clamp(1.35rem, 2.1vw, 1.9rem);
	line-height: 1.08;
}

.innovant-cta-card p {
	position: relative;
	z-index: 1;
	margin-block-end: 24px;
	color: rgba(255, 255, 255, .82);
	font-size: .96rem;
	line-height: 1.55;
}

.innovant-cta-card a {
	position: relative;
	z-index: 1;
}

.innovant-meta__chip {
	display: grid;
	grid-template-columns: minmax(90px, .42fr) 1fr;
	gap: 16px;
	padding-block: 12px;
	border-block-end: 1px solid var(--sstr-line);
}

.innovant-disclosure {
	padding: 18px;
	background: rgba(86, 144, 204, .12);
	border: 1px solid var(--sstr-blue-bright);
}

.innovant-disclosure__badge {
	border-radius: 0;
	background: var(--sstr-blue-bright);
	color: var(--sstr-black);
}

.innovant-disclosure__k,
.innovant-disclosure__text {
	color: var(--sstr-blue-dark);
}

.innovant-guide-hero {
	max-inline-size: none;
	padding-inline: max(var(--sstr-gutter), calc((100vw - var(--sstr-max)) / 2));
}

.innovant-article-meta {
	gap: 0;
	border-block-start: 1px solid rgba(255, 255, 255, .24);
}

.innovant-article-meta__topic,
.innovant-article-meta__item {
	min-block-size: 42px;
	padding: 12px 14px;
	border-inline-end: 1px solid rgba(255, 255, 255, .24);
	border-radius: 0;
	font-size: .67rem;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.innovant-article-meta__topic {
	background: var(--sstr-blue-bright);
	color: var(--sstr-black) !important;
}

.innovant-article-meta__item::before {
	display: none;
}

.innovant-article-body {
	color: #333b44;
	font-size: clamp(1.04rem, 1.2vw, 1.16rem);
	line-height: 1.72;
}

.innovant-article-body > p:first-of-type {
	padding-inline-start: 24px;
	border-inline-start: 4px solid var(--sstr-blue-bright);
	color: var(--sstr-ink);
	font-size: clamp(1.2rem, 1.8vw, 1.55rem);
}

.innovant-article-body h2 {
	margin-block: 2.4em .8em;
	padding-block-start: 28px;
	border-block-start: 1px solid var(--sstr-line);
	color: var(--sstr-ink);
	font-size: clamp(2rem, 4vw, 3.8rem);
	text-transform: uppercase;
}

.innovant-article-body h2::before {
	color: var(--sstr-blue);
	font-size: .65rem;
	letter-spacing: .09em;
}

.innovant-article-body h3 {
	color: var(--sstr-ink);
	text-transform: uppercase;
}

.innovant-article-body :where(blockquote, .wp-block-quote) {
	margin-inline: 0;
	padding: clamp(26px, 4vw, 46px);
	background: var(--sstr-graphite);
	border: 0;
	border-inline-start: 6px solid var(--sstr-blue-bright);
	color: var(--sstr-white);
}

.innovant-article-body .innovant-service-list li {
	background: var(--sstr-silver);
	border: 1px solid var(--sstr-line);
	border-radius: 0;
}

/* ==========================================================================
   12. FORMS / TABLES / FILES
   ========================================================================== */

.innovant-form-wrap,
.innovant-form {
	max-inline-size: 1000px;
}

.innovant-form-wrap {
	padding: clamp(28px, 5vw, 64px);
	background: var(--sstr-silver);
	border: 1px solid var(--sstr-line);
}

.innovant-form {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 24px;
}

.innovant-form__field {
	display: grid;
	gap: 8px;
}

.innovant-form__field label,
.innovant-form legend {
	color: var(--sstr-ink);
	font-size: .69rem;
	font-weight: 800;
	letter-spacing: .075em;
	text-transform: uppercase;
}

.innovant-form__field:has(textarea),
.innovant-form__consent,
.innovant-form__actions,
.innovant-form__notice {
	grid-column: 1 / -1;
}

.innovant-form textarea {
	min-block-size: 170px;
	resize: vertical;
}

.innovant-form__consent {
	padding: 16px;
	border: 1px solid var(--sstr-line);
}

.innovant-form__notice {
	border-radius: 0;
	border-inline-start: 4px solid var(--sstr-blue);
}

:where(table, .wp-block-table table, .innovant-compare) {
	inline-size: 100%;
	border-collapse: collapse;
	border: 1px solid var(--sstr-line);
	font-size: .9rem;
}

:where(table, .wp-block-table table, .innovant-compare) :where(th, td) {
	padding: 14px 16px;
	border: 1px solid var(--sstr-line);
	text-align: start;
	vertical-align: top;
}

:where(table, .wp-block-table table, .innovant-compare) th {
	background: var(--sstr-graphite);
	color: var(--sstr-white);
	font-size: .66rem;
	font-weight: 800;
	letter-spacing: .08em;
	text-transform: uppercase;
}

:where(table, .wp-block-table table, .innovant-compare) tbody tr:nth-child(even) {
	background: var(--sstr-silver);
}

.innovant-filecard {
	background: var(--sstr-silver);
	border: 1px solid var(--sstr-line);
}

/* ==========================================================================
   13. ACCORDIONS / FAQ
   ========================================================================== */

.innovant-faq,
.innovant-faq2 {
	max-inline-size: 1100px;
	margin-inline: 0;
}

.innovant-faq details,
.innovant-faq2__item {
	margin: 0;
	background: transparent;
	border: 0;
	border-block-start: 1px solid currentColor;
}

.innovant-faq details:last-child,
.innovant-faq2__item:last-child {
	border-block-end: 1px solid currentColor;
}

.innovant-faq summary,
.innovant-faq2__q {
	min-block-size: 78px;
	padding: 20px 0;
	color: inherit;
	font-family: var(--wp--preset--font-family--display);
	font-size: clamp(1rem, 1.7vw, 1.4rem);
	font-weight: 700;
	letter-spacing: -.01em;
	text-transform: uppercase;
}

.innovant-faq2__mark {
	inline-size: 38px;
	block-size: 38px;
	border: 1px solid currentColor;
}

.innovant-faq2__mark::before,
.innovant-faq2__mark::after {
	inset-inline-start: 10px;
	inset-block-start: 17px;
	inline-size: 16px;
	background: var(--sstr-blue-bright);
}

.innovant-faq2__a {
	max-inline-size: 72ch;
	padding: 0 64px 28px 0;
	color: inherit;
}

[dir="rtl"] .innovant-faq2__a {
	padding: 0 0 28px 64px;
}

/* ==========================================================================
   14. TESTIMONIALS
   ========================================================================== */

.innovant-tstm {
	padding: var(--sstr-section) var(--sstr-gutter);
	background: var(--sstr-paper);
	border-block-start: 1px solid var(--sstr-line);
	color: var(--sstr-ink);
}

.innovant-tstm .innovant-section-head__title {
	color: var(--sstr-ink);
}

.innovant-tstm .innovant-section-head__intro {
	color: var(--sstr-muted);
}

.innovant-tstm__inner {
	max-inline-size: var(--sstr-max);
	padding-inline: 0;
}

.innovant-tstm__track {
	grid-auto-columns: calc((100% - 2px) / 3);
	gap: 0;
	padding: 0;
	border-block-start: 1px solid var(--sstr-line);
	border-inline-start: 1px solid var(--sstr-line);
}

.innovant-tstm__card {
	min-block-size: 340px;
	padding: clamp(24px, 3vw, 40px);
	background: var(--sstr-white);
	border: 0;
	border-inline-end: 1px solid var(--sstr-line);
	border-block-end: 1px solid var(--sstr-line);
	color: var(--sstr-ink);
}

.innovant-tstm__card::before {
	content: "//";
	color: var(--sstr-blue-bright);
	font: 800 .74rem/1 var(--wp--preset--font-family--body);
	letter-spacing: .12em;
}

.innovant-tstm__card:hover {
	background: #f1f6fb;
	border-color: rgba(86, 144, 204, .48);
}

.innovant-tstm__quote p,
.innovant-tstm__client {
	color: var(--sstr-ink);
}

.innovant-tstm__quote p {
	font-size: clamp(1rem, 1.3vw, 1.22rem);
}

.innovant-tstm__by {
	border-color: var(--sstr-line);
}

.innovant-tstm__logowrap {
	border-radius: 0;
	border-color: var(--sstr-line);
}

.innovant-tstm__person,
.innovant-tstm__role,
.innovant-tstm__status,
.innovant-tstm__disclosure {
	color: var(--sstr-muted);
}

.innovant-tstm__btn {
	border-radius: 0;
	border-color: var(--sstr-blue);
	background: var(--sstr-white);
	color: var(--sstr-blue);
}

.innovant-tstm__btn:hover {
	background: var(--sstr-blue);
	color: var(--sstr-white);
}

/* ==========================================================================
   15. CTA BAND / FOOTER
   ========================================================================== */

.innovant-cta-band {
	min-block-size: 380px;
	padding: clamp(56px, 6vw, 96px) var(--sstr-gutter);
	background: var(--sstr-graphite);
	border-block: 1px solid var(--sstr-line-dark);
	text-align: start;
}

.innovant-cta-band::before {
	filter: grayscale(.72) contrast(1.04) brightness(.8);
	opacity: .48 !important;
}

.innovant-cta-band::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background: linear-gradient(90deg, rgba(48, 56, 64, .68), rgba(48, 56, 64, .18));
}

.innovant-cta-band__inner {
	max-inline-size: var(--sstr-max);
	margin-inline: auto;
	align-items: flex-start;
}

.innovant-cta-band__title {
	max-inline-size: 22ch;
	color: var(--sstr-white);
	font-size: clamp(2rem, 3.333vw, 3.86rem);
	font-weight: 400;
	letter-spacing: -.04em;
	line-height: 1;
	text-align: start;
	text-transform: uppercase;
}

.innovant-cta-band__sub {
	max-inline-size: 54ch;
	color: rgba(255, 255, 255, .65);
	text-align: start;
}

.innovant-footer {
	padding: 0 var(--sstr-gutter) 36px;
	background: var(--sstr-silver);
	border-block-start: 1px solid var(--sstr-line);
	color: var(--sstr-muted);
}

.innovant-footer::before {
	background: none;
	opacity: 0;
	mix-blend-mode: normal;
}

.innovant-footer__trust,
.innovant-footer__top,
.innovant-footer__legal {
	max-inline-size: var(--sstr-max);
}

.innovant-footer__trust {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0;
	margin-inline: auto;
	border-inline-start: 1px solid var(--sstr-line);
}

.innovant-ftrust__item {
	min-block-size: 66px;
	padding: 16px 20px;
	border-inline-end: 1px solid var(--sstr-line);
	border-block-end: 1px solid var(--sstr-line);
	font-size: .7rem;
	letter-spacing: .05em;
	text-transform: uppercase;
	color: var(--sstr-ink);
}

.innovant-ftrust__ico,
.innovant-qcontact__ico,
.innovant-fsocial__link {
	border-radius: 0;
	background: rgba(86, 144, 204, .12);
	color: var(--sstr-blue);
}

.innovant-footer__top {
	grid-template-columns: 1.4fr repeat(3, 1fr);
	gap: 0;
	margin-inline: auto;
	border-inline-start: 1px solid var(--sstr-line);
}

.innovant-footer__col {
	min-block-size: 270px;
	padding: clamp(24px, 2.8vw, 38px);
	border-inline-end: 1px solid var(--sstr-line);
	border-block-end: 1px solid var(--sstr-line);
}

.innovant-footer__brandcol img {
	filter: none;
}

.innovant-footer__tag,
.innovant-qcontact__val,
.innovant-footer__legal {
	color: var(--sstr-muted);
}

.innovant-footer__h {
	color: var(--sstr-blue);
	font-size: .74rem;
	letter-spacing: .1em;
}

.innovant-footer__col a {
	color: var(--sstr-ink);
}

.innovant-footer__col a:hover {
	color: var(--sstr-blue);
}

.innovant-footer .innovant-qcontact__link,
.innovant-footer .innovant-qcontact__txt {
	color: var(--sstr-ink);
}

.innovant-footer__contact ul.innovant-qcontact {
	gap: 16px;
}

.innovant-footer .innovant-qcontact__link {
	align-items: flex-start;
	font-size: .95rem;
	font-weight: 650;
	line-height: 1.35;
}

.innovant-footer .innovant-qcontact__ico {
	inline-size: 38px;
	block-size: 38px;
	background: rgba(8, 119, 185, .12);
}

.innovant-footer .innovant-qcontact__val {
	margin-block-start: 3px;
	color: var(--sstr-muted);
	font-size: .78rem;
	font-weight: 550;
}

.innovant-footer__legal {
	margin-block-start: 0;
	padding: 20px 24px;
	border: 1px solid var(--sstr-line);
	border-block-start: 0;
	font-size: .7rem;
	letter-spacing: .04em;
	text-transform: uppercase;
}

.innovant-footer__legal a {
	color: var(--sstr-blue);
}

.innovant-totop {
	border: 1px solid var(--sstr-line-dark);
	border-radius: 0;
	background: var(--sstr-graphite);
	box-shadow: none;
}

.innovant-totop:hover {
	background: var(--sstr-blue);
}

/* ==========================================================================
   16. RTL SAFETY
   ========================================================================== */

[dir="rtl"] :where(
	.innovant-hero__title,
	.innovant-section-head__title,
	.innovant-archive-hero__title,
	.innovant-guide-hero__title,
	.innovant-cta-band__title,
	.innovant-cptcard__title,
	.innovant-guide-card__title,
	.innovant-svcdir__title,
	.innovant-sectile__name
) {
	font-family: 'IBM Plex Sans Arabic', 'Tajawal', sans-serif;
	letter-spacing: 0;
	line-height: 1.08;
	text-transform: none;
}

[dir="rtl"] :where(.eyebrow, .innovant-primary-nav__link, .innovant-footer__h) {
	letter-spacing: 0;
}

[dir="rtl"] :where(
	.innovant-cptcard__more span[aria-hidden],
	.innovant-svcdir__arrow,
	.innovant-svcdir__go span[aria-hidden],
	.innovant-roadmap__all span[aria-hidden],
	.innovant-btn span[aria-hidden]
) {
	display: inline-block;
	transform: scaleX(-1);
}

[dir="rtl"] .innovant-svcdir__row:hover .innovant-svcdir__arrow,
[dir="rtl"] .innovant-svcdir__row:focus-visible .innovant-svcdir__arrow {
	transform: translateX(-4px) scaleX(-1);
}

/* ==========================================================================
   17. RESPONSIVE — 1440 / 1024 / 768 / 390
   ========================================================================== */

@media (min-width: 601px) and (max-width: 900px) {
	.innovant-ticker {
		grid-template-columns: 34px minmax(280px, 52vw) minmax(0, 1fr) 40px;
	}

	.innovant-ticker--spotlight-only {
		grid-template-columns: 34px minmax(0, 1fr);
	}

	.innovant-ticker__label {
		justify-content: center;
		padding-inline: 0;
	}

	.innovant-ticker__label-text {
		display: none;
	}

	.innovant-ticker__spotlight {
		padding-inline: 10px;
	}
}

@media (max-width: 600px) {
	.innovant-ticker {
		grid-template-columns: minmax(0, 1fr) 40px;
		grid-template-rows: 30px 30px;
		min-block-size: 60px;
		font-size: .68rem;
	}

	.innovant-ticker--spotlight-only {
		grid-template-columns: minmax(0, 1fr);
		grid-template-rows: 30px;
		min-block-size: 30px;
	}

	.innovant-ticker__label {
		display: none;
	}

	.innovant-ticker__spotlight {
		grid-column: 1;
		grid-row: 1;
		gap: 8px;
		padding: 4px 9px;
		border-block-end: 1px solid var(--sstr-line-dark);
		border-inline-end: 0;
	}

	.innovant-ticker__spotlight-title {
		font-size: .625rem;
	}

	.innovant-ticker__viewport {
		grid-column: 1;
		grid-row: 2;
	}

	.innovant-ticker__toggle {
		grid-column: 2;
		grid-row: 1 / 3;
		inline-size: 40px;
	}
}

/* Phone header controls need this treatment beyond 480px as well; otherwise
 * the desktop CTA and language pair can push the menu toggle off-canvas. */
@media (max-width: 640px) {
	.innovant-header__bar {
		inline-size: 100%;
		padding-inline: 14px;
		gap: 8px;
	}

	.innovant-header__brand {
		flex: 1 1 auto;
		min-inline-size: 0;
		padding-inline-end: 10px;
	}

	.innovant-header__brand img {
		max-inline-size: min(148px, 42vw);
		block-size: auto;
	}

	.innovant-header__actions {
		flex: 0 0 auto;
		padding-inline-start: 0;
		border-inline-start: 0;
	}

	.innovant-header__actions .wp-block-button {
		display: none;
	}

	.innovant-langswitch__item:has(> .innovant-langswitch__link.is-current) {
		display: none;
	}

	.innovant-header .innovant-langswitch__link {
		font-size: .64rem;
		letter-spacing: .04em;
	}

	.innovant-mobile-toggle {
		inline-size: 42px;
		block-size: 42px;
		padding: 9px;
	}
}

/* Compact desktop zone: keep every header control inside the viewport. */
@media (min-width: 1280px) and (max-width: 1759px) {
	.innovant-header__bar {
		padding-inline: clamp(20px, 2vw, 32px);
		gap: clamp(12px, 1vw, 18px);
	}

	.innovant-header__brand {
		padding-inline-end: 16px;
	}

	.innovant-header__brand img {
		block-size: 32px;
	}

	.innovant-primary-nav__list {
		gap: clamp(10px, .8vw, 14px);
	}

	.innovant-primary-nav__link {
		font-size: .625rem;
		letter-spacing: .03em;
	}

	.innovant-header__actions {
		gap: 8px;
		padding-inline-start: 12px;
	}

	.innovant-header__search {
		flex: 0 0 170px;
		min-inline-size: 170px;
		inline-size: 170px;
	}

	.innovant-header__actions .wp-block-button__link {
		padding-inline: 16px;
		font-size: .625rem;
	}
}

@media (min-width: 1280px) and (max-width: 1439px) {
	.innovant-header__search {
		display: none;
	}
}

@media (max-width: 1199px) {
	.innovant-clients__grid {
		grid-template-columns: repeat(5, minmax(0, 1fr));
	}
}

@media (max-width: 799px) {
	.innovant-clients__grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

@media (max-width: 559px) {
	.innovant-clients__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 1439px) {
	:root {
		--sstr-gutter: clamp(28px, 4vw, 58px);
		--sstr-section: clamp(48px, 5.5vw, 72px);
	}

	body.home .innovant-hero__title {
		font-size: clamp(2.15rem, 2.55vw, 2.65rem);
	}

	.innovant-ptnr__grid {
		grid-template-columns: repeat(5, minmax(0, 1fr));
	}
}

@media (max-width: 1279px) {
	:root {
		--sstr-header-h: 68px;
	}

	.innovant-header__bar {
		min-block-size: var(--sstr-header-h);
	}

	.innovant-header__brand {
		border-inline-end: 0;
	}

	.innovant-mobile-toggle {
		border: 1px solid var(--sstr-line-dark);
		border-radius: 0;
	}

	html.has-jsnav .innovant-primary-nav {
		inset-block-start: 100%;
		max-block-size: calc(100dvh - var(--sstr-header-h));
		padding: 0 var(--sstr-gutter) 36px;
		background: var(--sstr-black);
		border-block-start: 1px solid var(--sstr-line-dark);
		box-shadow: none;
	}

	html.has-jsnav .innovant-primary-nav__list {
		gap: 0;
		border-inline-start: 1px solid var(--sstr-line-dark);
	}

	html.has-jsnav .innovant-primary-nav__item {
		border-inline-end: 1px solid var(--sstr-line-dark);
		border-block-end: 1px solid var(--sstr-line-dark);
	}

	html.has-jsnav .innovant-primary-nav__link {
		min-block-size: 58px;
		padding: 20px;
		font-size: .7rem;
	}

	html.has-jsnav .innovant-primary-nav__item--cta > a {
		font-size: .75rem;
	}

	html.has-jsnav .innovant-primary-nav__toggle {
		inline-size: 58px;
		block-size: 58px;
		border-inline-start: 1px solid var(--sstr-line-dark);
	}

	html.has-jsnav .innovant-primary-nav__submenu {
		padding: 10px 18px 24px;
		border-block-start: 1px solid var(--sstr-line-dark);
	}

	html.has-jsnav .innovant-navmega__col {
		padding-block: 10px;
	}

	.innovant-header__search {
		display: none;
	}

	body.home .innovant-hero__main {
		grid-column: 1 / span 8;
	}

	body.home .innovant-hero__panel {
		grid-column: 9 / -1;
	}

	.innovant-kindex__list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.innovant-sectorgrid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.innovant-ptnr__grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

@media (max-width: 1024px) {
	:root {
		--sstr-gutter: clamp(24px, 4.5vw, 46px);
		--sstr-section: clamp(48px, 6vw, 64px);
	}

	body.home .innovant-hero {
		min-block-size: 760px;
	}

	body.home .innovant-hero__main {
		grid-column: 1 / span 7;
		padding-inline-end: 36px;
	}

	body.home .innovant-hero__panel {
		grid-column: 8 / -1;
	}

	body.home .innovant-hero__title {
		font-size: clamp(2.1rem, 3.6vw, 2.4rem);
	}

	.innovant-grid-4,
	.innovant-numbers {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.innovant-sectorgrid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.innovant-svcdir__stage {
		grid-template-columns: minmax(190px, .35fr) 1fr;
	}

	.innovant-est {
		grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
	}

	.innovant-detail,
	.innovant-guide-detail {
		grid-template-columns: 1fr;
	}

	.innovant-detail__aside {
		position: static;
	}

	.innovant-footer__top {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.innovant-footer__col {
		min-block-size: 280px;
	}

	.innovant-tstm__track {
		grid-auto-columns: calc((100% - 24px) / 2);
	}

	.innovant-clients__set {
		grid-template-columns: repeat(8, minmax(0, 1fr));
	}
}

@media (max-width: 768px) {
	:root {
		--sstr-gutter: 22px;
		--sstr-section: 54px;
		--sstr-chamfer: 10px;
	}

	body.home .innovant-hero {
		align-items: center;
		min-block-size: max(690px, calc(100svh - 131px));
		padding-block: 32px 28px;
	}

	body.home .innovant-hero::after {
		background: linear-gradient(0deg, rgba(24, 25, 27, .82) 0%, rgba(34, 35, 38, .5) 58%, rgba(34, 35, 38, .2) 100%);
	}

	body.home .innovant-hero__grid {
		display: block;
	}

	body.home .innovant-hero__main {
		padding-inline-end: 0;
	}

	body.home .innovant-hero__title {
		max-inline-size: 100%;
		font-size: clamp(2rem, 4.6vw, 2.35rem);
	}

	body.home .innovant-hero__lead {
		font-size: 1rem;
	}

	body.home .innovant-hero__panel {
		margin-block-start: 14px;
		padding: 16px;
	}

	body.home .innovant-hero__stats {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	body.home .innovant-hero__stat {
		min-block-size: 64px;
		padding: 8px;
		border-inline-end: 1px solid rgba(255, 255, 255, .18);
		border-block-end: 0;
	}

	body.home .innovant-hero__stat:last-child {
		border-inline-end: 0;
	}

	.innovant-hspot.has-js .innovant-hspot__stage {
		min-block-size: 112px;
	}

	.innovant-home-section .innovant-section-head::before {
		position: static;
		display: inline-block;
		margin-block-end: 18px;
	}

	.innovant-section-head__title {
		font-size: clamp(2rem, 7vw, 3rem);
	}

	.innovant-kindex__list,
	.innovant-sectorgrid,
	.innovant-grid-3,
	.innovant-cptgrid,
	.innovant-guide-grid,
	.innovant-related-grid,
	.innovant-subsvc__grid {
		grid-template-columns: 1fr !important;
	}

	.innovant-kindex__item {
		min-block-size: 128px;
	}

	.innovant-svcdir__stage {
		grid-template-columns: 1fr;
	}

	.innovant-svcdir__stagehead {
		border-inline-end: 0;
		border-block-end: 1px solid var(--sstr-line);
	}

	.innovant-svcdir__row {
		grid-template-columns: auto 1fr;
	}

	.innovant-svcdir__arrow {
		display: none;
	}

	.innovant-jmap__list {
		grid-template-columns: 1fr;
		border-block-start: 1px solid var(--sstr-line);
	}

	.innovant-jmap__item {
		border-block-end: 1px solid var(--sstr-line);
	}

	.innovant-jmap__stage {
		flex-direction: row;
		text-align: start;
	}

	.innovant-jmap__track {
		display: none;
	}

	.innovant-est {
		grid-template-columns: 1fr;
	}

	.innovant-est__form {
		border-inline-end: 0;
		border-block-end: 1px solid currentColor;
	}

	.innovant-ptnr__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.innovant-clients__set {
		grid-template-columns: repeat(5, minmax(0, 1fr));
	}

	.innovant-tstm__track {
		grid-auto-columns: 100%;
	}

	.innovant-archive-hero {
		min-block-size: 480px;
	}

	.innovant-archive-hero__title,
	.innovant-hero-detail h1,
	.innovant-guide-hero__title,
	.innovant-cta-band__title {
		font-size: clamp(2.4rem, 8vw, 4.2rem) !important;
	}

	.innovant-hero-detail,
	.innovant-guide-hero {
		min-block-size: 480px;
		padding: 42px 24px;
	}

	.innovant-hero-detail__grid {
		display: block;
	}

	.innovant-svc-heromedia {
		margin-block-start: 30px;
	}

	.innovant-tabnav {
		padding-inline: 0;
		overflow-x: auto;
		flex-wrap: nowrap;
	}

	.innovant-tabnav__link {
		flex: 0 0 auto;
	}

	.innovant-roadmap__body {
		align-items: flex-start;
	}

	.innovant-roadmap__media {
		inline-size: 120px;
		block-size: 90px;
	}

	.innovant-form {
		grid-template-columns: 1fr;
	}

	.innovant-form__field:has(textarea),
	.innovant-form__consent,
	.innovant-form__actions,
	.innovant-form__notice {
		grid-column: auto;
	}

	.innovant-footer__trust,
	.innovant-footer__top {
		grid-template-columns: 1fr;
	}

	.innovant-footer__col {
		min-block-size: auto;
	}

	.innovant-footer__legal {
		align-items: flex-start;
		flex-direction: column;
	}
}

@media (max-width: 480px) {
	:root {
		--sstr-gutter: 18px;
		--sstr-section: 46px;
	}

	html,
	body {
		max-inline-size: 100%;
		overflow-x: clip;
	}

	.innovant-header__bar {
		inline-size: 100%;
		padding-inline: 14px;
		gap: 8px;
	}

	.innovant-header__brand {
		flex: 1 1 auto;
		min-inline-size: 0;
		padding-inline-end: 10px;
	}

	.innovant-header__brand img {
		max-inline-size: min(148px, 42vw);
		block-size: auto;
	}

	.innovant-header__actions {
		flex: 0 0 auto;
		padding-inline-start: 0;
		border-inline-start: 0;
	}

	.innovant-header__actions .wp-block-button {
		display: none;
	}

	.innovant-langswitch__item:has(> .innovant-langswitch__link.is-current) {
		display: none;
	}

	.innovant-header .innovant-langswitch__link {
		font-size: .64rem;
		letter-spacing: .04em;
	}

	.innovant-mobile-toggle {
		inline-size: 42px;
		block-size: 42px;
		padding: 9px;
	}

	.innovant-ticker__label {
		padding-inline: 9px;
	}

	body.home .innovant-hero {
		min-block-size: calc(100svh - 153px);
		padding-block: 22px 18px;
	}

	body.home .innovant-hero__eyebrow::before {
		display: none;
	}

	body.home .innovant-hero__title {
		inline-size: 100%;
		max-inline-size: 100%;
		font-size: clamp(1.75rem, 7.6vw, 1.95rem);
		line-height: .98;
		overflow-wrap: break-word;
	}

	body.home .innovant-hero__lead {
		inline-size: 100%;
		max-inline-size: 100%;
		margin-block: 12px 13px;
		font-size: .86rem;
		line-height: 1.42;
	}

	body.home .innovant-hero__cta {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 8px;
		margin-block-end: 10px;
	}

	body.home .innovant-hero__cta .innovant-btn {
		inline-size: 100%;
		min-block-size: 44px;
		padding: 10px 7px;
		font-size: .61rem;
		letter-spacing: .025em;
	}

	body.home .innovant-hero__panel {
		margin-block-start: 10px;
		padding: 12px;
	}

	body.home .innovant-hero__stats {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	body.home .innovant-hero__stat {
		min-block-size: 64px;
		padding: 8px;
		border-inline-end: 1px solid rgba(255, 255, 255, .18);
		border-block-end: 0;
	}

	body.home .innovant-hero__stat:last-child {
		border-inline-end: 0;
	}

	body.home .innovant-hero__stat-n {
		font-size: .86rem;
	}

	body.home .innovant-hero__stat-l {
		margin-block-start: 6px;
		font-size: .52rem;
		letter-spacing: .035em;
		line-height: 1.25;
	}

	body.home .innovant-hero__eyebrow.eyebrow {
		margin-block-end: 10px;
		font-size: .6rem;
		line-height: 1.35;
	}

	.innovant-hspot__head {
		gap: 8px;
		margin-block-end: 8px;
		padding-block-end: 8px;
	}

	.innovant-hspot__eyebrow,
	.innovant-hspot__count {
		font-size: .54rem;
	}

	.innovant-hspot.has-js .innovant-hspot__stage {
		min-block-size: 104px;
	}

	.innovant-hspot__name,
	.innovant-hspot.has-js .innovant-hspot__name {
		font-size: 1.05rem !important;
	}

	.innovant-hspot__purpose {
		font-size: .7rem;
		line-height: 1.3;
	}

	.innovant-hspot__go {
		font-size: .6rem;
	}

	.innovant-hspot__dots,
	.innovant-hspot.has-js .innovant-hspot__dots {
		margin-block-start: 10px;
	}

	.innovant-home-section .innovant-section-head {
		padding-block-start: 20px;
	}

	.innovant-section-head__title {
		font-size: clamp(1.85rem, 8vw, 2.4rem);
	}

	.innovant-grid-4,
	.innovant-numbers {
		grid-template-columns: 1fr;
	}

	.innovant-numcard {
		min-block-size: 128px;
	}

	body.home .innovant-band--navy .innovant-numbers {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	body.home .innovant-band--navy .innovant-numcard {
		min-block-size: 112px;
		padding: 14px;
	}

	body.home .innovant-band--navy .innovant-numcard__l {
		font-size: .66rem;
		line-height: 1.35;
	}

	.innovant-svcdir__row {
		grid-template-columns: auto minmax(0, 1fr);
		min-block-size: 94px;
		gap: 10px;
		padding: 12px 14px;
	}

	.innovant-svcdir__media,
	.innovant-svcdir__ico {
		inline-size: 56px;
		block-size: 56px;
	}

	.innovant-svcdir__stagehead {
		padding: 18px;
	}

	.innovant-svcdir__stagenum {
		margin-block-end: 8px;
	}

	.innovant-svcdir__stagename {
		font-size: 1.2rem;
	}

	.innovant-svcdir__title {
		font-size: .94rem;
		line-height: 1.2;
	}

	.innovant-svcdir__desc {
		font-size: .75rem;
		line-height: 1.35;
	}

	.innovant-svcdir__go {
		font-size: .7rem;
	}

	.innovant-est__form {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		align-items: end;
		gap: 10px;
		padding: 18px;
	}

	.innovant-est__field {
		min-inline-size: 0;
		gap: 5px;
	}

	.innovant-est__label {
		font-size: .58rem;
		line-height: 1.25;
	}

	.innovant-est__select,
	.innovant-est__number {
		min-block-size: 46px;
		padding: 8px;
		font-size: .84rem;
	}

	.innovant-est__result {
		padding: 22px;
	}

	.innovant-sectile {
		min-block-size: 300px;
	}

	.innovant-roadmap__step {
		padding-inline-start: 72px;
	}

	.innovant-roadmap__body {
		display: block;
	}

	.innovant-roadmap__media {
		inline-size: 100%;
		block-size: 150px;
		margin-block-end: 20px;
	}

	.innovant-ptnr__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.innovant-ptnr__item {
		min-block-size: 96px;
		padding: 14px;
	}

	.innovant-tstm__track {
		grid-auto-columns: 100%;
	}

	.innovant-archive-hero {
		min-block-size: 420px;
		padding-block-end: 44px;
	}

	.innovant-archive-hero__title,
	.innovant-hero-detail h1,
	.innovant-guide-hero__title,
	.innovant-cta-band__title {
		font-size: clamp(2.2rem, 9.5vw, 2.8rem) !important;
	}

	.innovant-detail,
	.innovant-guide-detail {
		padding-inline: 18px;
	}

	.innovant-meta__chip {
		grid-template-columns: 1fr;
		gap: 4px;
	}

	.innovant-article-body > p:first-of-type {
		padding-inline-start: 16px;
	}

	.innovant-faq summary,
	.innovant-faq2__q {
		min-block-size: 66px;
		font-size: 1rem;
	}

	.innovant-faq2__a,
	[dir="rtl"] .innovant-faq2__a {
		padding-inline: 0;
	}

	.innovant-cta-band {
		min-block-size: 360px;
	}

	.innovant-footer {
		padding-inline: 14px;
	}

	.innovant-clients {
		padding: 32px 18px;
	}

	.innovant-clients__head {
		margin-block-end: 20px;
		padding-inline: 0;
	}

	.innovant-clients__viewport {
		gap: 10px;
	}

	.innovant-clients__item {
		min-block-size: 64px;
		padding: 6px;
	}
}

@media (max-width: 600px) {
	body.home .innovant-hero {
		min-block-size: max(690px, calc(100svh - 154px));
	}
}

@media (min-width: 481px) and (max-width: 600px) {
	body.home .innovant-hero {
		padding-block: 22px 18px;
	}

	body.home .innovant-hero__title {
		font-size: clamp(1.75rem, 5.2vw, 1.95rem);
	}

	body.home .innovant-hero__lead {
		margin-block: 12px 13px;
		font-size: .86rem;
		line-height: 1.42;
	}

	body.home .innovant-hero__cta {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 8px;
		margin-block-end: 10px;
	}

	body.home .innovant-hero__cta .innovant-btn {
		inline-size: 100%;
		min-block-size: 44px;
		padding: 10px 7px;
		font-size: .61rem;
		letter-spacing: .025em;
	}

	body.home .innovant-hero__panel {
		margin-block-start: 10px;
		padding: 12px;
	}

	body.home .innovant-hero__stat-n {
		font-size: .86rem;
	}

	body.home .innovant-hero__stat-l {
		margin-block-start: 6px;
		font-size: .52rem;
		letter-spacing: .035em;
		line-height: 1.25;
	}

	body.home .innovant-hero__eyebrow.eyebrow {
		margin-block-end: 10px;
		font-size: .6rem;
		line-height: 1.35;
	}

	.innovant-hspot__head {
		gap: 8px;
		margin-block-end: 8px;
		padding-block-end: 8px;
	}

	.innovant-hspot__eyebrow,
	.innovant-hspot__count {
		font-size: .54rem;
	}

	.innovant-hspot.has-js .innovant-hspot__stage {
		min-block-size: 104px;
	}

	.innovant-hspot__name,
	.innovant-hspot.has-js .innovant-hspot__name {
		font-size: 1.05rem !important;
	}

	.innovant-hspot__purpose {
		font-size: .7rem;
		line-height: 1.3;
	}

	.innovant-hspot__go {
		font-size: .6rem;
	}

	.innovant-hspot__dots,
	.innovant-hspot.has-js .innovant-hspot__dots {
		margin-block-start: 10px;
	}
}

/* Short screens still show the complete hero story without forcing the
 * platform panel below the fold. Width-based layout remains unchanged. */
@media (max-width: 768px) and (max-height: 720px) {
	body.home .innovant-hero {
		min-block-size: calc(100svh - 131px);
		padding-block: 18px 16px;
	}

	body.home .innovant-hero__eyebrow.eyebrow {
		margin-block-end: 7px;
	}

	body.home .innovant-hero__title {
		font-size: 1.8rem;
		line-height: 1;
	}

	body.home .innovant-hero__lead {
		margin-block: 8px;
		font-size: .8rem;
		line-height: 1.32;
	}

	body.home .innovant-hero__cta {
		margin-block-end: 6px;
	}

	body.home .innovant-hero__cta .innovant-btn {
		min-block-size: 38px;
		padding-block: 7px;
	}

	body.home .innovant-hero__stat {
		min-block-size: 52px;
		padding: 6px;
	}

	body.home .innovant-hero__panel {
		margin-block-start: 6px;
		padding: 10px;
	}

	.innovant-hspot__head {
		margin-block-end: 6px;
		padding-block-end: 6px;
	}

	.innovant-hspot.has-js .innovant-hspot__stage {
		min-block-size: 84px;
	}

	.innovant-hspot__name,
	.innovant-hspot.has-js .innovant-hspot__name {
		font-size: .95rem !important;
	}

	.innovant-hspot__purpose {
		font-size: .64rem;
	}

	.innovant-hspot__dots,
	.innovant-hspot.has-js .innovant-hspot__dots {
		margin-block-start: 6px;
	}
}

@media (max-width: 600px) and (max-height: 720px) {
	body.home .innovant-hero {
		min-block-size: calc(100svh - 154px);
		padding-block: 10px;
	}

	body.home .innovant-hero__eyebrow.eyebrow {
		margin-block-end: 5px;
		font-size: .625rem;
	}

	body.home .innovant-hero__title {
		font-size: 1.55rem;
	}

	body.home .innovant-hero__lead {
		margin-block: 7px;
		font-size: .75rem;
		line-height: 1.28;
	}

	body.home .innovant-hero__cta {
		gap: 6px;
		margin-block-end: 5px;
	}

	body.home .innovant-hero__cta .innovant-btn {
		min-block-size: 36px;
		padding: 6px 5px;
		font-size: .75rem;
	}

	body.home .innovant-hero__stat {
		min-block-size: 48px;
		padding: 5px;
	}

	body.home .innovant-hero__stat-n {
		font-size: .75rem;
	}

	body.home .innovant-hero__stat-l {
		margin-block-start: 4px;
		font-size: .625rem;
	}

	body.home .innovant-hero__panel {
		margin-block-start: 5px;
		padding: 8px;
	}

	.innovant-hspot.has-js .innovant-hspot__stage {
		min-block-size: 72px;
	}

	.innovant-hspot__eyebrow,
	.innovant-hspot__count {
		font-size: .625rem;
	}

	.innovant-hspot__name,
	.innovant-hspot.has-js .innovant-hspot__name {
		font-size: .9rem !important;
	}

	.innovant-hspot__purpose {
		font-size: .75rem;
	}

	.innovant-hspot__go {
		font-size: .625rem;
	}
}

/* These must follow the responsive hero rules so Arabic never inherits the
 * condensed Latin tracking/line-height at a breakpoint. */
[dir="rtl"] body.home .innovant-hero__title {
	letter-spacing: 0;
	line-height: 1.08;
	text-transform: none;
}

[dir="rtl"] body.home .innovant-hero__eyebrow.eyebrow {
	letter-spacing: 0;
	text-transform: none;
}

@media (min-width: 1025px) and (max-height: 760px) {
	body.home .innovant-hero {
		min-block-size: calc(100svh - 141px);
		padding-block: 28px;
	}

	body.home .innovant-hero__title {
		font-size: clamp(2.15rem, 2.25vw, 2.55rem);
	}

	body.home .innovant-hero__lead {
		margin-block: 14px 16px;
		font-size: .94rem;
		line-height: 1.42;
	}

	body.home .innovant-hero__cta {
		margin-block-end: 16px;
	}

	body.home .innovant-hero__stat {
		min-block-size: 64px;
		padding-block: 10px;
	}

	body.home .innovant-hero__panel {
		padding: 20px;
	}

	.innovant-hspot.has-js .innovant-hspot__stage {
		min-block-size: 130px;
	}
}

/* ========================================================================== 
   18. MOTION / CONTRAST SAFETY
   ========================================================================== */

/* --------------------------------------------------------------------------
   Legacy conflict reset

   The original site used dot textures, diagonal clipping and fully hidden
   scroll-reveal states. Those are not suitable for this design: a slow or
   failed observer must never leave half a section missing.
   -------------------------------------------------------------------------- */

body.innovant-design-sstr .innovant-home-section,
body.innovant-design-sstr .innovant-band--navy,
body.innovant-design-sstr .innovant-route-section,
body.innovant-design-sstr .innovant-archive-body,
body.innovant-design-sstr .innovant-guide-detail {
	background-image: none !important;
}

body.innovant-design-sstr .innovant-sep-diagonal {
	clip-path: none !important;
}

body.innovant-design-sstr :where(.innovant-footer, .innovant-hero, .innovant-cta-band) {
	background-color: var(--sstr-graphite);
}

body.innovant-design-sstr .innovant-clients {
	background-color: var(--sstr-paper);
}

body.innovant-design-sstr .innovant-footer {
	background-color: var(--sstr-silver);
}

body.innovant-design-sstr .innovant-footer::before,
body.innovant-design-sstr .innovant-hero::before,
body.innovant-design-sstr .innovant-est__result::before,
body.innovant-design-sstr .innovant-post-card__media.is-placeholder::after {
	background-image: none !important;
}

html.is-motion:not(.is-motion-done) body.innovant-design-sstr :where(
	.innovant-numcard,
	.innovant-sector-card,
	.innovant-journey__step,
	.innovant-faq2__item,
	.innovant-trust,
	.innovant-section-head,
	.innovant-kindex,
	.innovant-svc-card,
	.innovant-cptcard,
	.innovant-guide-card,
	.innovant-post-card,
	.innovant-archive-hero,
	.innovant-guide-hero__title,
	.innovant-cta-band__inner,
	.innovant-cta-card,
	.innovant-moretopic,
	.innovant-footer__top,
	.innovant-footer__legal,
	.innovant-fbar,
	.innovant-relsvc,
	.innovant-guide-lead,
	.innovant-sectile,
	.innovant-svcdir__stage,
	.innovant-svcdir__item,
	.innovant-roadmap__step,
	.innovant-roadmap__marker,
	.innovant-roadmap__num,
	.innovant-est__line,
	.innovant-route__row,
	.innovant-route__verdict,
	[data-motion="rise"],
	[data-motion="fade"],
	[data-motion="scale"]
) {
	opacity: 1 !important;
	transform: none !important;
	clip-path: none !important;
	will-change: auto !important;
}

html.is-motion:not(.is-motion-done) body.innovant-design-sstr :where(
	[data-motion="stagger"] > *,
	.innovant-topicpills > *,
	.innovant-article-meta > *,
	.innovant-roadmap__title,
	.innovant-roadmap__desc,
	.innovant-roadmap__platforms
) {
	opacity: 1 !important;
	transform: none !important;
}

html.is-motion:not(.is-motion-done) body.innovant-design-sstr :where(
	.inv-imgframe--wipe .inv-imgframe__img,
	.inv-imgframe--zoomin .inv-imgframe__img
) {
	clip-path: none !important;
	transform: none !important;
}

html.is-motion:not(.is-motion-done) body.innovant-design-sstr .innovant-roadmap__step::before {
	transform: scaleY(1) !important;
}

/* Visible, non-blocking motion. Content is readable before and after these
 * effects; the animation never owns layout or visibility. */
.innovant-home-section .innovant-section-head::after {
	content: "";
	position: absolute;
	inset-block-start: -1px;
	inset-inline-start: 0;
	inline-size: clamp(48px, 7vw, 104px);
	block-size: 2px;
	background: var(--sstr-blue-bright);
	transform: scaleX(0);
	transform-origin: left center;
	transition: transform .7s var(--sstr-ease);
}

[dir="rtl"] .innovant-home-section .innovant-section-head::after {
	transform-origin: right center;
}

.is-design-visible .innovant-section-head::after {
	transform: scaleX(1);
}

@keyframes sstr-copy-arrive {
	from { opacity: .55; filter: blur(2px); transform: translateY(12px); }
	to { opacity: 1; filter: blur(0); transform: translateY(0); }
}

@keyframes sstr-number-arrive {
	from { opacity: .62; }
	to { opacity: 1; }
}

@keyframes sstr-soft-rise {
	from { opacity: .62; filter: blur(2px); transform: translateY(14px); }
	to { opacity: 1; filter: blur(0); transform: translateY(0); }
}

@keyframes sstr-logo-scan {
	from { transform: translateX(-30%) skewX(-14deg); }
	to { transform: translateX(720%) skewX(-14deg); }
}

@keyframes sstr-news-flash {
	0%, 100% { opacity: .82; background-color: var(--sstr-blue-bright); box-shadow: 0 0 0 0 rgba(86, 144, 204, .62); transform: scale(1); }
	48% { opacity: 1; background-color: var(--sstr-white); box-shadow: 0 0 0 8px rgba(86, 144, 204, 0); transform: scale(1.075); }
}

@keyframes sstr-news-spotlight {
	0%, 100% { background-color: rgba(86, 144, 204, .08); }
	50% { background-color: rgba(86, 144, 204, .2); }
}

@keyframes sstr-news-sheen {
	0%, 58% { transform: translateX(-170%) skewX(-16deg); }
	100% { transform: translateX(520%) skewX(-16deg); }
}

@keyframes sstr-news-dot {
	0% { box-shadow: 0 0 0 0 rgba(86, 144, 204, .7); }
	100% { box-shadow: 0 0 0 7px rgba(86, 144, 204, 0); }
}

@keyframes sstr-media-breathe {
	from { transform: scale3d(1.005, 1.005, 1); }
	to { transform: scale3d(1.065, 1.065, 1); }
}

@keyframes sstr-media-pan {
	from { transform: scale3d(1.01, 1.01, 1) translate3d(0, 0, 0); }
	to { transform: scale3d(1.075, 1.075, 1) translate3d(var(--sstr-media-pan-x, -.8%), -.55%, 0); }
}

[dir="rtl"] body.innovant-design-sstr {
	--sstr-media-pan-x: .8%;
}

@keyframes sstr-image-settle {
	from { filter: grayscale(1); transform: scale(1.018); }
	to { filter: grayscale(.25); transform: scale(1); }
}

body.has-design-motion .is-design-visible .innovant-section-head__title,
body.has-design-motion .is-design-visible .innovant-section-head__intro {
	animation: sstr-copy-arrive .56s var(--sstr-ease) both;
}

body.has-design-motion .is-design-visible .innovant-section-head__intro {
	animation-delay: 70ms;
}

body.has-design-motion .is-design-visible .innovant-numcard__n {
	animation: sstr-number-arrive .48s var(--sstr-ease) both;
}

body.has-design-motion .is-design-visible .innovant-numcard:nth-child(2) .innovant-numcard__n { animation-delay: 60ms; }
body.has-design-motion .is-design-visible .innovant-numcard:nth-child(3) .innovant-numcard__n { animation-delay: 120ms; }
body.has-design-motion .is-design-visible .innovant-numcard:nth-child(4) .innovant-numcard__n { animation-delay: 180ms; }

/* Scroll motion is applied to children, never to the layout-owning block.
 * This preserves complete cards even when the observer has not run yet. */
html.is-motion :where(
	.innovant-numcard.is-inview,
	.innovant-sector-card.is-inview,
	.innovant-journey__step.is-inview,
	.innovant-sectile.is-inview,
	.innovant-kindex.is-inview,
	.innovant-svc-card.is-inview,
	.innovant-cptcard.is-inview,
	.innovant-guide-card.is-inview,
	.innovant-post-card.is-inview,
	.wp-block-post-template .innovant-card.is-inview,
	.innovant-faq2__item.is-inview,
	.innovant-trust.is-inview,
	.innovant-archive-hero.is-inview,
	.innovant-cta-band__inner.is-inview,
	.innovant-cta-card.is-inview,
	.innovant-moretopic.is-inview,
	.innovant-footer__top.is-inview,
	.innovant-footer__legal.is-inview,
	.innovant-fbar.is-inview,
	.innovant-relsvc.is-inview,
	.innovant-guide-lead.is-inview,
	.innovant-roadmap__step.is-inview,
	.innovant-est__line.is-inview,
	.innovant-route__verdict.is-inview,
	.innovant-route__row.is-inview,
	.innovant-svcdir__stage.is-inview,
	.innovant-svcdir__item.is-inview
) > :not(.innovant-latest-badge) {
	animation: sstr-soft-rise .52s var(--sstr-ease) both;
}

html.is-motion :where(
	.innovant-sectile.is-inview,
	.innovant-cptcard.is-inview,
	.innovant-guide-card.is-inview
) :where(img, .inv-imgframe__img) {
	animation: sstr-image-settle .72s var(--sstr-ease) both;
}

body.has-design-motion .is-design-visible :where(.innovant-clients__item, .innovant-ptnr__item) {
	animation: sstr-soft-rise .46s var(--sstr-ease) both;
}

body.has-design-motion .innovant-clients.is-design-visible .innovant-clients__grid::before {
	animation: sstr-logo-scan 8s linear 1s infinite;
}

body.has-design-motion .is-design-visible :where(.innovant-clients__item, .innovant-ptnr__item):nth-child(2n) { animation-delay: 45ms; }
body.has-design-motion .is-design-visible :where(.innovant-clients__item, .innovant-ptnr__item):nth-child(3n) { animation-delay: 90ms; }
body.has-design-motion .is-design-visible :where(.innovant-clients__item, .innovant-ptnr__item):nth-child(4n) { animation-delay: 135ms; }

/* Every rendered image now breathes continuously from page load. Photo frames
 * animate their picture wrapper so existing parallax transforms on the nested
 * image still compose; all other raster images (including logo walls) animate
 * directly. The short 8s loop is deliberately visible without feeling jumpy. */
html.is-motion body.innovant-design-sstr .inv-imgframe > picture,
html.is-motion body.innovant-design-sstr img:not(.inv-imgframe__img),
html.is-motion body.innovant-design-sstr :where(.innovant-relsvc__thumb, .innovant-moretopic__thumb) {
	transform-origin: center;
	animation: sstr-media-breathe 8s ease-in-out infinite alternate !important;
}

html.is-motion body.innovant-design-sstr .inv-imgframe > picture {
	display: block;
	inline-size: 100%;
	block-size: 100%;
}

html.is-motion body.innovant-design-sstr :where(
	.innovant-guide-lead__img,
	.innovant-svc-heromedia,
	.innovant-article-body figure,
	.wp-block-post-featured-image
) {
	overflow: hidden;
}

html.is-motion body.innovant-design-sstr .inv-imgframe--kenburns .inv-imgframe__img {
	animation: none;
}

body.innovant-design-sstr :is(
	.innovant-guide-card__media,
	.innovant-cptcard__media,
	.innovant-post-card__media:not(.is-placeholder),
	.innovant-svc-card__media
)[style*="background-image"] {
	position: relative;
	overflow: hidden;
}

html.is-motion body.innovant-design-sstr :is(
	.innovant-guide-card__media,
	.innovant-cptcard__media,
	.innovant-post-card__media:not(.is-placeholder),
	.innovant-svc-card__media
)[style*="background-image"]::before {
	content: "";
	position: absolute;
	inset: -1px;
	background-image: inherit;
	background-position: inherit;
	background-size: inherit;
	background-repeat: no-repeat;
	transform-origin: center;
	pointer-events: none;
	animation: sstr-media-breathe 8s ease-in-out infinite alternate;
}

/* Add a gentle zoom to the existing hero crossfade rather than replacing it. */
html.is-motion body.innovant-design-sstr .innovant-hero__layer {
	animation: none;
}

html.is-motion body.innovant-design-sstr .innovant-hero .innovant-hero__layer--1 {
	animation: inv-herorot 60s linear 0s infinite, sstr-media-breathe 8s ease-in-out -2s infinite alternate;
}

html.is-motion body.innovant-design-sstr .innovant-hero .innovant-hero__layer--2 {
	animation: inv-herorot 60s linear 12s infinite, sstr-media-breathe 8s ease-in-out -6s infinite alternate;
}

html.is-motion body.innovant-design-sstr .innovant-hero .innovant-hero__layer--3 {
	animation: inv-herorot 60s linear 24s infinite, sstr-media-breathe 8s ease-in-out -10s infinite alternate;
}

html.is-motion body.innovant-design-sstr .innovant-hero .innovant-hero__layer--4 {
	animation: inv-herorot 60s linear 36s infinite, sstr-media-breathe 8s ease-in-out -14s infinite alternate;
}

html.is-motion body.innovant-design-sstr .innovant-hero .innovant-hero__layer--5 {
	animation: inv-herorot 60s linear 48s infinite, sstr-media-breathe 8s ease-in-out -18s infinite alternate;
}

html.is-motion body.innovant-design-sstr .innovant-archive-hero::after {
	animation: none;
}

html.is-motion body.innovant-design-sstr .innovant-archive-hero::after,
html.is-motion body.innovant-design-sstr .innovant-cta-band::before {
	transform-origin: center;
	animation: sstr-media-pan 9s ease-in-out infinite alternate;
}

html.is-tab-hidden body.innovant-design-sstr :where(
	.innovant-latest-badge,
	.innovant-ticker__latest,
	.innovant-ticker__spotlight,
	.innovant-ticker__spotlight-pulse
) {
	animation-play-state: paused !important;
}

html.is-tab-hidden body.innovant-design-sstr .innovant-ticker__spotlight::after {
	animation-play-state: paused !important;
}

@media (max-width: 768px) {
	html.is-motion body.innovant-design-sstr .innovant-hero .innovant-hero__layer--1 {
		animation: sstr-media-breathe 8s ease-in-out infinite alternate;
	}
}

:where(.innovant-cptcard, .innovant-guide-card, .innovant-sectile, .innovant-kindex__item, .innovant-ptnr__item) {
	transition: transform .35s var(--sstr-ease), border-color .35s var(--sstr-ease), background-color .35s var(--sstr-ease);
}

html.is-motion :where(.innovant-cptcard, .innovant-guide-card, .innovant-sectile, .innovant-kindex__item, .innovant-ptnr__item):hover {
	transform: none;
	border-color: var(--sstr-blue-bright);
	background-color: var(--sstr-white);
}

:where(.innovant-cptcard__media img, .innovant-guide-card__media img, .innovant-sectile__media img) {
	transition: transform .7s var(--sstr-ease), filter .35s var(--sstr-ease);
}

html.is-motion :where(.innovant-cptcard, .innovant-guide-card, .innovant-sectile):hover :where(.innovant-cptcard__media img, .innovant-guide-card__media img, .innovant-sectile__media img) {
	transform: none;
}

/* Reference-style fixed-frame hover: colour and internal reveal change, while
 * the card itself never jumps, tilts or crops a neighbouring block. */
html.is-motion body.innovant-design-sstr :where(
	.innovant-svc-card,
	.innovant-cptcard,
	.innovant-sector-card,
	.innovant-sectile,
	.innovant-guide-card
):hover {
	transform: none !important;
}

html.is-motion body.innovant-design-sstr :where(
	.innovant-guide-card:hover .innovant-guide-card__media,
	.innovant-guide-card:hover .innovant-guide-card__media img,
	.innovant-cptcard:hover .innovant-cptcard__media,
	.innovant-cptcard:hover .innovant-cptcard__media img
) {
	animation: none !important;
	transform: none !important;
}

body.innovant-design-sstr :where(.innovant-btn, .wp-block-button__link) { 
	position: relative;
	overflow: hidden;
	isolation: isolate;
}

body.innovant-design-sstr :where(.innovant-btn, .wp-block-button__link)::after {
	transform: scaleX(.05);
	transform-origin: center;
	transition: transform .425s cubic-bezier(.675, .15, .1, 1);
}

html.is-motion body.innovant-design-sstr :where(.innovant-btn, .wp-block-button__link):hover::after {
	transform: scaleX(1);
}

html.is-motion body.innovant-design-sstr :where(.innovant-btn, .wp-block-button__link):active {
	transform: scale(.955, .925);
}

/* Testimonials use complete frames: two full cards on large screens and one
 * full card on phones. The rail never advertises the next item by cutting it. */
.innovant-tstm {
	padding-block: 32px;
}

.innovant-tstm .innovant-section-head {
	max-inline-size: 1200px;
}

.innovant-tstm .innovant-section-head__title {
	max-inline-size: 28ch;
	font-size: clamp(2rem, 2.55vw, 3rem);
	line-height: 1;
}

.innovant-tstm .innovant-section-head__intro {
	margin-block-start: 16px;
	font-size: 1rem;
	line-height: 1.5;
}

.innovant-tstm__track {
	grid-auto-columns: calc((100% - 1px) / 2);
}

.innovant-tstm__card {
	padding: 20px;
	gap: 12px;
}

.innovant-tstm__quote p {
	font-size: .95rem;
	line-height: 1.45;
}

.innovant-tstm__nav {
	margin-block-start: 10px;
}

/* Reference-scale CTA typography; these rules intentionally follow the
 * legacy responsive declarations so their old oversized !important values
 * cannot win the cascade. */
body.innovant-design-sstr .innovant-cta-band__title {
	max-inline-size: 26ch;
	font-size: clamp(1.8rem, 2.45vw, 2.5rem) !important;
	line-height: 1.08;
	letter-spacing: -.012em;
}

[dir="rtl"] body.innovant-design-sstr .innovant-cta-band__title {
	font-weight: 600;
	line-height: 1.18 !important;
}

@media (max-width: 480px) {
	.innovant-clients__item {
		min-block-size: 82px;
		padding: 10px 12px;
	}

	.innovant-clients__logo {
		max-inline-size: min(132px, 82%);
		max-block-size: 38px;
	}

	.innovant-clients__name {
		font-size: .52rem;
	}

	body.innovant-design-sstr .innovant-cta-band__title {
		font-size: 1.65rem !important;
	}

	.innovant-tstm {
		padding-block: 28px;
	}

	.innovant-tstm .innovant-section-head__title {
		font-size: 1.65rem;
		line-height: 1.05;
	}

	.innovant-tstm .innovant-section-head__intro {
		margin-block-start: 14px;
		font-size: .88rem;
		line-height: 1.45;
	}

	.innovant-tstm__track {
		grid-auto-columns: 100%;
	}

	.innovant-tstm__card {
		padding: 18px;
		gap: 12px;
	}

	.innovant-tstm__quote p {
		font-size: .9rem;
		line-height: 1.45;
	}

	.innovant-tstm__nav {
		margin-block-start: 12px;
	}
}

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		scroll-behavior: auto !important;
		animation-duration: .01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: .01ms !important;
	}

	:where(.innovant-cptcard, .innovant-guide-card, .innovant-btn):hover {
		transform: none;
	}

	.innovant-clients__grid::before {
		display: none;
	}

	.innovant-ticker__latest,
	.innovant-ticker__spotlight,
	.innovant-ticker__spotlight::after,
	.innovant-ticker__spotlight-pulse,
	.innovant-latest-badge,
	body.innovant-design-sstr img,
	.inv-imgframe > picture,
	.inv-imgframe--kenburns .inv-imgframe__img,
	.innovant-guide-card__media::before,
	.innovant-cptcard__media::before,
	.innovant-post-card__media::before,
	.innovant-svc-card__media::before,
	.innovant-guide-card__media > picture,
	.innovant-guide-lead__img > picture,
	.innovant-guide-lead__img > img,
	.innovant-svc-heromedia > picture,
	.innovant-svc-heromedia > img,
	.innovant-entry-content figure > picture,
	.innovant-entry-content figure > img,
	.wp-block-post-featured-image > picture,
	.wp-block-post-featured-image > img,
	.innovant-relsvc__thumb,
	.innovant-moretopic__thumb,
	.innovant-hero__layer,
	.innovant-archive-hero::after,
	.innovant-cta-band::before {
		animation: none !important;
		transform: none !important;
	}

	.innovant-ticker__latest,
	.innovant-latest-badge {
		opacity: 1;
		box-shadow: none;
	}

	.innovant-ticker__spotlight::after {
		display: none;
	}
}

@media (forced-colors: active) {
	:where(.innovant-btn, .wp-block-button__link, .wp-element-button) {
		clip-path: none;
		border: 1px solid ButtonText;
	}

	:where(.innovant-home-section, .innovant-archive-body, .innovant-guide-detail) {
		background-image: none;
	}
}

/* Final palette scrub for legacy animation layers that used literal warm or
	 * green RGB values instead of theme tokens. Keeping these overrides last
	 * guarantees that motion and permission-preview states remain blue/gray. */
html.is-motion .innovant-hero__bg::before {
	background: linear-gradient(115deg,
		rgba(86, 144, 204, 0) 0%,
		rgba(86, 144, 204, .22) 28%,
		rgba(27, 58, 92, 0) 54%,
		rgba(11, 104, 154, .12) 76%,
		rgba(86, 144, 204, 0) 100%);
}

.innovant-roadmap__rail-fill::after {
	border-radius: 0;
	background: var(--sstr-blue-bright);
	box-shadow: 0 0 12px 3px rgba(86, 144, 204, .5), 0 0 0 4px rgba(86, 144, 204, .18);
}

html.is-motion .innovant-roadmap__step.is-reached .innovant-roadmap__marker {
	box-shadow: 0 0 0 5px rgba(86, 144, 204, .16) !important;
}

@keyframes inv-comet {
	0%, 100% { box-shadow: 0 0 10px 2px rgba(86, 144, 204, .48), 0 0 0 4px rgba(86, 144, 204, .16); }
	50% { box-shadow: 0 0 22px 6px rgba(86, 144, 204, .68), 0 0 0 9px rgba(86, 144, 204, .06); }
}

@keyframes inv-roadpulse {
	0%, 100% { box-shadow: 0 0 0 5px rgba(86, 144, 204, .18); }
	50% { box-shadow: 0 0 0 12px rgba(86, 144, 204, .05); }
}

.innovant-tstm__pending {
	border: 1px solid var(--sstr-blue-bright);
	border-radius: 0;
	background: var(--sstr-silver);
	color: var(--sstr-blue-dark);
}

/* ========================================================================== 
   19. SERVICE DETAIL — COMPLETE FIRST-VIEW HERO
   Keep the title, summary and service image inside the initial viewport just
   like the homepage hero. These selectors intentionally outrank the legacy
   service grid, whose two-column definition conflicted with 12-column child
   placement and pushed the image onto a second, oversized row.
   ========================================================================== */

body.single-service main.wp-block-group {
	margin-block-start: 0 !important;
	padding-block-start: clamp(12px, 2vh, 20px) !important;
}

body.single-service .innovant-hero-detail--svc {
	box-sizing: border-box;
	min-block-size: clamp(360px, calc(100svh - 300px), 680px) !important;
	padding: clamp(28px, 3.5vw, 52px) !important;
	justify-content: center;
}

body.single-service .innovant-hero-detail--svc > .innovant-hero-detail__grid {
	display: grid !important;
	grid-template-columns: minmax(0, 1.05fr) minmax(280px, .95fr) !important;
	align-items: center !important;
	gap: clamp(24px, 4vw, 56px) !important;
	inline-size: 100%;
	margin-block-start: 0 !important;
}

body.single-service .innovant-hero-detail--svc .innovant-hero-detail__text,
body.single-service .innovant-hero-detail--svc .innovant-svc-heromedia {
	grid-column: auto !important;
}

body.single-service .innovant-hero-detail--svc h1 {
	max-inline-size: 13ch;
	margin-block: 0 !important;
	font-size: clamp(2.25rem, 3.75vw, 4.25rem) !important;
	line-height: 1 !important;
}

[dir="rtl"] body.single-service .innovant-hero-detail--svc h1 {
	letter-spacing: 0;
	line-height: 1.08 !important;
	text-transform: none;
}

body.single-service .innovant-hero-detail--svc p {
	margin-block: clamp(12px, 2vh, 20px) 0 !important;
	font-size: clamp(.875rem, 1.05vw, 1.05rem) !important;
	line-height: 1.48;
}

body.single-service .innovant-hero-detail--svc .wp-block-buttons:not(:empty) {
	margin-block-start: 16px;
}

body.single-service .innovant-hero-detail--svc .innovant-svc-heromedia {
	min-inline-size: 0;
	margin-block-start: 0 !important;
	border: 1px solid rgba(255, 255, 255, .18);
	border-radius: 0;
	box-shadow: none;
}

body.single-service .innovant-hero-detail--svc .innovant-svc-heromedia,
body.single-service .innovant-hero-detail--svc .innovant-svc-heromedia .inv-imgframe,
body.single-service .innovant-hero-detail--svc .innovant-svc-heromedia picture {
	block-size: clamp(220px, 32svh, 340px);
}

body.single-service .innovant-hero-detail--svc .innovant-svc-heromedia img {
	inline-size: 100%;
	block-size: 100% !important;
	aspect-ratio: auto !important;
	object-fit: cover;
}

@media (max-width: 800px) {
	body.single-service .innovant-hero-detail--svc {
		min-block-size: clamp(360px, calc(100svh - 300px), 680px) !important;
		padding: clamp(22px, 4.5vw, 34px) !important;
	}

	body.single-service .innovant-hero-detail--svc > .innovant-hero-detail__grid {
		grid-template-columns: minmax(0, 1fr) !important;
		gap: clamp(16px, 2.5vh, 24px) !important;
	}

	body.single-service .innovant-hero-detail--svc .innovant-svc-heromedia,
	body.single-service .innovant-hero-detail--svc .innovant-svc-heromedia .inv-imgframe,
	body.single-service .innovant-hero-detail--svc .innovant-svc-heromedia picture {
		block-size: clamp(150px, 22svh, 240px);
	}
}

@media (max-width: 600px) {
	body.single-service main.wp-block-group {
		padding-block-start: 10px !important;
	}

	body.single-service .innovant-hero-detail--svc {
		min-block-size: clamp(340px, calc(100svh - 300px), 520px) !important;
		padding: 20px 16px !important;
	}

	body.single-service .innovant-hero-detail--svc > .innovant-hero-detail__grid {
		gap: 12px !important;
	}

	body.single-service .innovant-hero-detail--svc h1 {
		max-inline-size: 15ch;
		font-size: clamp(1.55rem, 7.6vw, 2rem) !important;
		line-height: 1.02 !important;
	}

	[dir="rtl"] body.single-service .innovant-hero-detail--svc h1 {
		line-height: 1.12 !important;
	}

	body.single-service .innovant-hero-detail--svc p {
		margin-block-start: 9px !important;
		font-size: .78rem !important;
		line-height: 1.38;
	}

	body.single-service .innovant-hero-detail--svc .wp-block-buttons:not(:empty) {
		margin-block-start: 10px;
	}

	body.single-service .innovant-hero-detail--svc .wp-block-button__link {
		min-block-size: 36px;
		padding-block: 7px;
		font-size: .75rem;
	}

	body.single-service .innovant-hero-detail--svc .innovant-svc-heromedia,
	body.single-service .innovant-hero-detail--svc .innovant-svc-heromedia .inv-imgframe,
	body.single-service .innovant-hero-detail--svc .innovant-svc-heromedia picture {
		block-size: clamp(110px, 18svh, 150px);
	}
}

/* Short tablets use the desktop relationship at a smaller scale; stacking a
 * long title above media would otherwise consume the last few viewport pixels. */
@media (min-width: 601px) and (max-width: 800px) and (max-height: 720px) {
	body.single-service .innovant-hero-detail--svc {
		min-block-size: clamp(320px, calc(100svh - 208px), 430px) !important;
		padding: 22px !important;
	}

	body.single-service .innovant-hero-detail--svc > .innovant-hero-detail__grid {
		grid-template-columns: minmax(0, 1.15fr) minmax(190px, .85fr) !important;
		gap: 18px !important;
	}

	body.single-service .innovant-hero-detail--svc h1 {
		font-size: clamp(1.65rem, 4.4vw, 2.15rem) !important;
	}

	body.single-service .innovant-hero-detail--svc p {
		margin-block-start: 9px !important;
		font-size: .78rem !important;
		line-height: 1.38;
	}

	body.single-service .innovant-hero-detail--svc .innovant-svc-heromedia,
	body.single-service .innovant-hero-detail--svc .innovant-svc-heromedia .inv-imgframe,
	body.single-service .innovant-hero-detail--svc .innovant-svc-heromedia picture {
		block-size: clamp(140px, 28svh, 190px);
	}
}

@media (max-width: 600px) and (max-height: 720px) {
	body.single-service .innovant-hero-detail--svc {
		min-block-size: clamp(310px, calc(100svh - 300px), 390px) !important;
		padding: 14px !important;
	}

	body.single-service .innovant-hero-detail--svc > .innovant-hero-detail__grid {
		gap: 8px !important;
	}

	body.single-service .innovant-hero-detail--svc h1 {
		font-size: 1.4rem !important;
	}

	body.single-service .innovant-hero-detail--svc p {
		margin-block-start: 7px !important;
		font-size: .72rem !important;
		line-height: 1.32;
	}

	body.single-service .innovant-hero-detail--svc .innovant-svc-heromedia,
	body.single-service .innovant-hero-detail--svc .innovant-svc-heromedia .inv-imgframe,
	body.single-service .innovant-hero-detail--svc .innovant-svc-heromedia picture {
		block-size: clamp(90px, 17svh, 115px);
	}
}

/* Wide but short laptop screens need type compaction as well as a shorter
 * image. Without this, the longest service names can still force the panel a
 * few pixels below a 600–760px viewport despite the correct two-column grid. */
@media (min-width: 801px) and (max-height: 760px) {
	body.single-service main.wp-block-group {
		padding-block-start: 8px !important;
	}

	body.single-service .innovant-hero-detail--svc {
		padding: 28px !important;
	}

	body.single-service .innovant-hero-detail--svc > .innovant-hero-detail__grid {
		gap: clamp(24px, 3vw, 40px) !important;
	}

	body.single-service .innovant-hero-detail--svc h1 {
		font-size: clamp(2rem, 2.8vw, 2.75rem) !important;
		line-height: 1.02 !important;
	}

	[dir="rtl"] body.single-service .innovant-hero-detail--svc h1 {
		line-height: 1.1 !important;
	}

	body.single-service .innovant-hero-detail--svc p {
		margin-block-start: 10px !important;
		font-size: .82rem !important;
		line-height: 1.38;
	}

	body.single-service .innovant-hero-detail--svc .innovant-svc-heromedia,
	body.single-service .innovant-hero-detail--svc .innovant-svc-heromedia .inv-imgframe,
	body.single-service .innovant-hero-detail--svc .innovant-svc-heromedia picture {
		block-size: clamp(180px, 30svh, 240px);
	}
}
