/* A single, light contact entry point. Motion follows input, never a frame loop. */
.ns-support{--ns-support-edge:22px;--ns-support-lift:0px;font-family:var(--font,"DM Sans",Arial,sans-serif);color:#eff5ff}
.ns-support :where(button,input,textarea,a,span,div,p,h2,form,label){box-sizing:border-box}
.ns-support-launcher{position:fixed;right:var(--ns-support-edge);bottom:calc(var(--ns-support-edge) + env(safe-area-inset-bottom,0px) + var(--ns-support-lift));z-index:75;display:flex;align-items:center;justify-content:center;width:64px;height:72px;padding:0;border:0;border-radius:16px;background:transparent;color:#edf5ff;box-shadow:none;cursor:pointer;isolation:isolate;touch-action:manipulation;transition:bottom .24s ease;animation:ns-support-arrive .55s cubic-bezier(.2,.8,.2,1) both}
.ns-support-launcher[hidden]{display:none}
.ns-support-launcher-mascot{display:flex;align-items:center;justify-content:center;flex:none;width:60px;height:68px;margin:0;pointer-events:none;filter:drop-shadow(0 5px 8px #0003)}
.ns-support-launcher .nv-agent-avatar{display:block;width:60px;height:68px;overflow:visible}
.ns-support-launcher .nv-mascot-pupils{transform:translate(var(--ns-support-look-x,0px),var(--ns-support-look-y,0px));transition:transform .1s ease-out}
.ns-support-launcher .nv-mascot-body{transform-box:fill-box;transform-origin:50% 85%;transform:translateY(var(--ns-support-body-y,0px)) rotate(var(--ns-support-tilt,0deg));transition:transform .25s cubic-bezier(.2,.8,.2,1)}
.ns-support-launcher.is-reacting .nv-mascot-eyes{transform-box:fill-box;transform-origin:center;animation:ns-support-blink .24s ease-in-out}
.ns-support-launcher:hover{background:transparent}
.ns-support-launcher:focus-visible{outline:2px solid #bedbff;outline-offset:5px}
.ns-support-tooltip{position:absolute;right:calc(100% + 12px);top:50%;transform:translate(6px,-50%);padding:10px 13px;border:1px solid #5877a15c;border-radius:11px;background:#0d1b2e;color:#e6f0ff;box-shadow:0 5px 20px #0002;font-size:12px;line-height:1.4;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .18s ease,transform .18s ease}
.ns-support-launcher:is(:hover,:focus-visible) .ns-support-tooltip{opacity:1;transform:translate(0,-50%)}
.ns-support-dialog{position:fixed;inset:auto var(--ns-support-edge) calc(102px + env(safe-area-inset-bottom,0px)) auto;width:min(400px,calc(100% - 44px));max-width:none;max-height:calc(100dvh - 130px);margin:0;padding:25px;border:1px solid #7698c46b;border-radius:26px;overflow:auto;overscroll-behavior:contain;background:linear-gradient(145deg,#18304d,#0b192b 72%);color:#eff5ff;box-shadow:0 24px 100px #0005,0 1px 0 #d4e6ff10 inset;font:400 14px/1.55 var(--font,"DM Sans",Arial,sans-serif);scrollbar-width:thin;scrollbar-color:#607a9f transparent}
.ns-support-dialog:not([open]){display:none}
.ns-support-dialog{box-sizing:border-box}
.ns-support-dialog[open]{animation:ns-support-panel-in .28s cubic-bezier(.2,.8,.2,1) both}
.ns-support-dialog::backdrop{background:#02091644;backdrop-filter:blur(3px)}
.ns-support-heading{display:grid;grid-template-columns:55px minmax(0,1fr) 30px;align-items:center;gap:9px}
.ns-support-panel-mascot{width:55px;height:60px;display:grid;place-items:center}
.ns-support-panel-mascot .nv-agent-avatar{display:block;width:48px;height:57px;overflow:visible}
.ns-support-dialog[open] .ns-support-panel-mascot .nv-mascot-eyes{transform-box:fill-box;transform-origin:center;animation:ns-support-blink .24s ease-in-out .1s}
.ns-support-eyebrow{margin:0 0 3px;color:#aac7eb;font-size:10px;letter-spacing:.04em;line-height:1.4}
.ns-support-heading h2{margin:0;color:#f1f6ff;font:500 21px/1.2 var(--font,"DM Sans",Arial,sans-serif);letter-spacing:-.025em;text-wrap:balance}
.ns-support-close{display:grid;place-items:center;align-self:start;width:32px;height:32px;margin:0;padding:7px;border:1px solid #8ba6cb40;border-radius:50%;background:transparent;color:#d1e1f7;cursor:pointer}
.ns-support-close svg{display:block;width:18px;height:18px}
.ns-support-close:hover{background:#abc9ed12;color:#fff}
.ns-support-intro{margin:15px 0 17px;color:#b6cbe6;font-size:13px;line-height:1.65}
.ns-support-form{display:grid;gap:8px;margin:0}
.ns-support-form label{display:block;margin:6px 0 0;color:#e3edf9;font-size:12px;font-weight:500;line-height:1.5}
.ns-support-form label:first-child{margin-top:0}
.ns-support-form label span{color:#9eb5d1;font-size:10px;font-weight:400}
.ns-support-form :is(input,textarea){display:block;width:100%;min-width:0;margin:0;padding:11px 12px;border:1px solid #617eaa7a;border-radius:11px;background:#06132788;color:#f1f6ff;font:400 16px/1.5 var(--font,"DM Sans",Arial,sans-serif);box-shadow:none;outline-offset:2px}
.ns-support-form textarea{min-height:104px;max-height:250px;resize:vertical}
.ns-support-form :is(input,textarea)::placeholder{color:#849ebf;opacity:1;font-size:13px}
.ns-support-form :is(input,textarea):focus-visible{outline:2px solid #accdfb;border-color:#accdfb}
.ns-support-honeypot{display:none!important}
.ns-support-status{margin:8px 0 7px;padding:10px 12px;border:1px solid #7a9bc566;border-radius:10px;color:#d1e2f8;font-size:12px;line-height:1.6}
.ns-support-status[hidden]{display:none}
.ns-support-status[data-state=success]{color:#c5eddd;border-color:#80b7a366;background:#52876d18}
.ns-support-status[data-state=error]{color:#f6d5ce;border-color:#c38a7a66;background:#a5695518}
.ns-support-submit{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:47px;width:100%;margin:0;padding:12px 16px;border:1px solid #8aabf333;border-radius:12px;background:#3763ee;color:#fff;font:500 13px/1.5 var(--font,"DM Sans",Arial,sans-serif);text-align:left;cursor:pointer;transition:background .18s ease}
.ns-support-submit:hover{background:#4775ff}
.ns-support-submit>span[aria-hidden]{font-size:19px;line-height:1}
.ns-support-submit:disabled{opacity:.65;cursor:wait}
.ns-support-contact-link{display:block;width:fit-content;margin:15px 0 0;color:#abc8ed;font-size:11px;line-height:1.5;text-decoration:underline;text-underline-offset:4px}
.ns-support :is(button,a):focus-visible{outline:2px solid #bedbff;outline-offset:4px}
@keyframes ns-support-arrive{from{opacity:0;translate:28px 0}to{opacity:1;translate:0 0}}
@keyframes ns-support-panel-in{from{opacity:0;translate:22px 5px}to{opacity:1;translate:0 0}}
@keyframes ns-support-blink{0%,100%{scale:1 1}45%,55%{scale:1 .12}}
@media(max-width:600px){.ns-support{--ns-support-edge:15px}.ns-support-launcher{width:58px;height:66px}.ns-support-launcher-mascot,.ns-support-launcher .nv-agent-avatar{width:54px;height:62px}.ns-support-tooltip{display:none}.ns-support-dialog{inset:auto 12px calc(88px + env(safe-area-inset-bottom,0px)) auto;width:calc(100% - 24px);max-height:calc(100dvh - 108px);padding:21px;border-radius:22px}.ns-support-heading{grid-template-columns:49px minmax(0,1fr) 30px;gap:8px}.ns-support-panel-mascot{width:49px}.ns-support-heading h2{font-size:20px}.ns-support-intro{margin-block:15px 18px}}
/* Keep the contact mascot in the lower-right corner on phones as requested.
   The compact hit area follows the visible mascot rather than covering a wide card. */
@media(max-width:640px){
 .ns-support{--ns-support-edge:12px}
 .ns-support-launcher{width:44px;height:50px;border-radius:12px;animation:none}
 .ns-support-launcher-mascot,.ns-support-launcher .nv-agent-avatar{width:40px;height:46px}
 .ns-support-tooltip{display:none}
}
@media(max-height:600px){.ns-support-dialog{inset:12px 12px auto auto;max-height:calc(100dvh - 24px)}.ns-support-intro{margin-block:12px}.ns-support-form textarea{min-height:85px}}
@media(prefers-reduced-motion:reduce){.ns-support-launcher,.ns-support-dialog[open],.ns-support-launcher.is-reacting .nv-mascot-eyes,.ns-support-dialog[open] .ns-support-panel-mascot .nv-mascot-eyes{animation:none}.ns-support *{transition:none!important}.ns-support-launcher :is(.nv-mascot-pupils,.nv-mascot-body,.nv-mascot-eyes){transform:none!important;scale:1!important}}
html.motion-paused .ns-support-launcher,html.motion-paused .ns-support-dialog[open],html.motion-paused .ns-support-launcher.is-reacting .nv-mascot-eyes{animation:none}
html.motion-paused .ns-support-dialog[open] .ns-support-panel-mascot .nv-mascot-eyes{animation:none}
html.motion-paused .ns-support *{transition:none!important}
html.motion-paused .ns-support-launcher :is(.nv-mascot-pupils,.nv-mascot-body,.nv-mascot-eyes){transform:none!important;scale:1!important}

/* Isolate the floating form from the light input skin of interior pages. */
#ns-support-dialog .ns-support-form :is(input,textarea){background:#0b192c;color:#f1f6ff;border-color:#617eaa7a;color-scheme:dark}
#ns-support-dialog .ns-support-form :is(input,textarea):focus-visible{background:#11233b;color:#fff;border-color:#accdfb}
