.hero {
	background: $primary-colour;
	padding: 0 0 .5rem 1rem;
	overflow: hidden;

	.hero__text {
		padding: 2rem 2rem;
		color: white;

		h1 {
			font-size: 3em;
			margin-bottom: 2rem;
		}

		p {
			font-size: 1.3rem;
		}
	}

	.hero__circle {
		display: none;
	}

	@include respond-to('medium') {
		display: grid;
		grid-template-columns: 65% 35%;

		.hero__circle {
			display: block;
			width: 35rem;
			height: 35rem;
			margin-left: auto;
			background-color: $primary-colour-dark;
			border-radius: 0 0 0 100%;
		}
	}

	@include respond-to('large') {
		grid-template-columns: 50% 50%;
	}
}

.features {
	padding: 1rem 0;

	.features__container {
		width: 85vw;
		margin: auto;

		@include respond-to('large') {
			width: 50vw;
		}
	}
}

.testimonials {
	background: $primary-colour;
	color: white;
	padding: 1rem 0;


	.testimonials__subtitle {
		display: flex;
		justify-content: center;
		font-weight: 300;
		font-size: 1em;
		letter-spacing: -0.005em;
		width: 85vw;
		margin: auto;
		text-align: center;
	}

	.testimonials__container {
		display: grid;
		gap: 1.5rem;
		margin-top: 1rem;
		padding: 0 1.5rem;

		@include respond-to('medium') {
			grid-template-columns: repeat(2, 1fr);
		}

		@include respond-to('large') {
			grid-template-columns: repeat(4, 1fr);
		}
	}
}

.contact {
	padding: 1rem 0;

	.contact__container {
		display: grid;
		margin: 2rem auto;
		gap: 1rem;
		width: 85vw;

		.contact__content__heading {
			margin: 0;
		}

		.contact__content__details span {
			display: block;
		}
	}

	@include respond-to('medium') {
		.contact__container {
			grid-template-columns: 50% 50%;
			width: 85vw;
		}
	}

	@include respond-to('large') {
		.contact__container {
			width: 60vw;
		}
	}
}
