.pes-hero {
	--pes-hero-brand: var(--color-brand, #002f69);
	--pes-hero-cta: var(--color-cta, #0c8bb9);
	--pes-hero-text: var(--color-text, #000);
	--pes-hero-bg: #d7ebf7;
	--pes-hero-radius: 4.5rem;
	font-family: var(--font-display, "Schibsted Grotesk", sans-serif);
	box-sizing: border-box;
	width: 100%;
	max-width: none;
	background: var(--pes-hero-bg);
	position: relative;
	z-index: 2;
	overflow: visible;
	/* Y positivo: la sombra cae abajo y a los lados, sin subir por encima */
	box-shadow: 4px 10px 13px 0 rgba(0, 0, 0, 0.1);
}

/* El contenedor de Elementor no debe recortar la sombra ni taparla el bloque siguiente */
.elementor-widget-pes-hero,
.e-con:has(.pes-hero) {
	position: relative;
	z-index: 2;
	overflow: visible;
}

/* Si el hero està dins d'un contenidor boxed d'Elementor, trenca a full width */
.e-con-boxed:not(.container-full) .pes-hero {
	width: 100vw;
	max-width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
}

.pes-hero *,
.pes-hero *::before,
.pes-hero *::after {
	box-sizing: border-box;
}

.pes-hero--cutout {
	background: linear-gradient(182deg, #fff 33.26%, #b6dff7 91.28%);
}

.pes-hero__inner {
	padding-top: clamp(2rem, 5vw, 4.5rem);
	padding-bottom: 0;

}

.pes-hero__content {
	min-width: 0;
	padding-bottom: clamp(2rem, 5vw, 4.5rem);
}

.pes-hero__content-inner {
	padding-block: 0.25rem;
}

.pes-hero__title {
	margin: 0 0 1rem;
	font-family: var(--font-display, "Schibsted Grotesk", sans-serif);
	font-weight: var(--font-weight-heading, 800);
	font-size: var(--font-size-h1, 50px);
	line-height: var(--lh-heading, 1.25);
	letter-spacing: var(--letter-spacing-display, -0.02em);
	color: var(--pes-hero-brand);
}

.pes-hero h2.pes-hero__title {
	font-size: var(--font-size-h2, 50px);
}

.pes-hero h3.pes-hero__title {
	font-size: var(--font-size-h3, 26px);
	font-weight: var(--font-weight-h3, 500);
}

.pes-hero__subtitle {
	margin-top: 1.25rem;
}

.pes-hero__intro,
.pes-hero__text,
.pes-hero__text p {
	color: var(--pes-hero-text);
}

.pes-hero__intro {
	margin: 0 0 1em;
	color: var(--pes-hero-cta);
}

.pes-hero--rounded-cta .pes-hero__intro {
	color: var(--pes-hero-text);
}

.pes-hero__text {
	margin: 0;
}

.pes-hero__text + .pes-hero__text {
	margin-top: 0.85rem;
}

.pes-hero__text p {
	margin: 0 0 1em;
}

.pes-hero__text p:last-child {
	margin-bottom: 0;
}

.pes-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.85rem 1rem;
	margin-top: 1.5rem;
}

.pes-hero__media {
	min-width: 0;
	display: flex;
	justify-content: center;
	align-items: flex-end;
}

.pes-hero__img {
	display: block;
	max-width: 100%;
	height: auto;
}

.pes-hero__text img {
	max-width: 100%;
	height: auto;
}

/* Layout A: imagen anclada al bottom de la sección (el padding bottom solo va en el texto) */
.pes-hero--cutout .pes-hero__content {
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.pes-hero--cutout .pes-hero__media {
	display: flex;
	justify-content: flex-end;
	align-items: flex-end;
	align-self: stretch;
	padding-bottom: 0;
	margin-bottom: 0;
}

.pes-hero--cutout .pes-hero__img {
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
	vertical-align: bottom;
	object-fit: contain;
	object-position: right bottom;
}

.pes-hero--rounded .pes-hero__img,
.pes-hero--rounded-cta .pes-hero__img {
	width: 100%;
	max-width: 460px;
	aspect-ratio: 3 / 2;
	object-fit: cover;
	border-radius: var(--pes-hero-radius);
}

@media (max-width: 991.98px) {
	.pes-hero__media {
		order: -1;
		justify-content: center;
	}

	.pes-hero--cutout .pes-hero__img {
		object-position: center bottom;
	}

	.pes-hero--rounded .pes-hero__img,
	.pes-hero--rounded-cta .pes-hero__img {
		margin-inline: auto;
		border-radius: calc(var(--pes-hero-radius) * 0.65);
	}
}
