body{
	counter-reset: section;
}

#page:has( > #content .entry-content > section.hero:first-child) section.hero{
	padding-top: var(--header-height);
}

body.home section > .wp-block-group__inner-container{
	width: min(100% - 3rem, var(--site-width));
	margin-inline: auto;
}
body.home .entry-content > section{
	padding-block: clamp(4rem, 5vw, 6rem);
}

body.home .entry-content > section.hero{
	min-height: calc(100dvh - var(--wp-admin--admin-bar--height, 0px));
}

@media(min-width: 860px){
	body.home .entry-content > section{
		min-height: calc(100dvh - var(--wp-admin--admin-bar--height, 0px));
	}
}

body.home section:not(.hero) h2{
	font-size: clamp(2.4rem, 4vw, 4.5rem);
	font-weight: 700;
	max-width: 56rem;
	margin-bottom: .8em;
}
body.home section:not(.hero) h2:has( + :is(p.has-text-align-center, h3)){
	margin-bottom: .2em;
}
body.home section:not(.hero) h2 + h3{
	color: var(--medium-gray);
	font-size: clamp(1.2rem, 2.5vw, 1.4rem);
}
body.home section:not(.hero) h2 + :is(p.has-text-align-center, h3),
body.home section:not(.hero) h2 + h3 + p.has-text-align-center{
	margin-bottom: clamp(30px, 4vw, 58px);
}
body.home section:not(.hero) h2 + h3:has( + p.has-text-align-center){
	margin-bottom: 1.6rem;
}

section.hero{
	display: grid;
	place-content: center;
	background: var(--dark-gray);
	color: #fff;
	position: relative;
}
section.hero h1{
	font-size: clamp(2.4rem, 3.5vw, 4rem);
	line-height: 1;
}
section.hero :is(h1, h2){
	font-weight: 500;
	margin: 0;
	text-wrap: auto;
}
section.hero h2{
	font-size: clamp(1.2rem, 3.5vw, 1.6rem);
	max-width: 26rem;
	line-height: 1.4;
}
@media(max-width: 600px){
	section.hero h2{
		text-wrap: balance;
	}
}
section.hero .wp-block-column{
	display: flex;
	flex-direction: column;
	gap: clamp(2rem, 2.4vw, 4rem);
	position: relative;
	z-index: 1;
}
section.hero .wp-block-video{
	position: absolute;
	margin: 0;
	z-index: 0;
	inset: 0;
}
section.hero .wp-block-video::before{
	content: '';
	height: 100%;
	width: 60%;
	position: absolute;
	z-index: 1;
	background: linear-gradient(90deg, rgb(23 22 30) 0%, rgba(255, 255, 255, 0) 100%);
}
section.hero video{
	object-fit: cover;
	opacity: 0.3;
	width: 100%;
	height: 100%;
}


section.how-it-works .wp-block-media-text{
	counter-increment: section;
}
section.how-it-works .wp-block-media-text + .wp-block-media-text{
	margin-top: clamp(4rem, 7.5vw, 8rem);
}
section.how-it-works .wp-block-media-text__content::before{
	content: "0"counter(section);
	color: var(--light-gray);
	font-size: clamp(2rem, 3vw, 6rem);
	font-weight: 700;
}

section.how-it-works .wp-block-media-text :is(h4,p:last-of-type){
	margin-bottom: 0;
}
section.how-it-works .wp-block-media-text *:not(p)+p,
section.how-it-works .wp-block-media-text .wp-block-buttons{
	margin-top: clamp(2rem, 2.5vw, 3rem);
}


#page section.tailored-job{
	min-height: auto;
	background: var(--dark-gray);
	color: #fff;
	position: relative;
}
@media(min-width: 860px){
	#page section.tailored-job > .wp-block-group__inner-container{
		width: initial;
		margin-inline: initial;
		max-width: 40rem;
		padding-left: clamp(1.5rem, 3.5vw, 4rem);
	}	
}
#page section.tailored-job h3{
	margin-bottom: 1em;
}
section.tailored-job h4{
	color: #fff;
}
section.tailored-job .work-typelist{
	padding: 0;
	list-style: none;
	padding-top: 1rem;
	display: flex;
	gap: 1rem 1.4rem;
	margin-bottom: 2rem;
	flex-wrap: wrap;
}
section.tailored-job .work-typelist li{
	display: flex;
	gap: 5px;
}

@media( min-width: 1720px){
	section.tailored-job #carousel{
		position: absolute;
		right: 0;
		top: 50%;
		translate: 0 -50%;
	}
	#content section.tailored-job #carousel img{
		max-width: 1064px;
	}
}

section.masonry{
	display: flex;
	align-items: center;
}

section.masonry .is-layout-flex{
	--gap: 1.4rem;
	gap: var(--gap);
	align-items: normal;
	min-height: 15rem;
}
@media(max-width: 820px){
	section.masonry .is-layout-flex{
		flex-direction: column;
	}
}
section.masonry .is-layout-flex + .is-layout-flex{
	margin-top: var(--gap);
}
section.masonry .is-layout-flex > .card:nth-child(1),
section.masonry .is-layout-flex:nth-of-type(odd) > .card:nth-child(2){
	flex-basis: 60%;
}
section.masonry .is-layout-flex > .card:nth-child(2),
section.masonry .is-layout-flex:nth-of-type(odd) > .card:nth-child(1){
	flex-basis: 40%;
}

section.masonry .is-layout-flex > .card{
	width: 100%;
	max-width: initial;
}
section.masonry .card svg{
	font-size: clamp(1.4rem, 2.5vw, 2rem);
	margin-bottom: 1rem;
}
section.masonry .card h3{
	font-size: clamp(1.4rem, 2.5vw, 1.6rem);
}
section.masonry .card p{
	color: var(--medium-gray);
	font-weight: 600;
	max-width: 20rem;
	margin: 0 auto;
	text-wrap: balance;
}

section.testimonials{
	background: var(--card-gray);
}
section.testimonials .wp-block-group{
	padding-inline: clamp(0px, 2.4vw, 4rem);
}

@media( min-width: 860px){
	#content section.testimonials .wp-block-media-text__media img{
		max-width: 24rem;
	}
}
section.testimonials blockquote{
	font-size: clamp(1.2rem, 3.4vw, 1.5rem);
	font-weight: 500;
	margin-bottom: 2rem;
}
section.testimonials blockquote ~ *{
	margin-bottom: 0;
	font-size: 1.2rem;
	color: var(--medium-gray);
}
section.testimonials blockquote ~ p strong{
	color: var(--color);
}

section.cta{
	background: radial-gradient(#363e4f, var(--dark-gray));
	display: grid;
	place-content: center;
	color: #fff;
}

section.cta ul.motivation-points{
	list-style: none;
	display: flex;
	justify-content: center;
	margin-top: 4rem;
	gap: 2rem;
	flex-wrap: wrap;
}
section.cta ul.motivation-points li{
	display: flex;
	gap: 5px;
	align-items: center;
}
section.cta ul.motivation-points li::before{
    content: "";
    display: block;
    width: 18px;
    height: 18px;
    background: #fff;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") no-repeat center;
}

section.faq{
	background: var(--dark-gray);
	color: #fff;
}
section.faq .pre-title{
	color: var(--medium-gray);
	margin-bottom: 1rem;
}
section.faq .wp-block-accordion-item{
	padding-block: 1rem;
	border-bottom: 1px solid #515151;
}
section.faq .wp-block-accordion-heading{
	font-size: clamp(1.2rem, 2.5vw, 1.4rem);
	margin-bottom: 0;
	font-weight: 500;
	color: var(--light-gray);
}
section.faq button.wp-block-accordion-heading__toggle{
	padding-block: 1.4rem;
}
section.faq button.wp-block-accordion-heading__toggle[aria-expanded="true"],
section.faq .wp-block-accordion-item:hover button.wp-block-accordion-heading__toggle{
	color: #fff;
}
section.faq .wp-block-accordion-heading__toggle:hover .wp-block-accordion-heading__toggle-title{
	text-decoration: none;
}
section.faq .wp-block-accordion-panel{
	color: var(--light-gray);
	max-width: 55rem;
}
