/* FilmIndustry Jobs UP1673 — Final Public Design Complete Polish
   Consolidated final pass for public/mobile UI after screenshot review. */

body.fij-design-v1673{
  --fij-mobile-safe-x: clamp(14px, 4vw, 18px);
  --fij-mobile-card-border: rgba(7,17,31,.10);
  --fij-mobile-muted: #667281;
}

/* Keep detail/application flows focused: app bar is suppressed in Blade, this is a defensive guard. */
body.fij-design-v1673.fij-job-detail-context .fij-mobile-appbar,
body.fij-design-v1673.fij-application-detail-context .fij-mobile-appbar,
body.fij-design-v1673.fij-article-detail-context .fij-mobile-appbar,
body.fij-design-v1673.fij-company-detail-context .fij-mobile-appbar{
  display:none!important;
}

@media (max-width: 760px){
  html,body{overflow-x:hidden!important;}
  body.fij-design-v1673 .container,
  body.fij-design-v1673 main>.section>.container,
  body.fij-design-v1673 .fij-home-section-v1658>.container{
    width:100%!important;
    max-width:none!important;
    padding-left:var(--fij-mobile-safe-x)!important;
    padding-right:var(--fij-mobile-safe-x)!important;
  }

  /* Header/menu final tightening. */
  body.fij-design-v1673 .fij-public-header-inner{
    min-height:64px!important;
    padding-left:12px!important;
    padding-right:12px!important;
  }
  body.fij-design-v1673 .fij-public-brand,
  body.fij-design-v1673 .fij-brand-lockup{
    min-width:0!important;
    gap:10px!important;
  }
  body.fij-design-v1673 .fij-brand-lockup svg,
  body.fij-design-v1673 .fij-brand-mark,
  body.fij-design-v1673 .fij-brand-icon{
    width:42px!important;
    height:42px!important;
    flex:0 0 42px!important;
  }
  body.fij-design-v1673 .fij-brand-title,
  body.fij-design-v1673 .fij-brand-lockup strong,
  body.fij-design-v1673 .fij-public-brand strong{
    max-width:200px!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    font-size:19px!important;
    line-height:1!important;
  }
  body.fij-design-v1673 .fij-mobile-menu-button{
    min-width:96px!important;
    height:46px!important;
    padding:0 16px!important;
    gap:8px!important;
    border-radius:10px!important;
    font-size:12px!important;
    letter-spacing:.12em!important;
  }

  /* Section typography: keep the large editorial style but avoid broken lines. */
  body.fij-design-v1673 .fij-section-head-v1658 h2,
  body.fij-design-v1673 .fij-page-v1661 h1,
  body.fij-design-v1673 .hero h1,
  body.fij-design-v1673 .seo-list-hero h1{
    font-size:clamp(30px, 8vw, 42px)!important;
    line-height:1.06!important;
    letter-spacing:-.045em!important;
    max-width:13.5em!important;
  }
  body.fij-design-v1673 .fij-section-head-v1658{
    margin-bottom:14px!important;
  }
  body.fij-design-v1673 .fij-section-head-v1658>a,
  body.fij-design-v1673 .hero-actions .btn,
  body.fij-design-v1673 .action-stack .btn,
  body.fij-design-v1673 .btn{
    min-height:38px!important;
    width:auto!important;
    max-width:280px!important;
    padding:10px 16px!important;
    font-size:11px!important;
    letter-spacing:.12em!important;
  }
  body.fij-design-v1673 .search .btn,
  body.fij-design-v1673 form.search .btn,
  body.fij-design-v1673 .polished-search .btn,
  body.fij-design-v1673 .compact-public-form .btn[type="submit"],
  body.fij-design-v1673 .fij-mobile-detail-actions-v1665 .btn{
    max-width:none!important;
  }

  /* Homepage featured jobs: align icon, title and chips so cards do not look fragmented. */
  body.fij-design-v1673 .fij-home-v1673 .fij-featured-section-v1658{
    padding-top:28px!important;
    padding-bottom:22px!important;
  }
  body.fij-design-v1673 .fij-home-v1673 .fij-featured-stack-v1658{
    display:grid!important;
    gap:10px!important;
  }
  body.fij-design-v1673 .fij-home-v1673 .fij-featured-job-v1658{
    display:grid!important;
    grid-template-columns:38px minmax(0,1fr)!important;
    grid-template-areas:"icon main" "icon meta"!important;
    column-gap:10px!important;
    row-gap:6px!important;
    align-items:start!important;
    min-height:0!important;
    padding:13px 12px!important;
    border:1px solid var(--fij-mobile-card-border)!important;
    box-shadow:none!important;
    background:#fff!important;
  }
  body.fij-design-v1673 .fij-home-v1673 .fij-job-icon-v1658{
    grid-area:icon!important;
    width:36px!important;
    height:36px!important;
    min-width:36px!important;
    margin-top:2px!important;
    display:grid!important;
    place-items:center!important;
    font-size:13px!important;
    background:#f8fafc!important;
    color:#007c89!important;
    border:1px solid rgba(7,17,31,.10)!important;
  }
  body.fij-design-v1673 .fij-home-v1673 .fij-job-main-v1658{grid-area:main!important;min-width:0!important;}
  body.fij-design-v1673 .fij-home-v1673 .fij-job-main-v1658>span{
    display:block!important;
    margin:0 0 4px!important;
    font-size:10px!important;
    line-height:1.1!important;
    letter-spacing:.16em!important;
    color:#d72b70!important;
  }
  body.fij-design-v1673 .fij-home-v1673 .fij-job-main-v1658 h3{
    margin:0!important;
    font-size:clamp(20px, 5.5vw, 25px)!important;
    line-height:1.08!important;
    letter-spacing:-.035em!important;
  }
  body.fij-design-v1673 .fij-home-v1673 .fij-job-main-v1658 p{display:none!important;}
  body.fij-design-v1673 .fij-home-v1673 .fij-job-meta-v1658{
    grid-area:meta!important;
    display:flex!important;
    flex-wrap:wrap!important;
    gap:5px!important;
    align-items:center!important;
    min-width:0!important;
    margin:0!important;
  }
  body.fij-design-v1673 .fij-home-v1673 .fij-job-meta-v1658 strong,
  body.fij-design-v1673 .fij-home-v1673 .fij-job-meta-v1658 span{
    display:inline-flex!important;
    max-width:100%!important;
    align-items:center!important;
    min-height:24px!important;
    padding:4px 7px!important;
    border:1px solid rgba(7,17,31,.08)!important;
    background:#f8fafc!important;
    color:#536071!important;
    font-size:10px!important;
    line-height:1.1!important;
    letter-spacing:.02em!important;
    white-space:normal!important;
  }
  body.fij-design-v1673 .fij-home-v1673 .fij-job-meta-v1658 strong{
    background:#eefcff!important;
    border-color:rgba(0,194,215,.22)!important;
    color:#126977!important;
  }

  /* Jobs index cards: compact, scan-friendly list with normalized chips. */
  body.fij-design-v1673.fij-jobs-index-context .jobs-mobile-section,
  body.fij-design-v1673.fij-jobs-index-context .section.jobs-mobile-section{
    padding-top:18px!important;
    padding-bottom:calc(92px + env(safe-area-inset-bottom,0px))!important;
  }
  body.fij-design-v1673 .job-listing-card.polished-job-card,
  body.fij-design-v1673 .listing-card.job-listing-card{
    display:block!important;
    padding:14px 13px!important;
    border:1px solid var(--fij-mobile-card-border)!important;
    box-shadow:none!important;
    background:#fff!important;
  }
  body.fij-design-v1673 .job-listing-card .job-card-main h3{
    margin:6px 0 8px!important;
    font-size:clamp(22px, 6vw, 28px)!important;
    line-height:1.08!important;
    letter-spacing:-.035em!important;
  }
  body.fij-design-v1673 .job-listing-card .job-card-main p{display:none!important;}
  body.fij-design-v1673 .job-meta.job-meta-compact{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:5px!important;
  }
  body.fij-design-v1673 .meta-token{
    min-height:24px!important;
    padding:4px 8px!important;
    border-radius:0!important;
    font-size:10px!important;
    line-height:1.1!important;
    font-weight:800!important;
    letter-spacing:.02em!important;
    text-transform:none!important;
    border:1px solid rgba(7,17,31,.08)!important;
    color:#526173!important;
    background:#f8fafc!important;
  }
  body.fij-design-v1673 .meta-token-company{background:#f8fafc!important;color:#475569!important;}
  body.fij-design-v1673 .meta-token-location{background:#ecfeff!important;border-color:rgba(6,182,212,.20)!important;color:#0e7490!important;}
  body.fij-design-v1673 .meta-token-workplace{background:#ecfdf5!important;border-color:rgba(16,185,129,.18)!important;color:#047857!important;}
  body.fij-design-v1673 .meta-token-rate{background:#f1f5f9!important;border-color:rgba(100,116,139,.16)!important;color:#64748b!important;}
  body.fij-design-v1673 .job-listing-card .btn.compact,
  body.fij-design-v1673 .job-listing-card .btn.secondary.compact{
    display:inline-flex!important;
    margin-top:12px!important;
    min-height:34px!important;
    max-width:150px!important;
    padding:8px 13px!important;
    font-size:10px!important;
    letter-spacing:.12em!important;
  }

  /* Job detail and apply pages: remove boxed-in feel and improve sticky action bar. */
  body.fij-design-v1673.fij-job-detail-context .job-detail-section,
  body.fij-design-v1673.fij-job-detail-context .apply-section{
    padding-top:16px!important;
    padding-bottom:18px!important;
  }
  body.fij-design-v1673.fij-job-detail-context .detail-layout-grid,
  body.fij-design-v1673.fij-application-detail-context .detail-layout-grid{
    display:block!important;
  }
  body.fij-design-v1673 .job-detail-card,
  body.fij-design-v1673 .apply-card,
  body.fij-design-v1673 .guidance-card,
  body.fij-design-v1673 .sticky-apply-panel,
  body.fij-design-v1673 .detail-panel{
    border:0!important;
    box-shadow:none!important;
    padding:0!important;
    background:transparent!important;
  }
  body.fij-design-v1673 .job-detail-card h1{
    font-size:clamp(38px, 10vw, 54px)!important;
    line-height:.98!important;
  }
  body.fij-design-v1673 .job-detail-card>div,
  body.fij-design-v1673 .article-body>div,
  body.fij-design-v1673 .article-body p,
  body.fij-design-v1673 .article-body li{
    font-size:18px!important;
    line-height:1.75!important;
  }
  body.fij-design-v1673 .job-detail-badge-grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
    margin-top:20px!important;
  }
  body.fij-design-v1673 .job-detail-badge-grid>div{
    padding:10px!important;
    border:1px solid rgba(7,17,31,.08)!important;
    background:#fff!important;
  }
  body.fij-design-v1673 .job-detail-badge-grid>div span{
    font-size:9px!important;
    letter-spacing:.13em!important;
  }
  body.fij-design-v1673 .job-detail-badge-grid>div strong{
    margin-top:4px!important;
    font-size:14px!important;
    line-height:1.2!important;
  }
  body.fij-design-v1673 .fij-mobile-detail-actions-v1665{
    left:0!important;
    right:0!important;
    bottom:0!important;
    z-index:60!important;
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
    padding:9px 12px calc(9px + env(safe-area-inset-bottom,0px))!important;
    border-top:1px solid rgba(7,17,31,.10)!important;
    background:rgba(255,255,255,.96)!important;
    backdrop-filter:blur(12px)!important;
    box-shadow:0 -12px 30px rgba(7,17,31,.10)!important;
  }
  body.fij-design-v1673 .fij-mobile-detail-actions-v1665 .btn{
    min-height:42px!important;
    padding:10px 12px!important;
    font-size:11px!important;
    letter-spacing:.13em!important;
  }
  body.fij-design-v1673.fij-job-detail-context main,
  body.fij-design-v1673.fij-application-detail-context main{
    padding-bottom:76px!important;
  }

  /* Forms/auth/dashboards: slimmer fields, less nested borders. */
  body.fij-design-v1673.fj-auth .fij-auth-shell{
    display:block!important;
    min-height:100vh!important;
  }
  body.fij-design-v1673.fj-auth .fij-auth-brand-panel{
    min-height:0!important;
    padding:28px var(--fij-mobile-safe-x)!important;
  }
  body.fij-design-v1673.fj-auth .fij-auth-brand-panel h1{
    font-size:clamp(34px, 9vw, 46px)!important;
    line-height:1.03!important;
  }
  body.fij-design-v1673.fj-auth .fij-auth-form-panel{
    padding:18px var(--fij-mobile-safe-x) 36px!important;
  }
  body.fij-design-v1673 input,
  body.fij-design-v1673 select,
  body.fij-design-v1673 textarea,
  body.fij-design-v1673 .input{
    min-height:42px!important;
    padding:10px 12px!important;
    font-size:15px!important;
  }
  body.fij-design-v1673 label,
  body.fij-design-v1673 .form-grid label{
    margin-bottom:12px!important;
  }
  body.fij-design-v1673 .check{
    display:flex!important;
    align-items:flex-start!important;
    gap:10px!important;
    font-size:14px!important;
    line-height:1.45!important;
  }

  body.fij-design-v1673.fij-dashboard-context .card,
  body.fij-design-v1673.fij-dashboard-context .dashboard-card,
  body.fij-design-v1673 .company-card,
  body.fij-design-v1673 .pricing-card,
  body.fij-design-v1673 .resource-card,
  body.fij-design-v1673 .articles-card{
    padding:14px!important;
    border:1px solid var(--fij-mobile-card-border)!important;
    box-shadow:none!important;
  }

  /* Articles/companies/pricing/legal: compact card images and no full-width billboard buttons. */
  body.fij-design-v1673 .fij-image-shell,
  body.fij-design-v1673 .seo-card-image,
  body.fij-design-v1673 .resource-card img,
  body.fij-design-v1673 .articles-card img{
    height:132px!important;
    min-height:132px!important;
    object-fit:cover!important;
  }
  body.fij-design-v1673 .articles-card h3,
  body.fij-design-v1673 .resource-card h3,
  body.fij-design-v1673 .company-card h3,
  body.fij-design-v1673 .pricing-card h3{
    font-size:clamp(22px, 6vw, 30px)!important;
    line-height:1.12!important;
    letter-spacing:-.035em!important;
  }

  /* Bottom app bar: centered icons/labels, calmer active state. */
  body.fij-design-v1673 .fij-mobile-appbar{
    left:8px!important;
    right:8px!important;
    bottom:8px!important;
    height:70px!important;
    padding:4px 5px calc(4px + env(safe-area-inset-bottom,0px))!important;
    border:1px solid rgba(7,17,31,.10)!important;
    border-radius:14px!important;
    background:rgba(255,255,255,.96)!important;
    box-shadow:0 10px 30px rgba(7,17,31,.13)!important;
    backdrop-filter:blur(14px)!important;
  }
  body.fij-design-v1673 .fij-mobile-appbar-item{
    min-width:0!important;
    min-height:58px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:4px!important;
    padding:5px 2px!important;
    border-radius:10px!important;
    overflow:hidden!important;
  }
  body.fij-design-v1673 .fij-mobile-appbar-item span[aria-hidden="true"]{
    height:18px!important;
    line-height:18px!important;
    font-size:18px!important;
    display:block!important;
  }
  body.fij-design-v1673 .fij-mobile-appbar-item small{
    max-width:100%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    font-size:9.5px!important;
    letter-spacing:.06em!important;
    line-height:1.1!important;
  }
  body.fij-design-v1673 .fij-mobile-appbar-item.active{
    background:#ecfeff!important;
    color:#0e7490!important;
  }
  body.fij-design-v1673 .fij-mobile-appbar-post{
    background:transparent!important;
    color:inherit!important;
  }
  body.fij-design-v1673 .fij-mobile-appbar-post.active{
    background:#07111f!important;
    color:#fff!important;
  }

  /* Footer final alignment and safe spacing above browser/app bars. */
  body.fij-design-v1673 .fij-public-footer{
    padding-top:28px!important;
    padding-bottom:calc(104px + env(safe-area-inset-bottom,0px))!important;
  }
  body.fij-design-v1673 .fij-footer-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:18px 16px!important;
  }
  body.fij-design-v1673 .fij-footer-brand-block{
    grid-column:1/-1!important;
    margin-bottom:2px!important;
  }
  body.fij-design-v1673 .fij-footer-brand-block p{
    max-width:32ch!important;
    font-size:13px!important;
    line-height:1.55!important;
  }
  body.fij-design-v1673 .fij-footer-grid h3{
    font-size:10px!important;
    letter-spacing:.16em!important;
    margin-bottom:8px!important;
  }
  body.fij-design-v1673 .fij-footer-grid a{
    padding:4px 0!important;
    font-size:12.5px!important;
    line-height:1.35!important;
  }
  body.fij-design-v1673 .fij-footer-bottom{
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:6px!important;
    text-align:left!important;
    font-size:11px!important;
    line-height:1.4!important;
  }
}

@media (max-width: 380px){
  body.fij-design-v1673 .fij-brand-title,
  body.fij-design-v1673 .fij-brand-lockup strong{max-width:160px!important;font-size:18px!important;}
  body.fij-design-v1673 .fij-mobile-menu-button{min-width:78px!important;padding:0 11px!important;}
  body.fij-design-v1673 .fij-mobile-menu-button b{font-size:11px!important;}
  body.fij-design-v1673 .fij-mobile-appbar-item small{font-size:8.6px!important;letter-spacing:.035em!important;}
  body.fij-design-v1673 .fij-home-v1673 .fij-job-meta-v1658 strong,
  body.fij-design-v1673 .fij-home-v1673 .fij-job-meta-v1658 span{font-size:9.5px!important;}
}

@media (min-width: 761px){
  body.fij-design-v1673 .fij-featured-job-v1658:hover,
  body.fij-design-v1673 .job-listing-card:hover,
  body.fij-design-v1673 .company-card:hover,
  body.fij-design-v1673 .resource-card:hover{
    transform:translateY(-2px);
  }
}
