/* Final shared sizing layer. Real responsive dimensions, not page zoom.
   Publication colors, font families, grids and interactions remain edition-owned. */
@media screen {
  html { zoom:1 !important; }
  body { --ui-title:clamp(30px,2.8vw,42px); --ui-section:26px; --ui-card:19px; --ui-hero:325px; --ui-gutter:24px; }
  body:is(.p-edition.p-edition.p-edition,[class*="gx-page-"]) { font-size:14px; }
  body:is(.p-edition.p-edition.p-edition,[class*="gx-page-"]) :is(h1,.fe-wordmark,.ce-masthead,.le-masthead) { font-size:var(--ui-title) !important; line-height:1.08 !important; }
  body:is(.p-edition.p-edition.p-edition,[class*="gx-page-"]) h2 { font-size:var(--ui-section) !important; line-height:1.15 !important; }
  body:is(.p-edition.p-edition.p-edition,[class*="gx-page-"]) h3 { font-size:var(--ui-card) !important; line-height:1.22 !important; }
  body:is(.p-edition.p-edition.p-edition,[class*="gx-page-"]) :is(main,section,article,aside,header,footer,nav,form) { min-width:0; }
  body:is(.p-edition.p-edition.p-edition,[class*="gx-page-"]) img { max-width:100%; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.p-container,.nw-shell,.gx-container,.gx-shell,.sp-shell,.dv-shell,.ff-wrap,.np-wrap,.gs-wrap,.bv-wrap,.hs-wrap,.cs-wrap,.bp-wrap,.nf-shell,.nf-masthead,.tv-wrap,.pd-wrap) {
    width:calc(100% - var(--ui-gutter)*2) !important; max-width:1200px !important; margin-inline:auto; padding-inline:0 !important;
  }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) .sp-shell { --sp-content:1200px; --sp-gutter:24px; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.nw-masthead,.dv-masthead,.pd-masthead,.np-masthead,.bp-masthead,.gs-masthead,.bv-masthead,.hs-masthead,.cs-masthead,.tv-masthead,.ff-nav,.gx-header-inner,.sp-header-inner) {
    min-height:0 !important; padding-block:11px !important; column-gap:20px !important;
  }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.p-brand,.nw-logo,.le-logo,.dv-logo,.gx-logo,.sp-logo,.pd-logo,.tv-logo,.ff-logo>span,.np-logo>span,.gs-logo>span,.bv-logo>span,.hs-logo>span,.cs-logo>span,.bp-logo>span,.n-brandname) { font-size:27px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.nw-logo,.le-logo,.dv-logo,.pd-logo,.tv-logo,.ff-logo,.np-logo,.gs-logo,.bv-logo,.hs-logo,.cs-logo,.bp-logo)>svg { width:36px !important; height:34px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.ff-logo,.np-logo,.gs-logo,.bv-logo,.hs-logo,.cs-logo,.bp-logo,.pd-logo,.tv-logo) small { margin-top:6px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.nw-nav,.le-nav,.pd-nav,.np-nav,.bp-nav,.gs-nav,.bv-nav,.hs-nav,.cs-nav,.tv-nav,.sp-nav,.dv-nav) { min-height:0 !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.nw-nav,.le-nav,.pd-nav,.np-nav,.bp-nav,.gs-nav,.bv-nav,.hs-nav,.cs-nav,.tv-nav,.sp-nav,.dv-nav)>a { font-size:12px !important; padding-block:11px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.p-button,.bn-button,.ff-button,.np-button,.bp-button,.gs-button,.bv-button,.hs-button,.cs-button,.cs-outline,.tv-button,.pd-button) { font-size:12px !important; min-height:38px; padding:10px 17px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.nw-hero,.ce-cover,.ti-cover,.dv-hero,.sp-cover,.ff-hero,.np-carousel,.gs-carousel,.bp-carousel,.hs-carousel,.bv-hero,.tv-cover,.pd-slide,.le-lead-arcade) { min-height:var(--ui-hero) !important; height:auto !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.gx-hero,.gx-slider .gx-hero) { height:var(--ui-hero) !important; min-height:var(--ui-hero) !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.np-cover,.gs-cover,.bp-cover,.hs-hero) { min-height:var(--ui-hero) !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.nw-hero,.ce-cover,.ti-cover,.dv-hero,.sp-cover,.np-cover,.gs-cover,.bp-cover,.hs-hero,.pd-slide,.tv-cover,.le-lead-arcade) h2 { font-size:var(--ui-title) !important; line-height:1.08 !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.ff-hero-copy,.hs-hero-copy,.bv-hero>div) { padding-block:30px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.np-cover-copy,.bp-cover-copy,.gs-cover-copy,.nw-hero-copy,.dv-hero-copy,.sp-cover-copy,.tv-cover-copy) { padding-block:26px 50px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.ff-hero-copy,.hs-hero-copy,.bv-hero>div,.np-cover-copy,.bp-cover-copy,.gs-cover-copy,.nw-hero-copy,.dv-hero-copy,.sp-cover-copy,.tv-cover-copy)>p { font-size:14px !important; line-height:1.65 !important; margin-block:14px 20px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.ff-benefits,.ff-values) { margin-block:22px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.np-intro,.gs-intro,.cs-intro,.tv-intro,.pd-intro,.ce-masthead,.fe-business-heading) { padding-block:22px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.cs-feature,.cs-feature-image) { min-height:325px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) .cs-feature h2 { font-size:31px !important; margin-block:22px 18px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) .cs-feature p { font-size:14px !important; line-height:1.65 !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.cs-briefing h3,.np-brief h3,.bp-top-stories h3,.gs-brief h3,.hs-desk-rail h3) { font-size:20px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) .cs-briefing>a>span { font-size:28px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.cs-explore,.cs-workbench,.bv-reading-room,.hs-timeline-callout,.np-reading,.tv-inspiration) { padding-block:32px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) .cs-explore>a { font-size:20px !important; min-width:0 !important; width:min(420px,100%); padding:17px 25px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.ff-section,.bv-section,.hs-section,.gs-picks,.cs-latest,.tv-picks) { padding-block:22px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.ff-inner,.np-follow-page,.gs-inner,.bv-inner,.hs-inner,.cs-inner,.bp-inner,.nw-archive) { padding-block:35px 50px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.ff-program,.gs-era-card,.hs-era-grid>a) { min-height:245px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.ff-program-tabs a) { min-height:74px !important; padding:14px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.ff-about>img,.ff-detail>img,.gs-about img,.bv-about img,.hs-about img,.cs-about img) { max-height:325px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.hs-desk-lead) { min-height:345px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.bp-overlay) { min-height:180px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.bv-release-banner) { min-height:210px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.nw-story-copy,.np-card-copy,.gs-card-copy,.bv-story>div,.hs-story>div,.cs-story>div) { padding:16px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.nw-story,.np-card,.gs-card,.bv-story,.hs-story,.cs-story,.bp-card) h3 { font-size:var(--ui-card) !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.nw-cover-card) { transform:none !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.p-article-title,.p-article h1,.gx-article h1) { font-size:clamp(30px,3vw,38px) !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.p-prose,.p-article-body,.gx-prose,.gx-article-body) p { font-size:16px !important; line-height:1.8 !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.p-article-cover,.gx-cover) img { max-height:520px; object-fit:cover; }
}
@media screen and (min-width:768px) and (max-width:1100px) {
  body { --ui-title:34px; --ui-section:24px; --ui-card:18px; --ui-hero:300px; --ui-gutter:22px; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.p-brand,.nw-logo,.le-logo,.dv-logo,.gx-logo,.sp-logo,.pd-logo,.tv-logo,.ff-logo>span,.np-logo>span,.gs-logo>span,.bv-logo>span,.hs-logo>span,.cs-logo>span,.bp-logo>span,.n-brandname) { font-size:25px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.nw-masthead,.dv-masthead,.pd-masthead,.np-masthead,.bp-masthead,.gs-masthead,.bv-masthead,.hs-masthead,.cs-masthead,.tv-masthead,.ff-nav) { padding-block:10px !important; column-gap:16px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.cs-feature,.cs-feature-image) { min-height:300px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) .cs-feature h2 { font-size:29px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.cs-briefing h3,.np-brief h3,.bp-top-stories h3,.gs-brief h3,.hs-desk-rail h3) { font-size:19px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.ff-program,.hs-era-grid>a) { min-height:220px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.bp-overlay) { min-height:170px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.ff-about>img,.ff-detail>img,.gs-about img,.bv-about img,.hs-about img,.cs-about img) { max-height:245px !important; }
}
@media screen and (max-width:767px) {
  body { --ui-title:28px; --ui-section:22px; --ui-card:17px; --ui-hero:310px; --ui-gutter:16px; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.p-brand,.nw-logo,.le-logo,.dv-logo,.gx-logo,.sp-logo,.pd-logo,.tv-logo,.ff-logo>span,.np-logo>span,.gs-logo>span,.bv-logo>span,.hs-logo>span,.cs-logo>span,.bp-logo>span,.n-brandname) { font-size:23px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.nw-logo,.le-logo,.dv-logo,.pd-logo,.tv-logo,.ff-logo,.np-logo,.gs-logo,.bv-logo,.hs-logo,.cs-logo,.bp-logo)>svg { width:29px !important; height:29px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.nw-masthead,.dv-masthead,.pd-masthead,.np-masthead,.bp-masthead,.gs-masthead,.bv-masthead,.hs-masthead,.cs-masthead,.tv-masthead,.ff-nav,.gx-header-inner,.sp-header-inner) { padding-block:9px !important; column-gap:12px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.nw-nav,.le-nav,.pd-nav,.np-nav,.bp-nav,.gs-nav,.bv-nav,.hs-nav,.cs-nav,.tv-nav,.sp-nav,.dv-nav)>a { font-size:11px !important; padding-block:10px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.p-button,.bn-button,.ff-button,.np-button,.bp-button,.gs-button,.bv-button,.hs-button,.cs-button,.cs-outline,.tv-button,.pd-button) { font-size:11px !important; min-height:42px; padding:10px 14px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.ff-hero-copy,.hs-hero-copy,.bv-hero>div) { padding-block:28px 52px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.np-cover-copy,.bp-cover-copy,.gs-cover-copy,.nw-hero-copy,.dv-hero-copy,.sp-cover-copy,.tv-cover-copy) { padding:24px 20px 60px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.ff-hero-copy,.hs-hero-copy,.bv-hero>div,.np-cover-copy,.bp-cover-copy,.gs-cover-copy,.nw-hero-copy,.dv-hero-copy,.sp-cover-copy,.tv-cover-copy)>p { font-size:14px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) .ff-hero { min-height:360px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) .gs-cover-copy h2 { margin-block:18px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.ff-actions,.hs-actions,.bv-actions) { flex-wrap:wrap; gap:10px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.np-intro,.gs-intro,.cs-intro,.tv-intro,.pd-intro) { padding-block:20px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.cs-edition,.np-dateline) { padding-top:22px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) .cs-feature { min-height:0 !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) .cs-feature-image { min-height:0 !important; height:220px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) .cs-feature h2 { font-size:28px !important; margin-block:18px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) .cs-briefing h3 { font-size:22px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.np-brief h3,.bp-top-stories h3,.gs-brief h3,.hs-desk-rail h3) { font-size:18px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.ff-section,.bv-section,.hs-section,.gs-picks,.cs-latest,.tv-picks) { padding-block:20px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.cs-explore,.cs-workbench,.bv-reading-room,.hs-timeline-callout,.np-reading,.tv-inspiration) { padding-block:25px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.ff-inner,.np-follow-page,.gs-inner,.bv-inner,.hs-inner,.cs-inner,.bp-inner,.nw-archive) { padding-block:28px 40px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.ff-program,.hs-era-grid>a) { min-height:205px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.hs-desk-lead) { min-height:300px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.bp-overlay) { min-height:170px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.bv-release-banner) { min-height:210px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.ff-about>img,.ff-detail>img,.gs-about img,.bv-about img,.hs-about img,.cs-about img) { max-height:245px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.nw-story-copy,.np-card-copy,.gs-card-copy,.bv-story>div,.hs-story>div,.cs-story>div) { padding:13px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.p-article-title,.p-article h1,.gx-article h1) { font-size:28px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.p-prose,.p-article-body,.gx-prose,.gx-article-body) p { font-size:16px !important; line-height:1.8 !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.p-article-cover,.gx-cover) img { max-height:310px; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.p-dialog) { max-width:calc(100vw - 24px) !important; padding:24px !important; }
}
@media screen and (max-width:380px) {
  body { --ui-title:26px; --ui-section:21px; --ui-card:16px; --ui-gutter:12px; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.ff-logo>span,.np-logo>span,.gs-logo>span,.bv-logo>span,.hs-logo>span,.cs-logo>span,.bp-logo>span,.n-brandname) { font-size:21px !important; }
}
@media screen and (pointer:coarse) {
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.p-icon-button,[data-open-menu],[data-open-search]) { min-width:40px; min-height:40px; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.p-large-search,.cs-filter,.hs-filter,.bv-filter,.gs-filter,.cs-planner,.ff-enquiry) :is(input,select,textarea) { font-size:16px !important; }
}
@media screen {
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) .cs-header { width:calc(100% - var(--ui-gutter)*2) !important; max-width:1200px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.nw-masthead,.dv-masthead,.pd-masthead,.np-masthead,.bp-masthead,.gs-masthead,.bv-masthead,.hs-masthead,.cs-masthead,.tv-masthead,.ff-nav,.gx-header-inner,.sp-header-inner) { max-width:1200px !important; margin-inline:auto !important; }
}
@media screen and (max-width:380px) {
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.cs-tools,.bp-tools,.hs-tools,.bv-tools,.gs-tools,.np-tools,.ff-tools) { gap:8px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.cs-logo,.bp-logo,.hs-logo,.bv-logo,.gs-logo,.np-logo,.ff-logo)>span>small { max-width:150px; white-space:normal; }
}

/* Phone layout comes last: edition art direction must not restore desktop tracks.
   Keep this structural (no zoom or clipped page overflow), and retain desktop grids. */
@media screen and (max-width:767px) {
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(main,section,article,aside,header,footer,nav,form,fieldset,figure,div) { min-width:0; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(input,select,textarea) { max-width:100%; box-sizing:border-box; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(p,h1,h2,h3,figcaption,label) { overflow-wrap:anywhere; }

  /* Stacked features and sidebars, including article and search pages. */
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(
    .gx-front,.gx-front-expanded,.gx-front-expanded .gx-brief,.gx-reading-layout,
    .nw-opening,.nw-discovery-layout,.nw-storytelling,.p-article-layout,
    .dv-front,.dv-latest-layout,.dv-reading-grid,.dv-article-hero,.dv-story-body,
    .sp-platform-front,.sp-article-columns,.sp-about-layout,.sp-contact-layout,
    .ce-opening,.ce-newspaper-opening,.ce-gallery-opening,.fe-business-opening,
    .ti-opening,.ti-middle,.ti-documentary-row,.fp-opening,
    .le-lead-lab,.le-arcade-opening,.le-lead-arcade,
    .pd-opening,.pd-more-layout,.np-opening,.np-reading,
    .bp-opening,.bp-news-layout,.bp-latest-grid,.bp-sidebar,
    .ff-about,.ff-detail,.ff-enquiry,.gs-opening,.gs-about,
    .bv-reading-room,.bv-book-detail,.bv-about,.hs-opening,.hs-desk,.hs-about,
    .cs-feature,.cs-about,.cs-planner,.tv-opening,.tv-discovery,.tv-longread
  ) { grid-template-columns:minmax(0,1fr) !important; gap:20px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(
    .ce-opening,.ce-newspaper-opening,.ce-gallery-opening,.dv-front,.gx-front,
    .le-arcade-opening,.bp-latest-grid,.cs-feature
  ) > * { grid-column:auto !important; grid-row:auto !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.p-article-aside,.gx-reading-aside,.dv-reader-sidebar,.nw-discovery-sidebar,.sp-sidebar) { position:static !important; width:auto !important; max-height:none !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.p-article,.p-prose,.gx-prose,.dv-prose) { width:100% !important; max-width:100%; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.p-prose,.gx-prose,.dv-prose) :is(pre,.table-wrap) { max-width:100%; overflow-x:auto; }

  /* Ads need a full copy line and their own CTA row, not three narrow columns. */
  body[class*="gx-page-"] .gx-ad.gx-ad { padding:14px 16px !important; min-height:0 !important; text-align:left; }
  body[class*="gx-page-"] .gx-ad.gx-ad > small { position:static !important; display:block; margin:0 0 10px; letter-spacing:.04em; overflow-wrap:anywhere; }
  body[class*="gx-page-"] .gx-ad.gx-ad { flex-direction:column; align-items:stretch; }
  body[class*="gx-page-"] .gx-ad.gx-ad > a { display:grid !important; grid-template-columns:minmax(0,1fr) !important; gap:12px !important; width:100%; }
  body[class*="gx-page-"] .gx-ad.gx-ad .gx-ad-emblem { display:none !important; }
  body[class*="gx-page-"] .gx-ad.gx-ad a > div:nth-child(2) { width:100%; margin:0 !important; text-align:left; }
  body[class*="gx-page-"] .gx-ad.gx-ad a > b { margin:0 !important; justify-self:start; white-space:normal; min-height:40px; display:flex; align-items:center; }
  body[class*="gx-page-"] .gx-front-expanded .gx-brief .gx-ad { grid-column:1 !important; grid-row:auto !important; }
  body.p-edition.p-edition.p-edition .nw-ad { padding:14px 16px !important; min-height:0 !important; }
  body.p-edition.p-edition.p-edition .nw-ad > small { position:static !important; display:block; margin-bottom:10px; }
  body.p-edition.p-edition.p-edition .nw-ad > div { display:flex !important; flex-direction:column; align-items:flex-start !important; gap:10px !important; }
  body.p-edition.p-edition.p-edition .nw-ad :is(strong,span,a) { width:auto; max-width:100%; margin:0 !important; white-space:normal !important; }
  body.p-edition.p-edition.p-edition .nw-ad a { min-height:40px; display:inline-flex; align-items:center; }

  /* Header navigation scrolls within its own row; the page never needs to. */
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.nw-masthead,.dv-masthead,.pd-masthead,.np-masthead,.bp-masthead,.gs-masthead,.bv-masthead,.hs-masthead,.tv-masthead,.le-header-top) { grid-template-columns:minmax(0,1fr) !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.nw-nav,.le-nav,.pd-nav,.np-nav,.bp-nav,.gs-nav,.bv-nav,.hs-nav,.cs-nav,.tv-nav,.sp-nav,.dv-nav,.gx-subnav) { max-width:100%; overflow-x:auto; flex-wrap:nowrap !important; justify-content:flex-start !important; -webkit-overflow-scrolling:touch; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.nw-nav,.le-nav,.pd-nav,.np-nav,.bp-nav,.gs-nav,.bv-nav,.hs-nav,.cs-nav,.tv-nav,.sp-nav,.dv-nav,.gx-subnav) > a { flex-shrink:0; min-height:42px; display:inline-flex; align-items:center; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.nw-section-title,.gx-section-title,.bp-latest-heading,.p-section-heading) { flex-wrap:wrap; gap:12px; align-items:center; }
  body[class*="gx-page-"] .gx-front-expanded .gx-brief .gx-desk-index { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:0 16px !important; }
  body[class*="gx-page-"] .gx-desk-index a { padding-block:14px !important; min-height:54px; gap:8px; }
  body[class*="gx-page-"] .gx-desk-index strong { min-width:0; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) dialog { box-sizing:border-box; width:calc(100% - 24px); max-width:520px !important; max-height:calc(100dvh - 24px); overflow-y:auto; padding:20px !important; }
}

@media screen and (max-width:600px) {
  /* One readable story per row. Book jackets and topic shortcuts retain small grids. */
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(
    .p-story-grid,[data-nw-grid],.gx-grid,.gx-editorial-grid,.gx-support,
    .ce-selection-grid,.le-selection-grid,.dv-feature-grid,.dv-dense-grid,.dv-desk-stories,
    .dv-side-features,.dv-reader-sidebar,.dv-trending [data-dv-discovery-grid],
    .sp-feed-grid,.sp-hero-rail,.ti-notes-grid,.ti-feature-grid,.ti-documentaries,
    .nw-opening-rail,.nw-discovery-sidebar,.ce-front-left,.ce-briefing,.le-briefs,
    .pd-latest-grid,.np-latest-grid,.bp-four,.bp-chart-grid,.ff-program-grid,
    .gs-pick-grid,.gs-card-grid,.bv-editor-grid,.bv-community-grid,.hs-era-grid,
    .hs-desk-rail,.cs-story-grid,.cs-workbench-grid,.tv-destination-rail,.tv-regions>div
  ) { grid-template-columns:minmax(0,1fr) !important; gap:18px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(
    .p-story-grid,[data-nw-grid],.gx-grid,.gx-editorial-grid,.ce-selection-grid,
    .le-selection-grid,.pd-latest-grid,.bp-latest-grid
  ) > * { grid-column:auto !important; grid-row:auto !important; margin-top:0 !important; }
  body[class*="gx-page-"] :is(.gx-layout-magazine,.gx-layout-bento,.gx-layout-ledger,.gx-layout-timeline) .gx-card { grid-template-columns:minmax(0,1fr) !important; }
  body[class*="gx-page-"] .gx-layout-ledger .gx-card-copy { display:block !important; }
  body.p-edition.p-edition.p-edition .pd-latest-grid > .pd-story:last-child { display:block !important; }
  body.p-edition.p-edition.p-edition .bp-list { grid-column:auto !important; }
  body[class*="gx-page-"] .gx-layout-panorama .gx-card { grid-template-columns:minmax(0,1fr) !important; flex-basis:90%; min-width:0; }
  body.p-edition.p-edition.p-edition :is(.gs-five-grid,.np-reading-desks,.sp-data-unavailable) { grid-template-columns:minmax(0,1fr) !important; }
  body.p-edition.p-edition.p-edition .sp-sports-nav { grid-template-columns:repeat(3,minmax(0,1fr)) !important; gap:8px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.pd-pet-topics,.dv-shortcuts,.ff-program-tabs) { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:10px !important; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.gx-filter,.p-large-search,.np-filter,.gs-filter,.bv-filter,.hs-filter,.cs-filter,.sp-filter) { grid-template-columns:minmax(0,1fr) !important; flex-wrap:wrap; gap:10px; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.gx-filter,.p-large-search,.np-filter,.gs-filter,.bv-filter,.hs-filter,.cs-filter,.sp-filter) > * { min-width:0; max-width:100%; }
  :is(body.p-edition.p-edition.p-edition,body[class*="gx-page-"]) :is(.gx-footer-heading,.nw-footer-top,.bp-footer-grid,.bv-footer-grid,.hs-footer-grid,.cs-footer-grid,.sp-footer-columns) { grid-template-columns:minmax(0,1fr) !important; gap:22px !important; flex-wrap:wrap; }
}
/* Supporting stories occupy the column below the compact sports cover. */
@media(min-width:768px) {
 body.p-edition.p-edition.p-edition .sp-platform-front { align-items:stretch; }
 .sp-front-main { grid-area:lead; min-width:0; display:flex; flex-direction:column; gap:14px; }
 .sp-front-main>.sp-cover { grid-area:auto; }
 .sp-front-support { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
 .sp-front-support .sp-story { display:grid; grid-template-columns:30% minmax(0,1fr); min-height:0; }
 .sp-front-support .sp-story-photo { height:100%; }
 .sp-front-support .sp-story-photo img { height:100%; width:100%; object-fit:cover; }
 .sp-front-support .sp-story-copy { padding:12px; }
 body.p-edition.p-edition.p-edition .sp-platform-front .sp-hero-rail { height:auto!important; display:grid; grid-template-rows:auto 1fr 1fr; }
}
@media(max-width:767px) {
 .sp-front-main { min-width:0; }
 .sp-front-support { display:grid; gap:14px; margin-top:14px; }
}
/* Match neighboring card/image heights instead of leaving unused tracks. */
@media(min-width:768px) {
 body.p-edition.p-edition.p-edition .dv-front { align-items:stretch!important; }
 body.p-edition.p-edition.p-edition .dv-front>.dv-hero { height:100%!important; }
 body[class*="gx-page-"] .gx-layout-magazine .gx-editorial-grid { align-items:stretch; }
 body[class*="gx-page-"] .gx-layout-magazine .gx-card { display:flex!important; flex-direction:column; align-self:stretch!important; height:auto!important; margin-top:0!important; }
 body[class*="gx-page-"] .gx-layout-magazine .gx-photo { flex:1; min-height:190px; }
 body[class*="gx-page-"] .gx-layout-magazine .gx-photo img { height:100%; object-fit:cover; }
 body.p-edition.p-edition.p-edition .nw-storytelling-image { height:280px!important; aspect-ratio:auto!important; }
 body.p-edition.p-edition.p-edition :is(.bv-reading-room,.cs-workbench,.gs-discovery-banner,.tv-longread)>img { height:300px!important; max-height:300px; width:100%; object-fit:cover; }
 body.p-edition.p-edition.p-edition .nf-top-lead>.nf-photo { height:100%; aspect-ratio:auto; }
 body.p-edition.p-edition.p-edition .nf-top-lead>.nf-photo img { height:100%; object-fit:cover; }
 .sp-ranking { align-items:stretch; }
 .sp-ranking-item { align-self:stretch; }
 .sp-ranking-item>.sp-story { height:100%; }
 .sp-sport-layout:not(.sp-coverflow-enhanced)>.sp-story { align-self:stretch; display:flex; flex-direction:column; }
 .sp-sport-layout:not(.sp-coverflow-enhanced)>.sp-story>.sp-story-photo { flex:1; min-height:190px; }
 .sp-sport-layout:not(.sp-coverflow-enhanced)>.sp-story>.sp-story-photo img { height:100%; object-fit:cover; }
}
@media(min-width:768px) {
 .sp-sport-coverflow>.sp-sport-context { grid-column:1/-1; min-height:0; padding:22px; }
 .sp-sport-coverflow>.sp-sport-context .sp-outline-word { display:none; }
 .sp-sport-coverflow>.sp-sport-context nav { flex-direction:row; flex-wrap:wrap; }
 .sp-ranking-item:last-child:nth-child(odd) { grid-column:1/-1; }
 .le-lead-lab .le-lead-photo { max-height:460px; overflow:hidden; }
 .le-lead-lab .le-lead-photo img { height:100%; object-fit:cover; }
 .tv-longread-image { height:280px!important; aspect-ratio:auto!important; }
 .tv-longread-image img { height:100%; object-fit:cover; }
}
/* Explicit areas prevent the hero wrapper from creating implicit grid tracks. */
body.p-edition.p-edition.p-edition .sp-platform-front { grid-template-areas:"lead rail"!important; grid-template-columns:minmax(0,3fr) minmax(260px,1fr)!important; }
.sp-platform-front>.sp-front-main { grid-area:lead; min-width:0; }
.sp-platform-front>.sp-hero-rail { grid-area:rail; min-width:0; }
@media(max-width:1100px) {
 body.p-edition.p-edition.p-edition .sp-platform-front { grid-template-areas:"lead" "rail"!important; grid-template-columns:minmax(0,1fr)!important; }
}
@media(min-width:768px) {
 .sp-front-main>.sp-cover { flex:1; }
 .sp-front-main>.sp-front-support { flex:none; }
}

/* Keep the visible sports cards flush at the bottom, including wrapped metadata. */
@media(min-width:1101px) {
 body.p-edition.p-edition.p-edition .sp-platform-front>.sp-front-main,
 body.p-edition.p-edition.p-edition .sp-platform-front>.sp-hero-rail { align-self:stretch; }
 body.p-edition.p-edition.p-edition .sp-front-main>.sp-cover { height:auto!important; flex:1 1 auto; }
 .sp-front-support { align-items:stretch; }
 .sp-front-support>.sp-story { height:100%; box-sizing:border-box; }
}

@media(min-width:768px) {
 /* Horizontal story thumbnails fill their own card instead of ending above its footer. */
 .ce-selection-item .nw-story>.nw-story-photo { align-self:stretch; height:auto; }
 .ce-selection-item .nw-story>.nw-story-photo img { height:100%; object-fit:cover; }
}
