/* Jobeyze home page v3 (approved sample, 8 Oct 2026). Generated by transform.cjs; edit the source parts or this file by hand, but keep every selector under .jzh.
   Isolation rules: all selectors start with .jzh; custom properties live on .jzh (not :root); keyframes are prefixed jz-; eight class names that collide with Bootstrap were renamed (row col card toast nav btn lead h2 -> jz-*). */

/* Shield: undoes the "reboot" rules that CSS frameworks such as Bootstrap apply to bare elements (svg alignment, small, b, h1-h6, p, ul, hr, label).
   :where() keeps specificity at .jzh level so the page's own rules still win. Verified against Bootstrap 4.6 and 5.3 (see tools/). */
.jzh :where(svg,img,canvas,video){vertical-align:baseline}
.jzh :where(small){font-size:revert;font-weight:revert}
.jzh :where(b,strong){font-weight:revert}
.jzh :where(h1,h2,h3,h4,h5,h6){margin-top:revert;margin-bottom:revert;font-size:revert;font-weight:revert;line-height:revert}
.jzh :where(p,ul,ol,dl,blockquote,figure,pre){margin-top:revert;margin-bottom:revert}
.jzh :where(ul,ol){padding-left:revert}
.jzh :where(hr){color:revert;opacity:revert;border:revert;margin:revert;height:revert;background:revert;overflow:revert}
.jzh :where(label){display:revert;margin-bottom:revert}
.jzh :where(p,li,dd,dt,blockquote,figcaption,th,td){font-size:inherit;line-height:inherit}
.jzh{scroll-margin-top:var(--jz-anchor-offset,72px)}
.jzh section[id]{scroll-margin-top:var(--jz-anchor-offset,72px)}

/* Layout concept: Jobeyze live-site system. White page, tinted sections (#FBF3F8), plum bands (#2B1A34), approved gradient plum > wine > magenta. Hero is text plus the moving Jobeyze logo. Films live on plum stages with white product paper. */
.jzh{
  --bg:#FFFFFF; --tint:#FBF3F8; --tint2:#F2E7EF; --line:#E5CCD7; --line2:#EFE3EA;
  --ink:#17151B; --muted:#686570; --plum:#2B1A34; --plum2:#3A2547; --wine:#7B1246; --mag:#AB2379; --rose:#A35178;
  --grad:linear-gradient(90deg,#2B1A34 0%,#7B1246 48%,#AB2379 100%);
  --grad2:linear-gradient(120deg,#2B1A34,#7B1246 48%,#AB2379);
  --paper:#FFFFFF; --paper2:#FBF3F8; --ink2:#686570; --pline:#EFE3EA;
  --ok:#1F9D6B; --ok-soft:#E3F5EC; --amber:#C98512; --amber-soft:#FBF0DB; --gold:#E9B44C;
  --shadow:0 10px 30px rgba(83,25,51,.055),0 2px 5px rgba(83,25,51,.024);
  --display:'Manrope',system-ui,-apple-system,'Segoe UI',sans-serif; --body:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;
  --ease:cubic-bezier(.2,.7,.2,1);
  color-scheme:light;
}
@property --jz-n{syntax:'<integer>';inherits:false;initial-value:0}
.jzh *{box-sizing:border-box}
.jzh{margin:0}
.jzh{background:var(--bg);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
.jzh h1,.jzh h2,.jzh h3,.jzh h4,.jzh h5,.jzh h6{font-family:var(--display);margin:0;line-height:1.08;letter-spacing:-.02em;text-wrap:balance}
.jzh p{margin:0}.jzh a{color:inherit;text-decoration:none}
.jzh button{font:inherit;color:inherit;cursor:pointer;background:none;border:0;padding:0}
.jzh :focus-visible{outline:3px solid var(--mag);outline-offset:3px;border-radius:6px}
.jzh .wrap{max-width:1200px;margin:0 auto;padding-inline:20px}
.jzh section{padding-block:clamp(56px,8vw,104px);position:relative}
.jzh .ic{width:1.15em;height:1.15em;flex:none}
.jzh .eyebrow{font:600 12px/1 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--wine);display:flex;align-items:center;gap:.6em}
.jzh .eyebrow::before{content:"";width:22px;height:2px;background:var(--grad);border-radius:2px}
.jzh .jz-h2{font-size:clamp(30px,4.4vw,54px);font-weight:800;letter-spacing:-.03em}
.jzh .jz-lead{font-size:clamp(17px,1.5vw,19px);color:var(--muted);max-width:60ch}
.jzh .stack{display:flex;flex-direction:column;gap:18px}
.jzh .gt{background:linear-gradient(100deg,transparent 42%,rgba(255,255,255,.4) 50%,transparent 58%) 140% 0/250% 100% no-repeat,var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;animation:jz-sweep 5s ease-in-out infinite}
.jzh .dk .gt,.jzh .gt.lt{background:linear-gradient(100deg,transparent 42%,rgba(255,255,255,.6) 50%,transparent 58%) 140% 0/250% 100% no-repeat,linear-gradient(90deg,#fff 0%,#F2E7EF 45%,#E5CCD7 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
@keyframes jz-sweep{0%{background-position:140% 0,0 0}60%,100%{background-position:-40% 0,0 0}}

/* buttons: live system, plum, 9px radius, shimmer */
.jzh .jz-btn{position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:.55em;padding:.95em 1.5em;border-radius:10px;font:600 15px/1 var(--body);transition:transform .22s var(--ease),box-shadow .22s,border-color .2s;white-space:nowrap}
.jzh .jz-btn.p{background:var(--plum);color:#fff;box-shadow:0 8px 20px -8px rgba(43,26,52,.55)}
.jzh .jz-btn.p::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.24) 50%,transparent 70%);transform:translateX(-120%);animation:jz-shine 4.5s 1.2s infinite}
.jzh .jz-btn.p:hover{transform:translateY(-2px);box-shadow:0 14px 28px -10px rgba(123,18,70,.6)}
.jzh .jz-btn.g{background:#fff;color:var(--plum);border:1.5px solid var(--line)}
.jzh .jz-btn.g:hover{border-color:var(--mag);transform:translateY(-2px)}
.jzh .jz-btn.sm{padding:.75em 1.15em;font-size:14px}
.jzh .jz-btn.lt{background:#fff;color:var(--plum)}
.jzh .jz-btn.ol{border:1.5px solid #ffffff88;color:#fff}
@keyframes jz-shine{0%,55%{transform:translateX(-120%)}100%{transform:translateX(120%)}}
.jzh .btns{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.jzh .tlink{font-weight:600;color:var(--wine);display:inline-flex;align-items:center;gap:.4em}
.jzh .tlink:hover{text-decoration:underline}

/* nav */
.jzh .lg{display:block;height:34px;aspect-ratio:810/205;color:#191919}
@media(max-width:820px){}

/* hero */
.jzh .hero{padding-block:clamp(36px,5vw,72px) clamp(36px,5vw,64px);overflow:hidden}
/* RETIRED 2026-10-10 (D-340, a clean background behind the headline): .jzh .hero::before{content:"";position:absolute;inset:0;background:radial-gradient(34% 48% at 20% 32%,rgba(171,35,121,.075),transparent 72%),radial-gradient(32% 44% at 82% 22%,rgba(123,18,70,.06),transparent 72%);pointer-events:none} */
.jzh .hero::before{content:"";position:absolute;inset:0;background:radial-gradient(32% 44% at 82% 22%,rgba(123,18,70,.06),transparent 72%);pointer-events:none}
/* phones stack the hero, so the orb's wash moves down to the orb and the headline stays on white */
@media(max-width:900px){.jzh .hero::before{background:radial-gradient(70% 16% at 50% 61%,rgba(123,18,70,.06),transparent 72%)}}
/* the hero was two equal halves (D-314); since 2026-10-10 the headline side is about 1.3 times the orb and card side, so the four-line headline can be larger (D-340) */
.jzh .hgrid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:48px;align-items:stretch;position:relative}
.jzh .hero h1{font-size:clamp(34px,4.5vw,60px);font-weight:800;letter-spacing:-.04em;line-height:1.03}
.jzh .hero h1 .gt{display:block;padding-bottom:.08em}
.jzh .hero h1 .wd{display:inline-block;animation:jz-wordUp .8s var(--ease) both;animation-delay:calc(var(--i)*.07s + .1s)}
@keyframes jz-wordUp{from{opacity:0;transform:translateY(.6em);filter:blur(6px)}}
.jzh .hero .jz-lead{margin-top:22px;font-size:16px}/* was the site lead size, 17 to 19px */
.jzh .hero .btns{margin-top:30px}
.jzh .canada{margin-top:22px;font-size:14px;color:var(--muted);display:flex;align-items:center;gap:.6em}
.jzh .canada i{width:8px;height:8px;border-radius:50%;background:var(--grad2)}
.jzh .live{position:relative;display:flex;flex-direction:column;align-items:center;gap:18px;width:100%}
/* orb was 240px (walk 5); 190px since 2026-10-10 (D-340) */
.jzh .orbit{position:relative;width:min(100%,190px);aspect-ratio:1;display:grid;place-items:center}
.jzh .orbit .rp{position:absolute;inset:14%;border-radius:50%;border:1.5px solid rgba(171,35,121,.5);animation:jz-ripple 4.2s ease-out infinite;animation-delay:calc(var(--k)*1.4s)}
@keyframes jz-ripple{from{transform:scale(.8);opacity:.7}to{transform:scale(1.65);opacity:0}}
.jzh .orbit .core{position:absolute;inset:18%;border-radius:50%;background:radial-gradient(circle at 35% 28%,#fff 0%,rgba(171,35,121,.12) 48%,rgba(123,18,70,.34) 100%),#fff;box-shadow:0 30px 70px -20px rgba(123,18,70,.45),inset 0 -10px 30px rgba(171,35,121,.18);animation:jz-breathe 4.4s ease-in-out infinite}
.jzh .orbit svg.mk{position:relative;width:46%;height:auto;overflow:visible;filter:drop-shadow(0 8px 14px rgba(123,18,70,.25))}
.jzh .mk .sw{stroke:url(#jzg);stroke-width:5;fill:url(#jzg);fill-opacity:0;stroke-dasharray:1;stroke-dashoffset:1;animation:jz-drawm 2.2s .3s var(--ease) forwards}
.jzh .mk .dot{transform-box:fill-box;transform-origin:center;animation:jz-dotIn .6s 1.9s var(--ease) both}
@keyframes jz-drawm{60%{fill-opacity:0;stroke-dashoffset:0}100%{fill-opacity:1;stroke-dashoffset:0;stroke-width:0}}
@keyframes jz-dotIn{from{transform:scale(0)}60%{transform:scale(1.35)}}
@keyframes jz-breathe{50%{transform:scale(1.045)}}
.jzh .orbit .ol{position:absolute;inset:4%;border-radius:50%;animation:jz-spin 14s linear infinite}
.jzh .orbit .ol.b{inset:-2%;animation-duration:22s;animation-direction:reverse}
.jzh .orbit .ol i{position:absolute;top:-4px;left:50%;width:9px;height:9px;margin-left:-4.5px;border-radius:50%;background:var(--mag);box-shadow:0 0 14px 3px rgba(171,35,121,.6)}
.jzh .orbit .ol.b i{background:var(--wine);width:7px;height:7px;box-shadow:0 0 12px 2px rgba(123,18,70,.55)}
@keyframes jz-spin{to{transform:rotate(360deg)}}
.jzh .wave{display:flex;align-items:center;gap:3px;height:34px}
.jzh .wave i{width:3px;border-radius:3px;background:var(--grad2);height:var(--h);animation:jz-vl .9s ease-in-out infinite alternate;animation-delay:calc(var(--k)*-.11s)}
@keyframes jz-vl{from{transform:scaleY(.2)}to{transform:scaleY(1)}}
/* the card was max-width:none, filling its half (D-314); 480px since 2026-10-10 (D-340) */
.jzh .gb{position:relative;width:100%;max-width:480px;border-radius:18px;padding:16px 18px;border:1.5px solid transparent;background:linear-gradient(#fff,#fff) padding-box,linear-gradient(120deg,#2B1A34,#7B1246,#AB2379,#2B1A34) border-box;background-size:auto,300% 100%;animation:jz-flow 7s linear infinite;box-shadow:var(--shadow)}
@keyframes jz-flow{to{background-position:0 0,-300% 0}}
.jzh .gb .tag{font:600 11px var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--wine);display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.jzh .gb .u{background:var(--tint2);border-radius:14px 14px 4px 14px;padding:10px 14px;font-size:14.5px;min-height:3.2em;margin-left:14%}
.jzh .gb .r{margin-top:8px;background:var(--grad2);color:#fff;border-radius:14px 14px 14px 4px;padding:10px 14px;font-size:14.5px;min-height:3.2em;margin-right:8%}
.jzh .gb .cr::after{content:"";display:inline-block;width:2px;height:1em;background:currentColor;margin-left:2px;vertical-align:-.15em;animation:jz-blink 1s steps(1) infinite}
@keyframes jz-blink{50%{opacity:0}}
.jzh .gb .done{margin-top:10px;display:inline-flex;align-items:center;gap:.4em;padding:.3em .85em;border-radius:99px;background:var(--ok-soft);color:#0B6B47;font-size:12.5px;font-weight:600;opacity:0;transform:translateY(6px);transition:all .4s var(--ease)}
.jzh .gb .done.on{opacity:1;transform:none}
@media(max-width:900px){.jzh .hgrid{grid-template-columns:1fr;gap:34px}.jzh .orbit{width:min(100%,150px)}/* was 220px (walk 5) */}

/* hero caption: the moving line, moved into the hero beside the chat it describes (founder walk 2026-10-09, D-313) */
.jzh .hcap { width:100%;max-width:440px }
.jzh .hcap .mvl { font-size:clamp(18px,1.75vw,23px);gap:.15em .3em;min-height:2.4em;align-content:flex-start }
.jzh .hcap .mvl .lg { height:.95em }
.jzh .hcap .mvfoot { margin-top:10px;gap:8px 12px }
.jzh .hcap .aud { gap:6px }
.jzh .hcap .aud span { font-size:12px;padding:.4em .85em }
.jzh .hcap .aud span.on { background:var(--grad2);border-color:transparent }
.jzh .hcap .mvbar { min-width:60px }
/* the hero headline is the moving line, and the hero is two equal halves (founder walk 2, 2026-10-09, D-314) */
.jzh .hero h1.mvl { display:block;font-size:clamp(32px,3.7vw,52px);min-height:2.2em;line-height:1.06 }
.jzh .hero h1.mvl .lgw { display:none }
.jzh .hero h1.mvl em { display:inline }
.jzh .hero h1.mvl::first-letter { text-transform:uppercase }
.jzh .hero .mvfoot { display:none } /* hidden 9 Oct 2026 (D-318), was margin-top:20px: the chips and the line stay in the markup */
.jzh .hero .aud span { font-size:13px;padding:.45em .95em }
.jzh .hero .aud span.on { background:var(--grad2);border-color:transparent }
/* RETIRED 2026-10-10 (D-340), kept as a record. [ hero headline lines (founder decision 9 Oct 2026, D-318): "Jobeyze [task] while you [moment]." Only "Jobeyze" and
   "while you" stay still in grey; the two moving parts drop in from above, stay, then leave downward. Job seekers in
   berry to magenta, organizations in plum to berry, both with a soft passing shine. ]
.jzh .hero h1.mvl { font-size:clamp(26px,2.85vw,39px);line-height:1.13;letter-spacing:-.03em }
.jzh .hero h1.mvl .st { color:var(--muted) } [ grey, so the still words stand apart from both gradients (plum sits too close to ink) ]
[ two blocks, so "Jobeyze" and "while you" never move: the script gives each the height of its tallest phrase ]
.jzh .hero h1.mvl .hl { display:block }
.jzh .hero h1.mvl .hl1 { max-width:12em } [ every task wraps to exactly two lines (measured 1366 to 360 px wide), so no gap opens above "while you" ]
.jzh .hero h1.mvl .hl2 { margin-top:.12em }
.jzh .hero h1.mvl em { display:inline;position:relative;top:0;opacity:1;filter:none;background:linear-gradient(100deg,transparent 38%,rgba(255,255,255,.6) 50%,transparent 62%) 170% 0/260% 100% no-repeat,linear-gradient(90deg,#7B1246 0%,#AB2379 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-box-decoration-break:clone;box-decoration-break:clone;animation:jz-hlIn .55s var(--ease) both,jz-hlShine 6s 1.2s ease-in-out infinite;transition:none }
.jzh .hero h1.mvl.org em { background:linear-gradient(100deg,transparent 38%,rgba(255,255,255,.6) 50%,transparent 62%) 170% 0/260% 100% no-repeat,linear-gradient(90deg,#2B1A34 0%,#7B1246 100%);-webkit-background-clip:text;background-clip:text }
.jzh .hero h1.mvl.out em { top:.5em;opacity:0;filter:blur(4px);animation:none;transition:top .35s ease-in,opacity .3s,filter .3s }
@keyframes jz-hlIn { from { top:-.55em;opacity:0;filter:blur(4px) } to { top:0;opacity:1;filter:none } }
@keyframes jz-hlShine { 0%,55% { background-position:170% 0,0 0 } 100% { background-position:-70% 0,0 0 } }
@media (prefers-reduced-motion:reduce) { .jzh .hero h1.mvl em { animation:none } }
.jzh .canada .mpl { width:13px;height:13px;flex:none;fill:url(#jzg) }
.jzh .canadaband .canada .mpl { fill:currentColor }
 */
/* RETIRED 2026-10-10 (walk 5, D-340), the walk-4 sample, kept as a record. [ hero headline (D-318 lines, D-340 look): "Jobeyze" and "while you" one grey, still; the moving words drop in one by
   one from above and leave downward (transform and opacity only), in one berry with a light depth, and a glint passes
   over each word as it lands. Audience is shown by the kicker word and the chat card's label, not by colour. ]
.jzh .hero h1.mvl { font-size:clamp(26px,2.55vw,36px);line-height:1.14;letter-spacing:-.028em }
.jzh .hero h1.mvl .st { color:var(--muted) }
.jzh .hero h1.mvl .hlb { display:block }
.jzh .hero h1.mvl .hlb1 { max-width:12em }
.jzh .hero h1.mvl .hlb2 { margin-top:.12em }
.jzh .hero h1.mvl em { font-style:normal;display:inline;background:none;color:#7B1246;filter:none;opacity:1;transform:none;animation:none;transition:none }
.jzh .hero h1.mvl .mw { display:inline-block;color:transparent;
  background:linear-gradient(112deg,transparent 38%,rgba(255,255,255,.85) 50%,transparent 62%) 160% 0/280% 100% no-repeat,var(--hc,linear-gradient(180deg,#A3216F 0%,#7B1246 100%));
  -webkit-background-clip:text;background-clip:text;
  animation:jz-wIn .62s cubic-bezier(.22,1,.36,1) calc(var(--k,0)*55ms) both,jz-wGlint 1.1s ease-out calc(var(--k,0)*55ms + 420ms) both }
.jzh .hero h1.mvl.out .mw { animation:jz-wOut .3s cubic-bezier(.55,0,.75,.35) calc(var(--k,0)*22ms) forwards }
@keyframes jz-wIn { from { transform:translateY(-.55em);opacity:0 } to { transform:none;opacity:1 } }
@keyframes jz-wOut { from { transform:none;opacity:1 } to { transform:translateY(.45em);opacity:0 } }
@keyframes jz-wGlint { from { background-position:160% 0,0 0 } to { background-position:-60% 0,0 0 } }
@media (prefers-reduced-motion:reduce) { .jzh .hero h1.mvl .mw,.jzh .hero h1.mvl.out .mw { animation:none;opacity:1;transform:none } }
[ audience: the kicker's own words light up, and the chat card carries a small label ]
.jzh .hero .eyebrow .kw { transition:color .35s;position:relative }
.jzh .hero .eyebrow .kw::after { content:"";position:absolute;left:0;right:0;bottom:-4px;height:2px;border-radius:2px;background:var(--grad2);transform:scaleX(0);transform-origin:left;transition:transform .45s cubic-bezier(.22,1,.36,1) }
.jzh .hero .eyebrow .kw.on { color:var(--mag) }
.jzh .hero .eyebrow .kw.on::after { transform:scaleX(1) }
.jzh .gb .audp { display:inline-block;margin-left:.7em;padding:.28em .7em;border-radius:99px;font:600 10.5px/1 var(--body);letter-spacing:.08em;background:#FBEAF3;color:#8E1A5E;transition:background .35s,color .35s }
.jzh .gb .audp.org { background:#EFE9F3;color:var(--plum) }
[ the hero's halves are the same height: the chat card sits over the foot of the orb ]
.jzh .live { gap:0 }
.jzh .hgrid > div:first-child { display:flex;flex-direction:column;justify-content:space-between } [ the kicker meets the top of the orb, the company line the foot of the card ]
.jzh .live .gb { margin-top:-64px;z-index:2 }
@media(max-width:900px){ .jzh .live .gb { margin-top:-40px } }
.jzh .canada .mpl { width:13px;height:13px;flex:none;fill:url(#jzg) }
.jzh .canadaband .canada .mpl { fill:currentColor }
[ dark frames and bands: richer glows, a lit edge and a slow light sweep while a film is on screen ]
.jzh .frame::after { content:"";position:absolute;inset:0;z-index:3;pointer-events:none;border-radius:inherit;
  background:linear-gradient(115deg,transparent 36%,rgba(255,255,255,.06) 46%,rgba(255,255,255,.13) 50%,rgba(255,255,255,.06) 54%,transparent 64%) 170% 0/240% 100% no-repeat;
  animation:jz-frameSheen 9s ease-in-out 1.5s infinite;animation-play-state:paused }
.jzh .film.inview:not(.paused) .frame::after { animation-play-state:running }
@keyframes jz-frameSheen { 0%,62% { background-position:170% 0 } 100% { background-position:-70% 0 } }
@media (prefers-reduced-motion:reduce) { .jzh .frame::after { animation:none;background:none } }
 */
/* hero headline (D-318 lines; D-340 look, founder walk 5): four lines. Line 1 "Jobeyze" and line 3 "while you" are
   still and grey; line 2 (the task) and line 4 (the moment) are larger, in the interview coach's gradient (plum to
   magenta at 120 degrees, the D-230 values), and arrive as whole lines: down from above, out downward. */
.jzh .hero h1.mvl { font-size:clamp(28px,2.85vw,41px);line-height:1.1;letter-spacing:-.03em }
.jzh .hero h1.mvl .hlb { display:block }
.jzh .hero h1.mvl .hlb2 { margin-top:.14em }
/* the still words were .8em of the headline (walk 5, larger than the one-line moving text); since 2026-10-10 they are
   90% of the moving size at every width (same column measure, 23.2 against 20.9), so the moving lines always lead */
.jzh .hero h1.mvl .st { display:block;color:var(--muted);font-size:min(29px,calc(100cqi / 22.9));line-height:1.2;letter-spacing:-.025em }
/* RETIRED 2026-10-10 (four lines): .jzh .hero h1.mvl em { display:block;font-style:normal;text-wrap:balance;padding:.04em 0 .24em;margin-bottom:-.2em;color:transparent; ...the gradient below... } */
/* four lines at most: each moving phrase on ONE line, at a size the longest of the 26 phrases (20.2em wide) fits in
   the column (cqi = the headline's own width, with a small margin); the em is as wide as its words, so every line
   carries the whole plum-to-magenta gradient, not just its plum end */
.jzh .hero h1.mvl { container-type:inline-size }
/* RETIRED 2026-10-13 (D-542: the lines roll continuously, never blank), kept as a record:
.jzh .hero h1.mvl em { display:block;width:fit-content;max-width:100%;white-space:nowrap;font-size:min(32px,calc(100cqi / 20.6));font-style:normal;padding:.04em 0 .24em;margin-bottom:-.2em;color:transparent;
  background:linear-gradient(112deg,transparent 42%,rgba(255,255,255,.42) 50%,transparent 58%) 170% 0/260% 100% no-repeat,linear-gradient(120deg,#2B1A34 0%,#AB2379 100%);
  -webkit-background-clip:text;background-clip:text }
.jzh .hero h1.mvl:not(.out) em { animation:jz-lnIn .65s cubic-bezier(.22,1,.36,1) both,jz-lnGlint 1.3s ease-out .5s both }
.jzh .hero h1.mvl:not(.out) .hlb2 em { animation-delay:.14s,.7s }
.jzh .hero h1.mvl.out em { transform:translateY(.4em);opacity:0;transition:transform .32s cubic-bezier(.55,0,.75,.35),opacity .28s }
@keyframes jz-lnIn { from { transform:translateY(-.55em);opacity:0 } to { transform:none;opacity:1 } }
@keyframes jz-lnGlint { from { background-position:170% 0,0 0 } to { background-position:-70% 0,0 0 } }
@media (prefers-reduced-motion:reduce) { .jzh .hero h1.mvl:not(.out) em,.jzh .hero h1.mvl.out em { animation:none;transition:none;transform:none;opacity:1 } }
*/
/* D-542: the moving lines ROLL. Each line is its own span (.mvln) in one grid cell of the em: the next line rises in
   while the old one rises away, both at once, so the headline is never blank. The em is a window (overflow:clip, which
   unlike overflow:hidden does not let the grid squeeze it to nothing) as wide as its widest line.
   The gradient text sits on an INNER span (.mvtx) and the motion on the outer one: Chrome paints background-clip:text a
   second time, unmoved and fully opaque, when the same element is fading and moving (measured 2026-10-13 on a frozen
   frame: both lines stacked at full strength), so the two are never on one element. Every line carries the whole
   plum-to-magenta gradient (D-230 values) across its own words, and a soft glint passes once it has settled. */
.jzh .hero h1.mvl em { display:grid;width:fit-content;max-width:100%;white-space:nowrap;font-size:min(32px,calc(100cqi / 20.6));font-style:normal;margin-bottom:-.2em;overflow:clip }
.jzh .hero h1.mvl em .mvln { grid-area:1/1;display:block;white-space:nowrap }
.jzh .hero h1.mvl em .mvtx { display:inline-block;padding:.04em 0 .24em;color:transparent;
  background:linear-gradient(112deg,transparent 42%,rgba(255,255,255,.42) 50%,transparent 58%) 170% 0/260% 100% no-repeat,linear-gradient(120deg,#2B1A34 0%,#AB2379 100%);
  -webkit-background-clip:text;background-clip:text }
/* Founder, 2026-10-17: "speed on home page is still slow, not matching with price plan page movement speed". The lines
   now move exactly like the plans page's rotating line (pr-roll in assets/css/pricingplans.css): one full line, .5s on
   cubic-bezier(.7,0,.2,1) (one 5% step of pr-roll's 10 s cycle, same curve), no fade -- the em's clip is the mask.
   Was (D-542, kept as a record):
.jzh .hero h1.mvl em .mvln.mvnow:not(.mvset) { animation:jz-lnRise .95s cubic-bezier(.45,0,.2,1) both }
.jzh .hero h1.mvl em .mvln.mvnow:not(.mvset) .mvtx { animation:jz-lnGlint 1.6s ease-out 1.1s both }
.jzh .hero h1.mvl em .mvln.mvout { animation:jz-lnAway .95s cubic-bezier(.45,0,.2,1) both }
.jzh .hero h1.mvl .hlb2 em .mvln.mvnow:not(.mvset),.jzh .hero h1.mvl .hlb2 em .mvln.mvout { animation-delay:.16s }
.jzh .hero h1.mvl .hlb2 em .mvln.mvnow:not(.mvset) .mvtx { animation-delay:1.26s }
@keyframes jz-lnRise { from { transform:translateY(.95em);opacity:0 } 35% { opacity:1 } to { transform:none;opacity:1 } }
@keyframes jz-lnAway { from { transform:none;opacity:1 } 65% { opacity:0 } to { transform:translateY(-.95em);opacity:0 } }
*/
.jzh .hero h1.mvl em .mvln.mvnow:not(.mvset) { animation:jz-lnRise .5s cubic-bezier(.7,0,.2,1) both }
.jzh .hero h1.mvl em .mvln.mvnow:not(.mvset) .mvtx { animation:jz-lnGlint 1.6s ease-out .6s both }
.jzh .hero h1.mvl em .mvln.mvout { animation:jz-lnAway .5s cubic-bezier(.7,0,.2,1) both }
.jzh .hero h1.mvl .hlb2 em .mvln.mvnow:not(.mvset),.jzh .hero h1.mvl .hlb2 em .mvln.mvout { animation-delay:.16s }
.jzh .hero h1.mvl .hlb2 em .mvln.mvnow:not(.mvset) .mvtx { animation-delay:.76s }
@keyframes jz-lnRise { from { transform:translateY(100%) } to { transform:none } }
@keyframes jz-lnAway { from { transform:none } to { transform:translateY(-100%) } }
@keyframes jz-lnGlint { from { background-position:170% 0,0 0 } to { background-position:-70% 0,0 0 } }
@media (prefers-reduced-motion:reduce) { .jzh .hero h1.mvl em .mvln,.jzh .hero h1.mvl em .mvtx { animation:none!important;transform:none;opacity:1 } .jzh .hero h1.mvl em .mvln.mvout { display:none } }
/* phones and stacked tablets (founder, 2026-10-10): the headline is centred; on phones it is clearly larger than the
   paragraph, so a long moving line may wrap to two balanced lines there. Each block keeps its tallest phrase's height
   (the script reserves it), and a shorter phrase sits in the middle of that room, so the still words never move. */
@media(max-width:900px){
  .jzh .hero h1.mvl { text-align:center }
  .jzh .hero h1.mvl .hlb { display:grid;grid-template-rows:auto 1fr;justify-items:center }
  .jzh .hero h1.mvl em { align-self:center }
}
/* RETIRED 2026-10-10 (founder: "rather reduce para font size more"; the moving lines stay on one line):
@media(max-width:600px){
  .jzh .hero h1.mvl .st { font-size:27px }
  .jzh .hero h1.mvl em { font-size:24px;white-space:normal;text-wrap:balance }
} */
/* phones: the moving lines stay on one line (four lines in all) and the paragraph under the headline is smaller than
   them, so the headline is the larger text */
@media(max-width:600px){
  .jzh .hero .jz-lead { font-size:min(13.5px,calc((100vw - 40px) / 23.5));line-height:1.6 }/* was 14px, then 13.5px; it now shrinks with the screen so it stays below the still words (90% of the moving size) on the narrowest phones */
  /* the kicker on one line (was 12px, .14em tracking, two lines) and further from the headline */
  .jzh .hero .eyebrow { font-size:10px;letter-spacing:.06em;white-space:nowrap;margin-bottom:16px }
  .jzh .hero .eyebrow::before { width:16px }
}
/* D-542, phones: the headline a touch lighter (700) with a little more room between letters and words, so it reads
   clearly at phone size; the longest line (21.1em at these settings, with a small margin) still fits on one line */
@media(max-width:600px){
  .jzh .hero h1.mvl { font-weight:700;letter-spacing:-.015em;word-spacing:.03em }
  .jzh .hero h1.mvl .st { letter-spacing:-.015em }
  .jzh .hero h1.mvl em { font-size:calc(100cqi / 21.1) }
  .jzh .hero h1.mvl .st { font-size:calc(100cqi / 23.4) }
}
/* D-542, phones and stacked tablets: the orb is the assistant's badge, centred on the chat card's top edge and in
   front of it (no empty band between the company line and the card) */
@media(max-width:900px){
  .jzh .live { gap:0 }
  .jzh .orbit { width:100px;margin-bottom:-50px;z-index:3;border-radius:50%;background:radial-gradient(circle,#fff 0 60%,rgba(255,255,255,0) 72%) }
  .jzh .live .gb { padding-top:54px }
}
/* the chat card, compact (2026-10-10, D-340; was padding 16px 18px, bubbles 14.5px) */
.jzh .gb { padding:13px 15px }
.jzh .gb .u,.jzh .gb .r { font-size:13.5px;padding:9px 13px }
/* audience: the kicker's word for the line speaking sits on a tight plum block (the "Start free" colour) */
.jzh .hero .eyebrow .kw { display:inline-block;line-height:1;padding:.12em .1em .06em .24em;margin:-.12em -.1em -.06em -.24em;border-radius:2px;transition:background .35s,color .35s }
.jzh .hero .eyebrow .kw.on { background:var(--plum);color:#fff }
.jzh .gb .audp { display:inline-block;margin-left:.7em;padding:.28em .7em;border-radius:99px;font:600 10.5px/1 var(--body);letter-spacing:.08em;background:#FBEAF3;color:#8E1A5E;transition:background .35s,color .35s }
.jzh .gb .audp.org { background:#EFE9F3;color:var(--plum) }
/* the hero's halves are one height, and nothing sits behind the chat card: the left spreads its groups, the right
   puts the orb at the top and the card at the foot */
.jzh .hgrid > div:first-child { display:flex;flex-direction:column;justify-content:space-between }
.jzh .live { gap:18px;justify-content:space-between }
.jzh .canada .mpl { width:13px;height:13px;flex:none;fill:url(#jzg) }
.jzh .canadaband .canada .mpl { fill:currentColor }
/* dark frames and bands: richer glows, a lit edge and a slow light sweep while a film is on screen */
.jzh .frame::after { content:"";position:absolute;inset:0;z-index:3;pointer-events:none;border-radius:inherit;
  background:linear-gradient(115deg,transparent 36%,rgba(255,255,255,.06) 46%,rgba(255,255,255,.13) 50%,rgba(255,255,255,.06) 54%,transparent 64%) 170% 0/240% 100% no-repeat;
  animation:jz-frameSheen 9s ease-in-out 1.5s infinite;animation-play-state:paused }
.jzh .film.inview:not(.paused) .frame::after { animation-play-state:running }
@keyframes jz-frameSheen { 0%,62% { background-position:170% 0 } 100% { background-position:-70% 0 } }
@media (prefers-reduced-motion:reduce) { .jzh .frame::after { animation:none;background:none } }
/* moving line band */
.jzh .mv{padding-block:clamp(40px,6vw,76px);background:var(--tint);border-block:1px solid var(--line2);overflow:hidden}
.jzh .mvl{display:flex;flex-wrap:wrap;align-items:center;gap:.18em .35em;font:800 clamp(28px,5vw,66px)/1.12 var(--display);letter-spacing:-.035em;min-height:2.3em;align-content:center}
.jzh .mvl .lgw{position:relative;display:inline-flex}
.jzh .mvl .lg{height:1.02em;width:auto;color:#191919;transition:transform .6s var(--ease)}
.jzh .mvl .lg.lpop{animation:jz-logoPop .9s var(--ease)}
@keyframes jz-logoPop{0%{transform:scale(.9) rotate(-3deg)}50%{transform:scale(1.06)}100%{transform:none}}
.jzh .mvl .ping{position:absolute;left:3.5%;top:46%;width:.3em;height:.3em;margin:-.15em 0 0 -.1em;border-radius:50%;border:2px solid var(--mag);opacity:0}
.jzh .mvl .ping.go{animation:jz-ping 1s ease-out}
@keyframes jz-ping{from{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(5)}}
.jzh .mvl em{font-style:normal;display:inline-block;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;transition:opacity .35s,transform .45s var(--ease),filter .35s}
.jzh .mvl.out em{opacity:0;transform:translateY(.3em);filter:blur(7px)}
.jzh .mvl .dim{color:var(--muted);font-weight:700}
.jzh .mvfoot{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:center;margin-top:22px}
.jzh .aud{display:flex;flex-wrap:wrap;gap:10px}
.jzh .aud span{padding:.55em 1.1em;border-radius:99px;border:1px solid var(--line);background:#fff;font-size:14px;font-weight:600;color:var(--muted);transition:all .35s}
.jzh .aud span.on{background:var(--plum);border-color:var(--plum);color:#fff;box-shadow:0 8px 18px -8px rgba(43,26,52,.55)}
.jzh .mvbar{flex:1;min-width:120px;height:3px;border-radius:3px;background:var(--line);overflow:hidden}
.jzh .mvbar i{display:block;height:100%;width:0;background:var(--grad)}
.jzh .mvbar i.run{animation:jz-fillbar var(--t,6.4s) linear forwards}
@keyframes jz-fillbar{to{width:100%}}

/* reveal on scroll */
@supports (animation-timeline:view()){.jzh .rv{animation:jz-rv linear both;animation-timeline:view();animation-range:entry 0% entry 40%}}
@keyframes jz-rv{from{opacity:0;transform:translateY(26px)}}

/* audience cards */
.jzh .who{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:40px}
.jzh .wc{position:relative;background:#fff;border-radius:20px;padding:26px;display:flex;flex-direction:column;gap:12px;box-shadow:var(--shadow);border:1px solid var(--line2);transition:transform .3s var(--ease),box-shadow .3s;overflow:hidden}
.jzh .wc::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--grad);transform:scaleX(0);transform-origin:left;transition:transform .45s var(--ease)}
.jzh .wc:hover{transform:translateY(-6px);box-shadow:0 22px 44px -18px rgba(83,25,51,.28)}
.jzh .wc:hover::before{transform:scaleX(1)}
.jzh .wc .ico{width:46px;height:46px;border-radius:14px;background:linear-gradient(135deg,var(--tint),#fff);border:1px solid var(--line);color:var(--wine);display:grid;place-items:center;font-size:20px}
.jzh .wc h3{font-size:20px;font-weight:700}
.jzh .wc p{color:var(--muted);font-size:15px}
.jzh .wc .tlink{margin-top:auto;font-size:14px}
@media(max-width:900px){.jzh .who{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.jzh .who{grid-template-columns:1fr}}

/* plum film sections */
.jzh .dk{background:radial-gradient(60% 70% at 88% 0%,rgba(171,35,121,.36),transparent 62%),radial-gradient(55% 65% at 0% 100%,rgba(123,18,70,.58),transparent 66%),radial-gradient(rgba(255,255,255,.055) 1px,transparent 1.3px) 0 0/22px 22px,linear-gradient(160deg,var(--plum) 0%,var(--plum) 45%,rgba(123,18,70,.9) 140%),var(--plum);color:#fff;overflow:hidden}
.jzh .dk::before{content:"";position:absolute;inset:0;background:radial-gradient(40% 60% at 85% 10%,rgba(171,35,121,.42),transparent 70%),radial-gradient(35% 55% at 8% 92%,rgba(123,18,70,.5),transparent 70%);pointer-events:none}
.jzh .dk .wrap{position:relative}
.jzh .dk .eyebrow{color:#F0C9DD}.jzh .dk .eyebrow::before{background:linear-gradient(90deg,#fff,#AB2379)}
.jzh .dk .jz-lead{color:#D9C6D3}
.jzh .head{display:flex;flex-direction:column;gap:14px;margin-bottom:34px}
.jzh .tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
.jzh .tabs button{padding:.65em 1.2em;border-radius:99px;border:1px solid #5a4565;color:#D9C6D3;font-weight:600;font-size:14px;transition:all .25s}
.jzh .tabs button:hover{border-color:#fff;color:#fff}
.jzh .tabs button[aria-selected=true]{background:#fff;color:var(--plum);border-color:#fff}
.jzh .frame{position:relative;border-radius:26px;overflow:hidden;background:radial-gradient(40% 60% at 85% 15%,rgba(171,35,121,.45),transparent 70%),radial-gradient(35% 55% at 8% 95%,rgba(123,18,70,.55),transparent 70%),#23142B;box-shadow:0 0 0 1px #4a3556,0 44px 90px -40px rgba(171,35,121,.55);container-type:inline-size;color:#fff}
.jzh .stage{aspect-ratio:16/9;font-size:1.68cqw;position:relative;overflow:hidden}
.jzh .capbar{position:relative;display:flex;align-items:center;gap:16px;padding:14px 18px 15px;background:rgba(20,10,26,.55);backdrop-filter:blur(10px);border-top:1px solid #ffffff1c}
.jzh .capbar .gp{position:absolute;left:0;top:-1px;height:2px;width:calc(var(--gp,0)*100%);background:var(--grad);filter:brightness(1.5)}
.jzh .cn{font:700 12px var(--body);letter-spacing:.12em;color:#F0C9DD;white-space:nowrap}
.jzh .ct{flex:1;min-width:0}
.jzh .ct b{display:block;font:700 16px/1.25 var(--display);letter-spacing:-.01em}
.jzh .ct span{display:block;font-size:13.5px;color:#D9C6D3;margin-top:2px;line-height:1.4}
.jzh .pp{width:38px;height:38px;border-radius:50%;background:#ffffff1f;color:#fff;display:grid;place-items:center;flex:none;transition:background .2s}
.jzh .pp:hover{background:#ffffff38}
.jzh .pp .i2{display:none}.jzh .film.paused .pp .i1{display:none}.jzh .film.paused .pp .i2{display:block}
@container (max-width:700px){.jzh .stage{aspect-ratio:4/3;font-size:2.15cqw}.jzh .opt{display:none!important}.jzh .two{flex-direction:column}.jzh .ct span{font-size:12.5px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.jzh .cn{font-size:11px}}
@container (max-width:480px){.jzh .stage{aspect-ratio:3/4;font-size:3.1cqw}.jzh .cols4{grid-template-columns:repeat(2,minmax(0,1fr))}.jzh .capbar{min-height:122px}.jzh .ct b{font-size:14.5px}.jzh .pp{width:34px;height:34px}}
.jzh .chap{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.jzh .chap.pills .ch{position:relative;overflow:hidden;border:1px solid #5a4565;border-radius:99px;padding:.6em 1.05em;font-size:13.5px;font-weight:500;color:#D9C6D3;transition:color .2s,border-color .2s}
.jzh .chap.pills .ch[aria-current=true]{color:#fff;border-color:#AB2379}
.jzh .chap.pills .ch:hover{color:#fff}
.jzh .chap.pills.lt .ch{border-color:var(--line);color:var(--muted)}
.jzh .chap.pills.lt .ch[aria-current=true]{color:var(--plum);border-color:var(--mag)}
.jzh .chap.pills.lt .ch:hover{color:var(--plum)}
.jzh .chap.pills.lt .fill{background:linear-gradient(90deg,rgba(123,18,70,.16),rgba(171,35,121,.22))}
.jzh .chap.pills .fill{position:absolute;inset:0;width:calc(var(--p,0)*100%);background:linear-gradient(90deg,#7B124699,#AB237999)}
.jzh .lab{position:relative}

/* ===== scene primitives (em based, on stage) ===== */
.jzh .sc{position:absolute;inset:0;display:grid;place-items:center;padding:1.3em 1.6em}
.jzh .a{animation:jz-rise .65s var(--ease) var(--d,0s) both}
.jzh .z{animation:jz-zoom .55s var(--ease) var(--d,0s) both}
.jzh .w{display:inline-block;margin-right:.26em;animation:jz-rise .35s var(--ease) var(--d,0s) both}
@keyframes jz-rise{from{opacity:0;transform:translateY(.9em)}}
@keyframes jz-zoom{from{opacity:0;transform:scale(.8)}}
@keyframes jz-grow{from{width:0}}
@keyframes jz-slideUp{from{opacity:0;transform:translateY(2.4em) scale(.97)}}
@keyframes jz-press{40%{transform:scale(.94)}}
@keyframes jz-pulse{50%{opacity:.4}}
@keyframes jz-draw{from{stroke-dashoffset:var(--len,1)}}
@keyframes jz-cnt{to{--jz-n:var(--t)}}
@keyframes jz-pop2{0%{transform:scale(.4);opacity:0}60%{transform:scale(1.18)}100%{transform:scale(1);opacity:1}}
.jzh .comp{position:relative;width:min(34em,94%)}
.jzh .comp.w2{width:min(52em,95%)}.jzh .comp.w3{width:min(60em,96%)}
.jzh .jz-card{background:var(--paper);color:var(--ink);border-radius:1em;padding:1em 1.15em;box-shadow:0 1.4em 3em -1.2em rgba(0,0,0,.6)}
.jzh .jz-card.tt{background:var(--paper2)}
.jzh .jz-col{display:flex;flex-direction:column;gap:.65em}
.jzh .jz-row{display:flex;align-items:center;gap:.65em}
.jzh .two{display:flex;gap:1em;align-items:stretch}
.jzh .two>*{min-width:0}
.jzh .sp{flex:1}
.jzh .ln{height:.46em;border-radius:1em;background:var(--tint2);width:var(--w,100%);margin-top:.45em;animation:jz-grow .9s var(--ease) var(--d,0s) both}
.jzh .ln.d{background:#E5CCD7}
.jzh .chip{display:inline-flex;align-items:center;gap:.4em;padding:.26em .8em;border-radius:99px;background:var(--tint2);color:var(--wine);font-size:.8em;font-weight:600;white-space:nowrap}
.jzh .chip.ok{background:var(--ok-soft);color:#0B6B47}
.jzh .chip.am{background:var(--amber-soft);color:#8A5A07}
.jzh .chip.pl{background:var(--plum);color:#fff}
.jzh .chip.dk2{background:#ffffff22;color:#fff}
.jzh .chip.sel{background:var(--grad2);color:#fff}
.jzh .jz-card h6{font:700 .72em var(--display);letter-spacing:.12em;text-transform:uppercase;color:var(--ink2);margin:.8em 0 0}
.jzh .jz-card h5{font:700 1em var(--display)}
.jzh .jz-card small,.jzh .sc small{font-size:.8em;color:var(--ink2)}
.jzh .mt{color:var(--ink2);font-size:.82em}
.jzh .fs{font-size:.84em}
.jzh .av{width:2.3em;height:2.3em;border-radius:50%;background:linear-gradient(135deg,#E5CCD7,var(--mag));flex:none;display:grid;place-items:center;color:#fff;font:700 .78em var(--display)}
.jzh .bar{height:.55em;border-radius:1em;background:var(--tint2);overflow:hidden;flex:1}
.jzh .bar i{display:block;height:100%;width:var(--w);border-radius:inherit;background:var(--grad);animation:jz-grow 1.1s var(--ease) var(--d,0s) both}
.jzh .bar.ok i{background:linear-gradient(90deg,#17825a,#2fbf8a)}.jzh .bar.am i{background:linear-gradient(90deg,#b06e0a,var(--gold))}
.jzh .bub{padding:.7em 1em;border-radius:1.1em;max-width:90%;font-size:.92em;line-height:1.4}
.jzh .bub.q{background:var(--tint2);color:var(--ink);border-bottom-left-radius:.3em;align-self:flex-start}
.jzh .bub.me{background:var(--grad2);color:#fff;align-self:flex-end;border-bottom-right-radius:.3em}
.jzh .tick{width:1.45em;height:1.45em;border-radius:50%;background:var(--ok);color:#fff;display:grid;place-items:center;flex:none;animation:jz-pop2 .45s var(--ease) var(--d,0s) both}
.jzh .tick .ic{width:.85em;height:.85em}
.jzh .btnx{background:var(--plum);color:#fff;font-weight:600;padding:.7em 1.2em;border-radius:.65em;text-align:center;font-size:.9em}
.jzh .btnx.go{animation:jz-press .5s var(--d,0s) both}
.jzh .btnx.g{background:#fff;color:var(--plum);border:1px solid var(--line)}
.jzh .btnx.m{background:var(--grad2)}
.jzh .spin{width:1.1em;height:1.1em;border-radius:50%;border:2px solid var(--tint2);border-top-color:var(--mag);animation:jz-rot .8s linear infinite}
@keyframes jz-rot{to{transform:rotate(360deg)}}
.jzh .swap{position:relative}
.jzh .swap>.s1{animation:jz-out .3s var(--d1) both}.jzh .swap>.s2{position:absolute;inset:0;animation:jz-rise .4s var(--d2) both}
@keyframes jz-out{to{opacity:0;transform:translateY(-.5em)}}
.jzh .win{background:var(--paper);color:var(--ink);border-radius:.9em;overflow:hidden;box-shadow:0 1.6em 3.4em -1.2em rgba(0,0,0,.65)}
.jzh .wbar{display:flex;align-items:center;gap:.4em;padding:.55em .9em;background:var(--tint);border-bottom:1px solid var(--pline)}
.jzh .wbar i{width:.55em;height:.55em;border-radius:50%;background:#E5CCD7}
.jzh .wbar span{margin-left:.7em;font-size:.74em;color:var(--ink2);background:#fff;border:1px solid var(--pline);border-radius:99px;padding:.15em .9em}
.jzh .wbody{padding:1em 1.15em;font-size:.88em}
/* cursor */
.jzh .cur{position:absolute;left:var(--x);top:var(--y);width:1.5em;height:1.5em;z-index:5;pointer-events:none;animation:jz-curmove 1.2s var(--ease) var(--d) both;filter:drop-shadow(0 .3em .4em rgba(0,0,0,.35))}
.jzh .cur::after{content:"";position:absolute;left:-.4em;top:-.4em;width:1.2em;height:1.2em;border-radius:50%;border:2px solid var(--mag);opacity:0;animation:jz-clk .6s calc(var(--d) + 1.2s) ease-out both}
@keyframes jz-curmove{from{opacity:0;transform:translate(-9em,6em)}20%{opacity:1}to{opacity:1;transform:none}}
@keyframes jz-clk{from{opacity:1;transform:scale(.4)}to{opacity:0;transform:scale(2.4)}}
/* score ring */
.jzh .rs{--jz-n:0;position:relative;width:2.9em;height:2.9em;border-radius:50%;background:conic-gradient(var(--c,var(--mag)) calc(var(--jz-n)*1%),var(--tint2) 0);display:grid;place-items:center;flex:none;animation:jz-cnt 1.3s var(--ease) var(--d,0s) both;counter-reset:n var(--jz-n)}
.jzh .rs::before{content:"";position:absolute;inset:.28em;border-radius:50%;background:#fff}
.jzh .rs::after{content:counter(n);position:relative;font:800 .9em var(--display);color:var(--ink)}
.jzh .rs.ok{--c:#1F9D6B}.jzh .rs.am{--c:#C98512}
.jzh .rs.big{width:6.2em;height:6.2em}.jzh .rs.big::before{inset:.5em}.jzh .rs.big::after{font-size:1.5em}
/* glass popup (locked v7) */
.jzh .pop{position:relative;background:rgba(255,255,255,.98);backdrop-filter:blur(18px);border-radius:1.2em;padding:1.6em 1.5em 1.3em;text-align:center;color:var(--ink);box-shadow:0 2em 4em -1.4em rgba(0,0,0,.6),0 0 0 1px rgba(255,255,255,.7);overflow:hidden;animation:jz-slideUp .4s var(--ease) var(--d,0s) both}
.jzh .pop::before{content:"";position:absolute;left:0;right:0;top:0;height:.28em;background:var(--grad)}
.jzh .pop h4{font:800 1.3em var(--display);margin:.6em 0 .3em}
.jzh .pop p{color:var(--ink2);font-size:.9em}
.jzh .okc{width:3.6em;height:3.6em;margin:0 auto;display:block}
.jzh .okc circle{fill:var(--ok-soft);stroke:var(--ok);stroke-width:3;stroke-dasharray:1;stroke-dashoffset:1;animation:jz-dr 0.6s var(--d,.2s) ease-out forwards}
.jzh .okc path{fill:none;stroke:var(--ok);stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;animation:jz-dr .4s calc(var(--d,.2s) + .5s) ease-out forwards}
@keyframes jz-dr{to{stroke-dashoffset:0}}
.jzh .jz-toast{position:absolute;display:flex;gap:.6em;align-items:center;background:#fff;color:var(--ink);border-radius:.9em;padding:.7em 1em;box-shadow:0 1.2em 2.4em -.8em rgba(0,0,0,.55);font-size:.85em;animation:jz-rise .5s var(--ease) var(--d,0s) both}
.jzh .jz-toast .ic{color:var(--ok)}
.jzh .conf{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:9}
.jzh .conf i{position:absolute;width:.55em;height:.9em;border-radius:.12em}
/* voice */
.jzh .vl{display:flex;align-items:center;gap:.22em;height:2.4em}
.jzh .vl i{width:.26em;border-radius:1em;background:currentColor;height:var(--h);transform-origin:center;animation:jz-vl .9s ease-in-out infinite alternate;animation-delay:calc(var(--k)*-.11s)}
.jzh .vl.pk{color:#AB2379}.jzh .vl.wh{color:#fff}
.jzh .orb{width:6.6em;height:6.6em;border-radius:50%;position:relative;background:radial-gradient(circle at 35% 30%,#ffb6d6,var(--mag) 46%,#3b0c2a 100%);box-shadow:0 0 3.2em rgba(171,35,121,.6);animation:jz-breathe 2.8s ease-in-out infinite;flex:none}
.jzh .orb::before,.jzh .orb::after{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid #E27BB1;animation:jz-ring 2.8s ease-out infinite}
.jzh .orb::after{animation-delay:1.4s}
@keyframes jz-ring{from{opacity:.65;transform:scale(1)}to{opacity:0;transform:scale(1.9)}}
.jzh .orb.s{width:3.4em;height:3.4em}
.jzh .orb .ol2{position:absolute;inset:-.6em;border-radius:50%;animation:jz-spin 6s linear infinite}
.jzh .orb .ol2 i{position:absolute;top:0;left:50%;width:.5em;height:.5em;margin-left:-.25em;border-radius:50%;background:#fff;box-shadow:0 0 .8em .2em #E27BB1}
.jzh .tile{background:#23142B;border-radius:.9em;display:grid;place-items:center;min-height:9.5em;position:relative;color:#fff;overflow:hidden}
.jzh .tile .nm{position:absolute;left:.7em;bottom:.55em;font-size:.76em;color:#D9C6D3;display:flex;gap:.4em;align-items:center}
.jzh .tile .rec{position:absolute;right:.7em;top:.6em;font-size:.7em;display:flex;gap:.35em;align-items:center;color:#fff}
.jzh .tile .rec i{width:.6em;height:.6em;border-radius:50%;background:#e5484d;animation:jz-pulse 1.2s infinite}
.jzh .who2{width:3.6em;height:3.6em;border-radius:50% 50% .9em .9em;background:linear-gradient(#6a5575,#4a3556)}
.jzh .ringai{width:5.2em;height:5.2em;border-radius:50%;border:.28em solid #AB2379;position:relative;display:grid;place-items:center;flex:none}
.jzh .ringai::after{content:"";position:absolute;inset:-.7em;border-radius:50%;border:1px solid #E27BB1;animation:jz-ring 2.4s ease-out infinite}
/* kanban / lanes / tables */
.jzh .cols3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6em}
.jzh .cols4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.55em}
.jzh .kb{background:var(--paper2);border-radius:.8em;padding:.55em;min-height:8em}
.jzh .kb h6{margin:0 0 .5em}
.jzh .kc{background:#fff;border:1px solid var(--pline);border-radius:.65em;padding:.5em .65em;margin-bottom:.45em;font-size:.86em;font-weight:600;animation:jz-rise .5s var(--ease) var(--d,0s) both}
.jzh .kc span{display:block;font-weight:400;color:var(--ink2);font-size:.88em}
.jzh .tr{display:grid;grid-template-columns:var(--cols,2fr 1fr 1fr);gap:.6em;align-items:center;padding:.5em .2em;border-bottom:1px solid var(--pline);animation:jz-rise .5s var(--ease) var(--d,0s) both;font-size:.9em}
.jzh .tr.hd{font:700 .7em var(--body);letter-spacing:.1em;text-transform:uppercase;color:var(--ink2)}
.jzh .qr{display:grid;grid-template-columns:repeat(9,1fr);gap:1px;width:5.2em;height:5.2em;padding:.35em;background:#fff;border-radius:.5em;border:1px solid var(--pline)}
.jzh .qr i{background:var(--ink);animation:jz-zoom .3s var(--ease) var(--d,0s) both}
.jzh .qr i.o{background:transparent}
/* resume paper */
.jzh .rsm{background:#fff;color:#222;border-radius:.4em;padding:.9em 1em;font-size:.74em;line-height:1.5;box-shadow:0 1.4em 3em -1em rgba(0,0,0,.6);position:relative;overflow:hidden}
.jzh .rsm .rh{margin:-.9em -1em .6em;padding:.8em 1em;color:#fff;background:#1E1E2E;animation:jz-tplh 6s linear both}
.jzh .rsm .rh b{font:800 1.6em var(--display);display:block;line-height:1.1}
.jzh .rsm h6{color:#6C63FF;border-bottom:1px solid #E5CCD7;padding-bottom:.15em;margin:.7em 0 .3em;letter-spacing:.12em;animation:jz-tpla 6s linear both}
.jzh .rsm ul{margin:0;padding-left:1.1em}
.jzh .rsm li{margin:.1em 0}
@keyframes jz-tplh{0%,38%{background:#1F2A44}42%,70%{background:#D0003A}74%,100%{background:#1E1E2E}}
@keyframes jz-tpla{0%,38%{color:#1F2A44}42%,70%{color:#D0003A}74%,100%{color:#6C63FF}}
.jzh .tpl{display:flex;gap:.5em}
.jzh .tpl span{padding:.3em .8em;border-radius:99px;font-size:.78em;font-weight:600;background:var(--tint2);color:var(--wine);opacity:.5}
.jzh .tpl span:nth-child(1){animation:jz-t1 6s linear both}.jzh .tpl span:nth-child(2){animation:jz-t2 6s linear both}.jzh .tpl span:nth-child(3){animation:jz-t3 6s linear both}
@keyframes jz-t1{0%,38%{opacity:1;background:var(--plum);color:#fff}42%,100%{opacity:.5}}
@keyframes jz-t2{0%,38%{opacity:.5}42%,70%{opacity:1;background:var(--plum);color:#fff}74%,100%{opacity:.5}}
@keyframes jz-t3{0%,70%{opacity:.5}74%,100%{opacity:1;background:var(--plum);color:#fff}}
.jzh .hl{background:linear-gradient(transparent 55%,#F6CFE2 55%) 0 0/0 100% no-repeat;animation:jz-hl .8s var(--d) forwards}
@keyframes jz-hl{to{background-size:100% 100%}}
/* website mock */
.jzh .site{position:relative;border-radius:.6em;overflow:hidden;font-size:.8em;min-height:15.5em;color:var(--sk);background:var(--sb)}
.jzh .site .ph{width:var(--pw,3.6em);height:var(--pw,3.6em);border-radius:var(--pr,50%);background:linear-gradient(160deg,var(--sa),var(--sb2));display:grid;place-items:end center;overflow:hidden;flex:none}
.jzh .site .ph::before{content:"";width:55%;height:55%;border-radius:50%;background:rgba(255,255,255,.85);margin-bottom:-8%}
.jzh .site .sn{font:800 1.5em var(--display);line-height:1.1}
.jzh .site .chip{background:var(--sc);color:var(--sk)}
.jzh .site .sec{background:var(--sc);border-radius:.6em;padding:.55em .7em;margin-top:.5em}
.jzh .site .sec b{color:var(--sa)}
.jzh .site .ban{height:5.5em;background:linear-gradient(135deg,var(--sa),var(--sb2));position:relative}
.jzh .site .ban::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 35%,var(--sb))}
.jzh .sv1{--sb:#fff;--sk:#17151B;--sc:#FBF3F8;--sa:#7B1246;--sb2:#AB2379}
.jzh .sv2{--sb:#0E2A33;--sk:#E8FBF7;--sc:#15404B;--sa:#2DD4BF;--sb2:#0F766E}
.jzh .sv3{--sb:#12121A;--sk:#EEEDFF;--sc:#1E1E2C;--sa:#8C85FF;--sb2:#3B36A8}
.jzh .sv4{--sb:#FFFDF8;--sk:#2B2418;--sc:#F6EEDC;--sa:#B8893B;--sb2:#E7D2A1}
.jzh .sitebody{padding:.8em .9em}
.jzh .cyc .site{min-height:20em}
/* sidebar */
.jzh .side{width:10.4em;white-space:nowrap;flex:none;background:var(--tint);border-right:1px solid var(--pline);padding:.7em .5em;display:flex;flex-direction:column;gap:.15em;font-size:.82em}
.jzh .side div{display:flex;align-items:center;gap:.5em;padding:.45em .55em;border-radius:.5em;color:var(--ink2);font-weight:500}
.jzh .side div.on{background:#fff;color:var(--wine);font-weight:700;box-shadow:0 .1em .4em rgba(83,25,51,.12)}
.jzh .cyc{position:absolute;inset:0;animation:jz-cyc 6s linear infinite backwards;animation-delay:calc(var(--k)*1.5s)}
@keyframes jz-cyc{0%{opacity:0;transform:scale(.97)}4%{opacity:1;transform:none}22%{opacity:1}26%,100%{opacity:0}}
.jzh .lbl4{position:absolute;left:0;right:0;bottom:.5em;display:flex;justify-content:center}
.jzh .lbl4 span{position:absolute;opacity:0;animation:jz-cyc 6s linear infinite backwards;animation-delay:calc(var(--k)*1.5s)}
.jzh .nite{animation:jz-nt 3s linear both}
@keyframes jz-nt{0%,45%{opacity:0}55%,100%{opacity:1}}
/* explorer */
.jzh .film.split{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.4fr);gap:36px;align-items:center}
.jzh .film.split .chap{order:1;flex-direction:column;gap:4px;margin:0}
.jzh .film.split .frame{order:2}
.jzh .chap.list .ch{position:relative;text-align:left;padding:14px 18px 16px;border-radius:16px;border:1px solid transparent;display:flex;flex-direction:column;gap:2px;overflow:hidden;transition:background .25s,border-color .25s,box-shadow .25s}
.jzh .chap.list .ch b{font:700 18px var(--display)}
.jzh .chap.list .ch span.d{color:var(--muted);font-size:15px;max-height:0;opacity:0;transition:max-height .45s var(--ease),opacity .3s}
.jzh .chap.list .ch[aria-current=true]{background:#fff;border-color:var(--line2);box-shadow:var(--shadow)}
.jzh .chap.list .ch[aria-current=true] span.d{max-height:7em;opacity:1}
.jzh .chap.list .ch:not([aria-current=true]) b{color:var(--muted)}
.jzh .chap.list .ch:hover b{color:var(--ink)}
.jzh .chap.list .fill{position:absolute;left:18px;bottom:0;height:3px;border-radius:3px;width:calc(var(--p,0)*(100% - 36px));background:var(--grad)}
@media(max-width:900px){.jzh .film.split{grid-template-columns:1fr}.jzh .film.split .frame{order:-1}}
.jzh .film.light .capbar{background:rgba(20,10,26,.7)}

/* sections: coach, orgs, plans, faq */
.jzh .tint{background:var(--tint)}
.jzh .split2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:56px;align-items:center}
.jzh .split2.rev{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}
.jzh .pts{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:14px}
.jzh .pts li{display:flex;gap:14px;align-items:flex-start;font-size:17px}
.jzh .pts .tk{width:28px;height:28px;border-radius:50%;background:var(--grad2);color:#fff;display:grid;place-items:center;flex:none;margin-top:1px;font-size:14px}
.jzh .path{display:flex;flex-wrap:wrap;gap:8px;align-items:center;color:var(--muted);font-weight:600;font-size:15px}
.jzh .path span{padding:.45em 1em;border-radius:99px;background:#fff;border:1px solid var(--line)}
@media(max-width:900px){.jzh .split2,.jzh .split2.rev{grid-template-columns:1fr;gap:32px}}
.jzh .orgs{background:linear-gradient(#fff 0%,rgba(251,243,248,.85) 40%,rgba(251,243,248,.85) 70%,#fff 100%)}
.jzh .steps{display:grid;gap:12px;margin-top:6px}
.jzh .stp{display:flex;gap:14px;background:#fff;border:1px solid var(--line2);border-radius:18px;padding:16px 18px;box-shadow:var(--shadow)}
.jzh .stp .n{width:32px;height:32px;border-radius:50%;background:var(--grad2);color:#fff;display:grid;place-items:center;font:800 14px var(--display);flex:none}
.jzh .stp b{display:block;font:700 17px var(--display)}
.jzh .stp span{color:var(--muted);font-size:15px}
.jzh .chooser{margin-top:56px;border:1px solid var(--line2);border-radius:26px;background:#fff;padding:clamp(20px,3vw,40px);box-shadow:var(--shadow)}
.jzh .chooser .tabs button{border-color:var(--line);color:var(--muted)}
.jzh .chooser .tabs button:hover{border-color:var(--mag);color:var(--wine)}
.jzh .chooser .tabs button[aria-selected=true]{background:var(--plum);border-color:var(--plum);color:#fff}
.jzh .panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:36px;margin-top:20px}
.jzh .panel h3{font-size:clamp(24px,2.6vw,34px);font-weight:800;letter-spacing:-.03em}
.jzh .panel ul{margin:14px 0 20px;padding-left:1.1em;color:var(--muted)}
.jzh .panel li{margin:.3em 0}
.jzh .tc{border-radius:20px;padding:20px 22px;display:flex;flex-direction:column;gap:8px}
.jzh .tc.t{background:var(--tint);border:1px dashed var(--line)}
.jzh .tc.w{background:var(--plum);color:#fff;position:relative;overflow:hidden}
.jzh .tc.w::before{content:"";position:absolute;inset:0;background:radial-gradient(60% 80% at 100% 0,rgba(171,35,121,.45),transparent 70%);pointer-events:none}
.jzh .tc small{font:700 11px var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.jzh .tc.w small{color:#F0C9DD}
.jzh .tc p{font-size:16px;position:relative}.jzh .tc.t p{color:var(--muted)}
.jzh .save{display:flex;gap:8px;flex-wrap:wrap;position:relative}
.jzh .save span{padding:.3em .9em;border-radius:99px;background:#ffffff22;color:#fff;font-size:13px;font-weight:600}
@media(max-width:820px){.jzh .panel{grid-template-columns:1fr}}
.jzh .plans{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:36px;max-width:880px}
.jzh .pl{border-radius:22px;border:1px solid var(--line2);background:#fff;padding:28px;display:flex;flex-direction:column;gap:14px;box-shadow:var(--shadow);transition:transform .3s var(--ease)}
.jzh .pl:hover{transform:translateY(-5px)}
.jzh .pl.pro{background:var(--plum);color:#fff;border-color:var(--plum2);position:relative;overflow:hidden}
.jzh .pl.pro::before{content:"";position:absolute;inset:0;background:radial-gradient(60% 70% at 100% 0,rgba(171,35,121,.5),transparent 70%)}
.jzh .pl.pro>*{position:relative}
.jzh .pl h3{font-size:24px;font-weight:800}
.jzh .pl ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:9px;font-size:15.5px}
.jzh .pl li{display:flex;gap:10px;align-items:flex-start}
.jzh .pl li .ic{color:var(--mag);margin-top:.28em}.jzh .pl.pro li .ic{color:#F0A6CB}
.jzh .pl p{color:var(--muted)}.jzh .pl.pro p{color:#D9C6D3}
@media(max-width:720px){.jzh .plans{grid-template-columns:1fr}}
.jzh .trust{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:30px}
.jzh .trust div{padding:22px 0;border-top:3px solid transparent;border-image:var(--grad) 1}
.jzh .trust b{display:block;font:800 21px var(--display);margin-bottom:6px;letter-spacing:-.02em}
.jzh .trust span{color:var(--muted)}
@media(max-width:760px){.jzh .trust{grid-template-columns:1fr}}
.jzh .faq{max-width:820px;margin-top:30px}
.jzh .faq details{border-bottom:1px solid var(--line2);padding:18px 0}
.jzh .faq summary{list-style:none;cursor:pointer;font:700 18px var(--display);display:flex;justify-content:space-between;gap:16px;align-items:center}
.jzh .faq summary::-webkit-details-marker{display:none}
.jzh .faq summary::after{content:"+";font-size:26px;color:var(--mag);transition:transform .25s}
.jzh .faq details[open] summary::after{transform:rotate(45deg)}
.jzh .faq details p{color:var(--muted);margin-top:10px;max-width:64ch}
.jzh .canadaband{background:radial-gradient(60% 70% at 88% 0%,rgba(171,35,121,.36),transparent 62%),radial-gradient(55% 65% at 0% 100%,rgba(123,18,70,.58),transparent 66%),radial-gradient(rgba(255,255,255,.055) 1px,transparent 1.3px) 0 0/22px 22px,linear-gradient(160deg,var(--plum) 0%,var(--plum) 45%,rgba(123,18,70,.9) 140%),var(--plum);color:#fff;overflow:hidden}
.jzh .canadaband::before{content:"";position:absolute;inset:0;background:radial-gradient(40% 60% at 85% 20%,rgba(171,35,121,.42),transparent 70%),radial-gradient(35% 55% at 10% 90%,rgba(123,18,70,.5),transparent 70%)}
.jzh .canadaband .wrap{position:relative}
.jzh .canadaband h2{font-size:clamp(34px,5.2vw,68px);font-weight:800;max-width:15ch;letter-spacing:-.035em}
.jzh .canadaband .jz-lead{color:#E6D3DE;margin-top:16px}
@media (prefers-reduced-motion:reduce){.jzh *,.jzh *::before,.jzh *::after{animation:none!important;transition:none!important}.jzh .mk .sw{stroke-dashoffset:0;fill-opacity:1;stroke-width:0}.jzh .rs{--jz-n:var(--t)}.jzh .okc circle,.jzh .okc path{stroke-dashoffset:0}.jzh .cyc{opacity:0}.jzh .cyc:first-child{opacity:1}.jzh .gb .done{opacity:1;transform:none}.jzh .mvbar i{width:100%}}

/* ===================== v3 ADDITIONS ===================== */
.jzh .comp.w2{width:min(56em,96%)}.jzh .comp.w3{width:min(60em,97%)}
.jzh .wbody{font-size:.95em}
.jzh .sec-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px 56px;align-items:end;margin-bottom:30px}
.jzh .sec-head .jz-lead{max-width:56ch}
@media(max-width:900px){.jzh .sec-head{grid-template-columns:1fr}}
.jzh .ill{font-size:13px;color:var(--muted);margin-top:16px}
.jzh .dk .ill{color:#C9B4C2}
/* faces */
.jzh .fc{display:inline-block;flex:none;border-radius:50%;background-size:cover;background-position:var(--fx,50%) var(--fy,30%);background-repeat:no-repeat;width:var(--s,2.4em);height:var(--s,2.4em);background-color:var(--tint2)}
.jzh .fc.ring{box-shadow:0 0 0 .22em #fff,0 0 0 .4em var(--mag)}
/* full-size scene frame */
.jzh .full{position:absolute;inset:1.05em 1.5em;display:flex;gap:1.2em;align-items:stretch;min-height:0}
.jzh .full>*{min-width:0}
.jzh .full.colf{flex-direction:column}
.jzh .k1{flex:1;display:flex;flex-direction:column;gap:.7em;min-height:0}
.jzh .k1.mid{justify-content:center}
.jzh .sidec{flex:0 0 16em;display:flex;flex-direction:column;gap:.7em;justify-content:center}
.jzh .view{position:relative;overflow:hidden;border-radius:.9em;background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.12));flex:1;min-height:0;display:flex;justify-content:center;align-items:flex-start;padding:.9em .9em 0}
.jzh .sheetw{width:min(100%,33em);will-change:transform}
.jzh .sheetw.n{width:min(100%,26em)}
.jzh .sheet{background:#fff;color:#22202A;font-size:.78em;line-height:1.52;padding:2.3em 2.6em 2.6em;box-shadow:0 1.6em 3.6em -1.2em rgba(0,0,0,.7);border-radius:.3em;position:relative}
.jzh .sheet.sm{font-size:.66em;padding:2em 2.2em}
.jzh .sheetw.go{animation:jz-pan2 var(--pt,9s) cubic-bezier(.45,.05,.4,1) .2s both}
.jzh .sheetw.go1{animation:jz-pan1 var(--pt,9s) cubic-bezier(.45,.05,.4,1) var(--pd,.8s) both}
@keyframes jz-pan2{0%,10%{transform:none}50%,62%{transform:translateY(var(--py,0px))}76%,100%{transform:none}}
@keyframes jz-pan1{0%{transform:none}100%{transform:translateY(var(--py,0px))}}
.jzh .sheet .rh{margin:-2.3em -2.6em 1em;padding:1.5em 2.6em;color:#fff;background:#1F2A44}
.jzh .sheet.sm .rh{margin:-2em -2.2em .9em;padding:1.3em 2.2em}
.jzh .sheet .rh b{font:800 2.05em/1.1 var(--display);display:block;letter-spacing:-.02em}
.jzh .sheet .rh span{opacity:.92;font-size:.94em}
.jzh .sheet h6{font:700 .74em var(--body);letter-spacing:.14em;color:#1F2A44;border-bottom:1.5px solid #D9DEE8;padding-bottom:.28em;margin:1.15em 0 .5em;text-transform:uppercase}
.jzh .sheet .jr{display:flex;justify-content:space-between;gap:1em;font-weight:700;margin-top:.5em}
.jzh .sheet .jr em{font-style:normal;font-weight:500;color:#6A6872;white-space:nowrap}
.jzh .sheet ul{margin:.25em 0 .2em;padding-left:1.25em}.jzh .sheet li{margin:.15em 0}
.jzh .sheet .sk span{display:inline-block;margin:.15em .3em .15em 0;padding:.1em .75em;border-radius:99px;background:#EEF1F7;font-size:.92em}
.jzh .sheet p{margin:.55em 0 0}
.jzh .sheet .hl{padding:0 .1em}
.jzh .tpl9 .rh{animation:jz-tph9 10.5s linear both}
.jzh .tpl9 h6{animation:jz-tpa9 10.5s linear both}
@keyframes jz-tph9{0%,73%{background:#1F2A44}76%,85%{background:#D0003A}88%,100%{background:#1E1E2E}}
@keyframes jz-tpa9{0%,73%{color:#1F2A44}76%,85%{color:#D0003A}88%,100%{color:#6C63FF}}
.jzh .tpl9c span{opacity:.5;animation:none}
.jzh .tpv{display:flex;flex-direction:column;gap:.45em}
.jzh .tpv span{padding:.55em .9em;border-radius:.7em;font-weight:600;font-size:.92em;background:#ffffff14;color:#E8D5E0;border:1px solid #ffffff22}
.jzh .tpv span:nth-child(1){animation:jz-tq1 10.5s linear both}.jzh .tpv span:nth-child(2){animation:jz-tq2 10.5s linear both}.jzh .tpv span:nth-child(3){animation:jz-tq3 10.5s linear both}
@keyframes jz-tq1{0%,73%{background:#fff;color:#2B1A34}76%,100%{background:#ffffff14;color:#E8D5E0}}
@keyframes jz-tq2{0%,73%{background:#ffffff14;color:#E8D5E0}76%,85%{background:#fff;color:#2B1A34}88%,100%{background:#ffffff14;color:#E8D5E0}}
@keyframes jz-tq3{0%,85%{background:#ffffff14;color:#E8D5E0}88%,100%{background:#fff;color:#2B1A34}}
.jzh .glass{background:rgba(255,255,255,.1);border:1px solid #ffffff2a;border-radius:.9em;padding:.8em .95em;backdrop-filter:blur(8px);color:#fff}
.jzh .glass small{color:#E8D5E0}
.jzh .wh2{color:#fff}
.jzh .wh2 h5{color:#fff}
/* success layers */
.jzh .spk{position:absolute;left:50%;top:50%;width:0;height:0;pointer-events:none;z-index:6}
.jzh .spk i{position:absolute;left:-.07em;top:-.07em;width:.14em;height:1.3em;border-radius:1em;background:linear-gradient(#F6CFE2,rgba(226,123,177,0));transform-origin:50% 0;opacity:0;animation:jz-rayo 1s var(--d,0s) ease-out both}
@keyframes jz-rayo{0%{opacity:1;transform:rotate(var(--r)) translateY(3em) scaleY(.2)}45%{opacity:1;transform:rotate(var(--r)) translateY(4.6em) scaleY(1)}100%{opacity:0;transform:rotate(var(--r)) translateY(7em) scaleY(.1)}}
.jzh .rng{position:absolute;left:50%;top:50%;width:6em;height:6em;margin:-3em 0 0 -3em;border-radius:50%;border:.16em solid #2fbf8a;opacity:0;animation:jz-rngo 1.6s var(--d,0s) ease-out both;pointer-events:none}
@keyframes jz-rngo{0%{opacity:.9;transform:scale(.5)}100%{opacity:0;transform:scale(3.4)}}
.jzh .big-ok{transform-origin:center;animation:jz-pop2 .6s var(--d,0s) var(--ease) both}
.jzh .hero-t{font:800 3.1em/1.02 var(--display);letter-spacing:-.035em}
.jzh .hero-t.gt{background:linear-gradient(100deg,transparent 42%,rgba(255,255,255,.7) 50%,transparent 58%) 140% 0/250% 100% no-repeat,linear-gradient(90deg,#fff 0%,#F2E7EF 45%,#E5CCD7 100%);-webkit-background-clip:text;background-clip:text;color:transparent;animation:jz-sweep 4s ease-in-out infinite}
/* job rows */
.jzh .jrow{display:flex;align-items:center;gap:.9em;background:#fff;color:var(--ink);border:1px solid var(--pline);border-radius:.9em;padding:.7em .95em;box-shadow:0 .5em 1.4em -.9em rgba(0,0,0,.5);animation:jz-rise .55s var(--ease) var(--d,0s) both}
.jzh .jrow b.t{font:700 1.08em var(--display)}
.jzh .jrow .gap{font-size:.84em;margin-top:.1em}
.jzh .jrow .ok{color:#0B6B47}.jzh .jrow .am{color:#8A5A07}
.jzh .rs.xl{width:4.6em;height:4.6em}.jzh .rs.xl::before{inset:.4em}.jzh .rs.xl::after{font-size:1.25em}
.jzh .rs.xxl{width:8.4em;height:8.4em}.jzh .rs.xxl::before{inset:.62em}.jzh .rs.xxl::after{font-size:2.3em}
.jzh .rs.fit::after{content:counter(n) "%"}
.jzh .lock{width:4.6em;height:4.6em;border-radius:50%;border:.16em dashed #C98512;display:grid;place-items:center;color:#8A5A07;font-size:.72em;font-weight:700;text-align:center;line-height:1.15;flex:none}
.jzh .btn2{display:inline-flex;align-items:center;justify-content:center;gap:.4em;padding:.55em 1.05em;border-radius:.65em;font-weight:600;font-size:.88em;white-space:nowrap}
.jzh .btn2.p{background:var(--plum);color:#fff}.jzh .btn2.m{background:var(--grad2);color:#fff}.jzh .btn2.g{background:#fff;color:var(--plum);border:1px solid var(--line)}.jzh .btn2.go{animation:jz-press .5s var(--d,0s) both}
.jzh .btn2.lg{font-size:1.02em;padding:.7em 1.4em}
/* big popup */
.jzh .pop.xl{font-size:1.28em;padding:1.9em 1.8em 1.5em}
/* website scenes */
.jzh .cv{display:block;width:100%;height:auto;aspect-ratio:1000/625;background:#101820;border-radius:inherit}
.jzh .cv.ph{aspect-ratio:400/820}
.jzh .browser{background:#fff;border-radius:.9em;overflow:hidden;box-shadow:0 1.8em 3.8em -1.4em rgba(0,0,0,.75);position:relative}
.jzh .browser .wbar{padding:.5em .9em}
.jzh .phone{position:relative;border-radius:1.6em;border:.28em solid #0C0A10;box-shadow:0 1.6em 3.4em -1.2em rgba(0,0,0,.75),0 0 0 1px #ffffff22;overflow:hidden;background:#101820}
.jzh .dlab{display:flex;gap:.5em;align-items:center;justify-content:center;flex-wrap:wrap}
.jzh .dlab .chip{font-size:.88em}
.jzh .swapc{animation:jz-swapin .5s var(--ease) both}
@keyframes jz-swapin{from{opacity:0;transform:scale(.985)}}
.jzh .thumb{position:relative;border-radius:.6em;overflow:hidden;border:.17em solid transparent;transition:border-color .3s,transform .3s;box-shadow:0 .8em 1.6em -.9em rgba(0,0,0,.7);background:#fff;animation:jz-rise .5s var(--ease) var(--d,0s) both}
.jzh .thumb.on{border-color:var(--mag);transform:scale(1.02)}
.jzh .thumb .cv{aspect-ratio:1000/625}
.jzh .thumb small{position:absolute;left:.5em;bottom:.45em;background:rgba(255,255,255,.94);color:var(--plum);font-weight:800;font-size:.78em;padding:.12em .65em;border-radius:99px;box-shadow:0 .2em .6em rgba(0,0,0,.25);z-index:2}
.jzh .chip.dk{background:var(--plum);color:#fff}
/* workspace page */
.jzh .wsx{display:flex;flex-direction:column;background:#fff;color:var(--ink);border-radius:.9em;overflow:hidden;box-shadow:0 1.8em 3.8em -1.4em rgba(0,0,0,.75);width:100%}
.jzh .wtop{display:flex;align-items:center;gap:1em;padding:.6em 1em;border-bottom:1px solid var(--pline);background:#fff;flex:none}
.jzh .wtop .lg{height:1.5em}
.jzh .wtop .nm{margin-left:auto;display:flex;align-items:center;gap:.5em;font-weight:600;font-size:.86em}
.jzh .wbd{display:flex;flex:1;min-height:0}
.jzh .wsd{flex:0 0 11.4em;background:var(--tint);border-right:1px solid var(--pline);padding:.8em .55em;display:flex;flex-direction:column;gap:.15em;font-size:.84em}
.jzh .wsd div{display:flex;align-items:center;gap:.6em;padding:.5em .65em;border-radius:.6em;color:var(--ink2);font-weight:500;white-space:nowrap}
.jzh .wsd div .ic{width:1.05em;height:1.05em;color:var(--wine);opacity:.8}
.jzh .wsd div.on{background:#fff;color:var(--wine);font-weight:700;box-shadow:0 .1em .5em rgba(83,25,51,.12)}
.jzh .wsd hr{border:0;border-top:1px solid var(--pline);margin:.5em .4em;width:auto}
.jzh .wsm{flex:1;min-width:0;position:relative;overflow:hidden;background:#FDFAFC}
.jzh .wsp{padding:.9em 1em 1.3em;display:flex;flex-direction:column;gap:.8em}
.jzh .wsp.go1{animation:jz-pan1 var(--pt,9s) cubic-bezier(.45,.05,.4,1) var(--pd,1.6s) both}
.jzh .wg2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:.8em}
.jzh .wg3{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:.8em}
.jzh .wcard{background:#fff;border:1px solid var(--pline);border-radius:.9em;padding:.85em 1em;box-shadow:0 .4em 1.2em -.9em rgba(83,25,51,.35);animation:jz-rise .6s var(--ease) var(--d,0s) both}
.jzh .wcard h4{font:700 1em var(--display);margin-bottom:.4em}
.jzh .wnext{background:var(--plum);color:#fff;border-radius:.9em;padding:.95em 1.1em;position:relative;overflow:hidden;animation:jz-rise .6s var(--ease) var(--d,0s) both}
.jzh .wnext::before{content:"";position:absolute;inset:0;background:radial-gradient(60% 90% at 100% 0,rgba(171,35,121,.5),transparent 70%)}
.jzh .wnext>*{position:relative}
.jzh .wnext .k{font:700 .66em var(--body);letter-spacing:.14em;text-transform:uppercase;color:#F0C9DD}
.jzh .wnext h3{font:800 1.25em/1.15 var(--display);margin:.25em 0}
.jzh .wsince{display:flex;gap:1em;align-items:center;background:#fff;border:1px solid var(--pline);border-radius:.9em;padding:.65em 1em;animation:jz-rise .6s var(--ease) var(--d,0s) both}
.jzh .wsince .s{display:flex;flex-direction:column;line-height:1.2}.jzh .wsince .s b{font:800 1.25em var(--display)}.jzh .wsince .s span{font-size:.76em;color:var(--ink2)}
.jzh .wsince .jz-lead{font-weight:700;color:var(--wine);font-size:.8em;max-width:6.5em}
.jzh .drow{display:flex;justify-content:space-between;gap:.6em;padding:.45em 0;border-bottom:1px solid var(--pline);font-size:.9em;align-items:center}
.jzh .drow:last-child{border-bottom:0}
.jzh .drow span.w{color:var(--ink2);font-size:.86em;margin:0}
.jzh .tgl{width:2.3em;height:1.25em;border-radius:99px;background:#CFC3CB;position:relative;flex:none}
.jzh .tgl::after{content:"";position:absolute;left:.15em;top:.15em;width:.95em;height:.95em;border-radius:50%;background:#fff;transition:.3s}
.jzh .tgl.on{background:var(--ok)}.jzh .tgl.on::after{left:1.2em}
.jzh .tgl.anim{animation:jz-tgbg 1s var(--d) both}.jzh .tgl.anim::after{animation:jz-tgdot 1s var(--d) both}
@keyframes jz-tgbg{0%{background:#CFC3CB}100%{background:#1F9D6B}}
@keyframes jz-tgdot{0%{left:.15em}100%{left:1.2em}}
/* offer / celebration stage glow */
.jzh .glow{position:absolute;inset:0;background:radial-gradient(45% 60% at 50% 45%,rgba(226,123,177,.35),transparent 70%);animation:jz-fadein 1s var(--d,0s) both;pointer-events:none}
@keyframes jz-fadein{from{opacity:0}}
.jzh .envl{display:flex;gap:.8em;align-items:center;background:#fff;color:var(--ink);border-radius:.9em;padding:.7em 1em;box-shadow:0 1.2em 2.6em -.8em rgba(0,0,0,.6);font-size:.95em}
.jzh .sigl{width:9em;display:block}
.jzh .sigl path{stroke-dasharray:1;stroke-dashoffset:1;animation:jz-dr 1.2s var(--d) ease-out forwards}
/* org scenes */
.jzh .jz-card.w{background:#fff}
.jzh .nt{background:#fff;color:var(--ink);border-radius:.8em;padding:.55em .8em;font-size:.88em;font-weight:600;display:flex;gap:.6em;align-items:center;box-shadow:0 .9em 1.8em -.9em rgba(0,0,0,.65);animation:jz-rise .45s var(--ease) var(--d,0s) both,jz-away .6s var(--o,3s) ease-in forwards}
.jzh .nt .bd{min-width:1.7em;height:1.7em;border-radius:99px;display:grid;place-items:center;font-size:.8em;font-weight:800;color:#fff;background:#D64545;animation:jz-bdp 1s ease-in-out infinite}
.jzh .nt .bd.am{background:#C98512}
@keyframes jz-bdp{50%{box-shadow:0 0 0 .4em rgba(214,69,69,.25)}}
@keyframes jz-away{to{opacity:0;transform:translate(var(--tx,0),var(--ty,0)) scale(.4) rotate(var(--rot,0deg))}}
.jzh .calm{animation:jz-rise .6s var(--ease) var(--d,0s) both}
.jzh .meter{height:.7em;border-radius:99px;background:#ffffff22;overflow:hidden;width:100%}
.jzh .meter i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#D64545,#E9B44C);width:92%;animation:jz-mshr 1.2s 3.1s ease-in-out forwards}
@keyframes jz-mshr{to{width:14%;background:linear-gradient(90deg,#1F9D6B,#2fbf8a)}}
.jzh .chart{width:100%;height:auto;display:block;overflow:visible}
.jzh .chart .ar{opacity:0;animation:jz-fadein 1s var(--d,1s) forwards}
.jzh .chart .ln2{fill:none;stroke:#AB2379;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;clip-path:inset(-30% 100% -30% -2%);animation:jz-rvl 2.2s var(--d,.4s) ease-out forwards}@keyframes jz-rvl{to{clip-path:inset(-30% -2% -30% -2%)}}
.jzh .bars6{display:flex;align-items:flex-end;gap:.5em;height:6em}
.jzh .bars6 i{flex:1;border-radius:.3em .3em 0 0;background:var(--grad);height:var(--h);transform-origin:bottom;animation:jz-growy .8s var(--ease) var(--d,0s) both}
@keyframes jz-growy{from{transform:scaleY(0)}}
.jzh .stamp{position:absolute;right:1.6em;top:1.2em;border:.2em solid #1F9D6B;color:#1F9D6B;font:800 1.6em var(--display);letter-spacing:.12em;padding:.1em .5em;border-radius:.3em;transform:rotate(-9deg);animation:jz-stamp .5s var(--d,0s) cubic-bezier(.3,1.6,.5,1) both;background:#ffffffee}
@keyframes jz-stamp{0%{opacity:0;transform:rotate(-9deg) scale(2.2)}100%{opacity:1;transform:rotate(-9deg) scale(1)}}
.jzh .mail-r{display:flex;gap:.6em;align-items:center;padding:.5em .65em;border-radius:.6em;border:1px solid var(--pline);background:#fff;font-size:.9em;animation:jz-rise .5s var(--ease) var(--d,0s) both}
.jzh .mail-r b{font-weight:700}.jzh .mail-r small{display:block}
.jzh .tag{display:inline-block;padding:.12em .65em;border-radius:99px;font-size:.78em;font-weight:700;background:var(--tint2);color:var(--wine);animation:jz-pop2 .4s var(--d,0s) both}
.jzh .tag.am{background:var(--amber-soft);color:#8A5A07}.jzh .tag.ok{background:var(--ok-soft);color:#0B6B47}
.jzh .callw{position:relative;display:flex;flex-direction:column;align-items:center;gap:.7em}
.jzh .ts{background:#fff;color:var(--ink);border-radius:.9em;padding:.6em .85em;font-size:.9em;max-width:92%;animation:jz-rise .5s var(--ease) var(--d,0s) both}
.jzh .ts.ai{background:var(--grad2);color:#fff;align-self:flex-start;border-bottom-left-radius:.25em}
.jzh .ts.me{align-self:flex-end;border-bottom-right-radius:.25em;background:#fff}
.jzh .sw{display:flex;gap:.6em;align-items:center}
@media (prefers-reduced-motion:reduce){.jzh .sheetw.go,.jzh .sheetw.go1,.jzh .wsp.go1{animation:none}.jzh .tpl9 .rh{background:#1F2A44}.jzh .tpl9 h6{color:#1F2A44}.jzh .nt{animation:none!important}.jzh .chart .ln2{clip-path:none;animation:none}.jzh .chart .ar{opacity:1}.jzh .sigl path{stroke-dashoffset:0}.jzh .meter i{width:14%}.jzh .spk,.jzh .rng{display:none}}
@container (max-width:700px){.jzh .full{inset:.8em 1em;gap:.8em}.jzh .sidec{flex:0 0 auto;display:none}.jzh .sheetw{width:min(100%,30em)}.jzh .sheet{font-size:.92em}.jzh .wsd{display:none}.jzh .hero-t{font-size:2.4em}.jzh .wg2,.jzh .wg3{grid-template-columns:1fr}.jzh .sec3{display:none}}
@container (max-width:480px){.jzh .sheet{font-size:1em}.jzh .sheet.sm{font-size:.9em}.jzh .hero-t{font-size:2em}.jzh .wsince{flex-wrap:wrap}.jzh .pk2{flex-direction:column}.jzh .jrow .btn2.g{display:none}}
.jzh .qr{grid-template-columns:repeat(21,1fr);gap:0;width:var(--q,6em);height:auto;aspect-ratio:1;padding:.35em}
.jzh .fin{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.9em;text-align:center;pointer-events:none}
@keyframes jz-outA{to{opacity:0;transform:scale(.97)}}
@keyframes jz-tmr{to{width:22%}}
.jzh .film.paused .stage *{animation-play-state:paused!important}
.jzh .tabs.lt button{border-color:var(--line);color:var(--muted)}
.jzh .tabs.lt button:hover{border-color:var(--mag);color:var(--wine)}
.jzh .tabs.lt button[aria-selected=true]{background:var(--plum);border-color:var(--plum);color:#fff}
.jzh .wgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.jzh .wcg{background:#fff;border:1px solid var(--line2);border-radius:20px;overflow:hidden;box-shadow:var(--shadow);transition:transform .3s var(--ease),box-shadow .3s}
.jzh .wcg:hover{transform:translateY(-6px);box-shadow:0 22px 44px -18px rgba(83,25,51,.32)}
.jzh .cvw{position:relative;background:#101820;line-height:0}
.jzh .cvw .cv{border-radius:0}
.jzh .wcm{padding:14px 18px 16px;display:flex;align-items:baseline;gap:4px 10px;flex-wrap:wrap}
.jzh .wcm b{font:700 18px var(--display)}
.jzh .wcm span{color:var(--muted);font-size:14.5px;flex:1;min-width:8em}
.jzh .tg{font:700 11px var(--body);font-style:normal;letter-spacing:.1em;text-transform:uppercase;color:var(--wine);border:1px solid var(--line);border-radius:99px;padding:.25em .75em}
.jzh .feat{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.jzh .feat span{display:inline-flex;gap:.5em;align-items:center;padding:.6em 1.1em;border-radius:99px;background:#fff;border:1px solid var(--line);font-weight:600;font-size:14.5px;color:var(--plum)}
.jzh .feat .ic{color:var(--mag)}
.jzh .steps3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:28px}
@media(max-width:1000px){.jzh .wgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.jzh .wgrid{grid-template-columns:1fr}}
@media(max-width:800px){.jzh .steps3{grid-template-columns:1fr}}

.jzh .spkh .spk,.jzh .spkh .rng{left:50%}.jzh .spkh .spk{top:0}.jzh .spkh .rng{top:0}
/*css4*/
.jzh .browser{color:var(--ink)}
.jzh .fcs{display:flex;align-items:center}
.jzh .fcs .fc{margin-left:-.55em;box-shadow:0 0 0 .18em #fff}
.jzh .fcs .fc:first-child{margin-left:0}
.jzh .kcx{display:flex;align-items:center;gap:.6em;background:#fff;border:1px solid var(--pline);border-radius:.75em;padding:.5em .65em;margin-bottom:.5em;animation:jz-rise .5s var(--ease) var(--d,0s) both;box-shadow:0 .5em 1.1em -.8em rgba(0,0,0,.5)}
.jzh .kcx b{display:block;font-size:.95em;line-height:1.2}
.jzh .kcx small{display:block;color:var(--ink2);font-size:.78em}
.jzh .kcx em{font-style:normal;font-weight:800;color:var(--wine);margin-left:auto;font-size:.88em;white-space:nowrap}
.jzh .kcx.ok{border-color:#9AD6BB;background:#F2FBF7}
.jzh .kbw{padding:.7em .8em .8em;flex:1;min-height:0;display:flex;flex-direction:column;gap:.5em}
.jzh .kbw.r2{flex-direction:row}
.jzh .kbw .cols4{flex:1;min-height:0;align-items:stretch}
.jzh .kbw .kb{min-height:0}
.jzh .brf{flex:1;min-height:0;display:flex;flex-direction:column}
.jzh .stt{background:rgba(255,255,255,.1);border:1px solid #ffffff2a;border-radius:.9em;padding:.55em .9em;color:#fff;animation:jz-rise .5s var(--ease) var(--d,0s) both}
.jzh .stt small{display:block;color:#E8D5E0;font-size:.8em}
.jzh .stt b{font:800 1.75em/1.1 var(--display);display:block}
.jzh .tlr{display:flex;gap:.8em;align-items:flex-start;position:relative;padding-bottom:.85em;animation:jz-rise .5s var(--ease) var(--d,0s) both}
.jzh .tlr::before{content:"";position:absolute;left:1.05em;top:2.3em;bottom:.1em;width:2px;background:var(--line)}
.jzh .tlr:last-child::before{display:none}
.jzh .tlr .ti{width:2.1em;height:2.1em;border-radius:50%;background:var(--tint2);color:var(--wine);display:grid;place-items:center;flex:none}
.jzh .tlr b{display:block}
.jzh .tlr small{color:var(--ink2)}
.jzh .nd{background:#fff;color:var(--ink);border-radius:.9em;padding:.7em .9em;font-weight:700;display:flex;align-items:center;gap:.6em;animation:jz-rise .5s var(--ease) var(--d,0s) both;box-shadow:0 1em 2.2em -1em rgba(0,0,0,.6)}
.jzh .nd.slow{outline:.17em solid var(--amber)}
.jzh .nd small{font-weight:500;color:var(--ink2);display:block}
.jzh .ndr{display:flex;align-items:center;gap:.5em;justify-content:center}
.jzh .flow5{display:flex;align-items:stretch;gap:.4em}
.jzh .flow5>.nd{flex:1;flex-direction:column;text-align:center;justify-content:center;padding:.9em .5em;gap:.3em}
.jzh .flow5>.ar2{align-self:center;color:#E8D5E0}
.jzh .flow5 .ic{width:1.7em;height:1.7em;color:var(--wine)}
.jzh .dcx{background:#fff;color:var(--ink);border-radius:.9em;padding:.65em .85em;display:flex;gap:.7em;align-items:center;animation:jz-rise .55s var(--ease) var(--d,0s) both;box-shadow:0 .9em 2em -1em rgba(0,0,0,.6)}
.jzh .dcx .ic{width:1.5em;height:1.5em;color:var(--wine);flex:none}
.jzh .dcx b{display:block;font-size:.95em}
.jzh .dcx small{color:var(--ink2)}
.jzh .scan{position:absolute;left:-.5em;right:-.5em;height:.18em;background:linear-gradient(90deg,transparent,#F0A6CB,transparent);animation:jz-scanY 1.8s var(--d,0s) ease-in-out 2 both}
@keyframes jz-scanY{0%{top:0;opacity:0}15%{opacity:1}85%{opacity:1}100%{top:100%;opacity:0}}
.jzh .tt2{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7em}
.jzh .tt2 .jz-card{display:flex;flex-direction:column;align-items:flex-start;gap:.35em}
.jzh .tt2 .jz-card .ic{width:1.9em;height:1.9em;color:var(--wine)}
.jzh .tt2 .jz-card b{font-size:1.05em}
.jzh .spk2{display:block;width:100%;height:1.8em}
.jzh .spk2 path{fill:none;stroke:#AB2379;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;clip-path:inset(-30% 100% -30% -2%);animation:jz-rvl 1.6s var(--d,.5s) ease-out forwards}
.jzh .stack{display:flex}
.jzh .stack .fc{margin-left:-.55em;box-shadow:0 0 0 .18em #fff}
.jzh .stack .fc:first-child{margin-left:0}
.jzh .cand{position:relative;display:grid;place-items:center;background:#23142B;border-radius:1em;min-height:8em;color:#fff;overflow:hidden}
.jzh .cand .nm{position:absolute;left:.8em;bottom:.6em;font-size:.8em;color:#E8D5E0}
.jzh .cand .rec{position:absolute;right:.8em;top:.7em;font-size:.72em;display:flex;gap:.35em;align-items:center}
.jzh .cand .rec i{width:.6em;height:.6em;border-radius:50%;background:#e5484d;animation:jz-pulse 1.2s infinite}
.jzh .crow{display:grid;grid-template-columns:2.2fr 1.5fr 1.2fr;gap:.7em;align-items:center;padding:.5em .2em;border-bottom:1px solid var(--pline);animation:jz-rise .5s var(--ease) var(--d,0s) both}
.jzh .crow.hd{font:700 .7em var(--body);letter-spacing:.1em;text-transform:uppercase;color:var(--ink2);animation:none}
.jzh .crow .bar{flex:1}
.jzh .mtt{display:flex;gap:.5em;align-items:center}
.jzh .tmr{font:700 .82em var(--display);color:#fff;background:#ffffff22;border-radius:99px;padding:.2em .8em}
@media (prefers-reduced-motion:reduce){.jzh .offr,.jzh .nt,.jzh .meterw{display:none}.jzh .scan{display:none}.jzh .spk2 path{clip-path:none;animation:none}}
@container (max-width:700px){.jzh .flow5{gap:.25em}.jzh .flow5>.ar2{display:none}.jzh .flow5>.nd{font-size:.72em;padding:.7em .2em}.jzh .flow5 .ic{width:1.4em;height:1.4em}.jzh .tt2{grid-template-columns:repeat(2,minmax(0,1fr))}.jzh .crow{grid-template-columns:1.8fr 1fr}.jzh .crow>:nth-child(2){display:none}
.jzh .kcx{flex-direction:column;text-align:center;gap:.2em;padding:.4em .2em}.jzh .kcx small,.jzh .kcx em{display:none}.jzh .kcx b{font-size:.78em}.jzh .kbw .cols4{gap:.3em}.jzh .kb{padding:.35em}
.jzh .full>.cols4{grid-template-columns:repeat(2,minmax(0,1fr))}
.jzh .kbw.r2{flex-direction:column;gap:.6em}.jzh .kbw.r2>.jz-col:first-child .fc,.jzh .kbw.r2>.jz-col:first-child>b{display:none}.jzh .kbw.r2 .rs.xxl{width:5.4em;height:5.4em}.jzh .kbw.r2 small{display:none}
.jzh .pk0{flex:0 0 7em!important;flex-direction:row!important;gap:.6em!important;padding:.4em!important}.jzh .pk0 .vl,.jzh .pk0 .meter,.jzh .pk0>.jz-row:first-child{display:none}.jzh .pk0 .orb{transform:scale(.55)}}

.jzh .plans{max-width:none}
.jzh #fChore.film.split{display:flex;flex-direction:column;align-items:stretch;gap:22px}
.jzh #fChore.film.split .frame{order:1}
.jzh #fChore.film.split .chap{order:2;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0}
.jzh #fChore .chap.list .ch{border:1px solid var(--line2);background:#fff;padding:14px 16px 16px;flex-direction:column}
.jzh #fChore .chap.list .ch[aria-current=true]{border-color:var(--mag);box-shadow:var(--shadow)}
.jzh #fChore .chap.list .ch b{font-size:16px}
.jzh #fChore .chap.list .ch span.d{display:none}
.jzh #fChore .chap.list .fill{left:16px;width:calc(var(--p,0)*(100% - 32px))}
@media(max-width:900px){.jzh #fChore.film.split .chap{grid-template-columns:repeat(2,minmax(0,1fr))}}
/*end-css4*/
/*css5*/
/* ===== calm pass: fewer colours, still alive. Gradient stays on headline accents, progress lines, orbs and rings. Everything else goes solid and quiet. ===== */
/* calm pass, retired here (D-340): .jzh .dk::before{background:radial-gradient(42% 60% at 88% 8%,rgba(171,35,121,.16),transparent 72%)} */
.jzh .dk::before{background:radial-gradient(48% 62% at 90% 4%,rgba(171,35,121,.42),transparent 70%),radial-gradient(42% 58% at 4% 98%,rgba(123,18,70,.5),transparent 70%)}
.jzh .frame{background:radial-gradient(50% 64% at 86% 4%,rgba(171,35,121,.5),transparent 70%),radial-gradient(44% 58% at 4% 98%,rgba(123,18,70,.55),transparent 70%),linear-gradient(160deg,#23142B 0%,#23142B 50%,rgba(123,18,70,.6) 140%),#23142B;box-shadow:0 0 0 1px rgba(255,255,255,.1),inset 0 1px 0 rgba(255,255,255,.14),0 40px 80px -46px rgba(20,10,26,.75)}
/* calm pass, retired here (D-340): .jzh .canadaband::before{background:radial-gradient(42% 60% at 88% 12%,rgba(171,35,121,.16),transparent 72%)} */
.jzh .canadaband::before{background:radial-gradient(48% 62% at 88% 10%,rgba(171,35,121,.42),transparent 70%),radial-gradient(42% 58% at 8% 96%,rgba(123,18,70,.5),transparent 70%)}
.jzh .glow{background:radial-gradient(45% 60% at 50% 45%,rgba(226,123,177,.15),transparent 70%)}
.jzh .tc.w::before,.jzh .wnext::before{background:radial-gradient(60% 80% at 100% 0,rgba(171,35,121,.16),transparent 70%)}
.jzh .orb{box-shadow:0 0 2.4em rgba(171,35,121,.32)}
.jzh .fc.ring{box-shadow:0 0 0 .2em #fff,0 0 0 .34em rgba(171,35,121,.5)}
.jzh .bar i{background:linear-gradient(90deg,var(--wine),var(--mag))}
.jzh .bar.ok i{background:var(--ok)}
.jzh .bar.am i{background:#C9B3C0}
.jzh .chip.am,.jzh .tag.am{background:var(--tint2);color:var(--ink2)}
.jzh .chip.sel{background:var(--wine)}
.jzh .btnx.m,.jzh .btn2.m{background:var(--wine)}
/* retired 2026-10-09 (founder walk, D-313: gradients, not one flat colour): .jzh .bub.me,.jzh .ts.ai,.jzh .gb .r{background:var(--wine)} */
.jzh .pts .tk,.jzh .stp .n{background:var(--wine)}
.jzh .bars6 i{background:var(--wine)}
.jzh .rs.am{--c:#C9B3C0}
.jzh .jrow .am{color:var(--ink2)}
.jzh .lock{border-color:#C9B3C0;color:var(--ink2)}
.jzh .nt .bd.am{background:#8E7A88}
.jzh .meter i{background:linear-gradient(90deg,#D64545,#E27B7B)}
.jzh .hl{background:linear-gradient(transparent 55%,#F2E7EF 55%) 0 0/0 100% no-repeat}
.jzh .chap.pills .fill{background:rgba(255,255,255,.14)}
.jzh .chap.pills.lt .fill{background:rgba(123,18,70,.1)}
.jzh .chap.pills .ch[aria-current=true]{border-color:#8E6A80}
.jzh .chap.pills.lt .ch[aria-current=true]{border-color:var(--wine)}
.jzh .thumb.on{border-color:var(--wine)}
.jzh .spk i{background:linear-gradient(#F2E7EF,rgba(226,123,177,0))}
.jzh .sc small,.jzh .jz-card small{color:var(--ink2)}
.jzh .glass small{color:#E8D5E0}

/* ===== recruitment ===== */
.jzh .rc8{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:.6em}
.jzh .rcn{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:.5em;border-radius:.9em;padding:1.2em .35em 1em}
.jzh .rcn.ai{background:rgba(255,255,255,.08);border:1px solid #ffffff2a;color:#fff}
.jzh .rcn.you{background:#fff;color:var(--ink);box-shadow:0 .9em 2em -1em rgba(0,0,0,.6)}
.jzh .rci{width:2.1em;height:2.1em;display:grid;place-items:center;border-radius:50%}
.jzh .rcn.ai .rci{background:#ffffff1c}.jzh .rcn.you .rci{background:var(--tint2);color:var(--wine)}
.jzh .rcn b{font:700 .88em/1.2 var(--display)}
.jzh .rcw{display:flex;align-items:center;justify-content:center;gap:.3em;font-size:.78em;min-height:1.7em}
.jzh .sc .rcn small{font-size:1em;color:inherit;opacity:.85}
.jzh .rcn .tick{position:absolute;right:-.45em;top:-.45em}
.jzh .rtr{background:#ffffff22;height:.4em;flex:none}
.jzh .cand{background:#2E1D38;border:1px solid #ffffff1f}
.jzh .pscr{background:#F8F3F6;color:var(--ink);display:flex;flex-direction:column}
.jzh .slt{justify-content:center}
.jzh .slt[data-p]{animation:jz-rise .55s var(--ease) var(--d,0s) both,jz-pickit .3s var(--pd,3.3s) both}
@keyframes jz-pickit{to{background:var(--wine);color:#fff;border-color:var(--wine)}}
.jzh .wk{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.4em;margin-top:.6em}
.jzh .wkc{display:flex;flex-direction:column;gap:.3em}
.jzh .wkc small{text-align:center;font-weight:700}
.jzh .sl{display:flex;align-items:center;justify-content:center;gap:.3em;border:1px dashed var(--line);border-radius:.5em;padding:.35em .2em;font-size:.82em;color:var(--ink2);background:#fff;min-height:2.4em}
.jzh .sl em{font-style:normal}
.jzh .sl.bk{animation:jz-bkin .4s var(--d,0s) forwards}
.jzh .sl.bk .fc{animation:jz-zoom .4s var(--d,0s) both}
@keyframes jz-bkin{to{border:1px solid var(--wine);background:var(--tint);color:var(--wine);font-weight:700}}
.jzh .row2{display:flex;gap:.7em}
.jzh .row2>*{min-width:0}
.jzh .nbox{border:1px solid var(--line);border-radius:.8em;padding:.5em .85em;background:#fff;font-size:.95em}
.jzh .dots{display:inline-flex;gap:.2em}
.jzh .dots i{width:.7em;height:.7em;border-radius:50%;background:var(--tint2);display:inline-block}
.jzh .dots i.on{animation:jz-dotfill .3s var(--d,0s) both}
@keyframes jz-dotfill{from{background:var(--tint2);transform:scale(.6)}to{background:var(--wine);transform:scale(1)}}
.jzh .fscore{font:800 1.9em/1 var(--display);color:var(--ink)}
.jzh .fscore small{font-size:.45em;color:var(--ink2);margin-left:.15em}

/* ===== business chores, control room, how we work ===== */
.jzh .stars{display:inline-flex;gap:.1em}
.jzh .stars span{display:inline-flex}
.jzh .stars .ic{width:1.05em;height:1.05em;fill:none;stroke:#CDB9C5}
.jzh .stars .on .ic{fill:var(--wine);stroke:var(--wine)}
.jzh .hr2{display:flex;align-items:center;gap:.6em;border-top:1px solid var(--pline);padding:.25em 0;position:relative;min-height:1.9em}
.jzh .hr2 small{width:2.6em;flex:none}
.jzh .blk{flex:1;background:var(--tint2);color:var(--wine);border-radius:.4em;padding:.15em .5em;font-size:.82em;font-weight:600}
.jzh .blk.nw{position:absolute;left:3.2em;right:0;top:.1em;background:var(--wine);color:#fff;display:flex;align-items:center;gap:.4em}
.jzh .pcg{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.6em}
.jzh .pc{display:flex;flex-direction:column;gap:.35em;padding:.7em .75em;position:relative}
.jzh .pc>small{font-weight:700}
.jzh .pimg{height:3.6em;border-radius:.6em;background:var(--tint2);color:var(--wine);display:grid;place-items:center}
.jzh .pc b{font:700 .88em/1.25 var(--display)}
.jzh .pdone{position:absolute;right:.4em;top:.4em}
.jzh .shg{display:grid;grid-template-columns:5.2em repeat(5,minmax(0,1fr));gap:.4em .35em;align-items:center;margin-top:.6em}
.jzh .shh{text-align:center;font-weight:700}
.jzh .shn{display:flex;align-items:center;gap:.4em;font-size:.88em}
.jzh .shc{display:grid;min-height:1.9em}
.jzh .shc>*{grid-area:1/1}
.jzh .shp{display:flex;align-items:center;justify-content:center;border-radius:.5em;background:var(--tint2);color:var(--wine);font-size:.78em;font-weight:700;padding:.35em .2em;white-space:nowrap}
.jzh .shp.off{background:transparent;color:#B9A3B2;font-weight:500}
.jzh .shp.gone{animation:jz-shgone .5s 5.7s forwards}
@keyframes jz-shgone{to{opacity:0;transform:scale(.8)}}
.jzh .shp.nw{background:var(--wine);color:#fff}
.jzh .rcpt{position:relative;background:#fff;border-radius:.3em;padding:.8em .8em 1em;font:500 .74em/1.55 'Courier New',monospace;overflow:hidden;box-shadow:0 .6em 1.4em -.8em rgba(0,0,0,.5)}
.jzh .rcpt b{display:block;text-align:center;font:700 1.1em 'Courier New',monospace}
.jzh .rcpt small{display:block;text-align:center;color:#666;margin-bottom:.4em;font-size:1em}
.jzh .rrow{display:flex;justify-content:space-between}
.jzh .rrow.tot{border-top:1px dashed #999;margin-top:.3em;padding-top:.3em;font-weight:700}
.jzh .met4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.6em}
.jzh .mt4{padding:.6em .8em;box-shadow:none;border:1px solid var(--pline)}
.jzh .mt4.hl{border-color:var(--wine);background:var(--tint)}
.jzh .qrow{display:flex;align-items:center;gap:.5em;background:#fff;border:1px solid var(--pline);border-radius:.7em;padding:.5em .6em;position:relative;animation:jz-rise .5s var(--ease) var(--d,0s) both,jz-qdone .5s var(--ap,3s) forwards}
.jzh .cur.tmp{animation:jz-curmove 1.2s var(--ease) var(--d) both,jz-outA .3s calc(var(--d) + 1.7s) forwards}
.jzh .qrow>.sp,.jzh .qrow>.qi{animation:jz-qdim .5s var(--ap,3s) forwards}
@keyframes jz-qdim{to{opacity:.5}}
.jzh .qrow b{display:block;font-size:.84em;line-height:1.2}
.jzh .qrow small{font-size:.72em}
.jzh .qi{width:1.9em;height:1.9em;border-radius:50%;background:var(--tint2);color:var(--wine);display:grid;place-items:center;flex:none}
.jzh .apb{font-size:.74em;font-weight:700;padding:.35em .7em;border-radius:99px;background:var(--wine);color:#fff;animation:jz-outA .2s var(--ap) forwards}
.jzh .apt{position:absolute;right:.6em}
@keyframes jz-qdone{to{background:#F7F3F6}}
.jzh .xfi{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;gap:.6em}
.jzh .tgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:.7em;flex:1;min-height:0}
.jzh .tgrid .cand{min-height:0}
@media (prefers-reduced-motion:reduce){.jzh .fin.cfp,.jzh .cur.tmp,.jzh .xfi:first-child{display:none}.jzh .qrow{opacity:.5}.jzh .apb{display:none}.jzh .sl.bk{border:1px solid var(--wine);background:var(--tint)}.jzh .slt[data-p]{background:var(--wine);color:#fff}.jzh .shp.gone{display:none}.jzh .dots i.on{background:var(--wine)}}
@container (max-width:700px){.jzh .rcsc{flex:0 0 9.6em!important}.jzh .rcsc .phone{width:9.2em!important;padding:.6em .5em!important}.jzh .rcdet .jz-card{min-width:0}.jzh .rc8{grid-template-columns:repeat(4,minmax(0,1fr))}.jzh .met4{grid-template-columns:repeat(2,minmax(0,1fr))}.jzh .pcg{grid-template-columns:repeat(3,minmax(0,1fr))}.jzh .pcg>:nth-child(n+4){display:none}.jzh .row2{gap:.5em}.jzh .shg{grid-template-columns:4em repeat(5,minmax(0,1fr))}.jzh .shn .fc{display:none}}
/*end-css5*/
