/*
* Generico
* ********************
*/

.primavera-bg {
	height: 100%;
	object-fit: cover;
	object-position: 50% 50%;
	pointer-events: none;
	position: absolute;
	inset: 0;
	width: 100%;
	user-select: none;
}
.primavera-title {
	/* 400w = 36px; 1300w = 80px */
	font-size: clamp(2.25rem, 1.0278rem + 4.8889vw, 5rem);
	font-weight: 800;
	line-height: 1;
	margin: 0 0 1em 0;
}
.primavera-title span {
	color: var(--color-iris);
}
.primavera-info {
	/* 400w = 16px; 991w = 30px */
	font-size: clamp(1rem, 0.4078rem + 2.3689vw, 1.875rem);
	display: inline-flex;
	align-items: center;
	gap: 0 0.42em;
	text-align: center;
}
.primavera-info-title {
	background: var(--color-iris);
	font-weight: 800;
	line-height: 1;
	margin-bottom: 0.7em;
	padding: 0.1em 0.25em;
	transform: skewX(-5deg);
}
.primavera-info-title span {
	display: block;
	transform: skewX(5deg);
}
.primavera-info-item svg {
	display: block;
	height: auto;
	margin: 0 0 .15em 0;
	width: 4.13em;
}
.primavera-info-plus {
	font-size: 0.8em;
	align-self: flex-start;
	font-weight: 800;
	line-height: 1.5;
}
.primavera-info-subtitle {
	font-size: 1em;
	font-weight: 700;
	line-height: 1;
}
.primavera-price {
	display: inline-grid;
	align-self: center;
	font-size: 120px;
	gap: 0 0.08em;
	white-space: nowrap;
}
.primavera-price div:nth-child(1) {
	font-weight: 800;
	grid-row: 1 / span 2;
	letter-spacing: -0.05em;
	line-height: 0.8;
}
.primavera-price div:nth-child(2) {
	font-size: 0.57em;
	font-weight: 800;
	grid-column: 2;
	line-height: 0.7;
	margin-top: 0.1em;
	text-align: left;
}
.primavera-price div:nth-child(3) {
	font-size: 0.24em;
	font-weight: 700;
	grid-column: 2;
	line-height: 1.1;
	text-align: left;
}

@media (min-width: 992px) {
	.primavera-info {
		/* 992w = 30px; 1300w = 38px */
		font-size: clamp(1.875rem, 0.2646rem + 2.5974vw, 2.375rem);
	}
}



/*
* Home
* ********************
*/

.home-primavera {
	background: var(--color-primary);
	color: #fff;
	margin-bottom: -144px;
	padding-bottom: 144px;
	position: relative;
	overflow: hidden;
}
.home-primavera h1 {
	color: #fff;
	margin: 0 0 12px 0;
}
.home-primavera-info {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 40px;
}
.home-primavera-price {
	background: var(--color-iris);
	padding: 16px 40px;
	transform: skewX(-5deg);
}
.home-primavera-price > div {
	display: inline-flex;
	flex-direction: column;
	transform: skewX(5deg);
}
.home-primavera-price-title {
	font-weight: 800;
}
.home-primavera-price .primavera-price {
	font-size: 80px;
	margin: 8px 0 16px 0;
}

@media (min-width: 992px) {
	.home-primavera-info {
		flex-direction: row;
		align-items: center;
		justify-content: space-around;
	}
	.home-primavera-price {
		padding: 28px 56px;
	}
	.home-primavera-price .primavera-price {
		/* 992w = 100px; 1300w = 120px */
		font-size: clamp(6.25rem, 2.224rem + 6.4935vw, 7.5rem);
	}
}



/*
* Site
* ********************
*/

.site-primavera {
	background: var(--color-primary);
	position: relative;
	overflow: hidden;
}
.site-primavera .site-center {
	display: flex;
	flex-direction: column;
	align-items: center;
}
.site-primavera-info {
	color: #fff;
	text-align: center;
}
.site-primavera-info .primavera-info {
	margin-bottom: 2em;
}
.site-primavera-product {
	background: var(--color-white);
	border-radius: 8px;
	color: var(--color-text-medium);
	margin: 0 auto;
	padding: 24px;
	text-align: center;
	width: 400px;
	max-width: 100%;
}
.site-primavera-product-pricing-title {
	color: var(--color-dark);
	font-size: 18px;
	font-weight: bold;
	margin: 0 0 .6em 0;
}
.site-primavera-product .primavera-price {
	color: var(--color-dark);
}
.site-primavera-product-features {
	display: flex;
	flex-direction: column;
	gap: 20px;
	margin: 40px 0;
	text-align: left;
}
.site-primavera-product-features-item {
	display: flex;
	align-items: flex-start;
	gap: 16px;
	line-height: 1.2em;
}
.site-primavera-product-features-item .cbicon {
	color: var(--color-primary);
	flex: 0 0 36px;
}
.site-primavera-product-features-item strong {
	color: var(--color-primary);
}

@media (min-width: 500px) {
	.site-primavera-product {
		padding: 32px 40px 40px 40px;
	}
}
@media (min-width: 992px) {
	.site-primavera .site-center {
		flex-direction: row;
		align-items: flex-start;
		gap: 40px;
	}
	.site-primavera-info {
		margin-top: 40px;
		text-align: left;
	}
	.site-primavera-info .primavera-info {
		margin-bottom: 0;
	}
}




/*
* Otros estilos
* ********************
*/

.infopanel-1699-white .infopanel {
	height: 100%;
}

/* modal */
.promo-modal {
	align-items: flex-start;
	backdrop-filter: blur(5px);
	overflow: auto;
	overscroll-behavior: contain;
	-webkit-overflow-scrolling: touch;
}
.promo-modal .modal-window {
	animation: modal-desktop-open 0.3s cubic-bezier(0.075, 0.82, 0.165, 1) forwards;
	height: auto;
	max-height: unset;
	max-width: 700px;
	overflow: hidden;
	position: relative;
}
@media (max-width: 767px) {
	.promo-modal {
		padding: 16px;	
	}
}