/*
 * Homepage integration layer.
 *
 * Homepage_Renderer adds this body class only when the queried singular page's
 * saved content contains [true_axis_bio_homepage]. It is the safety boundary
 * that keeps these theme resets away from WooCommerce and all ordinary content.
 */
body.true-axis-bio-toolkit-homepage {
	overflow-x: hidden;
}

@supports (overflow: clip) {
	body.true-axis-bio-toolkit-homepage {
		overflow-x: clip;
	}
}

/*
 * Astra can apply vertical rhythm directly to #primary and the site-content
 * shell. Reset only the top edge so the hero meets the unchanged site header.
 */
body.true-axis-bio-toolkit-homepage :where(.site-content, #content),
body.true-axis-bio-toolkit-homepage :where(.site-content, #content) > :where(.ast-container, .container, .site-content-inner),
body.true-axis-bio-toolkit-homepage :where(.site-content, #content) :where(#primary, .content-area, .site-main, article.page, article.type-page, .entry-content, .post-content, .page-content) {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

/* Some content filters leave an empty paragraph adjacent to a block shortcode. */
body.true-axis-bio-toolkit-homepage .entry-content > p:empty {
	display: none;
}

/* Remove common classic-theme and Astra page canvases, not the site chrome. */
body.true-axis-bio-toolkit-homepage :where(.site-content, #content) > :where(.ast-container, .container, .site-content-inner),
body.true-axis-bio-toolkit-homepage :where(.site-content, #content) :where(.content-area, .site-main, article.page, article.type-page, .entry-content, .post-content, .page-content),
body.true-axis-bio-toolkit-homepage main {
	background: transparent;
	border: 0;
	box-shadow: none;
	margin: 0;
	max-width: none;
	padding: 0;
	width: 100%;
}

body.true-axis-bio-toolkit-homepage :where(.site-content, #content) > :where(.ast-container, .container, .site-content-inner) {
	display: block;
}

body.true-axis-bio-toolkit-homepage.ast-separate-container :where(.ast-article-single, .ast-article-post),
body.true-axis-bio-toolkit-homepage.ast-page-builder-template :where(.site-content > .ast-container, .site-content #primary) {
	background: transparent;
	border: 0;
	box-shadow: none;
	margin: 0;
	max-width: none;
	padding: 0;
	width: 100%;
}

/* PHP prevents the normal title; these selectors cover themes that bypass it. */
body.true-axis-bio-toolkit-homepage .site-content :where(.entry-header, .page-header),
body.true-axis-bio-toolkit-homepage main :where(.entry-title, .page-title, .wp-block-post-title) {
	display: none !important;
}

/*
 * Escape any remaining theme constraint. Toolkit section containers provide
 * their own readable inner width and padding after this full-bleed boundary.
 */
body.true-axis-bio-toolkit-homepage .tabt-homepage {
	margin-inline: calc(50% - 50vw);
	max-width: 100vw;
	overflow-x: hidden;
	width: 100vw;
}

@supports (overflow: clip) {
	body.true-axis-bio-toolkit-homepage .tabt-homepage {
		overflow-x: clip;
	}
}

/* Complete the saved hero alignment choices without changing their content. */
.tabt-home-hero--right .tabt-home-hero__content {
	text-align: right;
}

.tabt-home-hero--right h1,
.tabt-home-hero--right p {
	margin-left: auto;
	margin-right: 0;
}

.tabt-home-hero--right .tabt-home-actions {
	justify-content: flex-end;
}

@media (max-width: 480px) {
	.tabt-home-hero--right .tabt-home-actions {
		align-items: stretch;
	}
}
