/* Image-led historical and venue chapters. Mobile reading stays on the journey timeline. */
body[data-project="loving"] #journey{height:1100svh}body[data-project="crossroads"] #journey{height:1000svh}
.project-continuation{position:absolute;inset:clamp(80px,10vh,120px) 3vw clamp(115px,15vh,155px);z-index:16;opacity:0;visibility:hidden;overflow:auto;scrollbar-width:thin;scrollbar-color:#c7ae7e66 transparent;padding:18px;background:linear-gradient(115deg,#080d16f5,#101522eb);border:1px solid #cfb98622;border-radius:12px;box-sizing:border-box}
.narrative-inner{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:clamp(24px,3vw,56px);align-items:center;width:100%;max-width:1800px;min-height:100%;margin:0 auto;box-sizing:border-box}
.narrative-inner *{box-sizing:border-box}.narrative-pictures{min-width:0}.narrative-inner figure{margin:0!important;min-width:0}.narrative-inner figure>a{display:block}.narrative-inner img,#darr-redesign .narrative-inner img{display:block;width:100%;height:auto;max-height:none;aspect-ratio:auto;object-fit:contain;object-position:center;filter:none;opacity:1;border-radius:5px}
.narrative-inner figcaption,#darr-redesign .narrative-inner figcaption{font:12px/1.45 Arial,sans-serif!important;letter-spacing:.015em!important;text-align:left;color:#bcb9c2;padding:8px 0 0!important;margin:0}
.narrative-copy{min-width:0;padding:4px 8px 4px 0}.narrative-copy .narrative-kicker,#darr-redesign .narrative-copy .narrative-kicker{font:12px/1.5 Arial,sans-serif;letter-spacing:.13em;color:#d5bd92;margin:0 0 14px}
.narrative-copy h2,#darr-redesign .narrative-copy h2{font:400 clamp(32px,3.2vw,62px)/1.04 Georgia,serif;letter-spacing:-.035em;color:#f2efe7;margin:0 0 20px}
.narrative-copy h2 em{color:#d4bd91;font-weight:400}.narrative-copy>p,#darr-redesign .narrative-copy>p{font:clamp(16px,1.08vw,20px)/1.6 Arial,sans-serif;color:#ccc9d1;margin:0 0 15px}
.narrative-copy .narrative-note,#darr-redesign .narrative-copy .narrative-note{font:12px/1.5 Arial,sans-serif;color:#aaa6b2;margin:15px 0 10px}.narrative-source,#darr-redesign .narrative-source{display:inline-block;font:12px/1.5 Arial,sans-serif;color:#cfba91;text-decoration:underline;text-underline-offset:4px}
.narrative-timeline{list-style:none;padding:0;margin:22px 0;display:grid;gap:0}.narrative-timeline li{display:grid;grid-template-columns:54px 1fr;gap:14px;padding:12px 0;border-top:1px solid #c8b58c33;font:14px/1.5 Arial,sans-serif;color:#c5c0cc}.narrative-timeline b{font:400 22px/1.2 Georgia,serif;color:#d4bd91}
.archive-mosaic{display:grid;grid-template-columns:1fr 1.14fr;grid-template-rows:1fr 1fr;gap:18px;align-items:center}.archive-mosaic .archive-portrait{grid-row:1/3}.archive-mosaic .archive-portrait img{object-fit:contain}.archive-mosaic .archive-record img{background:#d6c7a5}
.narrative-pullquote{padding:17px 0 0;border-top:1px solid #c8b58c44;font:italic 24px/1.4 Georgia,serif;color:#d9c397;margin-top:22px}
.narrative-venue{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}.narrative-venue .venue-reverse{display:grid;grid-template-columns:1fr .55fr;gap:14px;align-items:end;margin-top:20px!important}.narrative-venue .venue-reverse figcaption{padding-bottom:5px!important}.venue-caption{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #c7ad7c40;padding-top:14px;margin-top:16px;color:#cdbb97;font:14px/1.5 Arial,sans-serif}.venue-caption span:first-child{font-size:12px;letter-spacing:.16em}
#darr-redesign .project-narrative-section{width:100%;padding:36px 4%;border-top:1px solid #c7ae7e25;background:linear-gradient(115deg,#0d142080,#17182030)}
#darr-redesign .project-narrative-section .narrative-inner{min-height:0;max-width:1660px}
#darr-redesign .project-narrative-section .narrative-copy{padding-block:14px}
@media(min-width:1400px){.project-continuation .narrative-inner{gap:42px}.project-continuation .narrative-stage-photo img{max-height:calc(100svh - 270px)}.project-continuation .archive-mosaic{max-height:calc(100svh - 260px)}.project-continuation .archive-portrait img{max-height:calc(100svh - 300px)}.project-continuation .archive-record img{max-height:calc((100svh - 370px)/2)}.project-continuation .venue-main img{max-height:calc(100svh - 330px)}}
@media(max-width:1050px){.narrative-inner,.narrative-venue{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:22px}.narrative-copy h2,#darr-redesign .narrative-copy h2{font-size:34px}.archive-mosaic{grid-template-columns:1fr 1fr;gap:12px}.narrative-venue .venue-reverse{grid-template-columns:1fr}.venue-reverse img{max-height:155px!important;object-position:left!important}.venue-caption{flex-direction:column;gap:5px}}
@media(max-width:700px){.project-continuation{inset:82px 10px 145px;padding:14px 12px}.narrative-inner,.narrative-venue{grid-template-columns:1fr;gap:22px;min-height:0}.narrative-copy{padding:0}.narrative-copy h2,#darr-redesign .narrative-copy h2{font-size:36px;margin-bottom:18px}.narrative-copy>p,#darr-redesign .narrative-copy>p{font-size:16px;line-height:1.65}.archive-mosaic{gap:12px;grid-template-columns:1fr 1.1fr}.archive-mosaic figcaption,#darr-redesign .archive-mosaic figcaption{font-size:12px!important}.narrative-venue .venue-reverse{grid-template-columns:1fr;gap:0}.narrative-venue .venue-reverse img{max-height:none!important}.venue-caption{flex-direction:row}.narrative-timeline{margin:20px 0}.narrative-pullquote{font-size:23px}#darr-redesign .project-narrative-section{padding:28px 5%}}
@media(max-width:600px) and (orientation:portrait){.project-continuation{overflow:hidden}}
@media(prefers-reduced-motion:reduce){.project-continuation{transform:none!important}}
/* Crossroads ends with a real-world production horizon. */
body[data-project="crossroads"] #journey{height:1100svh}
.narrative-destinations{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr)}
.venue-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 18px;align-items:start}
.venue-grid img,#darr-redesign .venue-grid img{aspect-ratio:3/2;object-fit:cover;object-position:center}
.venue-grid figcaption b{display:block;font:400 18px/1.35 Georgia,serif;color:#e5d7bc;margin-bottom:4px}.venue-grid figcaption span{display:block;color:#b9b4c2}
.venue-credits{border-top:1px solid #c7ae7e33;margin:14px 0;padding-top:10px;color:#b9b3c1;font:12px/1.5 Arial,sans-serif}.venue-credits summary{cursor:pointer;font:12px/1.5 Arial,sans-serif;color:#d7c397}.venue-credits p{font:12px/1.5 Arial,sans-serif!important;margin:8px 0!important}.venue-credits a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.narrative-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.narrative-actions a,#darr-redesign .narrative-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:11px 20px;border:1px solid #c8ae7870;border-radius:24px;font:14px/1.3 Arial,sans-serif;text-decoration:none;color:#e5d4b0}.narrative-actions a:first-child,#darr-redesign .narrative-actions a:first-child{background:#d3ba84;color:#151823;border-color:#d3ba84}.narrative-actions a:focus-visible{outline:2px solid #e8d5ac;outline-offset:4px}
.family-closing{display:grid;grid-template-columns:1.1fr 1fr;gap:18px;align-items:center;margin-top:22px}.family-closing .narrative-pullquote{font-size:22px;margin:0;padding:12px 0 0}.narrative-family .family-secondary img{border-radius:5px}
#darr-redesign #crossroads-jerusalem-detail .narrative-project-link{display:none}
@media(max-width:1050px){.narrative-destinations{grid-template-columns:1.25fr 1fr;gap:22px}.venue-grid{gap:16px 12px}.venue-grid figcaption b{font-size:16px}.family-closing{grid-template-columns:1fr}.family-closing .family-secondary{max-width:280px}.family-closing .narrative-pullquote{font-size:21px}}
@media(max-width:700px){.narrative-destinations{grid-template-columns:1fr}.venue-grid{gap:20px 12px}.venue-grid figcaption b{font-size:17px}.family-closing{grid-template-columns:1fr}.family-closing .family-secondary{max-width:none}.narrative-actions{margin-top:22px;padding-bottom:8px}}
@media(max-width:420px){.venue-grid{grid-template-columns:1fr}.venue-grid img,#darr-redesign .venue-grid img{aspect-ratio:auto;object-fit:contain}}

/* Let the Crossroads atmosphere show through these story panels. */
#crossroads-family.project-continuation,#crossroads-jerusalem.project-continuation{background:linear-gradient(115deg,rgba(8,13,22,.52),rgba(16,21,34,.44))}

body[data-project="paganini"] #journey{height:1000svh}
#paganini-history{background:linear-gradient(115deg,#101522c9,#201b2acc)}
.pg-legacy-images{display:grid;grid-template-columns:.68fr 1fr;gap:18px;align-items:center}
.pg-legacy-concept{grid-column:1/-1}.pg-legacy-images>figure:not(.pg-legacy-concept) img{max-height:280px;object-fit:contain}
.project-continuation .pg-legacy-images .pg-legacy-concept img{max-height:32vh;object-fit:contain}
#darr-redesign .pg-legacy-detail{position:relative;z-index:1;background:transparent;border:0}
@media(max-width:700px){.pg-legacy-layout{grid-template-columns:1fr}.project-continuation .pg-legacy-images .pg-legacy-concept img{max-height:none}.pg-legacy-images{gap:14px}.pg-legacy-images .pg-legacy-portrait img{max-height:240px}}

/* Desktop: balance the archive pair and center each caption under its image.
   Tablet presentation is managed separately by tablet-layout.css. */
@media(min-width:701px) and (hover:hover) and (pointer:fine){
 html:not(.darr-tablet) .pg-legacy-images{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
 html:not(.darr-tablet) .pg-legacy-images>figure:not(.pg-legacy-concept){display:flex;flex-direction:column;align-items:center;overflow:visible}
 html:not(.darr-tablet) .pg-legacy-images>figure:not(.pg-legacy-concept) img{width:100%;height:clamp(280px,28vh,420px);max-height:none;object-fit:contain;object-position:center bottom}
 html:not(.darr-tablet) .pg-legacy-images figcaption,
 html:not(.darr-tablet) #darr-redesign .pg-legacy-images figcaption{position:static;width:100%;height:auto;max-height:none;overflow:visible;white-space:normal;text-align:center!important;font-size:14px!important;line-height:1.5!important;padding:12px 0 0!important}
 html:not(.darr-tablet) .pg-legacy-images .pg-legacy-concept img{width:auto;max-width:100%;margin-inline:auto}
}
