/* The floating button sits at the bottom-LEFT so it never collides with the chatbot button on the right. */
/* HN Multiverrse growth modules - scoped styles (prefix .hngx-). Plain CSS, no build step, no global selectors. */
.hngx-widget,.hngx-b2b,.hngx-marquee,.hngx-ann{--p:#6941e8;--p2:#8b5cf6;--ink:#1a1340;--mut:#6b6590;--line:#e4def8;--wa:#25d366;font-family:Poppins,"Segoe UI",Roboto,Arial,sans-serif;box-sizing:border-box}
.hngx-widget *,.hngx-b2b *,.hngx-marquee *,.hngx-ann *{box-sizing:border-box}
[hidden]{display:none!important}

/* ---------- floating button + panel (bottom-6 right-6, z-50 equivalent) ---------- */
.hngx-fab{position:fixed;left:1.5rem;bottom:1.5rem;z-index:2147483600;width:62px;height:62px;border:0;border-radius:50%;cursor:pointer;display:grid;place-items:center;background:linear-gradient(135deg,#25d366,#128c7e);box-shadow:0 12px 30px rgba(18,140,126,.45);transition:transform .2s}
.hngx-fab:hover{transform:scale(1.07)}.hngx-fab:focus-visible{outline:3px solid #ffb703;outline-offset:3px}
.hngx-ping{position:absolute;inset:0;border-radius:50%;border:2px solid var(--wa);animation:hngxPing 2.4s cubic-bezier(0,0,.2,1) infinite;pointer-events:none}
.hngx-ping2{animation-delay:1.2s}
@keyframes hngxPing{0%{transform:scale(1);opacity:.75}80%,100%{transform:scale(1.9);opacity:0}}
.hngx-widget.is-open .hngx-ping{animation:none;opacity:0}
.hngx-panel{position:fixed;left:1.5rem;bottom:6.2rem;z-index:2147483601;width:min(380px,calc(100vw - 2rem));max-height:min(640px,calc(100vh - 8rem));overflow:auto;background:#fff;border-radius:22px;box-shadow:0 28px 70px rgba(26,19,64,.32),0 0 0 1px rgba(105,65,232,.1);transform-origin:0 100%;animation:hngxPop .22s ease-out}
@keyframes hngxPop{from{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:none}}
.hngx-head{display:flex;justify-content:space-between;gap:12px;padding:16px 18px;color:#fff;background:linear-gradient(135deg,#128c7e,#25d366);border-radius:22px 22px 0 0}
.hngx-head strong{display:block;font-size:16px}.hngx-head small{opacity:.9;font-size:12px}
.hngx-x{border:0;background:rgba(255,255,255,.2);color:#fff;width:32px;height:32px;border-radius:50%;font-size:20px;line-height:1;cursor:pointer}.hngx-x:hover{background:rgba(255,255,255,.35)}
.hngx-tabs{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line);background:#faf9ff}
.hngx-tabs button{border:0;background:none;padding:13px 8px;font:600 13px/1.2 inherit;color:var(--mut);cursor:pointer;border-bottom:3px solid transparent}
.hngx-tabs button.is-on{color:var(--p);border-bottom-color:var(--p);background:#fff}
.hngx-tabs button:focus-visible{outline:2px solid var(--p);outline-offset:-2px}
.hngx-pane{padding:16px 18px 18px}.hngx-lead{margin:0 0 12px;color:var(--mut);font-size:13px}
.hngx-wa{display:flex;align-items:center;gap:12px;padding:12px 14px;margin-bottom:10px;border-radius:14px;text-decoration:none;color:var(--ink);background:#effcf4;border:1px solid #bdecd0;transition:transform .15s,box-shadow .15s}
.hngx-wa:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(37,211,102,.25)}
.hngx-wa i{font-style:normal;font-size:24px}.hngx-wa b{display:block;font-size:14px}.hngx-wa small{color:var(--mut);font-size:12px}
.hngx-wa-soft{background:#f6f4ff;border-color:var(--line)}

/* ---------- forms (shared by the widget and the B2B section) ---------- */
.hngx-form{display:grid;gap:12px}.hngx-two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.hngx-f{display:grid;gap:5px;min-width:0}.hngx-f>span{font-size:12.5px;font-weight:600;color:var(--ink)}
.hngx-f input,.hngx-f select{width:100%;min-width:0;font:inherit;font-size:14px;color:var(--ink);background:#faf9ff;border:1.5px solid var(--line);border-radius:12px;padding:11px 12px;transition:border-color .2s,box-shadow .2s}
.hngx-f input[type=file]{padding:9px 10px;background:#fff}
.hngx-f input:focus,.hngx-f select:focus{outline:none;border-color:var(--p);box-shadow:0 0 0 4px rgba(105,65,232,.14);background:#fff}
.hngx-f.is-bad input,.hngx-f.is-bad select{border-color:#e11d48;background:#fff7f8}
.hngx-err{font-style:normal;font-size:12px;color:#be123c;min-height:0}
.hngx-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.hngx-submit{border:0;cursor:pointer;font:700 15px/1 inherit;color:#fff;padding:14px 18px;border-radius:14px;background:linear-gradient(135deg,var(--p),var(--p2));box-shadow:0 12px 26px rgba(105,65,232,.35);transition:transform .15s,box-shadow .15s}
.hngx-submit:hover{transform:translateY(-2px);box-shadow:0 16px 32px rgba(105,65,232,.45)}.hngx-submit[disabled]{opacity:.7;cursor:wait;transform:none}
.hngx-fine{margin:0;font-size:11.5px;color:var(--mut);line-height:1.5}.hngx-fine.ok{color:#15803d;font-weight:600}.hngx-fine.bad{color:#be123c;font-weight:600}
.hngx-toast{position:fixed;left:6.2rem;bottom:1.9rem;z-index:2147483602;max-width:min(340px,calc(100vw - 2rem));padding:13px 16px;border-radius:14px;color:#fff;font-size:14px;font-weight:600;box-shadow:0 16px 40px rgba(0,0,0,.28);background:#16a34a;animation:hngxPop .25s ease-out}
.hngx-toast.bad{background:#dc2626}

/* ---------- marquee ---------- */
.hngx-marquee{padding:30px 0;background:#fff;border-block:1px solid var(--line);overflow:hidden}
.hngx-marquee-title{margin:0 16px 18px;text-align:center;font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--mut)}
.hngx-marquee-viewport{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.hngx-marquee-track{display:flex;width:max-content;margin:0;padding:0;list-style:none;gap:28px;animation:hngxScroll 38s linear infinite}
.hngx-marquee-track[data-few="1"]{animation-duration:22s}
.hngx-marquee:hover .hngx-marquee-track{animation-play-state:paused}
@keyframes hngxScroll{to{transform:translateX(calc(-50% - 14px))}}
.hngx-logo{display:flex;align-items:center;justify-content:center;height:64px;min-width:140px;padding:0 18px;border:1px solid var(--line);border-radius:14px;background:#fff}
.hngx-logo img{max-height:40px;width:auto;filter:grayscale(1);opacity:.65;transition:filter .3s,opacity .3s,transform .3s}
.hngx-logo:hover img{filter:none;opacity:1;transform:scale(1.06)}
.hngx-logo span{font-weight:700;color:#7c7699;filter:grayscale(1);transition:color .3s}.hngx-logo:hover span{color:var(--p)}
.hngx-chip{display:flex;align-items:center;height:52px;padding:0 22px;border-radius:99px;background:#f6f3ff;border:1px solid var(--line);font-weight:600;font-size:15px;color:#5a4a9e;white-space:nowrap;transition:background .3s,color .3s}
.hngx-chip:hover{background:var(--p);color:#fff}

/* ---------- B2B section ---------- */
.hngx-b2b{position:relative;padding:clamp(56px,8vw,104px) 16px;background:radial-gradient(900px 500px at 10% 0,rgba(139,92,246,.35),transparent 60%),linear-gradient(160deg,#1c0f45,#2f1a6b 60%,#48237f);color:#fff;overflow:hidden}
.hngx-b2b-inner{max-width:1160px;margin:auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(28px,5vw,64px);align-items:center}
.hngx-kicker{font-size:12px;font-weight:700;letter-spacing:.14em;color:#ffd89b}
.hngx-b2b h2{font-size:clamp(32px,4.6vw,54px);line-height:1.06;margin:14px 0 16px;letter-spacing:-.02em;color:#fff}
.hngx-b2b h2 em{font-style:normal;background:linear-gradient(90deg,#ffd89b,#ff9fcf);-webkit-background-clip:text;background-clip:text;color:transparent}
.hngx-b2b-copy>p{color:#d8d0f5;line-height:1.7;max-width:520px}
.hngx-points{list-style:none;margin:26px 0;padding:0;display:grid;gap:14px}
.hngx-points li{display:flex;gap:14px;align-items:flex-start}
.hngx-points b{flex:0 0 30px;height:30px;border-radius:10px;display:grid;place-items:center;background:rgba(255,255,255,.14);color:#4ade80;font-size:15px}
.hngx-points strong{display:block;font-size:16px}.hngx-points small{display:block;color:#cfc6f2;font-size:13px;line-height:1.5;margin-top:2px}
.hngx-wa-inline{color:#86efac;font-weight:600;text-decoration:none}.hngx-wa-inline:hover{text-decoration:underline}
.hngx-b2b-card{background:#fff;color:var(--ink);border-radius:26px;padding:clamp(20px,3vw,34px);box-shadow:0 34px 80px rgba(8,5,27,.5);position:relative}
.hngx-b2b-card::before{content:"";position:absolute;inset:0 0 auto 0;height:5px;border-radius:26px 26px 0 0;background:linear-gradient(90deg,var(--p),#ff7ab6,#ffb347)}
.hngx-b2b-card h3{margin:6px 0 4px;font-size:20px}

/* ---------- announcement bar ---------- */
.hngx-ann{position:relative;z-index:40;background:linear-gradient(90deg,#4c1d95,#be185d,#ea580c);background-size:200% 100%;animation:hngxAnnBg 10s ease-in-out infinite alternate;color:#fff;transition:opacity .3s,max-height .3s;max-height:200px;overflow:hidden}
.hngx-ann.is-out{opacity:0;max-height:0}
@keyframes hngxAnnBg{to{background-position:100% 0}}
.hngx-ann-in{max-width:1200px;margin:auto;display:flex;align-items:center;gap:12px;padding:10px 48px 10px 16px;position:relative}
.hngx-ann-in p{margin:0;font-size:14px;line-height:1.4;flex:1;min-width:0}.hngx-ann-in p span{opacity:.92}
.hngx-ann-dot{width:9px;height:9px;border-radius:50%;background:#fde047;box-shadow:0 0 0 0 rgba(253,224,71,.7);animation:hngxDot 1.8s infinite;flex:0 0 auto}
@keyframes hngxDot{70%{box-shadow:0 0 0 10px rgba(253,224,71,0)}100%{box-shadow:0 0 0 0 rgba(253,224,71,0)}}
.hngx-ann-cta{flex:0 0 auto;background:#fff;color:#7c1d6f;font-weight:700;font-size:13px;padding:7px 16px;border-radius:99px;text-decoration:none;transition:transform .15s}.hngx-ann-cta:hover{transform:scale(1.05)}
.hngx-ann-x{position:absolute;right:10px;top:50%;transform:translateY(-50%);width:30px;height:30px;border:0;border-radius:50%;background:rgba(255,255,255,.2);color:#fff;font-size:20px;line-height:1;cursor:pointer}.hngx-ann-x:hover{background:rgba(255,255,255,.35)}

@media (max-width:860px){.hngx-b2b-inner{grid-template-columns:1fr}}
@media (max-width:560px){
  .hngx-two{grid-template-columns:1fr}
  .hngx-fab{left:1rem;bottom:1rem;width:56px;height:56px}
  .hngx-panel{right:.5rem;left:.5rem;width:auto;bottom:5rem;max-height:calc(100vh - 6.5rem)}.hngx-toast{right:1rem;left:1rem;max-width:none;bottom:auto;top:1rem}
  .hngx-ann-in{flex-wrap:wrap;padding-right:44px}.hngx-ann-cta{order:3}
}
@media (prefers-reduced-motion:reduce){.hngx-ping,.hngx-marquee-track,.hngx-ann,.hngx-ann-dot,.hngx-panel,.hngx-toast{animation:none!important}}

/* ---------- location landing pages (/jobs/in/...) ---------- */
.hnloc-hero{position:relative;color:#fff;padding:clamp(40px,6vw,80px) 0 clamp(36px,5vw,60px);overflow:hidden;background:radial-gradient(800px 420px at 85% 0,rgba(255,159,67,.28),transparent 60%),radial-gradient(700px 420px at 0 100%,rgba(139,92,246,.4),transparent 60%),linear-gradient(150deg,#1c0f45,#33196f 60%,#4a2380)}
.hnloc-hero::after{content:"";position:absolute;inset:auto -10% -45% -10%;height:70%;background-image:linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px);background-size:54px 54px;transform:perspective(500px) rotateX(62deg);-webkit-mask-image:linear-gradient(to top,#000,transparent 80%);mask-image:linear-gradient(to top,#000,transparent 80%);pointer-events:none}
.hnloc-hero-in{position:relative;z-index:1}
.hnloc-crumbs{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:13px;color:#cfc6f2;margin-bottom:18px}.hnloc-crumbs a{color:#e9e3ff;text-decoration:none}.hnloc-crumbs a:hover{text-decoration:underline}.hnloc-crumbs b{color:#ffd89b;font-weight:600}
.hnloc-hero h1{font-size:clamp(34px,5.4vw,60px);line-height:1.05;margin:0 0 14px;letter-spacing:-.02em;color:#fff}.hnloc-hero h1 em{font-style:normal;background:linear-gradient(90deg,#ffd89b,#ff9fcf);-webkit-background-clip:text;background-clip:text;color:transparent}
.hnloc-sub{max-width:660px;color:#d8d0f5;line-height:1.7;margin:0 0 26px}
.hnloc-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;max-width:760px;margin-bottom:26px}
.hnloc-stats>div{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);border-radius:16px;padding:14px 16px;backdrop-filter:blur(6px)}
.hnloc-stats b{display:block;font-size:30px;line-height:1.1;color:#fff}.hnloc-stats span{font-size:12.5px;color:#cfc6f2}
.hnloc-cta{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.hnloc-wa{display:inline-flex;align-items:center;padding:12px 20px;border-radius:12px;background:rgba(37,211,102,.16);border:1px solid rgba(37,211,102,.5);color:#86efac;font-weight:600;text-decoration:none}.hnloc-wa:hover{background:rgba(37,211,102,.28)}
.hnloc-pills{display:flex;flex-wrap:wrap;gap:10px;margin:8px 0 26px}
.hnloc-pills a{display:inline-flex;gap:8px;align-items:center;padding:9px 16px;border-radius:99px;background:#f1edff;color:#4a3a9a;font-weight:600;font-size:14px;text-decoration:none;border:1px solid transparent;transition:transform .15s,background .15s}
.hnloc-pills a b{font-size:12px;background:#fff;border-radius:99px;padding:1px 8px;color:var(--p,#6941e8)}.hnloc-pills a:hover{transform:translateY(-2px);background:#e6dfff}
.hnloc-pills a.on{background:#6941e8;color:#fff;box-shadow:0 8px 20px rgba(105,65,232,.35)}.hnloc-pills a.on b{background:rgba(255,255,255,.2);color:#fff}
.hnloc-pager{display:flex;gap:8px;justify-content:center;margin:28px 0}.hnloc-pager a,.hnloc-pager span{min-width:40px;padding:10px 13px;border:1px solid #e3ddf7;border-radius:10px;text-align:center;text-decoration:none;color:#4a3a9a}.hnloc-pager span{background:#6941e8;color:#fff;border-color:#6941e8}
.hnloc-faq{margin:56px 0 8px;max-width:860px}.hnloc-faq h2{margin:0 0 18px}
.hnloc-faq details{border:1px solid #e4def8;border-radius:16px;background:#fff;margin-bottom:12px;overflow:hidden;transition:box-shadow .2s}
.hnloc-faq details[open]{box-shadow:0 12px 30px rgba(61,35,140,.12);border-color:#cbbffb}
.hnloc-faq summary{cursor:pointer;list-style:none;padding:16px 50px 16px 18px;font-weight:600;color:#1a1340;position:relative}.hnloc-faq summary::-webkit-details-marker{display:none}
.hnloc-faq summary::after{content:"+";position:absolute;right:18px;top:50%;transform:translateY(-50%);width:26px;height:26px;border-radius:50%;background:#f1edff;color:#6941e8;display:grid;place-items:center;font-size:18px;transition:transform .25s}
.hnloc-faq details[open] summary::after{content:"−";transform:translateY(-50%) rotate(180deg)}
.hnloc-faq summary:focus-visible{outline:2px solid #6941e8;outline-offset:-2px}.hnloc-faq details p{margin:0;padding:0 18px 18px;color:#5d5780;line-height:1.75}
.hnloc-other{margin-top:32px}.hnloc-other h3{margin:0 0 10px}.hnloc-other a{display:inline-block;margin:0 10px 10px 0;padding:9px 16px;border-radius:99px;border:1px solid #d9d1fb;color:#4a3a9a;text-decoration:none;font-weight:600;font-size:14px}.hnloc-other a:hover{background:#f1edff}
@media (prefers-reduced-motion:reduce){.hnloc-pills a,.hnloc-faq summary::after{transition:none}}

/* ---- Festive theme: JS sets --hngx-left (just right of the festive artwork) only while that artwork is visible.
        When the festive theme ends / is switched off, the variable is removed and the button slides back to its normal corner. ---- */
.hngx-fab{left:var(--hngx-left,1.5rem);transition:transform .2s,left .4s ease}
@media (min-width:561px){
  .hngx-panel{left:var(--hngx-left,1.5rem)}
  .hngx-toast{left:calc(var(--hngx-left,1.5rem) + 4.7rem)}
}
@media (max-width:560px){
  .hngx-fab{left:var(--hngx-left,1rem)}
}
@media (prefers-reduced-motion:reduce){.hngx-fab{transition:none}}
