/* Career-first hierarchy. */
.route-grid{grid-template-columns:1.2fr 1fr;gap:24px}
.route-card.talent.primary-route{background:#111;color:#fff;border-color:#111}
.route-card.business.secondary-route{background:#eee;color:#111;border-color:#dedede}
.primary-route h3{font-size:43px}.route-card .route-top{margin-bottom:30px}
.route-kicker{font-size:10px;letter-spacing:.12em;display:block;opacity:.65;margin:0 0 18px}
.primary-route .route-link{padding-top:32px}.secondary-route h3{font-size:34px}
.contact-band h2 em{white-space:nowrap}

/* A single pinned assembly, with independent component surfaces. */
.assembly-story{background:#090b0d;color:#eee;padding-top:88px}
.assembly-heading{display:grid;grid-template-columns:1fr 2fr;gap:20px 38px;padding-bottom:46px}
.assembly-heading .eyebrow{color:#a4a8ad;font-size:11px;margin-top:12px}
.assembly-heading h2{font-size:clamp(44px,4.9vw,67px);line-height:1.08;margin:0;letter-spacing:-.04em}
.assembly-story em{color:#a4a8ac}
.assembly-heading>p:last-child{grid-column:2;font-size:17px;line-height:1.7;color:#aaa;max-width:540px;margin-bottom:0}
.assembly-track{position:relative}
.assembly-pin{display:grid;grid-template-columns:1.1fr 1fr;gap:65px;align-items:center;padding-block:40px}
.assembly-visual{min-width:0}.assembly-topline{display:flex;justify-content:space-between;gap:10px;font-size:10px;letter-spacing:.14em;color:#90979e}
.assembly-part-count{font-variant-numeric:tabular-nums;white-space:nowrap;color:#c6ccd1}
.assembly-figure{margin:0;position:relative;width:100%;aspect-ratio:1}
.assembly-canvas{display:none;width:100%;height:100%;filter:grayscale(1)}
.assembly-ready .assembly-canvas{display:block}
.assembly-caption{display:flex;justify-content:space-between;align-items:center;gap:14px;border-top:1px solid #33383c;padding:18px 0;font-size:11px;color:#c8cdd0;line-height:1.5}
.assembly-motion{border:0;padding:8px 0;background:none;color:#979fa6;font-size:11px;text-decoration:underline;text-underline-offset:5px;white-space:nowrap;display:none}
.assembly-content{min-width:0;align-self:stretch;display:flex;flex-direction:column;justify-content:center}
.assembly-chapters{display:none;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:38px}
.assembly-chapters button{background:none;border:0;text-align:left;color:#717a81;padding:12px 0 15px;position:relative;min-width:0}
.assembly-chapters button>span:first-child{display:block;font-size:13px;margin-bottom:7px;font-variant-numeric:tabular-nums}
.assembly-chapters button>span:nth-child(2){font-size:10px;line-height:1.4;display:block;letter-spacing:.02em}
.assembly-chapters button:after,.assembly-chapters i{content:'';position:absolute;bottom:0;left:0;width:100%;height:1px;background:#353a3e}
.assembly-chapters i{width:var(--chapter-progress,0%);background:#d6dce1;z-index:1}
.assembly-chapters button[aria-current]{color:#f5f5f5}.assembly-chapters button:hover{color:#fff}
.assembly-copy{display:grid;align-items:center}
.assembly-step{padding:32px 0;border-top:1px solid #30353a}
.assembly-date{font-size:12px;letter-spacing:.12em;color:#e3e6e8;margin:0 0 28px}
.assembly-date>span{display:block;font-size:10px;letter-spacing:.12em;color:#90999f;margin-top:9px;line-height:1.7}
.assembly-step h3{font-size:clamp(34px,3.5vw,51px);line-height:1.1;letter-spacing:-.04em;font-weight:450;margin:0 0 26px}
.assembly-description{font-size:16px;line-height:1.85;color:#aeb4b9;margin:0 0 26px;max-width:490px}
.assembly-tags{font-size:10px;letter-spacing:.11em;line-height:1.7;color:#8c969e;margin:0}
.assembly-cta{display:inline-block;font-size:13px;border-bottom:1px solid #64717c;padding:12px 0;margin-top:14px}
.assembly-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:9px;letter-spacing:.09em;color:#808b93;line-height:1.7;margin-top:32px}
.assembly-bottom>a{color:#b6bdc2;font-size:11px;letter-spacing:0;white-space:nowrap}
.assembly-ready .assembly-track{height:490svh}
.assembly-ready .assembly-pin{position:sticky;top:0;height:100svh;min-height:650px;max-height:1080px}
.assembly-ready .assembly-figure{max-height:67svh}
.assembly-ready .assembly-chapters{display:grid}.assembly-ready .assembly-motion{display:block}
.assembly-ready .assembly-step{grid-area:1/1;padding:0;border:0;visibility:hidden;opacity:0;transform:translateY(16px);transition:opacity .32s ease,transform .45s ease,visibility .32s}
.assembly-ready .assembly-step.current{visibility:visible;opacity:1;transform:translateY(0)}
.assembly-reduced .assembly-track{height:auto}.assembly-reduced .assembly-pin{position:relative;height:auto;max-height:none;align-items:start}
.assembly-reduced .assembly-visual{position:sticky;top:30px}.assembly-reduced .assembly-chapters{display:none}
.assembly-reduced .assembly-copy{display:block}.assembly-reduced .assembly-step{visibility:visible;opacity:1;transform:none;border-top:1px solid #333;padding:30px 0}
.assembly-reduced .assembly-bottom>span{display:none}.assembly-reduced .assembly-motion{display:none}
.assembly-unavailable .assembly-visual{display:none}.assembly-unavailable .assembly-pin{grid-template-columns:1fr}
@media(min-width:1500px){.assembly-pin{gap:100px}.assembly-step h3{font-size:54px}.assembly-description{font-size:18px}}
@media(max-width:1100px){.assembly-pin{gap:40px}.assembly-bottom{flex-wrap:wrap}.assembly-caption{flex-wrap:wrap;gap:0}.assembly-heading{gap:20px}.assembly-chapters{gap:8px}.assembly-chapters button>span:nth-child(2){font-size:9px}.assembly-step h3{font-size:37px}.assembly-description{font-size:15px}}
@media(max-width:760px){
 .route-grid{grid-template-columns:1fr}.primary-route h3{font-size:37px}.secondary-route h3{font-size:32px}.route-card{min-height:355px}
 .assembly-story{padding-top:55px}.assembly-heading{display:block;padding-bottom:28px}.assembly-heading .eyebrow{font-size:10px;margin:0 0 24px}.assembly-heading h2{font-size:42px}.assembly-heading>p:last-child{font-size:16px;margin-top:20px}
 .assembly-pin{grid-template-columns:1fr;gap:15px;padding-block:22px}.assembly-ready .assembly-pin{height:100svh;min-height:640px;max-height:none;align-content:center;grid-template-rows:auto auto}
 .assembly-ready .assembly-track{height:510svh}.assembly-visual{width:100%;max-width:430px;margin:auto}
 .assembly-topline{font-size:8px;letter-spacing:.09em}.assembly-figure{height:34svh;max-height:300px!important;min-height:195px;aspect-ratio:auto}
 .assembly-caption{padding:4px 0;font-size:10px;flex-wrap:nowrap;min-height:32px}.assembly-motion{font-size:10px}
 .assembly-content{justify-content:flex-start}.assembly-chapters{margin-bottom:18px;gap:13px}.assembly-chapters button{padding:4px 0 11px}
 .assembly-chapters button>span:first-child{font-size:11px;margin-bottom:5px}.assembly-chapters button>span:nth-child(2){font-size:9px}
 .assembly-copy{min-height:235px}.assembly-date{font-size:10px;margin:0 0 15px}.assembly-date>span{font-size:9px;margin-top:5px}
 .assembly-step h3{font-size:32px;margin-bottom:14px}.assembly-step h3 br{display:none}
 .assembly-description{font-size:14px;line-height:1.65;margin-bottom:15px}.assembly-tags{font-size:8px;line-height:1.7}
 .assembly-cta{font-size:12px;margin-top:6px;padding:8px 0}.assembly-bottom{margin-top:16px;font-size:8px;gap:5px}.assembly-bottom>a{font-size:10px}
 .assembly-reduced .assembly-track{height:auto}.assembly-reduced .assembly-pin{height:auto;min-height:0;display:block}.assembly-reduced .assembly-visual{position:relative;top:0}.assembly-reduced .assembly-copy{min-height:0}.assembly-reduced .assembly-step{padding:28px 0}.assembly-reduced .assembly-chapters{display:none}
}
@media(max-height:720px) and (min-width:761px){.assembly-ready .assembly-pin{min-height:580px}.assembly-chapters{margin-bottom:24px}.assembly-date{margin-bottom:20px}.assembly-step h3{font-size:36px;margin-bottom:20px}.assembly-description{font-size:14px}.assembly-bottom{margin-top:22px}}
@media(max-width:380px){.assembly-ready .assembly-pin{min-height:665px}.assembly-copy{min-height:260px}.assembly-step h3{font-size:28px}.assembly-caption{font-size:9px}.assembly-bottom>span{max-width:130px}}
@media(prefers-reduced-motion:reduce){.assembly-step{transition:none!important;transform:none!important}}
@media(max-height:619px){
 .assembly-ready .assembly-track{height:auto}.assembly-ready .assembly-pin{height:auto;min-height:0;max-height:none;position:relative;align-items:start}
 .assembly-ready .assembly-copy{display:block}.assembly-ready .assembly-step{visibility:visible;opacity:1;transform:none;transition:none;border-top:1px solid #333;padding:28px 0}
 .assembly-ready .assembly-chapters,.assembly-ready .assembly-motion,.assembly-bottom>span{display:none}
 .assembly-ready .assembly-visual{position:sticky;top:24px}.assembly-ready .assembly-figure{min-height:195px;max-height:70svh}
}
@media(max-height:619px) and (max-width:760px){.assembly-ready .assembly-visual{position:relative;top:0}}
@media print{.assembly-story{display:none}}

/* Individual parts remain assembled as the career progresses. */
.assembly-piece-rail{display:grid;grid-template-columns:repeat(21,1fr);gap:4px;padding:10px 0 16px}.assembly-piece-rail i{height:3px;background:#303437;transition:background .2s}.assembly-piece-rail i.fitted{background:#ccd0d3}.assembly-topline{font-size:12px}.assembly-caption{font-size:13px;align-items:flex-start;min-height:75px}.assembly-component{max-width:72%}.assembly-motion{font-size:12px}.assembly-chapters button>span:nth-child(2){font-size:12px}.assembly-date{font-size:13px}.assembly-tags{font-size:12px}.assembly-description{font-size:17px}.assembly-ready .assembly-track{height:560svh}.assembly-heading>p:last-child{max-width:580px}.assembly-figure:after{content:"";position:absolute;inset:9% 4%;border:1px solid #ffffff05;border-radius:50%;pointer-events:none}.assembly-reduced .assembly-track{height:auto}
@media(max-width:760px){.assembly-ready .assembly-track{height:580svh}.assembly-figure{height:32svh}.assembly-topline{font-size:11px}.assembly-caption{font-size:12px;min-height:52px}.assembly-motion{font-size:12px}.assembly-piece-rail{padding:5px 0 10px;gap:3px}.assembly-description{font-size:16px;line-height:1.55}.assembly-tags{font-size:11px}.assembly-chapters button>span:nth-child(2){font-size:11px}.assembly-date{font-size:12px}.assembly-date>span{font-size:11px}.assembly-bottom>a{font-size:12px}.assembly-reduced .assembly-track{height:auto}}
@media(max-height:619px){.assembly-ready .assembly-track{height:auto}}
@media(prefers-reduced-motion:reduce){.assembly-piece-rail i{transition:none}}
