/* Approved desktop density. Reference: 3840x2160, Windows 250%, browser maximised.
   Use 100% browser zoom. No CSS zoom/transform or mobile changes. */
@media screen and (min-width:1101px){
  #root>.masthead{max-width:1260px;min-height:76px;padding:18px 36px;gap:21px}
  #root>.masthead .brand{font-size:32px;gap:11px}
  #root>.masthead .mark{width:40px;height:40px;font-size:28px}
  #root>.masthead nav{gap:24px}
  #root>footer{max-width:1260px;padding:34px 36px}
  .site-updates-inner{max-width:1260px;min-height:76px;padding:10px 36px;gap:21px;grid-template-columns:130px minmax(0,1fr) auto}
  .site-updates-title{font-size:20px}
  .site-updates-description{font-size:13px;margin-top:4px}
  .home-motion-root>.hero{max-width:1260px;padding:48px 36px 40px;gap:36px}
  .home-motion-root .hero-copy{padding-bottom:25px}
  .home-motion-root .hero h1{font-size:clamp(40px,3.8vw,59px);line-height:1.06}
  .home-motion-root .hero .dek{font-size:19px;line-height:1.45;margin-top:24px}
  .home-motion-root .hero .discover{margin-top:18px}
  .home-motion-root .big-play{width:58px;height:58px}
  .home-motion-root .player-toolbar{margin-top:10px}
  .home-motion-root :is(.home-section,.watch,.topic-section,.investigations){max-width:1260px;margin-inline:auto;padding:45px 36px 50px}
  .home-motion-root .section-heading{gap:23px;margin-bottom:27px}
  .home-motion-root h2{font-size:clamp(32px,3.3vw,52px);line-height:1.1}
  .home-motion-root :is(.story,.collection-card) h3{font-size:25px;line-height:1.2}
  .home-motion-root :is(.story-grid,.collection-grid){gap:25px}
  .home-motion-root :is(.news-layout,.explorer-grid){gap:40px}
  .home-motion-root .lead-news h3{font-size:clamp(30px,3.1vw,39px)!important;line-height:1.14}
  .home-motion-root .lead-excerpt{font-size:17px;margin-top:16px}
  .home-motion-root .news-list h3{font-size:22px!important;line-height:1.22}
  .home-motion-root .story-source{margin-top:18px;margin-bottom:10px}
  .home-motion-root .story-description{margin-top:14px}
  .home-motion-root .number-card>strong{font-size:42px}

  /* Two distinct investigation layouts, preserving their own column ratios. */
  .family-business :is(.fb-hero,.fb-chapter-nav,.fb-chapter,.fb-method){max-width:1080px;margin-inline:auto}
  .family-business .fb-hero{padding:24px 36px;gap:36px}
  .family-business .fb-hero h1{font-size:57px!important;line-height:1.06;margin:12px 0 15px}
  .family-business .fb-dek{font-size:18px;line-height:1.5}
  .family-business .fb-meta{margin-top:16px}
  .family-business :is(.fb-folio,.fb-hero-art){max-width:360px;max-height:360px}
  .family-business .fb-chapter{padding:30px 36px 36px}
  .family-business .fb-chapter-nav{padding:14px 36px;gap:5px 18px}
  .family-business :is(.fb-chapter,.fb-method) h2{font-size:33px!important;margin-bottom:21px}
  .family-business .fb-layout{gap:40px;grid-template-columns:minmax(0,1.45fr) minmax(220px,.75fr)}
  .family-business .fb-prose>p{font-size:16px;line-height:1.7;margin-bottom:18px}
  /* Preserve photograph proportions within the desktop height limit. */
  .family-business .fb-photo img{width:100%;height:auto;max-height:330px;object-fit:contain}
  .family-business .fb-evidence-card{padding:18px 20px}

  .retribution :is(.rt-hero-inner,.rt-controls,.rt-section-inner){max-width:1080px;padding-inline:36px}
  .retribution .rt-hero-inner{padding-block:24px;gap:36px}
  .retribution .rt-hero h1{font-size:51px!important;line-height:1.06;margin-bottom:17px}
  .retribution .rt-dek{font-size:18px;line-height:1.5;margin-bottom:17px}
  .retribution .rt-cover{max-width:360px}
  .retribution .rt-controls{padding-block:15px}
  .retribution .rt-chapter{padding-block:27px}
  .retribution .rt-chapter h2{font-size:33px!important;margin-bottom:23px}
  .retribution .rt-columns{gap:36px}
  .retribution .rt-prose>p{font-size:16px;line-height:1.65;margin-bottom:18px}
  .retribution .rt-photo img{max-height:330px}
  .retribution .rt-card{padding:18px}
  .retribution .rt-card h3{font-size:24px}

  /* Shared shell, directories, archives and data pages. Keep the original
     responsive layouts and component-specific small type below this boundary. */
  #root>main.inner-site{max-width:1260px;margin-inline:auto}
  /* Page-level overflow clipping must not cut off the full-bleed band paint.
     Individual players, cards and the cast globe stage keep their own clipping. */
  #root .inner-site :is(.home-motion-root,.restored-research,.cast-globe-page){overflow:visible}
  #root .inner-site h1{font-size:clamp(42px,3.8vw,57px)!important;line-height:1.06!important}
  #root .inner-site :is(section,article,aside) h2{font-size:33px!important;line-height:1.18!important}
  #root .inner-site :is(.section-opener,.directory-opener,.hub-heading,.cast-hero,.ps-hero,.iran-story-hero){padding:36px;gap:36px}
  #root .inner-site :is(.section-dek,.ps-dek,.iran-story-dek){font-size:18px;line-height:1.5}
  #root .inner-site :is(.qanon-dek,.investigation-hero>strong){font-size:18px!important;line-height:1.5!important}
  #root .inner-site .ps-hero-art{width:100%;max-width:360px;justify-self:end}
  #root .inner-site :is(.section-light,.section-dark,.article-chapter,.record-archive,.directory-guides,.cast-page>section,.hub-section,.ps-chapter){padding:32px 36px}
  #root .inner-site :is(.collection-card,.library-card,.cast-card,.archive-card) h3{font-size:24px;line-height:1.25}
  #root .inner-site :is(.collection-grid,.cast-grid,.library-grid){gap:24px}
  #root .inner-site :is(.opener-art,.vanity-hero-art){max-width:360px;max-height:360px}
  #root .inner-site :is(.chapter-intro,.ps-prose,.iran-content)>p{font-size:16px;line-height:1.65}
  #root .inner-site .chart-panel h2{font-size:29px!important}
  #root .inner-site .site-related-pages{padding:30px 36px}

  /* The investigations share a narrower reading measure inside full-width
     colour bands. Artwork keeps its existing crop and documentary proportions. */
  #root .inner-site :is(.investigation-scale header:has(h1),.investigation-hero){max-width:1080px;margin-inline:auto;padding:24px 36px!important;gap:36px}
  #root .inner-site .investigation-scale header:has(h1) h1{font-size:57px!important;margin:12px 0 15px!important}
  #root .inner-site .investigation-scale :is(.tv-dek,.ut-dek,.greenland-standfirst,.peace-dek,.crime-dek,.ef-dek,.section-dek,.bi-dek,.p25-dek,.health-story-dek){font-size:18px!important;line-height:1.5!important}
  #root .inner-site .investigation-scale :is(.tv-hero-art,.ut-hero-art,.greenland-hero-art,.opener-art,.health-story-art,.ep-hero-art,.ef-hero-art,.q-hero-art){max-width:360px!important;max-height:360px!important}
  #root .inner-site .investigation-scale :is(.peace-hero-record,.p25-document){max-width:360px}
  #root .inner-site .investigation-scale :is(.section-light,.tv-opening,.ut-opening,.tv-chapter,.ut-chapter,.greenland-section,.greenland-opening,.peace-paper,.crime-paper,.ef-method,.ef-report,.ef-claims,.ef-visual-record,.gz-intro,.gz-chapter,.gz-record,.bi-focus,.bi-record,.bi-watch,.p25-light,.p25-dark,.investigation-content,.investigation-detail,.health-story-intro,.health-kennedy,.health-briefing){max-width:1080px;margin-inline:auto;padding:27px 36px!important}
  #root .inner-site .investigation-scale :is(.tv-chapter-layout,.ut-chapter-layout,.investigation-pair,.gz-chapter,.greenland-two,.peace-pair,.crime-two){gap:24px!important}
  #root .inner-site .investigation-scale :is(section,article) h3{font-size:24px!important;line-height:1.25!important}
  #root .inner-site .investigation-scale :is(.tv-prose,.ut-prose,.gz-copy,.chapter-intro,.greenland-opening,.bi-focus,.peace-opening,.health-story-intro,.bi-row,.p25-policy,.evidence-record,.investigation-pair,.ef-finding,.ef-allegation,.peace-case)>p{font-size:16px;line-height:1.65}
  #root .inner-site .investigation-scale :is(.tv-opening-copy,.ut-opening-copy,.gz-intro,.greenland-drop),
  #root .inner-site .investigation-scale :is(.tv-opening-copy,.ut-opening-copy,.gz-intro)>p{font-size:18px!important;line-height:1.5!important}
  #root .inner-site .investigation-scale .investigation-reading-nav{max-width:1080px;margin-inline:auto;padding:15px 36px;gap:15px}
  #root .inner-site .investigation-scale :is(.tv-screen,.ut-screen,.gz-film,.peace-player,.crime-embed,.embed,.p25-player,.frontline-player,.health-video-player,.investigation-video,.ep-film,.greenland-video,.ef-film){max-width:435px}
  #root .inner-site .qanon-page .qanon-paper{max-width:1080px;margin-inline:auto;padding:30px 36px}
  #root .inner-site .qanon-page .qanon-paper>section{padding-block:27px}
  #root .inner-site .qanon-page .qanon-paper .q-lead{font-size:18px!important;line-height:1.6}
  #root .inner-site .qanon-page .qanon-paper :is(.q-timeline-row,.q-context-layout)>div>p{font-size:16px;line-height:1.65}
  #root .inner-site .retribution .rt-hero h1{font-size:51px!important}
  #root .inner-site .cast-globe-top{padding-inline:36px}
  #root .inner-site .cast-selected-columns{gap:40px}
  #root .inner-site .cast-selected-dossier .cast-entry{padding-block:27px}
  #root .inner-site .cast-selected-dossier .cast-entry h4{font-size:27px}
  #root .inner-site .cast-selected-dossier .cast-entry p{font-size:16px}

  /* The standalone diary uses the same desktop shell as the React pages. */
  body:has(>main>.diary)>.masthead{max-width:1260px;min-height:76px;padding:18px 36px;gap:21px}
  body:has(>main>.diary)>.masthead .brand{font-size:32px;gap:11px}
  body:has(>main>.diary)>.masthead .mark{width:40px;height:40px;font-size:28px}
  body:has(>main>.diary)>.masthead nav{gap:24px}
  body:has(>main>.diary) :is(.hero-inner,.diary,.site-footer){max-width:1260px;padding:36px}
  body:has(>main>.diary) .hero-inner{gap:48px;grid-template-columns:minmax(0,1fr) 195px}
  body:has(>main>.diary) h1{font-size:57px}
  body:has(>main>.diary) .deck{font-size:18px}
  body:has(>main>.diary) .date-card strong{font-size:84px}
  body:has(>main>.diary) .section-top h2{font-size:39px}
  body:has(>main>.diary) .columns{gap:40px;grid-template-columns:minmax(0,1fr) 270px}
  body:has(>main>.diary) .event{gap:18px;padding-block:20px}
  /* Do not shrink click targets or metadata alongside display type. */
  :is(.site-updates-controls,.header-actions,.player-toolbar) button{min-height:44px;min-width:44px}
}
