/* Mobile newsroom layout. Loaded after page-specific styles; desktop is unchanged. */
@media (max-width:700px) {
  html { scroll-padding-top:60px }
  body { background:#f2f2f2 }
  .container { width:calc(100% - 24px) }
  .utility-inner { min-height:20px; line-height:20px }
  .demo-label { font-size:10px }
  .site-header { background:linear-gradient(90deg,#0a203c,#087bc1) }
  .masthead { height:48px; min-height:48px; padding:0; display:grid; grid-template-columns:48px minmax(0,1fr) 48px; gap:0 }
  .site-menu { grid-column:1; grid-row:1 }
  .menu-toggle { width:44px; min-height:44px }
  .menu-icon,.menu-icon::before,.menu-icon::after { width:19px; height:1px; border-radius:0 }
  .menu-icon::before { top:-5px }
  .menu-icon::after { top:5px }
  .brand { grid-column:2; grid-row:1; justify-self:center; margin:0; min-height:0; gap:5px }
  .brand-logo { width:100px; height:44px }
  .brand-edition { font-size:20px; padding-bottom:1px }
  .mobile-briefs { display:flex; grid-column:3; grid-row:1; align-items:center; justify-content:center; min-height:44px; font-size:13px; font-weight:700 }
  .main-nav { display:none }
  .menu-panel { inset-inline-start:-12px; width:min(340px,calc(100% + 24px)); max-height:calc(100dvh - 48px); border-radius:0 0 8px 8px }
  .menu-panel a { min-height:44px }
  main.container { padding-top:12px }
  main.container:has(.lead-story) { padding-top:0 }
  .lead-story { margin-inline:-12px; border-radius:0; background:#12385b }
  .lead-image img { aspect-ratio:4/3; height:auto; border-radius:0 }
  .lead-copy { padding:12px 12px 10px; background:linear-gradient(90deg,#087bc1,#15395c) }
  .lead-copy .eyebrow { font-size:11px; color:#ffe0af; border:0; padding:0; margin-bottom:3px }
  .lead-copy h2 { font-size:32px; line-height:1; font-weight:800; letter-spacing:-.025em; margin:0 0 15px }
  .lead-copy p { font-size:18px; line-height:1.32; margin:0 0 12px }
  .lead-copy .story-meta { font-size:11px; color:#d2dce7; gap:3px 8px }
  .news-grid { margin-top:8px; gap:20px }
  .supporting-grid,.latest-grid,.module-grid,.category-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:4px }
  .story-card { display:grid; grid-template-columns:minmax(0,1fr) 39%; column-gap:12px; padding:12px; border-radius:8px; align-items:center; background:white }
  .story-card .card-image { grid-column:2; grid-row:1; width:100%; border-radius:0; overflow:hidden }
  .story-card .card-image img { aspect-ratio:1.12; width:100%; height:auto; object-fit:cover }
  .story-card .image-label { font-size:9px; line-height:1.2; padding:2px 4px }
  .story-card .card-copy { grid-column:1; grid-row:1; padding:0; min-width:0 }
  .story-card .card-copy .story-title { font-size:20px; line-height:1.05; font-weight:800; letter-spacing:-.025em; margin:0 0 7px }
  .story-card .card-copy p { font-size:15px; line-height:1.18; color:#303030; margin:0 0 8px; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:3; overflow:hidden }
  .story-card .story-meta { font-size:10px; line-height:1.25; color:#6d737c; gap:3px 5px; margin:0 }
  .story-card .story-meta>span:first-child { font-weight:600 }
  .latest-grid .story-card:first-child,.module-grid .story-card:first-child { grid-column:auto }
  .wire-home { margin:0; border-radius:8px }
  .wire-home .briefing-heading { padding:12px; flex-wrap:nowrap }
  .wire-home .briefing-heading h2 { font-size:24px }
  .wire-home .wire-status,.wire-home .wire-empty { padding:10px 12px; margin:0 }
  .briefing-heading h2::before { width:4px; height:17px }
  .market-strip { margin-bottom:8px; padding-top:6px }
  [data-mobile-market-slot]:empty { display:none }
  [data-mobile-market-slot] { margin-top:20px }
  [data-mobile-market-slot] .market-strip { margin:0; border:1px solid var(--line); border-radius:8px; overflow:hidden }
  main>.market-strip { margin-top:28px }
  .market-strip__heading { gap:6px }
  .market-strip__heading h2 { font-size:14px }
  .market-strip__note { font-size:10px }
  .market-strip__toggle { min-height:32px }
  .section-heading,.editorial-heading { border:0; padding:0; margin-bottom:12px; gap:8px }
  .section-heading h2,.editorial-heading h2 { font-size:25px; font-weight:800; line-height:1.15; border:0; padding:0 }
  .section-heading::after,.editorial-heading::after { content:""; height:2px; background:var(--brand-blue); flex:1; align-self:center; margin:0 }
  .section-heading>span,.section-all { order:1; font-size:12px }
  .editorial-heading h2::before { display:none }
  .editorial-heading h2>span { font-size:25px }
  .latest-section,.section-module,.editorial-section { margin-top:28px }
  .agenda-grid,.agenda-small-grid,.focus-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:4px; border:0; border-radius:0; background:none }
  .section-card { border-radius:8px; padding:12px; display:grid; grid-template-columns:minmax(0,1fr) 39%; gap:12px; align-items:center }
  .section-card-image { grid-column:2; grid-row:1; border-radius:0 }
  .section-card .section-card-image img { aspect-ratio:1.12 }
  .section-card-copy { grid-column:1; grid-row:1; padding:0 }
  .section-card h3,.focus-grid .section-card h3 { font-size:20px; line-height:1.05; margin:0 0 7px; font-weight:800 }
  .section-card-copy>p { font-size:15px; line-height:1.18; margin-bottom:8px; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:3; overflow:hidden }
  .section-card .story-meta { font-size:10px; line-height:1.25; margin:0 }
  .section-card--lead { display:block; padding:0; overflow:hidden; margin-bottom:4px }
  .section-card--lead .section-card-image img { aspect-ratio:16/9 }
  .section-card--lead .section-card-copy { padding:12px }
  .section-card--lead h3 { font-size:26px; line-height:1.08 }
  .section-card--lead .section-card-copy>p { font-size:17px; line-height:1.3; margin-bottom:10px; display:block }
  .shorts-section { margin-block:26px }
  .shorts-heading h2 { font-size:25px }
  .shorts-heading h2>span { font-size:21px }
  .shorts-card { padding:0; border-radius:8px; background:var(--brand-navy); box-shadow:none }
  .shorts-card__frame { border:0; border-radius:8px }
  .shorts-card__title { font-size:20px }
  .magazine-panel { border:0; background:none; padding:0 }
  .magazine-card { border-radius:8px }
  .magazine-card h3,.magazine-card--lead h3,.magazine-column--side h3 { font-size:26px }
  .category-heading { padding-top:4px; margin-bottom:16px }
  .category-heading h1 { font-size:30px }
  .article-layout { background:white; margin-inline:-12px; padding:0 16px 20px }
  .article-header { padding-top:12px }
  .article-header h1 { font-size:32px; line-height:1.06; margin:7px 0 14px }
  .article-summary { font-size:20px; line-height:1.35; margin-bottom:16px }
  .article-header>.story-meta { font-size:12px; line-height:1.4 }
  .article-body { font-size:20px; line-height:1.65 }
  .article-body h2 { font-size:26px; line-height:1.15 }
  .article-figure { margin:20px -16px }
  .article-figure img { border-radius:0; aspect-ratio:4/3 }
  .article-figure figcaption { padding:6px 16px 0 }
  .article-inline-figure img { border-radius:0 }
  .article-inline-figure--logo img { object-fit:contain; aspect-ratio:auto }
  .article-alert { margin-bottom:12px; padding:9px 12px; font-size:12px }
  .breadcrumbs { padding-bottom:12px; font-size:12px }
  .article-aside .story-card { grid-template-columns:minmax(0,1fr) 39%; gap:12px; padding:12px 0; border-radius:0; border-bottom:1px solid var(--line) }
  .article-aside .story-card .card-image { border-radius:0 }
  .article-aside .story-card .card-image img { height:auto }
  .article-aside .story-card .story-title { font-size:20px }
  .footer-inner { padding-block:22px }
}
