/* Header alignment – keep logo/button inside the same content width
 * as the campaign sections, but ONLY on single campaign pages. */

@media (min-width: 921px) {
	/* Match header content width and side padding to campaign layout shell
	 * only when viewing a single product (campaign) page. */
	body.single-product .main-header-bar .ast-container,
	body.single-product .ast-primary-header-bar .ast-container {
		max-width: 1160px;
		width: 100%;
		padding-left: 46px;
		padding-right: 46px;
		margin-left: auto;
		margin-right: auto;
		box-sizing: border-box;
	}

	/* Astra header builder layouts often use the grid row as the real container. */
	body.single-product .ast-builder-grid-row,
	body.single-product .ast-builder-grid-row-container,
	body.single-product .ast-builder-grid-row-container-inner {
		max-width: 1160px;
		width: 100%;
		padding-left: 46px;
		padding-right: 46px;
		margin-left: auto;
		margin-right: auto;
		box-sizing: border-box;
	}

	/* Fix tiny logo caused by theme inline max-width on the link. */
	body.single-product a.custom-logo-link,
	body.single-product .site-logo-img .custom-logo-link,
	body.single-product .site-branding .custom-logo-link {
		max-width: none !important;
		width: auto !important;
	}

	/* Tidy logo size so it sits neatly under the content area. */
	body.single-product .site-branding img.custom-logo,
	body.single-product .site-branding img {
		max-height: 72px;
		height: auto;
		width: auto;
	}

	/* Ensure the button stays aligned with the right edge of content. */
	body.single-product .main-header-bar .site-header-section-right,
	body.single-product .ast-primary-header-bar .site-header-section-right,
	body.single-product .ast-builder-grid-row .site-header-section-right {
		justify-content: flex-end;
	}

	/* Make "Contribute Time & Skills" button wide enough for one-line text. */
	body.single-product .main-header-bar .ast-custom-button,
	body.single-product .ast-primary-header-bar .ast-custom-button {
		padding-left: 28px;
		padding-right: 28px;
		min-width: 210px;
		white-space: nowrap;
	}
}
