/*
 * XGene Enterprise Experience System — 1.6.0
 * Sitewide visual, editorial, motion, navigation and knowledge-system layer.
 * Presentation only: no governed records or taxonomy assignments are mutated.
 */

:root {
	--xg-brand-blue: #115df6;
	--xg-brand-royal: #1745c8;
	--xg-brand-navy: #0b2949;
	--xg-brand-midnight: #071d35;
	--xg-brand-cyan: #20bfd5;
	--xg-brand-teal: #0b9297;
	--xg-brand-lime: #86d400;
	--xg-brand-coral: #f47a3c;
	--xg-brand-violet: #7657d6;
	--xg-brand-gold: #e5a52f;
	--xg-brand-ice: #eef6ff;
	--xg-brand-mist: #f6f9fd;
	--xg-brand-aqua: #eaf9f8;
	--xg-brand-leaf: #f2f9e7;
	--xg-brand-peach: #fff2ea;
	--xg-brand-lilac: #f4f0ff;
	--xg-brand-sand: #fff8e7;
	--xg-reading-ink: #17283b;
	--xg-reading-muted: #53647a;
	--xg-reading-line: #dce5ef;
	--xg-glow-blue: 0 24px 76px rgb(17 93 246 / 14%);
	--xg-glow-teal: 0 24px 76px rgb(11 146 151 / 13%);
	--xg-card-shadow: 0 10px 34px rgb(15 42 74 / 8%), 0 1px 2px rgb(15 42 74 / 5%);
	--xg-card-shadow-hover: 0 24px 60px rgb(15 42 74 / 13%), 0 3px 10px rgb(15 42 74 / 7%);
	--xg-ease: cubic-bezier(.22, 1, .36, 1);
	--xg-ease-soft: cubic-bezier(.2, .75, .3, 1);
	--xg-content-wide: min(82rem, calc(100% - 3rem));
}

/* --------------------------------------------------------------------------
   01. OWNERSHIP, TYPOGRAPHY & ACCESSIBILITY
   -------------------------------------------------------------------------- */
.xg-enterprise-core .site-content > .ast-container,
.xg-experience-160 .site-content > .ast-container {
	display: block;
	width: 100%;
	max-width: none;
	padding: 0;
}
.xg-enterprise-core .content-area,
.xg-experience-160 .content-area {
	width: 100%;
	margin: 0;
}
.xg-experience-160 {
	color: var(--xg-reading-ink);
	font-family: var(--xg-font-sans);
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}
.xg-experience-160 h1,
.xg-experience-160 h2,
.xg-experience-160 h3,
.xg-experience-160 h4 {
	color: var(--xg-brand-navy);
	font-family: var(--xg-font-sans);
	font-weight: 780;
	letter-spacing: -.035em;
	text-wrap: balance;
}
.xg-experience-160 p,
.xg-experience-160 li {
	text-wrap: pretty;
}
.xg-experience-160 a,
.xg-experience-160 button,
.xg-experience-160 input,
.xg-experience-160 select,
.xg-experience-160 textarea {
	font-family: inherit;
}
.xg-experience-160 :focus-visible {
	outline: 3px solid rgb(32 191 213 / 62%);
	outline-offset: 3px;
}
.xg-experience-160 .xg-shell {
	width: var(--xg-content-wide);
	max-width: none;
	margin-inline: auto;
}
.xg-experience-160 .xg-eyebrow {
	margin: 0 0 .72rem;
	color: var(--xg-brand-teal);
	font-size: .75rem;
	font-weight: 850;
	line-height: 1.35;
	letter-spacing: .145em;
	text-transform: uppercase;
}
.xg-experience-160 .xg-section {
	padding: clamp(4.25rem, 6vw, 6.75rem) 0;
}
.xg-experience-160 .xg-section--soft {
	background:
		radial-gradient(circle at 10% 16%, rgb(17 93 246 / 5%), transparent 20rem),
		radial-gradient(circle at 92% 80%, rgb(11 146 151 / 5%), transparent 23rem),
		linear-gradient(180deg, #f9fbfe, #f4f8fc);
}
.xg-experience-160 .xg-section-heading {
	max-width: 52rem;
	margin-bottom: clamp(2rem, 3.6vw, 3.2rem);
}
.xg-experience-160 .xg-section-heading--split {
	display: flex;
	max-width: none;
	align-items: end;
	justify-content: space-between;
	gap: 2rem;
}
.xg-experience-160 .xg-section-heading h2 {
	margin: .08em 0 .34em;
	font-size: clamp(2rem, 1.55rem + 1.7vw, 3.45rem);
	line-height: 1.04;
}
.xg-experience-160 .xg-section-heading p:not(.xg-eyebrow) {
	max-width: 48rem;
	margin: 0;
	color: var(--xg-reading-muted);
	font-size: 1.03rem;
	line-height: 1.7;
}

/* --------------------------------------------------------------------------
   02. HEADER / MEGA MENU
   Header/navigation ownership moved to xgene-foundation-161.css in 1.6.1.
   -------------------------------------------------------------------------- */

/* --------------------------------------------------------------------------
   03. HERO SYSTEM — SHORT, READABLE, FIRST-SCREEN CONTROLLED
   -------------------------------------------------------------------------- */
.xg-compact-hero {
	position: relative;
	overflow: hidden;
	isolation: isolate;
	color: #fff;
	background:
		radial-gradient(circle at 79% 15%, rgb(32 191 213 / 24%), transparent 25rem),
		radial-gradient(circle at 88% 88%, rgb(134 212 0 / 10%), transparent 22rem),
		linear-gradient(126deg, var(--xg-brand-midnight) 0%, #0c3c67 55%, #09777e 100%);
}
.xg-compact-hero::before {
	position: absolute;
	inset: 0;
	z-index: -2;
	background-image:
		linear-gradient(rgb(255 255 255 / 3%) 1px, transparent 1px),
		linear-gradient(90deg, rgb(255 255 255 / 3%) 1px, transparent 1px);
	background-size: 54px 54px;
	mask-image: linear-gradient(90deg, transparent, #000 55%, #000);
	content: "";
}
.xg-compact-hero::after {
	position: absolute;
	right: -10rem;
	bottom: -15rem;
	z-index: -1;
	width: 31rem;
	height: 31rem;
	border: 1px solid rgb(255 255 255 / 14%);
	border-radius: 50%;
	box-shadow: 0 0 0 4rem rgb(255 255 255 / 3.5%), 0 0 0 8rem rgb(255 255 255 / 2%);
	content: "";
}
.xg-compact-hero__grid {
	display: grid;
	min-height: clamp(30rem, calc(100svh - 10rem), 38rem);
	padding: clamp(3.2rem, 5vw, 5rem) 0;
	grid-template-columns: minmax(0, 1.08fr) minmax(21rem, .92fr);
	gap: clamp(2.5rem, 5vw, 5.5rem);
	align-items: center;
}
.xg-compact-hero .xg-eyebrow { color: #8ee7e8; }
.xg-compact-hero h1 {
	max-width: 16ch;
	margin: .08em 0 .3em;
	color: #fff;
	font-size: clamp(2.6rem, 2rem + 2.6vw, 4.75rem);
	font-weight: 815;
	line-height: .99;
	letter-spacing: -.052em;
}
.xg-compact-hero__content > p:not(.xg-eyebrow) {
	max-width: 45rem;
	margin: 0;
	color: rgb(255 255 255 / 85%);
	font-size: clamp(1.04rem, 1rem + .18vw, 1.18rem);
	line-height: 1.62;
}
.xg-compact-hero .xg-button-row {
	margin-top: 1.55rem;
}

/* Existing 1.5 page-family heroes now use the same compact first-screen discipline. */
.xg-enterprise-hero__grid,
.xg-contact-hero__grid {
	min-height: clamp(30rem, calc(100svh - 10rem), 38rem) !important;
	padding: clamp(3.1rem, 5vw, 5rem) 0 !important;
	gap: clamp(2.5rem, 5vw, 5rem) !important;
}
.xg-enterprise-hero h1,
.xg-contact-hero h1 {
	max-width: 15ch !important;
	font-size: clamp(2.55rem, 1.95rem + 2.55vw, 4.65rem) !important;
	line-height: .99 !important;
}
.xg-enterprise-lead {
	max-width: 45rem !important;
	font-size: clamp(1.03rem, .99rem + .2vw, 1.18rem) !important;
	line-height: 1.62 !important;
}

/* Homepage: keep primary message and both business CTAs above the fold. */
.xg-b1a-home .xg-home-hero__grid {
	min-height: clamp(34rem, calc(100svh - 9.5rem), 41rem) !important;
	padding: clamp(2.6rem, 4vw, 4.35rem) 0 !important;
	gap: clamp(2.2rem, 4vw, 4.75rem) !important;
}
.xg-b1a-home .xg-home-hero__content h1 {
	max-width: 11.5ch !important;
	margin: .12em 0 .28em !important;
	font-size: clamp(3rem, 2.2rem + 2.95vw, 5.05rem) !important;
	line-height: .96 !important;
}
.xg-b1a-home .xg-home-hero__content .xg-lead {
	max-width: 38rem;
	font-size: clamp(1.05rem, 1rem + .2vw, 1.18rem) !important;
	line-height: 1.58 !important;
}
.xg-b1a-home .xg-home-hero__content .xg-button-row { margin-top: 1.35rem; }
.xg-b1a-home .xg-home-hero__note { margin-top: 1rem; }
.xg-b1a-home .xg-evidence-visual {
	max-width: 31rem;
	margin-inline: auto;
	transform-origin: center;
}

/* --------------------------------------------------------------------------
   04. BUTTONS, LINKS, SHARED INTERACTIONS
   -------------------------------------------------------------------------- */
.xg-experience-160 .xg-button,
.xg-experience-160 .xg-hub-button {
	min-height: 2.95rem;
	padding: .78rem 1.08rem;
	border-radius: .7rem;
	font-weight: 780;
	letter-spacing: -.01em;
	box-shadow: 0 1px 2px rgb(7 29 53 / 5%);
	transition: transform .2s var(--xg-ease), box-shadow .2s var(--xg-ease), background .2s ease, border-color .2s ease;
}
.xg-experience-160 .xg-button:hover,
.xg-experience-160 .xg-hub-button:hover {
	transform: translateY(-2px);
	box-shadow: 0 10px 25px rgb(10 45 132 / 13%);
}
.xg-experience-160 .xg-button--coral {
	border-color: var(--xg-brand-coral);
	color: #111c2a !important;
	background: linear-gradient(135deg, #ff8c4f, var(--xg-brand-coral));
	box-shadow: 0 10px 26px rgb(244 122 60 / 22%);
}
.xg-experience-160 .xg-button--coral:hover { background: linear-gradient(135deg, #ff9b66, #e7682e); }
.xg-experience-160 .xg-button--ghost-light {
	border: 1px solid rgb(255 255 255 / 48%);
	color: #fff !important;
	background: rgb(255 255 255 / 8%);
	backdrop-filter: blur(8px);
}
.xg-experience-160 .xg-button--ghost-light:hover { border-color: #fff; background: rgb(255 255 255 / 14%); }
.xg-experience-160 .xg-button--outline {
	border: 1px solid rgb(17 93 246 / 26%);
	color: var(--xg-brand-royal) !important;
	background: #fff;
}
.xg-experience-160 .xg-button--outline:hover { border-color: var(--xg-brand-blue); background: var(--xg-brand-ice); }
.xg-experience-160 .xg-button--small { min-height: 2.5rem; padding: .62rem .85rem; font-size: .87rem; }
.xg-experience-160 .xg-text-link,
.xg-experience-160 .xg-text-link--button {
	color: var(--xg-brand-teal);
	font-weight: 780;
	text-decoration: none;
	transition: color .18s ease, transform .18s ease;
}
.xg-experience-160 button.xg-text-link--button {
	padding: 0;
	border: 0;
	background: transparent;
	cursor: pointer;
}
.xg-experience-160 .xg-text-link:hover,
.xg-experience-160 .xg-text-link--button:hover { color: var(--xg-brand-royal); }

/* --------------------------------------------------------------------------
   05. MOTION SYSTEM
   Motion ownership moved to xgene-foundation-161.css/js in 1.6.1.
   -------------------------------------------------------------------------- */

/* --------------------------------------------------------------------------
   06. SHARED CONTENT CARDS / KNOWLEDGE CARDS
   -------------------------------------------------------------------------- */
.xg-content-grid {
	display: grid;
	gap: 1.2rem;
}
.xg-content-grid--three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.xg-content-grid--four { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.xg-content-card {
	min-width: 0;
}
.xg-content-card__cover {
	display: flex;
	height: 100%;
	min-height: 25rem;
	flex-direction: column;
	overflow: hidden;
	border: 1px solid var(--xg-reading-line);
	border-radius: 1.15rem;
	color: var(--xg-reading-ink) !important;
	background: #fff;
	box-shadow: var(--xg-card-shadow);
	text-decoration: none !important;
	transition: transform .28s var(--xg-ease), box-shadow .28s var(--xg-ease), border-color .28s ease;
}
.xg-content-card__cover:hover {
	border-color: rgb(17 93 246 / 22%);
	box-shadow: var(--xg-card-shadow-hover);
	transform: translateY(-5px);
}
.xg-content-card__media {
	position: relative;
	display: block;
	min-height: 10.6rem;
	overflow: hidden;
	background: linear-gradient(135deg, #eef5ff, #e8f8f7);
}
.xg-content-card__media img { width: 100%; height: 11.2rem; object-fit: cover; transition: transform .55s var(--xg-ease); }
.xg-content-card__cover:hover img { transform: scale(1.035); }
.xg-content-card__media--generated {
	background:
		radial-gradient(circle at 78% 22%, rgb(32 191 213 / 20%), transparent 6rem),
		radial-gradient(circle at 22% 85%, rgb(134 212 0 / 13%), transparent 7rem),
		linear-gradient(135deg, #eef5ff, #f7f5ff);
}
.xg-content-card__media--generated::before {
	position: absolute;
	inset: 1.2rem;
	border: 1px solid rgb(17 93 246 / 13%);
	border-radius: .8rem;
	content: "";
}
.xg-content-card__media--generated i,
.xg-content-card__media--generated b {
	position: absolute;
	border-radius: 99px;
	background: linear-gradient(90deg, var(--xg-brand-blue), var(--xg-brand-teal));
}
.xg-content-card__media--generated i { top: 38%; left: 20%; width: 58%; height: 2px; transform: rotate(-10deg); }
.xg-content-card__media--generated b { top: 56%; left: 29%; width: 43%; height: 2px; transform: rotate(14deg); opacity: .65; }
.xg-content-card__media--generated em {
	position: absolute;
	top: 50%; left: 50%;
	display: grid;
	width: 4.4rem; height: 4.4rem;
	place-items: center;
	border: 1px solid rgb(17 93 246 / 22%);
	border-radius: 50%;
	color: var(--xg-brand-royal);
	background: rgb(255 255 255 / 82%);
	font-size: 1.05rem;
	font-style: normal;
	font-weight: 900;
	letter-spacing: .09em;
	transform: translate(-50%, -50%);
}
.xg-content-card__body {
	display: flex;
	padding: 1.25rem 1.3rem 1.35rem;
	flex: 1;
	flex-direction: column;
}
.xg-content-card__type {
	margin-bottom: .55rem;
	color: var(--xg-brand-teal);
	font-size: .68rem;
	font-weight: 850;
	letter-spacing: .11em;
	text-transform: uppercase;
}
.xg-content-card__title { color: var(--xg-brand-navy); font-size: 1.17rem; line-height: 1.18; }
.xg-content-card__summary { margin-top: .72rem; color: var(--xg-reading-muted); font-size: .92rem; line-height: 1.58; }
.xg-content-card__meta {
	display: flex;
	margin-top: auto;
	padding-top: 1rem;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	color: #718096;
	font-size: .78rem;
	font-weight: 680;
}
.xg-content-card__meta i { color: var(--xg-brand-blue); font-style: normal; font-size: 1.15rem; transition: transform .2s ease; }
.xg-content-card__cover:hover .xg-content-card__meta i { transform: translateX(4px); }

/* --------------------------------------------------------------------------
   07. SERVICES HUB + SERVICE DETAIL
   -------------------------------------------------------------------------- */
.xg-compact-hero--services {
	background:
		radial-gradient(circle at 82% 18%, rgb(134 212 0 / 14%), transparent 20rem),
		radial-gradient(circle at 72% 72%, rgb(32 191 213 / 18%), transparent 24rem),
		linear-gradient(126deg, #071f39, #0b3f68 58%, #0a777d);
}
.xg-services-orbit,
.xg-domain-visual,
.xg-knowledge-visual {
	position: relative;
	width: min(31rem, 100%);
	aspect-ratio: 1.32;
	margin-inline: auto;
	border: 1px solid rgb(255 255 255 / 18%);
	border-radius: 1.65rem;
	background: rgb(255 255 255 / 7%);
	box-shadow: 0 28px 72px rgb(2 18 35 / 28%);
	backdrop-filter: blur(10px);
}
.xg-services-orbit svg,
.xg-domain-visual svg {
	position: absolute;
	inset: 0;
	width: 100%; height: 100%;
	fill: none;
	stroke: rgb(143 227 229 / 48%);
	stroke-width: 1.4;
}
.xg-services-orbit__core,
.xg-domain-visual__core,
.xg-knowledge-visual__core {
	position: absolute;
	top: 50%; left: 50%;
	display: flex;
	z-index: 2;
	width: 8.6rem; height: 8.6rem;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	border: 1px solid rgb(255 255 255 / 24%);
	border-radius: 50%;
	color: #fff;
	background: linear-gradient(145deg, rgb(17 93 246 / 74%), rgb(11 146 151 / 80%));
	box-shadow: 0 16px 42px rgb(0 0 0 / 18%);
	transform: translate(-50%, -50%);
}
.xg-services-orbit__core strong,
.xg-domain-visual__core strong { font-size: 1.12rem; }
.xg-services-orbit__core span,
.xg-domain-visual__core span { margin-top: .15rem; font-size: .62rem; letter-spacing: .08em; text-transform: uppercase; opacity: .78; }
.xg-domain-visual__core .xg-icon { width: 1.55rem; height: 1.55rem; margin-bottom: .35rem; }
.xg-services-orbit__node,
.xg-domain-visual__node,
.xg-knowledge-visual__node {
	position: absolute;
	display: flex;
	z-index: 3;
	align-items: center;
	gap: .5rem;
	padding: .62rem .75rem;
	border: 1px solid rgb(255 255 255 / 20%);
	border-radius: .75rem;
	color: #fff;
	background: rgb(255 255 255 / 11%);
	font-size: .73rem;
	font-weight: 760;
	box-shadow: 0 9px 23px rgb(0 0 0 / 10%);
}
.xg-services-orbit__node .xg-icon { width: 1rem; height: 1rem; color: #a2eff0; }
.xg-services-orbit__node--one { top: 12%; left: 8%; }
.xg-services-orbit__node--two { top: 14%; right: 8%; }
.xg-services-orbit__node--three { right: 8%; bottom: 12%; }
.xg-services-orbit__node--four { bottom: 11%; left: 7%; }
.xg-pathway-ribbon {
	position: relative;
	z-index: 2;
	border-bottom: 1px solid var(--xg-reading-line);
	background: #fff;
	box-shadow: 0 8px 24px rgb(15 42 74 / 4%);
}
.xg-pathway-ribbon__grid { display: grid; grid-template-columns: repeat(4, 1fr); }
.xg-pathway-ribbon__grid > a {
	display: grid;
	min-height: 8.6rem;
	padding: 1.25rem 1.3rem;
	grid-template-columns: 2rem 1fr;
	grid-template-rows: auto auto;
	column-gap: .7rem;
	border-right: 1px solid var(--xg-reading-line);
	color: var(--xg-reading-ink) !important;
	text-decoration: none;
	transition: background .2s ease;
}
.xg-pathway-ribbon__grid > a:last-child { border-right: 0; }
.xg-pathway-ribbon__grid > a:hover { background: var(--xg-brand-ice); }
.xg-pathway-ribbon__grid > a span { grid-row: 1 / 3; color: var(--xg-brand-blue); }
.xg-pathway-ribbon__grid > a .xg-icon { width: 1.45rem; height: 1.45rem; }
.xg-pathway-ribbon__grid > a strong { align-self: end; color: var(--xg-brand-navy); font-size: .96rem; }
.xg-pathway-ribbon__grid > a small { align-self: start; color: var(--xg-reading-muted); font-size: .76rem; line-height: 1.45; }
.xg-service-grid--160 {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.25rem;
}
.xg-service-card-160 {
	position: relative;
	display: flex;
	min-height: 31rem;
	padding: 1.25rem;
	flex-direction: column;
	overflow: hidden;
	border: 1px solid var(--xg-reading-line);
	border-top: 4px solid var(--xg-local-accent);
	border-radius: 1.2rem;
	color: var(--xg-reading-ink) !important;
	background: linear-gradient(180deg, var(--xg-local-soft), #fff 43%);
	box-shadow: var(--xg-card-shadow);
	text-decoration: none !important;
	transition: transform .28s var(--xg-ease), box-shadow .28s var(--xg-ease), border-color .28s ease;
}
.xg-service-card-160:hover { transform: translateY(-6px); box-shadow: var(--xg-card-shadow-hover); }
.xg-service-card-160__visual {
	position: relative;
	display: grid;
	height: 10.2rem;
	margin-bottom: 1.15rem;
	place-items: center;
	overflow: hidden;
	border: 1px solid rgb(15 42 74 / 8%);
	border-radius: .9rem;
	background:
		radial-gradient(circle at 77% 23%, rgb(255 255 255 / 78%), transparent 5.8rem),
		linear-gradient(135deg, var(--xg-local-soft), #edf5ff);
}
.xg-service-card-160__visual img { width: 100%; height: 100%; object-fit: cover; }
.xg-service-card-160__visual i,
.xg-service-card-160__visual b { position: absolute; border-radius: 50%; border: 1px solid rgb(17 93 246 / 11%); }
.xg-service-card-160__visual i { width: 8rem; height: 8rem; right: -2rem; top: -2rem; }
.xg-service-card-160__visual b { width: 5rem; height: 5rem; left: -1rem; bottom: -1.6rem; }
.xg-service-card-160__visual em { position: relative; z-index: 2; display: grid; width: 4.2rem; height: 4.2rem; place-items: center; border-radius: 1.1rem; color: var(--xg-local-accent); background: rgb(255 255 255 / 88%); box-shadow: 0 10px 24px rgb(15 42 74 / 9%); }
.xg-service-card-160__visual .xg-icon { width: 2rem; height: 2rem; }
.xg-service-card-160__number { color: var(--xg-local-accent); font-size: .68rem; font-weight: 900; letter-spacing: .13em; }
.xg-service-card-160 > strong { margin: .5rem 0 .68rem; color: var(--xg-brand-navy); font-size: 1.35rem; line-height: 1.13; }
.xg-service-card-160 > small { color: var(--xg-reading-muted); font-size: .94rem; line-height: 1.62; }
.xg-service-card-160__link { margin-top: auto; padding-top: 1rem; color: var(--xg-local-accent); font-size: .85rem; font-weight: 800; }

.xg-service-detail-visual {
	position: relative;
	width: min(31rem, 100%);
	aspect-ratio: 1.25;
	margin-inline: auto;
	border: 1px solid rgb(255 255 255 / 18%);
	border-radius: 1.55rem;
	background: rgb(255 255 255 / 7%);
	box-shadow: 0 28px 70px rgb(0 0 0 / 20%);
}
.xg-service-detail-visual__core {
	position: absolute;
	top: 50%; left: 50%;
	display: grid;
	z-index: 2;
	width: 8rem; height: 8rem;
	place-items: center;
	border: 1px solid rgb(255 255 255 / 25%);
	border-radius: 50%;
	color: #fff;
	background: linear-gradient(145deg, var(--xg-brand-blue), var(--xg-brand-teal));
	transform: translate(-50%, -50%);
}
.xg-service-detail-visual__core .xg-icon { width: 1.55rem; height: 1.55rem; }
.xg-service-detail-visual__step {
	position: absolute;
	z-index: 3;
	min-width: 7.8rem;
	padding: .72rem .8rem;
	border: 1px solid rgb(255 255 255 / 20%);
	border-radius: .75rem;
	color: #fff;
	background: rgb(255 255 255 / 11%);
	font-size: .75rem;
	font-weight: 800;
	text-align: center;
}
.xg-service-detail-visual__step--one { top: 12%; left: 8%; }
.xg-service-detail-visual__step--two { top: 18%; right: 7%; }
.xg-service-detail-visual__step--three { right: 17%; bottom: 11%; }
.xg-service-context { border-bottom: 1px solid var(--xg-reading-line); background: #fff; }
.xg-service-context .xg-shell { display: flex; gap: 1px; overflow-x: auto; }
.xg-service-context__items,
.xg-service-context .xg-shell > div { display: contents; }
.xg-service-context .xg-shell > div > div,
.xg-service-context .xg-shell > div:not(.xg-service-context__items) {
	min-width: 12rem;
	padding: 1rem 1.25rem;
	border-right: 1px solid var(--xg-reading-line);
}
.xg-service-context span { display: block; color: #718096; font-size: .64rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.xg-service-context strong { display: block; margin-top: .28rem; color: var(--xg-brand-navy); font-size: .82rem; line-height: 1.35; }
.xg-service-reading__grid {
	display: grid;
	grid-template-columns: minmax(15rem, .7fr) minmax(0, 2fr);
	gap: clamp(2.5rem, 5vw, 5rem);
	align-items: start;
}
.xg-service-reading__rail {
	position: sticky;
	top: 7.5rem;
	padding: 1.45rem;
	border: 1px solid var(--xg-reading-line);
	border-radius: 1.1rem;
	background: linear-gradient(180deg, var(--xg-brand-ice), #fff);
	box-shadow: var(--xg-card-shadow);
}
.xg-service-reading__rail h2 { margin: .15rem 0 1rem; font-size: 1.65rem; line-height: 1.08; }
.xg-service-reading__rail ul { margin: 0 0 1.25rem 1.1rem; color: var(--xg-reading-muted); font-size: .9rem; line-height: 1.55; }
.xg-proof-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; }
.xg-proof-card { display: flex; min-height: 8rem; padding: 1.2rem; gap: .7rem; border: 1px solid var(--xg-reading-line); border-radius: 1rem; background: #fff; box-shadow: var(--xg-card-shadow); }
.xg-proof-card span { color: var(--xg-brand-teal); font-weight: 900; }
.xg-proof-card p { margin: 0; color: var(--xg-reading-muted); line-height: 1.55; }

/* --------------------------------------------------------------------------
   08. INTELLIGENCE DOMAINS + RESOURCE CENTER
   -------------------------------------------------------------------------- */
.xg-intelligence-domain.xg-accent-blue { --xg-local-accent: var(--xg-brand-blue); --xg-local-soft: var(--xg-brand-ice); }
.xg-intelligence-domain.xg-accent-teal { --xg-local-accent: var(--xg-brand-teal); --xg-local-soft: var(--xg-brand-aqua); }
.xg-intelligence-domain.xg-accent-coral { --xg-local-accent: var(--xg-brand-coral); --xg-local-soft: var(--xg-brand-peach); }
.xg-intelligence-domain.xg-accent-lime { --xg-local-accent: #69a800; --xg-local-soft: var(--xg-brand-leaf); }
.xg-intelligence-domain.xg-accent-violet { --xg-local-accent: var(--xg-brand-violet); --xg-local-soft: var(--xg-brand-lilac); }
.xg-intelligence-domain.xg-accent-gold { --xg-local-accent: #b87b09; --xg-local-soft: var(--xg-brand-sand); }
.xg-domain-visual__node--one { top: 13%; left: 8%; }
.xg-domain-visual__node--two { top: 18%; right: 7%; }
.xg-domain-visual__node--three { right: 18%; bottom: 10%; }
.xg-domain-visual__node i { width: .42rem; height: .42rem; border-radius: 50%; background: var(--xg-local-accent, #8ee7e8); }
.xg-domain-switcher,
.xg-media-switch,
.xg-knowledge-switch {
	position: relative;
	z-index: 3;
	border-bottom: 1px solid var(--xg-reading-line);
	background: rgb(255 255 255 / 97%);
	box-shadow: 0 8px 24px rgb(15 42 74 / 4%);
}
.xg-domain-switcher .xg-shell,
.xg-media-switch .xg-shell,
.xg-knowledge-switch .xg-shell {
	display: flex;
	overflow-x: auto;
	gap: .35rem;
	scrollbar-width: thin;
}
.xg-domain-switcher a,
.xg-media-switch a,
.xg-knowledge-switch a {
	position: relative;
	flex: 0 0 auto;
	padding: 1rem .9rem .92rem;
	color: #5e6c80;
	font-size: .77rem;
	font-weight: 770;
	white-space: nowrap;
	text-decoration: none;
}
.xg-domain-switcher a::after,
.xg-media-switch a::after,
.xg-knowledge-switch a::after {
	position: absolute;
	right: .8rem; bottom: 0; left: .8rem;
	height: 3px;
	border-radius: 99px 99px 0 0;
	background: linear-gradient(90deg, var(--xg-brand-blue), var(--xg-brand-teal));
	transform: scaleX(0);
	transition: transform .2s var(--xg-ease);
	content: "";
}
.xg-domain-switcher a:hover,
.xg-domain-switcher a.is-active,
.xg-media-switch a:hover,
.xg-media-switch a.is-active,
.xg-knowledge-switch a:hover { color: var(--xg-brand-navy); }
.xg-domain-switcher a:hover::after,
.xg-domain-switcher a.is-active::after,
.xg-media-switch a:hover::after,
.xg-media-switch a.is-active::after,
.xg-knowledge-switch a:hover::after { transform: scaleX(1); }
.xg-decision-pathway {
	padding: clamp(4.1rem, 6vw, 6rem) 0;
	background: linear-gradient(135deg, #eaf9f8, #eef5ff 48%, #f5f9ec);
}
.xg-decision-pathway__grid { display: grid; grid-template-columns: minmax(15rem, .65fr) minmax(0, 1.65fr); gap: clamp(2.5rem, 5vw, 5rem); align-items: center; }
.xg-decision-pathway__grid h2 { margin: .1em 0 0; font-size: clamp(2rem, 1.6rem + 1.5vw, 3.1rem); line-height: 1.03; }
.xg-decision-pathway ol { display: grid; margin: 0; padding: 0; grid-template-columns: repeat(4, 1fr); gap: .8rem; list-style: none; }
.xg-decision-pathway li { position: relative; min-height: 10rem; padding: 1rem; border: 1px solid rgb(15 42 74 / 8%); border-radius: .95rem; background: rgb(255 255 255 / 72%); }
.xg-decision-pathway li span { display: block; margin-bottom: .55rem; color: var(--xg-brand-teal); font-size: .66rem; font-weight: 900; letter-spacing: .12em; }
.xg-decision-pathway li strong { display: block; color: var(--xg-brand-navy); font-size: 1.02rem; }
.xg-decision-pathway li small { display: block; margin-top: .45rem; color: var(--xg-reading-muted); font-size: .77rem; line-height: 1.45; }

.xg-resource-stack {
	position: relative;
	width: min(31rem, 100%);
	aspect-ratio: 1.28;
	margin-inline: auto;
}
.xg-resource-sheet {
	position: absolute;
	width: 68%; height: 72%;
	padding: 1.2rem;
	border: 1px solid rgb(255 255 255 / 24%);
	border-radius: 1.25rem;
	background: rgb(255 255 255 / 10%);
	box-shadow: 0 20px 45px rgb(0 0 0 / 14%);
	backdrop-filter: blur(10px);
	transition: transform .75s var(--xg-ease);
}
.xg-resource-sheet--one { top: 6%; left: 5%; transform: rotate(-5deg); }
.xg-resource-sheet--two { top: 15%; left: 17%; transform: rotate(2deg); }
.xg-resource-sheet--three { top: 24%; left: 29%; transform: rotate(7deg); }
.xg-diagram-active .xg-resource-sheet--one { transform: translate(-3px,-5px) rotate(-7deg); }
.xg-diagram-active .xg-resource-sheet--two { transform: translate(2px,-2px) rotate(1deg); }
.xg-diagram-active .xg-resource-sheet--three { transform: translate(6px,3px) rotate(9deg); }
.xg-resource-sheet span { color: #8ee7e8; font-size: .66rem; font-weight: 850; letter-spacing: .1em; }
.xg-resource-sheet strong { display: block; margin-top: .5rem; color: #fff; font-size: 1.15rem; line-height: 1.1; }
.xg-mode-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; }
.xg-mode-card {
	display: flex;
	min-height: 15rem;
	padding: 1.25rem;
	flex-direction: column;
	border: 1px solid var(--xg-reading-line);
	border-top: 4px solid var(--xg-local-accent);
	border-radius: 1.05rem;
	color: var(--xg-reading-ink) !important;
	background: linear-gradient(180deg, var(--xg-local-soft), #fff 54%);
	box-shadow: var(--xg-card-shadow);
	text-decoration: none;
	transition: transform .24s var(--xg-ease), box-shadow .24s var(--xg-ease);
}
.xg-mode-card:hover { transform: translateY(-5px); box-shadow: var(--xg-card-shadow-hover); }
.xg-mode-card > span { color: var(--xg-local-accent); }
.xg-mode-card .xg-icon { width: 1.7rem; height: 1.7rem; }
.xg-mode-card strong { margin-top: 1rem; color: var(--xg-brand-navy); font-size: 1.25rem; }
.xg-mode-card small { margin-top: .5rem; color: var(--xg-reading-muted); line-height: 1.5; }
.xg-mode-card em { margin-top: auto; color: var(--xg-local-accent); font-size: .83rem; font-style: normal; font-weight: 800; }

/* Regulatory Intelligence Center legacy/plugin surface integration. */
.xg-intelligence-experience .xg-intelligence-hero,
.xg-intelligence-experience .xgene-intelligence-hero,
.xg-intelligence-experience .xg-r13-hero {
	border-radius: 0 !important;
	background:
		radial-gradient(circle at 80% 18%, rgb(32 191 213 / 22%), transparent 24rem),
		linear-gradient(126deg, #071d35, #0c3f69 58%, #08757d) !important;
}
.xg-intelligence-experience .xg-intelligence-shell,
.xg-intelligence-experience .xgene-intelligence-shell { width: var(--xg-content-wide) !important; max-width: none !important; }
.xg-intelligence-experience .xg-result-card,
.xg-intelligence-experience .xgene-result-card,
.xg-intelligence-experience .xg-r13-card {
	border-radius: 1rem !important;
	box-shadow: var(--xg-card-shadow) !important;
	transition: transform .24s var(--xg-ease), box-shadow .24s var(--xg-ease) !important;
}
.xg-intelligence-experience .xg-result-card:hover,
.xg-intelligence-experience .xgene-result-card:hover,
.xg-intelligence-experience .xg-r13-card:hover { transform: translateY(-4px); box-shadow: var(--xg-card-shadow-hover) !important; }

/* --------------------------------------------------------------------------
   09. ARTICLES HUB — EDITORIAL DESTINATION
   -------------------------------------------------------------------------- */
.xg-compact-hero--articles {
	background:
		radial-gradient(circle at 84% 14%, rgb(118 87 214 / 24%), transparent 23rem),
		radial-gradient(circle at 68% 87%, rgb(32 191 213 / 17%), transparent 24rem),
		linear-gradient(125deg, #081e38, #0b3a65 56%, #115d77);
}
.xg-editorial-visual { position: relative; width: min(31rem, 100%); aspect-ratio: 1.25; margin-inline: auto; perspective: 900px; }
.xg-editorial-visual__sheet {
	position: absolute;
	width: 68%; height: 72%;
	padding: 1.2rem;
	border: 1px solid rgb(255 255 255 / 22%);
	border-radius: 1.15rem;
	background: rgb(255 255 255 / 10%);
	box-shadow: 0 25px 55px rgb(0 0 0 / 18%);
	backdrop-filter: blur(9px);
	transition: transform .85s var(--xg-ease);
}
.xg-editorial-visual__sheet span { color: #91e6e8; font-size: .62rem; font-weight: 850; letter-spacing: .12em; }
.xg-editorial-visual__sheet i { display: block; width: 70%; height: 3px; margin-top: .75rem; border-radius: 99px; background: rgb(255 255 255 / 24%); }
.xg-editorial-visual__sheet--back { top: 2%; left: 4%; transform: translateZ(-40px) rotate(-7deg); }
.xg-editorial-visual__sheet--mid { top: 13%; left: 17%; transform: translateZ(-20px) rotate(2deg); }
.xg-editorial-visual__sheet--front { top: 25%; left: 29%; display: flex; flex-direction: column; justify-content: end; background: linear-gradient(150deg, rgb(17 93 246 / 74%), rgb(118 87 214 / 58%)); }
.xg-editorial-visual__sheet--front b { color: #9feff0; font-size: .72rem; letter-spacing: .14em; }
.xg-editorial-visual__sheet--front strong { margin-top: .2rem; color: #fff; font-size: 2rem; }
.xg-editorial-visual__sheet--front small { margin-top: .35rem; color: rgb(255 255 255 / 78%); }
.xg-diagram-active .xg-editorial-visual__sheet--back { transform: translate(-5px,-5px) rotate(-9deg); }
.xg-diagram-active .xg-editorial-visual__sheet--mid { transform: translate(1px,-3px) rotate(1deg); }
.xg-diagram-active .xg-editorial-visual__sheet--front { transform: translate(7px,3px) rotate(4deg); }
.xg-featured-analysis { padding-bottom: 0; background: #fff; }
.xg-featured-article {
	display: grid;
	min-height: 23rem;
	overflow: hidden;
	grid-template-columns: minmax(18rem, 1fr) minmax(0, 1.25fr);
	border: 1px solid var(--xg-reading-line);
	border-radius: 1.4rem;
	color: var(--xg-reading-ink) !important;
	background: #fff;
	box-shadow: var(--xg-card-shadow);
	text-decoration: none !important;
	transition: transform .28s var(--xg-ease), box-shadow .28s var(--xg-ease);
}
.xg-featured-article:hover { transform: translateY(-4px); box-shadow: var(--xg-card-shadow-hover); }
.xg-featured-article__media { position: relative; min-height: 23rem; overflow: hidden; background: linear-gradient(135deg, #e9f2ff, #e9f8f7); }
.xg-featured-article__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s var(--xg-ease); }
.xg-featured-article:hover img { transform: scale(1.025); }
.xg-featured-article__media > i,
.xg-featured-article__media > b { position: absolute; border-radius: 50%; border: 2px solid rgb(17 93 246 / 18%); }
.xg-featured-article__media > i { width: 13rem; height: 13rem; top: 15%; left: 17%; }
.xg-featured-article__media > b { width: 8rem; height: 8rem; right: 15%; bottom: 13%; border-color: rgb(11 146 151 / 20%); }
.xg-featured-article__copy { display: flex; padding: clamp(2rem, 4vw, 3.5rem); flex-direction: column; justify-content: center; }
.xg-featured-article__copy > strong { max-width: 18ch; color: var(--xg-brand-navy); font-size: clamp(1.8rem, 1.4rem + 1.35vw, 3rem); line-height: 1.05; letter-spacing: -.04em; }
.xg-featured-article__copy > small { max-width: 41rem; margin-top: 1rem; color: var(--xg-reading-muted); font-size: 1rem; line-height: 1.65; }
.xg-featured-article__copy > em { margin-top: 1.3rem; color: var(--xg-brand-teal); font-size: .85rem; font-style: normal; font-weight: 800; }
.xg-article-browse { position: sticky; top: 0; z-index: 10; padding: .8rem 0; border-bottom: 1px solid var(--xg-reading-line); background: rgb(255 255 255 / 94%); backdrop-filter: blur(14px); }
.admin-bar .xg-article-browse { top: 32px; }
.xg-topic-chips { display: flex; gap: .55rem; overflow-x: auto; }
.xg-topic-chips a { flex: 0 0 auto; padding: .55rem .82rem; border: 1px solid var(--xg-reading-line); border-radius: 999px; color: #56677d; background: #fff; font-size: .76rem; font-weight: 750; text-decoration: none; transition: all .18s ease; }
.xg-topic-chips a:hover,
.xg-topic-chips a.is-active { border-color: rgb(17 93 246 / 24%); color: var(--xg-brand-royal); background: var(--xg-brand-ice); }
.xg-editorial-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.2rem; }
.xg-content-card--editorial-feature { grid-column: span 2; }
.xg-content-card--editorial-feature .xg-content-card__cover { display: grid; grid-template-columns: 1fr 1fr; min-height: 26rem; }
.xg-content-card--editorial-feature .xg-content-card__media { min-height: 100%; }
.xg-content-card--editorial-feature .xg-content-card__media img { height: 100%; }
.xg-pagination { margin-top: 2rem; }
.xg-pagination ul,
.xg-articles-hub-160 .page-numbers { display: flex; gap: .45rem; margin: 0; padding: 0; list-style: none; }
.xg-articles-hub-160 .page-numbers a,
.xg-articles-hub-160 .page-numbers span { display: grid; min-width: 2.5rem; height: 2.5rem; place-items: center; border: 1px solid var(--xg-reading-line); border-radius: .6rem; color: var(--xg-brand-navy); background: #fff; text-decoration: none; }
.xg-articles-hub-160 .page-numbers .current { border-color: var(--xg-brand-blue); color: #fff; background: var(--xg-brand-blue); }

/* --------------------------------------------------------------------------
   10. ARTICLE READING EXPERIENCE
   -------------------------------------------------------------------------- */
.xg-reading-progress {
	position: fixed;
	top: 0; right: 0; left: 0;
	z-index: 99999;
	height: 3px;
	pointer-events: none;
}
.admin-bar .xg-reading-progress { top: 32px; }
.xg-reading-progress i {
	display: block;
	width: 100%; height: 100%;
	background: linear-gradient(90deg, var(--xg-brand-blue), var(--xg-brand-cyan), var(--xg-brand-lime), var(--xg-brand-coral));
	transform: scaleX(0);
	transform-origin: left;
}
.xg-article-cover {
	position: relative;
	overflow: hidden;
	background:
		radial-gradient(circle at 80% 18%, rgb(118 87 214 / 12%), transparent 23rem),
		radial-gradient(circle at 90% 83%, rgb(32 191 213 / 10%), transparent 21rem),
		linear-gradient(180deg, #f8fbff, #eef5ff 74%, #fff);
}
.xg-article-cover__grid {
	display: grid;
	min-height: clamp(30rem, calc(100svh - 10rem), 39rem);
	padding: clamp(3.4rem, 5vw, 5rem) 0;
	grid-template-columns: minmax(0, 1.15fr) minmax(19rem, .85fr);
	gap: clamp(2.5rem, 5vw, 5rem);
	align-items: center;
}
.xg-article-cover__copy h1 {
	max-width: 17ch;
	margin: .08em 0 .3em;
	font-size: clamp(2.6rem, 2rem + 2.35vw, 4.45rem);
	line-height: 1;
	letter-spacing: -.052em;
}
.xg-article-dek { max-width: 48rem; margin: 0; color: #465b73; font-size: clamp(1.06rem, 1rem + .22vw, 1.2rem); line-height: 1.65; }
.xg-article-byline { display: flex; margin-top: 1.15rem; flex-wrap: wrap; gap: .55rem 1rem; color: #63738a; font-size: .79rem; font-weight: 690; }
.xg-article-byline span + span::before { margin-right: 1rem; color: #a1afbf; content: "•"; }
.xg-reading-tools { display: flex; margin-top: 1.2rem; flex-wrap: wrap; gap: .45rem; }
.xg-reading-tools button {
	padding: .55rem .72rem;
	border: 1px solid rgb(17 93 246 / 18%);
	border-radius: .55rem;
	color: var(--xg-brand-royal);
	background: rgb(255 255 255 / 78%);
	font-size: .75rem;
	font-weight: 780;
	cursor: pointer;
	transition: background .18s ease, transform .18s ease;
}
.xg-reading-tools button:hover { background: #fff; transform: translateY(-1px); }
.xg-article-cover__visual { position: relative; min-height: 21rem; overflow: hidden; border: 1px solid rgb(15 42 74 / 9%); border-radius: 1.4rem; background: linear-gradient(135deg, #eaf3ff, #f4f0ff); box-shadow: var(--xg-glow-blue); }
.xg-article-cover__visual > img { width: 100%; height: 100%; min-height: 21rem; object-fit: cover; }
.xg-article-cover__generated { position: absolute; inset: 0; display: grid; place-items: center; overflow: hidden; }
.xg-article-cover__generated::before,
.xg-article-cover__generated::after { position: absolute; border: 1px solid rgb(17 93 246 / 15%); border-radius: 50%; content: ""; }
.xg-article-cover__generated::before { width: 16rem; height: 16rem; top: -4rem; right: -3rem; }
.xg-article-cover__generated::after { width: 11rem; height: 11rem; bottom: -3rem; left: -2rem; border-color: rgb(11 146 151 / 17%); }
.xg-article-cover__generated span { position: absolute; top: 1.3rem; left: 1.4rem; color: var(--xg-brand-teal); font-size: .67rem; font-weight: 900; letter-spacing: .12em; }
.xg-article-cover__generated strong { position: relative; z-index: 2; display: grid; width: 7.5rem; height: 7.5rem; place-items: center; border: 1px solid rgb(17 93 246 / 17%); border-radius: 50%; color: var(--xg-brand-royal); background: rgb(255 255 255 / 70%); font-size: 1.9rem; letter-spacing: .08em; }
.xg-article-cover__generated i,
.xg-article-cover__generated b { position: absolute; width: 42%; height: 2px; border-radius: 99px; background: linear-gradient(90deg, var(--xg-brand-blue), var(--xg-brand-teal)); }
.xg-article-cover__generated i { top: 39%; left: 9%; transform: rotate(-12deg); }
.xg-article-cover__generated b { right: 10%; bottom: 34%; transform: rotate(13deg); opacity: .6; }
.xg-reading-layout {
	display: grid;
	padding: clamp(3.5rem, 5vw, 5.5rem) 0 clamp(5rem, 7vw, 7rem);
	grid-template-columns: minmax(13rem, .56fr) minmax(0, 2.15fr);
	gap: clamp(2.5rem, 5vw, 5.5rem);
	align-items: start;
}
.xg-reading-rail { position: sticky; top: 7.2rem; }
.admin-bar .xg-reading-rail { top: 9.3rem; }
.xg-toc { padding: 1.2rem; border: 1px solid var(--xg-reading-line); border-radius: 1rem; background: #fff; box-shadow: var(--xg-card-shadow); }
.xg-toc ol { max-height: 48vh; margin: .6rem 0 0; padding: 0; overflow-y: auto; list-style: none; }
.xg-toc li { margin: 0; }
.xg-toc a { display: block; padding: .42rem .55rem; border-left: 2px solid transparent; color: #66778b; font-size: .79rem; line-height: 1.35; text-decoration: none; transition: all .18s ease; }
.xg-toc a:hover,
.xg-toc a.is-active { border-left-color: var(--xg-brand-teal); color: var(--xg-brand-navy); background: var(--xg-brand-aqua); }
.xg-toc .xg-toc__sub a { padding-left: 1.15rem; font-size: .74rem; }
.xg-toc__top { margin-top: .7rem; border-top: 1px solid var(--xg-reading-line); }
.xg-reading-rail__cta { margin-top: 1rem; padding: 1.15rem; border-radius: 1rem; color: #fff; background: linear-gradient(145deg, var(--xg-brand-navy), #0d4b6d); box-shadow: var(--xg-card-shadow); }
.xg-reading-rail__cta strong { color: #fff; font-size: 1rem; }
.xg-reading-rail__cta p { margin: .45rem 0 .8rem; color: rgb(255 255 255 / 76%); font-size: .78rem; line-height: 1.48; }
.xg-reading-rail__cta a { color: #9feff0; font-size: .78rem; font-weight: 800; text-decoration: none; }
.xg-prose-surface {
	min-width: 0;
	max-width: 54rem;
	color: var(--xg-reading-ink);
	font-size: clamp(1.03rem, 1rem + .12vw, 1.1rem);
	line-height: 1.82;
}
.xg-prose-surface > :first-child { margin-top: 0; }
.xg-prose-surface h2 { margin: 2.35em 0 .62em; font-size: clamp(1.75rem, 1.5rem + .8vw, 2.55rem); line-height: 1.12; scroll-margin-top: 8rem; }
.xg-prose-surface h3 { margin: 1.8em 0 .52em; font-size: clamp(1.3rem, 1.16rem + .4vw, 1.7rem); line-height: 1.2; scroll-margin-top: 8rem; }
.xg-prose-surface p { margin: 0 0 1.25em; }
.xg-prose-surface a { color: var(--xg-brand-royal); font-weight: 650; text-decoration-thickness: .08em; text-underline-offset: .17em; }
.xg-prose-surface blockquote { margin: 2rem 0; padding: 1.25rem 1.4rem; border: 0; border-left: 4px solid var(--xg-brand-teal); border-radius: 0 1rem 1rem 0; color: #29445c; background: linear-gradient(90deg, var(--xg-brand-aqua), #f8fbff); font-size: 1.07em; }
.xg-prose-surface ul,
.xg-prose-surface ol { margin: 0 0 1.35em 1.25rem; }
.xg-prose-surface li { margin-bottom: .48em; }
.xg-prose-surface img { max-width: 100%; height: auto; border-radius: .85rem; box-shadow: 0 10px 28px rgb(15 42 74 / 8%); }
.xg-prose-surface figure { margin: 2rem 0; }
.xg-prose-surface figcaption { margin-top: .55rem; color: #718096; font-size: .78rem; line-height: 1.45; }
.xg-prose-surface table { display: block; width: 100%; max-width: 100%; margin: 1.8rem 0; overflow-x: auto; border-collapse: separate; border-spacing: 0; border: 1px solid var(--xg-reading-line); border-radius: .75rem; }
.xg-prose-surface th { color: var(--xg-brand-navy); background: var(--xg-brand-ice); font-size: .84rem; }
.xg-prose-surface th,
.xg-prose-surface td { padding: .75rem .85rem; border-bottom: 1px solid var(--xg-reading-line); text-align: left; vertical-align: top; }
.xg-prose-surface tr:last-child td { border-bottom: 0; }
.xg-prose-surface code { padding: .12rem .3rem; border-radius: .3rem; color: #7b2947; background: #fff1f6; font-size: .88em; }
.xg-article-end { padding: clamp(4rem, 6vw, 6rem) 0 3rem; border-top: 1px solid var(--xg-reading-line); background: linear-gradient(180deg, #f6f9fd, #fff); }
.xg-article-end__share { display: flex; padding: clamp(1.6rem, 3vw, 2.4rem); align-items: center; justify-content: space-between; gap: 2rem; border: 1px solid rgb(244 122 60 / 22%); border-radius: 1.2rem; background: linear-gradient(135deg, var(--xg-brand-peach), #fff); }
.xg-article-end__share h2 { max-width: 22ch; margin: .1em 0 0; font-size: clamp(1.6rem, 1.35rem + .8vw, 2.4rem); line-height: 1.08; }
.xg-related-editorial { margin-top: 4.5rem; }
.xg-article-nextprev { display: grid; margin-top: 3rem; padding-top: 1.2rem; grid-template-columns: 1fr auto 1fr; border-top: 1px solid var(--xg-reading-line); gap: 1rem; font-size: .82rem; font-weight: 750; }
.xg-article-nextprev > :last-child { text-align: right; }
.xg-focus-reading .site-header,
.xg-focus-reading .site-footer,
.xg-focus-reading .xg-reading-rail,
.xg-focus-reading .xg-navigator-trigger { opacity: .08; pointer-events: none; transition: opacity .22s ease; }
.xg-focus-reading .xg-reading-layout { grid-template-columns: 1fr; }
.xg-focus-reading .xg-prose-surface { width: min(48rem, 100%); max-width: 48rem; margin-inline: auto; }

/* --------------------------------------------------------------------------
   11. PODCAST + VIDEO MEDIA EXPERIENCE
   -------------------------------------------------------------------------- */
.xg-compact-hero--media { background: radial-gradient(circle at 82% 15%, rgb(118 87 214 / 23%), transparent 24rem), linear-gradient(126deg, #071d35, #173a68 57%, #654cb8); }
.xg-compact-hero--video { background: radial-gradient(circle at 83% 17%, rgb(244 122 60 / 17%), transparent 22rem), linear-gradient(126deg, #071d35, #123d69 58%, #0b7c83); }
.xg-wave-visual,
.xg-video-visual { position: relative; width: min(31rem,100%); aspect-ratio: 1.3; margin-inline: auto; border: 1px solid rgb(255 255 255 / 19%); border-radius: 1.5rem; background: rgb(255 255 255 / 7%); box-shadow: 0 28px 70px rgb(0 0 0 / 22%); overflow: hidden; }
.xg-wave-visual > span { position: absolute; top: 50%; left: 50%; z-index: 3; display: grid; width: 6rem; height: 6rem; place-items: center; border-radius: 50%; color: #fff; background: linear-gradient(145deg, var(--xg-brand-blue), var(--xg-brand-violet)); transform: translate(-50%,-50%); }
.xg-wave-visual > span .xg-icon { width: 2.1rem; height: 2.1rem; }
.xg-wave-visual > div { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; gap: .28rem; }
.xg-wave-visual > div i { width: .2rem; height: calc(1rem + (var(--xg-i, 1) * .1rem)); max-height: 7rem; border-radius: 99px; background: linear-gradient(#9feff0, #fff); opacity: .42; animation: xgWave 1.4s ease-in-out infinite alternate; }
.xg-wave-visual > div i:nth-child(3n) { height: 4.8rem; animation-delay: -.5s; }
.xg-wave-visual > div i:nth-child(4n) { height: 7rem; animation-delay: -.9s; }
.xg-wave-visual > div i:nth-child(5n) { height: 3rem; animation-delay: -.2s; }
.xg-wave-visual > strong { position: absolute; right: 1.2rem; bottom: 1rem; color: rgb(255 255 255 / 72%); font-size: .72rem; letter-spacing: .12em; text-transform: uppercase; }
@keyframes xgWave { from { transform: scaleY(.62); opacity: .3; } to { transform: scaleY(1); opacity: .66; } }
.xg-video-visual__screen { position: absolute; inset: 12% 9% 22%; display: grid; place-items: center; overflow: hidden; border: 1px solid rgb(255 255 255 / 20%); border-radius: 1.1rem; background: linear-gradient(145deg, rgb(17 93 246 / 30%), rgb(11 146 151 / 22%)); }
.xg-video-visual__screen span { position: relative; z-index: 2; display: grid; width: 5rem; height: 5rem; place-items: center; border-radius: 50%; color: #fff; background: rgb(255 255 255 / 15%); box-shadow: 0 0 0 1rem rgb(255 255 255 / 4%); }
.xg-video-visual__screen .xg-icon { width: 2rem; height: 2rem; }
.xg-video-visual__screen i,
.xg-video-visual__screen b { position: absolute; border: 1px solid rgb(255 255 255 / 15%); border-radius: 50%; }
.xg-video-visual__screen i { width: 12rem; height: 12rem; left: -3rem; top: -3rem; }
.xg-video-visual__screen b { width: 8rem; height: 8rem; right: -2rem; bottom: -2rem; }
.xg-video-visual__caption { position: absolute; bottom: 7%; left: 9%; color: rgb(255 255 255 / 74%); font-size: .72rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.xg-media-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 1.2rem; }
.xg-media-card { display: flex; min-height: 28rem; padding: 1.1rem; flex-direction: column; border: 1px solid var(--xg-reading-line); border-radius: 1.15rem; color: var(--xg-reading-ink) !important; background: #fff; box-shadow: var(--xg-card-shadow); text-decoration: none !important; transition: transform .26s var(--xg-ease), box-shadow .26s var(--xg-ease); }
.xg-media-card:hover { transform: translateY(-5px); box-shadow: var(--xg-card-shadow-hover); }
.xg-media-card__visual { position: relative; display: grid; height: 12rem; margin-bottom: 1rem; place-items: center; overflow: hidden; border-radius: .9rem; background: linear-gradient(135deg, #eaf2ff, #f2edff); }
.xg-media-card--video .xg-media-card__visual { background: linear-gradient(135deg, #eaf8f7, #eef5ff); }
.xg-media-card__visual img { width: 100%; height: 100%; object-fit: cover; }
.xg-media-card__visual > i:first-child { display: grid; z-index: 2; width: 4.5rem; height: 4.5rem; place-items: center; border-radius: 50%; color: var(--xg-brand-royal); background: rgb(255 255 255 / 80%); }
.xg-media-card__visual .xg-icon { width: 1.9rem; height: 1.9rem; }
.xg-media-card__visual em { position: absolute; right: .7rem; bottom: .65rem; padding: .28rem .45rem; border-radius: .35rem; color: #fff; background: rgb(7 29 53 / 78%); font-size: .58rem; font-style: normal; font-weight: 900; letter-spacing: .1em; }
.xg-media-card__type { color: var(--xg-brand-teal); font-size: .66rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.xg-media-card > strong { margin-top: .55rem; color: var(--xg-brand-navy); font-size: 1.3rem; line-height: 1.16; }
.xg-media-card > small { margin-top: .7rem; color: var(--xg-reading-muted); line-height: 1.55; }
.xg-media-card__meta { display: flex; margin-top: auto; padding-top: 1rem; justify-content: space-between; color: #718096; font-size: .78rem; }
.xg-media-card__meta i { color: var(--xg-brand-blue); font-style: normal; }
.xg-media-zero,
.xg-zero-state { display: grid; padding: clamp(1.7rem, 3vw, 2.5rem); grid-template-columns: minmax(9rem,.45fr) minmax(0,1.5fr); gap: 2rem; align-items: center; border: 1px solid var(--xg-reading-line); border-radius: 1.2rem; background: #fff; box-shadow: var(--xg-card-shadow); }
.xg-media-zero__visual,
.xg-zero-state__icon { position: relative; display: grid; min-height: 12rem; place-items: center; overflow: hidden; border-radius: 1rem; color: var(--xg-brand-royal); background: linear-gradient(135deg, var(--xg-brand-ice), var(--xg-brand-lilac)); }
.xg-media-zero__visual .xg-icon,
.xg-zero-state__icon .xg-icon { width: 2.7rem; height: 2.7rem; }
.xg-media-zero h3,
.xg-zero-state h2,
.xg-zero-state h3 { margin: .12em 0 .35em; font-size: clamp(1.6rem, 1.3rem + .8vw, 2.35rem); line-height: 1.08; }
.xg-media-zero p,
.xg-zero-state p { margin: 0; color: var(--xg-reading-muted); line-height: 1.65; }
.xg-media-detail__layout { display: grid; grid-template-columns: minmax(17rem,.75fr) minmax(0,1.65fr); gap: clamp(2.5rem,5vw,5rem); align-items: start; }
.xg-media-detail__player { position: sticky; top: 7.5rem; padding: 1.2rem; border: 1px solid var(--xg-reading-line); border-radius: 1rem; background: #fff; box-shadow: var(--xg-card-shadow); }
.xg-media-detail__meta { display: flex; margin-top: 1rem; flex-wrap: wrap; gap: .5rem; }
.xg-media-detail__meta span { padding: .38rem .55rem; border: 1px solid rgb(255 255 255 / 20%); border-radius: .4rem; color: rgb(255 255 255 / 78%); font-size: .72rem; }
.xg-media-review-state { padding: 1.1rem; border: 1px solid var(--xg-reading-line); border-radius: .8rem; background: var(--xg-brand-mist); }
.xg-media-review-state strong { color: var(--xg-brand-navy); }
.xg-media-review-state p { margin: .45rem 0 0; color: var(--xg-reading-muted); font-size: .86rem; line-height: 1.5; }
.xg-video-detail__player { padding-bottom: 1.5rem; }
.xg-video-player-160 { position: relative; width: min(64rem,100%); margin-inline: auto; overflow: hidden; border-radius: 1rem; box-shadow: 0 20px 50px rgb(15 42 74 / 14%); }
.xg-video-player-160 iframe { width: 100%; min-height: 32rem; border: 0; }

/* --------------------------------------------------------------------------
   12. RESOURCES
   -------------------------------------------------------------------------- */
.xg-resource-card-160 { min-height: 18rem; padding: 1.25rem; border: 1px solid var(--xg-reading-line); border-radius: 1rem; background: #fff; box-shadow: var(--xg-card-shadow); }
.xg-resource-card-160__access { display: inline-block; padding: .3rem .45rem; border-radius: .35rem; color: var(--xg-brand-teal); background: var(--xg-brand-aqua); font-size: .62rem; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; }
.xg-resource-card-160__icon { margin: 1rem 0 .75rem; color: var(--xg-brand-blue); }
.xg-resource-card-160__icon .xg-icon { width: 1.8rem; height: 1.8rem; }
.xg-resource-card-160 h2 { margin: 0 0 .5rem; font-size: 1.25rem; line-height: 1.17; }
.xg-resource-card-160 p { color: var(--xg-reading-muted); font-size: .9rem; line-height: 1.55; }
.xg-resource-detail-160__layout { display: grid; grid-template-columns: minmax(17rem,.72fr) minmax(0,1.65fr); gap: clamp(2.5rem,5vw,5rem); align-items: start; }
.xg-resource-access-panel { position: sticky; top: 7.5rem; padding: 1.25rem; border: 1px solid var(--xg-reading-line); border-radius: 1rem; background: linear-gradient(180deg,var(--xg-brand-ice),#fff); box-shadow: var(--xg-card-shadow); }

/* --------------------------------------------------------------------------
   13. KNOWLEDGE / GUIDANCE / CASE STUDY / EXPERT / FAQ
   -------------------------------------------------------------------------- */
.xg-knowledge-visual__node--one { top: 13%; left: 8%; }
.xg-knowledge-visual__node--two { top: 17%; right: 8%; }
.xg-knowledge-visual__node--three { right: 17%; bottom: 11%; }
.xg-knowledge-visual > i,
.xg-knowledge-visual > b { position: absolute; z-index: 1; border: 1px solid rgb(255 255 255 / 14%); border-radius: 50%; }
.xg-knowledge-visual > i { inset: 14%; }
.xg-knowledge-visual > b { inset: 28%; border-style: dashed; }
.xg-knowledge-single__layout { display: grid; grid-template-columns: minmax(15rem,.58fr) minmax(0,2fr); gap: clamp(2.5rem,5vw,5rem); align-items: start; }
.xg-record-meta { position: sticky; top: 7.5rem; padding: 1.25rem; border: 1px solid var(--xg-reading-line); border-radius: 1rem; background: #fff; box-shadow: var(--xg-card-shadow); }
.xg-record-meta > div { padding: .7rem 0; border-bottom: 1px solid var(--xg-reading-line); }
.xg-record-meta > div span { display: block; color: #718096; font-size: .63rem; font-weight: 850; letter-spacing: .09em; text-transform: uppercase; }
.xg-record-meta > div strong { display: block; margin-top: .22rem; color: var(--xg-brand-navy); font-size: .84rem; line-height: 1.35; word-break: break-word; }
.xg-record-meta .xg-button { width: 100%; margin-top: 1rem; text-align: center; }
.xg-record-meta .xg-text-link { display: block; margin-top: 1rem; font-size: .8rem; }
.xg-record-visual { position: relative; width: min(31rem,100%); aspect-ratio: 1.3; margin-inline: auto; border: 1px solid rgb(255 255 255 / 18%); border-radius: 1.5rem; background: rgb(255 255 255 / 7%); }
.xg-record-visual span { position: absolute; display: grid; width: 7.5rem; height: 4.6rem; place-items: center; border: 1px solid rgb(255 255 255 / 21%); border-radius: .8rem; color: #fff; background: rgb(255 255 255 / 10%); font-size: .68rem; font-weight: 850; letter-spacing: .1em; }
.xg-record-visual__source { top: 15%; left: 8%; }
.xg-record-visual__context { top: 39%; right: 8%; }
.xg-record-visual__decision { bottom: 12%; left: 18%; }
.xg-record-visual i,
.xg-record-visual b { position: absolute; height: 2px; border-radius: 99px; background: linear-gradient(90deg,var(--xg-brand-cyan),var(--xg-brand-lime)); transform-origin: left; }
.xg-record-visual i { top: 36%; left: 31%; width: 43%; transform: rotate(13deg); }
.xg-record-visual b { top: 64%; left: 32%; width: 39%; transform: rotate(-18deg); }
.xg-next-paths { display: grid; grid-template-columns: repeat(3,1fr); gap: 1rem; }
.xg-next-path { display: flex; min-height: 11rem; padding: 1.15rem; flex-direction: column; border: 1px solid var(--xg-reading-line); border-top: 4px solid var(--xg-local-accent); border-radius: 1rem; color: var(--xg-reading-ink) !important; background: linear-gradient(180deg,var(--xg-local-soft),#fff); text-decoration: none; box-shadow: var(--xg-card-shadow); transition: transform .22s var(--xg-ease), box-shadow .22s var(--xg-ease); }
.xg-next-path:hover { transform: translateY(-4px); box-shadow: var(--xg-card-shadow-hover); }
.xg-next-path strong { color: var(--xg-brand-navy); font-size: 1.1rem; }
.xg-next-path span { margin-top: .45rem; color: var(--xg-reading-muted); font-size: .85rem; line-height: 1.5; }
.xg-next-path em { margin-top: auto; color: var(--xg-local-accent); font-size: .8rem; font-style: normal; font-weight: 800; }

/* --------------------------------------------------------------------------
   14. CONTACT / BOOKING — ABOVE-FOLD CONVERSION DISCIPLINE
   -------------------------------------------------------------------------- */
.xg-contact-enterprise .xg-contact-hero__grid,
.xg-book-enterprise .xg-contact-hero__grid {
	min-height: clamp(27rem, calc(100svh - 10rem), 34rem) !important;
	padding: clamp(2.8rem,4.2vw,4.2rem) 0 !important;
}
.xg-contact-enterprise .xg-contact-hero h1,
.xg-book-enterprise .xg-contact-hero h1 { font-size: clamp(2.45rem,1.9rem + 2.1vw,4.1rem) !important; }
.xg-contact-enterprise .xg-contact-signal,
.xg-book-enterprise .xg-book-visual { max-width: 29rem; margin-inline: auto; }
.xg-contact-pathways { margin-top: -2.2rem; position: relative; z-index: 4; }
.xg-contact-path { transition: transform .23s var(--xg-ease), box-shadow .23s var(--xg-ease); }
.xg-contact-path:hover { transform: translateY(-5px); box-shadow: var(--xg-card-shadow-hover); }
.xg-contact-form-section,
.xg-book-layout-section { padding-top: clamp(3.2rem,5vw,5rem) !important; }
.xg-contact-form-layout,
.xg-book-layout { gap: clamp(2.2rem,4vw,4.5rem) !important; }

/* --------------------------------------------------------------------------
   15. SEARCH + TAXONOMY + 404
   -------------------------------------------------------------------------- */
.xg-search-hero-form { padding: 1.35rem; border: 1px solid rgb(255 255 255 / 18%); border-radius: 1.15rem; background: rgb(255 255 255 / 8%); box-shadow: 0 24px 60px rgb(0 0 0 / 16%); }
.xg-search-hero-form label { display: block; margin-bottom: .6rem; color: #fff; font-size: .72rem; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.xg-search-hero-form > div { display: grid; grid-template-columns: 1fr auto; }
.xg-search-hero-form input { width: 100%; min-height: 3.2rem; padding: 0 .9rem; border: 1px solid rgb(255 255 255 / 28%); border-right: 0; border-radius: .65rem 0 0 .65rem; color: var(--xg-brand-navy); background: #fff; }
.xg-search-hero-form button { min-width: 6rem; border: 0; border-radius: 0 .65rem .65rem 0; color: #101b28; background: var(--xg-brand-coral); font-weight: 850; cursor: pointer; }
.xg-search-hero-form small { display: block; margin-top: .55rem; color: rgb(255 255 255 / 68%); font-size: .7rem; }
.xg-search-results { display: grid; grid-template-columns: repeat(3,1fr); gap: 1rem; }
.xg-404-visual,
.xg-topic-visual { position: relative; display: grid; width: min(31rem,100%); aspect-ratio: 1.35; margin-inline: auto; place-items: center; border: 1px solid rgb(255 255 255 / 18%); border-radius: 1.5rem; background: rgb(255 255 255 / 7%); }
.xg-404-visual > strong { color: rgb(255 255 255 / 15%); font-size: 7rem; line-height: 1; }
.xg-404-visual span { position: absolute; padding: .55rem .7rem; border: 1px solid rgb(255 255 255 / 20%); border-radius: .6rem; color: #fff; background: rgb(255 255 255 / 9%); font-size: .68rem; font-weight: 800; }
.xg-404-visual span:nth-of-type(1) { top: 16%; left: 8%; }
.xg-404-visual span:nth-of-type(2) { top: 43%; right: 7%; }
.xg-404-visual span:nth-of-type(3) { bottom: 12%; left: 18%; }
.xg-topic-visual strong { max-width: 15ch; padding: 0 1rem; color: #fff; font-size: 1.65rem; text-align: center; }
.xg-topic-visual > span { position: absolute; top: 1rem; left: 1rem; color: #91e6e8; font-size: .66rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.xg-taxonomy-description { max-width: 44rem; color: rgb(255 255 255 / 83%); font-size: 1.04rem; line-height: 1.62; }

/* --------------------------------------------------------------------------
   16. GLOBAL XGENE NAVIGATOR — DAILY DISCOVERY FEATURE
   -------------------------------------------------------------------------- */
.xg-navigator-trigger {
	position: fixed;
	right: 1rem;
	bottom: 4.4rem; /* Clears the governed STAGING badge in the lower-right corner. */
	z-index: 9995;
	display: flex;
	min-height: 2.75rem;
	padding: .62rem .72rem;
	align-items: center;
	gap: .5rem;
	border: 1px solid rgb(255 255 255 / 20%);
	border-radius: .75rem;
	color: #fff;
	background: linear-gradient(135deg,var(--xg-brand-navy),#0e5872);
	box-shadow: 0 16px 38px rgb(7 29 53 / 24%);
	font-size: .73rem;
	cursor: pointer;
	transition: transform .2s var(--xg-ease), box-shadow .2s var(--xg-ease);
}
.xg-navigator-trigger:hover { transform: translateY(-3px); box-shadow: 0 20px 46px rgb(7 29 53 / 30%); }
.xg-navigator-trigger > span { color: #9feff0; font-size: 1.15rem; }
.xg-navigator-trigger kbd { padding: .08rem .32rem; border: 1px solid rgb(255 255 255 / 20%); border-radius: .3rem; color: rgb(255 255 255 / 64%); background: rgb(255 255 255 / 7%); font-size: .62rem; }
.xg-navigator {
	position: fixed;
	inset: 0;
	z-index: 100000;
	opacity: 0;
	transition: opacity .18s ease;
}
.xg-navigator.is-open { opacity: 1; }
.xg-navigator__scrim { position: absolute; inset: 0; background: rgb(4 18 32 / 64%); backdrop-filter: blur(5px); }
.xg-navigator__panel {
	position: absolute;
	top: min(12vh, 7rem);
	left: 50%;
	width: min(58rem, calc(100% - 2rem));
	max-height: min(76vh, 46rem);
	padding: clamp(1.35rem,3vw,2rem);
	overflow-y: auto;
	border: 1px solid rgb(255 255 255 / 20%);
	border-radius: 1.35rem;
	background: linear-gradient(180deg,#fff,#f7faff);
	box-shadow: 0 36px 90px rgb(0 0 0 / 30%);
	transform: translate(-50%,12px) scale(.985);
	transition: transform .23s var(--xg-ease);
}
.xg-navigator.is-open .xg-navigator__panel { transform: translate(-50%,0) scale(1); }
.xg-navigator__head { display: flex; align-items: start; justify-content: space-between; gap: 1rem; }
.xg-navigator__head h2 { max-width: 22ch; margin: .08em 0 .5em; font-size: clamp(1.6rem,1.35rem + .8vw,2.4rem); line-height: 1.06; }
.xg-navigator__close { display: grid; width: 2.4rem; height: 2.4rem; place-items: center; border: 1px solid var(--xg-reading-line); border-radius: 50%; color: var(--xg-brand-navy); background: #fff; font-size: 1.45rem; cursor: pointer; }
.xg-navigator__search label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); }
.xg-navigator__search > div { display: grid; grid-template-columns: 1fr auto; }
.xg-navigator__search input { min-height: 3.6rem; padding: 0 1rem; border: 1px solid rgb(17 93 246 / 22%); border-right: 0; border-radius: .75rem 0 0 .75rem; color: var(--xg-brand-navy); background: #fff; font-size: 1rem; }
.xg-navigator__search button { min-width: 6.4rem; border: 0; border-radius: 0 .75rem .75rem 0; color: #101c2a; background: var(--xg-brand-coral); font-weight: 850; cursor: pointer; }
.xg-navigator__chips { display: flex; margin-top: .75rem; flex-wrap: wrap; gap: .4rem; }
.xg-navigator__chips a { padding: .38rem .55rem; border: 1px solid var(--xg-reading-line); border-radius: 999px; color: #5c6c80; background: #fff; font-size: .69rem; font-weight: 750; text-decoration: none; }
.xg-navigator__chips a:hover { color: var(--xg-brand-royal); background: var(--xg-brand-ice); }
.xg-navigator__status { margin: .9rem 0 .55rem; color: #718096; font-size: .72rem; }
.xg-navigator__results { display: grid; grid-template-columns: repeat(2,1fr); gap: .6rem; }
.xg-navigator-result { position: relative; display: flex; min-height: 7rem; padding: .9rem 2rem .9rem .9rem; flex-direction: column; border: 1px solid var(--xg-reading-line); border-radius: .8rem; color: var(--xg-reading-ink) !important; background: #fff; text-decoration: none !important; transition: transform .18s var(--xg-ease), border-color .18s ease, box-shadow .18s ease; }
.xg-navigator-result:hover { border-color: rgb(17 93 246 / 24%); box-shadow: 0 9px 22px rgb(15 42 74 / 8%); transform: translateY(-2px); }
.xg-navigator-result__type { color: var(--xg-brand-teal); font-size: .6rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.xg-navigator-result strong { margin-top: .3rem; color: var(--xg-brand-navy); font-size: .92rem; line-height: 1.18; }
.xg-navigator-result small { margin-top: .35rem; color: #6b7a8e; font-size: .72rem; line-height: 1.38; }
.xg-navigator-result i { position: absolute; right: .8rem; bottom: .72rem; color: var(--xg-brand-blue); font-style: normal; }
.xg-navigator__empty { padding: 1rem; border: 1px dashed var(--xg-reading-line); border-radius: .7rem; color: #718096; background: #fff; font-size: .82rem; }
body.xg-navigator-open { overflow: hidden; }

/* --------------------------------------------------------------------------
   17. COLOR HELPERS + EXISTING 1.5 PAGE CONSISTENCY
   -------------------------------------------------------------------------- */
.xg-accent-blue { --xg-local-accent: var(--xg-brand-blue); --xg-local-soft: var(--xg-brand-ice); }
.xg-accent-teal { --xg-local-accent: var(--xg-brand-teal); --xg-local-soft: var(--xg-brand-aqua); }
.xg-accent-lime { --xg-local-accent: #68a900; --xg-local-soft: var(--xg-brand-leaf); }
.xg-accent-coral { --xg-local-accent: var(--xg-brand-coral); --xg-local-soft: var(--xg-brand-peach); }
.xg-accent-violet { --xg-local-accent: var(--xg-brand-violet); --xg-local-soft: var(--xg-brand-lilac); }
.xg-accent-gold { --xg-local-accent: #b77a09; --xg-local-soft: var(--xg-brand-sand); }
.xg-audience-card,
.xg-contact-path,
.xg-hub-route,
.xg-analysis-card,
.xg-book-guide__card,
.xg-principle-card { transition: transform .24s var(--xg-ease), box-shadow .24s var(--xg-ease), border-color .24s ease; }
.xg-audience-card:hover,
.xg-hub-route:hover,
.xg-analysis-card:hover { transform: translateY(-5px); box-shadow: var(--xg-card-shadow-hover); }

/* --------------------------------------------------------------------------
   18. RESPONSIVE SYSTEM
   -------------------------------------------------------------------------- */
@media (max-width: 1120px) {
	:root { --xg-content-wide: min(100% - 2.4rem, 78rem); }
	.xg-compact-hero__grid,
	.xg-article-cover__grid { grid-template-columns: minmax(0,1.05fr) minmax(18rem,.95fr); gap: 2.5rem; }
	.xg-service-grid--160,
	.xg-editorial-grid,
	.xg-media-grid,
	.xg-search-results { grid-template-columns: repeat(2,minmax(0,1fr)); }
	.xg-content-grid--four { grid-template-columns: repeat(2,minmax(0,1fr)); }
	.xg-mode-grid { grid-template-columns: repeat(2,1fr); }
	.xg-decision-pathway ol { grid-template-columns: repeat(2,1fr); }
}
@media (max-width: 920px) {
	.xg-compact-hero__grid,
	.xg-enterprise-hero__grid,
	.xg-contact-hero__grid,
	.xg-article-cover__grid {
		min-height: auto !important;
		padding: 3.3rem 0 !important;
		grid-template-columns: 1fr !important;
		gap: 2.5rem !important;
	}
	.xg-b1a-home .xg-home-hero__grid {
		min-height: auto !important;
		padding: 3.2rem 0 3.8rem !important;
		grid-template-columns: 1fr !important;
	}
	.xg-b1a-home .xg-home-hero__content h1 { max-width: 13ch !important; }
	.xg-b1a-home .xg-evidence-visual { width: min(31rem,100%); }
	.xg-compact-hero h1,
	.xg-enterprise-hero h1,
	.xg-contact-hero h1 { max-width: 18ch !important; }
	.xg-pathway-ribbon__grid { grid-template-columns: repeat(2,1fr); }
	.xg-pathway-ribbon__grid > a:nth-child(2) { border-right: 0; }
	.xg-pathway-ribbon__grid > a:nth-child(-n+2) { border-bottom: 1px solid var(--xg-reading-line); }
	.xg-reading-layout,
	.xg-service-reading__grid,
	.xg-media-detail__layout,
	.xg-resource-detail-160__layout,
	.xg-knowledge-single__layout { grid-template-columns: 1fr; }
	.xg-reading-rail,
	.xg-service-reading__rail,
	.xg-media-detail__player,
	.xg-resource-access-panel,
	.xg-record-meta { position: static; }
	.xg-reading-rail { display: grid; grid-template-columns: 1fr .72fr; gap: 1rem; }
	.xg-decision-pathway__grid { grid-template-columns: 1fr; }
	.xg-featured-article { grid-template-columns: 1fr; }
	.xg-featured-article__media { min-height: 18rem; }
	.xg-content-card--editorial-feature { grid-column: span 1; }
	.xg-content-card--editorial-feature .xg-content-card__cover { display: flex; }
	.xg-next-paths { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
	:root { --xg-content-wide: min(100% - 2rem, 76rem); }
	.xg-experience-160 .xg-section { padding: 3.5rem 0; }
	.xg-section-heading--split { display: block !important; }
	.xg-section-heading--split > .xg-text-link,
	.xg-section-heading--split > .xg-text-link--button { display: inline-block; margin-top: 1rem; }
	.xg-compact-hero__grid,
	.xg-article-cover__grid { padding: 2.75rem 0 !important; }
	.xg-compact-hero h1,
	.xg-enterprise-hero h1,
	.xg-contact-hero h1,
	.xg-article-cover__copy h1 { font-size: clamp(2.35rem,10.5vw,3.4rem) !important; }
	.xg-b1a-home .xg-home-hero__content h1 { font-size: clamp(2.7rem,12vw,3.7rem) !important; }
	.xg-content-grid--three,
	.xg-content-grid--four,
	.xg-service-grid--160,
	.xg-editorial-grid,
	.xg-media-grid,
	.xg-search-results,
	.xg-mode-grid,
	.xg-proof-grid { grid-template-columns: 1fr; }
	.xg-content-card__cover { min-height: 0; }
	.xg-service-card-160 { min-height: 0; }
	.xg-reading-rail { display: block; }
	.xg-toc { max-height: none; }
	.xg-toc ol { max-height: 15rem; }
	.xg-article-end__share { display: block; }
	.xg-article-end__share .xg-button-row { margin-top: 1.2rem; }
	.xg-article-nextprev { grid-template-columns: 1fr; text-align: left; }
	.xg-article-nextprev > :last-child { text-align: left; }
	.xg-decision-pathway ol { grid-template-columns: 1fr; }
	.xg-pathway-ribbon__grid { grid-template-columns: 1fr; }
	.xg-pathway-ribbon__grid > a { min-height: auto; border-right: 0; border-bottom: 1px solid var(--xg-reading-line); }
	.xg-media-zero,
	.xg-zero-state { grid-template-columns: 1fr; }
	.xg-navigator__panel { top: .75rem; max-height: calc(100vh - 1.5rem); }
	.xg-navigator__results { grid-template-columns: 1fr; }
	.xg-navigator-trigger strong,
	.xg-navigator-trigger kbd { display: none; }
	.xg-navigator-trigger { width: 2.8rem; padding: 0; justify-content: center; border-radius: 50%; }
	.xg-video-player-160 iframe { min-height: 18rem; }
	.admin-bar .xg-article-browse { top: 46px; }
	.admin-bar .xg-reading-progress { top: 46px; }
}
@media (max-width: 600px) {
	:root { --xg-content-wide: min(100% - 1.4rem, 76rem); }
	.xg-compact-hero__grid,
	.xg-article-cover__grid { padding: 2.4rem 0 !important; }
	.xg-services-orbit,
	.xg-domain-visual,
	.xg-knowledge-visual,
	.xg-wave-visual,
	.xg-video-visual,
	.xg-service-detail-visual { width: 100%; }
	.xg-button-row { gap: .5rem; }
	.xg-button-row .xg-button { width: 100%; justify-content: center; text-align: center; }
	.xg-article-byline span + span::before { display: none; }
	.xg-article-byline { display: grid; gap: .2rem; }
}

/* --------------------------------------------------------------------------
   19. REDUCED MOTION + PRINT
   -------------------------------------------------------------------------- */
@media (prefers-reduced-motion: reduce) {
	.xg-experience-160 *,
	.xg-experience-160 *::before,
	.xg-experience-160 *::after {
		scroll-behavior: auto !important;
		animation-duration: .001ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: .001ms !important;
	}
	.xg-js [data-xg-reveal] { opacity: 1 !important; transform: none !important; }
	[data-xg-animate-diagram] svg path,
	[data-xg-animate-diagram] svg circle { stroke-dashoffset: 0 !important; }
}
@media print {
	.site-header,
	.site-footer,
	.xg-navigator-trigger,
	.xg-navigator,
	.xg-reading-rail,
	.xg-reading-tools,
	.xg-article-end,
	.xg-reading-progress { display: none !important; }
	.xg-article-cover { background: #fff !important; }
	.xg-article-cover__grid { display: block; min-height: auto; padding: 1rem 0; }
	.xg-article-cover__visual { display: none; }
	.xg-reading-layout { display: block; padding: 1rem 0; }
	.xg-prose-surface { max-width: none; color: #000; font-size: 11pt; line-height: 1.55; }
	.xg-prose-surface a { color: #000; text-decoration: underline; }
}

/* --------------------------------------------------------------------------
   20. INSIGHTS HUB + REGULATORY CENTER REFINEMENT
   -------------------------------------------------------------------------- */
.xg-insights-hub .xg-hub-hero__grid {
	min-height: clamp(30rem, calc(100svh - 10rem), 38rem) !important;
	padding: clamp(3.1rem, 5vw, 5rem) 0 !important;
	grid-template-columns: minmax(0,1.08fr) minmax(20rem,.92fr) !important;
	gap: clamp(2.5rem,5vw,5rem) !important;
}
.xg-insights-hub .xg-hub-hero h1 {
	max-width: 15ch !important;
	margin: .08em 0 .3em !important;
	font-size: clamp(2.6rem,2rem + 2.6vw,4.7rem) !important;
	line-height: .99 !important;
}
.xg-insights-hub .xg-hub-lead {
	max-width: 44rem !important;
	font-size: clamp(1.03rem,1rem + .18vw,1.17rem) !important;
	line-height: 1.62 !important;
}
.xg-insights-hub .xg-hub-signal {
	min-height: 20rem !important;
	max-width: 31rem;
	margin-inline: auto;
	border-radius: 1.55rem !important;
}
.xg-insights-hub .xg-hub-signal__core { width: 8.2rem !important; height: 8.2rem !important; }
.xg-insights-hub .xg-hub-section { padding: clamp(4.1rem,6vw,6rem) 0 !important; }
.xg-insights-hub .xg-hub-route { min-height: 21rem !important; }
.xg-insights-hub .xg-hub-route-grid { gap: 1rem; }
.xg-insights-hub .xg-evidence-card,
.xg-insights-hub .xg-analysis-feature,
.xg-insights-hub .xg-analysis-side { transition: transform .24s var(--xg-ease), box-shadow .24s var(--xg-ease); }
.xg-insights-hub .xg-evidence-card:hover,
.xg-insights-hub .xg-analysis-feature:hover,
.xg-insights-hub .xg-analysis-side:hover { transform: translateY(-4px); box-shadow: var(--xg-card-shadow-hover); }
.xg-insights-hub .xg-insight-spectrum__item { min-height: 7.7rem; }

.xg-reg-center-visual {
	position: relative;
	width: min(31rem,100%);
	aspect-ratio: 1.34;
	margin-inline: auto;
	border: 1px solid rgb(255 255 255 / 18%);
	border-radius: 1.55rem;
	background: rgb(255 255 255 / 7%);
	box-shadow: 0 28px 72px rgb(0 0 0 / 22%);
	backdrop-filter: blur(10px);
}
.xg-reg-center-visual svg { position:absolute; inset:0; width:100%; height:100%; fill:none; stroke:rgb(143 227 229 / 50%); stroke-width:1.4; }
.xg-reg-center-visual__core { position:absolute; top:50%; left:50%; z-index:2; display:flex; width:8.5rem; height:8.5rem; flex-direction:column; align-items:center; justify-content:center; border:1px solid rgb(255 255 255 / 25%); border-radius:50%; color:#fff; background:linear-gradient(145deg,rgb(17 93 246 / 76%),rgb(11 146 151 / 82%)); transform:translate(-50%,-50%); }
.xg-reg-center-visual__core span { color:#a3eff0; font-size:.63rem; font-weight:850; letter-spacing:.1em; text-transform:uppercase; }
.xg-reg-center-visual__core strong { color:#fff; font-size:1.2rem; }
.xg-reg-center-visual__node { position:absolute; z-index:3; display:flex; padding:.65rem .72rem; gap:.45rem; border:1px solid rgb(255 255 255 / 20%); border-radius:.7rem; color:#fff; background:rgb(255 255 255 / 10%); font-size:.72rem; font-weight:800; }
.xg-reg-center-visual__node b { color:#9feff0; font-size:.62rem; }
.xg-reg-center-visual__node--one { top:11%; left:7%; }
.xg-reg-center-visual__node--two { top:14%; right:7%; }
.xg-reg-center-visual__node--three { right:8%; bottom:12%; }
.xg-reg-center-visual__node--four { bottom:10%; left:8%; }
.xg-diagram-active .xg-reg-center-visual__core { animation:xgCorePulse 5.5s ease-in-out infinite; }
.xg-diagram-active .xg-reg-center-visual__node { animation:xgSoftFloat 5.8s ease-in-out infinite; }
.xg-reg-center-steps { border-bottom:1px solid var(--xg-reading-line); background:#fff; box-shadow:0 8px 24px rgb(15 42 74 / 4%); }
.xg-reg-center-steps .xg-shell { display:grid; grid-template-columns:repeat(4,1fr); }
.xg-reg-center-steps .xg-shell > div { min-height:7.5rem; padding:1rem 1.1rem; border-right:1px solid var(--xg-reading-line); }
.xg-reg-center-steps .xg-shell > div:last-child { border-right:0; }
.xg-reg-center-steps span { display:block; color:var(--xg-brand-teal); font-size:.64rem; font-weight:900; }
.xg-reg-center-steps strong { display:block; margin-top:.3rem; color:var(--xg-brand-navy); font-size:.92rem; }
.xg-reg-center-steps small { display:block; margin-top:.28rem; color:var(--xg-reading-muted); font-size:.73rem; line-height:1.4; }
.xg-reg-center-workspace { padding:clamp(3rem,5vw,4.8rem) 0; background:linear-gradient(180deg,#f6f9fd,#fff); }
.xg-reg-center-workspace > .xg-hero { display:none !important; }
.xg-reg-center-workspace > .xg-shell,
.xg-reg-center-workspace .xg-shell { width:var(--xg-content-wide) !important; max-width:none !important; margin-inline:auto !important; }
.xg-reg-center-workspace .xg-center-layout { display:grid !important; width:var(--xg-content-wide) !important; max-width:none !important; margin-inline:auto !important; grid-template-columns:minmax(15rem,.55fr) minmax(0,2fr) !important; gap:1.35rem !important; align-items:start; }
.xg-reg-center-workspace .xg-filter-panel { position:sticky !important; top:7.2rem; padding:1rem !important; border:1px solid var(--xg-reading-line) !important; border-radius:1rem !important; background:#fff !important; box-shadow:var(--xg-card-shadow) !important; }
.admin-bar .xg-reg-center-workspace .xg-filter-panel { top:9.2rem; }
.xg-reg-center-workspace .xg-results { min-width:0; }
.xg-reg-center-workspace .xg-card-grid { display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:1rem !important; }

@media(max-width:920px){
	.xg-insights-hub .xg-hub-hero__grid{grid-template-columns:1fr!important;min-height:auto!important;padding:3.3rem 0!important}
	.xg-insights-hub .xg-hub-signal{width:min(31rem,100%)}
	.xg-reg-center-steps .xg-shell{grid-template-columns:repeat(2,1fr)}
	.xg-reg-center-steps .xg-shell>div:nth-child(2){border-right:0}.xg-reg-center-steps .xg-shell>div:nth-child(-n+2){border-bottom:1px solid var(--xg-reading-line)}
	.xg-reg-center-workspace .xg-center-layout{grid-template-columns:1fr!important}.xg-reg-center-workspace .xg-filter-panel{position:static!important}
}
@media(max-width:760px){
	.xg-reg-center-workspace .xg-card-grid{grid-template-columns:1fr!important}
}
@media(max-width:600px){
	.xg-reg-center-steps .xg-shell{grid-template-columns:1fr}.xg-reg-center-steps .xg-shell>div{border-right:0;border-bottom:1px solid var(--xg-reading-line)}.xg-reg-center-steps .xg-shell>div:last-child{border-bottom:0}
}
