/* Las fotografías mantienen su escala al revelar la portada. Solo se mueve el panel. */
.story-image-crop { width:100%; height:100%; overflow:hidden; }
body[data-preview-crop="true"] .context-cursor {display:none !important;}
.story-image-crop .photo { width:100%; height:100%; object-fit:var(--crop-fit,cover) !important; object-position:var(--crop-x,50%) var(--crop-y,50%) !important; transform:scale(var(--crop-scale,1)); transform-origin:var(--crop-x,50%) var(--crop-y,50%); }
.editorial-panel .closing-title { font-size:clamp(45px,6.4vw,104px); margin:38px 0; max-width:600px; }
.story-reading { overflow-y:auto; overscroll-behavior:contain; touch-action:pan-y; scrollbar-width:thin; scrollbar-color:var(--accent) transparent; }
.story-reading:focus-visible { outline:2px solid var(--accent); outline-offset:4px; }
.story-introduction { font-family:var(--serif); font-size:clamp(22px,2.25vw,38px); line-height:1.55; max-width:950px; text-wrap:pretty; }
.story-introduction p { margin:0 0 1em; }
.credits.story-reading { justify-content:safe center; }
.credits .story-introduction + dl { margin-top:32px; }
.pictime-reference { font-size:11px; margin-top:12px; }
.story-text-slot { padding:clamp(22px,3.2vw,68px); align-items:center; }
.story-text-slot .story-reading { width:100%; max-height:100%; max-width:660px; }
.story-text-slot h2 { font-size:clamp(27px,3vw,54px); margin:0 0 .8em; }
.story-text-slot p { font-size:clamp(15px,1.12vw,20px); line-height:1.9; white-space:pre-line; text-wrap:pretty; margin:0 0 1em; }
.story-text-slot p:last-child { margin-bottom:0; }
.story-text-slot.size-grande p { font-family:var(--serif); font-size:clamp(22px,2.2vw,36px); line-height:1.65; }
.story-text-slot.text-centro { text-align:center; }
.story-text-slot.position-arriba { align-items:flex-start; }
.story-text-slot.position-abajo { align-items:flex-end; }
.story-edit-link { position:fixed; z-index:40; right:24px; top:76px; padding:9px 14px; background:var(--paper); color:var(--ink); font-size:11px; border:1px solid var(--line); }
.scene-caption h2 { margin:0 0 .35em; font-size:clamp(22px,2vw,34px); }
.scene-caption p { margin:0; }
.is-horizontal .scene[data-immersive="true"] .scene-caption { bottom:78px; color:#fff; text-shadow:0 1px 8px rgba(0,0,0,.7); max-width:80%; }
.continuous .story-image-crop { height:auto; }
.continuous .story-image-crop .photo { height:auto; }
.continuous .scene-full-photo .story-image-crop { height:100%; }
.continuous .scene-full-photo .photo { height:100%; }
.continuous .story-text-slot { min-height:320px; }
/* En portátiles bajos, reducir aire antes que crear un scroll de apenas unas líneas. */
@media (min-width:761px) and (max-height:720px) {
  .is-horizontal .credits.story-reading { padding-block:24px; }
  .is-horizontal .credits h2 { font-size:clamp(38px,8svh,64px); margin:20px 0; }
  .is-horizontal .story-introduction { font-size:clamp(22px,min(2.25vw,4.8svh),34px); }
  .is-horizontal .story-introduction p:last-child { margin-bottom:0; }
  .is-horizontal .credits dl { margin-block:20px; }
  .is-horizontal .credits .story-introduction + dl { margin-top:20px; }
}
@media(max-width:760px) {
  .story-image-crop .photo { object-fit:var(--mobile-crop-fit,var(--crop-fit,cover)) !important; object-position:var(--mobile-crop-x,var(--crop-x,50%)) var(--mobile-crop-y,var(--crop-y,50%)) !important; transform:scale(var(--mobile-crop-scale,var(--crop-scale,1))); transform-origin:var(--mobile-crop-x,50%) var(--mobile-crop-y,50%); }
  .editorial-panel .closing-title { font-size:clamp(29px,7vw,48px); margin:18px 0; }
  .story-text-slot { padding:24px 28px; }
  .story-text-slot p { font-size:16px; }
  .story-introduction { font-size:22px; }
  .credits.story-reading { padding:30px 26px; }
  .story-edit-link { top:70px; right:12px; }
}
