/* Careers · how and where we work — three place plates, the norms, and five stations of the practice. Tokens only. */
.car-places{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--bdh-gap)}
.car-place{display:flex;flex-direction:column;min-width:0;border:1px solid var(--line);border-radius:var(--r-xl);background:var(--paper);overflow:hidden;transition:box-shadow var(--d2) var(--e),transform var(--d2) var(--e)}
.car-place:hover{box-shadow:var(--sh-2);transform:translateY(-2px)}
.car-place__ph{aspect-ratio:4/3;border-radius:0}
.car-place__cap{position:absolute;left:14px;bottom:14px;z-index:2;display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 12px;border-radius:var(--r-pill);background:var(--paper);box-shadow:var(--sh-1);
  font-family:var(--f);font-size:var(--t-lbl);letter-spacing:.1em;text-transform:uppercase;color:var(--ink);max-width:calc(100% - 28px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.car-place__cap .xt-ico{flex:none;color:var(--blue)}
.car-place__b{display:flex;flex-direction:column;gap:10px;flex:1;padding:clamp(22px,2.4vw,32px)}
.car-place__k{margin:0;font-family:var(--f);font-size:var(--t-lbl);letter-spacing:.14em;text-transform:uppercase;color:var(--blue)}
.car .car-place__t{margin:0;font-family:var(--f-h);font-weight:500;font-size:clamp(1.35rem,2vw,1.75rem);letter-spacing:-.02em;line-height:1.1;color:var(--ink)}
.car-place__a{margin:4px 0 0;font-style:normal;font-size:var(--t-sm);line-height:1.6;color:var(--txt)}
.car-place__note{margin:0;font-size:var(--t-sm);line-height:1.6;color:var(--muted)}
.car-place__go{display:flex;align-items:center;gap:.5em;min-height:48px;margin-top:auto;padding-top:14px;border-top:1px solid var(--line-2);font-size:var(--t-sm);font-weight:500;color:var(--ink)}
.car-place__go b{font-family:var(--f);font-weight:500;color:var(--blue)}
.car-place__go .i{color:var(--blue)}
.car-place--remote{background:var(--paper-2)}

.car-norms{list-style:none;margin:var(--bdh-block) 0 0;padding:clamp(28px,3vw,40px) 0 0;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--bdh-gap)}
.car-norms li{display:flex;flex-direction:column;gap:14px;min-width:0}
.car-norms__ico{display:grid;place-items:center;width:44px;height:44px;border-radius:var(--r-sm);background:var(--paper-3);color:var(--ink)}
.car-norms__ico .xt-ico{width:22px;height:22px}
.car .car-norms__t{margin:0 0 6px;font-family:var(--f-h);font-weight:500;font-size:var(--t-h3);color:var(--ink)}
.car-norms p{margin:0;font-size:var(--t-sm);color:var(--txt);line-height:1.6}

/* the practice, five stations */
.car-flow{margin-top:var(--bdh-block);padding:clamp(28px,4vw,56px);border-radius:var(--r-xl);background:var(--paper-2);border:1px solid var(--line)}
.car-flow__head{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);column-gap:var(--bdh-gap);row-gap:14px;align-items:end;margin-bottom:clamp(32px,3.6vw,48px)}
.car-flow__head .lbl{grid-column:1 / -1;margin:0}
.car .car-flow__h{margin:0;font-family:var(--f-h);font-weight:500;font-size:clamp(1.35rem,2.2vw,1.9rem);letter-spacing:-.022em;line-height:1.15;color:var(--ink);max-width:22ch}
.car-flow__lead{margin:0;font-size:var(--t-body);line-height:1.65;color:var(--muted);max-width:48ch}

.car-flow__rail{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-bottom:clamp(24px,3vw,36px)}
.car-flow__track{position:absolute;left:10%;right:10%;top:22px;height:2px;background:var(--line-3);z-index:0;pointer-events:none}
.car-flow__fill{position:absolute;inset:0;background:var(--ink);transform-origin:left center;transform:scaleX(var(--car-flow-p,0));transition:transform .6s var(--e)}
.car-flow__stop{position:relative;z-index:1;display:grid;justify-items:center;gap:6px;min-height:44px;padding:0 4px 10px;border-radius:var(--r-sm);color:var(--muted);text-align:center}
.car-flow__node{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:var(--paper);border:1px solid var(--line-3);color:var(--ink);transition:background var(--d2) var(--e),border-color var(--d2) var(--e),color var(--d2) var(--e)}
.car-flow__node .xt-ico{width:20px;height:20px}
.car-flow__n{font-family:var(--f);font-size:var(--t-lbl);letter-spacing:.12em;color:var(--faint)}
.car-flow__st{font-family:var(--f-h);font-size:var(--t-body);font-weight:500;color:var(--ink)}
.car-flow__stop:hover .car-flow__node{border-color:var(--ink)}
.car-flow__stop[aria-selected="true"] .car-flow__node{background:var(--ink);border-color:var(--ink);color:var(--on-ink);--xt-accent:var(--blue)}
.car-flow__stop.is-done .car-flow__node{border-color:var(--ink)}
.car-flow__who{display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:var(--r-pill);font-family:var(--f);font-size:var(--t-lbl);letter-spacing:.1em;text-transform:uppercase;line-height:1;background:var(--paper-3);color:var(--txt)}
.car-flow__who--agent{background:var(--blue-wash);color:var(--blue-d)}
.car-flow__who--system{background:var(--paper);color:var(--muted);box-shadow:inset 0 0 0 1px var(--line-3)}

.car-flow__pane{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(24px,4vw,64px);align-items:center}
.car-flow__txt{display:flex;flex-direction:column;gap:14px}
.car-flow__meta{display:flex;align-items:center;gap:12px;margin:0}
.car .car-flow__t{margin:0;font-family:var(--f-h);font-weight:500;font-size:var(--t-h3);line-height:1.25;color:var(--ink)}
.car-flow__p{margin:0;font-size:var(--t-body);line-height:1.65;color:var(--txt);max-width:46ch}
.car-flow__rec{min-width:0;border-radius:var(--r-lg)}
.car-flow__dl{margin:0;padding:8px 20px}
.car-flow__dl div{display:grid;grid-template-columns:120px minmax(0,1fr);gap:16px;padding:12px 0;border-bottom:1px solid var(--line-2)}
.car-flow__dl dt{font-family:var(--f);font-size:var(--t-lbl);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.car-flow__dl dd{margin:0;font-family:var(--f);font-size:var(--t-xs);color:var(--ink);font-variant-numeric:tabular-nums}
.car-flow__record{display:flex;align-items:center;gap:10px;margin:0;padding:14px 20px;background:var(--paper-2);border-top:1px solid var(--line);font-family:var(--f);font-size:var(--t-xs);color:var(--ink)}
.car-flow__record .xt-ico{flex:none;color:var(--blue)}

@media (max-width:1100px){
  .car-norms{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:32px}
}
@media (max-width:1023px){
  .car-places{grid-template-columns:minmax(0,1fr)}
  .car-place{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr)}
  .car-place__ph{aspect-ratio:auto;min-height:100%}
  .car-flow__head,.car-flow__pane{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:760px){
  .car-place{display:flex}
  .car-place__ph{aspect-ratio:16/10}
  .car-flow{padding:22px 16px;border-radius:var(--r-lg)}
  .car-flow__rail{display:flex;overflow-x:auto;scrollbar-width:none;gap:6px;margin-inline:-16px;padding:0 44px 4px 16px;scroll-snap-type:x proximity;
    -webkit-mask-image:linear-gradient(90deg,#000 82%,transparent);mask-image:linear-gradient(90deg,#000 82%,transparent)}
  .car-flow__rail::-webkit-scrollbar{display:none}
  .car-flow__stop{flex:0 0 96px;scroll-snap-align:start}
  .car-flow__track{left:48px;right:auto;width:calc(96px * 4 + 24px)}
  .car-flow__dl div{grid-template-columns:minmax(0,1fr);gap:4px}
  .car-flow__dl,.car-flow__record{padding-left:16px;padding-right:16px}
}
@media (max-width:600px){
  .car-norms{grid-template-columns:minmax(0,1fr)}
}
@media (prefers-reduced-motion:reduce){
  .car-place,.car-flow__fill,.car-flow__node{transition:none}
  .car-place:hover{transform:none}
}

/* narrow phones: a long place name wraps inside the chip instead of ending in an ellipsis (integrator, responsive pass) */
@media (max-width:400px){.car-place__cap{height:auto;min-height:30px;padding-block:6px;white-space:normal;line-height:1.35}}
