/* Phone closing chapters: a readable column, with a separate figure and fixed navigation. */
@media (max-width:767px), (min-width:768px) and (max-width:950px) and (max-height:500px) {
  .reading.closing-study>.closing-stage {min-height:0;height:100svh}
  .closing-chapter {inset:calc(var(--site-header-height) + 12px) 20px 142px;overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scroll-padding-block:16px}
  .closing-chapter .closing-copy {position:relative;inset:auto;transform:none;width:100%;max-width:none}
  .closing-copy h2 {font-size:36px;line-height:1.1;margin-bottom:16px;letter-spacing:-.045em}
  .closing-copy :is(.publications-kicker,.bottom-explainer-eyebrow,.giving-explainer-eyebrow,.enquiry-eyebrow),.closing-kicker {font-size:10px;margin-bottom:14px;letter-spacing:1px}
  .closing-copy :is(.publications-intro,.giving-explainer-copy,.bottom-explainer-main),.closing-chapter .enquiry-intro>p:not(.enquiry-eyebrow) {font-size:15px;line-height:1.65;max-width:none}
  .closing-copy .publications-intro {margin-top:12px}
  .closing-copy .bottom-explainer-company {font-size:14px;line-height:1.65;max-width:none;margin-top:16px}
  .closing-art-label {display:none}
  .closing-art {left:20px;right:20px;top:calc(var(--site-header-height) + 338px);bottom:192px}
  .closing-resource-links {margin-top:14px;max-width:none}
  .closing-resource-links button {min-height:50px;padding:10px 28px 10px 0;font-size:14px;line-height:1.35}
  .closing-resource-links small {font-size:11px;line-height:1.5;margin-top:3px}
  .closing-resource-links b {top:15px}
  .closing-chapter.publications {overflow:visible}
  .closing-chapter.publications .closing-copy {max-height:calc(100% - 60px);overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scroll-padding-block:12px}
  .publication-families {inset:auto 0 0;display:flex;gap:10px;justify-content:space-between;height:48px}
  .publication-families button {position:static!important;left:auto!important;top:auto!important;transform:none;min-width:0;min-height:44px;padding:10px 2px;font-size:11px;text-align:center;flex:1;letter-spacing:.6px}
  .publication-families button>span {margin-left:4px}
  .publication-families small {display:none}
  .publication-bridge-copy {left:20px;right:20px;top:68%}
  .publication-bridge-copy h2 {font-size:25px;line-height:1.2}
  .publication-bridge-copy>p {font-size:9px;line-height:1.6}
  .closing-stage[data-scene="studio"]>.closing-art,.closing-stage[data-scene="contact"]>.closing-art {display:none}
  .closing-studio-notes {position:relative;inset:auto;margin-top:24px;padding-bottom:12px}
  .closing-studio-notes .bottom-explainer-fields {display:grid;grid-template-columns:1fr;gap:16px;margin:0}
  .closing-studio-notes .bottom-explainer-fields h3 {font-size:13px;margin:0 0 5px}
  .closing-studio-notes .bottom-explainer-fields p {font-size:14px;line-height:1.6;max-width:none}
  .closing-chapter .giving-explainer-split {position:relative;inset:auto;display:block;margin:34px 0 0;padding:0}
  .closing-chapter .giving-explainer-shares {display:grid;grid-template-columns:1fr 1fr;gap:20px}
  .closing-chapter .giving-explainer-value {font-size:62px;line-height:1.1;margin:0 0 12px}
  .closing-chapter .giving-explainer-share h3 {font-size:13px;line-height:1.55}
  .closing-stage[data-scene="giving"]>.closing-art {top:55%;bottom:155px;opacity:.3}

  .closing-chapter:is(.roadmap-sequence,.atelier-sequence) {display:flex;flex-direction:column;gap:12px;align-items:stretch;justify-content:flex-start}
  .roadmap-copy,.atelier-sequence-copy {flex:none;width:100%;min-width:0}
  .roadmap-eyebrow,.atelier-sequence-eyebrow {font-size:10px;line-height:1.5;margin-bottom:12px}
  .closing-chapter .roadmap-sequence-beat h2,.closing-chapter .atelier-sequence-beat h2 {font-size:33px;line-height:1.1;margin-bottom:12px}
  .roadmap-body,.atelier-sequence-body {font-size:14px;line-height:1.6;max-width:none}
  .roadmap-aside,.atelier-sequence-aside {font-size:11px;line-height:1.6;margin-top:12px}
  .roadmap-position,.atelier-sequence-position {font-size:11px;margin-top:12px}
  .closing-chapter .roadmap-visual,.closing-chapter.atelier-sequence .atelier-sequence-visual {flex:1 0 235px;min-height:235px;height:235px;max-height:310px;width:100%}
  .roadmap-stop {font-size:11px;gap:4px;white-space:normal;max-width:90px;text-align:center;line-height:1.25;justify-content:center}
  .roadmap-stop-number {font-size:10px}
  .roadmap-stop small {font-size:9px;line-height:1.35}
  .atelier-support {gap:20px}
  .atelier-support>div {min-width:0;flex:1;gap:9px}
  .atelier-support img {width:72px;height:72px;margin-bottom:0}
  .atelier-support>div:last-child img {width:110px}
  .atelier-support strong {font-size:20px}
  .atelier-support span {font-size:10px;text-align:center}
  .atelier-claude {gap:14px;font-size:45px}
  .atelier-claude>img {width:95px;height:95px}
  .atelier-claude>span {font-size:11px}
  .atelier-provider {font-size:11px;padding:4px 3px;letter-spacing:0}
  .atelier-framework-name {font-size:26px}
  .atelier-framework-labels>span {font-size:10px;line-height:1.45;max-width:104px;padding:4px}
  .atelier-human-core {font-size:12px;top:86%}
  .atelier-human-core>span {font-size:10px;margin-top:4px}

  .closing-footer {left:20px;right:20px;bottom:calc(65px + env(safe-area-inset-bottom,0px));padding-bottom:8px}
  .closing-caption {display:none}
  .closing-footer-line {padding:9px 0 0;gap:8px}
  .closing-nav {display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:4px;width:100%}
  .closing-nav button {min-width:44px;min-height:44px;padding:10px;font-size:20px}
  .single-stage-site .closing-nav select {width:100%;max-width:none;min-height:44px;padding:10px 27px 10px 8px;font-size:16px}
  .closing-counter,.closing-scroll-cue {display:none}

  .library-dialog {z-index:40;padding:calc(12px + env(safe-area-inset-top,0px)) 12px calc(16px + env(safe-area-inset-bottom,0px));height:100dvh;box-sizing:border-box}
  .library-surface {box-sizing:border-box;min-width:0;max-width:100%;max-height:none;padding:18px 16px 0;border-radius:6px}
  .library-heading {gap:10px;padding-bottom:12px}
  .library-heading .closing-kicker {font-size:10px;margin-bottom:8px}
  .library-heading h2 {font-size:28px;line-height:1.1}
  .library-close {gap:9px;font-size:12px;min-height:44px;padding:8px 0}
  .library-tabs {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;overflow:visible}
  .library-tabs button {min-width:0;min-height:52px;padding:10px 0;font-size:12px;line-height:1.5;white-space:normal;text-align:left}
  .library-tabs span {margin-left:4px;font-size:10px}
  .library-scroll {padding:0 0 24px;scroll-padding-block:14px}
  .library-panel .publications-entry {grid-template-columns:1fr;gap:10px;padding:20px 0}
  .library-panel .publications-entry-meta {flex-direction:row;flex-wrap:wrap;gap:10px;font-size:11px;line-height:1.5}
  .library-panel .publications-entry h3 {font-size:16px;line-height:1.55;overflow-wrap:anywhere}
  .library-panel .publications-doi {font-size:11px;line-height:1.8;min-height:44px;align-items:center;gap:8px}
  .library-panel .publications-sources {grid-template-columns:1fr;gap:28px}
  .library-panel .publications-source-note {font-size:14px;line-height:1.65}
  .library-panel .publications-source h3>a,.library-panel .publications-oeis-details summary {display:flex;align-items:center;min-height:44px}
  .library-panel .publications-oeis-links a {font-size:14px;min-height:44px}
  .library-panel .publications-oeis-links p {font-size:13px;line-height:1.6}
  .library-panel .notebook-heading {grid-template-columns:1fr;gap:14px;margin:16px 0 20px}
  .library-panel .notebook-heading h3 {font-size:25px}
  .library-panel .notebook-heading p {font-size:14px;line-height:1.65}
  .library-panel .index-tools {display:block;margin-top:12px}
  .library-panel .index-filters {display:flex;gap:16px;overflow:auto;white-space:nowrap}
  .library-panel .index-filters button {min-height:44px;flex:none}
  .library-panel #index-count {font-size:12px;margin-top:10px}
  .library-panel .research-links .work-row {display:grid;grid-template-columns:1fr 24px;gap:9px;padding:20px 0;min-height:44px}
  .library-panel .work-row small {grid-column:1/-1;font-size:10px;line-height:1.5}
  .library-panel .work-row small em {display:inline;margin-left:10px;font-size:10px}
  .library-panel .work-row strong {font-size:19px;line-height:1.3}
  .library-panel .work-row>span {grid-column:1;font-size:13px;line-height:1.6}
  .library-panel .work-row .paper-arrow {grid-column:2;grid-row:2;font-size:18px}
  .library-panel .source-note {font-size:11px;line-height:1.7;overflow-wrap:anywhere}

  .closing-chapter.enquiry .closing-copy {margin-bottom:16px}
  .closing-chapter .enquiry-email {font-size:13px;min-height:44px;margin-top:4px;padding-block:10px;box-sizing:border-box}
  .booking-invitation {display:none}
  .booking-invitation li {font-size:13px;line-height:1.55;margin-bottom:8px}
  .closing-chapter :is(.enquiry-form,.booking-choice,.booking-receipt) {position:relative;inset:auto;transform:none;width:100%;padding:0 0 22px}
  .booking-panel-kicker {font-size:10px;margin-bottom:12px}
  .closing-chapter :is(.booking-choice,.booking-receipt) h3 {font-size:30px;line-height:1.15;margin-bottom:14px}
  .booking-panel-copy {font-size:14px;line-height:1.65;margin-bottom:18px}
  .booking-primary {width:100%;min-height:48px;box-sizing:border-box;font-size:15px;padding:13px 15px}
  .booking-panel-small {font-size:12px;line-height:1.6;margin:15px 0}
  .booking-alternative,.booking-native-back,.booking-back {font-size:13px;min-height:44px;padding-block:12px}
  .booking-identity {grid-template-columns:1fr;gap:18px}
  .booking-progress {font-size:11px;gap:20px;line-height:1.5}
  .booking-form .enquiry-field label {font-size:12px;line-height:1.6;margin-bottom:5px}
  .booking-form .enquiry-field :is(input,select,textarea) {font-size:16px;line-height:1.5;min-height:46px;padding:10px 0;max-width:100%;color-scheme:dark}
  .booking-form .enquiry-field input::placeholder {font-size:14px}
  .closing-chapter .booking-form .enquiry-field textarea {min-height:90px;max-height:160px;resize:vertical}
  .booking-channels {display:flex;flex-wrap:wrap;gap:8px}
  .booking-channels legend {font-size:12px;margin-bottom:10px}
  .booking-channels span {font-size:13px;min-height:44px;display:flex;align-items:center;padding:10px 13px;box-sizing:border-box}
  .booking-field-help,.booking-optional {font-size:11px;line-height:1.6}
  .booking-step-actions {gap:16px;margin-top:20px}
  .booking-step-actions .enquiry-submit {min-height:46px;font-size:15px;padding-block:12px}
  .booking-contact-summary {font-size:12px;line-height:1.6;margin-bottom:20px}
  .booking-form .enquiry-handling,.booking-form .enquiry-status {font-size:12px;line-height:1.65}
  .booking-confirmation-note {font-size:14px;line-height:1.6}
  .booking-receipt-mark {width:46px;height:46px;opacity:.7}
  .booking-receipt-details div {grid-template-columns:85px 1fr;gap:12px}
  .booking-receipt-details dt {font-size:11px}
  .booking-receipt-details dd {font-size:13px}
  .booking-receipt-actions {flex-wrap:wrap;gap:12px}
}

/* Share portrait height explicitly: fixed offsets can leave no room for the folios. */
@media (max-width:767px) and (min-height:501px) {
  .closing-stage {--publication-copy-height:clamp(106px,calc(50svh - 160px),300px)}
  .closing-chapter.publications .closing-copy {height:var(--publication-copy-height);max-height:var(--publication-copy-height)}
  .closing-stage[data-scene="publications"]>.closing-art {top:calc(var(--site-header-height) + 24px + var(--publication-copy-height));bottom:202px}
}
@media (max-width:767px) and (min-height:501px) and (max-height:600px) {
  .closing-copy .publications-kicker {margin-bottom:10px}
  .closing-copy .publications-heading {font-size:32px}
  .closing-copy .publications-intro {font-size:14px;line-height:1.55}
}

/* Short phone landscape: reading panes and figures share the available width. */
@media (min-width:568px) and (max-width:950px) and (max-height:500px) {
  .closing-chapter {inset:92px 20px 72px}
  .closing-footer {left:20px;right:280px;bottom:8px;padding-bottom:0}
  .closing-footer-line {padding-top:0;border-top:0}
  .closing-art {left:48%;right:20px;top:90px;bottom:122px}
  .closing-copy h2 {font-size:32px;margin-bottom:12px}
  .closing-chapter.publications .closing-copy {width:43%;height:100%;max-height:100%;overflow-y:auto;overscroll-behavior-y:auto;padding-right:12px;box-sizing:border-box}
  .publication-families {left:48%;bottom:0}
  .publication-bridge-copy {top:52%;left:24px;right:52%}
  .publication-bridge-copy h2 {font-size:25px}
  .closing-chapter.bottom-explainer {display:grid;grid-template-columns:43% 1fr;gap:32px}
  .closing-studio-notes {margin-top:0}
  .closing-chapter:is(.roadmap-sequence,.atelier-sequence) {flex-direction:row;gap:20px;overflow:visible}
  .roadmap-copy,.atelier-sequence-copy {width:43%;height:100%;overflow-y:auto;padding-right:8px;box-sizing:border-box}
  .closing-chapter .roadmap-sequence-beat h2,.closing-chapter .atelier-sequence-beat h2 {font-size:30px}
  .closing-chapter .roadmap-visual,.closing-chapter.atelier-sequence .atelier-sequence-visual {flex:1 1 0;min-width:0;min-height:0;height:100%;max-height:none;width:auto}
  .closing-chapter.giving-explainer {display:grid;grid-template-columns:43% 1fr;gap:32px}
  .closing-chapter .giving-explainer-split {margin-top:12px}
  .closing-stage[data-scene="giving"]>.closing-art {left:48%;top:92px;bottom:72px;opacity:.2}
  .closing-chapter.enquiry {display:grid;grid-template-columns:40% minmax(0,1fr);gap:32px;overflow:hidden}
  .closing-chapter.enquiry .closing-copy {height:100%;overflow-y:auto;padding-right:8px;box-sizing:border-box;margin-bottom:0}
  .closing-chapter.enquiry :is(.enquiry-form,.booking-choice,.booking-receipt) {height:100%;overflow-y:auto;box-sizing:border-box;padding-right:8px;padding-bottom:22px}
  .closing-chapter :is(.booking-choice,.booking-receipt) h3 {font-size:26px;margin-bottom:10px}
  .booking-panel-kicker {margin-bottom:8px}
  .booking-panel-copy {margin-bottom:12px}
  .library-dialog {padding:8px 12px}
  .library-surface {padding-top:10px}
  .library-heading {padding-bottom:6px}
  .library-heading h2 {font-size:24px}
  .library-heading .closing-kicker {margin-bottom:4px}
  .library-tabs button {min-height:44px;padding-block:6px}
}
