/* Offshore Hub Desktop Completion v1
   Multi-area polish after Design System v1:
   - fixes jobs filter overflow
   - tightens desktop job list and sidebars
   - normalises news/about/contact/legal card rhythm
   - makes footer and CTAs feel more consistent
*/
@media (min-width:901px){
  /* Shared rhythm: page sections should feel connected, not like stacked patches */
  body .page > .home-block,
  body .page > .page-shell,
  body .page > .section,
  body .page > .news-toolbar-section,
  body .page > .news-spotlight,
  body .page > .news-layout,
  body .page > .home-cta{
    margin-left:24px !important;
    margin-right:24px !important;
  }

  body .section-intro,
  body .box-head,
  body .panel-head,
  body .read-next-head,
  body .oh-news-head{
    align-items:flex-end !important;
  }

  body .section-intro .eyebrow,
  body .toolbar-kicker,
  body .oh-kicker,
  body .eyebrow.compact{
    color:#ff9a3d !important;
    letter-spacing:.13em !important;
  }

  body .orange-link{
    min-height:28px !important;
    align-items:center !important;
    color:#ff9a3d !important;
  }

  /* Hero cards should be readable without hiding the image too much */
  body .stat-card{
    background:linear-gradient(180deg,rgba(8,24,38,.86),rgba(5,16,27,.88)) !important;
    border-color:rgba(255,122,26,.62) !important;
    box-shadow:0 20px 55px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.04) !important;
  }

  body .metrics{
    border-top:1px solid rgba(0,174,255,.22) !important;
    border-bottom:1px solid rgba(0,174,255,.20) !important;
  }

  /* JOBS: the command bar must never overflow/cut the orange button */
  body.jobs-page .filters.jobs-commandbar{
    overflow:visible !important;
  }

  body.jobs-page .filter-row.jobs-filter-grid{
    display:flex !important;
    flex-wrap:wrap !important;
    align-items:stretch !important;
    gap:9px !important;
    padding:16px 18px 12px !important;
  }

  body.jobs-page .filter-row.jobs-filter-grid > .search-field-wrap{
    flex:1 1 300px !important;
    min-width:260px !important;
    max-width:none !important;
  }

  body.jobs-page .filter-row.jobs-filter-grid > label.field,
  body.jobs-page .filter-row.jobs-filter-grid > .field.select{
    flex:1 1 118px !important;
    min-width:112px !important;
    max-width:150px !important;
  }

  body.jobs-page .filter-row.jobs-filter-grid > label.field:nth-of-type(4),
  body.jobs-page .filter-row.jobs-filter-grid > label.field:nth-of-type(5),
  body.jobs-page .filter-row.jobs-filter-grid > label.field:nth-of-type(6),
  body.jobs-page .filter-row.jobs-filter-grid > label.field:nth-of-type(7){
    max-width:140px !important;
  }

  body.jobs-page .filter-row.jobs-filter-grid select{
    max-width:100% !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
  }

  body.jobs-page .filter-row.jobs-filter-grid > .searchbtn{
    flex:0 0 96px !important;
    width:96px !important;
    min-width:96px !important;
    max-width:96px !important;
    height:50px !important;
    min-height:50px !important;
    padding:0 12px !important;
    white-space:nowrap !important;
  }

  body.jobs-page .jobs-filter-foot{
    align-items:center !important;
    padding:0 18px 16px !important;
  }

  body.jobs-page .jobs-filter-foot .popular{
    min-width:0 !important;
  }

  body.jobs-page .jobs-filter-foot .popular a.pill{
    min-height:25px !important;
    padding:0 9px !important;
  }

  body.jobs-page .active-filter-chips{
    max-width:46% !important;
  }

  body.jobs-page .main{
    grid-template-columns:minmax(0,1fr) 330px !important;
    gap:18px !important;
  }

  body.jobs-page .jobs-table{
    min-width:0 !important;
  }

  body.jobs-page .table-wrap{
    overflow-x:visible !important;
  }

  body.jobs-page .table{
    table-layout:fixed !important;
  }

  body.jobs-page .table thead th:nth-child(1),
  body.jobs-page .table tbody td:nth-child(1){width:42% !important;}
  body.jobs-page .table thead th:nth-child(2),
  body.jobs-page .table tbody td:nth-child(2){width:15% !important;}
  body.jobs-page .table thead th:nth-child(3),
  body.jobs-page .table tbody td:nth-child(3){width:16% !important;}
  body.jobs-page .table thead th:nth-child(4),
  body.jobs-page .table tbody td:nth-child(4){width:12% !important;}
  body.jobs-page .table thead th:nth-child(5),
  body.jobs-page .table tbody td:nth-child(5){width:12% !important;}
  body.jobs-page .table thead th:nth-child(6),
  body.jobs-page .table tbody td:nth-child(6){width:3% !important;}

  body.jobs-page .table td,
  body.jobs-page .table th{
    word-break:normal !important;
  }

  body.jobs-page .table td:nth-child(6),
  body.jobs-page .table th:nth-child(6){
    text-align:center !important;
    padding-left:6px !important;
    padding-right:6px !important;
  }

  body.jobs-page .table th:nth-child(6){
    font-size:0 !important;
  }
  body.jobs-page .table th:nth-child(6)::after{
    content:"Date";
    font-size:10px;
    letter-spacing:.08em;
  }

  body.jobs-page .job-open{
    display:inline !important;
  }

  body.jobs-page .side .box-title{
    color:#ff9a3d !important;
  }

  body.jobs-page .side .box,
  body.jobs-page .side-panel,
  body.jobs-page .side-card{
    border-color:rgba(54,130,190,.32) !important;
  }

  /* NEWS: reduce boxiness and make the toolbar/sidebar editorial */
  body.news-page .news-toolbar-section{
    margin-top:22px !important;
  }

  body.news-page .news-toolbar{
    border-radius:16px !important;
    border-color:rgba(54,130,190,.34) !important;
    background:linear-gradient(180deg,rgba(6,20,34,.91),rgba(3,13,23,.95)) !important;
  }

  body.news-page .toolbar-form{
    gap:9px !important;
  }

  body.news-page .toolbar-field,
  body.news-page .toolbar-submit{
    min-height:42px !important;
    border-radius:10px !important;
  }

  body.news-page .news-spotlight .panel,
  body.news-page .lead-card,
  body.news-page .story-card,
  body.news-page .side-panel{
    border-color:rgba(54,130,190,.30) !important;
    box-shadow:0 14px 34px rgba(0,0,0,.20) !important;
  }

  body.news-page .news-grid{
    gap:16px !important;
  }

  body.news-page .story-card{
    overflow:hidden !important;
  }

  body.news-page .story-content{
    padding:16px 17px 18px !important;
  }

  body.news-page .read-next-grid{
    gap:16px !important;
  }

  body.news-page .read-next-card{
    border-color:rgba(54,130,190,.30) !important;
    background:linear-gradient(180deg,rgba(7,22,36,.88),rgba(3,13,23,.94)) !important;
  }

  /* Home/news modules: cleaner editorial blocks */
  body.home-index .oh-news-hub,
  body.home-index .oh-news-more,
  body.home-index .why-clean,
  body.home-index .quick-search{
    border-color:rgba(54,130,190,.30) !important;
    background:linear-gradient(180deg,rgba(6,20,34,.88),rgba(3,13,23,.94)) !important;
  }

  body.home-index .oh-news-lead,
  body.home-index .oh-news-side-card,
  body.home-index .oh-news-mini,
  body.home-index .feature-card{
    border-color:rgba(54,130,190,.28) !important;
  }

  body.home-index .oh-news-chip,
  body.news-page .tag,
  body.news-page .side-badge{
    background:rgba(255,122,26,.08) !important;
    border-color:rgba(255,122,26,.34) !important;
    color:#ffb36d !important;
  }

  /* About/contact/legal: same page template and card scale */
  body.about-page .page-shell,
  body.contact-page .page-shell,
  body.legal-page .legal-main,
  body.legal-page .legal-card{
    border-color:rgba(54,130,190,.30) !important;
  }

  body.about-page .info-grid,
  body.contact-page .info-grid{
    gap:16px !important;
  }

  body.about-page .info-card,
  body.contact-page .info-card,
  body.contact-page .company-info-card,
  body.about-page .copy-panel,
  body.contact-page .box,
  body.legal-page .legal-card{
    background:linear-gradient(180deg,rgba(6,20,34,.88),rgba(3,13,23,.94)) !important;
    border-color:rgba(54,130,190,.30) !important;
    box-shadow:0 14px 34px rgba(0,0,0,.20) !important;
  }

  body.contact-page .contact-layout,
  body.about-page .copy-layout{
    gap:18px !important;
  }

  body.contact-page .contact-form .form-field,
  body.contact-page .contact-form textarea,
  body.contact-page .contact-form input,
  body.contact-page .contact-form select{
    border-color:rgba(72,134,184,.42) !important;
  }

  /* Footer: one consistent finish, not a separate loud block */
  body .footer,
  body footer.footer{
    background:linear-gradient(180deg,rgba(4,15,25,.96),rgba(2,8,14,.98)) !important;
    border-top:1px solid rgba(0,174,255,.22) !important;
  }

  body .footer h4{
    color:#ff9a3d !important;
    font-size:12px !important;
    letter-spacing:.12em !important;
  }

  body .footer a{
    color:#b8c8d9 !important;
    font-size:13px !important;
  }

  body .footer a:hover{
    color:#fff !important;
  }

  body .bottom.oh-footer-credit{
    border-top:1px solid rgba(0,174,255,.18) !important;
  }
}

@media (min-width:901px) and (max-width:1500px){
  body.jobs-page .filter-row.jobs-filter-grid > .search-field-wrap{flex-basis:280px !important;}
  body.jobs-page .filter-row.jobs-filter-grid > label.field{flex-basis:104px !important; min-width:104px !important; max-width:132px !important;}
  body.jobs-page .filter-row.jobs-filter-grid > .searchbtn{flex-basis:86px !important; width:86px !important; min-width:86px !important;}
  body.jobs-page .main{grid-template-columns:minmax(0,1fr) 300px !important;}
  body.jobs-page .table td{font-size:12.5px !important; padding-left:11px !important; padding-right:11px !important;}
  body.jobs-page .job-open{font-size:14px !important;}
}

@media (min-width:901px) and (max-width:1320px){
  body.jobs-page .main{grid-template-columns:1fr !important;}
  body.jobs-page .side{display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
  body.jobs-page .radar-box,
  body.jobs-page .trending-box{grid-column:span 3 !important;}
}
