/* Preserve The Memory Current artwork and opening. Adapt only to a complete archive. */
.chapter-route{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 32px;max-width:1000px}
.chapter-route a{min-width:0;font-size:21px;line-height:1.25}
.chapter-route .micro{font-size:8px;line-height:1.6}
.films-prologue{min-height:820px}
.films-prologue::before{height:94%}
.world-art-primary{background-size:100% auto;background-repeat:repeat-y}
.sequence-note{font-size:10px;letter-spacing:.3px;opacity:.8}
.film-cover{display:block;text-align:left}
.film-cover img{object-fit:contain;background:#102b2c}
.film-cover:disabled{cursor:default}
.pitch-cover img{background:#171b22}
.pitch-mount{aspect-ratio:16/10;background:#171b22}
.working-title{font-size:8px;opacity:.7;margin:10px 0 18px}
.film-copy [data-edit]:empty{min-height:1.4em}
.film-note [data-edit]:empty{min-height:3em}
.archive-section{padding:100px 8vw 90px;background:#eee3d0;color:#173f40;position:relative}
.archive-heading{max-width:700px;margin-bottom:55px}
.archive-heading h2{font:clamp(48px,6vw,84px)/.95 Georgia,serif;letter-spacing:-3px;margin:30px 0}
.archive-heading>p:last-child{font-size:12px;line-height:1.9;max-width:400px}
.archive-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:65px 6vw}
.archive-card{min-width:0}
.archive-card:nth-child(2n){transform:translateY(30px)}
.archive-card h3{font:36px/1.1 Georgia,serif;letter-spacing:-1px;margin:20px 0}
.archive-card>.micro{margin-top:22px}
.blank-media{position:relative;aspect-ratio:16/9;background:#f5ebd9;border:1px solid #173f4040;display:flex;align-items:center;justify-content:center;overflow:hidden}
.blank-media>span{opacity:.45;font-size:8px;letter-spacing:2px}
.blank-media:before{content:'';position:absolute;inset:13px;border:1px solid #173f4025;pointer-events:none}
.blank-media video{position:relative;width:100%;height:100%;object-fit:contain;background:#102b2c;z-index:1}
.future-pages{background:#f3e9d7;color:#173f40;position:relative;isolation:isolate}
.future-pages::before{content:'';position:absolute;inset:0;z-index:-1;background:url('assets/images/coral-current.png') center 35%/100% auto;opacity:.13;pointer-events:none}
.future-page{min-height:100svh;padding:110px 8vw 80px;position:relative;overflow:clip;border-top:1px solid #173f4030;display:flex;flex-direction:column;justify-content:center}
.future-heading h2{font:clamp(55px,7vw,100px)/.94 Georgia,serif;letter-spacing:-3px;margin:26px 0 55px}
.future-composition{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:7vw;align-items:center}
.future-1 .blank-media{transform:rotate(-3deg)}
.future-2 .blank-media{transform:rotate(3deg);order:1}
.future-copy{min-height:230px;border-top:1px solid #173f4050;padding-top:25px}
.future-copy>.micro{font-size:8px;opacity:.6;margin-bottom:30px}
.future-copy .empty-title{font:38px/1.1 Georgia,serif;min-height:1.2em;margin:20px 0}
.future-copy .empty-summary,.future-copy .empty-note{font-size:13px;line-height:1.9;min-height:3em;margin:25px 0}
.future-copy [data-edit]:empty{border-bottom:1px solid #173f4020}
.future-folio{margin-top:70px;text-align:right;font-size:8px}
.edit-only{display:none!important}
.editing .edit-only{display:flex!important}
.editor-upload{font:11px/1.5 Arial,sans-serif;position:relative;cursor:pointer;align-items:center;justify-content:space-between;padding:12px 0;margin-top:18px;border-top:1px dashed #173f4060;color:#173f40}
.editor-upload input{position:absolute;inset:0;opacity:0;width:100%;cursor:pointer}
.blank-media .editor-upload{position:absolute;bottom:15px;left:20px;right:20px;padding:12px;background:#f3e9d7;z-index:2}
.editing [data-edit]:empty::before{content:attr(data-placeholder);opacity:.5;font:12px/1.7 Arial,sans-serif;letter-spacing:0}
.save-status:empty{display:none}
.save-status{position:fixed;right:18px;bottom:82px;z-index:45;max-width:360px;background:#f3e9d7;color:#173f40;border:1px solid #173f4050;padding:12px 18px;font:11px/1.6 Arial,sans-serif}
.preview-dock{max-width:calc(100% - 24px)}
.preview-dock button{white-space:nowrap}
.edit-notice{bottom:82px;max-width:300px}
@media(max-width:1000px){.chapter-route{grid-template-columns:repeat(2,minmax(0,1fr))}.archive-section{padding-left:6vw;padding-right:6vw}.future-composition{gap:5vw}}
@media(max-width:700px){
 .chapter-route{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px;max-width:none}.chapter-route a{font-size:17px;padding:10px 0}.chapter-route .micro{font-size:6px;letter-spacing:.5px}.chapter-route b{float:none}
 .films-prologue{min-height:950px!important}.films-prologue::before{height:94%!important}
 .world-art-primary{background-size:auto 2600px;background-repeat:repeat-y;background-position:53% top}
 .archive-section{padding:75px 24px}.archive-heading h2{font-size:55px;letter-spacing:-2px}.archive-grid{grid-template-columns:1fr;gap:45px}.archive-card:nth-child(2n){transform:none}.archive-card h3{font-size:33px}
 .future-page{padding:75px 24px 55px;min-height:900px}.future-heading h2{font-size:59px;letter-spacing:-2px;margin-bottom:40px}.future-composition{display:flex;flex-direction:column;align-items:stretch;gap:40px}.future-copy{min-height:210px}.future-2 .blank-media{order:0}.future-folio{margin-top:35px}
 .save-status{left:12px;right:12px;bottom:118px;max-width:none}.edit-notice{left:12px;right:12px;bottom:65px;max-width:none;font-size:9px;padding:8px 12px}.preview-dock{gap:10px;overflow-x:auto;justify-content:flex-start;white-space:nowrap;font-size:8px}.preview-dock button{font-size:9px!important}.preview-dock>a{font-size:8px}.preview-dock #edit-toggle{padding-left:0;border:0}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Alternate the original art vertically so adjoining strip edges match. */
.world-art-primary{background:none;overflow:hidden}
.world-art-strip{height:300vw;flex:none;background:url('assets/images/coral-current.png') center top/100% 100% no-repeat}
.world-art-strip:nth-child(even){transform:scaleY(-1)}
@media(max-width:700px){.world-art-primary{background:none}.world-art-strip{height:2600px;background-size:auto 2600px;background-position:53% top}}
