/* Keep the former reading widths as floors; a longer title can widen its subtitle. */
.asca-heading-area,
.aw-service-heading { --asca-heading-subtitle-min-width: 820px; }
.asca-heading-area--editorial { --asca-heading-subtitle-min-width: 980px; }

:is(.asca-heading-area, .aw-service-heading) :is(.asca-heading-area__subtitle, .aw-service-heading__subtitle) {
	inline-size: min(100%, max(var(--asca-heading-subtitle-min-width), var(--asca-heading-title-width, 0px))) !important;
	max-inline-size: 100% !important;
	min-inline-size: 0;
	box-sizing: border-box;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	line-clamp: 3;
	max-block-size: 3lh;
	overflow: hidden;
	overflow-wrap: anywhere;
}

/* Complete wording for assistive technology, outside the clamped visual flow. */
.asca-heading-subtitle__accessible {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip-path: inset(50%) !important;
	white-space: nowrap !important;
}

/* Keep every character reachable while editing; the unfocused canvas shows the limit. */
:is(.asca-heading-area, .aw-service-heading) :is(.asca-heading-area__subtitle, .aw-service-heading__subtitle):focus-within {
	-webkit-line-clamp: unset;
	line-clamp: unset;
	max-block-size: none;
}
.asca-heading-area--subtitle-hidden .asca-heading-area__subtitle { display: none !important; }
