/* Village Caregiving search layout + Batterbee Roofing theme colors */

.search-wrap {
	--wpcm-search-primary: var(--e-global-color-primary, #035DA4);
	--wpcm-search-secondary: var(--e-global-color-secondary, #000852);
	--wpcm-search-text: var(--e-global-color-text, #2B2B2B);
	--wpcm-search-white: var(--e-global-color-ce3ee17, #FFFFFF);
	--wpcm-search-muted: var(--e-global-color-f3b73aa, #DFDFDF);
	--wpcm-search-accent: var(--e-global-color-accent, #008FFF);
	--wpcm-search-shadow: 0 4px 20px 10px rgba(3, 93, 164, 0.15);
	max-width: 475px;
	width: 100%;
	font-family: "Gilroy", "Roboto Condensed", sans-serif;
}

.search-wrap label {
	display: block;
	padding: 0 0 8px 10px;
	color: var(--wpcm-search-text);
	font-size: 16px;
	line-height: 1.8em;
	font-weight: 700;
}

.search-wrap .map-location-search-form {
	margin: 0;
	width: 100%;
}

.search-wrap .search-col {
	position: relative;
	width: 100%;
	height: 59px;
	background: var(--wpcm-search-white);
	box-shadow: var(--wpcm-search-shadow);
	border-radius: 40px;
}

.search-wrap .search-col input.js-location-autosuggest,
.search-wrap .search-col input[type="text"] {
	display: block;
	padding: 5px 70px 0 30px;
	color: var(--wpcm-search-text);
	font-size: 20px;
	line-height: 1.4em;
	font-weight: 700;
	font-family: inherit;
	border: none;
	height: 100%;
	width: 100%;
	background: transparent;
	border-radius: 40px;
	box-shadow: none;
	outline: none;
}

.search-wrap .search-col input.js-location-autosuggest:focus,
.search-wrap .search-col input[type="text"]:focus,
.search-wrap .search-col input.js-location-autosuggest:active,
.search-wrap .search-col input[type="text"]:active,
.search-wrap .search-col input.js-location-autosuggest:not(:placeholder-shown),
.search-wrap .search-col input[type="text"]:not(:placeholder-shown) {
	outline: none;
	border: none;
	background: transparent;
	box-shadow: none;
}

.search-wrap .search-col input::placeholder {
	opacity: 0.45;
	color: var(--wpcm-search-text);
	font-weight: 700;
}

.search-wrap .search-col button[type="submit"] {
	position: absolute;
	top: 50%;
	right: 29px;
	transform: translateY(-50%);
	background: transparent;
	border: none;
	font-size: 27px;
	line-height: 1;
	color: var(--wpcm-search-primary);
	padding: 8px 0 0;
	cursor: pointer;
	z-index: 2;
}

.search-wrap .search-col button[type="submit"]:hover,
.search-wrap .search-col button[type="submit"]:focus {
	color: var(--wpcm-search-accent);
}

.search-wrap .search-col button[type="submit"] .icon-search {
	display: inline-block;
	speak: never;
	font-style: normal;
	font-weight: 400;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
}

.search-wrap .location-autosuggest {
	position: absolute;
	left: 0;
	right: 0;
	top: calc(100% + 8px);
	z-index: 50;
	background: var(--wpcm-search-white);
	border: 1px solid var(--wpcm-search-muted);
	border-radius: 16px;
	box-shadow: var(--wpcm-search-shadow);
	max-height: 280px;
	overflow-y: auto;
}

.search-wrap .location-autosuggest[hidden] {
	display: none;
}

.search-wrap .location-autosuggest__item {
	display: block;
	width: 100%;
	text-align: left;
	padding: 12px 20px;
	border: 0;
	border-bottom: 1px solid var(--wpcm-search-muted);
	background: var(--wpcm-search-white);
	cursor: pointer;
	color: var(--wpcm-search-text);
	text-decoration: none;
	font-family: inherit;
	font-size: 16px;
	line-height: 1.4;
	font-weight: 600;
	transition: background-color 0.2s ease, color 0.2s ease;
}

.search-wrap .location-autosuggest__item:last-child {
	border-bottom: 0;
}

.search-wrap .location-autosuggest__item:hover,
.search-wrap .location-autosuggest__item.is-active,
.search-wrap .location-autosuggest__item:focus {
	background: rgba(3, 93, 164, 0.08);
	color: var(--wpcm-search-primary);
	outline: none;
}

.search-wrap .location-autosuggest__title {
	display: block;
	font-weight: 700;
	color: inherit;
}

.search-wrap .location-autosuggest__meta {
	display: block;
	font-size: 0.9em;
	font-weight: 500;
	opacity: 0.8;
}

.search-wrap .location-autosuggest__empty {
	padding: 14px 20px;
	color: var(--wpcm-search-text);
	opacity: 0.8;
	font-size: 15px;
}

/* Dark hero / dark section contrast (label readable on navy) */
.elementor-section-wrap .search-wrap label,
.bg-dark .search-wrap label,
.elementor-element[data-settings*="background"] .search-wrap label {
	color: var(--wpcm-search-text);
}

@media (max-width: 767px) {
	.search-wrap {
		max-width: 100%;
	}

	.search-wrap .search-col {
		height: 54px;
	}

	.search-wrap .search-col input.js-location-autosuggest,
	.search-wrap .search-col input[type="text"] {
		padding: 5px 64px 0 20px;
		font-size: 16px;
	}

	.search-wrap .search-col button[type="submit"] {
		right: 20px;
		font-size: 22px;
	}
}
