.home-hero {
	position: relative;
	min-height: 80vh;
	display: flex;
	align-items: center;
}
.home-hero-bg {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.home-hero-grid {
	position: relative;
	display: grid;
	grid-template-columns: 40% 30%;
	justify-content: space-between;
	align-items: center;
	gap: var(--space-lg);
}
.home-hero-text {
	max-width: 520px;
}
.home-hero-text h1 {
    color: #fff;
}
.home-hero-text p {
    color: #fff;
}
.home-hero-card {
	align-self: center;
}

.home-about-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--space-md);
}
.home-about-col {
	min-width: 0;
}

.home-gallery-wrap {
	display: flex;
	flex-direction: column;
	gap: var(--space-md);
}
.home-gallery-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--space-md);
}

.home-services-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--space-md);
}
.service-card {
	border-top: 2px solid var(--color-accent-gold);
}

.home-events-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--space-lg);
}
.home-events-item {
	min-width: 0;
}

.home-why-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--space-md);
	text-align: center;
}

.home-process-line {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--space-md);
	margin-top: var(--space-md);
}
.process-step {
	text-align: center;
	position: relative;
}
.process-step::before {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	width: 2px;
	height: 100%;
	background: var(--color-accent-gold);
	transform: translateX(-50%);
	opacity: 0.2;
}

.home-cta-inner {
	max-width: 600px;
	margin-inline: auto;
	display: flex;
	flex-direction: column;
	gap: var(--space-sm);
}

@media (max-width: 1024px) {
	.home-hero-grid {
		grid-template-columns: 1fr;
		gap: var(--space-md);
	}
	.home-services-grid,
	.home-about-grid,
	.home-why-grid {
		grid-template-columns: 1fr 1fr;
	}
	.home-events-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 640px) {
	.home-services-grid,
	.home-about-grid,
	.home-why-grid,
	.home-gallery-grid,
	.home-process-line {
		grid-template-columns: 1fr;
	}
	.home-hero {
		min-height: auto;
		padding-top: var(--space-lg);
	}
}
