body.wi-live-over-page:not(.wi-live-over-can-see-admin-hints) .wi-live-over-admin-only {
	display: none !important;
}

body.wi-live-over-page .wp-block-shortcode {
	text-align: center;
}

body.wi-live-over-page .wi-live-over-shell {
	width: 100%;
	max-width: var(--wp--style--global--content-size, 720px);
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}

body.wi-live-over-page:not(.wi-live-over-can-see-admin-hints) main.wp-block-group {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	min-height: 0;
}

body.wi-live-over-page:not(.wi-live-over-can-see-admin-hints) main .entry-content.wp-block-post-content,
body.wi-live-over-page:not(.wi-live-over-can-see-admin-hints) main .wp-block-post-content {
	flex: 1 1 auto;
	display: flex !important;
	flex-direction: column;
	justify-content: center !important;
	align-items: center !important;
	min-height: 0;
	padding-bottom: 10vh;
}

body.wi-live-over-page:not(.wi-live-over-can-see-admin-hints) .wi-live-over-shell {
	flex: 0 0 auto;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	transform: translateY(-6vh);
}

body.wi-live-over-page:not(.wi-live-over-can-see-admin-hints) .wi-live-over-shell > .wp-block-heading {
	margin-top: 0;
	margin-bottom: 0;
	width: 100%;
}

body.wi-live-over-page .wi-live-over-body {
	display: block;
	width: 100%;
	margin-top: var(--wp--preset--spacing--40, 2rem);
}

body.wi-live-over-page .wi-live-over-body:empty {
	display: none;
}

body.wi-live-over-page.wi-live-over-can-see-admin-hints main .entry-content.wp-block-post-content,
body.wi-live-over-page.wi-live-over-can-see-admin-hints main .wp-block-post-content {
	justify-content: flex-start !important;
	align-items: stretch !important;
	padding-top: min(12vh, 5rem);
	padding-bottom: 0;
}

body.wi-live-over-page.wi-live-over-can-see-admin-hints .wi-live-over-shell {
	max-width: min(100vw - 2rem, var(--wp--style--global--wide-size, 1340px));
	width: 100%;
}

body.wi-live-over-page.wi-live-over-can-see-admin-hints main .entry-content.wp-block-post-content,
body.wi-live-over-page.wi-live-over-can-see-admin-hints main .wp-block-post-content {
	max-width: min(100vw - 2rem, var(--wp--style--global--wide-size, 1340px));
	width: 100%;
	margin-left: auto;
	margin-right: auto;
}

body.wi-live-over-page.wi-live-over-can-see-admin-hints .wi-live-over-shell > .wp-block-heading {
	margin-bottom: var(--wp--preset--spacing--40, 2rem);
}

body.wi-live-over-page .wi-live-over-admin-only {
	margin-top: var(--wp--preset--spacing--30, 1.5rem);
	text-align: left;
	width: 100%;
}

body.wi-live-over-page.wi-live-over-can-see-admin-hints .wi-live-over-admin-only.alignwide {
	max-width: 100%;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
}

body.wi-live-over-page .wi-live-over-admin-only .wi_grid_container {
	margin-top: var(--wp--preset--spacing--30, 1.5rem);
	max-width: 100% !important;
	width: 100% !important;
}

@media (min-width: 601px) {
	body.wi-live-over-page.wi-live-over-can-see-admin-hints .wi-live-over-admin-only .wi_grid_container[data-wi-grid-instance] {
		max-width: min(100vw - 32px, var(--wp--style--global--wide-size, 1340px)) !important;
		width: min(100vw - 32px, var(--wp--style--global--wide-size, 1340px)) !important;
		position: relative !important;
		left: 50% !important;
		transform: translateX(-50%) !important;
		box-sizing: border-box !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
}

@media (min-width: 960px) {
	body.wi-live-over-page .wi-live-over-admin-only .wi_grid_wrapper {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 959px) {
	body.wi-live-over-page .wi-live-over-admin-only .wi_grid_wrapper {
		grid-template-columns: 1fr !important;
	}
}

/* A047: closed page uses page-webinar-registration template (#page.site, no .wp-site-blocks),
   so the existing .wi-wb-registration-landing 100vh chain misses. Propagate viewport height
   here so .entry-content can center the H1 and the footer wrapper falls to the bottom. */
body.wi-live-over-page {
	min-height: 100dvh;
	min-height: 100vh;
}

body.wi-live-over-page #page.site {
	display: flex;
	flex-direction: column;
	min-height: 100dvh;
	min-height: 100vh;
}

body.wi-live-over-page #page.site > main#primary.site-main {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	min-height: 0;
}
