/* FilmIndustry Jobs — UP1676 Content Pages Final Public Polish
   Scope: companies, articles, pricing, legal/contact, SEO/talent public pages.
   Guardrail: CSS-only visual polish, no business logic changes. */

.fij-design-v1676 {
  --fij-v1676-edge: 14px;
  --fij-v1676-border: rgba(15, 23, 42, .12);
  --fij-v1676-soft: #f8f8f5;
  --fij-v1676-dark: #07111f;
  --fij-v1676-cyan: #00c2d7;
  --fij-v1676-pink: #ff0a66;
}

/* Keep desktop calm after many mobile layers. */
@media (min-width: 768px) {
  body.fij-design-v1676.fij-content-polish-context .hero,
  body.fij-design-v1676.fij-content-polish-context .fjx-hero,
  body.fij-design-v1676.fij-content-polish-context .seo-list-hero,
  body.fij-design-v1676.fij-content-polish-context .fj-list-hero {
    min-height: 0;
    padding-top: clamp(3rem, 5vw, 5rem) !important;
    padding-bottom: clamp(3rem, 5vw, 5rem) !important;
  }

  body.fij-design-v1676.fij-content-polish-context .grid.grid-3,
  body.fij-design-v1676.fij-content-polish-context .company-card-grid,
  body.fij-design-v1676.fij-content-polish-context .pricing-grid-polished,
  body.fij-design-v1676.fij-content-polish-context .faq-grid-polish {
    gap: 1rem !important;
  }

  body.fij-design-v1676.fij-content-polish-context .card,
  body.fij-design-v1676.fij-content-polish-context .resource-card,
  body.fij-design-v1676.fij-content-polish-context .company-card,
  body.fij-design-v1676.fij-content-polish-context .pricing-card,
  body.fij-design-v1676.fij-content-polish-context .polished-pricing-card {
    border-color: var(--fij-v1676-border) !important;
  }
}

@media (max-width: 767px) {
  body.fij-design-v1676.fij-content-polish-context {
    overflow-x: hidden;
  }

  body.fij-design-v1676.fij-content-polish-context .container {
    width: 100%;
    max-width: 100%;
    padding-left: var(--fij-v1676-edge) !important;
    padding-right: var(--fij-v1676-edge) !important;
  }

  /* Compact, less billboard-like content page heroes. */
  body.fij-design-v1676.fij-content-polish-context .hero,
  body.fij-design-v1676.fij-content-polish-context .hero-compact,
  body.fij-design-v1676.fij-content-polish-context .fjx-hero,
  body.fij-design-v1676.fij-content-polish-context .seo-list-hero,
  body.fij-design-v1676.fij-content-polish-context .fj-list-hero,
  body.fij-design-v1676 .fij-company-detail-v1661 .section.company-detail-section {
    min-height: 0 !important;
    padding-top: 24px !important;
    padding-bottom: 20px !important;
    margin: 0 !important;
  }

  body.fij-design-v1676.fij-content-polish-context .hero h1,
  body.fij-design-v1676.fij-content-polish-context .fjx-hero h1,
  body.fij-design-v1676.fij-content-polish-context .section h1,
  body.fij-design-v1676.fij-content-polish-context .page-header h1 {
    max-width: 100% !important;
    font-size: clamp(1.75rem, 8.2vw, 2.5rem) !important;
    line-height: .98 !important;
    letter-spacing: -.045em !important;
    margin-top: 8px !important;
    margin-bottom: 8px !important;
  }

  body.fij-design-v1676.fij-content-polish-context .hero p,
  body.fij-design-v1676.fij-content-polish-context .fjx-hero p,
  body.fij-design-v1676.fij-content-polish-context .section-head p,
  body.fij-design-v1676.fij-content-polish-context .page-header p,
  body.fij-design-v1676.fij-content-polish-context .muted {
    max-width: 100% !important;
    font-size: .88rem !important;
    line-height: 1.55 !important;
  }

  body.fij-design-v1676.fij-content-polish-context .eyebrow {
    font-size: .66rem !important;
    letter-spacing: .13em !important;
  }

  /* Search/filter blocks on content pages should use width but stay low. */
  body.fij-design-v1676.fij-content-polish-context .search,
  body.fij-design-v1676.fij-content-polish-context .polished-search,
  body.fij-design-v1676.fij-content-polish-context .search.advanced {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 9px !important;
    padding: 12px !important;
    margin-top: 14px !important;
    border: 1px solid var(--fij-v1676-border) !important;
    box-shadow: none !important;
  }

  body.fij-design-v1676.fij-content-polish-context input,
  body.fij-design-v1676.fij-content-polish-context select,
  body.fij-design-v1676.fij-content-polish-context textarea,
  body.fij-design-v1676.fij-content-polish-context .input,
  body.fij-design-v1676.fij-content-polish-context .textarea {
    min-height: 42px !important;
    padding: 10px 11px !important;
    font-size: .9rem !important;
    line-height: 1.35 !important;
  }

  body.fij-design-v1676.fij-content-polish-context .textarea,
  body.fij-design-v1676.fij-content-polish-context textarea {
    min-height: 112px !important;
  }

  body.fij-design-v1676.fij-content-polish-context .btn,
  body.fij-design-v1676.fij-content-polish-context button,
  body.fij-design-v1676.fij-content-polish-context a.btn {
    min-height: 40px !important;
    width: auto !important;
    max-width: 280px !important;
    padding: 10px 14px !important;
    font-size: .7rem !important;
    letter-spacing: .085em !important;
    line-height: 1.1 !important;
  }

  body.fij-design-v1676.fij-content-polish-context .search .btn,
  body.fij-design-v1676.fij-content-polish-context .polished-search .btn,
  body.fij-design-v1676.fij-contact-v1661 form .btn {
    width: 100% !important;
    max-width: none !important;
  }

  body.fij-design-v1676.fij-content-polish-context .action-stack,
  body.fij-design-v1676.fij-content-polish-context .hero-actions {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin-top: 14px !important;
  }

  /* Articles: list cards become compact, image fallback no longer dominates. */
  body.fij-design-v1676 .fij-blog-index-v1661 .grid.grid-3,
  body.fij-design-v1676 .fij-blog-index-v1661 .section .grid,
  body.fij-design-v1676 .fij-legal-index-v1661 .grid.grid-3,
  body.fij-design-v1676 .fij-pricing-v1661 .grid.grid-3,
  body.fij-design-v1676 .fij-companies-index-v1661 .grid.grid-3 {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  body.fij-design-v1676 .fij-blog-index-v1661 .resource-card,
  body.fij-design-v1676 .fij-blog-index-v1661 .articles-card {
    display: grid !important;
    grid-template-columns: 88px 1fr !important;
    gap: 12px !important;
    align-items: stretch !important;
    padding: 12px !important;
    min-height: 0 !important;
  }

  body.fij-design-v1676 .fij-blog-index-v1661 .fij-image-shell,
  body.fij-design-v1676 .fij-blog-index-v1661 .seo-card-image {
    width: 88px !important;
    min-width: 88px !important;
    height: 92px !important;
    min-height: 92px !important;
    aspect-ratio: auto !important;
  }

  body.fij-design-v1676 .fij-blog-index-v1661 .resource-card h2,
  body.fij-design-v1676 .fij-blog-index-v1661 .articles-card h2 {
    font-size: 1.05rem !important;
    line-height: 1.12 !important;
    letter-spacing: -.025em !important;
    margin: 4px 0 5px !important;
  }

  body.fij-design-v1676 .fij-blog-index-v1661 .resource-card p,
  body.fij-design-v1676 .fij-blog-index-v1661 .articles-card p {
    display: -webkit-box !important;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    font-size: .82rem !important;
    line-height: 1.45 !important;
    margin: 0 !important;
  }

  body.fij-design-v1676 .fij-article-show-v1661 .fij-article-layout-v1661,
  body.fij-design-v1676 .fij-company-detail-v1661 .detail-layout-grid,
  body.fij-design-v1676 .fij-contact-v1661 .grid.grid-2 {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  body.fij-design-v1676 .fij-article-show-v1661 .fij-article-main-v1661,
  body.fij-design-v1676 .fij-article-show-v1661 .fij-article-side-v1661 .card,
  body.fij-design-v1676 .fij-company-detail-v1661 .company-detail-card,
  body.fij-design-v1676 .fij-company-detail-v1661 .detail-panel {
    padding: 14px !important;
    border-color: var(--fij-v1676-border) !important;
    box-shadow: none !important;
  }

  body.fij-design-v1676 .fij-article-show-v1661 .fij-article-hero-image-v1661 {
    max-height: 190px !important;
    min-height: 120px !important;
    margin: -14px -14px 14px !important;
  }

  body.fij-design-v1676 .fij-article-show-v1661 .fij-article-body-v1661,
  body.fij-design-v1676 .fij-legal-show-v1661 .card {
    font-size: .94rem !important;
    line-height: 1.7 !important;
  }

  body.fij-design-v1676 .fij-article-show-v1661 .fij-article-body-v1661 h2,
  body.fij-design-v1676 .fij-article-show-v1661 .fij-article-body-v1661 h3,
  body.fij-design-v1676 .fij-legal-show-v1661 .card h2,
  body.fij-design-v1676 .fij-legal-show-v1661 .card h3 {
    font-size: 1.35rem !important;
    line-height: 1.12 !important;
    margin-top: 1.2em !important;
  }

  /* Companies: cards become quick-scan rows. */
  body.fij-design-v1676 .fij-companies-index-v1661 .company-card,
  body.fij-design-v1676 .fij-companies-index-v1661 .polished-company-card {
    display: grid !important;
    grid-template-columns: 52px 1fr !important;
    gap: 12px !important;
    padding: 13px !important;
    min-height: 0 !important;
    border-color: var(--fij-v1676-border) !important;
    box-shadow: none !important;
  }

  body.fij-design-v1676 .fij-companies-index-v1661 .seo-logo {
    width: 52px !important;
    height: 52px !important;
    min-width: 52px !important;
    margin: 0 !important;
    font-size: 1rem !important;
  }

  body.fij-design-v1676 .fij-companies-index-v1661 .company-card h2,
  body.fij-design-v1676 .fij-company-detail-v1661 h1,
  body.fij-design-v1676 .fij-company-detail-v1661 h2 {
    font-size: clamp(1.18rem, 5vw, 1.55rem) !important;
    line-height: 1.05 !important;
    letter-spacing: -.03em !important;
  }

  body.fij-design-v1676 .fij-companies-index-v1661 .card-meta,
  body.fij-design-v1676 .fij-company-detail-v1661 .card-meta,
  body.fij-design-v1676 .fij-company-detail-v1661 .job-meta {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
    margin-top: 9px !important;
  }

  body.fij-design-v1676 .fij-companies-index-v1661 .meta-token,
  body.fij-design-v1676 .fij-company-detail-v1661 .meta-token {
    min-height: 0 !important;
    padding: 5px 8px !important;
    font-size: .68rem !important;
    line-height: 1.15 !important;
    letter-spacing: .035em !important;
    background: rgba(0, 194, 215, .10) !important;
    color: #075985 !important;
    border: 1px solid rgba(0, 194, 215, .18) !important;
  }

  /* Pricing: stop plan cards feeling like billboards on mobile. */
  body.fij-design-v1676 .fij-pricing-v1661 .pricing-grid-polished,
  body.fij-design-v1676 .fij-pricing-v1661 .faq-grid-polish {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  body.fij-design-v1676 .fij-pricing-v1661 .pricing-role-card,
  body.fij-design-v1676 .fij-pricing-v1661 .pricing-card,
  body.fij-design-v1676 .fij-pricing-v1661 .coupon-card-polish,
  body.fij-design-v1676 .fij-pricing-v1661 .faq-grid-polish .card {
    padding: 15px !important;
    border-color: var(--fij-v1676-border) !important;
    box-shadow: none !important;
  }

  body.fij-design-v1676 .fij-pricing-v1661 .pricing-plan-row {
    display: flex !important;
    align-items: start !important;
    justify-content: space-between !important;
    gap: 12px !important;
  }

  body.fij-design-v1676 .fij-pricing-v1661 .price-line,
  body.fij-design-v1676 .fij-pricing-v1661 .price,
  body.fij-design-v1676 .fij-pricing-v1661 .pricing-price {
    font-size: clamp(1.7rem, 8vw, 2.2rem) !important;
    line-height: .95 !important;
    letter-spacing: -.04em !important;
  }

  /* Legal/contact should be readable and low-noise. */
  body.fij-design-v1676 .fij-legal-index-v1661 .card,
  body.fij-design-v1676 .fij-legal-show-v1661 .card,
  body.fij-design-v1676 .fij-contact-v1661 .card {
    padding: 15px !important;
    border-color: var(--fij-v1676-border) !important;
    box-shadow: none !important;
  }

  body.fij-design-v1676 .fij-contact-v1661 .form-grid,
  body.fij-design-v1676 .fij-contact-v1661 .polished-form {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  body.fij-design-v1676 .fij-contact-v1661 .field,
  body.fij-design-v1676 .fij-contact-v1661 .wide,
  body.fij-design-v1676 .fij-contact-v1661 .check {
    grid-column: auto !important;
  }

  body.fij-design-v1676 .fij-contact-v1661 .contact-split-card .fjx-command-row,
  body.fij-design-v1676 .fij-contact-v1661 .fjx-command-row {
    display: flex !important;
    align-items: flex-start !important;
    gap: 10px !important;
    padding: 10px 0 !important;
    border-bottom: 1px solid rgba(15, 23, 42, .08) !important;
  }

  /* Talent and SEO collection pages: clean card rhythm if present. */
  body.fij-design-v1676 .fij-page-v1661 .talent-card,
  body.fij-design-v1676 .fij-page-v1661 .candidate-card,
  body.fij-design-v1676 .fij-page-v1661 .freelancer-card,
  body.fij-design-v1676 .fij-page-v1661 .seo-card,
  body.fij-design-v1676 .fij-page-v1661 .collection-card {
    padding: 13px !important;
    border-color: var(--fij-v1676-border) !important;
    box-shadow: none !important;
  }

  body.fij-design-v1676 .fij-page-v1661 .pagination-shell {
    padding: 12px 0 4px !important;
    margin: 0 !important;
  }

  /* These pages are content-heavy; floating widgets should not compete on mobile. */
  body.fij-design-v1676.fij-content-polish-context .lucas-widget,
  body.fij-design-v1676.fij-content-polish-context .fij-lucas-widget,
  body.fij-design-v1676.fij-content-polish-context [data-lucas-widget] {
    display: none !important;
  }

  body.fij-design-v1676.fij-content-polish-context .fij-public-footer {
    margin-top: 8px !important;
  }
}
