.intro-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.timeline-trigger{min-height:50px;padding:0 18px;border:1px solid rgba(255,255,255,.2);border-radius:12px;background:rgba(255,255,255,.06);color:#f5f5f7;font:600 14px/1 var(--font);cursor:pointer;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);transition:transform 160ms var(--ease-out),background-color 160ms ease,border-color 160ms ease}
.timeline-trigger span{display:inline-block;margin-left:12px;color:#ff453a}.timeline-trigger:active{transform:scale(.97)}
.recruitment-timeline{position:fixed;inset:50% auto auto 50%;width:min(1120px,calc(100vw - 48px));max-width:none;max-height:min(88svh,780px);margin:0;padding:clamp(30px,3vw,42px);overflow:auto;border:1px solid rgba(255,255,255,.76);border-radius:28px;background:rgba(247,247,249,.97);color:#1d1d1f;box-shadow:0 36px 120px rgba(0,0,0,.42);transform:translate(-50%,-50%);transform-origin:center;backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px)}
.recruitment-timeline:not([open]){display:none}.recruitment-timeline::backdrop{background:rgba(0,0,0,.66);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.recruitment-timeline:before{position:absolute;inset:0;content:"";pointer-events:none;background:radial-gradient(circle at 94% 0,rgba(226,27,35,.12),transparent 34%)}
.timeline-close{position:sticky;top:0;z-index:5;display:grid;width:38px;height:38px;margin:-8px -8px -26px auto;place-items:center;border:1px solid rgba(0,0,0,.08);border-radius:999px;background:rgba(255,255,255,.88);color:#1d1d1f;font:400 25px/1 var(--font);cursor:pointer;box-shadow:0 5px 18px rgba(0,0,0,.08);transition:transform 160ms var(--ease-out),background-color 160ms ease}.timeline-close:active{transform:scale(.94)}
.timeline-heading,.timeline-list,.timeline-cta{position:relative;z-index:1}.recruitment-timeline.is-motion-ready .timeline-heading,.recruitment-timeline.is-motion-ready .timeline-step,.recruitment-timeline.is-motion-ready .timeline-cta{opacity:0}
.timeline-heading{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr);gap:clamp(28px,6vw,76px);align-items:end;margin-bottom:32px;padding-right:44px}
.timeline-kicker{margin:0 0 13px;color:#d21921;font-size:11px;font-weight:700;letter-spacing:.08em}.timeline-heading h2{margin:0;font:600 clamp(42px,5vw,66px)/.92 var(--font);letter-spacing:-.065em}.timeline-heading>p{max-width:380px;margin:0 0 4px;color:#6e6e73;font-size:15px;line-height:1.5}
.timeline-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:0;margin:0;list-style:none}.timeline-step{position:relative;min-width:0;padding-top:35px}.timeline-step:before{position:absolute;top:13px;left:0;width:calc(100% + 12px);height:1px;content:"";background:#d2d2d7}.timeline-step:last-child:before{width:100%}
.timeline-marker{position:absolute;top:0;left:0;z-index:2;display:grid;width:27px;height:27px;place-items:center;border:1px solid #c7c7cc;border-radius:999px;background:#f5f5f7;color:#86868b;font-size:9px;font-weight:700}.is-complete .timeline-marker{border-color:#1d1d1f;background:#1d1d1f;color:#fff}.is-complete:before{background:#1d1d1f}.is-current .timeline-marker{border-color:#d21921;background:#d21921;color:#fff;box-shadow:0 0 0 5px rgba(210,25,33,.1)}
.timeline-card{height:100%;min-height:252px;padding:19px;border:1px solid rgba(0,0,0,.09);border-radius:17px;background:rgba(255,255,255,.76);box-shadow:0 12px 34px rgba(0,0,0,.04)}.is-current .timeline-card{border-color:rgba(210,25,33,.35);box-shadow:0 16px 42px rgba(210,25,33,.08)}
.timeline-status{display:inline-flex;min-height:24px;align-items:center;padding:0 9px;border-radius:999px;background:#eeeef0;color:#6e6e73;font-size:10px;font-weight:650}.is-complete .timeline-status{background:#1d1d1f;color:#fff}.is-current .timeline-status{background:#ffe8e8;color:#c3131b}.timeline-number{margin:22px 0 10px;color:#aeaeb2;font-size:11px;font-weight:700;letter-spacing:.08em}.timeline-card h3{margin:0 0 11px;font:600 clamp(21px,2vw,27px)/1.05 var(--font);letter-spacing:-.04em}.timeline-card>p:last-of-type{margin:0;color:#6e6e73;font-size:13px;line-height:1.48}
.timeline-event{display:flex;gap:9px;align-items:flex-start;margin-top:15px;padding:11px;border-radius:12px;background:#f2f2f7;color:#3a3a3c}.timeline-event>span{color:#d21921}.timeline-event p{margin:0;font-size:11px;line-height:1.4}.timeline-event time{color:#6e6e73}
.timeline-cta{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-top:18px;padding:17px 19px;border-radius:16px;background:#1d1d1f;color:#fff}.timeline-cta p{margin:0;font-size:14px}.timeline-cta p span{display:block;margin-bottom:3px;color:#ff453a;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.timeline-cta .primary{flex:0 0 auto;min-height:44px}
@media(hover:hover) and (pointer:fine){.timeline-trigger:hover{border-color:rgba(255,255,255,.36);background:rgba(255,255,255,.11)}.timeline-close:hover{background:#fff}}
@media(max-width:900px){.timeline-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.timeline-step:nth-child(2):before{width:100%}}
@media(max-width:760px){.intro-actions{width:100%}.intro-actions .primary,.timeline-trigger{width:100%;justify-content:center}.recruitment-timeline{inset:auto 0 0;width:100%;max-height:92svh;padding:24px 20px calc(20px + env(safe-area-inset-bottom));border-width:1px 0 0;border-radius:24px 24px 0 0;transform:none}.timeline-close{top:0;margin:0 0 -30px auto}.timeline-heading{grid-template-columns:1fr;gap:16px;margin-bottom:32px;padding:4px 46px 0 0}.timeline-heading h2{font-size:clamp(42px,13vw,58px)}.timeline-heading>p{font-size:14px}.timeline-list{display:block}.timeline-step{display:grid;grid-template-columns:29px minmax(0,1fr);gap:14px;padding:0 0 14px}.timeline-step:before{top:27px;left:13px;width:1px!important;height:calc(100% - 9px)}.timeline-step:last-child:before{display:none}.timeline-marker{position:relative;grid-column:1;top:0}.timeline-card{grid-column:2;min-height:0;padding:18px}.timeline-number{margin-top:20px}.timeline-cta{align-items:stretch;flex-direction:column}.timeline-cta .primary{width:100%}}
@media(prefers-reduced-motion:reduce){.timeline-trigger,.timeline-close{transition-property:background-color,border-color}}
