/* Keynote only. Shared --ys-service-* palette tokens and loading order are owned by the parent.
 * Text resets below are the explicit exception to plan02's literal no-child-color rule:
 * legacy declarations must inherit the section's single ink, not introduce accents.
 * Do not alias --brand-hero-ink / --brand-hero-ink-dim: the marquee consumes them.
 */
article#ys-landing-speaker section#hero {
	--ys-service-background: var(--ys-service-coral);
	--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-speaker section#audience_outcome {
	--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-speaker section#differentiator {
	--ys-service-background: var(--ys-service-navy);
	--ys-service-ink: var(--ys-service-ivory);
	--ys-service-card: transparent;
	--ks02-ink: var(--ys-service-ink);
	--ks02-cream: var(--ys-service-ink);
	background-color: var(--ys-service-background);
	color: var(--ys-service-ink);
}

article#ys-landing-speaker section#topics {
	--ys-service-background: var(--ys-service-green);
	--ys-service-ink: var(--ys-service-ivory);
	--ys-service-card: transparent;
	--topic-ink: var(--ys-service-ink);
	--topic-muted: var(--ys-service-ink);
	--topic-paper: var(--ys-service-background);
	background-color: var(--ys-service-background);
	color: var(--ys-service-ink);
}

article#ys-landing-speaker section#audience_fit {
	--ys-service-background: var(--ys-service-ivory);
	--ys-service-ink: var(--ys-service-navy);
	--ys-service-card: var(--ys-service-cream);
	--audience-ink: var(--ys-service-ink);
	--audience-muted: var(--ys-service-ink);
	--audience-paper: var(--ys-service-card);
	--audience-sand: var(--ys-service-background);
	background-color: var(--ys-service-background);
	color: var(--ys-service-ink);
}

article#ys-landing-speaker section#organiser_experience {
	--ys-service-background: var(--ys-service-lilac);
	--ys-service-ink: var(--ys-service-navy);
	--ys-service-card: var(--ys-service-ivory);
	--ys-speaker-portrait-bg: var(--ys-service-background);
	--ys-speaker-portrait-ink: var(--ys-service-ink);
	background-color: var(--ys-service-background);
	color: var(--ys-service-ink);
}

article#ys-landing-speaker section#proof {
	--ys-service-background: var(--ys-service-navy);
	--ys-service-ink: var(--ys-service-ivory);
	--ys-service-card: transparent;
	--stg-paper: var(--ys-service-background);

	background-color: var(--ys-service-background);
	color: var(--ys-service-ink);
}

article#ys-landing-speaker section#final_cta {
	--ys-service-background: var(--ys-service-coral);
	--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);
}

/* Only visible hero copy inherits; marquee variables and descendants stay untouched. */
article#ys-landing-speaker 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-speaker section#hero .brand-editorial-hero__resolution-copy {
	color: var(--ys-service-cream);
	font-size: clamp(2.5rem, 5vw, 5rem);
	line-height: 1.1;
}

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

/* Remove decorative paint, retaining the existing vignette mask and photo/video fades. */
article#ys-landing-speaker section#hero :is(.brand-editorial-hero__vignette, .brand-editorial-hero__problem, .brand-editorial-hero__grain),
article#ys-landing-speaker section#audience_fit::before,
article#ys-landing-speaker section#proof .stg-pin::after {
	background-image: none;
}

article#ys-landing-speaker section#audience_outcome .ys-leave-with__statement :is(p, strong) {
	font-weight: 400;
}

article#ys-landing-speaker section#audience_outcome :is(.ys-leave-with__number, .ys-leave-with__title, .ys-leave-with__statement p),
article#ys-landing-speaker section#differentiator :is(.ks02-index, .ks02-twenty-one),
article#ys-landing-speaker section#topics .topic-browser__index,
article#ys-landing-speaker section:is(#audience_outcome, #differentiator, #topics, #audience_fit, #organiser_experience, #proof) .ys-landing__eyebrow,
article#ys-landing-speaker section#proof :is(.stg-copy, .stg-caption, .stg-index),
article#ys-landing-speaker section#audience_fit :is(.audience-preview__ghost-index, .audience-preview__panel-copy, .audience-preview__panel-caption),
article#ys-landing-speaker section#final_cta :is(.ys-landing__ordinal.ys-cta-feature__ordinal, .ys-cta-feature__eyebrow, .ys-cta-feature__title, .ys-cta-feature__prose, .ys-landing__cta--secondary) {
	color: inherit;
}

/* Existing audience panels have paint rather than photos. Replace those fills only. */
article#ys-landing-speaker section#audience_fit :is(.audience-preview__stage, .audience-preview__panel) {
	background-image: none;
	background-color: var(--ys-service-card);
	color: inherit;
}

article#ys-landing-speaker section#audience_fit .audience-preview__panel::before {
	background-image: none;
}

/* This content header must not inherit the site's two-column nav layout. */
article#ys-landing-speaker section#audience_fit .audience-preview__header,
article#ys-landing-speaker section#topics .topic-browser__intro {
	display: block;
	max-width: none;
	padding: 0;
	width: 100%;
}

/* Keep the section stamp at the leading edge of the heading, as in Section 01. */
article#ys-landing-speaker section:is(#audience_fit, #organiser_experience) .ys-landing__section-heading:has(.ys-heading-stamp) {
	align-items: center;
	column-gap: 34px;
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
}

article#ys-landing-speaker section:is(#audience_fit, #organiser_experience) .ys-heading-stamp-host {
	justify-self: start;
}

article#ys-landing-speaker section#organiser_experience .ys-landing__section-title {
	font-size: clamp(1.8rem, 3.2vw, 3.5rem);
	max-width: none;
	text-wrap: balance;
}

article#ys-landing-speaker section#proof .stg-title {
	margin-top: clamp(1rem, 2vh, 1.5rem);
}

@media (max-width: 1024px) {
	article#ys-landing-speaker section:is(#audience_fit, #organiser_experience) .ys-landing__section-heading:has(.ys-heading-stamp) {
		grid-template-columns: minmax(0, 1fr);
		row-gap: 1rem;
	}

	article#ys-landing-speaker section:is(#audience_fit, #organiser_experience) .ys-heading-stamp-host {
		align-self: start;
	}
}

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

article#ys-landing-speaker 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-speaker 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-speaker section:is(#hero, #final_cta) {
	--ys-main-cta-bg: var(--ys-service-navy);
	--ys-main-cta-ink: var(--ys-service-ivory);
}

article#ys-landing-speaker section:is(#topics, #organiser_experience) {
	--ys-main-cta-bg: var(--ys-service-ivory);
	--ys-main-cta-ink: var(--ys-service-navy);
}

article#ys-landing-speaker section:is(#audience_outcome, #differentiator, #topics, #audience_fit, #organiser_experience, #proof) .ys-landing__cta--secondary {
	color: inherit;
}
