/* Explicit native palette overrides preserve untouched template defaults. */
body.alki-master-surface
	.sp-builder-text
	.sp-builder-text-copy[data-copy-align="left"] {
	text-align: left;
	align-items: flex-start;
}
body.alki-master-surface
	.sp-builder-text
	.sp-builder-text-copy[data-copy-align="center"] {
	text-align: center;
	align-items: center;
}
body.alki-master-surface
	.sp-builder-text
	.sp-builder-text-copy[data-copy-align="right"] {
	text-align: right;
	align-items: flex-end;
}
@media (max-width: 1024px) and (min-width: 521px) {
	body.alki-master-surface
		.sp-builder-text
		.sp-builder-text-copy[data-copy-align-tablet="left"] {
		text-align: left;
		align-items: flex-start;
	}
	body.alki-master-surface
		.sp-builder-text
		.sp-builder-text-copy[data-copy-align-tablet="center"] {
		text-align: center;
		align-items: center;
	}
	body.alki-master-surface
		.sp-builder-text
		.sp-builder-text-copy[data-copy-align-tablet="right"] {
		text-align: right;
		align-items: flex-end;
	}
}
@media (max-width: 520px) {
	body.alki-master-surface
		.sp-builder-text
		.sp-builder-text-copy[data-copy-align-mobile="left"] {
		text-align: left;
		align-items: flex-start;
	}
	body.alki-master-surface
		.sp-builder-text
		.sp-builder-text-copy[data-copy-align-mobile="center"] {
		text-align: center;
		align-items: center;
	}
	body.alki-master-surface
		.sp-builder-text
		.sp-builder-text-copy[data-copy-align-mobile="right"] {
		text-align: right;
		align-items: flex-end;
	}
}
body.alki-master-surface
	:is(
		.sp-builder-section,
		.sp-builder-hero,
		.sp-builder-banner,
		.sp-builder-text,
		.sp-newsletter,
		.sp-builder-benefits,
		.sp-cms-detail,
		.sp-cms-empty
	).has-background-color {
	/* biome-ignore lint/complexity/noImportantStyles: legacy master forces an important background on native sections. */
	background: var(--section-background) !important;
}
body.alki-master-surface
	:is(
		.sp-builder-section,
		.sp-builder-hero,
		.sp-builder-banner,
		.sp-builder-text,
		.sp-newsletter,
		.sp-builder-benefits,
		.sp-cms-detail,
		.sp-cms-empty
	).has-color-color {
	/* biome-ignore lint/complexity/noImportantStyles: override the important legacy section foreground only when explicitly chosen. */
	color: var(--section-ink) !important;
}
body.alki-master-surface
	.has-color-color
	:is(
		.sp-builder-copy,
		.sp-builder-text-copy,
		.sp-section-head,
		.sp-modal-launcher-copy
	)
	:is(h1, h2, p, a),
body.alki-master-surface
	:is(.sp-newsletter, .sp-builder-benefits, .sp-cms-detail).has-color-color
	> :is(h1, h2, p) {
	color: var(--section-ink);
}
#siteCanvas .design-section.has-accent-color :is(.d-cta, .fake-form b),
body.alki-master-surface .has-accent-color :is(.sp-btn:not(.ghost), .sp-add) {
	background: var(--section-accent);
}
#siteCanvas .design-section.has-accentText-color :is(.d-cta, .fake-form b),
body.alki-master-surface
	.has-accentText-color
	:is(.sp-btn:not(.ghost), .sp-add) {
	color: var(--section-accent-ink);
}
#siteCanvas
	.design-section.has-surface-color
	:is(.d-product, .d-cat, .d-quote, .d-cms-card, .d-benefits > div),
body.alki-master-surface
	.has-surface-color
	:is(
		.sp-product,
		.sp-category-card,
		.sp-testimonial-grid > blockquote,
		.sp-cms-card,
		.sp-benefits > div,
		.sp-benefits > li
	) {
	background-color: var(--section-surface);
}
body.alki-master-surface .has-surface-color .sp-category-card.no-image,
body.alki-master-surface
	.has-surface-color
	.sp-category-card.no-image
	:is(.sp-category-media, .sp-category-placeholder) {
	background: var(--section-surface);
}
#siteCanvas
	.design-section.has-surfaceText-color
	:is(.d-product, .d-cat, .d-quote, .d-cms-card, .d-benefits > div),
#siteCanvas .design-section.has-surfaceText-color .d-product :is(b, span),
body.alki-master-surface
	.has-surfaceText-color
	:is(
		.sp-product,
		.sp-category-card,
		.sp-testimonial-grid > blockquote,
		.sp-cms-card,
		.sp-benefits > div,
		.sp-benefits > li
	),
body.alki-master-surface
	.has-surfaceText-color
	.sp-product-copy
	> :is(a:first-child, span, em),
body.alki-master-surface
	.sp-builder-testimonials.has-surfaceText-color
	blockquote
	:is(p, b),
body.alki-master-surface
	.sp-builder-benefits.has-surfaceText-color
	.sp-benefits
	:is(p, b) {
	color: var(--section-surface-ink);
}
.design-section.is-content-only :is(.d-hero, .d-banner, .d-text-image) {
	grid-template-columns: minmax(0, 1fr);
	background-image: none;
}
.design-section.is-content-only .d-media {
	/* Existing composition variants mark their media display important. */
	/* biome-ignore lint/complexity/noImportantStyles: suppress absent media in legacy variants. */
	display: none !important;
}
.design-section.is-content-only :is(.d-hero, .d-banner)::before,
.design-section.is-content-only :is(.d-hero, .d-banner)::after {
	content: none;
}
body.alki-master-surface.has-page-background {
	background: var(--theme-surface);
}
@media (prefers-reduced-motion: reduce) {
	body.alki-master-surface.has-page-background,
	body.alki-master-surface
		:is(
			.has-background-color,
			.has-color-color,
			.has-accent-color,
			.has-accentText-color,
			.has-surface-color,
			.has-surfaceText-color
		),
	body.alki-master-surface
		:is(
			.has-background-color,
			.has-color-color,
			.has-accent-color,
			.has-accentText-color,
			.has-surface-color,
			.has-surfaceText-color
		)
		* {
		/* biome-ignore lint/complexity/noImportantStyles: override legacy universal .01ms duration, which creates color transitions even on static sections. */
		transition: none !important;
	}
}
