/* =========================================================
   F5 - CAREERS
   ========================================================= */
.nav__links a[aria-current="page"]{color:var(--red)}
.nav__links a[aria-current="page"]::before,.nav__links a[aria-current="page"]::after{opacity:1}

/* ---------- hero: thermal scan ---------- */
.c-hero{position:relative;height:100vh;height:100svh;min-height:620px;overflow:hidden;display:flex;align-items:flex-end}
.c-hero__img{position:absolute;inset:-4%;background-size:cover;background-position:65% 30%}
.c-hero__img--mono{filter:grayscale(1) brightness(.35) contrast(1.3)}
.c-hero__img--scan{--scan:0%;clip-path:inset(0 0 calc(100% - var(--scan)) 0);filter:saturate(1.05)}
.c-hero__scanline{
  position:absolute;left:0;right:0;top:0;height:2px;background:var(--blaze);z-index:1;
  box-shadow:0 0 18px 4px rgba(255,90,31,.55),0 0 80px 10px rgba(255,90,31,.2);
}
.c-hero__shade{position:absolute;inset:0;background:linear-gradient(to top,rgba(11,12,10,.95) 0%,rgba(11,12,10,.45) 45%,rgba(11,12,10,.1) 100%),linear-gradient(90deg,rgba(11,12,10,.7),transparent 60%)}
.c-hero__hud{position:absolute;z-index:3;display:flex;flex-direction:column;gap:4px;font-family:var(--f-mono);font-size:11px;letter-spacing:.16em;color:var(--bone-dim);text-transform:uppercase}
.c-hero__hud b{color:var(--bone);font-weight:500}
.c-hero__hud--tr{top:100px;right:var(--gutter);text-align:right}
.c-hero__hud--br{bottom:var(--gutter);right:var(--gutter);text-align:right}
.c-hero__copy{position:relative;z-index:2;padding:0 var(--gutter) clamp(48px,9vh,110px);width:100%}
.c-hero__title{font-family:var(--f-stencil);font-weight:900;text-transform:uppercase;font-size:clamp(64px,13vw,230px);line-height:.82;letter-spacing:-.01em}
.c-hero__title .line{display:block;overflow:hidden;padding-bottom:.02em}
.c-hero__title .line > span{display:inline-block}
.c-hero__title .line--red{color:var(--red)}
.c-hero__role{white-space:nowrap}
.c-hero__lede{max-width:52ch;color:var(--bone);opacity:.85;margin:24px 0 28px;font-size:clamp(15px,1.2vw,18px)}
.c-hero__cta{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.c-hero__count{font-family:var(--f-mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--bone-dim)}
.c-hero__count b{font-family:var(--f-stencil);font-size:34px;color:var(--bone);margin-right:6px;vertical-align:-4px}
@media (max-width:760px){.c-hero__hud--br{display:none}.c-hero__hud--tr{top:90px}}

.marquee--dark{background:var(--bone);color:var(--ink);transform:rotate(1.5deg) scale(1.04)}

/* ---------- why ---------- */
.why{position:relative;padding:clamp(110px,16vh,190px) var(--gutter) clamp(90px,12vh,140px);overflow:hidden}
.why > *:not(.topo){position:relative}
.why__grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:60px;border-top:1px solid var(--line-2)}
.why__item{padding:28px 24px 10px 0;border-right:1px solid var(--line);padding-left:24px;position:relative}
.why__item:first-child{padding-left:0}.why__item:last-child{border-right:0}
.why__item::before{content:"";position:absolute;top:-1px;left:0;height:2px;width:0;background:var(--red);transition:width .6s var(--ease)}
.why__item:hover::before{width:100%}
.why__no{font-family:var(--f-mono);font-size:11px;letter-spacing:.2em;color:var(--blaze)}
.why__item h3{font-family:var(--f-stencil);font-weight:900;text-transform:uppercase;font-size:clamp(30px,2.8vw,44px);line-height:.92;margin:10px 0}
.why__item p{color:var(--bone-dim);font-size:15px}
@media (max-width:900px){
  .why__grid{grid-template-columns:1fr 1fr}
  .why__item{padding:24px 16px 24px 0!important;border-right:0;border-bottom:1px solid var(--line)}
}

/* ---------- week (horizontal) ---------- */
.week{position:relative;background:#000;border-top:1px solid var(--line)}
.week__pin{height:100vh;height:100svh;position:relative;overflow:hidden}
.week__head{position:absolute;z-index:3;top:100px;left:var(--gutter);pointer-events:none;mix-blend-mode:difference}
.week__head .label{color:#fff}
.week__head .h2{font-size:clamp(40px,5.6vw,96px);color:#fff}
.week__track{position:absolute;inset:0;display:flex;width:max-content;will-change:transform}
.week__panel{position:relative;width:78vw;height:100%;overflow:hidden;border-right:2px solid #000}
.week__panel > div{position:absolute;inset:0 -12%;background-size:cover;background-position:center;filter:grayscale(.35) contrast(1.05)}
.week__panel::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.85),transparent 50%)}
.week__panel figcaption{position:absolute;z-index:2;left:clamp(24px,4vw,60px);bottom:clamp(40px,8vh,90px);display:flex;flex-direction:column;gap:6px}
.week__panel small{font-family:var(--f-mono);font-size:12px;letter-spacing:.2em;color:var(--blaze)}
.week__panel b{font-family:var(--f-stencil);font-weight:900;text-transform:uppercase;font-size:clamp(56px,9vw,160px);line-height:.84}
.week__panel span{color:rgba(255,255,255,.85);max-width:36ch}
@media (max-width:760px){
  .week__pin{height:auto;padding-top:0}
  .week__head{position:relative;top:auto;padding:90px 0 30px;mix-blend-mode:normal}
  .week__track{position:relative;flex-direction:column;width:auto;transform:none!important}
  .week__panel{width:100%;height:70vh;border-right:0;border-bottom:2px solid #000}
}

/* ---------- requirements ---------- */
.reqs{position:relative;padding:clamp(110px,16vh,190px) var(--gutter);background:var(--ink-2);border-top:1px solid var(--line)}
.reqs__head{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:24px;margin-bottom:56px}
.reqs__head .label{grid-column:1/-1;margin-bottom:0}
.reqs__lede{color:var(--bone-dim);max-width:40ch;justify-self:end}
.reqs__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.placard{
  position:relative;padding:34px 30px 30px;background:var(--ink);border:1px solid var(--line-2);overflow:hidden;
  background-image:repeating-linear-gradient(-45deg,transparent 0 22px,rgba(255,90,31,.05) 22px 44px);
}
.placard::before{content:"";position:absolute;left:0;right:0;top:0;height:8px;background:repeating-linear-gradient(-45deg,var(--blaze) 0 12px,var(--ink) 12px 24px)}
.placard__tag{font-family:var(--f-mono);font-size:11px;letter-spacing:.2em;color:var(--blaze)}
.placard strong{display:block;font-family:var(--f-stencil);font-weight:900;text-transform:uppercase;font-size:clamp(64px,7vw,120px);line-height:.85;margin:14px 0 12px}
.placard p{color:var(--bone-dim);max-width:30ch}
.placard__stamp{
  position:absolute;top:26px;right:22px;font-family:var(--f-stencil);font-weight:900;text-transform:uppercase;font-size:22px;letter-spacing:.08em;
  color:#6fdc6f;border:3px solid #6fdc6f;padding:2px 10px;transform:rotate(-12deg) scale(2.2);opacity:0;
}
.placard.is-cleared .placard__stamp{animation:stamp .45s cubic-bezier(.2,1.6,.4,1) forwards}
@keyframes stamp{to{transform:rotate(-12deg) scale(1);opacity:.9}}
@media (max-width:900px){.reqs__head{grid-template-columns:1fr}.reqs__lede{justify-self:start}.reqs__grid{grid-template-columns:1fr}}

/* ---------- job board ---------- */
.jobs{position:relative;padding:clamp(110px,16vh,190px) var(--gutter);border-top:1px solid var(--line)}
.jobs__head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-bottom:48px}
.jobs__filter{display:flex;gap:6px;flex-wrap:wrap}
.jobs__filter button{
  font-family:var(--f-mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--bone);
  background:transparent;border:1px solid var(--line-2);padding:10px 16px;transition:all .25s
}
.jobs__filter button:hover{border-color:var(--bone)}
.jobs__filter button.is-on{background:var(--red);border-color:var(--red)}
.jobs__list{border-top:1px solid var(--line-2)}
.job{border-bottom:1px solid var(--line-2)}
.job.is-hidden{display:none}
.job__bar{
  position:relative;width:100%;display:grid;grid-template-columns:90px 1fr auto 56px;align-items:center;gap:20px;
  padding:26px 0;background:none;border:0;color:inherit;text-align:left;font:inherit;overflow:hidden;
}
.job__bar::before{content:"";position:absolute;inset:0;background:var(--red);transform:scaleY(0);transform-origin:bottom;transition:transform .5s var(--ease)}
.job__bar:hover::before,.job.is-open .job__bar::before{transform:scaleY(1);transform-origin:top}
.job__bar > *{position:relative}
.job__no{font-family:var(--f-mono);font-size:12px;letter-spacing:.16em;color:var(--bone-dim);transition:color .3s}
.job__title{font-family:var(--f-stencil);font-weight:900;text-transform:uppercase;font-size:clamp(40px,6vw,100px);line-height:.9;transition:transform .5s var(--ease)}
.job__title small{font-size:.45em;color:var(--bone-dim);transition:color .3s}
.job__bar:hover .job__title{transform:translateX(18px)}
.job__meta{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.job__meta i{font-style:normal;font-family:var(--f-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;border:1px solid var(--line-2);padding:6px 10px;transition:border-color .3s}
.job__bar:hover .job__no,.job__bar:hover .job__title small,.job.is-open .job__no,.job.is-open .job__title small{color:var(--bone)}
.job__bar:hover .job__meta i,.job.is-open .job__meta i{border-color:rgba(236,230,214,.55)}
.job__toggle{width:44px;height:44px;border:1px solid var(--line-2);position:relative;justify-self:end;transition:transform .5s var(--ease),border-color .3s}
.job__toggle::before,.job__toggle::after{content:"";position:absolute;left:50%;top:50%;width:16px;height:2px;background:var(--bone);transform:translate(-50%,-50%)}
.job__toggle::after{transform:translate(-50%,-50%) rotate(90deg);transition:transform .4s var(--ease)}
.job.is-open .job__toggle{transform:rotate(180deg);border-color:var(--bone)}
.job.is-open .job__toggle::after{transform:translate(-50%,-50%) rotate(0)}
.job__panel{height:0;overflow:hidden}
.job__inner{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,.8fr);gap:clamp(24px,4vw,64px);padding:40px 0 56px 110px}
.job__main h4{font-family:var(--f-mono);font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--blaze);margin:32px 0 12px}
.job__main h4:first-child{margin-top:0}
.job__main p{color:var(--bone);opacity:.85;max-width:68ch;margin-bottom:12px}
.job__main ul{list-style:none;display:grid;gap:8px}
.job__main li{position:relative;padding-left:26px;color:var(--bone-dim);max-width:70ch}
.job__main li::before{content:"";position:absolute;left:2px;top:.62em;width:10px;height:2px;background:var(--red)}
.job__main .ul--plus li::before{content:"+";background:none;width:auto;height:auto;top:0;color:var(--blaze);font-family:var(--f-mono)}
.job__side{position:sticky;top:100px;align-self:start;background:var(--ink-2);border:1px solid var(--line-2);padding:26px}
.job__side dl{display:grid;grid-template-columns:auto 1fr;gap:12px 18px;margin-bottom:20px;padding-bottom:20px;border-bottom:1px dashed var(--line-2)}
.job__side dt{font-family:var(--f-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--bone-dim)}
.job__side dd{font-weight:500}
.job__side dd small{color:var(--bone-dim)}
.job__fine{font-size:13px;color:var(--bone-dim);margin-bottom:12px}
.job__side .btn{margin-top:10px}
.jobs__empty{font-family:var(--f-mono);color:var(--bone-dim);padding:40px 0}
@media (max-width:900px){
  .job__bar{grid-template-columns:1fr 44px;gap:10px 16px}
  .job__no{grid-column:1/-1}
  .job__meta{grid-column:1;justify-content:flex-start}
  .job__toggle{grid-row:2/4;grid-column:2}
  .job__inner{grid-template-columns:1fr;padding-left:0}
  .job__side{position:relative;top:auto}
}

/* ---------- apply (built around Airtable embed) ---------- */
.apply{
  display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(30px,5vw,80px);
  padding:clamp(110px,16vh,190px) var(--gutter);background:var(--ink-2);border-top:1px solid var(--line);position:relative;overflow:hidden
}
.apply__left{position:sticky;top:110px;align-self:start}
.apply__left > p:not(.label){color:var(--bone-dim);max-width:42ch;margin-top:20px}
.apply__picklabel{display:block;width:100%;font-family:var(--f-mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--blaze);margin-bottom:10px}
.apply__pick{display:flex;flex-wrap:wrap;gap:8px;margin-top:36px}
.apply__pick button{
  font-family:var(--f-mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--bone);
  background:var(--ink);border:1px solid var(--line-2);padding:12px 16px;transition:all .25s;
  clip-path:polygon(0 0,calc(100% - 8px) 0,100% 8px,100% 100%,0 100%);
}
.apply__pick button:hover{border-color:var(--bone)}
.apply__pick button.is-on{background:var(--red);border-color:var(--red)}
.apply__kit{margin-top:30px}
.apply__kit ul{list-style:none;display:grid;gap:0;border-top:1px solid var(--line)}
.apply__kit li{display:flex;gap:14px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line);font-size:15px}
.apply__kit b{font-family:var(--f-mono);font-size:10px;letter-spacing:.14em;padding:3px 6px;border:1px solid var(--line-2);color:var(--bone-dim);font-weight:500}
.apply__kit li:nth-child(-n+2) b{border-color:var(--red);color:var(--red)}
.apply__eeo{font-family:var(--f-mono);font-size:11px;letter-spacing:.08em;margin-top:26px;opacity:.7}

.apply__case{
  position:relative;background:var(--ink);border:1px solid var(--line-2);padding:14px;
  box-shadow:0 50px 120px -40px rgba(0,0,0,.9);
}
.apply__case::before,.apply__case::after{content:"";position:absolute;width:26px;height:26px;border:3px solid var(--red);z-index:2}
.apply__case::before{top:-3px;left:-3px;border-right:0;border-bottom:0}
.apply__case::after{bottom:-3px;right:-3px;border-left:0;border-top:0}
.apply__stamp{
  position:absolute;z-index:3;top:-62px;right:-14px;font-family:var(--f-stencil);font-weight:900;text-transform:uppercase;
  font-size:26px;line-height:.9;text-align:center;color:var(--red);border:3px solid var(--red);padding:8px 14px;
  transform:rotate(9deg);background:rgba(11,12,10,.9);
}
.apply__bar{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-family:var(--f-mono);font-size:11px;letter-spacing:.16em;color:var(--bone-dim);padding:6px 6px 14px;border-bottom:1px dashed var(--line-2);margin-bottom:14px}
.apply__bar b{color:var(--blaze);font-weight:500}
.apply__led{display:inline-block;width:8px;height:8px;border-radius:50%;background:#6fdc6f;margin-right:8px;box-shadow:0 0 8px #6fdc6f;animation:blink 1.4s steps(2) infinite}
.apply__frame{position:relative;background:#fff;border-radius:2px;overflow:hidden}
.apply__frame iframe{display:block;width:100%;height:min(1400px,160vh);border:0;background:transparent;position:relative;z-index:1}
.apply__frame.is-loading iframe{opacity:0}
.apply__loading{
  position:absolute;inset:0;z-index:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding-top:140px;gap:18px;
  background:var(--ink-3);font-family:var(--f-mono);font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--bone-dim)
}
.apply__loading svg{width:80px;height:80px;fill:none;stroke:var(--red);stroke-width:2;animation:spin 2.4s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.apply__foot{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:14px 6px 4px;font-family:var(--f-mono);font-size:11px;letter-spacing:.1em;color:var(--bone-dim)}
.apply__fallback{color:var(--bone);border-bottom:1px solid var(--red)}
.apply__fallback:hover{color:var(--red)}
.apply__case.is-pulse{animation:pulseCase .7s var(--ease)}
@keyframes pulseCase{0%{box-shadow:0 0 0 0 rgba(200,38,45,.8)}100%{box-shadow:0 0 0 28px rgba(200,38,45,0)}}
@media (max-width:980px){
  .apply{grid-template-columns:1fr}
  .apply__left{position:relative;top:auto}
  .apply__stamp{right:4px;top:-56px;font-size:18px}
  .apply__frame iframe{height:1500px}
}

.join--single{grid-template-columns:1fr}
@media (max-width:560px){.apply__stamp{display:none}}
