:root {
	--leader-height: 500px;
}

.leader-text {
	top: 50%;
	transform: translate(0, -50%);
}


/* GET STARTED — homepage multi-entry-point section, architecture v8 §9.5.15 */
section.get-started {
	background: var(--brand-primary-50);
	padding: var(--spacing-20) 0;
	text-align: center;
}
.get-started h2 {
	margin-bottom: var(--spacing-4);
}
.get-started-intro {
	max-width: 40rem;
	margin: 0 auto var(--spacing-12);
	color: var(--color-text-dimmed);
}
.get-started-grid {
	display: grid;
	grid-template-columns: 1fr;
	grid-gap: var(--spacing-5);
	text-align: left;
}
.get-started-tile {
	display: flex;
	flex-direction: column;
	gap: var(--spacing-2);
	background: var(--color-white);
	border: 1px solid var(--color-gray-250);
	border-radius: var(--rounded-xl);
	padding: var(--spacing-6);
	text-decoration: none;
	transition: border-color var(--transition-fast), box-shadow var(--transition-fast);
}
.get-started-tile:hover,
.get-started-tile:focus-visible {
	border-color: var(--brand-primary-700);
	box-shadow: var(--shadow-md);
}
.get-started-tile:focus-visible {
	outline: 2px solid var(--brand-primary-700);
	outline-offset: 2px;
}
.get-started-tile__label {
	font-family: var(--font-title);
	font-weight: var(--font-semibold);
	font-size: var(--text-lg);
	color: var(--brand-primary-700);
}
.get-started-tile__desc {
	color: var(--color-text-dimmed);
}
.get-started-tile__note {
	font-size: var(--text-xs);
	color: var(--color-gray-500);
	font-style: italic;
}

@media screen and (min-width: 40rem) {
	.get-started-grid {
		grid-template-columns: 1fr 1fr;
	}
}
@media screen and (min-width: 72rem) {
	.get-started-grid {
		grid-template-columns: repeat(4, 1fr);
	}
}

/* A single line, not a fifth tile — Growth Engine 2 (agents) deliberately
   kept visually distinct from the student-facing entry-point grid above it,
   rather than diluting a clear "how would you like to get started" choice
   with an audience it isn't addressed to. */
.get-started-agent-note {
	margin: var(--spacing-10) auto 0;
	color: var(--color-text-dimmed);
}
.get-started-agent-note a {
	color: var(--brand-primary-700);
	font-weight: var(--font-semibold);
}

/* SERVICE */
.services-container {
	background: var(--color-blue-200);
	padding: var(--spacing-20) 0;
	margin-top: var(--spacing-20);
	text-align: center;
}
.services {
	display: grid;
	grid-template-columns: 1fr;
	grid-gap: var(--spacing-5);
}
.service-box {
	background: rgba(0, 0, 0, 0.3);
  	background-blend-mode: multiply;
	display: grid;
	grid-template-rows: 1fr 3fr 1fr;
	grid-gap: var(--spacing-6);
	padding: var(--spacing-12);
}
.service-box h3.service-heading {
	font-size: var(--text-2xl);
	color: white;
	text-shadow: 0px 0px 4px black;
}
.service-box span.service-description {
	color: white;
	align-self: start;
	text-shadow: 0px 0px 2px black;
	font-size: var(--text-xl);
}
.service-box a {
	align-self: end;
}


/* USPS */

section.usp-container {
	background: var(--color-green-200);
	padding: var(--spacing-20) 0;
	text-align: center;
}
.usps {
	display: grid;
	grid-template-columns: 1fr;
	grid-gap: var(--spacing-5);
	text-align: center;
}
.usp-box {
	background: white;
	padding: var(--spacing-6);
	text-align: center;
}
.usp-box img {
	width: 160px;
	height: 160px;
	margin: 0 auto;
	margin-bottom: var(--spacing-4);
}
.usp-box h3.usp-heading {
	font-size: var(--text-xl);
	font-weight: var(--font-normal);
}
.usp-button {
	margin: auto;
	text-align: center;
	margin-top: var(--spacing-16);
}
.usp-button .btn {
	font-size: var(--text-2xl);
}


@media screen and (min-width: 40rem) {
	:root {
		--leader-height: 700px;
	}
	.leader-text {
		padding-top: 0;

	}
	.usps {
		grid-template-columns: 1fr 1fr;
	}
}

@media screen and (min-width: 72rem) {
	.services {
		display: grid;
		grid-template-columns: 1fr 1fr 1fr;
		grid-gap: var(--spacing-12);
	}
	.usps {
		grid-template-columns: 1fr 1fr 1fr 1fr;
	}
}