/**
 * EverGrove reusable UI components.
 */

/*--------------------------------------------------------------------------
# Buttons — black #000, slight radius, uppercase + chevron
--------------------------------------------------------------------------*/

.evergrove-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	padding: 14px 18px;
    min-height: 2.75rem;
    max-width: 100%;
	border: 1px solid transparent;
	border-radius: var(--radius-button);
	font-family: var(--font-family-body);
	font-size: 12px;
	font-weight: var(--font-weight-semibold);
	letter-spacing: 0;
	line-height: 1.4;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	cursor: pointer;
	transition:
		background-color var(--transition-default),
		border-color var(--transition-default),
		color var(--transition-default),
		opacity var(--transition-fast);
}

.evergrove-btn:focus-visible {
	outline: 2px solid var(--color-text-inverse);
	outline-offset: 3px;
}

.evergrove-btn:disabled,
.evergrove-btn[aria-disabled="true"] {
	background-color: var(--color-disabled-bg);
	border-color: var(--color-disabled-bg);
	color: var(--color-disabled-text);
	cursor: not-allowed;
	pointer-events: none;
}

.evergrove-btn__icon {
	display: inline-block;
	flex: 0 0 auto;
	width: 0.75rem;
	height: 0.75rem;
	object-fit: contain;
}

.evergrove-btn__icon--arrow {
	width: 5px;
	height: 8px;
	color: inherit;
	transition: color var(--transition-default);
}

.evergrove-btn--primary {
	background-color: var(--color-button);
	border-color: var(--color-button);
	color: var(--color-footer-text);
}

.evergrove-btn--primary:hover {
	background-color: var(--color-button-hover);
	border-color: #000;
	color: #000;
}

.evergrove-btn--primary:active {
	background-color: var(--color-button-active);
	border-color: var(--color-button-active);
	color: var(--color-button-text);
}

.evergrove-btn--block {
	width: 100%;
}

.evergrove-btn--outline {
	background-color: transparent;
	border-color: var(--color-button);
	color: var(--color-button);
}

.evergrove-btn--outline:hover {
	background-color: var(--color-button);
	border-color: var(--color-button);
	color: var(--color-button-text);
}

.evergrove-btn--outline:active {
	background-color: var(--color-button-hover);
	border-color: var(--color-button-hover);
	color: var(--color-button-text);
}


/*--------------------------------------------------------------------------
# CF7 form submit — arrow via background (input cannot use ::after)
# Override --evergrove-cf7-arrow-pos per form for different icon placement
--------------------------------------------------------------------------*/

.wpcf7-submit.evergrove-btn,
input.wpcf7-submit.evergrove-btn {
	--evergrove-cf7-arrow-pos: right 25% center;
	width: 100%;
	min-height: 45px;
	padding: 18px 36px 18px 14px;
	border: 1px solid var(--color-button);
	border-radius: var(--radius-button);
	background-color: var(--color-button);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='5' height='8' viewBox='0 0 5 8' fill='none'%3E%3Cpath d='M4.75 3.99951C2.54086 3.99951 0.75 5.79037 0.75 7.99951' stroke='%23FFF9E6' stroke-width='1.5'/%3E%3Cpath d='M4.75 4C2.54086 4 0.75 2.20914 0.75 0' stroke='%23FFF9E6' stroke-width='1.5'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: var(--evergrove-cf7-arrow-pos);
	background-size: 5px 8px;
	color: #FFF9E6;
	font-family: var(--font-family-body);
	font-size: 12px;
	font-weight: var(--font-weight-semibold);
	line-height: 1.4;
	text-transform: uppercase;
	cursor: pointer;
	appearance: none;
	-webkit-appearance: none;
	transition:
		background-color var(--transition-default),
		border-color var(--transition-default),
		color var(--transition-default),
		background-image var(--transition-default);
}

.wpcf7-submit.evergrove-btn:hover,
input.wpcf7-submit.evergrove-btn:hover {
	background-color: #FFF9E6;
	border-color: #FFF9E6;
	color: #000;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='5' height='8' viewBox='0 0 5 8' fill='none'%3E%3Cpath d='M4.75 3.99951C2.54086 3.99951 0.75 5.79037 0.75 7.99951' stroke='%23000' stroke-width='1.5'/%3E%3Cpath d='M4.75 4C2.54086 4 0.75 2.20914 0.75 0' stroke='%23000' stroke-width='1.5'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: var(--evergrove-cf7-arrow-pos);
	background-size: 5px 8px;
}

/*--------------------------------------------------------------------------
# Brochure form popup (hero form design)
--------------------------------------------------------------------------*/

.evergrove-brochure-modal {
	margin: auto;
	padding: 0;
	border: 0;
	background: transparent;
	color: #fff9e6;
	overflow: visible;
}

.evergrove-brochure-modal::backdrop {
	background-color: rgb(9 38 50 / 0.65);
}

.evergrove-brochure-modal__close {
	position: absolute;
	top: -3.65rem;
    right: -0.5rem;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2rem;
	height: 2rem;
	margin: 0;
	padding: 0;
	border: 0;
	background: none;
	font-size: 1.75rem;
	line-height: 1;
	color: #fff9e6;
	cursor: pointer;
}

.evergrove-brochure-modal__close:hover,
.evergrove-brochure-modal__close:focus-visible {
	opacity: 0.75;
}

.evergrove-brochure-modal__frame {
	position: relative;
	width: 100%;
	max-width: 22.5rem;
	margin: 0 auto;
}