/* hx-extra: pages added for the full site (forms, careers, article, video, legal, consent, home extras) */
:root{--accent:var(--acc);--accent-2:var(--acc2);--ink-mute:var(--mute);--ink-dim:var(--dim);--ink-faint:#5f6470;--line:rgba(255,255,255,.08);--line-2:rgba(255,255,255,.14);--bg-lift:#101113;--bg-deep:#070708;--panel:#0b0c0e;--green:var(--grn);--amber:var(--amb);--font-mono:var(--mono);--accent-shadow:rgba(var(--acc-rgb),.25)}
.hx-app{min-height:100vh}
.hx-note{font-size:13px;line-height:1.6;color:var(--dim)}.hx-note a{color:var(--acc)}
.hx-lab{font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--dim)}
/* buttons on <button>, hamburger */
button.hx-btn{font-family:inherit;cursor:pointer}.hx-btn:disabled{opacity:.55;cursor:default}
.hx-btn.blk{width:100%;justify-content:space-between}.hx-btn-p.blk{--cx:22px;--cy:10px}
.hx-mbtn{flex-direction:column;gap:5px;width:44px;padding:0;cursor:pointer}.hx-mbtn i{display:block;width:16px;height:1.5px;border-radius:1px;background:currentColor;transition:transform .5s var(--ease)}
.hx-mbtn.x i:first-child{transform:translateY(3.25px) rotate(45deg)}.hx-mbtn.x i:last-child{transform:translateY(-3.25px) rotate(-45deg)}
/* forms */
.hx-form>.core{padding:clamp(24px,3vw,36px);overflow:visible}
.hx-form .fh{display:flex;justify-content:space-between;gap:12px;padding-bottom:18px;margin-bottom:24px;border-bottom:1px solid rgba(255,255,255,.07);font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--dim)}
.frow{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}
.fld{display:block;margin-bottom:18px}.fld>span{display:block;margin-bottom:8px;font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--dim)}
.fld input,.fld textarea,.fld .fixed,.hx-sub-form input{width:100%;background:rgba(0,0,0,.35);border:1px solid rgba(255,255,255,.1);border-radius:var(--r-b);color:var(--ink);padding:13px 14px;font:14px var(--sans);outline:none;transition:border-color .4s var(--ease),box-shadow .4s var(--ease)}
.fld input:focus,.fld textarea:focus,.hx-sub-form input:focus{border-color:rgba(var(--acc-rgb),.6);box-shadow:0 0 0 3px rgba(var(--acc-rgb),.12)}
.fld input::placeholder,.fld textarea::placeholder,.hx-sub-form input::placeholder{color:#5f6470}.fld textarea{min-height:132px;resize:vertical}
.hx-form .hx-btn.blk{margin-top:18px}
.fmsg{margin-top:14px;font-size:12.5px;text-align:center}.fmsg.err{color:var(--red)}.fmsg.ok{color:var(--grn)}.fnote{margin-top:10px;font-size:11.5px;text-align:center;color:var(--dim)}
.hx-sub-form form{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:32px}.hx-sub-form input{flex:1 1 260px;max-width:340px;height:54px}
.hx-sub-form .hx-ts{margin-top:16px}
.hx-ts{margin:18px 0 6px;padding:12px 14px 14px;display:flex;flex-direction:column;gap:10px;border:1px solid rgba(255,255,255,.08);border-radius:var(--r-b);background:rgba(0,0,0,.25);opacity:.7;transition:opacity .4s}.hx-ts:hover,.hx-ts:focus-within,.hx-ts.ok{opacity:1}.hx-ts.ok{border-color:rgba(var(--acc-rgb),.35)}
.hx-ts .tag{display:flex;align-items:center;gap:8px;font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--dim)}.hx-ts .tag i{width:5px;height:5px;border-radius:1px;background:var(--dim)}.hx-ts.ok .tag i{background:var(--acc);box-shadow:0 0 7px var(--acc)}
.hx-ts .host{display:flex;min-height:65px;color-scheme:dark}.hx-ts .host iframe{max-width:100%}.hx-ts.inline{max-width:352px;margin-inline:auto;text-align:left}
/* contact + careers */
.lines{display:flex;flex-direction:column;margin-top:28px}.ln{display:flex;flex-direction:column;gap:6px;padding:20px 0;border-top:1px solid rgba(255,255,255,.08)}.ln:last-child{border-bottom:1px solid rgba(255,255,255,.08)}.ln .k{font-size:15px;color:var(--ink)}.ln a{color:var(--acc)}
.perks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.pk{padding:clamp(24px,2.6vw,34px)}.pk h3{font-size:19px;letter-spacing:-.015em;margin-bottom:10px}.pk p{font-size:14.5px;line-height:1.65;color:var(--mute)}
.roles{display:flex;flex-direction:column}.role{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:26px 4px;border-top:1px solid rgba(255,255,255,.08);color:var(--ink);transition:padding .6s var(--ease)}.roles>div:last-child .role{border-bottom:1px solid rgba(255,255,255,.08)}
.role h3{font-size:clamp(20px,2vw,26px);letter-spacing:-.02em;transition:color .5s var(--ease)}.role:hover{padding-left:16px;color:var(--ink)}.role:hover h3{color:var(--acc)}
.role .go{display:inline-flex;align-items:center;gap:12px;font-size:13px;color:var(--mute);white-space:nowrap}.role .ico{width:32px;height:32px;border-radius:4px;display:grid;place-items:center;background:rgba(255,255,255,.07);transition:transform .6s var(--ease),background .6s var(--ease)}.role:hover .go{color:var(--acc)}.role:hover .ico{transform:translate(3px,-1px);background:rgba(var(--acc-rgb),.14)}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.hx-rise>.chips{margin-top:0}.chip{display:inline-flex;align-items:center;height:26px;padding:0 11px;border-radius:var(--r-b);border:1px solid rgba(255,255,255,.1);font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}.chip.lnk{transition:color .4s,border-color .4s}.chip.lnk:hover{color:var(--acc);border-color:rgba(var(--acc-rgb),.4)}
.pil .ic.mono{font-family:var(--mono);font-size:12px}
/* documents */
.doc{padding:clamp(28px,4vw,56px);font-size:16px;line-height:1.75;color:rgba(244,240,232,.8)}.doc.plain{padding:0;max-width:760px}
.doc h2,.art h2{font-size:clamp(22px,2.4vw,30px);letter-spacing:-.02em;color:var(--ink);margin:44px 0 16px;font-weight:500;line-height:1.2}.doc h2:first-child,.art h2:first-child{margin-top:0}
.doc h3,.art h3{font-size:19px;color:var(--ink);margin:32px 0 12px;font-weight:500}
.doc p,.art p{margin:0 0 18px}.doc ul,.doc ol,.art ul,.art ol{margin:0 0 18px;padding-left:22px}.doc li,.art li{margin-bottom:8px}
.doc a,.art a{color:var(--acc);border-bottom:1px solid rgba(var(--acc-rgb),.3)}.doc a:hover,.art a:hover{border-color:var(--acc)}.doc strong,.art strong{color:var(--ink);font-weight:600}
.doc hr{border:0;border-top:1px solid rgba(255,255,255,.08)}.legal .h3{font-size:18px;color:var(--ink);font-weight:500}.legal .label{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink)}.legal .caption{font-size:12px;color:var(--dim)}
.art{max-width:780px;font-size:clamp(16px,1.25vw,18px);line-height:1.8;color:rgba(244,240,232,.8)}
.art blockquote{margin:28px 0;padding:4px 0 4px 22px;border-left:2px solid var(--acc);color:var(--ink)}
.art code,.doc code{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:4px;padding:2px 6px;font-size:.86em;color:var(--acc2)}
.art pre{margin:24px 0;padding:18px;overflow-x:auto;border-radius:var(--r);background:rgba(0,0,0,.4);border:1px solid rgba(255,255,255,.08);font-size:13px;line-height:1.7}.art pre code{background:none;border:0;padding:0}
.art table{width:100%;border-collapse:collapse;margin:24px 0;font-size:14.5px}.art th,.art td{padding:12px 14px;border-bottom:1px solid rgba(255,255,255,.08);text-align:left}
.art .fig{margin:40px 0;max-width:none}.art .fig-frame,.fig-frame{position:relative;border:1px solid rgba(255,255,255,.1);border-radius:var(--r);background:#08090a;overflow:hidden}.fig-frame svg{display:block;width:100%;height:auto;font-family:var(--mono)}
.fig figcaption{margin-top:14px;font-size:12.5px;line-height:1.6;color:var(--dim)}.fig figcaption span{display:inline-block;margin-right:10px;color:var(--acc);letter-spacing:.14em}
/* video */
.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:32px}.tab{height:36px;padding:0 16px;border-radius:var(--r-b);border:1px solid rgba(255,255,255,.1);background:transparent;color:var(--mute);font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:color .4s,border-color .4s,background .4s}.tab:hover{color:var(--ink)}.tab.on{color:var(--ink);border-color:rgba(var(--acc-rgb),.6);background:rgba(var(--acc-rgb),.08)}
.vthumb{position:relative;aspect-ratio:16/9}.vthumb img{display:block;width:100%;height:100%;object-fit:cover}.vplay{position:absolute;inset:0;display:grid;place-items:center;background:rgba(7,8,10,.28)}.vplay svg{width:44px;height:44px;padding:13px;color:#fff;background:rgba(10,11,13,.72);border:1px solid rgba(255,255,255,.4);border-radius:4px}
.player{position:relative;aspect-ratio:16/9;background:#07080a;overflow:hidden}.player .yt,.player video,.player>iframe,.yt iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.yt-facade{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:#07080a;cursor:pointer;overflow:hidden;display:block}.yt-facade img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.yt-shade{position:absolute;inset:0;background:radial-gradient(120% 120% at 50% 42%,transparent 40%,rgba(7,8,10,.55))}
.yt-play{position:absolute;top:50%;left:50%;width:74px;height:74px;margin:-37px 0 0 -37px;display:grid;place-items:center;color:#fff;background:rgba(10,11,13,.55);border:1.5px solid #f2f2f2;border-radius:3px;box-shadow:0 0 34px rgba(var(--acc-rgb),.45);transition:transform .5s var(--ease),background .5s var(--ease),color .5s}.yt-facade:hover .yt-play{background:rgba(var(--acc-rgb),.9);color:#03110f;transform:scale(1.06)}
.yt-spin{position:absolute;top:50%;left:50%;width:46px;height:46px;margin:-23px 0 0 -23px;border-radius:50%;border:2px solid rgba(244,240,232,.18);border-top-color:var(--acc);animation:yt-spin .7s linear infinite}@keyframes yt-spin{to{transform:rotate(360deg)}}
/* compare + glossary */
.cmp-wrap{overflow-x:auto}.cmp{width:100%;min-width:640px;border-collapse:collapse;font-size:14.5px;line-height:1.55}.cmp th,.cmp td{padding:16px 22px;border-bottom:1px solid rgba(255,255,255,.07);text-align:left;vertical-align:top;color:var(--mute);font-weight:400}
.cmp thead th{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--dim);background:rgba(255,255,255,.03)}.cmp thead th:nth-child(2){color:var(--acc)}.cmp tbody th{color:var(--ink);width:24%}.cmp tbody tr:last-child th,.cmp tbody tr:last-child td{border-bottom:0}
.gloss{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:14px;margin:0}.gl{height:100%;padding:26px;border-radius:var(--r);background:linear-gradient(180deg,#101113,#0a0a0c);border:1px solid rgba(255,255,255,.07);box-shadow:inset 0 1px 1px rgba(255,255,255,.07);scroll-margin-top:96px}.gl dt{font-size:18px;letter-spacing:-.01em;color:var(--ink)}.gl dd{margin:10px 0 0;font-size:14.5px;line-height:1.65;color:var(--mute)}.gl dd a{color:var(--acc)}
/* home extras */
.tbl-wrap{overflow-x:auto}.tbl{min-width:600px}.tbl .tr{display:grid;grid-template-columns:var(--cols);gap:16px;align-items:center;padding:16px 24px;border-bottom:1px solid rgba(255,255,255,.07);font-size:14px}.tbl .tr:last-child{border-bottom:0}
.tbl .th{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--dim);background:rgba(255,255,255,.03)}.tbl b{font-weight:600;color:var(--ink)}.tbl .mu{color:var(--mute);font-size:13.5px;line-height:1.55}.tbl .ac{color:var(--acc);font-size:13px}
.dots{display:inline-flex;gap:4px}.dots i{width:8px;height:8px;border-radius:2px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14)}.dots i.on{background:var(--dim);border-color:var(--dim)}.dots.hot i.on{background:var(--acc);border-color:var(--acc);box-shadow:0 0 8px rgba(var(--acc-rgb),.5)}
.revs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.rev{padding:28px;display:flex;flex-direction:column;gap:18px;height:100%}.rev .who{display:flex;align-items:center;gap:12px}.rev .av{width:38px;height:38px;flex:none;border-radius:var(--r-b);display:grid;place-items:center;font-family:var(--mono);font-size:11px;color:var(--acc);border:1px solid rgba(var(--acc-rgb),.25);background:rgba(var(--acc-rgb),.07)}.rev .n{font-size:14px}.rev .r{margin-top:2px;font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;color:var(--dim)}.rev p{font-size:14.5px;line-height:1.65;color:var(--mute)}
.badges{margin-top:56px;padding-top:32px;display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.07)}.badges .bt{margin-top:10px;font-size:18px}.badges .bt a{margin-left:8px;font-size:13px;color:var(--acc)}.badges .bl{display:flex;flex-wrap:wrap;gap:10px}
.wl{display:flex;flex-direction:column;align-items:center;text-align:center}.wl .hx-h2{margin-top:22px}
/* cookie consent */
.cc-bar{position:fixed;left:0;right:0;bottom:0;z-index:200;padding:12px}.cc-in{max-width:1240px;margin:0 auto;padding:16px 20px;display:flex;gap:20px;align-items:center;justify-content:space-between;flex-wrap:wrap;border-radius:var(--r);background:rgba(11,12,14,.96);border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(18px);box-shadow:0 -24px 60px rgba(0,0,0,.5),inset 0 1px 1px rgba(255,255,255,.08)}
.cc-tx{flex:1;min-width:260px;font-size:13px;line-height:1.6;color:var(--mute)}.cc-tx a{color:var(--acc)}.cc-btns,.cc-act{display:flex;gap:10px;flex-wrap:wrap}.cc-act{justify-content:flex-end;margin-top:24px}
.cc-bar .hx-btn,.cc-modal .hx-btn{height:40px;padding:0 16px;font-size:13px}.cc-bar .hx-btn-p::before,.cc-bar .hx-btn-p::after,.cc-modal .hx-btn-p::before,.cc-modal .hx-btn-p::after{display:none}
.cc-back{position:fixed;inset:0;z-index:210;display:grid;place-items:center;padding:20px;background:rgba(5,5,5,.72);backdrop-filter:blur(6px)}.cc-modal{width:100%;max-width:560px;max-height:86vh;overflow:auto;padding:28px;border-radius:var(--r);background:#0b0c0e;border:1px solid rgba(255,255,255,.12)}
.cc-modal h2{margin-bottom:8px;font-size:20px;font-weight:500;letter-spacing:-.01em}.cc-modal>p{margin-bottom:22px;font-size:13px;line-height:1.6;color:var(--mute)}.cc-row{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:16px 0;border-top:1px solid rgba(255,255,255,.08)}.cc-row .t{margin-bottom:4px;font-size:13.5px}.cc-row .t span{font-size:11px;color:var(--dim)}.cc-row .d{max-width:380px;font-size:12.5px;line-height:1.55;color:var(--dim)}
.cc-sw{position:relative;width:42px;height:24px;flex:none;padding:0;border-radius:6px;border:1px solid rgba(255,255,255,.18);background:#101113;cursor:pointer;transition:background .3s}.cc-sw i{position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:3px;background:var(--ink);transition:left .3s var(--ease)}.cc-sw.on{background:var(--acc);border-color:var(--acc)}.cc-sw.on i{left:21px;background:#03110f}.cc-sw:disabled{opacity:.55;cursor:not-allowed}
@media(max-width:900px){.perks,.revs{grid-template-columns:repeat(2,minmax(0,1fr))}.frow{grid-template-columns:1fr}}
@media(max-width:640px){.perks,.revs{grid-template-columns:1fr}.role{flex-direction:column;align-items:flex-start}.cc-btns{width:100%}.cc-btns .hx-btn{flex:1}.badges{flex-direction:column;align-items:flex-start}}

/* interactive demo overlay */
.hx-demo{position:fixed;inset:0;z-index:200;display:flex;flex-direction:column;background:#000;animation:hxDemoIn .32s cubic-bezier(.22,1,.36,1)}
@keyframes hxDemoIn{from{opacity:0;transform:scale(.985)}to{opacity:1;transform:none}}
.hx-demo-bar{flex:none;height:52px;display:flex;align-items:center;gap:12px;padding:0 10px 0 18px;background:rgba(8,10,10,.97);border-bottom:1px solid rgba(255,255,255,.09)}
.hx-demo-t{display:flex;align-items:center;gap:10px;margin-right:auto;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font:500 11.5px/1 'JetBrains Mono',ui-monospace,monospace;letter-spacing:.07em;text-transform:uppercase;color:#a1a1aa}
.hx-demo-t i{flex:none;width:6px;height:6px;border-radius:50%;background:#2dd4bf;box-shadow:0 0 10px #2dd4bf}
.hx-demo-cta,.hx-demo-x{flex:none;display:inline-flex;align-items:center;gap:10px;height:36px;padding:0 14px;border-radius:8px;font:500 13px/1 'Geist',system-ui,sans-serif;text-decoration:none;cursor:pointer;transition:background .2s,border-color .2s,color .2s}
.hx-demo-cta{color:#041412;background:#2dd4bf;border:1px solid #2dd4bf}.hx-demo-cta:hover{background:#5eead4;border-color:#5eead4;color:#041412}
.hx-demo-x{color:#e7e7ea;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14)}.hx-demo-x:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.3)}
.hx-demo-x kbd{font:500 10px/1 'JetBrains Mono',ui-monospace,monospace;color:#a1a1aa;padding:3px 5px;border:1px solid rgba(255,255,255,.16);border-radius:4px}
.hx-demo-cta:focus-visible,.hx-demo-x:focus-visible{outline:2px solid #2dd4bf;outline-offset:2px}
.hx-demo-stage{position:relative;flex:1;min-height:0}
.hx-demo-stage iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.hx-demo-ld{position:absolute;inset:0;display:grid;place-items:center;font:500 12px/1 'JetBrains Mono',ui-monospace,monospace;letter-spacing:.08em;text-transform:uppercase;color:#71717a}
@media(max-width:760px){.hx-demo-bar{height:56px;padding-left:14px}.hx-demo-x{height:44px}.hx-demo-x kbd{display:none}.hx-demo-cta{height:44px}}
@media(max-width:560px){.hx-demo-cta{display:none}}
@media(prefers-reduced-motion:reduce){.hx-demo{animation:none}}

/* buttons: 8px radius, no arrow */
:root{--r-b:8px}
.hx-btn,.hx-btn-p,.hx-btn-sm{border-radius:8px}
.hx-btn .ico{display:none}
.hx-btn{padding:0 28px;justify-content:center;gap:0}
.hx-btn-sm{padding:0 18px}
.hx-cta .hx-btn,.hx-mcta .hx-btn,.hx-btn.blk,.tier .blk{justify-content:center}

/* hero product screenshot */
.shot .con-bar{border-bottom:1px solid rgba(255,255,255,.07)}
.shot-img{position:relative;display:block;width:100%;padding:0;overflow:hidden;cursor:pointer;background:#000}
.shot-img img{display:block;width:100%;height:auto;transition:transform .8s var(--ease),filter .5s var(--ease)}
.shot-img:hover img{transform:scale(1.015);filter:brightness(1.08)}
.shot-cta{position:absolute;right:14px;bottom:14px;display:inline-flex;align-items:center;height:34px;padding:0 14px;border-radius:8px;font:500 12.5px/1 'Geist',system-ui,sans-serif;color:#041412;background:var(--acc);box-shadow:0 8px 28px -6px rgba(var(--acc-rgb),.6);transition:background .3s}
.shot-img:hover .shot-cta{background:var(--acc2)}
.shot-img:focus-visible{outline:2px solid var(--acc);outline-offset:-2px}
