/**
 * Contact page — Gravity Forms submit button
 *
 * GF theme reset uses `display: revert` on descendants; framework button
 * rules are ~ (0,5,1). Theme selectors must include the same wrapper chain
 * to win. Inputs cannot host ::after, so the arrow lives on the wrapper.
 */

.gform-theme.gform-theme--framework.gform_wrapper input[type='text'],
.gform-theme.gform-theme--framework.gform_wrapper input[type='email'],
.gform-theme.gform-theme--framework.gform_wrapper input[type='tel'],
.gform-theme.gform-theme--framework.gform_wrapper input[type='url'],
.gform-theme.gform-theme--framework.gform_wrapper input[type='number'],
.gform-theme.gform-theme--framework.gform_wrapper select {
	box-sizing: border-box;
	min-height: 4.1875rem;
	height: 4.1875rem;
}

.gform-theme.gform-theme--framework.gform_wrapper .gform-submit-button-wrapper {
	display: inline-flex;
	position: relative;
	align-items: center;
	width: max-content;
	max-width: 100%;
	color: var(--wp--preset--color--beige);
	margin-block-start: var(--wp--preset--spacing--space-lg);
}

.gform-theme.gform-theme--framework.gform_wrapper
	.gform-submit-button-wrapper
	input[type='submit'].button.gform_button {
	display: inline-flex;
	align-items: center;
	appearance: none;
	box-sizing: border-box;
	margin: 0;
	width: auto;
	height: auto;
	min-height: 4.1875rem;
	padding-block: 1rem;
	padding-inline: var(--wp--preset--spacing--space-lg);
	/* Room for the arrow + gap on the wrapper ::after */
	padding-inline-end: calc(var(--wp--preset--spacing--space-lg) + 27px + 0.75rem);
	border: none;
	border-radius: 0;
	background-color: var(--wp--preset--color--dark-green);
	background-image: none;
	box-shadow: none;
	color: var(--wp--preset--color--beige);
	font-family: var(--wp--preset--font-family--body);
	font-size: var(--wp--preset--font-size--body-text);
	font-weight: 400;
	letter-spacing: 0.02em;
	line-height: 1.4;
	text-transform: none;
	cursor: pointer;
	transition: opacity 0.2s ease;
}

.gform-theme.gform-theme--framework.gform_wrapper
	.gform-submit-button-wrapper
	input[type='submit'].button.gform_button:hover,
.gform-theme.gform-theme--framework.gform_wrapper
	.gform-submit-button-wrapper
	input[type='submit'].button.gform_button:focus {
	background-color: var(--wp--preset--color--dark-green);
	background-image: none;
	color: var(--wp--preset--color--beige);
	box-shadow: none;
	opacity: 0.9;
}

.gform-theme.gform-theme--framework.gform_wrapper
	.gform-submit-button-wrapper
	input[type='submit'].button.gform_button:focus {
	outline: 2px solid currentColor;
	outline-offset: 2px;
}

.gform-theme.gform-theme--framework.gform_wrapper .gform-submit-button-wrapper::after {
	content: '';
	position: absolute;
	right: var(--wp--preset--spacing--space-lg);
	top: 50%;
	display: block;
	width: 27px;
	height: 8px;
	background-color: currentColor;
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='27' height='8' viewBox='0 0 27 8'%3E%3Cpath d='M26.354 4.036a.5.5 0 0 0 0-.708L23.172.146a.5.5 0 1 0-.707.708l2.828 2.828-2.828 2.828a.5.5 0 1 0 .707.708zM0 3.682v.5h26v-1H0z'/%3E%3C/svg%3E");
	mask-repeat: no-repeat;
	mask-size: contain;
	pointer-events: none;
	transform: translateY(-50%);
	transition: transform 0.2s ease;
}

.gform-theme.gform-theme--framework.gform_wrapper .gform-submit-button-wrapper:hover::after {
	transform: translateY(-50%) translateX(4px);
}
