/**
 * Contactpagina
 * Zuur Hekwerken
 */

.zh-contact-page{
	background:var(--zh-color-black,#0D0F0E);
	color:var(--zh-color-light,#C0AF9A);
}

.zh-contact-hero{
	padding:clamp(2.8rem,5vw,4.8rem) 0 clamp(2rem,3.5vw,3rem);
	background:
		radial-gradient(circle at 82% 24%,rgba(36,73,46,.28),transparent 34%),
		var(--zh-color-black,#0D0F0E);
	border-bottom:1px solid rgba(192,175,154,.08);
}

.zh-contact-hero h1{
	max-width:900px;
	margin:.45rem 0 1rem;
	font-size:clamp(2.7rem,6vw,5.6rem);
	line-height:.96;
	letter-spacing:-.045em;
	color:var(--zh-color-light,#C0AF9A);
}

.zh-contact-hero__intro{
	max-width:760px;
	margin:0;
	font-size:clamp(1.05rem,1.5vw,1.25rem);
	line-height:1.7;
	color:rgba(192,175,154,.82);
}

.zh-contact-main{
	padding-top:clamp(2rem,3vw,3rem);
	padding-bottom:clamp(3.5rem,6vw,5.5rem);
}

.zh-contact-main .zh-container{
	max-width:1180px;
}

.zh-contact-layout{
	display:grid;
	grid-template-columns:minmax(280px,.72fr) minmax(0,1.45fr);
	gap:clamp(1.4rem,3vw,2.6rem);
	align-items:start;
	margin-top:0;
}

.zh-contact-sidebar{
	position:sticky;
	top:150px;
	min-width:0;
}

.zh-contact-card,
.zh-contact-form-wrap{
	border:1px solid rgba(192,175,154,.15);
	border-radius:var(--zh-radius-medium,14px);
	background:var(--zh-color-anthracite,#1B211E);
	box-shadow:0 18px 44px rgba(0,0,0,.18);
}

.zh-contact-card{
	padding:clamp(1.5rem,2.8vw,2rem);
	overflow:hidden;
}

.zh-contact-card h2,
.zh-contact-form-heading h2,
.zh-contact-bottom h2{
	margin:.35rem 0 1rem;
	color:var(--zh-color-light,#C0AF9A);
}

.zh-contact-details{
	display:grid;
	gap:0;
	margin-top:1rem;
	font-style:normal;
}

.zh-contact-detail{
	display:grid;
	gap:.25rem;
	padding:.78rem 0;
	border-top:1px solid rgba(192,175,154,.10);
}

.zh-contact-detail:first-child{
	border-top:0;
	padding-top:0;
}

.zh-contact-detail__label{
	font-size:.78rem;
	font-weight:800;
	letter-spacing:.08em;
	text-transform:uppercase;
	color:var(--zh-color-green-bright,#55CF48);
}

.zh-contact-detail a{
	width:fit-content;
	color:var(--zh-color-light,#C0AF9A);
	font-weight:700;
	text-decoration:none;
	overflow-wrap:anywhere;
}

.zh-contact-detail a:hover,
.zh-contact-detail a:focus-visible{
	color:var(--zh-color-green-bright,#55CF48);
	text-decoration:underline;
	text-underline-offset:3px;
}

.zh-contact-appointment{
	margin-top:1rem;
	padding:.9rem 1rem;
	border-left:4px solid var(--zh-color-green-bright,#55CF48);
	background:var(--zh-color-green-dark,#1E3D28);
	color:var(--zh-color-light,#C0AF9A);
}

.zh-contact-appointment strong{
	color:var(--zh-color-light,#C0AF9A);
}

.zh-contact-appointment p{
	margin:.3rem 0 0;
	font-size:.92rem;
	line-height:1.55;
	color:rgba(192,175,154,.78);
}

/* Direct contact is part of the same left card */
.zh-contact-quick{
	margin-top:1.25rem;
	padding-top:1.25rem;
	border-top:1px solid rgba(192,175,154,.12);
	background:transparent;
	color:var(--zh-color-light,#C0AF9A);
}

.zh-contact-quick h3{
	margin:0 0 .9rem;
	color:var(--zh-color-light,#C0AF9A);
	font-size:1.15rem;
}

.zh-contact-quick__actions{
	display:grid;
	gap:.7rem;
}

.zh-contact-quick__actions .zh-button{
	width:100%;
	justify-content:center;
	text-align:center;
}

.zh-contact-quick .zh-button--secondary{
	border-color:rgba(192,175,154,.45);
	color:var(--zh-color-light,#C0AF9A);
	background:transparent;
}

.zh-contact-quick .zh-button--secondary:hover,
.zh-contact-quick .zh-button--secondary:focus-visible{
	border-color:var(--zh-color-green-bright,#55CF48);
	color:var(--zh-color-green-bright,#55CF48);
}

.zh-contact-form-wrap{
	min-width:0;
	padding:clamp(1.4rem,2.6vw,2.2rem);
}

.zh-contact-form-heading{
	max-width:760px;
	margin-bottom:1.25rem;
}

.zh-contact-form-heading p:last-child{
	margin-bottom:0;
	color:rgba(192,175,154,.78);
}

/* Forminator: alleen visuele aansluiting, geen formulierlogica overschrijven */
.zh-forminator-shell .forminator-ui.forminator-custom-form{
	margin:0 !important;
}

.zh-forminator-shell .forminator-row{
	margin-bottom:.8rem !important;
}

.zh-forminator-shell .forminator-label{
	margin-bottom:.45rem !important;
	color:var(--zh-color-light,#C0AF9A) !important;
	font-weight:800 !important;
}

.zh-forminator-shell .forminator-input,
.zh-forminator-shell .forminator-textarea,
.zh-forminator-shell .forminator-select2 + .forminator-select .selection .select2-selection{
	border:1px solid rgba(192,175,154,.30) !important;
	border-radius:8px !important;
	background:var(--zh-color-dark,#121614) !important;
	color:var(--zh-color-light,#C0AF9A) !important;
	box-shadow:none !important;
}

.zh-forminator-shell .forminator-input{
	min-height:50px !important;
	padding:0 14px !important;
}

.zh-forminator-shell .forminator-textarea{
	min-height:110px !important;
	padding:14px !important;
	resize:vertical;
}

.zh-forminator-shell .forminator-input:focus,
.zh-forminator-shell .forminator-textarea:focus{
	border-color:var(--zh-color-green-bright,#55CF48) !important;
	box-shadow:0 0 0 3px rgba(85,207,72,.12) !important;
}

.zh-forminator-shell .forminator-button-submit{
	min-height:46px !important;
	padding:.72rem 1.2rem !important;
	border:0 !important;
	border-radius:6px !important;
	background:var(--zh-color-green-bright,#55CF48) !important;
	color:#0D0F0E !important;
	font-weight:800 !important;
	box-shadow:none !important;
	transition:transform .2s ease,background .2s ease !important;
}

.zh-forminator-shell .forminator-button-submit:hover,
.zh-forminator-shell .forminator-button-submit:focus{
	background:#65df58 !important;
	transform:translateY(-1px);
}

.zh-forminator-shell a{
	color:var(--zh-color-green-bright,#55CF48);
	text-underline-offset:3px;
}

.zh-forminator-shell .forminator-row:last-child{
	margin-bottom:0 !important;
}

.zh-forminator-shell .forminator-field{
	margin-bottom:0 !important;
}

.zh-forminator-shell .forminator-field p{
	margin-bottom:.4rem;
}

.zh-contact-form-error{
	padding:1.2rem;
	border-left:4px solid #a33;
	background:#2a1818;
	color:var(--zh-color-light,#C0AF9A);
}

.zh-contact-form-error p{
	margin:.35rem 0 0;
}

.zh-contact-bottom{
	padding:clamp(3rem,5vw,4.5rem) 0;
	background:var(--zh-color-green-dark,#1E3D28);
	border-top:1px solid rgba(192,175,154,.08);
}

.zh-contact-bottom__inner{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:2rem;
}

.zh-contact-bottom__inner > div{
	max-width:720px;
}

.zh-contact-bottom__inner p:last-child{
	margin-bottom:0;
	color:rgba(192,175,154,.78);
}

@media(max-width:950px){
	.zh-contact-layout{
		grid-template-columns:1fr;
	}

	.zh-contact-sidebar{
		position:static;
	}

	.zh-contact-card{
		width:100%;
	}
}

@media(max-width:680px){
	.zh-contact-hero{
		padding-top:3rem;
	}

	.zh-contact-form-wrap,
	.zh-contact-card{
		padding:1.25rem;
	}

	.zh-contact-bottom__inner{
		align-items:flex-start;
		flex-direction:column;
	}

	.zh-contact-bottom__inner .zh-button{
		width:100%;
	}

	.zh-contact-quick__actions .zh-button{
		width:100%;
	}
}

@media(prefers-reduced-motion:reduce){
	.zh-forminator-shell .forminator-button-submit{
		transition:none !important;
	}

	.zh-forminator-shell .forminator-button-submit:hover,
	.zh-forminator-shell .forminator-button-submit:focus{
		transform:none;
	}
}
