/* Careers page — Design 1 content, Design 2 style. */
.cr-hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:48px;align-items:center}
@media(max-width:900px){.cr-hero{grid-template-columns:1fr;gap:28px}}
.cr-quote blockquote{font-size:15.5px;font-weight:500;line-height:1.6}
.cr-quote footer{justify-content:flex-start}
.cr-av{width:48px;height:48px;border-radius:50%;object-fit:cover;object-position:top}
.cr-quote footer strong{display:block}
#culture .system .get{font-size:24px}
/* good times rail */
.gt-rail{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:12px;scrollbar-width:thin}
.gt-card{position:relative;flex:0 0 min(380px,80vw);margin:0;border-radius:var(--radius-lg);overflow:hidden;scroll-snap-align:start;aspect-ratio:3/2;border:1px solid var(--line)}
.gt-card img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.gt-card:hover img{transform:scale(1.05)}
.gt-card figcaption{position:absolute;left:12px;bottom:12px;background:rgba(21,24,38,.82);color:#fff;font-weight:700;font-size:13px;border-radius:999px;padding:5px 12px}
.gt-card .who-flag{position:absolute;left:10px;top:10px}
/* roles accordion */
.roles summary{display:flex;align-items:center;gap:14px;flex-wrap:wrap;font-size:20px}
.role-tag{font:700 11px var(--f-mono);letter-spacing:.08em;text-transform:uppercase;background:var(--tint);color:var(--purple-ink);border-radius:5px;padding:4px 8px}
.role-cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.role-cols h4{font-size:15px;margin:0 0 8px}
.role-cols .checks li{font-size:14.5px}
.role-cta{grid-column:1/-1}
@media(max-width:800px){.role-cols{grid-template-columns:1fr}}
/* apply */
.apply-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:48px;align-items:start}
.apply-grid>*{min-width:0}
@media(max-width:900px){.apply-grid{grid-template-columns:minmax(0,1fr);gap:28px}}
.cr-form{border:1px solid var(--line);box-shadow:var(--shadow)}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:560px){.frow{grid-template-columns:1fr}}
.cr-drop input[type=file]{position:absolute;opacity:0;width:1px;height:1px}
.cr-drop-box{display:block;margin-top:6px;padding:18px;border:1.5px dashed #CFC6FF;border-radius:10px;background:var(--tint);color:var(--purple-ink);font-weight:600;text-align:center;cursor:pointer;overflow-wrap:anywhere}
.cr-drop:focus-within .cr-drop-box{box-shadow:0 0 0 3px rgba(75,25,245,.18)}
.cr-err{margin-top:12px;color:#C81E3A;font-weight:600;font-size:14px}
.cr-ok{margin-top:14px;padding:14px;border-radius:10px;background:#E8FFF0;color:#0B6B37;font-weight:700}
.gt-card .who-flag{font:700 10px var(--f-mono);letter-spacing:.08em;text-transform:uppercase;background:rgba(255,255,255,.9);color:var(--ink-2);border-radius:5px;padding:3px 7px}
.cs-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:28px}
.cs-ctrl{display:flex;gap:10px}
.cs-ctrl button{width:48px;height:48px;border-radius:50%;border:1px solid var(--line);background:var(--surface);color:var(--purple-ink);font-size:20px;cursor:pointer;transition:background .2s,color .2s}
.cs-ctrl button:hover{background:var(--purple);color:#fff}
@media(max-width:760px){.cs-head{flex-direction:column;align-items:flex-start}}

/* ---------- P.I.S.C. chain ---------- */
#culture .sec-head.center{margin-inline:auto;text-align:center}
#culture .sec-head.center h2::after{margin-inline:auto}
.chain{--gap:-46px;--tilt:0deg;display:flex;justify-content:center;align-items:center;padding:30px 0 10px}
.ch-link{position:relative;width:230px;height:132px;border-radius:66px;border:18px solid var(--c);display:grid;place-items:center;flex:none;
  margin-left:var(--gap);transform:rotate(calc(var(--tilt) * (var(--i) - 1.5)));box-shadow:0 0 0 4px var(--deep),inset 0 0 0 4px var(--deep),0 18px 30px rgba(0,0,0,.25);transition:filter .4s}
.ch-link:first-child{margin-left:0}
.ch-link b{font:800 54px/1 var(--f-sans);color:var(--c)}
.ch-link:nth-child(odd){z-index:2}.ch-link:nth-child(even){z-index:1}
.c1{--c:#F5B400}.c2{--c:#FFFFFF}.c3{--c:#FF39C6}.c4{--c:#9C88FF}
.chain.linked .ch-link{animation:ch-glow 1.4s ease-out 1}
@keyframes ch-glow{0%{filter:drop-shadow(0 0 0 rgba(245,180,0,0))}40%{filter:drop-shadow(0 0 18px rgba(245,180,0,.9))}100%{filter:drop-shadow(0 0 0 rgba(245,180,0,0))}}
.ch-status{text-align:center;margin-top:18px;font:700 12px var(--f-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--on-deep-2)}
.chain.linked + .ch-status span{color:var(--gold)}
.ch-info{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;margin-top:34px;border-top:2px solid rgba(255,255,255,.18);padding-top:26px}
.ch-info .n{font:700 13px var(--f-mono);color:var(--gold);letter-spacing:.08em}
.ch-info h3{color:#fff;font-size:22px;margin:6px 0}
.ch-info p{color:var(--on-deep-2);font-size:15px}
.js-motion .ch-info li{opacity:.25;transform:translateY(10px);transition:opacity .5s calc(var(--i) * .12s),transform .5s calc(var(--i) * .12s)}
.js-motion .chain.linked ~ .ch-info li{opacity:1;transform:none}
@media(max-width:900px){.ch-link{width:120px;height:76px;border-width:10px}.ch-link b{font-size:30px}.chain{--gap:-24px}.ch-info{grid-template-columns:1fr 1fr}}
@media(max-width:420px){.ch-link{width:96px;height:64px;border-width:9px}.chain{--gap:-20px}.ch-info{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.js-motion .ch-info li{opacity:1;transform:none}}

/* ---------- block tower ---------- */
.tower-wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:end}
.tower-legend{list-style:none;display:grid;gap:8px}
.tower-legend li{display:flex;gap:12px;align-items:center;padding:8px 12px;border-radius:12px;transition:background .3s,opacity .3s}
.tower-legend b{font:700 13px var(--f-mono);color:var(--purple-ink);width:26px}
.tower-legend strong{display:block;font-size:15px}.tower-legend span{font-size:13.5px;color:var(--ink-2)}
.js-motion .tower-legend li{opacity:.4}
.tower-legend li.on{opacity:1;background:var(--tint)}
.tower-stage{position:relative;padding-top:60px}
.tower{display:flex;flex-direction:column-reverse;align-items:center;gap:6px}
.blk{--w:100%;position:relative;width:calc(var(--w));height:64px;border-radius:12px;display:flex;align-items:center;gap:12px;padding:0 18px;color:#fff;
  background:var(--bc);box-shadow:inset 0 -6px 0 rgba(0,0,0,.18),inset 0 3px 0 rgba(255,255,255,.25),0 8px 16px rgba(21,24,38,.12)}
.blk-n{font:700 13px var(--f-mono);opacity:.85}.blk-t{font-weight:800;font-size:16px}
.b1{--w:100%;--bc:#4B19F5}.b2{--w:90%;--bc:#7B61FF;margin-left:4%}.b3{--w:80%;--bc:#F5B400;color:#151826;margin-right:5%}
.b4{--w:70%;--bc:#FF39C6;margin-left:3%}.b5{--w:60%;--bc:#0E8A7A}.b6{--w:52%;--bc:#151826;margin-left:2%}
.blk-crown{position:absolute;left:50%;top:-30px;width:44px;transform:translateX(-50%) scale(0);transition:transform .45s cubic-bezier(.3,1.8,.5,1)}
.blk-crown svg{width:44px;height:auto;display:block}
.tower.done .blk-crown,.tower.static .blk-crown{transform:translateX(-50%) scale(1)}
.tower-base{height:14px;border-radius:999px;background:radial-gradient(closest-side,rgba(21,24,38,.18),transparent);margin-top:6px}
@media(max-width:900px){.tower-wrap{grid-template-columns:1fr;gap:28px}.blk{height:auto;min-height:64px;padding-block:12px}.blk-t{font-size:14px;line-height:1.3}}
@media(prefers-reduced-motion:reduce){.js-motion .tower-legend li{opacity:1}}

/* Keep the career path in view while each role becomes the next building block. */
.tower.is-animated .blk{opacity:var(--block-reveal,0);transform:translate3d(0,var(--block-y,-260px),0) rotate(var(--block-rotation,0deg));will-change:transform,opacity}
.tower-motion .tower-legend li{opacity:var(--tower-opacity,.3);background:rgba(75,25,245,var(--tower-tint,0));transition:none}
.tower-motion .tower-legend li.is-current{box-shadow:inset 3px 0 var(--gold)}
.tower.is-animated .blk-crown{opacity:var(--crown-reveal,0);transform:translateX(-50%) translateY(var(--crown-y,-18px)) scale(var(--crown-scale,0));transition:none}
.tower-scroll{height:var(--tower-height);padding-block:clamp(22px,4vh,36px)}
.tower-scroll .tower-wrap{height:100%;align-items:center;gap:40px}
.tower-scroll .sec-head{margin-bottom:14px!important}
.tower-scroll .sec-head .eyebrow{margin-bottom:8px}
.tower-scroll .sec-head h2{font-size:clamp(28px,3vw,36px)}
.tower-scroll .sec-head h2::after{margin-top:12px}
.tower-scroll .sec-head .lead{font-size:16px;line-height:1.5;margin-top:12px}
.tower-scroll .tower-legend{gap:4px}
.tower-scroll .tower-legend li{padding:6px 12px}
.tower-scroll .tower-legend strong{font-size:14px;line-height:1.25}
.tower-scroll .tower-legend span{display:block;font-size:12px;line-height:1.4;margin-top:3px}
.tower-scroll .tower-stage{padding-top:40px;align-self:end}
.tower-scroll .blk{height:clamp(48px,7.8vh,64px)}
.tower-scroll .blk-t{font-size:clamp(12px,1.2vw,16px);line-height:1.25}
@media(max-width:900px){
  .tower-scroll{padding-block:18px}
  .tower-scroll .tower-wrap{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto;column-gap:14px;row-gap:14px}
  .tower-scroll .tower-wrap>div:first-child{display:contents}
  .tower-scroll .sec-head{grid-column:1/-1;grid-row:1;margin-bottom:0!important}
  .tower-scroll .sec-head h2{font-size:28px}
  .tower-scroll .sec-head .lead{font-size:14px;line-height:1.5;margin-top:10px}
  .tower-scroll .tower-legend{grid-column:1;grid-row:2;align-self:center;gap:4px}
  .tower-scroll .tower-legend li{gap:6px;padding:6px 8px}
  .tower-scroll .tower-legend b{width:18px;flex:none;font-size:10px}
  .tower-scroll .tower-legend strong{font-size:12px;line-height:1.3}
  .tower-scroll .tower-legend span{font-size:11px;line-height:1.4}
  .tower-scroll .tower-legend li:not(.is-current) span{display:none}
  .tower-scroll .tower-stage{grid-column:2;grid-row:2;padding-top:32px}
  .tower-scroll .tower{gap:4px}
  .tower-scroll .blk{height:48px;min-height:48px;border-radius:9px;padding:6px 8px}
  .tower-scroll .blk-t{font-size:11px;line-height:1.25}
  .tower-scroll .blk-n{display:none}
  .tower-scroll .b2{--w:96%}.tower-scroll .b3{--w:92%}.tower-scroll .b4{--w:88%}.tower-scroll .b5{--w:84%}.tower-scroll .b6{--w:80%}
  .tower-scroll .btn-row{grid-column:1/-1;grid-row:3;margin-top:0!important}
  .tower-scroll .btn-row .btn{font-size:13px;padding:12px 18px}
}
@media(prefers-reduced-motion:reduce){.tower.is-animated .blk{opacity:1;transform:none}.tower-motion .tower-legend li{opacity:1}.tower.is-animated .blk-crown{opacity:1;transform:translateX(-50%)}}

/* ---------- role cards ---------- */
.role-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.role-card{display:flex;flex-direction:column;gap:14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:24px;transition:border-color .25s,transform .25s,box-shadow .25s}
.role-card:hover{border-color:var(--purple);transform:translateY(-4px);box-shadow:var(--shadow)}
.rc-top{display:flex;gap:14px;align-items:center;padding-bottom:14px;border-bottom:1px solid var(--line)}
.rc-top h3{font-size:20px}
.rc-top .role-tag{display:inline-block;margin-top:6px}
.rc-sec h4{font:700 11px var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2);margin:0 0 6px}
.rc-sec .checks li{font-size:14.5px}
.rc-btn{margin-top:auto;align-self:flex-start}
@media(max-width:900px){.role-grid{grid-template-columns:1fr}}
