/* Compact, two-level history. Each branch meets the same uninterrupted main line. */
.career-section{padding-block:28px 80px}
.career-heading{display:grid;grid-template-columns:1.25fr 1fr;gap:75px;align-items:end;margin-bottom:40px;scroll-margin-top:35px}
.career-heading .eyebrow{color:var(--brand-dark);margin-bottom:21px}
.career-heading h2{font-size:54px;line-height:1.08}
.career-introduction>p{font-size:17px;line-height:1.8;max-width:40ch}
.career-introduction>.career-overlap{font-size:13px;color:var(--muted);margin-top:16px}
.career-layout{--node:64px;--node-gap:26px;--indent:76px;--picture:240px;--line:3px;--branch-gap:30px;max-width:1080px;margin-inline:auto;position:relative}
.career-timeline,.career-branches{list-style:none;padding:0;margin:0}
.career-entry{display:grid;grid-template-columns:var(--node) minmax(0,1fr);column-gap:var(--node-gap);position:relative;padding-bottom:32px;scroll-margin-top:35px}
.career-entry:has(>.career-visual){grid-template-columns:var(--node) minmax(0,1fr) var(--picture)}
/* No masks, scroll gradients or curved joins: the stem and branch share one centre. */
.career-timeline>.career-entry:not(:last-child)::after{content:'';position:absolute;left:calc((var(--node) - var(--line))/2);top:calc(var(--node)/2);bottom:calc(var(--node)/-2);width:var(--line);background:var(--ink);pointer-events:none}
/* The final parent ends at its last branch, even with JavaScript disabled. */
.career-timeline>.career-parent:last-child::after{content:'';position:absolute;grid-column:1;grid-row:1/2;left:calc((var(--node) - var(--line))/2);top:calc(var(--node)/2);bottom:calc(-1*var(--branch-gap));width:var(--line);background:var(--ink);pointer-events:none}
.career-timeline>.career-parent:last-child>.career-branches>.career-entry::after{content:'';position:absolute;left:calc((var(--node) - var(--line))/2 - var(--indent));top:0;bottom:0;width:var(--line);background:var(--ink);pointer-events:none}
.career-timeline>.career-parent:last-child>.career-branches>.career-entry:last-child::after{bottom:auto;height:calc(var(--node)/2)}
.career-meta{display:flex;align-items:baseline;flex-wrap:wrap;gap:3px 14px;margin-bottom:10px;min-width:0}
.career-date{font-size:12px;line-height:1.6;font-weight:600;color:var(--brand-dark);margin:0;font-variant-numeric:tabular-nums;white-space:nowrap}
.career-entry>.career-node{grid-column:1;grid-row:1;align-self:start}
.career-content{grid-column:2;grid-row:1;min-width:0}
.career-node{--node-fill:var(--paper);--node-disc-fill:transparent;display:grid;place-items:center;width:var(--node);height:var(--node);border:3px solid color-mix(in srgb,var(--ink) calc((1 - var(--disc-coverage,0))*100%),transparent);border-radius:50%;background:color-mix(in srgb,var(--node-fill) calc((1 - var(--disc-coverage,0))*100%),var(--node-disc-fill));position:relative;overflow:hidden;z-index:2}
.career-node>img{width:73%;height:73%;object-fit:contain}
.career-node>svg{width:80%;height:80%}
/* Archival and rotating client logos retain opaque badges above the moving disc. */
.career-famous>.career-node,.career-client-entry>.career-node,.career-hothealth>.career-node{background:#fff;border-color:var(--ink)}
.career-famous>.career-node>img{width:88%;height:88%}
.career-projectproject>.career-node{--node-fill:#000;--node-disc-fill:#000}
.career-slay>.career-node{--node-fill:var(--brand);--node-disc-fill:var(--brand)}
.career-slay>.career-node>img{width:68%;height:68%}
.career-telltouch>.career-node{--node-fill:#CD482F;--node-disc-fill:#CD482F}
.career-powercoach>.career-node{--node-fill:#101713;--node-disc-fill:#101713}
.career-teamapp>.career-node{background:#75AD08;border-color:var(--ink)}
.career-teamapp>.career-node>img{width:100%;height:100%;object-fit:cover}
.teamapp-monogram{font:740 19px/1 Archivo,Arial,sans-serif;letter-spacing:-.08em}
.career-role{font-size:12px;line-height:1.6;font-weight:400;color:var(--muted);margin:0}
.career-content>h3,.career-content>h4{font:740 34px/1.12 Archivo,Arial,sans-serif;letter-spacing:-.045em;margin:0 0 11px}
.career-summary{font-size:15px;line-height:1.75;max-width:64ch}
.career-branches{grid-column:1/-1;grid-row:auto;margin:var(--branch-gap) 0 0 var(--indent)}
.career-branches>.career-entry{padding-bottom:32px}
.career-branches>.career-entry:last-child{padding-bottom:0}
.career-branches>.career-entry::before{content:'';position:absolute;left:calc(var(--node)/2 - var(--indent));top:calc((var(--node) - var(--line))/2);height:var(--line);width:calc(var(--indent) - var(--node)/2);background:var(--ink);pointer-events:none}
.career-details{margin-top:5px}
.career-details>summary{list-style:none;display:flex;align-items:center;gap:10px;min-height:40px;width:fit-content;cursor:pointer;font-size:13px;font-weight:600}
.career-details>summary::-webkit-details-marker{display:none}
.career-more-label{text-decoration:underline;text-underline-offset:5px}
.career-details>summary>[aria-hidden]{font-size:21px;line-height:1;transition:transform .16s}
.career-details[open]>summary>[aria-hidden]{transform:rotate(45deg)}
.career-details>summary:hover,.career-case-link:hover{color:var(--brand-dark)}
.career-expanded{margin:8px 0 12px;padding-top:16px;border-top:1px solid var(--rule)}
.career-expanded p{font-size:14px;line-height:1.85}
.career-expanded p+p{margin-top:16px}
.career-expanded .text-link{font-size:12px;margin-top:15px;gap:9px}
.career-case-link{font-size:12px;min-height:40px}
.career-visual{grid-column:3;grid-row:1;margin:6px 0 0;min-width:0;align-self:start}
.career-image-link{display:block;background:#fff;border:2px solid var(--ink);box-shadow:4px 4px 0 var(--ink);overflow:hidden;transition:transform .18s,box-shadow .18s}
.career-image-link:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--ink)}
.career-image-link>img{display:block;width:100%;height:auto;aspect-ratio:1.6;object-fit:contain}
.career-visual-famous .career-image-link>img{aspect-ratio:300/207}
.career-visual-telltouch .career-image-link{background:#F4D8CD}
.career-visual-telltouch img{padding:8px}
.career-visual-powercoach .career-image-link{background:#111713}
.career-clients{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 28px;margin-block:9px}
.career-clients>li{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:10px;font-size:11px;line-height:1.45;min-width:0}
.career-clients img{width:140px;max-width:100%;height:76px;object-fit:contain;object-position:left center;filter:brightness(0)}
.famous-credits{grid-template-columns:1fr 1fr;gap:13px 17px;margin-block:16px 26px}
.famous-credits>li{display:block;font-size:12px}.famous-credits em{font-style:normal;font-weight:600}.famous-credits span{display:block;font-size:11px;color:var(--muted)}
.client-node-mark{font:740 17px/1 Archivo,Arial,sans-serif;letter-spacing:-.04em;display:grid;place-items:center;width:78%;height:78%}
.client-node-mark img{width:100%;height:100%;object-fit:contain;filter:brightness(0)}
.client-node-control{position:absolute;inset:0;border:0;background:transparent;cursor:pointer;border-radius:50%;color:inherit}
.career-node:has(.client-node-control:focus-visible){outline:3px solid var(--brand);outline-offset:4px}
.career-future{padding-bottom:0}
.career-future>.career-node{border-style:dashed;--node-fill:var(--highlight)}
.next-node-mark{font:600 30px/1 Archivo,Arial,sans-serif}
.career-next-button{margin-top:15px;font-size:13px;gap:28px;min-height:48px}
/* A solid disc travels above the stem and behind the icons, without capturing input. */
.career-traveller{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:1;opacity:0}
.career-disc{fill:var(--highlight);stroke:var(--ink);stroke-width:3}
.career-content>h3,.career-content>h4{transition:color .18s}
.career-entry.is-current>.career-content>h3,.career-entry.is-current>.career-content>h4{color:var(--brand-dark)}
.career-entry.is-current>.career-visual .career-image-link{box-shadow:4px 4px 0 var(--highlight)}
.career-next-button>span{transition:transform .2s}
.career-future.is-current>.career-node{border-style:solid}
.career-future.is-current .career-next-button>span{transform:translate(3px,-3px)}
@media(max-width:1100px){.career-layout{--node:58px;--node-gap:23px;--indent:65px;--picture:210px}.career-heading{gap:38px}.career-heading h2{font-size:46px}.career-content>h3,.career-content>h4{font-size:30px}.career-introduction>p{font-size:16px}}
@media(max-width:800px){.career-section{padding-block:12px 60px}.career-heading{grid-template-columns:1fr;gap:22px;margin-bottom:38px}.career-heading h2{font-size:43px}.career-introduction>p{max-width:50ch}.career-layout{--node:50px;--node-gap:20px;--indent:54px;--picture:180px}.career-content>h3,.career-content>h4{font-size:28px}.career-summary{font-size:14px}.career-clients{gap:24px 18px}}
@media(max-width:650px){.career-layout{--node:46px;--node-gap:17px;--indent:45px;--branch-gap:25px}.career-entry:has(>.career-visual){grid-template-columns:var(--node) minmax(0,1fr)}.career-entry{padding-bottom:32px}.career-visual{grid-column:2;grid-row:2;max-width:200px;width:100%;margin:12px 0 0}.career-image-link>img{height:120px;aspect-ratio:auto}.career-visual-famous .career-image-link>img{height:auto}.career-date{font-size:12px!important}.career-clients{grid-template-columns:repeat(2,minmax(0,1fr))}.career-clients img{width:115px;height:44px}.famous-credits{grid-template-columns:1fr}.career-branches>.career-entry{padding-bottom:29px}.career-branches>.career-entry:last-child{padding-bottom:0}}
@media(max-width:400px){.career-layout{--node:40px;--node-gap:14px;--indent:38px}.career-heading h2{font-size:35px}.career-content>h3,.career-content>h4{font-size:26px}.career-summary{font-size:14px}.career-clients{column-gap:12px}.career-clients img{height:38px}.career-visual{max-width:185px}.career-next-button{font-size:12px;gap:20px}.next-node-mark{font-size:25px}}
@media(prefers-reduced-motion:reduce){.career-image-link,.career-details>summary>[aria-hidden],.career-content>h3,.career-content>h4,.career-next-button>span{transition:none}.career-future.is-current .career-next-button>span{transform:none}}

/* Project stories stay available without opening the optional background. */
.career-summary .career-case-link{font-size:13px;gap:6px;white-space:nowrap;vertical-align:baseline}

/* Logo names are supplied as image alternatives; keep this gallery compact. */
.career-ownership{font-size:12px;color:var(--muted);margin:-8px 0 18px}
#projectproject-clients .career-clients img[src$=".jpeg"],.client-node-mark img[src$=".jpeg"]{filter:none}
@media(min-width:1100px){#projectproject-clients .career-clients{grid-template-columns:repeat(4,minmax(0,1fr));gap:26px 24px}}

.career-case-link{text-decoration:none}
.career-case-link>span:first-child{text-decoration:underline;text-underline-offset:5px}
