/* BetteRES header takeover: Impreza keeps the area, BetteRES owns its content. */
.l-header.betteres-takeover-top .l-subheader.at_top .l-subheader-cell,
.l-header.betteres-takeover-middle .l-subheader.at_middle .l-subheader-cell,
.l-header.betteres-takeover-bottom .l-subheader.at_bottom .l-subheader-cell {
	display: none;
}

.l-header.betteres-takeover-top .l-subheader.at_top .l-subheader-cell.at_center,
.l-header.betteres-takeover-middle .l-subheader.at_middle .l-subheader-cell.at_center,
.l-header.betteres-takeover-bottom .l-subheader.at_bottom .l-subheader-cell.at_center {
	display: flex;
	flex: 1 1 100%;
	align-items: stretch;
	justify-content: flex-start;
	width: 100%;
	min-width: 0;
	max-width: none;
}

/* Keep one native Impreza cell and let the BetteRES center cell fill the rest. */
.l-header.betteres-takeover-top-span-right .l-subheader.at_top .l-subheader-cell.at_left,
.l-header.betteres-takeover-middle-span-right .l-subheader.at_middle .l-subheader-cell.at_left,
.l-header.betteres-takeover-bottom-span-right .l-subheader.at_bottom .l-subheader-cell.at_left,
.l-header.betteres-takeover-top-span-left .l-subheader.at_top .l-subheader-cell.at_right,
.l-header.betteres-takeover-middle-span-left .l-subheader.at_middle .l-subheader-cell.at_right,
.l-header.betteres-takeover-bottom-span-left .l-subheader.at_bottom .l-subheader-cell.at_right {
	display: flex;
	flex: 0 0 auto;
}

.l-header.betteres-takeover-top-span-right .l-subheader.at_top .l-subheader-cell.at_center,
.l-header.betteres-takeover-middle-span-right .l-subheader.at_middle .l-subheader-cell.at_center,
.l-header.betteres-takeover-bottom-span-right .l-subheader.at_bottom .l-subheader-cell.at_center,
.l-header.betteres-takeover-top-span-left .l-subheader.at_top .l-subheader-cell.at_center,
.l-header.betteres-takeover-middle-span-left .l-subheader.at_middle .l-subheader-cell.at_center,
.l-header.betteres-takeover-bottom-span-left .l-subheader.at_bottom .l-subheader-cell.at_center {
	flex: 1 1 0;
}

.l-header .betteres-header-host {
	display: flex !important;
	flex-direction: column;
	justify-content: center;
	align-items: stretch;
	width: 100%;
	height: 100%;
	min-width: 0;
	max-width: none;
	line-height: normal;
	container-type: inline-size;
	container-name: betteres-header;
}

.l-header .betteres-header-host > * {
	width: 100%;
	flex: 0 0 auto;
}

.l-header .betteres-header-host.betteres-corners-square {
	border-radius: 0;
	overflow: hidden;
}

.l-header .betteres-header-host.betteres-corners-round {
	border-radius: var(--betteres-radius, 12px);
	overflow: hidden;
}

/*
 * Keep Impreza's native row gutters intact. Their negative outer margins are
 * part of the content-width calculation, but the header embedding can clip
 * that intentional overhang. Only restore its visibility inside a BetteRES
 * takeover; the Page Block's own grid and responsive widths remain unchanged.
 */
.l-header .betteres-header-host,
.l-header .betteres-header-host .w-html,
.l-header .betteres-header-host .l-section,
.l-header .betteres-header-host .l-section-h {
	overflow: visible !important;
}
