.contact-form {

	margin: 65px auto; }


form {

	margin-bottom: 0; }

body {

	overflow-x: hidden; }



form .form-line textarea,

form .form-line input {

	width: 100%;

	border-radius: 0;

	border: none;

	margin-bottom: 20px;

	border-bottom: 1px solid #cecece; }



form textarea[aria-invalid="true"],

form input[aria-invalid="true"] {

	border: 1px solid var(--btn-primary-border-color); }



span.wpcf7-not-valid-tip {

	display: none; }



div.wpcf7-validation-errors,

div.wpcf7-acceptance-missing {

	border-radius: 5px;

	background-color: #fff;

    margin: 1rem 0.25rem .5rem;

    padding: 1rem 2rem;

    border: none;

    text-align: center; }



.contact-email,

.contact-address {

	display: flex;

	align-items: flex-start; }



.contact-email {

	display: flex;

	align-items: center;

	margin-bottom: 6px; }



.contact-email svg {

	width: 24px;

	height: initial;

	margin: 0 5px; }



.contact-address svg {

	width: 18px;

	height: initial;

	margin: 0 8px; }



.contact-email p,



.contact-address p {

	margin-bottom: 0; }



.contact-info {

	margin-top: 30px;

}



.contact-info a {

	text-decoration: none;

}



.contact-info.social a {

	margin-right: 10px;

}



@media (min-width: 576px) {

	body {

		overflow: initial; }

	html, body {

		height: initial; }


	.pre-footer.contact .container,

	.contact-wrapper { display: flex; }

	.contact-form,

	.contact-info {

		display: inline-block;

		vertical-align: top; }



	.contact-info {

		width: var(--col-4);

		margin-right: var(--gutter); }

	.contact-info:last-child {

		margin-right: 0; }


	.contact-form {

		position: relative;

		width: var(--col-12);

		margin: 0 auto; }



	form .form-line,

	form .button-container {

		display: flex; }



	form .form-line textarea,

	form .form-line input {

		margin-bottom: 0px; }



	form .form-line > div {

		flex: 1;

		padding: 0px 10px 30px; }



	form .button-container {

		flex-flow: row-reverse;

		align-items: center;

		padding: 0 10px; }

}

