/* Careers — page-level styles shared by /careers and /careers/<slug> (prefix car): the job card, the tool chips, the
   closing band and small shared bits. Section styles: assets/css/careers/<id>.css; the job page:
   assets/css/careers/job.css. Tokens only; no gradients except mask fades; no !important. */

/* blue never sits inside a heading: an icon in a heading takes the heading's colour for its accent too */
.car :is(h1,h2,h3,h4,h5,h6) .xt-ico{--xt-accent:currentColor}

/* ---------- the job card (board + related roles) ------------------------- */
.car-card{position:relative;display:flex;flex-direction:column;gap:12px;min-width:0;padding:clamp(20px,2.2vw,28px);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--paper);
  transition:border-color var(--d2) var(--e),box-shadow var(--d2) var(--e),transform var(--d2) var(--e)}
.car-card[hidden]{display:none}
.car-card:hover,.car-card:focus-within{border-color:var(--line-3);box-shadow:var(--sh-2);transform:translateY(-2px)}
.car-card__top{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;margin:0;font-family:var(--f);font-size:var(--t-lbl);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.car-card__team{color:var(--blue)}
.car-card__tag{display:inline-flex;align-items:center;height:20px;padding:0 8px;border-radius:var(--r-pill);background:var(--ink);color:var(--on-ink);letter-spacing:.1em}
.car-card__ref{margin-left:auto;color:var(--faint);letter-spacing:.06em}
.car .car-card__t{margin:0;font-family:var(--f-h);font-weight:500;font-size:clamp(1.15rem,1.5vw,1.4rem);letter-spacing:-.018em;line-height:1.2;color:var(--ink)}
.car-card__a{color:inherit;text-decoration:none}
.car-card__a::after{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit}
.car-card__a:focus-visible{outline:none}
.car-card__a:focus-visible::after{outline:2px solid var(--blue);outline-offset:3px}
.car-card__sum{margin:0;font-size:var(--t-sm);line-height:1.6;color:var(--txt);max-width:68ch}
.car-card__facts{display:flex;flex-wrap:wrap;gap:6px;margin:2px 0 0}
.car-card__facts>div{display:contents}
.car-card__facts dt{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.car-card__facts dd{display:inline-flex;align-items:center;gap:6px;height:28px;margin:0;padding:0 10px;border-radius:var(--r-pill);background:var(--paper-3);font-family:var(--f);font-size:var(--t-xs);color:var(--ink);white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.car-card__facts dd .xt-ico{flex:none;color:var(--muted)}
.car-card__line{display:none;margin:0;font-family:var(--f);font-size:var(--t-xs);line-height:1.5;color:var(--muted)}
.car-card__line span{white-space:nowrap}
.car-card__line .is-soon{color:var(--ink);font-weight:500}
.car-card__foot{display:flex;align-items:center;flex-wrap:wrap;gap:6px 16px;margin:auto 0 0;padding-top:14px;border-top:1px solid var(--line-2);font-family:var(--f);font-size:var(--t-xs);color:var(--muted)}
.car-card__close.is-soon{color:var(--ink);font-weight:500}
.car-card__close.is-soon::before{content:"";display:inline-block;width:6px;height:6px;margin-right:6px;border-radius:50%;background:var(--blue);vertical-align:1px}
.car-card__go{display:inline-flex;align-items:center;gap:.5em;margin-left:auto;font-family:var(--f-b);font-size:var(--t-sm);font-weight:500;color:var(--ink)}
.car-card__go .i{position:relative;top:-1px;color:var(--blue);font-family:var(--f);font-size:.95rem}
.car-card:hover .car-card__go{color:var(--blue-d)}
.car-card.is-closed{background:var(--paper-2)}
.car-card--compact .car-card__facts>div:nth-child(n+3){display:none}

/* ---------- tool chips: logo + name, or the name alone (lib car_tool_chips()) */
.car-tools{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.car-tool{display:inline-flex;align-items:center;gap:9px;min-height:40px;padding:6px 14px 6px 12px;border:1px solid var(--line);border-radius:var(--r-pill);background:var(--paper);font-size:var(--t-sm);font-weight:500;color:var(--ink);max-width:100%}
.car-tool .xt-logo{flex:none;color:var(--ink)}
.car-tool--word{padding-left:14px}
.car-tool__n{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.band--ink .car-tool{background:var(--on-ink-card);border-color:var(--on-ink-line);color:var(--on-ink)}
.band--ink .car-tool .xt-logo{color:var(--on-ink)}

/* ---------- the closing band (partials/careers/close.php) --------------- */
.car-close{position:relative;overflow:hidden;isolation:isolate;padding-block:clamp(64px,7vw,104px)}
.car-close__dots{position:absolute;inset:0;z-index:-1;pointer-events:none;
  -webkit-mask-image:linear-gradient(100deg,#000 0%,transparent 62%);mask-image:linear-gradient(100deg,#000 0%,transparent 62%)}
.car-close__grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(28px,5vw,88px);align-items:end}
.car-close__say{display:flex;flex-direction:column;gap:18px;min-width:0}
.car-close__say .lbl,.car-close__h,.car-close__p{margin:0}
.car-close__h{max-width:18ch}
.car-close__p{max-width:52ch}
.car-close__go{display:flex;flex-direction:column;align-items:stretch;gap:18px;min-width:0}
.car-close__cta{justify-content:center}
.car-close__links{list-style:none;margin:0;padding:0;border-top:1px solid var(--on-ink-line)}
.car-close__links a{display:grid;grid-template-columns:20px minmax(0,1fr) auto;gap:12px;align-items:center;min-height:56px;padding:8px 0;border-bottom:1px solid var(--on-ink-line);font-size:var(--t-sm);color:var(--on-ink);text-decoration:none;overflow-wrap:anywhere}
.car-close__links a:hover span:not(.i){text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--on-ink-3)}
.car-close__links .xt-ico{color:var(--on-ink-2);--xt-accent:currentColor}
.car-close__links .i{font-family:var(--f);color:var(--on-ink-2)}

@media (max-width:1023px){
  .car-close__grid{grid-template-columns:minmax(0,1fr);align-items:start}
}
@media (max-width:760px){
  /* phones: the compact card — practice and ref, the title, one line of facts */
  .car-card{gap:8px}
  .car-card__sum,.car-card__facts,.car-card__foot{display:none}
  .car-card__line{display:block}
}
@media (max-width:600px){
  .car-card__ref{margin-left:0}
}
@media (prefers-reduced-motion:reduce){
  .car-card{transition:none}
  .car-card:hover,.car-card:focus-within{transform:none}
}
