/* =========================================================================
   Macrolux hero — getrouw aan Figma (homepagina node 1:158)
   ========================================================================= */

.ml-hero {
	--ml-hero-accent: #ff6600;
	font-family: "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
	-webkit-font-smoothing: antialiased;
	padding: 28px 0;
}

.ml-hero * {
	box-sizing: border-box;
}

.ml-hero .ml-container {
	width: min(1400px, 100% - 40px);
	margin-inline: auto;
}

/* Zonder deze regel wint de linkkleur van het thema (blauw op hover). */
.ml-hero a {
	text-decoration: none;
	color: inherit;
}

.ml-hero__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 350px;
	gap: 20px;
	align-items: stretch;
}

/* ---------- Hoofdpaneel (foto + tekst) ---------------------------------- */
.ml-hero__main {
	position: relative;
	min-height: 580px;
	display: flex;
	border-radius: 15px;
	overflow: hidden;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.ml-hero__overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(0, 0, 0, 0.55) 0%, rgba(0, 0, 0, 0.2) 55%, rgba(0, 0, 0, 0) 100%);
}

.ml-hero__body {
	position: relative;
	z-index: 2;
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 24px 40px;
	width: 100%;
	padding: 50px;
	color: #fff;
}

/* Titel + subtekst als één groep, onderaan uitgelijnd. */
.ml-hero__copy {
	max-width: 460px;
}

.ml-hero__title {
	margin: 0 0 22px;
	max-width: 420px;
	font-size: clamp(30px, 3.4vw, 50px);
	font-weight: 700;
	line-height: 1.08;
	color: #fff;
}

.ml-hero__text {
	margin: 0;
	max-width: 400px;
	font-size: 18px;
	font-weight: 600;
	line-height: 1.6;
	color: #fff;
}

.ml-hero__actions {
	align-self: flex-end;
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}

/* Glass-knop (de .ml-btn basis komt uit de header-CSS) */
.ml-btn--glass {
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(255, 255, 255, 0.22);
	color: #fff;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	transition: background 0.25s ease, border-color 0.25s ease;
}

.ml-btn--glass:hover {
	background: rgba(255, 255, 255, 0.18);
	border-color: rgba(255, 255, 255, 0.38);
}

/* Tekst blijft wit op hover, ook als het thema linkkleuren aanpast. */
.ml-hero a.ml-btn:hover,
.ml-hero a.ml-btn:focus,
.ml-hero a.ml-btn:active {
	color: #fff;
}

.ml-hero .ml-btn--primary {
	background: var(--ml-hero-accent);
	color: #fff;
}

/* ---------- Feature-paneel (rechts) ------------------------------------- */
.ml-hero__features {
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 30px;
	padding: 36px 30px;
	border-radius: 15px;
	background: rgba(0, 0, 0, 0.04);
}

.ml-hero__feature {
	display: flex;
	align-items: flex-start;
	gap: 14px;
}

.ml-hero__feature-icon {
	flex: 0 0 auto;
	display: inline-flex;
	color: var(--ml-hero-accent);
}

.ml-hero__feature-icon .ml-icon {
	width: 26px;
	height: 26px;
	stroke-width: 1.7;
}

.ml-hero__feature-title {
	margin: 0 0 6px;
	font-size: 18px;
	font-weight: 600;
	line-height: 1.3;
	color: #1d1d1b;
}

.ml-hero__feature-text {
	margin: 0;
	font-size: 15px;
	line-height: 1.5;
	color: rgba(0, 0, 0, 0.5);
}

/* ---------- Responsive --------------------------------------------------- */
@media (max-width: 980px) {
	.ml-hero__grid {
		grid-template-columns: 1fr;
	}
	.ml-hero__features {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 28px 24px;
	}
}

@media (max-width: 768px) {
	.ml-hero__body {
		flex-direction: column;
		align-items: flex-start;
		justify-content: flex-end;
		gap: 22px;
	}
	.ml-hero__actions {
		align-self: flex-start;
	}
}

@media (max-width: 560px) {
	.ml-hero__main {
		min-height: 440px;
	}
	.ml-hero__body {
		padding: 30px;
	}
	.ml-hero__features {
		grid-template-columns: 1fr;
		padding: 28px 24px;
	}
}
