/* An open photographic exhibition. The images retain their original color. */
.gallery-wall-page{background:#eae7de;overflow:hidden;padding-bottom:75px}
.wall-header{padding:40px var(--pad) 24px;position:relative}
.wall-topline{display:flex;justify-content:space-between;gap:22px;align-items:center}
.wall-topline .text-link{margin:0}
.wall-title-row{display:flex;justify-content:space-between;align-items:end;gap:40px;padding:30px 0 25px}
.wall-title-row h1{font-size:clamp(64px,7.7vw,132px);line-height:.92;letter-spacing:-.065em;font-weight:400}
.wall-title-row h1 em{color:var(--wine)}
.wall-intro{max-width:260px;font-size:15px;color:var(--muted);padding-bottom:8px}
.wall-intro p{margin-bottom:18px}
.wall-intro span{display:flex;align-items:center;gap:12px;color:var(--wine);font-size:12px;letter-spacing:.1em}
.wall-intro svg{width:35px;height:35px;flex-shrink:0}
.wall-tools{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #292b2033;padding-top:20px}
.wall-moods{display:flex;gap:5px;flex-wrap:wrap}
.wall-moods button{font-size:14px;padding:12px 21px;border:1px solid transparent;border-radius:30px;transition:background .25s,color .25s}
.wall-moods button[aria-pressed=true]{background:#292b23;color:#f7f4ec}
.wall-moods button:not([aria-pressed=true]):hover{border-color:#292b2044}
.wall-rehang{font-size:14px;display:flex;gap:10px;align-items:center;padding:12px 0;white-space:nowrap}
.wall-rehang span{font-size:24px;line-height:1}
.wall-rehang .wall-rehang-label{font-size:14px;line-height:1.4}
.gallery-wall{overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:none;cursor:grab;position:relative;isolation:isolate;touch-action:pan-x pan-y pinch-zoom}
.gallery-wall::-webkit-scrollbar{display:none}
.wall-canvas{--wall-unit:1px;height:630px;width:calc(var(--canvas-width)*var(--wall-unit));position:relative;margin:0 var(--pad)}
.wall-background-type{position:absolute;left:12px;top:180px;color:#d6d2c6;white-space:nowrap;font-size:270px;font-family:var(--serif);letter-spacing:-.065em;line-height:1;pointer-events:none;user-select:none}
.wall-background-type span{margin-right:380px}
.wall-artwork{position:absolute;left:calc(var(--x)*var(--wall-unit));top:calc(var(--y)*var(--wall-unit));width:calc(var(--w)*var(--wall-unit));padding:0;transform:rotate(var(--tilt));text-align:left;cursor:zoom-in;z-index:1;transition:transform .5s var(--ease),filter .5s;will-change:transform}
.wall-artwork:focus-visible,.wall-artwork:hover{z-index:2;transform:rotate(0deg) translateY(-8px)}
.wall-artwork img{display:block;width:100%;height:calc(var(--h)*var(--wall-unit));object-fit:contain;object-position:bottom;pointer-events:none;box-shadow:0 13px 25px #27211915;background:transparent}
.wall-artwork-caption{display:flex;gap:12px;justify-content:space-between;align-items:baseline;padding:12px 0 0;line-height:1.2;color:#383a30;user-select:none}
.wall-artwork-caption small{font-size:11px;font-family:var(--sans);white-space:nowrap}
.wall-artwork-caption strong{font-family:var(--serif);font-size:20px;font-weight:400;margin-right:auto}
.wall-artwork-caption b{font:19px var(--sans)}
.wall-navigation{display:grid;grid-template-columns:150px minmax(100px,1fr) auto;align-items:center;gap:45px;padding:20px var(--pad) 30px}
.wall-counter{font-size:12px;letter-spacing:.08em}
.wall-position-control{display:block;position:relative;padding:15px 0}
.wall-position-control input{display:block;width:100%;height:24px;cursor:ew-resize;appearance:none;background:transparent;accent-color:var(--wine);padding:0;margin:0}
.wall-position-control input::-webkit-slider-runnable-track{height:2px;background:#292b2030}
.wall-position-control input::-moz-range-track{height:2px;background:#292b2030}
.wall-position-control input::-webkit-slider-thumb{appearance:none;background:var(--wine);width:54px;height:10px;margin-top:-4px;border-radius:10px;box-shadow:0 0 0 6px #eae7de}
.wall-position-control input::-moz-range-thumb{background:var(--wine);width:54px;height:10px;border:0;border-radius:10px}
.wall-arrows{display:flex;gap:9px}
.wall-arrows button{width:46px;height:46px;border-radius:50%;border:1px solid #292b2040;font-size:22px;transition:background .25s,color .25s}
.wall-arrows button:disabled{opacity:.3;cursor:default}
.wall-arrows button:not(:disabled):hover{background:var(--wine);color:var(--paper)}
.wall-bottom{border-top:1px solid #292b2030;margin:0 var(--pad);padding-top:24px;display:flex;justify-content:space-between;align-items:center;gap:30px;font-size:14px}
.wall-bottom>p{max-width:380px;color:var(--muted)}
.wall-bottom .text-link{margin:0}
.wall-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.is-dragging,.is-dragging *{cursor:grabbing!important;user-select:none!important}
.is-dragging .wall-artwork,.is-dragging .reel-image img{transform:none!important}
.is-dragging{scroll-snap-type:none!important}
.artist-reel img{user-select:none;-webkit-user-drag:none}
.artist-reel{cursor:grab;touch-action:pan-x pan-y pinch-zoom}
.reel-wall-link{font-family:var(--serif);font-size:23px;display:flex;gap:25px;align-items:center;border-bottom:1px solid #ffffff50;padding-bottom:8px}
.reel-wall-link span{font:22px var(--sans);transition:transform .3s}
.reel-wall-link:hover span{transform:translate(4px,-4px)}
.wall-invitation{display:grid;grid-template-columns:.9fr 1.1fr;min-height:410px;background:#252922;color:var(--paper);margin:15px 0 65px;overflow:hidden;position:relative}
.wall-invitation-copy{padding:46px 42px;z-index:2}
.wall-invitation-copy>.eyebrow{color:#c9bca8}
.wall-invitation h2{font-size:clamp(40px,4.8vw,72px);line-height:1.03;margin:25px 0;letter-spacing:-.04em}
.wall-invitation-copy>p:not(.eyebrow){font-size:15px;max-width:300px;color:#cccfc3;line-height:1.6}
.wall-invitation .text-link{color:var(--paper);margin-top:24px;border-color:#ffffff60}
.wall-invitation-art{position:relative;min-height:410px}
.wall-invitation-art img{position:absolute;width:42%;height:68%;object-fit:cover;top:12%;left:0;transform:rotate(-9deg);transition:transform .8s var(--ease);box-shadow:0 10px 20px #0003}
.wall-invitation-art img:nth-child(2){left:28%;top:28%;transform:rotate(5deg);z-index:1}
.wall-invitation-art img:nth-child(3){left:60%;top:5%;transform:rotate(14deg)}
.wall-invitation:hover img:first-child{transform:rotate(-12deg) translateY(-9px)}
.wall-invitation:hover img:nth-child(2){transform:rotate(0deg) translateY(8px)}
.wall-invitation:hover img:nth-child(3){transform:rotate(18deg) translateY(-6px)}
@media(prefers-reduced-motion:no-preference){.wall-artwork{animation:wall-enter .8s var(--ease) both;animation-delay:calc(var(--i)*35ms)}@keyframes wall-enter{from{opacity:0;translate:0 24px}to{opacity:1;translate:0 0}}}
@media(max-width:900px){.wall-title-row{gap:25px}.wall-intro{max-width:220px}.wall-title-row h1{font-size:75px}.wall-invitation-copy{padding:35px 30px}.wall-navigation{gap:25px;grid-template-columns:130px minmax(100px,1fr) auto}}
@media(max-width:760px){
 .hero-layout{display:flex;flex-direction:column;gap:24px}.hero-copy{display:contents}.hero-copy h1{order:0}.hero-visual{order:1;margin:0}.hero-description{order:2;margin:0;max-width:none}.hero-actions{order:3;margin-top:0}.hero-selector{order:4;margin-top:0}
 .wall-header{padding-top:26px}.wall-topline{align-items:start;gap:15px}.wall-topline>.eyebrow{font-size:11px;max-width:130px;line-height:1.5}.wall-topline .text-link{font-size:13px;white-space:nowrap}
 .wall-title-row{display:block;padding:28px 0 24px}.wall-title-row h1{font-size:clamp(60px,11.8vw,88px);line-height:.98}.wall-title-row h1 br{display:none}.wall-title-row h1 em{display:block}
 .wall-intro{max-width:none;display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:17px;padding:0;font-size:14px}.wall-intro p{display:none}.wall-intro span{font-size:11px;gap:10px}.wall-intro svg{width:26px;height:26px}
 .wall-tools{align-items:center;gap:8px;flex-wrap:nowrap;padding-top:15px}.wall-moods{gap:0;flex-wrap:nowrap}.wall-moods button{padding:12px 10px;font-size:13px;white-space:nowrap}.wall-rehang{padding:8px;min-height:44px;min-width:44px;justify-content:center}.wall-rehang .wall-rehang-label{display:none}
 .wall-canvas{--wall-unit:.78px;height:490px}.wall-background-type{font-size:210px;top:165px}.wall-artwork-caption strong{font-size:19px}.wall-artwork-caption small{font-size:10px}.wall-artwork-caption{gap:9px}
 .wall-navigation{grid-template-columns:1fr auto;gap:12px 25px;padding-top:0}.wall-counter{font-size:11px;grid-column:1}.wall-position-control{grid-row:2;grid-column:1/-1;padding:5px 0}.wall-arrows{grid-column:2;grid-row:1}.wall-arrows button{width:44px;height:44px}
 .wall-bottom{display:block}.wall-bottom p{font-size:14px;margin-bottom:20px}.gallery-wall-page{padding-bottom:45px}
 .wall-invitation{grid-template-columns:1fr;margin-bottom:42px}.wall-invitation-copy{padding:30px}.wall-invitation h2{font-size:49px}.wall-invitation-art{min-height:310px;margin:0 25px 20px}.wall-invitation-art img{height:80%;width:42%;top:0}.wall-invitation-art img:nth-child(2){top:16%}.wall-invitation-art img:nth-child(3){top:-5%;left:60%}
}
@media(prefers-reduced-motion:reduce){.wall-artwork,.wall-invitation-art img,.wall-arrows button,.reel-wall-link span{animation:none;transition:none}.wall-artwork:hover,.wall-artwork:focus-visible,.wall-invitation:hover img{transform:rotate(var(--tilt,0deg))}}
