.theoasso-hero{
	background: #000;
	color: var(--wp--preset--color--base);
	padding: 125px ;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	position: relative;
	overflow: hidden;
}

/* Full-bleed breakout even inside constrained layouts */
.theoasso-hero.alignfull,
.wp-block-theoasso-hero.alignfull{
	width: calc(100vw - 64px);
	max-width: calc(100vw - 64px);
	margin-left: calc(50% - 50vw + 32px);
	margin-right: calc(50% - 50vw + 32px);
}


.theoasso-hero__inner{
	max-width: 900px;
}

.theoasso-hero__title{
	margin: 0;
	font-family: var(--wp--preset--font-family--google-sans-flex);
	font-weight: 400;
	font-style: normal;
	font-size: 48px;
	line-height: 48px;
	letter-spacing: -0.02em;
    color: var(--wp--preset--color--main-bg);
}

/* Title line 1 arrow icon */
.theoasso-hero__title:not(.theoasso-hero__title--line2){
	display: inline-flex;
	align-items: baseline;
	gap: 0.35em;
}

.theoasso-hero__title:not(.theoasso-hero__title--line2)::after{
	content: "";
	width: 25px;
	height: 25px;
	background: url("../../assets/images/arrow.svg") no-repeat center / contain;
	flex: 0 0 auto;
}

.theoasso-hero__title--line2{
	margin-top: 0.35em;
}

.theoasso-hero__highlight{
	color: var(--wp--preset--color--blue);
}

.theoasso-hero__description{
	margin: 1.25rem 0 0;
	color: var(--wp--preset--color--main-bg);
    opacity: 0.8;
	font-size: 1rem;
	line-height: 1.5;
}

.theoasso-hero__stats{
	margin-top: 3.25rem;
	display: flex;
	justify-content: center;
	gap: 4.5rem;
}

.theoasso-hero__statValue{
	font-size: 2.25rem;
	line-height: 1;
	font-weight: 700;
    color: var(--wp--preset--color--main-bg);
}

.theoasso-hero__statLabel{
	margin-top: 0.6rem;
	color: var(--wp--preset--color--main-bg);
    opacity: 0.8;
	font-size: 0.95rem;
}

.theoasso-hero__button{
	display: inline-flex;
	justify-content: center;
	align-items: center;
	cursor: pointer;
	margin-top: 3.25rem;
	padding: 0.9rem 1.6rem;
	border-radius: 999px;
	background: var(--wp--preset--color--main-bg);
	color: var(--wp--preset--color--contrast);
	text-decoration: none;
	font-weight: 600;
}

.theoasso-hero__button:hover{
	text-decoration: none;
}

.theoasso-hero__corner{
	position: absolute;
	right: 0px;
	bottom: 0px;
	width: min(280px, 10vw);
	max-width: 300px;
	pointer-events: none;
}

.theoasso-hero__corner img{
	display: block;
	width: 100%;
	height: auto;
}

@media (max-width: 600px){
	.theoasso-hero__stats{
		gap: 2.5rem;
	}
	.theoasso-hero__statValue{
		font-size: 1.75rem;
	}
}
