/* Training only: its article also carries --brand_consultant, so use the article ID.
 * Shared --ys-service-* palette definitions and enqueueing belong to the parent.
 * color: inherit resets are the explicit exception to plan02's no-child-color wording.
 * Never alias hero ink/dim tokens: those also paint the protected marquee.
 */
article#ys-landing-training section#hero {
	--ys-service-background: var(--ys-service-lilac);
	--ys-service-ink: var(--ys-service-navy);
	--ys-service-card: var(--ys-service-ivory);
	background-color: var(--ys-service-background);
	color: var(--ys-service-ink);
}

article#ys-landing-training section#recognition {
	--ys-service-background: var(--ys-service-ivory);
	--ys-service-ink: var(--ys-service-navy);
	--ys-service-card: var(--ys-service-cream);
	--lw-bg: var(--ys-service-background);
	--lw-raised: var(--ys-service-card);
	--lw-ink: var(--ys-service-ink);
	--lw-ink-dim: var(--ys-service-ink);
	background-image: none;
	background-color: var(--ys-service-background);
	color: var(--ys-service-ink);
}

article#ys-landing-training section#capability_question {
	--ys-service-background: var(--ys-service-coral);
	--ys-service-ink: var(--ys-service-navy);
	--ys-service-card: var(--ys-service-ivory);
	--tw-ink: var(--ys-service-ink);
	--tw-muted: var(--ys-service-ink);
	background-color: var(--ys-service-background);
	color: var(--ys-service-ink);
}

/* Photo scrub has no --future_state modifier in the actual template. */
article#ys-landing-training section#future_state {
	--ys-service-background: var(--ys-service-cream);
	--ys-service-ink: var(--ys-service-navy);
	--ys-service-card: var(--ys-service-ivory);
	--tw-ink: var(--ys-service-ink);
	--tw-muted: var(--ys-service-ink);
	background-color: var(--ys-service-background);
	color: var(--ys-service-ink);
}

article#ys-landing-training section#future_state .ys-training-photo-scrub__heading {
	align-items: center;
	display: grid;
	gap: 34px;
	grid-template-columns: auto minmax(0, 1fr);
	margin-bottom: clamp(1.2rem, 2.5vh, 2rem);
}

article#ys-landing-training section#future_state .ys-training-photo-scrub__heading > .ys-section-index {
	justify-self: start;
}

article#ys-landing-training section#future_state .ys-training-photo-scrub__heading-text {
	min-width: 0;
}


article#ys-landing-training section#future_state .ys-training-photo-scrub__title {
	margin-bottom: 0;
	max-width: none;
}

@media (max-width: 760px) {
	article#ys-landing-training section#future_state .ys-training-photo-scrub__heading {
		gap: 1rem;
		grid-template-columns: minmax(0, 1fr);
	}
}

article#ys-landing-training section#dependency_shift {
	--ys-service-background: var(--ys-service-green);
	--ys-service-ink: var(--ys-service-ivory);
	--ys-service-card: transparent;
	background-image: none;
	background-color: var(--ys-service-background);
	color: var(--ys-service-ink);
}

article#ys-landing-training section#programmes {
	--ys-service-background: var(--ys-service-ivory);
	--ys-service-ink: var(--ys-service-navy);
	--ys-service-card: var(--ys-service-cream);
	--tw-ink: var(--ys-service-ink);
	--tw-muted: var(--ys-service-ink);
	background-image: none;
	background-color: var(--ys-service-background);
	color: var(--ys-service-ink);
}

article#ys-landing-training section#how_i_teach {
	--ys-service-background: var(--ys-service-navy);
	--ys-service-ink: var(--ys-service-ivory);
	--ys-service-card: transparent;
	--tw-ink: var(--ys-service-ink);
	--tw-muted: var(--ys-service-ink);
	background-color: var(--ys-service-background);
	color: var(--ys-service-ink);
}

/* Proof map has no --credentials modifier in the actual template. */
article#ys-landing-training section#credentials {
	--ys-service-background: var(--ys-service-gold);
	--ys-service-ink: var(--ys-service-navy);
	--ys-service-card: var(--ys-service-ivory);
	--tw-ink: var(--ys-service-ink);
	--tw-muted: var(--ys-service-ink);
	background-image: none;
	background-color: var(--ys-service-background);
	color: var(--ys-service-ink);
}

article#ys-landing-training section#customisation {
	--ys-service-background: var(--ys-service-lilac);
	--ys-service-ink: var(--ys-service-navy);
	--ys-service-card: var(--ys-service-ivory);
	--tw-ink: var(--ys-service-ink);
	--tw-muted: var(--ys-service-ink);
	background-color: var(--ys-service-background);
	color: var(--ys-service-ink);
}

article#ys-landing-training section#final_cta {
	--ys-service-background: var(--ys-service-coral);
	--ys-service-ink: var(--ys-service-navy);
	--ys-service-card: var(--ys-service-ivory);
	--tw-ink: var(--ys-service-ink);
	--tw-muted: var(--ys-service-ink);
	background-color: var(--ys-service-background);
	color: var(--ys-service-ink);
}

/* Target visible copy only, never marquee descendants or its inherited ink tokens. */
article#ys-landing-training section#hero :is(.brand-editorial-hero__stage, .brand-editorial-hero__eyebrow, .brand-editorial-hero__title, .brand-editorial-hero__problem, .brand-editorial-hero__value, .ys-landing__prose, .ys-landing__cta--secondary) {
	color: inherit;
}

article#ys-landing-training section#hero .brand-editorial-hero__resolution-copy {
	font-size: clamp(2.5rem, 5vw, 5rem);
	line-height: 1.1;
}

article#ys-landing-training section#hero .brand-editorial-hero__resolution-copy :is(strong, em) {
	font-size: inherit;
	line-height: inherit;
}

/* Decorative paint removal only. Masks, photo fades and peel shadows remain functional. */
article#ys-landing-training section#hero :is(.brand-editorial-hero__vignette, .brand-editorial-hero__problem, .brand-editorial-hero__grain),
article#ys-landing-training section#future_state .ys-training-photo-scrub__scene::before,
article#ys-landing-training section#credentials::before {
	background-image: none;
}

article#ys-landing-training section#recognition :is(.ys-leave-with__number, .ys-leave-with__title, .ys-leave-with__statement p),
article#ys-landing-training section#future_state :is(.ys-section-index, .ys-training-photo-scrub__media figcaption),
article#ys-landing-training section#dependency_shift :is(.ys-landing__eyebrow, .ys-transformation-table__pair-axis-label, .ys-transformation-table__card, .ys-transformation-table__mobile-card),
article#ys-landing-training section#programmes :is(.ys-section-index, .ys-training__title, .ys-training__eyebrow, .ys-training-prose--programmes, .ys-training-prose--programmes > p:last-child, .ys-training-programme-tab__number, .ys-training-programme-tab__description, .ys-training-atelier, .ys-training-atelier__index),
article#ys-landing-training section#credentials :is(.ys-training-proof-map__kicker, .ys-section-index, .ys-training-proof-map__intro, .ys-training-proof-map__registration, .ys-training-proof-map__pin-label strong, .ys-training-proof-map__pin-label small, .ys-training-proof-map__figure figcaption, .ys-training-proof-map__stat-index, .ys-training-proof-map__stats li > span:last-child),
article#ys-landing-training section#customisation :is(.ys-training-prose--customisation, .ys-training-customisation__secondary, .ys-training-customisation__stack-hint),
article#ys-landing-training section#final_cta .ys-landing__ordinal.ys-cta-feature__ordinal,
article#ys-landing-training section#final_cta :is(.ys-cta-feature__eyebrow, .ys-cta-feature__title, .ys-cta-feature__prose, .ys-landing__cta--secondary) {
	color: inherit;
}

article#ys-landing-training section#programmes .ys-training-atelier,
article#ys-landing-training section#credentials :is(.ys-training-proof-map__figure, .ys-training-proof-map__pin-label) {
	background-image: none;
	background-color: var(--ys-service-card);
}

/* Section 07: JS projects each geographic pin using the same viewport as the canvas.
 * Zero-sized anchors keep dot centers exact; labels must not move the location.
 */
article#ys-landing-training section#credentials .ys-training-proof-map__pin {
	display: block;
	height: 0;
	left: var(--ys-map-pin-x, 52.38%);
	top: var(--ys-map-pin-y, 28.78%);
	transform: none;
	transition: opacity 0.45s ease;
	width: 0;
}

article#ys-landing-training section#credentials .ys-training-proof-map__pin-dot {
	left: 0;
	position: absolute;
	top: 0;
	transform: translate(-50%, -50%);
}

article#ys-landing-training section#credentials .ys-training-proof-map__pin-label {
	left: 0.8rem;
	position: absolute;
	top: -0.6rem;
	white-space: nowrap;
}

article#ys-landing-training section#credentials .ys-training-proof-map__pin--singapore {
	left: var(--ys-map-pin-x, 76.83%);
	top: var(--ys-map-pin-y, 49.40%);
}

article#ys-landing-training section#credentials .ys-training-proof-map__pin--jakarta {
	left: var(--ys-map-pin-x, 77.60%);
	top: var(--ys-map-pin-y, 52.88%);
}

/* Nearby cities share a coast, not a label: keep both labels inland and apart. */
article#ys-landing-training section#credentials .ys-training-proof-map__pin--singapore .ys-training-proof-map__pin-label {
	bottom: 0.8rem;
	left: auto;
	right: 0.8rem;
	top: auto;
}

article#ys-landing-training section#credentials .ys-training-proof-map__pin--jakarta .ys-training-proof-map__pin-label {
	left: auto;
	right: 0.8rem;
	top: 0.8rem;
}

@media (prefers-reduced-motion: reduce) {
	article#ys-landing-training section#credentials .ys-training-proof-map__pin {
		transition: none;
	}
}

/* Restore the whiteboard independently of the green section behind it. */
article#ys-landing-training section#dependency_shift :is(.ys-transformation-table__surface, .ys-transformation-table__mobile) {
	background-image: none;
	background-color: var(--ys-service-ivory);
	border: 1px solid color-mix(in srgb, var(--ys-service-navy) 20%, transparent);
	color: var(--ys-service-navy);
}

article#ys-landing-training section#dependency_shift .ys-transformation-table__mobile {
	padding: 1rem;
}

article#ys-landing-training section#dependency_shift .ys-transformation-table__pair-arrow {
	color: var(--ys-service-coral);
	text-shadow: none;
}

/* Keep note colors in sync for the fallback sheets and SVG peel renderer. */
article#ys-landing-training section#dependency_shift :is(.ys-transformation-table__card, .ys-transformation-table__mobile-card) {
	--ys-table-card: var(--ys-training-note);
	--ys-fold-crease: var(--ys-service-navy);
	--ys-fold-highlight: color-mix(in srgb, var(--ys-table-card) 65%, var(--ys-service-ivory));
	--ys-fold-pocket: color-mix(in srgb, var(--ys-table-card) 65%, var(--ys-service-navy));
	--ys-fold-under: color-mix(in srgb, var(--ys-table-card) 85%, var(--ys-service-ivory));
	--ys-fold-under-dark: color-mix(in srgb, var(--ys-table-card) 45%, var(--ys-service-navy));
	color: var(--ys-training-note-ink, var(--ys-service-navy));
}

article#ys-landing-training section#dependency_shift :is(.ys-transformation-table__card--from, .ys-transformation-table__mobile-card--from) {
	--ys-training-note: var(--ys-service-ivory);
}

article#ys-landing-training section#dependency_shift :is(.ys-transformation-table__card--to, .ys-transformation-table__mobile-card--to) {
	--ys-training-note: var(--ys-service-coral);
}

article#ys-landing-training section#dependency_shift .ys-transformation-table__pair:nth-child(4n + 2) :is(.ys-transformation-table__card--to, .ys-transformation-table__mobile-card--to) {
	--ys-training-note: var(--ys-service-gold);
}

article#ys-landing-training section#dependency_shift .ys-transformation-table__pair:nth-child(4n + 3) :is(.ys-transformation-table__card--to, .ys-transformation-table__mobile-card--to) {
	--ys-training-note: color-mix(in srgb, var(--ys-service-lilac) 90%, var(--ys-service-ivory));
}

article#ys-landing-training section#dependency_shift .ys-transformation-table__pair:nth-child(4n + 4) :is(.ys-transformation-table__card--to, .ys-transformation-table__mobile-card--to) {
	--ys-training-note: var(--ys-service-navy);
	--ys-training-note-ink: var(--ys-service-ivory);
}

article#ys-landing-training section#dependency_shift :is(.ys-transformation-table__card-copy, .ys-transformation-table__mobile-label, .ys-transformation-table__mobile-label span) {
	color: inherit;
}

article#ys-landing-training section#dependency_shift :is(.ys-transformation-table__card-peel-base, .ys-transformation-table__card-peel-cutout) {
	fill: var(--ys-table-card);
}

article#ys-landing-training section#dependency_shift .ys-transformation-table__card-peel-cutout {
	stroke: var(--ys-table-card);
}

article#ys-landing-training section#dependency_shift .ys-transformation-table__card-peel-defs stop[offset="0%"] {
	stop-color: var(--ys-fold-under-dark);
}

article#ys-landing-training section#dependency_shift .ys-transformation-table__card-peel-defs stop[offset="20%"] {
	stop-color: var(--ys-fold-pocket);
}

article#ys-landing-training section#dependency_shift .ys-transformation-table__card-peel-defs stop[offset="60%"] {
	stop-color: var(--ys-fold-under);
}

article#ys-landing-training section#dependency_shift .ys-transformation-table__card-peel-defs stop[offset="80%"] {
	stop-color: var(--ys-fold-highlight);
}

/* Preserve ready-state transparency: only replace the already-painted fallback. */
article#ys-landing-training section#dependency_shift :is(.ys-transformation-table__card-sheet, .ys-transformation-table__mobile-card):not(.is-peel-ready) {
	background-image: none;
	background-color: var(--ys-table-card);
	color: inherit;
}

article#ys-landing-training section#dependency_shift .ys-transformation-table__card-sheet:not(.is-peel-ready)::before {
	background-image: none;
}

/* Match Brand Consultant's closing feature heading and unobscured photo. */
article#ys-landing-training section#final_cta {
	line-height: 1.5;
}

article#ys-landing-training section#final_cta .ys-cta-feature__title {
	font-size: clamp(1.8rem, 4.2vw, 4rem);
	font-synthesis: none;
	line-height: 1.08;
	max-width: 100%;
}

article#ys-landing-training section#final_cta .ys-cta-feature__media::after {
	background-color: transparent;
	background-image: none;
}

/* Feed the shared Brand Consultant-style primary CTA treatment. */
article#ys-landing-training section:is(#hero, #customisation, #dependency_shift) {
	--ys-main-cta-bg: var(--ys-service-ivory);
	--ys-main-cta-ink: var(--ys-service-navy);
}

article#ys-landing-training section:is(#capability_question, #final_cta) {
	--ys-main-cta-bg: var(--ys-service-navy);
	--ys-main-cta-ink: var(--ys-service-ivory);
}

article#ys-landing-training section:is(#recognition, #capability_question, #future_state, #dependency_shift, #programmes, #how_i_teach, #credentials, #customisation, #final_cta) :is(.ys-training__btn--secondary, .ys-landing__cta--secondary) {
	color: inherit;
}
