/**
 * Business page (template "Zakelijk – Offerte aanvragen") – loaded on that
 * template only.
 *
 * Rhythm: hero with the quote form (pitch left, form card right from
 * 1024px) → client logos (quiet strip) → benefits (warm band) → quote steps
 * → assortment (shared cards, project.css) → personal contact + reviews →
 * orange call to action → page FAQ. Mobile: a sticky bar back to the form.
 *
 * Mobile first. Form styling comes from the sitewide WPForms rules
 * (project.css, "Forms (WPForms)"); reveals from the sitewide system.
 */

.eno-business {
	width: 100%;
}

.eno-business figure {
	margin: 0;
}

/* Shared ------------------------------------------------------------------ */

.eno-business-section {
	padding-block: 4rem;
	border-top: 1px solid var(--eno-color-surface);
}

.eno-business-eyebrow {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	margin: 0 0 1.25rem;
	color: var(--eno-color-text-muted);
	font-size: var(--eno-text-small);
	font-weight: 600;
	line-height: 1.4;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.eno-business-eyebrow::before {
	content: "";
	flex-shrink: 0;
	width: 1.5rem;
	height: 2px;
	background-color: var(--eno-color-orange);
}

.eno-business-header {
	max-width: 44rem;
	margin-bottom: 2rem;
}

.eno-business-title {
	margin: 0;
	font-family: var(--eno-font-heading);
	font-size: var(--eno-text-headline-lg);
	font-weight: 800;
	line-height: 1.15;
	letter-spacing: -0.02em;
	text-wrap: balance;
}

.eno-business-title--md {
	font-size: var(--eno-text-headline-md);
	line-height: 1.2;
}

.eno-business-lead {
	max-width: 38rem;
	margin: 1rem 0 0;
	color: var(--eno-color-text-muted);
	font-size: var(--eno-text-body-lg);
	line-height: 1.6;
}

/* 01 Hero + form ------------------------------------------------------------ */

.eno-business-hero {
	padding-block: 2rem 3.5rem;
}

.eno-business-hero__inner {
	display: grid;
	gap: 2.5rem;
}

.eno-business-hero__content {
	max-width: 40rem;
}

.eno-business-hero__title {
	margin: 0;
	font-family: var(--eno-font-heading);
	font-size: var(--eno-text-display);
	font-weight: 800;
	line-height: 1.08;
	letter-spacing: -0.03em;
	text-wrap: balance;
}

.eno-business-hero__intro {
	margin: 1.25rem 0 0;
	color: var(--eno-color-text-muted);
	font-size: var(--eno-text-body-lg);
	line-height: 1.65;
}

/* Trust points: a checklist, no cards. */
.eno-business-trust {
	display: grid;
	gap: 0.75rem;
	margin: 2rem 0 0;
	padding: 0;
	list-style: none;
}

.eno-business-trust li {
	display: flex;
	align-items: flex-start;
	gap: 0.625rem;
	margin: 0;
	color: var(--eno-color-text);
	font-weight: 600;
	line-height: 1.45;
}

.eno-business-trust .eno-icon {
	flex-shrink: 0;
	margin-top: 0.125rem;
	color: var(--eno-color-green);
}

/* Direct contact under the pitch, behind a hairline. */
.eno-business-direct {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.75rem 1.5rem;
	margin-top: 2rem;
	padding-top: 1.25rem;
	border-top: 1px solid var(--eno-color-surface-high);
}

.eno-business-direct__label {
	flex-basis: 100%;
	margin: 0;
	color: var(--eno-color-text-muted);
	font-size: var(--eno-text-label);
}

.eno-business-direct__list {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem 1.5rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.eno-business-direct__list li {
	margin: 0;
}

.eno-business-direct__list a {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	color: var(--eno-color-text);
	font-weight: 700;
	text-decoration: underline;
	text-decoration-color: var(--eno-color-surface-dim);
	text-underline-offset: 0.25em;
	transition: text-decoration-color 150ms var(--eno-ease);
}

.eno-business-direct__list a:hover,
.eno-business-direct__list a:focus-visible {
	color: var(--eno-color-text);
	text-decoration-color: var(--eno-color-orange);
}

.eno-business-direct__list .eno-icon {
	color: var(--eno-color-orange-dark);
}

/* Form card: white, orange top edge (as on the contact page). */
.eno-business-form {
	scroll-margin-top: 6rem;
	padding: 1.75rem 1.25rem;
	border: 1px solid var(--eno-color-surface-high);
	border-top: 3px solid var(--eno-color-orange);
	border-radius: var(--eno-radius-lg);
	background-color: var(--eno-color-white);
	box-shadow: var(--eno-shadow-float);
}

.eno-business-form__title {
	margin: 0 0 0.5rem;
	font-family: var(--eno-font-heading);
	font-size: var(--eno-text-headline-md);
	font-weight: 800;
	line-height: 1.2;
}

.eno-business-form__text {
	margin: 0 0 1.5rem;
	color: var(--eno-color-text-muted);
	line-height: 1.6;
}

.eno-business-form__placeholder {
	margin: 0 0 1.25rem;
	padding: 2rem 1.25rem;
	border: 1px dashed var(--eno-color-outline);
	border-radius: var(--eno-radius-lg);
	color: var(--eno-color-text-muted);
	font-size: var(--eno-text-label);
}

/* 02 Client logos: a quiet greyscale strip. ------------------------------- */

.eno-business-logos {
	padding-block: 2.5rem;
	border-top: 1px solid var(--eno-color-surface);
}

.eno-business-logos__title {
	margin: 0 0 1.5rem;
	color: var(--eno-color-text-muted);
	font-size: var(--eno-text-small);
	font-weight: 600;
	letter-spacing: 0.12em;
	text-align: center;
	text-transform: uppercase;
}

.eno-business-logos__list {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.5rem 2rem;
	align-items: center;
	margin: 0;
	padding: 0;
	list-style: none;
}

.eno-business-logos__list li {
	display: flex;
	justify-content: center;
	margin: 0;
}

.eno-business-logos__list img {
	width: auto;
	max-width: 100%;
	max-height: 2.75rem;
	object-fit: contain;
	filter: grayscale(1);
	opacity: 0.7;
	transition: filter 300ms var(--eno-ease), opacity 300ms var(--eno-ease);
}

.eno-business-logos__list li:hover img {
	filter: none;
	opacity: 1;
}

/* 03 Benefits: warm band, icon + title + text, no cards. ------------------- */

.eno-business-benefits {
	border-top: 0;
	background-color: var(--eno-color-surface-low);
}

.eno-business-benefits + .eno-business-section {
	border-top: 0;
}

.eno-business-benefits__grid {
	display: grid;
	gap: 2rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.eno-business-benefit {
	margin: 0;
	padding-top: 1.25rem;
	border-top: 2px solid var(--eno-color-orange);
}

.eno-business-benefit__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.75rem;
	height: 2.75rem;
	margin-bottom: 1rem;
	border-radius: var(--eno-radius-lg);
	background-color: var(--eno-color-orange-tint);
	color: var(--eno-color-orange-dark);
}

.eno-business-benefit__title {
	margin: 0;
	font-family: var(--eno-font-heading);
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.3;
}

.eno-business-benefit__text {
	margin: 0.5rem 0 0;
	color: var(--eno-color-text-muted);
	line-height: 1.6;
}

/* 04 Steps: numbered, connected by a hairline from 1024px. ---------------- */

.eno-business-steps__list {
	display: grid;
	gap: 2rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.eno-business-step {
	position: relative;
	margin: 0;
	padding-left: 4rem;
}

.eno-business-step__number {
	position: absolute;
	top: 0;
	left: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.75rem;
	height: 2.75rem;
	border: 2px solid var(--eno-color-orange);
	border-radius: 50%;
	background-color: var(--eno-color-bg);
	color: var(--eno-color-text);
	font-family: var(--eno-font-heading);
	font-weight: 800;
	font-variant-numeric: tabular-nums;
}

.eno-business-step__title {
	margin: 0.5rem 0 0;
	font-family: var(--eno-font-heading);
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.3;
}

.eno-business-step__text {
	margin: 0.5rem 0 0;
	color: var(--eno-color-text-muted);
	line-height: 1.6;
}

/* 05 Assortment ------------------------------------------------------------ */

.eno-business-solutions__grid {
	display: grid;
	gap: 1rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.eno-business-solutions__grid > li {
	display: flex;
	min-width: 0;
	margin: 0;
}

/* 06 Contact person + reviews --------------------------------------------- */

.eno-business-people__inner {
	display: grid;
	gap: 2.5rem;
}

.eno-business-contact {
	display: grid;
	gap: 1.5rem;
	align-content: start;
}

.eno-business-contact__photo img {
	display: block;
	width: 7.5rem;
	height: 7.5rem;
	border-radius: 50%;
	object-fit: cover;
}

.eno-business-contact__name {
	margin: 1rem 0 0;
	font-family: var(--eno-font-heading);
	font-size: var(--eno-text-body-lg);
	font-weight: 700;
	line-height: 1.3;
}

.eno-business-contact__role {
	display: block;
	margin-top: 0.125rem;
	color: var(--eno-color-text-muted);
	font-family: var(--eno-font-body);
	font-size: var(--eno-text-label);
	font-weight: 400;
}

.eno-business-contact__text {
	max-width: 36rem;
	margin: 1rem 0 0;
	color: var(--eno-color-text-muted);
	line-height: 1.6;
}

.eno-business-contact__channels {
	display: grid;
	gap: 0.625rem;
	margin: 1.5rem 0 0;
	padding: 0;
	list-style: none;
}

.eno-business-contact__channels li {
	display: flex;
	align-items: center;
	gap: 0.625rem;
	margin: 0;
}

.eno-business-contact__channels .eno-icon {
	color: var(--eno-color-orange-dark);
}

.eno-business-contact__channels a {
	color: var(--eno-color-text);
	font-weight: 600;
	text-decoration: underline;
	text-decoration-color: var(--eno-color-surface-dim);
	text-underline-offset: 0.25em;
	overflow-wrap: anywhere;
}

.eno-business-contact__channels a:hover,
.eno-business-contact__channels a:focus-visible {
	color: var(--eno-color-text);
	text-decoration-color: var(--eno-color-orange);
}

.eno-business-reviews {
	padding: 1.75rem 1.5rem;
	border-radius: var(--eno-radius-lg);
	background-color: var(--eno-color-surface-low);
}

.eno-business-reviews__title {
	margin: 0 0 1rem;
	font-family: var(--eno-font-heading);
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.3;
}

.eno-business-reviews__rating {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.25rem 0.75rem;
}

.eno-business-reviews__value {
	margin: 0;
	font-family: var(--eno-font-heading);
	font-size: 1.5rem;
	font-weight: 800;
	line-height: 1;
}

.eno-business-reviews__stars {
	display: inline-flex;
	color: var(--eno-color-star);
}

.eno-business-reviews__stars .eno-icon {
	width: 1.125rem;
	height: 1.125rem;
}

.eno-business-reviews__meta {
	flex-basis: 100%;
	margin: 0;
	color: var(--eno-color-text-muted);
	font-size: var(--eno-text-label);
}

.eno-business-review {
	margin: 1.25rem 0 0;
	padding-top: 1.25rem;
	border-top: 1px solid var(--eno-color-surface-high);
}

.eno-business-review__quote {
	margin: 0;
	padding: 0;
	border: 0;
	font-style: normal;
}

.eno-business-review__quote p {
	margin: 0;
	color: var(--eno-color-text);
	line-height: 1.6;
}

.eno-business-review__author {
	margin-top: 0.5rem;
	color: var(--eno-color-text-muted);
	font-size: var(--eno-text-label);
	font-weight: 600;
}

.eno-business-reviews__link {
	margin-top: 1.25rem;
}

/* 07 Call to action: orange panel, dark text and buttons. ------------------ */

.eno-business-cta {
	padding-block: 0 4rem;
}

.eno-business-cta__panel {
	display: grid;
	gap: 1.75rem;
	padding: 2rem 1.5rem;
	border-radius: var(--eno-radius-lg);
	background-color: var(--eno-color-orange);
	background-image: var(--eno-corrugated);
	background-size: 40px 18px;
	background-blend-mode: soft-light;
	color: var(--eno-color-text);
}

.eno-business-cta__title {
	margin: 0;
	font-family: var(--eno-font-heading);
	font-size: var(--eno-text-headline-md);
	font-weight: 800;
	line-height: 1.2;
	letter-spacing: -0.01em;
	text-wrap: balance;
}

.eno-business-cta__text {
	max-width: 36rem;
	margin: 0.625rem 0 0;
	line-height: 1.6;
}

.eno-business-cta__actions {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

/* Sticky bar back to the form (mobile/tablet) ------------------------------ */

.eno-business-bar {
	position: fixed;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 90;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding: 0.75rem var(--eno-gutter);
	padding-bottom: calc(0.75rem + env(safe-area-inset-bottom, 0px));
	border-top: 1px solid var(--eno-color-surface-high);
	background-color: var(--eno-color-white);
	box-shadow: 0 -6px 20px rgb(0 0 0 / 6%);
	transition: transform 250ms var(--eno-ease-out), visibility 250ms;
}

.eno-business-bar.is-hidden {
	visibility: hidden;
	transform: translateY(100%);
}

.eno-business-bar__title {
	min-width: 0;
	margin: 0;
	overflow: hidden;
	font-family: var(--eno-font-heading);
	font-weight: 700;
	line-height: 1.3;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.eno-business-bar__button {
	flex-shrink: 0;
}

/* The chat button moves up while the bar is visible. */
@media (max-width: 1023px) {
	body:has(.eno-business-bar:not(.is-hidden)) .ht-ctc {
		bottom: 5.25rem !important; /* Click to Chat sets its position inline. */
	}
}

/* Small tablets ------------------------------------------------------------ */

@media (min-width: 600px) {
	.eno-business-cta__actions {
		flex-direction: row;
		flex-wrap: wrap;
	}

	.eno-business-logos__list {
		grid-template-columns: repeat(6, minmax(0, 1fr));
	}

	.eno-business-benefits__grid,
	.eno-business-solutions__grid,
	.eno-business-steps__list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.eno-business-solutions__grid--1 {
		grid-template-columns: minmax(0, 22rem);
	}
}

/* Tablet ------------------------------------------------------------------ */

@media (min-width: 768px) {
	.eno-business-section {
		padding-block: 5rem;
	}

	.eno-business-hero {
		padding-block: 3rem 4.5rem;
	}

	.eno-business-header {
		margin-bottom: 2.5rem;
	}

	.eno-business-form {
		padding: 2.5rem;
	}

	.eno-business-benefits__grid {
		gap: 2.5rem;
	}

	.eno-business-solutions__grid {
		gap: 1.25rem;
	}

	.eno-business-contact {
		grid-template-columns: auto minmax(0, 1fr);
		gap: 2rem;
	}

	.eno-business-contact__photo img {
		width: 9rem;
		height: 9rem;
	}

	.eno-business-reviews {
		padding: 2.25rem;
	}

	.eno-business-cta {
		padding-bottom: 5rem;
	}

	.eno-business-cta__panel {
		padding: 2.5rem;
	}
}

/* Desktop ----------------------------------------------------------------- */

@media (min-width: 1024px) {
	.eno-business-hero {
		padding-block: 3.5rem 5rem;
	}

	/* Pitch left, form right; the pitch stays in view beside a long form. */
	.eno-business-hero__inner {
		grid-template-columns: minmax(0, 6fr) minmax(0, 5fr);
		gap: 4rem;
		align-items: start;
	}

	.eno-business-hero__content {
		position: sticky;
		top: 7rem;
		padding-top: 1rem;
	}

	.eno-business-form {
		padding: 2.75rem;
	}

	.eno-business-benefits {
		padding-block: 6rem;
	}

	.eno-business-benefits__grid--3,
	.eno-business-steps__list--3 {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.eno-business-benefits__grid--4,
	.eno-business-steps__list--4,
	.eno-business-solutions__grid--4 {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}

	.eno-business-solutions__grid--3 {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.eno-business-solutions__grid {
		gap: 1.5rem;
	}

	/* Steps: number on top, a hairline connects them. */
	.eno-business-step {
		padding-left: 0;
	}

	.eno-business-step__number {
		position: relative;
	}

	.eno-business-step::before {
		content: "";
		position: absolute;
		top: 1.375rem;
		right: -2rem;
		left: 3.5rem;
		height: 1px;
		background-color: var(--eno-color-surface-dim);
	}

	.eno-business-step:last-child::before {
		display: none;
	}

	.eno-business-step__title {
		margin-top: 1.25rem;
	}

	.eno-business-people__inner {
		grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
		gap: 5rem;
		align-items: start;
	}

	.eno-business-people__inner--single {
		grid-template-columns: minmax(0, 1fr);
	}

	.eno-business-cta__panel {
		grid-template-columns: minmax(0, 1fr) auto;
		gap: 3rem;
		align-items: center;
		padding: 3rem;
	}

	.eno-business-cta__actions {
		flex-wrap: nowrap;
	}

	.eno-business-bar {
		display: none;
	}
}

@media (min-width: 1280px) {
	.eno-business-hero__inner {
		gap: 6rem;
	}
}

@media (max-width: 479px) {
	.eno-business-cta__actions .eno-button {
		width: 100%;
	}

	/* Too narrow for title + button: one full-width button. */
	.eno-business-bar__title {
		display: none;
	}

	.eno-business-bar__button {
		flex: 1;
	}
}

@media (prefers-reduced-motion: reduce) {
	.eno-business-bar,
	.eno-business-logos__list img,
	.eno-business-direct__list a {
		transition: none;
	}
}
