/* Nexus Search Widget — isolated component styles. */
.netb-search-widget, .netb-search-widget *, .netb-search-widget *::before, .netb-search-widget *::after {
	box-sizing:border-box;
}
.netb-search-widget {
	--netb-search-accent:#2563eb;
	--netb-search-align:flex-start;
	position:relative;
	isolation:isolate;
	display:flex;
	justify-content:var(--netb-search-align);
	width:100%;
	max-width:100%;
	min-width:0;
	margin:0;
	padding:0;
	border:0;
	background:transparent;
	color:#0f172a;
	font:inherit;
	line-height:1.4;
	text-align:left;
}
.netb-search-widget form, .netb-search-widget label, .netb-search-widget input, .netb-search-widget button, .netb-search-widget a {
	font:inherit;
	letter-spacing:normal;
	text-transform:none;
}
.netb-search-widget__form-shell {
	position:relative;
	width:100%;
	max-width:720px;
	min-width:0;
	margin:0;
	padding:0;
}
.netb-search-widget__form {
	display:flex!important;
	align-items:stretch!important;
	flex-wrap:nowrap!important;
	gap:8px;
	width:100%!important;
	max-width:100%!important;
	min-width:0;
	margin:0!important;
	padding:0!important;
	border:0!important;
	background:transparent!important;
	box-shadow:none!important;
}
.netb-search-widget__field {
	position:relative;
	display:flex!important;
	align-items:center!important;
	flex:1 1 auto!important;
	width:auto;
	min-width:0;
	margin:0!important;
	padding:13px 16px;
	border:1px solid #dbe2ea;
	border-radius:14px;
	background:#fff;
	box-shadow:0 6px 18px rgba(15,23,42,.05);
	cursor:text;
}
.netb-search-widget__input-icon {
	display:inline-flex!important;
	align-items:center;
	justify-content:center;
	flex:0 0 auto;
	margin:0 10px 0 0!important;
	padding:0!important;
	border:0!important;
	background:transparent!important;
	color:#64748b;
	font-size:16px;
	line-height:1;
}
.netb-search-widget__input-icon svg {
	display:block;
	width:1em;
	height:1em;
	fill:currentColor;
}
.netb-search-widget__input {
	-webkit-appearance:none!important;
	appearance:none!important;
	display:block!important;
	flex:1 1 auto!important;
	width:100%!important;
	max-width:none!important;
	min-width:0;
	height:auto!important;
	min-height:0;
	margin:0!important;
	padding:0!important;
	border:0!important;
	border-radius:0!important;
	outline:0!important;
	background:transparent!important;
	box-shadow:none!important;
	color:#0f172a;
	font:inherit;
	line-height:1.4;
	text-align:left!important;
	text-indent:0!important;
}
.netb-search-widget__input:hover, .netb-search-widget__input:focus, .netb-search-widget__input:active {
	border:0!important;
	outline:0!important;
	background:transparent!important;
	box-shadow:none!important;
}
.netb-search-widget__input::-webkit-search-decoration, .netb-search-widget__input::-webkit-search-cancel-button, .netb-search-widget__input::-webkit-search-results-button, .netb-search-widget__input::-webkit-search-results-decoration {
	-webkit-appearance:none;
}
.netb-search-widget__input::placeholder {
	color:#94a3b8;
	opacity:1;
}
.netb-search-widget__field:focus-within {
	border-color:var(--netb-search-accent);
	box-shadow:0 0 0 3px rgba(37,99,235,.12);
}
.netb-search-widget__button, .netb-search-widget__toggle, .netb-search-widget__close {
	-webkit-appearance:none!important;
	appearance:none!important;
	font:inherit;
	text-transform:none!important;
	outline:0;
}
.netb-search-widget__button {
	display:var(--netb-search-button-display,inline-flex)!important;
	align-items:center!important;
	justify-content:center!important;
	flex:0 0 auto!important;
	gap:7px;
	width:auto;
	min-width:0;
	min-height:0;
	margin:0!important;
	padding:13px 18px;
	border:1px solid #2563eb;
	border-radius:14px;
	background:#2563eb;
	box-shadow:none;
	color:#fff;
	cursor:pointer;
	font-weight:700!important;
	line-height:1.4;
	white-space:nowrap;
	text-decoration:none!important;
	transition:background-color .2s ease,border-color .2s ease,color .2s ease,transform .2s ease;
}
.netb-search-widget__button:hover, .netb-search-widget__button:focus {
	border-color:#1d4ed8;
	background:#1d4ed8;
	color:#fff;
	text-decoration:none;
	transform:translateY(-1px);
}
.netb-search-widget__button svg {
	display:block;
	width:1em;
	height:1em;
	fill:currentColor;
}
.netb-search-widget__results {
	position:absolute;
	top:calc(100% + 8px);
	right:0;
	left:0;
	z-index:70;
	margin:0;
	padding:0;
	border:1px solid #e2e8f0;
	border-radius:14px;
	background:#fff;
	box-shadow:0 18px 48px rgba(15,23,42,.14);
	color:#0f172a;
	max-height:min(520px,calc(100dvh - 48px));
	overflow-x:hidden;
	overflow-y:auto;
	overscroll-behavior:contain;
	-webkit-overflow-scrolling:touch;
}
.netb-search-widget__results[hidden] {
	display:none!important
}
.netb-search-widget__result {
	display:flex!important;
	align-items:flex-start;
	gap:12px;
	margin:0!important;
	padding:12px 14px!important;
	border:0!important;
	border-bottom:1px solid #eef2f7!important;
	background:transparent;
	box-shadow:none!important;
	color:inherit;
	text-decoration:none!important;
}
.netb-search-widget__result:last-child {
	border-bottom:0!important
}
.netb-search-widget__result:hover, .netb-search-widget__result:focus {
	background:#f8fafc
}
.netb-search-widget__result-image {
	width:62px;
	height:62px;
	flex:0 0 auto;
	overflow:hidden;
	border-radius:10px;
	background:#f1f5f9;
}
.netb-search-widget__result-image img {
	display:block;
	width:100%!important;
	height:100%!important;
	margin:0!important;
	padding:0!important;
	border:0!important;
	border-radius:0!important;
	object-fit:cover;
}
.netb-search-widget__result-content {
	display:flex;
	min-width:0;
	flex:1 1 auto;
	flex-direction:column;
	gap:4px;
	margin:0;
	padding:0;
}
.netb-search-widget__result-type {
	margin:0;
	padding:0;
	color:#7c3aed;
	font-size:11px;
	font-weight:700;
	letter-spacing:.04em;
	line-height:1.3;
	text-transform:uppercase;
}
.netb-search-widget__result-title {
	margin:0;
	padding:0;
	color:#0f172a;
	font-size:14px;
	font-weight:700;
	line-height:1.35;
}
.netb-search-widget__result-excerpt {
	margin:0;
	padding:0;
	color:#64748b;
	font-size:12px;
	line-height:1.5;
}
.netb-search-widget__status, .netb-search-widget__view-all {
	display:block;
	margin:0;
	padding:13px 14px;
	border:0;
	background:transparent;
	color:#64748b;
	font-size:13px;
	line-height:1.4;
	text-align:center;
}
.netb-search-widget__view-all {
	border-top:1px solid #eef2f7;
	color:#2563eb;
	font-weight:700;
	text-decoration:none!important;
}
.netb-search-widget__spinner {
	display:inline-block;
	width:18px;
	height:18px;
	border:2px solid #cbd5e1;
	border-top-color:var(--netb-search-accent);
	border-radius:50%;
	animation:netb-search-spin .7s linear infinite;
}
@keyframes netb-search-spin {
	to {
		transform:rotate(360deg)
	}
}
.netb-search-widget__toggle {
	display:grid!important;
	place-items:center;
	width:48px!important;
	height:48px!important;
	margin:0!important;
	padding:0!important;
	border:1px solid #e2e8f0;
	border-radius:999px;
	background:#fff;
	box-shadow:0 8px 22px rgba(15,23,42,.08);
	color:#0f172a;
	cursor:pointer;
}
.netb-search-widget__toggle svg {
	display:block;
	width:20px;
	height:20px;
	fill:currentColor;
}
.netb-search-widget__panel {
	position:absolute;
	z-index:90;
	margin:0;
}
.netb-search-widget--modal .netb-search-widget__panel {
	position:fixed!important;
	inset:0!important;
	width:100vw!important;
	height:100dvh!important;
	min-width:100vw!important;
	min-height:100vh!important;
	z-index:2147483647!important;
	display:flex!important;
	align-items:center;
	justify-content:center;
	margin:0!important;
	padding:var(--netb-search-modal-padding-top,32px) var(--netb-search-modal-padding-right,32px) var(--netb-search-modal-padding-bottom,32px) var(--netb-search-modal-padding-left,32px)!important;
	overflow:auto;
	background:var(--netb-search-modal-overlay,rgba(2,6,23,.98))!important;
	backdrop-filter:blur(var(--netb-search-modal-blur,12px))!important;
	-webkit-backdrop-filter:blur(var(--netb-search-modal-blur,12px))!important;
	isolation:isolate;
	pointer-events:auto!important;
}
.netb-search-widget--modal .netb-search-widget__panel[hidden] {
	display:none!important
}
.netb-search-widget--modal .netb-search-widget__form-shell {
	position:relative;
	z-index:2;
	width:min(100%,var(--netb-search-modal-content-width,900px))!important;
	max-width:var(--netb-search-modal-content-width,900px)!important;
	margin:auto;
	pointer-events:auto;
}
.netb-search-widget--modal .netb-search-widget__form {
	width:100%!important
}
html.netb-search-modal-open, html.netb-search-modal-open body {
	overflow:hidden
}
.netb-search-widget__close {
	position:fixed;
	top:clamp(16px,3vw,30px);
	right:clamp(16px,3vw,30px);
	z-index:2;
	display:grid!important;
	place-items:center;
	width:44px!important;
	height:44px!important;
	margin:0!important;
	padding:0!important;
	border:1px solid rgba(255,255,255,.18);
	border-radius:999px;
	background:rgba(255,255,255,.12);
	box-shadow:none;
	color:#fff;
	cursor:pointer;
}
.netb-search-widget__close svg {
	display:block;
	width:22px;
	height:22px;
	fill:none;
}
/* Predefined design: Modern Clean. */
.netb-search-widget--modern .netb-search-widget__field {
	border-color:#dbe2ea;
	background:#fff;
	box-shadow:0 6px 18px rgba(15,23,42,.05);
}
.netb-search-widget--modern .netb-search-widget__button {
	border-color:#2563eb;
	background-color:#2563eb;
}
.netb-search-widget--modern .netb-search-widget__button:hover, .netb-search-widget--modern .netb-search-widget__button:focus {
	border-color:#1d4ed8;
	background-color:#1d4ed8;
}
/* Predefined design: Soft Shadow. */
.netb-search-widget--soft .netb-search-widget__field {
	border-color:transparent;
	background:#f8fafc;
	box-shadow:0 10px 28px rgba(15,23,42,.08);
}
.netb-search-widget--soft .netb-search-widget__field:focus-within {
	border-color:#c7d2fe;
	box-shadow:0 12px 32px rgba(15,23,42,.10),0 0 0 3px rgba(99,102,241,.10);
}
.netb-search-widget--soft .netb-search-widget__button {
	border-color:#6366f1;
	background-color:#6366f1;
}
.netb-search-widget--soft .netb-search-widget__button:hover, .netb-search-widget--soft .netb-search-widget__button:focus {
	border-color:#4f46e5;
	background-color:#4f46e5;
}
@media (max-width:767px) {
	.netb-search-widget__form {
		gap:6px;
	}
	.netb-search-widget__field {
		padding:11px 13px;
	}
	.netb-search-widget__button {
		padding:11px 14px;
	}
}
.netb-search-widget__field-wrap {
	position:relative;
	display:flex;
	align-items:stretch;
	flex:1 1 auto;
	min-width:0;
}
.netb-search-widget__form--button-inside .netb-search-widget__field-wrap {
	width:100%;
}
.netb-search-widget__form--button-inside .netb-search-widget__field {
	padding-right:var(--netb-search-inside-padding,130px);
}
.netb-search-widget__button--inside {
	position:absolute!important;
	top:4px;
	right:4px;
	bottom:4px;
	z-index:2;
	height:auto!important;
	margin:0!important;
}
.netb-search-widget__button--outside {
	position:relative;
}
.netb-search-widget__form-shell {
	z-index:1;
}
.netb-search-widget__form {
	position:relative;
	z-index:1;
}
.netb-search-widget__results {
	z-index:9999!important;
	pointer-events:auto!important;
}
.netb-search-widget__result, .netb-search-widget__view-all {
	position:relative;
	z-index:1;
	pointer-events:auto!important;
	cursor:pointer!important;
}
.netb-search-widget__result *, .netb-search-widget__view-all * {
	pointer-events:none;
}
/* Search live-result interaction hardening. */
.netb-search-widget__results {
	position:absolute;
	z-index:2147483000!important;
	pointer-events:auto!important;
}
.netb-search-widget__results[hidden] {
	pointer-events:none!important;
}
.netb-search-widget__result, .netb-search-widget__view-all {
	position:relative!important;
	z-index:2147483001!important;
	display:flex;
	pointer-events:auto!important;
	cursor:pointer!important;
}
.netb-search-widget__result::before, .netb-search-widget__result::after, .netb-search-widget__view-all::before, .netb-search-widget__view-all::after {
	pointer-events:none!important;
}
.netb-search-widget__result > *, .netb-search-widget__view-all > * {
	pointer-events:none!important;
}
/* Let Elementor typography control the whole search button consistently. */
.netb-search-widget__button, .netb-search-widget__button span {
	font-family:inherit;
	font-size:inherit;
	font-style:inherit;
	font-weight:inherit;
	line-height:inherit;
	letter-spacing:inherit;
	text-transform:inherit;
}
.netb-search-modal-scope {
	position:fixed!important;
	inset:0!important;
	width:100vw!important;
	height:100dvh!important;
	max-width:none!important;
	margin:0!important;
	padding:0!important;
	z-index:2147483647!important;
	transform:none!important;
	filter:none!important;
	perspective:none!important;
	contain:none!important;
	isolation:isolate!important;
	pointer-events:none;
}
.netb-search-modal-scope > .elementor-widget-netb-search.netb-search-modal-portal {
	position:fixed!important;
	inset:0!important;
	width:100vw!important;
	height:100dvh!important;
	max-width:none!important;
	margin:0!important;
	padding:0!important;
	z-index:2147483647!important;
	transform:none!important;
	filter:none!important;
	perspective:none!important;
	contain:none!important;
	isolation:isolate!important;
	pointer-events:none;
}
.netb-search-modal-scope > .elementor-widget-netb-search.netb-search-modal-portal .netb-search-widget--modal {
	position:fixed!important;
	inset:0!important;
	width:100vw!important;
	height:100dvh!important;
	max-width:none!important;
	z-index:2147483647!important;
	pointer-events:none;
}
.netb-search-modal-scope > .elementor-widget-netb-search.netb-search-modal-portal .netb-search-widget__panel {
	pointer-events:auto!important;
}
html.netb-search-modal-open, body.netb-search-modal-open {
	overflow:hidden!important;
}
/* Search live-results: authoritative stacking + height rules. */
.netb-search-widget {
	--netb-search-results-max-height:200px;
}
.netb-search-widget__form-shell {
	position:relative;
	overflow:visible!important;
}
.netb-search-widget__results {
	position:absolute!important;
	z-index:2147483646!important;
	max-height:var(--netb-search-results-max-height,200px)!important;
	overflow-x:hidden!important;
	overflow-y:auto!important;
	overscroll-behavior:contain;
	-webkit-overflow-scrolling:touch;
	pointer-events:auto!important;
}
.netb-search-widget__results[hidden] {
	display:none!important;
	pointer-events:none!important;
}
.netb-search-widget__result, .netb-search-widget__view-all {
	position:relative!important;
	z-index:2147483647!important;
	pointer-events:auto!important;
}
.netb-search-widget__view-all {
	display:block!important;
	width:100%;
	box-sizing:border-box;
}
/*
 * z-index on the dropdown alone cannot escape an ancestor stacking context.
 * While live results are open, JS adds this class to the Search widget's
 * ancestor chain so surrounding theme/Elementor content cannot paint above it.
 */
.netb-search-results-open-layer {
	position:relative!important;
	z-index:2147483645!important;
	overflow:visible!important;
}
.netb-search-widget--modal {
	--netb-search-modal-overlay:rgba(2,6,23,.98);
	--netb-search-modal-padding-top:32px;
	--netb-search-modal-padding-right:32px;
	--netb-search-modal-padding-bottom:32px;
	--netb-search-modal-padding-left:32px;
	--netb-search-modal-content-width:900px;
	--netb-search-modal-blur:12px;
}
