.wpcf7,
.wpcf7 form,
.form-row {
  width: 100%;
}

.form-field {
  flex: 1;
  width: 100%;
  min-width: 0;
}
.form-row{
	display:flex;
	gap:20px;
	margin-bottom:24px;
    width: 100%;
}

.form-label{
	width:220px;
	flex-shrink:0;
	font-weight:700;
	line-height:1.6;
}

.form-field{
	flex:1;
}

.form-field input,
.form-field textarea{
	width:100%;
	box-sizing:border-box;
	padding:12px 16px;
	border:1px solid #ccc;
	border-radius:4px;
	font-size:16px;
}

.form-field textarea{
	min-height:180px;
	resize:vertical;
}

.date-row{
	display:flex;
	align-items:center;
	gap:15px;
	margin-bottom:10px;
}

.date-label{
	width:90px;
	flex-shrink:0;
	font-weight:700;
}

.date-input{
	flex:1;
}

.checkbox-group{
	display:flex;
	flex-wrap:wrap;
	gap:12px 20px;
}

.checkbox-group .wpcf7-list-item{
	margin:0;
}

.checkbox-group label{
	display:flex;
	align-items:center;
	gap:6px;
	cursor:pointer;
}

.required{
	display:inline-block;
	margin-left:8px;
	padding:2px 6px;
	font-size:12px;
	line-height:1;
	background:#d00;
	color:#fff;
	border-radius:3px;
	vertical-align:middle;
}

.form-submit{
	text-align:center;
	margin-top:40px;
}

.form-submit input[type="submit"]{
	display:inline-flex;
	justify-content:center;
	align-items:center;
	min-width:240px;
	height:56px;
	padding:0 32px;
	border:none;
	background:#498dbc;
	color:#fff;
	font-size:16px;
	font-weight:700;
	cursor:pointer;
	border-radius:4px;
	transition:.3s;
}

.form-submit input[type="submit"]:hover{
	opacity:.8;
}

.wpcf7-not-valid-tip{
	margin-top:6px;
	font-size:13px;
}

.wpcf7-spinner{
	display:block;
	margin:16px auto 0;
}

@media screen and (max-width:768px){

	.form-row{
		display:block;
		margin-bottom:20px;
	}

	.form-label{
		width:auto;
		margin-bottom:10px;
	}

	.date-row{
		display:block;
	}

	.date-label{
		width:auto;
		margin-bottom:6px;
	}

	.checkbox-group{
		display:block;
	}

	.checkbox-group .wpcf7-list-item{
		display:block;
		margin-bottom:10px;
	}

	.form-submit input[type="submit"]{
		width:100%;
		min-width:0;
	}
}