/* Balloon comparison only: neither index.html nor centered-preview.html loads this. */
.page-balloon-preview .chapter-balloon{width:224px;height:224px;filter:drop-shadow(0 12px 13px #657caf12)}
.chapter-balloon .balloon-asset{display:block;width:100%;height:100%;max-width:none;object-fit:contain;transform-origin:50% 42%;animation:balloon-breathe 4.8s ease-in-out infinite;will-change:transform}
.page-balloon-preview .chapter-route [data-route-path]{stroke:#cbd4e8}
.page-balloon-preview .chapter-route [data-route-progress]{stroke:#a0b3df}
.page-balloon-preview .chapter-waypoint,.page-balloon-preview .method-waypoint{border-color:#b6c4e4}
.page-balloon-preview .chapter-waypoint.is-current{background:#b4c3e5;border-color:#98abd6;box-shadow:0 0 0 7px #a5b9e714}
.page-balloon-preview .method-waypoint.is-current{background:#a6b9df;border-color:#98acd8;box-shadow:0 0 0 5px #a5b9e710}
@keyframes balloon-breathe{0%,100%{transform:translateY(2px) rotate(-1.2deg)}50%{transform:translateY(-4px) rotate(1.2deg)}}
@media(max-width:1050px) and (min-width:761px){.page-balloon-preview .chapter-balloon{width:196px;height:196px}}
@media(max-width:760px){.page-balloon-preview .chapter-balloon{width:112px;height:112px}}
@media(prefers-reduced-motion:reduce){.chapter-balloon .balloon-asset{animation:none;transform:none;will-change:auto}.page-balloon-preview .chapter-balloon{filter:none}}

/* One scroll position controls the sculpture, balloon and chapter route. */
.page-balloon-preview #capabilities{border-top:0}
.hero-handoff-ready .career-hero{overflow:visible}
.hero-handoff-ready .career-hero .sculpture-stage{position:fixed;inset:0 0 auto;height:var(--handoff-scene-height,100svh);pointer-events:none;opacity:calc(.95 * var(--handoff-stroke-opacity,1))}
.hero-handoff-ready .career-hero::after{position:fixed;inset:0 0 auto;height:var(--handoff-scene-height,100svh);opacity:var(--handoff-copy-opacity,1)}
.hero-handoff-ready .career-hero .personal-wordmark,.hero-handoff-ready .career-hero .hero-statement,.hero-handoff-ready .career-hero .hero-motion-controls,.hero-handoff-ready .career-hero .hero-scroll{opacity:var(--handoff-copy-opacity,1)}
.hero-handoff-ready .career-hero.is-handoff-leaving :is(.hero-statement,.hero-motion-controls,.hero-scroll){pointer-events:none}
.hero-handoff-ready .connected-ready .chapter-balloon{opacity:var(--handoff-balloon-opacity,0)}
.hero-handoff-ready .chapter-route,.hero-handoff-ready .chapter-waypoint{opacity:var(--handoff-route-opacity,0)}
.hero-handoff-ready .chapter-balloon .balloon-asset{clip-path:inset(0 0 var(--handoff-thread-inset,24%) 0);animation-name:balloon-handoff-breathe}
@keyframes balloon-handoff-breathe{
 0%,100%{transform:translateY(calc(2px * var(--handoff-float,1))) rotate(calc(-1.2deg * var(--handoff-float,1)))}
 50%{transform:translateY(calc(-4px * var(--handoff-float,1))) rotate(calc(1.2deg * var(--handoff-float,1)))}
}

/* Keep project controls beside the reading path and all demo inputs native. */
.practice-switchbar{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:0;padding-bottom:20px}
.practice-swipe-hint{display:flex;align-items:center;gap:10px;font-size:12px;line-height:1.8;color:#626d83;cursor:grab;user-select:none;-webkit-user-select:none}
.practice-swipe-hint>span{font-size:20px;line-height:1}
.practice-switch-controls{display:flex;align-items:center;gap:14px}
.practice-switch-controls button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 14px;border:1px solid #c5cddb;border-radius:999px;background:var(--paper);font-size:12px;white-space:nowrap;transition:background .18s,border-color .18s}
.practice-switch-controls button:hover{background:#e9edf6;border-color:#8fa3cc}
.practice-switch-controls button:focus-visible{outline:2px solid #7b93c1;outline-offset:3px}
.practice-position{min-width:140px;text-align:center;font-size:11px;line-height:1.7;color:#4f596d;font-variant-numeric:tabular-nums}
.page-balloon-preview .practice-picker,.page-balloon-preview .practice-copy,.page-balloon-preview .scene-topline,.page-balloon-preview .scene-heading,.page-balloon-preview .mini-status,.practice-switchbar{touch-action:pan-y pinch-zoom;overscroll-behavior-x:contain}
.is-practice-dragging .practice-swipe-hint{cursor:grabbing;color:#415e94}
@media(max-width:1050px) and (min-width:761px){.practice-switchbar{padding-right:160px}.practice-switch-controls{gap:8px}.practice-position{min-width:120px}.practice-switch-controls button{padding-inline:12px}}
@media(max-width:760px){.practice-switchbar{padding-right:var(--reading-rail);display:block;padding-bottom:18px}.practice-swipe-hint{font-size:11px;margin:0 0 12px}.practice-switch-controls{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:8px}.practice-switch-controls button{width:44px;padding:10px 0;font-size:17px}.practice-switch-controls button span:not([aria-hidden]){display:none}.practice-position{min-width:0;font-size:11px}}
@media(prefers-reduced-motion:reduce){.practice-switch-controls button{transition:none}}
@media print{.practice-switchbar{display:none}}

/* Keep the selected artwork within the available image resolution. */
.narrative-pair{display:grid;grid-template-columns:repeat(2,minmax(0,520px));gap:24px;max-width:1064px;margin-inline:auto;align-items:start}
.narrative-pair figure{min-width:0;margin:0}
.narrative-pair .narrative-pair-image{display:block;width:100%;aspect-ratio:2.93;padding:0;border:0;border-radius:7px;background:transparent}
.narrative-pair-image>img{display:block;width:100%;height:100%;object-fit:contain}
.narrative-pair-image>span{font-size:10px;padding:6px 10px;right:8px;bottom:8px}
.narrative-pair figcaption{font-size:11px;line-height:1.8;margin-top:12px;color:#626258}
@media(max-width:760px){.narrative-pair{grid-template-columns:minmax(0,520px);gap:22px}.narrative-pair figcaption{margin-top:8px}}
