/* Careers (Chris 03/11/2026): the founder letter on /careers, and the four JD pages, which read like a PDF
   (paper pages, page numbers, a contents list) while each page is built like a landing section.
   Colour only from the kit's --gw-* tokens, so light and dark follow the site. Sizes, spacing and radii stay on the
   design-language scales (audit-design-language.mjs). */
:root{
  --cx-page-shadow:0 1px 2px rgba(20,22,30,.05),0 16px 40px rgba(20,22,30,.08);
  --cx-well:color-mix(in srgb,var(--gw-bg-soft) 78%,var(--gw-line-strong));
  --cx-partner:color-mix(in srgb,var(--gw-success) 45%,var(--gw-surface));
  --cx-hand:"Caveat","Segoe Script","Bradley Hand",cursive;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--cx-page-shadow:0 1px 2px rgba(0,0,0,.5),0 16px 40px rgba(0,0,0,.45)}}
:root[data-theme="dark"]{--cx-page-shadow:0 1px 2px rgba(0,0,0,.5),0 16px 40px rgba(0,0,0,.45)}

.cx-ico{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.cx-ic{width:40px;height:40px;border-radius:12px;background:var(--gw-accent-soft);color:var(--gw-accent-strong);display:inline-flex;align-items:center;justify-content:center;margin-bottom:8px}
.cx-mini{margin:0;font-size:11px;font-weight:500;line-height:1.4;letter-spacing:.06em;text-transform:uppercase;color:var(--gw-muted);font-family:var(--gw-font-mono)}
.cx-stack{display:flex;flex-direction:column;gap:12px}

/* ── The founder letter (hub and page 2 of every JD) ── */
.cx-letter-grid{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:64px;align-items:start}
.cx-letter-side{position:sticky;top:96px}
.cx-letter-side .cr-photo{margin-top:32px}
.cx-letter-side .cr-photo img{aspect-ratio:4/5;object-position:50% 68%}
.cx-letter{position:relative;background:var(--gw-surface);border:1px solid var(--gw-line);border-radius:16px;padding:48px 48px 40px;box-shadow:var(--gw-shadow)}
.cx-l-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;padding-bottom:24px;border-bottom:1px solid var(--gw-line)}
.cx-l-meta{display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px 16px;margin:0;font-size:14px}
.cx-l-meta dt{font-family:var(--gw-font-mono);font-size:11px;line-height:1.9;letter-spacing:.06em;text-transform:uppercase;color:var(--gw-muted)}
.cx-l-meta dd{margin:0;font-weight:500;color:var(--gw-ink)}
.cx-l-re{font-size:24px;font-weight:600;letter-spacing:-.025em;line-height:1.25;margin:24px 0 0;color:var(--gw-ink);text-wrap:balance}
.cx-stamp{width:92px;height:92px;color:var(--gw-accent);transform:rotate(9deg);flex:none;opacity:.75}
.cx-stamp text{fill:currentColor;font-family:var(--gw-font-mono);font-weight:700}
.cx-stamp__ring{font-size:11px;letter-spacing:.14em}
.cx-stamp__date{font-size:13px}
.cx-stamp__city{font-size:11px;font-weight:500;letter-spacing:.12em}
.cx-l-body{display:flex;flex-direction:column;gap:16px;margin-top:24px;font-size:18px;line-height:1.7;color:var(--gw-ink-2);max-width:62ch}
.cx-l-body p{margin:0}
.cx-l-body b{color:var(--gw-ink);font-weight:600}
.cx-l-body .cx-sign{font-family:var(--cx-hand);font-size:48px;font-weight:600;line-height:1;color:var(--gw-accent-strong);transform:rotate(-4deg);transform-origin:left;margin-top:8px}
.cx-l-body .cx-sign-sub{font-size:14px;line-height:1.5;color:var(--gw-muted);margin-top:8px}
.cx-l-foot{margin-top:32px;padding-top:20px;border-top:1px solid var(--gw-line);font-size:14px;color:var(--gw-muted)}
.cx-l-foot b{color:var(--gw-ink);font-weight:600}
@media(max-width:960px){.cx-letter-grid{grid-template-columns:minmax(0,1fr);gap:32px}.cx-letter-side{position:static}.cx-letter-side .cr-photo{max-width:340px}}
@media(max-width:640px){.cx-letter{padding:32px 20px 24px}.cx-stamp{width:64px;height:64px}.cx-l-body{font-size:16px}}

.cr-card .foot b{font-weight:600}

/* Hiring steps: a real sequence, so numbered */
.cx-steps{list-style:none;margin:48px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px}
.cx-steps li{display:flex;flex-direction:column;gap:8px;padding-top:20px;border-top:1px solid var(--gw-line-strong);min-width:0}
.cx-steps__n{font-family:var(--gw-font-mono);font-size:12px;font-weight:500;color:var(--gw-accent-strong)}
.cx-steps b{font-size:18px;font-weight:600;letter-spacing:-.01em;color:var(--gw-ink)}
.cx-steps li>span:last-child{font-size:16px;line-height:1.55;color:var(--gw-muted)}
@media(max-width:900px){.cx-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.cx-steps{grid-template-columns:minmax(0,1fr);gap:20px}}
.cx-final__in{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:32px}
.cx-final .sub-hero__cta{margin-top:0}

/* ── JD viewer ── */
.cx-jd{background:var(--cx-well);padding-bottom:64px}
/* The JD is a document page (no marketing header, Chris 03/11/2026): one slim bar with the logo home, the way back to
   /careers, the page counter, Share, Save as PDF and Apply. */
.cx-doc-bar{position:sticky;top:env(safe-area-inset-top,0px);z-index:40;background:color-mix(in srgb,var(--gw-surface) 92%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--gw-line)}
.cx-doc-bar__in{display:flex;align-items:center;gap:12px;min-height:56px;max-width:1080px;margin:0 auto;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}
.cx-doc-bar__brand{display:inline-flex;align-items:center;gap:8px;min-height:44px;color:var(--gw-ink);text-decoration:none;font-size:16px;font-weight:650;letter-spacing:-.02em}
.cx-doc-bar__mark{width:24px;height:28px;flex:none}
.cx-doc-bar__sep{color:var(--gw-line-strong);font-size:14px}
.cx-doc-bar__crumb{display:inline-flex;align-items:center;min-height:44px;font-size:14px;font-weight:500;color:var(--gw-muted);text-decoration:none}
.cx-doc-bar__crumb:hover{color:var(--gw-ink)}
.cx-doc-bar__title{flex:1;min-width:0;font-size:14px;font-weight:500;color:var(--gw-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cx-doc-bar__pg{font-family:var(--gw-font-mono);font-size:12px;color:var(--gw-muted);white-space:nowrap;font-variant-numeric:tabular-nums}
.cx-doc-bar .gw-btn{height:36px;padding:0 16px;font-size:13px}
@media(max-width:860px){.cx-doc-bar__pg,.cx-doc-bar__pdf{display:none}}
@media(max-width:640px){.cx-doc-bar__sep,.cx-doc-bar__title{display:none}.cx-doc-bar__crumb{margin-right:auto}.cx-doc-bar__brand span{display:none}.cx-doc-bar__in{gap:8px}}
.cx-jd-layout{display:grid;grid-template-columns:176px minmax(0,1fr);gap:40px;max-width:1080px;margin:0 auto;padding-top:40px}
/* Contents rail: the page names themselves, numbered like the pages (a PDF viewer's outline), the page in view marked. */
.cx-outline{position:sticky;top:96px;align-self:start;display:flex;flex-direction:column;gap:12px}
.cx-outline ol{list-style:none;margin:0;padding:0;border-left:1px solid var(--gw-line-strong)}
.cx-outline a{display:flex;align-items:baseline;gap:12px;min-height:32px;padding:6px 0 6px 16px;margin-left:-1px;border-left:2px solid transparent;font-size:14px;line-height:1.35;color:var(--gw-muted);text-decoration:none}
.cx-outline a span{font-family:var(--gw-font-mono);font-size:11px;color:var(--gw-muted);font-variant-numeric:tabular-nums}
.cx-outline a:hover{color:var(--gw-ink)}
.cx-outline a.is-on{color:var(--gw-ink);font-weight:600;border-left-color:var(--gw-accent)}
.cx-outline a.is-on span{color:var(--gw-accent-strong)}
.cx-pages{display:flex;flex-direction:column;gap:32px;align-items:center;min-width:0}
.cx-page{width:100%;max-width:860px;background:var(--gw-surface);color:var(--gw-ink);box-shadow:var(--cx-page-shadow);border-radius:4px;display:flex;flex-direction:column;min-height:1040px;overflow:hidden;scroll-margin-top:80px}
.cx-p-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:24px 48px 0;font-family:var(--gw-font-mono);font-size:11px;line-height:1.3;color:var(--gw-muted);letter-spacing:.05em;text-transform:uppercase}
.cx-p-head__l{display:flex;align-items:center;gap:8px}
.cx-p-head svg{width:14px;height:16px;color:var(--gw-ink)}
.cx-p-body{flex:1;padding:48px 48px 48px;display:flex;flex-direction:column;gap:32px}
.cx-p-foot{display:flex;justify-content:space-between;gap:12px;padding:16px 48px 24px;border-top:1px solid var(--gw-line);font-family:var(--gw-font-mono);font-size:11px;line-height:1.3;color:var(--gw-muted)}
.cx-h{font-size:clamp(30px,3.4vw,44px);font-weight:600;letter-spacing:-.03em;line-height:1.08;text-wrap:balance;margin:-12px 0 0;color:var(--gw-ink)}
.cx-dim{color:var(--gw-muted)}
.cx-sub{font-size:18px;line-height:1.55;color:var(--gw-muted);max-width:56ch;margin:-12px 0 0}
.cx-h3{font-size:20px;font-weight:600;letter-spacing:-.02em;margin:0;color:var(--gw-ink)}
.cx-aside{font-size:16px;margin:0;color:var(--gw-muted)}
@media(max-width:1020px){.cx-jd-layout{grid-template-columns:minmax(0,1fr)}.cx-outline{display:none}}
@media(max-width:700px){.cx-page{min-height:0}.cx-p-head,.cx-p-body,.cx-p-foot{padding-left:20px;padding-right:20px}.cx-p-head__r{display:none}.cx-p-body{padding-top:32px;gap:24px}}

/* Page 1: cover */
.cx-cover-img{position:relative;aspect-ratio:2/1;margin-top:24px;background:var(--gw-bg-soft)}
.cx-cover-img img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover}
.cx-cover-img__tags{position:absolute;left:48px;bottom:20px;display:flex;gap:6px;flex-wrap:wrap}
/* White chips sit on a photo, so they keep one colour in both themes on purpose. */
.cx-tag{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:6px 8px;border-radius:8px;background:#ffffff;color:#1b1c1e;font-size:12px;font-weight:500;line-height:16px}
.cx-tag.is-live::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--gw-success-strong)}
.cx-cover-title{font-size:clamp(40px,5.2vw,60px);font-weight:600;letter-spacing:-.04em;line-height:1.02;margin:-12px 0 0;color:var(--gw-ink);text-wrap:balance}
.cx-cover-pitch{font-size:20px;line-height:1.5;color:var(--gw-muted);max-width:42ch;margin:-12px 0 0}
.cx-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:32px;margin:0;border-top:1px solid var(--gw-line)}
.cx-facts div{padding:16px 0;border-bottom:1px solid var(--gw-line);display:flex;flex-direction:column;gap:4px;min-width:0}
.cx-facts dt{font-size:12px;color:var(--gw-muted)}
.cx-facts dd{margin:0;font-size:16px;font-weight:500;line-height:1.4;color:var(--gw-ink)}
.cx-toc{display:flex;flex-direction:column;margin-top:8px}
.cx-toc a{display:flex;align-items:baseline;gap:8px;color:var(--gw-ink);text-decoration:none;font-size:14px;padding:4px 0}
.cx-toc a::after{content:"";order:2;flex:1;border-bottom:1px dotted var(--gw-line-strong);transform:translateY(-4px)}
.cx-toc a em{order:3;font-family:var(--gw-font-mono);font-size:12px;font-style:normal;color:var(--gw-muted)}
.cx-toc a:hover{color:var(--gw-accent-strong)}
.cx-cover-foot{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:end;margin-top:auto}
.cx-read{font-size:14px;color:var(--gw-muted);display:flex;flex-direction:column;gap:16px;align-items:flex-start}
.cx-read p{margin:0}
@media(max-width:700px){.cx-cover-img{aspect-ratio:16/10}.cx-cover-img__tags{left:20px}.cx-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.cx-cover-foot{grid-template-columns:minmax(0,1fr)}}

/* Page 2: letter */
.cx-lp{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:32px;align-items:start}
.cx-lp .cx-letter{padding:32px 32px 32px;box-shadow:none}
.cx-lp__photo{margin:0}
.cx-lp__photo img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:50% 68%;border-radius:12px;border:1px solid var(--gw-line)}
.cx-lp__photo figcaption{margin-top:12px;font-size:13px;color:var(--gw-muted)}
@media(max-width:760px){.cx-lp{grid-template-columns:minmax(0,1fr)}.cx-lp__photo{max-width:200px}.cx-lp .cx-letter{padding:24px 20px}}

/* Page 3: why */
.cx-why{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.cx-why div{padding-top:16px;border-top:1px solid var(--gw-line-strong);display:flex;flex-direction:column;gap:8px;min-width:0}
.cx-why b{font-size:18px;font-weight:600;line-height:1.3;letter-spacing:-.01em;color:var(--gw-ink)}
.cx-why span{font-size:16px;line-height:1.55;color:var(--gw-muted)}
.cx-fw{width:100%;max-width:640px;margin:0 auto;display:block;overflow:visible}
.cx-fw .ring{fill:none;stroke:var(--gw-accent-soft);stroke-width:12}
.cx-fw .arrow{fill:var(--gw-accent)}
.cx-fw .node{fill:var(--gw-surface);stroke:var(--gw-ink);stroke-width:1.5}
.cx-fw .center{fill:var(--gw-accent-soft)}
.cx-fw text{font-family:var(--gw-font)}
.cx-fw .w{fill:var(--gw-ink);font-size:14px;font-weight:600}
.cx-fw .s{fill:var(--gw-muted);font-size:13px}
.cx-fw .c1{fill:var(--gw-ink);font-size:16px;font-weight:600}
.cx-fw .c2{fill:var(--gw-muted);font-size:12px}
.cx-fw-list{display:none;list-style:none;margin:0;padding:0;flex-direction:column;counter-reset:f}
.cx-fw-list li{counter-increment:f;display:grid;grid-template-columns:32px minmax(0,1fr);gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--gw-line);font-size:14px;color:var(--gw-muted)}
.cx-fw-list li::before{content:counter(f);width:28px;height:28px;border-radius:50%;border:1.5px solid var(--gw-ink);color:var(--gw-ink);font-size:13px;font-weight:600;line-height:25px;text-align:center}
.cx-fw-list b{display:block;color:var(--gw-ink);font-size:16px;font-weight:600}
.cx-fw-list li.is-back{display:block;border:0;padding:4px 0 0 48px;font-family:var(--gw-font-mono);font-size:12px;color:var(--gw-accent-strong)}
.cx-fw-list li.is-back::before{content:none}
@media(max-width:700px){.cx-fw-wrap{display:none}.cx-fw-list{display:flex}}
.cx-quote{border-left:2px solid var(--gw-accent);padding:2px 0 2px 20px;font-size:24px;line-height:1.4;letter-spacing:-.02em;font-weight:600;max-width:34ch;margin:0;color:var(--gw-ink)}
@media(max-width:700px){.cx-why{grid-template-columns:minmax(0,1fr);gap:20px}.cx-quote{font-size:20px}}

/* Page 4: own */
.cx-pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.cx-pillar{display:flex;flex-direction:column;gap:8px;min-width:0}
.cx-pillar ul{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:12px}
.cx-pillar li{position:relative;padding-left:16px;font-size:16px;line-height:1.55;color:var(--gw-ink-2)}
.cx-pillar li::before{content:"";position:absolute;left:0;top:9px;width:6px;height:6px;border-radius:2px;background:var(--gw-accent)}
.cx-week{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-top:1px solid var(--gw-line-strong)}
.cx-week div{padding:16px 16px 0 0;display:flex;flex-direction:column;gap:6px;min-width:0}
.cx-week b{font-family:var(--gw-font-mono);font-size:11px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--gw-muted)}
.cx-week span{font-size:16px;line-height:1.45;font-weight:500;color:var(--gw-ink)}
.cx-week div:nth-child(3) b{color:var(--gw-accent-strong)}
@media(max-width:760px){.cx-pillars{grid-template-columns:minmax(0,1fr);gap:24px}.cx-week{grid-template-columns:minmax(0,1fr)}.cx-week div{flex-direction:row;gap:16px;align-items:baseline;padding:12px 0;border-bottom:1px solid var(--gw-line)}.cx-week b{width:32px;flex:none}}

/* Page 5: scoreboard */
.cx-score{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.cx-tile{display:flex;flex-direction:column;gap:8px;padding-top:16px;border-top:1px solid var(--gw-line-strong);min-width:0}
.cx-tile p{margin:0}
.cx-tile__big{font-size:48px;font-weight:600;letter-spacing:-.04em;line-height:1;font-variant-numeric:tabular-nums;color:var(--gw-ink)}
.cx-tile__unit{font-size:16px;color:var(--gw-muted)}
.cx-tile dl{margin:8px 0 0}
.cx-tile dl div{display:grid;grid-template-columns:72px minmax(0,1fr);gap:12px;padding:8px 0;border-top:1px solid var(--gw-line);font-size:14px;line-height:1.45}
.cx-tile dt{font-family:var(--gw-font-mono);font-size:11px;line-height:1.9;color:var(--gw-muted);text-transform:uppercase;letter-spacing:.04em}
.cx-tile dd{margin:0;font-weight:500;color:var(--gw-ink)}
.cx-tile__def{font-size:13px;color:var(--gw-muted)}
.cx-bridge{display:grid;grid-template-columns:minmax(0,1.3fr) repeat(2,minmax(0,.6fr));border-radius:16px;overflow:hidden}
.cx-bridge div{padding:24px;min-width:0}
.cx-bridge div+div{border-left:1px solid var(--gw-line)}
.cx-bridge p{margin:0}
.cx-bridge h3{font-size:20px;font-weight:600;letter-spacing:-.02em;margin:6px 0 0;color:var(--gw-ink)}
.cx-bridge h3+p{font-size:14px;color:var(--gw-muted);margin-top:6px}
.cx-bridge b{display:block;font-size:36px;font-weight:600;letter-spacing:-.03em;font-variant-numeric:tabular-nums;line-height:1.1;margin-top:6px;color:var(--gw-ink)}
@media(max-width:760px){.cx-score{grid-template-columns:minmax(0,1fr);gap:24px}.cx-bridge{grid-template-columns:repeat(2,minmax(0,1fr))}.cx-bridge div:first-child{grid-column:1/-1}.cx-bridge div+div{border-left:0;border-top:1px solid var(--gw-line)}.cx-bridge div:last-child{border-left:1px solid var(--gw-line)}}

/* Page 6: earn */
.cx-layers{display:flex;flex-direction:column;border-top:1px solid var(--gw-line-strong)}
.cx-layer{display:grid;grid-template-columns:12px 192px minmax(0,1fr);gap:20px;padding:20px 0;border-bottom:1px solid var(--gw-line);align-items:start}
.cx-layer p{margin:0}
.cx-layer__bar{width:4px;border-radius:2px;background:var(--gw-line-strong);align-self:stretch;min-height:40px}
.cx-layer:nth-child(1) .cx-layer__bar{background:var(--gw-ink)}
.cx-layer:nth-child(2) .cx-layer__bar{background:var(--gw-accent)}
.cx-layer:nth-child(3) .cx-layer__bar{background:var(--gw-success)}
.cx-layer__v{font-size:18px;font-weight:600;letter-spacing:-.015em;line-height:1.3;margin-top:4px;color:var(--gw-ink)}
.cx-layer__s{font-size:16px;color:var(--gw-muted);line-height:1.6}
.cx-layer__s b{color:var(--gw-ink);font-weight:600}
.cx-calc{border-radius:16px;background:var(--gw-bg-soft);padding:24px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.95fr);gap:32px;align-items:center}
.cx-calc__ctl{display:flex;flex-direction:column;gap:20px;min-width:0}
.cx-calc label{display:flex;flex-direction:column;gap:8px;font-size:14px;font-weight:500;color:var(--gw-ink)}
.cx-calc__row{display:flex;justify-content:space-between;gap:12px;font-weight:400;color:var(--gw-muted);font-size:13px}
.cx-calc output{font-family:var(--gw-font-mono);font-size:13px;font-weight:600;color:var(--gw-ink);font-variant-numeric:tabular-nums}
.cx-calc input[type=range]{width:100%;accent-color:var(--gw-ink)}
.cx-calc select{font:inherit;font-size:14px;height:40px;border:1px solid var(--gw-line-strong);border-radius:8px;padding:0 12px;background:var(--gw-surface);color:var(--gw-ink)}
.cx-out{background:var(--gw-surface);border:1px solid var(--gw-line);border-radius:12px;padding:24px;display:flex;flex-direction:column;gap:4px;min-width:0}
.cx-out p{margin:0}
.cx-out__n{font-size:44px;font-weight:600;letter-spacing:-.04em;line-height:1.05;font-variant-numeric:tabular-nums;color:var(--gw-ink)}
.cx-out__n small{font-size:16px;font-weight:500;color:var(--gw-muted);letter-spacing:0}
.cx-out__vnd{font-size:14px;color:var(--gw-muted)}
.cx-out__y{font-size:14px;line-height:1.55;color:var(--gw-muted);margin-top:12px!important}
.cx-out__y b{color:var(--gw-ink)}
.cx-split{display:flex;height:6px;border-radius:999px;overflow:hidden;margin:12px 0 6px;background:var(--gw-line)}
.cx-split i{display:block;height:100%}
.cx-lg{display:flex;flex-wrap:wrap;gap:16px;font-size:12px;color:var(--gw-muted)}
.cx-lg span{display:inline-flex;align-items:center;gap:6px}
.cx-lg i{width:8px;height:8px;border-radius:2px;display:inline-block}
.is-community{background:var(--gw-success)}
.is-partner{background:var(--cx-partner)}
.cx-fine{grid-column:1/-1;font-size:13px;color:var(--gw-muted);margin:0}
@media(max-width:760px){.cx-layer{grid-template-columns:4px minmax(0,1fr);gap:4px 16px}.cx-layer__bar{grid-row:1/3}.cx-calc{grid-template-columns:minmax(0,1fr)}}

/* Page 7: you */
.cx-must{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.cx-must li{display:grid;grid-template-columns:24px minmax(0,1fr);gap:16px;padding:16px 0;border-bottom:1px solid var(--gw-line);font-size:16px;line-height:1.55;color:var(--gw-ink)}
.cx-must li:first-child{border-top:1px solid var(--gw-line-strong)}
.cx-ck{width:24px;height:24px;border-radius:50%;background:var(--gw-accent-soft);color:var(--gw-accent-strong);display:flex;align-items:center;justify-content:center}
.cx-ck .cx-ico{width:14px;height:14px;stroke-width:2.6}
.cx-plus{display:flex;flex-wrap:wrap;gap:8px}
.cx-plus span{display:inline-flex;align-items:center;min-height:32px;padding:6px 12px;border-radius:999px;border:1px solid var(--gw-line-strong);font-size:14px;color:var(--gw-ink)}
.cx-plus span.is-top{background:var(--gw-ink);color:var(--gw-bg);border-color:var(--gw-ink)}
.cx-callout{border-radius:12px;background:var(--gw-accent-soft);padding:20px;font-size:16px;line-height:1.6;color:var(--gw-ink);margin:0}
.cx-callout b{font-weight:600}

/* Page 8: path */
.cx-days{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));position:relative}
.cx-days::before{content:"";position:absolute;left:0;right:0;top:9px;height:1px;background:var(--gw-line-strong)}
.cx-days>div{position:relative;padding-right:24px;display:flex;flex-direction:column;gap:12px;min-width:0}
.cx-days>div::before{content:"";width:18px;height:18px;border-radius:50%;background:var(--gw-surface);border:2px solid var(--gw-ink);box-sizing:border-box}
.cx-days>div:last-child::before{background:var(--gw-ink)}
.cx-days b{font-size:16px;font-weight:600;color:var(--gw-ink)}
.cx-days ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.cx-days li{font-size:16px;line-height:1.5;color:var(--gw-muted);padding-left:16px;position:relative}
.cx-days li::before{content:"";position:absolute;left:0;top:9px;width:5px;height:5px;border-radius:2px;background:var(--gw-line-strong)}
.cx-ladder{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:8px;align-items:end}
.cx-ladder div{border-radius:12px 12px 4px 4px;padding:16px;display:flex;flex-direction:column;gap:4px;background:var(--gw-bg-soft);min-width:0}
.cx-ladder .is-step-1{min-height:80px}.cx-ladder .is-step-2{min-height:112px}.cx-ladder .is-step-3{min-height:144px}.cx-ladder .is-step-4{min-height:176px}
.cx-ladder div:last-child{background:var(--gw-ink);color:var(--gw-bg)}
.cx-ladder div:last-child span{color:color-mix(in srgb,var(--gw-bg) 72%,transparent)}
.cx-ladder b{font-family:var(--gw-font-mono);font-size:11px;font-weight:500;letter-spacing:.06em;text-transform:uppercase}
.cx-ladder span{font-size:14px;line-height:1.4;color:var(--gw-muted)}
@media(max-width:760px){.cx-days{grid-template-columns:minmax(0,1fr);gap:24px}.cx-days::before{display:none}.cx-ladder{grid-auto-flow:row}.cx-ladder div{min-height:0!important}}

/* Page 9: apply */
.cx-page .cx-steps{margin-top:0;gap:24px}
.cx-page .cx-steps b{font-size:16px}
.cx-page .cx-steps li>span:last-child{font-size:14px}
.cx-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;border-radius:16px;background:var(--gw-bg-soft);padding:24px;position:relative}
.cx-form label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:500;min-width:0;color:var(--gw-ink)}
.cx-form .is-full{grid-column:1/-1}
.cx-form input[type=text],.cx-form input[type=email],.cx-form input[type=url],.cx-form textarea{font:inherit;font-size:16px;color:var(--gw-ink);border:1px solid var(--gw-line-strong);border-radius:8px;padding:12px;background:var(--gw-surface);width:100%}
.cx-form textarea{min-height:96px;resize:vertical}
.cx-form select{font:inherit;font-size:16px;min-height:48px;max-width:200px;border:1px solid var(--gw-line-strong);border-radius:8px;padding:0 12px;background:var(--gw-surface);color:var(--gw-ink)}
.cx-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.cx-form__err{background:var(--gw-danger-soft);color:var(--gw-danger);border-radius:12px;padding:12px;font-size:13px}
.cx-form__act{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}
.cx-form__act p{margin:0;font-size:14px;color:var(--gw-muted)}
.cx-form__act b{color:var(--gw-ink);font-weight:600}
.cx-form__done{text-align:center;padding:24px 8px}
.cx-form__done h3{margin:0 0 8px;font-size:22px}
.cx-form__done p{color:var(--gw-muted);margin:0 auto 8px;max-width:40ch;line-height:1.55}
.cx-form__tick{width:48px;height:48px;border-radius:50%;background:var(--gw-success-soft);color:var(--gw-success-strong);font-size:24px;font-weight:700;display:flex;align-items:center;justify-content:center;margin:0 auto 16px!important}
.cx-others{display:flex;flex-wrap:wrap;gap:8px 24px;align-items:baseline;padding-top:20px;border-top:1px solid var(--gw-line)}
.cx-others .cx-mini{flex-basis:100%}
.cx-others a{font-size:16px;font-weight:500;color:var(--gw-ink);text-decoration:none}
.cx-others a:hover{color:var(--gw-accent-strong)}
@media(max-width:640px){.cx-form{grid-template-columns:minmax(0,1fr)}}

/* Page 10: the traditional JD, for print and HR */
.cx-plain{font-family:Georgia,"Times New Roman",serif;font-size:14px;line-height:1.55;color:var(--gw-ink)}
.cx-plain h2{font-family:inherit;font-size:24px;font-weight:600;letter-spacing:-.01em;margin:12px 0 16px}
.cx-page .cx-plain h3{font-family:var(--gw-font);font-size:13px;line-height:1.4;font-weight:600;text-transform:uppercase;letter-spacing:.06em;margin:24px 0 8px;padding-bottom:12px;border-bottom:1px solid var(--gw-ink)}
.cx-plain table{width:100%;border-collapse:collapse;font-size:14px}
.cx-plain th,.cx-plain td{border:1px solid var(--gw-line);padding:6px 12px;vertical-align:top;text-align:left}
.cx-plain th{width:28%;font-family:var(--gw-font);font-size:13px;font-weight:600;background:var(--gw-bg-soft)}
.cx-plain ol{padding-left:24px;margin:0}
.cx-plain ol li+li{margin-top:4px}
.cx-plain p{margin:0}
.cx-plain__tbl{overflow-x:auto}
.cx-sigline{display:flex;justify-content:space-between;gap:20px;margin-top:24px;font-family:var(--gw-font);font-size:12px;color:var(--gw-muted)}
.cx-sigline span{flex:1;border-top:1px solid var(--gw-ink);padding-top:6px}

/* Narrowest phones: the cover title and facts get one column of room. */
@media(max-width:480px){.cx-cover-title{font-size:32px}.cx-facts{grid-template-columns:minmax(0,1fr)}.cx-stamp{display:none}}

/* Phones: the page footer keeps the page number; the address (gemboss.ai/careers/<slug>) is longer than the line. */
@media(max-width:560px){.cx-p-foot{justify-content:flex-end}.cx-p-foot span:first-child{display:none}}

/* Print / Save as PDF: just the paper pages, one per sheet. */
@media print{
  .gw-announce,.gw-header,.gw-footer,.cx-doc-bar,.cx-outline,.cx-form,.cx-others,.cx-calc,.cx-read .gw-btn,.gw-skip,[data-gemcare-widget],#kitgap-consent{display:none!important}
  .cx-jd{background:none;padding:0}
  .cx-jd-layout{display:block;padding:0;max-width:none}
  .cx-pages{gap:0}
  .cx-page{box-shadow:none;border-radius:0;max-width:860px;margin:0 auto;min-height:0;break-after:page}
  .cx-cover-img{aspect-ratio:12/5}
  .cx-page:last-child{break-after:auto}
}

/* GemCommerce's own careers channels (Chris 03/11/2026): the jobs site, LinkedIn, Facebook, Instagram. */
.cx-follow{display:flex;flex-wrap:wrap;gap:8px 24px;align-items:baseline;margin-top:40px;padding-top:20px;border-top:1px solid var(--gw-line)}
.cx-follow .cx-mini{flex-basis:100%}
.cx-follow a{font-size:16px;font-weight:500;color:var(--gw-ink);text-decoration:none}
.cx-follow a:hover{color:var(--gw-accent-strong)}
.cx-page .cx-follow{margin-top:0}
@media print{.cx-follow{display:none!important}}

/* Seats and closing date above the application form (from the GemPress field "Open until"). */
.cx-deadline{margin:0;font-size:16px;color:var(--gw-muted)}
.cx-deadline b,.cx-read b{color:var(--gw-ink);font-weight:600}

/* Phones (Chris 03/11/2026: "chú ý tối ưu mobile"). A JD is ten pages; on a phone each sheet runs edge to edge (the
   site gutter was eating 40px of every line), the running head stays on the cover only, the gaps between sheets
   shrink, and the plain version's section heads keep their 13px (the site's phone rule sets every h3 to 20px). */
@media(max-width:700px){
  .cx-jd{padding-bottom:32px}
  .cx-jd > .gw-wrap{width:100%}
  .cx-jd-layout{padding-top:12px}
  .cx-pages{gap:12px}
  .cx-page{border-radius:0;box-shadow:none}
  .cx-page:not(#cover) .cx-p-head{display:none}
  .cx-p-body{padding-bottom:32px}
  .cx-out__n{font-size:36px}
  .cx-out__n small{white-space:nowrap}
  .cx-page .cx-plain h3{font-size:13px!important;line-height:1.4}
  .cx-tile__big{font-size:40px}
}
