.tm-contact-form-7-box {
	.wpcf7-form {
		br {
			display: none;
		}
	}

	.form-item {
		position: relative;

		&.has-icon {
			.wpcf7-text,
			.wpcf7-date {
				padding-right: 40px;
			}
		}
	}

	.form-icon {
		font-size: 18px;
		color: #ccc;
		position: absolute;
		top: 14px;
		right: 17px;
		line-height: 0;
	}

	.wpcf7-form-control-wrap {
		display: block;
		margin-bottom: 30px;
	}

	.wpcf7-textarea {
		height: 150px;
	}

	.ajax-loader {
		display: none !important;
	}

	.wpcf7-submit {
		display: block;
		margin: 47px auto 0;
	}

	&.style-01 {
		background: #fff;
		padding: 60px 50px;

		input[type='text'],
		input[type='email'],
		input[type='tel'],
		select,
		textarea {
			border-width: 0;
			border-bottom-width: 1px;
			padding-left: 0;
			padding-right: 0;
			height: 44px;

			&:focus {
				color: #222;
			}
		}

		textarea {
			height: 87px;
		}

		.form-left-icon {
			input[type='text'],
			input[type='email'],
			input[type='tel'] {
				padding-left: 35px;
			}
		}

		.form-left-icon {
			input[type='text'],
			input[type='email'],
			input[type='tel'] {
				padding-right: 35px;
			}
		}

		.form-icon {
			left: 0;
			right: auto;
			top: 24px;
			z-index: 2;
			font-size: 20px;
			color: #888;
		}

		.wpcf7-form-control-wrap {
			position: relative;
			margin-bottom: 30px;
			z-index: 1;

			&:hover {
				&:after {
					width: 100%;
					left: 0;
					right: auto;
				}
			}

			&:after {
				content: '';
				width: 0;
				height: 2px;
				bottom: 0;
				position: absolute;
				left: auto;
				right: 0;
				transition: width .6s cubic-bezier(.25, .8, .25, 1) 0s;
			}
		}

		.form-title {
			font-size: 48px;
			text-align: center;
			line-height: 1.25;
			margin-bottom: 21px;
		}

		.form-description {
			line-height: 1.72;
			text-align: center;
			margin-bottom: 50px;
		}

		.wpcf7-submit {
			margin: 15px auto 0;
		}
	}

	&.style-02 {
		background: #fff;
		padding: 56px 43px 60px;

		input[type='text'],
		input[type='email'],
		input[type='tel'],
		select,
		textarea {
			border-width: 0;
			border-bottom-width: 2px;
			padding: 0 0 13px 0;
			height: 44px;

			&:focus {
				color: #222;
			}
		}

		textarea {
			height: 141px;
		}

		.form-left-icon {
			input[type='text'],
			input[type='email'],
			input[type='tel'] {
				padding-left: 35px;
			}
		}

		.form-left-icon {
			input[type='text'],
			input[type='email'],
			input[type='tel'] {
				padding-right: 35px;
			}
		}

		.form-icon {
			left: 0;
			right: auto;
			top: 24px;
			z-index: 2;
			font-size: 20px;
			color: #888;
		}

		.wpcf7-form-control-wrap {
			position: relative;
			margin-bottom: 41px;
			z-index: 1;

			&:hover {
				&:after {
					width: 100%;
					left: 0;
					right: auto;
				}
			}

			&:after {
				content: '';
				width: 0;
				height: 2px;
				bottom: 0;
				position: absolute;
				left: auto;
				right: 0;
				transition: width .6s cubic-bezier(.25, .8, .25, 1) 0s;
			}
		}

		.form-title {
			font-size: 30px;
			font-weight: 500;
			line-height: 1.25;
			text-align: center;
			margin-bottom: 32px;
		}

		.form-description {
			font-size: 15px;
			font-style: italic;
			line-height: 1.6;
			text-align: center;
			margin-bottom: 35px;
		}

		.wpcf7-submit {
			margin: 15px auto 0;
			border-radius: 0;
		}
	}
}

@include media-breakpoint-down(lg) {
	.tm-contact-form-7-box {
		&.style-01 {
			.form-title {
				font-size: 42px;
			}
		}
	}
}

@include media-breakpoint-down(md) {
	.tm-contact-form-7-box {
		&.style-01 {
			.form-title {
				font-size: 36px;
			}
		}
	}
}
