/* CAREERS family — shared chrome (head/lead/cta/fallback) + variant CSS. Tokens only. */
.apb-rx-cr-head{margin-bottom:clamp(20px,3.5vh,34px)}
.apb-rx-cr-head--c{text-align:center}
.apb-rx-cr-head h2{margin:8px 0 0;font-family:var(--apb-rx-font-display,inherit);font-weight:var(--apb-rx-display-weight,800);
  font-size:clamp(28px,4.2vw,48px);letter-spacing:var(--apb-rx-display-tracking,-.02em);line-height:1.06;color:var(--apb-rx-ink,#0b0d12)}
.apb-rx-cr-lead{margin:10px 0 0;color:var(--apb-rx-muted,#6b7280);font-size:15px;line-height:1.6;max-width:60ch}
.apb-rx-cr-head--c .apb-rx-cr-lead{margin-inline:auto}
.apb-rx-cr-ctarow{display:flex;gap:12px;flex-wrap:wrap;margin-top:clamp(20px,3vh,30px)}
.apb-rx-cr-ctarow--c{justify-content:center}
.apb-rx-cr-cta{display:inline-flex;align-items:center;gap:8px;padding:13px 24px;border-radius:var(--apb-rx-radius);font-size:14px;font-weight:700;text-decoration:none;transition:transform var(--apb-rx-t-fast,.16s)}
.apb-rx-cr-cta:hover{transform:translateY(-2px)}
.apb-rx-cr-cta--primary{background:var(--apb-rx-brand);color:var(--apb-rx-accent-contrast,#fff);box-shadow:0 12px 30px -10px var(--apb-rx-glow,rgba(11,13,18,.35))}
.apb-rx-cr-cta--outline{color:var(--apb-rx-ink,#0b0d12);border:var(--apb-rx-border,1px) solid var(--apb-rx-line,#e7e8ec)}
.apb-rx-cr-fallback{padding:clamp(48px,8vh,90px) 24px;text-align:center}
@media (prefers-reduced-motion:reduce){.apb-rx-cr-cta{transition:none}}

/* ---------- 1. opening_hours ---------- */

/* ---------- 6. hero ---------- */
.apb-rx-crhero{position:relative;min-height:clamp(420px,64vh,600px);display:flex;align-items:flex-end;overflow:hidden;color:#fff}
.apb-rx-crhero-bg{position:absolute;inset:0}
.apb-rx-crhero-bg img{width:100%;height:100%;object-fit:cover;display:block}
.apb-rx-crhero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,13,18,.25),rgba(11,13,18,.82)),
  radial-gradient(90% 60% at 10% 100%,color-mix(in srgb,var(--apb-rx-brand) 40%,transparent),transparent 60%)}
.apb-rx-crhero:not(:has(.apb-rx-crhero-bg)){background:var(--apb-rx-ink,#0b0d12)}
.apb-rx-crhero-wrap{position:relative;z-index:1;max-width:1120px;margin:0 auto;padding:clamp(40px,7vw,80px) 24px;width:100%}
.apb-rx-crhero-ey{margin:0;font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:color-mix(in srgb,var(--apb-rx-brand) 45%,#fff)}
.apb-rx-crhero h1{margin:14px 0 12px;font-family:var(--apb-rx-font-display,inherit);font-weight:var(--apb-rx-display-weight,800);
  font-size:clamp(34px,6vw,68px);letter-spacing:-.03em;line-height:1;max-width:15ch;text-wrap:balance}
.apb-rx-crhero-lead{margin:0 0 24px;font-size:clamp(15px,1.9vw,19px);color:rgba(255,255,255,.82);max-width:52ch;line-height:1.55}
.apb-rx-crhero-row{display:flex;flex-wrap:wrap;align-items:center;gap:26px}
.apb-rx-crhero-row .apb-rx-cr-ctarow{margin-top:0}
.apb-rx-crhero-row .apb-rx-cr-cta--outline{color:#fff;border-color:rgba(255,255,255,.4)}
.apb-rx-crhero-stats{display:flex;flex-wrap:wrap;gap:24px}
.apb-rx-crhero-stat{display:inline-flex;flex-direction:column}
.apb-rx-crhero-stat b{font-family:var(--apb-rx-font-display,inherit);font-weight:800;font-size:clamp(19px,2.3vw,26px);letter-spacing:-.01em}
.apb-rx-crhero-stat span{font-size:12px;color:rgba(255,255,255,.7)}

/* ---------- 7. openings ---------- */
.apb-rx-crjob{padding:clamp(56px,10vh,110px) 24px;background:var(--apb-rx-surface,#fff)}
.apb-rx-crjob-wrap{max-width:860px;margin:0 auto}
.apb-rx-crjob input{position:absolute;opacity:0;pointer-events:none}
.apb-rx-crjob-filters{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-bottom:22px}
.apb-rx-crjob-filter{cursor:pointer;font-size:13px;font-weight:700;color:var(--apb-rx-ink,#0b0d12);background:var(--apb-rx-surface,#fff);
  border:var(--apb-rx-border,1px) solid var(--apb-rx-line,#d9dbe0);border-radius:var(--apb-rx-radius-pill,999px);padding:8px 16px;transition:all var(--apb-rx-t-fast,.16s)}
.apb-rx-crjob-filter:hover{border-color:var(--apb-rx-line-accent)}
.apb-rx-crjob-row{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center;padding:18px 20px;border:var(--apb-rx-border,1px) solid var(--apb-rx-line,#e7e8ec);
  border-radius:calc(var(--apb-rx-radius) * .9);margin-bottom:10px;text-decoration:none;transition:transform var(--apb-rx-t-fast,.16s),box-shadow var(--apb-rx-t,.28s),border-color var(--apb-rx-t,.28s)}
.apb-rx-crjob-row:hover{transform:translateX(3px);box-shadow:var(--apb-rx-shadow-2);border-color:transparent}
.apb-rx-crjob-row:focus-visible{outline:2px solid var(--apb-rx-ring);outline-offset:2px}
.apb-rx-crjob-row b{display:block;font-size:16.5px;font-weight:750;letter-spacing:-.01em;color:var(--apb-rx-ink,#0b0d12)}
.apb-rx-crjob-meta{display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:7px}
.apb-rx-crjob-meta span{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:var(--apb-rx-muted,#6b7280);white-space:nowrap}
.apb-rx-crjob-dept{font-size:10.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--apb-rx-accent-text);
  background:var(--apb-rx-soft);border-radius:var(--apb-rx-radius-pill,999px);padding:3px 9px}
.apb-rx-crjob-apply{display:inline-flex;align-items:center;gap:7px;font-size:13.5px;font-weight:700;color:var(--apb-rx-accent-text);white-space:nowrap}
.apb-rx-crjob-apply svg{width:15px;height:15px;transition:transform var(--apb-rx-t-fast,.16s)}
.apb-rx-crjob-row:hover .apb-rx-crjob-apply svg{transform:translateX(3px)}
/* CSS-only filter: 'all' + up to 4 dept classes (d-1..d-4). Radio ids are "<uid>-all"/"<uid>-d-N"
   (uid unique per section instance) — scope by :has() on the wrapper so multiple instances never collide. */
.apb-rx-crjob-wrap:has(input[id$="-all"]:checked) label[for$="-all"],
.apb-rx-crjob-wrap:has(input[id$="-d-1"]:checked) label[for$="-d-1"],
.apb-rx-crjob-wrap:has(input[id$="-d-2"]:checked) label[for$="-d-2"],
.apb-rx-crjob-wrap:has(input[id$="-d-3"]:checked) label[for$="-d-3"],
.apb-rx-crjob-wrap:has(input[id$="-d-4"]:checked) label[for$="-d-4"]{background:var(--apb-rx-brand);border-color:transparent;color:var(--apb-rx-accent-contrast,#fff)}
.apb-rx-crjob-wrap:has(input[id$="-d-1"]:checked) .apb-rx-crjob-row:not(.d-1),
.apb-rx-crjob-wrap:has(input[id$="-d-2"]:checked) .apb-rx-crjob-row:not(.d-2),
.apb-rx-crjob-wrap:has(input[id$="-d-3"]:checked) .apb-rx-crjob-row:not(.d-3),
.apb-rx-crjob-wrap:has(input[id$="-d-4"]:checked) .apb-rx-crjob-row:not(.d-4){display:none}
.apb-rx-crjob-foot{text-align:center;margin-top:18px;font-size:13.5px;color:var(--apb-rx-muted,#6b7280)}
@media (prefers-reduced-motion:reduce){.apb-rx-crjob-row,.apb-rx-crjob-filter,.apb-rx-crjob-apply svg{transition:none}}

/* ---------- 8. benefits ---------- */
.apb-rx-crben{padding:clamp(56px,10vh,110px) 24px;background:var(--apb-rx-soft)}
.apb-rx-crben-wrap{max-width:1080px;margin:0 auto}
.apb-rx-crben-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.apb-rx-crben-card{padding:24px;border-radius:calc(var(--apb-rx-radius) * 1.1);background:var(--apb-rx-surface,#fff);border:var(--apb-rx-border,1px) solid var(--apb-rx-line,#e7e8ec);
  transition:transform var(--apb-rx-t,.28s),box-shadow var(--apb-rx-t,.28s)}
.apb-rx-crben-card:hover{transform:translateY(-4px);box-shadow:var(--apb-rx-shadow-2)}
.apb-rx-crben-ico{width:46px;height:46px;border-radius:calc(var(--apb-rx-radius) * .85);display:flex;align-items:center;justify-content:center;
  background:var(--apb-rx-soft);color:var(--apb-rx-accent-text);margin-bottom:14px}
.apb-rx-crben-ico svg{width:23px;height:23px}
.apb-rx-crben-card b{display:block;font-size:16.5px;font-weight:750;letter-spacing:-.01em;color:var(--apb-rx-ink,#0b0d12);margin-bottom:5px}
.apb-rx-crben-card p{margin:0;color:var(--apb-rx-muted,#6b7280);font-size:14px;line-height:1.55}
@media(max-width:860px){.apb-rx-crben-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.apb-rx-crben-grid{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.apb-rx-crben-card{transition:none}}

/* ---------- 9. life ---------- */
.apb-rx-crlife{padding:clamp(56px,10vh,110px) 24px;background:var(--apb-rx-surface,#fff)}
.apb-rx-crlife-wrap{max-width:1120px;margin:0 auto;display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(28px,4vw,52px);align-items:center}
.apb-rx-crlife-collage{display:grid;grid-template-columns:1fr 1fr;grid-auto-rows:130px;gap:12px}
.apb-rx-crlife-cell{border-radius:calc(var(--apb-rx-radius) * 1.1);overflow:hidden}
.apb-rx-crlife-cell img{width:100%;height:100%;object-fit:cover;display:block;transition:transform var(--apb-rx-t-slow,.55s)}
.apb-rx-crlife-cell:hover img{transform:scale(1.05)}
.apb-rx-crlife-cell--tall{grid-row:span 2}
.apb-rx-crlife-ey{margin:0;font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--apb-rx-accent-text)}
.apb-rx-crlife h2{margin:8px 0 14px;font-family:var(--apb-rx-font-display,inherit);font-weight:var(--apb-rx-display-weight,800);
  font-size:clamp(27px,3.8vw,44px);letter-spacing:-.02em;line-height:1.05;color:var(--apb-rx-ink,#0b0d12)}
.apb-rx-crlife-lead{margin:0 0 22px;color:var(--apb-rx-muted,#6b7280);font-size:15.5px;line-height:1.65;max-width:46ch}
.apb-rx-crlife-vals{display:flex;flex-direction:column;gap:16px}
.apb-rx-crlife-val{display:grid;grid-template-columns:24px 1fr;gap:12px;align-items:start}
.apb-rx-crlife-val svg{width:22px;height:22px;color:var(--apb-rx-accent-text);margin-top:1px}
.apb-rx-crlife-val b{display:block;font-size:15.5px;font-weight:700;color:var(--apb-rx-ink,#0b0d12)}
.apb-rx-crlife-val span{font-size:14px;color:var(--apb-rx-muted,#6b7280);line-height:1.5}
@media(max-width:820px){.apb-rx-crlife-wrap{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.apb-rx-crlife-cell img{transition:none}}

/* ---------- 10. process ---------- */
.apb-rx-crproc{padding:clamp(56px,10vh,110px) 24px;background:var(--apb-rx-soft)}
.apb-rx-crproc-wrap{max-width:960px;margin:0 auto}
.apb-rx-crproc-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.apb-rx-crproc-step{position:relative;background:var(--apb-rx-surface,#fff);border:var(--apb-rx-border,1px) solid var(--apb-rx-line,#e7e8ec);border-radius:calc(var(--apb-rx-radius) * 1.1);padding:24px 20px}
.apb-rx-crproc-ico{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  background:var(--apb-rx-brand);color:var(--apb-rx-accent-contrast,#fff);margin-bottom:16px;font-family:var(--apb-rx-font-display,inherit);font-weight:800;font-size:15px}
.apb-rx-crproc-step b{display:block;font-size:16px;font-weight:750;letter-spacing:-.01em;color:var(--apb-rx-ink,#0b0d12)}
.apb-rx-crproc-step p{margin:6px 0 0;font-size:13.5px;color:var(--apb-rx-muted,#6b7280);line-height:1.55}
.apb-rx-crproc-when{display:inline-block;margin-top:12px;font-size:11.5px;font-weight:700;color:var(--apb-rx-accent-text)}
.apb-rx-crproc-foot{margin-top:24px;text-align:center;font-size:14px;color:var(--apb-rx-muted,#6b7280)}
@media(max-width:860px){.apb-rx-crproc-steps{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.apb-rx-crproc-steps{grid-template-columns:1fr}}
