/* FIJ 1.8.7.8 — compact shared public hero with clean edge media */
.fij-public-shell .fij-public-hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  width:100%;
  margin:0;
  padding:0;
  color:#11182b;
  background:linear-gradient(102deg,#ffffff 0%,#fbfdfd 58%,#eef8f6 100%);
  border:0;
}
.fij-public-shell .fij-public-hero__frame{
  position:relative;
  min-height:320px;
  box-sizing:border-box;
}
.fij-public-shell .fij-public-hero__inner{
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  min-height:320px;
  box-sizing:border-box;
  padding-top:28px;
  padding-bottom:30px;
}
.fij-public-shell .fij-public-hero__slot{
  position:relative;
  z-index:2;
  width:100%;
  min-width:0;
  max-width:760px;
}
.fij-public-shell .fij-public-hero--has-media .fij-public-hero__slot{
  width:min(56%,720px);
  padding-right:clamp(22px,3vw,46px);
}
.fij-public-shell .fij-public-hero__slot > .container,
.fij-public-shell .fij-public-hero__slot > .fij-container{
  width:auto;
  max-width:none;
  margin:0;
  padding:0;
}
.fij-public-shell .fij-public-hero__slot :is(h1,h2,h3,p,.eyebrow,.fij-kicker){
  position:relative;
  z-index:1;
}
.fij-public-shell .fij-public-hero__slot h1{
  max-width:780px;
  margin:0 0 10px;
  color:#11182b;
  font-size:clamp(38px,3.6vw,50px);
  line-height:1.04;
  letter-spacing:-.045em;
  text-wrap:balance;
}
.fij-public-shell .fij-public-hero__slot h2{color:#11182b}

.fij-public-shell .fij-public-hero--jobs .fij-public-hero__slot h1{
  font-size:clamp(38px,3.35vw,46px);
  max-width:660px;
}
.fij-public-shell .fij-public-hero__slot p{
  max-width:690px;
  margin-top:0;
  color:#526174;
  font-size:clamp(15px,1.2vw,17px);
  line-height:1.48;
}
.fij-public-shell .fij-public-hero__slot :is(.eyebrow,.fij-kicker){
  display:inline-flex;
  align-items:center;
  gap:10px;
  margin:0 0 14px;
  color:#078b78;
  font-size:12px;
  font-weight:800;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.fij-public-shell .fij-public-hero__slot :is(.eyebrow,.fij-kicker)::before{
  content:"";
  width:17px;
  height:2px;
  background:#ff6849;
  flex:0 0 auto;
}
.fij-public-shell .fij-public-hero__slot :is(.button-row,.action-stack,.hero-actions,.fij-action-row,[class*="actions"]){
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:12px;
  margin-top:14px;
}
/* Hero media is not a card. It fills the complete right side of the hero. */
.fij-public-shell .fij-public-hero__media{
  position:absolute;
  z-index:0;
  inset:0 0 0 56%;
  min-width:0;
  margin:0;
  overflow:hidden;
  background:#edf4f3;
  border:0;
  border-radius:0;
  box-shadow:none;
}
.fij-public-shell .fij-public-hero__media picture,
.fij-public-shell .fij-public-hero__media img{
  display:block;
  width:100%;
  height:100%;
}
.fij-public-shell .fij-public-hero__media img{
  min-height:0;
  object-fit:cover;
  object-position:var(--fij-hero-object-position,center center);
  filter:none;
  transform:none;
  image-rendering:auto;
}
.fij-public-shell .fij-public-hero__media figcaption{
  position:absolute;
  right:18px;
  bottom:16px;
  z-index:3;
  display:grid;
  gap:2px;
  max-width:min(70%,420px);
  padding:7px 10px;
  background:rgba(255,255,255,.92);
  color:#465365;
  font-size:.72rem;
  line-height:1.35;
}
/* Split heroes are reserved for functional two-column content, not media cards. */
.fij-public-shell .fij-public-hero--split .fij-public-hero__slot{
  width:100%;
  max-width:none;
  padding-right:0;
}
.fij-public-shell .fij-public-hero--split .fij-public-hero__slot > .container,
.fij-public-shell .fij-public-hero--split .fij-public-hero__slot > .fij-container{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(300px,.72fr);
  gap:clamp(30px,5vw,68px);
  align-items:center;
}
.fij-public-shell .fij-public-hero--split .fij-public-hero__slot > .container > :first-child,
.fij-public-shell .fij-public-hero--split .fij-public-hero__slot > .fij-container > :first-child{
  min-width:0;
}
.fij-public-shell .fij-public-hero--split .fij-public-hero__slot > .container > :nth-child(2),
.fij-public-shell .fij-public-hero--split .fij-public-hero__slot > .fij-container > :nth-child(2){
  min-width:0;
  align-self:stretch;
}
.fij-public-shell .fij-public-hero--split .fij-public-hero__slot :is(aside,.card,[class*="score"],[class*="summary"],[class*="proof"]){
  background:rgba(255,255,255,.92);
  border:1px solid rgba(17,24,43,.10);
  box-shadow:0 18px 45px rgba(24,42,58,.08);
}
.fij-public-shell .fij-public-hero__divider{
  position:relative;
  z-index:3;
  width:100%;
  height:4px;
  margin:0;
  background:repeating-linear-gradient(90deg,#ff6849 0 54px,#ffb84f 54px 92px,#20b99a 92px 142px,#7a69ff 142px 188px);
}
.fij-public-shell .fij-public-hero + .fij-public-hero__divider,
.fij-public-shell .fij-public-hero .fij-public-hero__divider + .fij-public-hero__divider{display:none}
/* Homepage keeps its established larger scale and image treatment. */
.fij-public-shell .fij-home-hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  color:#11182b;
  background:
    linear-gradient(90deg,rgba(255,255,255,.99) 0%,rgba(255,255,255,.96) 42%,rgba(255,255,255,.18) 72%,rgba(255,255,255,.02) 100%),
    image-set(url('../../hero/sharp/filmjobs-hero-sharp-home-960.webp') 1x,url('../../hero/sharp/filmjobs-hero-sharp-home-1920.webp') 2x) center right/cover no-repeat;
}
.fij-public-shell .fij-home-hero :is(h1,h2,h3){color:#11182b}
.fij-public-shell .fij-home-hero p{color:#526174}
.fij-public-shell .fij-home-hero + .fij-public-hero__divider{display:block}
/* Auth brand panel uses the same sharp source without becoming a public hero component. */
.fij-auth .fij-auth-brand-panel{
  background:
    linear-gradient(115deg,rgba(255,255,255,.98),rgba(242,249,248,.86)),
    image-set(url('../../hero/sharp/filmjobs-hero-sharp-candidate-960.webp') 1x,url('../../hero/sharp/filmjobs-hero-sharp-candidate-1920.webp') 2x) center/cover no-repeat;
  color:#11182b;
}
.fij-auth .fij-auth-brand-panel :is(h1,p,.eyebrow){color:inherit}


/* Article hero: compact editorial variant with featured-image priority. */
.fij-public-shell .fij-public-hero--article .fij-public-hero__slot{
  width:min(58%,760px);
  max-width:760px;
  padding-right:clamp(20px,2.7vw,42px);
}
.fij-public-shell .fij-public-hero--article .fij-public-hero__media{
  inset:0 0 0 58%;
}
.fij-public-shell .fij-public-hero--article .fij-article-breadcrumb{
  gap:6px;
  margin:0 0 10px;
  color:#718094;
  font-size:.71rem;
  line-height:1.35;
}
.fij-public-shell .fij-public-hero--article .fij-editorial-kicker{
  margin-bottom:9px;
}
.fij-public-shell .fij-public-hero--article .fij-public-hero__slot h1{
  max-width:720px;
  margin-bottom:10px;
  font-size:clamp(32px,2.75vw,42px);
  line-height:1.02;
  letter-spacing:-.043em;
}
.fij-public-shell .fij-public-hero--article.fij-public-hero--title-long .fij-public-hero__slot h1{
  font-size:clamp(30px,2.45vw,38px);
}
.fij-public-shell .fij-public-hero--article.fij-public-hero--title-xlong .fij-public-hero__slot h1{
  font-size:clamp(28px,2.2vw,34px);
  line-height:1.04;
}
.fij-public-shell .fij-public-hero--article .fij-article-dek{
  max-width:680px;
  margin:0;
  font-size:clamp(14px,1.05vw,16px);
  line-height:1.48;
}
.fij-public-shell .fij-article-hero-meta{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px 18px;
  margin-top:15px;
  color:#536174;
  font-size:.76rem;
  line-height:1.25;
}
.fij-public-shell .fij-article-hero-meta > span:not(.fij-author-avatar){
  display:grid;
  gap:2px;
  min-width:0;
}
.fij-public-shell .fij-article-hero-meta strong{
  color:#172136;
  font-size:.78rem;
  font-weight:800;
}
.fij-public-shell .fij-article-hero-meta strong a{
  color:inherit;
  text-decoration:none;
}
.fij-public-shell .fij-article-hero-meta small{
  color:#778396;
  font-size:.66rem;
  line-height:1.2;
}
.fij-public-shell .fij-public-hero--article .fij-author-avatar{
  width:34px;
  height:34px;
  flex:0 0 34px;
  border-radius:50%;
}

@media (max-width:860px){

  .fij-public-shell .fij-public-hero--article .fij-public-hero__slot,
  .fij-public-shell .fij-public-hero--article.fij-public-hero--has-media .fij-public-hero__slot{
    width:100%;
    max-width:none;
    padding-right:0;
  }
  .fij-public-shell .fij-public-hero--article .fij-public-hero__slot h1,
  .fij-public-shell .fij-public-hero--article.fij-public-hero--title-long .fij-public-hero__slot h1,
  .fij-public-shell .fij-public-hero--article.fij-public-hero--title-xlong .fij-public-hero__slot h1{
    max-width:none;
    font-size:clamp(29px,8.5vw,38px);
    line-height:1.04;
  }
  .fij-public-shell .fij-public-hero--article .fij-article-breadcrumb{
    margin-bottom:10px;
  }
  .fij-public-shell .fij-article-hero-meta{
    display:grid;
    grid-template-columns:34px minmax(0,1fr) minmax(92px,auto);
    gap:8px 12px;
    margin-top:14px;
  }
  .fij-public-shell .fij-article-hero-meta > span:last-child{
    grid-column:2 / -1;
  }

  .fij-public-shell .fij-public-hero__frame,
  .fij-public-shell .fij-public-hero__inner{min-height:0}
  .fij-public-shell .fij-public-hero__inner{
    display:block;
    padding-top:34px;
    padding-bottom:0;
  }
  .fij-public-shell .fij-public-hero__slot,
  .fij-public-shell .fij-public-hero--has-media .fij-public-hero__slot,
  .fij-public-shell .fij-public-hero__slot > .container,
  .fij-public-shell .fij-public-hero__slot > .fij-container{
    width:100%;
    max-width:none;
    padding-right:0;
  }
  .fij-public-shell .fij-public-hero--has-media .fij-public-hero__slot{padding-bottom:24px}
  .fij-public-shell .fij-public-hero:not(.fij-public-hero--has-media) .fij-public-hero__inner{padding-bottom:38px}
  .fij-public-shell .fij-public-hero__slot h1{
    max-width:none;
    font-size:clamp(34px,9.5vw,44px);
    line-height:1.04;
  }
  .fij-public-shell .fij-public-hero__slot p{font-size:16px;line-height:1.55}
  .fij-public-shell .fij-public-hero__media{
    position:relative;
    inset:auto;
    width:100vw;
    height:auto;
    margin-left:calc(50% - 50vw);
    aspect-ratio:16/9;
  }
  .fij-public-shell .fij-public-hero__media img{min-height:0}
  .fij-public-shell .fij-public-hero--split .fij-public-hero__slot > .container,
  .fij-public-shell .fij-public-hero--split .fij-public-hero__slot > .fij-container{
    grid-template-columns:1fr;
    gap:20px;
  }
  .fij-public-shell .fij-public-hero__slot :is(.button-row,.action-stack,.hero-actions,.fij-action-row,[class*="actions"]){
    display:grid;
    grid-template-columns:1fr;
  }
  .fij-public-shell .fij-public-hero__slot :is(.button-row,.action-stack,.hero-actions,.fij-action-row,[class*="actions"]) > *{width:100%}
  .fij-public-shell .fij-public-hero__divider{height:3px}
  .fij-public-shell .fij-home-hero{
    padding:48px 0 40px;
    background:
      linear-gradient(180deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.90) 62%,rgba(255,255,255,.28) 100%),
      url('../../hero/sharp/filmjobs-hero-sharp-home-960.webp') center/cover no-repeat;
  }
}
@media (prefers-reduced-motion:reduce){
  .fij-public-shell .fij-public-hero *{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}
