/* ==========================================================
   Search Box Widget
   ========================================================== */

.sbw-wrap {
	width: 100%;
}

.sbw-form {
	margin: 0;
	padding: 0;
}

/* ----------------------------------------------------------
   Search box row
   ---------------------------------------------------------- */

.sbw-search-box {
	display: flex;
	align-items: center;
	gap: 12px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.25);
	padding-bottom: 17px;
	transition: border-color 0.2s;
	max-width: 390px;
}

.sbw-search-box:focus-within {
	border-bottom-color: rgba(255, 255, 255, 0.7);
}

/* Icon reversed when position = right */
.sbw-search-box.sbw-icon-right .sbw-search-icon {
	order: 3;
}

/* ----------------------------------------------------------
   Icon
   ---------------------------------------------------------- */

.sbw-search-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	line-height: 1;
}

.sbw-search-icon svg {
	width: 24px;
	height: 24px;
	stroke: #ffffff;
	display: block;
}

.sbw-search-icon i {
	color: #ffffff;
	font-size: 24px;
	line-height: 1;
}

/* ----------------------------------------------------------
   Input
   ---------------------------------------------------------- */

.sbw-search-box input[type="search"] {
	background: transparent;
	border: none;
	outline: none;
	font-size: 16px;
	font-weight: 700;
	color: #ffffff;
	width: 100%;
	letter-spacing: 0.8px;
	-webkit-appearance: none;
	appearance: none;
	padding: 0;
	margin: 0;
	box-shadow: none;
}

.sbw-search-box input[type="search"]::placeholder {
	color: #ffffff;
	font-weight: 700;
}

/* Hide browser-native clear button */
.sbw-search-box input[type="search"]::-webkit-search-decoration,
.sbw-search-box input[type="search"]::-webkit-search-cancel-button,
.sbw-search-box input[type="search"]::-webkit-search-results-button,
.sbw-search-box input[type="search"]::-webkit-search-results-decoration {
	display: none;
	-webkit-appearance: none;
}

/* ----------------------------------------------------------
   Clear button
   ---------------------------------------------------------- */

.sbw-clear-btn {
	background: none;
	border: none;
	cursor: pointer;
	color: rgba(255, 255, 255, 0.4);
	font-size: 18px;
	padding: 0;
	display: none;
	line-height: 1;
	flex-shrink: 0;
	transition: color 0.2s;
}

.sbw-clear-btn.sbw-visible {
	display: block;
}

.sbw-clear-btn:hover {
	color: rgba(255, 255, 255, 0.7);
}

/* ----------------------------------------------------------
   Responsive
   ---------------------------------------------------------- */

@media ( max-width: 575px ) {
	.sbw-search-box input[type="search"] {
		font-size: 14px;
	}
}
