/**
 * RockGlobal shared design-system enforcement layer.
 *
 * This file is loaded after page styles and owns cross-site typography,
 * controls, layout rhythm, focus treatment and runtime heading states.
 */

@font-face {
	font-family: "InterVariable";
	font-style: normal;
	font-weight: 100 900;
	font-display: swap;
	src: url("../fonts/InterVariable.woff2") format("woff2");
}

:root {
	--rg-font-sans: "InterVariable", Inter, Aptos, "Helvetica Neue", Arial, sans-serif;
	--rg-font-zh: "PingFang SC", "Microsoft YaHei", "Noto Sans CJK SC", "Noto Sans SC", var(--rg-font-sans);
	--rg-type-eyebrow: 14px;
	--rg-type-display-h1: 72px;
	--rg-type-display-h2: 64px;
	--rg-type-h3: 30px;
	--rg-type-h4: 24px;
	--rg-type-body-lg: 18px;
	--rg-type-body: 16px;
	--rg-type-body-sm: 14px;
	--rg-leading-display-h1: 1;
	--rg-leading-display-h2: 1.03;
	--rg-tracking-display-h1: -.045em;
	--rg-tracking-display-h2: -.04em;
	--rg-leading-body: 1.65;
	--rg-content-max: 1320px;
	--rg-reading-max: 720px;
	--rg-page-gutter: 40px;
	--rg-section-space: 106px;
	--rg-section-space-compact: 72px;
	--rg-radius-sm: 8px;
	--rg-radius-md: 12px;
	--rg-radius-lg: 16px;
	--rg-radius-xl: 24px;
	--rg-radius-2xl: 32px;
	--rg-radius-full: 999px;
	--rg-theme-accent: #70e6ff;
	--rg-focus-color: var(--rg-theme-accent);
	--rg-link-light: #087f9d;
	--rg-link-light-hover: #045f77;
	--rg-link-dark: #7ce6fb;
	--rg-link-dark-hover: #fff;
	--rg-hover-light-surface: #eaf9fc;
	--rg-hover-light-border: #39cde8;
	--rg-hover-light-ink: #07162f;
	--rg-hover-dark-surface: #164c70;
	--rg-hover-dark-border: #70e6ff;
	--rg-hover-dark-ink: #fff;
	--rg-hover-dark-strong: linear-gradient(115deg, #174c73, #2f3978);
	--rg-hover-duration: 180ms;
	--rg-gradient-text: linear-gradient(105deg, #8d85ff 0%, #c77bf1 16%, #f06fda 30%, #8a7eff 47%, #ed69d8 63%, #b77cf0 80%, #f27bdc 100%);
	--rg-gradient-text-duration: 5.5s;
}

/* Same-origin document transitions use the browser's native compositor. The
 * fallback is an entrance-only animation, so navigation is never delayed. */
@view-transition {
	navigation: auto;
}

::view-transition-old(root) {
	animation: rg-route-fade-out 200ms cubic-bezier(.4, 0, .2, 1) both;
}

::view-transition-new(root) {
	animation: rg-route-fade-in 260ms cubic-bezier(.4, 0, .2, 1) both;
}

@keyframes rg-route-fade-out {
	to {
		opacity: .84;
		transform: translate3d(0, -3px, 0);
	}
}

@keyframes rg-route-fade-in {
	from {
		opacity: .01;
		transform: translate3d(0, 5px, 0);
	}

	to {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
}

@supports not (view-transition-name: root) {
	.s6-shell {
		animation: rg-route-fade-in 260ms cubic-bezier(.4, 0, .2, 1) both;
	}
}

.s6-shell {
	font-family: var(--rg-font-sans);
}

.s6-shell[lang^="zh"] {
	--rg-type-display-h1: 62px;
	--rg-type-display-h2: 56px;
	--rg-leading-display-h1: 1.12;
	--rg-leading-display-h2: 1.15;
	--rg-tracking-display-h1: -.01em;
	--rg-tracking-display-h2: 0;
	font-family: var(--rg-font-zh);
}

.rg-type-bold {
	font-weight: 700;
}

.s6-shell:not(.rg-market-shell, .rg-markets-overview, .rg-accounts-page, .rg-platform-page) {
	--rg-theme-accent: #9d83ff;
}

.rg-market-shell { --rg-theme-accent: var(--rg-cyan, #5de4ff); }
.rg-market-shell--metals { --rg-theme-accent: #f4c465; }
.rg-market-shell--crypto { --rg-theme-accent: var(--crypto-cyan, #62e3ff); }
.rg-market-shell--energy { --rg-theme-accent: #ffd070; }
.rg-market-shell--indices { --rg-theme-accent: var(--index-cyan, #5de4ff); }
.rg-market-shell--stock-cfds { --rg-theme-accent: #83eaff; }
.rg-markets-overview { --rg-theme-accent: var(--overview-violet, #7b6cf5); }
.rg-accounts-page { --rg-theme-accent: var(--account-cyan, #54d9ff); }
.rg-platform-page { --rg-theme-accent: var(--rgp-cyan, #59dcff); }
.rg-promotions-page { --rg-theme-accent: var(--rg-promo-accent, #70e6ff); }

/* Universal eyebrow size and casing. Page themes continue to own colour. */
.s6-shell[lang] [class*="eyebrow"] {
	font-size: var(--rg-type-eyebrow);
	text-transform: uppercase;
}

/* Hero eyebrow contract. */
.s6-shell[lang] :is(
	.s6-eyebrow,
	.rg-market-eyebrow,
	.rg-metals-eyebrow,
	.rg-crypto-eyebrow,
	.rg-energy-eyebrow,
	.rg-indices-eyebrow,
	.rg-stocks-eyebrow,
	.rg-overview-eyebrow,
	.rg-account-kicker,
	.rg-platform-kicker,
	.rg-mobile-eyebrow,
	.rg-library-eyebrow,
	.rg-article-label,
	.rg-mt4-hero__copy > small,
	.rg-content-page .rg-entry__eyebrow
) {
	color: var(--rg-theme-accent);
	font-size: var(--rg-type-eyebrow);
	font-weight: 800;
	line-height: 1.25;
	letter-spacing: .1em;
	text-transform: uppercase;
}

/* Page-level display H1 contract. */
.s6-shell[lang] :is(
	.s6-hero,
	.rg-market-hero,
	.rg-metals-hero,
	.rg-crypto-hero,
	.rg-energy-hero,
	.rg-indices-hero,
	.rg-stocks-hero,
	.rg-overview-hero,
	.rg-account-hero,
	.rg-ad-hero,
	.rg-mt4-hero,
	.rg-mt5-hero,
	.rg-mobile-hero,
	.rg-ph-hero,
	.rg-article-hero,
	.rg-library-hero,
	.rg-archive-hero,
	.rg-why-hero
	,.rg-rockcopy-hero
	,.rg-copy-profile-hero
	,.rg-promo-hero
	,.rg-promo-detail__hero
	,.rg-if-hero
	,.rg-dr-hero
	,.rg-tj-hero
	,.rg-ca-hero
) h1,
.s6-shell[lang] .rg-entry__header h1,
.s6-shell[lang].rg-content-page .rg-entry > h1 {
	font-size: var(--rg-type-display-h1);
	font-weight: 600;
	line-height: var(--rg-leading-display-h1);
	letter-spacing: var(--rg-tracking-display-h1);
	overflow-wrap: normal;
	text-wrap: balance;
	word-break: normal;
}

/* The homepage hero is the sole approved display-H1 weight exception. */
.s6-shell[lang].s6-home .s6-hero h1 {
	font-weight: 700;
}

/* Optional premium treatment for the final sentence of dark market heroes. */
.rg-market-hero-gradient-line {
	display: block;
	background: var(
		--rg-market-title-gradient,
		linear-gradient(100deg, #5de4ff, #7b8cff 52%, #bd7ff0)
	);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	-webkit-text-fill-color: transparent;
}

@media (forced-colors: active) {
	.rg-market-hero-gradient-line {
		background: none;
		color: CanvasText;
		-webkit-text-fill-color: currentColor;
	}
}

/* Major page-section display H2 contract. Editorial article subheads are an
 * intentional reading-role exception and remain owned by rg-editorial.css. */
:is(
	#path-title,
	#markets-title,
	#platform-title,
	#copy-title,
	#player-title,
	#learn-hub-title,
	#trust-title,
	#final-cta-title,
	.s6-copy-journey h2,
	.s6-faq > header h2,
	.rg-market-shell h2[id],
	.rg-market-related h2,
	.rg-market-faq h2,
	.rg-market-final h2,
	.rg-markets-overview h2[id],
	.rg-account-heading h2,
	.rg-account-pro h2,
	.rg-account-final h2,
	.rg-platform-page h2[id],
	#rg-why-pillars-title,
	#rg-why-environment-title,
	#rg-why-accounts-title,
	#rg-why-platforms-title,
	#rg-why-bento-title,
	#rg-why-trust-title,
	#rg-why-faq-title,
	#rg-why-final-title
	,#rg-copy-leaderboard-title
	,#rg-copy-metric-trail-title
	,#rg-copy-scale-title
	,#rg-copy-why-title
	,#rg-copy-satisfaction-title
	,#rg-copy-journey-title
	,#rg-copy-leagues-title
	,#rg-copy-activity-title
	,#rg-copy-risk-title
	,#rg-copy-provider-title
	,#rg-copy-trust-title
	,#rg-copy-final-title
	,#rg-copy-detail-section-title
	,#rg-copy-provider-grid-title
	,#rg-copy-profile-data-title
	,#rg-how-map-title
	,#rg-how-simulator-title
	,#rg-how-timeline-title
	,#rg-how-money-title
	,#rg-how-risk-title
	,#rg-how-freedom-title
	,#rg-how-faq-title
	,#rg-how-final-title
	,.rg-copy-detail-system h2
	,.rg-copy-detail-final h2
	,.rg-copy-profile .rg-copy-final h2
	,#rg-promo-discovery-title
	,#rg-promo-matcher-title
	,#rg-promo-process-title
	,#rg-promo-pipeline-title
	,#rg-promo-trust-title
	,#rg-promo-faq-title
	,#rg-offers-objectives-title
	,#rg-offers-catalogue-title
	,#rg-offers-path-title
	,#rg-offers-faq-title
	,#rg-offers-final-title
	,#rg-partner-selector-title
	,#rg-partner-catalogue-title
	,#rg-partner-path-title
	,#rg-partner-governance-title
	,#rg-partner-faq-title
	,#rg-partner-final-title
	,#rg-if-benefits-title
	,#rg-if-comparison-title
	,#rg-if-mechanism-title
	,#rg-if-onboarding-title
	,#rg-if-assurance-title
	,#rg-if-faq-title
	,#rg-if-final-title
	,#rg-dr-intro-title
	,#rg-dr-builder-title
	,#rg-dr-selected-title
	,#rg-dr-timeline-title
	,#rg-dr-eligibility-title
	,#rg-dr-assurance-title
	,#rg-dr-faq-title
	,#rg-dr-final-title
) {
	font-size: var(--rg-type-display-h2);
	font-weight: 600;
	line-height: var(--rg-leading-display-h2);
	letter-spacing: var(--rg-tracking-display-h2);
	overflow-wrap: normal;
	text-wrap: balance;
	word-break: normal;
}

.rg-fit-heading {
	overflow-wrap: normal;
	text-wrap: balance;
	word-break: normal;
}

.s6-shell[lang].rg-content-page .rg-content-page__inner {
	display: grid;
	gap: 32px;
}

.s6-shell[lang].rg-content-page .rg-entry > h2 {
	margin: 0 0 20px;
	font-size: var(--rg-type-h3);
	font-weight: 600;
	line-height: 1.12;
	letter-spacing: -.025em;
}

.rg-heading-line,
.rg-heading-sentence {
	display: block;
}

/* Simplified Chinese headings keep punctuation with its phrase and use the
 * browser's phrase-aware breaker when available. Sentence spans remain the
 * author-controlled first choice for display copy. */
.s6-shell[lang^="zh"] :is(h1, h2, h3, .rg-fit-heading, .rg-heading-sentence) {
	line-break: strict;
	word-break: normal;
	text-wrap: balance;
}

.s6-shell[lang^="zh"] h3 {
	line-height: 1.3;
	letter-spacing: .01em;
}

@supports (word-break: auto-phrase) {
	.s6-shell[lang^="zh"] :is(h1, h2, h3, .rg-fit-heading, .rg-heading-sentence) {
		word-break: auto-phrase;
	}
}

:lang(zh) .rg-zh-phrase {
	display: inline-block;
	white-space: nowrap;
}

@media (min-width: 769px) {
	.s6-shell[lang^="zh"] .rg-rockcopy-hero__copy h1 {
		font-size: 64px;
	}
}

/* Reusable decorative text treatment. The parent supplies its text content;
 * this utility owns only the clipped gradient and motion behavior. */
.rg-animated-gradient-text {
	color: transparent;
	-webkit-text-fill-color: transparent;
	background-image: var(--rg-gradient-text);
	background-position: 0% 50%;
	background-repeat: no-repeat;
	background-size: 260% 100%;
	-webkit-background-clip: text;
	background-clip: text;
	will-change: background-position;
	animation: rg-gradient-text-shift var(--rg-gradient-text-duration) ease-in-out infinite alternate;
}

@keyframes rg-gradient-text-shift {
	0% { background-position: 0% 50%; }
	50% { background-position: 58% 50%; }
	100% { background-position: 100% 50%; }
}

/* Hero fold and fact-callout contract. */
.rg-hero-fold {
	--rg-hero-fact-columns: 4;
	--rg-hero-fact-height: 132px;
	position: relative;
}

.rg-hero-fact-rail {
	position: relative;
	z-index: 6;
	width: 100%;
	margin: 0;
	padding: 0;
	border-top: 1px solid rgba(124, 160, 207, .2);
	border-bottom: 1px solid rgba(124, 160, 207, .18);
	border-radius: 0;
	background: transparent;
	-webkit-backdrop-filter: none;
	backdrop-filter: none;
	box-shadow: none;
}

.rg-hero-fold > .rg-hero-fact-rail {
	position: absolute;
	inset: auto 0 0;
}

/* The compact Pro template keeps its rail inside the hero element. */
.rg-ad-hero.rg-hero-fold > .rg-account-container {
	position: static;
}

.rg-ad-hero.rg-hero-fold > .rg-account-container > .rg-ad-hero__grid {
	position: relative;
	z-index: 1;
}

.rg-ad-hero.rg-hero-fold .rg-hero-fact-rail {
	position: absolute;
	inset: auto auto 0 50%;
	width: min(var(--rg-content-max), calc(100% - (var(--rg-page-gutter) * 2)));
	transform: translateX(-50%);
}

.rg-hero-fact-grid {
	display: grid;
	grid-template-columns: repeat(var(--rg-hero-fact-columns), minmax(0, 1fr));
	width: min(var(--rg-content-max), calc(100% - (var(--rg-page-gutter) * 2)));
	min-height: var(--rg-hero-fact-height);
	margin: 0 auto;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	overflow: visible;
}

.rg-hero-fact-grid--five {
	--rg-hero-fact-columns: 5;
}

.rg-hero-fact-grid > .rg-hero-fact-item {
	position: relative;
	min-width: 0;
	min-height: var(--rg-hero-fact-height);
	padding: 24px 30px;
	border: 0;
}

/* Canonical icon/value/description arrangement for hero fact callouts. */
.rg-hero-fact-grid > .rg-hero-fact-item--icon {
	display: grid;
	grid-template-columns: 44px minmax(0, 1fr);
	grid-template-rows: auto auto;
	column-gap: 16px;
	align-content: center;
	align-items: center;
}

.rg-hero-fact-grid > .rg-hero-fact-item--icon > .rg-hero-fact-icon {
	grid-row: 1 / 3;
	display: grid;
	place-items: center;
	width: 44px;
	height: 44px;
	border: 1px solid rgba(112, 230, 255, .27);
	border-radius: var(--rg-radius-lg);
	background: rgba(112, 230, 255, .08);
	color: var(--rg-theme-accent, #70e6ff);
}

.rg-hero-fact-grid > .rg-hero-fact-item--icon > .rg-hero-fact-icon svg {
	width: 20px;
	height: 20px;
}

.rg-hero-fact-grid > .rg-hero-fact-item--icon > :is(.rg-hero-fact-value, .rg-hero-fact-description) {
	grid-column: 2;
}

.rg-hero-fact-grid > .rg-hero-fact-item:first-child {
	padding-left: 0;
}

.rg-hero-fact-grid > .rg-hero-fact-item:last-child {
	padding-right: 0;
}

.rg-hero-fact-grid > .rg-hero-fact-item:not(:last-child)::after {
	position: absolute;
	top: 22px;
	right: 0;
	bottom: 22px;
	width: 1px;
	background: rgba(155, 178, 217, .2);
	content: "";
	pointer-events: none;
}

@media (min-width: 1181px) {
	.rg-market-hero-balance {
		transform: translateY(var(--rg-market-hero-lift, -24px));
	}

	.rg-market-hero-balance :is(
		.rg-market-eyebrow,
		.rg-metals-eyebrow,
		.rg-crypto-eyebrow,
		.rg-energy-eyebrow,
		.rg-indices-eyebrow,
		.rg-stocks-eyebrow,
		.rg-overview-eyebrow
	) {
		margin-top: 0;
	}

	.rg-hero-fold {
		height: calc(100svh - var(--wp-admin--admin-bar--height, 0px));
		min-height: 0;
		overflow: hidden;
	}

	.rg-hero-fold > :is(section, header):first-child {
		box-sizing: border-box;
		height: 100%;
		min-height: 0;
		padding-bottom: calc(var(--rg-hero-fact-height) + 32px);
	}

	.rg-hero-fold > .rg-mt4-hero {
		margin-top: 0;
	}

	.rg-ad-hero.rg-hero-fold {
		height: calc(100svh - var(--wp-admin--admin-bar--height, 0px));
		min-height: 0;
		padding-bottom: calc(var(--rg-hero-fact-height) + 32px);
	}
}

/* Tall tablet/desktop heroes may balance a dense copy column independently
 * from an already-correct visual card. The page owns only the offset token. */
@media (min-width: 901px) and (min-height: 821px) {
	.rg-market-hero-balance > :is(
		.rg-market-hero__copy,
		.rg-metals-hero__copy,
		.rg-crypto-hero__copy,
		.rg-energy-hero__copy,
		.rg-indices-hero__copy,
		.rg-stocks-hero__copy,
		.rg-overview-hero__copy,
		.rg-provider-hero__copy
	) {
		transform: translateY(var(--rg-market-hero-copy-shift, 0));
	}
}

/* Preserve the first-fold composition on compact desktop canvases. This is
 * the approved dynamic H1 downscale rather than a separate page-size token. */
@media (min-width: 1181px) and (max-width: 1439px),
	(min-width: 1181px) and (max-height: 820px) {
	.rg-hero-fold {
		--rg-hero-fact-height: 112px;
	}

	.s6-shell[lang] .rg-market-hero-balance h1 {
		font-size: clamp(64px, 5vw, 72px);
		line-height: 1;
	}
}

@media (max-width: 1180px) {
	.rg-hero-fold {
		--rg-hero-fact-height: 112px;
		--rg-hero-fact-stack-height: 224px;
	}

	.rg-hero-fold:has(.rg-hero-fact-grid--five) {
		--rg-hero-fact-stack-height: 336px;
	}

	.rg-hero-fold > :is(section, header):first-child,
	.rg-ad-hero.rg-hero-fold {
		box-sizing: border-box;
		padding-bottom: calc(var(--rg-hero-fact-stack-height) + 24px);
	}

	.rg-hero-fact-grid {
		width: min(var(--rg-content-max), calc(100% - (var(--rg-page-gutter) * 2)));
	}
}

@media (max-width: 900px) {
	.rg-hero-fact-grid,
	.rg-hero-fact-grid--five {
		--rg-hero-fact-columns: 2;
	}

	.rg-hero-fact-grid > .rg-hero-fact-item:first-child {
		padding-left: 24px;
	}

	.rg-hero-fact-grid > .rg-hero-fact-item:last-child {
		padding-right: 24px;
	}

	.rg-hero-fact-grid > .rg-hero-fact-item::after {
		display: none;
	}
}

@media (max-width: 640px) {
	.rg-hero-fold {
		--rg-hero-fact-height: 92px;
		--rg-hero-fact-stack-height: 368px;
	}

	.rg-hero-fold:has(.rg-hero-fact-grid--five) {
		--rg-hero-fact-stack-height: 460px;
	}

	.rg-hero-fact-grid,
	.rg-hero-fact-grid--five {
		--rg-hero-fact-columns: 1;
	}

	.rg-hero-fact-grid > .rg-hero-fact-item {
		padding: 20px 24px;
	}
}

/* Market fact typography contract. */
.rg-market-facts__inner > div p {
	min-width: 0;
}

.rg-market-facts__inner > div strong,
.rg-market-fact__value,
.rg-hero-fact-grid > .rg-hero-fact-item .rg-hero-fact-value {
	font-size: 24px;
	font-weight: 700;
	line-height: 1.2;
	white-space: nowrap;
}

.rg-market-facts__inner > div small,
.rg-market-fact__description,
.rg-hero-fact-grid > .rg-hero-fact-item .rg-hero-fact-description {
	display: block;
	min-width: 0;
	overflow: visible;
	font-size: 14px;
	line-height: 1.4;
	text-overflow: clip;
	white-space: nowrap;
}

/* Shared post-fact breadcrumb region. Hero templates must not own breadcrumbs. */
.rg-breadcrumb-region {
	width: 100%;
	border-top: 1px solid rgba(124, 160, 207, .16);
	border-bottom: 1px solid rgba(124, 160, 207, .18);
	background: #06142d;
	color: #9fadc2;
}

.rg-breadcrumb-region__inner {
	width: min(var(--rg-content-max), calc(100% - (var(--rg-page-gutter) * 2)));
	margin-inline: auto;
}

.rg-breadcrumb-region ol {
	display: flex;
	align-items: center;
	min-height: 64px;
	gap: 0;
	margin: 0;
	padding: 0;
	list-style: none;
	overflow-x: auto;
}

.rg-breadcrumb-region li {
	display: inline-flex;
	align-items: center;
	min-width: 0;
	font-size: 14px;
	font-weight: 650;
	line-height: 1.4;
	white-space: nowrap;
}

.rg-breadcrumb-region li + li::before {
	width: 7px;
	height: 7px;
	margin: 0 14px;
	border-top: 1.5px solid #647994;
	border-right: 1.5px solid #647994;
	content: "";
	transform: rotate(45deg);
}

.rg-breadcrumb-region a {
	color: var(--rg-link-dark);
	text-decoration: none;
	transition: color var(--rg-hover-duration) ease;
}

.rg-breadcrumb-region a:is(:hover, :focus-visible) {
	color: var(--rg-link-dark-hover);
	text-decoration: underline;
	text-decoration-thickness: 2px;
	text-underline-offset: 4px;
}

.rg-breadcrumb-region [aria-current="page"] {
	color: #fff;
	font-weight: 700;
}

/* Shared control geometry. */
.s6-shell[lang] .s6-cta {
	min-height: 56px;
	padding-inline: 24px;
	border-radius: var(--rg-radius-md);
	font-size: 16px;
	font-weight: 700;
	line-height: 1.2;
}

.s6-shell :is(a, button, input, select, textarea, summary):focus-visible {
	outline: 3px solid var(--rg-focus-color);
	outline-offset: 3px;
}

/* Shared interaction states. This last-loaded layer prevents parent-theme
 * pink/navy defaults from leaking into components without a local state. */
.s6-shell[lang] :is(
	.s6-footer-support a,
	.rg-library-card__link,
	.rg-text-link,
	.rg-driver-grid a,
	.rg-market-related .rg-market-section-head a,
	.rg-metal-instrument button
) {
	transition:
		color var(--rg-hover-duration) ease,
		border-color var(--rg-hover-duration) ease,
		background-color var(--rg-hover-duration) ease,
		transform var(--rg-hover-duration) ease;
}

.s6-shell[lang] .s6-footer-support a {
	color: var(--rg-link-dark);
}

.s6-shell[lang] .s6-footer-support a:is(:hover, :focus-visible) {
	color: var(--rg-link-dark-hover);
	text-decoration: underline;
	text-decoration-thickness: 2px;
	text-underline-offset: 4px;
}

.s6-shell[lang] .s6-footer-support a:is(:hover, :focus-visible) svg {
	transform: translate(2px, -2px);
}

.s6-shell[lang] .rg-mt5-walkthrough__tabs button {
	transition:
		background var(--rg-hover-duration) ease,
		box-shadow var(--rg-hover-duration) ease,
		color var(--rg-hover-duration) ease;
}

.s6-shell[lang] .rg-mt5-walkthrough__tabs button:not([aria-selected="true"]):is(:hover, :focus-visible) {
	background: var(--rg-hover-dark-surface);
	color: var(--rg-hover-dark-ink);
	box-shadow: inset 0 0 0 1px var(--rg-hover-dark-border);
}

.s6-shell[lang] .rg-mt5-walkthrough__tabs button[aria-selected="true"]:is(:hover, :focus-visible) {
	background: var(--rg-hover-dark-strong);
	color: var(--rg-hover-dark-ink);
	box-shadow:
		inset 0 -3px var(--rg-theme-accent),
		inset 0 0 0 1px var(--rg-hover-dark-border);
}

/* Shared content width and vertical rhythm. */
.s6-shell[lang] :is(
	.rg-market-contained,
	.rg-platform-contained,
	.rg-account-container,
	.rg-mobile-wrap,
	.rg-overview-contained
) {
	width: min(var(--rg-content-max), calc(100% - (var(--rg-page-gutter) * 2)));
	margin-inline: auto;
}

.s6-shell[lang] :is(.rg-market-section, .rg-platform-section, .rg-account-section) {
	padding-block: var(--rg-section-space);
}

/* Approved compact-desktop density system.
 *
 * This is a structural 90% treatment rather than CSS zoom: full-bleed
 * backgrounds remain full width, readable body/control sizes are preserved,
 * and only the desktop content grid, display hierarchy, large illustrations
 * and section rhythm are tightened. Tablet and mobile continue to use their
 * existing responsive contracts below. */
@media (min-width: 1181px) {
	.s6-shell[lang] :is(
		.s6-hero-inner,
		.s6-ticker-wrap,
		.s6-paths-inner,
		.s6-markets-inner,
		.s6-platform-inner,
		.s6-platform-duo-inner,
		.s6-copy-inner,
		.s6-copy-journey-inner,
		.s6-player-inner,
		.s6-learn-hub-inner,
		.s6-trust-inner,
		.s6-final-inner,
		.s6-footer-inner,
		.rg-market-hero__inner,
		.rg-metals-hero__inner,
		.rg-crypto-hero__inner,
		.rg-energy-hero__inner,
		.rg-indices-hero__inner,
		.rg-stocks-hero__inner,
		.rg-market-contained,
		.rg-market-related__inner,
		.rg-market-faq__inner,
		.rg-market-final__inner,
		.rg-forex-learning__inner,
		.rg-forex-pricing__inner,
		.rg-forex-rockcopy__inner,
		.rg-overview-contained,
		.rg-platform-contained,
		.rg-mobile-wrap,
		.rg-account-container,
		.rg-pf-container,
		.rg-tools-container,
		.rg-promo-container,
		.rg-dr-container,
		.rg-tj-container,
		.rg-ca-container,
		.rg-copy-container,
		.rg-rockcopy-hero__grid,
		.rg-why-container,
		.rg-company-container,
		.rg-support-container,
		.rg-ec-container,
		.rg-vault-hero__inner,
		.rg-vault-layout,
		.rg-article-hero__inner,
		.rg-article-layout,
		.rg-related__inner,
		.rg-editorial-cta__inner,
		.rg-library-hero__inner,
		.rg-library-types,
		.rg-library-feature,
		.rg-library-latest,
		.rg-library-markets,
		.rg-library-path,
		.rg-archive-results,
		.rg-archive-hero > div
	) {
		max-width: var(--rg-content-max);
		margin-inline: auto;
	}

	/* Hero variants not covered by the original shared selector consume the
	 * same desktop display role after the approved scale change. */
	.s6-shell[lang] :is(
		.rg-tools-hero,
		.rg-ec-hero,
		.rg-support-hero,
		.rg-vault-hero,
		.rg-company-hero,
		.rg-provider-hero,
		.rg-how-hero,
		.rg-risk-hero,
		.rg-copy-detail-hero,
		.rg-pf-hero,
		.rg-rs-hero,
		.rg-tgi-hero,
		.rg-offers-hero,
		.rg-partner-hero
	) h1 {
		font-size: var(--rg-type-display-h1);
		font-weight: 600;
		line-height: var(--rg-leading-display-h1);
		letter-spacing: var(--rg-tracking-display-h1);
		text-wrap: balance;
	}

	.rg-economic-calendar {
		--rg-content-max: 1320px;
	}

	/* Homepage geometry approved in the comparison prototype. */
	.s6-home .s6-hero h1 {
		font-size: var(--rg-type-display-h1);
	}

	.s6-home .s6-hero-inner {
		grid-template-columns: minmax(0, .98fr) minmax(480px, 1.02fr);
		gap: 56px;
	}

	.s6-home .s6-hero-copy > p {
		font-size: var(--rg-type-body-lg);
	}

	.s6-home .s6-actions {
		margin-top: 30px;
	}

	.s6-home .s6-benefits {
		margin-top: 40px;
		padding-top: 23px;
	}

	.s6-home .s6-visual {
		min-height: 620px;
	}

	.s6-home .s6-market-card {
		width: 520px;
		padding: 24px;
		border-radius: 26px;
	}

	.s6-home .s6-profile-card {
		width: 340px;
		padding: 17px;
	}

	.s6-home :is(
		.s6-paths-head,
		.s6-markets-head,
		.s6-platform-head,
		.s6-copy-head,
		.s6-copy-journey header,
		.s6-player-copy,
		.s6-trust-head,
		.s6-platform-duo-head,
		.s6-learn-hub-head,
		.s6-final-inner
	) h2 {
		font-size: var(--rg-type-display-h2);
		line-height: var(--rg-leading-display-h2);
		letter-spacing: var(--rg-tracking-display-h2);
	}

	.s6-home .s6-paths { padding-block: 108px; }
	.s6-home .s6-markets { padding-block: 106px; }

	.s6-home :is(.s6-platform-duo, .s6-learn-hub, .s6-copy-journey) {
		padding-block: 94px;
	}

	.s6-home :is(.s6-copy-inner, .s6-trust-inner) {
		padding-block: 100px;
	}

	.s6-home :is(
		.s6-paths-head,
		.s6-markets-head,
		.s6-platform-head,
		.s6-copy-journey header,
		.s6-trust-head,
		.s6-platform-duo-head,
		.s6-learn-hub-head
	) {
		gap: 72px;
	}

	/* The approved Indices comparison remains the reference market density. */
	.rg-market-shell--indices .rg-indices-hero h1 {
		font-size: var(--rg-type-display-h1);
		line-height: 1;
	}

	.rg-market-shell--indices .rg-indices-hero__inner {
		grid-template-columns: minmax(0, 1.15fr) minmax(430px, .85fr);
		gap: 54px;
		padding-top: 124px;
	}

	.rg-market-shell--indices .rg-indices-hero__deck {
		max-width: 700px;
		margin-top: 26px;
		font-size: var(--rg-type-body-lg);
	}

	.rg-market-shell--indices .rg-indices-hero__actions { margin-top: 30px; }

	.rg-market-shell--indices .rg-indices-pulse {
		width: min(490px, 100%);
		padding: 23px;
		border-radius: 28px;
	}

	.rg-market-shell--indices .rg-indices-pulse__visual { height: 212px; }

	.rg-market-shell--indices :is(
		.rg-market-section-head h2,
		.rg-indices-anatomy__copy h2,
		.rg-indices-breadth__copy h2,
		.rg-indices-character__copy h2,
		.rg-indices-forces__copy h2,
		.rg-indices-outcome__copy h2,
		.rg-indices-platform__copy h2
	) {
		font-size: var(--rg-type-display-h2);
		line-height: var(--rg-leading-display-h2);
		letter-spacing: var(--rg-tracking-display-h2);
	}

	.rg-market-shell--indices :is(
		.rg-market-section-head > p,
		.rg-indices-anatomy__copy > p,
		.rg-indices-breadth__copy > p,
		.rg-indices-character__copy > p,
		.rg-indices-forces__copy > p,
		.rg-indices-outcome__copy > p,
		.rg-indices-platform__copy > p
	) {
		font-size: var(--rg-type-body-lg);
	}

	/* RockCopy overview keeps its bespoke illustration compact while all other
	 * RockCopy routes inherit the same global grid and typography tokens. */
	.rg-rockcopy-page .rg-rockcopy-hero h1 {
		font-size: var(--rg-type-display-h1);
	}

	.rg-rockcopy-page--overview .rg-rockcopy-hero {
		padding: 106px 0 148px;
	}

	.rg-rockcopy-page--overview .rg-rockcopy-hero__lead {
		font-size: var(--rg-type-body-lg);
	}

	.rg-rockcopy-page--overview .rg-rockcopy-hero__stack {
		width: min(100%, 560px);
		min-height: 470px;
	}

	.rg-rockcopy-page--overview .rg-rockcopy-hero__console {
		width: min(100%, 520px);
	}

	/* Editorial and utility pages previously used fixed 112–126px spacing. */
	.s6-shell[lang] :is(
		.rg-related,
		.rg-library-feature,
		.rg-library-latest,
		.rg-library-markets,
		.rg-library-path,
		.rg-archive-results,
		.rg-vault-body
	) {
		padding-block: var(--rg-section-space);
	}
}

@media (max-width: 1180px) {
	:root {
		--rg-page-gutter: 24px;
		--rg-section-space: 88px;
		--rg-section-space-compact: 64px;
	}

	.s6-shell[lang] :is(
		.s6-hero,
		.rg-market-hero,
		.rg-metals-hero,
		.rg-crypto-hero,
		.rg-energy-hero,
		.rg-indices-hero,
		.rg-stocks-hero,
		.rg-overview-hero,
		.rg-account-hero,
		.rg-ad-hero,
		.rg-mt5-hero,
		.rg-mobile-hero,
		.rg-ph-hero,
		.rg-tools-hero,
		.rg-pf-hero,
		.rg-article-hero,
		.rg-library-hero,
		.rg-archive-hero,
		.rg-why-hero,
		.rg-rockcopy-hero,
		.rg-copy-profile-hero,
		.rg-promo-hero,
		.rg-promo-detail__hero,
		.rg-if-hero
		,.rg-dr-hero
		,.rg-tj-hero
		,.rg-ca-hero
	) h1,
	.s6-shell[lang] .rg-entry__header h1,
	.s6-shell[lang].rg-content-page .rg-entry > h1 {
		font-size: var(--rg-responsive-display-h1, clamp(56px, 7vw, 72px));
	}

	.s6-shell[lang] :is(
		#path-title,
		#markets-title,
		#platform-title,
		#copy-title,
		#player-title,
		#learn-hub-title,
		#trust-title,
		#final-cta-title,
		.s6-copy-journey h2,
		.s6-faq > header h2,
		.rg-market-shell h2[id],
		.rg-market-related h2,
		.rg-market-faq h2,
		.rg-market-final h2,
		.rg-markets-overview h2[id],
		.rg-account-heading h2,
		.rg-account-pro h2,
		.rg-account-final h2,
		.rg-platform-page h2[id],
		.rg-trading-tools h2[id],
		.rg-pf-heading h2,
		.rg-pf-questions h2,
		.rg-pf-final h2,
		#rg-why-pillars-title,
		#rg-why-environment-title,
		#rg-why-accounts-title,
		#rg-why-platforms-title,
		#rg-why-bento-title,
		#rg-why-trust-title,
		#rg-why-faq-title,
		#rg-why-final-title,
		#rg-copy-leaderboard-title,
		#rg-copy-metric-trail-title,
		#rg-copy-scale-title,
		#rg-copy-why-title,
		#rg-copy-satisfaction-title,
		#rg-copy-journey-title,
		#rg-copy-leagues-title,
		#rg-copy-activity-title,
		#rg-copy-risk-title,
		#rg-copy-provider-title,
		#rg-copy-trust-title,
		#rg-copy-final-title,
		#rg-copy-detail-section-title,
		#rg-copy-provider-grid-title,
		#rg-copy-profile-data-title,
		.rg-copy-detail-system h2,
		.rg-copy-detail-final h2,
		.rg-copy-profile .rg-copy-final h2,
		#rg-promo-discovery-title,
		#rg-promo-matcher-title,
		#rg-promo-process-title,
		#rg-promo-pipeline-title,
		#rg-promo-trust-title,
		#rg-promo-faq-title,
		#rg-offers-objectives-title,
		#rg-offers-catalogue-title,
		#rg-offers-path-title,
		#rg-offers-faq-title,
		#rg-offers-final-title,
		#rg-partner-selector-title,
		#rg-partner-catalogue-title,
		#rg-partner-path-title,
		#rg-partner-governance-title,
		#rg-partner-faq-title,
		#rg-partner-final-title,
		#rg-if-benefits-title,
		#rg-if-comparison-title,
		#rg-if-mechanism-title,
		#rg-if-onboarding-title,
		#rg-if-assurance-title,
		#rg-if-faq-title,
		#rg-if-final-title
		,#rg-dr-intro-title
		,#rg-dr-builder-title
		,#rg-dr-selected-title
		,#rg-dr-timeline-title
		,#rg-dr-eligibility-title
		,#rg-dr-assurance-title
		,#rg-dr-faq-title
		,#rg-dr-final-title
	) {
		font-size: var(--rg-responsive-display-h2, clamp(48px, 6vw, 64px));
	}

	.s6-shell[lang^="zh"] {
		--rg-responsive-display-h1: clamp(48px, 6vw, 62px);
		--rg-responsive-display-h2: clamp(42px, 5.4vw, 56px);
	}
}

@media (max-width: 640px) {
	:root {
		--rg-page-gutter: 18px;
		--rg-section-space: 64px;
		--rg-section-space-compact: 48px;
	}

	.s6-shell[lang] :is(
		.s6-hero,
		.rg-market-hero,
		.rg-metals-hero,
		.rg-crypto-hero,
		.rg-energy-hero,
		.rg-indices-hero,
		.rg-stocks-hero,
		.rg-overview-hero,
		.rg-account-hero,
		.rg-ad-hero,
		.rg-mt4-hero,
		.rg-mt5-hero,
		.rg-mobile-hero,
		.rg-ph-hero,
		.rg-article-hero,
		.rg-library-hero,
		.rg-archive-hero,
		.rg-why-hero,
		.rg-rockcopy-hero,
		.rg-copy-profile-hero,
		.rg-promo-hero,
		.rg-promo-detail__hero,
		.rg-if-hero
		,.rg-dr-hero
		,.rg-tj-hero
		,.rg-ca-hero
	) h1,
	.s6-shell[lang] .rg-entry__header h1,
	.s6-shell[lang].rg-content-page .rg-entry > h1 {
		font-size: var(--rg-responsive-display-h1, clamp(42px, 13vw, 52px));
	}

	.s6-shell[lang] :is(
		#path-title,
		#markets-title,
		#platform-title,
		#copy-title,
		#player-title,
		#learn-hub-title,
		#trust-title,
		#final-cta-title,
		.s6-copy-journey h2,
		.s6-faq > header h2,
		.rg-market-shell h2[id],
		.rg-market-related h2,
		.rg-market-faq h2,
		.rg-market-final h2,
		.rg-markets-overview h2[id],
		.rg-account-heading h2,
		.rg-account-pro h2,
		.rg-account-final h2,
		.rg-platform-page h2[id],
		#rg-why-pillars-title,
		#rg-why-environment-title,
		#rg-why-accounts-title,
		#rg-why-platforms-title,
		#rg-why-bento-title,
		#rg-why-trust-title,
		#rg-why-faq-title,
		#rg-why-final-title,
		#rg-copy-leaderboard-title,
		#rg-copy-metric-trail-title,
		#rg-copy-scale-title,
		#rg-copy-why-title,
		#rg-copy-satisfaction-title,
		#rg-copy-journey-title,
		#rg-copy-leagues-title,
		#rg-copy-activity-title,
		#rg-copy-risk-title,
		#rg-copy-provider-title,
		#rg-copy-trust-title,
		#rg-copy-final-title,
		#rg-copy-detail-section-title,
		#rg-copy-provider-grid-title,
		#rg-copy-profile-data-title,
		.rg-copy-detail-system h2,
		.rg-copy-detail-final h2,
		.rg-copy-profile .rg-copy-final h2,
		#rg-promo-discovery-title,
		#rg-promo-matcher-title,
		#rg-promo-process-title,
		#rg-promo-pipeline-title,
		#rg-promo-trust-title,
		#rg-promo-faq-title,
		#rg-offers-objectives-title,
		#rg-offers-catalogue-title,
		#rg-offers-path-title,
		#rg-offers-faq-title,
		#rg-offers-final-title,
		#rg-partner-selector-title,
		#rg-partner-catalogue-title,
		#rg-partner-path-title,
		#rg-partner-governance-title,
		#rg-partner-faq-title,
		#rg-partner-final-title,
		#rg-if-benefits-title,
		#rg-if-comparison-title,
		#rg-if-mechanism-title,
		#rg-if-onboarding-title,
		#rg-if-assurance-title,
		#rg-if-faq-title,
		#rg-if-final-title
		,#rg-dr-intro-title
		,#rg-dr-builder-title
		,#rg-dr-selected-title
		,#rg-dr-timeline-title
		,#rg-dr-eligibility-title
		,#rg-dr-assurance-title
		,#rg-dr-faq-title
		,#rg-dr-final-title
	) {
		font-size: var(--rg-responsive-display-h2, clamp(36px, 11vw, 44px));
	}

	.s6-shell[lang^="zh"] {
		--rg-responsive-display-h1: clamp(40px, 11vw, 46px);
		--rg-responsive-display-h2: clamp(34px, 9.5vw, 40px);
		--rg-leading-display-h1: 1.14;
		--rg-leading-display-h2: 1.18;
	}

	.s6-shell[lang] .s6-cta {
		width: 100%;
		justify-content: center;
	}

	/* Mobile actions should never preserve desktop's two-column minimum width. */
	.s6-shell[lang] .s6-actions {
		grid-template-columns: minmax(0, 1fr);
	}

	.s6-shell[lang] .s6-actions > .s6-cta {
		min-width: 0;
		white-space: normal;
		text-align: center;
	}

	/* Decorative live-market chrome and repeated campaign/cross-sell modules
	 * add length without helping the primary mobile task. */
	.s6-home .s6-ticker-wrap,
	.s6-home .s6-profile-card,
	.s6-home .s6-player,
	.rg-market-shell .rg-market-related {
		display: none;
	}

	.rg-account-section--infra .rg-infra-map {
		display: none;
	}

	.rg-account-section--infra .rg-account-note {
		margin-top: 24px;
	}

	.s6-shell[lang] :is(.rg-market-facts__inner > div small, .rg-market-fact__description) {
		height: auto;
		min-height: 0;
		overflow: visible;
		white-space: normal;
		text-overflow: clip;
	}
}

/* Shared marketing-page question section: RockCopy How It Works is the source pattern. */
.rg-question-section {
	--rg-question-accent: #087f9d;
	--rg-question-ink: #07162f;
	--rg-question-muted: #53647e;
	--rg-question-card: rgba(255, 255, 255, .82);
	--rg-question-card-open: #fff;
	--rg-question-border: rgba(15, 67, 103, .14);
	--rg-question-border-active: rgba(8, 127, 157, .32);
	--rg-question-index-bg: #eaf9fc;
	--rg-question-icon-bg: #eaf9fc;
	--rg-question-shadow: 0 16px 38px rgba(8, 34, 66, .06);
	--rg-question-shadow-hover: 0 22px 46px rgba(8, 34, 66, .1);
	padding-block: var(--rg-section-space);
	background:
		radial-gradient(circle at 12% 8%, rgba(57, 205, 232, .12), transparent 24%),
		linear-gradient(155deg, #f0f7fb, #e7eef7 74%);
	color: var(--rg-question-ink);
}

.rg-question-container {
	box-sizing: border-box;
	display: grid;
	grid-template-columns: minmax(380px, 6fr) minmax(0, 6fr);
	align-items: start;
	gap: 80px;
	width: min(var(--rg-content-max), calc(100% - (2 * var(--rg-page-gutter))));
	margin-inline: auto;
}

.rg-question-intro {
	position: sticky;
	top: 120px;
	min-width: 0;
}

.rg-question-eyebrow {
	margin: 0;
	color: var(--rg-question-accent);
	font-size: var(--rg-type-eyebrow);
	font-weight: 800;
	letter-spacing: .1em;
	line-height: 1.25;
	text-transform: uppercase;
}

.rg-question-intro h2 {
	margin: 22px 0 0;
	color: var(--rg-question-ink);
	font-size: var(--rg-type-display-h2);
	font-weight: 600;
	letter-spacing: -.04em;
	line-height: var(--rg-leading-display-h2);
	text-wrap: balance;
}

.rg-question-intro h2 .rg-heading-sentence { display: block; }

.rg-question-intro-copy {
	max-width: 46ch;
	margin: 24px 0 0;
	color: var(--rg-question-muted);
	font-size: var(--rg-type-body);
	line-height: var(--rg-leading-body);
}

.rg-question-support {
	display: grid;
	grid-template-columns: 44px minmax(0, 1fr);
	gap: 12px;
	margin-top: 30px;
	padding: 20px;
	border: 1px solid var(--rg-question-border);
	border-radius: 20px;
	background: var(--rg-question-card);
	box-shadow: var(--rg-question-shadow);
}

.rg-question-support > span {
	display: grid;
	width: 44px;
	height: 44px;
	place-items: center;
	border-radius: 12px;
	background: var(--rg-question-index-bg);
	color: var(--rg-question-accent);
}

.rg-question-support > span svg { width: 22px; height: 22px; }
.rg-question-support > div { display: grid; gap: 3px; min-width: 0; }

.rg-question-support small,
.rg-question-support strong {
	font-size: var(--rg-type-body-sm);
	line-height: 1.4;
}

.rg-question-support small { color: var(--rg-question-muted); }

.rg-question-support a {
	grid-column: 2;
	display: inline-flex;
	width: max-content;
	align-items: center;
	gap: 7px;
	color: var(--rg-question-accent);
	font-size: var(--rg-type-body-sm);
	font-weight: 700;
	text-decoration: none;
}

.rg-question-support a svg {
	width: 16px;
	height: 16px;
	transition: transform var(--rg-hover-duration) ease;
}

.rg-question-support a:hover,
.rg-question-support a:focus-visible {
	color: var(--rg-question-link-hover, #045f77);
	text-decoration: underline;
	text-underline-offset: 4px;
}

.rg-question-support a:hover svg,
.rg-question-support a:focus-visible svg { transform: translate(2px, -2px); }

.rg-question-support a:focus-visible {
	outline: 3px solid var(--rg-question-accent);
	outline-offset: 3px;
}

.rg-question-list {
	display: grid;
	gap: 12px;
	min-width: 0;
}

.rg-question-list details {
	overflow: hidden;
	border: 1px solid var(--rg-question-border);
	border-radius: 20px;
	background: var(--rg-question-card);
	box-shadow: var(--rg-question-shadow);
	transition: border-color var(--rg-hover-duration) ease, box-shadow var(--rg-hover-duration) ease, transform var(--rg-hover-duration) ease, background-color var(--rg-hover-duration) ease;
}

.rg-question-list details:hover,
.rg-question-list details:focus-within {
	border-color: var(--rg-question-border-active);
	box-shadow: var(--rg-question-shadow-hover);
	transform: translateY(-2px);
}

.rg-question-list details[open] {
	border-color: var(--rg-question-border-active);
	background: var(--rg-question-card-open);
	transform: none;
}

.rg-question-list summary {
	display: grid;
	grid-template-columns: 42px minmax(0, 1fr) 32px;
	align-items: center;
	gap: 16px;
	min-height: 82px;
	padding: 14px 22px;
	color: var(--rg-question-ink);
	cursor: pointer;
	list-style: none;
}

.rg-question-list summary::-webkit-details-marker { display: none; }

.rg-question-list summary:focus-visible {
	outline: 3px solid var(--rg-question-accent);
	outline-offset: -4px;
}

.rg-question-list summary > span {
	display: grid;
	width: 40px;
	height: 40px;
	place-items: center;
	border-radius: 12px;
	background: var(--rg-question-index-bg);
	color: var(--rg-question-accent);
	font-size: var(--rg-type-body-sm);
	font-weight: 800;
}

.rg-question-list summary strong {
	min-width: 0;
	font-size: 18px;
	line-height: 1.35;
}

.rg-question-list summary i {
	display: grid;
	width: 32px;
	height: 32px;
	place-items: center;
	border: 1px solid var(--rg-question-border);
	border-radius: 50%;
	background: transparent;
	color: var(--rg-question-accent);
	font-style: normal;
	transition: transform var(--rg-hover-duration) ease, background-color var(--rg-hover-duration) ease;
}

.rg-question-list summary i svg { width: 17px; height: 17px; }

.rg-question-list details[open] summary i {
	background: var(--rg-question-icon-bg);
	transform: rotate(45deg);
}

.rg-question-list details > div { padding: 0 72px 24px 80px; }

.rg-question-list details > div p {
	margin: 0;
	color: var(--rg-question-muted);
	font-size: var(--rg-type-body);
	line-height: var(--rg-leading-body);
}

.rg-question-list details > div p + p { margin-top: 12px; }

.rg-question-section--dark {
	--rg-question-accent: #70e6ff;
	--rg-question-ink: #f7fbff;
	--rg-question-muted: #a7b5cc;
	--rg-question-card: rgba(11, 29, 66, .78);
	--rg-question-card-open: #10284f;
	--rg-question-border: rgba(112, 230, 255, .18);
	--rg-question-border-active: rgba(112, 230, 255, .52);
	--rg-question-index-bg: rgba(112, 230, 255, .1);
	--rg-question-icon-bg: rgba(112, 230, 255, .14);
	--rg-question-shadow: 0 18px 42px rgba(0, 0, 0, .16);
	--rg-question-shadow-hover: 0 24px 52px rgba(0, 0, 0, .24);
	--rg-question-link-hover: #fff;
	background:
		radial-gradient(circle at 12% 8%, rgba(57, 205, 232, .12), transparent 26%),
		radial-gradient(circle at 88% 22%, rgba(157, 131, 255, .12), transparent 28%),
		#061026;
}

@media (max-width: 1180px) {
	.rg-question-container { grid-template-columns: minmax(340px, 6fr) minmax(0, 6fr); gap: 46px; }
}

@media (max-width: 900px) {
	.rg-question-section { padding-block: 88px; }
	.rg-question-container { grid-template-columns: minmax(0, 1fr); }
	.rg-question-intro { position: static; }
}

@media (max-width: 640px) {
	.rg-question-section { padding-block: 64px; }
	.rg-question-container { width: calc(100% - 36px); gap: 32px; }
	.rg-question-intro h2 { font-size: clamp(36px, 11vw, 44px); }
	.rg-question-list summary { grid-template-columns: 38px minmax(0, 1fr) 30px; gap: 12px; min-height: 76px; padding: 12px; }
	.rg-question-list summary > span { width: 36px; height: 36px; }
	.rg-question-list summary strong { font-size: 16px; }
	.rg-question-list details > div { padding: 0 18px 20px 62px; }
}

/* Markets use one progressive, scroll-triggered fade language across the hub
 * and all dedicated market routes. Content stays visible until JavaScript opts
 * in, matching the RockCopy and Promotions accessibility contract. */
.rg-market-motion-ready [data-rg-market-reveal] {
	opacity: 0;
	transition: opacity 680ms cubic-bezier(.2, .75, .2, 1);
	transition-delay: calc(var(--rg-market-motion-order, 0) * 70ms);
}

.rg-market-motion-ready [data-rg-market-reveal].is-in-view {
	opacity: 1;
}

/* Shared MetaTrader RockCopy participation panel. */
@property --rg-platform-count {
	syntax: "<integer>";
	inherits: false;
	initial-value: 0;
}

@counter-style rg-platform-three-digit {
	system: numeric;
	symbols: "0" "1" "2" "3" "4" "5" "6" "7" "8" "9";
	pad: 3 "0";
}

.rg-platform-section.rg-platform-copy {
	background: radial-gradient(circle at 82% 18%, rgba(72, 123, 221, .24), transparent 34%), linear-gradient(135deg, #06142d, #0a2243 58%, #18133f);
	color: #fff;
}

.rg-platform-copy__inner {
	display: grid;
	grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
	gap: 64px;
	align-items: center;
}

.rg-platform-copy__copy,
.rg-platform-copy__dashboard {
	min-width: 0;
}

.rg-platform-copy__copy > small {
	color: #a998ff;
	font-size: 14px;
	font-weight: 800;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.rg-platform-copy__copy h2 {
	margin: 18px 0 22px;
	color: #fff;
	font-size: var(--rg-type-display-h2);
	font-weight: 600;
	letter-spacing: var(--rg-tracking-display-h2);
	line-height: var(--rg-leading-display-h2);
}

.rg-platform-copy__copy h2 span {
	display: block;
}

.rg-platform-copy__copy > p {
	max-width: 65ch;
	margin: 0;
	color: #aebdd2;
	font-size: 16px;
	line-height: 1.65;
}

.rg-platform-copy__copy ol {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
	margin: 30px 0;
	padding: 0;
	list-style: none;
}

.rg-platform-copy__copy li {
	padding: 16px;
	border: 1px solid #294765;
	border-radius: 16px;
	background: rgba(255, 255, 255, .045);
}

.rg-platform-copy__copy li > span {
	display: block;
	color: #63defb;
	font-size: 26px;
	font-weight: 800;
}

.rg-platform-copy__copy li strong {
	display: block;
	margin-top: 11px;
	font-size: 14px;
}

.rg-platform-copy__copy li small {
	display: block;
	margin-top: 4px;
	color: #aebdd2;
	font-size: 14px;
	line-height: 1.5;
}

.rg-platform-copy__dashboard {
	padding: 27px;
	border: 1px solid #285277;
	border-radius: 32px;
	background: linear-gradient(145deg, #07172f, #183761 72%, #2a1d5c);
	color: #fff;
	box-shadow: 0 28px 65px rgba(17, 40, 78, .25);
}

.rg-platform-copy__dashboard header {
	display: grid;
	grid-template-columns: 54px minmax(0, 1fr) auto;
	gap: 14px;
	align-items: center;
}

.rg-platform-copy__dashboard header img {
	width: 54px;
	height: 54px;
	border: 2px solid #62defd;
	border-radius: 16px;
	object-fit: cover;
	object-position: 50% 18%;
}

.rg-platform-copy__dashboard header div {
	display: flex;
	min-width: 0;
	flex-direction: column;
}

.rg-platform-copy__dashboard header small,
.rg-platform-copy__dashboard header span {
	color: #aebdd2;
	font-size: 14px;
}

.rg-platform-copy__dashboard header strong {
	font-size: 17px;
}

.rg-platform-copy__dashboard header > b {
	padding: 7px 11px;
	border: 1px solid #3e6a8e;
	border-radius: 999px;
	color: #64e0ff;
	font-size: 14px;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.rg-platform-copy__top {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
	margin-top: 22px;
}

.rg-platform-copy__top > div {
	padding: 20px;
	border: 1px solid #385677;
	border-radius: 16px;
	background: rgba(255, 255, 255, .05);
}

.rg-platform-copy__top strong {
	display: block;
	font-size: 39px;
	font-variant-numeric: tabular-nums;
}

.rg-platform-copy__top > div:first-child strong {
	color: #50e1ba;
}

.rg-platform-copy__top small {
	color: #aebdd2;
	font-size: 14px;
}

.rg-platform-copy-count {
	white-space: nowrap;
}

.rg-platform-copy-count__number {
	--rg-platform-count: var(--rg-platform-count-to);
	counter-reset: rg-platform-count var(--rg-platform-count);
}

.rg-platform-copy-count__number::after {
	content: counter(rg-platform-count);
}

.rg-platform-copy-count__number--three::after {
	content: counter(rg-platform-count, rg-platform-three-digit);
}

.rg-platform-copy__chart {
	display: flex;
	align-items: flex-end;
	gap: 7px;
	height: 155px;
	margin-top: 12px;
	padding: 24px 18px 0;
	border-radius: 16px;
	background: linear-gradient(rgba(83, 118, 181, .12) 1px, transparent 1px), linear-gradient(90deg, rgba(83, 118, 181, .12) 1px, transparent 1px), #06142b;
	background-size: 34px 34px;
}

.rg-platform-copy__chart i {
	flex: 1;
	height: var(--h);
	border-radius: 6px 6px 0 0;
	background: linear-gradient(#60e0ff, #5472df);
	transform-origin: center bottom;
}

.rg-platform-copy__chart i:nth-child(1) { --rg-platform-bar-index: 0; }
.rg-platform-copy__chart i:nth-child(2) { --rg-platform-bar-index: 1; }
.rg-platform-copy__chart i:nth-child(3) { --rg-platform-bar-index: 2; }
.rg-platform-copy__chart i:nth-child(4) { --rg-platform-bar-index: 3; }
.rg-platform-copy__chart i:nth-child(5) { --rg-platform-bar-index: 4; }
.rg-platform-copy__chart i:nth-child(6) { --rg-platform-bar-index: 5; }
.rg-platform-copy__chart i:nth-child(7) { --rg-platform-bar-index: 6; }
.rg-platform-copy__chart i:nth-child(8) { --rg-platform-bar-index: 7; }
.rg-platform-copy__chart i:nth-child(9) { --rg-platform-bar-index: 8; }
.rg-platform-copy__chart i:nth-child(10) { --rg-platform-bar-index: 9; }

.rg-platform-copy__dashboard dl {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	margin: 12px 0 0;
	border: 1px solid #385677;
	border-radius: 16px;
}

.rg-platform-copy__dashboard dl div {
	padding: 14px;
}

.rg-platform-copy__dashboard dl div + div {
	border-left: 1px solid #385677;
}

.rg-platform-copy__dashboard dt {
	color: #aebdd2;
	font-size: 14px;
}

.rg-platform-copy__dashboard dd {
	margin: 6px 0 0;
	font-size: 19px;
	font-weight: 800;
	font-variant-numeric: tabular-nums;
}

.rg-platform-copy__dashboard > p {
	margin: 14px 0 0;
	color: #aebdd2;
	font-size: 14px;
	line-height: 1.5;
}

@keyframes rg-platform-copy-bar-in {
	from { opacity: 0; transform: translateY(14px) scaleY(.08); }
	to { opacity: 1; transform: translateY(0) scaleY(1); }
}

@keyframes rg-platform-copy-count-in {
	from { --rg-platform-count: 0; }
	to { --rg-platform-count: var(--rg-platform-count-to); }
}

main.rg-platform-motion-ready .rg-platform-copy__dashboard.rg-platform-motion-reveal .rg-platform-copy__chart i {
	opacity: 0;
	transform: translateY(14px) scaleY(.08);
}

main.rg-platform-motion-ready .rg-platform-copy__dashboard.rg-platform-motion-reveal.is-in-view .rg-platform-copy__chart i {
	animation: rg-platform-copy-bar-in 560ms cubic-bezier(.2, .75, .2, 1) both;
	animation-delay: calc(180ms + var(--rg-platform-bar-index) * 70ms);
}

main.rg-platform-motion-ready .rg-platform-copy__dashboard.rg-platform-motion-reveal .rg-platform-copy-count__number {
	--rg-platform-count: 0;
}

main.rg-platform-motion-ready .rg-platform-copy__dashboard.rg-platform-motion-reveal.is-in-view .rg-platform-copy-count__number {
	animation: rg-platform-copy-count-in 1100ms cubic-bezier(.2, .75, .2, 1) both;
}

main.rg-platform-motion-ready .rg-platform-copy__dashboard.rg-platform-motion-reveal.is-in-view .rg-platform-copy__top > div:nth-child(2) .rg-platform-copy-count__number {
	animation-delay: 90ms;
}

main.rg-platform-motion-ready .rg-platform-copy__dashboard.rg-platform-motion-reveal.is-in-view dl > div:nth-child(1) .rg-platform-copy-count__number {
	animation-delay: 160ms;
}

main.rg-platform-motion-ready .rg-platform-copy__dashboard.rg-platform-motion-reveal.is-in-view dl > div:nth-child(2) .rg-platform-copy-count__number {
	animation-delay: 230ms;
}

@media (max-width: 900px) {
	.rg-platform-copy__inner {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 640px) {
	.rg-platform-copy__copy ol {
		grid-template-columns: 1fr;
	}

	.rg-platform-copy__dashboard {
		padding: 18px;
		border-radius: 24px;
	}

	.rg-platform-copy__dashboard header {
		grid-template-columns: 48px minmax(0, 1fr);
	}

	.rg-platform-copy__dashboard header > b {
		display: none;
	}

	.rg-platform-copy__top strong {
		font-size: 31px;
	}

	.rg-platform-copy__top,
	.rg-platform-copy__dashboard dl {
		grid-template-columns: 1fr;
	}

	.rg-platform-copy__dashboard dl div + div {
		border-top: 1px solid #385677;
		border-left: 0;
	}
}

@keyframes rg-platform-reveal-in {
	from {
		opacity: 0;
		translate: 0 22px;
	}
	to {
		opacity: 1;
		translate: 0 0;
	}
}

main.rg-platform-motion-ready .rg-platform-motion-reveal {
	opacity: 0;
	translate: 0 22px;
}

main.rg-platform-motion-ready .rg-platform-motion-reveal.is-in-view {
	opacity: 1;
	translate: 0 0;
	animation: rg-platform-reveal-in 680ms cubic-bezier(.2, .75, .2, 1) both;
	animation-delay: calc(var(--rg-platform-motion-order, 0) * 70ms);
}

@media (prefers-reduced-motion: reduce) {
	::view-transition-old(root),
	::view-transition-new(root),
	.s6-shell {
		animation: none;
	}

	.s6-header .s6-navitem > .s6-nav-parent[aria-expanded="true"] + .s6-mega {
		transition: none;
	}

	.rg-navigation-backdrop[aria-hidden="false"] {
		transition: none;
	}

	:is(
		.rg-if-timeline,
		.rg-dr-timeline,
		.rg-tj-timeline,
		.rg-ca-timeline,
		.rg-offers-path__track,
		.rg-partner-path__track,
		.rg-rs-pathway ol,
		.rg-tgi-flow ol
	)::after {
		transition: none;
	}

	:is(
		.rg-if-timeline > li,
		.rg-dr-timeline > li,
		.rg-tj-timeline > li,
		.rg-ca-timeline > li,
		.rg-offers-path__track > li,
		.rg-partner-path__track > li,
		.rg-rs-pathway ol > li,
		.rg-tgi-flow ol > li
	) {
		transition: none;
	}

	.rg-copy-css-counter {
		--rg-count: var(--rg-count-final);
		animation: none;
	}

	.rg-copy-css-counter--money::after {
		content: "$7M";
		animation: none;
		font-size: 1em;
	}

	.rg-how-motion-ready .rg-how-reveal,
	.rg-how-motion-ready .rg-how-reveal.is-in-view,
	.rg-how-step > article,
	.rg-how-step.is-active > article,
	.rg-how-step figure img,
	.rg-how-step.is-active figure img,
	.rg-how-dash.is-active {
		animation: none;
		transition: none;
		transform: none;
		opacity: 1;
	}

	.rg-animated-gradient-text {
		animation: none;
		background-position: 50% 50%;
	}

	.rg-promo-hub.rg-motion-ready .rg-promo-hero::after {
		animation: none;
	}

	.rg-rs-reward__beam,
	.rg-rs-selection__visual::before,
	.rg-tgi-selection__visual::before,
	.rg-tgi-selection__visual::after {
		animation: none;
	}

	.rg-promo-hub.rg-motion-ready .rg-motion-reveal,
	.rg-promo-hub.rg-motion-ready .rg-motion-roll,
	.rg-promo-hub.rg-motion-ready .rg-promo-steps li.rg-motion-fold,
	.rg-promo-hub.rg-motion-ready .rg-promo-steps li:nth-child(even).rg-motion-fold,
	.rg-if-page.rg-if-motion-ready .rg-if-motion-reveal,
	.rg-if-page.rg-if-motion-ready .rg-if-motion-roll,
	.rg-if-page.rg-if-motion-ready .rg-if-motion-fold,
	.rg-dr-page.rg-dr-motion-ready .rg-dr-motion-reveal,
	.rg-dr-page.rg-dr-motion-ready .rg-dr-motion-roll,
	.rg-dr-page.rg-dr-motion-ready .rg-dr-motion-fold,
	.rg-rs-page.rg-rs-motion-ready :is(.rg-rs-motion-reveal, .rg-rs-motion-fold),
	.rg-copy-motion-ready .rg-copy-reveal,
	.rg-why-motion-ready .rg-why-reveal,
	.rg-account-detail.rg-account-motion-ready .rg-account-motion-reveal,
	.rg-account-detail.rg-account-motion-ready .rg-account-motion-reveal.is-in-view,
	main.rg-platform-motion-ready .rg-platform-motion-reveal,
	main.rg-platform-motion-ready .rg-platform-motion-reveal.is-in-view,
	.rg-market-motion-ready [data-rg-market-reveal],
	.rg-market-motion-ready [data-rg-market-reveal].is-in-view {
		opacity: 1;
		transform: none;
		translate: none;
		animation: none;
		transition: none;
	}

	main.rg-platform-motion-ready .rg-platform-copy__dashboard.rg-platform-motion-reveal .rg-platform-copy-count__number,
	main.rg-platform-motion-ready .rg-platform-copy__dashboard.rg-platform-motion-reveal.is-in-view .rg-platform-copy-count__number {
		--rg-platform-count: var(--rg-platform-count-to);
		animation: none;
	}

	main.rg-platform-motion-ready .rg-platform-copy__dashboard.rg-platform-motion-reveal .rg-platform-copy__chart i,
	main.rg-platform-motion-ready .rg-platform-copy__dashboard.rg-platform-motion-reveal.is-in-view .rg-platform-copy__chart i {
		opacity: 1;
		transform: none;
		animation: none;
	}

	.rg-mt4-workbench__rail {
		transform: translate(-50%, -50%);
		animation: none;
	}

	.rg-risk-hero__visual::after,
	.rg-risk-layer-card::before,
	.rg-risk-kill::before {
		animation: none;
	}

	.rg-risk-motion-ready [data-risk-reveal],
	.rg-risk-motion-ready [data-risk-reveal].is-visible,
	.rg-risk-kill__positions > div {
		opacity: 1;
		transform: none;
		transition: none;
	}

	.rg-provider-calculator::before {
		animation: none;
	}

	.rg-provider-motion-ready [data-provider-reveal],
	.rg-provider-motion-ready [data-provider-reveal].is-visible,
	.rg-provider-path__rail span,
	.rg-provider-path__rail i {
		opacity: 1;
		transform: none;
		transition: none;
		animation: none;
	}

	.rg-copy-card:hover .rg-copy-card__glow,
	.rg-copy-card:focus-within .rg-copy-card__glow {
		background: linear-gradient(135deg, #70e6ff, #9d83ff, #f4c465);
	}

	.rg-tools-calculator-tabs button[aria-selected="true"]::before {
		animation: none;
		transform: rotate(35deg);
	}

	.rg-calculator__result > strong.is-updating {
		animation: none;
	}

	.rg-ec-radar::before {
		animation: none;
	}

	.rg-economic-calendar [data-rg-reveal],
	.rg-economic-calendar [data-rg-reveal].is-visible {
		opacity: 1;
		transform: none;
		transition: none;
	}

	.rg-ec-impact-card,
	.rg-ec-learn-card,
	.rg-ec-learn-card strong svg,
	.rg-ec-today > a svg {
		transition: none;
	}

	.rg-tools-calculator-tabs button,
	.rg-tools-order-grid article,
	.rg-tools-resource-card,
	.rg-tools-resource-card > strong svg,
	.rg-tools-actions .s6-cta,
	.rg-tools-jump a,
	.rg-tools-jump a::after {
		transition: none;
	}

	.s6-shell *,
	.s6-shell *::before,
	.s6-shell *::after {
		scroll-behavior: auto;
		transition-duration: .01ms;
		animation-duration: .01ms;
		animation-iteration-count: 1;
	}
}
