/* Phone layout: keep the editorial identity, shorten the path through it. */
@media (max-width: 600px) {
  html { scroll-padding-top: 88px; }
  :root { --site-header-height: 61px; }
  .immersive-header-inner { padding: 8px 20px; }
  .immersive-header .motion-wordmark { width: 148px; }
  .immersive-menu-panel { min-height: 0; padding-bottom: max(24px, env(safe-area-inset-bottom)); }
  .immersive-menu-aside { grid-template-columns: minmax(0, 1fr); }
  .immersive-menu-bottom .theme-toggle { width: 44px; height: 44px; min-width: 44px; }
  .immersive-menu-bottom a { display: inline-flex; align-items: center; min-height: 44px; }
  .editorial :is(.gd-rail,.ff-status) { top: var(--site-header-offset,61px); }
  .gallery-editorial { --e-gutter: 22px; }
  .gallery-editorial .hero-heading { padding: 34px 0 38px; gap: 24px; }
  .gallery-editorial .hero-heading h1 { font-size: clamp(38px, 10.9vw, 57px); line-height: 1.05; letter-spacing: -.05em; text-wrap: balance; }
  .gallery-editorial .hero-intro p { font-size: 16px; line-height: 1.55; margin: 0 0 18px; }
  .gallery-editorial .hero-foot { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; padding: 22px 0 26px; font-size: 13px; line-height: 1.5; }
  .gallery-editorial .hero-foot a { align-items: center; min-height: 44px; max-width: none; }
  /* The scroll scene fits beneath the header instead of stretching to a full page. */
  .gallery-editorial .connected-scroll.is-enhanced { height: calc(640px + 85svh); }
  .gallery-editorial .connected-scroll .connected-frame { padding: 26px 22px 20px; min-height: 0; }
  .gallery-editorial .connected-scroll.is-enhanced .connected-frame { top: var(--site-header-offset,61px); height: min(640px, calc(100svh - 61px)); min-height: 530px; max-height: none; }
  .gallery-editorial .connected-scroll .connected-copy { margin: 0 0 12px; }
  .gallery-editorial .connected-headline { font-size: clamp(36px, 10vw, 48px); line-height: 1.06; min-height: 2.12em; }
  .gallery-editorial .connected-caption { font-size: 14px; line-height: 1.5; min-height: 42px; max-width: 30ch; }
  .gallery-editorial .connected-map { height: 210px; min-height: 210px; margin: auto 0; grid-template-columns: minmax(0, 1fr) 90px minmax(0, 1fr); gap: 12px; }
  .gallery-editorial .context-node, .gallery-editorial .output-node { font-size: 11px; line-height: 1.35; min-height: 48px; }
  .gallery-editorial .connected-bottom { margin-top: 8px; }
  .gallery-editorial .connected-bottom nav { gap: 12px; }
  .gallery-editorial .connected-bottom button { font-size: 12px; line-height: 1.4; min-height: 48px; padding: 8px 0; }
  .gallery-editorial .connected-scroll.is-static .connected-frame { min-height: 470px; }
  .gallery-editorial .operator-story { margin-top: 0; }
  .gallery-editorial .operator-image { min-height: 0; height: 290px; }
  .gallery-editorial .operator-image img { height: 100%; }
  .gallery-editorial .operator-image > span { font-size: 11px; }
  .gallery-editorial .operator-copy { padding: 34px 22px 38px; }
  .gallery-editorial .operator-copy h2 { font-size: clamp(34px, 9.3vw, 48px); line-height: 1.08; margin: 0 0 22px; }
  .gallery-editorial .operator-copy > p { font-size: 16px; }
  .gallery-editorial :is(.process-path,.editorial-section,.builder-section,.collaboration-feature) { padding: 52px var(--e-gutter); }
  .gallery-editorial :is(.process-heading h2,.section-heading h2,.builder-intro h2,.collaboration-copy h2) { font-size: clamp(34px, 9.2vw, 46px); line-height: 1.1; letter-spacing: -.04em; text-wrap: balance; }
  .gallery-editorial :is(.process-heading h2,.section-heading h2,.collaboration-copy h2) br { display: none; }
  .gallery-editorial .process-heading { margin-bottom: 22px; }
  .gallery-editorial .process-heading p { display: none; }
  .gallery-editorial .process-tabs { flex-wrap: nowrap; overflow-x: auto; gap: 4px; margin: 0; padding-bottom: 4px; scrollbar-width: thin; }
  .gallery-editorial .process-tabs button { min-height: 48px; white-space: nowrap; padding: 12px; font-size: 14px; }
  .gallery-editorial .process-panel { margin-top: 18px; padding-top: 0; gap: 0; }
  .gallery-editorial .process-canvas { display: block; height: 390px; min-height: 390px; }
  .gallery-editorial .process-copy { width: 100%; padding: 26px 22px; }
  .gallery-editorial .process-copy h3 { font-size: 28px; line-height: 1.15; }
  .gallery-editorial .process-copy p { min-height: 0; font-size: 16px; line-height: 1.6; margin-top: 16px; }
  .gallery-editorial .process-copy .text-link { min-height: 44px; margin-top: 12px; font-size: 14px; text-align: left; }
  .gallery-editorial .collaboration-inner { gap: 24px; }
  .gallery-editorial .partner-lockup { gap: 12px; }
  .gallery-editorial .partner-lockup > span { font-size: 19px; }
  .gallery-editorial .collaboration-copy h2 { margin-bottom: 18px; }
  .gallery-editorial .collaboration-copy p { font-size: 16px; }
  .gallery-editorial .collaboration-copy .text-link { display: inline-flex; align-items: center; min-height: 44px; font-size: 14px; }
  .gallery-editorial .section-heading { align-items: flex-end; gap: 12px; margin-bottom: 24px; }
  .gallery-editorial .slider-controls { gap: 8px; }
  .gallery-editorial .slider-controls button { width: 44px; height: 44px; }
  .gallery-editorial .editorial-resource { flex-basis: 86%; min-width: 0; }
  .gallery-editorial .resource-cover { min-height: 0; height: 275px; aspect-ratio: auto; padding: 24px; }
  .gallery-editorial .resource-cover > strong { font-size: 31px; line-height: 1.12; }
  .gallery-editorial .editorial-resource h3 { font-size: 24px; line-height: 1.18; }
  .gallery-editorial .editorial-resource > p { display: none; }
  .gallery-editorial .rail-foot { margin-top: 18px; }
  .gallery-editorial .builder-intro { margin-bottom: 28px; }
  .gallery-editorial .workbench select { font-size: 16px; margin-bottom: 26px; }
  .gallery-editorial .workbench legend { margin-bottom: 14px; }
  .gallery-editorial .workbench fieldset { gap: 8px; }
  .gallery-editorial .workbench .need { min-height: 88px; align-items: center; padding: 20px 62px 20px 20px; }
  .gallery-editorial .workbench .need strong { font-size: 23px; line-height: 1.18; }
  .gallery-editorial .workbench .need small { display: none; }
  .gallery-editorial .workbench .need i { right: 16px; top: 50%; bottom: auto; transform: translateY(-50%); width: 32px; height: 32px; font-size: 21px; }
  .gallery-editorial .builder-note { font-size: 12px; line-height: 1.6; }
  .gallery-editorial .closing { padding: 38px 22px; }
  .gallery-editorial .closing > div:not(.closing-bottom) { margin: 10px 0 24px; }
  .gallery-editorial .closing h2 { font-size: clamp(36px, 10vw, 52px); }
  .gallery-editorial .closing-link { font-size: 46px; }
  :is(.gallery-editorial,.editorial) .site-footer { padding: 40px 22px max(28px, env(safe-area-inset-bottom)); }
  .editorial .site-footer > .wrap { padding-inline: 0; }
  .editorial .site-footer .footer-top { padding-top: 0; }
  :is(.gallery-editorial,.editorial) .footer-top { gap: 30px; }
  :is(.gallery-editorial,.editorial) .footer-links { gap: 24px 18px; }
  :is(.gallery-editorial,.editorial) .footer-column > span { margin-bottom: 8px; font-size: 14px; }
  :is(.gallery-editorial,.editorial) .footer-column a { display: flex; align-items: center; min-height: 44px; margin: 0; padding: 7px 0; font-size: 13px; line-height: 1.4; }
}
@media (max-width: 360px) {
  .gallery-editorial { --e-gutter: 18px; }
  .gallery-editorial .connected-frame { padding-inline: 18px; }
  .gallery-editorial .connected-map { grid-template-columns: minmax(0, 1fr) 80px minmax(0, 1fr); gap: 8px; }
  .gallery-editorial .connected-hub { min-width: 80px; }
  .gallery-editorial .context-node,.gallery-editorial .output-node { font-size: 10px; padding-inline: 5px; }
  .gallery-editorial .section-heading { align-items: start; }
  .gallery-editorial .section-heading h2 { max-width: 6ch; }
}
