/* Desktop composition only. Tablet/mobile retain their existing artwork/layout. */
@media (min-width: 1100px) {
  :root { --desktop-header:84px; --desktop-footer:110px; --nav-h:0px; }
  .app-shell[data-route] .topbar {
    display:flex!important; top:0!important; left:0!important; right:0!important;
    width:100%!important; max-width:none!important; height:var(--desktop-header)!important;
    padding:12px clamp(28px,3vw,60px)!important; transform:none!important;
    background:#f7f3eaf5!important; border-bottom:1px solid #77734b26;
    backdrop-filter:blur(18px); z-index:80!important;
  }
  .topbar:before,.brand:before,.brand:after { display:none!important; }
  .app-shell[data-route] .topbar .brand { width:230px!important; min-width:230px!important; height:58px; gap:14px; }
  .app-shell[data-route] .topbar .brand img { width:44px!important; height:48px!important; filter:none!important; }
  .desktop-brand-copy[hidden] { display:block!important; font:600 12px/1.45 var(--body); letter-spacing:.17em; text-align:left; color:#393c2e; }
  .app-shell[data-route] .topbar .top-actions,
  .app-shell[data-route="explore"]:has(.tour-experience[data-player="welcome"]) .topbar .top-actions { display:flex!important; gap:10px; }
  .topbar .icon-button,.topbar #langTop { width:42px; height:42px; background:transparent!important; border:1px solid #77734b45!important; color:#4e553b!important; box-shadow:none!important; }
  .bottom-nav {
    top:16px!important; bottom:auto!important; left:50%!important; right:auto!important;
    width:520px!important; max-width:calc(100% - 550px)!important; height:52px!important;
    padding:0!important; transform:translateX(-50%)!important; z-index:85!important;
    display:grid!important; grid-template-columns:repeat(4,1fr)!important;
    background:transparent!important; border:0!important; box-shadow:none!important; backdrop-filter:none!important;
  }
  .bottom-nav button { display:flex!important; flex-direction:row!important; justify-content:center; align-items:center; gap:9px!important; padding:10px 8px; border-radius:0!important; }
  .bottom-nav button span { font:600 13px/1.3 var(--body)!important; }
  .bottom-nav button svg,.bottom-nav .nav-art { width:21px!important; height:21px!important; object-fit:contain; }
  .bottom-nav button.is-active { background:#7473420d!important; }
  .bottom-nav button.is-active:after { bottom:0!important; width:36px; height:2px; }
  .view { padding-bottom:0!important; }
  .view-home,.view-knowledge,.view-ar { top:var(--desktop-header)!important; height:calc(100% - var(--desktop-header))!important; }
  .toast { top:96px!important; }
  .language-menu { top:76px!important; }

  /* A landscape photograph and an editorial introduction, not a tall phone. */
  .view-home { background:#f4efe5!important; }
  .view-home:before,.view-home:after,.view-home .home-paper-layer { display:none!important; }
  .view-home .hero-media {
    inset:0 0 var(--desktop-footer) 44%!important; width:56%!important; height:auto!important;
    transform:none!important; filter:none!important; border-radius:0!important;
    mask-image:linear-gradient(90deg,transparent,#000 8%); -webkit-mask-image:linear-gradient(90deg,transparent,#000 8%);
  }
  .view-home .hero-media img { height:100%!important; width:100%!important; object-fit:cover!important; object-position:44% center!important; transform:none!important; }
  .view-home .hero-shade { display:none!important; }
  .view-home .hero-content {
    inset:0 auto var(--desktop-footer) 0!important; width:47%!important; max-width:none!important;
    height:auto!important; padding:32px 3.5vw 32px 5vw!important; transform:none!important;
    display:flex!important; flex-direction:column; justify-content:center!important; align-items:flex-start;
  }
  .view-home .eyebrow { display:block!important; font-size:11px!important; letter-spacing:.16em; margin-bottom:18px; }
  .view-home .hero-content h1 { font-size:clamp(50px,4.9vw,84px)!important; line-height:1.02!important; margin:0 0 24px!important; letter-spacing:-.035em!important; }
  .view-home .hero-intro { display:block!important; margin:0 0 25px!important; font:400 17px/1.65 var(--body)!important; max-width:390px; }
  .view-home .home-title-separator { display:none!important; }
  .view-home .hero-primary { width:min(370px,100%)!important; height:auto!important; min-height:56px!important; padding:12px 20px!important; margin:0!important; font:600 14px/1.4 var(--body)!important; }
  .view-home .hero-secondary { width:min(370px,100%)!important; min-height:68px!important; margin:12px 0 0!important; padding:12px 0!important; }
  .view-home .hero-secondary b { font:500 21px/1.2 var(--display)!important; }
  .view-home .hero-secondary small { font:600 9px/1.5 var(--body)!important; letter-spacing:.08em; }
  .view-home .hero-content > [data-project-funding] { position:fixed; z-index:5; left:0; right:0; bottom:0; width:100%; height:var(--desktop-footer); background:#fff; border-top:1px solid #77734b20; }
  .view-home .project-funding-legacy { width:100%; height:100%; margin:0!important; padding:0!important; display:flex; justify-content:center; align-items:center; }
  .view-home .project-funding-original { width:min(1160px,100%)!important; max-height:100%; height:auto!important; margin:auto; object-fit:contain; }
  .view-home .project-funding-caption { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }

  /* The same split composition introduces the 360 journey. */
  .view-explore .tour-experience { inset:var(--desktop-header) 0 0!important; }
  .tour-welcome { background:#f4efe5!important; }
  .tour-welcome:before,.tour-welcome:after,.tour-welcome-paper-art { display:none!important; }
  .tour-welcome-media { inset:0 0 0 44%!important; width:56%!important; height:100%!important; mask-image:linear-gradient(90deg,transparent,#000 8%); -webkit-mask-image:linear-gradient(90deg,transparent,#000 8%); }
  .tour-welcome-media img { width:100%!important; height:100%!important; object-fit:cover!important; object-position:42% center!important; }
  .tour-welcome-media:before { display:none!important; }
  .tour-welcome-content { inset:0 auto 0 0!important; width:47%!important; height:auto!important; padding:40px 3.5vw 40px 5vw!important; justify-content:center!important; transform:none!important; }
  .tour-kicker { font-size:11px!important; margin-bottom:20px!important; }
  .tour-welcome h2 { font-size:clamp(49px,4.5vw,78px)!important; line-height:1.02!important; margin:0 0 24px!important; letter-spacing:-.035em!important; }
  .tour-welcome h2 span,.tour-welcome h2 i { display:block!important; }
  .tour-welcome .tour-intro-minimal { display:block!important; font:400 16px/1.75 var(--body)!important; max-width:410px; margin:0 0 30px!important; }
  .tour-title-separator,.tour-welcome-lang { display:none!important; }
  .tour-welcome .tour-start { width:min(390px,100%)!important; min-height:70px!important; padding:14px 18px!important; }
  .tour-start b { font-size:23px!important; }.tour-start small { font-size:9px!important; }
  .tour-entry-tools { margin-top:18px!important; }.tour-entry-tools button { min-height:50px!important; }
  .tour-player-brand { display:none!important; }
  .tour-player-actions [data-tour-language] { display:none!important; }
  .tour-player-top { height:76px!important; padding:18px 28px!important; }
  .lite-tour-dock { left:5%!important; right:5%!important; bottom:20px!important; height:100px!important; padding:0 12px!important; grid-template-columns:40px minmax(0,1fr) 40px!important; }
  .lite-tour-dock:before,.lite-tour-dock:after { display:none!important; }
  .lite-scene-rail { height:100%!important; min-height:0!important; padding:6px 12px!important; gap:10px!important; align-items:stretch!important; }
  .lite-scene-rail button,.lite-scene-rail button.is-active { flex:0 0 148px!important; max-width:148px!important; height:100%!important; min-height:0!important; border-radius:3px!important; }
  .lite-scene-rail b { font-size:12px!important; }
  .lite-story-card { left:5%!important; bottom:142px!important; max-width:650px!important; min-height:85px!important; padding:16px 20px!important; background:#f5f0e5ed!important; border-radius:3px!important; }
  .lite-story-card h3 { font-size:26px!important; }.lite-story-card p { font-size:13px!important; line-height:1.6!important; }
  .panorama-guide-anchor { right:5%!important; bottom:158px!important; }
  .lite-tour-shell.is-focus-mode .lite-tour-dock { transform:translateY(180px)!important; }
  .app-shell[data-route="explore"] .caption-bar { bottom:280px!important; }

  /* Comfortable reading widths and type, with the existing image-led chapters. */
  .knowledge-hero { min-height:390px!important; height:42vh; max-height:540px; }
  .knowledge-hero-copy { left:max(5vw,calc((100% - 1280px)/2))!important; bottom:55px!important; width:650px!important; }
  .knowledge-hero-copy h1 { font-size:clamp(80px,7vw,114px)!important; }
  .knowledge-hero-copy p { max-width:600px!important; font-size:17px!important; }
  .knowledge-paper { padding:40px max(5vw,calc((100% - 1280px)/2)) 70px!important; }
  .knowledge-search { width:100%!important; max-width:1280px!important; min-height:68px; margin-bottom:50px!important; }
  .knowledge-search input { font-size:16px!important; }
  .knowledge-search button { min-width:140px!important; font-size:13px!important; }
  .knowledge-book-section,.knowledge-editorial-intro,.knowledge-reference-entries { width:100%!important; max-width:1280px!important; }
  .reference-entry small { font-size:14px!important; }
  .knowledge-editorial-intro { padding-block:28px 55px!important; }
  .knowledge-editorial-intro h2 { font-size:clamp(64px,6vw,94px)!important; max-width:900px; }
  .knowledge-editorial-deck { font-size:16px!important; max-width:700px; line-height:1.8!important; }
  .knowledge-section-heading small,.knowledge-card-copy small { font-size:11px!important; }
  .knowledge-chapter-card .knowledge-card-copy em { font-size:12px!important; }
  .knowledge-chapters { gap:12px!important; }
  .knowledge-chapter-card { min-height:400px!important; }
  .knowledge-chapter-card:nth-child(1),.knowledge-chapter-card:nth-child(8) { min-height:520px!important; }
  .knowledge-article-dialog.is-chapter>article { width:min(1400px,calc(100% - 80px))!important; margin:34px auto!important; }
  .knowledge-article-dialog.is-chapter .knowledge-article-media { height:62vh!important; min-height:440px; max-height:700px; }
  .chapter-story-copy p,.chapter-concepts details>p { font-size:17px!important; line-height:1.85!important; }
  .chapter-facts article p { font-size:15px!important; }
  .chapter-contents button { font-size:13px!important; }.chapter-contents>span { font-size:11px!important; }
  .chapter-sources { font-size:13px!important; }.chapter-sources span { font-size:11px!important; }
  .reference-glossary details p,.reference-event p { font-size:17px!important; }
  .reference-event a,.reference-glossary a,.reference-status,.reference-filterbar button { font-size:13px!important; }
  .knowledge-ai-dialog>article { width:min(1000px,calc(100% - 100px))!important; max-height:86vh!important; }
  .knowledge-ai-answer p,.knowledge-ai-answer li { font-size:17px!important; line-height:1.8!important; }

  /* Guide: a cinematic stage, with controls proportioned for mouse/keyboard. */
  .view-ar .ar-mode-switch { top:24px!important; }
  .app-shell[data-route="ar"] .ar-guide-controls { width:660px!important; bottom:28px!important; min-height:88px!important; }
  .ar-guide-controls button>span { font-size:12px!important; }
  .app-shell[data-route="ar"] .ar-text-composer { bottom:132px!important; width:600px!important; }
  .ar-text-composer input { font-size:15px!important; }
  .app-shell[data-route="ar"][data-ar-phase="fallback"] .caption-bar { bottom:140px!important; }
  .app-shell[data-route="ar"][data-ar-phase="fallback"][data-ar-text-open="true"] .caption-bar { bottom:228px!important; }
  .ar-fallback-call>p { bottom:132px!important; }
  .app-shell[data-ar-text-open="true"] .ar-fallback-call>p { bottom:192px!important; }
  .info-drawer>div { width:min(780px,80vw)!important; padding:48px!important; }
  .info-drawer p,.project-ai-note,.project-responsible,.transparency-note p { font-size:15px!important; line-height:1.75!important; }
  .info-drawer h2 { font-size:48px!important; }.project-links a { font-size:14px!important; }

  @media (max-height: 800px) {
    :root { --desktop-footer:90px; }
    .view-home .hero-content { padding-block:20px!important; }
    .view-home .hero-content h1 { font-size:clamp(46px,4.3vw,64px)!important; margin-bottom:18px!important; }
    .view-home .eyebrow { margin-bottom:12px; }
    .view-home .hero-intro { font-size:15px!important; margin-bottom:18px!important; }
    .view-home .hero-secondary { min-height:54px!important; margin-top:8px!important; }
    .tour-welcome h2 { font-size:clamp(46px,4.3vw,64px)!important; }
  }
}
