.free-space {
	border-radius: var(--border-radius);
	background: var(--bg2);
	container: free-space / inline-size;
	contain: content;
	margin-bottom: 20px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.free-space__img {
	background-size: cover;
	background-repeat: no-repeat;
	flex-shrink: 0;
}

.free-space__title {
	line-height: 1.1;
	text-wrap: balance;
	text-transform: uppercase;
	font-weight: bold;
}
.free-space__title-orange {
	color: var(--theme-orange);
	display: block;
}
.free-space__title-small {
	text-transform: none;
	font-weight: normal;
	display: block;
}

.free-space__features {
	display: flex;
	gap:2em;
	margin-bottom: 1.2em;
	margin-top: 1em;
}
.free-space__feature {
	display: flex;
	gap:0.5em;
}
.free-space__feature-icon {
	align-self: flex-start;
	width: min(72px, 1.8em);
	aspect-ratio: 1;
	background: 50% 50% / contain no-repeat;
	margin: 0.6em;
}
.free-space__feature::before {
	content: '';
	display: block;
	position: absolute;
	top:0;
	left:0;
	width: calc(min(72px, 1.8em) + 1.2em);
	aspect-ratio: 1;
	border-radius: 50%;
	background: var(--bg2-darken5);
}
.free-space__feature-text {
	align-self: center;
}


@media all and (max-width: 599px) {
	.free-space {
		flex-direction: column;
	}
	.free-space__img {
		aspect-ratio: 3 / 2;
		width: 90%;
		margin-left: 10%;
		border-radius: 400px 0 0 400px;
		background-position: 50% 50%;
	}
	.free-space__info {
		margin: 7cqw;
	}
	.free-space__title {
		margin-bottom: 0.4em;
		font-size: 7cqw;
		text-align: center;
	}
	.free-space__features {
		font-size: 5.5cqw;
		justify-content: center;
	}
	.free-space__btn {
		display: block;
		width: min(100%, 250px);
		margin-left: auto;
		margin-right: auto;
	}
}

@media all and (min-width: 600px) {
	.free-space {
		justify-content: space-evenly;
		flex-direction: row-reverse;
	}
	.free-space__img {
		background-position: 50% 0;
		aspect-ratio: 36 / 45;
		width: min(35%, 430px);
		border-radius: 0 0 400px 400px;
		margin-right: 2cqw;
		margin-bottom: 2cqw;
	}
	.free-space__info {
		max-width: 50%;
		margin: 2cqw;
	}
	.free-space__title {
		font-size: min(55px, 4cqw);
	}
	.free-space__features {
		font-size: min(40px, 3cqw);
	}
}