/* slideshow horizontal */
.top{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:16px}
.back{font:400 .9rem "Jost",sans-serif;color:var(--mute);text-decoration:none}
.back:hover{color:var(--ink)}
.strip{--m:clamp(20px,4vw,56px);position:relative;display:flex;gap:4px;height:calc(100vh - 190px);min-height:300px;margin:0 calc(-1*var(--m));overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;scrollbar-width:none;overscroll-behavior-x:contain}
.strip::-webkit-scrollbar,.painel::-webkit-scrollbar{display:none}
.painel{flex:none;width:min(400px,82vw);height:100%;overflow-y:auto;padding:0 28px 0 var(--m);scroll-snap-align:start;scrollbar-width:none}
.painel h1{font-size:2rem;margin:0 0 8px}
.painel p{margin:0 0 1em}
.strip .f{flex:none;height:100%;background:none;scroll-snap-align:start}
.strip .f img{height:100%;width:auto;max-width:none}
.strip .ph{height:100%;width:auto;aspect-ratio:var(--r)}
.bar{display:flex;justify-content:space-between;align-items:center;margin-top:16px;font:400 .9rem "Jost",sans-serif}
.bar div{display:flex;gap:20px}
.bar button{background:none;border:0;padding:4px 0;font:inherit;color:var(--mute);cursor:pointer}
.bar button:hover{color:var(--ink)}
@supports (height:100dvh){.strip{height:calc(100dvh - 190px)}}
/* ---------- vista "single": uma fotografia de cada vez ---------- */
.solo{position:relative;height:calc(100vh - 170px);min-height:320px;touch-action:pan-y pinch-zoom}
@supports (height:100dvh){.solo{height:calc(100dvh - 170px)}}
.solo__stage{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
.solo__stage > *{max-width:100%;max-height:100%;transition:opacity .25s ease}
.solo__stage > .is-out{opacity:0}
.solo__stage .f{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:none}
.solo__stage .f img{width:auto;height:auto;max-width:100%;max-height:100%}
.solo__stage .ph{width:auto;height:100%;max-width:100%;aspect-ratio:var(--r)}
.solo__text{max-width:56ch;overflow-y:auto;padding:0 1rem;scrollbar-width:none}
.solo__text::-webkit-scrollbar{display:none}
.solo__zone{position:absolute;top:0;bottom:0;width:50%;padding:0;border:0;background:none;-webkit-tap-highlight-color:transparent}
.solo__zone--prev{left:0;cursor:w-resize}
.solo__zone--next{right:0;cursor:e-resize}
.solo__zone:focus-visible{outline:2px solid var(--ink);outline-offset:-4px}
.solo--text .solo__zone{width:12%}
.solo__progress{height:2px;margin-top:16px;background:var(--line)}
.solo__progress i{display:block;height:100%;width:0;background:var(--ink);transition:width .35s ease}
/* ---------- vista "scroll": uma fotografia por ecrã, a descer ---------- */
.rol__intro{margin:0 0 3rem}
.rol__intro p{max-width:56ch}
.rol{display:flex;flex-direction:column;align-items:center;gap:14vh;padding-bottom:8vh}
.rol__item{width:100%;margin:0}
.rol__item .f{display:flex;justify-content:center;background:none}
.rol__item .f img{width:auto;height:auto;max-width:100%;max-height:calc(100vh - 80px)}
.rol__item .ph{width:min(100%,calc(80vh * var(--r)))}
@media (prefers-reduced-motion:reduce){.solo__stage > *,.solo__progress i{transition:none}}
/* ---------- vista "wall": parede de exposição (layout exportado do Wall Editor) ---------- */
.wall-wrap{overflow-x:auto}
.wall{position:relative;width:100%;container-type:inline-size}
.wall__it{position:absolute;box-sizing:border-box}
.wall__in{width:100%;height:100%;box-sizing:border-box}
.wall__in .f{width:100%;height:100%;background:none}
.wall__in .f img,.wall__in video{width:100%;height:100%;object-fit:var(--fit,cover);display:block}
.wall__in .ph{aspect-ratio:auto!important;width:100%;height:100%;color:transparent;font-size:0}
.wall__it--zoom{cursor:zoom-in}
.wall__tx{white-space:pre-wrap;word-break:break-word}
