/* Offshore Hub Desktop Completion v4
   Final newsroom/header/footer tightening pass:
   - remove boxed inner nav look
   - make news listing more editorial and less duplicated/heavy
   - compact sidebars/cards/filter controls
   - keep outer frame as the only full frame
*/
@media (min-width:901px){
  :root{
    --oh-v4-panel:rgba(5,18,31,.86);
    --oh-v4-panel-soft:rgba(7,24,40,.70);
    --oh-v4-line:rgba(80,154,210,.23);
    --oh-v4-line-soft:rgba(80,154,210,.14);
    --oh-v4-orange:#ff7a1a;
    --oh-v4-text:#f4f8ff;
    --oh-v4-muted:#b4c4d5;
  }

  /* Header: remove the accidental inner box around menu/actions. */
  body header.oh-mock-header .oh-mock-nav,
  body .oh-mock-nav{
    background:transparent!important;
    border:0!important;
    outline:0!important;
    box-shadow:none!important;
    border-radius:0!important;
    padding-inline:8px!important;
  }
  body header.oh-mock-header .oh-mock-nav::before,
  body header.oh-mock-header .oh-mock-nav::after,
  body .oh-mock-nav::before,
  body .oh-mock-nav::after{
    box-shadow:none!important;
    opacity:.72!important;
  }
  body header.oh-mock-header .oh-mock-nav a,
  body .oh-mock-nav a{
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
    border-radius:9px!important;
  }
  body header.oh-mock-header .oh-mock-nav a.active,
  body header.oh-mock-header .oh-mock-nav a:hover,
  body .oh-mock-nav a.active,
  body .oh-mock-nav a:hover{
    background:linear-gradient(180deg,rgba(255,122,26,.20),rgba(255,122,26,.10))!important;
    box-shadow:0 10px 18px rgba(255,122,26,.10)!important;
  }
  body .oh-mock-actions{
    border:0!important;
    box-shadow:none!important;
    background:transparent!important;
  }

  /* Keep pages aligned, but stop extra section boxes from pretending to be frames. */
  body .page > .section,
  body .page > .home-cta,
  body .page > .article-shell{
    max-width:calc(100% - 48px)!important;
  }
  body .page > .hero,
  body .page > .metrics{
    max-width:100%!important;
  }

  /* News page: calmer hero and more readable title block. */
  body.news-page .hero{
    min-height:405px!important;
  }
  body.news-page .hero-inner{
    padding-top:50px!important;
    padding-bottom:50px!important;
  }
  body.news-page .hero h1{
    max-width:920px!important;
    font-size:clamp(42px,3.65vw,64px)!important;
    line-height:1.02!important;
  }
  body.news-page .hero p{
    max-width:760px!important;
    font-size:16px!important;
    line-height:1.55!important;
  }
  body.news-page .stat-card{
    width:min(300px,24vw)!important;
    padding:23px!important;
  }

  /* News toolbar: professional command strip, not a big campaign block. */
  body.news-page .news-toolbar-section{
    margin-top:24px!important;
    margin-bottom:24px!important;
    padding:0!important;
    border-color:var(--oh-v4-line)!important;
    background:linear-gradient(180deg,rgba(5,18,31,.82),rgba(3,13,23,.86))!important;
  }
  body.news-page .news-toolbar{
    padding:0!important;
  }
  body.news-page .news-toolbar-head{
    padding:18px 22px 12px!important;
    gap:16px!important;
  }
  body.news-page .news-toolbar-head h2{
    font-size:21px!important;
    letter-spacing:-.025em!important;
    margin:4px 0 0!important;
  }
  body.news-page .toolbar-kicker{
    font-size:10px!important;
    letter-spacing:.12em!important;
    color:#ff9945!important;
  }
  body.news-page .toolbar-count{
    font-size:12px!important;
    white-space:nowrap!important;
  }
  body.news-page .toolbar-form{
    padding:14px 22px!important;
    border-top:1px solid var(--oh-v4-line-soft)!important;
    border-bottom:1px solid var(--oh-v4-line-soft)!important;
    align-items:flex-end!important;
  }
  body.news-page .toolbar-field{
    flex:1 1 150px!important;
    max-width:none!important;
    min-width:150px!important;
  }
  body.news-page .toolbar-field.search{
    flex:1.45 1 270px!important;
    min-width:240px!important;
  }
  body.news-page .toolbar-field > span{
    font-size:10px!important;
    letter-spacing:.10em!important;
    margin-bottom:6px!important;
    color:#a7bfd8!important;
  }
  body.news-page .toolbar-field input,
  body.news-page .toolbar-field select{
    min-height:38px!important;
    height:38px!important;
    border-radius:10px!important;
    font-size:12px!important;
    background:rgba(2,10,18,.62)!important;
  }
  body.news-page .toolbar-submit{
    min-height:38px!important;
    height:38px!important;
    flex:0 0 86px!important;
    min-width:86px!important;
    padding:0 13px!important;
    border-radius:10px!important;
  }
  body.news-page .toolbar-foot{
    padding:12px 22px 16px!important;
    font-size:12px!important;
    color:#aebfd1!important;
  }
  body.news-page .mini-chip,
  body.news-page .chip{
    height:26px!important;
    padding:0 10px!important;
    font-size:11px!important;
    border-color:rgba(255,122,26,.34)!important;
    background:rgba(255,122,26,.045)!important;
  }

  /* Spotlight: feature is prominent but not overpowering. */
  body.news-page .news-spotlight{
    gap:16px!important;
    align-items:stretch!important;
    margin-top:0!important;
    margin-bottom:30px!important;
  }
  body.news-page .news-spotlight .panel{
    border-radius:16px!important;
    overflow:hidden!important;
    background:rgba(5,18,31,.70)!important;
    border:1px solid var(--oh-v4-line)!important;
  }
  body.news-page .panel-head{
    padding:16px 20px!important;
    min-height:auto!important;
  }
  body.news-page .panel-title{
    font-size:13px!important;
    letter-spacing:.06em!important;
  }
  body.news-page .lead-card{
    min-height:390px!important;
  }
  body.news-page .lead-card img{
    filter:brightness(.76) contrast(1.05) saturate(1.04)!important;
  }
  body.news-page .lead-card:after{
    background:linear-gradient(0deg,rgba(2,8,14,.92),rgba(2,8,14,.38) 58%,rgba(2,8,14,.10)),linear-gradient(90deg,rgba(2,8,14,.64),rgba(2,8,14,.10))!important;
  }
  body.news-page .lead-content{
    left:24px!important;
    right:24px!important;
    bottom:24px!important;
  }
  body.news-page .lead-card h2{
    max-width:760px!important;
    font-size:clamp(30px,2.55vw,46px)!important;
    line-height:1.03!important;
  }
  body.news-page .lead-card p{
    max-width:760px!important;
    font-size:14px!important;
  }
  body.news-page .side-stack{
    gap:14px!important;
  }
  body.news-page .side-card{
    min-height:188px!important;
    border-radius:16px!important;
  }
  body.news-page .side-content{
    left:18px!important;
    right:18px!important;
    bottom:18px!important;
  }
  body.news-page .side-card h3{
    font-size:20px!important;
    line-height:1.13!important;
  }
  body.news-page .side-card p{
    font-size:13px!important;
    line-height:1.45!important;
  }

  /* Latest newsroom: treat it as the continuation, not a duplicate feature wall. */
  body.news-page .news-layout{
    grid-template-columns:minmax(0,1fr) 310px!important;
    gap:18px!important;
    align-items:start!important;
  }
  body.news-page .section-intro.newslist-intro{
    padding-bottom:14px!important;
    margin-bottom:16px!important;
    border-bottom:1px solid var(--oh-v4-line-soft)!important;
  }
  body.news-page .newslist-intro h2{
    font-size:30px!important;
    line-height:1.08!important;
  }
  body.news-page .newslist-intro p{
    max-width:760px!important;
    font-size:14px!important;
    color:#b7c8da!important;
  }
  body.news-page .news-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:16px!important;
  }
  body.news-page .story-card{
    border-color:var(--oh-v4-line)!important;
    background:linear-gradient(180deg,rgba(7,23,38,.78),rgba(3,13,23,.92))!important;
    box-shadow:none!important;
    min-height:100%!important;
  }
  body.news-page .story-card:hover{
    transform:translateY(-2px)!important;
    border-color:rgba(255,122,26,.42)!important;
    box-shadow:0 14px 30px rgba(0,0,0,.18)!important;
  }
  body.news-page .story-card img{
    height:158px!important;
    filter:brightness(.82) contrast(1.04) saturate(1.03)!important;
  }
  body.news-page .story-content{
    padding:15px 16px 16px!important;
  }
  body.news-page .tag{
    height:24px!important;
    max-width:100%!important;
    justify-content:center!important;
    padding:0 10px!important;
    border-radius:999px!important;
    font-size:9.5px!important;
    color:#ffbe86!important;
    background:rgba(255,122,26,.055)!important;
    border-color:rgba(255,122,26,.34)!important;
  }
  body.news-page .story-content h3{
    font-size:16px!important;
    line-height:1.25!important;
    letter-spacing:-.018em!important;
    margin:12px 0 8px!important;
  }
  body.news-page .story-content p{
    font-size:12.5px!important;
    line-height:1.52!important;
    color:#b9cadb!important;
  }
  body.news-page .story-meta{
    gap:9px!important;
    margin-top:13px!important;
    font-size:11px!important;
    color:#aabbd0!important;
  }
  body.news-page .pager{
    margin-top:24px!important;
    gap:7px!important;
  }
  body.news-page .pager a,
  body.news-page .pager span{
    min-height:31px!important;
    border-radius:9px!important;
    font-size:12px!important;
  }

  /* Sidebar: quieter, better proportions. */
  body.news-page .sidebar{
    gap:14px!important;
  }
  body.news-page .side-panel{
    padding:17px!important;
    border-radius:15px!important;
    background:rgba(5,18,31,.72)!important;
    border-color:var(--oh-v4-line)!important;
  }
  body.news-page .side-panel h3{
    font-size:16px!important;
    letter-spacing:-.01em!important;
    margin-bottom:11px!important;
  }
  body.news-page .side-panel p{
    font-size:13px!important;
    line-height:1.55!important;
    color:#bdcede!important;
  }
  body.news-page .desk-stat{
    gap:10px!important;
    margin:14px 0!important;
  }
  body.news-page .desk-stat > div{
    padding:13px!important;
    border-radius:11px!important;
  }
  body.news-page .coverage-row{
    gap:10px!important;
    padding:11px 0!important;
  }
  body.news-page .coverage-row i{
    width:24px!important;
    height:24px!important;
    flex:0 0 24px!important;
  }
  body.news-page .coverage-row b,
  body.news-page .news-aside-list b{
    font-size:13px!important;
    line-height:1.28!important;
  }
  body.news-page .news-aside-list a{
    padding:11px 0!important;
  }
  body.news-page .news-aside-list span,
  body.news-page .coverage-row span{
    font-size:11px!important;
    color:#9fb2c7!important;
  }
  body.news-page .category-list{
    gap:7px!important;
  }

  /* Article page related cards and share panel. */
  body.news-page .article-layout{
    grid-template-columns:minmax(0,1fr) 310px!important;
    gap:18px!important;
  }
  body.news-page .article-card{
    background:rgba(5,18,31,.78)!important;
    border:1px solid var(--oh-v4-line)!important;
    box-shadow:none!important;
  }
  body.news-page .article-card > p,
  body.news-page .article-card > h2,
  body.news-page .article-card > h3,
  body.news-page .article-card > blockquote,
  body.news-page .article-card > .news-figure{
    margin-left:42px!important;
    margin-right:42px!important;
  }
  body.news-page .read-next-section{
    padding:24px!important;
    border-radius:17px!important;
    border:1px solid var(--oh-v4-line)!important;
    background:rgba(5,18,31,.68)!important;
  }
  body.news-page .read-next-grid{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:14px!important;
  }
  body.news-page .read-next-card{
    box-shadow:none!important;
  }
  body.news-page .read-next-card img{
    height:126px!important;
  }
  body.news-page .read-next-body h3{
    font-size:15px!important;
    line-height:1.25!important;
  }

  /* Footer: less blocky, closer to professional portal footer. */
  body .footer{
    margin-top:34px!important;
    padding:30px 34px!important;
    grid-template-columns:1.7fr .8fr .9fr 1.15fr!important;
    background:linear-gradient(180deg,rgba(4,15,27,.88),rgba(2,9,17,.96))!important;
    border-top:1px solid rgba(73,148,207,.20)!important;
    border-bottom:1px solid rgba(73,148,207,.10)!important;
  }
  body .footer .brand img{
    width:58px!important;
    height:auto!important;
  }
  body .footer .brand-title{
    font-size:21px!important;
    letter-spacing:-.02em!important;
  }
  body .footer .tag{
    height:24px!important;
    padding:0 10px!important;
    font-size:10px!important;
  }
  body .footer .mailrow input{
    min-height:38px!important;
    border-radius:10px!important;
  }
  body .footer .mailrow button{
    width:42px!important;
    min-width:42px!important;
    height:38px!important;
    border-radius:10px!important;
  }
  body .bottom{
    min-height:42px!important;
    border-top:0!important;
    color:#b6c7d8!important;
  }

  @media (max-width:1320px){
    body.news-page .news-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
    body.news-page .news-layout,
    body.news-page .article-layout{grid-template-columns:minmax(0,1fr) 290px!important;}
    body.news-page .read-next-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
    body .footer{grid-template-columns:1.4fr .8fr .8fr 1fr!important;}
  }

  @media (max-width:1180px){
    body.news-page .news-layout,
    body.news-page .article-layout{grid-template-columns:1fr!important;}
    body.news-page .sidebar{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  }
}
