/**
 * EVA STS Block Minimal CSS
 *
 * Purpose:
 * Replace WordPress wp-block-library/style.min.css on /sts/ only.
 *
 * Scope:
 * This revised version is intentionally safety-oriented rather than aggressively
 * minimal. It keeps the block types actually used on the STS page:
 * images, columns, cover blocks, alignment helpers, text alignment, lists,
 * and basic layout helpers.
 *
 * Revision note:
 * Keep generic .aligncenter behavior as close to WordPress/theme defaults as
 * possible. Only image-block-specific aligncenter elements receive auto side
 * margins. This avoids shifting legacy/classic figure images on the STS page.
 */

/* Base safety for block-contained media */
.entry-content .wp-block-image,
.entry-content figure {
	box-sizing: border-box;
}

.entry-content .wp-block-image img,
.entry-content img[class*="wp-image-"] {
	box-sizing: border-box;
	height: auto;
	max-width: 100%;
}

.entry-content .wp-block-image img {
	vertical-align: bottom;
}

.entry-content .wp-block-image figure {
	margin: 0;
}

.entry-content .wp-block-image.aligncenter,
.entry-content .wp-block-image .aligncenter,
.entry-content .wp-block-image.alignleft,
.entry-content .wp-block-image .alignleft,
.entry-content .wp-block-image.alignright,
.entry-content .wp-block-image .alignright {
	display: table;
}

.entry-content .wp-block-image.aligncenter,
.entry-content .wp-block-image .aligncenter {
	margin-left: auto;
	margin-right: auto;
}

.entry-content .aligncenter {
	clear: both;
}

.entry-content .wp-block-image.aligncenter > figcaption,
.entry-content .wp-block-image .aligncenter > figcaption,
.entry-content .wp-block-image.alignleft > figcaption,
.entry-content .wp-block-image .alignleft > figcaption,
.entry-content .wp-block-image.alignright > figcaption,
.entry-content .wp-block-image .alignright > figcaption {
	caption-side: bottom;
	display: table-caption;
}

.entry-content .wp-block-image figcaption {
	margin-bottom: 1em;
	margin-top: 0.5em;
}

/* Text alignment helpers used by STS content */
.entry-content .has-text-align-center {
	text-align: center;
}

.entry-content .has-text-align-left {
	text-align: left;
}

.entry-content .has-text-align-right {
	text-align: right;
}

/* WordPress list/block box sizing */
.entry-content ol,
.entry-content ul,
.entry-content .wp-block-list {
	box-sizing: border-box;
}

/* Columns: keep WordPress block column behavior without loading full core CSS */
.entry-content .wp-block-columns {
	box-sizing: border-box;
	display: flex;
	flex-wrap: wrap;
	align-items: normal;
	gap: var(--wp--style--block-gap, 2em);
	margin-bottom: 1.75em;
}

.entry-content .wp-block-column {
	flex-grow: 1;
	min-width: 0;
	overflow-wrap: break-word;
	word-break: break-word;
}

.entry-content .wp-block-columns.are-vertically-aligned-top {
	align-items: flex-start;
}

.entry-content .wp-block-columns.are-vertically-aligned-center {
	align-items: center;
}

.entry-content .wp-block-columns.are-vertically-aligned-bottom {
	align-items: flex-end;
}

.entry-content .wp-block-column.is-vertically-aligned-top {
	align-self: flex-start;
}

.entry-content .wp-block-column.is-vertically-aligned-center {
	align-self: center;
}

.entry-content .wp-block-column.is-vertically-aligned-bottom {
	align-self: flex-end;
}

.entry-content .wp-block-columns.is-not-stacked-on-mobile {
	flex-wrap: nowrap;
}

.entry-content .wp-block-columns.is-not-stacked-on-mobile > .wp-block-column {
	flex-basis: 0;
	flex-grow: 1;
}

@media (min-width: 782px) {
	.entry-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
		flex-basis: 0;
		flex-grow: 1;
	}

	.entry-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis"] {
		flex-grow: 0;
	}
}

@media (max-width: 781px) {
	.entry-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
		flex-basis: 100%;
	}
}

/* Cover blocks used in STS body content */
.entry-content .wp-block-cover,
.entry-content .wp-block-cover-image {
	align-items: center;
	background-position: 50%;
	box-sizing: border-box;
	display: flex;
	justify-content: center;
	min-height: 430px;
	overflow: hidden;
	overflow: clip;
	padding: 1em;
	position: relative;
}

.entry-content .wp-block-cover .wp-block-cover__background,
.entry-content .wp-block-cover .wp-block-cover__gradient-background,
.entry-content .wp-block-cover-image .wp-block-cover__background,
.entry-content .wp-block-cover-image .wp-block-cover__gradient-background,
.entry-content .wp-block-cover.has-background-dim:not(.has-background-gradient)::before,
.entry-content .wp-block-cover-image.has-background-dim:not(.has-background-gradient)::before {
	bottom: 0;
	content: "";
	left: 0;
	opacity: 0.5;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 1;
}

.entry-content .wp-block-cover .wp-block-cover__background.has-background-dim.has-background-dim-0,
.entry-content .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-0 {
	opacity: 0;
}

.entry-content .wp-block-cover .wp-block-cover__background.has-background-dim.has-background-dim-10,
.entry-content .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-10 {
	opacity: 0.1;
}

.entry-content .wp-block-cover .wp-block-cover__background.has-background-dim.has-background-dim-20,
.entry-content .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-20 {
	opacity: 0.2;
}

.entry-content .wp-block-cover .wp-block-cover__background.has-background-dim.has-background-dim-30,
.entry-content .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-30 {
	opacity: 0.3;
}

.entry-content .wp-block-cover .wp-block-cover__background.has-background-dim.has-background-dim-40,
.entry-content .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-40 {
	opacity: 0.4;
}

.entry-content .wp-block-cover .wp-block-cover__background.has-background-dim.has-background-dim-50,
.entry-content .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-50 {
	opacity: 0.5;
}

.entry-content .wp-block-cover .wp-block-cover__background.has-background-dim.has-background-dim-60,
.entry-content .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-60 {
	opacity: 0.6;
}

.entry-content .wp-block-cover .wp-block-cover__background.has-background-dim.has-background-dim-70,
.entry-content .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-70 {
	opacity: 0.7;
}

.entry-content .wp-block-cover .wp-block-cover__background.has-background-dim.has-background-dim-80,
.entry-content .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-80 {
	opacity: 0.8;
}

.entry-content .wp-block-cover .wp-block-cover__background.has-background-dim.has-background-dim-90,
.entry-content .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-90 {
	opacity: 0.9;
}

.entry-content .wp-block-cover .wp-block-cover__background.has-background-dim.has-background-dim-100,
.entry-content .wp-block-cover .wp-block-cover__gradient-background.has-background-dim.has-background-dim-100 {
	opacity: 1;
}

.entry-content .wp-block-cover .wp-block-cover__inner-container,
.entry-content .wp-block-cover-image .wp-block-cover__inner-container {
	color: inherit;
	position: relative;
	width: 100%;
	z-index: 1;
}

.entry-content .wp-block-cover:not(.has-text-color),
.entry-content .wp-block-cover-image:not(.has-text-color) {
	color: #fff;
}

.entry-content .wp-block-cover.is-light:not(.has-text-color),
.entry-content .wp-block-cover-image.is-light:not(.has-text-color) {
	color: #000;
}

.entry-content .wp-block-cover h1:not(.has-text-color),
.entry-content .wp-block-cover h2:not(.has-text-color),
.entry-content .wp-block-cover h3:not(.has-text-color),
.entry-content .wp-block-cover h4:not(.has-text-color),
.entry-content .wp-block-cover h5:not(.has-text-color),
.entry-content .wp-block-cover h6:not(.has-text-color),
.entry-content .wp-block-cover p:not(.has-text-color) {
	color: inherit;
}

.entry-content .wp-block-cover img.wp-block-cover__image-background,
.entry-content .wp-block-cover video.wp-block-cover__video-background,
.entry-content .wp-block-cover-image img.wp-block-cover__image-background,
.entry-content .wp-block-cover-image video.wp-block-cover__video-background {
	border: 0;
	bottom: 0;
	box-shadow: none;
	height: 100%;
	left: 0;
	margin: 0;
	max-height: none;
	max-width: none;
	object-fit: cover;
	outline: 0;
	padding: 0;
	position: absolute;
	right: 0;
	top: 0;
	width: 100%;
}

/* Layout helpers retained because STS uses is-layout-* classes */
.entry-content .is-layout-flex {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--wp--style--block-gap, 0.5em);
}

.entry-content .is-layout-flex > * {
	margin: 0;
}

.entry-content .is-layout-flow > * {
	margin-block-start: 0;
	margin-block-end: 0;
}

.entry-content .is-layout-flow > * + * {
	margin-block-start: var(--wp--style--block-gap, 1.5em);
	margin-block-end: 0;
}

/* Alignment helpers. Kept intentionally broad but scoped to entry-content. */
.entry-content .alignwide {
	max-width: 100%;
}

.entry-content .alignfull {
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	max-width: 100vw;
	width: 100vw;
}
