/* Offshore Hub Desktop Completion v3
   Final desktop polish pass:
   - real design-system usage in remaining modules
   - no clipped filter/search actions
   - calmer cards/sidebars/footer
   - clearer job and news actions
   - better focus states and translation-resistant brand spacing
*/
@media (min-width:901px){
  :root{
    --oh-v3-bg:#020912;
    --oh-v3-panel:rgba(5,18,31,.92);
    --oh-v3-panel-2:rgba(7,24,40,.86);
    --oh-v3-line:rgba(73,148,207,.26);
    --oh-v3-line-strong:rgba(0,184,255,.42);
    --oh-v3-orange:#ff7a1a;
    --oh-v3-orange-soft:rgba(255,122,26,.12);
    --oh-v3-white:#f5f9ff;
    --oh-v3-muted:#a9bbce;
    --oh-v3-radius:16px;
    --oh-v3-radius-sm:11px;
    --oh-v3-shadow:0 18px 48px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.025);
  }

  /* Global finish and predictable browser focus */
  body{background:radial-gradient(circle at 50% -160px,rgba(0,116,185,.16),transparent 420px),#01070d!important;}
  body *{box-sizing:border-box;}
  a,button,input,select,textarea{font-family:inherit;}
  a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
    outline:2px solid rgba(255,122,26,.88)!important;
    outline-offset:3px!important;
    box-shadow:0 0 0 5px rgba(255,122,26,.14)!important;
  }
  body .page{
    max-width:1480px!important;
    width:calc(100% - 104px)!important;
    margin-left:auto!important;
    margin-right:auto!important;
    overflow:visible!important;
  }
  body .page::before,
  body .page::after{pointer-events:none!important;}

  /* Header: keep premium frame but make nav less cramped */
  body header.oh-mock-header{
    border-bottom:1px solid rgba(0,184,255,.24)!important;
  }
  body .oh-mock-frame{
    margin-inline:20px!important;
    min-height:132px!important;
  }
  body .oh-mock-nav{
    gap:2px!important;
    padding-inline:20px!important;
  }
  body .oh-mock-nav a{
    min-height:46px!important;
    border-radius:9px!important;
    letter-spacing:-.01em!important;
  }
  body .oh-mock-lang button,
  body .oh-mock-live,
  body .oh-mock-cta{
    min-height:38px!important;
  }
  body .oh-mock-cta{box-shadow:0 8px 20px rgba(255,122,26,.20)!important;}

  @media (max-width:1360px){
    body .page{width:calc(100% - 58px)!important;}
    body .oh-mock-frame{margin-inline:12px!important;}
    body .oh-mock-brand{width:260px!important;}
    body .oh-mock-nav{padding-inline:12px!important;}
    body .oh-mock-nav a{padding-inline:9px!important;}
  }

  /* Hero: keep image visible, use text shadow instead of killing the image */
  body .hero{min-height:430px!important;}
  body .hero:after{
    background:
      linear-gradient(90deg,rgba(2,8,14,.82) 0%,rgba(2,8,14,.68) 34%,rgba(2,8,14,.36) 64%,rgba(2,8,14,.18) 100%),
      linear-gradient(180deg,rgba(2,8,14,.08),rgba(2,8,14,.42))!important;
  }
  body .hero:before{filter:brightness(.96) contrast(1.08) saturate(1.08)!important;}
  body .hero-inner{padding:58px 54px 58px!important;gap:44px!important;}
  body .hero h1,body .hero .hero-title{
    font-size:clamp(48px,4.45vw,78px)!important;
    line-height:.96!important;
    letter-spacing:-.055em!important;
    max-width:900px!important;
    text-shadow:0 3px 0 rgba(0,0,0,.20),0 18px 48px rgba(0,0,0,.42)!important;
  }
  body.news-page .hero h1,
  body.about-page .hero h1,
  body.contact-page .hero h1{font-size:clamp(44px,4vw,68px)!important;}
  body .hero p{max-width:720px!important;color:#edf6ff!important;text-shadow:0 10px 24px rgba(0,0,0,.45)!important;}
  body .features{gap:14px!important;flex-wrap:wrap!important;}
  body .feat{min-height:42px!important;padding:4px 0!important;}
  body .feat .ic{width:38px!important;height:38px!important;flex:0 0 38px!important;}
  body .stat-card{border-radius:14px!important;background:rgba(5,18,31,.82)!important;backdrop-filter:blur(8px)!important;}

  /* Metrics strip: equal rhythm, no random orange dividers */
  body .metrics{background:linear-gradient(180deg,rgba(4,17,29,.98),rgba(3,13,23,.98))!important;}
  body .metric{min-height:72px!important;padding-inline:28px!important;border-right:1px solid rgba(73,148,207,.18)!important;}
  body .metric strong{letter-spacing:-.035em!important;}
  body .micon{width:31px!important;height:31px!important;border-radius:9px!important;border-width:1px!important;}

  /* Shared sections/cards */
  body .box,
  body .side-panel,
  body .contact-card,
  body .form-card,
  body .legal-card,
  body .story-card,
  body .read-next-card,
  body .feature-card,
  body .source-card,
  body .oh-news-lead,
  body .oh-news-side-card,
  body .oh-news-mini{
    border-radius:var(--oh-v3-radius)!important;
    border:1px solid var(--oh-v3-line)!important;
    background:linear-gradient(180deg,var(--oh-v3-panel-2),rgba(3,13,23,.94))!important;
    box-shadow:var(--oh-v3-shadow)!important;
  }
  body .box-head,
  body .section-intro,
  body .oh-news-head,
  body .read-next-head{
    align-items:flex-end!important;
  }
  body .box-title,
  body .section-intro h2,
  body .oh-news-head h2,
  body .read-next-head h2{
    letter-spacing:-.035em!important;
  }
  body .oh-kicker,
  body .eyebrow,
  body .mini-label,
  body .card-kicker{
    letter-spacing:.105em!important;
    font-size:11px!important;
  }

  /* Buttons/links: small but usable */
  body .searchbtn,
  body .btn,
  body .primary,
  body .submit-btn,
  body .panel-btn,
  body .oh-mock-cta,
  body .cta,
  body .profile-actions a,
  body .profile-actions button{
    border-radius:10px!important;
    min-height:38px!important;
    padding:0 16px!important;
    font-size:12px!important;
    letter-spacing:.015em!important;
  }
  body .orange-link,
  body .text-link{
    color:#ff9945!important;
    font-size:13px!important;
    font-weight:900!important;
  }
  body .orange-link:hover,
  body .text-link:hover{text-shadow:0 0 16px rgba(255,122,26,.28)!important;}

  /* JOBS: switch command bar from fragile grid to safe wrapping flex */
  body.jobs-page .filters.jobs-commandbar{
    margin:22px 24px 14px!important;
    overflow:visible!important;
    border-radius:17px!important;
  }
  body.jobs-page .jobs-commandbar-head{
    display:flex!important;
    align-items:flex-end!important;
    justify-content:space-between!important;
    gap:18px!important;
    padding:20px 22px 15px!important;
  }
  body.jobs-page .jobs-commandbar-head h2{font-size:24px!important;line-height:1.12!important;margin:3px 0!important;}
  body.jobs-page .jobs-commandbar-head p{font-size:13px!important;color:#c6d5e6!important;}
  body.jobs-page .jobs-commandbar-meta{flex:0 0 auto!important;}
  body.jobs-page .filter-row.jobs-filter-grid{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:10px!important;
    padding:15px 18px 12px!important;
    align-items:stretch!important;
    width:100%!important;
    overflow:visible!important;
  }
  body.jobs-page .filter-row.jobs-filter-grid > *{min-width:0!important;}
  body.jobs-page .filter-row.jobs-filter-grid .search-field-wrap{flex:1 1 305px!important;min-width:260px!important;}
  body.jobs-page .filter-row.jobs-filter-grid label.field{flex:1 1 132px!important;max-width:178px!important;}
  body.jobs-page .filter-row.jobs-filter-grid .searchbtn{
    flex:0 0 104px!important;
    width:104px!important;
    max-width:104px!important;
    min-width:104px!important;
    padding:0 10px!important;
    overflow:visible!important;
  }
  body.jobs-page .filter-row.jobs-filter-grid .searchbtn span{display:inline!important;}
  body.jobs-page .field.select span,
  body.jobs-page .search-field-wrap span{
    font-size:10px!important;
    color:#a9c2d8!important;
    letter-spacing:.08em!important;
  }
  body.jobs-page .field,
  body.jobs-page .field input,
  body.jobs-page .field select,
  body.jobs-page .search-field-wrap input{
    font-size:12px!important;
  }
  body.jobs-page .jobs-filter-foot{
    padding:0 18px 16px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:14px!important;
  }
  body.jobs-page .jobs-filter-foot .popular{flex:1 1 auto!important;min-width:0!important;}
  body.jobs-page .jobs-filter-foot .pill{
    height:25px!important;
    padding:0 10px!important;
    font-size:11px!important;
    background:rgba(255,255,255,.035)!important;
  }
  body.jobs-page .active-filter-chips{flex:0 1 auto!important;justify-content:flex-end!important;}

  body.jobs-page .main{
    grid-template-columns:minmax(0,1fr) 300px!important;
    gap:16px!important;
    padding:20px 24px 18px!important;
  }
  body.jobs-page .jobs-table{overflow:hidden!important;}
  body.jobs-page .jobs-table .box-head{
    border-bottom:1px solid rgba(73,148,207,.16)!important;
  }
  body.jobs-page .table-wrap{overflow:visible!important;padding:0 14px 12px!important;}
  body.jobs-page .table{
    border-collapse:separate!important;
    border-spacing:0 8px!important;
  }
  body.jobs-page .table thead th{
    background:rgba(1,8,15,.74)!important;
    padding-top:10px!important;
    padding-bottom:10px!important;
  }
  body.jobs-page .table tbody tr{
    background:linear-gradient(180deg,rgba(6,22,37,.78),rgba(4,16,28,.88))!important;
    border:1px solid rgba(73,148,207,.22)!important;
    box-shadow:0 8px 18px rgba(0,0,0,.14)!important;
  }
  body.jobs-page .table tbody td{
    border-top:1px solid rgba(73,148,207,.20)!important;
    border-bottom:1px solid rgba(73,148,207,.20)!important;
    padding-top:15px!important;
    padding-bottom:15px!important;
  }
  body.jobs-page .table tbody td:first-child{border-left:1px solid rgba(73,148,207,.20)!important;border-radius:12px 0 0 12px!important;}
  body.jobs-page .table tbody td:last-child{border-right:1px solid rgba(73,148,207,.20)!important;border-radius:0 12px 12px 0!important;}
  body.jobs-page .table tbody tr:hover td{border-color:rgba(255,122,26,.36)!important;background:rgba(255,122,26,.045)!important;}
  body.jobs-page .job-title{font-size:15px!important;white-space:normal!important;line-height:1.25!important;}
  body.jobs-page .sub{font-size:12px!important;color:#a9c0d5!important;}
  body.jobs-page .catbadge{border-color:rgba(255,122,26,.45)!important;background:rgba(255,122,26,.08)!important;}
  body.jobs-page .source-dot{background:#26eba2!important;box-shadow:0 0 10px rgba(38,235,162,.4)!important;}
  body.jobs-page .row-open-action{min-width:54px!important;height:30px!important;}
  body.jobs-page .side{gap:14px!important;}
  body.jobs-page .side .box{box-shadow:none!important;background:rgba(5,18,31,.76)!important;}
  body.jobs-page .side .box-head{padding:14px 15px 9px!important;}
  body.jobs-page .cat-list,.jobs-page .tools-list{padding:0 12px 13px!important;}
  body.jobs-page .cat-list .cat,
  body.jobs-page .tools-list .tool,
  body.jobs-page .radar-item{background:rgba(255,255,255,.025)!important;}
  body.jobs-page .panel-btn{margin:0 12px 14px!important;}

  /* Job modal/profile: editorial, not oversized */
  body.jobs-page .job-modal-card{width:min(1120px,94vw)!important;border-radius:18px!important;}
  body.jobs-page .profile-modal-inner{padding:24px 26px 20px!important;}
  body.jobs-page .profile-title{font-size:32px!important;letter-spacing:-.04em!important;}
  body.jobs-page .profile-layout{grid-template-columns:minmax(0,1fr) 310px!important;}
  body.jobs-page .profile-info-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important;}
  body.jobs-page .profile-info-item{padding:15px 14px!important;}
  body.jobs-page .profile-section{padding:20px!important;}
  body.jobs-page .profile-desc{font-size:15px!important;line-height:1.65!important;}
  body.jobs-page .profile-actions{gap:10px!important;}
  body.jobs-page .profile-actions .primary{min-width:190px!important;}
  body.jobs-page .share-grid{grid-template-columns:1fr!important;}
  body.jobs-page .share-grid button,.jobs-page .copy-wide{height:36px!important;padding:0 11px!important;font-size:12px!important;text-align:left!important;}

  /* NEWS: more newsroom, less dashboard */
  body.news-page .news-toolbar-section,
  body.news-page .news-layout,
  body.news-page .read-next-section{
    margin-inline:24px!important;
  }
  body.news-page .news-toolbar-section{border-radius:17px!important;}
  body.news-page .news-toolbar-head{padding:20px 22px 14px!important;}
  body.news-page .toolbar-form{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:10px!important;
  }
  body.news-page .toolbar-search{flex:1 1 360px!important;min-width:280px!important;}
  body.news-page .toolbar-field{flex:1 1 140px!important;max-width:190px!important;}
  body.news-page .toolbar-submit{flex:0 0 94px!important;min-width:94px!important;}
  body.news-page .news-grid{gap:14px!important;}
  body.news-page .story-card{overflow:hidden!important;}
  body.news-page .story-card img{height:176px!important;}
  body.news-page .story-content{padding:16px!important;}
  body.news-page .story-content h3{font-size:17px!important;line-height:1.22!important;margin-bottom:8px!important;}
  body.news-page .story-content p{font-size:13px!important;line-height:1.5!important;color:#c7d5e5!important;}
  body.news-page .side-panel{box-shadow:none!important;background:rgba(5,18,31,.76)!important;}
  body.news-page .news-aside-list a{border-bottom-color:rgba(73,148,207,.14)!important;}
  body.news-page .article-shell{margin-top:22px!important;}
  body.news-page .article-card{border-radius:18px!important;overflow:hidden!important;}
  body.news-page .article-cover img{height:360px!important;}
  body.news-page .article-card p{color:#d5e3f0!important;}
  body.news-page .article-card h2{font-size:30px!important;letter-spacing:-.035em!important;}
  body.news-page .article-card blockquote{border-left:3px solid var(--oh-v3-orange)!important;background:rgba(255,122,26,.08)!important;border-radius:0 12px 12px 0!important;}
  body.news-page .read-next-grid{gap:14px!important;}
  body.news-page .read-next-card img{height:138px!important;}
  body.news-page .read-next-card:hover{transform:translateY(-2px)!important;}

  /* Home: more complete sections under hero */
  body.home-index .main,
  body.home-index .home-section,
  body.home-index .oh-news-hub,
  body.home-index .oh-news-more,
  body.home-index .sector-block,
  body.home-index .why-news-clean{
    margin-inline:24px!important;
  }
  body.home-index .box,
  body.home-index .live-jobs-list{border-radius:17px!important;}
  body.home-index .oh-news-lead{overflow:hidden!important;}
  body.home-index .oh-news-lead-content h3{font-size:clamp(30px,2.5vw,46px)!important;}
  body.home-index .oh-news-mini-card,
  body.home-index .oh-news-mini{height:100%!important;}

  /* About/contact/legal: cleaner document/card templates */
  body.about-page .page-shell,
  body.contact-page .page-shell,
  body.legal-page .page-shell,
  body.privacy-page .page-shell,
  body.terms-page .page-shell,
  body.disclaimer-page .page-shell{
    padding-inline:24px!important;
  }
  body.about-page .story-grid,
  body.contact-page .contact-grid{gap:18px!important;}
  body.about-page .story-card,
  body.contact-page .contact-card,
  body.contact-page .form-card,
  body.legal-page .legal-card,
  body.privacy-page .legal-card,
  body.terms-page .legal-card,
  body.disclaimer-page .legal-card{padding:24px!important;}
  body.contact-page input,
  body.contact-page textarea,
  body.contact-page select{border-radius:10px!important;min-height:42px!important;}
  body.contact-page textarea{min-height:145px!important;}

  /* Footer: connected to frame, calmer social/contact blocks */
  body .footer{
    margin:30px 24px 0!important;
    border-radius:16px 16px 0 0!important;
    border-color:rgba(73,148,207,.22)!important;
    border-left:0!important;
    border-right:0!important;
    box-shadow:none!important;
  }
  body .footer h4{font-size:13px!important;letter-spacing:.08em!important;color:#dfeaf6!important;}
  body .footer a{font-size:13px!important;margin:7px 0!important;}
  body .footer p{font-size:13px!important;line-height:1.55!important;}
  body .footer-socials a{width:33px!important;height:33px!important;border-radius:9px!important;}
  body .bottom{padding:14px 34px!important;}

  /* Hard anti-overflow for common translated/long words */
  body .box-title,
  body .job-title,
  body .story-content h3,
  body .read-next-body h3,
  body .oh-news-side-card h3,
  body .oh-mock-nav a span,
  body .oh-mock-live span,
  body .oh-mock-cta{
    overflow-wrap:anywhere!important;
  }
  .notranslate,
  .notranslate *{white-space:normal;}
}
