/* The main page carries the collection; every embedded site remains a live page. */
.has-scroll-gallery{overflow:clip}
.scroll-gallery-track{position:relative;max-width:1120px;margin:0 auto}
.scroll-gallery-stage{position:sticky;top:var(--gallery-sticky-top,102px);padding:8px 0 20px;perspective:1800px;isolation:isolate}
.scroll-gallery-stage .project-desktop{position:relative;z-index:2}
.scroll-gallery-flight{position:relative;min-width:0;transform-origin:50% 65%;transform-style:preserve-3d;will-change:transform,opacity}
.scroll-gallery-flight .window-home{width:100%}
.scroll-gallery-stage .desktop-caption{position:relative;z-index:5}
.scroll-gallery-stage .project-dock{margin-top:24px;background:#e5ddcbeb;backdrop-filter:blur(10px)}
.scroll-gallery-stage .desk-hint{margin-top:15px;max-width:65ch;margin-inline:auto;min-height:22px}
.scroll-gallery-rail{display:flex;align-items:center;gap:15px;margin:0 0 20px;color:#66705b;font:11px/1.4 monospace;position:relative;z-index:5}
.scroll-gallery-rail-label{white-space:nowrap;display:flex;gap:9px;align-items:center}
.scroll-gallery-rail-label:before{content:'↓';font-size:18px;line-height:1;color:#a65032;animation:gallery-scroll-hint 2.7s ease-in-out infinite}
.scroll-gallery-rail-line{display:block;height:3px;flex:1;background:#cec8b6;position:relative;border-radius:2px;overflow:visible}
.scroll-gallery-rail-line:before{content:'';position:absolute;inset:0;background:#92764e;transform:scaleX(var(--gallery-progress,0));transform-origin:left;border-radius:2px}
.scroll-gallery-rail-line>i{position:absolute;left:calc(var(--gallery-progress,0) * 100%);top:-3px;width:9px;height:9px;background:#be603a;box-shadow:0 0 11px #dcab6190;transform:translateX(-50%);border-radius:1px}
.scroll-gallery-rail-count{font-variant-numeric:tabular-nums;white-space:nowrap;color:#95452e}
.compact-gallery-stage .project-desktop{gap:24px}
.compact-gallery-stage .live-window{height:clamp(270px,43svh,400px)}
.compact-gallery-stage .project-dock{margin-top:15px;padding-top:10px;padding-bottom:8px}
.compact-gallery-stage .dock-icon{width:50px;height:50px;margin-bottom:6px}
.compact-gallery-stage .scroll-gallery-rail{margin-bottom:14px}
@keyframes gallery-scroll-hint{0%,100%{transform:translateY(-2px)}50%{transform:translateY(2px)}}
@media(max-width:850px){
 .scroll-gallery-stage .project-desktop{gap:24px}
 .scroll-gallery-stage .live-window{height:clamp(300px,46svh,420px)}
 .scroll-gallery-stage .project-dock{gap:4px;padding:13px 9px 10px}
 .scroll-gallery-stage .dock-project{width:68px;flex-basis:68px}
 .scroll-gallery-stage .dock-icon{width:50px;height:50px;margin-bottom:7px}
}
@media(max-width:600px){
 .scroll-gallery-stage{padding-top:6px;padding-bottom:16px}
 .scroll-gallery-stage .project-desktop{gap:14px}
 .scroll-gallery-stage .desktop-caption{min-height:126px}
 .scroll-gallery-stage .desktop-caption h3{font-size:23px;margin-bottom:7px}
 .scroll-gallery-stage .desktop-caption>p{font-size:13px;line-height:1.45}
 .scroll-gallery-stage .desktop-caption .project-disclosure{font-size:10px;line-height:1.35;margin-top:7px}
 .scroll-gallery-stage .live-window{height:clamp(280px,40svh,355px)}
 .scroll-gallery-stage .project-dock{display:flex;justify-content:flex-start;overflow-x:auto;overflow-y:hidden;gap:4px;margin-top:18px;padding:10px 9px 10px;scrollbar-width:thin;scrollbar-color:#bca783 transparent;border-radius:13px;scroll-behavior:auto}
 .scroll-gallery-stage .dock-project{width:62px;flex:0 0 62px}
 .scroll-gallery-stage .dock-icon{width:44px;height:44px;margin-bottom:7px}
 .scroll-gallery-stage .dock-label{font-size:10px}
 .scroll-gallery-stage .dock-project[aria-pressed=true]:after{bottom:-1px}
 .scroll-gallery-stage .desk-hint{font-size:11px;line-height:1.4;min-height:31px;margin-top:12px;max-width:39ch}
 .scroll-gallery-rail{gap:10px;margin-bottom:13px;font-size:10px}
 .scroll-gallery-rail-label:before{font-size:16px}
 .compact-gallery-stage .desktop-caption{min-height:105px}
 .compact-gallery-stage .live-window{height:clamp(250px,36svh,315px)}
}
@media(prefers-reduced-motion:reduce){
 .scroll-gallery-flight{will-change:auto;transform:none!important;opacity:1!important}
 .scroll-gallery-rail-label:before{animation:none}
}
