/* Nexvio Header Search
   Layouts (class on .nexvio-hs, set per device by header-search.js):
   dropdown | bar | modal | fullscreen | slide | inline */
.nexvio-hs-wrap{display:flex}
.nexvio-hs{
	--nexvio-hs-box:42px;--nexvio-hs-icon:22px;--nexvio-hs-radius:6px;--nexvio-hs-color:#e8edf4;--nexvio-hs-color-h:#fff;--nexvio-hs-bg:transparent;--nexvio-hs-bg-h:#262d37;
	--nexvio-hs-w:380px;--nexvio-hs-bar-w:760px;--nexvio-hs-offset:10px;--nexvio-hs-pbg:#1f252e;--nexvio-hs-pborder:#313945;--nexvio-hs-pradius:8px;--nexvio-hs-ppad:10px;--nexvio-hs-overlay:rgba(5,7,10,.6);--nexvio-hs-fsbg:rgba(10,13,18,.96);
	--nexvio-hs-ih:46px;--nexvio-hs-ibg:#181d24;--nexvio-hs-iborder:#313945;--nexvio-hs-focus:#3d8bff;--nexvio-hs-itext:#e8edf4;--nexvio-hs-ph:#8f9aab;
	--nexvio-hs-btn:#3d8bff;--nexvio-hs-btn-h:#5a9dff;--nexvio-hs-btn-t:#fff;--nexvio-hs-fs:15px;--nexvio-hs-top:60px;
	position:relative;font-family:"Barlow","Segoe UI",system-ui,sans-serif}
.nexvio-hs *,.nexvio-hs *::before,.nexvio-hs *::after{box-sizing:border-box}
.nexvio-hs .nexvio-hs__toggle{display:grid;place-items:center;width:var(--nexvio-hs-box);height:var(--nexvio-hs-box);margin:0;padding:0;border:0;border-radius:var(--nexvio-hs-radius);
	background:var(--nexvio-hs-bg);color:var(--nexvio-hs-color);cursor:pointer;transition:background .15s,color .15s;box-shadow:none;line-height:1;-webkit-tap-highlight-color:transparent}
.nexvio-hs .nexvio-hs__toggle:hover,.nexvio-hs .nexvio-hs__toggle:focus-visible,.nexvio-hs.is-open .nexvio-hs__toggle{background:var(--nexvio-hs-bg-h);color:var(--nexvio-hs-color-h)}
.nexvio-hs__icon{display:grid;place-items:center;width:var(--nexvio-hs-icon);height:var(--nexvio-hs-icon);font-size:var(--nexvio-hs-icon)}
.nexvio-hs__icon svg{width:100%;height:100%;display:block}
.nexvio-hs__panel[hidden]{display:none!important}
.nexvio-hs__sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* shared form */
.nexvio-hs__form{display:flex;align-items:center;gap:8px;margin:0;min-width:0}
.nexvio-hs__field{position:relative;flex:1;min-width:0;display:flex;align-items:center}
.nexvio-hs__field svg{position:absolute;left:12px;width:18px;height:18px;color:var(--nexvio-hs-ph);pointer-events:none}
.nexvio-hs .nexvio-hs__input{width:100%;min-width:0;height:var(--nexvio-hs-ih);margin:0;padding:0 12px 0 40px;background:var(--nexvio-hs-ibg);color:var(--nexvio-hs-itext);border:1px solid var(--nexvio-hs-iborder);
	border-radius:4px;font:inherit;font-size:var(--nexvio-hs-fs);outline:none;box-shadow:none;-webkit-appearance:none;appearance:none}
.nexvio-hs .nexvio-hs__input::-webkit-search-cancel-button{display:none}
.nexvio-hs .nexvio-hs__input::placeholder{color:var(--nexvio-hs-ph);opacity:1}
.nexvio-hs .nexvio-hs__input:focus{border-color:var(--nexvio-hs-focus);box-shadow:0 0 0 3px rgba(61,139,255,.2)}
.nexvio-hs .nexvio-hs__submit{flex-shrink:0;display:grid;place-items:center;min-width:var(--nexvio-hs-ih);height:var(--nexvio-hs-ih);margin:0;padding:0 14px;border:0;background:var(--nexvio-hs-btn);color:var(--nexvio-hs-btn-t);
	cursor:pointer;font:600 15px/1 "Chakra Petch","Segoe UI",sans-serif;clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);transition:background .15s}
.nexvio-hs .nexvio-hs__submit:hover{background:var(--nexvio-hs-btn-h);color:var(--nexvio-hs-btn-t)}
.nexvio-hs .nexvio-hs__submit svg{width:20px;height:20px}
.nexvio-hs .nexvio-hs__close{flex-shrink:0;width:38px;height:38px;margin:0;padding:0;border:0;border-radius:50%;background:transparent;color:var(--nexvio-hs-ph);font-size:24px;line-height:1;cursor:pointer;display:grid;place-items:center;-webkit-tap-highlight-color:transparent}
.nexvio-hs .nexvio-hs__close:hover{background:rgba(255,255,255,.06);color:var(--nexvio-hs-itext)}

/* ---------- dropdown ---------- */
.nexvio-hs--dropdown .nexvio-hs__panel{position:absolute;top:calc(100% + var(--nexvio-hs-offset));z-index:9999;width:var(--nexvio-hs-w);max-width:calc(100vw - 24px);
	background:var(--nexvio-hs-pbg);border:1px solid var(--nexvio-hs-pborder);border-radius:var(--nexvio-hs-pradius);padding:var(--nexvio-hs-ppad);box-shadow:0 18px 40px rgba(0,0,0,.45);
	animation:nexvio-hs-in .18s ease}
.nexvio-hs--dropdown.nexvio-hs--right .nexvio-hs__panel{right:0}
.nexvio-hs--dropdown.nexvio-hs--left .nexvio-hs__panel{left:0}

/* ---------- inline expand (the icon becomes the field) ---------- */
.nexvio-hs--inline .nexvio-hs__panel{position:absolute;z-index:9999;top:calc((var(--nexvio-hs-box) - var(--nexvio-hs-ih) - 2 * var(--nexvio-hs-ppad) - 2px) / 2);width:var(--nexvio-hs-w);max-width:calc(100vw - 24px);
	background:var(--nexvio-hs-pbg);border:1px solid var(--nexvio-hs-pborder);border-radius:var(--nexvio-hs-pradius);padding:var(--nexvio-hs-ppad);box-shadow:0 12px 30px rgba(0,0,0,.4)}
.nexvio-hs--inline.nexvio-hs--right .nexvio-hs__panel{right:0;animation:nexvio-hs-reveal-r .22s ease}
.nexvio-hs--inline.nexvio-hs--left .nexvio-hs__panel{left:0;animation:nexvio-hs-reveal-l .22s ease}

/* ---------- overlay layouts: bar / modal / fullscreen / slide ---------- */
.nexvio-hs--bar .nexvio-hs__panel,.nexvio-hs--modal .nexvio-hs__panel,.nexvio-hs--fullscreen .nexvio-hs__panel,.nexvio-hs--slide .nexvio-hs__panel{
	position:fixed;inset:0;z-index:99999;background:var(--nexvio-hs-overlay);animation:nexvio-hs-fade .18s ease;overflow-y:auto;overscroll-behavior:contain;
	padding:calc(env(safe-area-inset-top,0px) + 16px) calc(env(safe-area-inset-right,0px) + 16px) calc(env(safe-area-inset-bottom,0px) + 16px) calc(env(safe-area-inset-left,0px) + 16px)}
.nexvio-hs--bar .nexvio-hs__form,.nexvio-hs--modal .nexvio-hs__form{width:100%;max-width:var(--nexvio-hs-bar-w);margin:0 auto;background:var(--nexvio-hs-pbg);border:1px solid var(--nexvio-hs-pborder);border-radius:var(--nexvio-hs-pradius);padding:var(--nexvio-hs-ppad);
	box-shadow:0 18px 40px rgba(0,0,0,.45);animation:nexvio-hs-in .2s ease}
html.nexvio-hs-lock{overflow:hidden}

/* modal: centred vertically */
.nexvio-hs--modal .nexvio-hs__panel{display:flex;align-items:center;justify-content:center}
.nexvio-hs--modal .nexvio-hs__form{margin:auto}

/* full screen: big transparent field */
.nexvio-hs--fullscreen .nexvio-hs__panel{background:var(--nexvio-hs-fsbg);display:flex;align-items:center;justify-content:center}
.nexvio-hs--fullscreen .nexvio-hs__form{width:100%;max-width:var(--nexvio-hs-bar-w);margin:auto;gap:12px}
.nexvio-hs--fullscreen .nexvio-hs__field svg{left:2px;width:26px;height:26px}
.nexvio-hs--fullscreen .nexvio-hs__input{height:max(var(--nexvio-hs-ih),64px);padding-left:44px;background:transparent;border:0;border-bottom:2px solid var(--nexvio-hs-iborder);border-radius:0;font-size:clamp(20px,4vw,34px)}
.nexvio-hs--fullscreen .nexvio-hs__input:focus{border-bottom-color:var(--nexvio-hs-focus);box-shadow:none}
.nexvio-hs--fullscreen .nexvio-hs__submit{height:max(var(--nexvio-hs-ih),52px)}
.nexvio-hs .nexvio-hs__close{z-index:2}
.nexvio-hs--fullscreen .nexvio-hs__close{position:fixed;top:calc(env(safe-area-inset-top,0px) + 14px);right:calc(env(safe-area-inset-right,0px) + 14px);width:46px;height:46px;font-size:30px}

/* slide: the form is the drawer */
.nexvio-hs--slide .nexvio-hs__panel{padding:0}
.nexvio-hs--slide .nexvio-hs__form{position:fixed;top:0;bottom:0;width:min(var(--nexvio-hs-w),100%);flex-wrap:wrap;align-content:flex-start;gap:12px;overflow-y:auto;
	background:var(--nexvio-hs-pbg);padding:calc(env(safe-area-inset-top,0px) + 14px) 16px calc(env(safe-area-inset-bottom,0px) + 16px);box-shadow:0 0 40px rgba(0,0,0,.45)}
.nexvio-hs--slide.nexvio-hs--right .nexvio-hs__form{right:0;border-left:1px solid var(--nexvio-hs-pborder);animation:nexvio-hs-slide-r .24s ease}
.nexvio-hs--slide.nexvio-hs--left .nexvio-hs__form{left:0;border-right:1px solid var(--nexvio-hs-pborder);animation:nexvio-hs-slide-l .24s ease}
.nexvio-hs--slide .nexvio-hs__close{order:-1;margin-left:auto}
.nexvio-hs--slide .nexvio-hs__field{flex:1 1 100%}
.nexvio-hs--slide .nexvio-hs__submit{order:2;flex:1 1 100%;width:100%}

/* ---------- animations ---------- */
@keyframes nexvio-hs-in{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
@keyframes nexvio-hs-fade{from{opacity:0}to{opacity:1}}
@keyframes nexvio-hs-slide-r{from{transform:translateX(100%)}to{transform:none}}
@keyframes nexvio-hs-slide-l{from{transform:translateX(-100%)}to{transform:none}}
@keyframes nexvio-hs-reveal-r{from{clip-path:inset(0 0 0 100%)}to{clip-path:inset(0)}}
@keyframes nexvio-hs-reveal-l{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}
@media (prefers-reduced-motion:reduce){.nexvio-hs__panel,.nexvio-hs__form{animation:none!important}}

/* ---------- tablet ---------- */
@media (max-width:1024px){
	.nexvio-hs--bar .nexvio-hs__form,.nexvio-hs--modal .nexvio-hs__form,.nexvio-hs--fullscreen .nexvio-hs__form{max-width:min(var(--nexvio-hs-bar-w),100%)}
}

/* ---------- mobile ---------- */
@media (max-width:767px){
	.nexvio-hs{--nexvio-hs-fs:16px} /* 16px stops iOS zooming into the field */

	/* dropdown + inline: a full-width sheet under (or over) the icon, kept inside the screen */
	.nexvio-hs--dropdown .nexvio-hs__panel,.nexvio-hs--inline .nexvio-hs__panel{position:fixed;top:var(--nexvio-hs-top);left:12px;right:12px;width:auto;max-width:none;translate:none!important;animation:nexvio-hs-in .18s ease}
	.nexvio-hs--inline .nexvio-hs__panel{clip-path:none}

	.nexvio-hs--bar .nexvio-hs__panel,.nexvio-hs--modal .nexvio-hs__panel{padding:calc(env(safe-area-inset-top,0px) + 10px) 10px 10px}
	.nexvio-hs--modal .nexvio-hs__panel{align-items:flex-start;padding-top:calc(env(safe-area-inset-top,0px) + 18vh)}
	.nexvio-hs--bar .nexvio-hs__form,.nexvio-hs--modal .nexvio-hs__form{gap:6px}

	.nexvio-hs--fullscreen .nexvio-hs__panel{align-items:flex-start;padding-top:calc(env(safe-area-inset-top,0px) + 90px)}
	.nexvio-hs--fullscreen .nexvio-hs__input{font-size:22px;height:56px;padding-left:38px}
	.nexvio-hs--fullscreen .nexvio-hs__field svg{width:22px;height:22px}
	.nexvio-hs--fullscreen .nexvio-hs__close{top:calc(env(safe-area-inset-top,0px) + 10px);right:10px}

	.nexvio-hs--slide .nexvio-hs__form{width:min(var(--nexvio-hs-w),88vw)}

	.nexvio-hs .nexvio-hs__submit{padding:0 12px}
	.nexvio-hs .nexvio-hs__close{width:42px;height:42px}
}
@media (max-width:360px){
	.nexvio-hs .nexvio-hs__submit{min-width:44px}
	.nexvio-hs--bar .nexvio-hs__form,.nexvio-hs--modal .nexvio-hs__form{padding:6px}
}
