/* Conjuntos de projeto: a vista principal dá contexto; os desenhos formam uma leitura compacta. */
.progress-control{position:relative;flex:1;min-width:24px;height:44px}
.progress-control .progress-track{position:absolute;top:calc(50% - 1px);left:0;right:0;height:2px;pointer-events:none}
#story-position{appearance:none;-webkit-appearance:none;position:absolute;inset:0;width:100%;height:44px;padding:0;margin:0;border:0;background:transparent;cursor:ew-resize;touch-action:none;outline:none}
#story-position::-webkit-slider-runnable-track{height:2px;background:transparent;border:0}
#story-position::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:6px;height:6px;margin-top:-2px;border:0;border-radius:50%;background:var(--accent);opacity:.45;transition:opacity .2s,box-shadow .2s}
#story-position::-moz-range-track{height:2px;background:transparent;border:0}
#story-position::-moz-range-thumb{width:6px;height:6px;border:0;border-radius:50%;background:var(--accent);opacity:.45;transition:opacity .2s,box-shadow .2s}
#story-position:hover::-webkit-slider-thumb,#story-position:focus-visible::-webkit-slider-thumb{opacity:.95;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 12%,transparent)}
#story-position:hover::-moz-range-thumb,#story-position:focus-visible::-moz-range-thumb{opacity:.95;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 12%,transparent)}
#story-position:focus-visible{outline:1px solid var(--border);outline-offset:0;border-radius:3px}
.sequence{gap:3vw}
.image-window{width:100%;height:100%;overflow:hidden}
.story-block .image-slot.reframed img{object-fit:cover;object-position:var(--focal-point,center);transform-origin:var(--focal-point,center);transform:scale(var(--crop-zoom,1))}
.opening .story-copy{width:clamp(300px,29vw,410px)}
.opening .story-copy h3{font-size:clamp(32px,3.2vw,52px)}
.fullscreen-prompt{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;gap:24px;padding:9px 32px;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--accent) 7%,transparent);color:var(--text)}
.fullscreen-prompt p{font:400 clamp(14px,1.5vw,21px)/1.35 Georgia,serif;letter-spacing:-.01em}
.fullscreen-prompt button,.home-fullscreen button{flex-shrink:0;padding:11px 15px;min-height:44px;border:1px solid var(--border,#d2ddcb88);border-radius:3px;background:transparent;color:inherit;font-size:12px}
.fullscreen-prompt button:hover,.home-fullscreen button:hover{background:#aebaa921}
.welcome>p:not(.eyebrow){font-size:clamp(11px,1.05vw,15px);color:#f0e8dd}
.home-fullscreen{margin:22px auto 0;color:#e5e8d9;max-width:340px}
.home-fullscreen p{font:13px/1.5 Arial,sans-serif!important;max-width:300px;margin-bottom:10px}
.home-fullscreen button{background:#14241c99;backdrop-filter:blur(8px)}
.reader-tools{display:flex;align-items:center;gap:20px}
.fullscreen-hint{font-size:11px;line-height:1.5;color:var(--muted,#c9d7c8);max-width:190px}
html:fullscreen{background:#111b15}
html[data-fullscreen-state=on] .editorial:not(.narrative-reader){width:100vw;height:100dvh;border:0;border-radius:0}
html[data-fullscreen-state=on] .fullscreen-prompt{padding-top:4px;padding-bottom:4px}
html[data-fullscreen-state=on] .fullscreen-prompt p{font:12px/1.5 Arial,sans-serif;letter-spacing:.02em}
@media(hover:hover) and (pointer:fine){.story-block:hover .image-slot.reframed img{transform:scale(calc(var(--crop-zoom,1)*1.018))}}
.study .story-copy{width:clamp(290px,28vw,410px)}
.study .story-copy h3{font-size:clamp(30px,3vw,46px)}
.study-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:32px 16px;width:clamp(440px,43vw,680px);height:var(--story-image-height);padding-bottom:22px;flex-shrink:0;align-items:center}
.study-grid .image-slot:has(img){width:100%!important;height:100%!important;max-height:100%;background:#f8f7f1;overflow:visible}
.study-grid .image-slot img{object-fit:contain}
.study-grid .image-slot figcaption{top:calc(100% + 6px);font-size:9px;letter-spacing:0;line-height:1.3}
.study-grid[data-count="2"]{grid-template-columns:1fr;grid-template-rows:repeat(2,minmax(0,1fr));width:clamp(300px,29vw,440px)}
.study-grid[data-count="1"]{grid-template-columns:1fr;grid-template-rows:1fr;width:clamp(350px,34vw,540px);height:calc(var(--story-image-height)*.82)}
.study>.image-slot:has(img){--image-scale:.9!important}
.gallery .story-copy{width:clamp(210px,20vw,300px)}
.gallery .story-copy h3{font-size:clamp(31px,3vw,48px)}
.gallery-grid{display:grid;grid-auto-flow:column;grid-template-rows:repeat(2,minmax(0,1fr));grid-auto-columns:calc(var(--story-image-height)*.8);gap:32px 20px;height:var(--story-image-height);padding-bottom:22px;flex-shrink:0;align-items:center}
.gallery-grid .image-slot:has(img){width:100%!important;height:100%!important;max-height:100%;overflow:visible}
.gallery-grid .image-slot figcaption{top:calc(100% + 6px);font-size:8px}
.reading-link{display:block;background:transparent;border:0;border-bottom:1px solid var(--border);padding:13px 0;margin-top:15px;color:var(--text);font-size:12px;text-align:left;min-height:44px}
.reading-link:hover{border-color:var(--accent)}
.narrative-reader{width:min(920px,calc(100vw - 48px));height:calc(100dvh - 48px);background:var(--panel)}
.narrative-reader .panel-header{padding:20px 30px;min-height:92px}
.narrative-reader .panel-header .eyebrow{font-size:8px;color:var(--muted);margin-bottom:8px}
.narrative-reader h2{font-size:27px}
.narrative-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:35px clamp(24px,6vw,85px) 70px;scrollbar-width:thin;scrollbar-color:var(--border) transparent}
.narrative-scroll article{max-width:690px;margin:auto}
.narrative-credit{font-size:11px;line-height:1.7;color:var(--muted);padding-bottom:24px;border-bottom:1px solid var(--border)}
.narrative-scroll h3{font:400 clamp(27px,3vw,38px)/1.2 Georgia,serif;letter-spacing:-.025em;margin:38px 0 20px}
.narrative-scroll p:not(.narrative-credit){font-size:16px;line-height:1.9;color:var(--text);margin:0 0 20px}
.narrative-reader::backdrop{background:#080f0bd9}
@media(hover:hover) and (pointer:fine){.study-grid .image-slot img:hover{transform:scale(1.025)}.gallery-grid .image-slot img:hover{transform:scale(1.025)}}
@media(max-height:650px) and (orientation:landscape){
 .opening .story-copy{width:280px}.opening .story-copy h3{font-size:29px}
 .fullscreen-prompt{padding:5px 18px;gap:12px}.fullscreen-prompt p{font-size:14px}.fullscreen-prompt button{font-size:10px;padding:6px 10px;min-height:36px}
 .home-fullscreen{margin-top:12px}.home-fullscreen p{font-size:10px!important;margin-bottom:6px}.home-fullscreen button{font-size:10px;padding:7px 10px;min-height:36px}
 .welcome>p:not(.eyebrow){font-size:10px}
 .fullscreen-hint{font-size:10px;max-width:160px}
 .study .story-copy{width:265px}.study .story-copy h3{font-size:28px}
 .study-grid{width:420px;gap:24px 12px;padding-bottom:16px}
 .study-grid[data-count="2"]{width:280px}.study-grid[data-count="1"]{width:290px}
 .study-grid .image-slot figcaption{font-size:8px;top:calc(100% + 4px)}
 .gallery-grid{grid-auto-columns:calc(var(--story-image-height)*.86);gap:23px 14px;padding-bottom:16px}
 .gallery-grid .image-slot figcaption{font-size:7px;top:calc(100% + 4px)}
 .narrative-reader .panel-header{min-height:65px;padding:10px 22px}.narrative-scroll{padding-top:22px}
}
@media(max-width:700px) and (orientation:portrait){
 .opening .story-copy{width:74vw}.opening .story-copy h3{font-size:36px}
 .fullscreen-prompt{padding:10px 18px;gap:12px}.fullscreen-prompt p{font-size:15px}.fullscreen-prompt button{font-size:10px;padding:9px 11px;max-width:110px;white-space:normal}
 .reader-tools{flex-direction:column;gap:4px;align-items:flex-end}.fullscreen-hint{font-size:9px;max-width:125px;text-align:right}
 .tour-header-actions{flex-wrap:wrap;justify-content:flex-end;gap:2px}.tour-header-actions .fullscreen-hint{font-size:9px;flex-basis:100%;max-width:none}
 .study .story-copy{width:74vw}
 .study-grid{width:90vw;gap:28px 12px}.study-grid[data-count="2"]{width:65vw}.study-grid[data-count="1"]{width:80vw}
 .gallery .story-copy{width:60vw}.gallery-grid{grid-auto-columns:65vw}
 .narrative-reader{width:100vw;height:100dvh}.narrative-reader .panel-header{padding:15px 18px;gap:12px}.narrative-reader h2{font-size:23px}
 .narrative-reader .quiet-button{white-space:normal;max-width:135px}.narrative-scroll p:not(.narrative-credit){font-size:15px}
}
@media(prefers-reduced-motion:reduce){.study-grid .image-slot img:hover,.gallery-grid .image-slot img:hover{transform:none!important}}
@media(prefers-reduced-motion:reduce){.story-block .image-slot.reframed img{transform:scale(var(--crop-zoom,1))!important}}
