/* Opening: an original painting, generous scale, and a slow offset between type and image. */
.gallery-opening{background:#201a2b;color:#f5efe8;min-height:calc(100svh - 100px);padding:26px 5% 24px;overflow:hidden;position:relative}
.opening-caption,.opening-foot{display:flex;justify-content:space-between;gap:24px;font-size:10px;letter-spacing:.13em}
.opening-caption{color:#c2b4cb}.opening-layout{display:grid;grid-template-columns:42% 58%;align-items:center;max-width:1680px;margin:auto;min-height:650px}
.opening-copy{position:relative;z-index:2;transform:translateX(var(--title-shift,0px));pointer-events:none}
.opening-number{font:italic 17px var(--serif);color:#cbbad4}.opening-copy h1{font:400 clamp(110px,13vw,215px)/.76 var(--serif);letter-spacing:-.055em;margin:32px 0 38px}.opening-copy h1 em{font-weight:400;letter-spacing:-.065em}.opening-copy>p{font:400 23px/1.7 var(--kserif);letter-spacing:.02em}.opening-link{display:flex;justify-content:space-between;max-width:290px;border-bottom:1px solid #9984a2;padding:25px 0 15px;font-size:11px;pointer-events:auto}.opening-link span{font-size:24px}
.opening-painting{width:100%;max-width:720px;justify-self:end;position:relative;transform:translateY(var(--opening-shift,0px));padding:0;display:block}.opening-painting img{width:100%;height:auto;display:block}.opening-painting>span{position:absolute;left:25px;right:25px;bottom:20px;display:flex;justify-content:space-between;font-size:11px;letter-spacing:.1em}.opening-painting i{font:normal 24px var(--serif)}
.opening-foot{border-top:1px solid #4d3e58;padding-top:20px;color:#c7bacb;font-size:9px}.opening-foot>span:first-child{letter-spacing:0}
.opening-visible .opening-painting{animation:opening-art 1.3s cubic-bezier(.16,1,.3,1) both}.opening-visible .opening-copy{animation:opening-type 1.1s .15s cubic-bezier(.16,1,.3,1) both}
@keyframes opening-art{from{opacity:0;clip-path:inset(9% 9% 9% 9%)}to{opacity:1;clip-path:inset(0)}}
@keyframes opening-type{from{opacity:0;filter:blur(6px)}to{opacity:1;filter:blur(0)}}
/* Collection: six original canvases unfold into a single comparison wall. */
.page-home #single-blooms{background:#eae7e1;padding-bottom:60px;overflow:clip}
.series-scroll{height:125vh;min-height:700px}.series-stage{position:sticky;top:28vh;padding:85px 0 45px}
.page-home .bloom-track{overflow:visible;margin:0;padding:0}.page-home .bloom-track>figure{position:relative;transform-origin:50% 85%;will-change:transform}.page-home .bloom-track>figure:nth-child(3){z-index:3}.page-home .bloom-track>figure:nth-child(4){z-index:4}.page-home .single-bloom-art{box-shadow:0 15px 35px #22152712}.page-home .bloom-track .single-bloom-art>span{background:#f3eee4dd;color:#2c2731}.single-bloom-foot{position:relative}
.page-home .gallery-welcome{background:#f4f1ea;animation:none;padding-top:115px;padding-bottom:115px}
.lead-reveal{clip-path:inset(0 0 15% 0);transition:clip-path 1.2s cubic-bezier(.16,1,.3,1)}.lead-visible{clip-path:inset(0)}
/* Editorial photo crop: exclude empty ceiling, retain paintings and the visitor's feet. */
.exhibition-photo{aspect-ratio:1.95;overflow:hidden;background:#dad9cf}.exhibition-panorama .exhibition-photo img{width:100%;height:100%;max-height:none;object-fit:cover;object-position:50% 100%;display:block}
.motion-off .opening-copy,.motion-off .opening-painting{animation:none;transform:none}.motion-off .lead-reveal{clip-path:none;transition:none}.motion-off .series-scroll{height:auto;min-height:0}.motion-off .series-stage{position:static}
@media(min-width:1600px){.opening-layout{min-height:750px}}
@media(max-width:900px){
.gallery-opening{min-height:auto;padding:22px 6% 25px}.opening-caption{font-size:8px}.opening-layout{grid-template-columns:1fr;min-height:0;gap:32px;margin:30px 0}.opening-copy{transform:none!important}.opening-copy h1{font-size:clamp(85px,21vw,150px);line-height:.82;margin:22px 0}.opening-copy h1 br{display:none}.opening-copy h1 em{display:block;margin-left:12%}.opening-copy>p{font-size:19px}.opening-number{font-size:14px}.opening-link{font-size:10px;padding-top:8px;max-width:250px}.opening-painting{width:94%;max-width:600px;justify-self:center;transform:none!important}.opening-foot{font-size:8px;letter-spacing:.04em}
.series-scroll{height:auto;min-height:0}.series-stage{position:static;padding:0}.page-home .bloom-track{overflow-x:auto;padding-bottom:5px}.page-home .bloom-track>figure{transform:none!important;will-change:auto}.page-home #single-blooms{padding-bottom:65px}.page-home .gallery-welcome{padding-top:75px;padding-bottom:75px}
.exhibition-photo{aspect-ratio:4/5}.exhibition-panorama .exhibition-photo img{object-position:78% 100%;transform:scale(1.65);transform-origin:78% 100%}
}
@media(prefers-reduced-motion:reduce){.opening-copy,.opening-painting{animation:none!important;transform:none!important}.lead-reveal{clip-path:none;transition:none}.series-scroll{height:auto;min-height:0}.series-stage{position:static}.bloom-track>figure{transform:none!important}}

@media(min-width:901px){.series-scroll .bloom-track figcaption{opacity:var(--label-opacity,0)}}
.light-statement{display:grid;grid-template-columns:1.1fr 1fr;gap:35px 9%;background:#e9e4db;color:#29282c;position:relative;overflow:hidden}
.light-statement>.section-note{grid-column:1/-1;letter-spacing:.16em;color:#756c76}
.light-statement h2{font:400 clamp(36px,4.6vw,74px)/1.48 var(--kserif);letter-spacing:-.045em;margin:0;word-break:keep-all}
.light-statement h2 em{font-style:normal;color:#756075}
.light-statement-body{align-self:center;max-width:530px}.light-statement-body p{font:400 14px/2.1 var(--sans);word-break:keep-all;text-wrap:pretty;color:#625b60;margin:0 0 24px}
.light-statement-body .light-lead{font:400 clamp(17px,1.6vw,24px)/1.85 var(--kserif);color:#373139}.light-statement-body small{display:block;font-size:10px;line-height:1.8;color:#837980;word-break:keep-all}
@media(max-width:760px){.light-statement{grid-template-columns:1fr;gap:28px;padding:70px 6%}.light-statement h2{font-size:clamp(34px,9vw,52px)}.light-statement-body p{font-size:12px}.light-statement-body .light-lead{font-size:17px}.light-statement-body small{font-size:9px}.light-statement-body br{display:none}}

.light-statement h2 br{display:block!important}

/* Short, staggered arrivals for exhibition records. */
.exhibition-summary li.exhibit-reveal{opacity:0;transform:translate3d(-26px,12px,0);transition:opacity .55s ease,transform .7s cubic-bezier(.16,1,.3,1);transition-delay:var(--exhibit-delay,0ms)}
.narrative-posters>a.exhibit-reveal{opacity:0;transform:translate3d(0,30px,0);transition:opacity .65s ease,transform .85s cubic-bezier(.16,1,.3,1);transition-delay:var(--exhibit-delay,0ms)}
.exhibition-summary li.exhibit-visible,.narrative-posters>a.exhibit-visible{opacity:1;transform:none}
.motion-off .exhibit-reveal{opacity:1!important;transform:none!important;transition:none!important}
@media(prefers-reduced-motion:reduce){.exhibit-reveal{opacity:1!important;transform:none!important;transition:none!important}}

/* Light belongs to the wall; preserve the artwork's colours and position. */
.narrative-home .narrative-painting figure.atmosphere-ready::before{opacity:.08;transition:opacity 1.6s cubic-bezier(.2,.65,.3,1)}
.narrative-home .narrative-painting figure.atmosphere-visible::before{opacity:1}
.artist-restored-portrait.atmosphere-ready{opacity:.2;transition:opacity 1.2s ease}
.artist-restored-portrait.atmosphere-visible{opacity:1}
.room-door{transition:border-color .35s ease,box-shadow .5s ease}
.room-door:hover,.room-door:focus-visible{border-color:#e9dfbaaa;box-shadow:inset 0 0 35px #e9dfba12,0 0 24px #e9dfba0c}
.motion-off .atmosphere-ready,.motion-off .atmosphere-ready::before{opacity:1!important;transition:none!important}
@media(prefers-reduced-motion:reduce){.atmosphere-ready,.atmosphere-ready::before{opacity:1!important;transition:none!important}.room-door{transition:none}}
