/* Careers · the job board — search, five filters and a sort, the result status, the card grid, empty state,
   the speculative-application card and the recently-closed line. Cards themselves: assets/css/careers.css. */
.car-roles{scroll-margin-top:calc(var(--nav-h) - 24px)}
/* the practice strip — a photograph tile per practice with open roles, plus "every practice" first. Each tile is a plain
   link that filters the board (careers/roles.js does it in place and keeps the counts faceted). A row of equal tiles on
   wide screens; below that it scrolls sideways, edge to edge, inside .bdh-scroll-x.mask-x. */
.car-prac{margin:0 0 clamp(24px,2.8vw,36px)}
.car-prac__k{margin:0 0 12px;font-family:var(--f);font-size:var(--t-lbl);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.car-prac__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(var(--n,8),minmax(0,1fr));gap:12px}
.car-prac__list>li{display:flex;min-width:0}
.car-prac__t{display:flex;flex-direction:column;gap:3px;width:100%;padding:6px 6px 12px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--paper);color:var(--ink);
  transition:border-color var(--d1) var(--e-io),box-shadow var(--d2) var(--e),transform var(--d2) var(--e)}
.car-prac__t:hover{border-color:var(--line-3);box-shadow:var(--sh-1);transform:translateY(-2px)}
.car-prac__t:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.car-prac__t.is-on{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
/* a practice with nothing that matches the other filters: still shown (so the strip never jumps), muted, inert */
.car-prac__t.is-zero{background:var(--paper-2);cursor:default}
.car-prac__t.is-zero:hover{border-color:var(--line);box-shadow:none;transform:none}
.car-prac__t.is-zero .car-prac__name,.car-prac__t.is-zero .car-prac__n{color:var(--faint)}
.car-prac__t.is-zero .car-prac__ph img{filter:grayscale(1);opacity:.5}
.car-prac__t.is-zero:hover .car-prac__ph img{transform:none}
.car-prac__ph{flex:none;aspect-ratio:4/3;margin-bottom:9px;border-radius:calc(var(--r-lg) - 5px)}
.car-prac__ph--all{display:grid;place-items:center;background:var(--ink);color:var(--on-ink)}
.car-prac__t:hover .car-prac__ph img{transform:scale(1.04)}
.car-prac__name{padding:0 6px;font-family:var(--f-h);font-weight:500;font-size:var(--t-sm);line-height:1.3;color:var(--ink)}
.car-prac__n{margin-top:auto;padding:0 6px;font-family:var(--f);font-size:var(--t-xs);color:var(--muted)}
.car-prac__t.is-on .car-prac__n{color:var(--blue-d)}
/* room inside the scroller for the focus ring (2px + 2px offset) and the hover lift, which overflow would otherwise
   clip; the negative margin keeps the tiles where they were */
.car-prac__scroll{max-width:none;margin:-8px;padding:8px}
@media (min-width:1181px){ .car-prac__scroll.mask-x{-webkit-mask-image:none;mask-image:none} }
@media (max-width:1180px){
  .car-prac__scroll{margin:-8px calc(var(--gutter) * -1);padding:8px var(--gutter)}
  .car-prac__list{display:flex;width:max-content}
  .car-prac__list>li{flex:none;width:168px}
}
@media (max-width:600px){ .car-prac__list>li{width:148px} }
@media (prefers-reduced-motion:reduce){
  .car-prac__t,.car-prac__t:hover{transition:none;transform:none}
  .car-prac__t:hover .car-prac__ph img{transform:none}
}

.car-roles__tbc{display:flex;align-items:flex-start;gap:10px;margin:0 0 18px;font-size:var(--t-sm);color:var(--muted)}
.car-roles__tbc .xt-ico{flex:none;margin-top:2px}

.car-board{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;padding:clamp(16px,1.8vw,22px);border:1px solid var(--line);border-radius:var(--r-xl);background:var(--paper);box-shadow:var(--sh-1)}
.car-board__lbl{display:block;margin:0 0 6px;font-family:var(--f);font-size:var(--t-lbl);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.car-board__qi{position:relative;display:block}
.car-board__qi .xt-ico{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none}
.car-board__qi input{width:100%;height:54px;padding:0 16px 0 46px;border:1px solid var(--line-3);border-radius:var(--r);background:var(--paper);font-family:var(--f-b);font-size:var(--t-body);color:var(--ink)}
.car-board__qi input::placeholder{color:var(--faint)}
.car-board__qi input:focus-visible,.car-board__sel select:focus-visible{outline:2px solid var(--blue);outline-offset:1px;border-color:var(--blue)}
.car-board__more{border:0}
.car-board__sum{display:none}
.car-board__fs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr)) minmax(0,.9fr);gap:12px}
.car-board__f{min-width:0}
.car-board__sel{position:relative;display:block}
.car-board__sel::after{content:"";position:absolute;right:14px;top:50%;width:7px;height:7px;margin-top:-5px;border-right:1.5px solid var(--ink);border-bottom:1.5px solid var(--ink);transform:rotate(45deg);pointer-events:none}
.car-board__sel select{width:100%;height:48px;padding:0 34px 0 14px;border:1px solid var(--line-3);border-radius:var(--r);background:var(--paper);font-family:var(--f-b);font-size:var(--t-sm);color:var(--ink);appearance:none;-webkit-appearance:none;text-overflow:ellipsis}
.car-board__sel select:hover{border-color:var(--ink)}
.car-board__f--sort .car-board__sel select{background:var(--paper-3);border-color:transparent}
.car-board__go{display:flex;justify-content:flex-end}
.car.is-live-board .car-board__go{display:none}
.car-board__badge{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:var(--r-pill);background:var(--ink);color:var(--on-ink);font-family:var(--f);font-size:var(--t-lbl)}

.car-status{display:flex;align-items:center;flex-wrap:wrap;gap:10px 18px;min-height:44px;margin:22px 0 18px}
.car-status__n{margin:0;font-family:var(--f);font-size:var(--t-xs);color:var(--muted)}
.car-status__n b{font-weight:500;color:var(--ink)}
.car-status__chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.car-status__chips[hidden]{display:none}
.car-chip{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:0 8px 0 14px;border-radius:var(--r-pill);background:var(--ink);color:var(--on-ink);font-size:var(--t-xs);font-weight:500}
.car-chip:hover{background:var(--ink-2)}
.car-chip__x{position:relative;width:20px;height:20px;border-radius:50%;background:var(--on-ink-card)}
.car-chip__x::before,.car-chip__x::after{content:"";position:absolute;left:5px;right:5px;top:50%;height:1.5px;margin-top:-.75px;background:var(--on-ink);transform:rotate(45deg)}
.car-chip__x::after{transform:rotate(-45deg)}
.car-status__clear{display:inline-flex;align-items:center;min-height:44px;padding:0 6px;font-size:var(--t-xs);font-weight:500;color:var(--ink);text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--line-3)}
.car-status__clear:hover{text-decoration-color:var(--ink)}

.car-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--bdh-gap)}

.car-empty{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:clamp(28px,4vw,56px);border:1px dashed var(--line-3);border-radius:var(--r-xl);background:var(--paper)}
.car-empty[hidden]{display:none}
.car-empty__ico{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--paper-3);color:var(--ink)}
.car .car-empty__t{margin:4px 0 0;font-family:var(--f-h);font-weight:500;font-size:var(--t-h3);color:var(--ink)}
.car-empty__p{margin:0;font-size:var(--t-sm);line-height:1.6;color:var(--txt);max-width:56ch}
.car-empty__go{display:flex;flex-wrap:wrap;gap:10px;margin:8px 0 0}

.car-spec{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px 40px;align-items:center;margin-top:var(--bdh-gap);padding:clamp(24px,3vw,40px);border-radius:var(--r-xl);background:var(--blue-wash);border:1px solid var(--blue-line)}
.car-spec__b{display:flex;flex-direction:column;gap:10px;min-width:0}
.car-spec__b .lbl{margin:0}
.car .car-spec__t{margin:0;font-family:var(--f-h);font-weight:500;font-size:clamp(1.3rem,2vw,1.7rem);letter-spacing:-.02em;color:var(--ink)}
.car-spec__p{margin:0;font-size:var(--t-sm);line-height:1.6;color:var(--txt);max-width:64ch}

.car-closed{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;margin:22px 0 0;font-size:var(--t-sm);color:var(--muted)}
.car-closed__k{font-family:var(--f);font-size:var(--t-lbl);letter-spacing:.12em;text-transform:uppercase;color:var(--faint);margin-right:6px}
.car-closed a{display:inline-flex;align-items:center;min-height:44px;color:var(--txt);text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--line-3)}

@media (max-width:1180px){
  .car-board__fs{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:1023px){
  .car-grid{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:760px){
  .car-board{padding:14px;border-radius:var(--r-lg)}
  .car-board__sum{display:flex;align-items:center;gap:10px;min-height:48px;padding:0 14px;border:1px solid var(--line-3);border-radius:var(--r);font-size:var(--t-sm);font-weight:500;color:var(--ink);cursor:pointer;list-style:none}
  .car-board__sum::-webkit-details-marker{display:none}
  .car-board__sum::after{content:"";margin-left:auto;width:7px;height:7px;border-right:1.5px solid var(--ink);border-bottom:1.5px solid var(--ink);transform:rotate(45deg) translateY(-2px);transition:transform var(--d2) var(--e)}
  .car-board__more[open] .car-board__sum::after{transform:rotate(225deg) translateY(-2px)}
  .car-board__more[open] .car-board__fs{margin-top:12px}
  .car-board__fs{grid-template-columns:repeat(2,minmax(0,1fr))}
  .car-board__go .btn{width:100%}
  .car-spec{grid-template-columns:minmax(0,1fr)}
  .car-spec__go{justify-self:stretch}
}
@media (max-width:420px){
  .car-board__fs{grid-template-columns:minmax(0,1fr)}
}
